@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
package/dist/cjs/MultiList.js
CHANGED
|
@@ -6,34 +6,36 @@ 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-c705cbe6.js');
|
|
10
|
-
var VueTypes = _interopDefault(require('vue-types'));
|
|
11
9
|
var constants = require('@appbaseio/reactivecore/lib/utils/constants');
|
|
12
|
-
require('
|
|
10
|
+
var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f8b843f8.js');
|
|
11
|
+
var vue = require('vue');
|
|
12
|
+
var VueTypes = _interopDefault(require('vue-types'));
|
|
13
13
|
require('@appbaseio/vue-emotion');
|
|
14
|
+
require('emotion');
|
|
14
15
|
require('polished');
|
|
15
|
-
var vueTypes = require('./vueTypes-
|
|
16
|
+
var vueTypes = require('./vueTypes-1bf00978.js');
|
|
16
17
|
require('@appbaseio/reactivecore/lib/utils/transform');
|
|
17
18
|
require('redux');
|
|
18
|
-
var index = require('./index-
|
|
19
|
-
var ComponentWrapper = require('./ComponentWrapper-
|
|
20
|
-
var
|
|
21
|
-
var
|
|
22
|
-
var
|
|
19
|
+
var index = require('./index-d8d8f291.js');
|
|
20
|
+
var ComponentWrapper = require('./ComponentWrapper-75f88599.js');
|
|
21
|
+
var PreferencesConsumer = require('./PreferencesConsumer-eb265924.js');
|
|
22
|
+
var Title = require('./Title-8802a218.js');
|
|
23
|
+
var Input = require('./Input-4b434436.js');
|
|
24
|
+
var Container = require('./Container-29f049b2.js');
|
|
23
25
|
var suggestions = require('@appbaseio/reactivecore/lib/utils/suggestions');
|
|
24
|
-
var FormControlList = require('./FormControlList-
|
|
25
|
-
var utils = require('./utils-
|
|
26
|
+
var FormControlList = require('./FormControlList-fadd792f.js');
|
|
27
|
+
var utils = require('./utils-83fd01e9.js');
|
|
26
28
|
|
|
27
29
|
var updateQuery = configureStore.Actions.updateQuery,
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
setQueryOptions = configureStore.Actions.setQueryOptions,
|
|
31
|
+
setCustomQuery = configureStore.Actions.setCustomQuery,
|
|
32
|
+
setDefaultQuery = configureStore.Actions.setDefaultQuery;
|
|
31
33
|
var isEqual = configureStore.helper.isEqual,
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
getQueryOptions = configureStore.helper.getQueryOptions,
|
|
35
|
+
checkValueChange = configureStore.helper.checkValueChange,
|
|
36
|
+
getClassName = configureStore.helper.getClassName,
|
|
37
|
+
extractQueryFromCustomQuery = configureStore.helper.extractQueryFromCustomQuery,
|
|
38
|
+
getOptionsForCustomQuery = configureStore.helper.getOptionsForCustomQuery;
|
|
37
39
|
var MultiList = {
|
|
38
40
|
name: 'MultiList',
|
|
39
41
|
props: {
|
|
@@ -81,13 +83,9 @@ var MultiList = {
|
|
|
81
83
|
return this.__state;
|
|
82
84
|
},
|
|
83
85
|
created: function created() {
|
|
84
|
-
if (!this.enableAppbase && this.$props.index) {
|
|
85
|
-
console.warn('Warning(ReactiveSearch): In order to use the `index` prop, the `enableAppbase` prop must be set to true in `ReactiveBase`.');
|
|
86
|
-
}
|
|
87
|
-
|
|
88
86
|
var props = this.$props;
|
|
89
|
-
this.modifiedOptions = this.options && this.options[props.dataField] ? this.options[props.dataField].buckets : [];
|
|
90
|
-
|
|
87
|
+
this.modifiedOptions = this.options && this.options[props.dataField] ? this.options[props.dataField].buckets : [];
|
|
88
|
+
// Set custom and default queries in store
|
|
91
89
|
index.updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.currentValue);
|
|
92
90
|
index.updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, this.currentValue);
|
|
93
91
|
},
|
|
@@ -98,7 +96,6 @@ var MultiList = {
|
|
|
98
96
|
},
|
|
99
97
|
mounted: function mounted() {
|
|
100
98
|
var currentValue = Object.keys(this.$data.currentValue);
|
|
101
|
-
|
|
102
99
|
if (this.$props.value !== undefined && !isEqual(this.$props.value, currentValue)) {
|
|
103
100
|
this.$emit('change', currentValue);
|
|
104
101
|
}
|
|
@@ -131,19 +128,15 @@ var MultiList = {
|
|
|
131
128
|
},
|
|
132
129
|
selectedValue: function selectedValue(newVal) {
|
|
133
130
|
var _this = this;
|
|
134
|
-
|
|
135
131
|
var selectedValue = Object.keys(this.$data.currentValue);
|
|
136
|
-
|
|
137
132
|
if (this.$props.selectAllLabel) {
|
|
138
133
|
selectedValue = selectedValue.filter(function (val) {
|
|
139
134
|
return val !== _this.$props.selectAllLabel;
|
|
140
135
|
});
|
|
141
|
-
|
|
142
136
|
if (this.$data.currentValue[this.$props.selectAllLabel]) {
|
|
143
137
|
selectedValue = [this.$props.selectAllLabel];
|
|
144
138
|
}
|
|
145
139
|
}
|
|
146
|
-
|
|
147
140
|
if (!isEqual(selectedValue, newVal)) {
|
|
148
141
|
if (this.value === undefined) {
|
|
149
142
|
this.setValue(newVal, true);
|
|
@@ -165,19 +158,15 @@ var MultiList = {
|
|
|
165
158
|
},
|
|
166
159
|
render: function render() {
|
|
167
160
|
var _this2 = this;
|
|
168
|
-
|
|
169
|
-
var h = arguments[0];
|
|
170
161
|
var _this$$props = this.$props,
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
var renderItemCalc = this.$
|
|
175
|
-
var renderErrorCalc = this.$
|
|
176
|
-
|
|
162
|
+
selectAllLabel = _this$$props.selectAllLabel,
|
|
163
|
+
renderItem = _this$$props.renderItem,
|
|
164
|
+
renderError = _this$$props.renderError;
|
|
165
|
+
var renderItemCalc = this.$slots.renderItem || renderItem;
|
|
166
|
+
var renderErrorCalc = this.$slots.renderError || renderError;
|
|
177
167
|
if (renderErrorCalc && this.error) {
|
|
178
168
|
return index.isFunction(renderErrorCalc) ? renderErrorCalc(this.error) : renderErrorCalc;
|
|
179
169
|
}
|
|
180
|
-
|
|
181
170
|
if (!this.hasCustomRenderer && this.modifiedOptions.length === 0 && !this.isLoading) {
|
|
182
171
|
if (this.renderNoResult) {
|
|
183
172
|
this.renderNoResult();
|
|
@@ -185,102 +174,89 @@ var MultiList = {
|
|
|
185
174
|
return null;
|
|
186
175
|
}
|
|
187
176
|
}
|
|
188
|
-
|
|
189
177
|
var itemsToRender = this.$data.modifiedOptions;
|
|
190
|
-
|
|
191
178
|
if (this.$props.transformData) {
|
|
192
179
|
itemsToRender = this.$props.transformData(itemsToRender);
|
|
193
180
|
}
|
|
194
|
-
|
|
195
181
|
var filteredItemsToRender = itemsToRender.filter(function (item) {
|
|
196
182
|
if (String(item.key).length) {
|
|
197
183
|
if (_this2.$props.showSearch && _this2.$data.searchTerm) {
|
|
198
184
|
return suggestions.replaceDiacritics(String(item.key)).toLowerCase().includes(suggestions.replaceDiacritics(_this2.$data.searchTerm).toLowerCase());
|
|
199
185
|
}
|
|
200
|
-
|
|
201
186
|
return true;
|
|
202
187
|
}
|
|
203
|
-
|
|
204
188
|
return false;
|
|
205
189
|
});
|
|
206
|
-
return
|
|
190
|
+
return vue.createVNode(Container.Container, {
|
|
207
191
|
"class": this.$props.className
|
|
208
|
-
},
|
|
209
|
-
"
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
192
|
+
}, {
|
|
193
|
+
"default": function _default() {
|
|
194
|
+
return [_this2.$props.title && vue.createVNode(Title.Title, {
|
|
195
|
+
"class": getClassName(_this2.$props.innerClass, 'title')
|
|
196
|
+
}, {
|
|
197
|
+
"default": function _default() {
|
|
198
|
+
return [_this2.$props.title];
|
|
199
|
+
}
|
|
200
|
+
}), _this2.renderSearch(), _this2.hasCustomRenderer ? _this2.getComponent() : vue.createVNode(FormControlList.UL, null, {
|
|
201
|
+
"default": function _default() {
|
|
202
|
+
return [selectAllLabel ? vue.createVNode("li", {
|
|
203
|
+
"key": selectAllLabel,
|
|
204
|
+
"class": "" + (_this2.currentValue[selectAllLabel] ? 'active' : '')
|
|
205
|
+
}, [vue.createVNode(FormControlList.Checkbox, {
|
|
206
|
+
"type": "checkbox",
|
|
207
|
+
"class": getClassName(_this2.$props.innerClass, 'checkbox'),
|
|
208
|
+
"id": _this2.$props.componentId + "-" + selectAllLabel,
|
|
209
|
+
"name": selectAllLabel,
|
|
210
|
+
"value": selectAllLabel,
|
|
211
|
+
"onClick": _this2.handleClick,
|
|
212
|
+
"checked": !!_this2.currentValue[selectAllLabel],
|
|
213
|
+
"show": _this2.$props.showCheckbox
|
|
214
|
+
}, null), vue.createVNode("label", {
|
|
215
|
+
"class": getClassName(_this2.$props.innerClass, 'label'),
|
|
216
|
+
"for": _this2.$props.componentId + "-" + selectAllLabel
|
|
217
|
+
}, [vue.createVNode("span", null, [selectAllLabel, _this2.$props.showCount && vue.createVNode("span", {
|
|
218
|
+
"class": getClassName(_this2.$props.innerClass, 'count')
|
|
219
|
+
}, [vue.createTextVNode("\xA0("), _this2.totalDocumentCount, vue.createTextVNode(")")])])])]) : null, !_this2.hasCustomRenderer && filteredItemsToRender.length === 0 && !_this2.isLoading ? _this2.renderNoResult() : filteredItemsToRender.map(function (item) {
|
|
220
|
+
return vue.createVNode("li", {
|
|
221
|
+
"key": item.key,
|
|
222
|
+
"class": "" + (_this2.$data.currentValue[item.key] ? 'active' : '')
|
|
223
|
+
}, [vue.createVNode(FormControlList.Checkbox, {
|
|
224
|
+
"type": "checkbox",
|
|
225
|
+
"class": getClassName(_this2.$props.innerClass, 'checkbox'),
|
|
226
|
+
"id": _this2.$props.componentId + "-" + item.key,
|
|
227
|
+
"name": _this2.$props.componentId,
|
|
228
|
+
"value": item.key,
|
|
229
|
+
"onClick": _this2.handleClick,
|
|
230
|
+
"show": _this2.$props.showCheckbox,
|
|
231
|
+
"checked": !!_this2.$data.currentValue[item.key]
|
|
232
|
+
}, null), vue.createVNode("label", {
|
|
233
|
+
"class": getClassName(_this2.$props.innerClass, 'label'),
|
|
234
|
+
"for": _this2.$props.componentId + "-" + item.key
|
|
235
|
+
}, [renderItemCalc ? renderItemCalc({
|
|
236
|
+
label: item.key,
|
|
237
|
+
count: item.doc_count,
|
|
238
|
+
isChecked: !!_this2.$data.currentValue[item.key]
|
|
239
|
+
}) : vue.createVNode("span", null, [item.key, _this2.$props.showCount && vue.createVNode("span", {
|
|
240
|
+
"class": getClassName(_this2.$props.innerClass, 'count')
|
|
241
|
+
}, [vue.createTextVNode("\xA0("), item.doc_count, vue.createTextVNode(")")])])])]);
|
|
242
|
+
})];
|
|
243
|
+
}
|
|
244
|
+
})];
|
|
234
245
|
}
|
|
235
|
-
}
|
|
236
|
-
return h("li", {
|
|
237
|
-
"key": item.key,
|
|
238
|
-
"class": "" + (_this2.$data.currentValue[item.key] ? 'active' : '')
|
|
239
|
-
}, [h(FormControlList.Checkbox, {
|
|
240
|
-
"attrs": {
|
|
241
|
-
"type": "checkbox",
|
|
242
|
-
"id": _this2.$props.componentId + "-" + item.key,
|
|
243
|
-
"name": _this2.$props.componentId,
|
|
244
|
-
"value": item.key,
|
|
245
|
-
"show": _this2.$props.showCheckbox
|
|
246
|
-
},
|
|
247
|
-
"class": getClassName(_this2.$props.innerClass, 'checkbox'),
|
|
248
|
-
"on": {
|
|
249
|
-
"click": _this2.handleClick
|
|
250
|
-
},
|
|
251
|
-
"domProps": _rollupPluginBabelHelpers._extends({}, {
|
|
252
|
-
checked: !!_this2.$data.currentValue[item.key]
|
|
253
|
-
})
|
|
254
|
-
}), h("label", {
|
|
255
|
-
"class": getClassName(_this2.$props.innerClass, 'label'),
|
|
256
|
-
"attrs": {
|
|
257
|
-
"for": _this2.$props.componentId + "-" + item.key
|
|
258
|
-
}
|
|
259
|
-
}, [renderItemCalc ? renderItemCalc({
|
|
260
|
-
label: item.key,
|
|
261
|
-
count: item.doc_count,
|
|
262
|
-
isChecked: !!_this2.$data.currentValue[item.key]
|
|
263
|
-
}) : h("span", [item.key, _this2.$props.showCount && h("span", {
|
|
264
|
-
"class": getClassName(_this2.$props.innerClass, 'count')
|
|
265
|
-
}, ["\xA0(", item.doc_count, ")"])])])]);
|
|
266
|
-
})])]);
|
|
246
|
+
});
|
|
267
247
|
},
|
|
268
248
|
methods: {
|
|
269
249
|
setValue: function setValue(value, isDefaultValue, props) {
|
|
270
250
|
var _this3 = this;
|
|
271
|
-
|
|
272
251
|
if (isDefaultValue === void 0) {
|
|
273
252
|
isDefaultValue = false;
|
|
274
253
|
}
|
|
275
|
-
|
|
276
254
|
if (props === void 0) {
|
|
277
255
|
props = this.$props;
|
|
278
256
|
}
|
|
279
|
-
|
|
280
257
|
var selectAllLabel = this.$props.selectAllLabel;
|
|
281
258
|
var currentValue = this.$data.currentValue;
|
|
282
259
|
var finalValues = null;
|
|
283
|
-
|
|
284
260
|
if (selectAllLabel && (Array.isArray(value) && value.includes(selectAllLabel) || typeof value === 'string' && value === selectAllLabel)) {
|
|
285
261
|
if (currentValue[selectAllLabel]) {
|
|
286
262
|
currentValue = {};
|
|
@@ -295,26 +271,22 @@ var MultiList = {
|
|
|
295
271
|
} else if (isDefaultValue) {
|
|
296
272
|
finalValues = value;
|
|
297
273
|
currentValue = {};
|
|
298
|
-
|
|
299
274
|
if (value && value.length) {
|
|
300
275
|
value.forEach(function (item) {
|
|
301
276
|
currentValue[item] = true;
|
|
302
277
|
});
|
|
303
278
|
}
|
|
304
|
-
|
|
305
279
|
if (selectAllLabel && selectAllLabel in currentValue) {
|
|
306
280
|
var _currentValue = currentValue,
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
281
|
+
del = _currentValue[selectAllLabel],
|
|
282
|
+
obj = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_currentValue, [selectAllLabel].map(_rollupPluginBabelHelpers._toPropertyKey));
|
|
310
283
|
currentValue = _rollupPluginBabelHelpers._extends({}, obj);
|
|
311
284
|
}
|
|
312
285
|
} else {
|
|
313
286
|
if (currentValue[value]) {
|
|
314
287
|
var _currentValue2 = currentValue,
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
288
|
+
_del = _currentValue2[value],
|
|
289
|
+
rest = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_currentValue2, [value].map(_rollupPluginBabelHelpers._toPropertyKey));
|
|
318
290
|
currentValue = _rollupPluginBabelHelpers._extends({}, rest);
|
|
319
291
|
} else if (Array.isArray(value)) {
|
|
320
292
|
value.forEach(function (val) {
|
|
@@ -323,47 +295,36 @@ var MultiList = {
|
|
|
323
295
|
} else {
|
|
324
296
|
currentValue[value] = true;
|
|
325
297
|
}
|
|
326
|
-
|
|
327
298
|
if (selectAllLabel && selectAllLabel in currentValue) {
|
|
328
299
|
var _currentValue3 = currentValue,
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
300
|
+
_del2 = _currentValue3[selectAllLabel],
|
|
301
|
+
_obj = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_currentValue3, [selectAllLabel].map(_rollupPluginBabelHelpers._toPropertyKey));
|
|
332
302
|
currentValue = _rollupPluginBabelHelpers._extends({}, _obj);
|
|
333
303
|
}
|
|
334
|
-
|
|
335
304
|
finalValues = Object.keys(currentValue);
|
|
336
305
|
}
|
|
337
|
-
|
|
338
306
|
var performUpdate = function performUpdate() {
|
|
339
307
|
_this3.currentValue = Object.assign({}, currentValue);
|
|
340
|
-
|
|
341
308
|
_this3.updateQueryHandler(finalValues, props);
|
|
342
|
-
|
|
343
309
|
_this3.$emit('valueChange', finalValues);
|
|
344
|
-
|
|
345
310
|
_this3.$emit('value-change', finalValues);
|
|
346
311
|
};
|
|
347
|
-
|
|
348
312
|
checkValueChange(props.componentId, finalValues, props.beforeValueChange, performUpdate);
|
|
349
313
|
},
|
|
350
314
|
updateDefaultQueryHandler: function updateDefaultQueryHandler(value, props) {
|
|
351
315
|
var query = MultiList.defaultQuery(value, props);
|
|
352
|
-
|
|
353
316
|
if (this.defaultQuery) {
|
|
354
317
|
var defaultQueryToBeSet = this.defaultQuery(value, props) || {};
|
|
355
318
|
var defaultQueryObj = extractQueryFromCustomQuery(defaultQueryToBeSet);
|
|
356
|
-
|
|
357
319
|
if (defaultQueryObj) {
|
|
358
320
|
query = defaultQueryObj;
|
|
359
|
-
}
|
|
360
|
-
|
|
321
|
+
}
|
|
361
322
|
|
|
323
|
+
// Update calculated default query in store
|
|
362
324
|
index.updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
|
|
363
325
|
var defaultQueryOptions = getOptionsForCustomQuery(defaultQueryToBeSet);
|
|
364
326
|
this.setQueryOptions(this.internalComponent, defaultQueryOptions, false);
|
|
365
327
|
}
|
|
366
|
-
|
|
367
328
|
this.updateQuery({
|
|
368
329
|
componentId: this.internalComponent,
|
|
369
330
|
query: query,
|
|
@@ -374,7 +335,6 @@ var MultiList = {
|
|
|
374
335
|
updateQueryHandler: function updateQueryHandler(value, props) {
|
|
375
336
|
var customQuery = props.customQuery;
|
|
376
337
|
var query = MultiList.defaultQuery(value, props);
|
|
377
|
-
|
|
378
338
|
if (customQuery) {
|
|
379
339
|
var customQueryCalc = customQuery(value, props);
|
|
380
340
|
query = extractQueryFromCustomQuery(customQueryCalc);
|
|
@@ -382,7 +342,6 @@ var MultiList = {
|
|
|
382
342
|
var customQueryOptions = getOptionsForCustomQuery(customQueryCalc);
|
|
383
343
|
this.setQueryOptions(props.componentId, customQueryOptions, false);
|
|
384
344
|
}
|
|
385
|
-
|
|
386
345
|
this.updateQuery({
|
|
387
346
|
componentId: props.componentId,
|
|
388
347
|
query: query,
|
|
@@ -399,7 +358,6 @@ var MultiList = {
|
|
|
399
358
|
},
|
|
400
359
|
updateQueryHandlerOptions: function updateQueryHandlerOptions(props) {
|
|
401
360
|
var queryOptions = MultiList.generateQueryOptions(props);
|
|
402
|
-
|
|
403
361
|
if (props.defaultQuery) {
|
|
404
362
|
var value = Object.keys(this.$data.currentValue);
|
|
405
363
|
var defaultQueryOptions = getOptionsForCustomQuery(props.defaultQuery(value, props));
|
|
@@ -413,36 +371,26 @@ var MultiList = {
|
|
|
413
371
|
this.searchTerm = value;
|
|
414
372
|
},
|
|
415
373
|
renderSearch: function renderSearch() {
|
|
416
|
-
var h = this.$createElement;
|
|
417
|
-
|
|
418
374
|
if (this.$props.showSearch) {
|
|
419
|
-
return
|
|
375
|
+
return vue.createVNode(Input.Input, {
|
|
420
376
|
"class": getClassName(this.$props.innerClass, 'input') || '',
|
|
421
|
-
"
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
"attrs": {
|
|
425
|
-
"value": this.$data.searchTerm,
|
|
426
|
-
"placeholder": this.$props.placeholder,
|
|
427
|
-
"themePreset": this.$props.themePreset
|
|
428
|
-
},
|
|
377
|
+
"onInput": this.handleInputChange,
|
|
378
|
+
"value": this.$data.searchTerm,
|
|
379
|
+
"placeholder": this.$props.placeholder,
|
|
429
380
|
"style": {
|
|
430
381
|
margin: '0 0 8px'
|
|
431
|
-
}
|
|
432
|
-
|
|
382
|
+
},
|
|
383
|
+
"themePreset": this.$props.themePreset
|
|
384
|
+
}, null);
|
|
433
385
|
}
|
|
434
|
-
|
|
435
386
|
return null;
|
|
436
387
|
},
|
|
437
388
|
handleClick: function handleClick(e) {
|
|
438
389
|
var currentValue = e;
|
|
439
|
-
|
|
440
390
|
if (index.isEvent(e)) {
|
|
441
391
|
currentValue = e.target.value;
|
|
442
392
|
}
|
|
443
|
-
|
|
444
393
|
var value = this.$props.value;
|
|
445
|
-
|
|
446
394
|
if (value === undefined) {
|
|
447
395
|
this.setValue(currentValue);
|
|
448
396
|
} else {
|
|
@@ -452,15 +400,13 @@ var MultiList = {
|
|
|
452
400
|
},
|
|
453
401
|
getComponent: function getComponent() {
|
|
454
402
|
var _this$$data = this.$data,
|
|
455
|
-
|
|
456
|
-
|
|
403
|
+
currentValue = _this$$data.currentValue,
|
|
404
|
+
modifiedOptions = _this$$data.modifiedOptions;
|
|
457
405
|
var transformData = this.$props.transformData;
|
|
458
406
|
var itemsToRender = modifiedOptions;
|
|
459
|
-
|
|
460
407
|
if (transformData) {
|
|
461
408
|
itemsToRender = transformData(itemsToRender);
|
|
462
409
|
}
|
|
463
|
-
|
|
464
410
|
var data = {
|
|
465
411
|
error: this.error,
|
|
466
412
|
loading: this.isLoading,
|
|
@@ -472,9 +418,8 @@ var MultiList = {
|
|
|
472
418
|
return index.getComponent(data, this);
|
|
473
419
|
},
|
|
474
420
|
renderNoResult: function renderNoResult() {
|
|
475
|
-
var
|
|
476
|
-
|
|
477
|
-
return h("p", {
|
|
421
|
+
var renderNoResults = this.$slots.renderNoResults || this.$props.renderNoResults;
|
|
422
|
+
return vue.createVNode("p", {
|
|
478
423
|
"class": getClassName(this.$props.innerClass, 'noResults') || null
|
|
479
424
|
}, [index.isFunction(renderNoResults) ? renderNoResults() : renderNoResults]);
|
|
480
425
|
}
|
|
@@ -485,103 +430,22 @@ var MultiList = {
|
|
|
485
430
|
}
|
|
486
431
|
}
|
|
487
432
|
};
|
|
488
|
-
|
|
489
433
|
MultiList.defaultQuery = function (value, props) {
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
if (!Array.isArray(value) || value.length === 0) {
|
|
500
|
-
return null;
|
|
501
|
-
}
|
|
502
|
-
|
|
503
|
-
if (props.selectAllLabel && value.includes(props.selectAllLabel)) {
|
|
504
|
-
if (props.showMissing) {
|
|
505
|
-
query = {
|
|
506
|
-
match_all: {}
|
|
507
|
-
};
|
|
508
|
-
} else {
|
|
509
|
-
query = {
|
|
510
|
-
exists: {
|
|
511
|
-
field: props.dataField
|
|
512
|
-
}
|
|
513
|
-
};
|
|
514
|
-
}
|
|
515
|
-
} else if (value) {
|
|
516
|
-
var listQuery;
|
|
517
|
-
|
|
518
|
-
if (queryFormat === 'or') {
|
|
519
|
-
if (props.showMissing) {
|
|
520
|
-
var _type, _ref;
|
|
521
|
-
|
|
522
|
-
var hasMissingTerm = value.includes(props.missingLabel);
|
|
523
|
-
var should = [(_ref = {}, _ref[type] = (_type = {}, _type[props.dataField] = value.filter(function (item) {
|
|
524
|
-
return item !== props.missingLabel;
|
|
525
|
-
}), _type), _ref)];
|
|
526
|
-
|
|
527
|
-
if (hasMissingTerm) {
|
|
528
|
-
should = should.concat({
|
|
529
|
-
bool: {
|
|
530
|
-
must_not: {
|
|
531
|
-
exists: {
|
|
532
|
-
field: props.dataField
|
|
533
|
-
}
|
|
534
|
-
}
|
|
535
|
-
}
|
|
536
|
-
});
|
|
537
|
-
}
|
|
538
|
-
|
|
539
|
-
listQuery = {
|
|
540
|
-
bool: {
|
|
541
|
-
should: should
|
|
542
|
-
}
|
|
543
|
-
};
|
|
544
|
-
} else {
|
|
545
|
-
var _type2, _listQuery;
|
|
546
|
-
|
|
547
|
-
listQuery = (_listQuery = {}, _listQuery[type] = (_type2 = {}, _type2[props.dataField] = value, _type2), _listQuery);
|
|
548
|
-
}
|
|
549
|
-
} else {
|
|
550
|
-
// adds a sub-query with must as an array of objects for each term/value
|
|
551
|
-
var queryArray = value.map(function (item) {
|
|
552
|
-
var _type3, _ref2;
|
|
553
|
-
|
|
554
|
-
return _ref2 = {}, _ref2[type] = (_type3 = {}, _type3[props.dataField] = item, _type3), _ref2;
|
|
555
|
-
});
|
|
556
|
-
listQuery = {
|
|
557
|
-
bool: {
|
|
558
|
-
must: queryArray
|
|
559
|
-
}
|
|
560
|
-
};
|
|
434
|
+
return {
|
|
435
|
+
query: {
|
|
436
|
+
queryFormat: props.queryFormat,
|
|
437
|
+
dataField: props.dataField,
|
|
438
|
+
value: value,
|
|
439
|
+
nestedField: props.nestedField,
|
|
440
|
+
selectAllLabel: props.selectAllLabel,
|
|
441
|
+
showMissing: props.showMissing
|
|
561
442
|
}
|
|
562
|
-
|
|
563
|
-
query = value.length ? listQuery : null;
|
|
564
|
-
}
|
|
565
|
-
|
|
566
|
-
if (query && props.nestedField) {
|
|
567
|
-
query = {
|
|
568
|
-
query: {
|
|
569
|
-
nested: {
|
|
570
|
-
path: props.nestedField,
|
|
571
|
-
query: query
|
|
572
|
-
}
|
|
573
|
-
}
|
|
574
|
-
};
|
|
575
|
-
}
|
|
576
|
-
|
|
577
|
-
return query;
|
|
443
|
+
};
|
|
578
444
|
};
|
|
579
|
-
|
|
580
445
|
MultiList.generateQueryOptions = function (props) {
|
|
581
446
|
var queryOptions = getQueryOptions(props);
|
|
582
447
|
return utils.getAggsQuery(queryOptions, props);
|
|
583
448
|
};
|
|
584
|
-
|
|
585
449
|
var mapStateToProps = function mapStateToProps(state, props) {
|
|
586
450
|
return {
|
|
587
451
|
options: props.nestedField && state.aggregations[props.componentId] ? state.aggregations[props.componentId].reactivesearch_nested : state.aggregations[props.componentId],
|
|
@@ -589,33 +453,31 @@ var mapStateToProps = function mapStateToProps(state, props) {
|
|
|
589
453
|
isLoading: state.isLoading[props.componentId],
|
|
590
454
|
selectedValue: state.selectedValues[props.componentId] && state.selectedValues[props.componentId].value || null,
|
|
591
455
|
themePreset: state.config.themePreset,
|
|
456
|
+
totalDocumentCount: state.hits[props.componentId] && state.hits[props.componentId].total,
|
|
592
457
|
error: state.error[props.componentId],
|
|
593
|
-
componentProps: state.props[props.componentId]
|
|
594
|
-
enableAppbase: state.config.enableAppbase
|
|
458
|
+
componentProps: state.props[props.componentId]
|
|
595
459
|
};
|
|
596
460
|
};
|
|
597
|
-
|
|
598
461
|
var mapDispatchtoProps = {
|
|
599
462
|
setQueryOptions: setQueryOptions,
|
|
600
463
|
updateQuery: updateQuery,
|
|
601
464
|
setCustomQuery: setCustomQuery,
|
|
602
465
|
setDefaultQuery: setDefaultQuery
|
|
603
466
|
};
|
|
604
|
-
|
|
605
467
|
MultiList.hasInternalComponent = function () {
|
|
606
468
|
return true;
|
|
607
469
|
};
|
|
608
|
-
|
|
609
|
-
var ListConnected = ComponentWrapper.ComponentWrapper(index.connect(mapStateToProps, mapDispatchtoProps)(MultiList), {
|
|
470
|
+
var ListConnected = PreferencesConsumer.PreferencesConsumer(ComponentWrapper.ComponentWrapper(index.connect(mapStateToProps, mapDispatchtoProps)(MultiList), {
|
|
610
471
|
componentType: constants.componentTypes.multiList,
|
|
611
472
|
internalComponent: MultiList.hasInternalComponent()
|
|
612
|
-
});
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
Vue.component(
|
|
616
|
-
};
|
|
617
|
-
|
|
473
|
+
}));
|
|
474
|
+
ListConnected.name = MultiList.name;
|
|
475
|
+
ListConnected.install = function (Vue) {
|
|
476
|
+
Vue.component(ListConnected.name, ListConnected);
|
|
477
|
+
};
|
|
618
478
|
|
|
619
|
-
|
|
479
|
+
// Add componentType for SSR
|
|
480
|
+
ListConnected.componentType = constants.componentTypes.multiList;
|
|
620
481
|
|
|
621
|
-
exports.
|
|
482
|
+
exports.ListConnected = ListConnected;
|
|
483
|
+
exports.default = ListConnected;
|