@getlupa/vue 0.10.0 → 0.10.1

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.
@@ -3221,7 +3221,7 @@ const useSearchBoxStore = defineStore("searchBox", () => {
3221
3221
  resetHighlightIndex
3222
3222
  };
3223
3223
  });
3224
- const _hoisted_1$1c = { id: "lupa-search-box-input-container" };
3224
+ const _hoisted_1$1d = { id: "lupa-search-box-input-container" };
3225
3225
  const _hoisted_2$P = { class: "lupa-input-clear" };
3226
3226
  const _hoisted_3$A = { id: "lupa-search-box-input" };
3227
3227
  const _hoisted_4$s = ["value"];
@@ -3311,7 +3311,7 @@ const _sfc_main$1l = /* @__PURE__ */ vue.defineComponent({
3311
3311
  };
3312
3312
  __expose({ focus });
3313
3313
  return (_ctx, _cache) => {
3314
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$1c, [
3314
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$1d, [
3315
3315
  vue.createElementVNode("div", _hoisted_2$P, [
3316
3316
  vue.createElementVNode("div", {
3317
3317
  class: vue.normalizeClass(["lupa-input-clear-content", { "lupa-input-clear-filled": inputValue.value }]),
@@ -3385,7 +3385,7 @@ const _sfc_main$1k = /* @__PURE__ */ vue.defineComponent({
3385
3385
  };
3386
3386
  }
3387
3387
  });
3388
- const _hoisted_1$1b = { class: "lupa-search-box-history-item" };
3388
+ const _hoisted_1$1c = { class: "lupa-search-box-history-item" };
3389
3389
  const _hoisted_2$O = { class: "lupa-search-box-history-item-content" };
3390
3390
  const _sfc_main$1j = /* @__PURE__ */ vue.defineComponent({
3391
3391
  __name: "SearchBoxHistoryItem",
@@ -3403,7 +3403,7 @@ const _sfc_main$1j = /* @__PURE__ */ vue.defineComponent({
3403
3403
  emit("click", { query: props.item });
3404
3404
  };
3405
3405
  return (_ctx, _cache) => {
3406
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$1b, [
3406
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$1c, [
3407
3407
  vue.createElementVNode("div", _hoisted_2$O, [
3408
3408
  vue.createElementVNode("div", {
3409
3409
  class: vue.normalizeClass(["lupa-search-box-history-item-text", { "lupa-search-box-history-item-highlighted": _ctx.highlighted }]),
@@ -3418,7 +3418,7 @@ const _sfc_main$1j = /* @__PURE__ */ vue.defineComponent({
3418
3418
  };
3419
3419
  }
3420
3420
  });
3421
- const _hoisted_1$1a = {
3421
+ const _hoisted_1$1b = {
3422
3422
  key: 0,
3423
3423
  class: "lupa-search-box-history-panel"
3424
3424
  };
@@ -3463,7 +3463,7 @@ const _sfc_main$1i = /* @__PURE__ */ vue.defineComponent({
3463
3463
  }
3464
3464
  };
3465
3465
  return (_ctx, _cache) => {
3466
- return hasHistory.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$1a, [
3466
+ return hasHistory.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$1b, [
3467
3467
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(history), (item, index) => {
3468
3468
  return vue.openBlock(), vue.createBlock(_sfc_main$1j, {
3469
3469
  key: item,
@@ -3481,7 +3481,7 @@ const _sfc_main$1i = /* @__PURE__ */ vue.defineComponent({
3481
3481
  };
3482
3482
  }
3483
3483
  });
3484
- const _hoisted_1$19 = { class: "lupa-search-box-no-results" };
3484
+ const _hoisted_1$1a = { class: "lupa-search-box-no-results" };
3485
3485
  const _sfc_main$1h = /* @__PURE__ */ vue.defineComponent({
3486
3486
  __name: "SearchBoxNoResults",
3487
3487
  props: {
@@ -3489,11 +3489,11 @@ const _sfc_main$1h = /* @__PURE__ */ vue.defineComponent({
3489
3489
  },
3490
3490
  setup(__props) {
3491
3491
  return (_ctx, _cache) => {
3492
- return vue.openBlock(), vue.createElementBlock("p", _hoisted_1$19, vue.toDisplayString(_ctx.labels.noResults), 1);
3492
+ return vue.openBlock(), vue.createElementBlock("p", _hoisted_1$1a, vue.toDisplayString(_ctx.labels.noResults), 1);
3493
3493
  };
3494
3494
  }
3495
3495
  });
3496
- const _hoisted_1$18 = ["innerHTML"];
3496
+ const _hoisted_1$19 = ["innerHTML"];
3497
3497
  const _hoisted_2$N = {
3498
3498
  key: 1,
3499
3499
  "data-cy": "lupa-suggestion-value",
@@ -3548,7 +3548,7 @@ const _sfc_main$1g = /* @__PURE__ */ vue.defineComponent({
3548
3548
  class: "lupa-suggestion-value",
3549
3549
  "data-cy": "lupa-suggestion-value",
3550
3550
  innerHTML: _ctx.suggestion.displayHighlight
3551
- }, null, 8, _hoisted_1$18)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$N, vue.toDisplayString(_ctx.suggestion.display), 1)),
3551
+ }, null, 8, _hoisted_1$19)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$N, vue.toDisplayString(_ctx.suggestion.display), 1)),
3552
3552
  _ctx.suggestion.facet ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$z, [
3553
3553
  vue.createElementVNode("span", _hoisted_4$r, vue.toDisplayString(facetLabel.value), 1),
3554
3554
  vue.createElementVNode("span", _hoisted_5$g, vue.toDisplayString(_ctx.suggestion.facet.title), 1)
@@ -3557,7 +3557,7 @@ const _sfc_main$1g = /* @__PURE__ */ vue.defineComponent({
3557
3557
  };
3558
3558
  }
3559
3559
  });
3560
- const _hoisted_1$17 = {
3560
+ const _hoisted_1$18 = {
3561
3561
  id: "lupa-search-box-suggestions",
3562
3562
  "data-cy": "lupa-search-box-suggestions"
3563
3563
  };
@@ -3621,7 +3621,7 @@ const _sfc_main$1f = /* @__PURE__ */ vue.defineComponent({
3621
3621
  });
3622
3622
  });
3623
3623
  return (_ctx, _cache) => {
3624
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$17, [
3624
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$18, [
3625
3625
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(items.value, (item, index) => {
3626
3626
  return vue.openBlock(), vue.createBlock(_sfc_main$1g, {
3627
3627
  key: getSuggestionKey(item),
@@ -3780,7 +3780,7 @@ const joinUrlParts = (...parts) => {
3780
3780
  }
3781
3781
  return (_c = (_b = (_a = parts == null ? void 0 : parts.map((part) => part.replace(/(^\/+|\/+$)/g, ""))) == null ? void 0 : _a.filter((part) => part !== "")) == null ? void 0 : _b.join("/")) != null ? _c : "";
3782
3782
  };
3783
- const _hoisted_1$16 = ["src"];
3783
+ const _hoisted_1$17 = ["src"];
3784
3784
  const _sfc_main$1d = /* @__PURE__ */ vue.defineComponent({
3785
3785
  __name: "ProductImage",
3786
3786
  props: {
@@ -3834,7 +3834,7 @@ const _sfc_main$1d = /* @__PURE__ */ vue.defineComponent({
3834
3834
  vue.createElementVNode("img", vue.mergeProps({
3835
3835
  class: (_b = _ctx.imageClass) != null ? _b : "",
3836
3836
  src: finalUrl.value
3837
- }, { alt: imageAlt.value ? imageAlt.value : void 0 }, { onError: replaceWithPlaceholder }), null, 16, _hoisted_1$16)
3837
+ }, { alt: imageAlt.value ? imageAlt.value : void 0 }, { onError: replaceWithPlaceholder }), null, 16, _hoisted_1$17)
3838
3838
  ], 2);
3839
3839
  };
3840
3840
  }
@@ -3856,7 +3856,7 @@ const _sfc_main$1c = /* @__PURE__ */ vue.defineComponent({
3856
3856
  };
3857
3857
  }
3858
3858
  });
3859
- const _hoisted_1$15 = ["innerHTML"];
3859
+ const _hoisted_1$16 = ["innerHTML"];
3860
3860
  const _hoisted_2$M = {
3861
3861
  key: 1,
3862
3862
  class: "lupa-search-box-product-title"
@@ -3881,13 +3881,13 @@ const _sfc_main$1b = /* @__PURE__ */ vue.defineComponent({
3881
3881
  key: 0,
3882
3882
  class: "lupa-search-box-product-title",
3883
3883
  innerHTML: title.value
3884
- }, null, 8, _hoisted_1$15)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$M, [
3884
+ }, null, 8, _hoisted_1$16)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$M, [
3885
3885
  vue.createElementVNode("strong", null, vue.toDisplayString(title.value), 1)
3886
3886
  ]));
3887
3887
  };
3888
3888
  }
3889
3889
  });
3890
- const _hoisted_1$14 = ["innerHTML"];
3890
+ const _hoisted_1$15 = ["innerHTML"];
3891
3891
  const _hoisted_2$L = {
3892
3892
  key: 1,
3893
3893
  class: "lupa-search-box-product-description"
@@ -3912,11 +3912,11 @@ const _sfc_main$1a = /* @__PURE__ */ vue.defineComponent({
3912
3912
  key: 0,
3913
3913
  class: "lupa-search-box-product-description",
3914
3914
  innerHTML: description.value
3915
- }, null, 8, _hoisted_1$14)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$L, vue.toDisplayString(description.value), 1));
3915
+ }, null, 8, _hoisted_1$15)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$L, vue.toDisplayString(description.value), 1));
3916
3916
  };
3917
3917
  }
3918
3918
  });
3919
- const _hoisted_1$13 = { class: "lupa-search-box-product-price" };
3919
+ const _hoisted_1$14 = { class: "lupa-search-box-product-price" };
3920
3920
  const _sfc_main$19 = /* @__PURE__ */ vue.defineComponent({
3921
3921
  __name: "SearchBoxProductPrice",
3922
3922
  props: {
@@ -3935,13 +3935,13 @@ const _sfc_main$19 = /* @__PURE__ */ vue.defineComponent({
3935
3935
  );
3936
3936
  });
3937
3937
  return (_ctx, _cache) => {
3938
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$13, [
3938
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$14, [
3939
3939
  vue.createElementVNode("strong", null, vue.toDisplayString(price.value), 1)
3940
3940
  ]);
3941
3941
  };
3942
3942
  }
3943
3943
  });
3944
- const _hoisted_1$12 = { class: "lupa-search-box-product-regular-price" };
3944
+ const _hoisted_1$13 = { class: "lupa-search-box-product-regular-price" };
3945
3945
  const _sfc_main$18 = /* @__PURE__ */ vue.defineComponent({
3946
3946
  __name: "SearchBoxProductRegularPrice",
3947
3947
  props: {
@@ -3960,11 +3960,11 @@ const _sfc_main$18 = /* @__PURE__ */ vue.defineComponent({
3960
3960
  );
3961
3961
  });
3962
3962
  return (_ctx, _cache) => {
3963
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$12, vue.toDisplayString(price.value), 1);
3963
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$13, vue.toDisplayString(price.value), 1);
3964
3964
  };
3965
3965
  }
3966
3966
  });
3967
- const _hoisted_1$11 = ["innerHTML"];
3967
+ const _hoisted_1$12 = ["innerHTML"];
3968
3968
  const _hoisted_2$K = { key: 0 };
3969
3969
  const _hoisted_3$y = { key: 1 };
3970
3970
  const _hoisted_4$q = { class: "lupa-search-box-custom-label" };
@@ -3995,7 +3995,7 @@ const _sfc_main$17 = /* @__PURE__ */ vue.defineComponent({
3995
3995
  key: 0,
3996
3996
  class: [className.value, "lupa-search-box-product-custom"],
3997
3997
  innerHTML: text.value
3998
- }, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1$11)) : (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
3998
+ }, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1$12)) : (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
3999
3999
  key: 1,
4000
4000
  class: [className.value, "lupa-search-box-product-custom"]
4001
4001
  }, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), [
@@ -4007,7 +4007,7 @@ const _sfc_main$17 = /* @__PURE__ */ vue.defineComponent({
4007
4007
  };
4008
4008
  }
4009
4009
  });
4010
- const _hoisted_1$10 = ["innerHTML"];
4010
+ const _hoisted_1$11 = ["innerHTML"];
4011
4011
  const _sfc_main$16 = /* @__PURE__ */ vue.defineComponent({
4012
4012
  __name: "SearchBoxProductCustomHtml",
4013
4013
  props: {
@@ -4028,7 +4028,7 @@ const _sfc_main$16 = /* @__PURE__ */ vue.defineComponent({
4028
4028
  return vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
4029
4029
  class: className.value,
4030
4030
  innerHTML: text.value
4031
- }, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1$10);
4031
+ }, vue.toHandlers(_ctx.options.action ? { click: handleClick } : {}, true)), null, 16, _hoisted_1$11);
4032
4032
  };
4033
4033
  }
4034
4034
  });
@@ -4222,7 +4222,7 @@ const useSearchResultStore = defineStore("searchResult", () => {
4222
4222
  setLoading
4223
4223
  };
4224
4224
  });
4225
- const _hoisted_1$$ = { class: "lupa-search-box-add-to-cart-wrapper" };
4225
+ const _hoisted_1$10 = { class: "lupa-search-box-add-to-cart-wrapper" };
4226
4226
  const _hoisted_2$J = { class: "lupa-search-box-product-addtocart" };
4227
4227
  const _hoisted_3$x = ["onClick", "disabled"];
