@appbaseio/reactivesearch-vue 1.34.0-alpha.2 → 1.34.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.
Files changed (104) hide show
  1. package/dist/@appbaseio/reactivesearch-vue.umd.js +10874 -8633
  2. package/dist/@appbaseio/reactivesearch-vue.umd.js.map +1 -1
  3. package/dist/@appbaseio/reactivesearch-vue.umd.min.js +12 -11
  4. package/dist/@appbaseio/reactivesearch-vue.umd.min.js.map +1 -1
  5. package/dist/cjs/Button-841fd06d.js +62 -0
  6. package/dist/cjs/{CancelSvg-062a42f0.js → CancelSvg-220a7cc3.js} +40 -32
  7. package/dist/cjs/Card-240f283d.js +30 -0
  8. package/dist/cjs/{ComponentWrapper-db45cc6d.js → ComponentWrapper-94c50228.js} +7 -7
  9. package/dist/cjs/Container-e699ea95.js +15 -0
  10. package/dist/cjs/DataSearch.js +1312 -20
  11. package/dist/cjs/{DropDown-3b899b20.js → DropDown-7a52c661.js} +79 -78
  12. package/dist/cjs/DynamicRangeSlider.js +46 -56
  13. package/dist/cjs/Flex-ddd7cb6b.js +50 -0
  14. package/dist/cjs/FormControlList-bbb5cd24.js +45 -0
  15. package/dist/cjs/Input-ead4cd84.js +77 -0
  16. package/dist/cjs/ListItem-5088bd6a.js +45 -0
  17. package/dist/cjs/MultiDropdownList.js +68 -74
  18. package/dist/cjs/MultiList.js +94 -89
  19. package/dist/cjs/MultiRange.js +44 -54
  20. package/dist/cjs/{Pagination-a468f960.js → Pagination-e56a5b79.js} +53 -56
  21. package/dist/cjs/{PreferencesConsumer-034c55e3.js → PreferencesConsumer-5e6e84a2.js} +5 -6
  22. package/dist/cjs/RangeInput.js +107 -115
  23. package/dist/cjs/RangeSlider.js +39 -50
  24. package/dist/cjs/ReactiveBase.js +55 -69
  25. package/dist/cjs/ReactiveComponent.js +316 -46
  26. package/dist/cjs/{ReactiveComponent-f0f486ca.js → ReactiveComponentPrivate-244c6055.js} +321 -618
  27. package/dist/cjs/ReactiveComponentPrivate.js +55 -0
  28. package/dist/cjs/ReactiveGoogleMap.js +439 -384
  29. package/dist/cjs/ReactiveList.js +128 -100
  30. package/dist/cjs/ResultCard.js +19 -26
  31. package/dist/cjs/ResultList.js +27 -31
  32. package/dist/cjs/SelectedFilters.js +34 -49
  33. package/dist/cjs/SingleDropdownList.js +66 -73
  34. package/dist/cjs/SingleList.js +96 -90
  35. package/dist/cjs/SingleRange.js +42 -48
  36. package/dist/cjs/StateProvider.js +2 -2
  37. package/dist/cjs/Tags-4ec43831.js +883 -0
  38. package/dist/cjs/Title-16042ea0.js +15 -0
  39. package/dist/cjs/ToggleButton.js +34 -39
  40. package/dist/cjs/{index-dc25b706.js → index-de136c17.js} +8 -6
  41. package/dist/cjs/index.js +27 -25
  42. package/dist/cjs/initReactivesearch.js +0 -3
  43. package/dist/cjs/install.js +23 -22
  44. package/dist/cjs/ssr-f2fc1bf6.js +36 -0
  45. package/dist/cjs/version.js +1 -1
  46. package/dist/cjs/{vueTypes-621a8143.js → vueTypes-b7007f5f.js} +3 -2
  47. package/dist/es/Button-153cd885.js +53 -0
  48. package/dist/es/{CancelSvg-14ebc9a1.js → CancelSvg-e40552a5.js} +37 -30
  49. package/dist/es/{Card-1951569e.js → Card-19ad6d90.js} +6 -5
  50. package/dist/es/{ComponentWrapper-bf443c0b.js → ComponentWrapper-edaeaceb.js} +6 -6
  51. package/dist/es/Container-d00219f7.js +1 -1
  52. package/dist/es/DataSearch.js +1312 -18
  53. package/dist/es/{DropDown-35e232b7.js → DropDown-2c0dd714.js} +78 -78
  54. package/dist/es/DynamicRangeSlider.js +43 -53
  55. package/dist/es/Flex-7c177a10.js +45 -0
  56. package/dist/es/FormControlList-99797d0a.js +38 -0
  57. package/dist/es/Input-c09c0b56.js +69 -0
  58. package/dist/es/{ListItem-47a6345a.js → ListItem-07888a65.js} +7 -6
  59. package/dist/es/MultiDropdownList.js +66 -72
  60. package/dist/es/MultiList.js +93 -88
  61. package/dist/es/MultiRange.js +42 -52
  62. package/dist/es/{Pagination-145b4ff2.js → Pagination-edeb7dbe.js} +53 -56
  63. package/dist/es/{PreferencesConsumer-7ea7313a.js → PreferencesConsumer-86a676c8.js} +4 -5
  64. package/dist/es/RangeInput.js +103 -112
  65. package/dist/es/RangeSlider.js +36 -47
  66. package/dist/es/ReactiveBase.js +53 -68
  67. package/dist/es/ReactiveComponent.js +316 -45
  68. package/dist/es/{ReactiveComponent-e2fb9eb4.js → ReactiveComponentPrivate-6f16e1b7.js} +316 -614
  69. package/dist/es/ReactiveComponentPrivate.js +47 -0
  70. package/dist/es/ReactiveGoogleMap.js +434 -380
  71. package/dist/es/ReactiveList.js +125 -98
  72. package/dist/es/ResultCard.js +18 -25
  73. package/dist/es/ResultList.js +26 -30
  74. package/dist/es/SelectedFilters.js +32 -47
  75. package/dist/es/SingleDropdownList.js +64 -71
  76. package/dist/es/SingleList.js +94 -88
  77. package/dist/es/SingleRange.js +40 -46
  78. package/dist/es/StateProvider.js +2 -2
  79. package/dist/es/Tags-1c2d6c4d.js +869 -0
  80. package/dist/es/Title-863dfa42.js +1 -1
  81. package/dist/es/ToggleButton.js +32 -37
  82. package/dist/es/{index-285a43a6.js → index-5509c0bc.js} +8 -6
  83. package/dist/es/index.js +20 -19
  84. package/dist/es/initReactivesearch.js +0 -3
  85. package/dist/es/install.js +20 -19
  86. package/dist/es/ssr-03607d84.js +1 -1
  87. package/dist/es/version.js +1 -1
  88. package/dist/es/{vueTypes-e4af6fe2.js → vueTypes-66ebc93e.js} +3 -2
  89. package/package.json +10 -10
  90. package/dist/cjs/Button-626c5e8e.js +0 -58
  91. package/dist/cjs/Card-c381ded3.js +0 -26
  92. package/dist/cjs/Container-29f049b2.js +0 -12
  93. package/dist/cjs/DataSearch-7c71ec9f.js +0 -2043
  94. package/dist/cjs/Flex-d5675ea6.js +0 -48
  95. package/dist/cjs/FormControlList-cf1ff2ca.js +0 -42
  96. package/dist/cjs/Input-4d278ca0.js +0 -74
  97. package/dist/cjs/ListItem-c067bc07.js +0 -41
  98. package/dist/cjs/Title-8802a218.js +0 -12
  99. package/dist/cjs/ssr-eb901d09.js +0 -35
  100. package/dist/es/Button-ebafa3d6.js +0 -52
  101. package/dist/es/DataSearch-4f9a4e46.js +0 -2028
  102. package/dist/es/Flex-a08e22d7.js +0 -46
  103. package/dist/es/FormControlList-fa5cf78b.js +0 -38
  104. package/dist/es/Input-3b8408a6.js +0 -69
@@ -6,28 +6,28 @@ var configureStore = require('@appbaseio/reactivecore');
6
6
  var configureStore__default = _interopDefault(configureStore);
7
7
  var constants = require('@appbaseio/reactivecore/lib/utils/constants');
8
8
  var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-f8b843f8.js');
