@loczer/storefront-sdk 0.235.0 → 0.237.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/FaqSection/index.d.ts +2 -0
- package/dist/components/FaqSection/index.d.ts.map +1 -0
- package/dist/components/FaqSection/index.js +76 -0
- package/dist/components/Header/index.d.ts.map +1 -1
- package/dist/components/Header/index.js +113 -109
- package/dist/components/Layout/index.d.ts.map +1 -1
- package/dist/components/Layout/index.js +42 -43
- package/dist/components/StorefrontCartPanel/index.d.ts +2 -1
- package/dist/components/StorefrontCartPanel/index.d.ts.map +1 -1
- package/dist/components/StorefrontCartPanel/index.js +42 -38
- package/dist/components/StorefrontInsuranceNotice/index.d.ts.map +1 -1
- package/dist/components/StorefrontInsuranceNotice/index.js +3 -12
- package/dist/i18n/en.d.ts +3 -2
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +3 -2
- package/dist/i18n/fr.d.ts +3 -2
- package/dist/i18n/fr.d.ts.map +1 -1
- package/dist/i18n/fr.js +3 -2
- package/dist/index.d.ts +14 -5
- package/dist/index.js +27 -26
- package/dist/lib/storefrontProducts.d.ts +4 -0
- package/dist/lib/storefrontProducts.d.ts.map +1 -1
- package/dist/lib/storefrontProducts.js +2 -0
- package/dist/pages/CheckoutPage.d.ts.map +1 -1
- package/dist/pages/CheckoutPage.js +7 -0
- package/dist/pages/HomePage.d.ts.map +1 -1
- package/dist/pages/HomePage.js +397 -388
- package/dist/pages/checkout/components/CheckoutBookingPeriodSummary.d.ts +9 -0
- package/dist/pages/checkout/components/CheckoutBookingPeriodSummary.d.ts.map +1 -0
- package/dist/pages/checkout/components/CheckoutBookingPeriodSummary.js +83 -0
- package/dist/pages/checkout/components/CheckoutSummaryColumn.d.ts +3 -1
- package/dist/pages/checkout/components/CheckoutSummaryColumn.d.ts.map +1 -1
- package/dist/pages/checkout/components/CheckoutSummaryColumn.js +34 -32
- package/dist/storefront.css +1 -1
- package/package.json +1 -1
package/dist/pages/HomePage.js
CHANGED
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
import { BOOKING_SEARCH_KEYS as e, applyBookingParamsToSearch as t, createBookingPeriodConfigFromStorefrontConfiguration as n, getBookingParamsFromSearch as r, getDefaultBookingParamsForStorefrontConfiguration as i, resolveBookingSearchParamsFromSessionStorage as a, writeBookingSearchParamsToSessionStorage as o } from "../lib/booking.js";
|
|
2
2
|
import { getLocalizedValue as s } from "../localization.js";
|
|
3
3
|
import { getAvailabilityVariant as ee } from "../lib/utils.js";
|
|
4
|
-
import { resolveStorefrontMapsHref as
|
|
5
|
-
import { buildStorefrontImageUrl as
|
|
6
|
-
import { MISSING_SHOP_ADDRESS as
|
|
7
|
-
import { buildBusinessHoursSeasonSummary as
|
|
8
|
-
import { Badge as
|
|
9
|
-
import { Button as
|
|
10
|
-
import { useStorefront as
|
|
11
|
-
import { usePlaygroundDevSettings as
|
|
12
|
-
import { BookingPeriodProvider as
|
|
13
|
-
import { BookingStartDateField as
|
|
14
|
-
import { BookingStartTimeField as
|
|
15
|
-
import { BookingEndDateField as
|
|
16
|
-
import { BookingEndTimeField as
|
|
17
|
-
import { BookingTimeSlotsStatus as
|
|
18
|
-
import { BookingMobileDateDrawer as
|
|
4
|
+
import { resolveStorefrontMapsHref as c } from "../lib/storefrontContact.js";
|
|
5
|
+
import { buildStorefrontImageUrl as l } from "../lib/storefrontImage.js";
|
|
6
|
+
import { MISSING_SHOP_ADDRESS as te } from "../lib/storefrontMissingValues.js";
|
|
7
|
+
import { buildBusinessHoursSeasonSummary as ne, normalizeStorefrontOpeningHours as re, normalizeStorefrontOpeningHoursOverrides as ie } from "../components/Footer/businessHoursUtils.js";
|
|
8
|
+
import { Badge as u } from "../ui/badge.js";
|
|
9
|
+
import { Button as ae } from "../ui/button.js";
|
|
10
|
+
import { useStorefront as oe, useStorefrontProducts as se } from "../StorefrontContext.js";
|
|
11
|
+
import { usePlaygroundDevSettings as ce } from "../lib/playgroundDevSettings.js";
|
|
12
|
+
import { BookingPeriodProvider as le, useBookingPeriod as d } from "../components/BookingPeriodSelector/BookingPeriodContext.js";
|
|
13
|
+
import { BookingStartDateField as ue } from "../components/BookingPeriodSelector/components/BookingStartDateField.js";
|
|
14
|
+
import { BookingStartTimeField as de } from "../components/BookingPeriodSelector/components/BookingStartTimeField.js";
|
|
15
|
+
import { BookingEndDateField as fe } from "../components/BookingPeriodSelector/components/BookingEndDateField.js";
|
|
16
|
+
import { BookingEndTimeField as pe } from "../components/BookingPeriodSelector/components/BookingEndTimeField.js";
|
|
17
|
+
import { BookingTimeSlotsStatus as me } from "../components/BookingPeriodSelector/components/BookingTimeSlotsStatus.js";
|
|
18
|
+
import { BookingMobileDateDrawer as he } from "../components/BookingPeriodSelector/components/BookingMobileDateDrawer.js";
|
|
19
19
|
import "../components/BookingPeriodSelector/index.js";
|
|
20
|
-
import { DeliveryAddressSelector as
|
|
21
|
-
import { ContactSection as
|
|
20
|
+
import { DeliveryAddressSelector as ge } from "../components/DeliveryAddressSelector/index.js";
|
|
21
|
+
import { ContactSection as _e } from "../components/ContactSection/index.js";
|
|
22
|
+
import { FaqSection as ve } from "../components/FaqSection/index.js";
|
|
22
23
|
import { TestimonialsSection as ye } from "../components/TestimonialsSection/index.js";
|
|
23
24
|
import { AboutSection as be } from "../components/AboutSection/index.js";
|
|
24
25
|
import { ItinerariesSection as xe } from "../components/Itineraries/ItinerariesSection.js";
|
|
@@ -35,21 +36,21 @@ import { StorefrontCancellationPolicyNotice as Ne } from "../components/Storefro
|
|
|
35
36
|
import { StorefrontInsuranceNotice as Pe } from "../components/StorefrontInsuranceNotice/index.js";
|
|
36
37
|
import { createStorefrontTimeSlotsFetcher as Fe } from "../lib/fetchStorefrontTimeSlots.js";
|
|
37
38
|
import { FulfillmentSection as Ie } from "../components/FulfillmentSection/index.js";
|
|
38
|
-
import { useEffect as
|
|
39
|
-
import { Fragment as
|
|
40
|
-
import { Link as
|
|
39
|
+
import { useEffect as f, useMemo as p, useRef as m, useState as h } from "react";
|
|
40
|
+
import { Fragment as g, jsx as _, jsxs as v } from "react/jsx-runtime";
|
|
41
|
+
import { Link as y, useLocation as Le, useNavigate as Re, useParams as ze, useSearchParams as Be } from "@rpcbase/router";
|
|
41
42
|
import { useTranslation as Ve } from "react-i18next";
|
|
42
|
-
import { cn as
|
|
43
|
-
import { ArrowRight as
|
|
43
|
+
import { cn as b } from "@rpcbase/ui";
|
|
44
|
+
import { ArrowRight as x, Bike as He, Clock as Ue, MapPin as We, ShieldCheck as Ge, Truck as Ke } from "lucide-react";
|
|
44
45
|
//#region src/pages/HomePage.tsx
|
|
45
|
-
var
|
|
46
|
+
var S = (e) => String(e).padStart(2, "0"), qe = "text-2xs font-semibold uppercase tracking-wide text-slate-600", Je = "h-10", C = "show_business_hours_modal", Ye = 7, w = 6, T = 5, Xe = [
|
|
46
47
|
15,
|
|
47
48
|
25,
|
|
48
49
|
42,
|
|
49
50
|
66,
|
|
50
51
|
33,
|
|
51
52
|
54
|
|
52
|
-
],
|
|
53
|
+
], E = [
|
|
53
54
|
"4 / 5",
|
|
54
55
|
"1 / 1",
|
|
55
56
|
"3 / 4",
|
|
@@ -58,39 +59,39 @@ var x = (e) => String(e).padStart(2, "0"), qe = "text-2xs font-semibold uppercas
|
|
|
58
59
|
"4 / 3",
|
|
59
60
|
"9 / 16",
|
|
60
61
|
"6 / 7"
|
|
61
|
-
],
|
|
62
|
-
let { hasConfirmedTimeSlots: i, startTime: a, endTime: o } =
|
|
63
|
-
return /* @__PURE__ */
|
|
62
|
+
], Ze = ({ buttonRef: e, className: t, label: n, onSubmit: r }) => {
|
|
63
|
+
let { hasConfirmedTimeSlots: i, startTime: a, endTime: o } = d();
|
|
64
|
+
return /* @__PURE__ */ v(ae, {
|
|
64
65
|
ref: e,
|
|
65
|
-
className:
|
|
66
|
+
className: b("gap-2", t),
|
|
66
67
|
disabled: !i || !a || !o,
|
|
67
68
|
onClick: r,
|
|
68
|
-
children: [/* @__PURE__ */
|
|
69
|
+
children: [/* @__PURE__ */ _("span", { children: n }), /* @__PURE__ */ _(x, {
|
|
69
70
|
className: "h-4 w-4",
|
|
70
71
|
"aria-hidden": "true"
|
|
71
72
|
})]
|
|
72
73
|
});
|
|
73
|
-
},
|
|
74
|
+
}, D = (e) => `${e.getFullYear()}-${S(e.getMonth() + 1)}-${S(e.getDate())}`, O = (e) => {
|
|
74
75
|
if (!e) return;
|
|
75
76
|
let t = e.match(/^(\d{4})-(\d{2})-(\d{2})$/);
|
|
76
77
|
if (!t) return;
|
|
77
78
|
let n = Number(t[1]), r = Number(t[2]), i = Number(t[3]), a = new Date(n, r - 1, i);
|
|
78
79
|
if (!(Number.isNaN(a.getTime()) || a.getFullYear() !== n || a.getMonth() !== r - 1 || a.getDate() !== i)) return a;
|
|
79
|
-
},
|
|
80
|
+
}, Qe = (e) => {
|
|
80
81
|
let t = e.length > 0 ? e : [Te];
|
|
81
|
-
return Array.from({ length:
|
|
82
|
-
let i = n *
|
|
82
|
+
return Array.from({ length: w }, (e, n) => Array.from({ length: T }, (e, r) => {
|
|
83
|
+
let i = n * T + r;
|
|
83
84
|
return {
|
|
84
|
-
aspectRatio:
|
|
85
|
+
aspectRatio: E[(i + n) % E.length] ?? E[0],
|
|
85
86
|
src: t[i % t.length] ?? "data:image/svg+xml,%3csvg%20width='1600'%20height='1066'%20viewBox='0%200%201600%201066'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cdefs%3e%3clinearGradient%20id='bg'%20x1='0'%20y1='0'%20x2='1600'%20y2='1066'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%230F172A'/%3e%3cstop%20offset='1'%20stop-color='%23164E63'/%3e%3c/linearGradient%3e%3clinearGradient%20id='road'%20x1='0'%20y1='740'%20x2='1600'%20y2='1066'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23334155'/%3e%3cstop%20offset='1'%20stop-color='%230F172A'/%3e%3c/linearGradient%3e%3c/defs%3e%3crect%20width='1600'%20height='1066'%20fill='url(%23bg)'/%3e%3cpath%20d='M0%20675C233%20555%20420%20530%20590%20551C752%20571%20930%20635%201088%20632C1252%20629%201423%20559%201600%20498V1066H0V675Z'%20fill='%231E293B'%20opacity='0.7'/%3e%3cpath%20d='M0%20792C213%20710%20393%20686%20573%20697C760%20708%20945%20760%201123%20761C1286%20762%201437%20722%201600%20666V1066H0V792Z'%20fill='url(%23road)'/%3e%3ccircle%20cx='440'%20cy='620'%20r='92'%20stroke='%23F8FAFC'%20stroke-width='18'%20opacity='0.8'/%3e%3ccircle%20cx='740'%20cy='620'%20r='92'%20stroke='%23F8FAFC'%20stroke-width='18'%20opacity='0.8'/%3e%3cpath%20d='M440%20620L560%20520L650%20620H740M560%20520L610%20445M595%20470H665'%20stroke='%23F8FAFC'%20stroke-width='18'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3ccircle%20cx='980'%20cy='700'%20r='80'%20stroke='%23E2E8F0'%20stroke-width='14'%20opacity='0.7'/%3e%3ccircle%20cx='1240'%20cy='700'%20r='80'%20stroke='%23E2E8F0'%20stroke-width='14'%20opacity='0.7'/%3e%3cpath%20d='M980%20700L1078%20616L1156%20700H1240M1078%20616L1122%20556M1112%20574H1172'%20stroke='%23E2E8F0'%20stroke-width='14'%20stroke-linecap='round'%20stroke-linejoin='round'%20opacity='0.7'/%3e%3c/svg%3e"
|
|
86
87
|
};
|
|
87
88
|
}));
|
|
88
89
|
};
|
|
89
|
-
function
|
|
90
|
-
let { t:
|
|
91
|
-
|
|
90
|
+
function k() {
|
|
91
|
+
let { t: d, i18n: S } = Ve(), { storeSlug: w } = ze(), T = Le(), { storefrontConfiguration: E } = oe(), k = E.shop.address?.trim() ?? "", A = E.workspace?.workspaceLanguage, j = S.resolvedLanguage || S.language || A || "en", [$e, et] = h(() => /* @__PURE__ */ new Date());
|
|
92
|
+
f(() => {
|
|
92
93
|
let e = () => {
|
|
93
|
-
|
|
94
|
+
et(/* @__PURE__ */ new Date());
|
|
94
95
|
}, t, n = window.setTimeout(() => {
|
|
95
96
|
e(), t = window.setInterval(e, 6e4);
|
|
96
97
|
}, 6e4 - Date.now() % 6e4);
|
|
@@ -98,375 +99,375 @@ function D() {
|
|
|
98
99
|
window.clearTimeout(n), t != null && window.clearInterval(t);
|
|
99
100
|
};
|
|
100
101
|
}, []);
|
|
101
|
-
let
|
|
102
|
-
openingHours:
|
|
103
|
-
openingHoursOverrides:
|
|
104
|
-
language:
|
|
105
|
-
closedLabel:
|
|
106
|
-
formatWeekdayRange: (e, t) =>
|
|
102
|
+
let tt = re(E.bookingEngine.shop.openingHours), nt = ie(E.bookingEngine.shop.openingHoursOverrides), { seasons: rt, exceptions: it } = ne({
|
|
103
|
+
openingHours: tt,
|
|
104
|
+
openingHoursOverrides: nt,
|
|
105
|
+
language: S.language || A || "en",
|
|
106
|
+
closedLabel: d("footer_business_hours_closed"),
|
|
107
|
+
formatWeekdayRange: (e, t) => d("footer_business_hours_weekday_range", {
|
|
107
108
|
start: e,
|
|
108
109
|
end: t
|
|
109
110
|
}),
|
|
110
|
-
formatSeasonRange: (e, t) =>
|
|
111
|
+
formatSeasonRange: (e, t) => d("footer_business_hours_season_range", {
|
|
111
112
|
start: e,
|
|
112
113
|
end: t
|
|
113
114
|
}),
|
|
114
|
-
timeZone:
|
|
115
|
+
timeZone: E.bookingEngine.shop.timeZone,
|
|
115
116
|
includeReferenceDateOverrideInSeason: !1
|
|
116
|
-
}),
|
|
117
|
-
openingHours:
|
|
118
|
-
openingHoursOverrides:
|
|
119
|
-
timeZone:
|
|
120
|
-
referenceDate:
|
|
121
|
-
}),
|
|
122
|
-
if (
|
|
123
|
-
else if (
|
|
124
|
-
let { nextOpening: e } =
|
|
125
|
-
if (!e)
|
|
117
|
+
}), at = rt.length > 0 || it.length > 0, M = Me({
|
|
118
|
+
openingHours: tt,
|
|
119
|
+
openingHoursOverrides: nt,
|
|
120
|
+
timeZone: E.bookingEngine.shop.timeZone,
|
|
121
|
+
referenceDate: $e
|
|
122
|
+
}), N = d("status_hours_unavailable");
|
|
123
|
+
if (M.kind === "open") N = d("status_open");
|
|
124
|
+
else if (M.kind === "closed") {
|
|
125
|
+
let { nextOpening: e } = M;
|
|
126
|
+
if (!e) N = d("status_closed");
|
|
126
127
|
else {
|
|
127
|
-
let t = Ae(e.time,
|
|
128
|
-
|
|
128
|
+
let t = Ae(e.time, j);
|
|
129
|
+
N = e.daysFromToday === 0 ? d("status_opens_at", { time: t }) : e.daysFromToday === 1 ? d("status_opens_at_tomorrow", { time: t }) : e.daysFromToday <= Ye ? d("status_opens_on", {
|
|
129
130
|
time: t,
|
|
130
|
-
weekday: je(e.date,
|
|
131
|
-
}) :
|
|
132
|
-
date: ke(e.date,
|
|
131
|
+
weekday: je(e.date, j)
|
|
132
|
+
}) : d("status_opens_on_date", {
|
|
133
|
+
date: ke(e.date, j),
|
|
133
134
|
time: t
|
|
134
135
|
});
|
|
135
136
|
}
|
|
136
137
|
}
|
|
137
|
-
let
|
|
138
|
-
let e =
|
|
139
|
-
return
|
|
140
|
-
}), [
|
|
141
|
-
let t = new URLSearchParams(
|
|
142
|
-
e ? t.set(
|
|
143
|
-
},
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
].join(":"),
|
|
149
|
-
|
|
150
|
-
let
|
|
151
|
-
startDate:
|
|
152
|
-
pickStartDate:
|
|
153
|
-
startTime:
|
|
154
|
-
endDate:
|
|
155
|
-
pickEndDate:
|
|
156
|
-
endTime:
|
|
157
|
-
selectedDaysTooltip: ({ count: e }) =>
|
|
158
|
-
rentalPeriod:
|
|
159
|
-
dateDrawerNext:
|
|
160
|
-
closeDrawer:
|
|
161
|
-
timeSlotsLoading:
|
|
162
|
-
timeSlotsUnavailable:
|
|
163
|
-
timeSlotsLoadError:
|
|
164
|
-
retryTimeSlots:
|
|
165
|
-
}), [
|
|
166
|
-
let e =
|
|
138
|
+
let P = c(E.shop), { bikes: F, accessories: ot } = se(), [I, st] = Be(), ct = I.get(C) === "true", lt = Re(), L = p(() => a(I, w), [I, w]), ut = p(() => n(E), [E]), R = p(() => i(E), [E]), z = p(() => O(R.startDate), [R.startDate]), dt = p(() => O(R.endDate) ?? z, [R.endDate, z]), B = E.settings.fulfillmentModes.includes("delivery"), ft = E.settings.deliveryDisabledReason.trim(), pt = p(() => r(L, R), [R, L]), [V, mt] = h(() => pt.fulfillment === "delivery" && B ? "delivery" : "pickup"), [H, ht] = h(() => O(L.get("start_date")) ?? z), [U, gt] = h(() => L.get("start_time") ?? R.startTime), [W, _t] = h(() => {
|
|
139
|
+
let e = O(L.get("start_date")) ?? z;
|
|
140
|
+
return O(L.get("end_date")) ?? e ?? dt;
|
|
141
|
+
}), [G, vt] = h(() => L.get("end_time") ?? R.endTime), [yt, bt] = h(void 0), xt = m(void 0), [St, Ct] = h(!1), [K, wt] = h(() => pt.startAddress), [q, Tt] = h(() => pt.endAddress), Et = m(null), Dt = (e) => {
|
|
142
|
+
let t = new URLSearchParams(I);
|
|
143
|
+
e ? t.set(C, "true") : t.delete(C), st(t, { replace: !0 });
|
|
144
|
+
}, Ot = [
|
|
145
|
+
H ? D(H) : "",
|
|
146
|
+
U,
|
|
147
|
+
W ? D(W) : "",
|
|
148
|
+
G
|
|
149
|
+
].join(":"), kt = m(Ot);
|
|
150
|
+
kt.current = Ot;
|
|
151
|
+
let J = yt === Ot, At = p(() => F.slice(0, 4), [F]), { heroMode: jt } = ce(), Mt = jt ?? E.content?.heroMode ?? "current_booking_hero", Y = Mt === "vertical_marquee_hero", X = Mt === "booking_bar_overlay_hero" || Y, Nt = Fe(w), Pt = p(() => ({
|
|
152
|
+
startDate: d("booking_start_date"),
|
|
153
|
+
pickStartDate: d("booking_start_date"),
|
|
154
|
+
startTime: d("booking_start_time"),
|
|
155
|
+
endDate: d("booking_end_date"),
|
|
156
|
+
pickEndDate: d("booking_end_date"),
|
|
157
|
+
endTime: d("booking_end_time"),
|
|
158
|
+
selectedDaysTooltip: ({ count: e }) => d("booking_selected_days_tooltip", { count: e }),
|
|
159
|
+
rentalPeriod: d("booking_rental_period"),
|
|
160
|
+
dateDrawerNext: d("booking_date_drawer_continue"),
|
|
161
|
+
closeDrawer: d("booking_date_drawer_close"),
|
|
162
|
+
timeSlotsLoading: d("booking_time_slots_loading"),
|
|
163
|
+
timeSlotsUnavailable: d("booking_time_slots_unavailable"),
|
|
164
|
+
timeSlotsLoadError: d("booking_time_slots_load_error"),
|
|
165
|
+
retryTimeSlots: d("booking_time_slots_retry")
|
|
166
|
+
}), [S.language, d]), Z = p(() => {
|
|
167
|
+
let e = H ?? z ?? /* @__PURE__ */ new Date(), n = W ?? e;
|
|
167
168
|
return t(new URLSearchParams(), {
|
|
168
|
-
fulfillment:
|
|
169
|
-
startDate:
|
|
170
|
-
startTime:
|
|
171
|
-
endDate:
|
|
172
|
-
endTime:
|
|
173
|
-
startAddress:
|
|
174
|
-
endAddress:
|
|
169
|
+
fulfillment: V === "delivery" && B ? "delivery" : "pickup",
|
|
170
|
+
startDate: D(e),
|
|
171
|
+
startTime: J ? U : "",
|
|
172
|
+
endDate: D(n),
|
|
173
|
+
endTime: J ? G : "",
|
|
174
|
+
startAddress: K,
|
|
175
|
+
endAddress: q
|
|
175
176
|
});
|
|
176
177
|
}, [
|
|
177
|
-
|
|
178
|
-
|
|
178
|
+
z,
|
|
179
|
+
B,
|
|
180
|
+
q,
|
|
181
|
+
W,
|
|
179
182
|
G,
|
|
180
183
|
V,
|
|
184
|
+
J,
|
|
185
|
+
K,
|
|
181
186
|
H,
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
d(() => {
|
|
189
|
-
o(S, Q);
|
|
190
|
-
}, [Q, S]), d(() => {
|
|
191
|
-
let t = new URLSearchParams(N);
|
|
187
|
+
U
|
|
188
|
+
]), Ft = Z.toString(), It = Ft ? `?${Ft}` : "";
|
|
189
|
+
f(() => {
|
|
190
|
+
o(w, Z);
|
|
191
|
+
}, [Z, w]), f(() => {
|
|
192
|
+
let t = new URLSearchParams(I);
|
|
192
193
|
for (let n of e) t.delete(n);
|
|
193
|
-
for (let [e, n] of
|
|
194
|
-
t.toString() !==
|
|
194
|
+
for (let [e, n] of Z.entries()) t.set(e, n);
|
|
195
|
+
t.toString() !== I.toString() && st(t, { replace: !0 });
|
|
195
196
|
}, [
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
]),
|
|
200
|
-
!
|
|
201
|
-
}, [
|
|
202
|
-
let
|
|
203
|
-
startDate:
|
|
204
|
-
onStartDateChange:
|
|
205
|
-
startTime:
|
|
206
|
-
onStartTimeChange:
|
|
207
|
-
endDate:
|
|
208
|
-
onEndDateChange:
|
|
209
|
-
endTime:
|
|
210
|
-
onEndTimeChange:
|
|
211
|
-
onEndTimeCommit: () =>
|
|
212
|
-
bookingPeriodConfig:
|
|
197
|
+
Z,
|
|
198
|
+
I,
|
|
199
|
+
st
|
|
200
|
+
]), f(() => {
|
|
201
|
+
!St || !J || (Ct(!1), Et.current?.focus({ preventScroll: !0 }));
|
|
202
|
+
}, [J, St]);
|
|
203
|
+
let Lt = J && !!(U && G), Rt = {
|
|
204
|
+
startDate: H,
|
|
205
|
+
onStartDateChange: ht,
|
|
206
|
+
startTime: U,
|
|
207
|
+
onStartTimeChange: gt,
|
|
208
|
+
endDate: W,
|
|
209
|
+
onEndDateChange: _t,
|
|
210
|
+
endTime: G,
|
|
211
|
+
onEndTimeChange: vt,
|
|
212
|
+
onEndTimeCommit: () => Ct(!0),
|
|
213
|
+
bookingPeriodConfig: ut,
|
|
213
214
|
withMobileDateDrawer: !0,
|
|
214
|
-
fetchTimeSlots:
|
|
215
|
+
fetchTimeSlots: Nt,
|
|
215
216
|
onTimeSlotsConfirmationChange: (e) => {
|
|
216
|
-
let t = e ?
|
|
217
|
-
|
|
217
|
+
let t = e ? kt.current : void 0;
|
|
218
|
+
xt.current !== t && (xt.current = t, bt(t));
|
|
218
219
|
},
|
|
219
|
-
labels:
|
|
220
|
-
localeCode:
|
|
221
|
-
},
|
|
222
|
-
let e = new URLSearchParams(
|
|
223
|
-
for (let [t, n] of
|
|
224
|
-
|
|
225
|
-
},
|
|
226
|
-
|
|
227
|
-
},
|
|
220
|
+
labels: Pt,
|
|
221
|
+
localeCode: S.language
|
|
222
|
+
}, zt = () => {
|
|
223
|
+
let e = new URLSearchParams(I);
|
|
224
|
+
for (let [t, n] of Z.entries()) e.set(t, n);
|
|
225
|
+
lt(`/${w ?? ""}/booking?${e.toString()}#booking-products`);
|
|
226
|
+
}, Bt = () => {
|
|
227
|
+
Lt && zt();
|
|
228
|
+
}, Vt = (e) => `/${w ?? ""}/products/${e}`, Q = { backTo: `${T.pathname}${T.search}${T.hash}` }, Ht = /* @__PURE__ */ v("div", {
|
|
228
229
|
className: "min-w-0",
|
|
229
230
|
children: [
|
|
230
|
-
/* @__PURE__ */
|
|
231
|
+
/* @__PURE__ */ v("div", {
|
|
231
232
|
className: "flex min-w-0 flex-wrap items-center gap-2",
|
|
232
|
-
children: [
|
|
233
|
+
children: [at ? /* @__PURE__ */ _(u, {
|
|
233
234
|
asChild: !0,
|
|
234
235
|
variant: "secondary",
|
|
235
236
|
className: "group cursor-pointer",
|
|
236
|
-
children: /* @__PURE__ */
|
|
237
|
+
children: /* @__PURE__ */ v("button", {
|
|
237
238
|
type: "button",
|
|
238
239
|
"data-testid": "storefront-business-hours-trigger",
|
|
239
240
|
"aria-haspopup": "dialog",
|
|
240
|
-
"aria-expanded":
|
|
241
|
-
onClick: () =>
|
|
242
|
-
children: [/* @__PURE__ */
|
|
241
|
+
"aria-expanded": ct,
|
|
242
|
+
onClick: () => Dt(!0),
|
|
243
|
+
children: [/* @__PURE__ */ _(Ue, {
|
|
243
244
|
className: "h-3 w-3",
|
|
244
245
|
"aria-hidden": "true"
|
|
245
|
-
}), /* @__PURE__ */
|
|
246
|
+
}), /* @__PURE__ */ _("span", {
|
|
246
247
|
className: "decoration-current underline-offset-2 group-hover:underline group-focus-visible:underline",
|
|
247
248
|
"data-testid": "storefront-business-hours-status",
|
|
248
249
|
suppressHydrationWarning: !0,
|
|
249
|
-
children:
|
|
250
|
+
children: N
|
|
250
251
|
})]
|
|
251
252
|
})
|
|
252
|
-
}) : /* @__PURE__ */
|
|
253
|
+
}) : /* @__PURE__ */ v(u, {
|
|
253
254
|
variant: "secondary",
|
|
254
|
-
children: [/* @__PURE__ */
|
|
255
|
+
children: [/* @__PURE__ */ _(Ue, {
|
|
255
256
|
className: "h-3 w-3",
|
|
256
257
|
"aria-hidden": "true"
|
|
257
|
-
}), /* @__PURE__ */
|
|
258
|
+
}), /* @__PURE__ */ _("span", {
|
|
258
259
|
"data-testid": "storefront-business-hours-status",
|
|
259
260
|
suppressHydrationWarning: !0,
|
|
260
|
-
children:
|
|
261
|
+
children: N
|
|
261
262
|
})]
|
|
262
|
-
}),
|
|
263
|
+
}), k && P ? /* @__PURE__ */ _(u, {
|
|
263
264
|
asChild: !0,
|
|
264
265
|
variant: "secondary",
|
|
265
266
|
className: "group min-w-0 max-w-full cursor-pointer",
|
|
266
|
-
children: /* @__PURE__ */
|
|
267
|
-
href:
|
|
267
|
+
children: /* @__PURE__ */ v("a", {
|
|
268
|
+
href: P,
|
|
268
269
|
target: "_blank",
|
|
269
270
|
rel: "noreferrer",
|
|
270
271
|
"data-testid": "storefront-shop-address-link",
|
|
271
|
-
children: [/* @__PURE__ */
|
|
272
|
+
children: [/* @__PURE__ */ _(We, {
|
|
272
273
|
className: "h-3 w-3",
|
|
273
274
|
"aria-hidden": "true"
|
|
274
|
-
}), /* @__PURE__ */
|
|
275
|
+
}), /* @__PURE__ */ _("span", {
|
|
275
276
|
className: "truncate decoration-current underline-offset-2 group-hover:underline group-focus-visible:underline",
|
|
276
|
-
children:
|
|
277
|
+
children: k
|
|
277
278
|
})]
|
|
278
279
|
})
|
|
279
|
-
}) : /* @__PURE__ */
|
|
280
|
+
}) : /* @__PURE__ */ v(u, {
|
|
280
281
|
variant: "outline",
|
|
281
282
|
className: "min-w-0 max-w-full border-destructive/40 text-destructive",
|
|
282
|
-
children: [/* @__PURE__ */
|
|
283
|
+
children: [/* @__PURE__ */ _(We, {
|
|
283
284
|
className: "h-3 w-3",
|
|
284
285
|
"aria-hidden": "true"
|
|
285
|
-
}), /* @__PURE__ */
|
|
286
|
+
}), /* @__PURE__ */ _("span", {
|
|
286
287
|
className: "truncate",
|
|
287
|
-
children:
|
|
288
|
+
children: te
|
|
288
289
|
})]
|
|
289
290
|
})]
|
|
290
291
|
}),
|
|
291
|
-
/* @__PURE__ */
|
|
292
|
+
/* @__PURE__ */ _("h1", {
|
|
292
293
|
className: "mt-4 text-[1.75rem] font-semibold leading-tight tracking-tight sm:text-4xl",
|
|
293
|
-
children: /* @__PURE__ */
|
|
294
|
+
children: /* @__PURE__ */ _("span", { children: d("hero_title") })
|
|
294
295
|
}),
|
|
295
|
-
/* @__PURE__ */
|
|
296
|
+
/* @__PURE__ */ _("p", {
|
|
296
297
|
className: "mt-3 text-sm text-slate-700 sm:text-base",
|
|
297
|
-
children: /* @__PURE__ */
|
|
298
|
+
children: /* @__PURE__ */ _("span", { children: d("hero_description") })
|
|
298
299
|
}),
|
|
299
|
-
/* @__PURE__ */
|
|
300
|
-
className:
|
|
301
|
-
children: /* @__PURE__ */
|
|
302
|
-
className:
|
|
300
|
+
/* @__PURE__ */ _("div", {
|
|
301
|
+
className: b("mt-6", !X && "rounded-xl border bg-white/70 p-3"),
|
|
302
|
+
children: /* @__PURE__ */ v("ul", {
|
|
303
|
+
className: b("space-y-3", X && "space-y-2"),
|
|
303
304
|
"data-testid": "storefront-home-trust-features",
|
|
304
305
|
children: [
|
|
305
|
-
/* @__PURE__ */
|
|
306
|
+
/* @__PURE__ */ v("li", {
|
|
306
307
|
className: "flex items-start gap-3",
|
|
307
308
|
"data-testid": "storefront-secure-payment-notice",
|
|
308
|
-
children: [/* @__PURE__ */
|
|
309
|
+
children: [/* @__PURE__ */ _(Ge, {
|
|
309
310
|
className: "mt-0.5 h-5 w-5 text-success",
|
|
310
311
|
"aria-hidden": "true"
|
|
311
|
-
}), /* @__PURE__ */
|
|
312
|
+
}), /* @__PURE__ */ v("div", {
|
|
312
313
|
className: "flex min-w-0 flex-col gap-0.5",
|
|
313
|
-
children: [/* @__PURE__ */
|
|
314
|
+
children: [/* @__PURE__ */ _("p", {
|
|
314
315
|
className: "text-sm font-medium text-slate-950",
|
|
315
|
-
children: /* @__PURE__ */
|
|
316
|
-
}), /* @__PURE__ */
|
|
316
|
+
children: /* @__PURE__ */ _("span", { children: d("feature_secure_payment_title") })
|
|
317
|
+
}), /* @__PURE__ */ _("p", {
|
|
317
318
|
className: "text-xs text-slate-600",
|
|
318
|
-
children: /* @__PURE__ */
|
|
319
|
+
children: /* @__PURE__ */ _("span", { children: d("feature_secure_payment_description") })
|
|
319
320
|
})]
|
|
320
321
|
})]
|
|
321
322
|
}),
|
|
322
|
-
/* @__PURE__ */
|
|
323
|
-
policy:
|
|
324
|
-
className:
|
|
323
|
+
/* @__PURE__ */ _(Ne, {
|
|
324
|
+
policy: E.bookingEngine.cancellationPolicy,
|
|
325
|
+
className: b(!X && "border-t border-slate-200/70 pt-3")
|
|
325
326
|
}),
|
|
326
|
-
|
|
327
|
-
className:
|
|
327
|
+
B ? /* @__PURE__ */ v("li", {
|
|
328
|
+
className: b("flex items-start gap-3", !X && "border-t border-slate-200/70 pt-3"),
|
|
328
329
|
"data-testid": "storefront-delivery-notice",
|
|
329
|
-
children: [/* @__PURE__ */
|
|
330
|
+
children: [/* @__PURE__ */ _(Ke, {
|
|
330
331
|
className: "mt-0.5 h-5 w-5 text-slate-900",
|
|
331
332
|
"aria-hidden": "true"
|
|
332
|
-
}), /* @__PURE__ */
|
|
333
|
+
}), /* @__PURE__ */ v("div", {
|
|
333
334
|
className: "flex flex-col gap-0.5",
|
|
334
|
-
children: [/* @__PURE__ */
|
|
335
|
+
children: [/* @__PURE__ */ _("p", {
|
|
335
336
|
className: "text-sm font-medium text-slate-950",
|
|
336
|
-
children: /* @__PURE__ */
|
|
337
|
-
}), /* @__PURE__ */
|
|
337
|
+
children: /* @__PURE__ */ _("span", { children: d("feature_delivery_title") })
|
|
338
|
+
}), /* @__PURE__ */ _("p", {
|
|
338
339
|
className: "text-xs text-slate-600",
|
|
339
|
-
children: /* @__PURE__ */
|
|
340
|
+
children: /* @__PURE__ */ _("span", { children: d("feature_delivery_description") })
|
|
340
341
|
})]
|
|
341
342
|
})]
|
|
342
343
|
}) : null,
|
|
343
|
-
/* @__PURE__ */
|
|
344
|
-
bikes:
|
|
345
|
-
currency:
|
|
346
|
-
fallbackLanguage:
|
|
347
|
-
className:
|
|
344
|
+
/* @__PURE__ */ _(Pe, {
|
|
345
|
+
bikes: F,
|
|
346
|
+
currency: E.bookingEngine.currency,
|
|
347
|
+
fallbackLanguage: A,
|
|
348
|
+
className: b(!X && "border-t border-slate-200/70 pt-3")
|
|
348
349
|
})
|
|
349
350
|
]
|
|
350
351
|
})
|
|
351
352
|
})
|
|
352
353
|
]
|
|
353
|
-
}),
|
|
354
|
-
...
|
|
354
|
+
}), Ut = ({ className: e, showSubmitButton: t = !1, submitButtonClassName: n }) => /* @__PURE__ */ _(le, {
|
|
355
|
+
...Rt,
|
|
355
356
|
labelClassName: qe,
|
|
356
357
|
inputClassName: Je,
|
|
357
|
-
children: /* @__PURE__ */
|
|
358
|
-
/* @__PURE__ */
|
|
358
|
+
children: /* @__PURE__ */ v(g, { children: [
|
|
359
|
+
/* @__PURE__ */ v("div", {
|
|
359
360
|
className: e,
|
|
360
361
|
children: [
|
|
361
|
-
/* @__PURE__ */
|
|
362
|
+
/* @__PURE__ */ _("div", {
|
|
362
363
|
className: "min-w-0",
|
|
363
|
-
children: /* @__PURE__ */
|
|
364
|
+
children: /* @__PURE__ */ _(ue, {})
|
|
364
365
|
}),
|
|
365
|
-
/* @__PURE__ */
|
|
366
|
+
/* @__PURE__ */ _("div", {
|
|
366
367
|
className: "min-w-0",
|
|
367
|
-
children: /* @__PURE__ */
|
|
368
|
+
children: /* @__PURE__ */ _(de, {})
|
|
368
369
|
}),
|
|
369
|
-
/* @__PURE__ */
|
|
370
|
+
/* @__PURE__ */ _("div", {
|
|
370
371
|
className: "min-w-0",
|
|
371
|
-
children: /* @__PURE__ */
|
|
372
|
+
children: /* @__PURE__ */ _(fe, {})
|
|
372
373
|
}),
|
|
373
|
-
/* @__PURE__ */
|
|
374
|
+
/* @__PURE__ */ _("div", {
|
|
374
375
|
className: "min-w-0",
|
|
375
|
-
children: /* @__PURE__ */
|
|
376
|
+
children: /* @__PURE__ */ _(pe, {})
|
|
376
377
|
}),
|
|
377
|
-
t ? /* @__PURE__ */
|
|
378
|
-
buttonRef:
|
|
378
|
+
t ? /* @__PURE__ */ _(Ze, {
|
|
379
|
+
buttonRef: Et,
|
|
379
380
|
className: n,
|
|
380
|
-
label:
|
|
381
|
-
onSubmit:
|
|
381
|
+
label: d("booking_submit"),
|
|
382
|
+
onSubmit: Bt
|
|
382
383
|
}) : null
|
|
383
384
|
]
|
|
384
385
|
}),
|
|
385
|
-
/* @__PURE__ */
|
|
386
|
-
/* @__PURE__ */
|
|
386
|
+
/* @__PURE__ */ _(he, { onContinue: zt }),
|
|
387
|
+
/* @__PURE__ */ _(me, {
|
|
387
388
|
className: "mt-2",
|
|
388
389
|
testId: "booking-home-time-slots-status"
|
|
389
390
|
})
|
|
390
391
|
] })
|
|
391
|
-
}),
|
|
392
|
-
open:
|
|
392
|
+
}), Wt = (e) => B ? /* @__PURE__ */ _(ge, {
|
|
393
|
+
open: V === "delivery",
|
|
393
394
|
className: "sm:min-h-[6.75rem]",
|
|
394
395
|
inputClassName: `${Je} bg-white`,
|
|
395
396
|
labelClassName: qe,
|
|
396
|
-
startAddress:
|
|
397
|
-
onStartAddressChange:
|
|
398
|
-
returnAddress:
|
|
399
|
-
onReturnAddressChange:
|
|
397
|
+
startAddress: K,
|
|
398
|
+
onStartAddressChange: wt,
|
|
399
|
+
returnAddress: q,
|
|
400
|
+
onReturnAddressChange: Tt,
|
|
400
401
|
testIdPrefix: e
|
|
401
|
-
}) : null,
|
|
402
|
+
}) : null, Gt = Wt("storefront-home-fulfillment-delivery-address"), Kt = Wt("storefront-home-compact-fulfillment-delivery-address"), qt = /* @__PURE__ */ v(Se, {
|
|
402
403
|
className: "border-slate-200 bg-white/80 shadow-none",
|
|
403
|
-
children: [/* @__PURE__ */
|
|
404
|
+
children: [/* @__PURE__ */ v("div", {
|
|
404
405
|
className: "border-b border-slate-200 px-4 py-4",
|
|
405
|
-
children: [/* @__PURE__ */
|
|
406
|
+
children: [/* @__PURE__ */ _("p", {
|
|
406
407
|
className: "text-sm font-semibold text-slate-950",
|
|
407
|
-
children: /* @__PURE__ */
|
|
408
|
-
}), /* @__PURE__ */
|
|
408
|
+
children: /* @__PURE__ */ _("span", { children: d("booking_title") })
|
|
409
|
+
}), /* @__PURE__ */ _("p", {
|
|
409
410
|
className: "mt-1 text-xs text-slate-600",
|
|
410
|
-
children: /* @__PURE__ */
|
|
411
|
+
children: /* @__PURE__ */ _("span", { children: d("booking_subtitle") })
|
|
411
412
|
})]
|
|
412
|
-
}), /* @__PURE__ */
|
|
413
|
+
}), /* @__PURE__ */ v("div", {
|
|
413
414
|
className: "grid gap-4 px-4 py-4",
|
|
414
415
|
children: [
|
|
415
|
-
/* @__PURE__ */
|
|
416
|
-
value:
|
|
417
|
-
onValueChange:
|
|
418
|
-
pickupAddress:
|
|
419
|
-
deliveryEnabled:
|
|
420
|
-
deliveryDisabledReason:
|
|
421
|
-
startAddress:
|
|
422
|
-
onStartAddressChange:
|
|
423
|
-
endAddress:
|
|
424
|
-
onEndAddressChange:
|
|
416
|
+
/* @__PURE__ */ _(Ie, {
|
|
417
|
+
value: V,
|
|
418
|
+
onValueChange: mt,
|
|
419
|
+
pickupAddress: k,
|
|
420
|
+
deliveryEnabled: B,
|
|
421
|
+
deliveryDisabledReason: ft,
|
|
422
|
+
startAddress: K,
|
|
423
|
+
onStartAddressChange: wt,
|
|
424
|
+
endAddress: q,
|
|
425
|
+
onEndAddressChange: Tt,
|
|
425
426
|
showDeliveryAddressSelector: !1,
|
|
426
427
|
testIdPrefix: "storefront-home-fulfillment"
|
|
427
428
|
}),
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
/* @__PURE__ */
|
|
431
|
-
ref:
|
|
429
|
+
Ut({ className: "grid grid-cols-1 gap-3 md:grid-cols-2 xl:grid-cols-[minmax(0,1fr)_150px_minmax(0,1fr)_150px] xl:items-start" }),
|
|
430
|
+
Gt,
|
|
431
|
+
/* @__PURE__ */ v(ae, {
|
|
432
|
+
ref: Et,
|
|
432
433
|
className: "h-11 w-full justify-self-start gap-2 rounded-xl text-sm font-semibold sm:w-fit",
|
|
433
|
-
disabled: !
|
|
434
|
-
onClick:
|
|
435
|
-
children: [/* @__PURE__ */
|
|
434
|
+
disabled: !Lt,
|
|
435
|
+
onClick: Bt,
|
|
436
|
+
children: [/* @__PURE__ */ _("span", { children: d("booking_submit") }), /* @__PURE__ */ _(x, {
|
|
436
437
|
className: "h-4 w-4",
|
|
437
438
|
"aria-hidden": "true"
|
|
438
439
|
})]
|
|
439
440
|
})
|
|
440
441
|
]
|
|
441
442
|
})]
|
|
442
|
-
}),
|
|
443
|
+
}), Jt = /* @__PURE__ */ _(Se, {
|
|
443
444
|
className: "border-slate-200 bg-white/95 shadow-xl",
|
|
444
|
-
children: /* @__PURE__ */
|
|
445
|
+
children: /* @__PURE__ */ v("div", {
|
|
445
446
|
className: "grid gap-3 p-4",
|
|
446
447
|
children: [
|
|
447
|
-
/* @__PURE__ */
|
|
448
|
-
value:
|
|
449
|
-
onValueChange:
|
|
450
|
-
pickupAddress:
|
|
451
|
-
deliveryEnabled:
|
|
452
|
-
deliveryDisabledReason:
|
|
453
|
-
startAddress:
|
|
454
|
-
onStartAddressChange:
|
|
455
|
-
endAddress:
|
|
456
|
-
onEndAddressChange:
|
|
448
|
+
/* @__PURE__ */ _("div", { children: /* @__PURE__ */ _(Ie, {
|
|
449
|
+
value: V,
|
|
450
|
+
onValueChange: mt,
|
|
451
|
+
pickupAddress: k,
|
|
452
|
+
deliveryEnabled: B,
|
|
453
|
+
deliveryDisabledReason: ft,
|
|
454
|
+
startAddress: K,
|
|
455
|
+
onStartAddressChange: wt,
|
|
456
|
+
endAddress: q,
|
|
457
|
+
onEndAddressChange: Tt,
|
|
457
458
|
showDeliveryAddressSelector: !1,
|
|
458
459
|
testIdPrefix: "storefront-home-compact-fulfillment"
|
|
459
460
|
}) }),
|
|
460
|
-
|
|
461
|
+
Ut({
|
|
461
462
|
className: "grid gap-3 md:grid-cols-2 xl:grid-cols-[minmax(0,1fr)_150px_minmax(0,1fr)_150px_auto] xl:items-end",
|
|
462
463
|
showSubmitButton: !0,
|
|
463
464
|
submitButtonClassName: "h-10 w-full rounded-xl text-sm font-semibold md:w-fit xl:self-end"
|
|
464
465
|
}),
|
|
465
|
-
|
|
466
|
+
Kt
|
|
466
467
|
]
|
|
467
468
|
})
|
|
468
|
-
}),
|
|
469
|
-
className:
|
|
469
|
+
}), $ = (E.content?.galleryImageIds ?? []).map((e) => e.trim()).filter((e) => e.length > 0), Yt = $.map((e) => l(e, w ?? E.storeSlug, 320)).filter((e) => e.length > 0), Xt = [...F, ...ot].flatMap((e) => Array.isArray(e.images) ? e.images : []).filter((e) => typeof e == "string" && e.trim().length > 0).map((e) => e.trim()).slice(0, 12), Zt = Qe(Yt.length > 0 ? Yt : Xt), Qt = $[0] ? l($[0], w ?? E.storeSlug, 1600) : Te, $t = Y ? /* @__PURE__ */ _("style", { children: "\n @keyframes storefront-hero-marquee-up {\n 0% { transform: translateY(0); }\n 100% { transform: translateY(calc(-50% - (var(--storefront-hero-marquee-gap) / 2))); }\n }\n @keyframes storefront-hero-marquee-down {\n 0% { transform: translateY(calc(-50% - (var(--storefront-hero-marquee-gap) / 2))); }\n 100% { transform: translateY(0); }\n }\n .storefront-hero-marquee-track {\n animation: storefront-hero-marquee-up var(--storefront-hero-marquee-duration, 32s) linear infinite;\n will-change: transform;\n }\n .storefront-hero-marquee-track-reverse {\n animation-name: storefront-hero-marquee-down;\n }\n @media (prefers-reduced-motion: reduce) {\n .storefront-hero-marquee-track,\n .storefront-hero-marquee-track-reverse {\n animation: none !important;\n transform: none !important;\n }\n }\n " }) : null, en = (e) => /* @__PURE__ */ _("div", {
|
|
470
|
+
className: b("relative h-full min-h-[340px] overflow-hidden", e),
|
|
470
471
|
style: {
|
|
471
472
|
WebkitMaskImage: "linear-gradient(to bottom, transparent 0%, black 5%, black 95%, transparent 100%)",
|
|
472
473
|
maskImage: "linear-gradient(to bottom, transparent 0%, black 5%, black 95%, transparent 100%)",
|
|
@@ -476,203 +477,203 @@ function D() {
|
|
|
476
477
|
maskSize: "100% 100%"
|
|
477
478
|
},
|
|
478
479
|
"aria-hidden": "true",
|
|
479
|
-
children: /* @__PURE__ */
|
|
480
|
+
children: /* @__PURE__ */ _("div", {
|
|
480
481
|
className: "absolute inset-0 grid grid-cols-2 gap-3 md:grid-cols-3 lg:grid-cols-6",
|
|
481
|
-
children:
|
|
482
|
-
let n =
|
|
483
|
-
return /* @__PURE__ */
|
|
484
|
-
className:
|
|
485
|
-
children: /* @__PURE__ */
|
|
486
|
-
className:
|
|
482
|
+
children: Zt.map((e, t) => {
|
|
483
|
+
let n = Xe[t % Xe.length] ?? 32, r = [...e, ...e];
|
|
484
|
+
return /* @__PURE__ */ _("div", {
|
|
485
|
+
className: b("relative min-h-0 overflow-hidden", t === 2 && "hidden md:block", t >= 3 && "hidden lg:block"),
|
|
486
|
+
children: /* @__PURE__ */ _("div", {
|
|
487
|
+
className: b("storefront-hero-marquee-track flex flex-col gap-[var(--storefront-hero-marquee-gap)]", t % 2 == 1 && "storefront-hero-marquee-track-reverse"),
|
|
487
488
|
style: {
|
|
488
489
|
"--storefront-hero-marquee-duration": `${n}s`,
|
|
489
490
|
"--storefront-hero-marquee-gap": "0.75rem"
|
|
490
491
|
},
|
|
491
|
-
children: r.map((n, r) => /* @__PURE__ */
|
|
492
|
+
children: r.map((n, r) => /* @__PURE__ */ v("div", {
|
|
492
493
|
className: "group relative overflow-hidden rounded-[1.35rem] border border-white/40 bg-transparent",
|
|
493
494
|
style: { aspectRatio: n.aspectRatio },
|
|
494
495
|
children: [
|
|
495
|
-
/* @__PURE__ */
|
|
496
|
-
/* @__PURE__ */
|
|
496
|
+
/* @__PURE__ */ _("div", { className: "absolute inset-0 bg-linear-to-b from-white/22 via-transparent to-transparent" }),
|
|
497
|
+
/* @__PURE__ */ _("img", {
|
|
497
498
|
src: n.src,
|
|
498
499
|
alt: "",
|
|
499
500
|
className: "absolute inset-0 h-full w-full object-cover opacity-90 saturate-[1.05] transition-transform duration-700 group-hover:scale-[1.04]",
|
|
500
501
|
loading: r < e.length ? "eager" : "lazy"
|
|
501
502
|
}),
|
|
502
|
-
/* @__PURE__ */
|
|
503
|
+
/* @__PURE__ */ _("div", { className: "absolute inset-0 bg-linear-to-t from-slate-950/40 via-slate-950/10 to-white/10" })
|
|
503
504
|
]
|
|
504
505
|
}, `hero-marquee-tile-${t}-${r}`))
|
|
505
506
|
})
|
|
506
507
|
}, `hero-marquee-column-${t}`);
|
|
507
508
|
})
|
|
508
509
|
})
|
|
509
|
-
}),
|
|
510
|
+
}), tn = Y ? /* @__PURE__ */ _("div", {
|
|
510
511
|
className: "pointer-events-none absolute inset-0 hidden lg:block",
|
|
511
512
|
"aria-hidden": "true",
|
|
512
|
-
children: /* @__PURE__ */
|
|
513
|
+
children: /* @__PURE__ */ v("div", {
|
|
513
514
|
className: "mx-auto grid h-full max-w-7xl grid-cols-12 gap-8 px-4 sm:px-6",
|
|
514
|
-
children: [/* @__PURE__ */
|
|
515
|
+
children: [/* @__PURE__ */ _("div", { className: "lg:col-span-5" }), /* @__PURE__ */ _("div", {
|
|
515
516
|
className: "lg:col-span-7",
|
|
516
|
-
children:
|
|
517
|
+
children: en()
|
|
517
518
|
})]
|
|
518
519
|
})
|
|
519
|
-
}) : null,
|
|
520
|
+
}) : null, nn = Y ? /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _("div", {
|
|
520
521
|
className: "lg:hidden",
|
|
521
|
-
children:
|
|
522
|
-
}), /* @__PURE__ */
|
|
522
|
+
children: en()
|
|
523
|
+
}), /* @__PURE__ */ _("div", {
|
|
523
524
|
className: "hidden min-h-[510px] lg:block",
|
|
524
525
|
"aria-hidden": "true"
|
|
525
|
-
})] }) : /* @__PURE__ */
|
|
526
|
+
})] }) : /* @__PURE__ */ v("div", {
|
|
526
527
|
className: "relative min-h-[340px] overflow-hidden rounded-3xl border border-slate-200 bg-slate-900 shadow-sm lg:min-h-[510px]",
|
|
527
|
-
children: [/* @__PURE__ */
|
|
528
|
-
src:
|
|
528
|
+
children: [/* @__PURE__ */ _("img", {
|
|
529
|
+
src: Qt,
|
|
529
530
|
alt: "",
|
|
530
531
|
className: "absolute inset-0 h-full w-full object-cover",
|
|
531
532
|
"aria-hidden": "true"
|
|
532
|
-
}), /* @__PURE__ */
|
|
533
|
+
}), /* @__PURE__ */ _("div", {
|
|
533
534
|
className: "absolute inset-0 bg-linear-to-t from-slate-900/45 via-slate-900/15 to-transparent",
|
|
534
535
|
"aria-hidden": "true"
|
|
535
536
|
})]
|
|
536
537
|
});
|
|
537
|
-
return /* @__PURE__ */
|
|
538
|
-
/* @__PURE__ */
|
|
539
|
-
open:
|
|
540
|
-
seasons:
|
|
541
|
-
exceptions:
|
|
542
|
-
mapsHref:
|
|
543
|
-
onOpenChange:
|
|
538
|
+
return /* @__PURE__ */ v(g, { children: [
|
|
539
|
+
/* @__PURE__ */ _(Oe, {
|
|
540
|
+
open: ct,
|
|
541
|
+
seasons: rt,
|
|
542
|
+
exceptions: it,
|
|
543
|
+
mapsHref: P,
|
|
544
|
+
onOpenChange: Dt
|
|
544
545
|
}),
|
|
545
|
-
/* @__PURE__ */
|
|
546
|
+
/* @__PURE__ */ v("section", {
|
|
546
547
|
className: "relative overflow-hidden border-b border-slate-200",
|
|
547
548
|
children: [
|
|
548
|
-
/* @__PURE__ */
|
|
549
|
+
/* @__PURE__ */ _("div", {
|
|
549
550
|
className: "absolute inset-0 bg-linear-to-b from-slate-50 to-white",
|
|
550
551
|
"aria-hidden": "true"
|
|
551
552
|
}),
|
|
552
|
-
/* @__PURE__ */
|
|
553
|
+
/* @__PURE__ */ _("div", {
|
|
553
554
|
className: "absolute inset-0 opacity-[0.07]",
|
|
554
555
|
style: { backgroundImage: "radial-gradient(circle at 20% 20%, rgba(15, 23, 42, 0.9) 0px, transparent 55%), radial-gradient(circle at 80% 35%, rgba(14, 116, 144, 0.9) 0px, transparent 55%), radial-gradient(circle at 55% 85%, rgba(99, 102, 241, 0.9) 0px, transparent 55%)" },
|
|
555
556
|
"aria-hidden": "true"
|
|
556
557
|
}),
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
558
|
+
$t,
|
|
559
|
+
tn,
|
|
560
|
+
X ? /* @__PURE__ */ v("div", {
|
|
560
561
|
className: "relative mx-auto grid max-w-7xl gap-x-8 px-4 py-10 sm:px-6 lg:grid-cols-12 lg:py-14",
|
|
561
562
|
children: [
|
|
562
|
-
/* @__PURE__ */
|
|
563
|
+
/* @__PURE__ */ _("div", {
|
|
563
564
|
className: "min-w-0 lg:col-span-5 lg:col-start-1 lg:row-start-1",
|
|
564
|
-
children:
|
|
565
|
+
children: Ht
|
|
565
566
|
}),
|
|
566
|
-
/* @__PURE__ */
|
|
567
|
-
className:
|
|
568
|
-
children:
|
|
567
|
+
/* @__PURE__ */ _("div", {
|
|
568
|
+
className: b("mt-8 min-w-0 lg:col-span-7 lg:col-start-6 lg:row-span-2 lg:row-start-1 lg:mt-0", !Y && "lg:pt-4"),
|
|
569
|
+
children: nn
|
|
569
570
|
}),
|
|
570
|
-
/* @__PURE__ */
|
|
571
|
+
/* @__PURE__ */ _("div", {
|
|
571
572
|
className: "relative z-20 mt-4 lg:col-span-5 lg:col-start-1 lg:row-start-2 lg:mt-7",
|
|
572
573
|
"data-testid": "storefront-home-booking-bar",
|
|
573
|
-
children: /* @__PURE__ */
|
|
574
|
+
children: /* @__PURE__ */ _("div", {
|
|
574
575
|
className: "lg:w-[calc(100%+24rem)] lg:max-w-none",
|
|
575
|
-
children:
|
|
576
|
+
children: Jt
|
|
576
577
|
})
|
|
577
578
|
})
|
|
578
579
|
]
|
|
579
|
-
}) : /* @__PURE__ */
|
|
580
|
+
}) : /* @__PURE__ */ v("div", {
|
|
580
581
|
className: "relative mx-auto grid max-w-7xl gap-8 px-4 py-10 sm:px-6 lg:grid-cols-12 lg:items-center lg:py-14",
|
|
581
|
-
children: [/* @__PURE__ */
|
|
582
|
+
children: [/* @__PURE__ */ _("div", {
|
|
582
583
|
className: "min-w-0 lg:col-span-5",
|
|
583
|
-
children:
|
|
584
|
-
}), /* @__PURE__ */
|
|
584
|
+
children: Ht
|
|
585
|
+
}), /* @__PURE__ */ _("div", {
|
|
585
586
|
className: "min-w-0 lg:col-span-7",
|
|
586
|
-
children:
|
|
587
|
+
children: qt
|
|
587
588
|
})]
|
|
588
589
|
})
|
|
589
590
|
]
|
|
590
591
|
}),
|
|
591
|
-
/* @__PURE__ */
|
|
592
|
+
/* @__PURE__ */ v("section", {
|
|
592
593
|
id: "featured",
|
|
593
594
|
className: "mx-auto max-w-7xl scroll-mt-16 px-4 py-10 sm:scroll-mt-20 sm:px-6",
|
|
594
|
-
children: [/* @__PURE__ */
|
|
595
|
+
children: [/* @__PURE__ */ v("div", {
|
|
595
596
|
className: "flex items-center justify-between gap-3",
|
|
596
|
-
children: [/* @__PURE__ */
|
|
597
|
+
children: [/* @__PURE__ */ v("div", {
|
|
597
598
|
className: "space-y-1",
|
|
598
|
-
children: [/* @__PURE__ */
|
|
599
|
+
children: [/* @__PURE__ */ _("h2", {
|
|
599
600
|
className: "text-xl font-semibold tracking-tight",
|
|
600
|
-
children: /* @__PURE__ */
|
|
601
|
-
}), /* @__PURE__ */
|
|
601
|
+
children: /* @__PURE__ */ _("span", { children: d("featured_title") })
|
|
602
|
+
}), /* @__PURE__ */ _("p", {
|
|
602
603
|
className: "text-sm text-slate-600",
|
|
603
|
-
children: /* @__PURE__ */
|
|
604
|
+
children: /* @__PURE__ */ _("span", { children: d("featured_description") })
|
|
604
605
|
})]
|
|
605
|
-
}), /* @__PURE__ */
|
|
606
|
+
}), /* @__PURE__ */ v(y, {
|
|
606
607
|
className: "hidden items-center gap-2 text-sm font-medium text-slate-700 hover:text-slate-950 sm:inline-flex",
|
|
607
|
-
to: `/${
|
|
608
|
-
children: [/* @__PURE__ */
|
|
608
|
+
to: `/${w ?? ""}/booking${It}`,
|
|
609
|
+
children: [/* @__PURE__ */ _("span", { children: d("featured_view_all") }), /* @__PURE__ */ _(x, {
|
|
609
610
|
className: "h-4 w-4",
|
|
610
611
|
"aria-hidden": "true"
|
|
611
612
|
})]
|
|
612
613
|
})]
|
|
613
|
-
}), /* @__PURE__ */
|
|
614
|
+
}), /* @__PURE__ */ _("div", {
|
|
614
615
|
className: "mt-6 grid gap-4 sm:grid-cols-2 lg:grid-cols-4",
|
|
615
|
-
children:
|
|
616
|
-
let t = e.id, n = e.slug, r = s(e.name,
|
|
617
|
-
return /* @__PURE__ */
|
|
616
|
+
children: At.map((e) => {
|
|
617
|
+
let t = e.id, n = e.slug, r = s(e.name, S.language, A), i = s(e.description, S.language, A), a = typeof e.images?.[0] == "string" ? e.images[0].trim() : "", o = Ee(e.primaryImageStyle), c = ee(e.availabilityStatus), l = Vt(n);
|
|
618
|
+
return /* @__PURE__ */ v("div", {
|
|
618
619
|
className: "group flex h-full min-w-0 flex-col gap-2 rounded-xl border border-slate-200 bg-white p-3 text-left shadow-sm transition hover:border-slate-400",
|
|
619
620
|
children: [
|
|
620
|
-
/* @__PURE__ */
|
|
621
|
-
to:
|
|
622
|
-
state:
|
|
621
|
+
/* @__PURE__ */ _(y, {
|
|
622
|
+
to: l,
|
|
623
|
+
state: Q,
|
|
623
624
|
className: "block",
|
|
624
|
-
children: /* @__PURE__ */
|
|
625
|
-
className:
|
|
625
|
+
children: /* @__PURE__ */ _("span", {
|
|
626
|
+
className: b("relative block aspect-[1618/1000] overflow-hidden rounded-xl", o.className),
|
|
626
627
|
style: o.style,
|
|
627
|
-
children: a ? /* @__PURE__ */
|
|
628
|
+
children: a ? /* @__PURE__ */ _("img", {
|
|
628
629
|
src: a,
|
|
629
630
|
alt: r,
|
|
630
631
|
className: "absolute inset-0 h-full w-full object-contain p-1",
|
|
631
632
|
loading: "lazy"
|
|
632
|
-
}) : /* @__PURE__ */
|
|
633
|
+
}) : /* @__PURE__ */ _("span", {
|
|
633
634
|
className: "absolute inset-0 flex items-center justify-center text-slate-400",
|
|
634
|
-
children: /* @__PURE__ */
|
|
635
|
+
children: /* @__PURE__ */ _(He, {
|
|
635
636
|
className: "h-8 w-8",
|
|
636
637
|
"aria-hidden": "true"
|
|
637
638
|
})
|
|
638
639
|
})
|
|
639
640
|
})
|
|
640
641
|
}),
|
|
641
|
-
/* @__PURE__ */
|
|
642
|
+
/* @__PURE__ */ v("span", {
|
|
642
643
|
className: "flex flex-1 flex-col gap-1",
|
|
643
644
|
children: [
|
|
644
|
-
/* @__PURE__ */
|
|
645
|
-
to:
|
|
646
|
-
state:
|
|
645
|
+
/* @__PURE__ */ _(y, {
|
|
646
|
+
to: l,
|
|
647
|
+
state: Q,
|
|
647
648
|
className: "text-sm font-semibold text-slate-950 hover:text-slate-700",
|
|
648
|
-
children: /* @__PURE__ */
|
|
649
|
+
children: /* @__PURE__ */ _("span", { children: r })
|
|
649
650
|
}),
|
|
650
|
-
/* @__PURE__ */
|
|
651
|
+
/* @__PURE__ */ _(we, {
|
|
651
652
|
prices: e.prices,
|
|
652
653
|
className: "self-start"
|
|
653
654
|
}),
|
|
654
|
-
/* @__PURE__ */
|
|
655
|
+
/* @__PURE__ */ _("span", {
|
|
655
656
|
className: "line-clamp-2 text-xs text-slate-600",
|
|
656
657
|
children: i
|
|
657
658
|
})
|
|
658
659
|
]
|
|
659
660
|
}),
|
|
660
|
-
/* @__PURE__ */
|
|
661
|
+
/* @__PURE__ */ v("span", {
|
|
661
662
|
className: "flex flex-wrap items-center gap-x-2 gap-y-1",
|
|
662
663
|
children: [
|
|
663
|
-
/* @__PURE__ */
|
|
664
|
-
variant:
|
|
665
|
-
children: /* @__PURE__ */
|
|
664
|
+
/* @__PURE__ */ _(u, {
|
|
665
|
+
variant: c.variant,
|
|
666
|
+
children: /* @__PURE__ */ _("span", { children: d(c.labelKey) })
|
|
666
667
|
}),
|
|
667
|
-
/* @__PURE__ */
|
|
668
|
+
/* @__PURE__ */ _("span", {
|
|
668
669
|
className: "text-slate-400",
|
|
669
670
|
children: "·"
|
|
670
671
|
}),
|
|
671
|
-
/* @__PURE__ */
|
|
672
|
-
to:
|
|
673
|
-
state:
|
|
672
|
+
/* @__PURE__ */ _(y, {
|
|
673
|
+
to: l,
|
|
674
|
+
state: Q,
|
|
674
675
|
className: "text-xs font-medium text-slate-700 hover:text-slate-950",
|
|
675
|
-
children: /* @__PURE__ */
|
|
676
|
+
children: /* @__PURE__ */ _("span", { children: d("product_details_link") })
|
|
676
677
|
})
|
|
677
678
|
]
|
|
678
679
|
})
|
|
@@ -681,92 +682,99 @@ function D() {
|
|
|
681
682
|
})
|
|
682
683
|
})]
|
|
683
684
|
}),
|
|
684
|
-
/* @__PURE__ */
|
|
685
|
+
/* @__PURE__ */ _("section", {
|
|
685
686
|
id: "products",
|
|
686
687
|
className: "border-t bg-slate-50/60 scroll-mt-16 sm:scroll-mt-20",
|
|
687
|
-
children: /* @__PURE__ */
|
|
688
|
+
children: /* @__PURE__ */ v("div", {
|
|
688
689
|
className: "mx-auto max-w-7xl px-4 py-10 sm:px-6",
|
|
689
|
-
children: [/* @__PURE__ */
|
|
690
|
+
children: [/* @__PURE__ */ _("div", {
|
|
690
691
|
className: "flex flex-col gap-3 sm:flex-row sm:items-end sm:justify-between",
|
|
691
|
-
children: /* @__PURE__ */
|
|
692
|
+
children: /* @__PURE__ */ v("div", {
|
|
692
693
|
className: "space-y-1",
|
|
693
|
-
children: [/* @__PURE__ */
|
|
694
|
+
children: [/* @__PURE__ */ _("h2", {
|
|
694
695
|
className: "text-xl font-semibold tracking-tight",
|
|
695
|
-
children: /* @__PURE__ */
|
|
696
|
-
}), /* @__PURE__ */
|
|
696
|
+
children: /* @__PURE__ */ _("span", { children: d("products_title") })
|
|
697
|
+
}), /* @__PURE__ */ _("p", {
|
|
697
698
|
className: "text-sm text-slate-600",
|
|
698
|
-
children: /* @__PURE__ */
|
|
699
|
+
children: /* @__PURE__ */ _("span", { children: d("products_description") })
|
|
699
700
|
})]
|
|
700
701
|
})
|
|
701
|
-
}), /* @__PURE__ */
|
|
702
|
+
}), /* @__PURE__ */ _("div", {
|
|
702
703
|
className: "mt-6 grid gap-4 md:grid-cols-2",
|
|
703
|
-
children:
|
|
704
|
+
children: F.map((e) => /* @__PURE__ */ _(De, {
|
|
704
705
|
bike: e,
|
|
705
|
-
detailsPath:
|
|
706
|
-
productDetailsLinkState:
|
|
707
|
-
fallbackLanguage:
|
|
708
|
-
onAction:
|
|
706
|
+
detailsPath: Vt(e.slug),
|
|
707
|
+
productDetailsLinkState: Q,
|
|
708
|
+
fallbackLanguage: A,
|
|
709
|
+
onAction: Bt
|
|
709
710
|
}, e.id))
|
|
710
711
|
})]
|
|
711
712
|
})
|
|
712
713
|
}),
|
|
713
|
-
/* @__PURE__ */
|
|
714
|
+
/* @__PURE__ */ v("section", {
|
|
714
715
|
className: "mx-auto max-w-7xl px-4 py-10 sm:px-6",
|
|
715
|
-
children: [/* @__PURE__ */
|
|
716
|
+
children: [/* @__PURE__ */ v("div", {
|
|
716
717
|
className: "flex flex-col gap-2 sm:flex-row sm:items-end sm:justify-between",
|
|
717
|
-
children: /* @__PURE__ */
|
|
718
|
+
children: [/* @__PURE__ */ v("div", {
|
|
718
719
|
className: "space-y-1",
|
|
719
|
-
children: [/* @__PURE__ */
|
|
720
|
+
children: [/* @__PURE__ */ _("h2", {
|
|
720
721
|
className: "text-xl font-semibold tracking-tight",
|
|
721
|
-
children: /* @__PURE__ */
|
|
722
|
-
}), /* @__PURE__ */
|
|
722
|
+
children: /* @__PURE__ */ _("span", { children: d("accessories_title") })
|
|
723
|
+
}), /* @__PURE__ */ _("p", {
|
|
723
724
|
className: "text-sm text-slate-600",
|
|
724
|
-
children: /* @__PURE__ */
|
|
725
|
+
children: /* @__PURE__ */ _("span", { children: d("accessories_description") })
|
|
725
726
|
})]
|
|
726
|
-
})
|
|
727
|
-
|
|
727
|
+
}), /* @__PURE__ */ v(y, {
|
|
728
|
+
className: "hidden items-center gap-2 text-sm font-medium text-slate-700 hover:text-slate-950 sm:inline-flex",
|
|
729
|
+
to: `/${w ?? ""}/booking${It}`,
|
|
730
|
+
children: [/* @__PURE__ */ _("span", { children: d("accessories_view_all") }), /* @__PURE__ */ _(x, {
|
|
731
|
+
className: "h-4 w-4",
|
|
732
|
+
"aria-hidden": "true"
|
|
733
|
+
})]
|
|
734
|
+
})]
|
|
735
|
+
}), /* @__PURE__ */ _("div", {
|
|
728
736
|
className: "mt-6 grid gap-4 sm:grid-cols-2 lg:grid-cols-4",
|
|
729
|
-
children:
|
|
730
|
-
let t = s(e.name,
|
|
731
|
-
return /* @__PURE__ */
|
|
737
|
+
children: ot.slice(0, 4).map((e) => {
|
|
738
|
+
let t = s(e.name, S.language, A), n = s(e.description, S.language, A), r = s(e.warning, S.language, A), i = typeof e.images?.[0] == "string" ? e.images[0].trim() : "", a = Ee(e.primaryImageStyle);
|
|
739
|
+
return /* @__PURE__ */ v("div", {
|
|
732
740
|
className: "flex h-full min-w-0 flex-col gap-2 rounded-xl border border-slate-200 bg-white p-3 shadow-sm",
|
|
733
741
|
children: [
|
|
734
|
-
/* @__PURE__ */
|
|
735
|
-
className:
|
|
742
|
+
/* @__PURE__ */ _("div", {
|
|
743
|
+
className: b("relative aspect-[1618/1000] overflow-hidden rounded-xl", a.className),
|
|
736
744
|
style: a.style,
|
|
737
|
-
children: i ? /* @__PURE__ */
|
|
745
|
+
children: i ? /* @__PURE__ */ _("img", {
|
|
738
746
|
src: i,
|
|
739
747
|
alt: t,
|
|
740
748
|
className: "absolute inset-0 h-full w-full object-contain p-1",
|
|
741
749
|
loading: "lazy"
|
|
742
|
-
}) : /* @__PURE__ */
|
|
750
|
+
}) : /* @__PURE__ */ _("div", {
|
|
743
751
|
className: "absolute inset-0 flex items-center justify-center text-slate-400",
|
|
744
|
-
children: /* @__PURE__ */
|
|
752
|
+
children: /* @__PURE__ */ _(He, {
|
|
745
753
|
className: "h-8 w-8",
|
|
746
754
|
"aria-hidden": "true"
|
|
747
755
|
})
|
|
748
756
|
})
|
|
749
757
|
}),
|
|
750
|
-
/* @__PURE__ */
|
|
758
|
+
/* @__PURE__ */ v("div", {
|
|
751
759
|
className: "flex flex-1 flex-col gap-1",
|
|
752
760
|
children: [
|
|
753
|
-
/* @__PURE__ */
|
|
761
|
+
/* @__PURE__ */ _("p", {
|
|
754
762
|
className: "text-sm font-semibold text-slate-950",
|
|
755
|
-
children: /* @__PURE__ */
|
|
763
|
+
children: /* @__PURE__ */ _("span", { children: t })
|
|
756
764
|
}),
|
|
757
|
-
/* @__PURE__ */
|
|
765
|
+
/* @__PURE__ */ _("p", {
|
|
758
766
|
className: "line-clamp-2 text-xs text-slate-600",
|
|
759
|
-
children: /* @__PURE__ */
|
|
767
|
+
children: /* @__PURE__ */ _("span", { children: n })
|
|
760
768
|
}),
|
|
761
|
-
/* @__PURE__ */
|
|
769
|
+
/* @__PURE__ */ _(Ce, {
|
|
762
770
|
warning: r,
|
|
763
771
|
className: "mt-1"
|
|
764
772
|
})
|
|
765
773
|
]
|
|
766
774
|
}),
|
|
767
|
-
/* @__PURE__ */
|
|
775
|
+
/* @__PURE__ */ _("div", {
|
|
768
776
|
className: "flex items-center justify-between gap-2",
|
|
769
|
-
children: /* @__PURE__ */
|
|
777
|
+
children: /* @__PURE__ */ _(we, {
|
|
770
778
|
prices: e.prices,
|
|
771
779
|
openOnHover: !1
|
|
772
780
|
})
|
|
@@ -776,11 +784,12 @@ function D() {
|
|
|
776
784
|
})
|
|
777
785
|
})]
|
|
778
786
|
}),
|
|
779
|
-
/* @__PURE__ */
|
|
780
|
-
/* @__PURE__ */
|
|
781
|
-
/* @__PURE__ */
|
|
782
|
-
/* @__PURE__ */
|
|
787
|
+
/* @__PURE__ */ _(be, {}),
|
|
788
|
+
/* @__PURE__ */ _(xe, {}),
|
|
789
|
+
/* @__PURE__ */ _(ve, {}),
|
|
790
|
+
/* @__PURE__ */ _(ye, {}),
|
|
791
|
+
/* @__PURE__ */ _(_e, { storeSlug: w ?? "" })
|
|
783
792
|
] });
|
|
784
793
|
}
|
|
785
794
|
//#endregion
|
|
786
|
-
export {
|
|
795
|
+
export { k as default };
|