@appbaseio/reactivesearch-vue 1.16.0-alpha.3 → 1.16.0-alpha.32

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 (101) hide show
  1. package/dist/@appbaseio/reactivesearch-vue.umd.js +6388 -5403
  2. package/dist/@appbaseio/reactivesearch-vue.umd.js.map +1 -1
  3. package/dist/@appbaseio/reactivesearch-vue.umd.min.js +5 -5
  4. package/dist/@appbaseio/reactivesearch-vue.umd.min.js.map +1 -1
  5. package/dist/cjs/Button-d2f1aeda.js +68 -0
  6. package/dist/cjs/{DownShift-b09da079.js → CancelSvg-82021d23.js} +60 -16
  7. package/dist/cjs/Card-4b915733.js +30 -0
  8. package/dist/cjs/{ComponentWrapper-5a0a8849.js → ComponentWrapper-7302fe1a.js} +40 -21
  9. package/dist/cjs/{Container-f84e72fc.js → Container-8a08d663.js} +3 -11
  10. package/dist/cjs/DataSearch.js +341 -391
  11. package/dist/cjs/{DropDown-c66be1a8.js → DropDown-c46d8b0c.js} +80 -95
  12. package/dist/cjs/DynamicRangeSlider.js +81 -25
  13. package/dist/cjs/Flex-699639d2.js +52 -0
  14. package/dist/cjs/FormControlList-73497794.js +47 -0
  15. package/dist/cjs/Input-c6f181d5.js +79 -0
  16. package/dist/cjs/ListItem-933c27e4.js +46 -0
  17. package/dist/cjs/MultiDropdownList.js +71 -46
  18. package/dist/cjs/MultiList.js +49 -29
  19. package/dist/cjs/MultiRange.js +20 -14
  20. package/dist/cjs/{Pagination-91df3b77.js → Pagination-1b2320a7.js} +4 -3
  21. package/dist/cjs/RangeInput.js +29 -45
  22. package/dist/cjs/RangeSlider.js +31 -28
  23. package/dist/cjs/ReactiveBase.js +55 -34
  24. package/dist/cjs/ReactiveComponent.js +80 -36
  25. package/dist/cjs/ReactiveGoogleMap.js +326 -235
  26. package/dist/cjs/ReactiveList.js +149 -202
  27. package/dist/cjs/ResultCard.js +8 -6
  28. package/dist/cjs/ResultList.js +8 -6
  29. package/dist/cjs/SelectedFilters.js +25 -12
  30. package/dist/cjs/SingleDropdownList.js +70 -45
  31. package/dist/cjs/SingleList.js +44 -26
  32. package/dist/cjs/SingleRange.js +17 -11
  33. package/dist/cjs/StateProvider.js +11 -7
  34. package/dist/cjs/{Title-e9beb554.js → Title-39765ee6.js} +3 -11
  35. package/dist/cjs/ToggleButton.js +35 -16
  36. package/dist/cjs/{_rollupPluginBabelHelpers-280a574c.js → _rollupPluginBabelHelpers-4abdbfff.js} +11 -1
  37. package/dist/cjs/{index-e0583d76.js → index-d44a0a21.js} +87 -13
  38. package/dist/cjs/index.js +23 -19
  39. package/dist/cjs/initReactivesearch.js +80 -38
  40. package/dist/cjs/install.js +20 -18
  41. package/dist/cjs/ssr-c333c82c.js +39 -0
  42. package/dist/cjs/{utils-d1ea9f95.js → utils-23afb20b.js} +2 -2
  43. package/dist/cjs/version.js +1 -1
  44. package/dist/cjs/{vueTypes-c21f265b.js → vueTypes-6de9d2a9.js} +9 -4
  45. package/dist/es/Button-799185e2.js +59 -0
  46. package/dist/es/{DownShift-d8f2500f.js → CancelSvg-4d9e0857.js} +56 -17
  47. package/dist/es/Card-04b3c33e.js +23 -0
  48. package/dist/es/{ComponentWrapper-d0b21b95.js → ComponentWrapper-bbb717bc.js} +40 -21
  49. package/dist/es/Container-4383c6f0.js +10 -0
  50. package/dist/es/DataSearch.js +339 -389
  51. package/dist/es/{DropDown-5dbd69c2.js → DropDown-4edaa621.js} +79 -94
  52. package/dist/es/DynamicRangeSlider.js +81 -25
  53. package/dist/es/Flex-aac91505.js +47 -0
  54. package/dist/es/FormControlList-fe389a2e.js +40 -0
  55. package/dist/es/Input-d8519224.js +71 -0
  56. package/dist/es/ListItem-bdb6d53d.js +39 -0
  57. package/dist/es/MultiDropdownList.js +71 -46
  58. package/dist/es/MultiList.js +49 -29
  59. package/dist/es/MultiRange.js +20 -14
  60. package/dist/es/{Pagination-800af44f.js → Pagination-b3e4054a.js} +4 -3
  61. package/dist/es/RangeInput.js +29 -45
  62. package/dist/es/RangeSlider.js +31 -28
  63. package/dist/es/ReactiveBase.js +55 -34
  64. package/dist/es/ReactiveComponent.js +80 -36
  65. package/dist/es/ReactiveGoogleMap.js +326 -235
  66. package/dist/es/ReactiveList.js +149 -202
  67. package/dist/es/ResultCard.js +8 -6
  68. package/dist/es/ResultList.js +8 -6
  69. package/dist/es/SelectedFilters.js +25 -12
  70. package/dist/es/SingleDropdownList.js +70 -45
  71. package/dist/es/SingleList.js +44 -26
  72. package/dist/es/SingleRange.js +17 -11
  73. package/dist/es/StateProvider.js +11 -7
  74. package/dist/es/Title-579f8d6c.js +10 -0
  75. package/dist/es/ToggleButton.js +35 -16
  76. package/dist/es/{_rollupPluginBabelHelpers-c9fbe19f.js → _rollupPluginBabelHelpers-ecf6c03c.js} +11 -1
  77. package/dist/es/{index-1fe91a0a.js → index-5daa8276.js} +84 -14
  78. package/dist/es/index.js +23 -19
  79. package/dist/es/initReactivesearch.js +80 -38
  80. package/dist/es/install.js +20 -18
  81. package/dist/es/ssr-e3196de1.js +33 -0
  82. package/dist/es/{utils-ce3d86fd.js → utils-3a32e13f.js} +2 -2
  83. package/dist/es/version.js +1 -1
  84. package/dist/es/{vueTypes-98d938a9.js → vueTypes-9326e0be.js} +9 -4
  85. package/package.json +86 -78
  86. package/dist/cjs/Button-78d8bc26.js +0 -146
  87. package/dist/cjs/Card-b4af314f.js +0 -58
  88. package/dist/cjs/Flex-737c55be.js +0 -160
  89. package/dist/cjs/FormControlList-08dfb28e.js +0 -105
  90. package/dist/cjs/Input-643d02a7.js +0 -178
  91. package/dist/cjs/ListItem-0c58c5d2.js +0 -84
  92. package/dist/cjs/ssr-b7a729f9.js +0 -47
  93. package/dist/es/Button-6c71c66e.js +0 -137
  94. package/dist/es/Card-ecf70ba1.js +0 -51
  95. package/dist/es/Container-f5efec9e.js +0 -18
  96. package/dist/es/Flex-40a74d8a.js +0 -155
  97. package/dist/es/FormControlList-b96aebef.js +0 -98
  98. package/dist/es/Input-dfd9dd40.js +0 -170
  99. package/dist/es/ListItem-da73bc7d.js +0 -77
  100. package/dist/es/Title-22c2f3bf.js +0 -18
  101. package/dist/es/ssr-2f57791d.js +0 -41
@@ -1,92 +1,36 @@
1
1
  import { helper, Actions, causes } from '@appbaseio/reactivecore';
2
- import { _ as _taggedTemplateLiteralLoose, a as _extends } from './_rollupPluginBabelHelpers-c9fbe19f.js';
2
+ import { _ as _taggedTemplateLiteralLoose, a as _extends } from './_rollupPluginBabelHelpers-ecf6c03c.js';
3
3
  import VueTypes from 'vue-types';
4
4
  import { componentTypes } from '@appbaseio/reactivecore/lib/utils/constants';
5
+ import { getQueryOptions } from '@appbaseio/reactivecore/lib/utils/helper';
5
6
  import 'emotion';
6
7
  import styled, { css, cx, injectGlobal } from '@appbaseio/vue-emotion';
7
8
  import 'polished';
8
- import { t as types } from './vueTypes-98d938a9.js';
9
+ import { t as types } from './vueTypes-9326e0be.js';
9
10
  import '@appbaseio/reactivecore/lib/utils/transform';
10
11
  import 'redux';