4228
4228
  const _sfc_main$15 = /* @__PURE__ */ vue.defineComponent({
@@ -4252,7 +4252,7 @@ const _sfc_main$15 = /* @__PURE__ */ vue.defineComponent({
4252
4252
  loading.value = false;
4253
4253
  });
4254
4254
  return (_ctx, _cache) => {
4255
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$$, [
4255
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$10, [
4256
4256
  vue.createElementVNode("div", _hoisted_2$J, [
4257
4257
  vue.createElementVNode("button", {
4258
4258
  onClick: vue.withModifiers(handleClick, ["stop", "prevent"]),
@@ -4266,6 +4266,10 @@ const _sfc_main$15 = /* @__PURE__ */ vue.defineComponent({
4266
4266
  };
4267
4267
  }
4268
4268
  });
4269
+ const _hoisted_1$$ = {
4270
+ key: 1,
4271
+ class: "lupa-search-box-element-badge-wrapper"
4272
+ };
4269
4273
  const __default__$4 = {
4270
4274
  components: {
4271
4275
  SearchBoxProductImage: _sfc_main$1c,
@@ -4326,26 +4330,291 @@ const _sfc_main$14 = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadV
4326
4330
  return Boolean(props.element.dynamic && id && loading.value && (loadingIds == null ? void 0 : loadingIds.value[id]));
4327
4331
  };
4328
4332
  return (_ctx, _cache) => {
4329
- var _a;
4330
- return displayElement.value ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(elementComponent.value), {
4331
- key: 0,
4332
- item: enhancedItem.value,
4333
- options: _ctx.element,
4334
- labels: _ctx.labels,
4335
- class: vue.normalizeClass({ "lupa-loading-dynamic-data": isLoadingDynamicData((_a = _ctx.item) == null ? void 0 : _a.id) }),
4336
- inStock: _ctx.isInStock
4337
- }, null, 8, ["item", "options", "labels", "class", "inStock"])) : vue.createCommentVNode("", true);
4333
+ var _a, _b;
4334
+ return !_ctx.$slots.badges ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
4335
+ displayElement.value ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(elementComponent.value), {
4336
+ key: 0,
4337
+ item: enhancedItem.value,
4338
+ options: _ctx.element,
4339
+ labels: _ctx.labels,
4340
+ class: vue.normalizeClass({ "lupa-loading-dynamic-data": isLoadingDynamicData((_a = _ctx.item) == null ? void 0 : _a.id) }),
4341
+ inStock: _ctx.isInStock
4342
+ }, null, 8, ["item", "options", "labels", "class", "inStock"])) : vue.createCommentVNode("", true)
4343
+ ], 64)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$$, [
4344
+ displayElement.value ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(elementComponent.value), {
4345
+ key: 0,
4346
+ item: enhancedItem.value,
4347
+ options: _ctx.element,
4348
+ labels: _ctx.labels,
4349
+ class: vue.normalizeClass({ "lupa-loading-dynamic-data": isLoadingDynamicData((_b = _ctx.item) == null ? void 0 : _b.id) }),
4350
+ inStock: _ctx.isInStock
4351
+ }, null, 8, ["item", "options", "labels", "class", "inStock"])) : vue.createCommentVNode("", true),
4352
+ vue.renderSlot(_ctx.$slots, "badges")
4353
+ ]));
4338
4354
  };
4339
4355
  }
4340
4356
  }));
4341
- const _hoisted_1$_ = ["href"];
4342
- const _hoisted_2$I = { class: "lupa-search-box-product-image-section" };
4343
- const _hoisted_3$w = { class: "lupa-search-box-product-details-section" };
4357
+ const _hoisted_1$_ = { class: "lupa-badge-title" };
4358
+ const _hoisted_2$I = ["src"];
4359
+ const _hoisted_3$w = { key: 1 };
4344
4360
  const _hoisted_4$p = {
4345
4361
  key: 0,
4346
- class: "lupa-search-box-product-add-to-cart-section"
4362
+ class: "lupa-badge-full-text"
4347
4363
  };
4348
4364
  const _sfc_main$13 = /* @__PURE__ */ vue.defineComponent({
4365
+ __name: "SearchResultGeneratedBadge",
4366
+ props: {
4367
+ options: {},
4368
+ badge: {}
4369
+ },
4370
+ setup(__props) {
4371
+ const props = __props;
4372
+ const image = vue.computed(() => {
4373
+ var _a, _b, _c;
4374
+ return (_c = (_b = (_a = props.options.generate) == null ? void 0 : _a.image) == null ? void 0 : _b.call(_a, props.badge)) != null ? _c : "";
4375
+ });
4376
+ const showTitle = vue.computed(() => {
4377
+ var _a, _b, _c;
4378
+ return (_c = (_b = (_a = props.options.generate) == null ? void 0 : _a.showTitle) == null ? void 0 : _b.call(_a, props.badge)) != null ? _c : true;
4379
+ });
4380
+ const hasAdditionalText = vue.computed(() => {
4381
+ var _a, _b;
4382
+ return Boolean((_a = props.badge) == null ? void 0 : _a.additionalText) && typeof ((_b = props.badge) == null ? void 0 : _b.additionalText) === "string";
4383
+ });
4384
+ const hasTitleText = vue.computed(() => {
4385
+ var _a, _b;
4386
+ return Boolean((_a = props.badge) == null ? void 0 : _a.titleText) && typeof ((_b = props.badge) == null ? void 0 : _b.titleText) === "string";
4387
+ });
4388
+ const customClassName = vue.computed(() => {
4389
+ var _a, _b, _c;
4390
+ return (_c = (_b = (_a = props.options.generate) == null ? void 0 : _a.customClass) == null ? void 0 : _b.call(_a, props.badge)) != null ? _c : "";
4391
+ });
4392
+ return (_ctx, _cache) => {
4393
+ return vue.openBlock(), vue.createElementBlock("div", {
4394
+ class: vue.normalizeClass(["lupa-dynamic-badge", customClassName.value]),
4395
+ style: vue.normalizeStyle({ background: _ctx.badge.backgroundColor, color: _ctx.badge.color })
4396
+ }, [
4397
+ vue.createElementVNode("span", _hoisted_1$_, [
4398
+ image.value ? (vue.openBlock(), vue.createElementBlock("img", {
4399
+ key: 0,
4400
+ src: image.value
4401
+ }, null, 8, _hoisted_2$I)) : vue.createCommentVNode("", true),
4402
+ hasTitleText.value && showTitle.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$w, vue.toDisplayString(_ctx.badge.titleText), 1)) : vue.createCommentVNode("", true)
4403
+ ]),
4404
+ hasAdditionalText.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$p, vue.toDisplayString(_ctx.badge.additionalText), 1)) : vue.createCommentVNode("", true)
4405
+ ], 6);
4406
+ };
4407
+ }
4408
+ });
4409
+ const _hoisted_1$Z = { class: "lupa-generated-badges" };
4410
+ const _sfc_main$12 = /* @__PURE__ */ vue.defineComponent({
4411
+ __name: "SearchResultGeneratedBadges",
4412
+ props: {
4413
+ options: {}
4414
+ },
4415
+ setup(__props) {
4416
+ const props = __props;
4417
+ const badgeField = vue.computed(() => {
4418
+ var _a, _b, _c, _d, _e, _f, _g, _h;
4419
+ const fieldHasBadges = ((_a = props.options.generate) == null ? void 0 : _a.key) && ((_d = props.options.product) == null ? void 0 : _d[(_c = (_b = props.options.generate) == null ? void 0 : _b.key) != null ? _c : ""]) && Array.isArray(props.options.product[(_f = (_e = props.options.generate) == null ? void 0 : _e.key) != null ? _f : ""]);
4420
+ return fieldHasBadges ? props.options.product[(_h = (_g = props.options.generate) == null ? void 0 : _g.key) != null ? _h : ""] : [];
4421
+ });
4422
+ const keyMap = vue.computed(() => {
4423
+ var _a, _b;
4424
+ return (_b = (_a = props.options.generate) == null ? void 0 : _a.keyMap) != null ? _b : {};
4425
+ });
4426
+ const badges = vue.computed(() => {
4427
+ return badgeField.value.filter((f2) => Boolean(f2)).map((f2) => ({
4428
+ backgroundColor: keyMap.value.backgroundColor ? f2[keyMap.value.backgroundColor] : void 0,
4429
+ color: keyMap.value.color ? f2[keyMap.value.color] : void 0,
4430
+ titleText: keyMap.value.titleText ? f2[keyMap.value.titleText] : void 0,
4431
+ additionalText: keyMap.value.additionalText ? f2[keyMap.value.additionalText] : void 0,
4432
+ id: keyMap.value.id ? f2[keyMap.value.id] : void 0
4433
+ })).filter((b) => Boolean(b.id));
4434
+ });
4435
+ return (_ctx, _cache) => {
4436
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$Z, [
4437
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(badges.value, (badge) => {
4438
+ return vue.openBlock(), vue.createBlock(_sfc_main$13, {
4439
+ key: badge.id,
4440
+ badge,
4441
+ options: _ctx.options
4442
+ }, null, 8, ["badge", "options"]);
4443
+ }), 128))
4444
+ ]);
4445
+ };
4446
+ }
4447
+ });
4448
+ const _hoisted_1$Y = ["innerHTML"];
4449
+ const _sfc_main$11 = /* @__PURE__ */ vue.defineComponent({
4450
+ __name: "CustomBadge",
4451
+ props: {
4452
+ badge: {}
4453
+ },
4454
+ setup(__props) {
4455
+ const props = __props;
4456
+ const text = vue.computed(() => {
4457
+ var _a, _b, _c;
4458
+ return (_c = (_b = props.badge).html) == null ? void 0 : _c.call(_b, (_a = props.badge.product) != null ? _a : {});
4459
+ });
4460
+ const className = vue.computed(() => {
4461
+ var _a;
4462
+ return (_a = props.badge.className) != null ? _a : "";
4463
+ });
4464
+ return (_ctx, _cache) => {
4465
+ return vue.openBlock(), vue.createElementBlock("div", {
4466
+ class: vue.normalizeClass(className.value),
4467
+ innerHTML: text.value
4468
+ }, null, 10, _hoisted_1$Y);
4469
+ };
4470
+ }
4471
+ });
4472
+ const _hoisted_1$X = { class: "lupa-text-badges" };
4473
+ const _sfc_main$10 = /* @__PURE__ */ vue.defineComponent({
4474
+ __name: "TextBadge",
4475
+ props: {
4476
+ badge: {}
4477
+ },
4478
+ setup(__props) {
4479
+ const props = __props;
4480
+ const badges = vue.computed(() => {
4481
+ var _a, _b;
4482
+ return (_b = (_a = props.badge) == null ? void 0 : _a.value) != null ? _b : [];
4483
+ });
4484
+ const displayBadges = vue.computed(() => {
4485
+ return badges.value.slice(0, props.badge.maxItems);
4486
+ });
4487
+ return (_ctx, _cache) => {
4488
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$X, [
4489
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayBadges.value, (item) => {
4490
+ return vue.openBlock(), vue.createElementBlock("div", {
4491
+ class: "lupa-badge lupa-text-badge",
4492
+ key: item
4493
+ }, vue.toDisplayString(_ctx.badge.prefix) + vue.toDisplayString(item), 1);
4494
+ }), 128))
4495
+ ]);
4496
+ };
4497
+ }
4498
+ });
4499
+ const _hoisted_1$W = { class: "lupa-image-badges" };
4500
+ const _hoisted_2$H = ["src"];
4501
+ const _sfc_main$$ = /* @__PURE__ */ vue.defineComponent({
4502
+ __name: "ImageBadge",
4503
+ props: {
4504
+ badge: {}
4505
+ },
4506
+ setup(__props) {
4507
+ const props = __props;
4508
+ const badges = vue.computed(() => {
4509
+ return props.badge.value;
4510
+ });
4511
+ const displayBadges = vue.computed(() => {
4512
+ return badges.value.slice(0, props.badge.maxItems);
4513
+ });
4514
+ const getImageUrl = (src) => {
4515
+ if (!props.badge.rootImageUrl) {
4516
+ return src;
4517
+ }
4518
+ return `${props.badge.rootImageUrl}${src}`;
4519
+ };
4520
+ return (_ctx, _cache) => {
4521
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$W, [
4522
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayBadges.value, (item) => {
4523
+ return vue.openBlock(), vue.createElementBlock("div", {
4524
+ class: "lupa-badge lupa-image-badge",
4525
+ key: item
4526
+ }, [
4527
+ vue.createElementVNode("img", {
4528
+ src: getImageUrl(item)
4529
+ }, null, 8, _hoisted_2$H)
4530
+ ]);
4531
+ }), 128))
4532
+ ]);
4533
+ };
4534
+ }
4535
+ });
4536
+ const _hoisted_1$V = { id: "lupa-search-results-badges" };
4537
+ const __default__$3 = {
4538
+ components: {
4539
+ CustomBadge: _sfc_main$11,
4540
+ TextBadge: _sfc_main$10,
4541
+ ImageBadge: _sfc_main$$
4542
+ }
4543
+ };
4544
+ const _sfc_main$_ = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, __default__$3), {
4545
+ __name: "SearchResultsBadgeWrapper",
4546
+ props: {
4547
+ position: {},
4548
+ options: {}
4549
+ },
4550
+ setup(__props) {
4551
+ const props = __props;
4552
+ const positionValue = vue.computed(() => {
4553
+ var _a;
4554
+ return (_a = props.position) != null ? _a : "card";
4555
+ });
4556
+ const anchorPosition = vue.computed(() => {
4557
+ return props.options.anchor;
4558
+ });
4559
+ const badges = vue.computed(() => {
4560
+ if (!props.options.elements) {
4561
+ return [];
4562
+ }
4563
+ return props.options.elements.filter((e) => {
4564
+ var _a;
4565
+ return !e.display || e.display((_a = props.options.product) != null ? _a : {});
4566
+ }).map((x) => {
4567
+ var _a;
4568
+ return __spreadProps(__spreadValues({}, x), {
4569
+ value: ((_a = props.options.product) == null ? void 0 : _a[x.key]) || "badge",
4570
+ product: props.options.product
4571
+ });
4572
+ });
4573
+ });
4574
+ const displayBadges = vue.computed(() => {
4575
+ return positionValue.value === "card" ? badges.value.filter((b) => !b.position || b.position === "card") : badges.value.filter((b) => b.position === "image");
4576
+ });
4577
+ const getBadgeComponent = (type) => {
4578
+ switch (type) {
4579
+ case BadgeType.TEXT:
4580
+ return "TextBadge";
4581
+ case BadgeType.IMAGE:
4582
+ return "ImageBadge";
4583
+ case BadgeType.CUSTOM_HTML:
4584
+ return "CustomBadge";
4585
+ default:
4586
+ return "CustomBadge";
4587
+ }
4588
+ };
4589
+ return (_ctx, _cache) => {
4590
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$V, [
4591
+ vue.createElementVNode("div", {
4592
+ id: "lupa-badges",
4593
+ class: vue.normalizeClass(anchorPosition.value)
4594
+ }, [
4595
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayBadges.value, (badge, index) => {
4596
+ return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(getBadgeComponent(badge.type)), {
4597
+ key: index,
4598
+ badge
4599
+ }, null, 8, ["badge"]);
4600
+ }), 128)),
4601
+ positionValue.value === "card" ? (vue.openBlock(), vue.createBlock(_sfc_main$12, {
4602
+ key: 0,
4603
+ options: _ctx.options
4604
+ }, null, 8, ["options"])) : vue.createCommentVNode("", true)
4605
+ ], 2)
4606
+ ]);
4607
+ };
4608
+ }
4609
+ }));
4610
+ const _hoisted_1$U = ["href"];
4611
+ const _hoisted_2$G = { class: "lupa-search-box-product-image-section" };
4612
+ const _hoisted_3$v = { class: "lupa-search-box-product-details-section" };
4613
+ const _hoisted_4$o = {
4614
+ key: 0,
4615
+ class: "lupa-search-box-product-add-to-cart-section"
4616
+ };
4617
+ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
4349
4618
  __name: "SearchBoxProduct",