9
- var vue = require('vue');
10
9
  var VueTypes = _interopDefault(require('vue-types'));
11
10
  var helper = require('@appbaseio/reactivecore/lib/utils/helper');
12
- var vueEmotion = require('@appbaseio/vue-emotion');
13
- var Button = require('./Button-626c5e8e.js');
14
- var vueTypes = require('./vueTypes-621a8143.js');
11
+ var styled = require('@appbaseio/vue-emotion');
12
+ var styled__default = _interopDefault(styled);
13
+ var Button = require('./Button-841fd06d.js');
14
+ var vueTypes = require('./vueTypes-b7007f5f.js');
15
15
  var ReactiveList = require('./ReactiveList.js');
16
- var index = require('./index-dc25b706.js');
17
- var ComponentWrapper = require('./ComponentWrapper-db45cc6d.js');
18
- var PreferencesConsumer = require('./PreferencesConsumer-034c55e3.js');
19
- var Title = require('./Title-8802a218.js');
16
+ var index = require('./index-de136c17.js');
17
+ var ComponentWrapper = require('./ComponentWrapper-94c50228.js');
18
+ var PreferencesConsumer = require('./PreferencesConsumer-5e6e84a2.js');
19
+ var Title = require('./Title-16042ea0.js');
20
20
  var hotkeys = _interopDefault(require('hotkeys-js'));
21
- var DataSearch = require('./DataSearch-7c71ec9f.js');
22
- var CancelSvg = require('./CancelSvg-062a42f0.js');
23
- var Input = require('./Input-4d278ca0.js');
24
- var Container = require('./Container-29f049b2.js');
25
- var _transformOn = _interopDefault(require('@vue/babel-helper-vue-transform-on'));
21
+ var Tags = require('./Tags-4ec43831.js');
22
+ var CancelSvg = require('./CancelSvg-220a7cc3.js');
23
+ var Input = require('./Input-ead4cd84.js');
24
+ var Container = require('./Container-e699ea95.js');
26
25
  var SingleList = require('./SingleList.js');
27
26
  var MultiList = require('./MultiList.js');
28
27
  var SingleDropdownList = require('./SingleDropdownList.js');
29
28
  var MultiDropdownList = require('./MultiDropdownList.js');
30
29
  var ToggleButton = require('./ToggleButton.js');
30
+ var ReactiveComponent = require('./ReactiveComponent.js');
31
31
  var DynamicRangeSlider = require('./DynamicRangeSlider.js');
32
32
  var SingleRange = require('./SingleRange.js');
33
33
  var MultiRange = require('./MultiRange.js');
@@ -35,21 +35,24 @@ var RangeSlider = require('./RangeSlider.js');
35
35
  var RangeInput = require('./RangeInput.js');
36
36
 
37
37
  var _templateObject;
