@appbaseio/reactivesearch-vue 1.35.3 → 1.35.4

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.
@@ -18720,8 +18720,7 @@
18720
18720
  selectedTags: [],
18721
18721
  isOpen: false,
18722
18722
  normalizedSuggestions: [],
18723
- isPending: false,
18724
- isSuggestionSelected: false
18723
+ isPending: false
18725
18724
  };
18726
18725
  this.internalComponent = props.componentId + "__internal";
18727
18726
  return this.__state;
@@ -18961,12 +18960,23 @@
18961
18960
  this.updateQueryHandler(this.componentId, this.$data.currentValue, this.$props);
18962
18961
  }
18963
18962
  },
18963
+ isLoading: function isLoading(newVal) {
18964
+ if (newVal) {
18965
+ this.suggestions = [];
18966
+ }
18967
+ },
18964
18968
  suggestions: function suggestions(newVal) {
18969
+ if (this.isLoading) {
18970
+ this.normalizedSuggestions = [];
18971
+ return;
18972
+ }
18965
18973
  if (Array.isArray(newVal) && this.$data.currentValue.trim().length) {
18966
18974
  // shallow check allows us to set suggestions even if the next set
18967
18975
  // of suggestions are same as the current one
18968
18976
  this.$emit('suggestions', newVal);
18969
- this.normalizedSuggestions = this.onSuggestions(newVal);
18977
+ if (!isEqual$4(this.normalizedSuggestions, newVal)) {
18978
+ this.normalizedSuggestions = this.onSuggestions(newVal);
18979
+ }
18970
18980
  }
18971
18981
  },
18972
18982
  selectedValue: function selectedValue(newVal, oldVal) {
@@ -19100,13 +19110,10 @@
19100
19110
  return;
19101
19111
  }
19102
19112
  // Refresh recent searches when value becomes empty
19103
- if (!value && props.enableDefaultSuggestions === false) {
19104
- _this.resetStoreForComponent(props.componentId);
19105
- } else if (!value && _this.currentValue && _this.enableRecentSearches) {
19113
+ if (props.enableDefaultSuggestions && !value && _this.currentValue && _this.enableRecentSearches) {
19106
19114
  _this.getRecentSearches();
19107
19115
  }
19108
19116
  if (isTagsMode) {
19109
- var isTagAdded = false;
19110
19117
  if (Array.isArray(_this.selectedTags) && _this.selectedTags.length) {
19111
19118
  // check if value already present in selectedTags
19112
19119
  if (typeof value === 'string' && _this.selectedTags.includes(value)) {
@@ -19115,36 +19122,14 @@
19115
19122
  }
19116
19123
  _this.selectedTags = [].concat(_this.selectedTags);
19117
19124
  if (typeof value === 'string' && !!value) {
19118
- if (props.strictSelection && cause === lib_7.SUGGESTION_SELECT) {
19119
- _this.selectedTags.push(value);
19120
- isTagAdded = true;
19121
- } else if (!props.strictSelection) {
19122
- _this.selectedTags.push(value);
19123
- isTagAdded = true;
19124
- }
19125
+ _this.selectedTags.push(value);
19125
19126
  } else if (Array.isArray(value) && !isEqual$4(_this.selectedTags, value)) {
19126
- if (props.strictSelection && cause === lib_7.SUGGESTION_SELECT) {
19127
- _this.selectedTags = value;
19128
- isTagAdded = true;
19129
- } else if (!props.strictSelection) {
19130
- _this.selectedTags.push(value);
19131
- isTagAdded = true;
19132
- }
19127
+ _this.selectedTags = value;
19133
19128
  }
19134
19129
  } else if (value) {
19135
- if (props.strictSelection && cause === lib_7.SUGGESTION_SELECT) {
19136
- _this.selectedTags = typeof value !== 'string' ? value : [].concat(value);
19137
- isTagAdded = true;
19138
- } else if (!props.strictSelection) {
19139
- _this.selectedTags = typeof value !== 'string' ? value : [].concat(value);
19140
- isTagAdded = true;
19141
- }
19142
- }
19143
- if (props.strictSelection && !isTagAdded) {
19144
- _this.currentValue = value;
19145
- } else {
19146
- _this.currentValue = '';
19130
+ _this.selectedTags = typeof value !== 'string' ? value : [].concat(value);
19147
19131
  }
19132
+ _this.currentValue = '';
19148
19133
  } else {
19149
19134
  _this.currentValue = value;
19150
19135
  }
@@ -19164,7 +19149,7 @@
19164
19149
  if (props.strictSelection && props.autosuggest) {
19165
19150
  if (cause === lib_7.SUGGESTION_SELECT || props.value !== undefined) {
19166
19151
  _this.updateQueryHandler(props.componentId, queryHandlerValue, props);
19167
- } else if (_this.currentValue !== '' && !props.strictSelection) {
19152
+ } else if (_this.currentValue !== '') {
19168
19153
  _this.setValue('', true);
19169
19154
  }
19170
19155
  } else {
@@ -19183,7 +19168,7 @@
19183
19168
  _this.$emit('suggestions', _this.suggestions);
19184
19169
  } else if (!value) {
19185
19170
  // reset suggestions
19186
- _this.suggestions = [];
19171
+ // this.suggestions = [];
19187
19172
  // invoke on suggestions
19188
19173
  _this.$emit('suggestions', _this.suggestions);
19189
19174
  }
@@ -19194,11 +19179,6 @@
19194
19179
  if (props === void 0) {
19195
19180
  props = this.$props;
19196
19181
  }
19197
- if (!value && props.enableDefaultSuggestions === false) {
19198
- // clear Component data from store
19199
- this.resetStoreForComponent(props.componentId);
19200
- return;
19201
- }
19202
19182
  var defaultQueryOptions;
19203
19183
  var query = DataSearch.defaultQuery(value, props);
19204
19184
  if (this.defaultQuery) {
@@ -19293,17 +19273,17 @@
19293
19273
  var targetValue = event.target.value;
19294
19274
  var _this$$props2 = this.$props,
19295
19275
  value = _this$$props2.value,
19296
- size = _this$$props2.size;
19276
+ strictSelection = _this$$props2.strictSelection,
19277
+ size = _this$$props2.size,
19278
+ autosuggest = _this$$props2.autosuggest;
19297
19279
  if (value !== undefined) {
19298
19280
  this.isPending = true;
19299
19281
  }
19300
19282
  // if a suggestion was selected, delegate the handling to suggestion handler
19301
19283
  if (event.key === 'Enter' && (highlightedIndex === null || highlightedIndex < 0 || highlightedIndex === [].concat([].concat(this.suggestionsList).slice(0, size || 10), this.defaultSearchSuggestions, this.topSuggestions).length)) {
19302
19284
  this.isPending = false;
19303
- if (!this.isSuggestionSelected) {
19304
- this.setValue(targetValue, true, this.$props, undefined, false);
19305
- this.onValueSelectedHandler(targetValue, lib_7.ENTER_PRESS);
19306
- }
19285
+ this.setValue(this.$options.isTagsMode && autosuggest && strictSelection ? '' : targetValue, true, this.$props, undefined, false);
19286
+ this.onValueSelectedHandler(targetValue, lib_7.ENTER_PRESS);
19307
19287
  }
19308
19288
  // Need to review
19309
19289
  this.$emit('keyDown', event, this.triggerQuery);
@@ -19339,16 +19319,11 @@
19339
19319
  }
19340
19320
  },