4350
4619
  props: {
4351
4620
  item: {},
@@ -4362,6 +4631,9 @@ const _sfc_main$13 = /* @__PURE__ */ vue.defineComponent({
4362
4631
  var _a, _b;
4363
4632
  return generateLink((_b = (_a = props.panelOptions.links) == null ? void 0 : _a.details) != null ? _b : "", props.item);
4364
4633
  });
4634
+ const badgeOptions = vue.computed(() => {
4635
+ return __spreadProps(__spreadValues({}, props.panelOptions.badges), { product: props.item });
4636
+ });
4365
4637
  const imageElements = vue.computed(() => {
4366
4638
  var _a, _b;
4367
4639
  return (_b = (_a = props.panelOptions.elements) == null ? void 0 : _a.filter((e) => e.type === DocumentElementType.IMAGE)) != null ? _b : [];
@@ -4401,7 +4673,7 @@ const _sfc_main$13 = /* @__PURE__ */ vue.defineComponent({
4401
4673
  "data-cy": "lupa-search-box-product",
4402
4674
  onClick: handleClick
4403
4675
  }), [
4404
- vue.createElementVNode("div", _hoisted_2$I, [
4676
+ vue.createElementVNode("div", _hoisted_2$G, [
4405
4677
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(imageElements.value, (element) => {
4406
4678
  return vue.openBlock(), vue.createBlock(_sfc_main$14, {
4407
4679
  class: "lupa-search-box-product-element",
@@ -4413,19 +4685,31 @@ const _sfc_main$13 = /* @__PURE__ */ vue.defineComponent({
4413
4685
  }, null, 8, ["item", "element", "labels", "link"]);
4414
4686
  }), 128))
4415
4687
  ]),
4416
- vue.createElementVNode("div", _hoisted_3$w, [
4688
+ vue.createElementVNode("div", _hoisted_3$v, [
4417
4689
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(detailElements.value, (element) => {
4690
+ var _a;
4418
4691
  return vue.openBlock(), vue.createBlock(_sfc_main$14, {
4692
+ key: element.key,
4419
4693
  class: "lupa-search-box-product-element",
4420
4694
  item: _ctx.item,
4421
4695
  element,
4422
- key: element.key,
4423
4696
  labels: _ctx.labels,
4424
4697
  link: link.value
4425
- }, null, 8, ["item", "element", "labels", "link"]);
4698
+ }, vue.createSlots({ _: 2 }, [
4699
+ badgeOptions.value && ((_a = badgeOptions.value) == null ? void 0 : _a.anchorElementKey) === element.key ? {
4700
+ name: "badges",
4701
+ fn: vue.withCtx(() => [
4702
+ vue.createVNode(_sfc_main$_, {
4703
+ options: badgeOptions.value,
4704
+ position: "card"
4705
+ }, null, 8, ["options"])
4706
+ ]),
4707
+ key: "0"
4708
+ } : void 0
4709
+ ]), 1032, ["item", "element", "labels", "link"]);
4426
4710
  }), 128))
4427
4711
  ]),
4428
- addToCartElement.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$p, [
4712
+ addToCartElement.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$o, [
4429
4713
  vue.createVNode(_sfc_main$14, {
4430
4714
  class: "lupa-search-box-product-element",
4431
4715
  item: _ctx.item,
@@ -4435,7 +4719,7 @@ const _sfc_main$13 = /* @__PURE__ */ vue.defineComponent({
4435
4719
  isInStock: isInStock.value
4436
4720
  }, null, 8, ["item", "element", "labels", "link", "isInStock"])
4437
4721
  ])) : vue.createCommentVNode("", true)
4438
- ], 16, _hoisted_1$_);
4722
+ ], 16, _hoisted_1$U);
4439
4723
  };
4440
4724
  }
4441
4725
  });
@@ -4496,8 +4780,8 @@ const useTrackingStore = defineStore("tracking", () => {
4496
4780
  };
4497
4781
  return { trackSearch, trackResults, trackEvent };
4498
4782
  });
