@appbaseio/reactivesearch-vue 3.0.0-rc.7.1 → 3.0.0-rc.8

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.
@@ -25,10 +25,10 @@ var Flex = require('./Flex-ddde6d26.js');
25
25
  var analytics = require('@appbaseio/reactivecore/lib/actions/analytics');
26
26
  var ReactiveBase = require('./ReactiveBase.js');
27
27
  var hotkeys = _interopDefault(require('hotkeys-js'));
28
- var xss = _interopDefault(require('xss'));
29
28
  var remarkable = require('remarkable');
30
- var DropDown = require('./DropDown-dcdaf54f.js');
31
- var Input = require('./Input-df30e5fc.js');
29
+ var xss = _interopDefault(require('xss'));
30
+ var DropDown = require('./DropDown-82d92f8b.js');
31
+ var Input = require('./Input-fcd780de.js');
32
32
  var Container = require('./Container-29f049b2.js');
33
33
  var Highlight = _interopDefault(require('vue-highlight-words'));
34
34
  var query = require('@appbaseio/reactivecore/lib/actions/query');
@@ -53,7 +53,11 @@ var ResultList = require('./ResultList.js');
53
53
  var StateProvider = require('./StateProvider.js');
54
54
 
55
55
  var _templateObject;
56
- var InputGroup = vueEmotion.styled('div')(_templateObject || (_templateObject = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tdisplay: flex;\n\talign-items: stretch;\n\twidth: 100%;\n\tbox-shadow: rgb(0 0 0 / 20%) 0px 0px 6px;\n\tborder-radius: 6px;\n\n\t", "\n};\n"])), function (props) {
56
+ var InputGroup = vueEmotion.styled('div')(_templateObject || (_templateObject = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n \tdisplay: flex;\n\talign-items: stretch;\n\twidth: 100%;\n\tbox-shadow: rgb(0 0 0 / 20%) 0px 0px 6px;\n\tborder-radius: 6px;\n\n\t", "\n\t", "\n\t};\n"])), function (_ref) {
57
+ var theme = _ref.theme,
58
+ searchBox = _ref.searchBox;
59
+ return searchBox && "background-color: " + (theme.colors.backgroundColor || '#fafafa') + ";\n\t\tcolor: " + (theme.colors.textColor || '#fff') + ";\n\n\t\t&:focus-within {\n\t\t\tbackground-color: " + (theme.colors.backgroundColor || '#fff') + ";\n\t\t}";
60
+ }, function (props) {
57
61
  return props.isOpen && 'box-shadow: rgb(0 0 0 / 20%) 0px 0px 15px;';
58
62
  });
