@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.
- package/dist/@appbaseio/reactivesearch-vue.umd.js +5813 -5864
- package/dist/@appbaseio/reactivesearch-vue.umd.js.map +1 -1
- package/dist/@appbaseio/reactivesearch-vue.umd.min.js +4 -4
- package/dist/@appbaseio/reactivesearch-vue.umd.min.js.map +1 -1
- package/dist/cjs/{DropDown-dcdaf54f.js → DropDown-82d92f8b.js} +1 -1
- package/dist/cjs/{Input-df30e5fc.js → Input-fcd780de.js} +7 -2
- package/dist/cjs/MultiDropdownList.js +2 -2
- package/dist/cjs/MultiList.js +1 -1
- package/dist/cjs/RangeInput.js +1 -1
- package/dist/cjs/SingleDropdownList.js +2 -2
- package/dist/cjs/SingleList.js +1 -1
- package/dist/cjs/index.js +4 -4
- package/dist/cjs/{install-3821345b.js → install-2a1c953d.js} +176 -184
- package/dist/cjs/install.js +4 -4
- package/dist/cjs/version.js +1 -1
- package/dist/es/{DropDown-bede2a41.js → DropDown-8075451b.js} +1 -1
- package/dist/es/{Input-4376ac1f.js → Input-4cd74b38.js} +7 -3
- package/dist/es/MultiDropdownList.js +2 -2
- package/dist/es/MultiList.js +1 -1
- package/dist/es/RangeInput.js +1 -1
- package/dist/es/SingleDropdownList.js +2 -2
- package/dist/es/SingleList.js +1 -1
- package/dist/es/index.js +5 -5
- package/dist/es/{install-af4c53c4.js → install-f4f2557b.js} +176 -184
- package/dist/es/install.js +4 -4
- package/dist/es/version.js +1 -1
- package/package.json +3 -3
|
@@ -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
|
|
31
|
-
var
|
|
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 (
|
|
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
|
|
789
|
-
var
|
|
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$
|
|
804
|
-
var Chatbox = vueEmotion.styled('div')(_templateObject$
|
|
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$
|
|
880
|
-
var fadeInFromBottom = css.keyframes(_templateObject$
|
|
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.
|
|
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
|
|
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
|
-
} : {}
|
|
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
|
|
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.
|
|
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
|
|
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
|
-
}
|
|
1572
|
+
});
|
|
1593
1573
|
},
|
|
1594
|
-
triggerCustomQuery: function triggerCustomQuery(paramValue, categoryValue
|
|
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
|
-
}
|
|
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
|
-
|
|
1952
|
+
renderLeftIcons: function renderLeftIcons() {
|
|
1984
1953
|
var _this7 = this;
|
|
1985
|
-
var _slot3
|
|
1954
|
+
var _slot3;
|
|
1986
1955
|
var _this$$props3 = this.$props,
|
|
1987
1956
|
iconPosition = _this$$props3.iconPosition,
|
|
1988
|
-
|
|
1989
|
-
|
|
1990
|
-
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
|
|
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":
|
|
1990
|
+
"onClick": _this8.clearValue,
|
|
2003
1991
|
"showIcon": showIcon,
|
|
2004
1992
|
"isClearIcon": true
|
|
2005
|
-
}, _isSlot(
|
|
1993
|
+
}, _isSlot(_slot4 = _this8.renderCancelIcon()) ? _slot4 : {
|
|
2006
1994
|
"default": function _default() {
|
|
2007
|
-
return [
|
|
1995
|
+
return [_slot4];
|
|
2008
1996
|
}
|
|
2009
1997
|
}), showFocusShortcutsIcon && vue.createVNode(DropDown.ButtonIconWrapper, {
|
|
2010
1998
|
"onClick": function onClick(e) {
|
|
2011
|
-
return
|
|
1999
|
+
return _this8.focusSearchBox(e);
|
|
2012
2000
|
}
|
|
2013
|
-
}, _isSlot(
|
|
2001
|
+
}, _isSlot(_slot5 = _this8.renderShortcut()) ? _slot5 : {
|
|
2014
2002
|
"default": function _default() {
|
|
2015
|
-
return [
|
|
2003
|
+
return [_slot5];
|
|
2016
2004
|
}
|
|
2017
2005
|
}), showVoiceSearch && vue.createVNode(Mic, {
|
|
2018
2006
|
"getInstance": getMicInstance,
|
|
2019
2007
|
"render": renderMic,
|
|
2020
|
-
"handleResult":
|
|
2008
|
+
"handleResult": _this8.handleVoiceResults,
|
|
2021
2009
|
"className": getClassName$1(innerClass, 'mic') || null
|
|
2022
2010
|
}, null), iconPosition === 'right' && showIcon && vue.createVNode(DropDown.IconWrapper, {
|
|
2023
|
-
"onClick":
|
|
2024
|
-
}, _isSlot(
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
|
2069
|
+
var _this10 = this;
|
|
2095
2070
|
var handleAutoFillClick = function handleAutoFillClick(e) {
|
|
2096
2071
|
e.stopPropagation();
|
|
2097
|
-
|
|
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
|
|
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
|
|
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
|
|
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
|
|
2143
|
+
return _this12.renderTag(item);
|
|
2169
2144
|
}), shouldRenderClearAllTag && vue.createVNode(TagItem, {
|
|
2170
|
-
"class": getClassName$1(
|
|
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":
|
|
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
|
|
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 =
|
|
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(
|
|
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
|
|
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.
|
|
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.
|
|
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
|
-
|
|
2260
|
+
_this14.feedbackState = {
|
|
2286
2261
|
isRecorded: true,
|
|
2287
2262
|
feedbackType: useful ? 'positive' : 'negative'
|
|
2288
2263
|
};
|
|
2289
|
-
|
|
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
|
|
2325
|
-
var _this$$
|
|
2326
|
-
AIUIConfig = _this$$
|
|
2327
|
-
innerClass = _this$$
|
|
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(
|
|
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":
|
|
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
|
|
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 [
|
|
2366
|
-
"class": getClassName$1(
|
|
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 [
|
|
2344
|
+
return [_this16.$props.title];
|
|
2370
2345
|
}
|
|
2371
|
-
}),
|
|
2372
|
-
"id":
|
|
2373
|
-
"handleChange":
|
|
2374
|
-
"handleMouseup":
|
|
2375
|
-
"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, [
|
|
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
|
-
}),
|
|
2437
|
-
"class": Input.suggestions(
|
|
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
|
-
}, [
|
|
2440
|
-
"themePreset":
|
|
2414
|
+
}, [_this16.showAIScreen && vue.createVNode(SearchBoxAISection, {
|
|
2415
|
+
"themePreset": _this16.$props.themePreset
|
|
2441
2416
|
}, {
|
|
2442
2417
|
"default": function _default() {
|
|
2443
|
-
return [
|
|
2418
|
+
return [_this16.renderAIScreen(), ' ', _this16.renderErrorComponent(true)];
|
|
2444
2419
|
}
|
|
2445
|
-
}), !
|
|
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(
|
|
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(
|
|
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(
|
|
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
|
-
"
|
|
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":
|
|
2469
|
+
"currentValue": _this16.currentValue,
|
|
2496
2470
|
"suggestion": sectionItem
|
|
2497
|
-
}, null),
|
|
2471
|
+
}, null), _this16.renderActionIcon(sectionItem)]);
|
|
2498
2472
|
})])]);
|
|
2499
2473
|
}
|
|
2500
2474
|
return vue.createVNode("div", null, [vue.createTextVNode("No suggestions")]);
|
|
2501
|
-
}),
|
|
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 [
|
|
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:
|
|
2491
|
+
onInput: _this16.onInputChange,
|
|
2513
2492
|
onBlur: function onBlur(e) {
|
|
2514
|
-
|
|
2493
|
+
_this16.$emit('blur', e, _this16.triggerQuery);
|
|
2515
2494
|
},
|
|
2516
|
-
onFocus:
|
|
2495
|
+
onFocus: _this16.handleFocus,
|
|
2517
2496
|
onKeyPress: function onKeyPress(e) {
|
|
2518
|
-
|
|
2519
|
-
|
|
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
|
|
2501
|
+
return _this16.handleKeyDown(e, highlightedIndex);
|
|
2523
2502
|
},
|
|
2524
2503
|
onKeyUp: function onKeyUp(e) {
|
|
2525
|
-
|
|
2526
|
-
|
|
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":
|
|
2533
|
-
"showIcon":
|
|
2534
|
-
"showClear":
|
|
2535
|
-
"iconPosition":
|
|
2536
|
-
"ref":
|
|
2537
|
-
"class": getClassName$1(
|
|
2538
|
-
"placeholder":
|
|
2539
|
-
"autoFocus":
|
|
2540
|
-
"
|
|
2541
|
-
"
|
|
2542
|
-
"
|
|
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:
|
|
2523
|
+
value: _this16.$data.currentValue === null ? '' : _this16.$data.currentValue
|
|
2545
2524
|
}), {
|
|
2546
|
-
"themePreset":
|
|
2525
|
+
"themePreset": _this16.themePreset,
|
|
2547
2526
|
"autocomplete": "off"
|
|
2548
|
-
}), null),
|
|
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
|
-
})
|
|
2533
|
+
})];
|
|
2551
2534
|
}
|
|
2552
|
-
}), expandSuggestionsContainer && renderSuggestionsDropdown(),
|
|
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 [
|
|
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
|
-
|
|
2552
|
+
_this16.$emit('blur', e, _this16.triggerQuery);
|
|
2565
2553
|
},
|
|
2566
2554
|
keypress: function keypress(e) {
|
|
2567
|
-
|
|
2568
|
-
|
|
2555
|
+
_this16.$emit('keyPress', e, _this16.triggerQuery);
|
|
2556
|
+
_this16.$emit('key-press', e, _this16.triggerQuery);
|
|
2569
2557
|
},
|
|
2570
|
-
input:
|
|
2558
|
+
input: _this16.onInputChange,
|
|
2571
2559
|
focus: function focus(e) {
|
|
2572
|
-
|
|
2560
|
+
_this16.$emit('focus', e, _this16.triggerQuery);
|
|
2573
2561
|
},
|
|
2574
|
-
keydown:
|
|
2562
|
+
keydown: _this16.handleKeyDown,
|
|
2575
2563
|
keyup: function keyup(e) {
|
|
2576
|
-
|
|
2577
|
-
|
|
2564
|
+
_this16.$emit('keyUp', e, _this16.triggerQuery);
|
|
2565
|
+
_this16.$emit('key-up', e, _this16.triggerQuery);
|
|
2578
2566
|
}
|
|
2579
2567
|
}), {
|
|
2580
|
-
"class": getClassName$1(
|
|
2581
|
-
"placeholder":
|
|
2582
|
-
"autofocus":
|
|
2583
|
-
"value":
|
|
2584
|
-
"iconPosition":
|
|
2585
|
-
"showIcon":
|
|
2586
|
-
"showClear":
|
|
2587
|
-
"ref":
|
|
2588
|
-
"themePreset":
|
|
2589
|
-
}), null)
|
|
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
|
-
})
|
|
2583
|
+
})];
|
|
2592
2584
|
}
|
|
2593
2585
|
})])];
|
|
2594
2586
|
}
|