38
- var AutofillSvgIcon = vueEmotion.styled('button')(_templateObject || (_templateObject = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tdisplay: flex;\n\tmargin-left: auto;\n\tposition: relative;\n\tright: -3px;\n\tborder: none;\n\toutline: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tz-index: 111000;\n\n\tsvg {\n\t\tcursor: pointer;\n\t\tfill: #707070;\n\t\theight: 20px;\n\t}\n\n\t&:hover {\n\t\tsvg {\n\t\t\tfill: #1c1a1a;\n\t\t}\n\t}\n"])));
38
+ var AutofillSvgIcon = styled__default('button')(_templateObject || (_templateObject = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tdisplay: flex;\n\tmargin-left: auto;\n\tposition: relative;\n\tright: -3px;\n\tborder: none;\n\toutline: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tz-index: 111000;\n\n\tsvg {\n\t\tcursor: pointer;\n\t\tfill: #707070;\n\t\theight: 20px;\n\t}\n\n\t&:hover {\n\t\tsvg {\n\t\t\tfill: #1c1a1a;\n\t\t}\n\t}\n"])));
39
39
  var AutoFillSvg = {
40
40
  name: 'AutoFillSvg',
41
41
  render: function render() {
42
- return vue.createVNode(AutofillSvgIcon, {
43
- "onClick": this.$attrs.click
44
- }, {
45
- "default": function _default() {
46
- return [vue.createVNode("svg", {
47
- "viewBox": "0 0 24 24"
48
- }, [vue.createVNode("path", {
49
- "d": "M8 17v-7.586l8.293 8.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-8.293-8.293h7.586c0.552 0 1-0.448 1-1s-0.448-1-1-1h-10c-0.552 0-1 0.448-1 1v10c0 0.552 0.448 1 1 1s1-0.448 1-1z"
50
- }, null)])];
42
+ var h = arguments[0];
43
+ return h(AutofillSvgIcon, {
44
+ "on": {
45
+ "click": this.$listeners.click
51
46
  }
52
- });
47
+ }, [h("svg", {
48
+ "attrs": {
49
+ "viewBox": "0 0 24 24"
50
+ }
51
+ }, [h("path", {
52
+ "attrs": {
53
+ "d": "M8 17v-7.586l8.293 8.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-8.293-8.293h7.586c0.552 0 1-0.448 1-1s-0.448-1-1-1h-10c-0.552 0-1 0.448-1 1v10c0 0.552 0.448 1 1 1s1-0.448 1-1z"
54
+ }
55
+ })])]);
53
56
  },
54
57
  methods: {
55
58
  clicked: function clicked(e) {
@@ -59,9 +62,6 @@ var AutoFillSvg = {
59
62
  }
60
63
  };
61
64
 
62
- function _isSlot(s) {
63
- return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !vue.isVNode(s);
64
- }
65
65
  var updateQuery = configureStore.Actions.updateQuery,
66
66
  setCustomQuery = configureStore.Actions.setCustomQuery,
67
67
  setDefaultQuery = configureStore.Actions.setDefaultQuery,
@@ -74,7 +74,7 @@ var _debounce = configureStore.helper.debounce,
74
74
  withClickIds = configureStore.helper.withClickIds,
75
75
  getResultStats = configureStore.helper.getResultStats,
76
76
  normalizeDataField = configureStore.helper.normalizeDataField;
77
- var SearchBox = vue.defineComponent({
77
+ var SearchBox = {
78
78
  name: 'SearchBox',
79
79
  isTagsMode: false,
80
80
  data: function data() {
@@ -665,31 +665,31 @@ var SearchBox = vue.defineComponent({
665
665
  return highlightedIndex === index ? '#eee' : '#fff';
666
666
  },
667
667
  renderIcon: function renderIcon() {
668
+ var h = this.$createElement;
668
669
  if (this.$props.showIcon) {
669
- return this.$props.icon || vue.createVNode(DataSearch.SearchSvg, null, null);
670
+ return this.$props.icon || h(Tags.SearchSvg);
670
671
  }
671
672
  return null;
672
673
  },
673
674
  renderErrorComponent: function renderErrorComponent() {
674
- var _this4 = this;
675
- var renderError = this.$slots.renderError || this.$props.renderError;
675
+ var h = this.$createElement;
676
+ var renderError = this.$scopedSlots.renderError || this.$props.renderError;
676
677
  if (this.error && renderError && this.$data.currentValue && !this.isLoading) {
677
- return vue.createVNode(DataSearch.SuggestionWrapper, {
678
- "innerClass": this.$props.innerClass,
679
- "innerClassName": "error",
680
- "theme": this.theme,
681
- "themePreset": this.themePreset
682
- }, {
683
- "default": function _default() {
684
- return [index.isFunction(renderError) ? renderError(_this4.error) : renderError];
678
+ return h(Tags.SuggestionWrapper, {
679
+ "attrs": {
680
+ "innerClass": this.$props.innerClass,
681
+ "innerClassName": "error",
682
+ "theme": this.theme,
683
+ "themePreset": this.themePreset
685
684
  }
686
- });
685
+ }, [index.isFunction(renderError) ? renderError(this.error) : renderError]);
687
686
  }
688
687
  return null;
689
688
  },
690
689
  renderCancelIcon: function renderCancelIcon() {
690
+ var h = this.$createElement;
691
691
  if (this.$props.showClear) {
692
- return this.$props.clearIcon || vue.createVNode(CancelSvg.CancelSvg, null, null);
692
+ return this.$props.clearIcon || h(CancelSvg.CancelSvg);
693
693
  }
694
694
  return null;
695
695
  },
@@ -697,54 +697,49 @@ var SearchBox = vue.defineComponent({
697
697
  if (finalSuggestionsList === void 0) {
698
698
  finalSuggestionsList = [];
699
699
  }
700
+ var h = this.$createElement;
700
701
  var _this$$props3 = this.$props,
701
702
  theme = _this$$props3.theme,
702
703
  innerClass = _this$$props3.innerClass;
703
- var renderNoSuggestion = this.$slots.renderNoSuggestion || this.$props.renderNoSuggestion;
704
- var renderError = this.$slots.renderError || this.$props.renderError;
704
+ var renderNoSuggestion = this.$scopedSlots.renderNoSuggestion || this.$props.renderNoSuggestion;
705
+ var renderError = this.$scopedSlots.renderError || this.$props.renderError;
705
706
  var _this$$data = this.$data,
706
707
  isOpen = _this$$data.isOpen,
707
708
  currentValue = _this$$data.currentValue;
708
709
  if (renderNoSuggestion && isOpen && !finalSuggestionsList.length && !this.isLoading && currentValue && !(renderError && this.error)) {
709
- return vue.createVNode(DataSearch.SuggestionWrapper, {
710
- "innerClass": innerClass,
711
- "themePreset": this.themePreset,
712
- "theme": theme,
713
- "innerClassName": "noSuggestion",
710
+ return h(Tags.SuggestionWrapper, {
711
+ "attrs": {
712
+ "innerClass": innerClass,
713
+ "themePreset": this.themePreset,
714
+ "theme": theme,
715
+ "innerClassName": "noSuggestion"
716
+ },
714
717
  "scopedSlots": {
715
718
  "default": function _default() {
716
719
  return typeof renderNoSuggestion === 'function' ? renderNoSuggestion(currentValue) : renderNoSuggestion;
717
720
  }
718
721
  }
719
- }, null);
722
+ });
720
723
  }
721
724
  return null;
722
725
  },
723
726
  renderInputAddonBefore: function renderInputAddonBefore() {
724
- var addonBefore = this.$slots.addonBefore;
727
+ var h = this.$createElement;
728
+ var addonBefore = this.$scopedSlots.addonBefore;
725
729
  if (addonBefore) {
726
- var _slot;
727
- return vue.createVNode(DataSearch.InputAddon, {
730
+ return h(Tags.InputAddon, {
728
731
  "class": "addon-before"
729
- }, _isSlot(_slot = addonBefore()) ? _slot : {
730
- "default": function _default() {
731
- return [_slot];
732
- }
733
- });
732
+ }, [addonBefore()]);
734
733
  }
735
734
  return null;
736
735
  },
737
736
  renderInputAddonAfter: function renderInputAddonAfter() {
738
- var addonAfter = this.$slots.addonAfter;
737
+ var h = this.$createElement;
738
+ var addonAfter = this.$scopedSlots.addonAfter;
739
739
  if (addonAfter) {
740
- var _slot2;
741
- return vue.createVNode(DataSearch.InputAddon, {
740
+ return h(Tags.InputAddon, {
742
741
  "class": "addon-after"
743
- }, _isSlot(_slot2 = addonAfter()) ? _slot2 : {
744
- "default": function _default() {
745
- return [_slot2];
746
- }
747
- });
742
+ }, [addonAfter()]);
748
743
  }
749
744
  return null;
750
745
  },
@@ -756,35 +751,35 @@ var SearchBox = vue.defineComponent({
756
751
  });
757
752
  },
758
753
  renderEnterButtonElement: function renderEnterButtonElement() {
759
- var _this5 = this;
754
+ var _this4 = this;
755
+ var h = this.$createElement;
760
756
  var _this$$props4 = this.$props,
761
757
  enterButton = _this$$props4.enterButton,
762
758
  innerClass = _this$$props4.innerClass;
763
- var renderEnterButton = this.$slots.renderEnterButton;
759
+ var renderEnterButton = this.$scopedSlots.renderEnterButton;
764
760
  if (enterButton) {
765
761
  var getEnterButtonMarkup = function getEnterButtonMarkup() {
766
762
  if (renderEnterButton) {
767
- return renderEnterButton(_this5.enterButtonOnClick);
763
+ return renderEnterButton(_this4.enterButtonOnClick);
768
764
  }
769
- return vue.createVNode(Button.Button, {
765
+ return h(Button.Button, {
770
766
  "class": "enter-btn " + getClassName(innerClass, 'enter-button'),
771
- "primary": true,
772
- "onClick": _this5.enterButtonOnClick
773
- }, {
774
- "default": function _default() {
775
- return [vue.createTextVNode("Search")];
767
+ "attrs": {
768
+ "primary": true
769
+ },
770
+ "on": {
771
+ "click": _this4.enterButtonOnClick
776
772
  }
777
- });
773
+ }, ["Search"]);
778
774
  };
779
- return vue.createVNode("div", {
775
+ return h("div", {
780
776
  "class": "enter-button-wrapper"
781
777
  }, [getEnterButtonMarkup()]);
782
778
  }
783
779
  return null;
784
780
  },
785
781
  renderIcons: function renderIcons() {
786
- var _this6 = this;
787
- var _slot3, _slot4, _slot5;
782
+ var h = this.$createElement;
788
783
  var _this$$props5 = this.$props,
789
784
  iconPosition = _this$$props5.iconPosition,
790
785
  showClear = _this$$props5.showClear,
@@ -792,48 +787,42 @@ var SearchBox = vue.defineComponent({
792
787
  getMicInstance = _this$$props5.getMicInstance,
793
788
  showVoiceSearch = _this$$props5.showVoiceSearch,
794
789
  showIcon = _this$$props5.showIcon;
795
- var renderMic = this.$slots.renderMic || this.$props.renderMic;
790
+ var renderMic = this.$scopedSlots.renderMic || this.$props.renderMic;
796
791
  var currentValue = this.$data.currentValue;
797
- return vue.createVNode("div", null, [vue.createVNode(CancelSvg.IconGroup, {
798
- "groupPosition": "right",
799
- "positionType": "absolute"
800
- }, {
801
- "default": function _default() {
802
- return [currentValue && showClear && vue.createVNode(CancelSvg.IconWrapper, {
803
- "onClick": _this6.clearValue,
804
- "showIcon": showIcon,
805
- "isClearIcon": true
806
- }, _isSlot(_slot3 = _this6.renderCancelIcon()) ? _slot3 : {
807
- "default": function _default() {
808
- return [_slot3];
809
- }
810
- }), showVoiceSearch && vue.createVNode(DataSearch.Mic, {
811
- "getInstance": getMicInstance,
812
- "render": renderMic,
813
- "handleResult": _this6.handleVoiceResults,
814
- "className": getClassName(innerClass, 'mic') || null
815
- }, null), iconPosition === 'right' && showIcon && vue.createVNode(CancelSvg.IconWrapper, {
816
- "onClick": _this6.handleSearchIconClick
817
- }, _isSlot(_slot4 = _this6.renderIcon()) ? _slot4 : {
818
- "default": function _default() {
819
- return [_slot4];
820
- }
821
- })];
792
+ return h("div", [h(CancelSvg.IconGroup, {
793
+ "attrs": {
794
+ "groupPosition": "right",
795
+ "positionType": "absolute"
822
796
  }
823
- }), vue.createVNode(CancelSvg.IconGroup, {
824
- "groupPosition": "left",
825
- "positionType": "absolute"
826
- }, {
827
- "default": function _default() {
828
- return [iconPosition === 'left' && showIcon && vue.createVNode(CancelSvg.IconWrapper, {
829
- "onClick": _this6.handleSearchIconClick
830
- }, _isSlot(_slot5 = _this6.renderIcon()) ? _slot5 : {
831
- "default": function _default() {
832
- return [_slot5];
833
- }
834
- })];
797
+ }, [currentValue && showClear && h(CancelSvg.IconWrapper, {
798
+ "on": {
799
+ "click": this.clearValue
800
+ },
801
+ "attrs": {
802
+ "showIcon": showIcon,
803
+ "isClearIcon": true
804
+ }
805
+ }, [this.renderCancelIcon()]), showVoiceSearch && h(Tags.Mic, {
806
+ "attrs": {
807
+ "getInstance": getMicInstance,
808
+ "render": renderMic,
809
+ "handleResult": this.handleVoiceResults,
810
+ "className": getClassName(innerClass, 'mic') || null
835
811
  }
836
- })]);
812
+ }), iconPosition === 'right' && showIcon && h(CancelSvg.IconWrapper, {
813
+ "on": {
814
+ "click": this.handleSearchIconClick
815
+ }
816
+ }, [this.renderIcon()])]), h(CancelSvg.IconGroup, {
817
+ "attrs": {
818
+ "groupPosition": "left",
819
+ "positionType": "absolute"
820
+ }
821
+ }, [iconPosition === 'left' && showIcon && h(CancelSvg.IconWrapper, {
822
+ "on": {
823
+ "click": this.handleSearchIconClick
824
+ }
825
+ }, [this.renderIcon()])])]);
837
826
  },
838
827
  focusSearchBox: function focusSearchBox(event) {
839
828
  var _this$$refs, _this$$refs$this$$pro;
@@ -846,7 +835,7 @@ var SearchBox = vue.defineComponent({
846
835
  (_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
847
836
  },
848
837
  listenForFocusShortcuts: function listenForFocusShortcuts() {
849
- var _this7 = this;
838
+ var _this5 = this;
850
839
  var _this$$props$focusSho = this.$props.focusShortcuts,
851
840
  focusShortcuts = _this$$props$focusSho === void 0 ? ['/'] : _this$$props$focusSho;
852
841
  if (index.isEmpty(focusShortcuts)) {
@@ -861,7 +850,7 @@ var SearchBox = vue.defineComponent({
861
850
  function (event, handler) {
862
851
  // Prevent the default refresh event under WINDOWS system
863
852
  event.preventDefault();
864
- _this7.focusSearchBox(event);
853
+ _this5.focusSearchBox(event);
865
854
  });
866
855
 
867
856
  // if one of modifier keys are used, they are handled below
@@ -871,7 +860,7 @@ var SearchBox = vue.defineComponent({
871
860
  for (var index$1 = 0; index$1 < modifierKeys.length; index$1 += 1) {
872
861
  var element = modifierKeys[index$1];
873
862
  if (hotkeys[element]) {
874
- _this7.focusSearchBox(event);
863
+ _this5.focusSearchBox(event);
875
864
  break;
876
865
  }
877
866
  }
@@ -884,33 +873,37 @@ var SearchBox = vue.defineComponent({
884
873
  this.triggerDefaultQuery(value);
885
874
  },
886
875
  renderAutoFill: function renderAutoFill(suggestion) {
887
- var _this8 = this;
876
+ var _this6 = this;
877
+ var h = this.$createElement;
888
878
  var handleAutoFillClick = function handleAutoFillClick(e) {
889
879
  e.stopPropagation();
890
- _this8.onAutofillClick(suggestion);
880
+ _this6.onAutofillClick(suggestion);
891
881
  };
892
882
  /* 👇 avoid showing autofill for category suggestions👇 */
893
- return suggestion._category ? null : vue.createVNode(AutoFillSvg, {
894
- "onClick": handleAutoFillClick
895
- }, null);
883
+ return suggestion._category ? null : h(AutoFillSvg, {
884
+ "on": {
885
+ "click": handleAutoFillClick
886
+ }
887
+ });
896
888
  },
897
889
  renderTag: function renderTag(item) {
898
- var _this9 = this;
890
+ var _this7 = this;
891
+ var h = this.$createElement;
899
892
  var innerClass = this.$props.innerClass;
900
- return vue.createVNode(DataSearch.TagItem, {
893
+ return h(Tags.TagItem, {
901
894
  "class": getClassName(innerClass, 'selected-tag') || ''
902
- }, {
903
- "default": function _default() {
904
- return [vue.createVNode("span", null, [item]), vue.createVNode("span", {
905
- "role": "img",
906
- "aria-label": "delete-tag",
907
- "class": "close-icon",
908
- "onClick": function onClick() {
909
- return _this9.clearTag(item);
910
- }
911
- }, [vue.createVNode(CancelSvg.CancelSvg, null, null)])];
895
+ }, [h("span", [item]), h("span", {
896
+ "attrs": {
897
+ "role": "img",
898
+ "aria-label": "delete-tag"
899
+ },
900
+ "class": "close-icon",
901
+ "on": {
902
+ "click": function click() {
903
+ return _this7.clearTag(item);
904
+ }
912
905
  }
913
- });
906
+ }, [h(CancelSvg.CancelSvg)])]);
914
907
  },
915
908
  clearAllTags: function clearAllTags() {
916
909
  this.selectedTags = [];
@@ -929,218 +922,214 @@ var SearchBox = vue.defineComponent({
929
922
  }
930
923
  },
931
924
  renderTags: function renderTags() {
932
- var _this10 = this;
925
+ var _this8 = this;
926
+ var h = this.$createElement;
933
927
  if (!Array.isArray(this.selectedTags)) {
934
928
  return null;
935
929
  }
936
930
  var tagsList = [].concat(this.selectedTags);
937
931
  var shouldRenderClearAllTag = tagsList.length > 1;
938
- var renderSelectedTags = this.$slots.renderSelectedTags || this.$props.renderSelectedTags;
932
+ var renderSelectedTags = this.$scopedSlots.renderSelectedTags || this.$props.renderSelectedTags;
939
933
  return renderSelectedTags ? renderSelectedTags({
940
934
  values: this.selectedTags,
941
935
  handleClear: this.clearTag,
942
936
  handleClearAll: this.clearAllTags
943
- }) : vue.createVNode(DataSearch.TagsContainer, null, {
944
- "default": function _default() {
945
- return [tagsList.map(function (item) {
946
- return _this10.renderTag(item);
947
- }), shouldRenderClearAllTag && vue.createVNode(DataSearch.TagItem, {
948
- "class": getClassName(_this10.$props.innerClass, 'selected-tag') || ''
949
- }, {
950
- "default": function _default() {
951
- return [vue.createVNode("span", null, [vue.createTextVNode("Clear All")]), vue.createVNode("span", {
952
- "role": "img",
953
- "aria-label": "delete-tag",
954
- "class": "close-icon",
955
- "onClick": _this10.clearAllTags
956
- }, [vue.createVNode(CancelSvg.CancelSvg, null, null)])];
957
- }
958
- })];
937
+ }) : h(Tags.TagsContainer, [tagsList.map(function (item) {
938
+ return _this8.renderTag(item);
939
+ }), shouldRenderClearAllTag && h(Tags.TagItem, {
940
+ "class": getClassName(this.$props.innerClass, 'selected-tag') || ''
941
+ }, [h("span", ["Clear All"]), h("span", {
942
+ "attrs": {
943
+ "role": "img",
944
+ "aria-label": "delete-tag"
945
+ },
946
+ "class": "close-icon",
947
+ "on": {
948
+ "click": this.clearAllTags
959
949
  }
960
- });
950
+ }, [h(CancelSvg.CancelSvg)])])]);
961
951
  }
962
952
  },
963
953
  render: function render() {
964
- var _this11 = this;
954
+ var _this9 = this;
955
+ var h = arguments[0];
965
956
  var _this$$props6 = this.$props,
966
957
  theme = _this$$props6.theme,
967
958
  expandSuggestionsContainer = _this$$props6.expandSuggestionsContainer;
968
- var _this$$slots = this.$slots,
969
- recentSearchesIcon = _this$$slots.recentSearchesIcon,
970
- popularSearchesIcon = _this$$slots.popularSearchesIcon;
959
+ var _this$$scopedSlots = this.$scopedSlots,
960
+ recentSearchesIcon = _this$$scopedSlots.recentSearchesIcon,
961
+ popularSearchesIcon = _this$$scopedSlots.popularSearchesIcon;
971
962
  var hasSuggestions = Array.isArray(this.normalizedSuggestions) && this.normalizedSuggestions.length;
972
- var renderItem = this.$slots.renderItem || this.$props.renderItem;
973
- return vue.createVNode(Container.Container, {
963
+ var renderItem = this.$scopedSlots.renderItem || this.$props.renderItem;
964
+ return h(Container.Container, {
974
965
  "class": this.$props.className
975
- }, {
976
- "default": function _default() {
977
- return [_this11.$props.title && vue.createVNode(Title.Title, {
978
- "class": getClassName(_this11.$props.innerClass, 'title') || ''
979
- }, {
980
- "default": function _default() {
981
- return [_this11.$props.title];
982
- }
983
- }), _this11.$props.autosuggest ? vue.createVNode(CancelSvg.Downshift, {
984
- "id": _this11.$props.componentId + "-downshift",
985
- "handleChange": _this11.onSuggestionSelected,
986
- "handleMouseup": _this11.handleStateChange,
987
- "isOpen": _this11.$data.isOpen
988
- }, {
989
- "default": function _default(_ref5) {
990
- var getInputEvents = _ref5.getInputEvents,
991
- getInputProps = _ref5.getInputProps,
992
- getItemProps = _ref5.getItemProps,
993
- getItemEvents = _ref5.getItemEvents,
994
- isOpen = _ref5.isOpen,
995
- highlightedIndex = _ref5.highlightedIndex,
996
- setHighlightedIndex = _ref5.setHighlightedIndex;
997
- var renderSuggestionsDropdown = function renderSuggestionsDropdown() {
998
- var getIcon = function getIcon(iconType) {
999
- switch (iconType) {
1000
- case helper.suggestionTypes.Recent:
1001
- return recentSearchesIcon;
1002
- case helper.suggestionTypes.Popular:
1003
- return popularSearchesIcon;
1004
- default:
1005
- return null;
1006
- }
1007
- };
1008
- return vue.createVNode("div", null, [_this11.hasCustomRenderer && _this11.getComponent({
1009
- isOpen: isOpen,
1010
- getItemProps: getItemProps,
1011
- getItemEvents: getItemEvents,
1012
- highlightedIndex: highlightedIndex
1013
- }), _this11.renderErrorComponent(), !_this11.hasCustomRenderer && isOpen && hasSuggestions ? vue.createVNode("ul", {
1014
- "class": Input.suggestions(_this11.themePreset, theme) + " " + getClassName(_this11.$props.innerClass, 'list')
1015
- }, [_this11.normalizedSuggestions.map(function (item, index) {
1016
- return renderItem ? vue.createVNode("li", vue.mergeProps(getItemProps({
966
+ }, [this.$props.title && h(Title.Title, {
967
+ "class": getClassName(this.$props.innerClass, 'title') || ''
968
+ }, [this.$props.title]), this.$props.autosuggest ? h(CancelSvg.Downshift, {
969
+ "attrs": {
970
+ "id": this.$props.componentId + "-downshift",
971
+ "handleChange": this.onSuggestionSelected,
972
+ "handleMouseup": this.handleStateChange,
973
+ "isOpen": this.$data.isOpen
974
+ },
975
+ "scopedSlots": {
976
+ "default": function _default(_ref5) {
977
+ var getInputEvents = _ref5.getInputEvents,
978
+ getInputProps = _ref5.getInputProps,
979
+ getItemProps = _ref5.getItemProps,
980
+ getItemEvents = _ref5.getItemEvents,
981
+ isOpen = _ref5.isOpen,
982
+ highlightedIndex = _ref5.highlightedIndex,
983
+ setHighlightedIndex = _ref5.setHighlightedIndex;
984
+ var renderSuggestionsDropdown = function renderSuggestionsDropdown() {
985
+ var getIcon = function getIcon(iconType) {
986
+ switch (iconType) {
987
+ case helper.suggestionTypes.Recent:
988
+ return recentSearchesIcon;
989
+ case helper.suggestionTypes.Popular:
990
+ return popularSearchesIcon;
991
+ default:
992
+ return null;
993
+ }
994
+ };
995
+ return h("div", [_this9.hasCustomRenderer && _this9.getComponent({
996
+ isOpen: isOpen,
997
+ getItemProps: getItemProps,
998
+ getItemEvents: getItemEvents,
999
+ highlightedIndex: highlightedIndex
1000
+ }), _this9.renderErrorComponent(), !_this9.hasCustomRenderer && isOpen && hasSuggestions ? h("ul", {
1001
+ "class": Input.suggestions(_this9.themePreset, theme) + " " + getClassName(_this9.$props.innerClass, 'list')
1002
+ }, [_this9.normalizedSuggestions.map(function (item, index) {
1003
+ return renderItem ? h("li", {
1004
+ "domProps": _rollupPluginBabelHelpers._extends({}, getItemProps({
1017
1005
  item: item
1018
- }), getItemEvents({
1006
+ })),
1007
+ "on": _rollupPluginBabelHelpers._extends({}, getItemEvents({
1019
1008
  item: item
1020
- }), {
1021
- "key": index + 1 + "-" + item.value,
1022
- "style": {
1023
- backgroundColor: _this11.getBackgroundColor(highlightedIndex, index),
1024
- justifyContent: 'flex-start',
1025
- alignItems: 'center'
1026
- }
1027
- }), [renderItem(item)]) : vue.createVNode("li", vue.mergeProps(getItemProps({
1009
+ })),
1010
+ "key": index + 1 + "-" + item.value,
1011
+ "style": {
1012
+ backgroundColor: _this9.getBackgroundColor(highlightedIndex, index),
1013
+ justifyContent: 'flex-start',
1014
+ alignItems: 'center'
1015
+ }
1016
+ }, [renderItem(item)]) : h("li", {
1017
+ "domProps": _rollupPluginBabelHelpers._extends({}, getItemProps({
1028
1018
  item: item
1029
- }), _transformOn(getItemEvents({
1019
+ })),
1020
+ "on": _rollupPluginBabelHelpers._extends({}, getItemEvents({
1030
1021
  item: item
1031
- })), {
1032
- "key": index + 1 + "-" + item.value,
1033
- "style": {
1034
- backgroundColor: _this11.getBackgroundColor(highlightedIndex, index),
1035
- justifyContent: 'flex-start',
1036
- alignItems: 'center'
1037
- }
1038
- }), [vue.createVNode("div", {
1039
- "style": {
1040
- padding: '0 10px 0 0',
1041
- display: 'flex'
1042
- }
1043
- }, [vue.createVNode(DataSearch.CustomSvg, {
1044
- "className": getClassName(_this11.$props.innerClass, item._suggestion_type + "-search-icon") || null,
1022
+ })),
1023
+ "key": index + 1 + "-" + item.value,
1024
+ "style": {
1025
+ backgroundColor: _this9.getBackgroundColor(highlightedIndex, index),
1026
+ justifyContent: 'flex-start',
1027
+ alignItems: 'center'
1028
+ }
1029
+ }, [h("div", {
1030
+ "style": {
1031
+ padding: '0 10px 0 0',
1032
+ display: 'flex'
1033
+ }
1034
+ }, [h(Tags.CustomSvg, {
1035
+ "attrs": {
1036
+ "className": getClassName(_this9.$props.innerClass, item._suggestion_type + "-search-icon") || null,
1045
1037
  "icon": getIcon(item._suggestion_type),
1046
1038
  "type": item._suggestion_type + "-search-icon"
1047
- }, null)]), vue.createVNode(DataSearch.SuggestionItem, {
1048
- "currentValue": _this11.currentValue,
1039
+ }
1040
+ })]), h(Tags.SuggestionItem, {
1041
+ "attrs": {
1042
+ "currentValue": _this9.currentValue,
1049
1043
  "suggestion": item
1050
- }, null), _this11.renderAutoFill(item)]);
1051
- })]) : _this11.renderNoSuggestions(_this11.normalizedSuggestions)]);
1052
- };
1053
- return vue.createVNode("div", {
1054
- "class": Input.suggestionsContainer
1055
- }, [vue.createVNode(DataSearch.InputGroup, null, {
1056
- "default": function _default() {
1057
- return [_this11.renderInputAddonBefore(), vue.createVNode(CancelSvg.InputWrapper, null, {
1058
- "default": function _default() {
1059
- return [vue.createVNode(Input.Input, vue.mergeProps(_transformOn(getInputEvents({
1060
- onInput: _this11.onInputChange,
1061
- onBlur: function onBlur(e) {
1062
- _this11.$emit('blur', e, _this11.triggerQuery);
1063
- },
1064
- onFocus: _this11.handleFocus,
1065
- onKeyPress: function onKeyPress(e) {
1066
- _this11.$emit('keyPress', e, _this11.triggerQuery);
1067
- _this11.$emit('key-press', e, _this11.triggerQuery);
1068
- },
1069
- onKeyDown: function onKeyDown(e) {
1070
- return _this11.handleKeyDown(e, highlightedIndex);
1071
- },
1072
- onKeyUp: function onKeyUp(e) {
1073
- _this11.$emit('keyUp', e, _this11.triggerQuery);
1074
- _this11.$emit('key-up', e, _this11.triggerQuery);
1075
- },
1076
- onClick: function onClick() {
1077
- setHighlightedIndex(null);
1078
- }
1079
- })), {
1080
- "id": _this11.$props.componentId + "-input",
1081
- "showIcon": _this11.$props.showIcon,
1082
- "showClear": _this11.$props.showClear,
1083
- "iconPosition": _this11.$props.iconPosition,
1084
- "ref": _this11.$props.innerRef,
1085
- "class": getClassName(_this11.$props.innerClass, 'input'),
1086
- "placeholder": _this11.$props.placeholder,
1087
- "autoFocus": _this11.$props.autoFocus
1088
- }, getInputProps({
1089
- value: _this11.$data.currentValue === null ? '' : _this11.$data.currentValue
1090
- }), {
1091
- "themePreset": _this11.themePreset,
1092
- "autocomplete": "off"
1093
- }), null), _this11.renderIcons(), !expandSuggestionsContainer && renderSuggestionsDropdown()];
1094
- }
1095
- }), _this11.renderInputAddonAfter(), _this11.renderEnterButtonElement()];
1096
- }
1097
- }), expandSuggestionsContainer && renderSuggestionsDropdown(), _this11.renderTags()]);
1098
- }
1099
- }) : vue.createVNode("div", {
1100
- "class": Input.suggestionsContainer
1101
- }, [vue.createVNode(DataSearch.InputGroup, null, {
1102
- "default": function _default() {
1103
- return [_this11.renderInputAddonBefore(), vue.createVNode(CancelSvg.InputWrapper, null, {
1104
- "default": function _default() {
1105
- return [vue.createVNode(Input.Input, vue.mergeProps(_transformOn({
1106
- blur: function blur(e) {
1107
- _this11.$emit('blur', e, _this11.triggerQuery);
1108
- },
1109
- keypress: function keypress(e) {
1110
- _this11.$emit('keyPress', e, _this11.triggerQuery);
1111
- _this11.$emit('key-press', e, _this11.triggerQuery);
1112
- },
1113
- input: _this11.onInputChange,
1114
- focus: function focus(e) {
1115
- _this11.$emit('focus', e, _this11.triggerQuery);
1116
- },
1117
- keydown: _this11.handleKeyDown,
1118
- keyup: function keyup(e) {
1119
- _this11.$emit('keyUp', e, _this11.triggerQuery);
1120
- _this11.$emit('key-up', e, _this11.triggerQuery);
1121
- }
1122
- }), {
1123
- "class": getClassName(_this11.$props.innerClass, 'input') || '',
1124
- "placeholder": _this11.$props.placeholder,
1125
- "autofocus": _this11.$props.autoFocus,
1126
- "value": _this11.$data.currentValue ? _this11.$data.currentValue : '',
1127
- "iconPosition": _this11.$props.iconPosition,
1128
- "showIcon": _this11.$props.showIcon,
1129
- "showClear": _this11.$props.showClear,
1130
- "ref": _this11.$props.innerRef,
1131
- "themePreset": _this11.themePreset
1132
- }), null), _this11.renderIcons()];
1044
+ }
1045
+ }), _this9.renderAutoFill(item)]);
1046
+ })]) : _this9.renderNoSuggestions(_this9.normalizedSuggestions)]);
1047
+ };
1048
+ return h("div", {
1049
+ "class": Input.suggestionsContainer
1050
+ }, [h(Tags.InputGroup, [_this9.renderInputAddonBefore(), h(CancelSvg.InputWrapper, [h(Input.Input, {
1051
+ "attrs": {
1052
+ "id": _this9.$props.componentId + "-input",
1053
+ "showIcon": _this9.$props.showIcon,
1054
+ "showClear": _this9.$props.showClear,
1055
+ "iconPosition": _this9.$props.iconPosition,
1056
+ "placeholder": _this9.$props.placeholder,
1057
+ "autoFocus": _this9.$props.autoFocus,
1058
+ "themePreset": _this9.themePreset,
1059
+ "autocomplete": "off"
1060
+ },
1061
+ "ref": _this9.$props.innerRef,
1062
+ "class": getClassName(_this9.$props.innerClass, 'input'),
1063
+ "on": _rollupPluginBabelHelpers._extends({}, getInputEvents({
1064
+ onInput: _this9.onInputChange,
1065
+ onBlur: function onBlur(e) {
1066
+ _this9.$emit('blur', e, _this9.triggerQuery);
1067
+ },
1068
+ onFocus: _this9.handleFocus,
1069
+ onKeyPress: function onKeyPress(e) {
1070
+ _this9.$emit('keyPress', e, _this9.triggerQuery);
1071
+ _this9.$emit('key-press', e, _this9.triggerQuery);
1072
+ },
1073
+ onKeyDown: function onKeyDown(e) {
1074
+ return _this9.handleKeyDown(e, highlightedIndex);
1075
+ },
1076
+ onKeyUp: function onKeyUp(e) {
1077
+ _this9.$emit('keyUp', e, _this9.triggerQuery);
1078
+ _this9.$emit('key-up', e, _this9.triggerQuery);
1079
+ },
1080
+ onClick: function onClick() {
1081
+ setHighlightedIndex(null);
1133
1082
  }
1134
- }), _this11.renderInputAddonAfter(), _this11.renderEnterButtonElement()];
1135
- }
1136
- })])];
1083
+ })),
1084
+ "domProps": _rollupPluginBabelHelpers._extends({}, getInputProps({
1085
+ value: _this9.$data.currentValue === null ? '' : _this9.$data.currentValue
1086
+ }))
1087
+ }), _this9.renderIcons(), !expandSuggestionsContainer && renderSuggestionsDropdown()]), _this9.renderInputAddonAfter(), _this9.renderEnterButtonElement()]), expandSuggestionsContainer && renderSuggestionsDropdown(), _this9.renderTags()]);
1088
+ }
1137
1089
  }
1138
- });
1090
+ }) : h("div", {
1091
+ "class": Input.suggestionsContainer
1092
+ }, [h(Tags.InputGroup, [this.renderInputAddonBefore(), h(CancelSvg.InputWrapper, [h(Input.Input, {
1093
+ "class": getClassName(this.$props.innerClass, 'input') || '',
1094
+ "attrs": {
1095
+ "placeholder": this.$props.placeholder,
1096
+ "iconPosition": this.$props.iconPosition,
1097
+ "showIcon": this.$props.showIcon,
1098
+ "showClear": this.$props.showClear,
1099
+ "themePreset": this.themePreset
1100
+ },
1101
+ "on": _rollupPluginBabelHelpers._extends({}, {
1102
+ blur: function blur(e) {
1103
+ _this9.$emit('blur', e, _this9.triggerQuery);
1104
+ },
1105
+ keypress: function keypress(e) {
1106
+ _this9.$emit('keyPress', e, _this9.triggerQuery);
1107
+ _this9.$emit('key-press', e, _this9.triggerQuery);
1108
+ },
1109
+ input: this.onInputChange,
1110
+ focus: function focus(e) {
1111
+ _this9.$emit('focus', e, _this9.triggerQuery);
1112
+ },
1113
+ keydown: this.handleKeyDown,
1114
+ keyup: function keyup(e) {
1115
+ _this9.$emit('keyUp', e, _this9.triggerQuery);
1116
+ _this9.$emit('key-up', e, _this9.triggerQuery);
1117
+ }
1118
+ }),
1119
+ "domProps": _rollupPluginBabelHelpers._extends({}, {
1120
+ autofocus: this.$props.autoFocus,
1121
+ value: this.$data.currentValue ? this.$data.currentValue : ''
1122
+ }),
1123
+ "ref": this.$props.innerRef
1124
+ }), this.renderIcons()]), this.renderInputAddonAfter(), this.renderEnterButtonElement()])])]);
1139
1125
  },
1140
1126
  destroyed: function destroyed() {
1141
1127
  document.removeEventListener('keydown', this.onKeyDown);
1142
1128
  }
1143
- });
1129
+ };
1130
+ SearchBox.hasInternalComponent = function () {
1131
+ return true;
1132
+ };
1144
1133
  SearchBox.defaultQuery = function (value, props) {
1145
1134
  var finalQuery = null;
1146
1135
  var fields = normalizeDataField(props.dataField, props.fieldWeights);
@@ -1264,309 +1253,23 @@ var SBConnected = PreferencesConsumer.PreferencesConsumer(ComponentWrapper.Compo
1264
1253
  internalComponent: true
1265
1254
  }));
1266
1255
  SBConnected.name = SearchBox.name;
1256
+ SBConnected.defaultQuery = SearchBox.defaultQuery;
1257
+ SBConnected.shouldQuery = SearchBox.shouldQuery;
1258
+ SBConnected.hasInternalComponent = SearchBox.hasInternalComponent;
1267
1259
  SBConnected.install = function (Vue) {
1268
1260
  Vue.component(SBConnected.name, SBConnected);
1269
1261
  };
1270
1262
  // Add componentType for SSR
1271
1263
  SBConnected.componentType = constants.componentTypes.searchBox;
1272
1264
 
1273
- var _excluded = ["options"];
1274
- var updateQuery$1 = configureStore.Actions.updateQuery,
1275
- setQueryOptions = configureStore.Actions.setQueryOptions,
1276
- setCustomQuery$1 = configureStore.Actions.setCustomQuery,
1277
- setDefaultQuery$1 = configureStore.Actions.setDefaultQuery;
1278
- var parseHits = configureStore.helper.parseHits,
1279
- isEqual$1 = configureStore.helper.isEqual,
1280
- getCompositeAggsQuery$1 = configureStore.helper.getCompositeAggsQuery,
1281
- getResultStats$1 = configureStore.helper.getResultStats,
1282
- extractQueryFromCustomQuery = configureStore.helper.extractQueryFromCustomQuery,
1283
- getOptionsForCustomQuery = configureStore.helper.getOptionsForCustomQuery;
1284
- var ReactiveComponent = {
1285
- name: 'ReactiveComponent',
1286
- props: {
1287
- componentId: vueTypes.types.stringRequired,
1288
- aggregationField: vueTypes.types.string,
1289
- aggregationSize: VueTypes.number,
1290
- size: VueTypes.number,
1291
- defaultQuery: vueTypes.types.func,
1292
- customQuery: vueTypes.types.func,
1293
- filterLabel: vueTypes.types.string,
1294
- react: vueTypes.types.react,
1295
- showFilter: VueTypes.bool.def(true),
1296
- URLParams: VueTypes.bool.def(false),
1297
- distinctField: vueTypes.types.string,
1298
- distinctFieldConfig: vueTypes.types.props,
1299
- index: VueTypes.string,
1300
- endpoint: vueTypes.types.endpointConfig
1301
- },
1302
- created: function created() {
1303
- var _this = this;
1304
- var props = this.$props;
1305
- this.internalComponent = null;
1306
- this.$defaultQuery = null;
1307
- // Set custom query in store
1308
- index.updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.selectedValue);
1309
- var customQuery = props.customQuery,
1310
- componentId = props.componentId,
1311
- filterLabel = props.filterLabel,
1312
- showFilter = props.showFilter,
1313
- URLParams = props.URLParams,
1314
- distinctField = props.distinctField,
1315
- distinctFieldConfig = props.distinctFieldConfig,
1316
- index$1 = props.index;
1317
- if (this.enableAppbase && this.aggregationField && this.aggregationField !== '') {
1318
- console.warn('Warning(ReactiveSearch): The `aggregationField` prop has been marked as deprecated, please use the `distinctField` prop instead.');
1319
- }
1320
- if (!this.enableAppbase && (distinctField || distinctFieldConfig)) {
1321
- console.warn('Warning(ReactiveSearch): In order to use the `distinctField` and `distinctFieldConfig` props, the `enableAppbase` prop must be set to true in `ReactiveBase`.');
1322
- }
1323
- if (!this.enableAppbase && index$1) {
1324
- console.warn('Warning(ReactiveSearch): In order to use the `index` prop, the `enableAppbase` prop must be set to true in `ReactiveBase`.');
1325
- }
1326
- if (customQuery) {
1327
- var calcCustomQuery = customQuery(this.selectedValue, props);
1328
- var query = extractQueryFromCustomQuery(calcCustomQuery);
1329
- var customQueryOptions = calcCustomQuery ? getOptionsForCustomQuery(calcCustomQuery) : null;
1330
- if (customQueryOptions) {
1331
- this.setQueryOptions(componentId, _rollupPluginBabelHelpers._extends({}, customQueryOptions, this.getAggsQuery()), false);
1332
- } else this.setQueryOptions(componentId, this.getAggsQuery(), false);
1333
- this.updateQuery({
1334
- componentId: componentId,
1335
- query: query,
1336
- value: this.selectedValue || null,
1337
- label: filterLabel,
1338
- showFilter: showFilter,
1339
- URLParams: URLParams
1340
- });
1341
- }
1342
- this.setQuery = function (_ref) {
1343
- var options = _ref.options,
1344
- obj = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, _excluded);
1345
- var queryToBeSet = obj.query;
1346
-
1347
- // when enableAppbase is true, Backend throws error because of repeated query in request body
1348
- if (queryToBeSet && queryToBeSet.query) {
1349
- queryToBeSet = queryToBeSet.query;
1350
- }
1351
- var customQueryCalc = _rollupPluginBabelHelpers._extends({}, options, {
1352
- query: queryToBeSet
1353
- });
1354
- var rsAPIQuery = customQueryCalc;
1355
- // handle stored queries
1356
- if (queryToBeSet && queryToBeSet.id) {
1357
- rsAPIQuery = queryToBeSet;
1358
- }
1359
- // Update customQuery field for RS API
1360
- _this.setCustomQuery(props.componentId, rsAPIQuery);
1361
- if (options) {
1362
- _this.setQueryOptions(props.componentId, _rollupPluginBabelHelpers._extends({}, _this.getAggsQuery(), options), false);
1363
- }
1364
- _this.updateQuery(_rollupPluginBabelHelpers._extends({}, obj, {
1365
- query: customQueryCalc.query,
1366
- componentId: props.componentId,
1367
- label: props.filterLabel,
1368
- showFilter: props.showFilter,
1369
- URLParams: props.URLParams
1370
- }));
1371
- };
1372
- if (props.defaultQuery) {
1373
- this.internalComponent = props.componentId + "__internal";
1374
- }
1375
- if (this.internalComponent && this.$props.defaultQuery) {
1376
- index.updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, this.selectedValue);
1377
- this.$defaultQuery = this.$props.defaultQuery(this.selectedValue, this.$props);
1378
- var _query = extractQueryFromCustomQuery(this.$defaultQuery);
1379
- var queryOptions = getOptionsForCustomQuery(this.$defaultQuery);
1380
- if (queryOptions) {
1381
- this.setQueryOptions(this.internalComponent, _rollupPluginBabelHelpers._extends({}, queryOptions, this.getAggsQuery()), false);
1382
- } else this.setQueryOptions(this.internalComponent, this.getAggsQuery(), false);
1383
- this.updateQuery({
1384
- componentId: this.internalComponent,
1385
- query: _query
1386
- });
1387
- }
1388
- },
1389
- watch: {
1390
- hits: function hits(newVal, oldVal) {
1391
- if (!isEqual$1(newVal, oldVal)) {
1392
- this.$emit('data', this.getData());
1393
- }
1394
- },
1395
- rawData: function rawData(newVal, oldVal) {
1396
- if (!isEqual$1(newVal, oldVal)) {
1397
- this.$emit('data', this.getData());
1398
- }
1399
- },
1400
- aggregations: function aggregations(newVal, oldVal) {
1401
- if (!isEqual$1(newVal, oldVal)) {
1402
- this.$emit('data', this.getData());
1403
- }
1404
- },
1405
- aggregationData: function aggregationData(newVal, oldVal) {
1406
- if (!isEqual$1(newVal, oldVal)) {
1407
- this.$emit('data', this.getData());
1408
- }
1409
- },
1410
- promotedResults: function promotedResults(newVal, oldVal) {
1411
- if (!isEqual$1(newVal, oldVal)) {
1412
- this.$emit('data', this.getData());
1413
- }
1414
- },
1415
- hidden: function hidden(newVal, oldVal) {
1416
- if (!isEqual$1(newVal, oldVal)) {
1417
- this.$emit('data', this.getData());
1418
- }
1419
- },
1420
- total: function total(newVal, oldVal) {
1421
- if (!isEqual$1(newVal, oldVal)) {
1422
- this.$emit('data', this.getData());
1423
- }
1424
- },
1425
- time: function time(newVal, oldVal) {
1426
- if (!isEqual$1(newVal, oldVal)) {
1427
- this.$emit('data', this.getData());
1428
- }
1429
- },
1430
- defaultQuery: function defaultQuery(newVal, oldVal) {
1431
- if (newVal && !index.isQueryIdentical(newVal, oldVal, this.selectedValue, this.$props)) {
1432
- this.$defaultQuery = newVal(this.selectedValue, this.$props);
1433
- var query = extractQueryFromCustomQuery(this.$defaultQuery);
1434
- var queryOptions = getOptionsForCustomQuery(this.$defaultQuery);
1435
- if (queryOptions) {
1436
- this.setQueryOptions(this.internalComponent, _rollupPluginBabelHelpers._extends({}, queryOptions, this.getAggsQuery()), false);
1437
- } else this.setQueryOptions(this.internalComponent, this.getAggsQuery(), false);
1438
- // Update default query for RS API
1439
- index.updateDefaultQuery(this.componentId, this.setDefaultQuery, this.$props, this.selectedValue);
1440
- this.updateQuery({
1441
- componentId: this.internalComponent,
1442
- query: query
1443
- });
1444
- }
1445
- },
1446
- customQuery: function customQuery(newVal, oldVal) {
1447
- if (newVal && !index.isQueryIdentical(newVal, oldVal, this.selectedValue, this.$props)) {
1448
- var componentId = this.$props.componentId;
1449
- this.$customQuery = newVal(this.selectedValue, this.$props);
1450
- var query = extractQueryFromCustomQuery(this.$customQuery);
1451
- var queryOptions = getOptionsForCustomQuery(this.$customQuery);
1452
- if (queryOptions) {
1453
- this.setQueryOptions(componentId, _rollupPluginBabelHelpers._extends({}, queryOptions, this.getAggsQuery()), false);
1454
- } else this.setQueryOptions(componentId, this.getAggsQuery(), false);
1455
-
1456
- // Update custom query for RS API
1457
- index.updateCustomQuery(this.componentId, this.setCustomQuery, this.$props, this.selectedValue);
1458
- this.updateQuery({
1459
- componentId: componentId,
1460
- query: query
1461
- });
1462
- }
1463
- }
1464
- },
1465
- render: function render() {
1466
- try {
1467
- var dom = this.$slots["default"];
1468
- var error = this.error,
1469
- isLoading = this.isLoading,
1470
- selectedValue = this.selectedValue;
1471
- var propsToBePassed = _rollupPluginBabelHelpers._extends({
1472
- error: error,
1473
- loading: isLoading
1474
- }, this.getData(), {
1475
- value: selectedValue,
1476
- setQuery: this.setQuery
1477
- });
1478
- return vue.createVNode("div", null, [dom(propsToBePassed)]);
1479
- } catch (e) {
1480
- return null;
1481
- }
1482
- },
1483
- methods: {
1484
- getAggsQuery: function getAggsQuery() {
1485
- if (this.aggregationField) {
1486
- return {
1487
- aggs: getCompositeAggsQuery$1({
1488
- props: this.$props,
1489
- showTopHits: true,
1490
- value: this.selectedValue
1491
- }).aggs
1492
- };
1493
- }
1494
- return {};
1495
- },
1496
- getData: function getData() {
1497
- var hits = this.hits,
1498
- aggregations = this.aggregations,
1499
- aggregationData = this.aggregationData,
1500
- promotedResults = this.promotedResults,
1501
- rawData = this.rawData;
1502
- var filteredResults = parseHits(hits);
1503
- if (promotedResults.length) {
1504
- var ids = promotedResults.map(function (item) {
1505
- return item._id;
1506
- }).filter(Boolean);
1507
- if (ids) {
1508
- filteredResults = filteredResults.filter(function (item) {
1509
- return !ids.includes(item._id);
1510
- });
1511
- }
1512
- filteredResults = [].concat(promotedResults, filteredResults);
1513
- }
1514
- return {
1515
- data: filteredResults,
1516
- aggregationData: aggregationData,
1517
- rawData: rawData,
1518
- aggregations: aggregations,
1519
- promotedData: promotedResults,
1520
- resultStats: this.stats
1521
- };
1522
- }
1523
- },
1524
- computed: {
1525
- stats: function stats() {
1526
- return getResultStats$1(this);
1527
- }
1528
- }
1529
- };
1530
- ReactiveComponent.hasInternalComponent = function (props) {
1531
- return !!props.defaultQuery;
1532
- };
1533
- var mapStateToProps$1 = function mapStateToProps(state, props) {
1534
- return {
1535
- aggregations: state.aggregations[props.componentId] && state.aggregations[props.componentId] || null,
1536
- aggregationData: state.compositeAggregations[props.componentId] || [],
1537
- hits: state.hits[props.componentId] && state.hits[props.componentId].hits || [],
1538
- rawData: state.rawData[props.componentId],
1539
- error: state.error[props.componentId],
1540
- isLoading: state.isLoading[props.componentId],
1541
- selectedValue: state.selectedValues[props.componentId] && state.selectedValues[props.componentId].value || null,
1542
- promotedResults: state.promotedResults[props.componentId] || [],
1543
- time: state.hits[props.componentId] && state.hits[props.componentId].time || 0,
1544
- total: state.hits[props.componentId] && state.hits[props.componentId].total,
1545
- hidden: state.hits[props.componentId] && state.hits[props.componentId].hidden,
1546
- componentProps: state.props[props.componentId],
1547
- enableAppbase: state.config.enableAppbase
1548
- };
1549
- };
1550
- var mapDispatchtoProps = {
1551
- setQueryOptions: setQueryOptions,
1552
- updateQuery: updateQuery$1,
1553
- setCustomQuery: setCustomQuery$1,
1554
- setDefaultQuery: setDefaultQuery$1
1555
- };
1556
- var ConnectedComponent = ComponentWrapper.ComponentWrapper(index.connect(mapStateToProps$1, mapDispatchtoProps)(ReactiveComponent), {
1557
- componentType: constants.componentTypes.reactiveComponent
1558
- });
1559
1265
  var RcConnected = PreferencesConsumer.PreferencesConsumer({
1560
1266
  name: 'RcConnected',
1561
- render: function render() {
1562
- var component = ConnectedComponent;
1267
+ render: function render(h) {
1268
+ var component = ReactiveComponent.default;
1563
1269
  switch (this.$attrs.componentType) {
1564
1270
  case constants.componentTypes.reactiveList:
1565
1271
  component = ReactiveList.RLConnected;
1566
1272
  break;
1567
- case constants.componentTypes.dataSearch:
1568
- component = DataSearch.DSConnected;
1569
- break;
1570
1273
  case constants.componentTypes.searchBox:
1571
1274
  component = SBConnected;
1572
1275
  break;
@@ -1604,21 +1307,21 @@ var RcConnected = PreferencesConsumer.PreferencesConsumer({
1604
1307
  component = RangeInput.RangeConnected;
1605
1308
  break;
1606
1309
  }
1607
- return vue.h(component, {
1310
+ return h(component, {
1608
1311
  attrs: this.$attrs,
1609
- on: this.$attrs,
1610
- scopedSlots: this.$slots,
1312
+ on: this.$listeners,
1313
+ scopedSlots: this.$scopedSlots,
1611
1314
  slots: this.$slots
1612
1315
  });
1613
1316
  }
1614
1317
  });
1615
- RcConnected.name = ReactiveComponent.name;
1318
+ RcConnected.name = 'ReactiveComponentPrivate';
1319
+ RcConnected.hasInternalComponent = ReactiveComponent.default.hasInternalComponent;
1320
+ // Add componentType for SSR
1321
+ RcConnected.componentType = constants.componentTypes.reactiveComponent;
1616
1322
  RcConnected.install = function (Vue) {
1617
1323
  Vue.component(RcConnected.name, RcConnected);
1618
1324
  };
1619
1325
 
1620
- // Add componentType for SSR
1621
- RcConnected.componentType = constants.componentTypes.reactiveComponent;
1622
-
1623
- exports.ReactiveComponent = RcConnected;
1326
+ exports.ReactiveComponentPrivate = RcConnected;
1624
1327
  exports.SearchBox = SBConnected;