11
- import { g as getComponent, h as hasCustomRenderer, f as updateCustomQuery, u as updateDefaultQuery, i as isQueryIdentical, j as getQuerySuggestionsComponent, a as isFunction, k as hasQuerySuggestionsRenderer, c as connect } from './index-1fe91a0a.js';
12
- import { C as ComponentWrapper } from './ComponentWrapper-d0b21b95.js';
13
- import { T as Title } from './Title-22c2f3bf.js';
14
- import { F as Flex } from './Flex-40a74d8a.js';
15
- import { getQueryOptions } from '@appbaseio/reactivecore/lib/utils/helper';
16
- import { n as noSuggestions, s as suggestionsContainer, I as Input, a as suggestions } from './Input-dfd9dd40.js';
12
+ import { g as getComponent, h as hasCustomRenderer, f as updateCustomQuery, u as updateDefaultQuery, i as isQueryIdentical, j as getQuerySuggestionsComponent, a as isFunction, k as isEmpty, p as parseFocusShortcuts, l as extractModifierKeysFromFocusShortcuts, m as hasQuerySuggestionsRenderer, c as connect } from './index-5daa8276.js';
13
+ import { C as ComponentWrapper } from './ComponentWrapper-bbb717bc.js';
14
+ import { T as Title } from './Title-579f8d6c.js';
15
+ import { F as Flex } from './Flex-aac91505.js';
16
+ import hotkeys from 'hotkeys-js';
17
+ import { I as IconWrapper, C as CancelSvg, a as IconGroup, D as Downshift, b as InputWrapper } from './CancelSvg-4d9e0857.js';
18
+ import { n as noSuggestions, s as suggestionsContainer, I as Input, a as suggestions } from './Input-d8519224.js';
17
19
  import 'compute-scroll-into-view';
18
- import { D as Downshift } from './DownShift-d8f2500f.js';
19
- import { C as Container } from './Container-f5efec9e.js';
20
+ import { C as Container } from './Container-4383c6f0.js';
20
21
  import Highlight from 'vue-highlight-words';
21
22
 
