@getlupa/vue 0.3.1 → 0.3.2
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/lupaSearch.js +1100 -571
- package/dist/lupaSearch.mjs +1101 -572
- package/dist/src/chat/ChatService.d.ts +33 -0
- package/dist/src/components/chat/ChatContainer.vue.d.ts +14 -0
- package/dist/src/components/chat/ChatContentEntry.vue.d.ts +34 -0
- package/dist/src/components/chat/ChatContentEntryPhrase.vue.d.ts +24 -0
- package/dist/src/components/chat/ChatContentList.vue.d.ts +34 -0
- package/dist/src/components/chat/ChatInput.vue.d.ts +15 -0
- package/dist/src/components/chat/ChatPhraseProductsList.vue.d.ts +23 -0
- package/dist/src/components/chat/ChatSpinner.vue.d.ts +21 -0
- package/dist/src/index.d.ts +4 -2
- package/dist/src/types/chat/ChatLog.d.ts +9 -0
- package/dist/src/types/chat/ChatOptions.d.ts +6 -0
- package/dist/src/types/chat/SearchChatRequest.d.ts +9 -0
- package/dist/src/types/chat/SearchChatResponse.d.ts +3 -0
- package/package.json +1 -1
package/dist/lupaSearch.js
CHANGED
|
@@ -1524,15 +1524,15 @@ const LUPA_ROUTING_EVENT = "lupaRedirect";
|
|
|
1524
1524
|
const RATING_STAR_HTML = "☆";
|
|
1525
1525
|
const production = "https://api.lupasearch.com/v1/";
|
|
1526
1526
|
const staging = "https://api.staging.lupasearch.com/v1/";
|
|
1527
|
-
const Env = {
|
|
1527
|
+
const Env$1 = {
|
|
1528
1528
|
production,
|
|
1529
1529
|
staging
|
|
1530
1530
|
};
|
|
1531
|
-
const getApiUrl = (environment, customBaseUrl) => {
|
|
1531
|
+
const getApiUrl$1 = (environment, customBaseUrl) => {
|
|
1532
1532
|
if (customBaseUrl) {
|
|
1533
1533
|
return customBaseUrl;
|
|
1534
1534
|
}
|
|
1535
|
-
return Env[environment] || Env["production"];
|
|
1535
|
+
return Env$1[environment] || Env$1["production"];
|
|
1536
1536
|
};
|
|
1537
1537
|
var __awaiter = globalThis && globalThis.__awaiter || function(thisArg, _arguments, P, generator) {
|
|
1538
1538
|
function adopt(value) {
|
|
@@ -1561,14 +1561,14 @@ var __awaiter = globalThis && globalThis.__awaiter || function(thisArg, _argumen
|
|
|
1561
1561
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
1562
1562
|
});
|
|
1563
1563
|
};
|
|
1564
|
-
const defaultConfig = {
|
|
1564
|
+
const defaultConfig$1 = {
|
|
1565
1565
|
method: "POST",
|
|
1566
1566
|
headers: { "Content-Type": "application/json" }
|
|
1567
1567
|
};
|
|
1568
1568
|
const customRequestConfig = ({ customHeaders }) => {
|
|
1569
1569
|
return {
|
|
1570
|
-
method: defaultConfig.method,
|
|
1571
|
-
headers: Object.assign(Object.assign({}, defaultConfig.headers), customHeaders !== null && customHeaders !== void 0 ? customHeaders : {})
|
|
1570
|
+
method: defaultConfig$1.method,
|
|
1571
|
+
headers: Object.assign(Object.assign({}, defaultConfig$1.headers), customHeaders !== null && customHeaders !== void 0 ? customHeaders : {})
|
|
1572
1572
|
};
|
|
1573
1573
|
};
|
|
1574
1574
|
const searchCustom = (query, options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -1592,7 +1592,7 @@ const suggestCustom = (query, options) => __awaiter(void 0, void 0, void 0, func
|
|
|
1592
1592
|
return { success: false, errors };
|
|
1593
1593
|
});
|
|
1594
1594
|
const search = (queryKey, query, environment, customBaseUrl) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1595
|
-
const res = yield fetch(`${getApiUrl(environment, customBaseUrl)}query/${queryKey}`, Object.assign(Object.assign({}, defaultConfig), { body: JSON.stringify(query) }));
|
|
1595
|
+
const res = yield fetch(`${getApiUrl$1(environment, customBaseUrl)}query/${queryKey}`, Object.assign(Object.assign({}, defaultConfig$1), { body: JSON.stringify(query) }));
|
|
1596
1596
|
if (res.status < 400) {
|
|
1597
1597
|
const data = yield res.json();
|
|
1598
1598
|
return Object.assign(Object.assign({}, data), { success: true });
|
|
@@ -1602,7 +1602,7 @@ const search = (queryKey, query, environment, customBaseUrl) => __awaiter(void 0
|
|
|
1602
1602
|
});
|
|
1603
1603
|
const queryByIds = (queryKey, ids, environment, customBaseUrl) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1604
1604
|
const idParam = ids.map((id) => `ids=${id}`).join("&");
|
|
1605
|
-
const res = yield fetch(`${getApiUrl(environment, customBaseUrl)}query/${queryKey}/ids?${idParam}`, Object.assign(Object.assign({}, defaultConfig), { method: "GET" }));
|
|
1605
|
+
const res = yield fetch(`${getApiUrl$1(environment, customBaseUrl)}query/${queryKey}/ids?${idParam}`, Object.assign(Object.assign({}, defaultConfig$1), { method: "GET" }));
|
|
1606
1606
|
if (res.status < 400) {
|
|
1607
1607
|
const data = yield res.json();
|
|
1608
1608
|
return Object.assign(Object.assign({}, data), { success: true });
|
|
@@ -1611,7 +1611,7 @@ const queryByIds = (queryKey, ids, environment, customBaseUrl) => __awaiter(void
|
|
|
1611
1611
|
return { success: false, errors };
|
|
1612
1612
|
});
|
|
1613
1613
|
const recommend = (queryKey, recommendForId, environment, customBaseUrl) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1614
|
-
const res = yield fetch(`${getApiUrl(environment, customBaseUrl)}recommendations/document/${recommendForId}?queryKey=${queryKey}`, Object.assign(Object.assign({}, defaultConfig), { method: "GET" }));
|
|
1614
|
+
const res = yield fetch(`${getApiUrl$1(environment, customBaseUrl)}recommendations/document/${recommendForId}?queryKey=${queryKey}`, Object.assign(Object.assign({}, defaultConfig$1), { method: "GET" }));
|
|
1615
1615
|
if (res.status < 400) {
|
|
1616
1616
|
const data = yield res.json();
|
|
1617
1617
|
return Object.assign(Object.assign({}, data), { success: true });
|
|
@@ -1620,7 +1620,7 @@ const recommend = (queryKey, recommendForId, environment, customBaseUrl) => __aw
|
|
|
1620
1620
|
return { success: false, errors };
|
|
1621
1621
|
});
|
|
1622
1622
|
const suggest = (queryKey, query, environment, customBaseUrl) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1623
|
-
const res = yield fetch(`${getApiUrl(environment, customBaseUrl)}query/${queryKey}`, Object.assign(Object.assign({}, defaultConfig), { body: JSON.stringify(query) }));
|
|
1623
|
+
const res = yield fetch(`${getApiUrl$1(environment, customBaseUrl)}query/${queryKey}`, Object.assign(Object.assign({}, defaultConfig$1), { body: JSON.stringify(query) }));
|
|
1624
1624
|
if (res.status < 400) {
|
|
1625
1625
|
const items = yield res.json();
|
|
1626
1626
|
return { items, success: true };
|
|
@@ -1629,7 +1629,7 @@ const suggest = (queryKey, query, environment, customBaseUrl) => __awaiter(void
|
|
|
1629
1629
|
return { success: false, errors };
|
|
1630
1630
|
});
|
|
1631
1631
|
const track$1 = (queryKey, event, environment, customBaseUrl) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1632
|
-
const res = yield fetch(`${getApiUrl(environment, customBaseUrl)}events`, Object.assign(Object.assign({}, defaultConfig), { body: JSON.stringify(Object.assign({ queryKey }, event)) }));
|
|
1632
|
+
const res = yield fetch(`${getApiUrl$1(environment, customBaseUrl)}events`, Object.assign(Object.assign({}, defaultConfig$1), { body: JSON.stringify(Object.assign({ queryKey }, event)) }));
|
|
1633
1633
|
if (res.status < 400) {
|
|
1634
1634
|
return { success: false };
|
|
1635
1635
|
}
|
|
@@ -3012,16 +3012,16 @@ const useSearchBoxStore = defineStore("searchBox", () => {
|
|
|
3012
3012
|
resetHighlightIndex
|
|
3013
3013
|
};
|
|
3014
3014
|
});
|
|
3015
|
-
const _hoisted_1$
|
|
3016
|
-
const _hoisted_2$
|
|
3017
|
-
const _hoisted_3$
|
|
3018
|
-
const _hoisted_4$
|
|
3019
|
-
const _hoisted_5$
|
|
3020
|
-
const _hoisted_6$
|
|
3015
|
+
const _hoisted_1$19 = { id: "lupa-search-box-input-container" };
|
|
3016
|
+
const _hoisted_2$N = { class: "lupa-input-clear" };
|
|
3017
|
+
const _hoisted_3$A = { id: "lupa-search-box-input" };
|
|
3018
|
+
const _hoisted_4$r = ["value"];
|
|
3019
|
+
const _hoisted_5$f = ["placeholder"];
|
|
3020
|
+
const _hoisted_6$8 = {
|
|
3021
3021
|
key: 0,
|
|
3022
3022
|
class: "lupa-close-label"
|
|
3023
3023
|
};
|
|
3024
|
-
const _sfc_main$
|
|
3024
|
+
const _sfc_main$1h = /* @__PURE__ */ vue.defineComponent({
|
|
3025
3025
|
__name: "SearchBoxInput",
|
|
3026
3026
|
props: {
|
|
3027
3027
|
options: {},
|
|
@@ -3098,19 +3098,19 @@ const _sfc_main$1a = /* @__PURE__ */ vue.defineComponent({
|
|
|
3098
3098
|
};
|
|
3099
3099
|
__expose({ focus });
|
|
3100
3100
|
return (_ctx, _cache) => {
|
|
3101
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
3102
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
3101
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$19, [
|
|
3102
|
+
vue.createElementVNode("div", _hoisted_2$N, [
|
|
3103
3103
|
vue.createElementVNode("div", {
|
|
3104
3104
|
class: vue.normalizeClass(["lupa-input-clear-content", { "lupa-input-clear-filled": inputValue.value }]),
|
|
3105
3105
|
onClick: clear
|
|
3106
3106
|
}, null, 2)
|
|
3107
3107
|
]),
|
|
3108
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
3108
|
+
vue.createElementVNode("div", _hoisted_3$A, [
|
|
3109
3109
|
vue.createElementVNode("input", {
|
|
3110
3110
|
class: "lupa-hint",
|
|
3111
3111
|
value: showHint.value ? suggestedValue.value.item.suggestion : "",
|
|
3112
3112
|
disabled: ""
|
|
3113
|
-
}, null, 8, _hoisted_4$
|
|
3113
|
+
}, null, 8, _hoisted_4$r),
|
|
3114
3114
|
vue.withDirectives(vue.createElementVNode("input", vue.mergeProps({
|
|
3115
3115
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => inputValue.value = $event)
|
|
3116
3116
|
}, inputAttributes.value, {
|
|
@@ -3123,7 +3123,7 @@ const _sfc_main$1a = /* @__PURE__ */ vue.defineComponent({
|
|
|
3123
3123
|
placeholder: labels.value.placeholder,
|
|
3124
3124
|
onInput: handleInput,
|
|
3125
3125
|
onFocus: handleFocus
|
|
3126
|
-
}), null, 16, _hoisted_5$
|
|
3126
|
+
}), null, 16, _hoisted_5$f), [
|
|
3127
3127
|
[vue.vModelText, inputValue.value]
|
|
3128
3128
|
])
|
|
3129
3129
|
]),
|
|
@@ -3132,13 +3132,13 @@ const _sfc_main$1a = /* @__PURE__ */ vue.defineComponent({
|
|
|
3132
3132
|
class: "lupa-close-search-container",
|
|
3133
3133
|
onClick: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("close"))
|
|
3134
3134
|
}, [
|
|
3135
|
-
labels.value.close ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$
|
|
3135
|
+
labels.value.close ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$8, vue.toDisplayString(labels.value.close), 1)) : vue.createCommentVNode("", true)
|
|
3136
3136
|
])) : vue.createCommentVNode("", true)
|
|
3137
3137
|
]);
|
|
3138
3138
|
};
|
|
3139
3139
|
}
|
|
3140
3140
|
});
|
|
3141
|
-
const _sfc_main$
|
|
3141
|
+
const _sfc_main$1g = /* @__PURE__ */ vue.defineComponent({
|
|
3142
3142
|
__name: "SearchBoxMoreResults",
|
|
3143
3143
|
props: {
|
|
3144
3144
|
labels: {},
|
|
@@ -3170,9 +3170,9 @@ const _sfc_main$19 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3170
3170
|
};
|
|
3171
3171
|
}
|
|
3172
3172
|
});
|
|
3173
|
-
const _hoisted_1$
|
|
3174
|
-
const _hoisted_2$
|
|
3175
|
-
const _sfc_main$
|
|
3173
|
+
const _hoisted_1$18 = { class: "lupa-search-box-history-item" };
|
|
3174
|
+
const _hoisted_2$M = { class: "lupa-search-box-history-item-content" };
|
|
3175
|
+
const _sfc_main$1f = /* @__PURE__ */ vue.defineComponent({
|
|
3176
3176
|
__name: "SearchBoxHistoryItem",
|
|
3177
3177
|
props: {
|
|
3178
3178
|
item: {},
|
|
@@ -3188,8 +3188,8 @@ const _sfc_main$18 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3188
3188
|
emit("click", { query: props.item });
|
|
3189
3189
|
};
|
|
3190
3190
|
return (_ctx, _cache) => {
|
|
3191
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
3192
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
3191
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$18, [
|
|
3192
|
+
vue.createElementVNode("div", _hoisted_2$M, [
|
|
3193
3193
|
vue.createElementVNode("div", {
|
|
3194
3194
|
class: vue.normalizeClass(["lupa-search-box-history-item-text", { "lupa-search-box-history-item-highlighted": _ctx.highlighted }]),
|
|
3195
3195
|
onClick: click2
|
|
@@ -3203,11 +3203,11 @@ const _sfc_main$18 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3203
3203
|
};
|
|
3204
3204
|
}
|
|
3205
3205
|
});
|
|
3206
|
-
const _hoisted_1$
|
|
3206
|
+
const _hoisted_1$17 = {
|
|
3207
3207
|
key: 0,
|
|
3208
3208
|
class: "lupa-search-box-history-panel"
|
|
3209
3209
|
};
|
|
3210
|
-
const _sfc_main$
|
|
3210
|
+
const _sfc_main$1e = /* @__PURE__ */ vue.defineComponent({
|
|
3211
3211
|
__name: "SearchBoxHistoryPanel",
|
|
3212
3212
|
props: {
|
|
3213
3213
|
options: {}
|
|
@@ -3248,9 +3248,9 @@ const _sfc_main$17 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3248
3248
|
}
|
|
3249
3249
|
};
|
|
3250
3250
|
return (_ctx, _cache) => {
|
|
3251
|
-
return hasHistory.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
3251
|
+
return hasHistory.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$17, [
|
|
3252
3252
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(history), (item, index) => {
|
|
3253
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
3253
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$1f, {
|
|
3254
3254
|
key: item,
|
|
3255
3255
|
item,
|
|
3256
3256
|
highlighted: index === highlightIndex.value,
|
|
@@ -3266,26 +3266,26 @@ const _sfc_main$17 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3266
3266
|
};
|
|
3267
3267
|
}
|
|
3268
3268
|
});
|
|
3269
|
-
const _hoisted_1
|
|
3270
|
-
const _hoisted_2$
|
|
3269
|
+
const _hoisted_1$16 = ["innerHTML"];
|
|
3270
|
+
const _hoisted_2$L = {
|
|
3271
3271
|
key: 1,
|
|
3272
3272
|
"data-cy": "lupa-suggestion-value",
|
|
3273
3273
|
class: "lupa-suggestion-value"
|
|
3274
3274
|
};
|
|
3275
|
-
const _hoisted_3$
|
|
3275
|
+
const _hoisted_3$z = {
|
|
3276
3276
|
key: 2,
|
|
3277
3277
|
class: "lupa-suggestion-facet",
|
|
3278
3278
|
"data-cy": "lupa-suggestion-facet"
|
|
3279
3279
|
};
|
|
3280
|
-
const _hoisted_4$
|
|
3280
|
+
const _hoisted_4$q = {
|
|
3281
3281
|
class: "lupa-suggestion-facet-label",
|
|
3282
3282
|
"data-cy": "lupa-suggestion-facet-label"
|
|
3283
3283
|
};
|
|
3284
|
-
const _hoisted_5$
|
|
3284
|
+
const _hoisted_5$e = {
|
|
3285
3285
|
class: "lupa-suggestion-facet-value",
|
|
3286
3286
|
"data-cy": "lupa-suggestion-facet-value"
|
|
3287
3287
|
};
|
|
3288
|
-
const _sfc_main$
|
|
3288
|
+
const _sfc_main$1d = /* @__PURE__ */ vue.defineComponent({
|
|
3289
3289
|
__name: "SearchBoxSuggestion",
|
|
3290
3290
|
props: {
|
|
3291
3291
|
suggestion: {},
|
|
@@ -3321,20 +3321,20 @@ const _sfc_main$16 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3321
3321
|
class: "lupa-suggestion-value",
|
|
3322
3322
|
"data-cy": "lupa-suggestion-value",
|
|
3323
3323
|
innerHTML: _ctx.suggestion.displayHighlight
|
|
3324
|
-
}, null, 8, _hoisted_1
|
|
3325
|
-
_ctx.suggestion.facet ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$
|
|
3326
|
-
vue.createElementVNode("span", _hoisted_4$
|
|
3327
|
-
vue.createElementVNode("span", _hoisted_5$
|
|
3324
|
+
}, null, 8, _hoisted_1$16)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$L, vue.toDisplayString(_ctx.suggestion.display), 1)),
|
|
3325
|
+
_ctx.suggestion.facet ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$z, [
|
|
3326
|
+
vue.createElementVNode("span", _hoisted_4$q, vue.toDisplayString(facetLabel.value), 1),
|
|
3327
|
+
vue.createElementVNode("span", _hoisted_5$e, vue.toDisplayString(_ctx.suggestion.facet.title), 1)
|
|
3328
3328
|
])) : vue.createCommentVNode("", true)
|
|
3329
3329
|
]);
|
|
3330
3330
|
};
|
|
3331
3331
|
}
|
|
3332
3332
|
});
|
|
3333
|
-
const _hoisted_1$
|
|
3333
|
+
const _hoisted_1$15 = {
|
|
3334
3334
|
id: "lupa-search-box-suggestions",
|
|
3335
3335
|
"data-cy": "lupa-search-box-suggestions"
|
|
3336
3336
|
};
|
|
3337
|
-
const _sfc_main$
|
|
3337
|
+
const _sfc_main$1c = /* @__PURE__ */ vue.defineComponent({
|
|
3338
3338
|
__name: "SearchBoxSuggestions",
|
|
3339
3339
|
props: {
|
|
3340
3340
|
items: {},
|
|
@@ -3394,9 +3394,9 @@ const _sfc_main$15 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3394
3394
|
});
|
|
3395
3395
|
});
|
|
3396
3396
|
return (_ctx, _cache) => {
|
|
3397
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
3397
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$15, [
|
|
3398
3398
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(items.value, (item, index) => {
|
|
3399
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
3399
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$1d, {
|
|
3400
3400
|
key: getSuggestionKey(item),
|
|
3401
3401
|
class: vue.normalizeClass(["lupa-suggestion", index === highlightedIndex.value ? "lupa-suggestion-highlighted" : ""]),
|
|
3402
3402
|
suggestion: item,
|
|
@@ -3424,7 +3424,7 @@ const debounce$1 = (func, timeout) => {
|
|
|
3424
3424
|
}, timeout);
|
|
3425
3425
|
};
|
|
3426
3426
|
};
|
|
3427
|
-
const _sfc_main$
|
|
3427
|
+
const _sfc_main$1b = /* @__PURE__ */ vue.defineComponent({
|
|
3428
3428
|
__name: "SearchBoxSuggestionsWrapper",
|
|
3429
3429
|
props: {
|
|
3430
3430
|
panel: {},
|
|
@@ -3465,7 +3465,7 @@ const _sfc_main$14 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3465
3465
|
};
|
|
3466
3466
|
const getSuggestionsDebounced = debounce$1(getSuggestions, props.debounce);
|
|
3467
3467
|
return (_ctx, _cache) => {
|
|
3468
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
3468
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$1c, {
|
|
3469
3469
|
items: searchResult.value,
|
|
3470
3470
|
highlight: _ctx.panel.highlight,
|
|
3471
3471
|
queryKey: _ctx.panel.queryKey,
|
|
@@ -3543,8 +3543,8 @@ const useDynamicDataStore = defineStore("dynamicData", () => {
|
|
|
3543
3543
|
});
|
|
3544
3544
|
return { dynamicDataIdMap, loading, enhanceSearchResultsWithDynamicData };
|
|
3545
3545
|
});
|
|
3546
|
-
const _hoisted_1$
|
|
3547
|
-
const _sfc_main$
|
|
3546
|
+
const _hoisted_1$14 = ["src"];
|
|
3547
|
+
const _sfc_main$1a = /* @__PURE__ */ vue.defineComponent({
|
|
3548
3548
|
__name: "ProductImage",
|
|
3549
3549
|
props: {
|
|
3550
3550
|
item: {},
|
|
@@ -3592,12 +3592,12 @@ const _sfc_main$13 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3592
3592
|
class: vue.normalizeClass((_b = _ctx.imageClass) != null ? _b : ""),
|
|
3593
3593
|
src: finalUrl.value,
|
|
3594
3594
|
onError: replaceWithPlaceholder
|
|
3595
|
-
}, null, 42, _hoisted_1$
|
|
3595
|
+
}, null, 42, _hoisted_1$14)
|
|
3596
3596
|
], 2);
|
|
3597
3597
|
};
|
|
3598
3598
|
}
|
|
3599
3599
|
});
|
|
3600
|
-
const _sfc_main$
|
|
3600
|
+
const _sfc_main$19 = /* @__PURE__ */ vue.defineComponent({
|
|
3601
3601
|
__name: "SearchBoxProductImage",
|
|
3602
3602
|
props: {
|
|
3603
3603
|
item: {},
|
|
@@ -3605,7 +3605,7 @@ const _sfc_main$12 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3605
3605
|
},
|
|
3606
3606
|
setup(__props) {
|
|
3607
3607
|
return (_ctx, _cache) => {
|
|
3608
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
3608
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$1a, {
|
|
3609
3609
|
item: _ctx.item,
|
|
3610
3610
|
options: _ctx.options,
|
|
3611
3611
|
"wrapper-class": "lupa-search-box-image-wrapper",
|
|
@@ -3614,12 +3614,12 @@ const _sfc_main$12 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3614
3614
|
};
|
|
3615
3615
|
}
|
|
3616
3616
|
});
|
|
3617
|
-
const _hoisted_1$
|
|
3618
|
-
const _hoisted_2$
|
|
3617
|
+
const _hoisted_1$13 = ["innerHTML"];
|
|
3618
|
+
const _hoisted_2$K = {
|
|
3619
3619
|
key: 1,
|
|
3620
3620
|
class: "lupa-search-box-product-title"
|
|
3621
3621
|
};
|
|
3622
|
-
const _sfc_main$
|
|
3622
|
+
const _sfc_main$18 = /* @__PURE__ */ vue.defineComponent({
|
|
3623
3623
|
__name: "SearchBoxProductTitle",
|
|
3624
3624
|
props: {
|
|
3625
3625
|
item: {},
|
|
@@ -3639,18 +3639,18 @@ const _sfc_main$11 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3639
3639
|
key: 0,
|
|
3640
3640
|
class: "lupa-search-box-product-title",
|
|
3641
3641
|
innerHTML: title.value
|
|
3642
|
-
}, null, 8, _hoisted_1$
|
|
3642
|
+
}, null, 8, _hoisted_1$13)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$K, [
|
|
3643
3643
|
vue.createElementVNode("strong", null, vue.toDisplayString(title.value), 1)
|
|
3644
3644
|
]));
|
|
3645
3645
|
};
|
|
3646
3646
|
}
|
|
3647
3647
|
});
|
|
3648
|
-
const _hoisted_1$
|
|
3649
|
-
const _hoisted_2$
|
|
3648
|
+
const _hoisted_1$12 = ["innerHTML"];
|
|
3649
|
+
const _hoisted_2$J = {
|
|
3650
3650
|
key: 1,
|
|
3651
3651
|
class: "lupa-search-box-product-description"
|
|
3652
3652
|
};
|
|
3653
|
-
const _sfc_main$
|
|
3653
|
+
const _sfc_main$17 = /* @__PURE__ */ vue.defineComponent({
|
|
3654
3654
|
__name: "SearchBoxProductDescription",
|
|
3655
3655
|
props: {
|
|
3656
3656
|
item: {},
|
|
@@ -3670,12 +3670,12 @@ const _sfc_main$10 = /* @__PURE__ */ vue.defineComponent({
|
|
|
3670
3670
|
key: 0,
|
|
3671
3671
|
class: "lupa-search-box-product-description",
|
|
3672
3672
|
innerHTML: description.value
|
|
3673
|
-
}, null, 8, _hoisted_1$
|
|
3673
|
+
}, null, 8, _hoisted_1$12)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$J, vue.toDisplayString(description.value), 1));
|
|
3674
3674
|
};
|
|
3675
3675
|
}
|
|
3676
3676
|
});
|
|
3677
|
-
const _hoisted_1$
|
|
3678
|
-
const _sfc_main
|
|
3677
|
+
const _hoisted_1$11 = { class: "lupa-search-box-product-price" };
|
|
3678
|
+
const _sfc_main$16 = /* @__PURE__ */ vue.defineComponent({
|
|
3679
3679
|
__name: "SearchBoxProductPrice",
|
|
3680
3680
|
props: {
|
|
3681
3681
|
item: {},
|
|
@@ -3693,14 +3693,14 @@ const _sfc_main$$ = /* @__PURE__ */ vue.defineComponent({
|
|
|
3693
3693
|
);
|
|
3694
3694
|
});
|
|
3695
3695
|
return (_ctx, _cache) => {
|
|
3696
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
3696
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$11, [
|
|
3697
3697
|
vue.createElementVNode("strong", null, vue.toDisplayString(price.value), 1)
|
|
3698
3698
|
]);
|
|
3699
3699
|
};
|
|
3700
3700
|
}
|
|
3701
3701
|
});
|
|
3702
|
-
const _hoisted_1$
|
|
3703
|
-
const _sfc_main$
|
|
3702
|
+
const _hoisted_1$10 = { class: "lupa-search-box-product-regular-price" };
|
|
3703
|
+
const _sfc_main$15 = /* @__PURE__ */ vue.defineComponent({
|
|
3704
3704
|
__name: "SearchBoxProductRegularPrice",
|
|
3705
3705
|
props: {
|
|
3706
3706
|
item: {},
|
|
@@ -3718,16 +3718,16 @@ const _sfc_main$_ = /* @__PURE__ */ vue.defineComponent({
|
|
|
3718
3718
|
);
|
|
3719
3719
|
});
|
|
3720
3720
|
return (_ctx, _cache) => {
|
|
3721
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
3721
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$10, vue.toDisplayString(price.value), 1);
|
|
3722
3722
|
};
|
|
3723
3723
|
}
|
|
3724
3724
|
});
|
|
3725
|
-
const _hoisted_1
|
|
3726
|
-
const _hoisted_2$
|
|
3727
|
-
const _hoisted_3$
|
|
3728
|
-
const _hoisted_4$
|
|
3729
|
-
const _hoisted_5$
|
|
3730
|
-
const _sfc_main$
|
|
3725
|
+
const _hoisted_1$$ = ["innerHTML"];
|
|
3726
|
+
const _hoisted_2$I = { key: 0 };
|
|
3727
|
+
const _hoisted_3$y = { key: 1 };
|
|
3728
|
+
const _hoisted_4$p = { class: "lupa-search-box-custom-label" };
|
|
3729
|
+
const _hoisted_5$d = { class: "lupa-search-box-custom-text" };
|
|
3730
|
+
const _sfc_main$14 = /* @__PURE__ */ vue.defineComponent({
|
|
3731
3731
|
__name: "SearchBoxProductCustom",
|
|
3732
3732
|
props: {
|
|
3733
3733
|
item: {},
|
|
@@ -3753,20 +3753,20 @@ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
|
|
|
3753
3753
|
key: 0,
|
|
3754
3754
|
class: [className.value, "lupa-search-box-product-custom"],
|
|
3755
3755
|
innerHTML: text.value
|
|
3756
|
-
}, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1
|
|
3756
|
+
}, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1$$)) : (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
|
|
3757
3757
|
key: 1,
|
|
3758
3758
|
class: [className.value, "lupa-search-box-product-custom"]
|
|
3759
3759
|
}, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), [
|
|
3760
|
-
!label.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
3761
|
-
vue.createElementVNode("div", _hoisted_4$
|
|
3762
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
3760
|
+
!label.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$I, vue.toDisplayString(text.value), 1)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$y, [
|
|
3761
|
+
vue.createElementVNode("div", _hoisted_4$p, vue.toDisplayString(label.value), 1),
|
|
3762
|
+
vue.createElementVNode("div", _hoisted_5$d, vue.toDisplayString(text.value), 1)
|
|
3763
3763
|
]))
|
|
3764
3764
|
], 16));
|
|
3765
3765
|
};
|
|
3766
3766
|
}
|
|
3767
3767
|
});
|
|
3768
|
-
const _hoisted_1$
|
|
3769
|
-
const _sfc_main$
|
|
3768
|
+
const _hoisted_1$_ = ["innerHTML"];
|
|
3769
|
+
const _sfc_main$13 = /* @__PURE__ */ vue.defineComponent({
|
|
3770
3770
|
__name: "SearchBoxProductCustomHtml",
|
|
3771
3771
|
props: {
|
|
3772
3772
|
item: {},
|
|
@@ -3786,7 +3786,7 @@ const _sfc_main$Y = /* @__PURE__ */ vue.defineComponent({
|
|
|
3786
3786
|
return vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
|
|
3787
3787
|
class: className.value,
|
|
3788
3788
|
innerHTML: text.value
|
|
3789
|
-
}, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1$
|
|
3789
|
+
}, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1$_);
|
|
3790
3790
|
};
|
|
3791
3791
|
}
|
|
3792
3792
|
});
|
|
@@ -3981,10 +3981,10 @@ const useSearchResultStore = defineStore("searchResult", () => {
|
|
|
3981
3981
|
setLoading
|
|
3982
3982
|
};
|
|
3983
3983
|
});
|
|
3984
|
-
const _hoisted_1$
|
|
3985
|
-
const _hoisted_2$
|
|
3986
|
-
const _hoisted_3$
|
|
3987
|
-
const _sfc_main$
|
|
3984
|
+
const _hoisted_1$Z = { class: "lupa-search-box-add-to-cart-wrapper" };
|
|
3985
|
+
const _hoisted_2$H = { class: "lupa-search-box-product-addtocart" };
|
|
3986
|
+
const _hoisted_3$x = ["onClick", "disabled"];
|
|
3987
|
+
const _sfc_main$12 = /* @__PURE__ */ vue.defineComponent({
|
|
3988
3988
|
__name: "SearchBoxProductAddToCart",
|
|
3989
3989
|
props: {
|
|
3990
3990
|
item: {},
|
|
@@ -4011,15 +4011,15 @@ const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
|
|
|
4011
4011
|
loading.value = false;
|
|
4012
4012
|
});
|
|
4013
4013
|
return (_ctx, _cache) => {
|
|
4014
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
4015
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
4014
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$Z, [
|
|
4015
|
+
vue.createElementVNode("div", _hoisted_2$H, [
|
|
4016
4016
|
vue.createElementVNode("button", {
|
|
4017
4017
|
onClick: vue.withModifiers(handleClick, ["stop", "prevent"]),
|
|
4018
4018
|
class: vue.normalizeClass(loading.value ? "lupa-add-to-cart-loading" : "lupa-add-to-cart"),
|
|
4019
4019
|
"data-cy": "lupa-add-to-cart",
|
|
4020
4020
|
type: "button",
|
|
4021
4021
|
disabled: !inStockValue.value || loading.value
|
|
4022
|
-
}, vue.toDisplayString(label.value), 11, _hoisted_3$
|
|
4022
|
+
}, vue.toDisplayString(label.value), 11, _hoisted_3$x)
|
|
4023
4023
|
])
|
|
4024
4024
|
]);
|
|
4025
4025
|
};
|
|
@@ -4027,17 +4027,17 @@ const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
|
|
|
4027
4027
|
});
|
|
4028
4028
|
const __default__$4 = {
|
|
4029
4029
|
components: {
|
|
4030
|
-
SearchBoxProductImage: _sfc_main$
|
|
4031
|
-
SearchBoxProductTitle: _sfc_main$
|
|
4032
|
-
SearchBoxProductDescription: _sfc_main$
|
|
4033
|
-
SearchBoxProductPrice: _sfc_main
|
|
4034
|
-
SearchBoxProductRegularPrice: _sfc_main$
|
|
4035
|
-
SearchBoxProductCustom: _sfc_main$
|
|
4036
|
-
SearchBoxProductCustomHtml: _sfc_main$
|
|
4037
|
-
SearchBoxProductAddToCart: _sfc_main$
|
|
4030
|
+
SearchBoxProductImage: _sfc_main$19,
|
|
4031
|
+
SearchBoxProductTitle: _sfc_main$18,
|
|
4032
|
+
SearchBoxProductDescription: _sfc_main$17,
|
|
4033
|
+
SearchBoxProductPrice: _sfc_main$16,
|
|
4034
|
+
SearchBoxProductRegularPrice: _sfc_main$15,
|
|
4035
|
+
SearchBoxProductCustom: _sfc_main$14,
|
|
4036
|
+
SearchBoxProductCustomHtml: _sfc_main$13,
|
|
4037
|
+
SearchBoxProductAddToCart: _sfc_main$12
|
|
4038
4038
|
}
|
|
4039
4039
|
};
|
|
4040
|
-
const _sfc_main$
|
|
4040
|
+
const _sfc_main$11 = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, __default__$4), {
|
|
4041
4041
|
__name: "SearchBoxProductElement",
|
|
4042
4042
|
props: {
|
|
4043
4043
|
item: {},
|
|
@@ -4151,14 +4151,14 @@ const useTrackingStore = defineStore("tracking", () => {
|
|
|
4151
4151
|
};
|
|
4152
4152
|
return { trackSearch, trackResults, trackEvent };
|
|
4153
4153
|
});
|
|
4154
|
-
const _hoisted_1$
|
|
4155
|
-
const _hoisted_2$
|
|
4156
|
-
const _hoisted_3$
|
|
4157
|
-
const _hoisted_4$
|
|
4154
|
+
const _hoisted_1$Y = ["href"];
|
|
4155
|
+
const _hoisted_2$G = { class: "lupa-search-box-product-image-section" };
|
|
4156
|
+
const _hoisted_3$w = { class: "lupa-search-box-product-details-section" };
|
|
4157
|
+
const _hoisted_4$o = {
|
|
4158
4158
|
key: 0,
|
|
4159
4159
|
class: "lupa-search-box-product-add-to-cart-section"
|
|
4160
4160
|
};
|
|
4161
|
-
const _sfc_main$
|
|
4161
|
+
const _sfc_main$10 = /* @__PURE__ */ vue.defineComponent({
|
|
4162
4162
|
__name: "SearchBoxProduct",
|
|
4163
4163
|
props: {
|
|
4164
4164
|
item: {},
|
|
@@ -4251,9 +4251,9 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
|
|
|
4251
4251
|
href: link.value,
|
|
4252
4252
|
onClick: handleClick
|
|
4253
4253
|
}, [
|
|
4254
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
4254
|
+
vue.createElementVNode("div", _hoisted_2$G, [
|
|
4255
4255
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(imageElements.value, (element) => {
|
|
4256
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
4256
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$11, {
|
|
4257
4257
|
class: "lupa-search-box-product-element",
|
|
4258
4258
|
item: _ctx.item,
|
|
4259
4259
|
element,
|
|
@@ -4263,9 +4263,9 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
|
|
|
4263
4263
|
}, null, 8, ["item", "element", "labels", "link"]);
|
|
4264
4264
|
}), 128))
|
|
4265
4265
|
]),
|
|
4266
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
4266
|
+
vue.createElementVNode("div", _hoisted_3$w, [
|
|
4267
4267
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(detailElements.value, (element) => {
|
|
4268
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
4268
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$11, {
|
|
4269
4269
|
class: "lupa-search-box-product-element",
|
|
4270
4270
|
item: _ctx.item,
|
|
4271
4271
|
element,
|
|
@@ -4275,8 +4275,8 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
|
|
|
4275
4275
|
}, null, 8, ["item", "element", "labels", "link"]);
|
|
4276
4276
|
}), 128))
|
|
4277
4277
|
]),
|
|
4278
|
-
addToCartElement.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$
|
|
4279
|
-
vue.createVNode(_sfc_main$
|
|
4278
|
+
addToCartElement.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$o, [
|
|
4279
|
+
vue.createVNode(_sfc_main$11, {
|
|
4280
4280
|
class: "lupa-search-box-product-element",
|
|
4281
4281
|
item: _ctx.item,
|
|
4282
4282
|
element: addToCartElement.value,
|
|
@@ -4285,12 +4285,12 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
|
|
|
4285
4285
|
isInStock: isInStock.value
|
|
4286
4286
|
}, null, 8, ["item", "element", "labels", "link", "isInStock"])
|
|
4287
4287
|
])) : vue.createCommentVNode("", true)
|
|
4288
|
-
], 10, _hoisted_1$
|
|
4288
|
+
], 10, _hoisted_1$Y);
|
|
4289
4289
|
};
|
|
4290
4290
|
}
|
|
4291
4291
|
});
|
|
4292
|
-
const _hoisted_1$
|
|
4293
|
-
const _sfc_main
|
|
4292
|
+
const _hoisted_1$X = { id: "lupa-search-box-products" };
|
|
4293
|
+
const _sfc_main$$ = /* @__PURE__ */ vue.defineComponent({
|
|
4294
4294
|
__name: "SearchBoxProducts",
|
|
4295
4295
|
props: {
|
|
4296
4296
|
items: {},
|
|
@@ -4310,7 +4310,7 @@ const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
|
|
|
4310
4310
|
return (_c = (_b = highlightedItem.value) == null ? void 0 : _b.index) != null ? _c : -1;
|
|
4311
4311
|
});
|
|
4312
4312
|
return (_ctx, _cache) => {
|
|
4313
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
4313
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$X, [
|
|
4314
4314
|
_ctx.$slots.productCard ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 0 }, vue.renderList(_ctx.items, (item, index) => {
|
|
4315
4315
|
return vue.renderSlot(_ctx.$slots, "productCard", {
|
|
4316
4316
|
key: index,
|
|
@@ -4322,7 +4322,7 @@ const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
|
|
|
4322
4322
|
onProductClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("product-click"))
|
|
4323
4323
|
});
|
|
4324
4324
|
}), 128)) : (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 1 }, vue.renderList(_ctx.items, (item, index) => {
|
|
4325
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
4325
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$10, {
|
|
4326
4326
|
key: index,
|
|
4327
4327
|
item,
|
|
4328
4328
|
panelOptions: _ctx.panelOptions,
|
|
@@ -4336,7 +4336,7 @@ const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
|
|
|
4336
4336
|
};
|
|
4337
4337
|
}
|
|
4338
4338
|
});
|
|
4339
|
-
const _sfc_main$
|
|
4339
|
+
const _sfc_main$_ = /* @__PURE__ */ vue.defineComponent({
|
|
4340
4340
|
__name: "SearchBoxProductsWrapper",
|
|
4341
4341
|
props: {
|
|
4342
4342
|
panel: {},
|
|
@@ -4388,7 +4388,7 @@ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
|
|
|
4388
4388
|
const getItemsDebounced = debounce$1(getItems, props.debounce);
|
|
4389
4389
|
return (_ctx, _cache) => {
|
|
4390
4390
|
var _a, _b;
|
|
4391
|
-
return vue.openBlock(), vue.createBlock(_sfc_main
|
|
4391
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$$, {
|
|
4392
4392
|
items: (_b = (_a = searchResult.value) == null ? void 0 : _a.items) != null ? _b : [],
|
|
4393
4393
|
panelOptions: _ctx.panel,
|
|
4394
4394
|
labels: _ctx.labels,
|
|
@@ -4406,26 +4406,26 @@ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
|
|
|
4406
4406
|
};
|
|
4407
4407
|
}
|
|
4408
4408
|
});
|
|
4409
|
-
const _hoisted_1$
|
|
4409
|
+
const _hoisted_1$W = {
|
|
4410
4410
|
key: 0,
|
|
4411
4411
|
id: "lupa-search-box-panel"
|
|
4412
4412
|
};
|
|
4413
|
-
const _hoisted_2$
|
|
4413
|
+
const _hoisted_2$F = {
|
|
4414
4414
|
class: "lupa-main-panel",
|
|
4415
4415
|
"data-cy": "lupa-main-panel"
|
|
4416
4416
|
};
|
|
4417
|
-
const _hoisted_3$
|
|
4418
|
-
const _hoisted_4$
|
|
4417
|
+
const _hoisted_3$v = ["data-cy"];
|
|
4418
|
+
const _hoisted_4$n = {
|
|
4419
4419
|
key: 1,
|
|
4420
4420
|
id: "lupa-search-box-panel"
|
|
4421
4421
|
};
|
|
4422
4422
|
const __default__$3 = {
|
|
4423
4423
|
components: {
|
|
4424
|
-
SearchBoxSuggestionsWrapper: _sfc_main$
|
|
4425
|
-
SearchBoxProductsWrapper: _sfc_main$
|
|
4424
|
+
SearchBoxSuggestionsWrapper: _sfc_main$1b,
|
|
4425
|
+
SearchBoxProductsWrapper: _sfc_main$_
|
|
4426
4426
|
}
|
|
4427
4427
|
};
|
|
4428
|
-
const _sfc_main$
|
|
4428
|
+
const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, __default__$3), {
|
|
4429
4429
|
__name: "SearchBoxMainPanel",
|
|
4430
4430
|
props: {
|
|
4431
4431
|
options: {},
|
|
@@ -4539,8 +4539,8 @@ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
|
|
|
4539
4539
|
ref_key: "panelContainer",
|
|
4540
4540
|
ref: panelContainer
|
|
4541
4541
|
}, [
|
|
4542
|
-
displayResults.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
4543
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
4542
|
+
displayResults.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$W, [
|
|
4543
|
+
vue.createElementVNode("div", _hoisted_2$F, [
|
|
4544
4544
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayPanels.value, (panel, index) => {
|
|
4545
4545
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
4546
4546
|
key: index,
|
|
@@ -4569,16 +4569,16 @@ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
|
|
|
4569
4569
|
key: "0"
|
|
4570
4570
|
} : void 0
|
|
4571
4571
|
]), 1064, ["panel", "options", "debounce", "inputValue", "labels"])) : vue.createCommentVNode("", true)
|
|
4572
|
-
], 10, _hoisted_3$
|
|
4572
|
+
], 10, _hoisted_3$v);
|
|
4573
4573
|
}), 128))
|
|
4574
4574
|
]),
|
|
4575
|
-
vue.createVNode(_sfc_main$
|
|
4575
|
+
vue.createVNode(_sfc_main$1g, {
|
|
4576
4576
|
labels: labels.value,
|
|
4577
4577
|
showTotalCount: (_a = _ctx.options.showTotalCount) != null ? _a : false,
|
|
4578
4578
|
onGoToResults: _cache[3] || (_cache[3] = ($event) => _ctx.$emit("go-to-results"))
|
|
4579
4579
|
}, null, 8, ["labels", "showTotalCount"])
|
|
4580
|
-
])) : displayHistory.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$
|
|
4581
|
-
vue.createVNode(_sfc_main$
|
|
4580
|
+
])) : displayHistory.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$n, [
|
|
4581
|
+
vue.createVNode(_sfc_main$1e, {
|
|
4582
4582
|
options: _ctx.options.history,
|
|
4583
4583
|
history: history.value,
|
|
4584
4584
|
onGoToResults: handleGoToResults,
|
|
@@ -4603,9 +4603,9 @@ const unbindSearchTriggers = (triggers = [], event) => {
|
|
|
4603
4603
|
const elements = getElements(triggers);
|
|
4604
4604
|
elements.forEach((e) => e == null ? void 0 : e.removeEventListener(BIND_EVENT, event));
|
|
4605
4605
|
};
|
|
4606
|
-
const _hoisted_1$
|
|
4607
|
-
const _hoisted_2$
|
|
4608
|
-
const _sfc_main$
|
|
4606
|
+
const _hoisted_1$V = { id: "lupa-search-box" };
|
|
4607
|
+
const _hoisted_2$E = { class: "lupa-search-box-wrapper" };
|
|
4608
|
+
const _sfc_main$Y = /* @__PURE__ */ vue.defineComponent({
|
|
4609
4609
|
__name: "SearchBox",
|
|
4610
4610
|
props: {
|
|
4611
4611
|
options: {},
|
|
@@ -4838,9 +4838,9 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
|
|
|
4838
4838
|
};
|
|
4839
4839
|
return (_ctx, _cache) => {
|
|
4840
4840
|
var _a2;
|
|
4841
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
4842
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
4843
|
-
vue.createVNode(_sfc_main$
|
|
4841
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$V, [
|
|
4842
|
+
vue.createElementVNode("div", _hoisted_2$E, [
|
|
4843
|
+
vue.createVNode(_sfc_main$1h, {
|
|
4844
4844
|
options: inputOptions.value,
|
|
4845
4845
|
suggestedValue: suggestedValue.value,
|
|
4846
4846
|
"can-close": (_a2 = _ctx.isSearchContainer) != null ? _a2 : false,
|
|
@@ -4851,7 +4851,7 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
|
|
|
4851
4851
|
onFocus: _cache[0] || (_cache[0] = ($event) => opened.value = true),
|
|
4852
4852
|
onClose: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("close"))
|
|
4853
4853
|
}, null, 8, ["options", "suggestedValue", "can-close", "emit-input-on-focus"]),
|
|
4854
|
-
opened.value || _ctx.isSearchContainer ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
4854
|
+
opened.value || _ctx.isSearchContainer ? (vue.openBlock(), vue.createBlock(_sfc_main$Z, {
|
|
4855
4855
|
key: 0,
|
|
4856
4856
|
options: panelOptions.value,
|
|
4857
4857
|
inputValue: inputValue.value,
|
|
@@ -4954,20 +4954,20 @@ const getInitialSearchResults = (options, defaultData) => __async(exports, null,
|
|
|
4954
4954
|
options.options.onError(e);
|
|
4955
4955
|
}
|
|
4956
4956
|
});
|
|
4957
|
-
const _hoisted_1$
|
|
4957
|
+
const _hoisted_1$U = {
|
|
4958
4958
|
key: 0,
|
|
4959
4959
|
id: "lupa-search-results-did-you-mean"
|
|
4960
4960
|
};
|
|
4961
|
-
const _hoisted_2$
|
|
4961
|
+
const _hoisted_2$D = {
|
|
4962
4962
|
key: 0,
|
|
4963
4963
|
"data-cy": "suggested-search-text-label"
|
|
4964
4964
|
};
|
|
4965
|
-
const _hoisted_3$
|
|
4965
|
+
const _hoisted_3$u = {
|
|
4966
4966
|
key: 1,
|
|
4967
4967
|
"data-cy": "did-you-mean-label"
|
|
4968
4968
|
};
|
|
4969
|
-
const _hoisted_4$
|
|
4970
|
-
const _sfc_main$
|
|
4969
|
+
const _hoisted_4$m = { key: 1 };
|
|
4970
|
+
const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
|
|
4971
4971
|
__name: "SearchResultsDidYouMean",
|
|
4972
4972
|
props: {
|
|
4973
4973
|
labels: {}
|
|
@@ -4999,8 +4999,8 @@ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
|
|
|
4999
4999
|
paramStore.goToResults({ searchText, facet });
|
|
5000
5000
|
};
|
|
5001
5001
|
return (_ctx, _cache) => {
|
|
5002
|
-
return vue.unref(searchResult).suggestedSearchText || didYouMeanValue.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
5003
|
-
vue.unref(searchResult).suggestedSearchText ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
5002
|
+
return vue.unref(searchResult).suggestedSearchText || didYouMeanValue.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$U, [
|
|
5003
|
+
vue.unref(searchResult).suggestedSearchText ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$D, [
|
|
5004
5004
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.labels.noResultsSuggestion.split(" "), (label, index) => {
|
|
5005
5005
|
return vue.openBlock(), vue.createElementBlock("span", { key: index }, [
|
|
5006
5006
|
vue.createElementVNode("span", {
|
|
@@ -5009,7 +5009,7 @@ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
|
|
|
5009
5009
|
]);
|
|
5010
5010
|
}), 128))
|
|
5011
5011
|
])) : vue.createCommentVNode("", true),
|
|
5012
|
-
didYouMeanValue.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$
|
|
5012
|
+
didYouMeanValue.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$u, [
|
|
5013
5013
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.labels.didYouMean.split(" "), (label, index) => {
|
|
5014
5014
|
return vue.openBlock(), vue.createElementBlock("span", { key: index }, [
|
|
5015
5015
|
label.includes("{1}") ? (vue.openBlock(), vue.createElementBlock("span", {
|
|
@@ -5017,7 +5017,7 @@ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
|
|
|
5017
5017
|
class: "lupa-did-you-mean lupa-highlighted-search-text",
|
|
5018
5018
|
"data-cy": "did-you-mean-value",
|
|
5019
5019
|
onClick: _cache[0] || (_cache[0] = ($event) => goToResults({ searchText: didYouMeanValue.value }))
|
|
5020
|
-
}, vue.toDisplayString(didYouMeanValue.value) + " ", 1)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$
|
|
5020
|
+
}, vue.toDisplayString(didYouMeanValue.value) + " ", 1)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$m, vue.toDisplayString(label) + " ", 1))
|
|
5021
5021
|
]);
|
|
5022
5022
|
}), 128))
|
|
5023
5023
|
])) : vue.createCommentVNode("", true)
|
|
@@ -5025,12 +5025,12 @@ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
|
|
|
5025
5025
|
};
|
|
5026
5026
|
}
|
|
5027
5027
|
});
|
|
5028
|
-
const _hoisted_1$
|
|
5028
|
+
const _hoisted_1$T = {
|
|
5029
5029
|
key: 0,
|
|
5030
5030
|
class: "lupa-search-results-summary"
|
|
5031
5031
|
};
|
|
5032
|
-
const _hoisted_2$
|
|
5033
|
-
const _sfc_main$
|
|
5032
|
+
const _hoisted_2$C = ["innerHTML"];
|
|
5033
|
+
const _sfc_main$W = /* @__PURE__ */ vue.defineComponent({
|
|
5034
5034
|
__name: "SearchResultsSummary",
|
|
5035
5035
|
props: {
|
|
5036
5036
|
label: {},
|
|
@@ -5045,8 +5045,8 @@ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
|
|
|
5045
5045
|
return addParamsToLabel(props.label, range, `<span>${totalItems.value}</span>`);
|
|
5046
5046
|
});
|
|
5047
5047
|
return (_ctx, _cache) => {
|
|
5048
|
-
return vue.unref(totalItems) > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
5049
|
-
vue.createElementVNode("div", { innerHTML: summaryLabel.value }, null, 8, _hoisted_2$
|
|
5048
|
+
return vue.unref(totalItems) > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$T, [
|
|
5049
|
+
vue.createElementVNode("div", { innerHTML: summaryLabel.value }, null, 8, _hoisted_2$C),
|
|
5050
5050
|
_ctx.clearable ? (vue.openBlock(), vue.createElementBlock("span", {
|
|
5051
5051
|
key: 0,
|
|
5052
5052
|
class: "lupa-filter-clear",
|
|
@@ -5057,18 +5057,18 @@ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
|
|
|
5057
5057
|
};
|
|
5058
5058
|
}
|
|
5059
5059
|
});
|
|
5060
|
-
const _hoisted_1$
|
|
5060
|
+
const _hoisted_1$S = {
|
|
5061
5061
|
key: 0,
|
|
5062
5062
|
class: "lupa-result-page-title",
|
|
5063
5063
|
"data-cy": "lupa-result-page-title"
|
|
5064
5064
|
};
|
|
5065
|
-
const _hoisted_2$
|
|
5066
|
-
const _hoisted_3$
|
|
5065
|
+
const _hoisted_2$B = { key: 0 };
|
|
5066
|
+
const _hoisted_3$t = {
|
|
5067
5067
|
key: 1,
|
|
5068
5068
|
class: "lupa-results-total-count"
|
|
5069
5069
|
};
|
|
5070
|
-
const _hoisted_4$
|
|
5071
|
-
const _sfc_main$
|
|
5070
|
+
const _hoisted_4$l = ["innerHTML"];
|
|
5071
|
+
const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
|
|
5072
5072
|
__name: "SearchResultsTitle",
|
|
5073
5073
|
props: {
|
|
5074
5074
|
options: {},
|
|
@@ -5103,12 +5103,12 @@ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
|
|
|
5103
5103
|
});
|
|
5104
5104
|
return (_ctx, _cache) => {
|
|
5105
5105
|
return vue.openBlock(), vue.createElementBlock("div", null, [
|
|
5106
|
-
showSearchTitle.value ? (vue.openBlock(), vue.createElementBlock("h1", _hoisted_1$
|
|
5106
|
+
showSearchTitle.value ? (vue.openBlock(), vue.createElementBlock("h1", _hoisted_1$S, [
|
|
5107
5107
|
vue.createTextVNode(vue.toDisplayString(_ctx.options.labels.searchResults), 1),
|
|
5108
|
-
queryText.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$
|
|
5109
|
-
showProductCount.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
5108
|
+
queryText.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$B, "'" + vue.toDisplayString(queryText.value) + "'", 1)) : vue.createCommentVNode("", true),
|
|
5109
|
+
showProductCount.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$t, "(" + vue.toDisplayString(vue.unref(totalItems)) + ")", 1)) : vue.createCommentVNode("", true)
|
|
5110
5110
|
])) : vue.createCommentVNode("", true),
|
|
5111
|
-
_ctx.showSummary ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
5111
|
+
_ctx.showSummary ? (vue.openBlock(), vue.createBlock(_sfc_main$W, {
|
|
5112
5112
|
key: 1,
|
|
5113
5113
|
label: summaryLabel.value
|
|
5114
5114
|
}, null, 8, ["label"])) : vue.createCommentVNode("", true),
|
|
@@ -5116,21 +5116,21 @@ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
|
|
|
5116
5116
|
key: 2,
|
|
5117
5117
|
class: "lupa-result-page-description-top",
|
|
5118
5118
|
innerHTML: descriptionTop.value
|
|
5119
|
-
}, null, 8, _hoisted_4$
|
|
5119
|
+
}, null, 8, _hoisted_4$l)) : vue.createCommentVNode("", true)
|
|
5120
5120
|
]);
|
|
5121
5121
|
};
|
|
5122
5122
|
}
|
|
5123
5123
|
});
|
|
5124
|
-
const _hoisted_1$
|
|
5125
|
-
const _hoisted_2$
|
|
5124
|
+
const _hoisted_1$R = { class: "lupa-search-result-filter-value" };
|
|
5125
|
+
const _hoisted_2$A = {
|
|
5126
5126
|
class: "lupa-current-filter-label",
|
|
5127
5127
|
"data-cy": "lupa-current-filter-label"
|
|
5128
5128
|
};
|
|
5129
|
-
const _hoisted_3$
|
|
5129
|
+
const _hoisted_3$s = {
|
|
5130
5130
|
class: "lupa-current-filter-value",
|
|
5131
5131
|
"data-cy": "lupa-current-filter-value"
|
|
5132
5132
|
};
|
|
5133
|
-
const _sfc_main$
|
|
5133
|
+
const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
|
|
5134
5134
|
__name: "CurrentFilterDisplay",
|
|
5135
5135
|
props: {
|
|
5136
5136
|
filter: {}
|
|
@@ -5142,28 +5142,28 @@ const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
|
|
|
5142
5142
|
emit("remove", { filter: props.filter });
|
|
5143
5143
|
};
|
|
5144
5144
|
return (_ctx, _cache) => {
|
|
5145
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
5145
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$R, [
|
|
5146
5146
|
vue.createElementVNode("div", {
|
|
5147
5147
|
class: "lupa-current-filter-action",
|
|
5148
5148
|
onClick: handleClick
|
|
5149
5149
|
}, "⨉"),
|
|
5150
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
5151
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
5150
|
+
vue.createElementVNode("div", _hoisted_2$A, vue.toDisplayString(_ctx.filter.label) + ": ", 1),
|
|
5151
|
+
vue.createElementVNode("div", _hoisted_3$s, vue.toDisplayString(_ctx.filter.value), 1)
|
|
5152
5152
|
]);
|
|
5153
5153
|
};
|
|
5154
5154
|
}
|
|
5155
5155
|
});
|
|
5156
|
-
const _hoisted_1$
|
|
5157
|
-
const _hoisted_2$
|
|
5156
|
+
const _hoisted_1$Q = { class: "lupa-filter-title-text" };
|
|
5157
|
+
const _hoisted_2$z = {
|
|
5158
5158
|
key: 0,
|
|
5159
5159
|
class: "lupa-filter-count"
|
|
5160
5160
|
};
|
|
5161
|
-
const _hoisted_3$
|
|
5161
|
+
const _hoisted_3$r = {
|
|
5162
5162
|
key: 0,
|
|
5163
5163
|
class: "filter-values"
|
|
5164
5164
|
};
|
|
5165
|
-
const _hoisted_4$
|
|
5166
|
-
const _sfc_main$
|
|
5165
|
+
const _hoisted_4$k = { class: "lupa-current-filter-list" };
|
|
5166
|
+
const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
|
|
5167
5167
|
__name: "CurrentFilters",
|
|
5168
5168
|
props: {
|
|
5169
5169
|
options: {},
|
|
@@ -5218,19 +5218,19 @@ const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
|
|
|
5218
5218
|
class: "lupa-current-filter-title",
|
|
5219
5219
|
onClick: _cache[0] || (_cache[0] = ($event) => isOpen.value = !isOpen.value)
|
|
5220
5220
|
}, [
|
|
5221
|
-
vue.createElementVNode("div", _hoisted_1$
|
|
5221
|
+
vue.createElementVNode("div", _hoisted_1$Q, [
|
|
5222
5222
|
vue.createTextVNode(vue.toDisplayString((_c = (_b = (_a = _ctx.options) == null ? void 0 : _a.labels) == null ? void 0 : _b.title) != null ? _c : "") + " ", 1),
|
|
5223
|
-
_ctx.expandable ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$
|
|
5223
|
+
_ctx.expandable ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$z, " (" + vue.toDisplayString(vue.unref(currentFilterCount)) + ") ", 1)) : vue.createCommentVNode("", true)
|
|
5224
5224
|
]),
|
|
5225
5225
|
_ctx.expandable ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
5226
5226
|
key: 0,
|
|
5227
5227
|
class: vue.normalizeClass(["lupa-filter-title-caret", isOpen.value && "open"])
|
|
5228
5228
|
}, null, 2)) : vue.createCommentVNode("", true)
|
|
5229
5229
|
]),
|
|
5230
|
-
!_ctx.expandable || isOpen.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$
|
|
5231
|
-
vue.createElementVNode("div", _hoisted_4$
|
|
5230
|
+
!_ctx.expandable || isOpen.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$r, [
|
|
5231
|
+
vue.createElementVNode("div", _hoisted_4$k, [
|
|
5232
5232
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(displayFilters), (filter) => {
|
|
5233
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
5233
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$U, {
|
|
5234
5234
|
key: filter.key + "_" + filter.value,
|
|
5235
5235
|
filter,
|
|
5236
5236
|
onRemove: handleRemove
|
|
@@ -5247,8 +5247,8 @@ const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
|
|
|
5247
5247
|
};
|
|
5248
5248
|
}
|
|
5249
5249
|
});
|
|
5250
|
-
const _hoisted_1$
|
|
5251
|
-
const _sfc_main$
|
|
5250
|
+
const _hoisted_1$P = ["href"];
|
|
5251
|
+
const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
|
|
5252
5252
|
__name: "CategoryFilterItem",
|
|
5253
5253
|
props: {
|
|
5254
5254
|
options: {},
|
|
@@ -5285,20 +5285,20 @@ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
|
|
|
5285
5285
|
"data-cy": "lupa-child-category-item",
|
|
5286
5286
|
href: urlLink.value,
|
|
5287
5287
|
onClick: handleNavigation
|
|
5288
|
-
}, vue.toDisplayString(title.value), 9, _hoisted_1$
|
|
5288
|
+
}, vue.toDisplayString(title.value), 9, _hoisted_1$P)
|
|
5289
5289
|
], 2);
|
|
5290
5290
|
};
|
|
5291
5291
|
}
|
|
5292
5292
|
});
|
|
5293
|
-
const _hoisted_1$
|
|
5293
|
+
const _hoisted_1$O = {
|
|
5294
5294
|
class: "lupa-category-filter",
|
|
5295
5295
|
"data-cy": "lupa-category-filter"
|
|
5296
5296
|
};
|
|
5297
|
-
const _hoisted_2$
|
|
5298
|
-
const _hoisted_3$
|
|
5299
|
-
const _hoisted_4$
|
|
5300
|
-
const _hoisted_5$
|
|
5301
|
-
const _sfc_main$
|
|
5297
|
+
const _hoisted_2$y = { class: "lupa-category-back" };
|
|
5298
|
+
const _hoisted_3$q = ["href"];
|
|
5299
|
+
const _hoisted_4$j = ["href"];
|
|
5300
|
+
const _hoisted_5$c = { class: "lupa-child-category-list" };
|
|
5301
|
+
const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
|
|
5302
5302
|
__name: "CategoryFilter",
|
|
5303
5303
|
props: {
|
|
5304
5304
|
options: {}
|
|
@@ -5384,14 +5384,14 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
|
|
|
5384
5384
|
};
|
|
5385
5385
|
__expose({ fetch: fetch2 });
|
|
5386
5386
|
return (_ctx, _cache) => {
|
|
5387
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
5388
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
5387
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$O, [
|
|
5388
|
+
vue.createElementVNode("div", _hoisted_2$y, [
|
|
5389
5389
|
hasBackButton.value ? (vue.openBlock(), vue.createElementBlock("a", {
|
|
5390
5390
|
key: 0,
|
|
5391
5391
|
"data-cy": "lupa-category-back",
|
|
5392
5392
|
href: backUrlLink.value,
|
|
5393
5393
|
onClick: handleNavigationBack
|
|
5394
|
-
}, vue.toDisplayString(backTitle.value), 9, _hoisted_3$
|
|
5394
|
+
}, vue.toDisplayString(backTitle.value), 9, _hoisted_3$q)) : vue.createCommentVNode("", true)
|
|
5395
5395
|
]),
|
|
5396
5396
|
vue.createElementVNode("div", {
|
|
5397
5397
|
class: vue.normalizeClass(["lupa-current-category", { "lupa-current-category-active": isActive }])
|
|
@@ -5401,11 +5401,11 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
|
|
|
5401
5401
|
href: parentUrlLink.value,
|
|
5402
5402
|
class: vue.normalizeClass({ "lupa-title-category": !hasBackButton.value }),
|
|
5403
5403
|
onClick: handleNavigationParent
|
|
5404
|
-
}, vue.toDisplayString(parentTitle.value), 11, _hoisted_4$
|
|
5404
|
+
}, vue.toDisplayString(parentTitle.value), 11, _hoisted_4$j)
|
|
5405
5405
|
], 2),
|
|
5406
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
5406
|
+
vue.createElementVNode("div", _hoisted_5$c, [
|
|
5407
5407
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(categoryChildren.value, (child) => {
|
|
5408
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
5408
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$S, {
|
|
5409
5409
|
key: getCategoryKey(child),
|
|
5410
5410
|
item: child,
|
|
5411
5411
|
options: _ctx.options
|
|
@@ -5416,23 +5416,23 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
|
|
|
5416
5416
|
};
|
|
5417
5417
|
}
|
|
5418
5418
|
});
|
|
5419
|
-
const _hoisted_1$
|
|
5419
|
+
const _hoisted_1$N = {
|
|
5420
5420
|
class: "lupa-search-result-facet-term-values",
|
|
5421
5421
|
"data-cy": "lupa-search-result-facet-term-values"
|
|
5422
5422
|
};
|
|
5423
|
-
const _hoisted_2$
|
|
5424
|
-
const _hoisted_3$
|
|
5425
|
-
const _hoisted_4$
|
|
5426
|
-
const _hoisted_5$
|
|
5427
|
-
const _hoisted_6$
|
|
5428
|
-
const _hoisted_7$
|
|
5423
|
+
const _hoisted_2$x = ["placeholder"];
|
|
5424
|
+
const _hoisted_3$p = { class: "lupa-terms-list" };
|
|
5425
|
+
const _hoisted_4$i = ["onClick"];
|
|
5426
|
+
const _hoisted_5$b = { class: "lupa-term-checkbox-wrapper" };
|
|
5427
|
+
const _hoisted_6$7 = { class: "lupa-term-checkbox-label" };
|
|
5428
|
+
const _hoisted_7$6 = { class: "lupa-term-label" };
|
|
5429
5429
|
const _hoisted_8$1 = {
|
|
5430
5430
|
key: 0,
|
|
5431
5431
|
class: "lupa-term-count"
|
|
5432
5432
|
};
|
|
5433
5433
|
const _hoisted_9$1 = { key: 0 };
|
|
5434
5434
|
const _hoisted_10$1 = { key: 1 };
|
|
5435
|
-
const _sfc_main$
|
|
5435
|
+
const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
|
|
5436
5436
|
__name: "TermFacet",
|
|
5437
5437
|
props: {
|
|
5438
5438
|
options: {},
|
|
@@ -5501,17 +5501,17 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
|
|
|
5501
5501
|
return selectedItems == null ? void 0 : selectedItems.includes((_b = item.title) == null ? void 0 : _b.toString());
|
|
5502
5502
|
};
|
|
5503
5503
|
return (_ctx, _cache) => {
|
|
5504
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
5504
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$N, [
|
|
5505
5505
|
isFilterable.value ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", {
|
|
5506
5506
|
key: 0,
|
|
5507
5507
|
class: "lupa-term-filter",
|
|
5508
5508
|
"data-cy": "lupa-term-filter",
|
|
5509
5509
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => termFilter.value = $event),
|
|
5510
5510
|
placeholder: _ctx.options.labels.facetFilter
|
|
5511
|
-
}, null, 8, _hoisted_2$
|
|
5511
|
+
}, null, 8, _hoisted_2$x)), [
|
|
5512
5512
|
[vue.vModelText, termFilter.value]
|
|
5513
5513
|
]) : vue.createCommentVNode("", true),
|
|
5514
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
5514
|
+
vue.createElementVNode("div", _hoisted_3$p, [
|
|
5515
5515
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayValues.value, (item) => {
|
|
5516
5516
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
5517
5517
|
class: vue.normalizeClass(["lupa-facet-term", { checked: isChecked(item) }]),
|
|
@@ -5519,16 +5519,16 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
|
|
|
5519
5519
|
key: item.title,
|
|
5520
5520
|
onClick: ($event) => handleFacetClick(item)
|
|
5521
5521
|
}, [
|
|
5522
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
5522
|
+
vue.createElementVNode("div", _hoisted_5$b, [
|
|
5523
5523
|
vue.createElementVNode("span", {
|
|
5524
5524
|
class: vue.normalizeClass(["lupa-term-checkbox", { checked: isChecked(item) }])
|
|
5525
5525
|
}, null, 2)
|
|
5526
5526
|
]),
|
|
5527
|
-
vue.createElementVNode("div", _hoisted_6$
|
|
5528
|
-
vue.createElementVNode("span", _hoisted_7$
|
|
5527
|
+
vue.createElementVNode("div", _hoisted_6$7, [
|
|
5528
|
+
vue.createElementVNode("span", _hoisted_7$6, vue.toDisplayString(item.title), 1),
|
|
5529
5529
|
_ctx.options.showDocumentCount ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_8$1, "(" + vue.toDisplayString(item.count) + ")", 1)) : vue.createCommentVNode("", true)
|
|
5530
5530
|
])
|
|
5531
|
-
], 10, _hoisted_4$
|
|
5531
|
+
], 10, _hoisted_4$i);
|
|
5532
5532
|
}), 128))
|
|
5533
5533
|
]),
|
|
5534
5534
|
displayShowMore.value ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -6519,22 +6519,22 @@ var m = { name: "Slider", emits: ["input", "update:modelValue", "start", "slide"
|
|
|
6519
6519
|
m.render = function(e, t, r, i, n, o) {
|
|
6520
6520
|
return vue.openBlock(), vue.createElementBlock("div", vue.mergeProps(e.sliderProps, { ref: "slider" }), null, 16);
|
|
6521
6521
|
}, m.__file = "src/Slider.vue";
|
|
6522
|
-
const _hoisted_1$
|
|
6523
|
-
const _hoisted_2$
|
|
6522
|
+
const _hoisted_1$M = { class: "lupa-search-result-facet-stats-values" };
|
|
6523
|
+
const _hoisted_2$w = {
|
|
6524
6524
|
key: 0,
|
|
6525
6525
|
class: "lupa-stats-facet-summary"
|
|
6526
6526
|
};
|
|
6527
|
-
const _hoisted_3$
|
|
6527
|
+
const _hoisted_3$o = {
|
|
6528
6528
|
key: 1,
|
|
6529
6529
|
class: "lupa-stats-facet-summary-input"
|
|
6530
6530
|
};
|
|
6531
|
-
const _hoisted_4$
|
|
6531
|
+
const _hoisted_4$h = {
|
|
6532
6532
|
key: 0,
|
|
6533
6533
|
class: "lupa-stats-range-label"
|
|
6534
6534
|
};
|
|
6535
|
-
const _hoisted_5$
|
|
6536
|
-
const _hoisted_6$
|
|
6537
|
-
const _hoisted_7$
|
|
6535
|
+
const _hoisted_5$a = { class: "lupa-stats-from" };
|
|
6536
|
+
const _hoisted_6$6 = ["max", "min", "pattern"];
|
|
6537
|
+
const _hoisted_7$5 = { key: 0 };
|
|
6538
6538
|
const _hoisted_8 = /* @__PURE__ */ vue.createElementVNode("div", { class: "lupa-stats-separator" }, null, -1);
|
|
6539
6539
|
const _hoisted_9 = {
|
|
6540
6540
|
key: 0,
|
|
@@ -6547,7 +6547,7 @@ const _hoisted_13 = {
|
|
|
6547
6547
|
key: 2,
|
|
6548
6548
|
class: "lupa-stats-slider-wrapper"
|
|
6549
6549
|
};
|
|
6550
|
-
const _sfc_main$
|
|
6550
|
+
const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
|
|
6551
6551
|
__name: "StatsFacet",
|
|
6552
6552
|
props: {
|
|
6553
6553
|
options: {},
|
|
@@ -6695,11 +6695,11 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
|
|
|
6695
6695
|
innerSliderRange.value = value;
|
|
6696
6696
|
};
|
|
6697
6697
|
return (_ctx, _cache) => {
|
|
6698
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
6699
|
-
!isInputVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
6698
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$M, [
|
|
6699
|
+
!isInputVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$w, vue.toDisplayString(statsSummary.value), 1)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$o, [
|
|
6700
6700
|
vue.createElementVNode("div", null, [
|
|
6701
|
-
rangeLabelFrom.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$
|
|
6702
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
6701
|
+
rangeLabelFrom.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$h, vue.toDisplayString(rangeLabelFrom.value), 1)) : vue.createCommentVNode("", true),
|
|
6702
|
+
vue.createElementVNode("div", _hoisted_5$a, [
|
|
6703
6703
|
vue.withDirectives(vue.createElementVNode("input", {
|
|
6704
6704
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => fromValue.value = $event),
|
|
6705
6705
|
type: "text",
|
|
@@ -6707,7 +6707,7 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
|
|
|
6707
6707
|
max: facetMax.value,
|
|
6708
6708
|
min: facetMin.value,
|
|
6709
6709
|
pattern: sliderInputFormat.value
|
|
6710
|
-
}, null, 8, _hoisted_6$
|
|
6710
|
+
}, null, 8, _hoisted_6$6), [
|
|
6711
6711
|
[
|
|
6712
6712
|
vue.vModelText,
|
|
6713
6713
|
fromValue.value,
|
|
@@ -6715,7 +6715,7 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
|
|
|
6715
6715
|
{ lazy: true }
|
|
6716
6716
|
]
|
|
6717
6717
|
]),
|
|
6718
|
-
isPrice.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_7$
|
|
6718
|
+
isPrice.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_7$5, vue.toDisplayString(currency.value), 1)) : vue.createCommentVNode("", true)
|
|
6719
6719
|
])
|
|
6720
6720
|
]),
|
|
6721
6721
|
_hoisted_8,
|
|
@@ -6759,18 +6759,18 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
|
|
|
6759
6759
|
};
|
|
6760
6760
|
}
|
|
6761
6761
|
});
|
|
6762
|
-
const _hoisted_1$
|
|
6763
|
-
const _hoisted_2$
|
|
6764
|
-
const _hoisted_3$
|
|
6765
|
-
const _hoisted_4$
|
|
6762
|
+
const _hoisted_1$L = { class: "lupa-term-checkbox-wrapper" };
|
|
6763
|
+
const _hoisted_2$v = { class: "lupa-term-checkbox-label" };
|
|
6764
|
+
const _hoisted_3$n = { class: "lupa-term-label" };
|
|
6765
|
+
const _hoisted_4$g = {
|
|
6766
6766
|
key: 0,
|
|
6767
6767
|
class: "lupa-term-count"
|
|
6768
6768
|
};
|
|
6769
|
-
const _hoisted_5$
|
|
6769
|
+
const _hoisted_5$9 = {
|
|
6770
6770
|
key: 0,
|
|
6771
6771
|
class: "lupa-facet-level"
|
|
6772
6772
|
};
|
|
6773
|
-
const _sfc_main$
|
|
6773
|
+
const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
|
|
6774
6774
|
__name: "HierarchyFacetLevel",
|
|
6775
6775
|
props: {
|
|
6776
6776
|
options: {},
|
|
@@ -6816,17 +6816,17 @@ const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
|
|
|
6816
6816
|
"data-cy": "lupa-facet-term",
|
|
6817
6817
|
onClick: _cache[0] || (_cache[0] = ($event) => handleFacetClick(_ctx.item))
|
|
6818
6818
|
}, [
|
|
6819
|
-
vue.createElementVNode("div", _hoisted_1$
|
|
6819
|
+
vue.createElementVNode("div", _hoisted_1$L, [
|
|
6820
6820
|
vue.createElementVNode("span", {
|
|
6821
6821
|
class: vue.normalizeClass(["lupa-term-checkbox", { checked: isChecked.value }])
|
|
6822
6822
|
}, null, 2)
|
|
6823
6823
|
]),
|
|
6824
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
6825
|
-
vue.createElementVNode("span", _hoisted_3$
|
|
6826
|
-
_ctx.options.showDocumentCount ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$
|
|
6824
|
+
vue.createElementVNode("div", _hoisted_2$v, [
|
|
6825
|
+
vue.createElementVNode("span", _hoisted_3$n, vue.toDisplayString(_ctx.item.title) + vue.toDisplayString(" "), 1),
|
|
6826
|
+
_ctx.options.showDocumentCount ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$g, "(" + vue.toDisplayString(_ctx.item.count) + ")", 1)) : vue.createCommentVNode("", true)
|
|
6827
6827
|
])
|
|
6828
6828
|
]),
|
|
6829
|
-
showChildren.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5$
|
|
6829
|
+
showChildren.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5$9, [
|
|
6830
6830
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(treeItem.value.children, (itemChild) => {
|
|
6831
6831
|
return vue.openBlock(), vue.createBlock(_component_HierarchyFacetLevel, {
|
|
6832
6832
|
key: itemChild.title,
|
|
@@ -6842,13 +6842,13 @@ const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
|
|
|
6842
6842
|
};
|
|
6843
6843
|
}
|
|
6844
6844
|
});
|
|
6845
|
-
const _hoisted_1$
|
|
6845
|
+
const _hoisted_1$K = {
|
|
6846
6846
|
class: "lupa-search-result-facet-term-values lupa-search-result-facet-hierarchy-values",
|
|
6847
6847
|
"data-cy": "lupa-search-result-facet-term-values"
|
|
6848
6848
|
};
|
|
6849
|
-
const _hoisted_2$
|
|
6850
|
-
const _hoisted_3$
|
|
6851
|
-
const _sfc_main$
|
|
6849
|
+
const _hoisted_2$u = { key: 0 };
|
|
6850
|
+
const _hoisted_3$m = ["placeholder"];
|
|
6851
|
+
const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
|
|
6852
6852
|
__name: "HierarchyFacet",
|
|
6853
6853
|
props: {
|
|
6854
6854
|
options: {},
|
|
@@ -6898,19 +6898,19 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
|
|
|
6898
6898
|
showAll.value = true;
|
|
6899
6899
|
};
|
|
6900
6900
|
return (_ctx, _cache) => {
|
|
6901
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
6902
|
-
isFilterable.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
6901
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$K, [
|
|
6902
|
+
isFilterable.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$u, [
|
|
6903
6903
|
vue.withDirectives(vue.createElementVNode("input", {
|
|
6904
6904
|
class: "lupa-term-filter",
|
|
6905
6905
|
"data-cy": "lupa-term-filter",
|
|
6906
6906
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => termFilter.value = $event),
|
|
6907
6907
|
placeholder: _ctx.options.labels.facetFilter
|
|
6908
|
-
}, null, 8, _hoisted_3$
|
|
6908
|
+
}, null, 8, _hoisted_3$m), [
|
|
6909
6909
|
[vue.vModelText, termFilter.value]
|
|
6910
6910
|
])
|
|
6911
6911
|
])) : vue.createCommentVNode("", true),
|
|
6912
6912
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayValues.value, (item) => {
|
|
6913
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
6913
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$O, {
|
|
6914
6914
|
key: item.title,
|
|
6915
6915
|
options: _ctx.options,
|
|
6916
6916
|
item,
|
|
@@ -6930,20 +6930,20 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
|
|
|
6930
6930
|
};
|
|
6931
6931
|
}
|
|
6932
6932
|
});
|
|
6933
|
-
const _hoisted_1$
|
|
6934
|
-
const _hoisted_2$
|
|
6933
|
+
const _hoisted_1$J = { class: "lupa-facet-label-text" };
|
|
6934
|
+
const _hoisted_2$t = {
|
|
6935
6935
|
key: 0,
|
|
6936
6936
|
class: "lupa-facet-content",
|
|
6937
6937
|
"data-cy": "lupa-facet-content"
|
|
6938
6938
|
};
|
|
6939
6939
|
const __default__$2 = {
|
|
6940
6940
|
components: {
|
|
6941
|
-
TermFacet: _sfc_main$
|
|
6942
|
-
StatsFacet: _sfc_main$
|
|
6943
|
-
HierarchyFacet: _sfc_main$
|
|
6941
|
+
TermFacet: _sfc_main$Q,
|
|
6942
|
+
StatsFacet: _sfc_main$P,
|
|
6943
|
+
HierarchyFacet: _sfc_main$N
|
|
6944
6944
|
}
|
|
6945
6945
|
};
|
|
6946
|
-
const _sfc_main$
|
|
6946
|
+
const _sfc_main$M = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, __default__$2), {
|
|
6947
6947
|
__name: "FacetDisplay",
|
|
6948
6948
|
props: {
|
|
6949
6949
|
options: {},
|
|
@@ -7054,12 +7054,12 @@ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
|
|
|
7054
7054
|
"data-cy": "lupa-search-result-facet-label",
|
|
7055
7055
|
onClick: toggleFacet
|
|
7056
7056
|
}, [
|
|
7057
|
-
vue.createElementVNode("div", _hoisted_1$
|
|
7057
|
+
vue.createElementVNode("div", _hoisted_1$J, vue.toDisplayString(facet.value.label), 1),
|
|
7058
7058
|
vue.createElementVNode("div", {
|
|
7059
7059
|
class: vue.normalizeClass(["lupa-facet-label-caret", isOpen.value && "open"])
|
|
7060
7060
|
}, null, 2)
|
|
7061
7061
|
], 2),
|
|
7062
|
-
isOpen.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
7062
|
+
isOpen.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$t, [
|
|
7063
7063
|
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(facetType.value), {
|
|
7064
7064
|
facet: facet.value,
|
|
7065
7065
|
currentFilters: currentFilters.value[facet.value.key],
|
|
@@ -7077,12 +7077,12 @@ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
|
|
|
7077
7077
|
};
|
|
7078
7078
|
}
|
|
7079
7079
|
}));
|
|
7080
|
-
const _hoisted_1$
|
|
7081
|
-
const _hoisted_2$
|
|
7080
|
+
const _hoisted_1$I = { class: "lupa-search-result-facet-section" };
|
|
7081
|
+
const _hoisted_2$s = {
|
|
7082
7082
|
key: 0,
|
|
7083
7083
|
class: "lupa-facets-title"
|
|
7084
7084
|
};
|
|
7085
|
-
const _sfc_main$
|
|
7085
|
+
const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
|
|
7086
7086
|
__name: "FacetList",
|
|
7087
7087
|
props: {
|
|
7088
7088
|
options: {},
|
|
@@ -7116,14 +7116,14 @@ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
|
|
|
7116
7116
|
};
|
|
7117
7117
|
return (_ctx, _cache) => {
|
|
7118
7118
|
var _a;
|
|
7119
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7120
|
-
_ctx.options.labels.title ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
7119
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$I, [
|
|
7120
|
+
_ctx.options.labels.title ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$s, vue.toDisplayString(_ctx.options.labels.title), 1)) : vue.createCommentVNode("", true),
|
|
7121
7121
|
vue.createElementVNode("div", {
|
|
7122
7122
|
class: vue.normalizeClass(["lupa-search-result-facet-list", "lupa-" + ((_a = _ctx.facetStyle) != null ? _a : "")])
|
|
7123
7123
|
}, [
|
|
7124
7124
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayFacets.value, (facet) => {
|
|
7125
7125
|
var _a2;
|
|
7126
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7126
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$M, {
|
|
7127
7127
|
key: facet.key,
|
|
7128
7128
|
facet,
|
|
7129
7129
|
currentFilters: currentFiltersValue.value,
|
|
@@ -7138,8 +7138,8 @@ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
|
|
|
7138
7138
|
};
|
|
7139
7139
|
}
|
|
7140
7140
|
});
|
|
7141
|
-
const _hoisted_1$
|
|
7142
|
-
const _sfc_main$
|
|
7141
|
+
const _hoisted_1$H = { class: "lupa-search-result-facets" };
|
|
7142
|
+
const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
|
|
7143
7143
|
__name: "Facets",
|
|
7144
7144
|
props: {
|
|
7145
7145
|
options: {},
|
|
@@ -7185,8 +7185,8 @@ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
|
|
|
7185
7185
|
paramStore.removeParameters({ paramsToRemove: [param] });
|
|
7186
7186
|
};
|
|
7187
7187
|
return (_ctx, _cache) => {
|
|
7188
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7189
|
-
regularFacets.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7188
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$H, [
|
|
7189
|
+
regularFacets.value ? (vue.openBlock(), vue.createBlock(_sfc_main$L, {
|
|
7190
7190
|
key: 0,
|
|
7191
7191
|
options: _ctx.options,
|
|
7192
7192
|
facets: regularFacets.value,
|
|
@@ -7200,11 +7200,11 @@ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
|
|
|
7200
7200
|
};
|
|
7201
7201
|
}
|
|
7202
7202
|
});
|
|
7203
|
-
const _hoisted_1$
|
|
7203
|
+
const _hoisted_1$G = {
|
|
7204
7204
|
id: "lupa-search-result-filters",
|
|
7205
7205
|
class: "lupa-search-result-filters"
|
|
7206
7206
|
};
|
|
7207
|
-
const _sfc_main$
|
|
7207
|
+
const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
|
|
7208
7208
|
__name: "SearchResultsFilters",
|
|
7209
7209
|
props: {
|
|
7210
7210
|
options: {},
|
|
@@ -7233,19 +7233,19 @@ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
|
|
|
7233
7233
|
__expose({ fetch: fetch2 });
|
|
7234
7234
|
return (_ctx, _cache) => {
|
|
7235
7235
|
var _a;
|
|
7236
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7237
|
-
showCurrentFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7236
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$G, [
|
|
7237
|
+
showCurrentFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$T, {
|
|
7238
7238
|
key: 0,
|
|
7239
7239
|
options: _ctx.options.currentFilters,
|
|
7240
7240
|
expandable: (_a = _ctx.expandable) != null ? _a : false
|
|
7241
7241
|
}, null, 8, ["options", "expandable"])) : vue.createCommentVNode("", true),
|
|
7242
|
-
_ctx.options.categories ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7242
|
+
_ctx.options.categories ? (vue.openBlock(), vue.createBlock(_sfc_main$R, {
|
|
7243
7243
|
key: 1,
|
|
7244
7244
|
options: _ctx.options.categories,
|
|
7245
7245
|
ref_key: "categoryFilters",
|
|
7246
7246
|
ref: categoryFilters
|
|
7247
7247
|
}, null, 8, ["options"])) : vue.createCommentVNode("", true),
|
|
7248
|
-
_ctx.options.facets ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7248
|
+
_ctx.options.facets ? (vue.openBlock(), vue.createBlock(_sfc_main$K, {
|
|
7249
7249
|
key: 2,
|
|
7250
7250
|
options: _ctx.options.facets
|
|
7251
7251
|
}, null, 8, ["options"])) : vue.createCommentVNode("", true)
|
|
@@ -7253,20 +7253,20 @@ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
|
|
|
7253
7253
|
};
|
|
7254
7254
|
}
|
|
7255
7255
|
});
|
|
7256
|
-
const _hoisted_1$
|
|
7256
|
+
const _hoisted_1$F = {
|
|
7257
7257
|
key: 0,
|
|
7258
7258
|
class: "lupa-mobile-filter-sidebar"
|
|
7259
7259
|
};
|
|
7260
|
-
const _hoisted_2$
|
|
7261
|
-
const _hoisted_3$
|
|
7262
|
-
const _hoisted_4$
|
|
7263
|
-
const _hoisted_5$
|
|
7264
|
-
const _hoisted_6$
|
|
7260
|
+
const _hoisted_2$r = ["onClick"];
|
|
7261
|
+
const _hoisted_3$l = { class: "lupa-mobile-sidebar-content" };
|
|
7262
|
+
const _hoisted_4$f = { class: "lupa-sidebar-top" };
|
|
7263
|
+
const _hoisted_5$8 = { class: "lupa-sidebar-title" };
|
|
7264
|
+
const _hoisted_6$5 = {
|
|
7265
7265
|
key: 0,
|
|
7266
7266
|
class: "lupa-sidebar-filter-count"
|
|
7267
7267
|
};
|
|
7268
|
-
const _hoisted_7$
|
|
7269
|
-
const _sfc_main$
|
|
7268
|
+
const _hoisted_7$4 = { class: "lupa-sidebar-filter-options" };
|
|
7269
|
+
const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
|
|
7270
7270
|
__name: "MobileFilterSidebar",
|
|
7271
7271
|
props: {
|
|
7272
7272
|
options: {}
|
|
@@ -7292,24 +7292,24 @@ const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
|
|
|
7292
7292
|
searchResultStore.setSidebarState({ visible: false });
|
|
7293
7293
|
};
|
|
7294
7294
|
return (_ctx, _cache) => {
|
|
7295
|
-
return isMobileSidebarVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7295
|
+
return isMobileSidebarVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$F, [
|
|
7296
7296
|
vue.createElementVNode("div", {
|
|
7297
7297
|
class: "lupa-sidebar-close",
|
|
7298
7298
|
onClick: vue.withModifiers(handleMobileToggle, ["stop"])
|
|
7299
|
-
}, null, 8, _hoisted_2$
|
|
7300
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
7301
|
-
vue.createElementVNode("div", _hoisted_4$
|
|
7302
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
7299
|
+
}, null, 8, _hoisted_2$r),
|
|
7300
|
+
vue.createElementVNode("div", _hoisted_3$l, [
|
|
7301
|
+
vue.createElementVNode("div", _hoisted_4$f, [
|
|
7302
|
+
vue.createElementVNode("div", _hoisted_5$8, [
|
|
7303
7303
|
vue.createTextVNode(vue.toDisplayString(sidebarTitle.value) + " ", 1),
|
|
7304
|
-
isFilterCountVisible.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$
|
|
7304
|
+
isFilterCountVisible.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$5, vue.toDisplayString(vue.unref(currentFilterCount)), 1)) : vue.createCommentVNode("", true)
|
|
7305
7305
|
]),
|
|
7306
7306
|
vue.createElementVNode("div", {
|
|
7307
7307
|
class: "lupa-filter-toggle-mobile",
|
|
7308
7308
|
onClick: handleMobileToggle
|
|
7309
7309
|
})
|
|
7310
7310
|
]),
|
|
7311
|
-
vue.createElementVNode("div", _hoisted_7$
|
|
7312
|
-
vue.createVNode(_sfc_main$
|
|
7311
|
+
vue.createElementVNode("div", _hoisted_7$4, [
|
|
7312
|
+
vue.createVNode(_sfc_main$J, {
|
|
7313
7313
|
options: _ctx.options,
|
|
7314
7314
|
expandable: isActiveFiltersExpanded.value
|
|
7315
7315
|
}, null, 8, ["options", "expandable"])
|
|
@@ -7319,14 +7319,14 @@ const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
|
|
|
7319
7319
|
};
|
|
7320
7320
|
}
|
|
7321
7321
|
});
|
|
7322
|
-
const _hoisted_1$
|
|
7323
|
-
const _hoisted_2$
|
|
7324
|
-
const _hoisted_3$
|
|
7322
|
+
const _hoisted_1$E = { id: "lupa-search-results-breadcrumbs" };
|
|
7323
|
+
const _hoisted_2$q = ["href", "onClick"];
|
|
7324
|
+
const _hoisted_3$k = {
|
|
7325
7325
|
key: 1,
|
|
7326
7326
|
class: "lupa-search-results-breadcrumb-text"
|
|
7327
7327
|
};
|
|
7328
|
-
const _hoisted_4$
|
|
7329
|
-
const _sfc_main$
|
|
7328
|
+
const _hoisted_4$e = { key: 2 };
|
|
7329
|
+
const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
|
|
7330
7330
|
__name: "SearchResultsBreadcrumbs",
|
|
7331
7331
|
props: {
|
|
7332
7332
|
breadcrumbs: {}
|
|
@@ -7351,7 +7351,7 @@ const _sfc_main$A = /* @__PURE__ */ vue.defineComponent({
|
|
|
7351
7351
|
handleRoutingEvent(link, event, hasEventRouting.value);
|
|
7352
7352
|
};
|
|
7353
7353
|
return (_ctx, _cache) => {
|
|
7354
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7354
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$E, [
|
|
7355
7355
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(breadcrumbsValue.value, (breadcrumb, index) => {
|
|
7356
7356
|
return vue.openBlock(), vue.createElementBlock("span", {
|
|
7357
7357
|
class: "lupa-search-results-breadcrumb",
|
|
@@ -7365,19 +7365,19 @@ const _sfc_main$A = /* @__PURE__ */ vue.defineComponent({
|
|
|
7365
7365
|
var _a;
|
|
7366
7366
|
return handleNavigation(e, (_a = breadcrumb == null ? void 0 : breadcrumb.link) != null ? _a : "");
|
|
7367
7367
|
}
|
|
7368
|
-
}, vue.toDisplayString(getLabel(breadcrumb.label)), 9, _hoisted_2$
|
|
7369
|
-
index < breadcrumbsValue.value.length - 1 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$
|
|
7368
|
+
}, vue.toDisplayString(getLabel(breadcrumb.label)), 9, _hoisted_2$q)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$k, vue.toDisplayString(getLabel(breadcrumb.label)), 1)),
|
|
7369
|
+
index < breadcrumbsValue.value.length - 1 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$e, " / ")) : vue.createCommentVNode("", true)
|
|
7370
7370
|
]);
|
|
7371
7371
|
}), 128))
|
|
7372
7372
|
]);
|
|
7373
7373
|
};
|
|
7374
7374
|
}
|
|
7375
7375
|
});
|
|
7376
|
-
const _hoisted_1$
|
|
7376
|
+
const _hoisted_1$D = {
|
|
7377
7377
|
id: "lupa-search-result-filters",
|
|
7378
7378
|
class: "lupa-search-result-filters"
|
|
7379
7379
|
};
|
|
7380
|
-
const _sfc_main$
|
|
7380
|
+
const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
|
|
7381
7381
|
__name: "FiltersTopDropdown",
|
|
7382
7382
|
props: {
|
|
7383
7383
|
options: {}
|
|
@@ -7385,8 +7385,8 @@ const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
|
|
|
7385
7385
|
setup(__props) {
|
|
7386
7386
|
return (_ctx, _cache) => {
|
|
7387
7387
|
var _a;
|
|
7388
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7389
|
-
_ctx.options.facets ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7388
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$D, [
|
|
7389
|
+
_ctx.options.facets ? (vue.openBlock(), vue.createBlock(_sfc_main$K, {
|
|
7390
7390
|
key: 0,
|
|
7391
7391
|
options: _ctx.options.facets,
|
|
7392
7392
|
"facet-style": (_a = _ctx.options.facets.style) == null ? void 0 : _a.type,
|
|
@@ -7396,8 +7396,8 @@ const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
|
|
|
7396
7396
|
};
|
|
7397
7397
|
}
|
|
7398
7398
|
});
|
|
7399
|
-
const _hoisted_1$
|
|
7400
|
-
const _sfc_main$
|
|
7399
|
+
const _hoisted_1$C = { id: "lupa-search-results-layout-selection" };
|
|
7400
|
+
const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
|
|
7401
7401
|
__name: "SearchResultsLayoutSelection",
|
|
7402
7402
|
setup(__props) {
|
|
7403
7403
|
const searchResultStore = useSearchResultStore();
|
|
@@ -7408,7 +7408,7 @@ const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
|
|
|
7408
7408
|
searchResultStore.setLayout(layout2);
|
|
7409
7409
|
};
|
|
7410
7410
|
return (_ctx, _cache) => {
|
|
7411
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7411
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$C, [
|
|
7412
7412
|
vue.createElementVNode("div", {
|
|
7413
7413
|
class: vue.normalizeClass([
|
|
7414
7414
|
"lupa-layout-selection-grid",
|
|
@@ -7430,11 +7430,11 @@ const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
|
|
|
7430
7430
|
};
|
|
7431
7431
|
}
|
|
7432
7432
|
});
|
|
7433
|
-
const _hoisted_1$
|
|
7433
|
+
const _hoisted_1$B = {
|
|
7434
7434
|
key: 0,
|
|
7435
7435
|
class: "lupa-mobile-toggle-filter-count"
|
|
7436
7436
|
};
|
|
7437
|
-
const _sfc_main$
|
|
7437
|
+
const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
|
|
7438
7438
|
__name: "SearchResultsMobileToggle",
|
|
7439
7439
|
props: {
|
|
7440
7440
|
label: {},
|
|
@@ -7452,26 +7452,26 @@ const _sfc_main$x = /* @__PURE__ */ vue.defineComponent({
|
|
|
7452
7452
|
onClick: handleMobileToggle
|
|
7453
7453
|
}, [
|
|
7454
7454
|
vue.createTextVNode(vue.toDisplayString(_ctx.label) + " ", 1),
|
|
7455
|
-
_ctx.showFilterCount && vue.unref(currentFilterCount) > 0 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$
|
|
7455
|
+
_ctx.showFilterCount && vue.unref(currentFilterCount) > 0 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$B, vue.toDisplayString(vue.unref(currentFilterCount)), 1)) : vue.createCommentVNode("", true)
|
|
7456
7456
|
], 2);
|
|
7457
7457
|
};
|
|
7458
7458
|
}
|
|
7459
7459
|
});
|
|
7460
|
-
const _hoisted_1$
|
|
7460
|
+
const _hoisted_1$A = {
|
|
7461
7461
|
key: 0,
|
|
7462
7462
|
id: "lupa-search-results-page-select",
|
|
7463
7463
|
"data-cy": "lupa-search-results-page-select"
|
|
7464
7464
|
};
|
|
7465
|
-
const _hoisted_2$
|
|
7465
|
+
const _hoisted_2$p = {
|
|
7466
7466
|
key: 0,
|
|
7467
7467
|
class: "lupa-page-number-separator"
|
|
7468
7468
|
};
|
|
7469
|
-
const _hoisted_3$
|
|
7470
|
-
const _hoisted_4$
|
|
7469
|
+
const _hoisted_3$j = ["onClick"];
|
|
7470
|
+
const _hoisted_4$d = {
|
|
7471
7471
|
key: 0,
|
|
7472
7472
|
class: "lupa-page-number-separator"
|
|
7473
7473
|
};
|
|
7474
|
-
const _sfc_main$
|
|
7474
|
+
const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
|
|
7475
7475
|
__name: "SearchResultsPageSelect",
|
|
7476
7476
|
props: {
|
|
7477
7477
|
lastPageLabel: {},
|
|
@@ -7533,7 +7533,7 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
7533
7533
|
}
|
|
7534
7534
|
};
|
|
7535
7535
|
return (_ctx, _cache) => {
|
|
7536
|
-
return showPagination.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7536
|
+
return showPagination.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$A, [
|
|
7537
7537
|
showBack.value ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
7538
7538
|
key: 0,
|
|
7539
7539
|
class: vue.normalizeClass(firstPageLabel.value === "<" ? "lupa-page-arrow" : "lupa-show-less"),
|
|
@@ -7544,7 +7544,7 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
7544
7544
|
class: "lupa-page-number lupa-page-number-first",
|
|
7545
7545
|
onClick: _cache[1] || (_cache[1] = () => handlePageChange(1))
|
|
7546
7546
|
}, " 1 "),
|
|
7547
|
-
showFirstPageSeparator.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
7547
|
+
showFirstPageSeparator.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$p, "...")) : vue.createCommentVNode("", true)
|
|
7548
7548
|
], 64)) : vue.createCommentVNode("", true),
|
|
7549
7549
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(pages.value, (page) => {
|
|
7550
7550
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -7555,10 +7555,10 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
7555
7555
|
page === _ctx.options.selectedPage ? "lupa-page-number-selected" : ""
|
|
7556
7556
|
]),
|
|
7557
7557
|
"data-cy": "lupa-page-number"
|
|
7558
|
-
}, vue.toDisplayString(page), 11, _hoisted_3$
|
|
7558
|
+
}, vue.toDisplayString(page), 11, _hoisted_3$j);
|
|
7559
7559
|
}), 128)),
|
|
7560
7560
|
showLastPage.value ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
|
|
7561
|
-
showLastPageSeparator.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$
|
|
7561
|
+
showLastPageSeparator.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$d, "...")) : vue.createCommentVNode("", true),
|
|
7562
7562
|
vue.createElementVNode("div", {
|
|
7563
7563
|
class: "lupa-page-number lupa-page-number-last",
|
|
7564
7564
|
onClick: _cache[2] || (_cache[2] = () => {
|
|
@@ -7577,13 +7577,13 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
7577
7577
|
};
|
|
7578
7578
|
}
|
|
7579
7579
|
});
|
|
7580
|
-
const _hoisted_1$
|
|
7580
|
+
const _hoisted_1$z = {
|
|
7581
7581
|
id: "lupa-search-results-page-size",
|
|
7582
7582
|
"data-cy": "lupa-search-results-page-size"
|
|
7583
7583
|
};
|
|
7584
|
-
const _hoisted_2$
|
|
7585
|
-
const _hoisted_3$
|
|
7586
|
-
const _sfc_main$
|
|
7584
|
+
const _hoisted_2$o = { id: "lupa-select" };
|
|
7585
|
+
const _hoisted_3$i = { class: "lupa-select-label" };
|
|
7586
|
+
const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
|
|
7587
7587
|
__name: "SearchResultsPageSize",
|
|
7588
7588
|
props: {
|
|
7589
7589
|
label: {},
|
|
@@ -7600,9 +7600,9 @@ const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
|
|
|
7600
7600
|
});
|
|
7601
7601
|
};
|
|
7602
7602
|
return (_ctx, _cache) => {
|
|
7603
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7604
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
7605
|
-
vue.createElementVNode("label", _hoisted_3$
|
|
7603
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$z, [
|
|
7604
|
+
vue.createElementVNode("div", _hoisted_2$o, [
|
|
7605
|
+
vue.createElementVNode("label", _hoisted_3$i, vue.toDisplayString(_ctx.label), 1),
|
|
7606
7606
|
vue.createElementVNode("select", {
|
|
7607
7607
|
class: "lupa-select-dropdown",
|
|
7608
7608
|
"data-cy": "lupa-page-size-select-dropdown",
|
|
@@ -7619,14 +7619,14 @@ const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
|
|
|
7619
7619
|
};
|
|
7620
7620
|
}
|
|
7621
7621
|
});
|
|
7622
|
-
const _hoisted_1$
|
|
7622
|
+
const _hoisted_1$y = {
|
|
7623
7623
|
id: "lupa-search-results-sort",
|
|
7624
7624
|
class: "lupa-search-results-sort"
|
|
7625
7625
|
};
|
|
7626
|
-
const _hoisted_2$
|
|
7627
|
-
const _hoisted_3$
|
|
7628
|
-
const _hoisted_4$
|
|
7629
|
-
const _sfc_main$
|
|
7626
|
+
const _hoisted_2$n = { id: "lupa-select" };
|
|
7627
|
+
const _hoisted_3$h = { class: "lupa-select-label" };
|
|
7628
|
+
const _hoisted_4$c = ["value"];
|
|
7629
|
+
const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
|
|
7630
7630
|
__name: "SearchResultsSort",
|
|
7631
7631
|
props: {
|
|
7632
7632
|
options: {},
|
|
@@ -7670,9 +7670,9 @@ const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
|
|
|
7670
7670
|
});
|
|
7671
7671
|
};
|
|
7672
7672
|
return (_ctx, _cache) => {
|
|
7673
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7674
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
7675
|
-
vue.createElementVNode("label", _hoisted_3$
|
|
7673
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$y, [
|
|
7674
|
+
vue.createElementVNode("div", _hoisted_2$n, [
|
|
7675
|
+
vue.createElementVNode("label", _hoisted_3$h, vue.toDisplayString(_ctx.options.label), 1),
|
|
7676
7676
|
vue.withDirectives(vue.createElementVNode("select", {
|
|
7677
7677
|
class: "lupa-select-dropdown",
|
|
7678
7678
|
"data-cy": "lupa-sort-select-dropdown",
|
|
@@ -7684,7 +7684,7 @@ const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
|
|
|
7684
7684
|
return vue.openBlock(), vue.createElementBlock("option", {
|
|
7685
7685
|
key: option.key,
|
|
7686
7686
|
value: option.key
|
|
7687
|
-
}, vue.toDisplayString(option.label), 9, _hoisted_4$
|
|
7687
|
+
}, vue.toDisplayString(option.label), 9, _hoisted_4$c);
|
|
7688
7688
|
}), 128))
|
|
7689
7689
|
], 544), [
|
|
7690
7690
|
[vue.vModelSelect, selectedKey.value]
|
|
@@ -7694,14 +7694,14 @@ const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
|
|
|
7694
7694
|
};
|
|
7695
7695
|
}
|
|
7696
7696
|
});
|
|
7697
|
-
const _hoisted_1$
|
|
7698
|
-
const _hoisted_2$
|
|
7699
|
-
const _hoisted_3$
|
|
7700
|
-
const _hoisted_4$
|
|
7701
|
-
const _hoisted_5$
|
|
7702
|
-
const _hoisted_6$
|
|
7703
|
-
const _hoisted_7$
|
|
7704
|
-
const _sfc_main$
|
|
7697
|
+
const _hoisted_1$x = { class: "lupa-toolbar-left" };
|
|
7698
|
+
const _hoisted_2$m = { key: 1 };
|
|
7699
|
+
const _hoisted_3$g = { key: 3 };
|
|
7700
|
+
const _hoisted_4$b = { key: 5 };
|
|
7701
|
+
const _hoisted_5$7 = { class: "lupa-toolbar-right" };
|
|
7702
|
+
const _hoisted_6$4 = { key: 1 };
|
|
7703
|
+
const _hoisted_7$3 = { key: 3 };
|
|
7704
|
+
const _sfc_main$A = /* @__PURE__ */ vue.defineComponent({
|
|
7705
7705
|
__name: "SearchResultsToolbar",
|
|
7706
7706
|
props: {
|
|
7707
7707
|
options: {},
|
|
@@ -7800,49 +7800,49 @@ const _sfc_main$t = /* @__PURE__ */ vue.defineComponent({
|
|
|
7800
7800
|
id: "lupa-search-results-toolbar",
|
|
7801
7801
|
class: vue.normalizeClass({ "lupa-filter-no-results": !hasResults.value })
|
|
7802
7802
|
}, [
|
|
7803
|
-
vue.createElementVNode("div", _hoisted_1$
|
|
7804
|
-
showLayoutSelection.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7805
|
-
showItemSummary.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7803
|
+
vue.createElementVNode("div", _hoisted_1$x, [
|
|
7804
|
+
showLayoutSelection.value ? (vue.openBlock(), vue.createBlock(_sfc_main$F, { key: 0 })) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$m)),
|
|
7805
|
+
showItemSummary.value ? (vue.openBlock(), vue.createBlock(_sfc_main$W, {
|
|
7806
7806
|
key: 2,
|
|
7807
7807
|
label: searchSummaryLabel.value,
|
|
7808
7808
|
clearable: vue.unref(hasAnyFilter) && showFilterClear.value,
|
|
7809
7809
|
onClear: handleClearAll
|
|
7810
|
-
}, null, 8, ["label", "clearable"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$
|
|
7811
|
-
displayPageSelect.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7810
|
+
}, null, 8, ["label", "clearable"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$g)),
|
|
7811
|
+
displayPageSelect.value ? (vue.openBlock(), vue.createBlock(_sfc_main$D, {
|
|
7812
7812
|
key: 4,
|
|
7813
7813
|
options: paginationOptions.value.pageSelect,
|
|
7814
7814
|
"last-page-label": paginationOptions.value.labels.showMore,
|
|
7815
7815
|
"first-page-label": paginationOptions.value.labels.showLess
|
|
7816
|
-
}, null, 8, ["options", "last-page-label", "first-page-label"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$
|
|
7816
|
+
}, null, 8, ["options", "last-page-label", "first-page-label"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$b))
|
|
7817
7817
|
]),
|
|
7818
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
7819
|
-
vue.createVNode(_sfc_main$
|
|
7818
|
+
vue.createElementVNode("div", _hoisted_5$7, [
|
|
7819
|
+
vue.createVNode(_sfc_main$E, {
|
|
7820
7820
|
label: optionsValue.value.labels.mobileFilterButton,
|
|
7821
7821
|
"show-filter-count": showMobileFilterCount.value
|
|
7822
7822
|
}, null, 8, ["label", "show-filter-count"]),
|
|
7823
|
-
paginationDisplay.value.pageSize ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7823
|
+
paginationDisplay.value.pageSize ? (vue.openBlock(), vue.createBlock(_sfc_main$C, {
|
|
7824
7824
|
key: 0,
|
|
7825
7825
|
options: paginationOptions.value.pageSize,
|
|
7826
7826
|
label: paginationOptions.value.labels.pageSize
|
|
7827
|
-
}, null, 8, ["options", "label"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_6$
|
|
7828
|
-
sortOptions.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7827
|
+
}, null, 8, ["options", "label"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_6$4)),
|
|
7828
|
+
sortOptions.value ? (vue.openBlock(), vue.createBlock(_sfc_main$B, {
|
|
7829
7829
|
key: 2,
|
|
7830
7830
|
options: sortOptions.value,
|
|
7831
7831
|
callbacks: callbacks.value
|
|
7832
|
-
}, null, 8, ["options", "callbacks"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_7$
|
|
7832
|
+
}, null, 8, ["options", "callbacks"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_7$3))
|
|
7833
7833
|
])
|
|
7834
7834
|
], 2);
|
|
7835
7835
|
};
|
|
7836
7836
|
}
|
|
7837
7837
|
});
|
|
7838
|
-
const _hoisted_1$
|
|
7839
|
-
const _hoisted_2$
|
|
7840
|
-
const _hoisted_3$
|
|
7841
|
-
const _hoisted_4$
|
|
7838
|
+
const _hoisted_1$w = { class: "lupa-badge-title" };
|
|
7839
|
+
const _hoisted_2$l = ["src"];
|
|
7840
|
+
const _hoisted_3$f = { key: 1 };
|
|
7841
|
+
const _hoisted_4$a = {
|
|
7842
7842
|
key: 0,
|
|
7843
7843
|
class: "lupa-badge-full-text"
|
|
7844
7844
|
};
|
|
7845
|
-
const _sfc_main$
|
|
7845
|
+
const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
|
|
7846
7846
|
__name: "SearchResultGeneratedBadge",
|
|
7847
7847
|
props: {
|
|
7848
7848
|
options: {},
|
|
@@ -7875,20 +7875,20 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
|
|
|
7875
7875
|
class: vue.normalizeClass(["lupa-dynamic-badge", customClassName.value]),
|
|
7876
7876
|
style: vue.normalizeStyle({ background: _ctx.badge.backgroundColor, color: _ctx.badge.color })
|
|
7877
7877
|
}, [
|
|
7878
|
-
vue.createElementVNode("span", _hoisted_1$
|
|
7878
|
+
vue.createElementVNode("span", _hoisted_1$w, [
|
|
7879
7879
|
image.value ? (vue.openBlock(), vue.createElementBlock("img", {
|
|
7880
7880
|
key: 0,
|
|
7881
7881
|
src: image.value
|
|
7882
|
-
}, null, 8, _hoisted_2$
|
|
7883
|
-
hasTitleText.value && showTitle.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
7882
|
+
}, null, 8, _hoisted_2$l)) : vue.createCommentVNode("", true),
|
|
7883
|
+
hasTitleText.value && showTitle.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$f, vue.toDisplayString(_ctx.badge.titleText), 1)) : vue.createCommentVNode("", true)
|
|
7884
7884
|
]),
|
|
7885
|
-
hasAdditionalText.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$
|
|
7885
|
+
hasAdditionalText.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$a, vue.toDisplayString(_ctx.badge.additionalText), 1)) : vue.createCommentVNode("", true)
|
|
7886
7886
|
], 6);
|
|
7887
7887
|
};
|
|
7888
7888
|
}
|
|
7889
7889
|
});
|
|
7890
|
-
const _hoisted_1$
|
|
7891
|
-
const _sfc_main$
|
|
7890
|
+
const _hoisted_1$v = { class: "lupa-generated-badges" };
|
|
7891
|
+
const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
|
|
7892
7892
|
__name: "SearchResultGeneratedBadges",
|
|
7893
7893
|
props: {
|
|
7894
7894
|
options: {}
|
|
@@ -7914,9 +7914,9 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
|
7914
7914
|
})).filter((b) => Boolean(b.id));
|
|
7915
7915
|
});
|
|
7916
7916
|
return (_ctx, _cache) => {
|
|
7917
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7917
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$v, [
|
|
7918
7918
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(badges.value, (badge) => {
|
|
7919
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
7919
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$z, {
|
|
7920
7920
|
key: badge.id,
|
|
7921
7921
|
badge,
|
|
7922
7922
|
options: _ctx.options
|
|
@@ -7926,8 +7926,8 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
|
7926
7926
|
};
|
|
7927
7927
|
}
|
|
7928
7928
|
});
|
|
7929
|
-
const _hoisted_1$
|
|
7930
|
-
const _sfc_main$
|
|
7929
|
+
const _hoisted_1$u = ["innerHTML"];
|
|
7930
|
+
const _sfc_main$x = /* @__PURE__ */ vue.defineComponent({
|
|
7931
7931
|
__name: "CustomBadge",
|
|
7932
7932
|
props: {
|
|
7933
7933
|
badge: {}
|
|
@@ -7946,12 +7946,12 @@ const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
|
|
|
7946
7946
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
7947
7947
|
class: vue.normalizeClass(className.value),
|
|
7948
7948
|
innerHTML: text.value
|
|
7949
|
-
}, null, 10, _hoisted_1$
|
|
7949
|
+
}, null, 10, _hoisted_1$u);
|
|
7950
7950
|
};
|
|
7951
7951
|
}
|
|
7952
7952
|
});
|
|
7953
|
-
const _hoisted_1$
|
|
7954
|
-
const _sfc_main$
|
|
7953
|
+
const _hoisted_1$t = { class: "lupa-text-badges" };
|
|
7954
|
+
const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
7955
7955
|
__name: "TextBadge",
|
|
7956
7956
|
props: {
|
|
7957
7957
|
badge: {}
|
|
@@ -7966,7 +7966,7 @@ const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
|
|
|
7966
7966
|
return badges.value.slice(0, props.badge.maxItems);
|
|
7967
7967
|
});
|
|
7968
7968
|
return (_ctx, _cache) => {
|
|
7969
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
7969
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$t, [
|
|
7970
7970
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayBadges.value, (item) => {
|
|
7971
7971
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
7972
7972
|
class: "lupa-badge lupa-text-badge",
|
|
@@ -7977,9 +7977,9 @@ const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
|
|
|
7977
7977
|
};
|
|
7978
7978
|
}
|
|
7979
7979
|
});
|
|
7980
|
-
const _hoisted_1$
|
|
7981
|
-
const _hoisted_2$
|
|
7982
|
-
const _sfc_main$
|
|
7980
|
+
const _hoisted_1$s = { class: "lupa-image-badges" };
|
|
7981
|
+
const _hoisted_2$k = ["src"];
|
|
7982
|
+
const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
|
|
7983
7983
|
__name: "ImageBadge",
|
|
7984
7984
|
props: {
|
|
7985
7985
|
badge: {}
|
|
@@ -7999,7 +7999,7 @@ const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
|
|
|
7999
7999
|
return `${props.badge.rootImageUrl}${src}`;
|
|
8000
8000
|
};
|
|
8001
8001
|
return (_ctx, _cache) => {
|
|
8002
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
8002
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$s, [
|
|
8003
8003
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayBadges.value, (item) => {
|
|
8004
8004
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
8005
8005
|
class: "lupa-badge lupa-image-badge",
|
|
@@ -8007,22 +8007,22 @@ const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
|
|
|
8007
8007
|
}, [
|
|
8008
8008
|
vue.createElementVNode("img", {
|
|
8009
8009
|
src: getImageUrl(item)
|
|
8010
|
-
}, null, 8, _hoisted_2$
|
|
8010
|
+
}, null, 8, _hoisted_2$k)
|
|
8011
8011
|
]);
|
|
8012
8012
|
}), 128))
|
|
8013
8013
|
]);
|
|
8014
8014
|
};
|
|
8015
8015
|
}
|
|
8016
8016
|
});
|
|
8017
|
-
const _hoisted_1$
|
|
8017
|
+
const _hoisted_1$r = { id: "lupa-search-results-badges" };
|
|
8018
8018
|
const __default__$1 = {
|
|
8019
8019
|
components: {
|
|
8020
|
-
CustomBadge: _sfc_main$
|
|
8021
|
-
TextBadge: _sfc_main$
|
|
8022
|
-
ImageBadge: _sfc_main$
|
|
8020
|
+
CustomBadge: _sfc_main$x,
|
|
8021
|
+
TextBadge: _sfc_main$w,
|
|
8022
|
+
ImageBadge: _sfc_main$v
|
|
8023
8023
|
}
|
|
8024
8024
|
};
|
|
8025
|
-
const _sfc_main$
|
|
8025
|
+
const _sfc_main$u = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, __default__$1), {
|
|
8026
8026
|
__name: "SearchResultsBadgeWrapper",
|
|
8027
8027
|
props: {
|
|
8028
8028
|
position: {},
|
|
@@ -8068,7 +8068,7 @@ const _sfc_main$n = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
|
|
|
8068
8068
|
}
|
|
8069
8069
|
};
|
|
8070
8070
|
return (_ctx, _cache) => {
|
|
8071
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
8071
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$r, [
|
|
8072
8072
|
vue.createElementVNode("div", {
|
|
8073
8073
|
id: "lupa-badges",
|
|
8074
8074
|
class: vue.normalizeClass(anchorPosition.value)
|
|
@@ -8079,7 +8079,7 @@ const _sfc_main$n = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
|
|
|
8079
8079
|
badge
|
|
8080
8080
|
}, null, 8, ["badge"]);
|
|
8081
8081
|
}), 128)),
|
|
8082
|
-
positionValue.value === "card" ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
8082
|
+
positionValue.value === "card" ? (vue.openBlock(), vue.createBlock(_sfc_main$y, {
|
|
8083
8083
|
key: 0,
|
|
8084
8084
|
options: _ctx.options
|
|
8085
8085
|
}, null, 8, ["options"])) : vue.createCommentVNode("", true)
|
|
@@ -8088,7 +8088,7 @@ const _sfc_main$n = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
|
|
|
8088
8088
|
};
|
|
8089
8089
|
}
|
|
8090
8090
|
}));
|
|
8091
|
-
const _sfc_main$
|
|
8091
|
+
const _sfc_main$t = /* @__PURE__ */ vue.defineComponent({
|
|
8092
8092
|
__name: "SearchResultsProductImage",
|
|
8093
8093
|
props: {
|
|
8094
8094
|
item: {},
|
|
@@ -8096,7 +8096,7 @@ const _sfc_main$m = /* @__PURE__ */ vue.defineComponent({
|
|
|
8096
8096
|
},
|
|
8097
8097
|
setup(__props) {
|
|
8098
8098
|
return (_ctx, _cache) => {
|
|
8099
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
8099
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$1a, {
|
|
8100
8100
|
item: _ctx.item,
|
|
8101
8101
|
options: _ctx.options,
|
|
8102
8102
|
"wrapper-class": "lupa-search-results-image-wrapper",
|
|
@@ -8105,14 +8105,14 @@ const _sfc_main$m = /* @__PURE__ */ vue.defineComponent({
|
|
|
8105
8105
|
};
|
|
8106
8106
|
}
|
|
8107
8107
|
});
|
|
8108
|
-
const _hoisted_1$
|
|
8109
|
-
const _hoisted_2$
|
|
8110
|
-
const _hoisted_3$
|
|
8108
|
+
const _hoisted_1$q = ["innerHTML"];
|
|
8109
|
+
const _hoisted_2$j = ["title"];
|
|
8110
|
+
const _hoisted_3$e = {
|
|
8111
8111
|
key: 0,
|
|
8112
8112
|
class: "lupa-search-results-product-title-text"
|
|
8113
8113
|
};
|
|
8114
|
-
const _hoisted_4$
|
|
8115
|
-
const _sfc_main$
|
|
8114
|
+
const _hoisted_4$9 = ["href"];
|
|
8115
|
+
const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
|
|
8116
8116
|
__name: "SearchResultsProductTitle",
|
|
8117
8117
|
props: {
|
|
8118
8118
|
item: {},
|
|
@@ -8145,25 +8145,25 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
|
|
|
8145
8145
|
class: "lupa-search-results-product-title",
|
|
8146
8146
|
style: vue.normalizeStyle(`-webkit-line-clamp: ${maxLines.value}`),
|
|
8147
8147
|
innerHTML: title.value
|
|
8148
|
-
}, null, 12, _hoisted_1$
|
|
8148
|
+
}, null, 12, _hoisted_1$q)) : (vue.openBlock(), vue.createElementBlock("div", {
|
|
8149
8149
|
key: 1,
|
|
8150
8150
|
class: "lupa-search-results-product-title",
|
|
8151
8151
|
style: vue.normalizeStyle(`-webkit-line-clamp: ${maxLines.value}`),
|
|
8152
8152
|
title: title.value
|
|
8153
8153
|
}, [
|
|
8154
|
-
!_ctx.options.link ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
8154
|
+
!_ctx.options.link ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$e, vue.toDisplayString(title.value), 1)) : vue.createCommentVNode("", true),
|
|
8155
8155
|
_ctx.options.link ? (vue.openBlock(), vue.createElementBlock("a", {
|
|
8156
8156
|
key: 1,
|
|
8157
8157
|
href: _ctx.link,
|
|
8158
8158
|
class: "lupa-search-results-product-title-text lupa-title-link",
|
|
8159
8159
|
onClick: handleNavigation
|
|
8160
|
-
}, vue.toDisplayString(title.value), 9, _hoisted_4$
|
|
8161
|
-
], 12, _hoisted_2$
|
|
8160
|
+
}, vue.toDisplayString(title.value), 9, _hoisted_4$9)) : vue.createCommentVNode("", true)
|
|
8161
|
+
], 12, _hoisted_2$j));
|
|
8162
8162
|
};
|
|
8163
8163
|
}
|
|
8164
8164
|
});
|
|
8165
|
-
const _hoisted_1$
|
|
8166
|
-
const _sfc_main$
|
|
8165
|
+
const _hoisted_1$p = ["innerHTML"];
|
|
8166
|
+
const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
8167
8167
|
__name: "SearchResultsProductDescription",
|
|
8168
8168
|
props: {
|
|
8169
8169
|
item: {},
|
|
@@ -8187,7 +8187,7 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
8187
8187
|
class: "lupa-search-results-product-description",
|
|
8188
8188
|
style: vue.normalizeStyle(`-webkit-line-clamp: ${maxLines.value}`),
|
|
8189
8189
|
innerHTML: description.value
|
|
8190
|
-
}, null, 12, _hoisted_1$
|
|
8190
|
+
}, null, 12, _hoisted_1$p)) : (vue.openBlock(), vue.createElementBlock("div", {
|
|
8191
8191
|
key: 1,
|
|
8192
8192
|
class: "lupa-search-results-product-description",
|
|
8193
8193
|
style: vue.normalizeStyle(`-webkit-line-clamp: ${maxLines.value}`)
|
|
@@ -8195,15 +8195,15 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
8195
8195
|
};
|
|
8196
8196
|
}
|
|
8197
8197
|
});
|
|
8198
|
-
const _hoisted_1$
|
|
8199
|
-
const _hoisted_2$
|
|
8200
|
-
const _hoisted_3$
|
|
8201
|
-
const _hoisted_4$
|
|
8202
|
-
const _hoisted_5$
|
|
8203
|
-
const _hoisted_6$
|
|
8204
|
-
const _hoisted_7$
|
|
8198
|
+
const _hoisted_1$o = { id: "lupa-search-results-rating" };
|
|
8199
|
+
const _hoisted_2$i = { class: "lupa-ratings" };
|
|
8200
|
+
const _hoisted_3$d = { class: "lupa-ratings-base" };
|
|
8201
|
+
const _hoisted_4$8 = ["innerHTML"];
|
|
8202
|
+
const _hoisted_5$6 = { class: "lupa-rating-wrapper" };
|
|
8203
|
+
const _hoisted_6$3 = ["innerHTML"];
|
|
8204
|
+
const _hoisted_7$2 = ["href"];
|
|
8205
8205
|
const STAR_COUNT = 5;
|
|
8206
|
-
const _sfc_main$
|
|
8206
|
+
const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
|
|
8207
8207
|
__name: "SearchResultsProductRating",
|
|
8208
8208
|
props: {
|
|
8209
8209
|
item: {},
|
|
@@ -8234,18 +8234,18 @@ const _sfc_main$j = /* @__PURE__ */ vue.defineComponent({
|
|
|
8234
8234
|
return generateLink(props.options.links.ratingDetails, props.item);
|
|
8235
8235
|
});
|
|
8236
8236
|
return (_ctx, _cache) => {
|
|
8237
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
8238
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
8239
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
8237
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$o, [
|
|
8238
|
+
vue.createElementVNode("div", _hoisted_2$i, [
|
|
8239
|
+
vue.createElementVNode("div", _hoisted_3$d, [
|
|
8240
8240
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(baseStars.value, (star, index) => {
|
|
8241
8241
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
8242
8242
|
key: index,
|
|
8243
8243
|
innerHTML: star,
|
|
8244
8244
|
class: "lupa-rating lupa-rating-not-highlighted"
|
|
8245
|
-
}, null, 8, _hoisted_4$
|
|
8245
|
+
}, null, 8, _hoisted_4$8);
|
|
8246
8246
|
}), 128))
|
|
8247
8247
|
]),
|
|
8248
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
8248
|
+
vue.createElementVNode("div", _hoisted_5$6, [
|
|
8249
8249
|
vue.createElementVNode("div", {
|
|
8250
8250
|
class: "lupa-ratings-highlighted",
|
|
8251
8251
|
style: vue.normalizeStyle({ width: ratingPercentage.value + "%" })
|
|
@@ -8255,7 +8255,7 @@ const _sfc_main$j = /* @__PURE__ */ vue.defineComponent({
|
|
|
8255
8255
|
key: index,
|
|
8256
8256
|
innerHTML: star,
|
|
8257
8257
|
class: "lupa-rating lupa-rating-highlighted"
|
|
8258
|
-
}, null, 8, _hoisted_6$
|
|
8258
|
+
}, null, 8, _hoisted_6$3);
|
|
8259
8259
|
}), 128))
|
|
8260
8260
|
], 4)
|
|
8261
8261
|
])
|
|
@@ -8263,16 +8263,16 @@ const _sfc_main$j = /* @__PURE__ */ vue.defineComponent({
|
|
|
8263
8263
|
vue.createElementVNode("a", {
|
|
8264
8264
|
href: ratingLink.value,
|
|
8265
8265
|
class: "lupa-total-ratings"
|
|
8266
|
-
}, vue.toDisplayString(totalRatings.value), 9, _hoisted_7$
|
|
8266
|
+
}, vue.toDisplayString(totalRatings.value), 9, _hoisted_7$2)
|
|
8267
8267
|
]);
|
|
8268
8268
|
};
|
|
8269
8269
|
}
|
|
8270
8270
|
});
|
|
8271
|
-
const _hoisted_1$
|
|
8271
|
+
const _hoisted_1$n = {
|
|
8272
8272
|
class: "lupa-search-results-product-regular-price",
|
|
8273
8273
|
"data-cy": "lupa-search-results-product-regular-price"
|
|
8274
8274
|
};
|
|
8275
|
-
const _sfc_main$
|
|
8275
|
+
const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
|
|
8276
8276
|
__name: "SearchResultsProductRegularPrice",
|
|
8277
8277
|
props: {
|
|
8278
8278
|
item: {},
|
|
@@ -8290,15 +8290,15 @@ const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
|
|
|
8290
8290
|
);
|
|
8291
8291
|
});
|
|
8292
8292
|
return (_ctx, _cache) => {
|
|
8293
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
8293
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$n, vue.toDisplayString(price.value), 1);
|
|
8294
8294
|
};
|
|
8295
8295
|
}
|
|
8296
8296
|
});
|
|
8297
|
-
const _hoisted_1$
|
|
8297
|
+
const _hoisted_1$m = {
|
|
8298
8298
|
class: "lupa-search-results-product-price",
|
|
8299
8299
|
"data-cy": "lupa-search-results-product-price"
|
|
8300
8300
|
};
|
|
8301
|
-
const _sfc_main$
|
|
8301
|
+
const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
|
|
8302
8302
|
__name: "SearchResultsProductPrice",
|
|
8303
8303
|
props: {
|
|
8304
8304
|
item: {},
|
|
@@ -8316,16 +8316,16 @@ const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
|
|
|
8316
8316
|
);
|
|
8317
8317
|
});
|
|
8318
8318
|
return (_ctx, _cache) => {
|
|
8319
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
8319
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$m, [
|
|
8320
8320
|
vue.createElementVNode("strong", null, vue.toDisplayString(price.value), 1)
|
|
8321
8321
|
]);
|
|
8322
8322
|
};
|
|
8323
8323
|
}
|
|
8324
8324
|
});
|
|
8325
|
-
const _hoisted_1$
|
|
8326
|
-
const _hoisted_2$
|
|
8327
|
-
const _hoisted_3$
|
|
8328
|
-
const _sfc_main$
|
|
8325
|
+
const _hoisted_1$l = { class: "lupa-search-results-add-to-cart-wrapper" };
|
|
8326
|
+
const _hoisted_2$h = { class: "lupa-search-results-product-addtocart" };
|
|
8327
|
+
const _hoisted_3$c = ["onClick", "disabled"];
|
|
8328
|
+
const _sfc_main$n = /* @__PURE__ */ vue.defineComponent({
|
|
8329
8329
|
__name: "SearchResultsProductAddToCart",
|
|
8330
8330
|
props: {
|
|
8331
8331
|
item: {},
|
|
@@ -8352,25 +8352,25 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
|
|
|
8352
8352
|
loading.value = false;
|
|
8353
8353
|
});
|
|
8354
8354
|
return (_ctx, _cache) => {
|
|
8355
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
8356
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
8355
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$l, [
|
|
8356
|
+
vue.createElementVNode("div", _hoisted_2$h, [
|
|
8357
8357
|
vue.createElementVNode("button", {
|
|
8358
8358
|
onClick: vue.withModifiers(handleClick, ["stop"]),
|
|
8359
8359
|
class: vue.normalizeClass(loading.value ? "lupa-add-to-cart-loading" : "lupa-add-to-cart"),
|
|
8360
8360
|
"data-cy": "lupa-add-to-cart",
|
|
8361
8361
|
disabled: !inStockValue.value || loading.value
|
|
8362
|
-
}, vue.toDisplayString(label.value), 11, _hoisted_3$
|
|
8362
|
+
}, vue.toDisplayString(label.value), 11, _hoisted_3$c)
|
|
8363
8363
|
])
|
|
8364
8364
|
]);
|
|
8365
8365
|
};
|
|
8366
8366
|
}
|
|
8367
8367
|
});
|
|
8368
|
-
const _hoisted_1$
|
|
8369
|
-
const _hoisted_2$
|
|
8370
|
-
const _hoisted_3$
|
|
8371
|
-
const _hoisted_4$
|
|
8372
|
-
const _hoisted_5$
|
|
8373
|
-
const _sfc_main$
|
|
8368
|
+
const _hoisted_1$k = ["innerHTML"];
|
|
8369
|
+
const _hoisted_2$g = { key: 0 };
|
|
8370
|
+
const _hoisted_3$b = { key: 1 };
|
|
8371
|
+
const _hoisted_4$7 = { class: "lupa-search-box-custom-label" };
|
|
8372
|
+
const _hoisted_5$5 = { class: "lupa-search-box-custom-text" };
|
|
8373
|
+
const _sfc_main$m = /* @__PURE__ */ vue.defineComponent({
|
|
8374
8374
|
__name: "SearchResultsProductCustom",
|
|
8375
8375
|
props: {
|
|
8376
8376
|
item: {},
|
|
@@ -8408,20 +8408,20 @@ const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
|
|
|
8408
8408
|
key: 0,
|
|
8409
8409
|
class: className.value,
|
|
8410
8410
|
innerHTML: text.value
|
|
8411
|
-
}, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1$
|
|
8411
|
+
}, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1$k)) : (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
|
|
8412
8412
|
key: 1,
|
|
8413
8413
|
class: className.value
|
|
8414
8414
|
}, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), [
|
|
8415
|
-
!label.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
8416
|
-
vue.createElementVNode("div", _hoisted_4$
|
|
8417
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
8415
|
+
!label.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$g, vue.toDisplayString(text.value), 1)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$b, [
|
|
8416
|
+
vue.createElementVNode("div", _hoisted_4$7, vue.toDisplayString(label.value), 1),
|
|
8417
|
+
vue.createElementVNode("div", _hoisted_5$5, vue.toDisplayString(text.value), 1)
|
|
8418
8418
|
]))
|
|
8419
8419
|
], 16));
|
|
8420
8420
|
};
|
|
8421
8421
|
}
|
|
8422
8422
|
});
|
|
8423
|
-
const _hoisted_1$
|
|
8424
|
-
const _sfc_main$
|
|
8423
|
+
const _hoisted_1$j = ["innerHTML"];
|
|
8424
|
+
const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
|
|
8425
8425
|
__name: "SearchResultsProductCustomHtmlElement",
|
|
8426
8426
|
props: {
|
|
8427
8427
|
item: {},
|
|
@@ -8445,15 +8445,15 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
|
|
|
8445
8445
|
return vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
|
|
8446
8446
|
class: className.value,
|
|
8447
8447
|
innerHTML: text.value
|
|
8448
|
-
}, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1$
|
|
8448
|
+
}, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1$j);
|
|
8449
8449
|
};
|
|
8450
8450
|
}
|
|
8451
8451
|
});
|
|
8452
|
-
const _hoisted_1$
|
|
8453
|
-
const _hoisted_2$
|
|
8454
|
-
const _hoisted_3$
|
|
8455
|
-
const _hoisted_4$
|
|
8456
|
-
const _sfc_main$
|
|
8452
|
+
const _hoisted_1$i = { id: "lupa-search-results-rating" };
|
|
8453
|
+
const _hoisted_2$f = ["innerHTML"];
|
|
8454
|
+
const _hoisted_3$a = { class: "lupa-ratings" };
|
|
8455
|
+
const _hoisted_4$6 = ["href"];
|
|
8456
|
+
const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
8457
8457
|
__name: "SearchResultsProductSingleStarRating",
|
|
8458
8458
|
props: {
|
|
8459
8459
|
item: {},
|
|
@@ -8481,35 +8481,35 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
|
|
|
8481
8481
|
return RATING_STAR_HTML;
|
|
8482
8482
|
});
|
|
8483
8483
|
return (_ctx, _cache) => {
|
|
8484
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
8484
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$i, [
|
|
8485
8485
|
vue.createElementVNode("div", {
|
|
8486
8486
|
innerHTML: star.value,
|
|
8487
8487
|
class: "lupa-rating lupa-rating-highlighted"
|
|
8488
|
-
}, null, 8, _hoisted_2$
|
|
8489
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
8488
|
+
}, null, 8, _hoisted_2$f),
|
|
8489
|
+
vue.createElementVNode("div", _hoisted_3$a, vue.toDisplayString(rating.value), 1),
|
|
8490
8490
|
vue.createElementVNode("a", {
|
|
8491
8491
|
href: ratingLink.value,
|
|
8492
8492
|
class: "lupa-total-ratings"
|
|
8493
|
-
}, vue.toDisplayString(totalRatings.value), 9, _hoisted_4$
|
|
8493
|
+
}, vue.toDisplayString(totalRatings.value), 9, _hoisted_4$6)
|
|
8494
8494
|
]);
|
|
8495
8495
|
};
|
|
8496
8496
|
}
|
|
8497
8497
|
});
|
|
8498
8498
|
const __default__ = {
|
|
8499
8499
|
components: {
|
|
8500
|
-
SearchResultsProductImage: _sfc_main$
|
|
8501
|
-
SearchResultsProductTitle: _sfc_main$
|
|
8502
|
-
SearchResultsProductDescription: _sfc_main$
|
|
8503
|
-
SearchResultsProductRating: _sfc_main$
|
|
8504
|
-
SearchResultsProductRegularPrice: _sfc_main$
|
|
8505
|
-
SearchResultsProductPrice: _sfc_main$
|
|
8506
|
-
SearchResultsProductAddToCart: _sfc_main$
|
|
8507
|
-
SearchResultsProductCustom: _sfc_main$
|
|
8508
|
-
SearchResultsProductCustomHtmlElement: _sfc_main$
|
|
8509
|
-
SearchResultsProductSingleStarRating: _sfc_main$
|
|
8510
|
-
}
|
|
8511
|
-
};
|
|
8512
|
-
const _sfc_main$
|
|
8500
|
+
SearchResultsProductImage: _sfc_main$t,
|
|
8501
|
+
SearchResultsProductTitle: _sfc_main$s,
|
|
8502
|
+
SearchResultsProductDescription: _sfc_main$r,
|
|
8503
|
+
SearchResultsProductRating: _sfc_main$q,
|
|
8504
|
+
SearchResultsProductRegularPrice: _sfc_main$p,
|
|
8505
|
+
SearchResultsProductPrice: _sfc_main$o,
|
|
8506
|
+
SearchResultsProductAddToCart: _sfc_main$n,
|
|
8507
|
+
SearchResultsProductCustom: _sfc_main$m,
|
|
8508
|
+
SearchResultsProductCustomHtmlElement: _sfc_main$l,
|
|
8509
|
+
SearchResultsProductSingleStarRating: _sfc_main$k
|
|
8510
|
+
}
|
|
8511
|
+
};
|
|
8512
|
+
const _sfc_main$j = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, __default__), {
|
|
8513
8513
|
__name: "SearchResultsProductCardElement",
|
|
8514
8514
|
props: {
|
|
8515
8515
|
item: {},
|
|
@@ -8579,13 +8579,13 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
|
|
|
8579
8579
|
};
|
|
8580
8580
|
}
|
|
8581
8581
|
}));
|
|
8582
|
-
const _hoisted_1$
|
|
8583
|
-
const _hoisted_2$
|
|
8582
|
+
const _hoisted_1$h = ["href"];
|
|
8583
|
+
const _hoisted_2$e = {
|
|
8584
8584
|
key: 0,
|
|
8585
8585
|
class: "lupa-out-of-stock"
|
|
8586
8586
|
};
|
|
8587
|
-
const _hoisted_3$
|
|
8588
|
-
const _sfc_main$
|
|
8587
|
+
const _hoisted_3$9 = { class: "lupa-search-result-product-details-section" };
|
|
8588
|
+
const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
|
|
8589
8589
|
__name: "SearchResultsProductCard",
|
|
8590
8590
|
props: {
|
|
8591
8591
|
product: {},
|
|
@@ -8730,7 +8730,7 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
|
|
|
8730
8730
|
class: vue.normalizeClass(["lupa-search-result-product-card", !isInStock.value ? "lupa-out-of-stock" : ""]),
|
|
8731
8731
|
onClick: handleClick
|
|
8732
8732
|
}, [
|
|
8733
|
-
vue.createVNode(_sfc_main$
|
|
8733
|
+
vue.createVNode(_sfc_main$u, { options: badgesOptions.value }, null, 8, ["options"]),
|
|
8734
8734
|
vue.createElementVNode("div", {
|
|
8735
8735
|
class: vue.normalizeClass(["lupa-search-result-product-contents", listLayoutClass.value])
|
|
8736
8736
|
}, [
|
|
@@ -8740,7 +8740,7 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
|
|
|
8740
8740
|
onClick: handleNavigation
|
|
8741
8741
|
}, [
|
|
8742
8742
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(imageElements.value, (element) => {
|
|
8743
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
8743
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$j, {
|
|
8744
8744
|
class: "lupa-search-results-product-element",
|
|
8745
8745
|
item: _ctx.product,
|
|
8746
8746
|
element,
|
|
@@ -8750,16 +8750,16 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
|
|
|
8750
8750
|
link: link.value
|
|
8751
8751
|
}, null, 8, ["item", "element", "labels", "inStock", "link"]);
|
|
8752
8752
|
}), 128)),
|
|
8753
|
-
vue.createVNode(_sfc_main$
|
|
8753
|
+
vue.createVNode(_sfc_main$u, {
|
|
8754
8754
|
options: badgesOptions.value,
|
|
8755
8755
|
position: "image",
|
|
8756
8756
|
class: "lupa-image-badges"
|
|
8757
8757
|
}, null, 8, ["options"]),
|
|
8758
|
-
((_a = labels.value) == null ? void 0 : _a.outOfStock) && !isInStock.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
8759
|
-
], 8, _hoisted_1$
|
|
8760
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
8758
|
+
((_a = labels.value) == null ? void 0 : _a.outOfStock) && !isInStock.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$e, vue.toDisplayString(labels.value.outOfStock), 1)) : vue.createCommentVNode("", true)
|
|
8759
|
+
], 8, _hoisted_1$h),
|
|
8760
|
+
vue.createElementVNode("div", _hoisted_3$9, [
|
|
8761
8761
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(detailElements.value, (element) => {
|
|
8762
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
8762
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$j, {
|
|
8763
8763
|
class: "lupa-search-results-product-element",
|
|
8764
8764
|
item: _ctx.product,
|
|
8765
8765
|
element,
|
|
@@ -8777,7 +8777,7 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
|
|
|
8777
8777
|
class: vue.normalizeClass("lupa-element-group-" + group)
|
|
8778
8778
|
}, [
|
|
8779
8779
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getGroupElements(group), (element) => {
|
|
8780
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
8780
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$j, {
|
|
8781
8781
|
class: "lupa-search-results-product-element",
|
|
8782
8782
|
item: _ctx.product,
|
|
8783
8783
|
element,
|
|
@@ -8795,23 +8795,23 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
|
|
|
8795
8795
|
};
|
|
8796
8796
|
}
|
|
8797
8797
|
});
|
|
8798
|
-
const _hoisted_1$
|
|
8798
|
+
const _hoisted_1$g = {
|
|
8799
8799
|
id: "lupa-search-results-similar-queries",
|
|
8800
8800
|
"data-cy": "lupa-search-results-similar-queries"
|
|
8801
8801
|
};
|
|
8802
|
-
const _hoisted_2$
|
|
8803
|
-
const _hoisted_3$
|
|
8802
|
+
const _hoisted_2$d = { class: "lupa-similar-queries-label" };
|
|
8803
|
+
const _hoisted_3$8 = {
|
|
8804
8804
|
class: "lupa-similar-query-label",
|
|
8805
8805
|
"data-cy": "lupa-similar-query-label"
|
|
8806
8806
|
};
|
|
8807
|
-
const _hoisted_4$
|
|
8808
|
-
const _hoisted_5$
|
|
8809
|
-
const _hoisted_6 = { key: 0 };
|
|
8810
|
-
const _hoisted_7 = {
|
|
8807
|
+
const _hoisted_4$5 = ["onClick"];
|
|
8808
|
+
const _hoisted_5$4 = ["innerHTML"];
|
|
8809
|
+
const _hoisted_6$2 = { key: 0 };
|
|
8810
|
+
const _hoisted_7$1 = {
|
|
8811
8811
|
class: "lupa-products",
|
|
8812
8812
|
"data-cy": "lupa-products"
|
|
8813
8813
|
};
|
|
8814
|
-
const _sfc_main$
|
|
8814
|
+
const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
|
|
8815
8815
|
__name: "SearchResultsSimilarQueries",
|
|
8816
8816
|
props: {
|
|
8817
8817
|
labels: {},
|
|
@@ -8841,11 +8841,11 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
|
|
|
8841
8841
|
paramsStore.goToResults({ searchText, facet });
|
|
8842
8842
|
};
|
|
8843
8843
|
return (_ctx, _cache) => {
|
|
8844
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
8845
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
8844
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$g, [
|
|
8845
|
+
vue.createElementVNode("div", _hoisted_2$d, vue.toDisplayString(_ctx.labels.similarQueries), 1),
|
|
8846
8846
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(similarQueries.value, (similarQuery, index) => {
|
|
8847
8847
|
return vue.openBlock(), vue.createElementBlock("div", { key: index }, [
|
|
8848
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
8848
|
+
vue.createElementVNode("div", _hoisted_3$8, [
|
|
8849
8849
|
vue.createElementVNode("span", null, vue.toDisplayString(similarQueryLabel.value), 1),
|
|
8850
8850
|
vue.createElementVNode("span", {
|
|
8851
8851
|
id: "lupa-similar-query-text-component",
|
|
@@ -8855,13 +8855,13 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
|
|
|
8855
8855
|
}, [
|
|
8856
8856
|
vue.createElementVNode("span", {
|
|
8857
8857
|
innerHTML: getSimilarQueryContent(similarQuery.displayQuery)
|
|
8858
|
-
}, null, 8, _hoisted_5$
|
|
8859
|
-
similarQuery.count ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6, " (" + vue.toDisplayString(similarQuery.count) + ")", 1)) : vue.createCommentVNode("", true)
|
|
8860
|
-
], 8, _hoisted_4$
|
|
8858
|
+
}, null, 8, _hoisted_5$4),
|
|
8859
|
+
similarQuery.count ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$2, " (" + vue.toDisplayString(similarQuery.count) + ")", 1)) : vue.createCommentVNode("", true)
|
|
8860
|
+
], 8, _hoisted_4$5)
|
|
8861
8861
|
]),
|
|
8862
|
-
vue.createElementVNode("div", _hoisted_7, [
|
|
8862
|
+
vue.createElementVNode("div", _hoisted_7$1, [
|
|
8863
8863
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(similarQuery.items, (product, index2) => {
|
|
8864
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
8864
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$i, {
|
|
8865
8865
|
style: vue.normalizeStyle(_ctx.columnSize),
|
|
8866
8866
|
key: getDocumentKey(index2, product),
|
|
8867
8867
|
product,
|
|
@@ -8875,15 +8875,15 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
|
|
|
8875
8875
|
};
|
|
8876
8876
|
}
|
|
8877
8877
|
});
|
|
8878
|
-
const _hoisted_1$
|
|
8878
|
+
const _hoisted_1$f = {
|
|
8879
8879
|
key: 0,
|
|
8880
8880
|
class: "lupa-results-additional-panel"
|
|
8881
8881
|
};
|
|
8882
|
-
const _hoisted_2$
|
|
8882
|
+
const _hoisted_2$c = {
|
|
8883
8883
|
class: "lupa-results-additional-panel-items",
|
|
8884
8884
|
"data-cy": "lupa-results-additional-panel-items"
|
|
8885
8885
|
};
|
|
8886
|
-
const _sfc_main$
|
|
8886
|
+
const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
|
|
8887
8887
|
__name: "AdditionalPanel",
|
|
8888
8888
|
props: {
|
|
8889
8889
|
panel: {},
|
|
@@ -8955,10 +8955,10 @@ const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
|
|
|
8955
8955
|
handleQueryChange();
|
|
8956
8956
|
});
|
|
8957
8957
|
return (_ctx, _cache) => {
|
|
8958
|
-
return hasResults.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
8959
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
8958
|
+
return hasResults.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$f, [
|
|
8959
|
+
vue.createElementVNode("div", _hoisted_2$c, [
|
|
8960
8960
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(visibleItems.value, (item, index) => {
|
|
8961
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
8961
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$i, {
|
|
8962
8962
|
key: index,
|
|
8963
8963
|
product: item,
|
|
8964
8964
|
options: _ctx.panel,
|
|
@@ -8976,11 +8976,11 @@ const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
|
|
|
8976
8976
|
};
|
|
8977
8977
|
}
|
|
8978
8978
|
});
|
|
8979
|
-
const _hoisted_1$
|
|
8979
|
+
const _hoisted_1$e = {
|
|
8980
8980
|
key: 0,
|
|
8981
8981
|
class: "lupa-results-additional-panels"
|
|
8982
8982
|
};
|
|
8983
|
-
const _sfc_main$
|
|
8983
|
+
const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
|
|
8984
8984
|
__name: "AdditionalPanels",
|
|
8985
8985
|
props: {
|
|
8986
8986
|
options: {},
|
|
@@ -8997,9 +8997,9 @@ const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
|
|
|
8997
8997
|
return locationPanels.value.length > 0;
|
|
8998
8998
|
});
|
|
8999
8999
|
return (_ctx, _cache) => {
|
|
9000
|
-
return isVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
9000
|
+
return isVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$e, [
|
|
9001
9001
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(locationPanels.value, (panel) => {
|
|
9002
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
9002
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$g, {
|
|
9003
9003
|
key: panel.queryKey,
|
|
9004
9004
|
panel,
|
|
9005
9005
|
options: _ctx.sdkOptions
|
|
@@ -9016,36 +9016,36 @@ const _export_sfc = (sfc, props) => {
|
|
|
9016
9016
|
}
|
|
9017
9017
|
return target;
|
|
9018
9018
|
};
|
|
9019
|
-
const _sfc_main$
|
|
9020
|
-
const _hoisted_1$
|
|
9021
|
-
const _hoisted_2$
|
|
9019
|
+
const _sfc_main$e = {};
|
|
9020
|
+
const _hoisted_1$d = { class: "lupa-spinner-wrapper" };
|
|
9021
|
+
const _hoisted_2$b = { class: "lupa-spinner" };
|
|
9022
9022
|
function _sfc_render(_ctx, _cache) {
|
|
9023
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
9024
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
9023
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$d, [
|
|
9024
|
+
vue.createElementVNode("div", _hoisted_2$b, [
|
|
9025
9025
|
(vue.openBlock(), vue.createElementBlock(vue.Fragment, null, vue.renderList(12, (x) => {
|
|
9026
9026
|
return vue.createElementVNode("div", { key: x });
|
|
9027
9027
|
}), 64))
|
|
9028
9028
|
])
|
|
9029
9029
|
]);
|
|
9030
9030
|
}
|
|
9031
|
-
const Spinner = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
9032
|
-
const _hoisted_1$
|
|
9033
|
-
const _hoisted_2$
|
|
9031
|
+
const Spinner = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render]]);
|
|
9032
|
+
const _hoisted_1$c = { id: "lupa-search-results-products" };
|
|
9033
|
+
const _hoisted_2$a = {
|
|
9034
9034
|
class: "lupa-products",
|
|
9035
9035
|
"data-cy": "lupa-products"
|
|
9036
9036
|
};
|
|
9037
|
-
const _hoisted_3$
|
|
9037
|
+
const _hoisted_3$7 = {
|
|
9038
9038
|
key: 0,
|
|
9039
9039
|
class: "lupa-empty-results",
|
|
9040
9040
|
"data-cy": "lupa-no-results-in-page"
|
|
9041
9041
|
};
|
|
9042
|
-
const _hoisted_4$
|
|
9042
|
+
const _hoisted_4$4 = {
|
|
9043
9043
|
key: 3,
|
|
9044
9044
|
class: "lupa-empty-results",
|
|
9045
9045
|
"data-cy": "lupa-no-results"
|
|
9046
9046
|
};
|
|
9047
|
-
const _hoisted_5 = { key: 4 };
|
|
9048
|
-
const _sfc_main$
|
|
9047
|
+
const _hoisted_5$3 = { key: 4 };
|
|
9048
|
+
const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
|
|
9049
9049
|
__name: "SearchResultsProducts",
|
|
9050
9050
|
props: {
|
|
9051
9051
|
options: {},
|
|
@@ -9136,23 +9136,23 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9136
9136
|
};
|
|
9137
9137
|
return (_ctx, _cache) => {
|
|
9138
9138
|
var _a;
|
|
9139
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
9139
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$c, [
|
|
9140
9140
|
vue.unref(loading) && !vue.unref(isMobileSidebarVisible) ? (vue.openBlock(), vue.createBlock(Spinner, {
|
|
9141
9141
|
key: 0,
|
|
9142
9142
|
class: "lupa-loader"
|
|
9143
9143
|
})) : vue.createCommentVNode("", true),
|
|
9144
9144
|
vue.unref(hasResults) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
|
|
9145
|
-
showTopFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
9145
|
+
showTopFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$G, {
|
|
9146
9146
|
key: 0,
|
|
9147
9147
|
options: (_a = _ctx.options.filters) != null ? _a : {}
|
|
9148
9148
|
}, null, 8, ["options"])) : vue.createCommentVNode("", true),
|
|
9149
|
-
showMobileFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
9149
|
+
showMobileFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$A, {
|
|
9150
9150
|
key: 1,
|
|
9151
9151
|
class: "lupa-toolbar-mobile",
|
|
9152
9152
|
options: _ctx.options,
|
|
9153
9153
|
"pagination-location": "top"
|
|
9154
9154
|
}, null, 8, ["options"])) : vue.createCommentVNode("", true),
|
|
9155
|
-
currentFilterOptions.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
9155
|
+
currentFilterOptions.value ? (vue.openBlock(), vue.createBlock(_sfc_main$T, {
|
|
9156
9156
|
key: 2,
|
|
9157
9157
|
class: vue.normalizeClass(currentFiltersClass.value),
|
|
9158
9158
|
"data-cy": "lupa-search-result-filters-mobile-toolbar",
|
|
@@ -9160,18 +9160,18 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9160
9160
|
expandable: !desktopFiltersExpanded.value
|
|
9161
9161
|
}, null, 8, ["class", "options", "expandable"])) : vue.createCommentVNode("", true)
|
|
9162
9162
|
], 64)) : vue.createCommentVNode("", true),
|
|
9163
|
-
vue.createVNode(_sfc_main$
|
|
9163
|
+
vue.createVNode(_sfc_main$f, {
|
|
9164
9164
|
options: _ctx.options,
|
|
9165
9165
|
location: "top",
|
|
9166
9166
|
sdkOptions: _ctx.options.options
|
|
9167
9167
|
}, null, 8, ["options", "sdkOptions"]),
|
|
9168
9168
|
vue.unref(hasResults) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
|
|
9169
|
-
vue.createVNode(_sfc_main$
|
|
9169
|
+
vue.createVNode(_sfc_main$A, {
|
|
9170
9170
|
class: "lupa-toolbar-top",
|
|
9171
9171
|
options: _ctx.options,
|
|
9172
9172
|
"pagination-location": "top"
|
|
9173
9173
|
}, null, 8, ["options"]),
|
|
9174
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
9174
|
+
vue.createElementVNode("div", _hoisted_2$a, [
|
|
9175
9175
|
_ctx.$slots.productCard ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 0 }, vue.renderList(vue.unref(searchResult).items, (product, index) => {
|
|
9176
9176
|
return vue.renderSlot(_ctx.$slots, "productCard", {
|
|
9177
9177
|
style: vue.normalizeStyle(columnSize.value),
|
|
@@ -9180,7 +9180,7 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9180
9180
|
options: productCardOptions.value
|
|
9181
9181
|
});
|
|
9182
9182
|
}), 128)) : (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 1 }, vue.renderList(vue.unref(searchResult).items, (product, index) => {
|
|
9183
|
-
return vue.openBlock(), vue.createBlock(_sfc_main$
|
|
9183
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$i, {
|
|
9184
9184
|
style: vue.normalizeStyle(columnSize.value),
|
|
9185
9185
|
key: getProductKeyAction(index, product),
|
|
9186
9186
|
product,
|
|
@@ -9188,7 +9188,7 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9188
9188
|
}, null, 8, ["style", "product", "options"]);
|
|
9189
9189
|
}), 128))
|
|
9190
9190
|
]),
|
|
9191
|
-
vue.unref(isPageEmpty) && _ctx.options.labels.noItemsInPage ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$
|
|
9191
|
+
vue.unref(isPageEmpty) && _ctx.options.labels.noItemsInPage ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$7, [
|
|
9192
9192
|
vue.createTextVNode(vue.toDisplayString(_ctx.options.labels.noItemsInPage) + " ", 1),
|
|
9193
9193
|
_ctx.options.labels.backToFirstPage ? (vue.openBlock(), vue.createElementBlock("span", {
|
|
9194
9194
|
key: 0,
|
|
@@ -9196,22 +9196,22 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9196
9196
|
onClick: goToFirstPage
|
|
9197
9197
|
}, vue.toDisplayString(_ctx.options.labels.backToFirstPage), 1)) : vue.createCommentVNode("", true)
|
|
9198
9198
|
])) : vue.createCommentVNode("", true),
|
|
9199
|
-
vue.createVNode(_sfc_main$
|
|
9199
|
+
vue.createVNode(_sfc_main$A, {
|
|
9200
9200
|
class: "lupa-toolbar-bottom",
|
|
9201
9201
|
options: _ctx.options,
|
|
9202
9202
|
"pagination-location": "bottom"
|
|
9203
9203
|
}, null, 8, ["options"]),
|
|
9204
|
-
vue.createVNode(_sfc_main$
|
|
9204
|
+
vue.createVNode(_sfc_main$f, {
|
|
9205
9205
|
options: _ctx.options,
|
|
9206
9206
|
location: "bottom",
|
|
9207
9207
|
sdkOptions: _ctx.options.options
|
|
9208
9208
|
}, null, 8, ["options", "sdkOptions"])
|
|
9209
|
-
], 64)) : !vue.unref(loading) && vue.unref(currentQueryText) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$
|
|
9209
|
+
], 64)) : !vue.unref(loading) && vue.unref(currentQueryText) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$4, [
|
|
9210
9210
|
vue.createTextVNode(vue.toDisplayString(_ctx.options.labels.emptyResults) + " ", 1),
|
|
9211
9211
|
vue.createElementVNode("span", null, vue.toDisplayString(vue.unref(currentQueryText)), 1)
|
|
9212
9212
|
])) : vue.createCommentVNode("", true),
|
|
9213
|
-
hasSimilarQueries.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5, [
|
|
9214
|
-
vue.createVNode(_sfc_main$
|
|
9213
|
+
hasSimilarQueries.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5$3, [
|
|
9214
|
+
vue.createVNode(_sfc_main$h, {
|
|
9215
9215
|
labels: similarQueriesLabels.value,
|
|
9216
9216
|
columnSize: columnSize.value,
|
|
9217
9217
|
productCardOptions: productCardOptions.value
|
|
@@ -9222,13 +9222,13 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9222
9222
|
};
|
|
9223
9223
|
}
|
|
9224
9224
|
});
|
|
9225
|
-
const _hoisted_1$
|
|
9226
|
-
const _hoisted_2$
|
|
9225
|
+
const _hoisted_1$b = { class: "lupa-top-mobile-filter-wrapper" };
|
|
9226
|
+
const _hoisted_2$9 = {
|
|
9227
9227
|
key: 0,
|
|
9228
9228
|
class: "lupa-category-back"
|
|
9229
9229
|
};
|
|
9230
|
-
const _hoisted_3$
|
|
9231
|
-
const _sfc_main$
|
|
9230
|
+
const _hoisted_3$6 = ["href"];
|
|
9231
|
+
const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
|
|
9232
9232
|
__name: "CategoryTopFilters",
|
|
9233
9233
|
props: {
|
|
9234
9234
|
options: {}
|
|
@@ -9260,15 +9260,15 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9260
9260
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
9261
9261
|
class: vue.normalizeClass(["lupa-category-top-mobile-filters", { "lupa-has-back-button": hasBackButton.value }])
|
|
9262
9262
|
}, [
|
|
9263
|
-
vue.createElementVNode("div", _hoisted_1$
|
|
9264
|
-
hasBackButton.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
9263
|
+
vue.createElementVNode("div", _hoisted_1$b, [
|
|
9264
|
+
hasBackButton.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$9, [
|
|
9265
9265
|
vue.createElementVNode("a", {
|
|
9266
9266
|
"data-cy": "lupa-category-back",
|
|
9267
9267
|
href: backUrlLink.value,
|
|
9268
9268
|
onClick: handleNavigationBack
|
|
9269
|
-
}, vue.toDisplayString(backTitle.value), 9, _hoisted_3$
|
|
9269
|
+
}, vue.toDisplayString(backTitle.value), 9, _hoisted_3$6)
|
|
9270
9270
|
])) : vue.createCommentVNode("", true),
|
|
9271
|
-
vue.createVNode(_sfc_main$
|
|
9271
|
+
vue.createVNode(_sfc_main$A, {
|
|
9272
9272
|
class: "lupa-toolbar-mobile",
|
|
9273
9273
|
"pagination-location": "top",
|
|
9274
9274
|
options: _ctx.options
|
|
@@ -9278,18 +9278,18 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9278
9278
|
};
|
|
9279
9279
|
}
|
|
9280
9280
|
});
|
|
9281
|
-
const _hoisted_1$
|
|
9281
|
+
const _hoisted_1$a = {
|
|
9282
9282
|
key: 0,
|
|
9283
9283
|
class: "lupa-container-title-summary-mobile"
|
|
9284
9284
|
};
|
|
9285
|
-
const _hoisted_2$
|
|
9285
|
+
const _hoisted_2$8 = {
|
|
9286
9286
|
key: 4,
|
|
9287
9287
|
id: "lupa-search-results",
|
|
9288
9288
|
class: "top-layout-wrapper"
|
|
9289
9289
|
};
|
|
9290
|
-
const _hoisted_3 = { class: "search-content" };
|
|
9291
|
-
const _hoisted_4 = { id: "lupa-search-results" };
|
|
9292
|
-
const _sfc_main$
|
|
9290
|
+
const _hoisted_3$5 = { class: "search-content" };
|
|
9291
|
+
const _hoisted_4$3 = { id: "lupa-search-results" };
|
|
9292
|
+
const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
|
|
9293
9293
|
__name: "SearchResults",
|
|
9294
9294
|
props: {
|
|
9295
9295
|
options: {},
|
|
@@ -9478,40 +9478,40 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9478
9478
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
9479
9479
|
class: vue.normalizeClass(["lupa-search-result-wrapper", { "lupa-search-wrapper-no-results": !vue.unref(hasResults) }])
|
|
9480
9480
|
}, [
|
|
9481
|
-
_ctx.isContainer ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
9482
|
-
vue.createVNode(_sfc_main$
|
|
9483
|
-
vue.createVNode(_sfc_main$
|
|
9481
|
+
_ctx.isContainer ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$a, [
|
|
9482
|
+
vue.createVNode(_sfc_main$X, { labels: didYouMeanLabels.value }, null, 8, ["labels"]),
|
|
9483
|
+
vue.createVNode(_sfc_main$V, {
|
|
9484
9484
|
"show-summary": true,
|
|
9485
9485
|
options: _ctx.options,
|
|
9486
9486
|
"is-product-list": (_a = _ctx.isProductList) != null ? _a : false
|
|
9487
9487
|
}, null, 8, ["options", "is-product-list"])
|
|
9488
9488
|
])) : vue.createCommentVNode("", true),
|
|
9489
|
-
isTitleResultTopPosition.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
9489
|
+
isTitleResultTopPosition.value ? (vue.openBlock(), vue.createBlock(_sfc_main$c, {
|
|
9490
9490
|
key: 1,
|
|
9491
9491
|
options: _ctx.options
|
|
9492
9492
|
}, null, 8, ["options"])) : vue.createCommentVNode("", true),
|
|
9493
|
-
_ctx.options.filters ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
9493
|
+
_ctx.options.filters ? (vue.openBlock(), vue.createBlock(_sfc_main$I, {
|
|
9494
9494
|
key: 2,
|
|
9495
9495
|
options: _ctx.options.filters
|
|
9496
9496
|
}, null, 8, ["options"])) : vue.createCommentVNode("", true),
|
|
9497
|
-
vue.unref(currentQueryText) || _ctx.isProductList ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
9497
|
+
vue.unref(currentQueryText) || _ctx.isProductList ? (vue.openBlock(), vue.createBlock(_sfc_main$H, {
|
|
9498
9498
|
key: 3,
|
|
9499
9499
|
breadcrumbs: _ctx.options.breadcrumbs
|
|
9500
9500
|
}, null, 8, ["breadcrumbs"])) : vue.createCommentVNode("", true),
|
|
9501
|
-
isTitleResultTopPosition.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
9502
|
-
showFilterSidebar.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
9501
|
+
isTitleResultTopPosition.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$8, [
|
|
9502
|
+
showFilterSidebar.value ? (vue.openBlock(), vue.createBlock(_sfc_main$J, {
|
|
9503
9503
|
key: 0,
|
|
9504
9504
|
options: (_b = _ctx.options.filters) != null ? _b : {},
|
|
9505
9505
|
ref_key: "searchResultsFilters",
|
|
9506
9506
|
ref: searchResultsFilters
|
|
9507
9507
|
}, null, 8, ["options"])) : vue.createCommentVNode("", true),
|
|
9508
|
-
vue.createElementVNode("div", _hoisted_3, [
|
|
9509
|
-
vue.createVNode(_sfc_main$
|
|
9510
|
-
vue.createVNode(_sfc_main$
|
|
9508
|
+
vue.createElementVNode("div", _hoisted_3$5, [
|
|
9509
|
+
vue.createVNode(_sfc_main$X, { labels: didYouMeanLabels.value }, null, 8, ["labels"]),
|
|
9510
|
+
vue.createVNode(_sfc_main$V, {
|
|
9511
9511
|
options: _ctx.options,
|
|
9512
9512
|
"is-product-list": (_c = _ctx.isProductList) != null ? _c : false
|
|
9513
9513
|
}, null, 8, ["options", "is-product-list"]),
|
|
9514
|
-
vue.createVNode(_sfc_main$
|
|
9514
|
+
vue.createVNode(_sfc_main$d, {
|
|
9515
9515
|
options: _ctx.options,
|
|
9516
9516
|
ssr: ssrEnabled.value
|
|
9517
9517
|
}, {
|
|
@@ -9522,19 +9522,19 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9522
9522
|
}, 8, ["options", "ssr"])
|
|
9523
9523
|
])
|
|
9524
9524
|
])) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 5 }, [
|
|
9525
|
-
vue.createVNode(_sfc_main$
|
|
9526
|
-
vue.createVNode(_sfc_main$
|
|
9525
|
+
vue.createVNode(_sfc_main$X, { labels: didYouMeanLabels.value }, null, 8, ["labels"]),
|
|
9526
|
+
vue.createVNode(_sfc_main$V, {
|
|
9527
9527
|
options: _ctx.options,
|
|
9528
9528
|
"is-product-list": (_d = _ctx.isProductList) != null ? _d : false
|
|
9529
9529
|
}, null, 8, ["options", "is-product-list"]),
|
|
9530
|
-
vue.createElementVNode("div", _hoisted_4, [
|
|
9531
|
-
showFilterSidebar.value ? (vue.openBlock(), vue.createBlock(_sfc_main$
|
|
9530
|
+
vue.createElementVNode("div", _hoisted_4$3, [
|
|
9531
|
+
showFilterSidebar.value ? (vue.openBlock(), vue.createBlock(_sfc_main$J, {
|
|
9532
9532
|
key: 0,
|
|
9533
9533
|
options: (_e = _ctx.options.filters) != null ? _e : {},
|
|
9534
9534
|
ref_key: "searchResultsFilters",
|
|
9535
9535
|
ref: searchResultsFilters
|
|
9536
9536
|
}, null, 8, ["options"])) : vue.createCommentVNode("", true),
|
|
9537
|
-
vue.createVNode(_sfc_main$
|
|
9537
|
+
vue.createVNode(_sfc_main$d, {
|
|
9538
9538
|
options: _ctx.options,
|
|
9539
9539
|
ssr: ssrEnabled.value
|
|
9540
9540
|
}, vue.createSlots({
|
|
@@ -9557,12 +9557,12 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9557
9557
|
};
|
|
9558
9558
|
}
|
|
9559
9559
|
});
|
|
9560
|
-
const _hoisted_1$
|
|
9560
|
+
const _hoisted_1$9 = {
|
|
9561
9561
|
key: 0,
|
|
9562
9562
|
class: "lupa-category-overview"
|
|
9563
9563
|
};
|
|
9564
|
-
const _hoisted_2$
|
|
9565
|
-
const _sfc_main$
|
|
9564
|
+
const _hoisted_2$7 = ["innerHTML"];
|
|
9565
|
+
const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
|
|
9566
9566
|
__name: "CategoryDescription",
|
|
9567
9567
|
props: {
|
|
9568
9568
|
options: {}
|
|
@@ -9578,16 +9578,16 @@ const _sfc_main$3 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9578
9578
|
return Boolean((_b = (_a = props.options.categories) == null ? void 0 : _a.current) == null ? void 0 : _b.description);
|
|
9579
9579
|
});
|
|
9580
9580
|
return (_ctx, _cache) => {
|
|
9581
|
-
return overviewVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
9581
|
+
return overviewVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$9, [
|
|
9582
9582
|
vue.createElementVNode("div", {
|
|
9583
9583
|
class: "lupa-category-description",
|
|
9584
9584
|
innerHTML: description.value
|
|
9585
|
-
}, null, 8, _hoisted_2$
|
|
9585
|
+
}, null, 8, _hoisted_2$7)
|
|
9586
9586
|
])) : vue.createCommentVNode("", true);
|
|
9587
9587
|
};
|
|
9588
9588
|
}
|
|
9589
9589
|
});
|
|
9590
|
-
const _sfc_main$
|
|
9590
|
+
const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
|
|
9591
9591
|
__name: "ProductList",
|
|
9592
9592
|
props: {
|
|
9593
9593
|
options: {}
|
|
@@ -9609,7 +9609,7 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9609
9609
|
__expose({ fetch: fetch2 });
|
|
9610
9610
|
return (_ctx, _cache) => {
|
|
9611
9611
|
return vue.openBlock(), vue.createElementBlock("div", null, [
|
|
9612
|
-
vue.createVNode(_sfc_main$
|
|
9612
|
+
vue.createVNode(_sfc_main$b, {
|
|
9613
9613
|
options: componentOptions.value,
|
|
9614
9614
|
"initial-filters": _ctx.options.initialFilters,
|
|
9615
9615
|
"is-product-list": true,
|
|
@@ -9617,7 +9617,7 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
|
9617
9617
|
ref: searchResults
|
|
9618
9618
|
}, {
|
|
9619
9619
|
default: vue.withCtx(() => [
|
|
9620
|
-
vue.createVNode(_sfc_main$
|
|
9620
|
+
vue.createVNode(_sfc_main$a, { options: _ctx.options }, null, 8, ["options"])
|
|
9621
9621
|
]),
|
|
9622
9622
|
_: 1
|
|
9623
9623
|
}, 8, ["options", "initial-filters"])
|
|
@@ -15108,9 +15108,9 @@ lodash.exports;
|
|
|
15108
15108
|
}).call(commonjsGlobal);
|
|
15109
15109
|
})(lodash, lodash.exports);
|
|
15110
15110
|
var lodashExports = lodash.exports;
|
|
15111
|
-
const _hoisted_1$
|
|
15112
|
-
const _hoisted_2$
|
|
15113
|
-
const _sfc_main$
|
|
15111
|
+
const _hoisted_1$8 = ["onClick"];
|
|
15112
|
+
const _hoisted_2$6 = { class: "lupa-search-box-container" };
|
|
15113
|
+
const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
|
|
15114
15114
|
__name: "SearchContainer",
|
|
15115
15115
|
props: {
|
|
15116
15116
|
options: {}
|
|
@@ -15155,8 +15155,8 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
|
15155
15155
|
class: "lupa-search-container",
|
|
15156
15156
|
onClick: vue.withModifiers(innerClick, ["stop"])
|
|
15157
15157
|
}, [
|
|
15158
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
15159
|
-
vue.createVNode(_sfc_main$
|
|
15158
|
+
vue.createElementVNode("div", _hoisted_2$6, [
|
|
15159
|
+
vue.createVNode(_sfc_main$Y, {
|
|
15160
15160
|
options: fullSearchBoxOptions.value,
|
|
15161
15161
|
"is-search-container": true,
|
|
15162
15162
|
ref_key: "searchBox",
|
|
@@ -15164,13 +15164,13 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
|
15164
15164
|
onClose: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("close"))
|
|
15165
15165
|
}, null, 8, ["options"])
|
|
15166
15166
|
]),
|
|
15167
|
-
vue.createVNode(_sfc_main$
|
|
15167
|
+
vue.createVNode(_sfc_main$b, {
|
|
15168
15168
|
options: fullSearchResultsOptions.value,
|
|
15169
15169
|
"is-container": true,
|
|
15170
15170
|
ref_key: "searchResults",
|
|
15171
15171
|
ref: searchResults
|
|
15172
15172
|
}, null, 8, ["options"])
|
|
15173
|
-
], 8, _hoisted_1$
|
|
15173
|
+
], 8, _hoisted_1$8)
|
|
15174
15174
|
]);
|
|
15175
15175
|
};
|
|
15176
15176
|
}
|
|
@@ -15874,13 +15874,13 @@ var Slide = vue.defineComponent({
|
|
|
15874
15874
|
}
|
|
15875
15875
|
});
|
|
15876
15876
|
const carousel = "";
|
|
15877
|
-
const _hoisted_1 = { class: "lupa-search-product-recommendations-wrapper" };
|
|
15878
|
-
const _hoisted_2 = {
|
|
15877
|
+
const _hoisted_1$7 = { class: "lupa-search-product-recommendations-wrapper" };
|
|
15878
|
+
const _hoisted_2$5 = {
|
|
15879
15879
|
key: 0,
|
|
15880
15880
|
class: "lupa-recommended-products",
|
|
15881
15881
|
"data-cy": "lupa-recommended-products"
|
|
15882
15882
|
};
|
|
15883
|
-
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
15883
|
+
const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
|
|
15884
15884
|
__name: "Recommendations",
|
|
15885
15885
|
props: {
|
|
15886
15886
|
options: {}
|
|
@@ -15966,8 +15966,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
15966
15966
|
});
|
|
15967
15967
|
__expose({ fetch: fetch2 });
|
|
15968
15968
|
return (_ctx, _cache) => {
|
|
15969
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
|
|
15970
|
-
!loading.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2, [
|
|
15969
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$7, [
|
|
15970
|
+
!loading.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$5, [
|
|
15971
15971
|
vue.createVNode(vue.unref(Carousel), vue.mergeProps(carouselOptions.value, { "wrap-around": true }), {
|
|
15972
15972
|
addons: vue.withCtx(() => [
|
|
15973
15973
|
vue.createVNode(vue.unref(Navigation))
|
|
@@ -15978,7 +15978,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
15978
15978
|
key: getProductKeyAction(index, product)
|
|
15979
15979
|
}, {
|
|
15980
15980
|
default: vue.withCtx(() => [
|
|
15981
|
-
vue.createVNode(_sfc_main$
|
|
15981
|
+
vue.createVNode(_sfc_main$i, {
|
|
15982
15982
|
product,
|
|
15983
15983
|
options: _ctx.options,
|
|
15984
15984
|
"click-tracking-settings": clickTrackingSettings.value
|
|
@@ -15995,6 +15995,534 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
15995
15995
|
};
|
|
15996
15996
|
}
|
|
15997
15997
|
});
|
|
15998
|
+
const _withScopeId = (n) => (vue.pushScopeId("data-v-6fa22b2b"), n = n(), vue.popScopeId(), n);
|
|
15999
|
+
const _hoisted_1$6 = { class: "lupa-chat-spinner" };
|
|
16000
|
+
const _hoisted_2$4 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.createElementVNode("div", null, null, -1));
|
|
16001
|
+
const _hoisted_3$4 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.createElementVNode("div", null, null, -1));
|
|
16002
|
+
const _hoisted_4$2 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.createElementVNode("div", null, null, -1));
|
|
16003
|
+
const _hoisted_5$2 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.createElementVNode("div", null, null, -1));
|
|
16004
|
+
const _hoisted_6$1 = [
|
|
16005
|
+
_hoisted_2$4,
|
|
16006
|
+
_hoisted_3$4,
|
|
16007
|
+
_hoisted_4$2,
|
|
16008
|
+
_hoisted_5$2
|
|
16009
|
+
];
|
|
16010
|
+
const _hoisted_7 = { class: "lupa-chat-spinner-message" };
|
|
16011
|
+
const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
16012
|
+
__name: "ChatSpinner",
|
|
16013
|
+
props: {
|
|
16014
|
+
small: { type: Boolean },
|
|
16015
|
+
message: {}
|
|
16016
|
+
},
|
|
16017
|
+
setup(__props) {
|
|
16018
|
+
return (_ctx, _cache) => {
|
|
16019
|
+
return vue.openBlock(), vue.createElementBlock("section", _hoisted_1$6, [
|
|
16020
|
+
vue.createElementVNode("div", {
|
|
16021
|
+
class: vue.normalizeClass([{ small: _ctx.small }, "lds-ring"])
|
|
16022
|
+
}, _hoisted_6$1, 2),
|
|
16023
|
+
vue.createElementVNode("div", _hoisted_7, vue.toDisplayString(_ctx.message), 1)
|
|
16024
|
+
]);
|
|
16025
|
+
};
|
|
16026
|
+
}
|
|
16027
|
+
});
|
|
16028
|
+
const ChatSpinner_vue_vue_type_style_index_0_scoped_6fa22b2b_lang = "";
|
|
16029
|
+
const ChatSpinner = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-6fa22b2b"]]);
|
|
16030
|
+
const _hoisted_1$5 = { class: "lupa-chat-input-container" };
|
|
16031
|
+
const _hoisted_2$3 = { id: "lupa-search-box-input" };
|
|
16032
|
+
const _hoisted_3$3 = {
|
|
16033
|
+
key: 0,
|
|
16034
|
+
class: "lupa-chat-form-submit"
|
|
16035
|
+
};
|
|
16036
|
+
const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
16037
|
+
__name: "ChatInput",
|
|
16038
|
+
props: {
|
|
16039
|
+
disabled: { type: Boolean }
|
|
16040
|
+
},
|
|
16041
|
+
emits: ["submit"],
|
|
16042
|
+
setup(__props, { emit }) {
|
|
16043
|
+
const inputValue = vue.ref("");
|
|
16044
|
+
const submit = () => {
|
|
16045
|
+
emit("submit", inputValue.value);
|
|
16046
|
+
inputValue.value = "";
|
|
16047
|
+
};
|
|
16048
|
+
return (_ctx, _cache) => {
|
|
16049
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$5, [
|
|
16050
|
+
vue.createElementVNode("form", {
|
|
16051
|
+
action: "javascript:void(0);",
|
|
16052
|
+
class: "chat-input-form",
|
|
16053
|
+
onSubmit: submit
|
|
16054
|
+
}, [
|
|
16055
|
+
vue.createElementVNode("div", _hoisted_2$3, [
|
|
16056
|
+
vue.withDirectives(vue.createElementVNode("input", {
|
|
16057
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => inputValue.value = $event),
|
|
16058
|
+
ref: "mainInput",
|
|
16059
|
+
autocomplete: "off",
|
|
16060
|
+
class: "lupa-search-box-input-field",
|
|
16061
|
+
"data-cy": "lupa-search-box-input-field",
|
|
16062
|
+
type: "text",
|
|
16063
|
+
placeholder: "Type your request here..."
|
|
16064
|
+
}, null, 512), [
|
|
16065
|
+
[vue.vModelText, inputValue.value]
|
|
16066
|
+
])
|
|
16067
|
+
]),
|
|
16068
|
+
!_ctx.disabled ? (vue.openBlock(), vue.createElementBlock("button", _hoisted_3$3, "Ask LupaChat")) : (vue.openBlock(), vue.createBlock(ChatSpinner, {
|
|
16069
|
+
key: 1,
|
|
16070
|
+
small: true
|
|
16071
|
+
}))
|
|
16072
|
+
], 32)
|
|
16073
|
+
]);
|
|
16074
|
+
};
|
|
16075
|
+
}
|
|
16076
|
+
});
|
|
16077
|
+
const Env = {
|
|
16078
|
+
production: "https://api.lupasearch.com/v1/",
|
|
16079
|
+
staging: "https://api.staging.lupasearch.com/v1/"
|
|
16080
|
+
};
|
|
16081
|
+
const defaultConfig = {
|
|
16082
|
+
method: "POST",
|
|
16083
|
+
headers: { "Content-Type": "application/json" }
|
|
16084
|
+
};
|
|
16085
|
+
const getApiUrl = (environment, customBaseUrl) => {
|
|
16086
|
+
if (customBaseUrl) {
|
|
16087
|
+
return customBaseUrl;
|
|
16088
|
+
}
|
|
16089
|
+
return Env[environment] || Env["production"];
|
|
16090
|
+
};
|
|
16091
|
+
const suggestSearchChatPhrases = (options, request) => __async(exports, null, function* () {
|
|
16092
|
+
const { environment, customBaseUrl } = options;
|
|
16093
|
+
const res = yield fetch(`${getApiUrl(environment, customBaseUrl)}chat/`, __spreadProps(__spreadValues({}, defaultConfig), {
|
|
16094
|
+
body: JSON.stringify(request)
|
|
16095
|
+
}));
|
|
16096
|
+
if (res.status < 400) {
|
|
16097
|
+
const data = yield res.json();
|
|
16098
|
+
return __spreadProps(__spreadValues({}, data), { success: true });
|
|
16099
|
+
}
|
|
16100
|
+
const errors = yield res.json();
|
|
16101
|
+
return { success: false, errors };
|
|
16102
|
+
});
|
|
16103
|
+
const suggestPhraseAlternatives = (_0, _1) => __async(exports, [_0, _1], function* (options, { phrases }) {
|
|
16104
|
+
const { environment, customBaseUrl } = options;
|
|
16105
|
+
const res = yield fetch(`${getApiUrl(environment, customBaseUrl)}chat/phraseAlternatives`, __spreadProps(__spreadValues({}, defaultConfig), {
|
|
16106
|
+
body: JSON.stringify({ phrases })
|
|
16107
|
+
}));
|
|
16108
|
+
if (res.status < 400) {
|
|
16109
|
+
const data = yield res.json();
|
|
16110
|
+
return __spreadProps(__spreadValues({}, data), { success: true });
|
|
16111
|
+
}
|
|
16112
|
+
const errors = yield res.json();
|
|
16113
|
+
return { success: false, errors };
|
|
16114
|
+
});
|
|
16115
|
+
const suggestSimplifiedPhrases = (_0, _1) => __async(exports, [_0, _1], function* (options, { phrases }) {
|
|
16116
|
+
const { environment, customBaseUrl } = options;
|
|
16117
|
+
const res = yield fetch(`${getApiUrl(environment, customBaseUrl)}chat/simplify`, __spreadProps(__spreadValues({}, defaultConfig), {
|
|
16118
|
+
body: JSON.stringify({ phrases })
|
|
16119
|
+
}));
|
|
16120
|
+
if (res.status < 400) {
|
|
16121
|
+
const data = yield res.json();
|
|
16122
|
+
console.log(data);
|
|
16123
|
+
return __spreadProps(__spreadValues({}, data), { success: true });
|
|
16124
|
+
}
|
|
16125
|
+
const errors = yield res.json();
|
|
16126
|
+
return { success: false, errors };
|
|
16127
|
+
});
|
|
16128
|
+
const suggestBestProductMatches = (_0, _1) => __async(exports, [_0, _1], function* (options, {
|
|
16129
|
+
initialQuery,
|
|
16130
|
+
productStrings,
|
|
16131
|
+
messageHistory
|
|
16132
|
+
}) {
|
|
16133
|
+
const { environment, customBaseUrl } = options;
|
|
16134
|
+
const res = yield fetch(`${getApiUrl(environment, customBaseUrl)}chat/bestProducts`, __spreadProps(__spreadValues({}, defaultConfig), {
|
|
16135
|
+
body: JSON.stringify({ initialQuery, messageHistory, productStrings })
|
|
16136
|
+
}));
|
|
16137
|
+
if (res.status < 400) {
|
|
16138
|
+
const data = yield res.json();
|
|
16139
|
+
console.log(data);
|
|
16140
|
+
return __spreadProps(__spreadValues({}, data), { success: true });
|
|
16141
|
+
}
|
|
16142
|
+
const errors = yield res.json();
|
|
16143
|
+
return { success: false, errors };
|
|
16144
|
+
});
|
|
16145
|
+
const prepareChatHistory = (chatLog) => {
|
|
16146
|
+
var _a, _b;
|
|
16147
|
+
const history = [];
|
|
16148
|
+
for (const log of chatLog) {
|
|
16149
|
+
history.push({
|
|
16150
|
+
role: "user",
|
|
16151
|
+
content: log.userInput
|
|
16152
|
+
});
|
|
16153
|
+
history.push({
|
|
16154
|
+
role: "assistant",
|
|
16155
|
+
content: log.suggestedPhrases.join(", ")
|
|
16156
|
+
});
|
|
16157
|
+
if (((_a = log.bestItems) == null ? void 0 : _a.length) > 0) {
|
|
16158
|
+
history.push({
|
|
16159
|
+
role: "assistant",
|
|
16160
|
+
content: `I suggest these best item matches to your query: ${(_b = log.bestItems) == null ? void 0 : _b.join(", ")}`
|
|
16161
|
+
});
|
|
16162
|
+
}
|
|
16163
|
+
}
|
|
16164
|
+
return history;
|
|
16165
|
+
};
|
|
16166
|
+
const ChatService = {
|
|
16167
|
+
suggestSearchChatPhrases,
|
|
16168
|
+
suggestPhraseAlternatives,
|
|
16169
|
+
suggestSimplifiedPhrases,
|
|
16170
|
+
suggestBestProductMatches,
|
|
16171
|
+
prepareChatHistory
|
|
16172
|
+
};
|
|
16173
|
+
const _hoisted_1$4 = { class: "lupa-chat-results" };
|
|
16174
|
+
const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
16175
|
+
__name: "ChatPhraseProductsList",
|
|
16176
|
+
props: {
|
|
16177
|
+
options: {},
|
|
16178
|
+
searchResults: {}
|
|
16179
|
+
},
|
|
16180
|
+
setup(__props) {
|
|
16181
|
+
const props = __props;
|
|
16182
|
+
const getProductKeyAction = (index, product) => {
|
|
16183
|
+
return getProductKey(`${index}`, product, props.options.idKey);
|
|
16184
|
+
};
|
|
16185
|
+
return (_ctx, _cache) => {
|
|
16186
|
+
return vue.openBlock(), vue.createElementBlock("section", _hoisted_1$4, [
|
|
16187
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.searchResults, (product, index) => {
|
|
16188
|
+
return vue.openBlock(), vue.createBlock(_sfc_main$i, {
|
|
16189
|
+
class: "lupa-chat-product-card",
|
|
16190
|
+
key: getProductKeyAction(index, product),
|
|
16191
|
+
product,
|
|
16192
|
+
options: _ctx.options
|
|
16193
|
+
}, null, 8, ["product", "options"]);
|
|
16194
|
+
}), 128))
|
|
16195
|
+
]);
|
|
16196
|
+
};
|
|
16197
|
+
}
|
|
16198
|
+
});
|
|
16199
|
+
const _hoisted_1$3 = { class: "lupa-chat-content-entry-phrase" };
|
|
16200
|
+
const _hoisted_2$2 = { class: "lupa-chat-phrase-title" };
|
|
16201
|
+
const _hoisted_3$2 = {
|
|
16202
|
+
key: 0,
|
|
16203
|
+
class: "alert"
|
|
16204
|
+
};
|
|
16205
|
+
const _hoisted_4$1 = {
|
|
16206
|
+
key: 0,
|
|
16207
|
+
class: "lupa-chat-no-results"
|
|
16208
|
+
};
|
|
16209
|
+
const _hoisted_5$1 = /* @__PURE__ */ vue.createElementVNode("p", null, "We found no matches for this search term", -1);
|
|
16210
|
+
const _hoisted_6 = [
|
|
16211
|
+
_hoisted_5$1
|
|
16212
|
+
];
|
|
16213
|
+
const _sfc_main$3 = /* @__PURE__ */ vue.defineComponent({
|
|
16214
|
+
__name: "ChatContentEntryPhrase",
|
|
16215
|
+
props: {
|
|
16216
|
+
options: {},
|
|
16217
|
+
phrase: {}
|
|
16218
|
+
},
|
|
16219
|
+
emits: ["loaded"],
|
|
16220
|
+
setup(__props, { emit }) {
|
|
16221
|
+
const props = __props;
|
|
16222
|
+
const searchResults = vue.ref([]);
|
|
16223
|
+
const usedAlternativePhrases = vue.ref([]);
|
|
16224
|
+
const usedPartialResults = vue.ref(false);
|
|
16225
|
+
const loading = vue.ref(false);
|
|
16226
|
+
const currentAction = vue.ref("");
|
|
16227
|
+
const displayPhrase = vue.computed(() => props.phrase.replace(",", ""));
|
|
16228
|
+
vue.onMounted(() => __async(this, null, function* () {
|
|
16229
|
+
loading.value = true;
|
|
16230
|
+
currentAction.value = "Loading search results...";
|
|
16231
|
+
try {
|
|
16232
|
+
const initialResults = yield getSearchResults(props.phrase, 8);
|
|
16233
|
+
if (initialResults.length) {
|
|
16234
|
+
searchResults.value = initialResults;
|
|
16235
|
+
if (initialResults.length > 2) {
|
|
16236
|
+
return;
|
|
16237
|
+
}
|
|
16238
|
+
}
|
|
16239
|
+
currentAction.value = "Checking for alternative phrases...";
|
|
16240
|
+
const alternatives = yield getPhraseAlternatives();
|
|
16241
|
+
yield addAlternativePhraseResults(alternatives, 6);
|
|
16242
|
+
if (!searchResults.value.length) {
|
|
16243
|
+
const partialAlteratives = [props.phrase].map((phrase) => phrase.split(/\s+/)).flat();
|
|
16244
|
+
currentAction.value = "Checking for partial alternatives...";
|
|
16245
|
+
const partialResults = yield addAlternativePhraseResults(partialAlteratives, 4);
|
|
16246
|
+
if (partialResults == null ? void 0 : partialResults.length) {
|
|
16247
|
+
usedPartialResults.value = true;
|
|
16248
|
+
}
|
|
16249
|
+
}
|
|
16250
|
+
} finally {
|
|
16251
|
+
loading.value = false;
|
|
16252
|
+
currentAction.value = "";
|
|
16253
|
+
emit("loaded", searchResults.value);
|
|
16254
|
+
}
|
|
16255
|
+
}));
|
|
16256
|
+
const addAlternativePhraseResults = (phrases, limit = 5) => __async(this, null, function* () {
|
|
16257
|
+
const allResults = [];
|
|
16258
|
+
for (const phrase of phrases) {
|
|
16259
|
+
const results = yield getSearchResults(phrase, limit);
|
|
16260
|
+
if (results.length) {
|
|
16261
|
+
usedAlternativePhrases.value.push(phrase);
|
|
16262
|
+
addToSearchResults(results);
|
|
16263
|
+
allResults.push(...results);
|
|
16264
|
+
}
|
|
16265
|
+
}
|
|
16266
|
+
return allResults;
|
|
16267
|
+
});
|
|
16268
|
+
const addToSearchResults = (items) => {
|
|
16269
|
+
const newDocuments = items.filter((item) => {
|
|
16270
|
+
return !searchResults.value.find((result) => result.id === item.id);
|
|
16271
|
+
});
|
|
16272
|
+
searchResults.value.push(...newDocuments);
|
|
16273
|
+
};
|
|
16274
|
+
const getSearchResults = (phrase, limit = 5) => __async(this, null, function* () {
|
|
16275
|
+
const query = { searchText: phrase, limit };
|
|
16276
|
+
const result = yield LupaSearchSdk.query(
|
|
16277
|
+
props.options.displayOptions.queryKey,
|
|
16278
|
+
query,
|
|
16279
|
+
props.options.sdkOptions
|
|
16280
|
+
);
|
|
16281
|
+
if (!result.success) {
|
|
16282
|
+
return [];
|
|
16283
|
+
}
|
|
16284
|
+
return result.items;
|
|
16285
|
+
});
|
|
16286
|
+
const getPhraseAlternatives = () => __async(this, null, function* () {
|
|
16287
|
+
const { phrases } = yield ChatService.suggestPhraseAlternatives(props.options.sdkOptions, {
|
|
16288
|
+
phrases: [props.phrase]
|
|
16289
|
+
});
|
|
16290
|
+
return phrases != null ? phrases : [];
|
|
16291
|
+
});
|
|
16292
|
+
return (_ctx, _cache) => {
|
|
16293
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$3, [
|
|
16294
|
+
vue.createElementVNode("div", _hoisted_2$2, [
|
|
16295
|
+
vue.createElementVNode("h3", null, vue.toDisplayString(displayPhrase.value), 1),
|
|
16296
|
+
vue.createElementVNode("sub", null, vue.toDisplayString(usedAlternativePhrases.value.join(", ")), 1),
|
|
16297
|
+
usedPartialResults.value ? (vue.openBlock(), vue.createElementBlock("sub", _hoisted_3$2, "Including partial matches - which might not be what you are looking for")) : vue.createCommentVNode("", true)
|
|
16298
|
+
]),
|
|
16299
|
+
vue.createElementVNode("div", null, [
|
|
16300
|
+
vue.createVNode(_sfc_main$4, {
|
|
16301
|
+
"search-results": searchResults.value,
|
|
16302
|
+
options: _ctx.options.displayOptions
|
|
16303
|
+
}, null, 8, ["search-results", "options"])
|
|
16304
|
+
]),
|
|
16305
|
+
!loading.value && !searchResults.value.length ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$1, _hoisted_6)) : vue.createCommentVNode("", true),
|
|
16306
|
+
loading.value ? (vue.openBlock(), vue.createBlock(ChatSpinner, {
|
|
16307
|
+
key: 1,
|
|
16308
|
+
message: currentAction.value
|
|
16309
|
+
}, null, 8, ["message"])) : vue.createCommentVNode("", true)
|
|
16310
|
+
]);
|
|
16311
|
+
};
|
|
16312
|
+
}
|
|
16313
|
+
});
|
|
16314
|
+
const _hoisted_1$2 = { class: "lupa-chat-best-matches lupa-chat-content-entry" };
|
|
16315
|
+
const _hoisted_2$1 = /* @__PURE__ */ vue.createElementVNode("h3", null, "Best matches", -1);
|
|
16316
|
+
const _hoisted_3$1 = { key: 0 };
|
|
16317
|
+
const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
16318
|
+
__name: "ChatContentEntry",
|
|
16319
|
+
props: {
|
|
16320
|
+
entry: {},
|
|
16321
|
+
options: {},
|
|
16322
|
+
history: {}
|
|
16323
|
+
},
|
|
16324
|
+
emits: ["loaded"],
|
|
16325
|
+
setup(__props, { emit }) {
|
|
16326
|
+
const props = __props;
|
|
16327
|
+
const bestMatches = vue.ref([]);
|
|
16328
|
+
const loadedResults = vue.ref([]);
|
|
16329
|
+
const loadedEntries = vue.ref(0);
|
|
16330
|
+
const loading = vue.ref(true);
|
|
16331
|
+
const entryCount = vue.computed(() => {
|
|
16332
|
+
return props.entry.allPhrases.length;
|
|
16333
|
+
});
|
|
16334
|
+
const loaded = (results = []) => {
|
|
16335
|
+
loadedResults.value.push(...results);
|
|
16336
|
+
loadedEntries.value++;
|
|
16337
|
+
if (loadedEntries.value === entryCount.value) {
|
|
16338
|
+
loadFinalRecommendations();
|
|
16339
|
+
}
|
|
16340
|
+
};
|
|
16341
|
+
const titleKey = vue.computed(() => {
|
|
16342
|
+
var _a;
|
|
16343
|
+
return (_a = props.options.displayOptions.titleKey) != null ? _a : "title";
|
|
16344
|
+
});
|
|
16345
|
+
const loadFinalRecommendations = () => __async(this, null, function* () {
|
|
16346
|
+
var _a;
|
|
16347
|
+
try {
|
|
16348
|
+
const productResultStrings = loadedResults.value.map(
|
|
16349
|
+
(result) => {
|
|
16350
|
+
var _a2, _b;
|
|
16351
|
+
return (_b = (_a2 = result[titleKey.value]) == null ? void 0 : _a2.toString()) != null ? _b : "";
|
|
16352
|
+
}
|
|
16353
|
+
);
|
|
16354
|
+
const { products } = yield ChatService.suggestBestProductMatches(props.options.sdkOptions, {
|
|
16355
|
+
initialQuery: props.entry.userInput,
|
|
16356
|
+
productStrings: productResultStrings,
|
|
16357
|
+
messageHistory: (_a = props.history) != null ? _a : []
|
|
16358
|
+
});
|
|
16359
|
+
bestMatches.value = products;
|
|
16360
|
+
emit("loaded", products);
|
|
16361
|
+
} finally {
|
|
16362
|
+
loading.value = false;
|
|
16363
|
+
}
|
|
16364
|
+
});
|
|
16365
|
+
const bestMatchProducts = vue.computed(() => {
|
|
16366
|
+
return bestMatches.value.map((productName) => {
|
|
16367
|
+
return loadedResults.value.find((r) => r[titleKey.value] === productName);
|
|
16368
|
+
}).filter(Boolean);
|
|
16369
|
+
});
|
|
16370
|
+
const explanation = vue.computed(() => {
|
|
16371
|
+
var _a, _b;
|
|
16372
|
+
return ((_a = bestMatches.value) == null ? void 0 : _a.length) > 0 && !bestMatchProducts.value.length ? (_b = bestMatches == null ? void 0 : bestMatches.value) == null ? void 0 : _b[0] : "";
|
|
16373
|
+
});
|
|
16374
|
+
return (_ctx, _cache) => {
|
|
16375
|
+
return vue.openBlock(), vue.createElementBlock("div", null, [
|
|
16376
|
+
vue.createElementVNode("ul", null, [
|
|
16377
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.entry.allPhrases, (phrase) => {
|
|
16378
|
+
return vue.openBlock(), vue.createElementBlock("li", {
|
|
16379
|
+
key: phrase,
|
|
16380
|
+
class: "lupa-chat-content-entry"
|
|
16381
|
+
}, [
|
|
16382
|
+
phrase ? (vue.openBlock(), vue.createBlock(_sfc_main$3, {
|
|
16383
|
+
key: 0,
|
|
16384
|
+
phrase,
|
|
16385
|
+
options: _ctx.options,
|
|
16386
|
+
onLoaded: loaded
|
|
16387
|
+
}, null, 8, ["phrase", "options"])) : vue.createCommentVNode("", true)
|
|
16388
|
+
]);
|
|
16389
|
+
}), 128))
|
|
16390
|
+
]),
|
|
16391
|
+
vue.createElementVNode("section", _hoisted_1$2, [
|
|
16392
|
+
_hoisted_2$1,
|
|
16393
|
+
explanation.value ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_3$1, vue.toDisplayString(explanation.value), 1)) : vue.createCommentVNode("", true),
|
|
16394
|
+
loading.value ? (vue.openBlock(), vue.createBlock(ChatSpinner, {
|
|
16395
|
+
key: 1,
|
|
16396
|
+
message: "Selecting the best matches for you. This might take a few seconds."
|
|
16397
|
+
})) : vue.createCommentVNode("", true),
|
|
16398
|
+
bestMatches.value.length ? (vue.openBlock(), vue.createBlock(_sfc_main$4, {
|
|
16399
|
+
key: 2,
|
|
16400
|
+
"search-results": bestMatchProducts.value,
|
|
16401
|
+
options: _ctx.options.displayOptions
|
|
16402
|
+
}, null, 8, ["search-results", "options"])) : vue.createCommentVNode("", true)
|
|
16403
|
+
])
|
|
16404
|
+
]);
|
|
16405
|
+
};
|
|
16406
|
+
}
|
|
16407
|
+
});
|
|
16408
|
+
const _hoisted_1$1 = { class: "lupa-chat-section-title" };
|
|
16409
|
+
const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
16410
|
+
__name: "ChatContentList",
|
|
16411
|
+
props: {
|
|
16412
|
+
content: {},
|
|
16413
|
+
options: {},
|
|
16414
|
+
history: {}
|
|
16415
|
+
},
|
|
16416
|
+
emits: ["loaded"],
|
|
16417
|
+
setup(__props, { emit }) {
|
|
16418
|
+
const bestItemsLoaded = (items, key) => {
|
|
16419
|
+
emit("loaded", { items, key });
|
|
16420
|
+
};
|
|
16421
|
+
return (_ctx, _cache) => {
|
|
16422
|
+
return vue.openBlock(), vue.createElementBlock("div", null, [
|
|
16423
|
+
vue.createElementVNode("ul", null, [
|
|
16424
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.content, (entry) => {
|
|
16425
|
+
return vue.openBlock(), vue.createElementBlock("li", {
|
|
16426
|
+
key: entry.key
|
|
16427
|
+
}, [
|
|
16428
|
+
vue.createElementVNode("h4", _hoisted_1$1, vue.toDisplayString(entry.userInput), 1),
|
|
16429
|
+
vue.createVNode(_sfc_main$2, {
|
|
16430
|
+
entry,
|
|
16431
|
+
options: _ctx.options,
|
|
16432
|
+
history: _ctx.history,
|
|
16433
|
+
onLoaded: (items) => bestItemsLoaded(items, entry.key)
|
|
16434
|
+
}, null, 8, ["entry", "options", "history", "onLoaded"])
|
|
16435
|
+
]);
|
|
16436
|
+
}), 128))
|
|
16437
|
+
])
|
|
16438
|
+
]);
|
|
16439
|
+
};
|
|
16440
|
+
}
|
|
16441
|
+
});
|
|
16442
|
+
const _hoisted_1 = { class: "lupasearch-chat" };
|
|
16443
|
+
const _hoisted_2 = /* @__PURE__ */ vue.createElementVNode("section", { class: "lupa-chat-logo" }, [
|
|
16444
|
+
/* @__PURE__ */ vue.createElementVNode("img", { src: "https://www.lupasearch.com/images/partials/header/lupasearch-logo.svg" })
|
|
16445
|
+
], -1);
|
|
16446
|
+
const _hoisted_3 = {
|
|
16447
|
+
key: 0,
|
|
16448
|
+
class: "lupasearch-chat-content"
|
|
16449
|
+
};
|
|
16450
|
+
const _hoisted_4 = {
|
|
16451
|
+
key: 1,
|
|
16452
|
+
class: "lupa-chat-spinner-main"
|
|
16453
|
+
};
|
|
16454
|
+
const _hoisted_5 = { class: "lupasearch-chat-input" };
|
|
16455
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
16456
|
+
__name: "ChatContainer",
|
|
16457
|
+
props: {
|
|
16458
|
+
options: {}
|
|
16459
|
+
},
|
|
16460
|
+
setup(__props) {
|
|
16461
|
+
const props = __props;
|
|
16462
|
+
const loading = vue.ref(false);
|
|
16463
|
+
const error = vue.ref("");
|
|
16464
|
+
const chatContent = vue.ref([]);
|
|
16465
|
+
const history = vue.computed(() => ChatService.prepareChatHistory(chatContent.value));
|
|
16466
|
+
const submitChatInput = (input) => __async(this, null, function* () {
|
|
16467
|
+
var _a;
|
|
16468
|
+
if (input.length < 3) {
|
|
16469
|
+
return;
|
|
16470
|
+
}
|
|
16471
|
+
try {
|
|
16472
|
+
loading.value = true;
|
|
16473
|
+
const request = {
|
|
16474
|
+
userPrompt: input,
|
|
16475
|
+
messageHistory: (_a = history.value) != null ? _a : [],
|
|
16476
|
+
queryKey: props.options.displayOptions.queryKey
|
|
16477
|
+
};
|
|
16478
|
+
const { phrases, success } = yield ChatService.suggestSearchChatPhrases(
|
|
16479
|
+
props.options.sdkOptions,
|
|
16480
|
+
request
|
|
16481
|
+
);
|
|
16482
|
+
if (!success || !phrases.length) {
|
|
16483
|
+
error.value = "Something went wrong";
|
|
16484
|
+
return;
|
|
16485
|
+
}
|
|
16486
|
+
const validPhrases = phrases.filter((p2) => (p2 == null ? void 0 : p2.trim().length) > 0);
|
|
16487
|
+
const chatLog = {
|
|
16488
|
+
key: Date.now().toString(),
|
|
16489
|
+
userInput: input,
|
|
16490
|
+
allPhrases: [...validPhrases],
|
|
16491
|
+
suggestedPhrases: phrases
|
|
16492
|
+
};
|
|
16493
|
+
chatContent.value.push(chatLog);
|
|
16494
|
+
} finally {
|
|
16495
|
+
loading.value = false;
|
|
16496
|
+
}
|
|
16497
|
+
});
|
|
16498
|
+
const bestItemsLoaded = ({ items, key }) => {
|
|
16499
|
+
const entry = chatContent.value.find((c2) => c2.key === key);
|
|
16500
|
+
entry.bestItems = items;
|
|
16501
|
+
};
|
|
16502
|
+
return (_ctx, _cache) => {
|
|
16503
|
+
return vue.openBlock(), vue.createElementBlock("section", _hoisted_1, [
|
|
16504
|
+
_hoisted_2,
|
|
16505
|
+
chatContent.value.length ? (vue.openBlock(), vue.createElementBlock("section", _hoisted_3, [
|
|
16506
|
+
vue.createVNode(_sfc_main$1, {
|
|
16507
|
+
content: chatContent.value,
|
|
16508
|
+
options: _ctx.options,
|
|
16509
|
+
onLoaded: bestItemsLoaded,
|
|
16510
|
+
history: history.value
|
|
16511
|
+
}, null, 8, ["content", "options", "history"])
|
|
16512
|
+
])) : vue.createCommentVNode("", true),
|
|
16513
|
+
loading.value ? (vue.openBlock(), vue.createElementBlock("section", _hoisted_4, [
|
|
16514
|
+
vue.createVNode(ChatSpinner, { message: "Loading initial recommendations... This might take up to 20s" })
|
|
16515
|
+
])) : vue.createCommentVNode("", true),
|
|
16516
|
+
vue.createElementVNode("section", _hoisted_5, [
|
|
16517
|
+
vue.createVNode(_sfc_main$5, {
|
|
16518
|
+
onSubmit: submitChatInput,
|
|
16519
|
+
disabled: loading.value
|
|
16520
|
+
}, null, 8, ["disabled"])
|
|
16521
|
+
])
|
|
16522
|
+
]);
|
|
16523
|
+
};
|
|
16524
|
+
}
|
|
16525
|
+
});
|
|
15998
16526
|
let piniaInstance = null;
|
|
15999
16527
|
const initPinia = () => {
|
|
16000
16528
|
if (piniaInstance) {
|
|
@@ -16017,14 +16545,15 @@ const LupaSearch = {
|
|
|
16017
16545
|
}
|
|
16018
16546
|
};
|
|
16019
16547
|
exports.BadgeType = BadgeType;
|
|
16548
|
+
exports.ChatContainer = _sfc_main;
|
|
16020
16549
|
exports.DocumentElementType = DocumentElementType;
|
|
16021
16550
|
exports.LupaSearch = LupaSearch;
|
|
16022
|
-
exports.ProductList = _sfc_main$
|
|
16023
|
-
exports.Recommendations = _sfc_main;
|
|
16024
|
-
exports.SearchBox = _sfc_main$
|
|
16551
|
+
exports.ProductList = _sfc_main$9;
|
|
16552
|
+
exports.Recommendations = _sfc_main$7;
|
|
16553
|
+
exports.SearchBox = _sfc_main$Y;
|
|
16025
16554
|
exports.SearchBoxPanelType = SearchBoxPanelType;
|
|
16026
|
-
exports.SearchContainer = _sfc_main$
|
|
16027
|
-
exports.SearchResults = _sfc_main$
|
|
16555
|
+
exports.SearchContainer = _sfc_main$8;
|
|
16556
|
+
exports.SearchResults = _sfc_main$b;
|
|
16028
16557
|
exports.getInitialSearchResults = getInitialSearchResults;
|
|
16029
16558
|
exports.initPinia = initPinia;
|
|
16030
16559
|
exports.setupTracking = setupTracking;
|