4499
- const _hoisted_1$Z = { id: "lupa-search-box-products" };
4500
- const _sfc_main$12 = /* @__PURE__ */ vue.defineComponent({
4783
+ const _hoisted_1$T = { id: "lupa-search-box-products" };
4784
+ const _sfc_main$Y = /* @__PURE__ */ vue.defineComponent({
4501
4785
  __name: "SearchBoxProducts",
4502
4786
  props: {
4503
4787
  items: {},
@@ -4558,7 +4842,7 @@ const _sfc_main$12 = /* @__PURE__ */ vue.defineComponent({
4558
4842
  handleRoutingEvent(link, event, boxRoutingBehavior.value === "event");
4559
4843
  };
4560
4844
  return (_ctx, _cache) => {
4561
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$Z, [
4845
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$T, [
4562
4846
  _ctx.$slots.productCard ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 0 }, vue.renderList(_ctx.items, (item, index) => {
4563
4847
  return vue.renderSlot(_ctx.$slots, "productCard", {
4564
4848
  key: index,
@@ -4570,7 +4854,7 @@ const _sfc_main$12 = /* @__PURE__ */ vue.defineComponent({
4570
4854
  itemClicked: handleProductClick
4571
4855
  });
4572
4856
  }), 128)) : (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 1 }, vue.renderList(_ctx.items, (item, index) => {
4573
- return vue.openBlock(), vue.createBlock(_sfc_main$13, {
4857
+ return vue.openBlock(), vue.createBlock(_sfc_main$Z, {
4574
4858
  key: index,
4575
4859
  item,
4576
4860
  panelOptions: _ctx.panelOptions,
@@ -4584,7 +4868,7 @@ const _sfc_main$12 = /* @__PURE__ */ vue.defineComponent({
4584
4868
  };
4585
4869
  }
4586
4870
  });
4587
- const _sfc_main$11 = /* @__PURE__ */ vue.defineComponent({
4871
+ const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
4588
4872
  __name: "SearchBoxProductsWrapper",
4589
4873
  props: {
4590
4874
  panel: {},
@@ -4636,7 +4920,7 @@ const _sfc_main$11 = /* @__PURE__ */ vue.defineComponent({
4636
4920
  const getItemsDebounced = debounce$1(getItems, props.debounce);
4637
4921
  return (_ctx, _cache) => {
4638
4922
  var _a, _b;
4639
- return vue.openBlock(), vue.createBlock(_sfc_main$12, {
4923
+ return vue.openBlock(), vue.createBlock(_sfc_main$Y, {
4640
4924
  items: (_b = (_a = searchResult.value) == null ? void 0 : _a.items) != null ? _b : [],
4641
4925
  panelOptions: _ctx.panel,
4642
4926
  labels: _ctx.labels,
@@ -4654,7 +4938,7 @@ const _sfc_main$11 = /* @__PURE__ */ vue.defineComponent({
4654
4938
  };
4655
4939
  }
4656
4940
  });
4657
- const _sfc_main$10 = /* @__PURE__ */ vue.defineComponent({
4941
+ const _sfc_main$W = /* @__PURE__ */ vue.defineComponent({
4658
4942
  __name: "SearchBoxRelatedSourceWrapper",
4659
4943
  props: {
4660
4944
  panel: {},
@@ -4726,7 +5010,7 @@ const _sfc_main$10 = /* @__PURE__ */ vue.defineComponent({
4726
5010
  });
4727
5011
  return (_ctx, _cache) => {
4728
5012
  var _a, _b;
4729
- return vue.openBlock(), vue.createBlock(_sfc_main$12, {
5013
+ return vue.openBlock(), vue.createBlock(_sfc_main$Y, {
4730
5014
  items: (_b = (_a = searchResult.value) == null ? void 0 : _a.items) != null ? _b : [],
4731
5015
  panelOptions: documentPanelOptions.value,
4732
5016
  labels: _ctx.labels,
@@ -4744,16 +5028,16 @@ const _sfc_main$10 = /* @__PURE__ */ vue.defineComponent({
4744
5028
  };
4745
5029
  }
4746
5030
  });
4747
- const _hoisted_1$Y = {
5031
+ const _hoisted_1$S = {
4748
5032
  key: 0,
4749
5033
  id: "lupa-search-box-panel"
4750
5034
  };
4751
- const _hoisted_2$H = ["data-cy"];
4752
- const _hoisted_3$v = {
5035
+ const _hoisted_2$F = ["data-cy"];
5036
+ const _hoisted_3$u = {
4753
5037
  key: 0,
4754
5038
  class: "lupa-panel-title lupa-panel-title-top-results"
4755
5039
  };
4756
- const _hoisted_4$o = {
5040
+ const _hoisted_4$n = {
4757
5041
  key: 1,
4758
5042
  class: "lupa-panel-title"
4759
5043
  };
@@ -4761,14 +5045,14 @@ const _hoisted_5$e = {
4761
5045
  key: 1,
4762
5046
  id: "lupa-search-box-panel"
4763
5047
  };
4764
- const __default__$3 = {
5048
+ const __default__$2 = {
4765
5049
  components: {
4766
5050
  SearchBoxSuggestionsWrapper: _sfc_main$1e,
4767
- SearchBoxProductsWrapper: _sfc_main$11,
4768
- SearchBoxRelatedSourceWrapper: _sfc_main$10
5051
+ SearchBoxProductsWrapper: _sfc_main$X,
5052
+ SearchBoxRelatedSourceWrapper: _sfc_main$W
4769
5053
  }
4770
5054
  };
4771
- const _sfc_main$$ = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, __default__$3), {
5055
+ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, __default__$2), {
4772
5056
  __name: "SearchBoxMainPanel",
4773
5057
  props: {
4774
5058
  options: {},
@@ -4914,7 +5198,7 @@ const _sfc_main$$ = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
4914
5198
  ref_key: "panelContainer",
4915
5199
  ref: panelContainer
4916
5200
  }, [
4917
- displayResults.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$Y, [
5201
+ displayResults.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$S, [
4918
5202
  labels.value.closePanel ? (vue.openBlock(), vue.createElementBlock("a", {
4919
5203
  key: 0,
4920
5204
  class: "lupa-search-box-close-panel",
@@ -4935,8 +5219,8 @@ const _sfc_main$$ = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
4935
5219
  ]),
4936
5220
  "data-cy": "lupa-panel-" + panel.type + "-index"
4937
5221
  }, [
4938
- ((_a2 = panel.labels) == null ? void 0 : _a2.topResultsTitle) && showTopResultsPanelTitle(panel.queryKey) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$v, vue.toDisplayString((_b = panel.labels) == null ? void 0 : _b.topResultsTitle), 1)) : vue.createCommentVNode("", true),
4939
- ((_c = panel.labels) == null ? void 0 : _c.title) && showPanelTitle(panel) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$o, vue.toDisplayString((_d = panel.labels) == null ? void 0 : _d.title), 1)) : vue.createCommentVNode("", true),
5222
+ ((_a2 = panel.labels) == null ? void 0 : _a2.topResultsTitle) && showTopResultsPanelTitle(panel.queryKey) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$u, vue.toDisplayString((_b = panel.labels) == null ? void 0 : _b.topResultsTitle), 1)) : vue.createCommentVNode("", true),
5223
+ ((_c = panel.labels) == null ? void 0 : _c.title) && showPanelTitle(panel) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$n, vue.toDisplayString((_d = panel.labels) == null ? void 0 : _d.title), 1)) : vue.createCommentVNode("", true),
4940
5224
  panel.queryKey && canShowPanel(panel) ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(getComponent(panel.type)), {
4941
5225
  key: 2,
4942
5226
  panel,
@@ -4956,7 +5240,7 @@ const _sfc_main$$ = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
4956
5240
  key: "0"
4957
5241
  } : void 0
4958
5242
  ]), 1064, ["panel", "options", "debounce", "inputValue", "labels"])) : vue.createCommentVNode("", true)
4959
- ], 10, _hoisted_2$H);
5243
+ ], 10, _hoisted_2$F);
4960
5244
  }), 128))
4961
5245
  ], 4),
4962
5246
  !vue.unref(hasAnyResults) && _ctx.options.showNoResultsPanel ? (vue.openBlock(), vue.createBlock(_sfc_main$1h, {
@@ -4995,9 +5279,9 @@ const unbindSearchTriggers = (triggers = [], event) => {
4995
5279
  const elements = getElements(triggers);
4996
5280
  elements.forEach((e) => e == null ? void 0 : e.removeEventListener(BIND_EVENT, event));
4997
5281
  };
4998
- const _hoisted_1$X = { id: "lupa-search-box" };
4999
- const _hoisted_2$G = { class: "lupa-search-box-wrapper" };
5000
- const _sfc_main$_ = /* @__PURE__ */ vue.defineComponent({
5282
+ const _hoisted_1$R = { id: "lupa-search-box" };
5283
+ const _hoisted_2$E = { class: "lupa-search-box-wrapper" };
5284
+ const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
5001
5285
  __name: "SearchBox",
5002
5286
  props: {
5003
5287
  options: {},
@@ -5242,8 +5526,8 @@ const _sfc_main$_ = /* @__PURE__ */ vue.defineComponent({
5242
5526
  };
5243
5527
  return (_ctx, _cache) => {
5244
5528
  var _a2;
5245
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$X, [
5246
- vue.createElementVNode("div", _hoisted_2$G, [
5529
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$R, [
5530
+ vue.createElementVNode("div", _hoisted_2$E, [
5247
5531
  vue.createVNode(_sfc_main$1l, {
5248
5532
  options: inputOptions.value,
5249
5533
  suggestedValue: suggestedValue.value,
@@ -5255,7 +5539,7 @@ const _sfc_main$_ = /* @__PURE__ */ vue.defineComponent({
5255
5539
  onFocus: _cache[0] || (_cache[0] = ($event) => opened.value = true),
5256
5540
  onClose: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("close"))
5257
5541
  }, null, 8, ["options", "suggestedValue", "can-close", "emit-input-on-focus"]),
5258
- opened.value || _ctx.isSearchContainer ? (vue.openBlock(), vue.createBlock(_sfc_main$$, {
5542
+ opened.value || _ctx.isSearchContainer ? (vue.openBlock(), vue.createBlock(_sfc_main$V, {
5259
5543
  key: 0,
5260
5544
  options: panelOptions.value,
5261
5545
  inputValue: inputValue.value,
@@ -5359,20 +5643,20 @@ const getInitialSearchResults = (options, getQueryParamName, defaultData) => __a
5359
5643
  options.options.onError(e);
5360
5644
  }
5361
5645
  });
5362
- const _hoisted_1$W = {
5646
+ const _hoisted_1$Q = {
5363
5647
  key: 0,
5364
5648
  id: "lupa-search-results-did-you-mean"
5365
5649
  };
5366
- const _hoisted_2$F = {
5650
+ const _hoisted_2$D = {
5367
5651
  key: 0,
5368
5652
  "data-cy": "suggested-search-text-label"
5369
5653
  };
5370
- const _hoisted_3$u = {
5654
+ const _hoisted_3$t = {
5371
5655
  key: 1,
5372
5656
  "data-cy": "did-you-mean-label"
5373
5657
  };
5374
- const _hoisted_4$n = { key: 1 };
5375
- const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
5658
+ const _hoisted_4$m = { key: 1 };
5659
+ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
5376
5660
  __name: "SearchResultsDidYouMean",
5377
5661
  props: {
5378
5662
  labels: {}
@@ -5404,8 +5688,8 @@ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
5404
5688
  paramStore.goToResults({ searchText, facet });
5405
5689
  };
5406
5690
  return (_ctx, _cache) => {
5407
- return vue.unref(searchResult).suggestedSearchText || didYouMeanValue.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$W, [
5408
- vue.unref(searchResult).suggestedSearchText ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$F, [
5691
+ return vue.unref(searchResult).suggestedSearchText || didYouMeanValue.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$Q, [
5692
+ vue.unref(searchResult).suggestedSearchText ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$D, [
5409
5693
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.labels.noResultsSuggestion.split(" "), (label, index) => {
5410
5694
  return vue.openBlock(), vue.createElementBlock("span", { key: index }, [
5411
5695
  vue.createElementVNode("span", {
@@ -5414,7 +5698,7 @@ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
5414
5698
  ]);
5415
5699
  }), 128))
5416
5700
  ])) : vue.createCommentVNode("", true),
5417
- didYouMeanValue.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$u, [
5701
+ didYouMeanValue.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$t, [
5418
5702
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.labels.didYouMean.split(" "), (label, index) => {
5419
5703
  return vue.openBlock(), vue.createElementBlock("span", { key: index }, [
5420
5704
  label.includes("{1}") ? (vue.openBlock(), vue.createElementBlock("span", {
@@ -5422,7 +5706,7 @@ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
5422
5706
  class: "lupa-did-you-mean lupa-highlighted-search-text",
5423
5707
  "data-cy": "did-you-mean-value",
5424
5708
  onClick: _cache[0] || (_cache[0] = ($event) => goToResults({ searchText: didYouMeanValue.value }))
5425
- }, vue.toDisplayString(didYouMeanValue.value) + " ", 1)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$n, vue.toDisplayString(label) + " ", 1))
5709
+ }, vue.toDisplayString(didYouMeanValue.value) + " ", 1)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$m, vue.toDisplayString(label) + " ", 1))
5426
5710
  ]);
5427
5711
  }), 128))
5428
5712
  ])) : vue.createCommentVNode("", true)
@@ -5430,12 +5714,12 @@ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
5430
5714
  };
5431
5715
  }
5432
5716
  });
5433
- const _hoisted_1$V = {
5717
+ const _hoisted_1$P = {
5434
5718
  key: 0,
5435
5719
  class: "lupa-search-results-summary"
5436
5720
  };
5437
- const _hoisted_2$E = ["innerHTML"];
5438
- const _sfc_main$Y = /* @__PURE__ */ vue.defineComponent({
5721
+ const _hoisted_2$C = ["innerHTML"];
5722
+ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
5439
5723
  __name: "SearchResultsSummary",
5440
5724
  props: {
5441
5725
  label: {},
@@ -5450,8 +5734,8 @@ const _sfc_main$Y = /* @__PURE__ */ vue.defineComponent({
5450
5734
  return addParamsToLabel(props.label, range, `<span>${totalItems.value}</span>`);
5451
5735
  });
5452
5736
  return (_ctx, _cache) => {
5453
- return vue.unref(totalItems) > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$V, [
5454
- vue.createElementVNode("div", { innerHTML: summaryLabel.value }, null, 8, _hoisted_2$E),
5737
+ return vue.unref(totalItems) > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$P, [
5738
+ vue.createElementVNode("div", { innerHTML: summaryLabel.value }, null, 8, _hoisted_2$C),
5455
5739
  _ctx.clearable ? (vue.openBlock(), vue.createElementBlock("span", {
5456
5740
  key: 0,
5457
5741
  class: "lupa-filter-clear",
@@ -5462,18 +5746,18 @@ const _sfc_main$Y = /* @__PURE__ */ vue.defineComponent({
5462
5746
  };
5463
5747
  }
5464
5748
  });
5465
- const _hoisted_1$U = {
5749
+ const _hoisted_1$O = {
5466
5750
  key: 0,
5467
5751
  class: "lupa-result-page-title",
5468
5752
  "data-cy": "lupa-result-page-title"
5469
5753
  };
5470
- const _hoisted_2$D = { key: 0 };
5471
- const _hoisted_3$t = {
5754
+ const _hoisted_2$B = { key: 0 };
5755
+ const _hoisted_3$s = {
5472
5756
  key: 1,
5473
5757
  class: "lupa-results-total-count"
5474
5758
  };
5475
- const _hoisted_4$m = ["innerHTML"];
5476
- const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
5759
+ const _hoisted_4$l = ["innerHTML"];
5760
+ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
5477
5761
  __name: "SearchResultsTitle",
5478
5762
  props: {
5479
5763
  options: {},
@@ -5508,12 +5792,12 @@ const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
5508
5792
  });
5509
5793
  return (_ctx, _cache) => {
5510
5794
  return vue.openBlock(), vue.createElementBlock("div", null, [
5511
- showSearchTitle.value ? (vue.openBlock(), vue.createElementBlock("h1", _hoisted_1$U, [
5795
+ showSearchTitle.value ? (vue.openBlock(), vue.createElementBlock("h1", _hoisted_1$O, [
5512
5796
  vue.createTextVNode(vue.toDisplayString(_ctx.options.labels.searchResults), 1),
5513
- queryText.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$D, "'" + vue.toDisplayString(queryText.value) + "'", 1)) : vue.createCommentVNode("", true),
5514
- showProductCount.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$t, "(" + vue.toDisplayString(vue.unref(totalItems)) + ")", 1)) : vue.createCommentVNode("", true)
5797
+ queryText.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$B, "'" + vue.toDisplayString(queryText.value) + "'", 1)) : vue.createCommentVNode("", true),
5798
+ showProductCount.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$s, "(" + vue.toDisplayString(vue.unref(totalItems)) + ")", 1)) : vue.createCommentVNode("", true)
5515
5799
  ])) : vue.createCommentVNode("", true),
5516
- _ctx.showSummary ? (vue.openBlock(), vue.createBlock(_sfc_main$Y, {
5800
+ _ctx.showSummary ? (vue.openBlock(), vue.createBlock(_sfc_main$S, {
5517
5801
  key: 1,
5518
5802
  label: summaryLabel.value
5519
5803
  }, null, 8, ["label"])) : vue.createCommentVNode("", true),
@@ -5521,21 +5805,21 @@ const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
5521
5805
  key: 2,
5522
5806
  class: "lupa-result-page-description-top",
5523
5807
  innerHTML: descriptionTop.value
5524
- }, null, 8, _hoisted_4$m)) : vue.createCommentVNode("", true)
5808
+ }, null, 8, _hoisted_4$l)) : vue.createCommentVNode("", true)
5525
5809
  ]);
5526
5810
  };
5527
5811
  }
5528
5812
  });
5529
- const _hoisted_1$T = { class: "lupa-search-result-filter-value" };
5530
- const _hoisted_2$C = {
5813
+ const _hoisted_1$N = { class: "lupa-search-result-filter-value" };
5814
+ const _hoisted_2$A = {
5531
5815
  class: "lupa-current-filter-label",
5532
5816
  "data-cy": "lupa-current-filter-label"
5533
5817
  };
5534
- const _hoisted_3$s = {
5818
+ const _hoisted_3$r = {
5535
5819
  class: "lupa-current-filter-value",
5536
5820
  "data-cy": "lupa-current-filter-value"
5537
5821
  };
5538
- const _sfc_main$W = /* @__PURE__ */ vue.defineComponent({
5822
+ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
5539
5823
  __name: "CurrentFilterDisplay",
5540
5824
  props: {
5541
5825
  filter: {}
@@ -5547,28 +5831,28 @@ const _sfc_main$W = /* @__PURE__ */ vue.defineComponent({
5547
5831
  emit("remove", { filter: props.filter });
5548
5832
  };
5549
5833
  return (_ctx, _cache) => {
5550
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$T, [
5834
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$N, [
5551
5835
  vue.createElementVNode("div", {
5552
5836
  class: "lupa-current-filter-action",
5553
5837
  onClick: handleClick
5554
5838
  }, "⨉"),
5555
- vue.createElementVNode("div", _hoisted_2$C, vue.toDisplayString(_ctx.filter.label) + ": ", 1),
5556
- vue.createElementVNode("div", _hoisted_3$s, vue.toDisplayString(_ctx.filter.value), 1)
5839
+ vue.createElementVNode("div", _hoisted_2$A, vue.toDisplayString(_ctx.filter.label) + ": ", 1),
5840
+ vue.createElementVNode("div", _hoisted_3$r, vue.toDisplayString(_ctx.filter.value), 1)
5557
5841
  ]);
5558
5842
  };
5559
5843
  }
5560
5844
  });
5561
- const _hoisted_1$S = { class: "lupa-filter-title-text" };
5562
- const _hoisted_2$B = {
5845
+ const _hoisted_1$M = { class: "lupa-filter-title-text" };
5846
+ const _hoisted_2$z = {
5563
5847
  key: 0,
5564
5848
  class: "lupa-filter-count"
5565
5849
  };
5566
- const _hoisted_3$r = {
5850
+ const _hoisted_3$q = {
5567
5851
  key: 0,
5568
5852
  class: "filter-values"
5569
5853
  };
5570
- const _hoisted_4$l = { class: "lupa-current-filter-list" };
5571
- const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
5854
+ const _hoisted_4$k = { class: "lupa-current-filter-list" };
5855
+ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
5572
5856
  __name: "CurrentFilters",
5573
5857
  props: {
5574
5858
  options: {},
@@ -5629,19 +5913,19 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
5629
5913
  class: "lupa-current-filter-title",
5630
5914
  onClick: _cache[0] || (_cache[0] = ($event) => isOpen.value = !isOpen.value)
5631
5915
  }, [
5632
- vue.createElementVNode("div", _hoisted_1$S, [
5916
+ vue.createElementVNode("div", _hoisted_1$M, [
5633
5917
  vue.createTextVNode(vue.toDisplayString((_c = (_b = (_a = _ctx.options) == null ? void 0 : _a.labels) == null ? void 0 : _b.title) != null ? _c : "") + " ", 1),
5634
- _ctx.expandable ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$B, " (" + vue.toDisplayString(vue.unref(currentFilterCount)) + ") ", 1)) : vue.createCommentVNode("", true)
5918
+ _ctx.expandable ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$z, " (" + vue.toDisplayString(vue.unref(currentFilterCount)) + ") ", 1)) : vue.createCommentVNode("", true)
5635
5919
  ]),
5636
5920
  _ctx.expandable ? (vue.openBlock(), vue.createElementBlock("div", {
5637
5921
  key: 0,
5638
5922
  class: vue.normalizeClass(["lupa-filter-title-caret", isOpen.value && "open"])
5639
5923
  }, null, 2)) : vue.createCommentVNode("", true)
5640
5924
  ]),
5641
- !_ctx.expandable || isOpen.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$r, [
5642
- vue.createElementVNode("div", _hoisted_4$l, [
5925
+ !_ctx.expandable || isOpen.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$q, [
5926
+ vue.createElementVNode("div", _hoisted_4$k, [
5643
5927
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(displayFilters), (filter) => {
5644
- return vue.openBlock(), vue.createBlock(_sfc_main$W, {
5928
+ return vue.openBlock(), vue.createBlock(_sfc_main$Q, {
5645
5929
  key: filter.key + "_" + filter.value,
5646
5930
  filter,
5647
5931
  onRemove: handleRemove
@@ -5658,8 +5942,8 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
5658
5942
  };
5659
5943
  }
5660
5944
  });
5661
- const _hoisted_1$R = ["href"];
5662
- const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
5945
+ const _hoisted_1$L = ["href"];
5946
+ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
5663
5947
  __name: "CategoryFilterItem",
5664
5948
  props: {
5665
5949
  options: {},
@@ -5696,20 +5980,20 @@ const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
5696
5980
  "data-cy": "lupa-child-category-item",
5697
5981
  href: urlLink.value,
5698
5982
  onClick: handleNavigation
5699
- }, vue.toDisplayString(title.value), 9, _hoisted_1$R)
5983
+ }, vue.toDisplayString(title.value), 9, _hoisted_1$L)
5700
5984
  ], 2);
5701
5985
  };
5702
5986
  }
5703
5987
  });
5704
- const _hoisted_1$Q = {
5988
+ const _hoisted_1$K = {
5705
5989
  class: "lupa-category-filter",
5706
5990
  "data-cy": "lupa-category-filter"
5707
5991
  };
5708
- const _hoisted_2$A = { class: "lupa-category-back" };
5709
- const _hoisted_3$q = ["href"];
5710
- const _hoisted_4$k = ["href"];
5992
+ const _hoisted_2$y = { class: "lupa-category-back" };
5993
+ const _hoisted_3$p = ["href"];
5994
+ const _hoisted_4$j = ["href"];
5711
5995
  const _hoisted_5$d = { class: "lupa-child-category-list" };
5712
- const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
5996
+ const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
5713
5997
  __name: "CategoryFilter",
5714
5998
  props: {
5715
5999
  options: {}
@@ -5795,14 +6079,14 @@ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
5795
6079
  };
5796
6080
  __expose({ fetch: fetch2 });
5797
6081
  return (_ctx, _cache) => {
5798
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$Q, [
5799
- vue.createElementVNode("div", _hoisted_2$A, [
6082
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$K, [
6083
+ vue.createElementVNode("div", _hoisted_2$y, [
5800
6084
  hasBackButton.value ? (vue.openBlock(), vue.createElementBlock("a", {
5801
6085
  key: 0,
5802
6086
  "data-cy": "lupa-category-back",
5803
6087
  href: backUrlLink.value,
5804
6088
  onClick: handleNavigationBack
5805
- }, vue.toDisplayString(backTitle.value), 9, _hoisted_3$q)) : vue.createCommentVNode("", true)
6089
+ }, vue.toDisplayString(backTitle.value), 9, _hoisted_3$p)) : vue.createCommentVNode("", true)
5806
6090
  ]),
5807
6091
  vue.createElementVNode("div", {
5808
6092
  class: vue.normalizeClass(["lupa-current-category", { "lupa-current-category-active": isActive }])
@@ -5812,11 +6096,11 @@ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
5812
6096
  href: parentUrlLink.value,
5813
6097
  class: vue.normalizeClass({ "lupa-title-category": !hasBackButton.value }),
5814
6098
  onClick: handleNavigationParent
5815
- }, vue.toDisplayString(parentTitle.value), 11, _hoisted_4$k)
6099
+ }, vue.toDisplayString(parentTitle.value), 11, _hoisted_4$j)
5816
6100
  ], 2),
5817
6101
  vue.createElementVNode("div", _hoisted_5$d, [
5818
6102
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(categoryChildren.value, (child) => {
5819
- return vue.openBlock(), vue.createBlock(_sfc_main$U, {
6103
+ return vue.openBlock(), vue.createBlock(_sfc_main$O, {
5820
6104
  key: getCategoryKey(child),
5821
6105
  item: child,
5822
6106
  options: _ctx.options
@@ -5827,13 +6111,13 @@ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
5827
6111
  };
5828
6112
  }
5829
6113
  });
5830
- const _hoisted_1$P = {
6114
+ const _hoisted_1$J = {
5831
6115
  class: "lupa-search-result-facet-term-values",
5832
6116
  "data-cy": "lupa-search-result-facet-term-values"
5833
6117
  };
5834
- const _hoisted_2$z = ["placeholder"];
5835
- const _hoisted_3$p = { class: "lupa-terms-list" };
5836
- const _hoisted_4$j = ["onClick"];
6118
+ const _hoisted_2$x = ["placeholder"];
6119
+ const _hoisted_3$o = { class: "lupa-terms-list" };
6120
+ const _hoisted_4$i = ["onClick"];
5837
6121
  const _hoisted_5$c = { class: "lupa-term-checkbox-wrapper" };
5838
6122
  const _hoisted_6$8 = { class: "lupa-term-checkbox-label" };
5839
6123
  const _hoisted_7$6 = { class: "lupa-term-label" };
@@ -5843,7 +6127,7 @@ const _hoisted_8$1 = {
5843
6127
  };
5844
6128
  const _hoisted_9$1 = { key: 0 };
5845
6129
  const _hoisted_10$1 = { key: 1 };
5846
- const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
6130
+ const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
5847
6131
  __name: "TermFacet",
5848
6132
  props: {
5849
6133
  options: {},
@@ -5912,17 +6196,17 @@ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
5912
6196
  return selectedItems == null ? void 0 : selectedItems.includes((_b = item.title) == null ? void 0 : _b.toString());
5913
6197
  };
5914
6198
  return (_ctx, _cache) => {
5915
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$P, [
6199
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$J, [
5916
6200
  isFilterable.value ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", {
5917
6201
  key: 0,
5918
6202
  class: "lupa-term-filter",
5919
6203
  "data-cy": "lupa-term-filter",
5920
6204
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => termFilter.value = $event),
5921
6205
  placeholder: _ctx.options.labels.facetFilter
5922
- }, null, 8, _hoisted_2$z)), [
6206
+ }, null, 8, _hoisted_2$x)), [
5923
6207
  [vue.vModelText, termFilter.value]
5924
6208
  ]) : vue.createCommentVNode("", true),
5925
- vue.createElementVNode("div", _hoisted_3$p, [
6209
+ vue.createElementVNode("div", _hoisted_3$o, [
5926
6210
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayValues.value, (item) => {
5927
6211
  return vue.openBlock(), vue.createElementBlock("div", {
5928
6212
  class: vue.normalizeClass(["lupa-facet-term", { checked: isChecked(item) }]),
@@ -5939,7 +6223,7 @@ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
5939
6223
  vue.createElementVNode("span", _hoisted_7$6, vue.toDisplayString(item.title), 1),
5940
6224
  _ctx.options.showDocumentCount ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_8$1, "(" + vue.toDisplayString(item.count) + ")", 1)) : vue.createCommentVNode("", true)
5941
6225
  ])
5942
- ], 10, _hoisted_4$j);
6226
+ ], 10, _hoisted_4$i);
5943
6227
  }), 128))
5944
6228
  ]),
5945
6229
  displayShowMore.value ? (vue.openBlock(), vue.createElementBlock("div", {
@@ -6930,16 +7214,16 @@ var m = { name: "Slider", emits: ["input", "update:modelValue", "start", "slide"
6930
7214
  m.render = function(e, t, r, i, n, o) {
6931
7215
  return vue.openBlock(), vue.createElementBlock("div", vue.mergeProps(e.sliderProps, { ref: "slider" }), null, 16);
6932
7216
  }, m.__file = "src/Slider.vue";
6933
- const _hoisted_1$O = { class: "lupa-search-result-facet-stats-values" };
6934
- const _hoisted_2$y = {
7217
+ const _hoisted_1$I = { class: "lupa-search-result-facet-stats-values" };
7218
+ const _hoisted_2$w = {
6935
7219
  key: 0,
6936
7220
  class: "lupa-stats-facet-summary"
6937
7221
  };
6938
- const _hoisted_3$o = {
7222
+ const _hoisted_3$n = {
6939
7223
  key: 1,
6940
7224
  class: "lupa-stats-facet-summary-input"
6941
7225
  };
6942
- const _hoisted_4$i = {
7226
+ const _hoisted_4$h = {
6943
7227
  key: 0,
6944
7228
  class: "lupa-stats-range-label"
6945
7229
  };
@@ -6958,7 +7242,7 @@ const _hoisted_13 = {
6958
7242
  key: 2,
6959
7243
  class: "lupa-stats-slider-wrapper"
6960
7244
  };
6961
- const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
7245
+ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
6962
7246
  __name: "StatsFacet",
6963
7247
  props: {
6964
7248
  options: {},
@@ -7127,10 +7411,10 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
7127
7411
  innerSliderRange.value = value;
7128
7412
  };
7129
7413
  return (_ctx, _cache) => {
7130
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$O, [
7131
- !isInputVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$y, vue.toDisplayString(statsSummary.value), 1)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$o, [
7414
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$I, [
7415
+ !isInputVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$w, vue.toDisplayString(statsSummary.value), 1)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$n, [
7132
7416
  vue.createElementVNode("div", null, [
7133
- rangeLabelFrom.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$i, vue.toDisplayString(rangeLabelFrom.value), 1)) : vue.createCommentVNode("", true),
7417
+ rangeLabelFrom.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$h, vue.toDisplayString(rangeLabelFrom.value), 1)) : vue.createCommentVNode("", true),
7134
7418
  vue.createElementVNode("div", _hoisted_5$b, [
7135
7419
  vue.withDirectives(vue.createElementVNode("input", {
7136
7420
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => fromValue.value = $event),
@@ -7194,10 +7478,10 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
7194
7478
  };
7195
7479
  }
7196
7480
  });
7197
- const _hoisted_1$N = { class: "lupa-term-checkbox-wrapper" };
7198
- const _hoisted_2$x = { class: "lupa-term-checkbox-label" };
7199
- const _hoisted_3$n = { class: "lupa-term-label" };
7200
- const _hoisted_4$h = {
7481
+ const _hoisted_1$H = { class: "lupa-term-checkbox-wrapper" };
7482
+ const _hoisted_2$v = { class: "lupa-term-checkbox-label" };
7483
+ const _hoisted_3$m = { class: "lupa-term-label" };
7484
+ const _hoisted_4$g = {
7201
7485
  key: 0,
7202
7486
  class: "lupa-term-count"
7203
7487
  };
@@ -7205,7 +7489,7 @@ const _hoisted_5$a = {
7205
7489
  key: 0,
7206
7490
  class: "lupa-facet-level"
7207
7491
  };
7208
- const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
7492
+ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
7209
7493
  __name: "HierarchyFacetLevel",
7210
7494
  props: {
7211
7495
  options: {},
@@ -7251,14 +7535,14 @@ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
7251
7535
  "data-cy": "lupa-facet-term",
7252
7536
  onClick: _cache[0] || (_cache[0] = ($event) => handleFacetClick(_ctx.item))
7253
7537
  }, [
7254
- vue.createElementVNode("div", _hoisted_1$N, [
7538
+ vue.createElementVNode("div", _hoisted_1$H, [
7255
7539
  vue.createElementVNode("span", {
7256
7540
  class: vue.normalizeClass(["lupa-term-checkbox", { checked: isChecked.value }])
7257
7541
  }, null, 2)
7258
7542
  ]),
7259
- vue.createElementVNode("div", _hoisted_2$x, [
7260
- vue.createElementVNode("span", _hoisted_3$n, vue.toDisplayString(_ctx.item.title) + vue.toDisplayString(" "), 1),
7261
- _ctx.options.showDocumentCount ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$h, "(" + vue.toDisplayString(_ctx.item.count) + ")", 1)) : vue.createCommentVNode("", true)
7543
+ vue.createElementVNode("div", _hoisted_2$v, [
7544
+ vue.createElementVNode("span", _hoisted_3$m, vue.toDisplayString(_ctx.item.title) + vue.toDisplayString(" "), 1),
7545
+ _ctx.options.showDocumentCount ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$g, "(" + vue.toDisplayString(_ctx.item.count) + ")", 1)) : vue.createCommentVNode("", true)
7262
7546
  ])
7263
7547
  ]),
7264
7548
  showChildren.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5$a, [
@@ -7277,13 +7561,13 @@ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
7277
7561
  };
7278
7562
  }
7279
7563
  });
7280
- const _hoisted_1$M = {
7564
+ const _hoisted_1$G = {
7281
7565
  class: "lupa-search-result-facet-term-values lupa-search-result-facet-hierarchy-values",
7282
7566
  "data-cy": "lupa-search-result-facet-term-values"
7283
7567
  };
7284
- const _hoisted_2$w = { key: 0 };
7285
- const _hoisted_3$m = ["placeholder"];
7286
- const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
7568
+ const _hoisted_2$u = { key: 0 };
7569
+ const _hoisted_3$l = ["placeholder"];
7570
+ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
7287
7571
  __name: "HierarchyFacet",
7288
7572
  props: {
7289
7573
  options: {},
@@ -7333,19 +7617,19 @@ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
7333
7617
  showAll.value = true;
7334
7618
  };
7335
7619
  return (_ctx, _cache) => {
7336
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$M, [
7337
- isFilterable.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$w, [
7620
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$G, [
7621
+ isFilterable.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$u, [
7338
7622
  vue.withDirectives(vue.createElementVNode("input", {
7339
7623
  class: "lupa-term-filter",
7340
7624
  "data-cy": "lupa-term-filter",
7341
7625
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => termFilter.value = $event),
7342
7626
  placeholder: _ctx.options.labels.facetFilter
7343
- }, null, 8, _hoisted_3$m), [
7627
+ }, null, 8, _hoisted_3$l), [
7344
7628
  [vue.vModelText, termFilter.value]
7345
7629
  ])
7346
7630
  ])) : vue.createCommentVNode("", true),
7347
7631
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayValues.value, (item) => {
7348
- return vue.openBlock(), vue.createBlock(_sfc_main$Q, {
7632
+ return vue.openBlock(), vue.createBlock(_sfc_main$K, {
7349
7633
  key: item.title,
7350
7634
  options: _ctx.options,
7351
7635
  item,
@@ -7365,20 +7649,20 @@ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
7365
7649
  };
7366
7650
  }
7367
7651
  });
7368
- const _hoisted_1$L = { class: "lupa-facet-label-text" };
7369
- const _hoisted_2$v = {
7652
+ const _hoisted_1$F = { class: "lupa-facet-label-text" };
7653
+ const _hoisted_2$t = {
7370
7654
  key: 0,
7371
7655
  class: "lupa-facet-content",
7372
7656
  "data-cy": "lupa-facet-content"
7373
7657
  };
7374
- const __default__$2 = {
7658
+ const __default__$1 = {
7375
7659
  components: {
7376
- TermFacet: _sfc_main$S,
7377
- StatsFacet: _sfc_main$R,
7378
- HierarchyFacet: _sfc_main$P
7660
+ TermFacet: _sfc_main$M,
7661
+ StatsFacet: _sfc_main$L,
7662
+ HierarchyFacet: _sfc_main$J
7379
7663
  }
7380
7664
  };
7381
- const _sfc_main$O = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, __default__$2), {
7665
+ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, __default__$1), {
7382
7666
  __name: "FacetDisplay",
7383
7667
  props: {
7384
7668
  options: {},
@@ -7490,12 +7774,12 @@ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
7490
7774
  "data-cy": "lupa-search-result-facet-label",
7491
7775
  onClick: toggleFacet
7492
7776
  }, [
7493
- vue.createElementVNode("div", _hoisted_1$L, vue.toDisplayString(facet.value.label), 1),
7777
+ vue.createElementVNode("div", _hoisted_1$F, vue.toDisplayString(facet.value.label), 1),
7494
7778
  vue.createElementVNode("div", {
7495
7779
  class: vue.normalizeClass(["lupa-facet-label-caret", isOpen.value && "open"])
7496
7780
  }, null, 2)
7497
7781
  ], 2),
7498
- isOpen.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$v, [
7782
+ isOpen.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$t, [
7499
7783
  (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(facetType.value), {
7500
7784
  facet: facet.value,
7501
7785
  currentFilters: currentFilters.value[facet.value.key],
@@ -7513,12 +7797,12 @@ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadVa
7513
7797
  };
7514
7798
  }
7515
7799
  }));
7516
- const _hoisted_1$K = { class: "lupa-search-result-facet-section" };
7517
- const _hoisted_2$u = {
7800
+ const _hoisted_1$E = { class: "lupa-search-result-facet-section" };
7801
+ const _hoisted_2$s = {
7518
7802
  key: 0,
7519
7803
  class: "lupa-facets-title"
7520
7804
  };
7521
- const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
7805
+ const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
7522
7806
  __name: "FacetList",
7523
7807
  props: {
7524
7808
  options: {},
@@ -7552,14 +7836,14 @@ const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
7552
7836
  };
7553
7837
  return (_ctx, _cache) => {
7554
7838
  var _a;
7555
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$K, [
7556
- _ctx.options.labels.title ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$u, vue.toDisplayString(_ctx.options.labels.title), 1)) : vue.createCommentVNode("", true),
7839
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$E, [
7840
+ _ctx.options.labels.title ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$s, vue.toDisplayString(_ctx.options.labels.title), 1)) : vue.createCommentVNode("", true),
7557
7841
  vue.createElementVNode("div", {
7558
7842
  class: vue.normalizeClass(["lupa-search-result-facet-list", "lupa-" + ((_a = _ctx.facetStyle) != null ? _a : "")])
7559
7843
  }, [
7560
7844
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayFacets.value, (facet) => {
7561
7845
  var _a2;
7562
- return vue.openBlock(), vue.createBlock(_sfc_main$O, {
7846
+ return vue.openBlock(), vue.createBlock(_sfc_main$I, {
7563
7847
  key: facet.key,
7564
7848
  facet,
7565
7849
  currentFilters: currentFiltersValue.value,
@@ -7574,8 +7858,8 @@ const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
7574
7858
  };
7575
7859
  }
7576
7860
  });
7577
- const _hoisted_1$J = { class: "lupa-search-result-facets" };
7578
- const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
7861
+ const _hoisted_1$D = { class: "lupa-search-result-facets" };
7862
+ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
7579
7863
  __name: "Facets",
7580
7864
  props: {
7581
7865
  options: {},
@@ -7651,8 +7935,8 @@ const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
7651
7935
  paramStore.removeParameters({ paramsToRemove: [param] });
7652
7936
  };
7653
7937
  return (_ctx, _cache) => {
7654
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$J, [
7655
- regularFacets.value ? (vue.openBlock(), vue.createBlock(_sfc_main$N, {
7938
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$D, [
7939
+ regularFacets.value ? (vue.openBlock(), vue.createBlock(_sfc_main$H, {
7656
7940
  key: 0,
7657
7941
  options: _ctx.options,
7658
7942
  facets: regularFacets.value,
@@ -7666,11 +7950,11 @@ const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
7666
7950
  };
7667
7951
  }
7668
7952
  });
7669
- const _hoisted_1$I = {
7953
+ const _hoisted_1$C = {
7670
7954
  id: "lupa-search-result-filters",
7671
7955
  class: "lupa-search-result-filters"
7672
7956
  };
7673
- const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
7957
+ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
7674
7958
  __name: "SearchResultsFilters",
7675
7959
  props: {
7676
7960
  options: {},
@@ -7699,19 +7983,19 @@ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
7699
7983
  __expose({ fetch: fetch2 });
7700
7984
  return (_ctx, _cache) => {
7701
7985
  var _a;
7702
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$I, [
7703
- showCurrentFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$V, {
7986
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$C, [
7987
+ showCurrentFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$P, {
7704
7988
  key: 0,
7705
7989
  options: _ctx.options.currentFilters,
7706
7990
  expandable: (_a = _ctx.expandable) != null ? _a : false
7707
7991
  }, null, 8, ["options", "expandable"])) : vue.createCommentVNode("", true),
7708
- _ctx.options.categories ? (vue.openBlock(), vue.createBlock(_sfc_main$T, {
7992
+ _ctx.options.categories ? (vue.openBlock(), vue.createBlock(_sfc_main$N, {
7709
7993
  key: 1,
7710
7994
  options: _ctx.options.categories,
7711
7995
  ref_key: "categoryFilters",
7712
7996
  ref: categoryFilters
7713
7997
  }, null, 8, ["options"])) : vue.createCommentVNode("", true),
7714
- _ctx.options.facets ? (vue.openBlock(), vue.createBlock(_sfc_main$M, {
7998
+ _ctx.options.facets ? (vue.openBlock(), vue.createBlock(_sfc_main$G, {
7715
7999
  key: 2,
7716
8000
  options: _ctx.options.facets
7717
8001
  }, null, 8, ["options"])) : vue.createCommentVNode("", true)
@@ -7719,20 +8003,20 @@ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
7719
8003
  };
7720
8004
  }
7721
8005
  });
7722
- const _hoisted_1$H = {
8006
+ const _hoisted_1$B = {
7723
8007
  key: 0,
7724
8008
  class: "lupa-mobile-filter-sidebar"
7725
8009
  };
7726
- const _hoisted_2$t = ["onClick"];
7727
- const _hoisted_3$l = { class: "lupa-mobile-sidebar-content" };
7728
- const _hoisted_4$g = { class: "lupa-sidebar-top" };
8010
+ const _hoisted_2$r = ["onClick"];
8011
+ const _hoisted_3$k = { class: "lupa-mobile-sidebar-content" };
8012
+ const _hoisted_4$f = { class: "lupa-sidebar-top" };
7729
8013
  const _hoisted_5$9 = { class: "lupa-sidebar-title" };
7730
8014
  const _hoisted_6$6 = {
7731
8015
  key: 0,
7732
8016
  class: "lupa-sidebar-filter-count"
7733
8017
  };
7734
8018
  const _hoisted_7$4 = { class: "lupa-sidebar-filter-options" };
7735
- const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
8019
+ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
7736
8020
  __name: "MobileFilterSidebar",
7737
8021
  props: {
7738
8022
  options: {}
@@ -7758,13 +8042,13 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
7758
8042
  searchResultStore.setSidebarState({ visible: false });
7759
8043
  };
7760
8044
  return (_ctx, _cache) => {
7761
- return isMobileSidebarVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$H, [
8045
+ return isMobileSidebarVisible.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$B, [
7762
8046
  vue.createElementVNode("div", {
7763
8047
  class: "lupa-sidebar-close",
7764
8048
  onClick: vue.withModifiers(handleMobileToggle, ["stop"])
7765
- }, null, 8, _hoisted_2$t),
7766
- vue.createElementVNode("div", _hoisted_3$l, [
7767
- vue.createElementVNode("div", _hoisted_4$g, [
8049
+ }, null, 8, _hoisted_2$r),
8050
+ vue.createElementVNode("div", _hoisted_3$k, [
8051
+ vue.createElementVNode("div", _hoisted_4$f, [
7768
8052
  vue.createElementVNode("div", _hoisted_5$9, [
7769
8053
  vue.createTextVNode(vue.toDisplayString(sidebarTitle.value) + " ", 1),
7770
8054
  isFilterCountVisible.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$6, vue.toDisplayString(vue.unref(currentFilterCount)), 1)) : vue.createCommentVNode("", true)
@@ -7775,7 +8059,7 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
7775
8059
  })
7776
8060
  ]),
7777
8061
  vue.createElementVNode("div", _hoisted_7$4, [
7778
- vue.createVNode(_sfc_main$L, {
8062
+ vue.createVNode(_sfc_main$F, {
7779
8063
  options: _ctx.options,
7780
8064
  expandable: isActiveFiltersExpanded.value
7781
8065
  }, null, 8, ["options", "expandable"])
@@ -7785,14 +8069,14 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
7785
8069
  };
7786
8070
  }
7787
8071
  });
7788
- const _hoisted_1$G = { id: "lupa-search-results-breadcrumbs" };
7789
- const _hoisted_2$s = ["href", "onClick"];
7790
- const _hoisted_3$k = {
8072
+ const _hoisted_1$A = { id: "lupa-search-results-breadcrumbs" };
8073
+ const _hoisted_2$q = ["href", "onClick"];
8074
+ const _hoisted_3$j = {
7791
8075
  key: 1,
7792
8076
  class: "lupa-search-results-breadcrumb-text"
7793
8077
  };
7794
- const _hoisted_4$f = { key: 2 };
7795
- const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
8078
+ const _hoisted_4$e = { key: 2 };
8079
+ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
7796
8080
  __name: "SearchResultsBreadcrumbs",
7797
8081
  props: {
7798
8082
  breadcrumbs: {}
@@ -7817,7 +8101,7 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
7817
8101
  handleRoutingEvent(link, event, hasEventRouting.value);
7818
8102
  };
7819
8103
  return (_ctx, _cache) => {
7820
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$G, [
8104
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$A, [
7821
8105
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(breadcrumbsValue.value, (breadcrumb, index) => {
7822
8106
  return vue.openBlock(), vue.createElementBlock("span", {
7823
8107
  class: "lupa-search-results-breadcrumb",
@@ -7831,19 +8115,19 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
7831
8115
  var _a;
7832
8116
  return handleNavigation(e, (_a = breadcrumb == null ? void 0 : breadcrumb.link) != null ? _a : "");
7833
8117
  }
7834
- }, vue.toDisplayString(getLabel(breadcrumb.label)), 9, _hoisted_2$s)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$k, vue.toDisplayString(getLabel(breadcrumb.label)), 1)),
7835
- index < breadcrumbsValue.value.length - 1 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$f, " / ")) : vue.createCommentVNode("", true)
8118
+ }, vue.toDisplayString(getLabel(breadcrumb.label)), 9, _hoisted_2$q)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$j, vue.toDisplayString(getLabel(breadcrumb.label)), 1)),
8119
+ index < breadcrumbsValue.value.length - 1 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$e, " / ")) : vue.createCommentVNode("", true)
7836
8120
  ]);
7837
8121
  }), 128))
7838
8122
  ]);
7839
8123
  };
7840
8124
  }
7841
8125
  });
7842
- const _hoisted_1$F = {
8126
+ const _hoisted_1$z = {
7843
8127
  id: "lupa-search-result-filters",
7844
8128
  class: "lupa-search-result-filters"
7845
8129
  };
7846
- const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
8130
+ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
7847
8131
  __name: "FiltersTopDropdown",
7848
8132
  props: {
7849
8133
  options: {}
@@ -7851,8 +8135,8 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
7851
8135
  setup(__props) {
7852
8136
  return (_ctx, _cache) => {
7853
8137
  var _a;
7854
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$F, [
7855
- _ctx.options.facets ? (vue.openBlock(), vue.createBlock(_sfc_main$M, {
8138
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$z, [
8139
+ _ctx.options.facets ? (vue.openBlock(), vue.createBlock(_sfc_main$G, {
7856
8140
  key: 0,
7857
8141
  options: _ctx.options.facets,
7858
8142
  "facet-style": (_a = _ctx.options.facets.style) == null ? void 0 : _a.type,
@@ -7862,8 +8146,8 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
7862
8146
  };
7863
8147
  }
7864
8148
  });
7865
- const _hoisted_1$E = { id: "lupa-search-results-layout-selection" };
7866
- const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
8149
+ const _hoisted_1$y = { id: "lupa-search-results-layout-selection" };
8150
+ const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
7867
8151
  __name: "SearchResultsLayoutSelection",
7868
8152
  setup(__props) {
7869
8153
  const searchResultStore = useSearchResultStore();
@@ -7874,7 +8158,7 @@ const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
7874
8158
  searchResultStore.setLayout(layout2);
7875
8159
  };
7876
8160
  return (_ctx, _cache) => {
7877
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$E, [
8161
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$y, [
7878
8162
  vue.createElementVNode("div", {
7879
8163
  class: vue.normalizeClass([
7880
8164
  "lupa-layout-selection-grid",
@@ -7896,11 +8180,11 @@ const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
7896
8180
  };
7897
8181
  }
7898
8182
  });
7899
- const _hoisted_1$D = {
8183
+ const _hoisted_1$x = {
7900
8184
  key: 0,
7901
8185
  class: "lupa-mobile-toggle-filter-count"
7902
8186
  };
7903
- const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
8187
+ const _sfc_main$A = /* @__PURE__ */ vue.defineComponent({
7904
8188
  __name: "SearchResultsMobileToggle",
7905
8189
  props: {
7906
8190
  label: {},
@@ -7918,26 +8202,26 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
7918
8202
  onClick: handleMobileToggle
7919
8203
  }, [
7920
8204
  vue.createTextVNode(vue.toDisplayString(_ctx.label) + " ", 1),
7921
- _ctx.showFilterCount && vue.unref(currentFilterCount) > 0 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$D, vue.toDisplayString(vue.unref(currentFilterCount)), 1)) : vue.createCommentVNode("", true)
8205
+ _ctx.showFilterCount && vue.unref(currentFilterCount) > 0 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$x, vue.toDisplayString(vue.unref(currentFilterCount)), 1)) : vue.createCommentVNode("", true)
7922
8206
  ], 2);
7923
8207
  };
7924
8208
  }
7925
8209
  });
7926
- const _hoisted_1$C = {
8210
+ const _hoisted_1$w = {
7927
8211
  key: 0,
7928
8212
  id: "lupa-search-results-page-select",
7929
8213
  "data-cy": "lupa-search-results-page-select"
7930
8214
  };
7931
- const _hoisted_2$r = {
8215
+ const _hoisted_2$p = {
7932
8216
  key: 0,
7933
8217
  class: "lupa-page-number-separator"
7934
8218
  };
7935
- const _hoisted_3$j = ["onClick"];
7936
- const _hoisted_4$e = {
8219
+ const _hoisted_3$i = ["onClick"];
8220
+ const _hoisted_4$d = {
7937
8221
  key: 0,
7938
8222
  class: "lupa-page-number-separator"
7939
8223
  };
7940
- const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
8224
+ const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
7941
8225
  __name: "SearchResultsPageSelect",
7942
8226
  props: {
7943
8227
  lastPageLabel: {},
@@ -8014,7 +8298,7 @@ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
8014
8298
  }
8015
8299
  };
8016
8300
  return (_ctx, _cache) => {
8017
- return showPagination.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$C, [
8301
+ return showPagination.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$w, [
8018
8302
  showBack.value ? (vue.openBlock(), vue.createElementBlock("div", {
8019
8303
  key: 0,
8020
8304
  class: vue.normalizeClass(firstPageLabel.value === "<" ? "lupa-page-arrow" : "lupa-show-less"),
@@ -8025,7 +8309,7 @@ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
8025
8309
  class: "lupa-page-number lupa-page-number-first",
8026
8310
  onClick: _cache[1] || (_cache[1] = () => handlePageChange(1))
8027
8311
  }, " 1 "),
8028
- showFirstPageSeparator.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$r, "...")) : vue.createCommentVNode("", true)
8312
+ showFirstPageSeparator.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$p, "...")) : vue.createCommentVNode("", true)
8029
8313
  ], 64)) : vue.createCommentVNode("", true),
8030
8314
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(pages.value, (page) => {
8031
8315
  return vue.openBlock(), vue.createElementBlock("div", {
@@ -8036,10 +8320,10 @@ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
8036
8320
  page === _ctx.options.selectedPage ? "lupa-page-number-selected" : ""
8037
8321
  ]),
8038
8322
  "data-cy": "lupa-page-number"
8039
- }, vue.toDisplayString(page), 11, _hoisted_3$j);
8323
+ }, vue.toDisplayString(page), 11, _hoisted_3$i);
8040
8324
  }), 128)),
8041
8325
  showLastPage.value ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
8042
- showLastPageSeparator.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$e, "...")) : vue.createCommentVNode("", true),
8326
+ showLastPageSeparator.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$d, "...")) : vue.createCommentVNode("", true),
8043
8327
  vue.createElementVNode("div", {
8044
8328
  class: "lupa-page-number lupa-page-number-last",
8045
8329
  onClick: _cache[2] || (_cache[2] = () => {
@@ -8058,14 +8342,14 @@ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
8058
8342
  };
8059
8343
  }
8060
8344
  });
8061
- const _hoisted_1$B = {
8345
+ const _hoisted_1$v = {
8062
8346
  id: "lupa-search-results-page-size",
8063
8347
  "data-cy": "lupa-search-results-page-size"
8064
8348
  };
8065
- const _hoisted_2$q = { id: "lupa-select" };
8066
- const _hoisted_3$i = { class: "lupa-select-label" };
8067
- const _hoisted_4$d = ["aria-label"];
8068
- const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
8349
+ const _hoisted_2$o = { id: "lupa-select" };
8350
+ const _hoisted_3$h = { class: "lupa-select-label" };
8351
+ const _hoisted_4$c = ["aria-label"];
8352
+ const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
8069
8353
  __name: "SearchResultsPageSize",
8070
8354
  props: {
8071
8355
  label: {},
@@ -8083,9 +8367,9 @@ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
8083
8367
  });
8084
8368
  };
8085
8369
  return (_ctx, _cache) => {
8086
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$B, [
8087
- vue.createElementVNode("div", _hoisted_2$q, [
8088
- vue.createElementVNode("label", _hoisted_3$i, vue.toDisplayString(_ctx.label), 1),
8370
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$v, [
8371
+ vue.createElementVNode("div", _hoisted_2$o, [
8372
+ vue.createElementVNode("label", _hoisted_3$h, vue.toDisplayString(_ctx.label), 1),
8089
8373
  vue.createElementVNode("select", {
8090
8374
  class: "lupa-select-dropdown",
8091
8375
  "aria-label": _ctx.label,
@@ -8097,21 +8381,21 @@ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
8097
8381
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.options.sizes, (option) => {
8098
8382
  return vue.openBlock(), vue.createElementBlock("option", { key: option }, vue.toDisplayString(option), 1);
8099
8383
  }), 128))
8100
- ], 40, _hoisted_4$d)
8384
+ ], 40, _hoisted_4$c)
8101
8385
  ])
8102
8386
  ]);
8103
8387
  };
8104
8388
  }
8105
8389
  });
8106
- const _hoisted_1$A = {
8390
+ const _hoisted_1$u = {
8107
8391
  id: "lupa-search-results-sort",
8108
8392
  class: "lupa-search-results-sort"
8109
8393
  };
8110
- const _hoisted_2$p = { id: "lupa-select" };
8111
- const _hoisted_3$h = { class: "lupa-select-label" };
8112
- const _hoisted_4$c = ["aria-label"];
8394
+ const _hoisted_2$n = { id: "lupa-select" };
8395
+ const _hoisted_3$g = { class: "lupa-select-label" };
8396
+ const _hoisted_4$b = ["aria-label"];
8113
8397
  const _hoisted_5$8 = ["value"];
8114
- const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
8398
+ const _sfc_main$x = /* @__PURE__ */ vue.defineComponent({
8115
8399
  __name: "SearchResultsSort",
8116
8400
  props: {
8117
8401
  options: {},
@@ -8160,9 +8444,9 @@ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
8160
8444
  previousKey.value = selectedKey.value;
8161
8445
  };
8162
8446
  return (_ctx, _cache) => {
8163
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$A, [
8164
- vue.createElementVNode("div", _hoisted_2$p, [
8165
- vue.createElementVNode("label", _hoisted_3$h, vue.toDisplayString(_ctx.options.label), 1),
8447
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$u, [
8448
+ vue.createElementVNode("div", _hoisted_2$n, [
8449
+ vue.createElementVNode("label", _hoisted_3$g, vue.toDisplayString(_ctx.options.label), 1),
8166
8450
  vue.withDirectives(vue.createElementVNode("select", {
8167
8451
  class: "lupa-select-dropdown",
8168
8452
  "aria-label": _ctx.options.label,
@@ -8177,7 +8461,7 @@ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
8177
8461
  value: option.key
8178
8462
  }, vue.toDisplayString(option.label), 9, _hoisted_5$8);
8179
8463
  }), 128))
8180
- ], 40, _hoisted_4$c), [
8464
+ ], 40, _hoisted_4$b), [
8181
8465
  [vue.vModelSelect, selectedKey.value]
8182
8466
  ])
8183
8467
  ])
@@ -8185,14 +8469,14 @@ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
8185
8469
  };
8186
8470
  }
8187
8471
  });
8188
- const _hoisted_1$z = { class: "lupa-toolbar-left" };
8189
- const _hoisted_2$o = { key: 1 };
8190
- const _hoisted_3$g = { key: 3 };
8191
- const _hoisted_4$b = { key: 5 };
8472
+ const _hoisted_1$t = { class: "lupa-toolbar-left" };
8473
+ const _hoisted_2$m = { key: 1 };
8474
+ const _hoisted_3$f = { key: 3 };
8475
+ const _hoisted_4$a = { key: 5 };
8192
8476
  const _hoisted_5$7 = { class: "lupa-toolbar-right" };
8193
8477
  const _hoisted_6$5 = { key: 1 };
8194
8478
  const _hoisted_7$3 = { key: 3 };
8195
- const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
8479
+ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
8196
8480
  __name: "SearchResultsToolbar",
8197
8481
  props: {
8198
8482
  options: {},
@@ -8291,32 +8575,32 @@ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
8291
8575
  id: "lupa-search-results-toolbar",
8292
8576
  class: vue.normalizeClass({ "lupa-filter-no-results": !hasResults.value })
8293
8577
  }, [
8294
- vue.createElementVNode("div", _hoisted_1$z, [
8295
- showLayoutSelection.value ? (vue.openBlock(), vue.createBlock(_sfc_main$H, { key: 0 })) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$o)),
8296
- showItemSummary.value ? (vue.openBlock(), vue.createBlock(_sfc_main$Y, {
8578
+ vue.createElementVNode("div", _hoisted_1$t, [
8579
+ showLayoutSelection.value ? (vue.openBlock(), vue.createBlock(_sfc_main$B, { key: 0 })) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$m)),
8580
+ showItemSummary.value ? (vue.openBlock(), vue.createBlock(_sfc_main$S, {
8297
8581
  key: 2,
8298
8582
  label: searchSummaryLabel.value,
8299
8583
  clearable: vue.unref(hasAnyFilter) && showFilterClear.value,
8300
8584
  onClear: handleClearAll
8301
- }, null, 8, ["label", "clearable"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$g)),
8302
- displayPageSelect.value ? (vue.openBlock(), vue.createBlock(_sfc_main$F, {
8585
+ }, null, 8, ["label", "clearable"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$f)),
8586
+ displayPageSelect.value ? (vue.openBlock(), vue.createBlock(_sfc_main$z, {
8303
8587
  key: 4,
8304
8588
  options: paginationOptions.value.pageSelect,
8305
8589
  "last-page-label": paginationOptions.value.labels.showMore,
8306
8590
  "first-page-label": paginationOptions.value.labels.showLess
8307
- }, null, 8, ["options", "last-page-label", "first-page-label"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$b))
8591
+ }, null, 8, ["options", "last-page-label", "first-page-label"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$a))
8308
8592
  ]),
8309
8593
  vue.createElementVNode("div", _hoisted_5$7, [
8310
- vue.createVNode(_sfc_main$G, {
8594
+ vue.createVNode(_sfc_main$A, {
8311
8595
  label: optionsValue.value.labels.mobileFilterButton,
8312
8596
  "show-filter-count": showMobileFilterCount.value
8313
8597
  }, null, 8, ["label", "show-filter-count"]),
8314
- paginationDisplay.value.pageSize ? (vue.openBlock(), vue.createBlock(_sfc_main$E, {
8598
+ paginationDisplay.value.pageSize ? (vue.openBlock(), vue.createBlock(_sfc_main$y, {
8315
8599
  key: 0,
8316
8600
  options: paginationOptions.value.pageSize,
8317
8601
  label: paginationOptions.value.labels.pageSize
8318
8602
  }, null, 8, ["options", "label"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_6$5)),
8319
- sortOptions.value ? (vue.openBlock(), vue.createBlock(_sfc_main$D, {
8603
+ sortOptions.value ? (vue.openBlock(), vue.createBlock(_sfc_main$x, {
8320
8604
  key: 2,
8321
8605
  options: sortOptions.value,
8322
8606
  callbacks: callbacks.value
@@ -8326,259 +8610,6 @@ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
8326
8610
  };
8327
8611
  }
8328
8612
  });
8329
- const _hoisted_1$y = { class: "lupa-badge-title" };
8330
- const _hoisted_2$n = ["src"];
8331
- const _hoisted_3$f = { key: 1 };
8332
- const _hoisted_4$a = {
8333
- key: 0,
8334
- class: "lupa-badge-full-text"
8335
- };
8336
- const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
8337
- __name: "SearchResultGeneratedBadge",
8338
- props: {
8339
- options: {},
8340
- badge: {}
8341
- },
8342
- setup(__props) {
8343
- const props = __props;
8344
- const image = vue.computed(() => {
8345
- var _a, _b, _c;
8346
- return (_c = (_b = (_a = props.options.generate) == null ? void 0 : _a.image) == null ? void 0 : _b.call(_a, props.badge)) != null ? _c : "";
8347
- });
8348
- const showTitle = vue.computed(() => {
8349
- var _a, _b, _c;
8350
- return (_c = (_b = (_a = props.options.generate) == null ? void 0 : _a.showTitle) == null ? void 0 : _b.call(_a, props.badge)) != null ? _c : true;
8351
- });
8352
- const hasAdditionalText = vue.computed(() => {
8353
- var _a, _b;
8354
- return Boolean((_a = props.badge) == null ? void 0 : _a.additionalText) && typeof ((_b = props.badge) == null ? void 0 : _b.additionalText) === "string";
8355
- });
8356
- const hasTitleText = vue.computed(() => {
8357
- var _a, _b;
8358
- return Boolean((_a = props.badge) == null ? void 0 : _a.titleText) && typeof ((_b = props.badge) == null ? void 0 : _b.titleText) === "string";
8359
- });
8360
- const customClassName = vue.computed(() => {
8361
- var _a, _b, _c;
8362
- return (_c = (_b = (_a = props.options.generate) == null ? void 0 : _a.customClass) == null ? void 0 : _b.call(_a, props.badge)) != null ? _c : "";
8363
- });
8364
- return (_ctx, _cache) => {
8365
- return vue.openBlock(), vue.createElementBlock("div", {
8366
- class: vue.normalizeClass(["lupa-dynamic-badge", customClassName.value]),
8367
- style: vue.normalizeStyle({ background: _ctx.badge.backgroundColor, color: _ctx.badge.color })
8368
- }, [
8369
- vue.createElementVNode("span", _hoisted_1$y, [
8370
- image.value ? (vue.openBlock(), vue.createElementBlock("img", {
8371
- key: 0,
8372
- src: image.value
8373
- }, null, 8, _hoisted_2$n)) : vue.createCommentVNode("", true),
8374
- hasTitleText.value && showTitle.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$f, vue.toDisplayString(_ctx.badge.titleText), 1)) : vue.createCommentVNode("", true)
8375
- ]),
8376
- hasAdditionalText.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$a, vue.toDisplayString(_ctx.badge.additionalText), 1)) : vue.createCommentVNode("", true)
8377
- ], 6);
8378
- };
8379
- }
8380
- });
8381
- const _hoisted_1$x = { class: "lupa-generated-badges" };
8382
- const _sfc_main$A = /* @__PURE__ */ vue.defineComponent({
8383
- __name: "SearchResultGeneratedBadges",
8384
- props: {
8385
- options: {}
8386
- },
8387
- setup(__props) {
8388
- const props = __props;
8389
- const badgeField = vue.computed(() => {
8390
- var _a, _b, _c, _d, _e, _f, _g;
8391
- const fieldHasBadges = ((_a = props.options.generate) == null ? void 0 : _a.key) && props.options.product[(_c = (_b = props.options.generate) == null ? void 0 : _b.key) != null ? _c : ""] && Array.isArray(props.options.product[(_e = (_d = props.options.generate) == null ? void 0 : _d.key) != null ? _e : ""]);
8392
- return fieldHasBadges ? props.options.product[(_g = (_f = props.options.generate) == null ? void 0 : _f.key) != null ? _g : ""] : [];
8393
- });
8394
- const keyMap = vue.computed(() => {
8395
- var _a, _b;
8396
- return (_b = (_a = props.options.generate) == null ? void 0 : _a.keyMap) != null ? _b : {};
8397
- });
8398
- const badges = vue.computed(() => {
8399
- return badgeField.value.filter((f2) => Boolean(f2)).map((f2) => ({
8400
- backgroundColor: keyMap.value.backgroundColor ? f2[keyMap.value.backgroundColor] : void 0,
8401
- color: keyMap.value.color ? f2[keyMap.value.color] : void 0,
8402
- titleText: keyMap.value.titleText ? f2[keyMap.value.titleText] : void 0,
8403
- additionalText: keyMap.value.additionalText ? f2[keyMap.value.additionalText] : void 0,
8404
- id: keyMap.value.id ? f2[keyMap.value.id] : void 0
8405
- })).filter((b) => Boolean(b.id));
8406
- });
8407
- return (_ctx, _cache) => {
8408
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$x, [
8409
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(badges.value, (badge) => {
8410
- return vue.openBlock(), vue.createBlock(_sfc_main$B, {
8411
- key: badge.id,
8412
- badge,
8413
- options: _ctx.options
8414
- }, null, 8, ["badge", "options"]);
8415
- }), 128))
8416
- ]);
8417
- };
8418
- }
8419
- });
8420
- const _hoisted_1$w = ["innerHTML"];
8421
- const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
8422
- __name: "CustomBadge",
8423
- props: {
8424
- badge: {}
8425
- },
8426
- setup(__props) {
8427
- const props = __props;
8428
- const text = vue.computed(() => {
8429
- var _a, _b, _c;
8430
- return (_c = (_b = props.badge).html) == null ? void 0 : _c.call(_b, (_a = props.badge.product) != null ? _a : {});
8431
- });
8432
- const className = vue.computed(() => {
8433
- var _a;
8434
- return (_a = props.badge.className) != null ? _a : "";
8435
- });
8436
- return (_ctx, _cache) => {
8437
- return vue.openBlock(), vue.createElementBlock("div", {
8438
- class: vue.normalizeClass(className.value),
8439
- innerHTML: text.value
8440
- }, null, 10, _hoisted_1$w);
8441
- };
8442
- }
8443
- });
8444
- const _hoisted_1$v = { class: "lupa-text-badges" };
8445
- const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
8446
- __name: "TextBadge",
8447
- props: {
8448
- badge: {}
8449
- },
8450
- setup(__props) {
8451
- const props = __props;
8452
- const badges = vue.computed(() => {
8453
- var _a, _b;
8454
- return (_b = (_a = props.badge) == null ? void 0 : _a.value) != null ? _b : [];
8455
- });
8456
- const displayBadges = vue.computed(() => {
8457
- return badges.value.slice(0, props.badge.maxItems);
8458
- });
8459
- return (_ctx, _cache) => {
8460
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$v, [
8461
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayBadges.value, (item) => {
8462
- return vue.openBlock(), vue.createElementBlock("div", {
8463
- class: "lupa-badge lupa-text-badge",
8464
- key: item
8465
- }, vue.toDisplayString(_ctx.badge.prefix) + vue.toDisplayString(item), 1);
8466
- }), 128))
8467
- ]);
8468
- };
8469
- }
8470
- });
8471
- const _hoisted_1$u = { class: "lupa-image-badges" };
8472
- const _hoisted_2$m = ["src"];
8473
- const _sfc_main$x = /* @__PURE__ */ vue.defineComponent({
8474
- __name: "ImageBadge",
8475
- props: {
8476
- badge: {}
8477
- },
8478
- setup(__props) {
8479
- const props = __props;
8480
- const badges = vue.computed(() => {
8481
- return props.badge.value;
8482
- });
8483
- const displayBadges = vue.computed(() => {
8484
- return badges.value.slice(0, props.badge.maxItems);
8485
- });
8486
- const getImageUrl = (src) => {
8487
- if (!props.badge.rootImageUrl) {
8488
- return src;
8489
- }
8490
- return `${props.badge.rootImageUrl}${src}`;
8491
- };
8492
- return (_ctx, _cache) => {
8493
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$u, [
8494
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayBadges.value, (item) => {
8495
- return vue.openBlock(), vue.createElementBlock("div", {
8496
- class: "lupa-badge lupa-image-badge",
8497
- key: item
8498
- }, [
8499
- vue.createElementVNode("img", {
8500
- src: getImageUrl(item)
8501
- }, null, 8, _hoisted_2$m)
8502
- ]);
8503
- }), 128))
8504
- ]);
8505
- };
8506
- }
8507
- });
8508
- const _hoisted_1$t = { id: "lupa-search-results-badges" };
8509
- const __default__$1 = {
8510
- components: {
8511
- CustomBadge: _sfc_main$z,
8512
- TextBadge: _sfc_main$y,
8513
- ImageBadge: _sfc_main$x
8514
- }
8515
- };
8516
- const _sfc_main$w = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, __default__$1), {
8517
- __name: "SearchResultsBadgeWrapper",
8518
- props: {
8519
- position: {},
8520
- options: {}
8521
- },
8522
- setup(__props) {
8523
- const props = __props;
8524
- const positionValue = vue.computed(() => {
8525
- var _a;
8526
- return (_a = props.position) != null ? _a : "card";
8527
- });
8528
- const anchorPosition = vue.computed(() => {
8529
- return props.options.anchor;
8530
- });
8531
- const badges = vue.computed(() => {
8532
- if (!props.options.elements) {
8533
- return [];
8534
- }
8535
- return props.options.elements.filter((e) => {
8536
- var _a;
8537
- return !e.display || e.display((_a = props.options.product) != null ? _a : {});
8538
- }).map((x) => {
8539
- var _a;
8540
- return __spreadProps(__spreadValues({}, x), {
8541
- value: ((_a = props.options.product) == null ? void 0 : _a[x.key]) || "badge",
8542
- product: props.options.product
8543
- });
8544
- });
8545
- });
8546
- const displayBadges = vue.computed(() => {
8547
- return positionValue.value === "card" ? badges.value.filter((b) => !b.position || b.position === "card") : badges.value.filter((b) => b.position === "image");
8548
- });
8549
- const getBadgeComponent = (type) => {
8550
- switch (type) {
8551
- case BadgeType.TEXT:
8552
- return "TextBadge";
8553
- case BadgeType.IMAGE:
8554
- return "ImageBadge";
8555
- case BadgeType.CUSTOM_HTML:
8556
- return "CustomBadge";
8557
- default:
8558
- return "CustomBadge";
8559
- }
8560
- };
8561
- return (_ctx, _cache) => {
8562
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$t, [
8563
- vue.createElementVNode("div", {
8564
- id: "lupa-badges",
8565
- class: vue.normalizeClass(anchorPosition.value)
8566
- }, [
8567
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(displayBadges.value, (badge, index) => {
8568
- return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(getBadgeComponent(badge.type)), {
8569
- key: index,
8570
- badge
8571
- }, null, 8, ["badge"]);
8572
- }), 128)),
8573
- positionValue.value === "card" ? (vue.openBlock(), vue.createBlock(_sfc_main$A, {
8574
- key: 0,
8575
- options: _ctx.options
8576
- }, null, 8, ["options"])) : vue.createCommentVNode("", true)
8577
- ], 2)
8578
- ]);
8579
- };
8580
- }
8581
- }));
8582
8613
  const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