22
- function _templateObject4() {
23
- var data = _taggedTemplateLiteralLoose(["\n\tposition: absolute;\n\ttop: ", ";\n\tcursor: pointer;\n\t", ";\n\t", ";\n\t", ";\n\tsvg.search-icon {\n\t\tfill: ", ";\n\t}\n\tsvg.cancel-icon {\n\t\tfill: ", ";\n\t}\n"]);
24
-
25
- _templateObject4 = function _templateObject4() {
26
- return data;
27
- };
28
-
29
- return data;
30
- }
31
-
32
- function _templateObject3() {
33
- var data = _taggedTemplateLiteralLoose(["\n\tpadding-right: 29px;\n\tright: 0;\n"]);
34
-
35
- _templateObject3 = function _templateObject3() {
36
- return data;
37
- };
38
-
39
- return data;
40
- }
41
-
42
- function _templateObject2() {
43
- var data = _taggedTemplateLiteralLoose(["\n\tpadding-right: 12px;\n\tright: 0;\n"]);
44
-
45
- _templateObject2 = function _templateObject2() {
46
- return data;
47
- };
48
-
49
- return data;
50
- }
51
-
52
- function _templateObject() {
53
- var data = _taggedTemplateLiteralLoose(["\n\tpadding-left: 12px;\n\tleft: 0;\n"]);
54
-
55
- _templateObject = function _templateObject() {
56
- return data;
57
- };
58
-
59
- return data;
60
- }
61
- var left = css(_templateObject());
62
- var right = css(_templateObject2());
63
- var clear = css(_templateObject3());
64
- var InputIcon = styled('div')(_templateObject4(), function (_ref) {
65
- var isClearIcon = _ref.isClearIcon;
66
- return isClearIcon ? '12px' : '13px';
67
- }, function (_ref2) {
68
- var iconPosition = _ref2.iconPosition;
69
-
70
- if (iconPosition === 'left') {
71
- return left;
72
- } else if (iconPosition === 'right') {
73
- return right;
74
- }
23
+ var _templateObject;
24
+ var InputGroup = styled('div')(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n display: flex;\n align-items: stretch;\n width: 100%;\n"])));
25
+ InputGroup.defaultProps = {
26
+ className: 'input-group'
27
+ };
75
28
 
76
- return null;
77
- }, function (_ref3) {
78
- var clearIcon = _ref3.clearIcon;
79
- return clearIcon && clear;
80
- }, function (_ref4) {
81
- var showIcon = _ref4.showIcon;
82
- return !showIcon && 'padding-right:10px';
83
- }, function (_ref5) {
84
- var theme = _ref5.theme;
85
- return theme.colors.primaryColor;
86
- }, function (_ref6) {
87
- var theme = _ref6.theme;
88
- return theme.colors.borderColor;
89
- });
29
+ var _templateObject$1;
30
+ var InputAddon = styled('span')(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: #fafafa;\n border: 1px solid #ccc;\n border-radius: 2px;\n color: rgba(0, 0, 0, 0.85);\n font-size: 14px;\n font-weight: 400;\n padding: 0 11px;\n position: relative;\n transition: all 0.3s;\n box-sizing: border-box;\n overflow: hidden;\n\n &:first-of-type {\n border-right: none;\n }\n &:last-of-type {\n border-left: none;\n }\n"])));
31
+ InputAddon.defaultProps = {
32
+ className: 'input-addon'
33
+ };
90
34
 
91
35
  var getClassName = helper.getClassName;
92
36
  var SuggestionWrapper = {
@@ -108,22 +52,14 @@ var SuggestionWrapper = {
108
52
  }
109
53
  };
110
54
 
111
- function _templateObject$1() {
112
- var data = _taggedTemplateLiteralLoose(["\n\t.highlight {\n\t\tbackground: transparent;\n\t\tcolor: inherit;\n\t\tfont-weight: 600;\n\t\tpadding: 0;\n\t}\n"]);
113
-
114
- _templateObject$1 = function _templateObject() {
115
- return data;
116
- };
117
-
118
- return data;
119
- }
55
+ var _templateObject$2;
120
56
  var highlightStyle = {
121
57
  fontWeight: 600,
122
58
  padding: 0,
123
59
  backgroundColor: 'transparent',
124
60
  color: 'inherit'
125
61
  };
126
- var PredictiveSuggestion = styled('span')(_templateObject$1());
62
+ var PredictiveSuggestion = styled('span')(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteralLoose(["\n\t.highlight {\n\t\tbackground: transparent;\n\t\tcolor: inherit;\n\t\tfont-weight: 600;\n\t\tpadding: 0;\n\t}\n"])));
127
63
  var SuggestionItem = {
128
64
  name: 'SuggestionItem',
129
65
  props: {
@@ -238,75 +174,9 @@ var SearchSvg = {
238
174
  }
239
175
  };
240
176
 
241
- var CancelSvg = {
242
- functional: true,
243
- render: function render(h) {
244
- return h("svg", {
245
- "attrs": {
246
- "alt": "Clear",
247
- "height": "10",
248
- "width": "8",
249
- "xmlns": "http://www.w3.org/2000/svg",
250
- "viewBox": "0 0 212.982 212.982"
251
- },
252
- "class": "cancel-icon"
253
- }, [h("title", ["Clear"]), h("path", {
254
- "attrs": {
255
- "d": 'M131.804,106.491l75.936-75.936c6.99-6.99,6.99-18.323,0-25.312c-6.99-6.99-18.322-6.99-25.312,0l-75.937,75.937L30.554,5.242c-6.99-6.99-18.322-6.99-25.312,0c-6.989,6.99-6.989,18.323,0,25.312l75.937,75.936L5.242,182.427c-6.989,6.99-6.989,18.323,0,25.312c6.99,6.99,18.322,6.99,25.312,0l75.937-75.937l75.937,75.937c6.989,6.99,18.322,6.99,25.312,0c6.99-6.99,6.99-18.322,0-25.312L131.804,106.491z'
256
- }
257
- })]);
258
- }
259
- };
260
-
261
- function _templateObject2$1() {
262
- var data = _taggedTemplateLiteralLoose(["\n\theight: 40px;\n\tposition: absolute;\n\ttop: 8px;\n\tcursor: pointer;\n\tright: 15px;\n\t", "\n\t", "\n width: 11px;\n"]);
177
+ var _templateObject$3;
263
178
 
264
- _templateObject2$1 = function _templateObject2() {
265
- return data;
266
- };
267
-
268
- return data;
269
- }
270
-
271
- function _templateObject$2() {
272
- var data = _taggedTemplateLiteralLoose(["\n\tright: 35px;\n"]);
273
-
274
- _templateObject$2 = function _templateObject() {
275
- return data;
276
- };
277
-
278
- return data;
279
- }
280
- var right$1 = css(_templateObject$2());
281
- var MicIcon = styled('div')(_templateObject2$1(), function (_ref) {
282
- var iconPosition = _ref.iconPosition,
283
- showClear = _ref.showClear;
284
- if (showClear && iconPosition !== 'left') return 'right: 51px;';
285
-
286
- if (iconPosition === 'right' || showClear) {
287
- return right$1;
288
- }
289
-
290
- return null;
291
- }, function (_ref2) {
292
- var showIcon = _ref2.showIcon,
293
- showClear = _ref2.showClear;
294
- if (!showIcon && showClear) return 'right: 32px;';
295
- if (!showIcon && !showClear) return 'right: 15px;';
296
- return null;
297
- });
298
-
299
- function _templateObject$3() {
300
- var data = _taggedTemplateLiteralLoose(["\n\t#el_TvxDfTAtKp {\n\t\tstroke: none;\n\t\tstroke-width: 1;\n\t\tfill: none;\n\t}\n\t#el_D93PK3GbmJ {\n\t\t-webkit-transform: translate(163px, 131px);\n\t\ttransform: translate(163px, 131px);\n\t\tfill: #d8d8d8;\n\t}\n"]);
301
-
302
- _templateObject$3 = function _templateObject() {
303
- return data;
304
- };
305
-
306
- return data;
307
- }
308
-
309
- injectGlobal(_templateObject$3());
179
+ injectGlobal(_templateObject$3 || (_templateObject$3 = _taggedTemplateLiteralLoose(["\n\t#el_TvxDfTAtKp {\n\t\tstroke: none;\n\t\tstroke-width: 1;\n\t\tfill: none;\n\t}\n\t#el_D93PK3GbmJ {\n\t\t-webkit-transform: translate(163px, 131px);\n\t\ttransform: translate(163px, 131px);\n\t\tfill: #d8d8d8;\n\t}\n"])));
310
180
  var MicSvg = {
311
181
  name: 'MicSvg',
312
182
  props: ['className'],
@@ -320,6 +190,9 @@ var MicSvg = {
320
190
  "width": 28,
321
191
  "height": 28,
322
192
  "className": this.$props.className
193
+ },
194
+ "style": {
195
+ transform: 'scale(1.5)'
323
196
  }
324
197
  }, [h("g", {
325
198
  "attrs": {
@@ -348,23 +221,18 @@ var MicSvg = {
348
221
  }
349
222
  };
350
223
 
351
- function _templateObject$4() {
352
- var data = _taggedTemplateLiteralLoose(["\n\t#el_X81iT9kZYo {\n\t\tstroke: none;\n\t\tstroke-width: 1;\n\t\tfill: none;\n\t}\n\t#el_gMpyalCphp {\n\t\t-webkit-transform: translate(163px, 131px);\n\t\ttransform: translate(163px, 131px);\n\t}\n\t#el_c7H-3u-D4l {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_qhFcdAAFwo {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_M8X8g37WOI {\n\t\tstroke: #e83137;\n\t\tstroke-width: 21;\n\t}\n"]);
224
+ var _templateObject$4;
353
225
 
354
- _templateObject$4 = function _templateObject() {
355
- return data;
356
- };
357
-
358
- return data;
359
- }
360
-
361
- injectGlobal(_templateObject$4());
226
+ injectGlobal(_templateObject$4 || (_templateObject$4 = _taggedTemplateLiteralLoose(["\n\t#el_X81iT9kZYo {\n\t\tstroke: none;\n\t\tstroke-width: 1;\n\t\tfill: none;\n\t}\n\t#el_gMpyalCphp {\n\t\t-webkit-transform: translate(163px, 131px);\n\t\ttransform: translate(163px, 131px);\n\t}\n\t#el_c7H-3u-D4l {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_qhFcdAAFwo {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_M8X8g37WOI {\n\t\tstroke: #e83137;\n\t\tstroke-width: 21;\n\t}\n"])));
362
227
  var MuteSvg = {
363
228
  name: 'MuteSvg',
364
229
  props: ['className'],
365
230
  render: function render() {
366
231
  var h = arguments[0];
367
232
  return h("svg", {
233
+ "style": {
234
+ transform: 'scale(1.5)'
235
+ },
368
236
  "attrs": {
369
237
  "viewBox": "0 0 480 480",
370
238
  "xmlns": "http://www.w3.org/2000/svg",
@@ -411,17 +279,9 @@ var MuteSvg = {
411
279
  }
412
280
  };
413
281
 
414
- function _templateObject$5() {
415
- var data = _taggedTemplateLiteralLoose(["\n\t@-webkit-keyframes kf_el_6WKby7wXqV_an_qqO-rxbNc {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t13.89% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_6WKby7wXqV_an_qqO-rxbNc {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t13.89% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_Wi-my975tM_an_XhXP1epXB {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t27.78% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_Wi-my975tM_an_XhXP1epXB {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t27.78% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_DkfFFTaFxy8_an_T2XxzvIaA {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t41.67% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_DkfFFTaFxy8_an_T2XxzvIaA {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t41.67% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_34IgwiMB5rf_an_TPom3H2LI {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t55.56% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_34IgwiMB5rf_an_TPom3H2LI {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t55.56% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_DeebuCsPTGA_an_aYTRBE7Na {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t69.44% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_DeebuCsPTGA_an_aYTRBE7Na {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t69.44% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_ZOjjrPTvyrv_an_l_BjBNzXw {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t83.33% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_ZOjjrPTvyrv_an_l_BjBNzXw {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t83.33% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_2FATegVmf0K_an_wLg4ofuFx {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t97.22% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_2FATegVmf0K_an_wLg4ofuFx {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t97.22% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t#el_hiibMG0x- * {\n\t\t-webkit-animation-duration: 1.2s;\n\t\tanimation-duration: 1.2s;\n\t\t-webkit-animation-iteration-count: infinite;\n\t\tanimation-iteration-count: infinite;\n\t\t-webkit-animation-timing-function: cubic-bezier(0, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0, 0, 1, 1);\n\t}\n\t#el_QJeJ_2CDw5 {\n\t\tstroke: none;\n\t\tstroke-width: 1;\n\t\tfill: none;\n\t}\n\t#el_UYYCfubTRf {\n\t\t-webkit-transform: translate(163px, 123px);\n\t\ttransform: translate(163px, 123px);\n\t}\n\t#el_uzZNtK32Zi {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_EYKQ2N9Kgy {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_6SDP2LAgKC {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t}\n\t#el_-Vm65Ltfy7 {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_q04iZcSim4 {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_6WKby7wXqV {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_6WKby7wXqV_an_qqO-rxbNc;\n\t\tanimation-name: kf_el_6WKby7wXqV_an_qqO-rxbNc;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_9bggsfQOtU {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_NKxqi9eIym {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_Wi-my975tM {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_Wi-my975tM_an_XhXP1epXB;\n\t\tanimation-name: kf_el_Wi-my975tM_an_XhXP1epXB;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_zclQ34fvf7 {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_1OsvRT8HkeZ {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_DkfFFTaFxy8 {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_DkfFFTaFxy8_an_T2XxzvIaA;\n\t\tanimation-name: kf_el_DkfFFTaFxy8_an_T2XxzvIaA;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_aa9sjx4H0vA {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_tea114vWg0J {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_34IgwiMB5rf {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_34IgwiMB5rf_an_TPom3H2LI;\n\t\tanimation-name: kf_el_34IgwiMB5rf_an_TPom3H2LI;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_z5u6RAFhx7d {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_7nfuWmA5Uhy {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_DeebuCsPTGA {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_DeebuCsPTGA_an_aYTRBE7Na;\n\t\tanimation-name: kf_el_DeebuCsPTGA_an_aYTRBE7Na;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el__ZcqlS20zcw {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_8DnEQnD7VWV {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_ZOjjrPTvyrv {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_ZOjjrPTvyrv_an_l_BjBNzXw;\n\t\tanimation-name: kf_el_ZOjjrPTvyrv_an_l_BjBNzXw;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_FYYKCI_u24e {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_XZty4MnTp5Y {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_2FATegVmf0K {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_2FATegVmf0K_an_wLg4ofuFx;\n\t\tanimation-name: kf_el_2FATegVmf0K_an_wLg4ofuFx;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_RMT1KUfbdF8 {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_RgLcovvFiO1 {\n\t\tfill: #d8d8d8;\n\t}\n"]);
282
+ var _templateObject$5;
416
283
 
417
- _templateObject$5 = function _templateObject() {
418
- return data;
419
- };
420
-
421
- return data;
422
- }
423
-
424
- injectGlobal(_templateObject$5());
284
+ injectGlobal(_templateObject$5 || (_templateObject$5 = _taggedTemplateLiteralLoose(["\n\t@-webkit-keyframes kf_el_6WKby7wXqV_an_qqO-rxbNc {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t13.89% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_6WKby7wXqV_an_qqO-rxbNc {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t13.89% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_Wi-my975tM_an_XhXP1epXB {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t27.78% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_Wi-my975tM_an_XhXP1epXB {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t27.78% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_DkfFFTaFxy8_an_T2XxzvIaA {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t41.67% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_DkfFFTaFxy8_an_T2XxzvIaA {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t41.67% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_34IgwiMB5rf_an_TPom3H2LI {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t55.56% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_34IgwiMB5rf_an_TPom3H2LI {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t55.56% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_DeebuCsPTGA_an_aYTRBE7Na {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t69.44% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_DeebuCsPTGA_an_aYTRBE7Na {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t69.44% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_ZOjjrPTvyrv_an_l_BjBNzXw {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t83.33% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_ZOjjrPTvyrv_an_l_BjBNzXw {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t83.33% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@-webkit-keyframes kf_el_2FATegVmf0K_an_wLg4ofuFx {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t97.22% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t@keyframes kf_el_2FATegVmf0K_an_wLg4ofuFx {\n\t\t0% {\n\t\t\topacity: 0;\n\t\t}\n\t\t97.22% {\n\t\t\topacity: 1;\n\t\t}\n\t\t100% {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\t#el_hiibMG0x- * {\n\t\t-webkit-animation-duration: 1.2s;\n\t\tanimation-duration: 1.2s;\n\t\t-webkit-animation-iteration-count: infinite;\n\t\tanimation-iteration-count: infinite;\n\t\t-webkit-animation-timing-function: cubic-bezier(0, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0, 0, 1, 1);\n\t}\n\t#el_QJeJ_2CDw5 {\n\t\tstroke: none;\n\t\tstroke-width: 1;\n\t\tfill: none;\n\t}\n\t#el_UYYCfubTRf {\n\t\t-webkit-transform: translate(163px, 123px);\n\t\ttransform: translate(163px, 123px);\n\t}\n\t#el_uzZNtK32Zi {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_EYKQ2N9Kgy {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_6SDP2LAgKC {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t}\n\t#el_-Vm65Ltfy7 {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_q04iZcSim4 {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_6WKby7wXqV {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_6WKby7wXqV_an_qqO-rxbNc;\n\t\tanimation-name: kf_el_6WKby7wXqV_an_qqO-rxbNc;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_9bggsfQOtU {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_NKxqi9eIym {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_Wi-my975tM {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_Wi-my975tM_an_XhXP1epXB;\n\t\tanimation-name: kf_el_Wi-my975tM_an_XhXP1epXB;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_zclQ34fvf7 {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_1OsvRT8HkeZ {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_DkfFFTaFxy8 {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_DkfFFTaFxy8_an_T2XxzvIaA;\n\t\tanimation-name: kf_el_DkfFFTaFxy8_an_T2XxzvIaA;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_aa9sjx4H0vA {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_tea114vWg0J {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_34IgwiMB5rf {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_34IgwiMB5rf_an_TPom3H2LI;\n\t\tanimation-name: kf_el_34IgwiMB5rf_an_TPom3H2LI;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_z5u6RAFhx7d {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_7nfuWmA5Uhy {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_DeebuCsPTGA {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_DeebuCsPTGA_an_aYTRBE7Na;\n\t\tanimation-name: kf_el_DeebuCsPTGA_an_aYTRBE7Na;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el__ZcqlS20zcw {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_8DnEQnD7VWV {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_ZOjjrPTvyrv {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_ZOjjrPTvyrv_an_l_BjBNzXw;\n\t\tanimation-name: kf_el_ZOjjrPTvyrv_an_l_BjBNzXw;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_FYYKCI_u24e {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_XZty4MnTp5Y {\n\t\tfill: #d8d8d8;\n\t}\n\t#el_2FATegVmf0K {\n\t\t-webkit-transform: translate(37.846924px, 0px);\n\t\ttransform: translate(37.846924px, 0px);\n\t\t-webkit-animation-fill-mode: backwards;\n\t\tanimation-fill-mode: backwards;\n\t\topacity: 0;\n\t\t-webkit-animation-name: kf_el_2FATegVmf0K_an_wLg4ofuFx;\n\t\tanimation-name: kf_el_2FATegVmf0K_an_wLg4ofuFx;\n\t\t-webkit-animation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t\tanimation-timing-function: cubic-bezier(0.42, 0, 1, 1);\n\t}\n\t#el_RMT1KUfbdF8 {\n\t\tfill: #0B6AFF;\n\t}\n\t#el_RgLcovvFiO1 {\n\t\tfill: #d8d8d8;\n\t}\n"])));
425
285
  var ListenSvg = {
426
286
  name: 'ListenSvg',
427
287
  props: ['className'],
@@ -436,6 +296,9 @@ var ListenSvg = {
436
296
  "width": 28,
437
297
  "height": 29,
438
298
  "className": this.$props.className
299
+ },
300
+ "style": {
301
+ transform: 'scale(1.5)'
439
302
  }
440
303
  }, [h("defs", [h("path", {
441
304
  "attrs": {
@@ -739,16 +602,16 @@ var Mic = {
739
602
  name: 'Mic',
740
603
  props: {
741
604
  children: types.title,
742
- lang: types.string.def('en-US'),
743
- iconPosition: types.string.def('left'),
605
+ lang: VueTypes.string.def('en-US'),
606
+ iconPosition: VueTypes.string.def('left'),
744
607
  handleResult: types.func,
745
608
  onNoMatch: types.func,
746
609
  onError: types.func,
747
610
  getInstance: types.func,
748
611
  render: types.func,
749
612
  className: types.string,
750
- applyClearStyle: types.bool,
751
- showIcon: types.bool
613
+ applyClearStyle: VueTypes.bool,
614
+ showIcon: VueTypes.bool
752
615
  },
753
616
  methods: {
754
617
  getComponent: function getComponent$1() {
@@ -919,22 +782,12 @@ var Mic = {
919
782
  },
920
783
  render: function render() {
921
784
  var h = arguments[0];
922
- var _this$$props2 = this.$props,
923
- iconPosition = _this$$props2.iconPosition,
924
- applyClearStyle = _this$$props2.applyClearStyle,
925
- showIcon = _this$$props2.showIcon;
926
785
 
927
786
  if (this.hasCustomRenderer) {
928
787
  return this.getComponent();
929
788
  }
930
789
 
931
- return h(MicIcon, {
932
- "attrs": {
933
- "showIcon": showIcon,
934
- "showClear": applyClearStyle,
935
- "iconPosition": iconPosition
936
- }
937
- }, [this.Icon]);
790
+ return h(IconWrapper, [this.Icon]);
938
791
  }
939
792
  };
940
793
 
@@ -1026,7 +879,8 @@ var debounce = helper.debounce,
1026
879
  withClickIds = helper.withClickIds,
1027
880
  getResultStats = helper.getResultStats,
1028
881
  handleOnSuggestions = helper.handleOnSuggestions,
1029
- getTopSuggestions = helper.getTopSuggestions;
882
+ getTopSuggestions = helper.getTopSuggestions,
883
+ normalizeDataField = helper.normalizeDataField;
1030
884
  var DataSearch = {
1031
885
  name: 'DataSearch',
1032
886
  data: function data() {
@@ -1046,14 +900,13 @@ var DataSearch = {
1046
900
  }
1047
901
  },
1048
902
  created: function created() {
1049
- var _this = this;
1050
-
1051
903
  var _this$$props = this.$props,
1052
904
  enableQuerySuggestions = _this$$props.enableQuerySuggestions,
1053
905
  renderQuerySuggestions = _this$$props.renderQuerySuggestions,
1054
906
  enableRecentSearches = _this$$props.enableRecentSearches,
1055
907
  distinctField = _this$$props.distinctField,
1056
- distinctFieldConfig = _this$$props.distinctFieldConfig; // TODO: Remove in 2.0
908
+ distinctFieldConfig = _this$$props.distinctFieldConfig,
909
+ index = _this$$props.index; // TODO: Remove in 2.0
1057
910
 
1058
911
  if (enableQuerySuggestions) {
1059
912
  console.warn('Warning(ReactiveSearch): The `enableQuerySuggestions` prop has been marked as deprecated, please use the `enablePopularSuggestions` prop instead.');
@@ -1064,14 +917,18 @@ var DataSearch = {
1064
917
  console.warn('Warning(ReactiveSearch): The `renderQuerySuggestions` prop has been marked as deprecated, please use the `renderPopularSuggestions` prop instead.');
1065
918
  }
1066
919
 
1067
- if (this.config.enableAppbase && this.aggregationField && this.aggregationField !== '') {
920
+ if (this.enableAppbase && this.aggregationField && this.aggregationField !== '') {
1068
921
  console.warn('Warning(ReactiveSearch): The `aggregationField` prop has been marked as deprecated, please use the `distinctField` prop instead.');
1069
922
  }
1070
923
 
1071
- if (!this.config.enableAppbase && (distinctField || distinctFieldConfig)) {
924
+ if (!this.enableAppbase && (distinctField || distinctFieldConfig)) {
1072
925
  console.warn('Warning(ReactiveSearch): In order to use the `distinctField` and `distinctFieldConfig` props, the `enableAppbase` prop must be set to true in `ReactiveBase`.');
1073
926
  }
1074
927
 
928
+ if (!this.enableAppbase && index) {
929
+ console.warn('Warning(ReactiveSearch): In order to use the `index` prop, the `enableAppbase` prop must be set to true in `ReactiveBase`.');
930
+ }
931
+
1075
932
  this.loadPopularSuggestions(this.$props.componentId);
1076
933
  this.currentValue = this.selectedValue || '';
1077
934
 
@@ -1079,13 +936,7 @@ var DataSearch = {
1079
936
  this.getRecentSearches();
1080
937
  }
1081
938
 
1082
- this.handleTextChange = debounce(function (value) {
1083
- if (_this.$props.autosuggest) {
1084
- _this.updateDefaultQueryHandler(value, _this.$props);
1085
- } else {
1086
- _this.updateQueryHandler(_this.$props.componentId, value, _this.$props);
1087
- }
1088
- }, this.$props.debounce); // Set custom and default queries in store
939
+ this.handleTextChange = debounce(this.handleText, this.$props.debounce); // Set custom and default queries in store
1089
940
 
1090
941
  updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.currentValue);
1091
942
  updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, this.currentValue);
@@ -1124,12 +975,12 @@ var DataSearch = {
1124
975
  }
1125
976
 
1126
977
  var customDefaultPopularSuggestions = (this.defaultPopularSuggestions || []).map(function (suggestion) {
1127
- return _extends(_extends({}, suggestion), {}, {
978
+ return _extends({}, suggestion, {
1128
979
  _popular_suggestion: true
1129
980
  });
1130
981
  });
1131
982
  var customNormalizedRecentSearches = (this.normalizedRecentSearches || []).map(function (search) {
1132
- return _extends(_extends({}, search), {}, {
983
+ return _extends({}, search, {
1133
984
  _recent_search: true
1134
985
  });
1135
986
  });
@@ -1146,7 +997,7 @@ var DataSearch = {
1146
997
  },
1147
998
  props: {
1148
999
  options: types.options,
1149
- autoFocus: types.bool,
1000
+ autoFocus: VueTypes.bool,
1150
1001
  autosuggest: VueTypes.bool.def(true),
1151
1002
  beforeValueChange: types.func,
1152
1003
  className: VueTypes.string.def(''),
@@ -1155,29 +1006,35 @@ var DataSearch = {
1155
1006
  customHighlight: types.func,
1156
1007
  customQuery: types.func,
1157
1008
  defaultQuery: types.func,
1158
- dataField: VueTypes.oneOfType([VueTypes.string, VueTypes.arrayOf(VueTypes.string)]),
1009
+ dataField: VueTypes.oneOfType([VueTypes.string, VueTypes.shape({
1010
+ field: VueTypes.string,
1011
+ weight: VueTypes.number
1012
+ }), VueTypes.arrayOf(VueTypes.string), VueTypes.arrayOf({
1013
+ field: VueTypes.string,
1014
+ weight: VueTypes.number
1015
+ })]),
1159
1016
  aggregationField: types.string,
1160
1017
  aggregationSize: VueTypes.number,
1161
- size: VueTypes.number.def(10),
1018
+ size: VueTypes.number,
1162
1019
  debounce: VueTypes.number.def(0),
1163
1020
  defaultValue: types.string,
1164
- excludeFields: types.excludeFields.def([]),
1021
+ excludeFields: types.excludeFields,
1165
1022
  value: types.value,
1166
1023
  defaultSuggestions: types.suggestions,
1167
- enableSynonyms: types.bool.def(true),
1024
+ enableSynonyms: VueTypes.bool.def(true),
1168
1025
  enableQuerySuggestions: VueTypes.bool.def(false),
1169
1026
  enablePopularSuggestions: VueTypes.bool.def(false),
1170
1027
  enableRecentSearches: VueTypes.bool.def(false),
1171
1028
  fieldWeights: types.fieldWeights,
1172
1029
  filterLabel: types.string,
1173
1030
  fuzziness: types.fuzziness,
1174
- highlight: types.bool,
1031
+ highlight: VueTypes.bool,
1175
1032
  highlightField: types.stringOrArray,
1176
1033
  icon: types.children,
1177
1034
  iconPosition: VueTypes.oneOf(['left', 'right']).def('left'),
1178
- includeFields: types.includeFields.def(['*']),
1035
+ includeFields: types.includeFields,
1179
1036
  innerClass: types.style,
1180
- innerRef: types.string,
1037
+ innerRef: VueTypes.string.def('searchInputField'),
1181
1038
  render: types.func,
1182
1039
  renderQuerySuggestions: types.func,
1183
1040
  renderPopularSuggestions: types.func,
@@ -1200,11 +1057,17 @@ var DataSearch = {
1200
1057
  recentSearchesIcon: VueTypes.any,
1201
1058
  popularSearchesIcon: VueTypes.any,
1202
1059
  // mic props
1203
- showVoiceSearch: types.bool.def(false),
1060
+ showVoiceSearch: VueTypes.bool.def(false),
1204
1061
  getMicInstance: types.func,
1205
1062
  renderMic: types.func,
1206
1063
  distinctField: types.string,
1207
- distinctFieldConfig: types.props
1064
+ distinctFieldConfig: types.props,
1065
+ //
1066
+ focusShortcuts: VueTypes.arrayOf(VueTypes.oneOfType([VueTypes.string, VueTypes.number])).def(['/']),
1067
+ addonBefore: VueTypes.any,
1068
+ addonAfter: VueTypes.any,
1069
+ expandSuggestionsContainer: VueTypes.bool.def(true),
1070
+ index: VueTypes.string
1208
1071
  },
1209
1072
  beforeMount: function beforeMount() {
1210
1073
  if (this.$props.highlight) {
@@ -1213,7 +1076,7 @@ var DataSearch = {
1213
1076
  }
1214
1077
 
1215
1078
  var queryOptions = DataSearch.highlightQuery(this.$props) || {};
1216
- this.queryOptions = _extends(_extends({}, queryOptions), this.getBasicQueryOptions());
1079
+ this.queryOptions = _extends({}, queryOptions, this.getBasicQueryOptions());
1217
1080
  this.setQueryOptions(this.$props.componentId, this.queryOptions);
1218
1081
  } else {
1219
1082
  this.queryOptions = this.getBasicQueryOptions();
@@ -1228,6 +1091,9 @@ var DataSearch = {
1228
1091
  this.setValue(this.$props.defaultValue, true);
1229
1092
  }
1230
1093
  },
1094
+ mounted: function mounted() {
1095
+ this.listenForFocusShortcuts();
1096
+ },
1231
1097
  watch: {
1232
1098
  highlight: function highlight() {
1233
1099
  this.updateQueryOptions();
@@ -1278,14 +1144,24 @@ var DataSearch = {
1278
1144
  if (oldVal !== newVal && this.$data.currentValue !== newVal) {
1279
1145
  if (!newVal && this.$data.currentValue) {
1280
1146
  // selected value is cleared, call onValueSelected
1281
- this.onValueSelectedHandler("", causes.CLEAR_VALUE);
1147
+ this.onValueSelectedHandler('', causes.CLEAR_VALUE);
1282
1148
  }
1283
1149
 
1284
1150
  this.setValue(newVal || '', true, this.$props);
1285
1151
  }
1152
+ },
1153
+ focusShortcuts: function focusShortcuts() {
1154
+ this.listenForFocusShortcuts();
1286
1155
  }
1287
1156
  },
1288
1157
  methods: {
1158
+ handleText: function handleText(value) {
1159
+ if (this.$props.autosuggest) {
1160
+ this.updateDefaultQueryHandler(value, this.$props);
1161
+ } else {
1162
+ this.updateQueryHandler(this.$props.componentId, value, this.$props);
1163
+ }
1164
+ },
1289
1165
  validateDataField: function validateDataField() {
1290
1166
  var propName = 'dataField';
1291
1167
  var componentName = DataSearch.name;
@@ -1293,13 +1169,13 @@ var DataSearch = {
1293
1169
  var requiredError = propName + " supplied to " + componentName + " is required. Validation failed.";
1294
1170
  var propValue = props[propName];
1295
1171
 
1296
- if (this.config && !this.config.enableAppbase) {
1172
+ if (!this.enableAppbase) {
1297
1173
  if (!propValue) {
1298
1174
  console.error(requiredError);
1299
1175
  return;
1300
1176
  }
1301
1177
 
1302
- if (typeof propValue !== 'string' && !Array.isArray(propValue)) {
1178
+ if (typeof propValue !== 'string' && typeof propValue !== 'object' && !Array.isArray(propValue)) {
1303
1179
  console.error("Invalid " + propName + " supplied to " + componentName + ". Validation failed.");
1304
1180
  return;
1305
1181
  }
@@ -1315,7 +1191,7 @@ var DataSearch = {
1315
1191
  }
1316
1192
 
1317
1193
  var queryOptions = DataSearch.highlightQuery(this.$props) || {};
1318
- this.queryOptions = _extends(_extends({}, queryOptions), this.getBasicQueryOptions());
1194
+ this.queryOptions = _extends({}, queryOptions, this.getBasicQueryOptions());
1319
1195
  this.setQueryOptions(this.$props.componentId, this.queryOptions);
1320
1196
  },
1321
1197
  getComponent: function getComponent$1(downshiftProps, isQuerySuggestionsRender) {
@@ -1383,7 +1259,7 @@ var DataSearch = {
1383
1259
  }
1384
1260
  },
1385
1261
  setValue: function setValue(value, isDefaultValue, props, cause, toggleIsOpen) {
1386
- var _this2 = this;
1262
+ var _this = this;
1387
1263
 
1388
1264
  if (isDefaultValue === void 0) {
1389
1265
  isDefaultValue = false;
@@ -1399,51 +1275,51 @@ var DataSearch = {
1399
1275
 
1400
1276
  var performUpdate = function performUpdate() {
1401
1277
  // Refresh recent searches when value becomes empty
1402
- if (!value && _this2.currentValue && _this2.enableRecentSearches) {
1403
- _this2.getRecentSearches();
1278
+ if (!value && _this.currentValue && _this.enableRecentSearches) {
1279
+ _this.getRecentSearches();
1404
1280
  }
1405
1281
 
1406
- _this2.currentValue = value;
1282
+ _this.currentValue = value;
1407
1283
 
1408
1284
  if (isDefaultValue) {
1409
- if (_this2.$props.autosuggest) {
1285
+ if (_this.$props.autosuggest) {
1410
1286
  if (toggleIsOpen) {
1411
- _this2.isOpen = false;
1287
+ _this.isOpen = false;
1412
1288
  }
1413
1289
 
1414
- _this2.updateDefaultQueryHandler(value, _this2.$props);
1290
+ _this.updateDefaultQueryHandler(value, _this.$props);
1415
1291
  } // in case of strict selection only SUGGESTION_SELECT should be able
1416
1292
  // to set the query otherwise the value should reset
1417
1293
 
1418
1294
 
1419
1295
  if (props.strictSelection) {
1420
1296
  if (cause === causes.SUGGESTION_SELECT || value === '') {
1421
- _this2.updateQueryHandler(props.componentId, value, props);
1297
+ _this.updateQueryHandler(props.componentId, value, props);
1422
1298
  } else {
1423
- _this2.setValue('', true);
1299
+ _this.setValue('', true);
1424
1300
  }
1425
1301
  } else {
1426
- _this2.updateQueryHandler(props.componentId, value, props);
1302
+ _this.updateQueryHandler(props.componentId, value, props);
1427
1303
  }
1428
1304
  } else {
1429
1305
  // debounce for handling text while typing
1430
- _this2.handleTextChange(value);
1306
+ _this.handleTextChange(value);
1431
1307
  }
1432
1308
 
1433
- _this2.$emit('valueChange', value);
1309
+ _this.$emit('valueChange', value);
1434
1310
 
1435
- _this2.$emit('value-change', value); // Set the already fetched suggestions if query is same as used last to fetch the hits
1311
+ _this.$emit('value-change', value); // Set the already fetched suggestions if query is same as used last to fetch the hits
1436
1312
 
1437
1313
 
1438
- if (value === _this2.lastUsedQuery) {
1439
- _this2.suggestions = _this2.onSuggestions(_this2.suggestions); // invoke on suggestions
1314
+ if (value === _this.lastUsedQuery) {
1315
+ _this.suggestions = _this.onSuggestions(_this.suggestions); // invoke on suggestions
1440
1316
 
1441
- _this2.$emit('suggestions', _this2.suggestions);
1317
+ _this.$emit('suggestions', _this.suggestions);
1442
1318
  } else if (!value) {
1443
1319
  // reset suggestions
1444
- _this2.suggestions = []; // invoke on suggestions
1320
+ _this.suggestions = []; // invoke on suggestions
1445
1321
 
1446
- _this2.$emit('suggestions', _this2.suggestions);
1322
+ _this.$emit('suggestions', _this.suggestions);
1447
1323
  }
1448
1324
  };
1449
1325
 
@@ -1465,7 +1341,7 @@ var DataSearch = {
1465
1341
  updateDefaultQuery(props.componentId, this.setDefaultQuery, props, value);
1466
1342
  }
1467
1343
 
1468
- this.setQueryOptions(this.internalComponent, _extends(_extends({}, this.queryOptions), defaultQueryOptions));
1344
+ this.setQueryOptions(this.internalComponent, _extends({}, this.queryOptions, defaultQueryOptions), false);
1469
1345
  this.updateQuery({
1470
1346
  componentId: this.internalComponent,
1471
1347
  query: query,
@@ -1492,7 +1368,7 @@ var DataSearch = {
1492
1368
 
1493
1369
  customQueryOptions = getOptionsFromQuery(customQueryTobeSet);
1494
1370
  updateCustomQuery(props.componentId, this.setCustomQuery, props, value);
1495
- this.setQueryOptions(componentId, _extends(_extends({}, this.queryOptions), customQueryOptions));
1371
+ this.setQueryOptions(componentId, _extends({}, this.queryOptions, customQueryOptions), false);
1496
1372
  }
1497
1373
 
1498
1374
  if (!this.isPending) {
@@ -1510,10 +1386,7 @@ var DataSearch = {
1510
1386
  // need to review
1511
1387
  handleFocus: function handleFocus(event) {
1512
1388
  this.isOpen = true;
1513
-
1514
- if (this.$props.onFocus) {
1515
- this.$emit('focus', event);
1516
- }
1389
+ this.$emit('focus', event);
1517
1390
  },
1518
1391
  handleVoiceResults: function handleVoiceResults(_ref) {
1519
1392
  var results = _ref.results;
@@ -1521,18 +1394,18 @@ var DataSearch = {
1521
1394
  if (results && results[0] && results[0].isFinal && results[0][0] && results[0][0].transcript && results[0][0].transcript.trim()) {
1522
1395
  this.isPending = false;
1523
1396
  this.setValue(results[0][0].transcript.trim(), true);
1524
-
1525
- if (this.$props.autosuggest) {
1526
- this.isOpen = true;
1527
- }
1528
1397
  }
1529
1398
  },
1530
- triggerQuery: function triggerQuery() {
1399
+ triggerQuery: function triggerQuery(_temp) {
1400
+ var _ref2 = _temp === void 0 ? false : _temp,
1401
+ _ref2$isOpen = _ref2.isOpen,
1402
+ isOpen = _ref2$isOpen === void 0 ? false : _ref2$isOpen;
1403
+
1531
1404
  var value = this.$props.value;
1532
1405
 
1533
1406
  if (value !== undefined) {
1534
1407
  this.isPending = false;
1535
- this.setValue(this.$props.value, true);
1408
+ this.setValue(this.$props.value, !isOpen);
1536
1409
  }
1537
1410
  },
1538
1411
  triggerClickAnalytics: function triggerClickAnalytics(searchPosition, documentId) {
@@ -1554,7 +1427,7 @@ var DataSearch = {
1554
1427
  clearValue: function clearValue() {
1555
1428
  this.isPending = false;
1556
1429
  this.setValue('', true);
1557
- this.onValueSelectedHandler("", causes.CLEAR_VALUE);
1430
+ this.onValueSelectedHandler('', causes.CLEAR_VALUE);
1558
1431
  },
1559
1432
  handleKeyDown: function handleKeyDown(event, highlightedIndex) {
1560
1433
  var value = this.$props.value;
@@ -1570,11 +1443,8 @@ var DataSearch = {
1570
1443
  } // Need to review
1571
1444
 
1572
1445
 
1573
- if (this.$props.onKeyDown) {
1574
- // TODO: Remove camelCase events in 2.0
1575
- this.$emit('keyDown', event, this.triggerQuery);
1576
- this.$emit('key-down', event, this.triggerQuery);
1577
- }
1446
+ this.$emit('keyDown', event, this.triggerQuery);
1447
+ this.$emit('key-down', event, this.triggerQuery);
1578
1448
  },
1579
1449
  onInputChange: function onInputChange(e) {
1580
1450
  var inputValue = e.target.value;
@@ -1600,6 +1470,7 @@ var DataSearch = {
1600
1470
  if (value === undefined) {
1601
1471
  this.setValue(suggestion.value, true, this.$props, causes.SUGGESTION_SELECT);
1602
1472
  } else {
1473
+ this.isPending = false;
1603
1474
  this.$emit('change', suggestion.value, this.triggerQuery);
1604
1475
  }
1605
1476
 
@@ -1698,6 +1569,26 @@ var DataSearch = {
1698
1569
 
1699
1570
  return null;
1700
1571
  },
1572
+ renderInputAddonBefore: function renderInputAddonBefore() {
1573
+ var h = this.$createElement;
1574
+ var addonBefore = this.$scopedSlots.addonBefore;
1575
+
1576
+ if (addonBefore) {
1577
+ return h(InputAddon, [addonBefore()]);
1578
+ }
1579
+
1580
+ return null;
1581
+ },
1582
+ renderInputAddonAfter: function renderInputAddonAfter() {
1583
+ var h = this.$createElement;
1584
+ var addonAfter = this.$scopedSlots.addonAfter;
1585
+
1586
+ if (addonAfter) {
1587
+ return h(InputAddon, [addonAfter()]);
1588
+ }
1589
+
1590
+ return null;
1591
+ },
1701
1592
  renderIcons: function renderIcons() {
1702
1593
  var h = this.$createElement;
1703
1594
  var _this$$props3 = this.$props,
@@ -1709,13 +1600,16 @@ var DataSearch = {
1709
1600
  showIcon = _this$$props3.showIcon;
1710
1601
  var renderMic = this.$scopedSlots.renderMic || this.$props.renderMic;
1711
1602
  var currentValue = this.$data.currentValue;
1712
- return h("div", [currentValue && showClear && h(InputIcon, {
1603
+ return h("div", [h(IconGroup, {
1604
+ "attrs": {
1605
+ "groupPosition": "right",
1606
+ "positionType": "absolute"
1607
+ }
1608
+ }, [currentValue && showClear && h(IconWrapper, {
1713
1609
  "on": {
1714
1610
  "click": this.clearValue
1715
1611
  },
1716
1612
  "attrs": {
1717
- "iconPosition": "right",
1718
- "clearIcon": iconPosition === 'right',
1719
1613
  "showIcon": showIcon,
1720
1614
  "isClearIcon": true
1721
1615
  }
@@ -1723,21 +1617,73 @@ var DataSearch = {
1723
1617
  "attrs": {
1724
1618
  "getInstance": getMicInstance,
1725
1619
  "render": renderMic,
1726
- "iconPosition": iconPosition,
1727
1620
  "handleResult": this.handleVoiceResults,
1728
- "className": getClassName$1(innerClass, 'mic') || null,
1729
- "applyClearStyle": !!currentValue && showClear,
1730
- "showIcon": showIcon
1621
+ "className": getClassName$1(innerClass, 'mic') || null
1731
1622
  }
1732
- }), h(InputIcon, {
1623
+ }), iconPosition === 'right' && showIcon && h(IconWrapper, {
1733
1624
  "on": {
1734
1625
  "click": this.handleSearchIconClick
1735
- },
1626
+ }
1627
+ }, [this.renderIcon()])]), h(IconGroup, {
1736
1628
  "attrs": {
1737
- "showIcon": showIcon,
1738
- "iconPosition": iconPosition
1629
+ "groupPosition": "left",
1630
+ "positionType": "absolute"
1631
+ }
1632
+ }, [iconPosition === 'left' && showIcon && h(IconWrapper, {
1633
+ "on": {
1634
+ "click": this.handleSearchIconClick
1635
+ }
1636
+ }, [this.renderIcon()])])]);
1637
+ },
1638
+ focusSearchBox: function focusSearchBox(event) {
1639
+ var _this$$refs, _this$$refs$this$$pro;
1640
+
1641
+ var elt = event.target || event.srcElement;
1642
+ var tagName = elt.tagName;
1643
+
1644
+ if (elt.isContentEditable || tagName === 'INPUT' || tagName === 'SELECT' || tagName === 'TEXTAREA') {
1645
+ // already in an input
1646
+ return;
1647
+ }
1648
+
1649
+ (_this$$refs = this.$refs) == null ? void 0 : (_this$$refs$this$$pro = _this$$refs[this.$props.innerRef]) == null ? void 0 : _this$$refs$this$$pro.focus(); // eslint-disable-line
1650
+ },
1651
+ listenForFocusShortcuts: function listenForFocusShortcuts() {
1652
+ var _this2 = this;
1653
+
1654
+ var _this$$props$focusSho = this.$props.focusShortcuts,
1655
+ focusShortcuts = _this$$props$focusSho === void 0 ? ['/'] : _this$$props$focusSho;
1656
+
1657
+ if (isEmpty(focusShortcuts)) {
1658
+ return;
1659
+ }
1660
+
1661
+ var shortcutsString = parseFocusShortcuts(focusShortcuts).join(','); // handler for alphabets and other key combinations
1662
+
1663
+ hotkeys(shortcutsString, // eslint-disable-next-line no-unused-vars
1664
+
1665
+ /* eslint-disable no-shadow */
1666
+ function (event, handler) {
1667
+ // Prevent the default refresh event under WINDOWS system
1668
+ event.preventDefault();
1669
+
1670
+ _this2.focusSearchBox(event);
1671
+ }); // if one of modifier keys are used, they are handled below
1672
+
1673
+ hotkeys('*', function (event) {
1674
+ var modifierKeys = extractModifierKeysFromFocusShortcuts(focusShortcuts);
1675
+ if (modifierKeys.length === 0) return;
1676
+
1677
+ for (var index = 0; index < modifierKeys.length; index += 1) {
1678
+ var element = modifierKeys[index];
1679
+
1680
+ if (hotkeys[element]) {
1681
+ _this2.focusSearchBox(event);
1682
+
1683
+ break;
1684
+ }
1739
1685
  }
1740
- }, [this.renderIcon()])]);
1686
+ });
1741
1687
  }
1742
1688
  },
1743
1689
  render: function render() {
@@ -1746,7 +1692,8 @@ var DataSearch = {
1746
1692
  var h = arguments[0];
1747
1693
  var _this$$props4 = this.$props,
1748
1694
  theme = _this$$props4.theme,
1749
- size = _this$$props4.size;
1695
+ size = _this$$props4.size,
1696
+ expandSuggestionsContainer = _this$$props4.expandSuggestionsContainer;
1750
1697
  var _this$$scopedSlots = this.$scopedSlots,
1751
1698
  recentSearchesIcon = _this$$scopedSlots.recentSearchesIcon,
1752
1699
  popularSearchesIcon = _this$$scopedSlots.popularSearchesIcon;
@@ -1763,25 +1710,125 @@ var DataSearch = {
1763
1710
  "isOpen": this.$data.isOpen
1764
1711
  },
1765
1712
  "scopedSlots": {
1766
- "default": function _default(_ref2) {
1767
- var getInputEvents = _ref2.getInputEvents,
1768
- getInputProps = _ref2.getInputProps,
1769
- getItemProps = _ref2.getItemProps,
1770
- getItemEvents = _ref2.getItemEvents,
1771
- isOpen = _ref2.isOpen,
1772
- highlightedIndex = _ref2.highlightedIndex,
1773
- setHighlightedIndex = _ref2.setHighlightedIndex;
1713
+ "default": function _default(_ref3) {
1714
+ var getInputEvents = _ref3.getInputEvents,
1715
+ getInputProps = _ref3.getInputProps,
1716
+ getItemProps = _ref3.getItemProps,
1717
+ getItemEvents = _ref3.getItemEvents,
1718
+ isOpen = _ref3.isOpen,
1719
+ highlightedIndex = _ref3.highlightedIndex,
1720
+ setHighlightedIndex = _ref3.setHighlightedIndex;
1721
+
1722
+ var renderSuggestionsContainer = function renderSuggestionsContainer() {
1723
+ return h("div", [_this3.hasCustomRenderer && _this3.getComponent({
1724
+ isOpen: isOpen,
1725
+ getItemProps: getItemProps,
1726
+ getItemEvents: getItemEvents,
1727
+ highlightedIndex: highlightedIndex
1728
+ }), _this3.renderErrorComponent(), !_this3.hasCustomRenderer && isOpen && hasSuggestions ? h("ul", {
1729
+ "class": suggestions(_this3.themePreset, theme) + " " + getClassName$1(_this3.$props.innerClass, 'list')
1730
+ }, [_this3.suggestionsList.slice(0, size || 10).map(function (item, index) {
1731
+ return h("li", {
1732
+ "domProps": _extends({}, getItemProps({
1733
+ item: item
1734
+ })),
1735
+ "on": _extends({}, getItemEvents({
1736
+ item: item
1737
+ })),
1738
+ "key": index + 1 + "-" + item.value,
1739
+ "style": {
1740
+ backgroundColor: _this3.getBackgroundColor(highlightedIndex, index)
1741
+ }
1742
+ }, [h(SuggestionItem, {
1743
+ "attrs": {
1744
+ "currentValue": _this3.currentValue,
1745
+ "suggestion": item
1746
+ }
1747
+ })]);
1748
+ }), _this3.defaultSearchSuggestions.map(function (sugg, index) {
1749
+ return h("li", {
1750
+ "domProps": _extends({}, getItemProps({
1751
+ item: sugg
1752
+ })),
1753
+ "on": _extends({}, getItemEvents({
1754
+ item: sugg
1755
+ })),
1756
+ "key": _this3.suggestionsList.length + index + 1 + "-" + sugg.value,
1757
+ "style": {
1758
+ backgroundColor: _this3.getBackgroundColor(highlightedIndex, _this3.suggestionsList.length + index),
1759
+ justifyContent: 'flex-start'
1760
+ }
1761
+ }, [h("div", {
1762
+ "style": {
1763
+ padding: '0 10px 0 0'
1764
+ }
1765
+ }, [sugg.source && sugg.source._recent_search && h(CustomSvg, {
1766
+ "attrs": {
1767
+ "className": getClassName$1(_this3.$props.innerClass, 'recent-search-icon') || null,
1768
+ "icon": recentSearchesIcon,
1769
+ "type": "recent-search-icon"
1770
+ }
1771
+ }), sugg.source && sugg.source._popular_suggestion && h(CustomSvg, {
1772
+ "attrs": {
1773
+ "className": getClassName$1(_this3.$props.innerClass, 'popular-search-icon') || null,
1774
+ "icon": popularSearchesIcon,
1775
+ "type": "popular-search-icon"
1776
+ }
1777
+ })]), h(SuggestionItem, {
1778
+ "attrs": {
1779
+ "currentValue": _this3.currentValue,
1780
+ "suggestion": sugg
1781
+ }
1782
+ })]);
1783
+ }), hasQuerySuggestionsRenderer(_this3) ? _this3.getComponent({
1784
+ isOpen: isOpen,
1785
+ getItemProps: getItemProps,
1786
+ getItemEvents: getItemEvents,
1787
+ highlightedIndex: highlightedIndex
1788
+ }, true) : _this3.topSuggestions.map(function (sugg, index) {
1789
+ return h("li", {
1790
+ "domProps": _extends({}, getItemProps({
1791
+ item: sugg
1792
+ })),
1793
+ "on": _extends({}, getItemEvents({
1794
+ item: sugg
1795
+ })),
1796
+ "key": _this3.suggestionsList.length + index + 1 + "-" + sugg.value,
1797
+ "style": {
1798
+ backgroundColor: _this3.getBackgroundColor(highlightedIndex, _this3.suggestionsList.length + index),
1799
+ justifyContent: 'flex-start'
1800
+ }
1801
+ }, [h("div", {
1802
+ "style": {
1803
+ padding: '0 10px 0 0'
1804
+ }
1805
+ }, [h(CustomSvg, {
1806
+ "attrs": {
1807
+ "className": getClassName$1(_this3.$props.innerClass, 'popular-search-icon') || null,
1808
+ "icon": popularSearchesIcon,
1809
+ "type": "popular-search-icon"
1810
+ }
1811
+ })]), h(SuggestionItem, {
1812
+ "attrs": {
1813
+ "currentValue": _this3.currentValue,
1814
+ "suggestion": sugg
1815
+ }
1816
+ })]);
1817
+ })]) : _this3.renderNoSuggestions(_this3.suggestionsList)]);
1818
+ };
1819
+
1774
1820
  return h("div", {
1775
1821
  "class": suggestionsContainer
1776
- }, [h(Input, {
1822
+ }, [h(InputGroup, [_this3.renderInputAddonBefore(), h(InputWrapper, [h(Input, {
1777
1823
  "attrs": {
1778
1824
  "id": _this3.$props.componentId + "-input",
1779
1825
  "showIcon": _this3.$props.showIcon,
1780
1826
  "showClear": _this3.$props.showClear,
1781
1827
  "iconPosition": _this3.$props.iconPosition,
1782
1828
  "placeholder": _this3.$props.placeholder,
1829
+ "autoFocus": _this3.$props.autoFocus,
1783
1830
  "themePreset": _this3.themePreset,
1784
- "autocomplete": 'off'
1831
+ "autocomplete": "off"
1785
1832
  },
1786
1833
  "ref": _this3.$props.innerRef,
1787
1834
  "class": getClassName$1(_this3.$props.innerClass, 'input'),
@@ -1811,113 +1858,18 @@ var DataSearch = {
1811
1858
  "domProps": _extends({}, getInputProps({
1812
1859
  value: _this3.$data.currentValue === null ? '' : _this3.$data.currentValue
1813
1860
  }))
1814
- }), _this3.renderIcons(), _this3.hasCustomRenderer && _this3.getComponent({
1815
- isOpen: isOpen,
1816
- getItemProps: getItemProps,
1817
- getItemEvents: getItemEvents,
1818
- highlightedIndex: highlightedIndex
1819
- }), _this3.renderErrorComponent(), !_this3.hasCustomRenderer && isOpen && hasSuggestions ? h("ul", {
1820
- "class": suggestions(_this3.themePreset, theme) + " " + getClassName$1(_this3.$props.innerClass, 'list')
1821
- }, [_this3.suggestionsList.slice(0, size).map(function (item, index) {
1822
- return h("li", {
1823
- "domProps": _extends({}, getItemProps({
1824
- item: item
1825
- })),
1826
- "on": _extends({}, getItemEvents({
1827
- item: item
1828
- })),
1829
- "key": index + 1 + "-" + item.value,
1830
- "style": {
1831
- backgroundColor: _this3.getBackgroundColor(highlightedIndex, index)
1832
- }
1833
- }, [h(SuggestionItem, {
1834
- "attrs": {
1835
- "currentValue": _this3.currentValue,
1836
- "suggestion": item
1837
- }
1838
- })]);
1839
- }), _this3.defaultSearchSuggestions.map(function (sugg, index) {
1840
- return h("li", {
1841
- "domProps": _extends({}, getItemProps({
1842
- item: sugg
1843
- })),
1844
- "on": _extends({}, getItemEvents({
1845
- item: sugg
1846
- })),
1847
- "key": _this3.suggestionsList.length + index + 1 + "-" + sugg.value,
1848
- "style": {
1849
- backgroundColor: _this3.getBackgroundColor(highlightedIndex, _this3.suggestionsList.length + index),
1850
- justifyContent: 'flex-start'
1851
- }
1852
- }, [h("div", {
1853
- "style": {
1854
- padding: '0 10px 0 0'
1855
- }
1856
- }, [sugg.source && sugg.source._recent_search && h(CustomSvg, {
1857
- "attrs": {
1858
- "className": getClassName$1(_this3.$props.innerClass, 'recent-search-icon') || null,
1859
- "icon": recentSearchesIcon,
1860
- "type": "recent-search-icon"
1861
- }
1862
- }), sugg.source && sugg.source._popular_suggestion && h(CustomSvg, {
1863
- "attrs": {
1864
- "className": getClassName$1(_this3.$props.innerClass, 'popular-search-icon') || null,
1865
- "icon": popularSearchesIcon,
1866
- "type": "popular-search-icon"
1867
- }
1868
- })]), h(SuggestionItem, {
1869
- "attrs": {
1870
- "currentValue": _this3.currentValue,
1871
- "suggestion": sugg
1872
- }
1873
- })]);
1874
- }), hasQuerySuggestionsRenderer(_this3) ? _this3.getComponent({
1875
- isOpen: isOpen,
1876
- getItemProps: getItemProps,
1877
- getItemEvents: getItemEvents,
1878
- highlightedIndex: highlightedIndex
1879
- }, true) : _this3.topSuggestions.map(function (sugg, index) {
1880
- return h("li", {
1881
- "domProps": _extends({}, getItemProps({
1882
- item: sugg
1883
- })),
1884
- "on": _extends({}, getItemEvents({
1885
- item: sugg
1886
- })),
1887
- "key": _this3.suggestionsList.length + index + 1 + "-" + sugg.value,
1888
- "style": {
1889
- backgroundColor: _this3.getBackgroundColor(highlightedIndex, _this3.suggestionsList.length + index),
1890
- justifyContent: 'flex-start'
1891
- }
1892
- }, [h("div", {
1893
- "style": {
1894
- padding: '0 10px 0 0'
1895
- }
1896
- }, [h(CustomSvg, {
1897
- "attrs": {
1898
- "className": getClassName$1(_this3.$props.innerClass, 'popular-search-icon') || null,
1899
- "icon": popularSearchesIcon,
1900
- "type": "popular-search-icon"
1901
- }
1902
- })]), h(SuggestionItem, {
1903
- "attrs": {
1904
- "currentValue": _this3.currentValue,
1905
- "suggestion": sugg
1906
- }
1907
- })]);
1908
- })]) : _this3.renderNoSuggestions(_this3.suggestionsList), ' ']);
1861
+ }), _this3.renderIcons(), !expandSuggestionsContainer && renderSuggestionsContainer()]), ' ', _this3.renderInputAddonAfter()]), expandSuggestionsContainer && renderSuggestionsContainer()]);
1909
1862
  }
1910
1863
  }
1911
1864
  }) : h("div", {
1912
1865
  "class": suggestionsContainer
1913
- }, [h(Input, {
1866
+ }, [h(InputGroup, [this.renderInputAddonBefore(), h(InputWrapper, [h(Input, {
1914
1867
  "class": getClassName$1(this.$props.innerClass, 'input') || '',
1915
1868
  "attrs": {
1916
1869
  "placeholder": this.$props.placeholder,
1917
1870
  "iconPosition": this.$props.iconPosition,
1918
1871
  "showIcon": this.$props.showIcon,
1919
1872
  "showClear": this.$props.showClear,
1920
- "innerRef": this.$props.innerRef,
1921
1873
  "themePreset": this.themePreset
1922
1874
  },
1923
1875
  "on": _extends({}, {
@@ -1947,22 +1899,20 @@ var DataSearch = {
1947
1899
  "domProps": _extends({}, {
1948
1900
  autofocus: this.$props.autoFocus,
1949
1901
  value: this.$data.currentValue ? this.$data.currentValue : ''
1950
- })
1951
- }), this.renderIcons()])]);
1902
+ }),
1903
+ "ref": this.$props.innerRef
1904
+ }), this.renderIcons()]), this.renderInputAddonAfter()])])]);
1905
+ },
1906
+ destroyed: function destroyed() {
1907
+ document.removeEventListener('keydown', this.onKeyDown);
1952
1908
  }
1953
1909
  };
1954
1910
 
1955
1911
  DataSearch.defaultQuery = function (value, props) {
1956
1912
  var finalQuery = null;
1957
- var fields = [];
1958
1913
 
1959
1914
  if (value) {
1960
- if (Array.isArray(props.dataField)) {
1961
- fields = props.dataField;
1962
- } else if (props.dataField) {
1963
- fields = [props.dataField];
1964
- }
1965
-
1915
+ var fields = normalizeDataField(props.dataField, props.fieldWeights);
1966
1916
  finalQuery = {
1967
1917
  bool: {
1968
1918
  should: DataSearch.shouldQuery(value, fields, props),
@@ -1992,10 +1942,10 @@ DataSearch.defaultQuery = function (value, props) {
1992
1942
  DataSearch.shouldQuery = function (value, dataFields, props) {
1993
1943
  var finalQuery = [];
1994
1944
  var phrasePrefixFields = [];
1995
- var fields = (dataFields || []).map(function (field, index) {
1996
- var queryField = "" + field + (Array.isArray(props.fieldWeights) && props.fieldWeights[index] ? "^" + props.fieldWeights[index] : '');
1945
+ var fields = dataFields.map(function (dataField) {
1946
+ var queryField = "" + dataField.field + (dataField.weight ? "^" + dataField.weight : '');
1997
1947
 
1998
- if (!(field.endsWith('.keyword') || field.endsWith('.autosuggest') || field.endsWith('.search'))) {
1948
+ if (!(dataField.field.endsWith('.keyword') || dataField.field.endsWith('.autosuggest') || dataField.field.endsWith('.search'))) {
1999
1949
  phrasePrefixFields.push(queryField);
2000
1950
  }
2001
1951
 
@@ -2115,7 +2065,7 @@ var mapStateToProps = function mapStateToProps(state, props) {
2115
2065
  themePreset: state.config.themePreset,
2116
2066
  error: state.error[props.componentId],
2117
2067
  analytics: state.analytics,
2118
- config: state.config,
2068
+ enableAppbase: state.config.enableAppbase,
2119
2069
  headers: state.appbaseRef.headers,
2120
2070
  promotedResults: state.promotedResults[props.componentId] || [],
2121
2071
  customData: state.customData[props.componentId],