19341
19321
  onSuggestionSelected: function onSuggestionSelected(suggestion) {
19342
- var _this3 = this;
19343
19322
  var value = this.$props.value;
19344
19323
  // Record analytics for selected suggestions
19345
19324
  this.triggerClickAnalytics(suggestion._click_id);
19346
19325
  if (value === undefined) {
19347
19326
  this.setValue(suggestion.value, true, this.$props, lib_7.SUGGESTION_SELECT);
19348
- this.isSuggestionSelected = true;
19349
- setTimeout(function () {
19350
- _this3.isSuggestionSelected = false;
19351
- }, 50);
19352
19327
  } else if (this.$options.isTagsMode) {
19353
19328
  var emitValue = Array.isArray(this.selectedTags) ? [].concat(this.selectedTags) : [];
19354
19329
  if (this.selectedTags.includes(suggestion.value)) {
@@ -19454,7 +19429,7 @@
19454
19429
  return null;
19455
19430
  },
19456
19431
  renderTag: function renderTag(item) {
19457
- var _this4 = this;
19432
+ var _this3 = this;
19458
19433
  var h = this.$createElement;
19459
19434
  var innerClass = this.$props.innerClass;
19460
19435
  return h(TagItem, {
@@ -19467,7 +19442,7 @@
19467
19442
  "class": "close-icon",
19468
19443
  "on": {
19469
19444
  "click": function click() {
19470
- return _this4.clearTag(item);
19445
+ return _this3.clearTag(item);
19471
19446
  }
19472
19447
  }
19473
19448
  }, [h(CancelSvg)])]);
@@ -19489,7 +19464,7 @@
19489
19464
  }
19490
19465
  },
