@appbaseio/reactivesearch-vue 2.0.0-alpha.4 → 3.0.0-alpha.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 +17538 -25422
- package/dist/@appbaseio/reactivesearch-vue.umd.js.map +1 -1
- package/dist/@appbaseio/reactivesearch-vue.umd.min.js +6 -15
- package/dist/@appbaseio/reactivesearch-vue.umd.min.js.map +1 -1
- package/dist/cjs/Button-ad042719.js +59 -0
- package/dist/cjs/Card-f5ab024a.js +27 -0
- package/dist/cjs/{ComponentWrapper-ad3dad02.js → ComponentWrapper-75f88599.js} +42 -56
- package/dist/cjs/Container-29f049b2.js +12 -0
- package/dist/cjs/DropDown-6cf84c47.js +698 -0
- package/dist/cjs/DynamicRangeSlider.js +103 -155
- package/dist/cjs/Flex-d5675ea6.js +48 -0
- package/dist/cjs/FormControlList-fadd792f.js +42 -0
- package/dist/cjs/Input-4b434436.js +74 -0
- package/dist/cjs/ListItem-d57d648d.js +42 -0
- package/dist/cjs/MultiDropdownList.js +124 -240
- package/dist/cjs/MultiList.js +123 -261
- package/dist/cjs/MultiRange.js +87 -133
- package/dist/cjs/{Pagination-71e85fa9.js → Pagination-b5ddc906.js} +70 -83
- package/dist/cjs/PreferencesConsumer-eb265924.js +75 -0
- package/dist/cjs/RangeInput.js +163 -171
- package/dist/cjs/RangeSlider.js +81 -109
- package/dist/cjs/ReactiveBase.js +139 -157
- package/dist/cjs/ReactiveComponent-eb8db4c1.js +2189 -0
- package/dist/cjs/ReactiveComponent.js +46 -340
- package/dist/cjs/ReactiveGoogleMap.js +445 -655
- package/dist/cjs/ReactiveList.js +179 -304
- package/dist/cjs/ResultCard.js +36 -36
- package/dist/cjs/ResultList.js +48 -56
- package/dist/cjs/SelectedFilters.js +62 -69
- package/dist/cjs/SingleDropdownList.js +117 -177
- package/dist/cjs/SingleList.js +121 -205
- package/dist/cjs/SingleRange.js +78 -105
- package/dist/cjs/StateProvider.js +35 -38
- package/dist/cjs/Title-8802a218.js +12 -0
- package/dist/cjs/ToggleButton.js +72 -119
- package/dist/cjs/{_rollupPluginBabelHelpers-c705cbe6.js → _rollupPluginBabelHelpers-f8b843f8.js} +0 -15
- package/dist/cjs/{index-6a167fe0.js → index-d8d8f291.js} +38 -108
- package/dist/cjs/index.js +44 -41
- package/dist/cjs/initReactivesearch.js +63 -150
- package/dist/cjs/install.js +47 -43
- package/dist/cjs/ssr-6907ada3.js +66 -0
- package/dist/cjs/{utils-d6a52588.js → utils-83fd01e9.js} +7 -16
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/{vueTypes-727b7c63.js → vueTypes-1bf00978.js} +8 -19
- package/dist/es/Button-474510e3.js +53 -0
- package/dist/es/{Card-450683f1.js → Card-38cbe652.js} +3 -3
- package/dist/es/{ComponentWrapper-424e86fd.js → ComponentWrapper-5166c76a.js} +42 -56
- package/dist/es/{Container-ba826e96.js → Container-d00219f7.js} +2 -2
- package/dist/es/DropDown-8764360c.js +688 -0
- package/dist/es/DynamicRangeSlider.js +103 -155
- package/dist/es/Flex-a08e22d7.js +46 -0
- package/dist/es/FormControlList-fe6eaee4.js +38 -0
- package/dist/es/Input-4a8ef1f3.js +69 -0
- package/dist/es/{ListItem-cad14c5e.js → ListItem-16756c02.js} +7 -8
- package/dist/es/MultiDropdownList.js +124 -240
- package/dist/es/MultiList.js +123 -261
- package/dist/es/MultiRange.js +87 -133
- package/dist/es/{Pagination-784bf143.js → Pagination-72bd1d9e.js} +70 -83
- package/dist/es/PreferencesConsumer-c276709c.js +73 -0
- package/dist/es/RangeInput.js +163 -170
- package/dist/es/RangeSlider.js +81 -109
- package/dist/es/ReactiveBase.js +138 -155
- package/dist/es/ReactiveComponent-f9fa5780.js +2183 -0
- package/dist/es/ReactiveComponent.js +42 -337
- package/dist/es/ReactiveGoogleMap.js +440 -649
- package/dist/es/ReactiveList.js +177 -301
- package/dist/es/ResultCard.js +36 -36
- package/dist/es/ResultList.js +48 -56
- package/dist/es/SelectedFilters.js +62 -69
- package/dist/es/SingleDropdownList.js +117 -177
- package/dist/es/SingleList.js +121 -205
- package/dist/es/SingleRange.js +78 -105
- package/dist/es/StateProvider.js +36 -39
- package/dist/es/{Title-3342664a.js → Title-863dfa42.js} +2 -2
- package/dist/es/ToggleButton.js +72 -119
- package/dist/es/{_rollupPluginBabelHelpers-76660dab.js → _rollupPluginBabelHelpers-ded08042.js} +0 -15
- package/dist/es/{index-7788a843.js → index-4520a598.js} +39 -107
- package/dist/es/index.js +30 -32
- package/dist/es/initReactivesearch.js +63 -150
- package/dist/es/install.js +49 -41
- package/dist/es/{ssr-b2c0b401.js → ssr-af398f0c.js} +36 -7
- package/dist/es/{utils-9e68acee.js → utils-9e5a16a1.js} +7 -16
- package/dist/es/version.js +1 -1
- package/dist/es/{vueTypes-b8146772.js → vueTypes-f1923c72.js} +8 -19
- package/package.json +10 -9
- package/dist/cjs/Button-446f819e.js +0 -68
- package/dist/cjs/CancelSvg-9f258f4f.js +0 -449
- package/dist/cjs/Card-642547a8.js +0 -30
- package/dist/cjs/Container-daf30918.js +0 -15
- package/dist/cjs/DataSearch-aa04dc6e.js +0 -2352
- package/dist/cjs/DataSearch.js +0 -30
- package/dist/cjs/DropDown-c479bbb0.js +0 -328
- package/dist/cjs/Flex-aa517a13.js +0 -52
- package/dist/cjs/FormControlList-c195a592.js +0 -47
- package/dist/cjs/Input-e6603a7e.js +0 -79
- package/dist/cjs/ListItem-8c9e0d68.js +0 -46
- package/dist/cjs/Title-1de7d0f4.js +0 -15
- package/dist/cjs/install-b97dbac4.js +0 -1409
- package/dist/cjs/ssr-3027b848.js +0 -39
- package/dist/es/Button-d8bc15ea.js +0 -59
- package/dist/es/CancelSvg-4cfae5fd.js +0 -440
- package/dist/es/DataSearch-b86a6675.js +0 -2337
- package/dist/es/DataSearch.js +0 -22
- package/dist/es/DropDown-05a644a5.js +0 -322
- package/dist/es/Flex-1f0795c3.js +0 -47
- package/dist/es/FormControlList-c22d64f6.js +0 -40
- package/dist/es/Input-7a2a9fac.js +0 -71
- package/dist/es/install-ac8a1edb.js +0 -1402
|
@@ -1,38 +1,42 @@
|
|
|
1
1
|
import { Actions, helper } from '@appbaseio/reactivecore';
|
|
2
|
-
import { a as _extends } from './_rollupPluginBabelHelpers-76660dab.js';
|
|
3
|
-
import VueTypes from 'vue-types';
|
|
4
2
|
import { componentTypes } from '@appbaseio/reactivecore/lib/utils/constants';
|
|
5
|
-
import '
|
|
3
|
+
import '@vue/babel-helper-vue-transform-on';
|
|
4
|
+
import { a as _extends } from './_rollupPluginBabelHelpers-ded08042.js';
|
|
5
|
+
import { createVNode, isVNode } from 'vue';
|
|
6
|
+
import VueTypes from 'vue-types';
|
|
6
7
|
import '@appbaseio/vue-emotion';
|
|
8
|
+
import 'emotion';
|
|
7
9
|
import 'polished';
|
|
8
|
-
import { l as loadMoreContainer, B as Button } from './Button-
|
|
9
|
-
import { t as types } from './vueTypes-
|
|
10
|
+
import { l as loadMoreContainer, B as Button } from './Button-474510e3.js';
|
|
11
|
+
import { t as types } from './vueTypes-f1923c72.js';
|
|
10
12
|
import '@appbaseio/reactivecore/lib/utils/transform';
|
|
11
13
|
import 'redux';
|
|
12
|
-
import {
|
|
13
|
-
import { C as ComponentWrapper } from './ComponentWrapper-
|
|
14
|
-
import '
|
|
15
|
-
import { T as Title } from './Title-
|
|
16
|
-
import './
|
|
17
|
-
import './Input-
|
|
14
|
+
import { j as updateCustomQuery, u as updateDefaultQuery, i as isQueryIdentical, a as isFunction, g as getComponent, h as hasCustomRenderer, c as connect } from './index-4520a598.js';
|
|
15
|
+
import { C as ComponentWrapper } from './ComponentWrapper-5166c76a.js';
|
|
16
|
+
import { P as PreferencesConsumer } from './PreferencesConsumer-c276709c.js';
|
|
17
|
+
import { T as Title } from './Title-863dfa42.js';
|
|
18
|
+
import { c as Dropdown } from './DropDown-8764360c.js';
|
|
19
|
+
import './Input-4a8ef1f3.js';
|
|
18
20
|
import 'compute-scroll-into-view';
|
|
19
|
-
import { C as Container } from './Container-
|
|
21
|
+
import { C as Container } from './Container-d00219f7.js';
|
|
20
22
|
import '@appbaseio/reactivecore/lib/utils/suggestions';
|
|
21
|
-
import { g as getAggsQuery } from './utils-
|
|
22
|
-
import { D as Dropdown } from './DropDown-05a644a5.js';
|
|
23
|
+
import { g as getAggsQuery } from './utils-9e5a16a1.js';
|
|
23
24
|
|
|
25
|
+
function _isSlot(s) {
|
|
26
|
+
return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s);
|
|
27
|
+
}
|
|
24
28
|
var updateQuery = Actions.updateQuery,
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
29
|
+
setQueryOptions = Actions.setQueryOptions,
|
|
30
|
+
setCustomQuery = Actions.setCustomQuery,
|
|
31
|
+
setDefaultQuery = Actions.setDefaultQuery;
|
|
28
32
|
var getQueryOptions = helper.getQueryOptions,
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
checkValueChange = helper.checkValueChange,
|
|
34
|
+
checkPropChange = helper.checkPropChange,
|
|
35
|
+
getClassName = helper.getClassName,
|
|
36
|
+
isEqual = helper.isEqual,
|
|
37
|
+
getCompositeAggsQuery = helper.getCompositeAggsQuery,
|
|
38
|
+
extractQueryFromCustomQuery = helper.extractQueryFromCustomQuery,
|
|
39
|
+
getOptionsForCustomQuery = helper.getOptionsForCustomQuery;
|
|
36
40
|
var SingleDropdownList = {
|
|
37
41
|
name: 'SingleDropdownList',
|
|
38
42
|
data: function data() {
|
|
@@ -78,26 +82,21 @@ var SingleDropdownList = {
|
|
|
78
82
|
showSearch: VueTypes.bool.def(false),
|
|
79
83
|
showClear: VueTypes.bool.def(false),
|
|
80
84
|
showLoadMore: VueTypes.bool.def(false),
|
|
81
|
-
loadMoreLabel: VueTypes.oneOfType([VueTypes.string, VueTypes.
|
|
85
|
+
loadMoreLabel: VueTypes.oneOfType([VueTypes.string, VueTypes.nullable]).def('Load More'),
|
|
82
86
|
nestedField: types.string,
|
|
83
87
|
index: VueTypes.string,
|
|
84
88
|
searchPlaceholder: VueTypes.string.def('Type here to search...'),
|
|
85
89
|
endpoint: types.endpointConfig
|
|
86
90
|
},
|
|
87
91
|
created: function created() {
|
|
88
|
-
if (!this.enableAppbase && this.$props.index) {
|
|
89
|
-
console.warn('Warning(ReactiveSearch): In order to use the `index` prop, the `enableAppbase` prop must be set to true in `ReactiveBase`.');
|
|
90
|
-
}
|
|
91
|
-
|
|
92
92
|
var props = this.$props;
|
|
93
|
-
this.modifiedOptions = this.options && this.options[props.dataField] ? this.options[props.dataField].buckets : [];
|
|
94
|
-
|
|
93
|
+
this.modifiedOptions = this.options && this.options[props.dataField] ? this.options[props.dataField].buckets : [];
|
|
94
|
+
// Set custom and default queries in store
|
|
95
95
|
updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.currentValue);
|
|
96
96
|
updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, this.currentValue);
|
|
97
97
|
},
|
|
98
98
|
beforeMount: function beforeMount() {
|
|
99
99
|
this.updateQueryOptions(this.$props);
|
|
100
|
-
|
|
101
100
|
if (this.selectedValue) {
|
|
102
101
|
this.setValue(this.selectedValue);
|
|
103
102
|
} else if (this.$props.value) {
|
|
@@ -109,14 +108,12 @@ var SingleDropdownList = {
|
|
|
109
108
|
watch: {
|
|
110
109
|
options: function options(newVal, oldVal) {
|
|
111
110
|
var _this = this;
|
|
112
|
-
|
|
113
111
|
if (newVal) {
|
|
114
112
|
checkPropChange(oldVal, newVal, function () {
|
|
115
113
|
var _this$$props = _this.$props,
|
|
116
|
-
|
|
117
|
-
|
|
114
|
+
showLoadMore = _this$$props.showLoadMore,
|
|
115
|
+
dataField = _this$$props.dataField;
|
|
118
116
|
var modifiedOptions = _this.$data.modifiedOptions;
|
|
119
|
-
|
|
120
117
|
if (showLoadMore) {
|
|
121
118
|
// append options with showLoadMore
|
|
122
119
|
var buckets = newVal[dataField].buckets;
|
|
@@ -127,7 +124,6 @@ var SingleDropdownList = {
|
|
|
127
124
|
};
|
|
128
125
|
}));
|
|
129
126
|
var after = newVal[dataField].after_key; // detect the last bucket by checking if the next set of buckets were empty
|
|
130
|
-
|
|
131
127
|
var isLastBucket = !buckets.length;
|
|
132
128
|
_this.after = {
|
|
133
129
|
after: after
|
|
@@ -175,106 +171,100 @@ var SingleDropdownList = {
|
|
|
175
171
|
}
|
|
176
172
|
},
|
|
177
173
|
render: function render() {
|
|
178
|
-
var
|
|
174
|
+
var _this2 = this;
|
|
179
175
|
var _this$$props2 = this.$props,
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
176
|
+
showLoadMore = _this$$props2.showLoadMore,
|
|
177
|
+
loadMoreLabel = _this$$props2.loadMoreLabel,
|
|
178
|
+
renderItem = _this$$props2.renderItem,
|
|
179
|
+
renderError = _this$$props2.renderError,
|
|
180
|
+
renderLabel = _this$$props2.renderLabel;
|
|
185
181
|
var isLastBucket = this.$data.isLastBucket;
|
|
186
182
|
var selectAll = [];
|
|
187
|
-
var renderItemCalc = this.$
|
|
188
|
-
var renderErrorCalc = this.$
|
|
189
|
-
var renderLabelCalc = this.$
|
|
190
|
-
var renderNoResults = this.$
|
|
191
|
-
|
|
183
|
+
var renderItemCalc = this.$slots.renderItem || renderItem;
|
|
184
|
+
var renderErrorCalc = this.$slots.renderError || renderError;
|
|
185
|
+
var renderLabelCalc = this.$slots.renderLabel || renderLabel;
|
|
186
|
+
var renderNoResults = this.$slots.renderNoResults || this.$props.renderNoResults;
|
|
192
187
|
if (renderErrorCalc && this.error) {
|
|
193
188
|
return isFunction(renderErrorCalc) ? renderErrorCalc(this.error) : renderErrorCalc;
|
|
194
189
|
}
|
|
195
|
-
|
|
196
190
|
if (!this.hasCustomRenderer && this.$data.modifiedOptions.length === 0 && !this.isLoading) {
|
|
197
191
|
if (renderNoResults && isFunction(renderNoResults)) {
|
|
198
|
-
return
|
|
192
|
+
return createVNode("div", null, [renderNoResults()]);
|
|
199
193
|
}
|
|
200
|
-
|
|
201
194
|
if (renderNoResults && !isFunction(renderNoResults)) {
|
|
202
195
|
return renderNoResults;
|
|
203
196
|
}
|
|
204
|
-
|
|
205
197
|
return null;
|
|
206
198
|
}
|
|
207
|
-
|
|
208
199
|
if (this.$props.selectAllLabel) {
|
|
209
200
|
selectAll = [{
|
|
210
|
-
key: this.$props.selectAllLabel
|
|
201
|
+
key: this.$props.selectAllLabel,
|
|
202
|
+
doc_count: this.totalDocumentCount
|
|
211
203
|
}];
|
|
212
204
|
}
|
|
213
|
-
|
|
214
|
-
return h(Container, {
|
|
205
|
+
return createVNode(Container, {
|
|
215
206
|
"class": this.$props.className
|
|
216
|
-
},
|
|
217
|
-
"
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
}).map(function (item) {
|
|
224
|
-
return _extends({}, item, {
|
|
225
|
-
key: String(item.key)
|
|
226
|
-
});
|
|
227
|
-
})),
|
|
228
|
-
"handleChange": this.handleChange,
|
|
229
|
-
"selectedItem": this.$data.currentValue,
|
|
230
|
-
"placeholder": this.$props.placeholder,
|
|
231
|
-
"labelField": "key",
|
|
232
|
-
"showCount": this.$props.showCount,
|
|
233
|
-
"hasCustomRenderer": this.hasCustomRenderer,
|
|
234
|
-
"customRenderer": this.getComponent,
|
|
235
|
-
"renderItem": renderItemCalc,
|
|
236
|
-
"renderNoResults": this.$scopedSlots.renderNoResults || this.$props.renderNoResults,
|
|
237
|
-
"themePreset": this.themePreset,
|
|
238
|
-
"showSearch": this.$props.showSearch,
|
|
239
|
-
"showClear": this.$props.showClear,
|
|
240
|
-
"searchPlaceholder": this.$props.searchPlaceholder,
|
|
241
|
-
"transformData": this.$props.transformData,
|
|
242
|
-
"footer": showLoadMore && !isLastBucket && h("div", {
|
|
243
|
-
"attrs": {
|
|
244
|
-
"css": loadMoreContainer
|
|
207
|
+
}, {
|
|
208
|
+
"default": function _default() {
|
|
209
|
+
return [_this2.$props.title && createVNode(Title, {
|
|
210
|
+
"class": getClassName(_this2.$props.innerClass, 'title') || ''
|
|
211
|
+
}, {
|
|
212
|
+
"default": function _default() {
|
|
213
|
+
return [_this2.$props.title];
|
|
245
214
|
}
|
|
246
|
-
},
|
|
247
|
-
"
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
215
|
+
}), createVNode(Dropdown, {
|
|
216
|
+
"innerClass": _this2.$props.innerClass,
|
|
217
|
+
"items": [].concat(selectAll, _this2.$data.modifiedOptions.filter(function (item) {
|
|
218
|
+
return String(item.key).trim().length;
|
|
219
|
+
}).map(function (item) {
|
|
220
|
+
return _extends({}, item, {
|
|
221
|
+
key: String(item.key)
|
|
222
|
+
});
|
|
223
|
+
})),
|
|
224
|
+
"handleChange": _this2.handleChange,
|
|
225
|
+
"selectedItem": _this2.$data.currentValue,
|
|
226
|
+
"placeholder": _this2.$props.placeholder,
|
|
227
|
+
"labelField": "key",
|
|
228
|
+
"showCount": _this2.$props.showCount,
|
|
229
|
+
"hasCustomRenderer": _this2.hasCustomRenderer,
|
|
230
|
+
"customRenderer": _this2.getComponent,
|
|
231
|
+
"renderItem": renderItemCalc,
|
|
232
|
+
"renderNoResults": _this2.$slots.renderNoResults || _this2.$props.renderNoResults,
|
|
233
|
+
"themePreset": _this2.themePreset,
|
|
234
|
+
"showSearch": _this2.$props.showSearch,
|
|
235
|
+
"showClear": _this2.$props.showClear,
|
|
236
|
+
"searchPlaceholder": _this2.$props.searchPlaceholder,
|
|
237
|
+
"transformData": _this2.$props.transformData,
|
|
238
|
+
"footer": showLoadMore && !isLastBucket && createVNode("div", {
|
|
239
|
+
"css": loadMoreContainer
|
|
240
|
+
}, [createVNode(Button, {
|
|
241
|
+
"onClick": _this2.handleLoadMore
|
|
242
|
+
}, _isSlot(loadMoreLabel) ? loadMoreLabel : {
|
|
243
|
+
"default": function _default() {
|
|
244
|
+
return [loadMoreLabel];
|
|
245
|
+
}
|
|
246
|
+
})]),
|
|
247
|
+
"customLabelRenderer": renderLabelCalc
|
|
248
|
+
}, null)];
|
|
252
249
|
}
|
|
253
|
-
})
|
|
250
|
+
});
|
|
254
251
|
},
|
|
255
252
|
methods: {
|
|
256
253
|
setValue: function setValue(value, props) {
|
|
257
|
-
var
|
|
258
|
-
|
|
254
|
+
var _this3 = this;
|
|
259
255
|
if (props === void 0) {
|
|
260
256
|
props = this.$props;
|
|
261
257
|
}
|
|
262
|
-
|
|
263
258
|
var performUpdate = function performUpdate() {
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
_this2.$emit('valueChange', value);
|
|
269
|
-
|
|
270
|
-
_this2.$emit('value-change', value);
|
|
259
|
+
_this3.currentValue = value;
|
|
260
|
+
_this3.updateQueryHandler(value, props);
|
|
261
|
+
_this3.$emit('valueChange', value);
|
|
262
|
+
_this3.$emit('value-change', value);
|
|
271
263
|
};
|
|
272
|
-
|
|
273
264
|
checkValueChange(props.componentId, value, props.beforeValueChange, performUpdate);
|
|
274
265
|
},
|
|
275
266
|
handleChange: function handleChange(item) {
|
|
276
267
|
var value = this.$props.value;
|
|
277
|
-
|
|
278
268
|
if (value === undefined) {
|
|
279
269
|
this.setValue(item);
|
|
280
270
|
} else {
|
|
@@ -283,21 +273,17 @@ var SingleDropdownList = {
|
|
|
283
273
|
},
|
|
284
274
|
updateDefaultQueryHandler: function updateDefaultQueryHandler(value, props) {
|
|
285
275
|
var query = SingleDropdownList.defaultQuery(value, props);
|
|
286
|
-
|
|
287
276
|
if (this.defaultQuery) {
|
|
288
277
|
var defaultQueryToBeSet = this.defaultQuery(value, props) || {};
|
|
289
278
|
var defaultQueryObj = extractQueryFromCustomQuery(defaultQueryToBeSet);
|
|
290
|
-
|
|
291
279
|
if (defaultQueryObj) {
|
|
292
280
|
query = defaultQueryObj;
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
|
|
281
|
+
}
|
|
282
|
+
// Update calculated default query in store
|
|
296
283
|
updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
|
|
297
284
|
var defaultQueryOptions = getOptionsForCustomQuery(defaultQueryToBeSet);
|
|
298
285
|
this.setQueryOptions(this.internalComponent, defaultQueryOptions, false);
|
|
299
286
|
}
|
|
300
|
-
|
|
301
287
|
this.updateQuery({
|
|
302
288
|
componentId: this.internalComponent,
|
|
303
289
|
query: query,
|
|
@@ -308,7 +294,6 @@ var SingleDropdownList = {
|
|
|
308
294
|
updateQueryHandler: function updateQueryHandler(value, props) {
|
|
309
295
|
var customQuery = props.customQuery;
|
|
310
296
|
var query = SingleDropdownList.defaultQuery(value, props);
|
|
311
|
-
|
|
312
297
|
if (customQuery) {
|
|
313
298
|
var customQueryCalc = customQuery(value, props);
|
|
314
299
|
query = extractQueryFromCustomQuery(customQueryCalc);
|
|
@@ -316,7 +301,6 @@ var SingleDropdownList = {
|
|
|
316
301
|
var customQueryOptions = getOptionsForCustomQuery(customQueryCalc);
|
|
317
302
|
this.setQueryOptions(props.componentId, customQueryOptions, false);
|
|
318
303
|
}
|
|
319
|
-
|
|
320
304
|
this.updateQuery({
|
|
321
305
|
componentId: props.componentId,
|
|
322
306
|
query: query,
|
|
@@ -339,15 +323,12 @@ var SingleDropdownList = {
|
|
|
339
323
|
if (addAfterKey === void 0) {
|
|
340
324
|
addAfterKey = false;
|
|
341
325
|
}
|
|
342
|
-
|
|
343
326
|
// when using composite aggs flush the current options for a fresh query
|
|
344
327
|
if (props.showLoadMore && !addAfterKey) {
|
|
345
328
|
this.modifiedOptions = [];
|
|
346
329
|
} // for a new query due to other changes don't append after to get fresh results
|
|
347
330
|
|
|
348
|
-
|
|
349
331
|
var queryOptions = SingleDropdownList.generateQueryOptions(props, addAfterKey ? this.$data.after : {});
|
|
350
|
-
|
|
351
332
|
if (props.defaultQuery) {
|
|
352
333
|
var value = this.$data.currentValue;
|
|
353
334
|
var defaultQueryOptions = getOptionsForCustomQuery(props.defaultQuery(value, props));
|
|
@@ -363,7 +344,6 @@ var SingleDropdownList = {
|
|
|
363
344
|
if (downshiftProps === void 0) {
|
|
364
345
|
downshiftProps = {};
|
|
365
346
|
}
|
|
366
|
-
|
|
367
347
|
var currentValue = this.$data.currentValue;
|
|
368
348
|
var data = {
|
|
369
349
|
error: this.error,
|
|
@@ -383,56 +363,18 @@ var SingleDropdownList = {
|
|
|
383
363
|
}
|
|
384
364
|
}
|
|
385
365
|
};
|
|
386
|
-
|
|
387
366
|
SingleDropdownList.defaultQuery = function (value, props) {
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
query = {
|
|
398
|
-
exists: {
|
|
399
|
-
field: props.dataField
|
|
400
|
-
}
|
|
401
|
-
};
|
|
402
|
-
} else if (value) {
|
|
403
|
-
var _term;
|
|
404
|
-
|
|
405
|
-
if (props.showMissing && props.missingLabel === value) {
|
|
406
|
-
query = {
|
|
407
|
-
bool: {
|
|
408
|
-
must_not: {
|
|
409
|
-
exists: {
|
|
410
|
-
field: props.dataField
|
|
411
|
-
}
|
|
412
|
-
}
|
|
413
|
-
}
|
|
414
|
-
};
|
|
367
|
+
return {
|
|
368
|
+
query: {
|
|
369
|
+
queryFormat: props.queryFormat,
|
|
370
|
+
dataField: props.dataField,
|
|
371
|
+
value: value,
|
|
372
|
+
nestedField: props.nestedField,
|
|
373
|
+
selectAllLabel: props.selectAllLabel,
|
|
374
|
+
showMissing: props.showMissing
|
|
415
375
|
}
|
|
416
|
-
|
|
417
|
-
query = {
|
|
418
|
-
term: (_term = {}, _term[props.dataField] = value, _term)
|
|
419
|
-
};
|
|
420
|
-
}
|
|
421
|
-
|
|
422
|
-
if (query && props.nestedField) {
|
|
423
|
-
return {
|
|
424
|
-
query: {
|
|
425
|
-
nested: {
|
|
426
|
-
path: props.nestedField,
|
|
427
|
-
query: query
|
|
428
|
-
}
|
|
429
|
-
}
|
|
430
|
-
};
|
|
431
|
-
}
|
|
432
|
-
|
|
433
|
-
return query;
|
|
376
|
+
};
|
|
434
377
|
};
|
|
435
|
-
|
|
436
378
|
SingleDropdownList.generateQueryOptions = function (props, after) {
|
|
437
379
|
var queryOptions = getQueryOptions(props);
|
|
438
380
|
return props.showLoadMore ? getCompositeAggsQuery({
|
|
@@ -441,40 +383,38 @@ SingleDropdownList.generateQueryOptions = function (props, after) {
|
|
|
441
383
|
after: after
|
|
442
384
|
}) : getAggsQuery(queryOptions, props);
|
|
443
385
|
};
|
|
444
|
-
|
|
445
386
|
SingleDropdownList.hasInternalComponent = function () {
|
|
446
387
|
return true;
|
|
447
388
|
};
|
|
448
|
-
|
|
449
389
|
var mapStateToProps = function mapStateToProps(state, props) {
|
|
450
390
|
return {
|
|
451
391
|
options: props.nestedField && state.aggregations[props.componentId] ? state.aggregations[props.componentId].reactivesearch_nested : state.aggregations[props.componentId],
|
|
452
392
|
rawData: state.rawData[props.componentId],
|
|
453
393
|
isLoading: state.isLoading[props.componentId],
|
|
454
394
|
selectedValue: state.selectedValues[props.componentId] && state.selectedValues[props.componentId].value || '',
|
|
395
|
+
totalDocumentCount: state.hits[props.componentId] && state.hits[props.componentId].total,
|
|
455
396
|
themePreset: state.config.themePreset,
|
|
456
397
|
error: state.error[props.componentId],
|
|
457
|
-
componentProps: state.props[props.componentId]
|
|
458
|
-
enableAppbase: state.config.enableAppbase
|
|
398
|
+
componentProps: state.props[props.componentId]
|
|
459
399
|
};
|
|
460
400
|
};
|
|
461
|
-
|
|
462
401
|
var mapDispatchtoProps = {
|
|
463
402
|
setQueryOptions: setQueryOptions,
|
|
464
403
|
updateQuery: updateQuery,
|
|
465
404
|
setCustomQuery: setCustomQuery,
|
|
466
405
|
setDefaultQuery: setDefaultQuery
|
|
467
406
|
};
|
|
468
|
-
var ListConnected = ComponentWrapper(connect(mapStateToProps, mapDispatchtoProps)(SingleDropdownList), {
|
|
407
|
+
var ListConnected = PreferencesConsumer(ComponentWrapper(connect(mapStateToProps, mapDispatchtoProps)(SingleDropdownList), {
|
|
469
408
|
componentType: componentTypes.singleDropdownList,
|
|
470
409
|
internalComponent: SingleDropdownList.hasInternalComponent()
|
|
471
|
-
});
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
Vue.component(
|
|
475
|
-
};
|
|
476
|
-
|
|
410
|
+
}));
|
|
411
|
+
ListConnected.name = SingleDropdownList.name;
|
|
412
|
+
ListConnected.install = function (Vue) {
|
|
413
|
+
Vue.component(ListConnected.name, ListConnected);
|
|
414
|
+
};
|
|
477
415
|
|
|
478
|
-
|
|
416
|
+
// Add componentType for SSR
|
|
417
|
+
ListConnected.componentType = componentTypes.singleDropdownList;
|
|
479
418
|
|
|
480
|
-
export default
|
|
419
|
+
export default ListConnected;
|
|
420
|
+
export { ListConnected };
|