@propeller-commerce/propeller-v2-vue-ui 0.3.32 → 0.3.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -0
- package/dist/components/DeliveryDate.vue.d.ts +8 -0
- package/dist/components/SearchBar.vue.d.ts +19 -1
- package/dist/index.cjs +153 -125
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +153 -125
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -3084,11 +3084,11 @@ const _hoisted_14$t = {
|
|
|
3084
3084
|
viewBox: "0 0 24 24",
|
|
3085
3085
|
class: "propeller-login-form__spinner animate-spin -ml-1 mr-2 h-4 w-4 text-primary-foreground"
|
|
3086
3086
|
};
|
|
3087
|
-
const _hoisted_15$
|
|
3087
|
+
const _hoisted_15$t = {
|
|
3088
3088
|
key: 1,
|
|
3089
3089
|
class: "propeller-login-form__footer mt-6 border-t pt-6 space-y-3"
|
|
3090
3090
|
};
|
|
3091
|
-
const _hoisted_16$
|
|
3091
|
+
const _hoisted_16$s = { class: "propeller-login-form__register text-center" };
|
|
3092
3092
|
const _hoisted_17$r = { class: "propeller-login-form__register-prompt text-sm text-muted-foreground mb-2" };
|
|
3093
3093
|
const _hoisted_18$p = { class: "propeller-login-form__guest text-center" };
|
|
3094
3094
|
const _hoisted_19$p = {
|
|
@@ -3322,13 +3322,13 @@ const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
|
|
|
3322
3322
|
], 8, _hoisted_13$t)
|
|
3323
3323
|
])
|
|
3324
3324
|
], 32),
|
|
3325
|
-
(showRegister.value || showGuestCheckout.value) && !__props.accountHeaderLoginForm ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$
|
|
3325
|
+
(showRegister.value || showGuestCheckout.value) && !__props.accountHeaderLoginForm ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$t, [
|
|
3326
3326
|
__props.displayRegisterLink !== false ? vue.renderSlot(_ctx.$slots, "registerLink", {
|
|
3327
3327
|
key: 0,
|
|
3328
3328
|
onClick: (e) => __props.onRegisterClick?.(e),
|
|
3329
3329
|
labels: __props.labels
|
|
3330
3330
|
}, () => [
|
|
3331
|
-
vue.createElementVNode("div", _hoisted_16$
|
|
3331
|
+
vue.createElementVNode("div", _hoisted_16$s, [
|
|
3332
3332
|
vue.createElementVNode("p", _hoisted_17$r, vue.toDisplayString(registerText.value), 1),
|
|
3333
3333
|
vue.createElementVNode("button", {
|
|
3334
3334
|
type: "button",
|
|
@@ -3419,8 +3419,8 @@ const _hoisted_13$s = {
|
|
|
3419
3419
|
class: "propeller-account-menu__greeting hidden md:block font-normal"
|
|
3420
3420
|
};
|
|
3421
3421
|
const _hoisted_14$s = { class: "propeller-account-menu__user pb-3 mb-3 border-b border-border" };
|
|
3422
|
-
const _hoisted_15$
|
|
3423
|
-
const _hoisted_16$
|
|
3422
|
+
const _hoisted_15$s = { class: "propeller-account-menu__user-label text-xs text-muted-foreground uppercase tracking-wider font-semibold mb-1" };
|
|
3423
|
+
const _hoisted_16$r = { class: "propeller-account-menu__user-name font-medium text-foreground truncate" };
|
|
3424
3424
|
const _hoisted_17$q = { class: "propeller-account-menu__nav" };
|
|
3425
3425
|
const _hoisted_18$o = { class: "propeller-account-menu__list space-y-0.5" };
|
|
3426
3426
|
const _hoisted_19$o = ["onClick"];
|
|
@@ -3645,8 +3645,8 @@ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
|
|
|
3645
3645
|
isMounted.value ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
|
|
3646
3646
|
!!user.value ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
|
|
3647
3647
|
vue.createElementVNode("div", _hoisted_14$s, [
|
|
3648
|
-
vue.createElementVNode("p", _hoisted_15$
|
|
3649
|
-
vue.createElementVNode("p", _hoisted_16$
|
|
3648
|
+
vue.createElementVNode("p", _hoisted_15$s, vue.toDisplayString(getLabel("signedInAs", "Signed in as")), 1),
|
|
3649
|
+
vue.createElementVNode("p", _hoisted_16$r, vue.toDisplayString(getUserName()), 1)
|
|
3650
3650
|
]),
|
|
3651
3651
|
vue.createElementVNode("nav", _hoisted_17$q, [
|
|
3652
3652
|
vue.createElementVNode("ul", _hoisted_18$o, [
|
|
@@ -3936,8 +3936,8 @@ const _hoisted_14$r = {
|
|
|
3936
3936
|
key: 1,
|
|
3937
3937
|
class: "propeller-add-to-cart__modal fixed inset-0 z-50 flex items-center justify-center px-4"
|
|
3938
3938
|
};
|
|
3939
|
-
const _hoisted_15$
|
|
3940
|
-
const _hoisted_16$
|
|
3939
|
+
const _hoisted_15$r = { class: "propeller-add-to-cart__modal-content relative w-full max-w-lg bg-card rounded-[var(--radius-container)] shadow-2xl overflow-hidden" };
|
|
3940
|
+
const _hoisted_16$q = { class: "propeller-add-to-cart__modal-header flex items-center gap-3 px-6 py-4 border-b border-border-subtle" };
|
|
3941
3941
|
const _hoisted_17$p = {
|
|
3942
3942
|
fill: "none",
|
|
3943
3943
|
viewBox: "0 0 24 24",
|
|
@@ -4320,8 +4320,8 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
|
|
|
4320
4320
|
class: "propeller-add-to-cart__modal-backdrop fixed inset-0 bg-foreground/20",
|
|
4321
4321
|
onClick: _cache[6] || (_cache[6] = async (event) => closeModal())
|
|
4322
4322
|
}),
|
|
4323
|
-
vue.createElementVNode("div", _hoisted_15$
|
|
4324
|
-
vue.createElementVNode("div", _hoisted_16$
|
|
4323
|
+
vue.createElementVNode("div", _hoisted_15$r, [
|
|
4324
|
+
vue.createElementVNode("div", _hoisted_16$q, [
|
|
4325
4325
|
(vue.openBlock(), vue.createElementBlock("svg", _hoisted_17$p, [..._cache[15] || (_cache[15] = [
|
|
4326
4326
|
vue.createElementVNode("path", {
|
|
4327
4327
|
strokeLinecap: "round",
|
|
@@ -4477,8 +4477,8 @@ const _hoisted_14$q = {
|
|
|
4477
4477
|
key: 1,
|
|
4478
4478
|
class: "propeller-add-to-favorite__add-form space-y-3"
|
|
4479
4479
|
};
|
|
4480
|
-
const _hoisted_15$
|
|
4481
|
-
const _hoisted_16$
|
|
4480
|
+
const _hoisted_15$q = { class: "space-y-1" };
|
|
4481
|
+
const _hoisted_16$p = { class: "propeller-add-to-favorite__select-label text-xs text-muted-foreground" };
|
|
4482
4482
|
const _hoisted_17$o = ["value"];
|
|
4483
4483
|
const _hoisted_18$m = ["value"];
|
|
4484
4484
|
const _hoisted_19$m = ["disabled"];
|
|
@@ -4723,8 +4723,8 @@ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
|
|
|
4723
4723
|
_cache[9] || (_cache[9] = vue.createElementVNode("div", { class: "propeller-add-to-favorite__divider border-t border-border" }, null, -1))
|
|
4724
4724
|
], 64)) : vue.createCommentVNode("", true),
|
|
4725
4725
|
getNonMemberLists().length > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_14$q, [
|
|
4726
|
-
vue.createElementVNode("div", _hoisted_15$
|
|
4727
|
-
vue.createElementVNode("label", _hoisted_16$
|
|
4726
|
+
vue.createElementVNode("div", _hoisted_15$q, [
|
|
4727
|
+
vue.createElementVNode("label", _hoisted_16$p, vue.toDisplayString(getLabel("chooseList", "Choose a favorites list*")), 1),
|
|
4728
4728
|
vue.createElementVNode("select", {
|
|
4729
4729
|
class: "propeller-add-to-favorite__select block w-full rounded-[var(--radius-control)] border border-input px-3 py-2.5 text-sm focus:border-primary focus:ring-primary",
|
|
4730
4730
|
value: selectedListId.value,
|
|
@@ -4793,11 +4793,11 @@ const _hoisted_11$r = {
|
|
|
4793
4793
|
const _hoisted_12$r = { class: "mt-2" };
|
|
4794
4794
|
const _hoisted_13$p = { class: "propeller-address-card__default-badge bg-secondary/10 text-secondary text-xs px-2 py-1 rounded-full" };
|
|
4795
4795
|
const _hoisted_14$p = { class: "propeller-address-card__actions mt-4 pt-4 border-t border-border-subtle flex flex-wrap gap-2" };
|
|
4796
|
-
const _hoisted_15$
|
|
4796
|
+
const _hoisted_15$p = {
|
|
4797
4797
|
key: 1,
|
|
4798
4798
|
class: "propeller-address-card__form bg-card p-6 rounded-[var(--radius-container)] border"
|
|
4799
4799
|
};
|
|
4800
|
-
const _hoisted_16$
|
|
4800
|
+
const _hoisted_16$o = {
|
|
4801
4801
|
key: 0,
|
|
4802
4802
|
class: "text-xl font-bold mb-4"
|
|
4803
4803
|
};
|
|
@@ -5205,11 +5205,11 @@ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
|
|
|
5205
5205
|
])
|
|
5206
5206
|
]) : vue.createCommentVNode("", true)
|
|
5207
5207
|
], 8, _hoisted_2$J)) : vue.createCommentVNode("", true),
|
|
5208
|
-
__props.inline && showEditModal.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$
|
|
5208
|
+
__props.inline && showEditModal.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$p, [
|
|
5209
5209
|
vue.createElementVNode("form", {
|
|
5210
5210
|
onSubmit: _cache[19] || (_cache[19] = async (e) => handleSaveEdit(e))
|
|
5211
5211
|
}, [
|
|
5212
|
-
!!formTitle.value ? (vue.openBlock(), vue.createElementBlock("h3", _hoisted_16$
|
|
5212
|
+
!!formTitle.value ? (vue.openBlock(), vue.createElementBlock("h3", _hoisted_16$o, vue.toDisplayString(formTitle.value), 1)) : vue.createCommentVNode("", true),
|
|
5213
5213
|
vue.createElementVNode("div", _hoisted_17$n, [
|
|
5214
5214
|
vue.createElementVNode("div", _hoisted_18$l, [
|
|
5215
5215
|
vue.createElementVNode("div", null, [
|
|
@@ -6127,11 +6127,11 @@ const _hoisted_11$q = { class: "font-medium" };
|
|
|
6127
6127
|
const _hoisted_12$q = { class: "propeller-cart-item__surcharges-list mt-0.5" };
|
|
6128
6128
|
const _hoisted_13$o = { class: "mt-1" };
|
|
6129
6129
|
const _hoisted_14$o = { class: "propeller-cart-item__bundle mt-3 space-y-1.5 border-l-2 border-border pl-3" };
|
|
6130
|
-
const _hoisted_15$
|
|
6130
|
+
const _hoisted_15$o = {
|
|
6131
6131
|
key: 0,
|
|
6132
6132
|
class: "propeller-cart-item__bundle-leader flex flex-wrap gap-x-2 text-sm text-muted-foreground"
|
|
6133
6133
|
};
|
|
6134
|
-
const _hoisted_16$
|
|
6134
|
+
const _hoisted_16$n = { class: "font-semibold text-foreground" };
|
|
6135
6135
|
const _hoisted_17$m = { class: "font-semibold text-foreground" };
|
|
6136
6136
|
const _hoisted_18$k = { class: "font-medium" };
|
|
6137
6137
|
const _hoisted_19$k = { class: "font-semibold text-foreground" };
|
|
@@ -6605,8 +6605,8 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
|
|
|
6605
6605
|
nonLeaders: getBundleNonLeaders()
|
|
6606
6606
|
}, () => [
|
|
6607
6607
|
vue.createElementVNode("div", _hoisted_14$o, [
|
|
6608
|
-
!!getBundleLeaderName() ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$
|
|
6609
|
-
vue.createElementVNode("span", _hoisted_16$
|
|
6608
|
+
!!getBundleLeaderName() ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$o, [
|
|
6609
|
+
vue.createElementVNode("span", _hoisted_16$n, vue.toDisplayString(getBundleLeaderName()), 1),
|
|
6610
6610
|
!!getBundleLeaderPrice() ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
|
|
6611
6611
|
_cache[8] || (_cache[8] = vue.createElementVNode("div", { class: "flex-1 border-b border-dotted border-input mx-1 mb-1" }, null, -1)),
|
|
6612
6612
|
vue.createElementVNode("span", _hoisted_17$m, vue.toDisplayString(getBundleLeaderPrice()), 1)
|
|
@@ -6864,8 +6864,8 @@ const _hoisted_14$n = {
|
|
|
6864
6864
|
class: "w-5 h-5 text-muted-foreground",
|
|
6865
6865
|
strokeWidth: 1.5
|
|
6866
6866
|
};
|
|
6867
|
-
const _hoisted_15$
|
|
6868
|
-
const _hoisted_16$
|
|
6867
|
+
const _hoisted_15$n = { class: "propeller-cart-icon__sidebar-title text-base font-semibold text-foreground" };
|
|
6868
|
+
const _hoisted_16$m = { class: "propeller-cart-icon__sidebar-count inline-flex items-center justify-center h-5 min-w-[20px] px-1.5 rounded-full bg-secondary/10 text-secondary text-xs font-bold" };
|
|
6869
6869
|
const _hoisted_17$l = ["aria-label"];
|
|
6870
6870
|
const _hoisted_18$j = {
|
|
6871
6871
|
fill: "none",
|
|
@@ -6976,8 +6976,9 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
|
|
|
6976
6976
|
function getTotalItems() {
|
|
6977
6977
|
return getCartItems().reduce((sum, item) => sum + (item.quantity || 0), 0);
|
|
6978
6978
|
}
|
|
6979
|
+
const useTax = vue.computed(() => !!infra.includeTax);
|
|
6979
6980
|
function getTotalPrice() {
|
|
6980
|
-
const total = props.cart?.total?.totalNet;
|
|
6981
|
+
const total = useTax.value ? props.cart?.total?.totalNet : props.cart?.total?.totalGross;
|
|
6981
6982
|
return index.formatPrice(total ?? 0, { symbol: infra.currency ?? "€" });
|
|
6982
6983
|
}
|
|
6983
6984
|
function getItems() {
|
|
@@ -7125,8 +7126,8 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
|
|
|
7125
7126
|
d: "M15.75 10.5V6a3.75 3.75 0 10-7.5 0v4.5m11.356-1.993l1.263 12c.07.665-.45 1.243-1.119 1.243H4.25a1.125 1.125 0 01-1.12-1.243l1.264-12A1.125 1.125 0 015.513 7.5h12.974c.576 0 1.059.435 1.119 1.007z"
|
|
7126
7127
|
}, null, -1)
|
|
7127
7128
|
])])),
|
|
7128
|
-
vue.createElementVNode("h2", _hoisted_15$
|
|
7129
|
-
vue.createElementVNode("span", _hoisted_16$
|
|
7129
|
+
vue.createElementVNode("h2", _hoisted_15$n, vue.toDisplayString(getSidebarTitle()), 1),
|
|
7130
|
+
vue.createElementVNode("span", _hoisted_16$m, vue.toDisplayString(getTotalItems()), 1)
|
|
7130
7131
|
]),
|
|
7131
7132
|
vue.createElementVNode("button", {
|
|
7132
7133
|
type: "button",
|
|
@@ -7176,7 +7177,7 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
|
|
|
7176
7177
|
showCartItemNotesField: false,
|
|
7177
7178
|
showCrossupsells: false,
|
|
7178
7179
|
showStockComponent: false,
|
|
7179
|
-
includeTax:
|
|
7180
|
+
includeTax: useTax.value,
|
|
7180
7181
|
className: "propeller-cart-icon__item"
|
|
7181
7182
|
}, {
|
|
7182
7183
|
image: vue.withCtx(({ cartItem: rowCartItem }) => [
|
|
@@ -7206,13 +7207,13 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
|
|
|
7206
7207
|
}, vue.toDisplayString(name), 9, _hoisted_27$f)) : vue.createCommentVNode("", true)
|
|
7207
7208
|
]),
|
|
7208
7209
|
_: 1
|
|
7209
|
-
}, 40, ["cartItem", "cartId", "graphqlClient", "user", "language", "configuration", "companyId", "onTitleClick"]);
|
|
7210
|
+
}, 40, ["cartItem", "cartId", "graphqlClient", "user", "language", "configuration", "companyId", "onTitleClick", "includeTax"]);
|
|
7210
7211
|
}), 128)) : vue.createCommentVNode("", true),
|
|
7211
7212
|
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(CartBonusItemsImpl.value), {
|
|
7212
7213
|
cart: __props.cart,
|
|
7213
|
-
includeTax:
|
|
7214
|
+
includeTax: useTax.value,
|
|
7214
7215
|
className: "mt-4"
|
|
7215
|
-
}, null, 8, ["cart"]))
|
|
7216
|
+
}, null, 8, ["cart", "includeTax"]))
|
|
7216
7217
|
]),
|
|
7217
7218
|
getItems().length > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_28$e, [
|
|
7218
7219
|
vue.createElementVNode("div", _hoisted_29$e, [
|
|
@@ -7306,8 +7307,8 @@ const _hoisted_14$m = {
|
|
|
7306
7307
|
key: 2,
|
|
7307
7308
|
class: "propeller-cart-overview__address-email text-muted-foreground"
|
|
7308
7309
|
};
|
|
7309
|
-
const _hoisted_15$
|
|
7310
|
-
const _hoisted_16$
|
|
7310
|
+
const _hoisted_15$m = { class: "propeller-cart-overview__info-panel bg-surface-hover p-4 rounded-[var(--radius-control)] border border-border space-y-2 text-sm" };
|
|
7311
|
+
const _hoisted_16$l = {
|
|
7311
7312
|
key: 0,
|
|
7312
7313
|
class: "flex justify-between"
|
|
7313
7314
|
};
|
|
@@ -7485,8 +7486,8 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
|
|
|
7485
7486
|
])) : vue.createCommentVNode("", true)
|
|
7486
7487
|
])
|
|
7487
7488
|
]),
|
|
7488
|
-
vue.createElementVNode("div", _hoisted_15$
|
|
7489
|
-
paymentMethod.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$
|
|
7489
|
+
vue.createElementVNode("div", _hoisted_15$m, [
|
|
7490
|
+
paymentMethod.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$l, [
|
|
7490
7491
|
vue.createElementVNode("span", _hoisted_17$k, vue.toDisplayString(getLabel("payment", "Payment:")), 1),
|
|
7491
7492
|
vue.createElementVNode("span", null, vue.toDisplayString(paymentMethod.value), 1)
|
|
7492
7493
|
])) : vue.createCommentVNode("", true),
|
|
@@ -7716,8 +7717,8 @@ const _hoisted_12$n = {
|
|
|
7716
7717
|
};
|
|
7717
7718
|
const _hoisted_13$l = { class: "propeller-cart-summary__label" };
|
|
7718
7719
|
const _hoisted_14$l = { class: "propeller-cart-summary__value" };
|
|
7719
|
-
const _hoisted_15$
|
|
7720
|
-
const _hoisted_16$
|
|
7720
|
+
const _hoisted_15$l = { class: "propeller-cart-summary__label" };
|
|
7721
|
+
const _hoisted_16$k = { class: "propeller-cart-summary__value" };
|
|
7721
7722
|
const _hoisted_17$j = {
|
|
7722
7723
|
key: 5,
|
|
7723
7724
|
class: "propeller-cart-summary__row flex justify-between text-muted-foreground text-sm",
|
|
@@ -7905,8 +7906,8 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
|
|
|
7905
7906
|
class: "propeller-cart-summary__row flex justify-between text-muted-foreground text-sm",
|
|
7906
7907
|
"data-row": "vat-line"
|
|
7907
7908
|
}, [
|
|
7908
|
-
vue.createElementVNode("span", _hoisted_15$
|
|
7909
|
-
vue.createElementVNode("span", _hoisted_16$
|
|
7909
|
+
vue.createElementVNode("span", _hoisted_15$l, vue.toDisplayString(tax.taxPercentage) + "% " + vue.toDisplayString(getLabel("vat", "VAT")) + ":", 1),
|
|
7910
|
+
vue.createElementVNode("span", _hoisted_16$k, vue.toDisplayString(formatItemPrice(Number(tax.price))), 1)
|
|
7910
7911
|
]);
|
|
7911
7912
|
}), 128)) : vue.createCommentVNode("", true),
|
|
7912
7913
|
showTotalVat.value && totalVat.value > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_17$j, [
|
|
@@ -8150,8 +8151,8 @@ const _hoisted_11$m = ["href"];
|
|
|
8150
8151
|
const _hoisted_12$m = { class: "flex flex-col gap-0.5" };
|
|
8151
8152
|
const _hoisted_13$k = { class: "propeller-cluster-card__manufacturer text-xs text-muted-foreground" };
|
|
8152
8153
|
const _hoisted_14$k = { class: "propeller-cluster-card__description line-clamp-2 text-xs text-muted-foreground" };
|
|
8153
|
-
const _hoisted_15$
|
|
8154
|
-
const _hoisted_16$
|
|
8154
|
+
const _hoisted_15$k = { class: "propeller-cluster-card__footer w-full md:w-auto flex flex-col gap-2 md:flex-row md:items-center md:gap-3 px-4 py-2 md:py-0 border-t md:border-t-0 border-border-subtle" };
|
|
8155
|
+
const _hoisted_16$j = { class: "propeller-cluster-card__footer-meta flex items-center justify-between gap-3 md:contents" };
|
|
8155
8156
|
const _hoisted_17$i = {
|
|
8156
8157
|
key: 1,
|
|
8157
8158
|
class: "propeller-cluster-card__price font-bold text-foreground text-sm whitespace-nowrap"
|
|
@@ -8495,8 +8496,8 @@ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
|
|
|
8495
8496
|
]) : vue.createCommentVNode("", true)
|
|
8496
8497
|
])
|
|
8497
8498
|
]),
|
|
8498
|
-
vue.createElementVNode("div", _hoisted_15$
|
|
8499
|
-
vue.createElementVNode("div", _hoisted_16$
|
|
8499
|
+
vue.createElementVNode("div", _hoisted_15$k, [
|
|
8500
|
+
vue.createElementVNode("div", _hoisted_16$j, [
|
|
8500
8501
|
__props.showStock && !!__props.cluster.defaultProduct?.inventory ? vue.renderSlot(_ctx.$slots, "stock", {
|
|
8501
8502
|
key: 0,
|
|
8502
8503
|
cluster: __props.cluster,
|
|
@@ -8730,8 +8731,8 @@ const _hoisted_14$j = {
|
|
|
8730
8731
|
key: 4,
|
|
8731
8732
|
class: "propeller-cluster-configurator__options flex flex-wrap gap-3"
|
|
8732
8733
|
};
|
|
8733
|
-
const _hoisted_15$
|
|
8734
|
-
const _hoisted_16$
|
|
8734
|
+
const _hoisted_15$j = ["disabled", "onClick", "data-selected"];
|
|
8735
|
+
const _hoisted_16$i = ["src", "alt"];
|
|
8735
8736
|
const _hoisted_17$h = {
|
|
8736
8737
|
key: 0,
|
|
8737
8738
|
class: "propeller-cluster-configurator__image-check absolute inset-0 bg-secondary bg-opacity-20 flex items-center justify-center"
|
|
@@ -9108,7 +9109,7 @@ const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
|
|
|
9108
9109
|
class: "propeller-cluster-configurator__image w-full h-full object-cover",
|
|
9109
9110
|
src: val,
|
|
9110
9111
|
alt: val
|
|
9111
|
-
}, null, 8, _hoisted_16$
|
|
9112
|
+
}, null, 8, _hoisted_16$i),
|
|
9112
9113
|
setting.selectedValue === val ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_17$h, [..._cache[0] || (_cache[0] = [
|
|
9113
9114
|
vue.createElementVNode("svg", {
|
|
9114
9115
|
fill: "currentColor",
|
|
@@ -9122,7 +9123,7 @@ const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
|
|
|
9122
9123
|
})
|
|
9123
9124
|
], -1)
|
|
9124
9125
|
])])) : vue.createCommentVNode("", true)
|
|
9125
|
-
], 10, _hoisted_15$
|
|
9126
|
+
], 10, _hoisted_15$j);
|
|
9126
9127
|
}), 128))
|
|
9127
9128
|
])) : vue.createCommentVNode("", true),
|
|
9128
9129
|
setting.displayType !== "DROPDOWN" && setting.displayType !== "RADIO" && setting.displayType !== "COLOR" && setting.displayType !== "IMAGE" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_18$f, [
|
|
@@ -9305,7 +9306,7 @@ const _hoisted_12$k = {
|
|
|
9305
9306
|
};
|
|
9306
9307
|
const _hoisted_13$i = { class: "min-w-0 flex-1" };
|
|
9307
9308
|
const _hoisted_14$i = { class: "propeller-cluster-options__preview-name truncate text-sm font-medium text-foreground" };
|
|
9308
|
-
const _hoisted_15$
|
|
9309
|
+
const _hoisted_15$i = { class: "propeller-cluster-options__preview-price text-sm font-semibold text-secondary" };
|
|
9309
9310
|
const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
|
|
9310
9311
|
__name: "ClusterOptions",
|
|
9311
9312
|
props: {
|
|
@@ -9459,7 +9460,7 @@ const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
|
|
|
9459
9460
|
])])) : vue.createCommentVNode("", true),
|
|
9460
9461
|
vue.createElementVNode("div", _hoisted_13$i, [
|
|
9461
9462
|
vue.createElementVNode("p", _hoisted_14$i, vue.toDisplayString(option.previewName), 1),
|
|
9462
|
-
vue.createElementVNode("p", _hoisted_15$
|
|
9463
|
+
vue.createElementVNode("p", _hoisted_15$i, vue.toDisplayString(option.previewPrice), 1)
|
|
9463
9464
|
])
|
|
9464
9465
|
])) : vue.createCommentVNode("", true)
|
|
9465
9466
|
], 8, _hoisted_2$w);
|
|
@@ -9639,7 +9640,7 @@ const _hoisted_6$q = {
|
|
|
9639
9640
|
const _hoisted_7$q = { class: "propeller-delivery-date__modal-content bg-card rounded-xl shadow-xl p-6 w-full max-w-sm mx-4" };
|
|
9640
9641
|
const _hoisted_8$o = { class: "propeller-delivery-date__modal-header flex justify-between items-center mb-4" };
|
|
9641
9642
|
const _hoisted_9$n = { class: "propeller-delivery-date__modal-title text-lg font-semibold" };
|
|
9642
|
-
const _hoisted_10$l = ["min", "value"];
|
|
9643
|
+
const _hoisted_10$l = ["lang", "min", "value"];
|
|
9643
9644
|
const _hoisted_11$j = {
|
|
9644
9645
|
key: 0,
|
|
9645
9646
|
class: "propeller-delivery-date__input-error text-sm text-destructive mt-2",
|
|
@@ -9657,10 +9658,15 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
9657
9658
|
formatDateDisplay: {},
|
|
9658
9659
|
labels: {},
|
|
9659
9660
|
containerClass: {},
|
|
9660
|
-
initialDate: {}
|
|
9661
|
+
initialDate: {},
|
|
9662
|
+
language: {}
|
|
9661
9663
|
},
|
|
9662
9664
|
setup(__props) {
|
|
9663
9665
|
const props = __props;
|
|
9666
|
+
const infra = ProductVideos_vue_vue_type_script_setup_true_lang.useInfraProps(props);
|
|
9667
|
+
const inputLang = vue.computed(
|
|
9668
|
+
() => infra.language ? String(infra.language).toLowerCase() : void 0
|
|
9669
|
+
);
|
|
9664
9670
|
const selectedDate = vue.ref("");
|
|
9665
9671
|
const modalOpen = vue.ref(false);
|
|
9666
9672
|
const customDateValue = vue.ref("");
|
|
@@ -9747,8 +9753,8 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
9747
9753
|
if (!isoDate) return "";
|
|
9748
9754
|
const date = new Date(isoDate);
|
|
9749
9755
|
if (isNaN(date.getTime())) return "";
|
|
9750
|
-
const
|
|
9751
|
-
const
|
|
9756
|
+
const WEEKDAYS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
|
|
9757
|
+
const MONTHS = [
|
|
9752
9758
|
"Jan",
|
|
9753
9759
|
"Feb",
|
|
9754
9760
|
"Mar",
|
|
@@ -9762,7 +9768,9 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
9762
9768
|
"Nov",
|
|
9763
9769
|
"Dec"
|
|
9764
9770
|
];
|
|
9765
|
-
|
|
9771
|
+
const weekday = getLabel(`day_${date.getDay()}`, WEEKDAYS[date.getDay()]);
|
|
9772
|
+
const month = getLabel(`month_${date.getMonth()}`, MONTHS[date.getMonth()]);
|
|
9773
|
+
return weekday + ", " + month + " " + date.getDate();
|
|
9766
9774
|
}
|
|
9767
9775
|
function handleSelect(isoDate) {
|
|
9768
9776
|
selectedDate.value = isoDate;
|
|
@@ -9867,6 +9875,7 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
9867
9875
|
]),
|
|
9868
9876
|
vue.createElementVNode("input", {
|
|
9869
9877
|
type: "date",
|
|
9878
|
+
lang: inputLang.value,
|
|
9870
9879
|
class: vue.normalizeClass(["propeller-delivery-date__input w-full border border-input rounded-[var(--radius-container)] px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-secondary focus:border-secondary", customDateError.value ? "border-destructive focus:ring-destructive focus:border-destructive" : ""]),
|
|
9871
9880
|
min: minDate.value,
|
|
9872
9881
|
value: customDateValue.value,
|
|
@@ -9918,12 +9927,12 @@ const _hoisted_14$h = {
|
|
|
9918
9927
|
key: 0,
|
|
9919
9928
|
class: "propeller-favorite-list-item__stock flex-shrink-0"
|
|
9920
9929
|
};
|
|
9921
|
-
const _hoisted_15$
|
|
9930
|
+
const _hoisted_15$h = {
|
|
9922
9931
|
key: 0,
|
|
9923
9932
|
class: "propeller-favorite-list-item__stock-badge inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium text-success bg-success/10",
|
|
9924
9933
|
"data-stock": "in"
|
|
9925
9934
|
};
|
|
9926
|
-
const _hoisted_16$
|
|
9935
|
+
const _hoisted_16$h = {
|
|
9927
9936
|
key: 1,
|
|
9928
9937
|
class: "propeller-favorite-list-item__stock-badge inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium text-warning bg-warning/10",
|
|
9929
9938
|
"data-stock": "low"
|
|
@@ -10145,8 +10154,8 @@ const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
|
|
|
10145
10154
|
])) : vue.createCommentVNode("", true),
|
|
10146
10155
|
!isProduct() ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
|
|
10147
10156
|
getCluster()?.defaultProduct?.inventory?.totalQuantity !== void 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_14$h, [
|
|
10148
|
-
(getCluster()?.defaultProduct?.inventory?.totalQuantity || 0) > 5 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_15$
|
|
10149
|
-
(getCluster()?.defaultProduct?.inventory?.totalQuantity || 0) > 0 && (getCluster()?.defaultProduct?.inventory?.totalQuantity || 0) <= 5 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_16$
|
|
10157
|
+
(getCluster()?.defaultProduct?.inventory?.totalQuantity || 0) > 5 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_15$h, vue.toDisplayString(getLabel("inStock", "In stock")), 1)) : vue.createCommentVNode("", true),
|
|
10158
|
+
(getCluster()?.defaultProduct?.inventory?.totalQuantity || 0) > 0 && (getCluster()?.defaultProduct?.inventory?.totalQuantity || 0) <= 5 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_16$h, vue.toDisplayString(getLabel("lowStock", "Low stock")), 1)) : vue.createCommentVNode("", true),
|
|
10150
10159
|
(getCluster()?.defaultProduct?.inventory?.totalQuantity || 0) === 0 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_17$g, vue.toDisplayString(getLabel("outOfStock", "Out of stock")), 1)) : vue.createCommentVNode("", true)
|
|
10151
10160
|
])) : vue.createCommentVNode("", true)
|
|
10152
10161
|
], 64)) : vue.createCommentVNode("", true)
|
|
@@ -10414,11 +10423,11 @@ const _hoisted_12$h = {
|
|
|
10414
10423
|
};
|
|
10415
10424
|
const _hoisted_13$g = { class: "propeller-favorite-list-details__empty-title text-lg font-medium" };
|
|
10416
10425
|
const _hoisted_14$g = { class: "propeller-favorite-list-details__empty-message text-muted-foreground" };
|
|
10417
|
-
const _hoisted_15$
|
|
10426
|
+
const _hoisted_15$g = {
|
|
10418
10427
|
key: 2,
|
|
10419
10428
|
class: "propeller-favorite-list-details__floating-bar fixed bottom-0 left-0 right-0 z-40 border-t border-border bg-card shadow-lg"
|
|
10420
10429
|
};
|
|
10421
|
-
const _hoisted_16$
|
|
10430
|
+
const _hoisted_16$g = { class: "propeller-favorite-list-details__floating-bar-inner flex items-center justify-between gap-4 px-6 py-4" };
|
|
10422
10431
|
const _hoisted_17$f = { class: "propeller-favorite-list-details__floating-bar-status flex items-center gap-2" };
|
|
10423
10432
|
const _hoisted_18$d = ["checked"];
|
|
10424
10433
|
const _hoisted_19$d = {
|
|
@@ -10952,8 +10961,8 @@ const _sfc_main$t = /* @__PURE__ */ vue.defineComponent({
|
|
|
10952
10961
|
])
|
|
10953
10962
|
])) : vue.createCommentVNode("", true)
|
|
10954
10963
|
], 64)) : vue.createCommentVNode("", true),
|
|
10955
|
-
selectedIds.value.size > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$
|
|
10956
|
-
vue.createElementVNode("div", _hoisted_16$
|
|
10964
|
+
selectedIds.value.size > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$g, [
|
|
10965
|
+
vue.createElementVNode("div", _hoisted_16$g, [
|
|
10957
10966
|
vue.createElementVNode("div", _hoisted_17$f, [
|
|
10958
10967
|
vue.createElementVNode("input", {
|
|
10959
10968
|
id: "favorite-list-select-all-floating",
|
|
@@ -11170,8 +11179,8 @@ const _hoisted_11$g = { class: "flex items-center space-x-2" };
|
|
|
11170
11179
|
const _hoisted_12$g = ["id", "checked"];
|
|
11171
11180
|
const _hoisted_13$f = ["for"];
|
|
11172
11181
|
const _hoisted_14$f = { class: "flex gap-2" };
|
|
11173
|
-
const _hoisted_15$
|
|
11174
|
-
const _hoisted_16$
|
|
11182
|
+
const _hoisted_15$f = ["onClick", "disabled"];
|
|
11183
|
+
const _hoisted_16$f = {
|
|
11175
11184
|
key: 1,
|
|
11176
11185
|
class: "propeller-favorite-lists__display space-y-2"
|
|
11177
11186
|
};
|
|
@@ -11443,14 +11452,14 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
|
|
|
11443
11452
|
class: "propeller-favorite-lists__save-btn inline-flex items-center px-3 py-1.5 text-sm font-medium rounded-[var(--radius-control)] text-primary-foreground bg-primary hover:bg-primary/80 disabled:opacity-50",
|
|
11444
11453
|
onClick: async (event) => handleUpdateList(String(list.id)),
|
|
11445
11454
|
disabled: !vue.unref(editListName).trim()
|
|
11446
|
-
}, vue.toDisplayString(getLabel("editSave", "Save")), 9, _hoisted_15$
|
|
11455
|
+
}, vue.toDisplayString(getLabel("editSave", "Save")), 9, _hoisted_15$f),
|
|
11447
11456
|
vue.createElementVNode("button", {
|
|
11448
11457
|
class: "propeller-favorite-lists__cancel-btn inline-flex items-center px-3 py-1.5 text-sm font-medium rounded-[var(--radius-control)] border border-input text-muted-foreground bg-card hover:bg-surface-hover",
|
|
11449
11458
|
onClick: _cache[3] || (_cache[3] = async (event) => handleCancelEdit())
|
|
11450
11459
|
}, vue.toDisplayString(getLabel("editCancel", "Cancel")), 1)
|
|
11451
11460
|
])
|
|
11452
11461
|
])) : vue.createCommentVNode("", true),
|
|
11453
|
-
vue.unref(editingListId) !== String(list.id) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$
|
|
11462
|
+
vue.unref(editingListId) !== String(list.id) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$f, [
|
|
11454
11463
|
vue.createElementVNode("div", _hoisted_17$e, [
|
|
11455
11464
|
vue.createElementVNode("span", _hoisted_18$c, vue.toDisplayString(list.name), 1),
|
|
11456
11465
|
__props.showDefaultIndicator !== false && list.isDefault ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_19$c, vue.toDisplayString(getLabel("defaultBadge", "Default")), 1)) : vue.createCommentVNode("", true)
|
|
@@ -11883,8 +11892,8 @@ const _hoisted_12$e = {
|
|
|
11883
11892
|
};
|
|
11884
11893
|
const _hoisted_13$e = ["data-expanded"];
|
|
11885
11894
|
const _hoisted_14$e = ["onClick"];
|
|
11886
|
-
const _hoisted_15$
|
|
11887
|
-
const _hoisted_16$
|
|
11895
|
+
const _hoisted_15$e = { class: "propeller-grid-filters__group-title text-sm font-semibold text-muted-foreground truncate" };
|
|
11896
|
+
const _hoisted_16$e = {
|
|
11888
11897
|
key: 0,
|
|
11889
11898
|
class: "propeller-grid-filters__options pt-2 space-y-1.5"
|
|
11890
11899
|
};
|
|
@@ -12189,7 +12198,7 @@ const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
|
|
|
12189
12198
|
class: "propeller-grid-filters__group-toggle w-full flex items-center justify-between gap-2 text-left py-1 hover:text-secondary transition-colors",
|
|
12190
12199
|
onClick: async (event) => toggleAccordion(getFilterName(filter))
|
|
12191
12200
|
}, [
|
|
12192
|
-
vue.createElementVNode("span", _hoisted_15$
|
|
12201
|
+
vue.createElementVNode("span", _hoisted_15$e, vue.toDisplayString(getFilterTitle(filter)), 1),
|
|
12193
12202
|
(vue.openBlock(), vue.createElementBlock("svg", {
|
|
12194
12203
|
fill: "none",
|
|
12195
12204
|
stroke: "currentColor",
|
|
@@ -12204,7 +12213,7 @@ const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
|
|
|
12204
12213
|
}, null, -1)
|
|
12205
12214
|
])], 2))
|
|
12206
12215
|
], 8, _hoisted_14$e),
|
|
12207
|
-
isExpanded(getFilterName(filter)) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$
|
|
12216
|
+
isExpanded(getFilterName(filter)) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$e, [
|
|
12208
12217
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getValidOptions(filter), (option, index22) => {
|
|
12209
12218
|
return vue.openBlock(), vue.createElementBlock("label", {
|
|
12210
12219
|
key: option.value,
|
|
@@ -12391,7 +12400,7 @@ const _hoisted_14$d = {
|
|
|
12391
12400
|
strokeLinecap: "round",
|
|
12392
12401
|
strokeLinejoin: "round"
|
|
12393
12402
|
};
|
|
12394
|
-
const _hoisted_15$
|
|
12403
|
+
const _hoisted_15$d = {
|
|
12395
12404
|
key: 1,
|
|
12396
12405
|
xmlns: "http://www.w3.org/2000/svg",
|
|
12397
12406
|
width: "16",
|
|
@@ -12403,7 +12412,7 @@ const _hoisted_15$c = {
|
|
|
12403
12412
|
strokeLinecap: "round",
|
|
12404
12413
|
strokeLinejoin: "round"
|
|
12405
12414
|
};
|
|
12406
|
-
const _hoisted_16$
|
|
12415
|
+
const _hoisted_16$d = {
|
|
12407
12416
|
key: 0,
|
|
12408
12417
|
class: "propeller-grid-toolbar__active-filters flex flex-wrap gap-2 mb-4"
|
|
12409
12418
|
};
|
|
@@ -12609,7 +12618,7 @@ const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
|
|
|
12609
12618
|
currentViewMode.value === "grid" ? (vue.openBlock(), vue.createElementBlock("svg", _hoisted_14$d, [..._cache[6] || (_cache[6] = [
|
|
12610
12619
|
vue.createStaticVNode('<line x1="8" y1="6" x2="21" y2="6"></line><line x1="8" y1="12" x2="21" y2="12"></line><line x1="8" y1="18" x2="21" y2="18"></line><line x1="3" y1="6" x2="3.01" y2="6"></line><line x1="3" y1="12" x2="3.01" y2="12"></line><line x1="3" y1="18" x2="3.01" y2="18"></line>', 6)
|
|
12611
12620
|
])])) : vue.createCommentVNode("", true),
|
|
12612
|
-
currentViewMode.value === "list" ? (vue.openBlock(), vue.createElementBlock("svg", _hoisted_15$
|
|
12621
|
+
currentViewMode.value === "list" ? (vue.openBlock(), vue.createElementBlock("svg", _hoisted_15$d, [..._cache[7] || (_cache[7] = [
|
|
12613
12622
|
vue.createElementVNode("rect", {
|
|
12614
12623
|
x: "3",
|
|
12615
12624
|
y: "3",
|
|
@@ -12638,7 +12647,7 @@ const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
|
|
|
12638
12647
|
], 8, _hoisted_13$d)
|
|
12639
12648
|
])
|
|
12640
12649
|
]),
|
|
12641
|
-
hasActiveFilters() ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$
|
|
12650
|
+
hasActiveFilters() ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$d, [
|
|
12642
12651
|
vue.createElementVNode("button", {
|
|
12643
12652
|
type: "button",
|
|
12644
12653
|
class: "propeller-grid-toolbar__clear-all h-7 px-2 text-xs rounded-[var(--radius-control)] hover:bg-accent hover:text-accent-foreground transition-colors",
|
|
@@ -12731,8 +12740,8 @@ const _hoisted_14$c = {
|
|
|
12731
12740
|
key: 0,
|
|
12732
12741
|
class: "text-muted-foreground whitespace-nowrap ml-2"
|
|
12733
12742
|
};
|
|
12734
|
-
const _hoisted_15$
|
|
12735
|
-
const _hoisted_16$
|
|
12743
|
+
const _hoisted_15$c = { class: "line-clamp-1" };
|
|
12744
|
+
const _hoisted_16$c = {
|
|
12736
12745
|
key: 0,
|
|
12737
12746
|
class: "text-foreground-subtle whitespace-nowrap ml-2"
|
|
12738
12747
|
};
|
|
@@ -12955,8 +12964,8 @@ const _sfc_main$m = /* @__PURE__ */ vue.defineComponent({
|
|
|
12955
12964
|
key: idx,
|
|
12956
12965
|
class: "propeller-items-overview__item-bundle-item flex justify-between items-center text-xs text-muted-foreground"
|
|
12957
12966
|
}, [
|
|
12958
|
-
vue.createElementVNode("span", _hoisted_15$
|
|
12959
|
-
!!getBundleItemPrice(bundleItem) ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_16$
|
|
12967
|
+
vue.createElementVNode("span", _hoisted_15$c, vue.toDisplayString(getBundleItemName(bundleItem)), 1),
|
|
12968
|
+
!!getBundleItemPrice(bundleItem) ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_16$c, vue.toDisplayString(getBundleItemPrice(bundleItem)), 1)) : vue.createCommentVNode("", true)
|
|
12960
12969
|
]);
|
|
12961
12970
|
}), 128))
|
|
12962
12971
|
])
|
|
@@ -13054,14 +13063,14 @@ const _hoisted_11$b = {
|
|
|
13054
13063
|
const _hoisted_12$b = ["data-active", "onMouseenter"];
|
|
13055
13064
|
const _hoisted_13$b = ["href", "onClick"];
|
|
13056
13065
|
const _hoisted_14$b = { class: "propeller-menu__label truncate" };
|
|
13057
|
-
const _hoisted_15$
|
|
13066
|
+
const _hoisted_15$b = {
|
|
13058
13067
|
key: 0,
|
|
13059
13068
|
fill: "none",
|
|
13060
13069
|
stroke: "currentColor",
|
|
13061
13070
|
viewBox: "0 0 24 24",
|
|
13062
13071
|
class: "propeller-menu__chevron w-4 h-4 text-muted-foreground"
|
|
13063
13072
|
};
|
|
13064
|
-
const _hoisted_16$
|
|
13073
|
+
const _hoisted_16$b = {
|
|
13065
13074
|
key: 0,
|
|
13066
13075
|
class: "propeller-menu__list w-64 py-1 flex-shrink-0",
|
|
13067
13076
|
"data-level": "3"
|
|
@@ -13262,7 +13271,7 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
|
|
|
13262
13271
|
class: vue.normalizeClass(`propeller-menu__link flex items-center justify-between px-4 py-2.5 text-sm transition-colors ${hoveredL2Id.value === l2.categoryId ? "bg-accent text-accent-foreground" : "text-foreground hover:bg-accent/50"}`)
|
|
13263
13272
|
}, [
|
|
13264
13273
|
vue.createElementVNode("span", _hoisted_14$b, vue.toDisplayString(getCategoryName(l2)), 1),
|
|
13265
|
-
getSubCategories(l2).length > 0 ? (vue.openBlock(), vue.createElementBlock("svg", _hoisted_15$
|
|
13274
|
+
getSubCategories(l2).length > 0 ? (vue.openBlock(), vue.createElementBlock("svg", _hoisted_15$b, [..._cache[3] || (_cache[3] = [
|
|
13266
13275
|
vue.createElementVNode("path", {
|
|
13267
13276
|
strokeLinecap: "round",
|
|
13268
13277
|
strokeLinejoin: "round",
|
|
@@ -13280,7 +13289,7 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
|
|
|
13280
13289
|
return vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: index2 }, [
|
|
13281
13290
|
hoveredL1Id.value === l1.categoryId ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 0 }, vue.renderList(getSubCategories(l1), (l2, index22) => {
|
|
13282
13291
|
return vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: index22 }, [
|
|
13283
|
-
hoveredL2Id.value === l2.categoryId && getSubCategories(l2).length > 0 ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_16$
|
|
13292
|
+
hoveredL2Id.value === l2.categoryId && getSubCategories(l2).length > 0 ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_16$b, [
|
|
13284
13293
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getSubCategories(l2), (l3, idx3) => {
|
|
13285
13294
|
return vue.openBlock(), vue.createElementBlock("li", {
|
|
13286
13295
|
key: `l3-${l3.categoryId}-${idx3}`,
|
|
@@ -13735,8 +13744,8 @@ const _hoisted_14$a = {
|
|
|
13735
13744
|
key: 2,
|
|
13736
13745
|
class: "flex space-x-2 w-full"
|
|
13737
13746
|
};
|
|
13738
|
-
const _hoisted_15$
|
|
13739
|
-
const _hoisted_16$
|
|
13747
|
+
const _hoisted_15$a = ["placeholder", "value"];
|
|
13748
|
+
const _hoisted_16$a = ["placeholder", "value"];
|
|
13740
13749
|
const _hoisted_17$9 = {
|
|
13741
13750
|
key: 3,
|
|
13742
13751
|
class: "flex space-x-2 w-full"
|
|
@@ -14059,7 +14068,7 @@ const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
|
|
|
14059
14068
|
}
|
|
14060
14069
|
};
|
|
14061
14070
|
})
|
|
14062
|
-
}, null, 40, _hoisted_15$
|
|
14071
|
+
}, null, 40, _hoisted_15$a),
|
|
14063
14072
|
vue.createElementVNode("input", {
|
|
14064
14073
|
type: "number",
|
|
14065
14074
|
placeholder: getLabel("priceMaxPlaceholder", "Max"),
|
|
@@ -14075,7 +14084,7 @@ const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
|
|
|
14075
14084
|
}
|
|
14076
14085
|
};
|
|
14077
14086
|
})
|
|
14078
|
-
}, null, 40, _hoisted_16$
|
|
14087
|
+
}, null, 40, _hoisted_16$a)
|
|
14079
14088
|
])) : vue.createCommentVNode("", true),
|
|
14080
14089
|
field === "sortInput" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_17$9, [
|
|
14081
14090
|
vue.createElementVNode("select", {
|
|
@@ -14304,8 +14313,8 @@ const _hoisted_14$9 = {
|
|
|
14304
14313
|
key: 1,
|
|
14305
14314
|
class: "text-muted-foreground"
|
|
14306
14315
|
};
|
|
14307
|
-
const _hoisted_15$
|
|
14308
|
-
const _hoisted_16$
|
|
14316
|
+
const _hoisted_15$9 = { class: "px-4 py-3 text-muted-foreground" };
|
|
14317
|
+
const _hoisted_16$9 = { class: "px-4 py-3 text-muted-foreground" };
|
|
14309
14318
|
const _hoisted_17$8 = { class: "px-4 py-3 text-muted-foreground" };
|
|
14310
14319
|
const _hoisted_18$7 = { class: "px-4 py-3 text-right" };
|
|
14311
14320
|
const _hoisted_19$7 = ["onClick"];
|
|
@@ -14422,8 +14431,8 @@ const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
|
|
|
14422
14431
|
!!shipment.status ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_13$9, vue.toDisplayString(shipment.status), 1)) : vue.createCommentVNode("", true),
|
|
14423
14432
|
!shipment.status ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_14$9, "-")) : vue.createCommentVNode("", true)
|
|
14424
14433
|
]),
|
|
14425
|
-
vue.createElementVNode("td", _hoisted_15$
|
|
14426
|
-
vue.createElementVNode("td", _hoisted_16$
|
|
14434
|
+
vue.createElementVNode("td", _hoisted_15$9, vue.toDisplayString(formatDate(shipment.createdAt)), 1),
|
|
14435
|
+
vue.createElementVNode("td", _hoisted_16$9, [
|
|
14427
14436
|
!!shipment.expectedDeliveryAt ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
|
|
14428
14437
|
vue.createTextVNode(vue.toDisplayString(formatDate(shipment.expectedDeliveryAt)), 1)
|
|
14429
14438
|
], 64)) : vue.createCommentVNode("", true),
|
|
@@ -14689,8 +14698,8 @@ const _hoisted_13$8 = {
|
|
|
14689
14698
|
strokeWidth: 2.5
|
|
14690
14699
|
};
|
|
14691
14700
|
const _hoisted_14$8 = { class: "propeller-product-bundles__summary flex-shrink-0 w-full lg:w-72 pl-0 lg:pl-6" };
|
|
14692
|
-
const _hoisted_15$
|
|
14693
|
-
const _hoisted_16$
|
|
14701
|
+
const _hoisted_15$8 = { class: "propeller-product-bundles__title text-xl font-bold text-foreground mb-1" };
|
|
14702
|
+
const _hoisted_16$8 = {
|
|
14694
14703
|
key: 0,
|
|
14695
14704
|
class: "propeller-product-bundles__description text-sm text-muted-foreground mb-3"
|
|
14696
14705
|
};
|
|
@@ -15011,8 +15020,8 @@ const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
|
|
|
15011
15020
|
])]))
|
|
15012
15021
|
]),
|
|
15013
15022
|
vue.createElementVNode("div", _hoisted_14$8, [
|
|
15014
|
-
vue.createElementVNode("h3", _hoisted_15$
|
|
15015
|
-
bundle.description ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_16$
|
|
15023
|
+
vue.createElementVNode("h3", _hoisted_15$8, vue.toDisplayString(bundle.name || getLabel("title", "Combo deal")), 1),
|
|
15024
|
+
bundle.description ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_16$8, vue.toDisplayString(bundle.description), 1)) : vue.createCommentVNode("", true),
|
|
15016
15025
|
bundle.condition ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_17$7, [
|
|
15017
15026
|
bundle.condition === vue.unref(propellerSdkV2.BundleCondition).ALL ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
|
|
15018
15027
|
vue.createTextVNode(vue.toDisplayString(getLabel("condition_ALL", "Discount on all items")), 1)
|
|
@@ -15205,8 +15214,8 @@ const _hoisted_11$7 = { class: "propeller-product-card__labels flex flex-col gap
|
|
|
15205
15214
|
const _hoisted_12$7 = { class: "propeller-product-card__manufacturer text-xs text-muted-foreground" };
|
|
15206
15215
|
const _hoisted_13$7 = { class: "propeller-product-card__description line-clamp-2 text-xs text-muted-foreground" };
|
|
15207
15216
|
const _hoisted_14$7 = { class: "propeller-product-card__footer w-full md:w-auto flex flex-col gap-2 md:flex-row md:items-center md:gap-3 px-4 py-2 md:py-0 border-t md:border-t-0 border-border-subtle" };
|
|
15208
|
-
const _hoisted_15$
|
|
15209
|
-
const _hoisted_16$
|
|
15217
|
+
const _hoisted_15$7 = { class: "propeller-product-card__footer-meta flex items-center justify-between gap-3 md:contents" };
|
|
15218
|
+
const _hoisted_16$7 = { class: "propeller-product-card__price" };
|
|
15210
15219
|
const _hoisted_17$6 = { class: "propeller-product-card__cta w-full md:w-auto md:flex-shrink-0 md:ml-auto" };
|
|
15211
15220
|
const _hoisted_18$5 = { class: "propeller-product-card__body flex flex-1 flex-col gap-1.5 p-3 sm:gap-2 sm:p-4" };
|
|
15212
15221
|
const _hoisted_19$5 = { class: "propeller-product-card__sku font-mono text-xs text-foreground-subtle" };
|
|
@@ -15561,7 +15570,7 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
|
|
|
15561
15570
|
])
|
|
15562
15571
|
]),
|
|
15563
15572
|
vue.createElementVNode("div", _hoisted_14$7, [
|
|
15564
|
-
vue.createElementVNode("div", _hoisted_15$
|
|
15573
|
+
vue.createElementVNode("div", _hoisted_15$7, [
|
|
15565
15574
|
props.showStock && !!props.product.inventory ? vue.renderSlot(_ctx.$slots, "stock", {
|
|
15566
15575
|
key: 0,
|
|
15567
15576
|
product: __props.product,
|
|
@@ -15591,7 +15600,7 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
|
|
|
15591
15600
|
currency: __props.currency,
|
|
15592
15601
|
labels: props.priceLabels
|
|
15593
15602
|
}, () => [
|
|
15594
|
-
vue.createElementVNode("div", _hoisted_16$
|
|
15603
|
+
vue.createElementVNode("div", _hoisted_16$7, [
|
|
15595
15604
|
props.priceComponent ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(PriceImpl.value), {
|
|
15596
15605
|
key: 0,
|
|
15597
15606
|
price: __props.product.price,
|
|
@@ -17244,11 +17253,11 @@ const _hoisted_14$6 = {
|
|
|
17244
17253
|
key: 1,
|
|
17245
17254
|
class: "mb-6 space-y-3"
|
|
17246
17255
|
};
|
|
17247
|
-
const _hoisted_15$
|
|
17256
|
+
const _hoisted_15$6 = {
|
|
17248
17257
|
key: 0,
|
|
17249
17258
|
class: "text-sm font-semibold text-muted-foreground uppercase tracking-wide mb-2"
|
|
17250
17259
|
};
|
|
17251
|
-
const _hoisted_16$
|
|
17260
|
+
const _hoisted_16$6 = {
|
|
17252
17261
|
key: 1,
|
|
17253
17262
|
class: "overflow-hidden rounded-[var(--radius-container)] border border-border"
|
|
17254
17263
|
};
|
|
@@ -17426,8 +17435,8 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17426
17435
|
key: group,
|
|
17427
17436
|
class: "mb-6"
|
|
17428
17437
|
}, [
|
|
17429
|
-
!!group ? (vue.openBlock(), vue.createElementBlock("h4", _hoisted_15$
|
|
17430
|
-
__props.layout !== "list" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$
|
|
17438
|
+
!!group ? (vue.openBlock(), vue.createElementBlock("h4", _hoisted_15$6, vue.toDisplayString(group), 1)) : vue.createCommentVNode("", true),
|
|
17439
|
+
__props.layout !== "list" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$6, [
|
|
17431
17440
|
vue.createElementVNode("table", _hoisted_17$5, [
|
|
17432
17441
|
vue.createElementVNode("tbody", _hoisted_18$4, [
|
|
17433
17442
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getAttributesByGroup(group), (attr, i) => {
|
|
@@ -17491,11 +17500,11 @@ const _hoisted_13$5 = {
|
|
|
17491
17500
|
class: "propeller-product-tabs__accordion-panel px-4 pb-4"
|
|
17492
17501
|
};
|
|
17493
17502
|
const _hoisted_14$5 = { key: 2 };
|
|
17494
|
-
const _hoisted_15$
|
|
17503
|
+
const _hoisted_15$5 = {
|
|
17495
17504
|
key: 0,
|
|
17496
17505
|
class: "propeller-product-tabs__accordion-panel px-4 pb-4"
|
|
17497
17506
|
};
|
|
17498
|
-
const _hoisted_16$
|
|
17507
|
+
const _hoisted_16$5 = { key: 3 };
|
|
17499
17508
|
const _hoisted_17$4 = {
|
|
17500
17509
|
key: 0,
|
|
17501
17510
|
class: "propeller-product-tabs__accordion-panel px-4 pb-4"
|
|
@@ -17797,7 +17806,7 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17797
17806
|
vue.createElementVNode("path", { d: "m6 9 6 6 6-6" }, null, -1)
|
|
17798
17807
|
])], 2))
|
|
17799
17808
|
]),
|
|
17800
|
-
isActive("downloads") ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$
|
|
17809
|
+
isActive("downloads") ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_15$5, [
|
|
17801
17810
|
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(ProductDownloadsImpl.value), {
|
|
17802
17811
|
downloads: __props.product.media?.documents,
|
|
17803
17812
|
language: __props.language || "NL",
|
|
@@ -17805,7 +17814,7 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17805
17814
|
}, null, 8, ["downloads", "language", "labels"]))
|
|
17806
17815
|
])) : vue.createCommentVNode("", true)
|
|
17807
17816
|
])) : vue.createCommentVNode("", true),
|
|
17808
|
-
isTabVisible("videos") ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$
|
|
17817
|
+
isTabVisible("videos") ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$5, [
|
|
17809
17818
|
vue.createElementVNode("button", {
|
|
17810
17819
|
type: "button",
|
|
17811
17820
|
class: "propeller-product-tabs__accordion-trigger flex items-center justify-between w-full px-4 py-3 text-sm font-medium text-left",
|
|
@@ -17859,8 +17868,8 @@ const _hoisted_11$4 = { class: "text-left px-4 py-3 font-medium text-muted-foreg
|
|
|
17859
17868
|
const _hoisted_12$4 = { class: "text-left px-4 py-3 font-medium text-muted-foreground" };
|
|
17860
17869
|
const _hoisted_13$4 = { class: "divide-y divide-border" };
|
|
17861
17870
|
const _hoisted_14$4 = { class: "px-4 py-3 text-muted-foreground" };
|
|
17862
|
-
const _hoisted_15$
|
|
17863
|
-
const _hoisted_16$
|
|
17871
|
+
const _hoisted_15$4 = { class: "px-4 py-3" };
|
|
17872
|
+
const _hoisted_16$4 = { class: "font-medium" };
|
|
17864
17873
|
const _hoisted_17$3 = { class: "text-xs text-muted-foreground mt-0.5" };
|
|
17865
17874
|
const _hoisted_18$3 = { class: "px-4 py-3" };
|
|
17866
17875
|
const _hoisted_19$3 = ["value", "disabled", "onChange"];
|
|
@@ -18041,8 +18050,8 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
18041
18050
|
class: "hover:bg-surface-hover/30 transition-colors"
|
|
18042
18051
|
}, [
|
|
18043
18052
|
vue.createElementVNode("td", _hoisted_14$4, vue.toDisplayString(contact.contactId), 1),
|
|
18044
|
-
vue.createElementVNode("td", _hoisted_15$
|
|
18045
|
-
vue.createElementVNode("div", _hoisted_16$
|
|
18053
|
+
vue.createElementVNode("td", _hoisted_15$4, [
|
|
18054
|
+
vue.createElementVNode("div", _hoisted_16$4, vue.toDisplayString([
|
|
18046
18055
|
contact.firstName,
|
|
18047
18056
|
contact.middleName,
|
|
18048
18057
|
contact.lastName
|
|
@@ -18309,8 +18318,8 @@ const _hoisted_11$3 = { class: "text-left px-4 py-3 font-medium text-muted-foreg
|
|
|
18309
18318
|
const _hoisted_12$3 = { class: "text-left px-4 py-3 font-medium text-muted-foreground" };
|
|
18310
18319
|
const _hoisted_13$3 = { class: "divide-y divide-border" };
|
|
18311
18320
|
const _hoisted_14$3 = { class: "px-4 py-3 text-muted-foreground" };
|
|
18312
|
-
const _hoisted_15$
|
|
18313
|
-
const _hoisted_16$
|
|
18321
|
+
const _hoisted_15$3 = { class: "px-4 py-3" };
|
|
18322
|
+
const _hoisted_16$3 = { class: "px-4 py-3 font-medium" };
|
|
18314
18323
|
const _hoisted_17$2 = { class: "px-4 py-3" };
|
|
18315
18324
|
const _hoisted_18$2 = { class: "font-medium" };
|
|
18316
18325
|
const _hoisted_19$2 = { class: "text-xs text-muted-foreground mt-0.5" };
|
|
@@ -18483,8 +18492,8 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
|
18483
18492
|
class: "hover:bg-surface-hover/30 transition-colors"
|
|
18484
18493
|
}, [
|
|
18485
18494
|
vue.createElementVNode("td", _hoisted_14$3, vue.toDisplayString(formatDate(cart.lastModifiedAt ?? "")), 1),
|
|
18486
|
-
vue.createElementVNode("td", _hoisted_15$
|
|
18487
|
-
vue.createElementVNode("td", _hoisted_16$
|
|
18495
|
+
vue.createElementVNode("td", _hoisted_15$3, vue.toDisplayString(vue.unref(getTotalQuantity)(cart)), 1),
|
|
18496
|
+
vue.createElementVNode("td", _hoisted_16$3, vue.toDisplayString(formatPrice(cart.total?.totalNet ?? 0)), 1),
|
|
18488
18497
|
vue.createElementVNode("td", _hoisted_17$2, [
|
|
18489
18498
|
vue.createElementVNode("div", _hoisted_18$2, vue.toDisplayString(vue.unref(getContactName)(cart.contact)), 1),
|
|
18490
18499
|
vue.createElementVNode("div", _hoisted_19$2, vue.toDisplayString(cart.contact?.email), 1)
|
|
@@ -18795,8 +18804,8 @@ const _hoisted_11$2 = { class: "text-sm font-medium leading-none" };
|
|
|
18795
18804
|
const _hoisted_12$2 = { class: "flex gap-4" };
|
|
18796
18805
|
const _hoisted_13$2 = { class: "flex items-center gap-2 text-sm" };
|
|
18797
18806
|
const _hoisted_14$2 = ["checked", "disabled"];
|
|
18798
|
-
const _hoisted_15$
|
|
18799
|
-
const _hoisted_16$
|
|
18807
|
+
const _hoisted_15$2 = { class: "flex items-center gap-2 text-sm" };
|
|
18808
|
+
const _hoisted_16$2 = ["checked", "disabled"];
|
|
18800
18809
|
const _hoisted_17$1 = { class: "flex items-center gap-2 text-sm" };
|
|
18801
18810
|
const _hoisted_18$1 = ["checked", "disabled"];
|
|
18802
18811
|
const _hoisted_19$1 = { class: "space-y-2" };
|
|
@@ -19297,7 +19306,7 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
|
19297
19306
|
}, null, 40, _hoisted_14$2),
|
|
19298
19307
|
vue.createTextVNode(" " + vue.toDisplayString(genderMrLabel.value), 1)
|
|
19299
19308
|
]),
|
|
19300
|
-
vue.createElementVNode("label", _hoisted_15$
|
|
19309
|
+
vue.createElementVNode("label", _hoisted_15$2, [
|
|
19301
19310
|
vue.createElementVNode("input", {
|
|
19302
19311
|
type: "radio",
|
|
19303
19312
|
name: "gender",
|
|
@@ -19308,7 +19317,7 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
|
19308
19317
|
gender.value = vue.unref(propellerSdkV2.Gender).F;
|
|
19309
19318
|
}),
|
|
19310
19319
|
disabled: vue.unref(loading)
|
|
19311
|
-
}, null, 40, _hoisted_16$
|
|
19320
|
+
}, null, 40, _hoisted_16$2),
|
|
19312
19321
|
vue.createTextVNode(" " + vue.toDisplayString(genderMrsLabel.value), 1)
|
|
19313
19322
|
]),
|
|
19314
19323
|
vue.createElementVNode("label", _hoisted_17$1, [
|
|
@@ -19863,9 +19872,11 @@ const _hoisted_12$1 = {
|
|
|
19863
19872
|
};
|
|
19864
19873
|
const _hoisted_13$1 = {
|
|
19865
19874
|
key: 1,
|
|
19866
|
-
class: "propeller-search-bar__result-price text-sm font-semibold text-foreground flex-shrink-0"
|
|
19875
|
+
class: "propeller-search-bar__result-price text-sm font-semibold text-foreground flex-shrink-0 text-right"
|
|
19867
19876
|
};
|
|
19868
|
-
const _hoisted_14$1 = {
|
|
19877
|
+
const _hoisted_14$1 = { class: "propeller-search-bar__result-price-value" };
|
|
19878
|
+
const _hoisted_15$1 = { class: "propeller-search-bar__result-price-label block text-xs font-normal text-muted-foreground" };
|
|
19879
|
+
const _hoisted_16$1 = {
|
|
19869
19880
|
key: 1,
|
|
19870
19881
|
class: "propeller-search-bar__empty p-4 text-center text-muted-foreground"
|
|
19871
19882
|
};
|
|
@@ -19886,6 +19897,8 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
|
19886
19897
|
onViewAllClick: { type: Function },
|
|
19887
19898
|
formatPrice: { type: Function },
|
|
19888
19899
|
labels: {},
|
|
19900
|
+
includeTax: { type: Boolean },
|
|
19901
|
+
priceLabels: {},
|
|
19889
19902
|
containerClassName: {},
|
|
19890
19903
|
taxZone: {},
|
|
19891
19904
|
companyId: {},
|
|
@@ -19975,6 +19988,13 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
|
19975
19988
|
}
|
|
19976
19989
|
return index.formatPrice(price || 0, { symbol: infra.currency ?? "€" });
|
|
19977
19990
|
}
|
|
19991
|
+
const useTax = vue.computed(() => !!infra.includeTax);
|
|
19992
|
+
function leadingPrice(result) {
|
|
19993
|
+
return useTax.value ? result.priceNet ?? result.price ?? 0 : result.priceGross ?? result.price ?? 0;
|
|
19994
|
+
}
|
|
19995
|
+
function priceTaxLabel() {
|
|
19996
|
+
return useTax.value ? index.getLabel(props.priceLabels, "inclTax", "incl. VAT") : index.getLabel(props.priceLabels, "exclTax", "excl. VAT");
|
|
19997
|
+
}
|
|
19978
19998
|
function mapProductToResult(item) {
|
|
19979
19999
|
const isCluster = "clusterId" in item;
|
|
19980
20000
|
const displayItem = isCluster ? item.defaultProduct : item;
|
|
@@ -19983,11 +20003,16 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
|
19983
20003
|
const urls = infra.configuration?.urls;
|
|
19984
20004
|
const builder = isCluster ? urls?.getClusterUrl : urls?.getProductUrl;
|
|
19985
20005
|
const url = typeof builder === "function" ? builder(item, infra.language) : isCluster ? "/cluster/" + id + "/" + slug : "/product/" + id + "/" + slug;
|
|
20006
|
+
const priceNet = displayItem?.price?.net || 0;
|
|
20007
|
+
const priceGross = displayItem?.price?.gross || 0;
|
|
19986
20008
|
return {
|
|
19987
20009
|
id,
|
|
19988
20010
|
name: item.names?.[0]?.value || "Product",
|
|
19989
20011
|
sku: item.sku || displayItem?.sku || "",
|
|
19990
|
-
price
|
|
20012
|
+
// `price` stays gross for back-compat; the row picks net/gross per toggle.
|
|
20013
|
+
price: priceGross,
|
|
20014
|
+
priceNet,
|
|
20015
|
+
priceGross,
|
|
19991
20016
|
imageUrl: displayItem?.media?.images?.items?.[0]?.imageVariants?.[0]?.url || "",
|
|
19992
20017
|
url,
|
|
19993
20018
|
isCluster
|
|
@@ -20085,7 +20110,10 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
|
20085
20110
|
vue.createElementVNode("div", _hoisted_11$1, vue.toDisplayString(result.name), 1),
|
|
20086
20111
|
result.sku ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_12$1, "SKU: " + vue.toDisplayString(result.sku), 1)) : vue.createCommentVNode("", true)
|
|
20087
20112
|
]),
|
|
20088
|
-
result.price !== void 0 && result.price !== null ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_13$1,
|
|
20113
|
+
result.price !== void 0 && result.price !== null ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_13$1, [
|
|
20114
|
+
vue.createElementVNode("span", _hoisted_14$1, vue.toDisplayString(formatItemPrice(leadingPrice(result))), 1),
|
|
20115
|
+
vue.createElementVNode("span", _hoisted_15$1, vue.toDisplayString(priceTaxLabel()), 1)
|
|
20116
|
+
])) : vue.createCommentVNode("", true)
|
|
20089
20117
|
], 8, _hoisted_7$1);
|
|
20090
20118
|
}), 128))
|
|
20091
20119
|
]),
|
|
@@ -20095,7 +20123,7 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
|
20095
20123
|
onClick: _cache[2] || (_cache[2] = async (event) => handleViewAllClick())
|
|
20096
20124
|
}, vue.toDisplayString(getLabel("viewAll", "View all results")) + " (" + vue.toDisplayString(itemsFound.value) + ") ", 1)) : vue.createCommentVNode("", true)
|
|
20097
20125
|
], 64)) : vue.createCommentVNode("", true),
|
|
20098
|
-
results.value.length === 0 && searchTerm.value.length >= minLength.value && !vue.unref(isLoading) ? (vue.openBlock(), vue.createElementBlock("div",
|
|
20126
|
+
results.value.length === 0 && searchTerm.value.length >= minLength.value && !vue.unref(isLoading) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$1, vue.toDisplayString(getLabel("noResults", "No products found for")) + ' "' + vue.toDisplayString(searchTerm.value) + '" ', 1)) : vue.createCommentVNode("", true)
|
|
20099
20127
|
])) : vue.createCommentVNode("", true)
|
|
20100
20128
|
], 10, _hoisted_1$1);
|
|
20101
20129
|
};
|