19491
19466
  renderTags: function renderTags() {
19492
- var _this5 = this;
19467
+ var _this4 = this;
19493
19468
  var h = this.$createElement;
19494
19469
  if (!Array.isArray(this.selectedTags)) {
19495
19470
  return null;
@@ -19502,7 +19477,7 @@
19502
19477
  handleClear: this.clearTag,
19503
19478
  handleClearAll: this.clearAllTags
19504
19479
  }) : h(TagsContainer, [tagsList.map(function (item) {
19505
- return _this5.renderTag(item);
19480
+ return _this4.renderTag(item);
19506
19481
  }), shouldRenderClearAllTag && h(TagItem, {
19507
19482
  "class": getClassName$3(this.$props.innerClass, 'selected-tag') || ''
19508
19483
  }, [h("span", ["Clear All"]), h("span", {
@@ -19581,7 +19556,7 @@
19581
19556
  (_this$$refs = this.$refs) == null || (_this$$refs = _this$$refs[this.$props.innerRef]) == null ? void 0 : _this$$refs.focus(); // eslint-disable-line
19582
19557
  },
19583
19558
  listenForFocusShortcuts: function listenForFocusShortcuts() {
19584
- var _this6 = this;
19559
+ var _this5 = this;
19585
19560
  var _this$$props$focusSho = this.$props.focusShortcuts,
19586
19561
  focusShortcuts = _this$$props$focusSho === void 0 ? ['/'] : _this$$props$focusSho;
19587
19562
  if (isEmpty(focusShortcuts)) {
@@ -19596,7 +19571,7 @@
19596
19571
  function (event, handler) {
19597
19572
  // Prevent the default refresh event under WINDOWS system
19598
19573
  event.preventDefault();
19599
- _this6.focusSearchBox(event);
19574
+ _this5.focusSearchBox(event);
19600
19575
  });
19601
19576
 
19602
19577
  // if one of modifier keys are used, they are handled below
@@ -19606,7 +19581,7 @@
19606
19581
  for (var index = 0; index < modifierKeys.length; index += 1) {
19607
19582
  var element = modifierKeys[index];
19608
19583
  if (hotkeys[element]) {
19609
- _this6.focusSearchBox(event);
19584
+ _this5.focusSearchBox(event);
19610
19585
  break;
19611
19586
  }
19612
19587
  }
@@ -19614,7 +19589,7 @@
19614
19589
  }
19615
19590
  },
19616
19591
  render: function render() {
19617
- var _this7 = this;
19592
+ var _this6 = this;
19618
19593
  var h = arguments[0];
19619
19594
  var _this$$props6 = this.$props,
19620
19595
  theme = _this$$props6.theme,
@@ -19649,14 +19624,14 @@
19649
19624
  highlightedIndex = _ref4.highlightedIndex,
19650
19625
  setHighlightedIndex = _ref4.setHighlightedIndex;
19651
19626
  var renderSuggestionsContainer = function renderSuggestionsContainer() {
19652
- return h("div", [_this7.hasCustomRenderer && _this7.getComponent({
19627
+ return h("div", [_this6.hasCustomRenderer && _this6.getComponent({
19653
19628
  isOpen: isOpen,
19654
19629
  getItemProps: getItemProps,
19655
19630
  getItemEvents: getItemEvents,
19656
19631
  highlightedIndex: highlightedIndex
19657
- }), _this7.renderErrorComponent(), !_this7.hasCustomRenderer && isOpen && hasSuggestions ? h("ul", {
19658
- "class": suggestions$1(_this7.themePreset, theme) + " " + getClassName$3(_this7.$props.innerClass, 'list')
19659
- }, [_this7.suggestionsList.slice(0, size || 10).map(function (item, index) {
19632
+ }), _this6.renderErrorComponent(), !_this6.hasCustomRenderer && isOpen && hasSuggestions ? h("ul", {
19633
+ "class": suggestions$1(_this6.themePreset, theme) + " " + getClassName$3(_this6.$props.innerClass, 'list')
19634
+ }, [_this6.suggestionsList.slice(0, size || 10).map(function (item, index) {
19660
19635
  return h("li", {
19661
19636
  "domProps": _extends({}, getItemProps({
19662
19637
  item: item
@@ -19666,15 +19641,15 @@
19666
19641
  })),
19667
19642
  "key": index + 1 + "-" + item.value,
19668
19643
  "style": {
19669
- backgroundColor: _this7.getBackgroundColor(highlightedIndex, index)
19644
+ backgroundColor: _this6.getBackgroundColor(highlightedIndex, index)
19670
19645
  }
19671
19646
  }, [h(SuggestionItem, {
19672
19647
  "attrs": {
19673
- "currentValue": _this7.currentValue,
19648
+ "currentValue": _this6.currentValue,
19674
19649
  "suggestion": item
19675
19650
  }
19676
19651
  })]);
19677
- }), _this7.defaultSearchSuggestions.map(function (sugg, index) {
19652
+ }), _this6.defaultSearchSuggestions.map(function (sugg, index) {
19678
19653
  return h("li", {
19679
19654
  "domProps": _extends({}, getItemProps({
19680
19655
  item: sugg
@@ -19682,9 +19657,9 @@
19682
19657
  "on": _extends({}, getItemEvents({
19683
19658
  item: sugg
19684
19659
  })),
19685
- "key": _this7.suggestionsList.length + index + 1 + "-" + sugg.value,
19660
+ "key": _this6.suggestionsList.length + index + 1 + "-" + sugg.value,
19686
19661
  "style": {
19687
- backgroundColor: _this7.getBackgroundColor(highlightedIndex, _this7.suggestionsList.length + index),
19662
+ backgroundColor: _this6.getBackgroundColor(highlightedIndex, _this6.suggestionsList.length + index),
19688
19663
  justifyContent: 'flex-start'
19689
19664
  }
19690
19665
  }, [h("div", {
@@ -19693,28 +19668,28 @@
19693
19668
  }
19694
19669
  }, [sugg.source && sugg.source._recent_search && h(CustomSvg, {
19695
19670
  "attrs": {
19696
- "className": getClassName$3(_this7.$props.innerClass, 'recent-search-icon') || null,
19671
+ "className": getClassName$3(_this6.$props.innerClass, 'recent-search-icon') || null,
19697
19672
  "icon": recentSearchesIcon,
19698
19673
  "type": "recent-search-icon"
19699
19674
  }
19700
19675
  }), sugg.source && sugg.source._popular_suggestion && h(CustomSvg, {
19701
19676
  "attrs": {
19702
- "className": getClassName$3(_this7.$props.innerClass, 'popular-search-icon') || null,
19677
+ "className": getClassName$3(_this6.$props.innerClass, 'popular-search-icon') || null,
19703
19678
  "icon": popularSearchesIcon,
19704
19679
  "type": "popular-search-icon"
19705
19680
  }
19706
19681
  })]), h(SuggestionItem, {
19707
19682
  "attrs": {
19708
- "currentValue": _this7.currentValue,
19683
+ "currentValue": _this6.currentValue,
19709
19684
  "suggestion": sugg
19710
19685
  }
19711
19686
  })]);
19712
- }), hasQuerySuggestionsRenderer(_this7) ? _this7.getComponent({
19687
+ }), hasQuerySuggestionsRenderer(_this6) ? _this6.getComponent({
19713
19688
  isOpen: isOpen,
19714
19689
  getItemProps: getItemProps,
19715
19690
  getItemEvents: getItemEvents,
19716
19691
  highlightedIndex: highlightedIndex
19717
- }, true) : _this7.topSuggestions.map(function (sugg, index) {
19692
+ }, true) : _this6.topSuggestions.map(function (sugg, index) {
19718
19693
  return h("li", {
19719
19694
  "domProps": _extends({}, getItemProps({
19720
19695
  item: sugg
@@ -19722,9 +19697,9 @@
19722
19697
  "on": _extends({}, getItemEvents({
19723
19698
  item: sugg
19724
19699
  })),
19725
- "key": _this7.suggestionsList.length + index + 1 + "-" + sugg.value,
19700
+ "key": _this6.suggestionsList.length + index + 1 + "-" + sugg.value,
19726
19701
  "style": {
19727
- backgroundColor: _this7.getBackgroundColor(highlightedIndex, _this7.suggestionsList.length + index),
19702
+ backgroundColor: _this6.getBackgroundColor(highlightedIndex, _this6.suggestionsList.length + index),
19728
19703
  justifyContent: 'flex-start'
19729
19704
  }
19730
19705
  }, [h("div", {
@@ -19733,58 +19708,58 @@
19733
19708
  }
19734
19709
  }, [h(CustomSvg, {
19735
19710
  "attrs": {
19736
- "className": getClassName$3(_this7.$props.innerClass, 'popular-search-icon') || null,
19711
+ "className": getClassName$3(_this6.$props.innerClass, 'popular-search-icon') || null,
19737
19712
  "icon": popularSearchesIcon,
19738
19713
  "type": "popular-search-icon"
19739
19714
  }
19740
19715
  })]), h(SuggestionItem, {
19741
19716
  "attrs": {
19742
- "currentValue": _this7.currentValue,
19717
+ "currentValue": _this6.currentValue,
19743
19718
  "suggestion": sugg
19744
19719
  }
19745
19720
  })]);
19746
- })]) : _this7.renderNoSuggestions(_this7.suggestionsList)]);
19721
+ })]) : _this6.renderNoSuggestions(_this6.suggestionsList)]);
19747
19722
  };
19748
19723
  return h("div", {
19749
19724
  "class": suggestionsContainer
19750
- }, [h(InputGroup, [_this7.renderInputAddonBefore(), h(InputWrapper, [h(Input, {
19725
+ }, [h(InputGroup, [_this6.renderInputAddonBefore(), h(InputWrapper, [h(Input, {
19751
19726
  "attrs": {
19752
- "id": _this7.$props.componentId + "-input",
19753
- "showIcon": _this7.$props.showIcon,
19754
- "showClear": _this7.$props.showClear,
19755
- "iconPosition": _this7.$props.iconPosition,
19756
- "placeholder": _this7.$props.placeholder,
19757
- "autoFocus": _this7.$props.autoFocus,
19758
- "themePreset": _this7.themePreset,
19727
+ "id": _this6.$props.componentId + "-input",
19728
+ "showIcon": _this6.$props.showIcon,
19729
+ "showClear": _this6.$props.showClear,
19730
+ "iconPosition": _this6.$props.iconPosition,
19731
+ "placeholder": _this6.$props.placeholder,
19732
+ "autoFocus": _this6.$props.autoFocus,
19733
+ "themePreset": _this6.themePreset,
19759
19734
  "autocomplete": "off"
19760
19735
  },
19761
- "ref": _this7.$props.innerRef,
19762
- "class": getClassName$3(_this7.$props.innerClass, 'input'),
19736
+ "ref": _this6.$props.innerRef,
19737
+ "class": getClassName$3(_this6.$props.innerClass, 'input'),
19763
19738
  "on": _extends({}, getInputEvents({
19764
- onInput: _this7.onInputChange,
19739
+ onInput: _this6.onInputChange,
19765
19740
  onBlur: function onBlur(e) {
19766
- _this7.$emit('blur', e, _this7.triggerQuery);
19741
+ _this6.$emit('blur', e, _this6.triggerQuery);
19767
19742
  },
19768
- onFocus: _this7.handleFocus,
19743
+ onFocus: _this6.handleFocus,
19769
19744
  onKeyPress: function onKeyPress(e) {
19770
- _this7.$emit('keyPress', e, _this7.triggerQuery);
19771
- _this7.$emit('key-press', e, _this7.triggerQuery);
19745
+ _this6.$emit('keyPress', e, _this6.triggerQuery);
19746
+ _this6.$emit('key-press', e, _this6.triggerQuery);
19772
19747
  },
19773
19748
  onKeyDown: function onKeyDown(e) {
19774
- return _this7.handleKeyDown(e, highlightedIndex);
19749
+ return _this6.handleKeyDown(e, highlightedIndex);
19775
19750
  },
19776
19751
  onKeyUp: function onKeyUp(e) {
19777
- _this7.$emit('keyUp', e, _this7.triggerQuery);
19778
- _this7.$emit('key-up', e, _this7.triggerQuery);
19752
+ _this6.$emit('keyUp', e, _this6.triggerQuery);
19753
+ _this6.$emit('key-up', e, _this6.triggerQuery);
19779
19754
  },
19780
19755
  onClick: function onClick() {
19781
19756
  setHighlightedIndex(null);
19782
19757
  }
19783
19758
  })),
19784
19759
  "domProps": _extends({}, getInputProps({
19785
- value: _this7.$data.currentValue === null || typeof _this7.$data.currentValue !== 'string' ? '' : _this7.$data.currentValue
19760
+ value: _this6.$data.currentValue === null || typeof _this6.$data.currentValue !== 'string' ? '' : _this6.$data.currentValue
19786
19761
  }))
19787
- }), _this7.renderIcons(), !expandSuggestionsContainer && renderSuggestionsContainer()]), ' ', _this7.renderInputAddonAfter()]), expandSuggestionsContainer && renderSuggestionsContainer(), _this7.renderTags()]);
19762
+ }), _this6.renderIcons(), !expandSuggestionsContainer && renderSuggestionsContainer()]), ' ', _this6.renderInputAddonAfter()]), expandSuggestionsContainer && renderSuggestionsContainer(), _this6.renderTags()]);
19788
19763
  }
19789
19764
  }
19790
19765
  }) : h("div", {
@@ -19800,22 +19775,22 @@
19800
19775
  },
19801
19776
  "on": _extends({}, {
19802
19777
  blur: function blur(e) {
19803
- _this7.$emit('blur', e, _this7.triggerQuery);
19778
+ _this6.$emit('blur', e, _this6.triggerQuery);
19804
19779
  },
19805
19780
  keypress: function keypress(e) {
19806
- _this7.$emit('keyPress', e, _this7.triggerQuery);
19807
- _this7.$emit('key-press', e, _this7.triggerQuery);
19781
+ _this6.$emit('keyPress', e, _this6.triggerQuery);
19782
+ _this6.$emit('key-press', e, _this6.triggerQuery);
19808
19783
  },
19809
19784
  input: this.onInputChange,
19810
19785
  focus: function focus(e) {
19811
- _this7.$emit('focus', e, _this7.triggerQuery);
19786
+ _this6.$emit('focus', e, _this6.triggerQuery);
19812
19787
  },
19813
19788
  keydown: function keydown(e) {
19814
- _this7.handleKeyDown(e, null);
19789
+ _this6.handleKeyDown(e, null);
19815
19790
  },
19816
19791
  keyup: function keyup(e) {
19817
- _this7.$emit('keyUp', e, _this7.triggerQuery);
19818
- _this7.$emit('key-up', e, _this7.triggerQuery);
19792
+ _this6.$emit('keyUp', e, _this6.triggerQuery);
19793
+ _this6.$emit('key-up', e, _this6.triggerQuery);
19819
19794
  }
19820
19795
  }),
19821
19796
  "domProps": _extends({}, {
@@ -20060,8 +20035,7 @@
20060
20035
  currentValue: '',
20061
20036
  selectedTags: [],
20062
20037
  isOpen: false,
20063
- normalizedSuggestions: [],
20064
- isSuggestionSelected: false
20038
+ normalizedSuggestions: []
20065
20039
  };
20066
20040
  this.internalComponent = props.componentId + "__internal";
20067
20041
  return this.__state;
@@ -20261,9 +20235,7 @@
20261
20235
  if (this.$options.isTagsMode) {
20262
20236
  cause = lib_7.SUGGESTION_SELECT;
20263
20237
  }
20264
- if (!this.isSuggestionSelected) {
20265
- this.setValue(newVal || '', true, this.$props, cause);
20266
- }
20238
+ this.setValue(newVal || '', true, this.$props, cause);
20267
20239
  }
20268
20240
  },
20269
20241
  focusShortcuts: function focusShortcuts() {
@@ -20392,11 +20364,10 @@
20392
20364
  categoryValue = undefined;
20393
20365
  }
20394
20366
  var performUpdate = function performUpdate() {
20395
- var isTagAdded = false;
20396
20367
  if (_this.$options.isTagsMode && isEqual$5(value, _this.selectedTags)) {
20397
20368
  return;
20398
20369
  }
20399
- if (_this.$options.isTagsMode) {
20370
+ if (_this.$options.isTagsMode && cause === lib_7.SUGGESTION_SELECT) {
20400
20371
  if (Array.isArray(_this.selectedTags) && _this.selectedTags.length) {
20401
20372
  // check if value already present in selectedTags
20402
20373
  if (typeof value === 'string' && _this.selectedTags.includes(value)) {
@@ -20405,36 +20376,14 @@
20405
20376
  }
20406
20377
  _this.selectedTags = [].concat(_this.selectedTags);
20407
20378
  if (typeof value === 'string' && !!value) {
20408
- if (props.strictSelection && cause === lib_7.SUGGESTION_SELECT) {
20409
- _this.selectedTags.push(value);
20410
- isTagAdded = true;
20411
- } else if (!props.strictSelection) {
20412
- _this.selectedTags.push(value);
20413
- isTagAdded = true;
20414
- }
20379
+ _this.selectedTags.push(value);
20415
20380
  } else if (Array.isArray(value) && !isEqual$5(_this.selectedTags, value)) {
20416
- if (props.strictSelection && cause === lib_7.SUGGESTION_SELECT) {
20417
- _this.selectedTags = value;
20418
- isTagAdded = true;
20419
- } else if (!props.strictSelection) {
20420
- _this.selectedTags.push(value);
20421
- isTagAdded = true;
20422
- }
20381
+ _this.selectedTags = value;
20423
20382
  }
20424
20383
  } else if (value) {
20425
- if (props.strictSelection && cause === lib_7.SUGGESTION_SELECT) {
20426
- _this.selectedTags = typeof value !== 'string' ? value : [].concat(value);
20427
- isTagAdded = true;
20428
- } else if (!props.strictSelection) {
20429
- _this.selectedTags = typeof value !== 'string' ? value : [].concat(value);
20430
- isTagAdded = true;
20431
- }
20432
- }
20433
- if (props.strictSelection && !isTagAdded) {
20434
- _this.currentValue = value;
20435
- } else {
20436
- _this.currentValue = '';
20384
+ _this.selectedTags = typeof value !== 'string' ? value : [].concat(value);
20437
20385
  }
20386
+ _this.currentValue = '';
20438
20387
  } else {
20439
20388
  _this.currentValue = decodeHtml(value);
20440
20389
  }
@@ -20447,22 +20396,16 @@
20447
20396
  if (toggleIsOpen) {
20448
20397
  _this.isOpen = false;
20449
20398
  }
20450
- if (typeof _this.currentValue === 'string') {
20451
- if (_this.$options.isTagsMode && props.strictSelection && isTagAdded) {
20452
- _this.triggerDefaultQuery(_this.currentValue);
20453
- } else if (!_this.$options.isTagsMode) {
20454
- _this.triggerDefaultQuery(_this.currentValue);
20455
- }
20456
- }
20399
+ if (typeof _this.currentValue === 'string') _this.triggerDefaultQuery(_this.currentValue);
20457
20400
  } // in case of strict selection only SUGGESTION_SELECT should be able
20458
20401
  // to set the query otherwise the value should reset
20459
- if (_this.$options.isTagsMode && props.strictSelection && isTagAdded) {
20402
+ if (props.strictSelection) {
20460
20403
  if (cause === lib_7.SUGGESTION_SELECT || (_this.$options.isTagsMode ? _this.selectedTags.length === 0 : value === '')) {
20461
20404
  _this.triggerCustomQuery(queryHandlerValue, _this.$options.isTagsMode ? undefined : categoryValue);
20462
- } else if (!props.strictSelection) {
20405
+ } else {
20463
20406
  _this.setValue('', true);
20464
20407
  }
20465
- } else if (!_this.$options.isTagsMode && (props.value === undefined || cause === lib_7.SUGGESTION_SELECT || cause === lib_7.CLEAR_VALUE)) {
20408
+ } else if (props.value === undefined || cause === lib_7.SUGGESTION_SELECT || cause === lib_7.CLEAR_VALUE) {
20466
20409
  _this.triggerCustomQuery(queryHandlerValue, _this.$options.isTagsMode ? undefined : categoryValue);
20467
20410
  }
20468
20411
  } else {
@@ -20581,7 +20524,6 @@
20581
20524
  this.onValueSelectedHandler('', lib_7.CLEAR_VALUE);
20582
20525
  },
20583
20526
  handleKeyDown: function handleKeyDown(event, highlightedIndex) {
20584
- var _this2 = this;
20585
20527
  if (highlightedIndex === void 0) {
20586
20528
  highlightedIndex = null;
20587
20529
  }
@@ -20590,11 +20532,7 @@
20590
20532
  if (this.$props.autosuggest === false) {
20591
20533
  this.enterButtonOnClick();
20592
20534
  } else if (highlightedIndex === null) {
20593
- this.isSuggestionSelected = true;
20594
- setTimeout(function () {
20595
- _this2.isSuggestionSelected = false;
20596
- }, 50);
20597
- this.setValue(event.target.value, true, this.$props, undefined // to handle tags
20535
+ this.setValue(event.target.value, true, this.$props, this.$options.isTagsMode ? lib_7.SUGGESTION_SELECT : undefined // to handle tags
20598
20536
  );
20599
20537
 
20600
20538
  this.onValueSelectedHandler(event.target.value, lib_7.ENTER_PRESS);
@@ -20606,7 +20544,7 @@
20606
20544
  this.$emit('key-down', event, this.triggerQuery);
20607
20545
  },
20608
20546
  onInputChange: function onInputChange(e) {
20609
- var _this3 = this;
20547
+ var _this2 = this;
20610
20548
  var inputValue = e.target.value;
20611
20549
  if (!this.$data.isOpen && this.$props.autosuggest) {
20612
20550
  this.isOpen = true;
@@ -20617,7 +20555,7 @@
20617
20555
  } else {
20618
20556
  this.$emit('change', inputValue, function (_ref3) {
20619
20557
  var isOpen = _ref3.isOpen;
20620
- return _this3.triggerQuery({
20558
+ return _this2.triggerQuery({
20621
20559
  defaultQuery: true,
20622
20560
  customQuery: true,
20623
20561
  value: inputValue,
@@ -20627,7 +20565,7 @@
20627
20565
  }
20628
20566
  },
20629
20567
  onSuggestionSelected: function onSuggestionSelected(suggestion) {
20630
- var _this4 = this;
20568
+ var _this3 = this;
20631
20569
  this.isOpen = false;
20632
20570
  var value = this.$props.value;
20633
20571
  // Record analytics for selected suggestions
@@ -20648,10 +20586,10 @@
20648
20586
  this.setValue(emitValue, true, this.$props, lib_7.SUGGESTION_SELECT, false, suggestion._category);
20649
20587
  this.$emit('change', emitValue, function (_ref4) {
20650
20588
  var isOpen = _ref4.isOpen;
20651
- return _this4.triggerQuery(_extends({
20589
+ return _this3.triggerQuery(_extends({
20652
20590
  isOpen: isOpen,
20653
20591
  value: emitValue
20654
- }, !_this4.$options.isTagsMode && {
20592
+ }, !_this3.$options.isTagsMode && {
20655
20593
  categoryValue: suggestion._category
20656
20594
  }));
20657
20595
  });
@@ -20766,7 +20704,7 @@
20766
20704
  });
20767
20705
  },
20768
20706
  renderEnterButtonElement: function renderEnterButtonElement() {
20769
- var _this5 = this;
20707
+ var _this4 = this;
20770
20708
  var h = this.$createElement;
20771
20709
  var _this$$props4 = this.$props,
20772
20710
  enterButton = _this$$props4.enterButton,
@@ -20775,7 +20713,7 @@
20775
20713
  if (enterButton) {
20776
20714
  var getEnterButtonMarkup = function getEnterButtonMarkup() {
20777
20715
  if (renderEnterButton) {
20778
- return renderEnterButton(_this5.enterButtonOnClick);
20716
+ return renderEnterButton(_this4.enterButtonOnClick);
20779
20717
  }
20780
20718
  return h(Button, {
20781
20719
  "class": "enter-btn " + getClassName$4(innerClass, 'enter-button'),
@@ -20783,7 +20721,7 @@
20783
20721
  "primary": true
20784
20722
  },
20785
20723
  "on": {
20786
- "click": _this5.enterButtonOnClick
20724
+ "click": _this4.enterButtonOnClick
20787
20725
  }
20788
20726
  }, ["Search"]);
20789
20727
  };
@@ -20850,7 +20788,7 @@
20850
20788
  (_this$$refs = this.$refs) == null || (_this$$refs = _this$$refs[this.$props.innerRef]) == null ? void 0 : _this$$refs.focus(); // eslint-disable-line
20851
20789
  },
20852
20790
  listenForFocusShortcuts: function listenForFocusShortcuts() {
20853
- var _this6 = this;
20791
+ var _this5 = this;
20854
20792
  var _this$$props$focusSho = this.$props.focusShortcuts,
20855
20793
  focusShortcuts = _this$$props$focusSho === void 0 ? ['/'] : _this$$props$focusSho;
20856
20794
  if (isEmpty(focusShortcuts)) {
@@ -20865,7 +20803,7 @@
20865
20803
  function (event, handler) {
20866
20804
  // Prevent the default refresh event under WINDOWS system
20867
20805
  event.preventDefault();
20868
- _this6.focusSearchBox(event);
20806
+ _this5.focusSearchBox(event);
20869
20807
  });
20870
20808
 
20871
20809
  // if one of modifier keys are used, they are handled below
@@ -20875,7 +20813,7 @@
20875
20813
  for (var index = 0; index < modifierKeys.length; index += 1) {
20876
20814
  var element = modifierKeys[index];
20877
20815
  if (hotkeys[element]) {
20878
- _this6.focusSearchBox(event);
20816
+ _this5.focusSearchBox(event);
20879
20817
  break;
20880
20818
  }
20881
20819
  }
@@ -20888,11 +20826,11 @@
20888
20826
  this.triggerDefaultQuery(value);
20889
20827
  },
20890
20828
  renderAutoFill: function renderAutoFill(suggestion) {
20891
- var _this7 = this;
20829
+ var _this6 = this;
20892
20830
  var h = this.$createElement;
20893
20831
  var handleAutoFillClick = function handleAutoFillClick(e) {
20894
20832
  e.stopPropagation();
20895
- _this7.onAutofillClick(suggestion);
20833
+ _this6.onAutofillClick(suggestion);
20896
20834
  };
20897
20835
  /* 👇 avoid showing autofill for category suggestions👇 */
20898
20836
  return suggestion._category ? null : h(AutoFillSvg, {
@@ -20902,7 +20840,7 @@
20902
20840
  });
20903
20841
  },
20904
20842
  renderTag: function renderTag(item) {
20905
- var _this8 = this;
20843
+ var _this7 = this;
20906
20844
  var h = this.$createElement;
20907
20845
  var innerClass = this.$props.innerClass;
20908
20846
  return h(TagItem, {
@@ -20915,7 +20853,7 @@
20915
20853
  "class": "close-icon",
20916
20854
  "on": {
20917
20855
  "click": function click() {
20918
- return _this8.clearTag(item);
20856
+ return _this7.clearTag(item);
20919
20857
  }
20920
20858
  }
20921
20859
  }, [h(CancelSvg)])]);
@@ -20937,7 +20875,7 @@
20937
20875
  }
20938
20876
  },
20939
20877
  renderTags: function renderTags() {
20940
- var _this9 = this;
20878
+ var _this8 = this;
20941
20879
  var h = this.$createElement;
20942
20880
  if (!Array.isArray(this.selectedTags)) {
20943
20881
  return null;
@@ -20950,7 +20888,7 @@
20950
20888
  handleClear: this.clearTag,
20951
20889
  handleClearAll: this.clearAllTags
20952
20890
  }) : h(TagsContainer, [tagsList.map(function (item) {
20953
- return _this9.renderTag(item);
20891
+ return _this8.renderTag(item);
20954
20892
  }), shouldRenderClearAllTag && h(TagItem, {
20955
20893
  "class": getClassName$4(this.$props.innerClass, 'selected-tag') || ''
20956
20894
  }, [h("span", ["Clear All"]), h("span", {
@@ -20966,7 +20904,7 @@
20966
20904
  }
20967
20905
  },
20968
20906
  render: function render() {
20969
- var _this10 = this;
20907
+ var _this9 = this;
20970
20908
  var h = arguments[0];
20971
20909
  var _this$$props6 = this.$props,
20972
20910
  theme = _this$$props6.theme,
@@ -21007,14 +20945,14 @@
21007
20945
  return null;
21008
20946
  }
21009
20947
  };
21010
- return h("div", [_this10.hasCustomRenderer && _this10.getComponent({
20948
+ return h("div", [_this9.hasCustomRenderer && _this9.getComponent({
21011
20949
  isOpen: isOpen,
21012
20950
  getItemProps: getItemProps,
21013
20951
  getItemEvents: getItemEvents,
21014
20952
  highlightedIndex: highlightedIndex
21015
- }), _this10.renderErrorComponent(), !_this10.hasCustomRenderer && isOpen && hasSuggestions ? h("ul", {
21016
- "class": suggestions$1(_this10.themePreset, theme) + " " + getClassName$4(_this10.$props.innerClass, 'list')
21017
- }, [_this10.normalizedSuggestions.map(function (item, index) {
20953
+ }), _this9.renderErrorComponent(), !_this9.hasCustomRenderer && isOpen && hasSuggestions ? h("ul", {
20954
+ "class": suggestions$1(_this9.themePreset, theme) + " " + getClassName$4(_this9.$props.innerClass, 'list')
20955
+ }, [_this9.normalizedSuggestions.map(function (item, index) {
21018
20956
  return renderItem ? h("li", {
21019
20957
  "domProps": _extends({}, getItemProps({
21020
20958
  item: item
@@ -21024,7 +20962,7 @@
21024
20962
  })),
21025
20963
  "key": index + 1 + "-" + item.value,
21026
20964
  "style": {
21027
- backgroundColor: _this10.getBackgroundColor(highlightedIndex, index),
20965
+ backgroundColor: _this9.getBackgroundColor(highlightedIndex, index),
21028
20966
  justifyContent: 'flex-start',
21029
20967
  alignItems: 'center'
21030
20968
  }
@@ -21037,7 +20975,7 @@
21037
20975
  })),
21038
20976
  "key": index + 1 + "-" + item.value,
21039
20977
  "style": {
21040
- backgroundColor: _this10.getBackgroundColor(highlightedIndex, index),
20978
+ backgroundColor: _this9.getBackgroundColor(highlightedIndex, index),
21041
20979
  justifyContent: 'flex-start',
21042
20980
  alignItems: 'center'
21043
20981
  }
@@ -21048,58 +20986,58 @@
21048
20986
  }
21049
20987
  }, [h(CustomSvg, {
21050
20988
  "attrs": {
21051
- "className": getClassName$4(_this10.$props.innerClass, item._suggestion_type + "-search-icon") || null,
20989
+ "className": getClassName$4(_this9.$props.innerClass, item._suggestion_type + "-search-icon") || null,
21052
20990
  "icon": getIcon(item._suggestion_type),
21053
20991
  "type": item._suggestion_type + "-search-icon"
21054
20992
  }
21055
20993
  })]), h(SuggestionItem, {
21056
20994
  "attrs": {
21057
- "currentValue": _this10.currentValue,
20995
+ "currentValue": _this9.currentValue,
21058
20996
  "suggestion": item
21059
20997
  }
21060
- }), _this10.renderAutoFill(item)]);
21061
- })]) : _this10.renderNoSuggestions(_this10.normalizedSuggestions)]);
20998
+ }), _this9.renderAutoFill(item)]);
20999
+ })]) : _this9.renderNoSuggestions(_this9.normalizedSuggestions)]);
21062
21000
  };
21063
21001
  return h("div", {
21064
21002
  "class": suggestionsContainer
21065
- }, [h(InputGroup, [_this10.renderInputAddonBefore(), h(InputWrapper, [h(Input, {
21003
+ }, [h(InputGroup, [_this9.renderInputAddonBefore(), h(InputWrapper, [h(Input, {
21066
21004
  "attrs": {
21067
- "id": _this10.$props.componentId + "-input",
21068
- "showIcon": _this10.$props.showIcon,
21069
- "showClear": _this10.$props.showClear,
21070
- "iconPosition": _this10.$props.iconPosition,
21071
- "placeholder": _this10.$props.placeholder,
21072
- "autoFocus": _this10.$props.autoFocus,
21073
- "themePreset": _this10.themePreset,
21005
+ "id": _this9.$props.componentId + "-input",
21006
+ "showIcon": _this9.$props.showIcon,
21007
+ "showClear": _this9.$props.showClear,
21008
+ "iconPosition": _this9.$props.iconPosition,
21009
+ "placeholder": _this9.$props.placeholder,
21010
+ "autoFocus": _this9.$props.autoFocus,
21011
+ "themePreset": _this9.themePreset,
21074
21012
  "autocomplete": "off"
21075
21013
  },
21076
- "ref": _this10.$props.innerRef,
21077
- "class": getClassName$4(_this10.$props.innerClass, 'input'),
21014
+ "ref": _this9.$props.innerRef,
21015
+ "class": getClassName$4(_this9.$props.innerClass, 'input'),
21078
21016
  "on": _extends({}, getInputEvents({
21079
- onInput: _this10.onInputChange,
21017
+ onInput: _this9.onInputChange,
21080
21018
  onBlur: function onBlur(e) {
21081
- _this10.$emit('blur', e, _this10.triggerQuery);
21019
+ _this9.$emit('blur', e, _this9.triggerQuery);
21082
21020
  },
21083
- onFocus: _this10.handleFocus,
21021
+ onFocus: _this9.handleFocus,
21084
21022
  onKeyPress: function onKeyPress(e) {
21085
- _this10.$emit('keyPress', e, _this10.triggerQuery);
21086
- _this10.$emit('key-press', e, _this10.triggerQuery);
21023
+ _this9.$emit('keyPress', e, _this9.triggerQuery);
21024
+ _this9.$emit('key-press', e, _this9.triggerQuery);
21087
21025
  },
21088
21026
  onKeyDown: function onKeyDown(e) {
21089
- return _this10.handleKeyDown(e, highlightedIndex);
21027
+ return _this9.handleKeyDown(e, highlightedIndex);
21090
21028
  },
21091
21029
  onKeyUp: function onKeyUp(e) {
21092
- _this10.$emit('keyUp', e, _this10.triggerQuery);
21093
- _this10.$emit('key-up', e, _this10.triggerQuery);
21030
+ _this9.$emit('keyUp', e, _this9.triggerQuery);
21031
+ _this9.$emit('key-up', e, _this9.triggerQuery);
21094
21032
  },
21095
21033
  onClick: function onClick() {
21096
21034
  setHighlightedIndex(null);
21097
21035
  }
21098
21036
  })),
21099
21037
  "domProps": _extends({}, getInputProps({
21100
- value: _this10.$data.currentValue === null ? '' : _this10.$data.currentValue
21038
+ value: _this9.$data.currentValue === null ? '' : _this9.$data.currentValue
21101
21039
  }))
21102
- }), _this10.renderIcons(), !expandSuggestionsContainer && renderSuggestionsDropdown()]), _this10.renderInputAddonAfter(), _this10.renderEnterButtonElement()]), expandSuggestionsContainer && renderSuggestionsDropdown(), _this10.renderTags()]);
21040
+ }), _this9.renderIcons(), !expandSuggestionsContainer && renderSuggestionsDropdown()]), _this9.renderInputAddonAfter(), _this9.renderEnterButtonElement()]), expandSuggestionsContainer && renderSuggestionsDropdown(), _this9.renderTags()]);
21103
21041
  }
