@appbaseio/reactivesearch-vue 3.0.4 → 3.0.5

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.
@@ -24969,7 +24969,7 @@
24969
24969
  };
24970
24970
  var suggestionsContainer = css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteralLoose(["\n\tposition: relative;\n\t.cancel-icon {\n\t\tcursor: pointer;\n\t}\n"])));
24971
24971
  var noSuggestions = function noSuggestions(themePreset, theme) {
24972
- return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteralLoose(["\n\tdisplay: block;\n\twidth: 100%;\n\tborder: 1px solid #ccc;\n\tborder-top: none;\n\tbackground-color: #fff;\n\tfont-size: 0.9rem;\n\tz-index: 3;\n\tposition: absolute;\n\tmargin: 0;\n\tpadding: 0;\n\tlist-style: none;\n\tmax-height: 260px;\n\toverflow-y: auto;\n\n\t&.small {\n\t\ttop: 30px;\n\t}\n\n\tli {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tpadding: 10px;\n\t\tuser-select: none;\n\n\t\t& > .trim {\n\t\t\tdisplay: -webkit-box;\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\t\t\tmax-height: 2.3rem;\n\t\t\tline-height: 1.2rem;\n\t\t\t-webkit-line-clamp: 2;\n\t\t\t-webkit-box-orient: vertical;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n\n\t", "\n"])), themePreset === 'dark' && theme && dark$1(theme));
24972
+ return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteralLoose(["\n\tdisplay: block;\n\twidth: 100%;\n\tborder-top: none;\n\tbackground-color: #fff;\n\tfont-size: 0.9rem;\n\tz-index: 3;\n\tposition: absolute;\n\tmargin: 0;\n\tpadding: 0;\n\tlist-style: none;\n\tmax-height: 260px;\n\toverflow-y: auto;\n border-radius: 6px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n box-shadow: rgb(0 0 0 / 20%) 0px 10px 15px;\n border-top: 1px solid #f2f0f0;\n\n\t&.small {\n\t\ttop: 30px;\n\t}\n\n\tli {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tpadding: 10px;\n\t\tuser-select: none;\n\n\t\t& > .trim {\n\t\t\tdisplay: -webkit-box;\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\t\t\tmax-height: 2.3rem;\n\t\t\tline-height: 1.2rem;\n\t\t\t-webkit-line-clamp: 2;\n\t\t\t-webkit-box-orient: vertical;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n\n\t", "\n"])), themePreset === 'dark' && theme && dark$1(theme));
24973
24973
  };