59
63
  InputGroup.defaultProps = {
@@ -785,8 +789,11 @@ var _templateObject$4, _templateObject2;
785
789
  var TagsContainer = vueEmotion.styled('div')(_templateObject$4 || (_templateObject$4 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tmargin-top: 10px;\n\twidth: 100%;\n"])));
786
790
  var TagItem = vueEmotion.styled('span')(_templateObject2 || (_templateObject2 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tcursor: default;\n\tbox-sizing: border-box;\n\tmargin: 0 4px 4px 0;\n\tcolor: #000000d9;\n\tfont-size: 14px;\n\tfont-variant: tabular-nums;\n\tline-height: 1.5715;\n\tlist-style: none;\n\tfont-feature-settings: 'tnum';\n\tdisplay: inline-block;\n\theight: auto;\n\tpadding: 0 2px 0 7px;\n\tfont-size: 12px;\n\tline-height: 22px;\n\twhite-space: nowrap;\n\tbackground: #fafafa;\n\tborder: 1px solid #d9d9d9;\n\tborder-radius: 2px;\n\topacity: 1;\n\ttransition: all 0.3s;\n\n\tspan.close-icon {\n\t\tsvg {\n\t\t\tcursor: pointer;\n\t\t\theight: 15px;\n\t\t\tposition: relative;\n\t\t\ttop: 4px;\n\t\t\tfill: #262626;\n\t\t}\n\t}\n"])));
787
791
 
788
- var _templateObject$5, _templateObject2$1, _templateObject3;
789
- var skeletonAnimation = css.keyframes(_templateObject$5 || (_templateObject$5 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n 0% {\n background-position: 100% 0;\n }\n 100% {\n background-position: -200% 0;\n }\n"])));
792
+ var _templateObject$5;
793
+ var AutosuggestFooterContainer = vueEmotion.styled('div')(_templateObject$5 || (_templateObject$5 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tdisplay: flex;\n\tjustify-content: space-between;\n\talign-items: center;\n\tcolor: #8792a2;\n\tbackground: #f7fafc;\n\tpadding: 10px;\n\theight: 40px;\n"])));
794
+
795
+ var _templateObject$6, _templateObject2$1, _templateObject3;
796
+ var skeletonAnimation = css.keyframes(_templateObject$6 || (_templateObject$6 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n 0% {\n background-position: 100% 0;\n }\n 100% {\n background-position: -200% 0;\n }\n"])));
790
797
  var SkeletonLoader = vueEmotion.styled('div')(_templateObject2$1 || (_templateObject2$1 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 10px;\n"])));
791
798
  var SkeletonLine = vueEmotion.styled('div')(_templateObject3 || (_templateObject3 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\twidth: 100%;\n\theight: 20px;\n\tbackground: linear-gradient(\n\t\t90deg,\n\t\trgba(220, 220, 220, 0.5) 25%,\n\t\trgba(240, 240, 240, 0.9) 50%,\n\t\trgba(220, 220, 220, 0.5) 75%\n\t);\n\tbackground-size: 200% 100%;\n\tanimation: ", " 1.5s infinite;\n"])), skeletonAnimation);
792
799
  var HorizontalSkeletonLoader = vue.defineComponent({
@@ -800,8 +807,8 @@ var HorizontalSkeletonLoader = vue.defineComponent({
800
807
  }
801
808
  });
802
809
 
803
- var _templateObject$6, _templateObject2$2, _templateObject3$1, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
804
- var Chatbox = vueEmotion.styled('div')(_templateObject$6 || (_templateObject$6 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tposition: relative;\n\tmargin: 0 auto;\n\tpadding: 10px;\n\tbackground-color: #fafafa;\n\twidth: 100%;\n\tbox-shadow: rgb(0 0 0 / 20%) 0px 0px 6px;\n\tborder-radius: 6px;\n\tmargin-bottom: 20px;\n\tbackground-color: ", ";\n"])), function (props) {
810
+ var _templateObject$7, _templateObject2$2, _templateObject3$1, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
811
+ var Chatbox = vueEmotion.styled('div')(_templateObject$7 || (_templateObject$7 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tposition: relative;\n\tmargin: 0 auto;\n\tpadding: 10px;\n\tbackground-color: #fafafa;\n\twidth: 100%;\n\tbox-shadow: rgb(0 0 0 / 20%) 0px 0px 6px;\n\tborder-radius: 6px;\n\tmargin-bottom: 20px;\n\tbackground-color: ", ";\n"])), function (props) {
805
812
  return props.theme && props.theme.colors ? props.theme.colors.backgroundColor : '#fff';
806
813
  });
807
814
  var ChatContainer = vueEmotion.styled('div')(_templateObject2$2 || (_templateObject2$2 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\tposition: relative;\n\t.--ai-answer-error-container {\n\t\ttext-align: center;\n\t\tposition: absolute;\n\t\tbottom: 0px;\n\t\t", ";\n\t\tz-index: 1;\n\t\tleft: 50%;\n\t\ttransform: translateX(-50%);\n\t\twidth: 100%;\n\n\t\t.--default-error-element {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\talign-items: center;\n\t\t\tpadding: 10px;\n\t\t\tbackground-color: ", ";\n\t\t\tbox-shadow: 0 -5px 5px -2px\n\t\t\t\t", ";\n\n\t\t\tspan {\n\t\t\t\tmargin-bottom: 5px;\n\t\t\t}\n\n\t\t\tbutton {\n\t\t\t}\n\t\t}\n\t}\n\n\t", ";\n"])), function (props) {
@@ -876,8 +883,8 @@ var MessageInput = vueEmotion.styled(Input.TextArea)(_templateObject9 || (_templ
876
883
  var SendButton = vueEmotion.styled(Button.Button)(_templateObject10 || (_templateObject10 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tborder: none;\n\tcolor: #ffffff;\n\tcursor: pointer;\n\tfont-size: 16px;\n\tmargin-left: 8px;\n\toutline: none;\n\tpadding: 10px;\n\ttext-align: center;\n\n\t&:disabled {\n\t\tcursor: not-allowed;\n\t}\n"])));
877
884
  var AIFeedbackContainer = vueEmotion.styled('div')(_templateObject11 || (_templateObject11 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\t.--feedback-svgs-wrapper {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: flex-end;\n\t\tgap: 5px;\n\n\t\tsvg {\n\t\t\tcursor: pointer;\n\t\t\ttransition: all ease-in 0.1s;\n\t\t\t&.selected {\n\t\t\t\ttransform: scale(1.1);\n\t\t\t\tcursor: default;\n\t\t\t}\n\n\t\t\t&:hover {\n\t\t\t\ttransform: scale(1.1);\n\t\t\t}\n\t\t}\n\t}\n\n\t.--feedback-input-wrapper {\n\t\tdisplay: flex;\n\t\tgap: 7px;\n\t}\n"])));
878
885
 
879
- var _templateObject$7, _templateObject2$3, _templateObject3$2, _templateObject4$1, _templateObject5$1, _templateObject6$1, _templateObject7$1;
880
- var fadeInFromBottom = css.keyframes(_templateObject$7 || (_templateObject$7 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n 0% {\n opacity: 0;\n transform: translateY(20px);\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n"])));
886
+ var _templateObject$8, _templateObject2$3, _templateObject3$2, _templateObject4$1, _templateObject5$1, _templateObject6$1, _templateObject7$1;
887
+ var fadeInFromBottom = css.keyframes(_templateObject$8 || (_templateObject$8 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n 0% {\n opacity: 0;\n transform: translateY(20px);\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n"])));
881
888
  var fadeInFromTop = css.keyframes(_templateObject2$3 || (_templateObject2$3 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n 0% {\n opacity: 0;\n transform: translateY(-20px);\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n"])));
882
889
  var SearchBoxAISection = vueEmotion.styled('div')(_templateObject3$2 || (_templateObject3$2 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tpadding: 10px;\n\tborder-radius: 4px;\n\tmin-height: 200px;\n\tpadding-top: 20px;\n\tposition: relative;\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: space-between;\n\tbackground-color: ", ";\n\tcolor: ", ";\n\t.--ai-answer-error-container {\n\t\tposition: absolute;\n\t\ttop: 50%;\n\t\tleft: 50%;\n\t\ttransform: translate(-50%, -50%);\n\t\t.--default-error-element {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\talign-items: center;\n\t\t\tgap: 10px;\n\t\t}\n\t}\n"])), function (_ref) {
883
890
  var themePreset = _ref.themePreset,
@@ -1073,9 +1080,6 @@ var AIFeedback = vue.defineComponent({
1073
1080
  }
1074
1081
  });
1075
1082
 
1076
- var _templateObject$8;
1077
- var AutosuggestFooterContainer = vueEmotion.styled('div')(_templateObject$8 || (_templateObject$8 = _rollupPluginBabelHelpers._taggedTemplateLiteralLoose(["\n\tdisplay: flex;\n\tjustify-content: space-between;\n\talign-items: center;\n\tcolor: #8792a2;\n\tbackground: #f7fafc;\n\tpadding: 10px;\n\theight: 40px;\n"])));
1078
-
1079
1083
  var _excluded = ["_source"];
1080
1084
  function _isSlot(s) {
1081
1085
  return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !vue.isVNode(s);
@@ -1112,8 +1116,7 @@ var SearchBox = vue.defineComponent({
1112
1116
  showAIScreen: false,
1113
1117
  showAIScreenFooter: false,
1114
1118
  showFeedbackComponent: false,
1115
- feedbackState: null,
1116
- prefilledAIAnswer: ''
1119
+ feedbackState: null
1117
1120
  };
1118
1121
  this.internalComponent = props.componentId + "__internal";
1119
1122
  return this.__state;
@@ -1155,22 +1158,11 @@ var SearchBox = vue.defineComponent({
1155
1158
  stats: function stats() {
1156
1159
  return getResultStats(this);
1157
1160
  },
1158
- mergedAIAnswer: function mergedAIAnswer() {
1159
- return this.prefilledAIAnswer || this.AIResponse && this.AIResponse.response && this.AIResponse.response.answer && this.AIResponse.response.answer.text;
1160
- },
1161
1161
  parsedSuggestions: function parsedSuggestions() {
1162
1162
  var suggestionsArray = [];
1163
1163
  if (Array.isArray(this.suggestions) && this.suggestions.length) {
1164
1164
  suggestionsArray = [].concat(withClickIds(this.suggestions));
1165
1165
  }
1166
- suggestionsArray = suggestionsArray.map(function (s) {
1167
- if (s.sectionId) {
1168
- return s;
1169
- }
1170
- return _rollupPluginBabelHelpers._extends({}, s, {
1171
- sectionId: s._suggestion_type
1172
- });
1173
- });
1174
1166
  var sectionsAccumulated = [];
1175
1167
  var sectionisedSuggestions = suggestionsArray.reduce(function (acc, d, currentIndex) {
1176
1168
  if (sectionsAccumulated.includes(d.sectionId)) return acc;
@@ -1216,11 +1208,6 @@ var SearchBox = vue.defineComponent({
1216
1208
  enableQuerySuggestions: VueTypes.bool.def(false),
1217
1209
  enablePopularSuggestions: VueTypes.bool.def(false),
1218
1210
  enableRecentSuggestions: VueTypes.bool.def(false),
1219
- enableFAQSuggestions: VueTypes.bool.def(false),
1220
- FAQSuggestionsConfig: VueTypes.shape({
1221
- sectionLabel: VueTypes.string,
1222
- size: VueTypes.number
1223
- }),
1224
1211
  fieldWeights: vueTypes.types.fieldWeights,
1225
1212
  filterLabel: vueTypes.types.string,
1226
1213
  fuzziness: vueTypes.types.fuzziness,
@@ -1457,7 +1444,7 @@ var SearchBox = vue.defineComponent({
1457
1444
  resultStats: this.stats,
1458
1445
  AIData: {
1459
1446
  question: this.AIResponse && this.AIResponse.response && this.AIResponse.response.question,
1460
- answer: this.mergedAIAnswerc,
1447
+ answer: this.AIResponse && this.AIResponse.response && this.AIResponse.response.answer && this.AIResponse.response.answer.text,
1461
1448
  documentIds: this.AIResponse && this.AIResponse.response && this.AIResponse.response.answer && this.AIResponse.response.answer.documentIds || [],
1462
1449
  showAIScreen: this.showAIScreen,
1463
1450
  sources: this.getAISourceObjects(),
@@ -1488,7 +1475,7 @@ var SearchBox = vue.defineComponent({
1488
1475
  this.onValueSelectedHandler(currentValue, reactivecore.causes.SEARCH_ICON_CLICK);
1489
1476
  }
1490
1477
  },
1491
- setValue: function setValue(value, isDefaultValue, props, cause, toggleIsOpen, categoryValue, shouldExecuteQuery) {
1478
+ setValue: function setValue(value, isDefaultValue, props, cause, toggleIsOpen, categoryValue) {
1492
1479
  var _this2 = this;
1493
1480
  if (isDefaultValue === void 0) {
1494
1481
  isDefaultValue = false;
@@ -1502,9 +1489,6 @@ var SearchBox = vue.defineComponent({
1502
1489
  if (categoryValue === void 0) {
1503
1490
  categoryValue = undefined;
1504
1491
  }
1505
- if (shouldExecuteQuery === void 0) {
1506
- shouldExecuteQuery = true;
1507
- }
1508
1492
  var performUpdate = function performUpdate() {
1509
1493
  if (_this2.$options.isTagsMode && isEqual(value, _this2.selectedTags)) {
1510
1494
  return;
@@ -1540,18 +1524,17 @@ var SearchBox = vue.defineComponent({
1540
1524
  }
1541
1525
  if (typeof _this2.currentValue === 'string') _this2.triggerDefaultQuery(_this2.currentValue, props.enableAI ? {
1542
1526
  enableAI: true
1543
- } : {}, shouldExecuteQuery);
1527
+ } : {});
1544
1528
  } // in case of strict selection only SUGGESTION_SELECT should be able
1545
1529
  // to set the query otherwise the value should reset
1546
1530
  if (props.strictSelection) {
1547
1531
  if (cause === reactivecore.causes.SUGGESTION_SELECT || (_this2.$options.isTagsMode ? _this2.selectedTags.length === 0 : value === '')) {
1548
- _this2.triggerCustomQuery(queryHandlerValue, _this2.$options.isTagsMode ? undefined : categoryValue, shouldExecuteQuery);
1532
+ _this2.triggerCustomQuery(queryHandlerValue, _this2.$options.isTagsMode ? undefined : categoryValue);
1549
1533
  } else {
1550
1534
  _this2.setValue('', true);
1551
1535
  }
1552
1536
  } else if (props.value === undefined || cause === reactivecore.causes.SUGGESTION_SELECT || cause === reactivecore.causes.CLEAR_VALUE) {
1553
- _this2.showAIScreen = false;
1554
- _this2.triggerCustomQuery(queryHandlerValue, _this2.$options.isTagsMode ? undefined : categoryValue, shouldExecuteQuery);
1537
+ _this2.triggerCustomQuery(queryHandlerValue, _this2.$options.isTagsMode ? undefined : categoryValue);
1555
1538
  }
1556
1539
  } else {
1557
1540
  // debounce for handling text while typing
@@ -1562,13 +1545,10 @@ var SearchBox = vue.defineComponent({
1562
1545
  };
1563
1546
  checkValueChange(props.componentId, value, props.beforeValueChange, performUpdate);
1564
1547
  },
1565
- triggerDefaultQuery: function triggerDefaultQuery(paramValue, meta, shouldExecuteQuery) {
1548
+ triggerDefaultQuery: function triggerDefaultQuery(paramValue, meta) {
1566
1549
  if (meta === void 0) {
1567
1550
  meta = {};
1568
1551
  }
1569
- if (shouldExecuteQuery === void 0) {
1570
- shouldExecuteQuery = true;
1571
- }
1572
1552
  if (!this.$props.autosuggest) {
1573
1553
  return;
1574
1554
  }
@@ -1589,15 +1569,12 @@ var SearchBox = vue.defineComponent({
1589
1569
  value: value,
1590
1570
  componentType: constants.componentTypes.searchBox,
1591
1571
  meta: meta
1592
- }, shouldExecuteQuery);
1572
+ });
1593
1573
  },
1594
- triggerCustomQuery: function triggerCustomQuery(paramValue, categoryValue, shouldExecuteQuery) {
1574
+ triggerCustomQuery: function triggerCustomQuery(paramValue, categoryValue) {
1595
1575
  if (categoryValue === void 0) {
1596
1576
  categoryValue = undefined;
1597
1577
  }
1598
- if (shouldExecuteQuery === void 0) {
1599
- shouldExecuteQuery = true;
1600
- }
1601
1578
  var _this$$props = this.$props,
1602
1579
  customQuery = _this$$props.customQuery,
1603
1580
  filterLabel = _this$$props.filterLabel,
@@ -1626,7 +1603,7 @@ var SearchBox = vue.defineComponent({
1626
1603
  URLParams: URLParams,
1627
1604
  componentType: constants.componentTypes.searchBox,
1628
1605
  category: categoryValue
1629
- }, shouldExecuteQuery);
1606
+ });
1630
1607
  },
1631
1608
  handleFocus: function handleFocus(event) {
1632
1609
  if (this.$props.autosuggest) {
@@ -1761,14 +1738,6 @@ var SearchBox = vue.defineComponent({
1761
1738
  },
1762
1739
  onSuggestionSelected: function onSuggestionSelected(suggestion) {
1763
1740
  var _this4 = this;
1764
- // handle when FAQ suggestion is clicked
1765
- if (suggestion && suggestion._suggestion_type === helper.suggestionTypes.FAQ) {
1766
- this.prefilledAIAnswer = suggestion._answer;
1767
- this.setValue(suggestion.value, true, this.$props, reactivecore.causes.SUGGESTION_SELECT, true, false, suggestion._category, false);
1768
- this.isOpen = true;
1769
- this.showAIScreen = true;
1770
- return;
1771
- }
1772
1741
  if (!this.$props.enableAI) this.isOpen = false;else {
1773
1742
  this.showAIScreen = true;
1774
1743
  }
@@ -1980,61 +1949,67 @@ var SearchBox = vue.defineComponent({
1980
1949
  }
1981
1950
  return '/';
1982
1951
  },
1983
- renderIcons: function renderIcons() {
1952
+ renderLeftIcons: function renderLeftIcons() {
1984
1953
  var _this7 = this;
1985
- var _slot3, _slot4, _slot5, _slot6;
1954
+ var _slot3;
1986
1955
  var _this$$props3 = this.$props,
1987
1956
  iconPosition = _this$$props3.iconPosition,
1988
- showClear = _this$$props3.showClear,
1989
- innerClass = _this$$props3.innerClass,
1990
- getMicInstance = _this$$props3.getMicInstance,
1991
- showVoiceSearch = _this$$props3.showVoiceSearch,
1992
- showIcon = _this$$props3.showIcon,
1993
- showFocusShortcutsIcon = _this$$props3.showFocusShortcutsIcon;
1957
+ showIcon = _this$$props3.showIcon;
1958
+ return vue.createVNode("div", null, [vue.createVNode(DropDown.IconGroup, {
1959
+ "groupPosition": "left"
1960
+ }, {
1961
+ "default": function _default() {
1962
+ return [iconPosition === 'left' && showIcon && vue.createVNode(DropDown.IconWrapper, {
1963
+ "onClick": _this7.handleSearchIconClick
1964
+ }, _isSlot(_slot3 = _this7.renderIcon()) ? _slot3 : {
1965
+ "default": function _default() {
1966
+ return [_slot3];
1967
+ }
1968
+ })];
1969
+ }
1970
+ })]);
1971
+ },
1972
+ renderRightIcons: function renderRightIcons() {
1973
+ var _this8 = this;
1974
+ var _slot4, _slot5, _slot6;
1975
+ var _this$$props4 = this.$props,
1976
+ iconPosition = _this$$props4.iconPosition,
1977
+ showClear = _this$$props4.showClear,
1978
+ innerClass = _this$$props4.innerClass,
1979
+ getMicInstance = _this$$props4.getMicInstance,
1980
+ showVoiceSearch = _this$$props4.showVoiceSearch,
1981
+ showIcon = _this$$props4.showIcon,
1982
+ showFocusShortcutsIcon = _this$$props4.showFocusShortcutsIcon;
1994
1983
  var renderMic = this.$slots.renderMic || this.$props.renderMic;
1995
1984
  var currentValue = this.$data.currentValue;
1996
1985
  return vue.createVNode("div", null, [vue.createVNode(DropDown.IconGroup, {
1997
- "groupPosition": "right",
1998
- "positionType": "absolute"
1986
+ "groupPosition": "right"
1999
1987
  }, {
2000
1988
  "default": function _default() {
2001
1989
  return [currentValue && showClear && vue.createVNode(DropDown.IconWrapper, {
2002
- "onClick": _this7.clearValue,
1990
+ "onClick": _this8.clearValue,
2003
1991
  "showIcon": showIcon,
2004
1992
  "isClearIcon": true
2005
- }, _isSlot(_slot3 = _this7.renderCancelIcon()) ? _slot3 : {
1993
+ }, _isSlot(_slot4 = _this8.renderCancelIcon()) ? _slot4 : {
2006
1994
  "default": function _default() {
2007
- return [_slot3];
1995
+ return [_slot4];
2008
1996
  }
2009
1997
  }), showFocusShortcutsIcon && vue.createVNode(DropDown.ButtonIconWrapper, {
2010
1998
  "onClick": function onClick(e) {
2011
- return _this7.focusSearchBox(e);
1999
+ return _this8.focusSearchBox(e);
2012
2000
  }
2013
- }, _isSlot(_slot4 = _this7.renderShortcut()) ? _slot4 : {
2001
+ }, _isSlot(_slot5 = _this8.renderShortcut()) ? _slot5 : {
2014
2002
  "default": function _default() {
2015
- return [_slot4];
2003
+ return [_slot5];
2016
2004
  }
2017
2005
  }), showVoiceSearch && vue.createVNode(Mic, {
2018
2006
  "getInstance": getMicInstance,
2019
2007
  "render": renderMic,
2020
- "handleResult": _this7.handleVoiceResults,
2008
+ "handleResult": _this8.handleVoiceResults,
2021
2009
  "className": getClassName$1(innerClass, 'mic') || null
2022
2010
  }, null), iconPosition === 'right' && showIcon && vue.createVNode(DropDown.IconWrapper, {
2023
- "onClick": _this7.handleSearchIconClick
2024
- }, _isSlot(_slot5 = _this7.renderIcon()) ? _slot5 : {
2025
- "default": function _default() {
2026
- return [_slot5];
2027
- }
2028
- })];
2029
- }
2030
- }), vue.createVNode(DropDown.IconGroup, {
2031
- "groupPosition": "left",
2032
- "positionType": "absolute"
2033
- }, {
2034
- "default": function _default() {
2035
- return [iconPosition === 'left' && showIcon && vue.createVNode(DropDown.IconWrapper, {
2036
- "onClick": _this7.handleSearchIconClick
2037
- }, _isSlot(_slot6 = _this7.renderIcon()) ? _slot6 : {
2011
+ "onClick": _this8.handleSearchIconClick
2012
+ }, _isSlot(_slot6 = _this8.renderIcon()) ? _slot6 : {
2038
2013
  "default": function _default() {
2039
2014
  return [_slot6];
2040
2015
  }
@@ -2053,7 +2028,7 @@ var SearchBox = vue.defineComponent({
2053
2028
  (_this$$refs3 = this.$refs) == null ? void 0 : (_this$$refs3$this$$pr = _this$$refs3[this.$props.innerRef]) == null ? void 0 : _this$$refs3$this$$pr.focus(); // eslint-disable-line
2054
2029
  },
2055
2030
  listenForFocusShortcuts: function listenForFocusShortcuts() {
2056
- var _this8 = this;
2031
+ var _this9 = this;
2057
2032
  var _this$$props$focusSho = this.$props.focusShortcuts,
2058
2033
  focusShortcuts = _this$$props$focusSho === void 0 ? ['/'] : _this$$props$focusSho;
2059
2034
  if (index.isEmpty(focusShortcuts)) {
@@ -2068,7 +2043,7 @@ var SearchBox = vue.defineComponent({
2068
2043
  function (event, handler) {
2069
2044
  // Prevent the default refresh event under WINDOWS system
2070
2045
  event.preventDefault();
2071
- _this8.focusSearchBox(event);
2046
+ _this9.focusSearchBox(event);
2072
2047
  });
2073
2048
 
2074
2049
  // if one of modifier keys are used, they are handled below
@@ -2078,7 +2053,7 @@ var SearchBox = vue.defineComponent({
2078
2053
  for (var index$1 = 0; index$1 < modifierKeys.length; index$1 += 1) {
2079
2054
  var element = modifierKeys[index$1];
2080
2055
  if (hotkeys[element]) {
2081
- _this8.focusSearchBox(event);
2056
+ _this9.focusSearchBox(event);
2082
2057
  break;
2083
2058
  }
2084
2059
  }
@@ -2091,10 +2066,10 @@ var SearchBox = vue.defineComponent({
2091
2066
  this.triggerDefaultQuery(value);
2092
2067
  },
2093
2068
  renderActionIcon: function renderActionIcon(suggestion) {
2094
- var _this9 = this;
2069
+ var _this10 = this;
2095
2070
  var handleAutoFillClick = function handleAutoFillClick(e) {
2096
2071
  e.stopPropagation();
2097
- _this9.onAutofillClick(suggestion);
2072
+ _this10.onAutofillClick(suggestion);
2098
2073
  };
2099
2074
  if (suggestion._suggestion_type === helper.suggestionTypes.Featured) {
2100
2075
  if (suggestion.action === helper.featuredSuggestionsActionTypes.FUNCTION) {
@@ -2117,7 +2092,7 @@ var SearchBox = vue.defineComponent({
2117
2092
  return null;
2118
2093
  },
2119
2094
  renderTag: function renderTag(item) {
2120
- var _this10 = this;
2095
+ var _this11 = this;
2121
2096
  var innerClass = this.$props.innerClass;
2122
2097
  return vue.createVNode(TagItem, {
2123
2098
  "class": getClassName$1(innerClass, 'selected-tag') || ''
@@ -2128,7 +2103,7 @@ var SearchBox = vue.defineComponent({
2128
2103
  "aria-label": "delete-tag",
2129
2104
  "class": "close-icon",
2130
2105
  "onClick": function onClick() {
2131
- return _this10.clearTag(item);
2106
+ return _this11.clearTag(item);
2132
2107
  }
2133
2108
  }, [vue.createVNode(DropDown.CancelSvg, null, null)])];
2134
2109
  }
@@ -2151,7 +2126,7 @@ var SearchBox = vue.defineComponent({
2151
2126
  }
2152
2127
  },
2153
2128
  renderTags: function renderTags() {
2154
- var _this11 = this;
2129
+ var _this12 = this;
2155
2130
  if (!Array.isArray(this.selectedTags)) {
2156
2131
  return null;
2157
2132
  }
@@ -2165,16 +2140,16 @@ var SearchBox = vue.defineComponent({
2165
2140
  }) : vue.createVNode(TagsContainer, null, {
2166
2141
  "default": function _default() {
2167
2142
  return [tagsList.map(function (item) {
2168
- return _this11.renderTag(item);
2143
+ return _this12.renderTag(item);
2169
2144
  }), shouldRenderClearAllTag && vue.createVNode(TagItem, {
2170
- "class": getClassName$1(_this11.$props.innerClass, 'selected-tag') || ''
2145
+ "class": getClassName$1(_this12.$props.innerClass, 'selected-tag') || ''
2171
2146
  }, {
2172
2147
  "default": function _default() {
2173
2148
  return [vue.createVNode("span", null, [vue.createTextVNode("Clear All")]), vue.createVNode("span", {
2174
2149
  "role": "img",
2175
2150
  "aria-label": "delete-tag",
2176
2151
  "class": "close-icon",
2177
- "onClick": _this11.clearAllTags
2152
+ "onClick": _this12.clearAllTags
2178
2153
  }, [vue.createVNode(DropDown.CancelSvg, null, null)])];
2179
2154
  }
2180
2155
  })];
@@ -2222,7 +2197,7 @@ var SearchBox = vue.defineComponent({
2222
2197
  },
2223
2198
  renderAIScreenFooter: function renderAIScreenFooter() {
2224
2199
  var _slot7;
2225
- var _this12 = this;
2200
+ var _this13 = this;
2226
2201
  var _this$$props$AIUIConf2 = this.$props.AIUIConfig,
2227
2202
  AIUIConfig = _this$$props$AIUIConf2 === void 0 ? {} : _this$$props$AIUIConf2;
2228
2203
  var _ref6 = AIUIConfig || {},
@@ -2236,9 +2211,9 @@ var SearchBox = vue.defineComponent({
2236
2211
  "themePreset": this.$props.themePreset
2237
2212
  }, {
2238
2213
  "default": function _default() {
2239
- return [vue.createTextVNode("Summary generated using the following sources:"), ' ', vue.createVNode(SourceTags, null, _isSlot(_slot7 = _this12.getAISourceObjects().map(function (el) {
2214
+ return [vue.createTextVNode("Summary generated using the following sources:"), ' ', vue.createVNode(SourceTags, null, _isSlot(_slot7 = _this13.getAISourceObjects().map(function (el) {
2240
2215
  return vue.createVNode(Button.Button, {
2241
- "class": "--ai-source-tag " + (getClassName$1(_this12.$props.innerClass, 'ai-source-tag') || ''),
2216
+ "class": "--ai-source-tag " + (getClassName$1(_this13.$props.innerClass, 'ai-source-tag') || ''),
2242
2217
  "title": el[sourceDocumentLabel],
2243
2218
  "info": true,
2244
2219
  "onClick": function onClick() {
@@ -2258,12 +2233,12 @@ var SearchBox = vue.defineComponent({
2258
2233
  }) : null;
2259
2234
  },
2260
2235
  renderAIScreen: function renderAIScreen() {
2261
- var _this13 = this;
2236
+ var _this14 = this;
2262
2237
  var customAIRenderer = this.$props.renderAIAnswer || this.$slots.renderAIAnswer;
2263
2238
  if (customAIRenderer) {
2264
2239
  return customAIRenderer({
2265
2240
  question: this.AIResponse && this.AIResponse.response && this.AIResponse.response.question,
2266
- answer: this.mergedAIAnswer,
2241
+ answer: this.AIResponse && this.AIResponse.response && this.AIResponse.response.answer && this.AIResponse.response.answer.text,
2267
2242
  documentIds: this.AIResponse && this.AIResponse.response && this.AIResponse.response.answer && this.AIResponse.response.answer.documentIds || [],
2268
2243
  loading: this.isAIResponseLoading || this.isLoading,
2269
2244
  sources: this.getAISourceObjects(),
@@ -2274,7 +2249,7 @@ var SearchBox = vue.defineComponent({
2274
2249
  return this.renderAIScreenLoader();
2275
2250
  }
2276
2251
  return vue.createVNode("div", null, [vue.createVNode(Answer, {
2277
- "innerHTML": md.render(this.mergedAIAnswer)
2252
+ "innerHTML": md.render(this.AIResponse && this.AIResponse.response && this.AIResponse.response.answer && this.AIResponse.response.answer.text)
2278
2253
  }, null), this.renderAIScreenFooter(), this.showFeedbackComponent && vue.createVNode("div", {
2279
2254
  "class": "" + (getClassName$1(this.$props.innerClass, 'ai-feedback') || '')
2280
2255
  }, [vue.createVNode(AIFeedback, {
@@ -2282,11 +2257,11 @@ var SearchBox = vue.defineComponent({
2282
2257
  "hideUI": this.isAIResponseLoading || this.isLoading || !this.sessionIdFromStore,
2283
2258
  "key": this.sessionIdFromStore,
2284
2259
  "onFeedbackSubmit": function onFeedbackSubmit(useful, reason) {
2285
- _this13.feedbackState = {
2260
+ _this14.feedbackState = {
2286
2261
  isRecorded: true,
2287
2262
  feedbackType: useful ? 'positive' : 'negative'
2288
2263
  };
2289
- _this13.recordAISessionUsefulness(_this13.sessionIdFromStore, {
2264
+ _this14.recordAISessionUsefulness(_this14.sessionIdFromStore, {
2290
2265
  useful: useful,
2291
2266
  reason: reason
2292
2267
  });
@@ -2321,22 +2296,22 @@ var SearchBox = vue.defineComponent({
2321
2296
  });
2322
2297
  },
2323
2298
  renderAskButtonElement: function renderAskButtonElement() {
2324
- var _this14 = this;
2325
- var _this$$props4 = this.$props,
2326
- AIUIConfig = _this$$props4.AIUIConfig,
2327
- innerClass = _this$$props4.innerClass;
2299
+ var _this15 = this;
2300
+ var _this$$props5 = this.$props,
2301
+ AIUIConfig = _this$$props5.AIUIConfig,
2302
+ innerClass = _this$$props5.innerClass;
2328
2303
  var _ref7 = AIUIConfig || {},
2329
2304
  askButton = _ref7.askButton;
2330
2305
  var renderAskButton = this.$slots.renderAskButton;
2331
2306
  if (askButton) {
2332
2307
  var getEnterButtonMarkup = function getEnterButtonMarkup() {
2333
2308
  if (renderAskButton) {
2334
- return renderAskButton(_this14.askButtonOnClick);
2309
+ return renderAskButton(_this15.askButtonOnClick);
2335
2310
  }
2336
2311
  return vue.createVNode(Button.Button, {
2337
2312
  "class": "enter-btn " + getClassName$1(innerClass, 'ask-button'),
2338
2313
  "info": true,
2339
- "onClick": _this14.askButtonOnClick
2314
+ "onClick": _this15.askButtonOnClick
2340
2315
  }, {
2341
2316
  "default": function _default() {
2342
2317
  return [vue.createTextVNode("Ask")];
@@ -2351,7 +2326,7 @@ var SearchBox = vue.defineComponent({
2351
2326
  }
2352
2327
  },
2353
2328
  render: function render() {
2354
- var _this15 = this;
2329
+ var _this16 = this;
2355
2330
  var expandSuggestionsContainer = this.$props.expandSuggestionsContainer;
2356
2331
  var _this$$slots = this.$slots,
2357
2332
  recentSearchesIcon = _this$$slots.recentSearchesIcon,
@@ -2362,17 +2337,17 @@ var SearchBox = vue.defineComponent({
2362
2337
  "class": this.$props.className
2363
2338
  }, {
2364
2339
  "default": function _default() {
2365
- return [_this15.$props.title && vue.createVNode(Title.Title, {
2366
- "class": getClassName$1(_this15.$props.innerClass, 'title') || ''
2340
+ return [_this16.$props.title && vue.createVNode(Title.Title, {
2341
+ "class": getClassName$1(_this16.$props.innerClass, 'title') || ''
2367
2342
  }, {
2368
2343
  "default": function _default() {
2369
- return [_this15.$props.title];
2344
+ return [_this16.$props.title];
2370
2345
  }
2371
- }), _this15.$props.autosuggest ? vue.createVNode(DropDown.Downshift, {
2372
- "id": _this15.$props.componentId + "-downshift",
2373
- "handleChange": _this15.onSuggestionSelected,
2374
- "handleMouseup": _this15.handleStateChange,
2375
- "isOpen": _this15.$data.isOpen
2346
+ }), _this16.$props.autosuggest ? vue.createVNode(DropDown.Downshift, {
2347
+ "id": _this16.$props.componentId + "-downshift",
2348
+ "handleChange": _this16.onSuggestionSelected,
2349
+ "handleMouseup": _this16.handleStateChange,
2350
+ "isOpen": _this16.$data.isOpen
2376
2351
  }, {
2377
2352
  "default": function _default(_ref8) {
2378
2353
  var getInputEvents = _ref8.getInputEvents,
@@ -2428,21 +2403,21 @@ var SearchBox = vue.defineComponent({
2428
2403
  }
2429
2404
  };
2430
2405
  var indexOffset = 0;
2431
- return vue.createVNode("div", null, [_this15.hasCustomRenderer && _this15.getComponent({
2406
+ return vue.createVNode("div", null, [_this16.hasCustomRenderer && _this16.getComponent({
2432
2407
  isOpen: isOpen,
2433
2408
  getItemProps: getItemProps,
2434
2409
  getItemEvents: getItemEvents,
2435
2410
  highlightedIndex: highlightedIndex
2436
- }), _this15.renderErrorComponent(), !_this15.hasCustomRenderer && isOpen && hasSuggestions ? vue.createVNode("ul", {
2437
- "class": Input.suggestions(_this15.themePreset, _this15.theme) + " " + getClassName$1(_this15.$props.innerClass, 'list') + " " + Input.searchboxSuggestions(_this15.themePreset, _this15.theme) + "\n\t\t\t\t\t\t\t\t\t\t\t\t\t",
2411
+ }), _this16.renderErrorComponent(), !_this16.hasCustomRenderer && isOpen && hasSuggestions ? vue.createVNode("ul", {
2412
+ "class": Input.suggestions(_this16.themePreset, _this16.theme) + " " + getClassName$1(_this16.$props.innerClass, 'list') + " " + Input.searchboxSuggestions(_this16.themePreset, _this16.theme) + "\n\t\t\t\t\t\t\t\t\t\t\t\t\t",
2438
2413
  "ref": _dropdownULRef
2439
- }, [_this15.showAIScreen && vue.createVNode(SearchBoxAISection, {
2440
- "themePreset": _this15.$props.themePreset
2414
+ }, [_this16.showAIScreen && vue.createVNode(SearchBoxAISection, {
2415
+ "themePreset": _this16.$props.themePreset
2441
2416
  }, {
2442
2417
  "default": function _default() {
2443
- return [_this15.renderAIScreen(), ' ', _this15.renderErrorComponent(true)];
2418
+ return [_this16.renderAIScreen(), ' ', _this16.renderErrorComponent(true)];
2444
2419
  }
2445
- }), !_this15.showAIScreen && _this15.parsedSuggestions.map(function (item, itemIndex) {
2420
+ }), !_this16.showAIScreen && _this16.parsedSuggestions.map(function (item, itemIndex) {
2446
2421
  var index = indexOffset + itemIndex;
2447
2422
  if (Array.isArray(item)) {
2448
2423
  var sectionHtml = xss(item[0].sectionLabel);
@@ -2450,7 +2425,7 @@ var SearchBox = vue.defineComponent({
2450
2425
  return vue.createVNode("div", {
2451
2426
  "class": "section-container"
2452
2427
  }, [sectionHtml ? vue.createVNode("div", {
2453
- "class": "section-header " + getClassName$1(_this15.$props.innerClass, 'section-label'),
2428
+ "class": "section-header " + getClassName$1(_this16.$props.innerClass, 'section-label'),
2454
2429
  "key": "" + item[0].sectionId,
2455
2430
  "innerHTML": sectionHtml
2456
2431
  }, null) : null, vue.createVNode("ul", {
@@ -2469,7 +2444,7 @@ var SearchBox = vue.defineComponent({
2469
2444
  justifyContent: 'flex-start',
2470
2445
  alignItems: 'center'
2471
2446
  },
2472
- "class": "" + (highlightedIndex === index + sectionIndex ? "active-li-item " + getClassName$1(_this15.$props.innerClass, 'active-suggestion-item') : "li-item " + getClassName$1(_this15.$props.innerClass, 'suggestion-item'))
2447
+ "class": "" + (highlightedIndex === index + sectionIndex ? "active-li-item " + getClassName$1(_this16.$props.innerClass, 'active-suggestion-item') : "li-item " + getClassName$1(_this16.$props.innerClass, 'suggestion-item'))
2473
2448
  }), [renderItem(sectionItem)]) : vue.createVNode("li", vue.mergeProps(getItemProps({
2474
2449
  item: sectionItem
2475
2450
  }), _transformOn(getItemEvents({
@@ -2480,115 +2455,132 @@ var SearchBox = vue.defineComponent({
2480
2455
  justifyContent: 'flex-start',
2481
2456
  alignItems: 'center'
2482
2457
  },
2483
- "class": "" + (highlightedIndex === index + sectionIndex ? "active-li-item " + getClassName$1(_this15.$props.innerClass, 'active-suggestion-item') : "li-item " + getClassName$1(_this15.$props.innerClass, 'suggestion-item'))
2458
+ "class": "" + (highlightedIndex === index + sectionIndex ? "active-li-item " + getClassName$1(_this16.$props.innerClass, 'active-suggestion-item') : "li-item " + getClassName$1(_this16.$props.innerClass, 'suggestion-item'))
2484
2459
  }), [vue.createVNode("div", {
2485
2460
  "style": {
2486
2461
  padding: '0 10px 0 0',
2487
2462
  display: 'flex'
2488
2463
  }
2489
2464
  }, [vue.createVNode(CustomSvg, {
2490
- "key": sectionItem._suggestion_type + "-" + sectionIndex,
2491
- "className": getClassName$1(_this15.$props.innerClass, sectionItem._suggestion_type + "-search-icon") || null,
2465
+ "className": getClassName$1(_this16.$props.innerClass, sectionItem._suggestion_type + "-search-icon") || null,
2492
2466
  "icon": getIcon(sectionItem._suggestion_type, sectionItem, suggestionsHaveIcon),
2493
2467
  "type": sectionItem._suggestion_type + "-search-icon"
2494
2468
  }, null)]), vue.createVNode(SuggestionItem, {
2495
- "currentValue": _this15.currentValue,
2469
+ "currentValue": _this16.currentValue,
2496
2470
  "suggestion": sectionItem
2497
- }, null), _this15.renderActionIcon(sectionItem)]);
2471
+ }, null), _this16.renderActionIcon(sectionItem)]);
2498
2472
  })])]);
2499
2473
  }
2500
2474
  return vue.createVNode("div", null, [vue.createTextVNode("No suggestions")]);
2501
- }), _this15.$props.showSuggestionsFooter ? _this15.suggestionsFooter() : null]) : _this15.renderNoSuggestions(_this15.normalizedSuggestions)]);
2475
+ }), _this16.$props.showSuggestionsFooter ? _this16.suggestionsFooter() : null]) : _this16.renderNoSuggestions(_this16.normalizedSuggestions)]);
2502
2476
  };
2503
2477
  return vue.createVNode("div", {
2504
2478
  "class": Input.suggestionsContainer
2505
2479
  }, [vue.createVNode(InputGroup, {
2480
+ "searchBox": true,
2506
2481
  "ref": _inputGroupRef
2507
2482
  }, {
2508
2483
  "default": function _default() {
2509
- return [_this15.renderInputAddonBefore(), vue.createVNode(DropDown.InputWrapper, null, {
2484
+ return [vue.createVNode(Input.Actions, null, {
2485
+ "default": function _default() {
2486
+ return [_this16.renderInputAddonBefore(), _this16.renderLeftIcons()];
2487
+ }
2488
+ }), vue.createVNode(DropDown.InputWrapper, null, {
2510
2489
  "default": function _default() {
2511
2490
  return [vue.createVNode(Input.TextArea, vue.mergeProps(_transformOn(getInputEvents({
2512
- onInput: _this15.onInputChange,
2491
+ onInput: _this16.onInputChange,
2513
2492
  onBlur: function onBlur(e) {
2514
- _this15.$emit('blur', e, _this15.triggerQuery);
2493
+ _this16.$emit('blur', e, _this16.triggerQuery);
2515
2494
  },
2516
- onFocus: _this15.handleFocus,
2495
+ onFocus: _this16.handleFocus,
2517
2496
  onKeyPress: function onKeyPress(e) {
2518
- _this15.$emit('keyPress', e, _this15.triggerQuery);
2519
- _this15.$emit('key-press', e, _this15.triggerQuery);
2497
+ _this16.$emit('keyPress', e, _this16.triggerQuery);
2498
+ _this16.$emit('key-press', e, _this16.triggerQuery);
2520
2499
  },
2521
2500
  onKeyDown: function onKeyDown(e) {
2522
- return _this15.handleKeyDown(e, highlightedIndex);
2501
+ return _this16.handleKeyDown(e, highlightedIndex);
2523
2502
  },
2524
2503
  onKeyUp: function onKeyUp(e) {
2525
- _this15.$emit('keyUp', e, _this15.triggerQuery);
2526
- _this15.$emit('key-up', e, _this15.triggerQuery);
2504
+ _this16.$emit('keyUp', e, _this16.triggerQuery);
2505
+ _this16.$emit('key-up', e, _this16.triggerQuery);
2527
2506
  },
2528
2507
  onClick: function onClick() {
2529
2508
  setHighlightedIndex(null);
2530
2509
  }
2531
2510
  })), {
2532
- "id": _this15.$props.componentId + "-input",
2533
- "showIcon": _this15.$props.showIcon,
2534
- "showClear": _this15.$props.showClear,
2535
- "iconPosition": _this15.$props.iconPosition,
2536
- "ref": _this15.$props.innerRef,
2537
- "class": getClassName$1(_this15.$props.innerClass, 'input'),
2538
- "placeholder": _this15.$props.placeholder,
2539
- "autoFocus": _this15.$props.autoFocus,
2540
- "showFocusShortcutsIcon": _this15.$props.showFocusShortcutsIcon,
2541
- "showVoiceSearch": _this15.$props.showVoiceSearch,
2542
- "searchBox": true
2511
+ "id": _this16.$props.componentId + "-input",
2512
+ "showIcon": _this16.$props.showIcon,
2513
+ "showClear": _this16.$props.showClear,
2514
+ "iconPosition": _this16.$props.iconPosition,
2515
+ "ref": _this16.$props.innerRef,
2516
+ "class": getClassName$1(_this16.$props.innerClass, 'input'),
2517
+ "placeholder": _this16.$props.placeholder,
2518
+ "autoFocus": _this16.$props.autoFocus,
2519
+ "searchBox": true,
2520
+ "showFocusShortcutsIcon": _this16.$props.showFocusShortcutsIcon,
2521
+ "showVoiceSearch": _this16.$props.showVoiceSearch
2543
2522
  }, getInputProps({
2544
- value: _this15.$data.currentValue === null ? '' : _this15.$data.currentValue
2523
+ value: _this16.$data.currentValue === null ? '' : _this16.$data.currentValue
2545
2524
  }), {
2546
- "themePreset": _this15.themePreset,
2525
+ "themePreset": _this16.themePreset,
2547
2526
  "autocomplete": "off"
2548
- }), null), _this15.renderIcons(), !expandSuggestionsContainer && renderSuggestionsDropdown()];
2527
+ }), null), !expandSuggestionsContainer && renderSuggestionsDropdown()];
2528
+ }
2529
+ }), vue.createVNode(Input.Actions, null, {
2530
+ "default": function _default() {
2531
+ return [_this16.renderRightIcons(), _this16.renderInputAddonAfter(), _this16.renderAskButtonElement(), _this16.renderEnterButtonElement()];
2549
2532
  }
2550
- }), _this15.renderInputAddonAfter(), _this15.renderAskButtonElement(), _this15.renderEnterButtonElement()];
2533
+ })];
2551
2534
  }
2552
- }), expandSuggestionsContainer && renderSuggestionsDropdown(), _this15.renderTags()]);
2535
+ }), expandSuggestionsContainer && renderSuggestionsDropdown(), _this16.renderTags()]);
2553
2536
  }
2554
2537
  }) : vue.createVNode("div", {
2555
2538
  "class": Input.suggestionsContainer
2556
2539
  }, [vue.createVNode(InputGroup, {
2540
+ "searchBox": true,
2557
2541
  "ref": _inputGroupRef
2558
2542
  }, {
2559
2543
  "default": function _default() {
2560
- return [_this15.renderInputAddonBefore(), vue.createVNode(DropDown.InputWrapper, null, {
2544
+ return [vue.createVNode(Input.Actions, null, {
2545
+ "default": function _default() {
2546
+ return [_this16.renderInputAddonBefore(), _this16.renderLeftIcons()];
2547
+ }
2548
+ }), vue.createVNode(DropDown.InputWrapper, null, {
2561
2549
  "default": function _default() {
2562
2550
  return [vue.createVNode(Input.TextArea, vue.mergeProps(_transformOn({
2563
2551
  blur: function blur(e) {
2564
- _this15.$emit('blur', e, _this15.triggerQuery);
2552
+ _this16.$emit('blur', e, _this16.triggerQuery);
2565
2553
  },
2566
2554
  keypress: function keypress(e) {
2567
- _this15.$emit('keyPress', e, _this15.triggerQuery);
2568
- _this15.$emit('key-press', e, _this15.triggerQuery);
2555
+ _this16.$emit('keyPress', e, _this16.triggerQuery);
2556
+ _this16.$emit('key-press', e, _this16.triggerQuery);
2569
2557
  },
2570
- input: _this15.onInputChange,
2558
+ input: _this16.onInputChange,
2571
2559
  focus: function focus(e) {
2572
- _this15.$emit('focus', e, _this15.triggerQuery);
2560
+ _this16.$emit('focus', e, _this16.triggerQuery);
2573
2561
  },
2574
- keydown: _this15.handleKeyDown,
2562
+ keydown: _this16.handleKeyDown,
2575
2563
  keyup: function keyup(e) {
2576
- _this15.$emit('keyUp', e, _this15.triggerQuery);
2577
- _this15.$emit('key-up', e, _this15.triggerQuery);
2564
+ _this16.$emit('keyUp', e, _this16.triggerQuery);
2565
+ _this16.$emit('key-up', e, _this16.triggerQuery);
2578
2566
  }
2579
2567
  }), {
2580
- "class": getClassName$1(_this15.$props.innerClass, 'input') || '',
2581
- "placeholder": _this15.$props.placeholder,
2582
- "autofocus": _this15.$props.autoFocus,
2583
- "value": _this15.$data.currentValue ? _this15.$data.currentValue : '',
2584
- "iconPosition": _this15.$props.iconPosition,
2585
- "showIcon": _this15.$props.showIcon,
2586
- "showClear": _this15.$props.showClear,
2587
- "ref": _this15.$props.innerRef,
2588
- "themePreset": _this15.themePreset
2589
- }), null), _this15.renderIcons()];
2568
+ "class": getClassName$1(_this16.$props.innerClass, 'input') || '',
2569
+ "placeholder": _this16.$props.placeholder,
2570
+ "autofocus": _this16.$props.autoFocus,
2571
+ "value": _this16.$data.currentValue ? _this16.$data.currentValue : '',
2572
+ "iconPosition": _this16.$props.iconPosition,
2573
+ "showIcon": _this16.$props.showIcon,
2574
+ "showClear": _this16.$props.showClear,
2575
+ "ref": _this16.$props.innerRef,
2576
+ "themePreset": _this16.themePreset
2577
+ }), null)];
2578
+ }
2579
+ }), vue.createVNode(Input.Actions, null, {
2580
+ "default": function _default() {
2581
+ return [_this16.renderRightIcons(), _this16.renderInputAddonAfter(), _this16.renderEnterButtonElement()];
2590
2582
  }
2591
- }), _this15.renderInputAddonAfter(), _this15.renderEnterButtonElement()];
2583
+ })];
2592
2584
  }
2593
2585
  })])];
2594
2586
  }