21104
21042
  }
21105
21043
  }) : h("div", {
@@ -21115,20 +21053,20 @@
21115
21053
  },
21116
21054
  "on": _extends({}, {
21117
21055
  blur: function blur(e) {
21118
- _this10.$emit('blur', e, _this10.triggerQuery);
21056
+ _this9.$emit('blur', e, _this9.triggerQuery);
21119
21057
  },
21120
21058
  keypress: function keypress(e) {
21121
- _this10.$emit('keyPress', e, _this10.triggerQuery);
21122
- _this10.$emit('key-press', e, _this10.triggerQuery);
21059
+ _this9.$emit('keyPress', e, _this9.triggerQuery);
21060
+ _this9.$emit('key-press', e, _this9.triggerQuery);
21123
21061
  },
21124
21062
  input: this.onInputChange,
21125
21063
  focus: function focus(e) {
21126
- _this10.$emit('focus', e, _this10.triggerQuery);
21064
+ _this9.$emit('focus', e, _this9.triggerQuery);
21127
21065
  },
21128
21066
  keydown: this.handleKeyDown,
21129
21067
  keyup: function keyup(e) {
21130
- _this10.$emit('keyUp', e, _this10.triggerQuery);
21131
- _this10.$emit('key-up', e, _this10.triggerQuery);
21068
+ _this9.$emit('keyUp', e, _this9.triggerQuery);
21069
+ _this9.$emit('key-up', e, _this9.triggerQuery);
21132
21070
  }
21133
21071
  }),
21134
21072
  "domProps": _extends({}, {
@@ -34989,7 +34927,7 @@
34989
34927
  });
34990
34928
  }
34991
34929
 
34992
- var version = "1.35.3";
34930
+ var version = "1.35.4";
34993
34931
 
34994
34932
  var components$1 = [RLConnected, ResultCard, ResultList, ReactiveBase, DSConnected, SBConnected, ListConnected, ListConnected$1, RangeConnected$1, RangeConnected$2, RangeConnected$3, RangeConnected, RcConnected, RcConnected$1, RcConnected$2, TBConnected, ListConnected$2, ListConnected$3, StateProviderConnected, RangeConnected$4];
34995
34933
  function install (Vue) {