8583
8614
  __name: "SearchResultsProductImage",
8584
8615
  props: {
@@ -9225,7 +9256,7 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
9225
9256
  "data-cy": "lupa-search-result-product-card",
9226
9257
  class: ["lupa-search-result-product-card", !isInStock.value ? "lupa-out-of-stock" : ""]
9227
9258
  }, customDocumentHtmlAttributes.value, { onClick: handleClick }), [
9228
- vue.createVNode(_sfc_main$w, { options: badgesOptions.value }, null, 8, ["options"]),
9259
+ vue.createVNode(_sfc_main$_, { options: badgesOptions.value }, null, 8, ["options"]),
9229
9260
  vue.createElementVNode("div", {
9230
9261
  class: vue.normalizeClass(["lupa-search-result-product-contents", listLayoutClass.value])
9231
9262
  }, [
@@ -9245,7 +9276,7 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
9245
9276
  link: link.value
9246
9277
  }, null, 8, ["item", "element", "labels", "inStock", "link"]);
9247
9278
  }), 128)),
9248
- vue.createVNode(_sfc_main$w, {
9279
+ vue.createVNode(_sfc_main$_, {
9249
9280
  options: badgesOptions.value,
9250
9281
  position: "image",
9251
9282
  class: "lupa-image-badges"
@@ -9687,17 +9718,17 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
9687
9718
  class: "lupa-loader"
9688
9719
  })) : vue.createCommentVNode("", true),
9689
9720
  vue.unref(hasResults) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
9690
- showTopFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$I, {
9721
+ showTopFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$C, {
9691
9722
  key: 0,
9692
9723
  options: (_a = _ctx.options.filters) != null ? _a : {}
9693
9724
  }, null, 8, ["options"])) : vue.createCommentVNode("", true),