24974
24974
  var TextArea = styled('textarea')(_templateObject8 || (_templateObject8 = _taggedTemplateLiteralLoose(["\n\t", ";\n\t", ";\n\n\t", ";\n\t", ";\n\t&::-webkit-search-decoration,\n\t&::-webkit-search-cancel-button,\n\t&::-webkit-search-results-button,\n\t&::-webkit-search-results-decoration {\n\t\tdisplay: none;\n\t}\n\tresize: none;\n\toverflow: hidden;\n\theight: 42px;\n\tpadding-left: 0;\n\tpadding-right: 0;\n\tborder-color: transparent;\n\n"])), function (props) {
24975
24975
  return input(props.searchBox);
@@ -27020,7 +27020,23 @@
27020
27020
  AIUIConfig: types.AIUIConfig
27021
27021
  },
27022
27022
  mounted: function mounted() {
27023
+ var _this = this;
27023
27024
  this.listenForFocusShortcuts();
27025
+ var dropdownEle = this.$refs[_dropdownULRef];
27026
+ if (dropdownEle) {
27027
+ var handleScroll = function handleScroll() {
27028
+ var scrollTop = dropdownEle.scrollTop;
27029
+ _this.lastScrollTop = scrollTop;
27030
+ if (scrollTop < _this.lastScrollTop) {
27031
+ // User is scrolling up
27032
+ clearInterval(_this.scrollTimerRef);
27033
+ _this.isUserScrolling = true;
27034
+ }
27035
+ // Update lastScrollTop with the current scroll position
27036
+ _this.lastScrollTop = scrollTop;
27037
+ };
27038
+ dropdownEle.addEventListener('scroll', handleScroll);
27039
+ }
27024
27040
  },
27025
27041
  updated: function updated() {
27026
27042
  if (this.$props.mode === constants_5$1.SELECT && this.$options.isTagsMode === true) {
@@ -27156,9 +27172,10 @@
27156
27172
  }
27157
27173
  },
27158
27174
  isAITyping: function isAITyping(newVal, oldVal) {
27159
- var _this = this;
27175
+ var _this2 = this;
27160
27176
  var scrollAIContainer = function scrollAIContainer() {
27161
- var dropdownEle = _this.$refs[_dropdownULRef];
27177
+ if (_this2.isUserScrolling) return;
27178
+ var dropdownEle = _this2.$refs[_dropdownULRef];
27162
27179
  if (dropdownEle) {
27163
27180
  dropdownEle.scrollTo({
27164
27181
  top: dropdownEle.scrollHeight,
@@ -27167,6 +27184,7 @@
27167
27184
  }
27168
27185
  };
27169
27186
  if (!newVal && oldVal) {
27187
+ clearInterval(this.scrollTimerRef);
27170
27188
  this.showAIScreenFooter = true;
27171
27189
  if (this.$props.AIUIConfig && typeof this.$props.AIUIConfig.showFeedback === 'boolean' ? this.$props.AIUIConfig.showFeedback : true) {
27172
27190
  this.showFeedbackComponent = true;
@@ -27175,7 +27193,7 @@
27175
27193
  scrollAIContainer();
27176
27194
  }, 500);
27177
27195
  } else if (newVal) {
27178
- this.scrollTimerRef = setTimeout(function () {
27196
+ this.scrollTimerRef = setInterval(function () {
27179
27197
  scrollAIContainer();
27180
27198
  }, 2000);
27181
27199
  }
@@ -27267,7 +27285,7 @@
27267
27285
  }
27268
27286
  },
27269
27287
  setValue: function setValue(value, isDefaultValue, props, cause, toggleIsOpen, categoryValue, shouldExecuteQuery) {
27270
- var _this2 = this;
27288
+ var _this3 = this;
27271
27289
  if (isDefaultValue === void 0) {
27272
27290
  isDefaultValue = false;
27273
27291
  }
@@ -27284,65 +27302,65 @@
27284
27302
  shouldExecuteQuery = true;
27285
27303
  }
27286
27304
  var performUpdate = function performUpdate() {
27287
- if (_this2.$options.isTagsMode && isEqual$4(value, _this2.selectedTags)) {
27305
+ if (_this3.$options.isTagsMode && isEqual$4(value, _this3.selectedTags)) {
27288
27306
  return;
27289
27307
  }
27290
- if (_this2.$options.isTagsMode && cause === lib_7.SUGGESTION_SELECT) {
27291
- if (Array.isArray(_this2.selectedTags) && _this2.selectedTags.length) {
27308
+ if (_this3.$options.isTagsMode && cause === lib_7.SUGGESTION_SELECT) {
27309
+ if (Array.isArray(_this3.selectedTags) && _this3.selectedTags.length) {
27292
27310
  // check if value already present in selectedTags
27293
- if (typeof value === 'string' && _this2.selectedTags.includes(value)) {
27294
- _this2.isOpen = false;
27311
+ if (typeof value === 'string' && _this3.selectedTags.includes(value)) {
27312
+ _this3.isOpen = false;
27295
27313
  return;
27296
27314
  }
27297
- _this2.selectedTags = [].concat(_this2.selectedTags);
27315
+ _this3.selectedTags = [].concat(_this3.selectedTags);
27298
27316
  if (typeof value === 'string' && !!value) {
27299
- _this2.selectedTags.push(value);
27300
- } else if (Array.isArray(value) && !isEqual$4(_this2.selectedTags, value)) {
27301
- _this2.selectedTags = value;
27317
+ _this3.selectedTags.push(value);
27318
+ } else if (Array.isArray(value) && !isEqual$4(_this3.selectedTags, value)) {
27319
+ _this3.selectedTags = value;
27302
27320
  }
27303
27321
  } else if (value) {
27304
- _this2.selectedTags = typeof value !== 'string' ? value : [].concat(value);
27322
+ _this3.selectedTags = typeof value !== 'string' ? value : [].concat(value);
27305
27323
  }
27306
- _this2.currentValue = '';
27324
+ _this3.currentValue = '';
27307
27325
  } else {
27308
- _this2.currentValue = decodeHtml(value);
27326
+ _this3.currentValue = decodeHtml(value);
27309
27327
  }
27310
27328
  var queryHandlerValue = value;
27311
- if (_this2.$options.isTagsMode && cause === lib_7.SUGGESTION_SELECT) {
27312
- queryHandlerValue = Array.isArray(_this2.selectedTags) && _this2.selectedTags.length ? _this2.selectedTags : undefined;
27329
+ if (_this3.$options.isTagsMode && cause === lib_7.SUGGESTION_SELECT) {
27330
+ queryHandlerValue = Array.isArray(_this3.selectedTags) && _this3.selectedTags.length ? _this3.selectedTags : undefined;
27313
27331
  }
27314
- if ((_this2.faqAnswer || _this2.faqQuestion) && value === '') {
27332
+ if ((_this3.faqAnswer || _this3.faqQuestion) && value === '') {
27315
27333
  // Empty the previous state
27316
- _this2.faqAnswer = '';
27317
- _this2.faqQuestion = '';
27318
- _this2.showAIScreen = false;
27334
+ _this3.faqAnswer = '';
27335
+ _this3.faqQuestion = '';
27336
+ _this3.showAIScreen = false;
27319
27337
  }
27320
27338
  if (isDefaultValue) {
27321
- if (_this2.$props.autosuggest) {
27339
+ if (_this3.$props.autosuggest) {
27322
27340
  if (toggleIsOpen) {
27323
- _this2.isOpen = false;
27341
+ _this3.isOpen = false;
27324
27342
  }
27325
- if (typeof _this2.currentValue === 'string') _this2.triggerDefaultQuery(_this2.currentValue, props.enableAI && _this2.currentTriggerMode === constants_9$1.QUESTION && _this2.currentValue.endsWith('?') ? {
27343
+ if (typeof _this3.currentValue === 'string') _this3.triggerDefaultQuery(_this3.currentValue, props.enableAI && _this3.currentTriggerMode === constants_9$1.QUESTION && _this3.currentValue.endsWith('?') ? {
27326
27344
  enableAI: true
27327
27345
  } : {}, shouldExecuteQuery);
27328
27346
  } // in case of strict selection only SUGGESTION_SELECT should be able
27329
27347
  // to set the query otherwise the value should reset
27330
27348
  if (props.strictSelection) {
27331
- if (cause === lib_7.SUGGESTION_SELECT || (_this2.$options.isTagsMode ? _this2.selectedTags.length === 0 : value === '')) {
27332
- _this2.triggerCustomQuery(queryHandlerValue, _this2.$options.isTagsMode ? undefined : categoryValue, shouldExecuteQuery);
27349
+ if (cause === lib_7.SUGGESTION_SELECT || (_this3.$options.isTagsMode ? _this3.selectedTags.length === 0 : value === '')) {
27350
+ _this3.triggerCustomQuery(queryHandlerValue, _this3.$options.isTagsMode ? undefined : categoryValue, shouldExecuteQuery);
27333
27351
  } else {
27334
- _this2.setValue('', true);
27352
+ _this3.setValue('', true);
27335
27353
  }
27336
27354
  } else if (props.value === undefined || cause === lib_7.SUGGESTION_SELECT || cause === lib_7.CLEAR_VALUE) {
27337
- _this2.showAIScreen = false;
27338
- _this2.triggerCustomQuery(queryHandlerValue, _this2.$options.isTagsMode ? undefined : categoryValue, shouldExecuteQuery);
27355
+ _this3.showAIScreen = false;
27356
+ _this3.triggerCustomQuery(queryHandlerValue, _this3.$options.isTagsMode ? undefined : categoryValue, shouldExecuteQuery);
27339
27357
  }
27340
27358
  } else {
27341
27359
  // debounce for handling text while typing
27342
- _this2.handleTextChange(value, cause);
27360
+ _this3.handleTextChange(value, cause);
27343
27361
  }
27344
- _this2.$emit('valueChange', value);
27345
- _this2.$emit('value-change', value);
27362
+ _this3.$emit('valueChange', value);
27363
+ _this3.$emit('value-change', value);
27346
27364
  };
27347
27365
  checkValueChange(props.componentId, value, props.beforeValueChange, performUpdate);
27348
27366
  },
@@ -27491,7 +27509,7 @@
27491
27509
  this.$emit('key-down', event, this.triggerQuery);
27492
27510
  },
27493
27511
  onInputChange: function onInputChange(e) {
27494
- var _this3 = this;
27512
+ var _this4 = this;
27495
27513
  var inputValue = e.target.value;
27496
27514
  if (!this.$data.isOpen && this.$props.autosuggest) {
27497
27515
  this.isOpen = true;
@@ -27505,7 +27523,7 @@
27505
27523
  } else {
27506
27524
  this.$emit('change', inputValue, function (_ref3) {
27507
27525
  var isOpen = _ref3.isOpen;
27508
- return _this3.triggerQuery({
27526
+ return _this4.triggerQuery({
27509
27527
  defaultQuery: true,
27510
27528
  customQuery: true,
27511
27529
  value: inputValue,
@@ -27549,7 +27567,7 @@
27549
27567
  }
27550
27568
  },
27551
27569
  onSuggestionSelected: function onSuggestionSelected(suggestion) {
27552
- var _this4 = this;
27570
+ var _this5 = this;
27553
27571
  var value = this.$props.value;
27554
27572
  // The state of the suggestion is open by the time it reaches here. i.e. isOpen = true
27555
27573
  // handle when FAQ suggestion is clicked
@@ -27598,10 +27616,10 @@
27598
27616
  this.setValue(emitValue, true, this.$props, lib_7.SUGGESTION_SELECT, false, suggestion._category);
27599
27617
  this.$emit('change', emitValue, function (_ref4) {
27600
27618
  var isOpen = _ref4.isOpen;
27601
- return _this4.triggerQuery(_extends({
27619
+ return _this5.triggerQuery(_extends({
27602
27620
  isOpen: isOpen,
27603
27621
  value: emitValue
27604
- }, !_this4.$options.isTagsMode && {
27622
+ }, !_this5.$options.isTagsMode && {
27605
27623
  categoryValue: suggestion._category
27606
27624
  }));
27607
27625
  });
@@ -27641,7 +27659,7 @@
27641
27659
  return null;
27642
27660
  },
27643
27661
  renderErrorComponent: function renderErrorComponent(isAIError) {
27644
- var _this5 = this;
27662
+ var _this6 = this;
27645
27663
  if (isAIError === void 0) {
27646
27664
  isAIError = false;
27647
27665
  }
@@ -27668,7 +27686,7 @@
27668
27686
  "themePreset": this.themePreset
27669
27687
  }, {
27670
27688
  "default": function _default() {
27671
- return [isFunction(renderError) ? renderError(_this5.error) : renderError];
27689
+ return [isFunction(renderError) ? renderError(_this6.error) : renderError];
27672
27690
  }
27673
27691
  });
27674
27692
  }
@@ -27748,7 +27766,7 @@
27748
27766
  });
27749
27767
  },
27750
27768
  renderEnterButtonElement: function renderEnterButtonElement() {
27751
- var _this6 = this;
27769
+ var _this7 = this;
27752
27770
  var _this$$props2 = this.$props,
27753
27771
  enterButton = _this$$props2.enterButton,
27754
27772
  innerClass = _this$$props2.innerClass;
@@ -27756,12 +27774,12 @@
27756
27774
  if (enterButton) {
27757
27775
  var getEnterButtonMarkup = function getEnterButtonMarkup() {
27758
27776
  if (renderEnterButton) {
27759
- return renderEnterButton(_this6.enterButtonOnClick);
27777
+ return renderEnterButton(_this7.enterButtonOnClick);
27760
27778
  }
27761
27779
  return vue.createVNode(Button, {
27762
27780
  "class": "enter-btn " + getClassName$3(innerClass, 'enter-button'),
27763
27781
  "primary": true,
27764
- "onClick": _this6.enterButtonOnClick
27782
+ "onClick": _this7.enterButtonOnClick
27765
27783
  }, {
27766
27784
  "default": function _default() {
27767
27785
  return [vue.createTextVNode("Search")];
@@ -27787,7 +27805,7 @@
27787
27805
  return '/';
27788
27806
  },
27789
27807
  renderLeftIcons: function renderLeftIcons() {
27790
- var _this7 = this;
27808
+ var _this8 = this;
27791
27809
  var _slot3;
27792
27810
  var _this$$props3 = this.$props,
27793
27811
  iconPosition = _this$$props3.iconPosition,
@@ -27797,8 +27815,8 @@
27797
27815
  }, {
27798
27816
  "default": function _default() {
27799
27817
  return [iconPosition === 'left' && showIcon && vue.createVNode(IconWrapper, {
27800
- "onClick": _this7.handleSearchIconClick
27801
- }, _isSlot$5(_slot3 = _this7.renderIcon()) ? _slot3 : {
27818
+ "onClick": _this8.handleSearchIconClick
27819
+ }, _isSlot$5(_slot3 = _this8.renderIcon()) ? _slot3 : {
27802
27820
  "default": function _default() {
27803
27821
  return [_slot3];
27804
27822
  }
@@ -27807,7 +27825,7 @@
27807
27825
  })]);
27808
27826
  },
27809
27827
  renderRightIcons: function renderRightIcons() {
27810
- var _this8 = this;
27828
+ var _this9 = this;
27811
27829
  var _slot4, _slot5, _slot6;
27812
27830
  var _this$$props4 = this.$props,
27813
27831
  iconPosition = _this$$props4.iconPosition,
@@ -27824,29 +27842,29 @@
27824
27842
  }, {
27825
27843
  "default": function _default() {
27826
27844
  return [currentValue && showClear && vue.createVNode(IconWrapper, {
27827
- "onClick": _this8.clearValue,
27845
+ "onClick": _this9.clearValue,
27828
27846
  "showIcon": showIcon,
27829
27847
  "isClearIcon": true
27830
- }, _isSlot$5(_slot4 = _this8.renderCancelIcon()) ? _slot4 : {
27848
+ }, _isSlot$5(_slot4 = _this9.renderCancelIcon()) ? _slot4 : {
27831
27849
  "default": function _default() {
27832
27850
  return [_slot4];
27833
27851
  }
27834
27852
  }), showFocusShortcutsIcon && vue.createVNode(ButtonIconWrapper, {
27835
27853
  "onClick": function onClick(e) {
27836
- return _this8.focusSearchBox(e);
27854
+ return _this9.focusSearchBox(e);
27837
27855
  }
27838
- }, _isSlot$5(_slot5 = _this8.renderShortcut()) ? _slot5 : {
27856
+ }, _isSlot$5(_slot5 = _this9.renderShortcut()) ? _slot5 : {
27839
27857
  "default": function _default() {
27840
27858
  return [_slot5];
27841
27859
  }
27842
27860
  }), showVoiceSearch && vue.createVNode(Mic, {
27843
27861
  "getInstance": getMicInstance,
27844
27862
  "render": renderMic,
27845
- "handleResult": _this8.handleVoiceResults,
27863
+ "handleResult": _this9.handleVoiceResults,
27846
27864
  "className": getClassName$3(innerClass, 'mic') || null
27847
27865
  }, null), iconPosition === 'right' && showIcon && vue.createVNode(IconWrapper, {
27848
- "onClick": _this8.handleSearchIconClick
27849
- }, _isSlot$5(_slot6 = _this8.renderIcon()) ? _slot6 : {
27866
+ "onClick": _this9.handleSearchIconClick
27867
+ }, _isSlot$5(_slot6 = _this9.renderIcon()) ? _slot6 : {
27850
27868
  "default": function _default() {
27851
27869
  return [_slot6];
27852
27870
  }
@@ -27865,7 +27883,7 @@
27865
27883
  (_this$$refs4 = this.$refs) == null || (_this$$refs4 = _this$$refs4[this.$props.innerRef]) == null || (_this$$refs4 = _this$$refs4.$el) == null ? void 0 : _this$$refs4.focus(); // eslint-disable-line
27866
27884
  },
27867
27885
  listenForFocusShortcuts: function listenForFocusShortcuts() {
27868
- var _this9 = this;
27886
+ var _this10 = this;
27869
27887
  var _this$$props$focusSho = this.$props.focusShortcuts,
27870
27888
  focusShortcuts = _this$$props$focusSho === void 0 ? ['/'] : _this$$props$focusSho;
27871
27889
  if (isEmpty(focusShortcuts)) {
@@ -27880,7 +27898,7 @@
27880
27898
  function (event, handler) {
27881
27899
  // Prevent the default refresh event under WINDOWS system
27882
27900
  event.preventDefault();
27883
- _this9.focusSearchBox(event);
27901
+ _this10.focusSearchBox(event);
27884
27902
  });
27885
27903
 
27886
27904
  // if one of modifier keys are used, they are handled below
@@ -27890,7 +27908,7 @@
27890
27908
  for (var index = 0; index < modifierKeys.length; index += 1) {
27891
27909
  var element = modifierKeys[index];
27892
27910
  if (hotkeys[element]) {
27893
- _this9.focusSearchBox(event);
27911
+ _this10.focusSearchBox(event);
27894
27912
  break;
27895
27913
  }
27896
27914
  }
@@ -27903,10 +27921,10 @@
27903
27921
  this.triggerDefaultQuery(value);
27904
27922
  },
27905
27923
  renderActionIcon: function renderActionIcon(suggestion) {
27906
- var _this10 = this;
27924
+ var _this11 = this;
27907
27925
  var handleAutoFillClick = function handleAutoFillClick(e) {
27908
27926
  e.stopPropagation();
27909
- _this10.onAutofillClick(suggestion);
27927
+ _this11.onAutofillClick(suggestion);
27910
27928
  };
27911
27929
  if (suggestion._suggestion_type === helper_16.Featured) {
27912
27930
  if (suggestion.action === helper_15.FUNCTION) {
@@ -27929,7 +27947,7 @@
27929
27947
  return null;
27930
27948
  },
27931
27949
  renderTag: function renderTag(item) {
27932
- var _this11 = this;
27950
+ var _this12 = this;
27933
27951
  var innerClass = this.$props.innerClass;
27934
27952
  return vue.createVNode(TagItem, {
27935
27953
  "class": getClassName$3(innerClass, 'selected-tag') || ''
@@ -27940,7 +27958,7 @@
27940
27958
  "aria-label": "delete-tag",
27941
27959
  "class": "close-icon",
27942
27960
  "onClick": function onClick() {
27943
- return _this11.clearTag(item);
27961
+ return _this12.clearTag(item);
27944
27962
  }
27945
27963
  }, [vue.createVNode(CancelSvg, null, null)])];
27946
27964
  }
@@ -27963,7 +27981,7 @@
27963
27981
  }
27964
27982
  },
27965
27983
  renderTags: function renderTags() {
27966
- var _this12 = this;
27984
+ var _this13 = this;
27967
27985
  if (!Array.isArray(this.selectedTags)) {
27968
27986
  return null;
27969
27987
  }
@@ -27977,16 +27995,16 @@
27977
27995
  }) : vue.createVNode(TagsContainer, null, {
27978
27996
  "default": function _default() {
27979
27997
  return [tagsList.map(function (item) {
27980
- return _this12.renderTag(item);
27998
+ return _this13.renderTag(item);
27981
27999
  }), shouldRenderClearAllTag && vue.createVNode(TagItem, {
27982
- "class": getClassName$3(_this12.$props.innerClass, 'selected-tag') || ''
28000
+ "class": getClassName$3(_this13.$props.innerClass, 'selected-tag') || ''
27983
28001
  }, {
27984
28002
  "default": function _default() {
27985
28003
  return [vue.createVNode("span", null, [vue.createTextVNode("Clear All")]), vue.createVNode("span", {
27986
28004
  "role": "img",
27987
28005
  "aria-label": "delete-tag",
27988
28006
  "class": "close-icon",
27989
- "onClick": _this12.clearAllTags
28007
+ "onClick": _this13.clearAllTags
27990
28008
  }, [vue.createVNode(CancelSvg, null, null)])];
27991
28009
  }
27992
28010
  })];
@@ -27994,13 +28012,13 @@
27994
28012
  });
27995
28013
  },
27996
28014
  getAISourceObjects: function getAISourceObjects() {
27997
- var _this13 = this;
28015
+ var _this14 = this;
27998
28016
  var sourceObjects = [];
27999
28017
  if (!this.AIResponse) return sourceObjects;
28000
28018
  var docIds = this.AIResponse && this.AIResponse.response && this.AIResponse.response.answer && this.AIResponse.response.answer.documentIds || [];
28001
28019
  if (this.initialHits) {
28002
28020
  docIds.forEach(function (id) {
28003
- var foundSourceObj = _this13.initialHits.find(function (hit) {
28021
+ var foundSourceObj = _this14.initialHits.find(function (hit) {
28004
28022
  return hit._id === id;
28005
28023
  }) || {};
28006
28024
  if (foundSourceObj) {
@@ -28034,7 +28052,7 @@
28034
28052
  },
28035
28053
  renderAIScreenFooter: function renderAIScreenFooter() {
28036
28054
  var _slot8;
28037
- var _this14 = this;
28055
+ var _this15 = this;
28038
28056
  var _this$$props$AIUIConf2 = this.$props.AIUIConfig,
28039
28057
  AIUIConfig = _this$$props$AIUIConf2 === void 0 ? {} : _this$$props$AIUIConf2;
28040
28058
  var _ref6 = AIUIConfig || {},
@@ -28043,11 +28061,11 @@
28043
28061
  _ref6$onSourceClick = _ref6.onSourceClick,
28044
28062
  onSourceClick = _ref6$onSourceClick === void 0 ? function () {} : _ref6$onSourceClick;
28045
28063
  var renderSourceDocumentLabel = function renderSourceDocumentLabel(sourceObj) {
28046
- if (_this14.$props.AIUIConfig && _this14.$props.AIUIConfig.renderSourceDocument) {
28047
- return _this14.$props.AIUIConfig.renderSourceDocument(sourceObj);
28064
+ if (_this15.$props.AIUIConfig && _this15.$props.AIUIConfig.renderSourceDocument) {
28065
+ return _this15.$props.AIUIConfig.renderSourceDocument(sourceObj);
28048
28066
  }
28049
- if (_this14.$slots.renderSourceDocument) {
28050
- return _this14.$slots.renderSourceDocument(sourceObj);
28067
+ if (_this15.$slots.renderSourceDocument) {
28068
+ return _this15.$slots.renderSourceDocument(sourceObj);
28051
28069
  }
28052
28070
  return sourceObj._id;
28053
28071
  };
@@ -28055,10 +28073,10 @@
28055
28073
  "themePreset": this.$props.themePreset
28056
28074
  }, {
28057
28075
  "default": function _default() {
28058
- return [vue.createTextVNode("Summary generated using the following sources:"), ' ', vue.createVNode(SourceTags, null, _isSlot$5(_slot8 = _this14.getAISourceObjects().map(function (el) {
28076
+ return [vue.createTextVNode("Summary generated using the following sources:"), ' ', vue.createVNode(SourceTags, null, _isSlot$5(_slot8 = _this15.getAISourceObjects().map(function (el) {
28059
28077
  var _slot7;
28060
28078
  return vue.createVNode(Button, {
28061
- "class": "--ai-source-tag " + (getClassName$3(_this14.$props.innerClass, 'ai-source-tag') || ''),
28079
+ "class": "--ai-source-tag " + (getClassName$3(_this15.$props.innerClass, 'ai-source-tag') || ''),
28062
28080
  "info": true,
28063
28081
  "onClick": function onClick() {
28064
28082
  return onSourceClick && onSourceClick(el);
@@ -28077,7 +28095,7 @@
28077
28095
  }) : null;
28078
28096
  },
28079
28097
  renderAIScreen: function renderAIScreen() {
28080
- var _this15 = this;
28098
+ var _this16 = this;
28081
28099
  var customAIRenderer = this.$props.renderAIAnswer || this.$slots.renderAIAnswer;
28082
28100
  if (customAIRenderer) {
28083
28101
  return customAIRenderer({
@@ -28101,11 +28119,11 @@
28101
28119
  "hideUI": this.isAIResponseLoading || this.isLoading || !this.sessionIdFromStore,
28102
28120
  "key": this.sessionIdFromStore,
28103
28121
  "onFeedbackSubmit": function onFeedbackSubmit(useful, reason) {
28104
- _this15.feedbackState = {
28122
+ _this16.feedbackState = {
28105
28123
  isRecorded: true,
28106
28124
  feedbackType: useful ? 'positive' : 'negative'
28107
28125
  };
28108
- _this15.recordAISessionUsefulness(_this15.sessionIdFromStore, {
28126
+ _this16.recordAISessionUsefulness(_this16.sessionIdFromStore, {
28109
28127
  useful: useful,
28110
28128
  reason: reason
28111
28129
  });
@@ -28140,7 +28158,7 @@
28140
28158
  });
28141
28159
  },
28142
28160
  renderAskButtonElement: function renderAskButtonElement() {
28143
- var _this16 = this;
28161
+ var _this17 = this;
28144
28162
  var _this$$props5 = this.$props,
28145
28163
  AIUIConfig = _this$$props5.AIUIConfig,
28146
28164
  innerClass = _this$$props5.innerClass;
@@ -28150,12 +28168,12 @@
28150
28168
  if (askButton) {
28151
28169
  var getEnterButtonMarkup = function getEnterButtonMarkup() {
28152
28170
  if (renderAskButton) {
28153
- return renderAskButton(_this16.askButtonOnClick);
28171
+ return renderAskButton(_this17.askButtonOnClick);
28154
28172
  }
28155
28173
  return vue.createVNode(Button, {
28156
28174
  "class": "enter-btn " + getClassName$3(innerClass, 'ask-button'),
28157
28175
  "info": true,
28158
- "onClick": _this16.askButtonOnClick
28176
+ "onClick": _this17.askButtonOnClick
28159
28177
  }, {
28160
28178
  "default": function _default() {
28161
28179
  return [vue.createTextVNode("Ask")];
@@ -28170,28 +28188,28 @@
28170
28188
  }
28171
28189
  },
28172
28190
  render: function render() {
28173
- var _this17 = this;
28191
+ var _this18 = this;
28174
28192
  var expandSuggestionsContainer = this.$props.expandSuggestionsContainer;
28175
28193
  var _this$$slots = this.$slots,
28176
28194
  recentSearchesIcon = _this$$slots.recentSearchesIcon,
28177
28195
  popularSearchesIcon = _this$$slots.popularSearchesIcon;
28178
- var hasSuggestions = Array.isArray(this.normalizedSuggestions) && this.normalizedSuggestions.length;
28196
+ var hasSuggestions = Array.isArray(this.parsedSuggestions) && this.parsedSuggestions.length;
28179
28197
  var renderItem = this.$slots.renderItem || this.$props.renderItem;
28180
28198
  return vue.createVNode(Container, {
28181
28199
  "class": this.$props.className
28182
28200
  }, {
28183
28201
  "default": function _default() {
28184
- return [_this17.$props.title && vue.createVNode(Title, {
28185
- "class": getClassName$3(_this17.$props.innerClass, 'title') || ''
28202
+ return [_this18.$props.title && vue.createVNode(Title, {
28203
+ "class": getClassName$3(_this18.$props.innerClass, 'title') || ''
28186
28204
  }, {
28187
28205
  "default": function _default() {
28188
- return [_this17.$props.title];
28206
+ return [_this18.$props.title];
28189
28207
  }
28190
- }), _this17.$props.autosuggest ? vue.createVNode(Downshift, {
28191
- "id": _this17.$props.componentId + "-downshift",
28192
- "handleChange": _this17.onSuggestionSelected,
28193
- "handleMouseup": _this17.handleStateChange,
28194
- "isOpen": _this17.$data.isOpen
28208
+ }), _this18.$props.autosuggest ? vue.createVNode(Downshift, {
28209
+ "id": _this18.$props.componentId + "-downshift",
28210
+ "handleChange": _this18.onSuggestionSelected,
28211
+ "handleMouseup": _this18.handleStateChange,
28212
+ "isOpen": _this18.$data.isOpen
28195
28213
  }, {
28196
28214
  "default": function _default(_ref8) {
28197
28215
  var getInputEvents = _ref8.getInputEvents,
@@ -28247,21 +28265,21 @@
28247
28265
  }
28248
28266
  };
28249
28267
  var indexOffset = 0;
28250
- return vue.createVNode("div", null, [_this17.hasCustomRenderer && _this17.getComponent({
28268
+ return vue.createVNode("div", null, [_this18.hasCustomRenderer && _this18.getComponent({
28251
28269
  isOpen: isOpen,
28252
28270
  getItemProps: getItemProps,
28253
28271
  getItemEvents: getItemEvents,
28254
28272
  highlightedIndex: highlightedIndex
28255
- }), _this17.renderErrorComponent(), !_this17.hasCustomRenderer && isOpen && hasSuggestions ? vue.createVNode("ul", {
28256
- "class": suggestions$1(_this17.themePreset, _this17.theme) + " " + getClassName$3(_this17.$props.innerClass, 'list') + " " + searchboxSuggestions(_this17.themePreset, _this17.theme) + "\n\t\t\t\t\t\t\t\t\t\t\t\t\t",
28273
+ }), _this18.renderErrorComponent(), !_this18.hasCustomRenderer && isOpen && hasSuggestions ? vue.createVNode("ul", {
28274
+ "class": suggestions$1(_this18.themePreset, _this18.theme) + " " + getClassName$3(_this18.$props.innerClass, 'list') + " " + searchboxSuggestions(_this18.themePreset, _this18.theme) + "\n\t\t\t\t\t\t\t\t\t\t\t\t\t",
28257
28275
  "ref": _dropdownULRef
28258
- }, [_this17.showAIScreen && vue.createVNode(SearchBoxAISection, {
28259
- "themePreset": _this17.$props.themePreset
28276
+ }, [_this18.showAIScreen && vue.createVNode(SearchBoxAISection, {
28277
+ "themePreset": _this18.$props.themePreset
28260
28278
  }, {
28261
28279
  "default": function _default() {
28262
- return [_this17.renderAIScreen(), ' ', _this17.renderErrorComponent(true)];
28280
+ return [_this18.renderAIScreen(), ' ', _this18.renderErrorComponent(true)];
28263
28281
  }
28264
- }), !_this17.showAIScreen && _this17.parsedSuggestions.map(function (item, itemIndex) {
28282
+ }), !_this18.showAIScreen && _this18.parsedSuggestions.map(function (item, itemIndex) {
28265
28283
  var index = indexOffset + itemIndex;
28266
28284
  if (Array.isArray(item)) {
28267
28285
  var sectionHtml = lib$2(item[0].sectionLabel);
@@ -28270,7 +28288,7 @@
28270
28288
  "key": "section-" + itemIndex,
28271
28289
  "class": "section-container"
28272
28290
  }, [sectionHtml ? vue.createVNode("div", {
28273
- "class": "section-header " + getClassName$3(_this17.$props.innerClass, 'section-label'),
28291
+ "class": "section-header " + getClassName$3(_this18.$props.innerClass, 'section-label'),
28274
28292
  "key": "" + item[0].sectionId,
28275
28293
  "innerHTML": sectionHtml
28276
28294
  }, null) : null, vue.createVNode("ul", {
@@ -28290,7 +28308,7 @@
28290
28308
  justifyContent: 'flex-start',
28291
28309
  alignItems: 'center'
28292
28310
  },
28293
- "class": "" + (highlightedIndex === index + sectionIndex ? "active-li-item " + getClassName$3(_this17.$props.innerClass, 'active-suggestion-item') : "li-item " + getClassName$3(_this17.$props.innerClass, 'suggestion-item'))
28311
+ "class": "" + (highlightedIndex === index + sectionIndex ? "active-li-item " + getClassName$3(_this18.$props.innerClass, 'active-suggestion-item') : "li-item " + getClassName$3(_this18.$props.innerClass, 'suggestion-item'))
28294
28312
  }), [renderItem(sectionItem)]);
28295
28313
  }
28296
28314
  if (sectionItem._suggestion_type === '_internal_a_i_trigger') {
@@ -28304,9 +28322,9 @@
28304
28322
  justifyContent: 'flex-start',
28305
28323
  alignItems: 'center'
28306
28324
  },
28307
- "class": "" + (highlightedIndex === index + sectionIndex ? "active-li-item " + getClassName$3(_this17.$props.innerClass, 'active-suggestion-item') : "li-item " + getClassName$3(_this17.$props.innerClass, 'suggestion-item'))
28325
+ "class": "" + (highlightedIndex === index + sectionIndex ? "active-li-item " + getClassName$3(_this18.$props.innerClass, 'active-suggestion-item') : "li-item " + getClassName$3(_this18.$props.innerClass, 'suggestion-item'))
28308
28326
  }), [vue.createVNode(SuggestionItem, {
28309
- "currentValue": _this17.currentValue,
28327
+ "currentValue": _this18.currentValue,
28310
28328
  "suggestion": sectionItem
28311
28329
  }, null)]);
28312
28330
  }
@@ -28320,7 +28338,7 @@
28320
28338
  justifyContent: 'flex-start',
28321
28339
  alignItems: 'center'
28322
28340
  },
28323
- "class": "" + (highlightedIndex === index + sectionIndex ? "active-li-item " + getClassName$3(_this17.$props.innerClass, 'active-suggestion-item') : "li-item " + getClassName$3(_this17.$props.innerClass, 'suggestion-item'))
28341
+ "class": "" + (highlightedIndex === index + sectionIndex ? "active-li-item " + getClassName$3(_this18.$props.innerClass, 'active-suggestion-item') : "li-item " + getClassName$3(_this18.$props.innerClass, 'suggestion-item'))
28324
28342
  }), [vue.createVNode("div", {
28325
28343
  "style": {
28326
28344
  padding: '0 10px 0 0',
@@ -28328,74 +28346,74 @@
28328
28346
  }
28329
28347
  }, [vue.createVNode(CustomSvg, {
28330
28348
  "key": sectionItem._suggestion_type + "-" + sectionIndex,
28331
- "className": getClassName$3(_this17.$props.innerClass, sectionItem._suggestion_type + "-search-icon") || null,
28349
+ "className": getClassName$3(_this18.$props.innerClass, sectionItem._suggestion_type + "-search-icon") || null,
28332
28350
  "icon": getIcon(sectionItem._suggestion_type, sectionItem, suggestionsHaveIcon),
28333
28351
  "type": sectionItem._suggestion_type + "-search-icon"
28334
28352
  }, null)]), vue.createVNode(SuggestionItem, {
28335
- "currentValue": _this17.currentValue,
28353
+ "currentValue": _this18.currentValue,
28336
28354
  "suggestion": sectionItem
28337
- }, null), _this17.renderActionIcon(sectionItem)]);
28355
+ }, null), _this18.renderActionIcon(sectionItem)]);
28338
28356
  })])]);
28339
28357
  }
28340
28358
  return vue.createVNode("div", null, [vue.createTextVNode("No suggestions")]);
28341
- }), !_this17.showAIScreen && _this17.parsedSuggestions.length && _this17.$props.showSuggestionsFooter ? _this17.suggestionsFooter() : null]) : _this17.renderNoSuggestions(_this17.normalizedSuggestions)]);
28359
+ }), !_this18.showAIScreen && _this18.parsedSuggestions.length && _this18.$props.showSuggestionsFooter ? _this18.suggestionsFooter() : null]) : _this18.renderNoSuggestions(_this18.normalizedSuggestions)]);
28342
28360
  };
28343
28361
  return vue.createVNode("div", {
28344
28362
  "class": suggestionsContainer
28345
28363
  }, [vue.createVNode(InputGroup, {
28346
28364
  "searchBox": true,
28347
28365
  "ref": _inputGroupRef,
28348
- "isOpen": _this17.$data.isOpen
28366
+ "isOpen": _this18.$data.isOpen
28349
28367
  }, {
28350
28368
  "default": function _default() {
28351
28369
  return [vue.createVNode(Actions, null, {
28352
28370
  "default": function _default() {
28353
- return [_this17.renderInputAddonBefore(), _this17.renderLeftIcons()];
28371
+ return [_this18.renderInputAddonBefore(), _this18.renderLeftIcons()];
28354
28372
  }
28355
28373
  }), vue.createVNode(InputWrapper, null, {
28356
28374
  "default": function _default() {
28357
28375
  return [vue.createVNode(TextArea, vue.mergeProps(babelHelperVueTransformOn(getInputEvents({
28358
- onInput: _this17.onInputChange,
28376
+ onInput: _this18.onInputChange,
28359
28377
  onBlur: function onBlur(e) {
28360
- _this17.$emit('blur', e, _this17.triggerQuery);
28378
+ _this18.$emit('blur', e, _this18.triggerQuery);
28361
28379
  },
28362
- onFocus: _this17.handleFocus,
28380
+ onFocus: _this18.handleFocus,
28363
28381
  onKeyPress: function onKeyPress(e) {
28364
- _this17.$emit('keyPress', e, _this17.triggerQuery);
28365
- _this17.$emit('key-press', e, _this17.triggerQuery);
28382
+ _this18.$emit('keyPress', e, _this18.triggerQuery);
28383
+ _this18.$emit('key-press', e, _this18.triggerQuery);
28366
28384
  },
28367
28385
  onKeyDown: function onKeyDown(e) {
28368
- return _this17.handleKeyDown(e, highlightedIndex);
28386
+ return _this18.handleKeyDown(e, highlightedIndex);
28369
28387
  },
28370
28388
  onKeyUp: function onKeyUp(e) {
28371
- _this17.$emit('keyUp', e, _this17.triggerQuery);
28372
- _this17.$emit('key-up', e, _this17.triggerQuery);
28389
+ _this18.$emit('keyUp', e, _this18.triggerQuery);
28390
+ _this18.$emit('key-up', e, _this18.triggerQuery);
28373
28391
  },
28374
28392
  onClick: function onClick() {
28375
28393
  setHighlightedIndex(null);
28376
28394
  }
28377
28395
  })), {
28378
28396
  "searchBox": true,
28379
- "isOpen": _this17.$data.isOpen,
28380
- "id": _this17.$props.componentId + "-input",
28381
- "ref": _this17.$props.innerRef,
28382
- "class": getClassName$3(_this17.$props.innerClass, 'input'),
28383
- "placeholder": _this17.$props.placeholder,
28384
- "autoFocus": _this17.$props.autoFocus
28397
+ "isOpen": _this18.$data.isOpen,
28398
+ "id": _this18.$props.componentId + "-input",
28399
+ "ref": _this18.$props.innerRef,
28400
+ "class": getClassName$3(_this18.$props.innerClass, 'input'),
28401
+ "placeholder": _this18.$props.placeholder,
28402
+ "autoFocus": _this18.$props.autoFocus
28385
28403
  }, getInputProps({
28386
- value: _this17.$data.currentValue === null ? '' : _this17.$data.currentValue
28404
+ value: _this18.$data.currentValue === null ? '' : _this18.$data.currentValue
28387
28405
  }), {
28388
- "themePreset": _this17.themePreset,
28406
+ "themePreset": _this18.themePreset,
28389
28407
  "autocomplete": "off"
28390
28408
  }), null), !expandSuggestionsContainer && renderSuggestionsDropdown()];
28391
28409
  }
28392
28410
  }), vue.createVNode(Actions, null, {
28393
28411
  "default": function _default() {
28394
- return [_this17.renderRightIcons(), _this17.renderInputAddonAfter(), _this17.renderAskButtonElement(), _this17.renderEnterButtonElement()];
28412
+ return [_this18.renderRightIcons(), _this18.renderInputAddonAfter(), _this18.renderAskButtonElement(), _this18.renderEnterButtonElement()];
28395
28413
  }
28396
28414
  })];
28397
28415
  }
28398
- }), expandSuggestionsContainer && renderSuggestionsDropdown(), _this17.renderTags()]);
28416
+ }), expandSuggestionsContainer && renderSuggestionsDropdown(), _this18.renderTags()]);
28399
28417
  }
28400
28418
  }) : vue.createVNode("div", {
28401
28419
  "class": suggestionsContainer
@@ -28406,43 +28424,43 @@
28406
28424
  "default": function _default() {
28407
28425
  return [vue.createVNode(Actions, null, {
28408
28426
  "default": function _default() {
28409
- return [_this17.renderInputAddonBefore(), _this17.renderLeftIcons()];
28427
+ return [_this18.renderInputAddonBefore(), _this18.renderLeftIcons()];
28410
28428
  }
28411
28429
  }), vue.createVNode(InputWrapper, null, {
28412
28430
  "default": function _default() {
28413
28431
  return [vue.createVNode(TextArea, vue.mergeProps(babelHelperVueTransformOn({
28414
28432
  blur: function blur(e) {
28415
- _this17.$emit('blur', e, _this17.triggerQuery);
28433
+ _this18.$emit('blur', e, _this18.triggerQuery);
28416
28434
  },
28417
28435
  keypress: function keypress(e) {
28418
- _this17.$emit('keyPress', e, _this17.triggerQuery);
28419
- _this17.$emit('key-press', e, _this17.triggerQuery);
28436
+ _this18.$emit('keyPress', e, _this18.triggerQuery);
28437
+ _this18.$emit('key-press', e, _this18.triggerQuery);
28420
28438
  },
28421
- input: _this17.onInputChange,
28439
+ input: _this18.onInputChange,
28422
28440
  focus: function focus(e) {
28423
- _this17.$emit('focus', e, _this17.triggerQuery);
28441
+ _this18.$emit('focus', e, _this18.triggerQuery);
28424
28442
  },
28425
- keydown: _this17.handleKeyDown,
28443
+ keydown: _this18.handleKeyDown,
28426
28444
  keyup: function keyup(e) {
28427
- _this17.$emit('keyUp', e, _this17.triggerQuery);
28428
- _this17.$emit('key-up', e, _this17.triggerQuery);
28445
+ _this18.$emit('keyUp', e, _this18.triggerQuery);
28446
+ _this18.$emit('key-up', e, _this18.triggerQuery);
28429
28447
  }
28430
28448
  }), {
28431
28449
  "searchBox": true,
28432
- "class": getClassName$3(_this17.$props.innerClass, 'input') || '',
28433
- "placeholder": _this17.$props.placeholder,
28434
- "autofocus": _this17.$props.autoFocus,
28435
- "value": _this17.$data.currentValue ? _this17.$data.currentValue : '',
28436
- "iconPosition": _this17.$props.iconPosition,
28437
- "showIcon": _this17.$props.showIcon,
28438
- "showClear": _this17.$props.showClear,
28439
- "ref": _this17.$props.innerRef,
28440
- "themePreset": _this17.themePreset
28450
+ "class": getClassName$3(_this18.$props.innerClass, 'input') || '',
28451
+ "placeholder": _this18.$props.placeholder,
28452
+ "autofocus": _this18.$props.autoFocus,
28453
+ "value": _this18.$data.currentValue ? _this18.$data.currentValue : '',
28454
+ "iconPosition": _this18.$props.iconPosition,
28455
+ "showIcon": _this18.$props.showIcon,
28456
+ "showClear": _this18.$props.showClear,
28457
+ "ref": _this18.$props.innerRef,
28458
+ "themePreset": _this18.themePreset
28441
28459
  }), null)];
28442
28460
  }
28443
28461
  }), vue.createVNode(Actions, null, {
28444
28462
  "default": function _default() {
28445
- return [_this17.renderRightIcons(), _this17.renderInputAddonAfter(), _this17.renderEnterButtonElement()];
28463
+ return [_this18.renderRightIcons(), _this18.renderInputAddonAfter(), _this18.renderEnterButtonElement()];
28446
28464
  }
28447
28465
  })];
28448
28466
  }
@@ -44235,7 +44253,7 @@
44235
44253
  }, queryString, renderFunction);
44236
44254
  }
44237
44255
 
44238
- var version = "3.0.4";
44256
+ var version = "3.0.5";
44239
44257
 
44240
44258
  var components = [RLConnected, ResultCard, ResultList, ReactiveBase, SBConnected, ListConnected, ListConnected$1, RangeConnected$1, RangeConnected$2, RangeConnected$3, RangeConnected, RcConnected, RcConnected$1, RcConnected$2, TBConnected, ListConnected$2, ListConnected$3, StateProviderConnected, RangeConnected$4, TreeListConnected, AIConnected];
44241
44259
  function install$1 (Vue) {