9694
- showMobileFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$C, {
9725
+ showMobileFilters.value ? (vue.openBlock(), vue.createBlock(_sfc_main$w, {
9695
9726
  key: 1,
9696
9727
  class: "lupa-toolbar-mobile",
9697
9728
  options: _ctx.options,
9698
9729
  "pagination-location": "top"
9699
9730
  }, null, 8, ["options"])) : vue.createCommentVNode("", true),
9700
- currentFilterOptions.value ? (vue.openBlock(), vue.createBlock(_sfc_main$V, {
9731
+ currentFilterOptions.value ? (vue.openBlock(), vue.createBlock(_sfc_main$P, {
9701
9732
  key: 2,
9702
9733
  class: vue.normalizeClass(currentFiltersClass.value),
9703
9734
  "data-cy": "lupa-search-result-filters-mobile-toolbar",
@@ -9711,7 +9742,7 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
9711
9742
  sdkOptions: _ctx.options.options
9712
9743
  }, null, 8, ["options", "sdkOptions"]),
9713
9744
  vue.unref(hasResults) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
9714
- vue.createVNode(_sfc_main$C, {
9745
+ vue.createVNode(_sfc_main$w, {
9715
9746
  class: "lupa-toolbar-top",
9716
9747
  options: _ctx.options,
9717
9748
  "pagination-location": "top"
@@ -9741,7 +9772,7 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
9741
9772
  onClick: goToFirstPage
9742
9773
  }, vue.toDisplayString(_ctx.options.labels.backToFirstPage), 1)) : vue.createCommentVNode("", true)
9743
9774
  ])) : vue.createCommentVNode("", true),
9744
- vue.createVNode(_sfc_main$C, {
9775
+ vue.createVNode(_sfc_main$w, {
9745
9776
  class: "lupa-toolbar-bottom",
9746
9777
  options: _ctx.options,
9747
9778
  "pagination-location": "bottom"
@@ -9820,7 +9851,7 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
9820
9851
  onClick: handleNavigationBack
9821
9852
  }, vue.toDisplayString(backTitle.value), 9, _hoisted_3$5)
9822
9853
  ])) : vue.createCommentVNode("", true),
9823
- vue.createVNode(_sfc_main$C, {
9854
+ vue.createVNode(_sfc_main$w, {
9824
9855
  class: "lupa-toolbar-mobile",
9825
9856
  "pagination-location": "top",
9826
9857
  options: _ctx.options
@@ -10052,8 +10083,8 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
10052
10083
  class: vue.normalizeClass(["lupa-search-result-wrapper", { "lupa-search-wrapper-no-results": !vue.unref(hasResults) }])
10053
10084
  }, [
10054
10085
  _ctx.isContainer ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$b, [
10055
- vue.createVNode(_sfc_main$Z, { labels: didYouMeanLabels.value }, null, 8, ["labels"]),
10056
- vue.createVNode(_sfc_main$X, {
10086
+ vue.createVNode(_sfc_main$T, { labels: didYouMeanLabels.value }, null, 8, ["labels"]),
10087
+ vue.createVNode(_sfc_main$R, {
10057
10088
  "show-summary": true,
10058
10089
  options: _ctx.options,
10059
10090
  "is-product-list": (_a = _ctx.isProductList) != null ? _a : false
@@ -10063,24 +10094,24 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
10063
10094
  key: 1,
10064
10095
  options: _ctx.options
10065
10096
  }, null, 8, ["options"])) : vue.createCommentVNode("", true),
10066
- _ctx.options.filters ? (vue.openBlock(), vue.createBlock(_sfc_main$K, {
10097
+ _ctx.options.filters ? (vue.openBlock(), vue.createBlock(_sfc_main$E, {
10067
10098
  key: 2,
10068
10099
  options: _ctx.options.filters
10069
10100
  }, null, 8, ["options"])) : vue.createCommentVNode("", true),
10070
- vue.unref(currentQueryText) || _ctx.isProductList ? (vue.openBlock(), vue.createBlock(_sfc_main$J, {
10101
+ vue.unref(currentQueryText) || _ctx.isProductList ? (vue.openBlock(), vue.createBlock(_sfc_main$D, {
10071
10102
  key: 3,
10072
10103
  breadcrumbs: _ctx.options.breadcrumbs
10073
10104
  }, null, 8, ["breadcrumbs"])) : vue.createCommentVNode("", true),
10074
10105
  isTitleResultTopPosition.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$9, [
10075
- showFilterSidebar.value ? (vue.openBlock(), vue.createBlock(_sfc_main$L, {
10106
+ showFilterSidebar.value ? (vue.openBlock(), vue.createBlock(_sfc_main$F, {
10076
10107
  key: 0,
10077
10108
  options: (_b = _ctx.options.filters) != null ? _b : {},
10078
10109
  ref_key: "searchResultsFilters",
10079
10110
  ref: searchResultsFilters
10080
10111
  }, null, 8, ["options"])) : vue.createCommentVNode("", true),
10081
10112
  vue.createElementVNode("div", _hoisted_3$4, [
10082
- vue.createVNode(_sfc_main$Z, { labels: didYouMeanLabels.value }, null, 8, ["labels"]),
10083
- vue.createVNode(_sfc_main$X, {
10113
+ vue.createVNode(_sfc_main$T, { labels: didYouMeanLabels.value }, null, 8, ["labels"]),
10114
+ vue.createVNode(_sfc_main$R, {
10084
10115
  options: _ctx.options,
10085
10116
  "is-product-list": (_c = _ctx.isProductList) != null ? _c : false
10086
10117
  }, null, 8, ["options", "is-product-list"]),
@@ -10095,13 +10126,13 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
10095
10126
  }, 8, ["options", "ssr"])
10096
10127
  ])
10097
10128
  ])) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 5 }, [
10098
- vue.createVNode(_sfc_main$Z, { labels: didYouMeanLabels.value }, null, 8, ["labels"]),
10099
- vue.createVNode(_sfc_main$X, {
10129
+ vue.createVNode(_sfc_main$T, { labels: didYouMeanLabels.value }, null, 8, ["labels"]),
10130
+ vue.createVNode(_sfc_main$R, {
10100
10131
  options: _ctx.options,
10101
10132
  "is-product-list": (_d = _ctx.isProductList) != null ? _d : false
10102
10133
  }, null, 8, ["options", "is-product-list"]),
10103
10134
  vue.createElementVNode("div", _hoisted_4$3, [
10104
- showFilterSidebar.value ? (vue.openBlock(), vue.createBlock(_sfc_main$L, {
10135
+ showFilterSidebar.value ? (vue.openBlock(), vue.createBlock(_sfc_main$F, {
10105
10136
  key: 0,
10106
10137
  options: (_e = _ctx.options.filters) != null ? _e : {},
10107
10138
  ref_key: "searchResultsFilters",
@@ -15731,7 +15762,7 @@ const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
15731
15762
  onClick: vue.withModifiers(innerClick, ["stop"])
15732
15763
  }, [
15733
15764
  vue.createElementVNode("div", _hoisted_2$7, [
15734
- vue.createVNode(_sfc_main$_, {
15765
+ vue.createVNode(_sfc_main$U, {
15735
15766
  options: fullSearchBoxOptions.value,
15736
15767
  "is-search-container": true,
15737
15768
  ref_key: "searchBox",
@@ -17209,7 +17240,7 @@ exports.DocumentElementType = DocumentElementType;
17209
17240
  exports.LupaSearch = LupaSearch;
17210
17241
  exports.ProductList = _sfc_main$a;
17211
17242
  exports.Recommendations = _sfc_main$8;
17212
- exports.SearchBox = _sfc_main$_;
17243
+ exports.SearchBox = _sfc_main$U;
17213
17244
  exports.SearchBoxPanelType = SearchBoxPanelType;
17214
17245
  exports.SearchContainer = _sfc_main$9;
17215
17246
  exports.SearchResults = _sfc_main$c;