@shopito/design-system-fe 0.1.6 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Header/Header.d.ts.map +1 -1
- package/dist/common/Input/Input.d.ts +0 -1
- package/dist/common/Input/Input.d.ts.map +1 -1
- package/dist/common/QuantityInput/QuantityInput.d.ts +18 -0
- package/dist/common/QuantityInput/QuantityInput.d.ts.map +1 -0
- package/dist/common/QuantityInput/index.d.ts +3 -0
- package/dist/common/QuantityInput/index.d.ts.map +1 -0
- package/dist/common/Select/Select.d.ts +0 -1
- package/dist/common/Select/Select.d.ts.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +602 -495
- package/dist/index.js.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import { forwardRef as e, useCallback as t, useEffect as n,
|
|
2
|
-
import { Fragment as
|
|
3
|
-
import { createPortal as
|
|
1
|
+
import { forwardRef as e, useCallback as t, useEffect as n, useId as r, useRef as i, useState as a } from "react";
|
|
2
|
+
import { Fragment as o, jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
3
|
+
import { createPortal as l } from "react-dom";
|
|
4
4
|
//#region \0rolldown/runtime.js
|
|
5
|
-
var
|
|
6
|
-
if (t && typeof t == "object" || typeof t == "function") for (var i =
|
|
5
|
+
var u = Object.create, d = Object.defineProperty, f = Object.getOwnPropertyDescriptor, p = Object.getOwnPropertyNames, m = Object.getPrototypeOf, h = Object.prototype.hasOwnProperty, g = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), e = null), t.exports), _ = (e, t, n, r) => {
|
|
6
|
+
if (t && typeof t == "object" || typeof t == "function") for (var i = p(t), a = 0, o = i.length, s; a < o; a++) s = i[a], !h.call(e, s) && s !== n && d(e, s, {
|
|
7
7
|
get: ((e) => t[e]).bind(null, s),
|
|
8
|
-
enumerable: !(r =
|
|
8
|
+
enumerable: !(r = f(t, s)) || r.enumerable
|
|
9
9
|
});
|
|
10
10
|
return e;
|
|
11
|
-
},
|
|
11
|
+
}, v = (e, t, n) => (n = e == null ? {} : u(m(e)), _(t || !e || !e.__esModule ? d(n, "default", {
|
|
12
12
|
value: e,
|
|
13
13
|
enumerable: !0
|
|
14
|
-
}) : n, e)),
|
|
14
|
+
}) : n, e)), y = ({ children: e }) => /* @__PURE__ */ s("div", {
|
|
15
15
|
className: "container",
|
|
16
16
|
children: e
|
|
17
|
-
}),
|
|
17
|
+
}), b = ({ children: e }) => /* @__PURE__ */ s("main", {
|
|
18
18
|
className: "main",
|
|
19
19
|
children: e
|
|
20
|
-
}),
|
|
20
|
+
}), x = /* @__PURE__ */ v((/* @__PURE__ */ g(((e, t) => {
|
|
21
21
|
(function() {
|
|
22
22
|
var e = {}.hasOwnProperty;
|
|
23
23
|
function n() {
|
|
@@ -43,137 +43,137 @@ var l = Object.create, u = Object.defineProperty, d = Object.getOwnPropertyDescr
|
|
|
43
43
|
return n;
|
|
44
44
|
}) : window.classNames = n;
|
|
45
45
|
})();
|
|
46
|
-
})))(), 1),
|
|
46
|
+
})))(), 1), S = e(({ variant: e = "primary", size: t = "md", loading: n = !1, fullWidth: r = !1, disabled: i, children: a, className: o = "", ...l }, u) => /* @__PURE__ */ c("button", {
|
|
47
47
|
ref: u,
|
|
48
48
|
disabled: i || n,
|
|
49
|
-
className: (0,
|
|
49
|
+
className: (0, x.default)("btn", e && `btn-${e}`, t && `btn-${t}`, r && "w-full", o),
|
|
50
50
|
...l,
|
|
51
|
-
children: [n && /* @__PURE__ */
|
|
51
|
+
children: [n && /* @__PURE__ */ c("svg", {
|
|
52
52
|
className: "animate-spin h-4 w-4 shrink-0",
|
|
53
53
|
xmlns: "http://www.w3.org/2000/svg",
|
|
54
54
|
fill: "none",
|
|
55
55
|
viewBox: "0 0 24 24",
|
|
56
|
-
children: [/* @__PURE__ */
|
|
56
|
+
children: [/* @__PURE__ */ s("circle", {
|
|
57
57
|
className: "opacity-25",
|
|
58
58
|
cx: "12",
|
|
59
59
|
cy: "12",
|
|
60
60
|
r: "10",
|
|
61
61
|
stroke: "currentColor",
|
|
62
62
|
strokeWidth: "4"
|
|
63
|
-
}), /* @__PURE__ */
|
|
63
|
+
}), /* @__PURE__ */ s("path", {
|
|
64
64
|
className: "opacity-75",
|
|
65
65
|
fill: "currentColor",
|
|
66
66
|
d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"
|
|
67
67
|
})]
|
|
68
68
|
}), a]
|
|
69
69
|
}));
|
|
70
|
-
|
|
70
|
+
S.displayName = "Button";
|
|
71
71
|
//#endregion
|
|
72
72
|
//#region src/components/common/LoadingSpin/LoadingSpin.tsx
|
|
73
|
-
var
|
|
74
|
-
className: (0,
|
|
73
|
+
var C = ({ size: e = "md" }) => /* @__PURE__ */ c("svg", {
|
|
74
|
+
className: (0, x.default)("loading-spin", `loading-spin-${e}`),
|
|
75
75
|
xmlns: "http://www.w3.org/2000/svg",
|
|
76
76
|
fill: "none",
|
|
77
77
|
viewBox: "0 0 24 24",
|
|
78
|
-
children: [/* @__PURE__ */
|
|
78
|
+
children: [/* @__PURE__ */ s("circle", {
|
|
79
79
|
className: "opacity-25",
|
|
80
80
|
cx: "12",
|
|
81
81
|
cy: "12",
|
|
82
82
|
r: "10",
|
|
83
83
|
stroke: "currentColor",
|
|
84
84
|
strokeWidth: "4"
|
|
85
|
-
}), /* @__PURE__ */
|
|
85
|
+
}), /* @__PURE__ */ s("path", {
|
|
86
86
|
className: "opacity-75",
|
|
87
87
|
fill: "currentColor",
|
|
88
88
|
d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"
|
|
89
89
|
})]
|
|
90
|
-
}),
|
|
90
|
+
}), w = e(({ icon: e, label: t, variant: n = "ghost", size: r = "md", loading: i = !1, disabled: a, className: o = "", ...c }, l) => /* @__PURE__ */ s("button", {
|
|
91
91
|
ref: l,
|
|
92
92
|
disabled: a || i,
|
|
93
93
|
"aria-label": t,
|
|
94
94
|
title: t,
|
|
95
|
-
className: (0,
|
|
95
|
+
className: (0, x.default)("icon-button", `icon-button-${n}`, `icon-button-${r}`, o),
|
|
96
96
|
...c,
|
|
97
|
-
children: i ? /* @__PURE__ */
|
|
97
|
+
children: i ? /* @__PURE__ */ s(C, { size: r }) : e
|
|
98
98
|
}));
|
|
99
|
-
|
|
99
|
+
w.displayName = "IconButton";
|
|
100
100
|
//#endregion
|
|
101
101
|
//#region src/components/common/Input/Input.tsx
|
|
102
|
-
var
|
|
103
|
-
let
|
|
104
|
-
return /* @__PURE__ */
|
|
105
|
-
className:
|
|
102
|
+
var T = e(({ label: e, error: t, hint: n, leftIcon: r, rightIcon: i, className: a = "", id: o, ...l }, u) => {
|
|
103
|
+
let d = o ?? e?.toLowerCase().replace(/\s+/g, "-");
|
|
104
|
+
return /* @__PURE__ */ c("div", {
|
|
105
|
+
className: "w-full",
|
|
106
106
|
children: [
|
|
107
|
-
e && /* @__PURE__ */
|
|
108
|
-
htmlFor:
|
|
107
|
+
e && /* @__PURE__ */ s("label", {
|
|
108
|
+
htmlFor: d,
|
|
109
109
|
className: "input-label",
|
|
110
110
|
children: e
|
|
111
111
|
}),
|
|
112
|
-
/* @__PURE__ */
|
|
112
|
+
/* @__PURE__ */ c("div", {
|
|
113
113
|
className: "relative",
|
|
114
114
|
children: [
|
|
115
|
-
r && /* @__PURE__ */
|
|
115
|
+
r && /* @__PURE__ */ s("span", {
|
|
116
116
|
className: "left-icon",
|
|
117
117
|
children: r
|
|
118
118
|
}),
|
|
119
|
-
/* @__PURE__ */
|
|
120
|
-
ref:
|
|
121
|
-
id:
|
|
122
|
-
className: (0,
|
|
123
|
-
...
|
|
119
|
+
/* @__PURE__ */ s("input", {
|
|
120
|
+
ref: u,
|
|
121
|
+
id: d,
|
|
122
|
+
className: (0, x.default)("input", t && "has-error", !!r && "with-left-icon", !!i && "with-right-icon", "w-full", a),
|
|
123
|
+
...l
|
|
124
124
|
}),
|
|
125
|
-
i && /* @__PURE__ */
|
|
125
|
+
i && /* @__PURE__ */ s("span", {
|
|
126
126
|
className: "right-icon",
|
|
127
127
|
children: i
|
|
128
128
|
})
|
|
129
129
|
]
|
|
130
130
|
}),
|
|
131
|
-
(t || n) && /* @__PURE__ */
|
|
132
|
-
className: (0,
|
|
131
|
+
(t || n) && /* @__PURE__ */ s("p", {
|
|
132
|
+
className: (0, x.default)("helper-text", t && "has-error"),
|
|
133
133
|
children: t ?? n
|
|
134
134
|
})
|
|
135
135
|
]
|
|
136
136
|
});
|
|
137
137
|
});
|
|
138
|
-
|
|
138
|
+
T.displayName = "Input";
|
|
139
139
|
//#endregion
|
|
140
140
|
//#region src/components/common/Select/Select.tsx
|
|
141
|
-
var
|
|
142
|
-
let
|
|
143
|
-
return /* @__PURE__ */
|
|
144
|
-
className: (0,
|
|
141
|
+
var E = e(({ label: e, error: t, hint: n, options: r, placeholder: i, className: a = "", id: o, ...l }, u) => {
|
|
142
|
+
let d = o ?? e?.toLowerCase().replace(/\s+/g, "-");
|
|
143
|
+
return /* @__PURE__ */ c("div", {
|
|
144
|
+
className: (0, x.default)("select-wrapper", "w-full"),
|
|
145
145
|
children: [
|
|
146
|
-
e && /* @__PURE__ */
|
|
147
|
-
htmlFor:
|
|
146
|
+
e && /* @__PURE__ */ s("label", {
|
|
147
|
+
htmlFor: d,
|
|
148
148
|
className: "select-label",
|
|
149
149
|
children: e
|
|
150
150
|
}),
|
|
151
|
-
/* @__PURE__ */
|
|
151
|
+
/* @__PURE__ */ c("div", {
|
|
152
152
|
className: "relative",
|
|
153
|
-
children: [/* @__PURE__ */
|
|
154
|
-
ref:
|
|
155
|
-
id:
|
|
156
|
-
className: (0,
|
|
157
|
-
...
|
|
158
|
-
children: [i && /* @__PURE__ */
|
|
153
|
+
children: [/* @__PURE__ */ c("select", {
|
|
154
|
+
ref: u,
|
|
155
|
+
id: d,
|
|
156
|
+
className: (0, x.default)("select", "w-full", t && "has-error", a),
|
|
157
|
+
...l,
|
|
158
|
+
children: [i && /* @__PURE__ */ s("option", {
|
|
159
159
|
value: "",
|
|
160
160
|
disabled: !0,
|
|
161
161
|
children: i
|
|
162
|
-
}), r.map((e) => /* @__PURE__ */
|
|
162
|
+
}), r.map((e) => /* @__PURE__ */ s("option", {
|
|
163
163
|
value: e.value,
|
|
164
164
|
disabled: e.disabled,
|
|
165
165
|
children: e.label
|
|
166
166
|
}, e.value))]
|
|
167
|
-
}), /* @__PURE__ */
|
|
167
|
+
}), /* @__PURE__ */ s("span", {
|
|
168
168
|
className: "select-chevron-icon",
|
|
169
|
-
children: /* @__PURE__ */
|
|
169
|
+
children: /* @__PURE__ */ s("svg", {
|
|
170
170
|
xmlns: "http://www.w3.org/2000/svg",
|
|
171
171
|
fill: "none",
|
|
172
172
|
viewBox: "0 0 24 24",
|
|
173
173
|
strokeWidth: 2,
|
|
174
174
|
stroke: "currentColor",
|
|
175
175
|
className: "w-4 h-4",
|
|
176
|
-
children: /* @__PURE__ */
|
|
176
|
+
children: /* @__PURE__ */ s("path", {
|
|
177
177
|
strokeLinecap: "round",
|
|
178
178
|
strokeLinejoin: "round",
|
|
179
179
|
d: "M19.5 8.25l-7.5 7.5-7.5-7.5"
|
|
@@ -181,71 +181,71 @@ var T = e(({ label: e, error: t, hint: n, options: r, placeholder: i, fullWidth:
|
|
|
181
181
|
})
|
|
182
182
|
})]
|
|
183
183
|
}),
|
|
184
|
-
(t || n) && /* @__PURE__ */
|
|
185
|
-
className: (0,
|
|
184
|
+
(t || n) && /* @__PURE__ */ s("p", {
|
|
185
|
+
className: (0, x.default)("select-helper", t && "has-error"),
|
|
186
186
|
children: t ?? n
|
|
187
187
|
})
|
|
188
188
|
]
|
|
189
189
|
});
|
|
190
190
|
});
|
|
191
|
-
|
|
191
|
+
E.displayName = "Select";
|
|
192
192
|
//#endregion
|
|
193
193
|
//#region src/components/common/Typography/Heading.tsx
|
|
194
|
-
var
|
|
195
|
-
className: (0,
|
|
194
|
+
var D = ({ as: e, level: t = 1, color: n = "default", className: r = "", children: i, ...a }) => /* @__PURE__ */ s(e ?? `h${t}`, {
|
|
195
|
+
className: (0, x.default)(`text-color-${n}`, `heading-size-${t}`, r),
|
|
196
196
|
...a,
|
|
197
197
|
children: i
|
|
198
|
-
}),
|
|
199
|
-
className: (0,
|
|
198
|
+
}), O = ({ variant: e = "body", color: t = "default", as: n = "p", className: r = "", children: i, ...a }) => /* @__PURE__ */ s(n, {
|
|
199
|
+
className: (0, x.default)(`text-color-${t}`, `text-variant-${e}`, r),
|
|
200
200
|
...a,
|
|
201
201
|
children: i
|
|
202
202
|
});
|
|
203
203
|
//#endregion
|
|
204
204
|
//#region src/components/common/Badge/Badge.tsx
|
|
205
|
-
function
|
|
206
|
-
return /* @__PURE__ */
|
|
207
|
-
className: (0,
|
|
205
|
+
function k({ variant: e = "default", size: t = "md", dot: n = !1, className: r, children: i, ...a }) {
|
|
206
|
+
return /* @__PURE__ */ c("span", {
|
|
207
|
+
className: (0, x.default)("badge", `badge-${e}`, `badge-${t}`, r),
|
|
208
208
|
...a,
|
|
209
|
-
children: [n && /* @__PURE__ */
|
|
209
|
+
children: [n && /* @__PURE__ */ s("span", { className: (0, x.default)("badge-dot", `badge-dot-${e}`) }), i]
|
|
210
210
|
});
|
|
211
211
|
}
|
|
212
212
|
//#endregion
|
|
213
213
|
//#region src/components/common/Card/Card.tsx
|
|
214
|
-
var
|
|
214
|
+
var A = {
|
|
215
215
|
none: "",
|
|
216
216
|
sm: "p-4",
|
|
217
217
|
md: "p-6",
|
|
218
218
|
lg: "p-8"
|
|
219
219
|
};
|
|
220
|
-
function
|
|
221
|
-
return /* @__PURE__ */
|
|
220
|
+
function j({ children: e, padding: t = "md", shadow: n = !0, border: r = !0, className: i = "", ...a }) {
|
|
221
|
+
return /* @__PURE__ */ s("div", {
|
|
222
222
|
className: [
|
|
223
223
|
"bg-white rounded-xl overflow-hidden",
|
|
224
224
|
r ? "border border-gray-200" : "",
|
|
225
225
|
n ? "shadow-sm" : "",
|
|
226
|
-
|
|
226
|
+
A[t],
|
|
227
227
|
i
|
|
228
228
|
].filter(Boolean).join(" "),
|
|
229
229
|
...a,
|
|
230
230
|
children: e
|
|
231
231
|
});
|
|
232
232
|
}
|
|
233
|
-
function
|
|
234
|
-
return /* @__PURE__ */
|
|
233
|
+
function M({ children: e, className: t = "", ...n }) {
|
|
234
|
+
return /* @__PURE__ */ s("div", {
|
|
235
235
|
className: ["px-6 py-4 border-b border-gray-100", t].filter(Boolean).join(" "),
|
|
236
236
|
...n,
|
|
237
237
|
children: e
|
|
238
238
|
});
|
|
239
239
|
}
|
|
240
|
-
function
|
|
241
|
-
return /* @__PURE__ */
|
|
240
|
+
function ee({ children: e, className: t = "", ...n }) {
|
|
241
|
+
return /* @__PURE__ */ s("div", {
|
|
242
242
|
className: ["p-6", t].filter(Boolean).join(" "),
|
|
243
243
|
...n,
|
|
244
244
|
children: e
|
|
245
245
|
});
|
|
246
246
|
}
|
|
247
|
-
function
|
|
248
|
-
return /* @__PURE__ */
|
|
247
|
+
function te({ children: e, className: t = "", ...n }) {
|
|
248
|
+
return /* @__PURE__ */ s("div", {
|
|
249
249
|
className: ["px-6 py-4 border-t border-gray-100 bg-gray-50", t].filter(Boolean).join(" "),
|
|
250
250
|
...n,
|
|
251
251
|
children: e
|
|
@@ -253,13 +253,13 @@ function j({ children: e, className: t = "", ...n }) {
|
|
|
253
253
|
}
|
|
254
254
|
//#endregion
|
|
255
255
|
//#region src/components/common/Spinner/Spinner.tsx
|
|
256
|
-
function
|
|
257
|
-
return /* @__PURE__ */
|
|
256
|
+
function N({ size: e = "md", color: t = "primary", label: n = "Loading…", className: r = "", ...i }) {
|
|
257
|
+
return /* @__PURE__ */ c("span", {
|
|
258
258
|
role: "status",
|
|
259
259
|
"aria-label": n,
|
|
260
|
-
className: (0,
|
|
260
|
+
className: (0, x.default)("spinner-wrapper", r),
|
|
261
261
|
...i,
|
|
262
|
-
children: [/* @__PURE__ */
|
|
262
|
+
children: [/* @__PURE__ */ s("span", { className: (0, x.default)("spinner", `spinner-${e}`, `spinner-${t}`) }), /* @__PURE__ */ s("span", {
|
|
263
263
|
className: "sr-only",
|
|
264
264
|
children: n
|
|
265
265
|
})]
|
|
@@ -267,65 +267,65 @@ function ne({ size: e = "md", color: t = "primary", label: n = "Loading…", cla
|
|
|
267
267
|
}
|
|
268
268
|
//#endregion
|
|
269
269
|
//#region src/components/common/Alert/Alert.tsx
|
|
270
|
-
var
|
|
271
|
-
info: /* @__PURE__ */
|
|
270
|
+
var P = {
|
|
271
|
+
info: /* @__PURE__ */ s("path", {
|
|
272
272
|
strokeLinecap: "round",
|
|
273
273
|
strokeLinejoin: "round",
|
|
274
274
|
d: "M11.25 11.25l.041-.02a.75.75 0 011.063.852l-.708 2.836a.75.75 0 001.063.853l.041-.021M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9-3.75h.008v.008H12V8.25z"
|
|
275
275
|
}),
|
|
276
|
-
success: /* @__PURE__ */
|
|
276
|
+
success: /* @__PURE__ */ s("path", {
|
|
277
277
|
strokeLinecap: "round",
|
|
278
278
|
strokeLinejoin: "round",
|
|
279
279
|
d: "M9 12.75L11.25 15 15 9.75M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
|
|
280
280
|
}),
|
|
281
|
-
warning: /* @__PURE__ */
|
|
281
|
+
warning: /* @__PURE__ */ s("path", {
|
|
282
282
|
strokeLinecap: "round",
|
|
283
283
|
strokeLinejoin: "round",
|
|
284
284
|
d: "M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z"
|
|
285
285
|
}),
|
|
286
|
-
danger: /* @__PURE__ */
|
|
286
|
+
danger: /* @__PURE__ */ s("path", {
|
|
287
287
|
strokeLinecap: "round",
|
|
288
288
|
strokeLinejoin: "round",
|
|
289
289
|
d: "M12 9v3.75m9-.75a9 9 0 11-18 0 9 9 0 0118 0zm-9 3.75h.008v.008H12v-.008z"
|
|
290
290
|
})
|
|
291
291
|
};
|
|
292
|
-
function
|
|
293
|
-
return /* @__PURE__ */
|
|
292
|
+
function ne({ variant: e = "info", title: t, children: n, onClose: r, className: i = "", ...a }) {
|
|
293
|
+
return /* @__PURE__ */ c("div", {
|
|
294
294
|
role: "alert",
|
|
295
|
-
className: (0,
|
|
295
|
+
className: (0, x.default)("alert", `alert-${e}`, "w-full", i),
|
|
296
296
|
...a,
|
|
297
297
|
children: [
|
|
298
|
-
/* @__PURE__ */
|
|
298
|
+
/* @__PURE__ */ s("svg", {
|
|
299
299
|
xmlns: "http://www.w3.org/2000/svg",
|
|
300
300
|
fill: "none",
|
|
301
301
|
viewBox: "0 0 24 24",
|
|
302
302
|
strokeWidth: 1.5,
|
|
303
303
|
stroke: "currentColor",
|
|
304
|
-
className: (0,
|
|
305
|
-
children:
|
|
304
|
+
className: (0, x.default)("alert-icon", `alert-icon-${e}`),
|
|
305
|
+
children: P[e]
|
|
306
306
|
}),
|
|
307
|
-
/* @__PURE__ */
|
|
307
|
+
/* @__PURE__ */ c("div", {
|
|
308
308
|
className: "flex-1 min-w-0",
|
|
309
|
-
children: [t && /* @__PURE__ */
|
|
309
|
+
children: [t && /* @__PURE__ */ s("p", {
|
|
310
310
|
className: "alert-title",
|
|
311
311
|
children: t
|
|
312
|
-
}), /* @__PURE__ */
|
|
312
|
+
}), /* @__PURE__ */ s("div", {
|
|
313
313
|
className: "alert-text",
|
|
314
314
|
children: n
|
|
315
315
|
})]
|
|
316
316
|
}),
|
|
317
|
-
r && /* @__PURE__ */
|
|
317
|
+
r && /* @__PURE__ */ s("button", {
|
|
318
318
|
onClick: r,
|
|
319
319
|
className: "alert-close-btn",
|
|
320
320
|
"aria-label": "Close",
|
|
321
|
-
children: /* @__PURE__ */
|
|
321
|
+
children: /* @__PURE__ */ s("svg", {
|
|
322
322
|
xmlns: "http://www.w3.org/2000/svg",
|
|
323
323
|
fill: "none",
|
|
324
324
|
viewBox: "0 0 24 24",
|
|
325
325
|
strokeWidth: 1.5,
|
|
326
326
|
stroke: "currentColor",
|
|
327
327
|
className: "w-4 h-4",
|
|
328
|
-
children: /* @__PURE__ */
|
|
328
|
+
children: /* @__PURE__ */ s("path", {
|
|
329
329
|
strokeLinecap: "round",
|
|
330
330
|
strokeLinejoin: "round",
|
|
331
331
|
d: "M6 18L18 6M6 6l12 12"
|
|
@@ -337,15 +337,15 @@ function M({ variant: e = "info", title: t, children: n, onClose: r, className:
|
|
|
337
337
|
}
|
|
338
338
|
//#endregion
|
|
339
339
|
//#region src/components/common/Modal/Modal.tsx
|
|
340
|
-
var
|
|
340
|
+
var re = {
|
|
341
341
|
sm: "max-w-sm",
|
|
342
342
|
md: "max-w-md",
|
|
343
343
|
lg: "max-w-lg",
|
|
344
344
|
xl: "max-w-xl",
|
|
345
345
|
full: "max-w-full mx-4"
|
|
346
346
|
};
|
|
347
|
-
function
|
|
348
|
-
let f =
|
|
347
|
+
function F({ open: e, onClose: t, title: r, children: a, footer: o, size: u = "md", closeOnBackdrop: d = !0 }) {
|
|
348
|
+
let f = i(null);
|
|
349
349
|
return n(() => {
|
|
350
350
|
if (!e) return;
|
|
351
351
|
let t = document.body.style.overflow;
|
|
@@ -358,36 +358,36 @@ function P({ open: e, onClose: t, title: i, children: a, footer: l, size: u = "m
|
|
|
358
358
|
e.key === "Escape" && t();
|
|
359
359
|
};
|
|
360
360
|
return document.addEventListener("keydown", n), () => document.removeEventListener("keydown", n);
|
|
361
|
-
}, [e, t]), e ?
|
|
361
|
+
}, [e, t]), e ? l(/* @__PURE__ */ s("div", {
|
|
362
362
|
ref: f,
|
|
363
363
|
className: "fixed inset-0 z-50 flex items-center justify-center p-4 bg-black/50 backdrop-blur-sm",
|
|
364
364
|
onClick: (e) => {
|
|
365
365
|
d && e.target === f.current && t();
|
|
366
366
|
},
|
|
367
|
-
children: /* @__PURE__ */
|
|
367
|
+
children: /* @__PURE__ */ c("div", {
|
|
368
368
|
role: "dialog",
|
|
369
369
|
"aria-modal": "true",
|
|
370
|
-
"aria-labelledby":
|
|
371
|
-
className: ["relative w-full bg-white rounded-xl shadow-xl flex flex-col max-h-[90vh]",
|
|
370
|
+
"aria-labelledby": r ? "modal-title" : void 0,
|
|
371
|
+
className: ["relative w-full bg-white rounded-xl shadow-xl flex flex-col max-h-[90vh]", re[u]].join(" "),
|
|
372
372
|
children: [
|
|
373
|
-
|
|
373
|
+
r && /* @__PURE__ */ c("div", {
|
|
374
374
|
className: "flex items-center justify-between px-6 py-4 border-b border-gray-100 shrink-0",
|
|
375
|
-
children: [/* @__PURE__ */
|
|
375
|
+
children: [/* @__PURE__ */ s("h2", {
|
|
376
376
|
id: "modal-title",
|
|
377
377
|
className: "text-lg font-semibold text-gray-900",
|
|
378
|
-
children:
|
|
379
|
-
}), /* @__PURE__ */
|
|
378
|
+
children: r
|
|
379
|
+
}), /* @__PURE__ */ s("button", {
|
|
380
380
|
onClick: t,
|
|
381
381
|
className: "text-gray-400 hover:text-gray-600 transition-colors",
|
|
382
382
|
"aria-label": "Close modal",
|
|
383
|
-
children: /* @__PURE__ */
|
|
383
|
+
children: /* @__PURE__ */ s("svg", {
|
|
384
384
|
xmlns: "http://www.w3.org/2000/svg",
|
|
385
385
|
fill: "none",
|
|
386
386
|
viewBox: "0 0 24 24",
|
|
387
387
|
strokeWidth: 1.5,
|
|
388
388
|
stroke: "currentColor",
|
|
389
389
|
className: "w-5 h-5",
|
|
390
|
-
children: /* @__PURE__ */
|
|
390
|
+
children: /* @__PURE__ */ s("path", {
|
|
391
391
|
strokeLinecap: "round",
|
|
392
392
|
strokeLinejoin: "round",
|
|
393
393
|
d: "M6 18L18 6M6 6l12 12"
|
|
@@ -395,13 +395,13 @@ function P({ open: e, onClose: t, title: i, children: a, footer: l, size: u = "m
|
|
|
395
395
|
})
|
|
396
396
|
})]
|
|
397
397
|
}),
|
|
398
|
-
/* @__PURE__ */
|
|
398
|
+
/* @__PURE__ */ s("div", {
|
|
399
399
|
className: "flex-1 overflow-y-auto px-6 py-4",
|
|
400
400
|
children: a
|
|
401
401
|
}),
|
|
402
|
-
|
|
402
|
+
o && /* @__PURE__ */ s("div", {
|
|
403
403
|
className: "px-6 py-4 border-t border-gray-100 shrink-0 bg-gray-50 rounded-b-xl",
|
|
404
|
-
children:
|
|
404
|
+
children: o
|
|
405
405
|
})
|
|
406
406
|
]
|
|
407
407
|
})
|
|
@@ -409,73 +409,73 @@ function P({ open: e, onClose: t, title: i, children: a, footer: l, size: u = "m
|
|
|
409
409
|
}
|
|
410
410
|
//#endregion
|
|
411
411
|
//#region src/components/common/Checkbox/Checkbox.tsx
|
|
412
|
-
var
|
|
412
|
+
var I = e(({ label: e, description: t, error: n, indeterminate: r, className: i = "", id: a, ...o }, l) => {
|
|
413
413
|
let u = a ?? e?.toLowerCase().replace(/\s+/g, "-");
|
|
414
|
-
return /* @__PURE__ */
|
|
415
|
-
className: (0,
|
|
416
|
-
children: [/* @__PURE__ */
|
|
414
|
+
return /* @__PURE__ */ c("div", {
|
|
415
|
+
className: (0, x.default)("checkbox-wrapper", i),
|
|
416
|
+
children: [/* @__PURE__ */ s("div", {
|
|
417
417
|
className: "checkbox-wrapper-inner",
|
|
418
|
-
children: /* @__PURE__ */
|
|
418
|
+
children: /* @__PURE__ */ s("input", {
|
|
419
419
|
ref: (e) => {
|
|
420
420
|
e && (e.indeterminate = r ?? !1), typeof l == "function" ? l(e) : l && (l.current = e);
|
|
421
421
|
},
|
|
422
422
|
id: u,
|
|
423
423
|
type: "checkbox",
|
|
424
|
-
className: (0,
|
|
425
|
-
...
|
|
424
|
+
className: (0, x.default)("checkbox", n && "has-error"),
|
|
425
|
+
...o
|
|
426
426
|
})
|
|
427
|
-
}), (e || t) && /* @__PURE__ */
|
|
428
|
-
e && /* @__PURE__ */
|
|
427
|
+
}), (e || t) && /* @__PURE__ */ c("div", { children: [
|
|
428
|
+
e && /* @__PURE__ */ s("label", {
|
|
429
429
|
htmlFor: u,
|
|
430
430
|
className: "checkbox-label",
|
|
431
431
|
children: e
|
|
432
432
|
}),
|
|
433
|
-
t && /* @__PURE__ */
|
|
433
|
+
t && /* @__PURE__ */ s("p", {
|
|
434
434
|
className: "checkbox-description",
|
|
435
435
|
children: t
|
|
436
436
|
}),
|
|
437
|
-
n && /* @__PURE__ */
|
|
437
|
+
n && /* @__PURE__ */ s("p", {
|
|
438
438
|
className: "checkbox-error",
|
|
439
439
|
children: n
|
|
440
440
|
})
|
|
441
441
|
] })]
|
|
442
442
|
});
|
|
443
443
|
});
|
|
444
|
-
|
|
444
|
+
I.displayName = "Checkbox";
|
|
445
445
|
//#endregion
|
|
446
446
|
//#region src/components/common/Toggle/Toggle.tsx
|
|
447
|
-
var
|
|
447
|
+
var L = e(({ label: e, description: t, size: n = "md", className: r = "", id: i, ...a }, o) => {
|
|
448
448
|
let l = i ?? e?.toLowerCase().replace(/\s+/g, "-");
|
|
449
|
-
return /* @__PURE__ */
|
|
449
|
+
return /* @__PURE__ */ c("label", {
|
|
450
450
|
htmlFor: l,
|
|
451
|
-
className: (0,
|
|
452
|
-
children: [/* @__PURE__ */
|
|
453
|
-
className: (0,
|
|
451
|
+
className: (0, x.default)("toggle", a.disabled && "toggle-disabled", r),
|
|
452
|
+
children: [/* @__PURE__ */ c("div", {
|
|
453
|
+
className: (0, x.default)("toggle-wrapper", `toggle-wrapper-${n}`),
|
|
454
454
|
children: [
|
|
455
|
-
/* @__PURE__ */
|
|
456
|
-
ref:
|
|
455
|
+
/* @__PURE__ */ s("input", {
|
|
456
|
+
ref: o,
|
|
457
457
|
id: l,
|
|
458
458
|
type: "checkbox",
|
|
459
459
|
role: "switch",
|
|
460
460
|
className: "sr-only peer",
|
|
461
461
|
...a
|
|
462
462
|
}),
|
|
463
|
-
/* @__PURE__ */
|
|
464
|
-
/* @__PURE__ */
|
|
463
|
+
/* @__PURE__ */ s("div", { className: "toggle-track" }),
|
|
464
|
+
/* @__PURE__ */ s("div", { className: (0, x.default)("toggle-thumb", `toggle-thumb-${n}`) })
|
|
465
465
|
]
|
|
466
|
-
}), (e || t) && /* @__PURE__ */
|
|
466
|
+
}), (e || t) && /* @__PURE__ */ c("div", { children: [e && /* @__PURE__ */ s("span", {
|
|
467
467
|
className: "toggle-label",
|
|
468
468
|
children: e
|
|
469
|
-
}), t && /* @__PURE__ */
|
|
469
|
+
}), t && /* @__PURE__ */ s("span", {
|
|
470
470
|
className: "toggle-description",
|
|
471
471
|
children: t
|
|
472
472
|
})] })]
|
|
473
473
|
});
|
|
474
474
|
});
|
|
475
|
-
|
|
475
|
+
L.displayName = "Toggle";
|
|
476
476
|
//#endregion
|
|
477
477
|
//#region src/components/common/Avatar/Avatar.tsx
|
|
478
|
-
var
|
|
478
|
+
var R = [
|
|
479
479
|
"bg-red-500",
|
|
480
480
|
"bg-orange-500",
|
|
481
481
|
"bg-amber-500",
|
|
@@ -487,37 +487,37 @@ var L = [
|
|
|
487
487
|
"bg-pink-500"
|
|
488
488
|
];
|
|
489
489
|
function ie({ src: e, alt: t, name: n, size: r = "md", className: i, ...a }) {
|
|
490
|
-
let
|
|
490
|
+
let o = [
|
|
491
491
|
"avatar",
|
|
492
492
|
`avatar-${r}`,
|
|
493
493
|
i
|
|
494
494
|
], c = (e) => {
|
|
495
495
|
let t = 0;
|
|
496
496
|
for (let n = 0; n < e.length; n++) t += e.charCodeAt(n);
|
|
497
|
-
return
|
|
497
|
+
return R[t % R.length];
|
|
498
498
|
}, l = (e) => e.split(" ").slice(0, 2).map((e) => e[0]).join("").toUpperCase();
|
|
499
|
-
return e ? /* @__PURE__ */
|
|
500
|
-
className: (0,
|
|
499
|
+
return e ? /* @__PURE__ */ s("span", {
|
|
500
|
+
className: (0, x.default)(o),
|
|
501
501
|
...a,
|
|
502
|
-
children: /* @__PURE__ */
|
|
502
|
+
children: /* @__PURE__ */ s("img", {
|
|
503
503
|
src: e,
|
|
504
504
|
alt: t ?? n ?? "",
|
|
505
505
|
className: "w-full h-full object-cover"
|
|
506
506
|
})
|
|
507
|
-
}) : n ? /* @__PURE__ */
|
|
508
|
-
className: (0,
|
|
507
|
+
}) : n ? /* @__PURE__ */ s("span", {
|
|
508
|
+
className: (0, x.default)(o, c(n)),
|
|
509
509
|
"aria-label": n,
|
|
510
510
|
...a,
|
|
511
511
|
children: l(n)
|
|
512
|
-
}) : /* @__PURE__ */
|
|
513
|
-
className: (0,
|
|
512
|
+
}) : /* @__PURE__ */ s("span", {
|
|
513
|
+
className: (0, x.default)(o, "avatar-fallback"),
|
|
514
514
|
...a,
|
|
515
|
-
children: /* @__PURE__ */
|
|
515
|
+
children: /* @__PURE__ */ s("svg", {
|
|
516
516
|
xmlns: "http://www.w3.org/2000/svg",
|
|
517
517
|
fill: "currentColor",
|
|
518
518
|
viewBox: "0 0 24 24",
|
|
519
519
|
className: "w-3/5 h-3/5",
|
|
520
|
-
children: /* @__PURE__ */
|
|
520
|
+
children: /* @__PURE__ */ s("path", {
|
|
521
521
|
fillRule: "evenodd",
|
|
522
522
|
d: "M7.5 6a4.5 4.5 0 119 0 4.5 4.5 0 01-9 0zM3.751 20.105a8.25 8.25 0 0116.498 0 .75.75 0 01-.437.695A18.683 18.683 0 0112 22.5c-2.786 0-5.433-.608-7.812-1.7a.75.75 0 01-.437-.695z",
|
|
523
523
|
clipRule: "evenodd"
|
|
@@ -527,8 +527,8 @@ function ie({ src: e, alt: t, name: n, size: r = "md", className: i, ...a }) {
|
|
|
527
527
|
}
|
|
528
528
|
//#endregion
|
|
529
529
|
//#region src/components/common/Stack/Stack.tsx
|
|
530
|
-
var ae = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems: r = "start", children: i }) => /* @__PURE__ */
|
|
531
|
-
className: (0,
|
|
530
|
+
var ae = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems: r = "start", children: i }) => /* @__PURE__ */ s("div", {
|
|
531
|
+
className: (0, x.default)("stack", `stack-${e}`, t && `gap-${t}`, {
|
|
532
532
|
start: "items-start",
|
|
533
533
|
end: "items-end",
|
|
534
534
|
center: "items-center",
|
|
@@ -541,75 +541,183 @@ var ae = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
541
541
|
stretch: "justify-items-stretch"
|
|
542
542
|
}[r]),
|
|
543
543
|
children: i
|
|
544
|
-
}),
|
|
545
|
-
|
|
544
|
+
}), z = ({ value: e, onChange: t, min: o = 1, max: l = 999, step: u = 1, disabled: d = !1, label: f, error: p, hint: m, id: h, className: g }) => {
|
|
545
|
+
let _ = r(), v = h ?? _, y = i(null), [b, S] = a(String(e));
|
|
546
|
+
n(() => {
|
|
547
|
+
document.activeElement !== y.current && S(String(e));
|
|
548
|
+
}, [e]);
|
|
549
|
+
let C = (e) => Math.min(l, Math.max(o, e)), w = (n) => {
|
|
550
|
+
let r = parseInt(n, 10), i = isNaN(r) ? e : C(r);
|
|
551
|
+
S(String(i)), i !== e && t(i);
|
|
552
|
+
}, T = (e) => {
|
|
553
|
+
let n = e.target.value.replace(/[^0-9]/g, "");
|
|
554
|
+
S(n);
|
|
555
|
+
let r = parseInt(n, 10);
|
|
556
|
+
isNaN(r) || t(C(r));
|
|
557
|
+
}, E = () => w(b), D = (e) => {
|
|
558
|
+
if (e.key === "Enter") {
|
|
559
|
+
w(b), y.current?.blur();
|
|
560
|
+
return;
|
|
561
|
+
}
|
|
562
|
+
![
|
|
563
|
+
"Backspace",
|
|
564
|
+
"Delete",
|
|
565
|
+
"Tab",
|
|
566
|
+
"Escape",
|
|
567
|
+
"ArrowLeft",
|
|
568
|
+
"ArrowRight",
|
|
569
|
+
"Home",
|
|
570
|
+
"End"
|
|
571
|
+
].includes(e.key) && !/^[0-9]$/.test(e.key) && !e.metaKey && !e.ctrlKey && e.preventDefault();
|
|
572
|
+
}, O = () => t(C(e - u)), k = () => t(C(e + u)), A = e - u >= o, j = e + u <= l;
|
|
573
|
+
return /* @__PURE__ */ c("div", {
|
|
574
|
+
className: (0, x.default)("quantity-input-wrapper", g),
|
|
575
|
+
children: [
|
|
576
|
+
f && /* @__PURE__ */ s("label", {
|
|
577
|
+
htmlFor: v,
|
|
578
|
+
className: "input-label",
|
|
579
|
+
children: f
|
|
580
|
+
}),
|
|
581
|
+
/* @__PURE__ */ c("div", {
|
|
582
|
+
className: (0, x.default)("quantity-input", p && "has-error", d && "is-disabled"),
|
|
583
|
+
children: [
|
|
584
|
+
/* @__PURE__ */ s("button", {
|
|
585
|
+
type: "button",
|
|
586
|
+
className: "quantity-btn",
|
|
587
|
+
onClick: O,
|
|
588
|
+
disabled: d || !A,
|
|
589
|
+
"aria-label": "Snížit množství",
|
|
590
|
+
tabIndex: -1,
|
|
591
|
+
children: /* @__PURE__ */ s(oe, {})
|
|
592
|
+
}),
|
|
593
|
+
/* @__PURE__ */ s("input", {
|
|
594
|
+
ref: y,
|
|
595
|
+
id: v,
|
|
596
|
+
type: "text",
|
|
597
|
+
inputMode: "numeric",
|
|
598
|
+
className: "quantity-field",
|
|
599
|
+
value: b,
|
|
600
|
+
onChange: T,
|
|
601
|
+
onBlur: E,
|
|
602
|
+
onKeyDown: D,
|
|
603
|
+
disabled: d,
|
|
604
|
+
"aria-label": f ?? "Množství",
|
|
605
|
+
"aria-valuemin": o,
|
|
606
|
+
"aria-valuemax": l,
|
|
607
|
+
"aria-valuenow": e
|
|
608
|
+
}),
|
|
609
|
+
/* @__PURE__ */ s("button", {
|
|
610
|
+
type: "button",
|
|
611
|
+
className: "quantity-btn",
|
|
612
|
+
onClick: k,
|
|
613
|
+
disabled: d || !j,
|
|
614
|
+
"aria-label": "Zvýšit množství",
|
|
615
|
+
tabIndex: -1,
|
|
616
|
+
children: /* @__PURE__ */ s(se, {})
|
|
617
|
+
})
|
|
618
|
+
]
|
|
619
|
+
}),
|
|
620
|
+
(p || m) && /* @__PURE__ */ s("p", {
|
|
621
|
+
className: (0, x.default)("helper-text", p && "has-error"),
|
|
622
|
+
children: p ?? m
|
|
623
|
+
})
|
|
624
|
+
]
|
|
625
|
+
});
|
|
626
|
+
};
|
|
627
|
+
z.displayName = "QuantityInput";
|
|
628
|
+
var oe = () => /* @__PURE__ */ s("svg", {
|
|
629
|
+
width: "12",
|
|
630
|
+
height: "2",
|
|
631
|
+
viewBox: "0 0 12 2",
|
|
632
|
+
fill: "none",
|
|
633
|
+
"aria-hidden": "true",
|
|
634
|
+
children: /* @__PURE__ */ s("path", {
|
|
635
|
+
d: "M1 1H11",
|
|
636
|
+
stroke: "currentColor",
|
|
637
|
+
strokeWidth: "1.5",
|
|
638
|
+
strokeLinecap: "round"
|
|
639
|
+
})
|
|
640
|
+
}), se = () => /* @__PURE__ */ s("svg", {
|
|
641
|
+
width: "12",
|
|
642
|
+
height: "12",
|
|
643
|
+
viewBox: "0 0 12 12",
|
|
644
|
+
fill: "none",
|
|
645
|
+
"aria-hidden": "true",
|
|
646
|
+
children: /* @__PURE__ */ s("path", {
|
|
647
|
+
d: "M6 1V11M1 6H11",
|
|
648
|
+
stroke: "currentColor",
|
|
649
|
+
strokeWidth: "1.5",
|
|
650
|
+
strokeLinecap: "round"
|
|
651
|
+
})
|
|
652
|
+
}), B = (e, t) => Array.from({ length: t - e + 1 }, (t, n) => e + n), V = (e, t, n) => {
|
|
653
|
+
if (t <= n * 2 + 5) return B(1, t);
|
|
546
654
|
let r = Math.max(e - n, 1), i = Math.min(e + n, t), a = r > 2, o = i < t - 1;
|
|
547
655
|
return !a && o ? [
|
|
548
|
-
...
|
|
656
|
+
...B(1, 3 + n * 2),
|
|
549
657
|
"…",
|
|
550
658
|
t
|
|
551
659
|
] : a && !o ? [
|
|
552
660
|
1,
|
|
553
661
|
"…",
|
|
554
|
-
...
|
|
662
|
+
...B(t - (2 + n * 2), t)
|
|
555
663
|
] : [
|
|
556
664
|
1,
|
|
557
665
|
"…",
|
|
558
|
-
...
|
|
666
|
+
...B(r, i),
|
|
559
667
|
"…",
|
|
560
668
|
t
|
|
561
669
|
];
|
|
562
|
-
},
|
|
670
|
+
}, H = ({ active: e, disabled: t, children: n, ...r }) => /* @__PURE__ */ s("button", {
|
|
563
671
|
disabled: t,
|
|
564
|
-
className: (0,
|
|
672
|
+
className: (0, x.default)("pagination-button", `pagination-button-${e ? "active" : "inactive"}`),
|
|
565
673
|
...r,
|
|
566
674
|
children: n
|
|
567
|
-
}),
|
|
568
|
-
let i =
|
|
569
|
-
return /* @__PURE__ */
|
|
675
|
+
}), U = ({ page: e, totalPages: t, onPageChange: n, siblingsCount: r = 1 }) => {
|
|
676
|
+
let i = V(e, t, r);
|
|
677
|
+
return /* @__PURE__ */ c("nav", {
|
|
570
678
|
"aria-label": "Pagination",
|
|
571
679
|
className: "pagination",
|
|
572
680
|
children: [
|
|
573
|
-
/* @__PURE__ */
|
|
681
|
+
/* @__PURE__ */ s(H, {
|
|
574
682
|
disabled: e <= 1,
|
|
575
683
|
onClick: () => n(e - 1),
|
|
576
684
|
"aria-label": "Previous page",
|
|
577
|
-
children: /* @__PURE__ */
|
|
685
|
+
children: /* @__PURE__ */ s("svg", {
|
|
578
686
|
xmlns: "http://www.w3.org/2000/svg",
|
|
579
687
|
fill: "none",
|
|
580
688
|
viewBox: "0 0 24 24",
|
|
581
689
|
strokeWidth: 2,
|
|
582
690
|
stroke: "currentColor",
|
|
583
691
|
className: "w-4 h-4",
|
|
584
|
-
children: /* @__PURE__ */
|
|
692
|
+
children: /* @__PURE__ */ s("path", {
|
|
585
693
|
strokeLinecap: "round",
|
|
586
694
|
strokeLinejoin: "round",
|
|
587
695
|
d: "M15.75 19.5L8.25 12l7.5-7.5"
|
|
588
696
|
})
|
|
589
697
|
})
|
|
590
698
|
}),
|
|
591
|
-
i.map((t, r) => t === "…" ? /* @__PURE__ */
|
|
699
|
+
i.map((t, r) => t === "…" ? /* @__PURE__ */ s("span", {
|
|
592
700
|
className: "pagination-dots",
|
|
593
701
|
children: "…"
|
|
594
|
-
}, `dots-${r}`) : /* @__PURE__ */
|
|
702
|
+
}, `dots-${r}`) : /* @__PURE__ */ s(H, {
|
|
595
703
|
active: t === e,
|
|
596
704
|
onClick: () => n(t),
|
|
597
705
|
"aria-label": `Page ${t}`,
|
|
598
706
|
"aria-current": t === e ? "page" : void 0,
|
|
599
707
|
children: t
|
|
600
708
|
}, t)),
|
|
601
|
-
/* @__PURE__ */
|
|
709
|
+
/* @__PURE__ */ s(H, {
|
|
602
710
|
disabled: e >= t,
|
|
603
711
|
onClick: () => n(e + 1),
|
|
604
712
|
"aria-label": "Next page",
|
|
605
|
-
children: /* @__PURE__ */
|
|
713
|
+
children: /* @__PURE__ */ s("svg", {
|
|
606
714
|
xmlns: "http://www.w3.org/2000/svg",
|
|
607
715
|
fill: "none",
|
|
608
716
|
viewBox: "0 0 24 24",
|
|
609
717
|
strokeWidth: 2,
|
|
610
718
|
stroke: "currentColor",
|
|
611
719
|
className: "w-4 h-4",
|
|
612
|
-
children: /* @__PURE__ */
|
|
720
|
+
children: /* @__PURE__ */ s("path", {
|
|
613
721
|
strokeLinecap: "round",
|
|
614
722
|
strokeLinejoin: "round",
|
|
615
723
|
d: "M8.25 4.5l7.5 7.5-7.5 7.5"
|
|
@@ -621,9 +729,9 @@ var ae = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
621
729
|
};
|
|
622
730
|
//#endregion
|
|
623
731
|
//#region src/components/Header/Header.tsx
|
|
624
|
-
function
|
|
625
|
-
let [l, u] =
|
|
626
|
-
return /* @__PURE__ */
|
|
732
|
+
function W({ trigger: e, items: t, onSelect: n, getKey: r, renderItem: o }) {
|
|
733
|
+
let [l, u] = a(!1), d = i(null), f = () => u(!1);
|
|
734
|
+
return /* @__PURE__ */ c("div", {
|
|
627
735
|
ref: d,
|
|
628
736
|
className: "relative",
|
|
629
737
|
onBlur: (e) => {
|
|
@@ -632,84 +740,83 @@ function H({ trigger: e, items: t, onSelect: n, getKey: a, renderItem: c }) {
|
|
|
632
740
|
onKeyDown: (e) => {
|
|
633
741
|
e.key === "Escape" && f();
|
|
634
742
|
},
|
|
635
|
-
children: [/* @__PURE__ */
|
|
743
|
+
children: [/* @__PURE__ */ s("div", {
|
|
636
744
|
role: "button",
|
|
637
745
|
tabIndex: 0,
|
|
638
746
|
onClick: () => u((e) => !e),
|
|
639
747
|
onKeyDown: (e) => e.key === "Enter" && u((e) => !e),
|
|
640
748
|
className: "cursor-pointer",
|
|
641
749
|
children: e
|
|
642
|
-
}), l && /* @__PURE__ */
|
|
750
|
+
}), l && /* @__PURE__ */ s("ul", {
|
|
643
751
|
role: "menu",
|
|
644
752
|
className: "absolute right-0 top-full mt-1 z-50 min-w-28 bg-white rounded-lg shadow-lg border border-gray-100 py-1 text-sm",
|
|
645
|
-
children: t.map((e) => /* @__PURE__ */
|
|
753
|
+
children: t.map((e) => /* @__PURE__ */ s("li", {
|
|
646
754
|
role: "none",
|
|
647
|
-
children: /* @__PURE__ */
|
|
755
|
+
children: /* @__PURE__ */ s("button", {
|
|
648
756
|
role: "menuitem",
|
|
649
757
|
className: "w-full px-3 py-1.5 text-left hover:bg-gray-50 text-gray-700 whitespace-nowrap",
|
|
650
758
|
onClick: () => {
|
|
651
759
|
n(e), f();
|
|
652
760
|
},
|
|
653
|
-
children:
|
|
761
|
+
children: o ? o(e) : e.label
|
|
654
762
|
})
|
|
655
|
-
},
|
|
763
|
+
}, r(e)))
|
|
656
764
|
})]
|
|
657
765
|
});
|
|
658
766
|
}
|
|
659
|
-
function
|
|
660
|
-
return /* @__PURE__ */
|
|
767
|
+
function G() {
|
|
768
|
+
return /* @__PURE__ */ s("svg", {
|
|
661
769
|
xmlns: "http://www.w3.org/2000/svg",
|
|
662
770
|
fill: "none",
|
|
663
771
|
viewBox: "0 0 24 24",
|
|
664
772
|
strokeWidth: 1.5,
|
|
665
773
|
stroke: "currentColor",
|
|
666
774
|
className: "w-4 h-4",
|
|
667
|
-
children: /* @__PURE__ */
|
|
775
|
+
children: /* @__PURE__ */ s("path", {
|
|
668
776
|
strokeLinecap: "round",
|
|
669
777
|
strokeLinejoin: "round",
|
|
670
778
|
d: "M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 15.803a7.5 7.5 0 0010.607 10.607z"
|
|
671
779
|
})
|
|
672
780
|
});
|
|
673
781
|
}
|
|
674
|
-
function
|
|
675
|
-
let [y, b] =
|
|
676
|
-
return /* @__PURE__ */
|
|
782
|
+
function K({ logo: e, searchPlaceholder: t = "Hledat produkty…", onSearch: n, cartItemCount: r = 0, onCartClick: i, isLoggedIn: l = !1, customerName: u, onCustomerClick: d, currencies: f = [], selectedCurrency: p, onCurrencyChange: m, locales: h = [], selectedLocale: g, onLocaleChange: _, rightSlot: v }) {
|
|
783
|
+
let [y, b] = a(""), x = f.find((e) => e.code === p), S = h.find((e) => e.code === g);
|
|
784
|
+
return /* @__PURE__ */ s("header", {
|
|
677
785
|
className: "bg-white border-b border-gray-200 sticky top-0 z-40",
|
|
678
|
-
children: /* @__PURE__ */
|
|
786
|
+
children: /* @__PURE__ */ c("div", {
|
|
679
787
|
className: "max-w-7xl mx-auto px-4 h-16 flex items-center gap-4",
|
|
680
788
|
children: [
|
|
681
|
-
/* @__PURE__ */
|
|
789
|
+
/* @__PURE__ */ s("div", {
|
|
682
790
|
className: "shrink-0",
|
|
683
|
-
children: e ?? /* @__PURE__ */
|
|
791
|
+
children: e ?? /* @__PURE__ */ s("span", {
|
|
684
792
|
className: "text-xl font-bold text-primary-600 tracking-tight",
|
|
685
793
|
children: "shopito"
|
|
686
794
|
})
|
|
687
795
|
}),
|
|
688
|
-
/* @__PURE__ */
|
|
796
|
+
/* @__PURE__ */ s("div", {
|
|
689
797
|
className: "flex-1 max-w-xl",
|
|
690
|
-
children: /* @__PURE__ */
|
|
691
|
-
fullWidth: !0,
|
|
798
|
+
children: /* @__PURE__ */ s(T, {
|
|
692
799
|
placeholder: t,
|
|
693
800
|
value: y,
|
|
694
801
|
onChange: (e) => b(e.target.value),
|
|
695
802
|
onKeyDown: (e) => {
|
|
696
803
|
e.key === "Enter" && n?.(y);
|
|
697
804
|
},
|
|
698
|
-
leftIcon: /* @__PURE__ */
|
|
699
|
-
rightIcon: y ? /* @__PURE__ */
|
|
805
|
+
leftIcon: /* @__PURE__ */ s(G, {}),
|
|
806
|
+
rightIcon: y ? /* @__PURE__ */ s("button", {
|
|
700
807
|
onClick: () => {
|
|
701
808
|
b(""), n?.("");
|
|
702
809
|
},
|
|
703
810
|
className: "hover:text-gray-600 transition-colors",
|
|
704
811
|
"aria-label": "Clear search",
|
|
705
|
-
children: /* @__PURE__ */
|
|
812
|
+
children: /* @__PURE__ */ s("svg", {
|
|
706
813
|
xmlns: "http://www.w3.org/2000/svg",
|
|
707
814
|
fill: "none",
|
|
708
815
|
viewBox: "0 0 24 24",
|
|
709
816
|
strokeWidth: 2,
|
|
710
817
|
stroke: "currentColor",
|
|
711
818
|
className: "w-3.5 h-3.5",
|
|
712
|
-
children: /* @__PURE__ */
|
|
819
|
+
children: /* @__PURE__ */ s("path", {
|
|
713
820
|
strokeLinecap: "round",
|
|
714
821
|
strokeLinejoin: "round",
|
|
715
822
|
d: "M6 18L18 6M6 6l12 12"
|
|
@@ -718,85 +825,85 @@ function W({ logo: e, searchPlaceholder: t = "Hledat produkty…", onSearch: n,
|
|
|
718
825
|
}) : void 0
|
|
719
826
|
})
|
|
720
827
|
}),
|
|
721
|
-
/* @__PURE__ */
|
|
828
|
+
/* @__PURE__ */ c("div", {
|
|
722
829
|
className: "flex items-center gap-1 shrink-0 ml-auto",
|
|
723
830
|
children: [
|
|
724
|
-
f.length > 0 && /* @__PURE__ */
|
|
725
|
-
trigger: /* @__PURE__ */
|
|
831
|
+
f.length > 0 && /* @__PURE__ */ s(W, {
|
|
832
|
+
trigger: /* @__PURE__ */ c("button", {
|
|
726
833
|
className: "flex items-center gap-1 px-2 py-1.5 rounded-md text-sm text-gray-600 hover:bg-gray-50 transition-colors font-medium",
|
|
727
834
|
children: [
|
|
728
|
-
/* @__PURE__ */
|
|
729
|
-
/* @__PURE__ */
|
|
835
|
+
/* @__PURE__ */ s("span", { children: x?.symbol ?? p }),
|
|
836
|
+
/* @__PURE__ */ s("span", {
|
|
730
837
|
className: "text-xs text-gray-400",
|
|
731
838
|
children: x?.code ?? p
|
|
732
839
|
}),
|
|
733
|
-
/* @__PURE__ */
|
|
840
|
+
/* @__PURE__ */ s(q, { className: "w-3 h-3 text-gray-400" })
|
|
734
841
|
]
|
|
735
842
|
}),
|
|
736
843
|
items: f,
|
|
737
844
|
getKey: (e) => e.code,
|
|
738
845
|
onSelect: (e) => m?.(e.code),
|
|
739
|
-
renderItem: (e) => /* @__PURE__ */
|
|
846
|
+
renderItem: (e) => /* @__PURE__ */ c("span", {
|
|
740
847
|
className: "flex items-center gap-2",
|
|
741
|
-
children: [/* @__PURE__ */
|
|
848
|
+
children: [/* @__PURE__ */ s("span", {
|
|
742
849
|
className: "w-6 text-center font-medium text-gray-500",
|
|
743
850
|
children: e.symbol
|
|
744
|
-
}), /* @__PURE__ */
|
|
851
|
+
}), /* @__PURE__ */ s("span", { children: e.label })]
|
|
745
852
|
})
|
|
746
853
|
}),
|
|
747
|
-
h.length > 0 && /* @__PURE__ */
|
|
748
|
-
trigger: /* @__PURE__ */
|
|
854
|
+
h.length > 0 && /* @__PURE__ */ s(W, {
|
|
855
|
+
trigger: /* @__PURE__ */ c("button", {
|
|
749
856
|
className: "flex items-center gap-1 px-2 py-1.5 rounded-md text-sm text-gray-600 hover:bg-gray-50 transition-colors",
|
|
750
857
|
children: [
|
|
751
|
-
S?.flag && /* @__PURE__ */
|
|
858
|
+
S?.flag && /* @__PURE__ */ s("span", {
|
|
752
859
|
className: "text-base leading-none",
|
|
753
860
|
children: S.flag
|
|
754
861
|
}),
|
|
755
|
-
/* @__PURE__ */
|
|
862
|
+
/* @__PURE__ */ s("span", {
|
|
756
863
|
className: "font-medium uppercase",
|
|
757
864
|
children: S?.code ?? g
|
|
758
865
|
}),
|
|
759
|
-
/* @__PURE__ */
|
|
866
|
+
/* @__PURE__ */ s(q, { className: "w-3 h-3 text-gray-400" })
|
|
760
867
|
]
|
|
761
868
|
}),
|
|
762
869
|
items: h,
|
|
763
870
|
getKey: (e) => e.code,
|
|
764
871
|
onSelect: (e) => _?.(e.code),
|
|
765
|
-
renderItem: (e) => /* @__PURE__ */
|
|
872
|
+
renderItem: (e) => /* @__PURE__ */ c("span", {
|
|
766
873
|
className: "flex items-center gap-2",
|
|
767
|
-
children: [e.flag && /* @__PURE__ */
|
|
874
|
+
children: [e.flag && /* @__PURE__ */ s("span", {
|
|
768
875
|
className: "text-base",
|
|
769
876
|
children: e.flag
|
|
770
|
-
}), /* @__PURE__ */
|
|
877
|
+
}), /* @__PURE__ */ s("span", { children: e.label })]
|
|
771
878
|
})
|
|
772
879
|
}),
|
|
773
|
-
(f.length > 0 || h.length > 0) && /* @__PURE__ */
|
|
774
|
-
/* @__PURE__ */
|
|
880
|
+
(f.length > 0 || h.length > 0) && /* @__PURE__ */ s("div", { className: "w-px h-5 bg-gray-200 mx-1" }),
|
|
881
|
+
/* @__PURE__ */ s("button", {
|
|
775
882
|
onClick: d,
|
|
776
883
|
className: "flex items-center gap-1.5 px-2.5 py-1.5 rounded-md text-sm text-gray-600 hover:bg-gray-50 transition-colors",
|
|
777
884
|
"aria-label": l ? "My account" : "Sign in",
|
|
778
|
-
children: l ? /* @__PURE__ */
|
|
885
|
+
children: l ? /* @__PURE__ */ c(o, { children: [/* @__PURE__ */ s("div", {
|
|
779
886
|
className: "w-6 h-6 rounded-full bg-primary-600 text-white flex items-center justify-center text-xs font-bold",
|
|
780
887
|
children: (u ?? "U")[0].toUpperCase()
|
|
781
|
-
}), u && /* @__PURE__ */
|
|
888
|
+
}), u && /* @__PURE__ */ s("span", {
|
|
782
889
|
className: "hidden sm:block font-medium max-w-32 truncate",
|
|
783
890
|
children: u
|
|
784
|
-
})] }) : /* @__PURE__ */
|
|
891
|
+
})] }) : /* @__PURE__ */ c(o, { children: [/* @__PURE__ */ s(ce, { className: "w-5 h-5" }), /* @__PURE__ */ s("span", {
|
|
785
892
|
className: "hidden sm:block font-medium",
|
|
786
893
|
children: "Přihlásit se"
|
|
787
894
|
})] })
|
|
788
895
|
}),
|
|
789
|
-
/* @__PURE__ */
|
|
790
|
-
onClick:
|
|
896
|
+
/* @__PURE__ */ c("button", {
|
|
897
|
+
onClick: i,
|
|
791
898
|
className: "relative flex items-center gap-1.5 px-2.5 py-1.5 rounded-md text-sm text-gray-600 hover:bg-gray-50 transition-colors",
|
|
792
899
|
"aria-label": `Cart, ${r} items`,
|
|
793
900
|
children: [
|
|
794
|
-
/* @__PURE__ */
|
|
795
|
-
/* @__PURE__ */
|
|
901
|
+
/* @__PURE__ */ s(le, { className: "w-5 h-5" }),
|
|
902
|
+
/* @__PURE__ */ s("span", {
|
|
796
903
|
className: "hidden sm:block font-medium",
|
|
797
904
|
children: "Košík"
|
|
798
905
|
}),
|
|
799
|
-
r > 0 && /* @__PURE__ */
|
|
906
|
+
r > 0 && /* @__PURE__ */ s("span", {
|
|
800
907
|
className: "absolute -top-0.5 -right-0.5 min-w-4.5 h-4.5 flex items-center justify-center rounded-full bg-primary-600 text-white text-[10px] font-bold leading-none px-1",
|
|
801
908
|
children: r > 99 ? "99+" : r
|
|
802
909
|
})
|
|
@@ -809,45 +916,45 @@ function W({ logo: e, searchPlaceholder: t = "Hledat produkty…", onSearch: n,
|
|
|
809
916
|
})
|
|
810
917
|
});
|
|
811
918
|
}
|
|
812
|
-
function
|
|
813
|
-
return /* @__PURE__ */
|
|
919
|
+
function q({ className: e }) {
|
|
920
|
+
return /* @__PURE__ */ s("svg", {
|
|
814
921
|
xmlns: "http://www.w3.org/2000/svg",
|
|
815
922
|
fill: "none",
|
|
816
923
|
viewBox: "0 0 24 24",
|
|
817
924
|
strokeWidth: 2,
|
|
818
925
|
stroke: "currentColor",
|
|
819
926
|
className: e,
|
|
820
|
-
children: /* @__PURE__ */
|
|
927
|
+
children: /* @__PURE__ */ s("path", {
|
|
821
928
|
strokeLinecap: "round",
|
|
822
929
|
strokeLinejoin: "round",
|
|
823
930
|
d: "M19.5 8.25l-7.5 7.5-7.5-7.5"
|
|
824
931
|
})
|
|
825
932
|
});
|
|
826
933
|
}
|
|
827
|
-
function
|
|
828
|
-
return /* @__PURE__ */
|
|
934
|
+
function ce({ className: e }) {
|
|
935
|
+
return /* @__PURE__ */ s("svg", {
|
|
829
936
|
xmlns: "http://www.w3.org/2000/svg",
|
|
830
937
|
fill: "none",
|
|
831
938
|
viewBox: "0 0 24 24",
|
|
832
939
|
strokeWidth: 1.5,
|
|
833
940
|
stroke: "currentColor",
|
|
834
941
|
className: e,
|
|
835
|
-
children: /* @__PURE__ */
|
|
942
|
+
children: /* @__PURE__ */ s("path", {
|
|
836
943
|
strokeLinecap: "round",
|
|
837
944
|
strokeLinejoin: "round",
|
|
838
945
|
d: "M15.75 6a3.75 3.75 0 11-7.5 0 3.75 3.75 0 017.5 0zM4.501 20.118a7.5 7.5 0 0114.998 0A17.933 17.933 0 0112 21.75c-2.676 0-5.216-.584-7.499-1.632z"
|
|
839
946
|
})
|
|
840
947
|
});
|
|
841
948
|
}
|
|
842
|
-
function
|
|
843
|
-
return /* @__PURE__ */
|
|
949
|
+
function le({ className: e }) {
|
|
950
|
+
return /* @__PURE__ */ s("svg", {
|
|
844
951
|
xmlns: "http://www.w3.org/2000/svg",
|
|
845
952
|
fill: "none",
|
|
846
953
|
viewBox: "0 0 24 24",
|
|
847
954
|
strokeWidth: 1.5,
|
|
848
955
|
stroke: "currentColor",
|
|
849
956
|
className: e,
|
|
850
|
-
children: /* @__PURE__ */
|
|
957
|
+
children: /* @__PURE__ */ s("path", {
|
|
851
958
|
strokeLinecap: "round",
|
|
852
959
|
strokeLinejoin: "round",
|
|
853
960
|
d: "M2.25 3h1.386c.51 0 .955.343 1.087.835l.383 1.437M7.5 14.25a3 3 0 00-3 3h15.75m-12.75-3h11.218c1.121-2.3 2.1-4.684 2.924-7.138a60.114 60.114 0 00-16.536-1.84M7.5 14.25L5.106 5.272M6 20.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm12.75 0a.75.75 0 11-1.5 0 .75.75 0 011.5 0z"
|
|
@@ -856,16 +963,16 @@ function q({ className: e }) {
|
|
|
856
963
|
}
|
|
857
964
|
//#endregion
|
|
858
965
|
//#region src/components/CategoryTree/CategoryTree.tsx
|
|
859
|
-
function J({ node: e, activeId: t, onSelect: n, showCounts: r, depth:
|
|
860
|
-
let l = e.children && e.children.length > 0, [u, d] =
|
|
861
|
-
return /* @__PURE__ */
|
|
966
|
+
function J({ node: e, activeId: t, onSelect: n, showCounts: r, depth: i, defaultExpandAll: o }) {
|
|
967
|
+
let l = e.children && e.children.length > 0, [u, d] = a(o || Y(e, t)), f = e.id === t;
|
|
968
|
+
return /* @__PURE__ */ c("li", { children: [/* @__PURE__ */ c("div", {
|
|
862
969
|
className: [
|
|
863
970
|
"group flex items-center gap-1.5 rounded-lg px-2 py-1.5 cursor-pointer select-none",
|
|
864
971
|
"transition-colors text-sm",
|
|
865
972
|
f ? "bg-primary-50 text-primary-700 font-medium" : "text-gray-700 hover:bg-gray-50 hover:text-gray-900",
|
|
866
|
-
|
|
973
|
+
i > 0 ? `ml-${Math.min(i * 4, 8)}` : ""
|
|
867
974
|
].filter(Boolean).join(" "),
|
|
868
|
-
style:
|
|
975
|
+
style: i > 0 ? { marginLeft: i * 16 } : void 0,
|
|
869
976
|
onClick: () => {
|
|
870
977
|
n(e), l && d((e) => !e);
|
|
871
978
|
},
|
|
@@ -876,60 +983,60 @@ function J({ node: e, activeId: t, onSelect: n, showCounts: r, depth: a, default
|
|
|
876
983
|
},
|
|
877
984
|
"aria-expanded": l ? u : void 0,
|
|
878
985
|
children: [
|
|
879
|
-
l ? /* @__PURE__ */
|
|
986
|
+
l ? /* @__PURE__ */ s("span", {
|
|
880
987
|
className: `shrink-0 text-gray-400 transition-transform duration-150 ${u ? "rotate-90" : ""}`,
|
|
881
|
-
children: /* @__PURE__ */
|
|
988
|
+
children: /* @__PURE__ */ s("svg", {
|
|
882
989
|
xmlns: "http://www.w3.org/2000/svg",
|
|
883
990
|
fill: "none",
|
|
884
991
|
viewBox: "0 0 24 24",
|
|
885
992
|
strokeWidth: 2,
|
|
886
993
|
stroke: "currentColor",
|
|
887
994
|
className: "w-3.5 h-3.5",
|
|
888
|
-
children: /* @__PURE__ */
|
|
995
|
+
children: /* @__PURE__ */ s("path", {
|
|
889
996
|
strokeLinecap: "round",
|
|
890
997
|
strokeLinejoin: "round",
|
|
891
998
|
d: "M8.25 4.5l7.5 7.5-7.5 7.5"
|
|
892
999
|
})
|
|
893
1000
|
})
|
|
894
|
-
}) : /* @__PURE__ */
|
|
895
|
-
e.icon && /* @__PURE__ */
|
|
1001
|
+
}) : /* @__PURE__ */ s("span", { className: "w-3.5 shrink-0" }),
|
|
1002
|
+
e.icon && /* @__PURE__ */ s("span", {
|
|
896
1003
|
className: "text-base leading-none",
|
|
897
1004
|
children: e.icon
|
|
898
1005
|
}),
|
|
899
|
-
/* @__PURE__ */
|
|
1006
|
+
/* @__PURE__ */ s("span", {
|
|
900
1007
|
className: "flex-1 truncate",
|
|
901
1008
|
children: e.label
|
|
902
1009
|
}),
|
|
903
|
-
r && e.count !== void 0 && /* @__PURE__ */
|
|
1010
|
+
r && e.count !== void 0 && /* @__PURE__ */ s("span", {
|
|
904
1011
|
className: `text-xs rounded-full px-1.5 py-0.5 font-medium ${f ? "bg-primary-100 text-primary-600" : "bg-gray-100 text-gray-500"}`,
|
|
905
1012
|
children: e.count
|
|
906
1013
|
})
|
|
907
1014
|
]
|
|
908
|
-
}), l && u && /* @__PURE__ */
|
|
1015
|
+
}), l && u && /* @__PURE__ */ s("ul", {
|
|
909
1016
|
role: "group",
|
|
910
|
-
children: e.children.map((e) => /* @__PURE__ */
|
|
1017
|
+
children: e.children.map((e) => /* @__PURE__ */ s(J, {
|
|
911
1018
|
node: e,
|
|
912
1019
|
activeId: t,
|
|
913
1020
|
onSelect: n,
|
|
914
1021
|
showCounts: r,
|
|
915
|
-
depth:
|
|
916
|
-
defaultExpandAll:
|
|
1022
|
+
depth: i + 1,
|
|
1023
|
+
defaultExpandAll: o
|
|
917
1024
|
}, e.id))
|
|
918
1025
|
})] });
|
|
919
1026
|
}
|
|
920
1027
|
function Y(e, t) {
|
|
921
1028
|
return !t || !e.children ? !1 : e.children.some((e) => e.id === t || Y(e, t));
|
|
922
1029
|
}
|
|
923
|
-
function
|
|
1030
|
+
function ue({ categories: e, activeId: t, onSelect: n, showCounts: r = !0, defaultExpandAll: i = !1, className: a = "", ...o }) {
|
|
924
1031
|
let c = (e) => n?.(e);
|
|
925
|
-
return /* @__PURE__ */
|
|
1032
|
+
return /* @__PURE__ */ s("nav", {
|
|
926
1033
|
"aria-label": "Category navigation",
|
|
927
1034
|
className: ["w-full", a].filter(Boolean).join(" "),
|
|
928
|
-
...
|
|
929
|
-
children: /* @__PURE__ */
|
|
1035
|
+
...o,
|
|
1036
|
+
children: /* @__PURE__ */ s("ul", {
|
|
930
1037
|
role: "tree",
|
|
931
1038
|
className: "space-y-0.5",
|
|
932
|
-
children: e.map((e) => /* @__PURE__ */
|
|
1039
|
+
children: e.map((e) => /* @__PURE__ */ s(J, {
|
|
933
1040
|
node: e,
|
|
934
1041
|
activeId: t,
|
|
935
1042
|
onSelect: c,
|
|
@@ -942,59 +1049,59 @@ function oe({ categories: e, activeId: t, onSelect: n, showCounts: r = !0, defau
|
|
|
942
1049
|
}
|
|
943
1050
|
//#endregion
|
|
944
1051
|
//#region src/components/MegaMenu/MegaMenu.tsx
|
|
945
|
-
function
|
|
946
|
-
return e.columns?.length ? /* @__PURE__ */
|
|
1052
|
+
function X({ item: e, onNavigate: t, onClose: n }) {
|
|
1053
|
+
return e.columns?.length ? /* @__PURE__ */ s("div", {
|
|
947
1054
|
className: "absolute left-0 right-0 top-full z-50 bg-white border-b border-gray-200 shadow-lg",
|
|
948
|
-
children: /* @__PURE__ */
|
|
1055
|
+
children: /* @__PURE__ */ c("div", {
|
|
949
1056
|
className: "max-w-7xl mx-auto px-4 py-6 flex gap-8",
|
|
950
|
-
children: [/* @__PURE__ */
|
|
1057
|
+
children: [/* @__PURE__ */ s("div", {
|
|
951
1058
|
className: "flex-1 grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-6",
|
|
952
|
-
children: e.columns.map((e, r) => /* @__PURE__ */
|
|
1059
|
+
children: e.columns.map((e, r) => /* @__PURE__ */ c("div", { children: [e.heading && /* @__PURE__ */ s("p", {
|
|
953
1060
|
className: "text-xs font-semibold uppercase tracking-wider text-gray-400 mb-2",
|
|
954
1061
|
children: e.heading
|
|
955
|
-
}), /* @__PURE__ */
|
|
1062
|
+
}), /* @__PURE__ */ s("ul", {
|
|
956
1063
|
className: "space-y-1",
|
|
957
|
-
children: e.items.map((e) => /* @__PURE__ */
|
|
1064
|
+
children: e.items.map((e) => /* @__PURE__ */ s("li", { children: /* @__PURE__ */ c("button", {
|
|
958
1065
|
className: "flex items-center gap-1.5 text-sm text-gray-700 hover:text-primary-600 transition-colors py-0.5",
|
|
959
1066
|
onClick: () => {
|
|
960
1067
|
t(e), n();
|
|
961
1068
|
},
|
|
962
|
-
children: [e.label, e.badge && /* @__PURE__ */
|
|
1069
|
+
children: [e.label, e.badge && /* @__PURE__ */ s("span", {
|
|
963
1070
|
className: "text-[10px] font-semibold px-1.5 py-0.5 rounded-full bg-danger-50 text-danger-600 leading-none",
|
|
964
1071
|
children: e.badge
|
|
965
1072
|
})]
|
|
966
1073
|
}) }, e.id))
|
|
967
1074
|
})] }, r))
|
|
968
|
-
}), e.featured && /* @__PURE__ */
|
|
1075
|
+
}), e.featured && /* @__PURE__ */ s("div", {
|
|
969
1076
|
className: "w-52 shrink-0",
|
|
970
|
-
children: /* @__PURE__ */
|
|
1077
|
+
children: /* @__PURE__ */ c("button", {
|
|
971
1078
|
className: "group block w-full rounded-xl overflow-hidden border border-gray-100 text-left hover:shadow-md transition-shadow",
|
|
972
1079
|
onClick: () => {
|
|
973
1080
|
t(e), n();
|
|
974
1081
|
},
|
|
975
|
-
children: [e.featured.image ? /* @__PURE__ */
|
|
1082
|
+
children: [e.featured.image ? /* @__PURE__ */ s("img", {
|
|
976
1083
|
src: e.featured.image,
|
|
977
1084
|
alt: e.featured.title,
|
|
978
1085
|
className: "w-full h-28 object-cover"
|
|
979
|
-
}) : /* @__PURE__ */
|
|
1086
|
+
}) : /* @__PURE__ */ s("div", {
|
|
980
1087
|
className: "w-full h-28 bg-linear-to-br from-primary-100 to-primary-200 flex items-center justify-center text-4xl",
|
|
981
1088
|
children: e.icon ?? "🛍️"
|
|
982
|
-
}), /* @__PURE__ */
|
|
1089
|
+
}), /* @__PURE__ */ c("div", {
|
|
983
1090
|
className: "p-3",
|
|
984
1091
|
children: [
|
|
985
|
-
e.featured.eyebrow && /* @__PURE__ */
|
|
1092
|
+
e.featured.eyebrow && /* @__PURE__ */ s("p", {
|
|
986
1093
|
className: "text-[10px] font-semibold uppercase tracking-wider text-primary-500 mb-0.5",
|
|
987
1094
|
children: e.featured.eyebrow
|
|
988
1095
|
}),
|
|
989
|
-
/* @__PURE__ */
|
|
1096
|
+
/* @__PURE__ */ s("p", {
|
|
990
1097
|
className: "text-sm font-semibold text-gray-900 group-hover:text-primary-600 transition-colors",
|
|
991
1098
|
children: e.featured.title
|
|
992
1099
|
}),
|
|
993
|
-
e.featured.description && /* @__PURE__ */
|
|
1100
|
+
e.featured.description && /* @__PURE__ */ s("p", {
|
|
994
1101
|
className: "text-xs text-gray-500 mt-0.5 line-clamp-2",
|
|
995
1102
|
children: e.featured.description
|
|
996
1103
|
}),
|
|
997
|
-
e.featured.cta && /* @__PURE__ */
|
|
1104
|
+
e.featured.cta && /* @__PURE__ */ c("span", {
|
|
998
1105
|
className: "inline-block mt-2 text-xs font-medium text-primary-600",
|
|
999
1106
|
children: [e.featured.cta, " →"]
|
|
1000
1107
|
})
|
|
@@ -1005,56 +1112,56 @@ function se({ item: e, onNavigate: t, onClose: n }) {
|
|
|
1005
1112
|
})
|
|
1006
1113
|
}) : null;
|
|
1007
1114
|
}
|
|
1008
|
-
function
|
|
1009
|
-
let [
|
|
1010
|
-
l.current && clearTimeout(l.current),
|
|
1115
|
+
function de({ items: e, activeId: t, onNavigate: n }) {
|
|
1116
|
+
let [r, o] = a(null), l = i(null), u = (e) => {
|
|
1117
|
+
l.current && clearTimeout(l.current), o(e);
|
|
1011
1118
|
}, d = () => {
|
|
1012
|
-
l.current = setTimeout(() =>
|
|
1119
|
+
l.current = setTimeout(() => o(null), 120);
|
|
1013
1120
|
}, f = () => {
|
|
1014
1121
|
l.current && clearTimeout(l.current);
|
|
1015
|
-
}, p = e.find((e) => e.id ===
|
|
1016
|
-
return /* @__PURE__ */
|
|
1122
|
+
}, p = e.find((e) => e.id === r);
|
|
1123
|
+
return /* @__PURE__ */ c("nav", {
|
|
1017
1124
|
"aria-label": "Main navigation",
|
|
1018
1125
|
className: "relative bg-white border-b border-gray-100",
|
|
1019
1126
|
onMouseLeave: d,
|
|
1020
|
-
children: [/* @__PURE__ */
|
|
1127
|
+
children: [/* @__PURE__ */ s("div", {
|
|
1021
1128
|
className: "max-w-7xl mx-auto px-4",
|
|
1022
|
-
children: /* @__PURE__ */
|
|
1129
|
+
children: /* @__PURE__ */ s("ul", {
|
|
1023
1130
|
className: "flex items-center gap-0",
|
|
1024
1131
|
role: "menubar",
|
|
1025
1132
|
children: e.map((e) => {
|
|
1026
|
-
let
|
|
1027
|
-
return /* @__PURE__ */
|
|
1133
|
+
let i = !!e.columns?.length, a = r === e.id, l = t === e.id;
|
|
1134
|
+
return /* @__PURE__ */ s("li", {
|
|
1028
1135
|
role: "none",
|
|
1029
|
-
children: /* @__PURE__ */
|
|
1136
|
+
children: /* @__PURE__ */ c("button", {
|
|
1030
1137
|
role: "menuitem",
|
|
1031
|
-
"aria-haspopup":
|
|
1032
|
-
"aria-expanded":
|
|
1138
|
+
"aria-haspopup": i ? "true" : void 0,
|
|
1139
|
+
"aria-expanded": i ? a : void 0,
|
|
1033
1140
|
className: [
|
|
1034
1141
|
"flex items-center gap-1.5 px-4 py-3.5 text-sm font-medium transition-colors relative",
|
|
1035
1142
|
"outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary-500",
|
|
1036
|
-
l ||
|
|
1037
|
-
|
|
1143
|
+
l || a ? "text-primary-600" : "text-gray-700 hover:text-gray-900",
|
|
1144
|
+
a ? "after:absolute after:bottom-0 after:left-0 after:right-0 after:h-0.5 after:bg-primary-600" : ""
|
|
1038
1145
|
].filter(Boolean).join(" "),
|
|
1039
|
-
onMouseEnter: () =>
|
|
1040
|
-
onFocus: () =>
|
|
1146
|
+
onMouseEnter: () => i ? u(e.id) : o(null),
|
|
1147
|
+
onFocus: () => i && u(e.id),
|
|
1041
1148
|
onClick: () => {
|
|
1042
|
-
|
|
1149
|
+
i || (n?.(e), o(null));
|
|
1043
1150
|
},
|
|
1044
1151
|
children: [
|
|
1045
|
-
e.icon && /* @__PURE__ */
|
|
1152
|
+
e.icon && /* @__PURE__ */ s("span", {
|
|
1046
1153
|
className: "text-base leading-none",
|
|
1047
1154
|
children: e.icon
|
|
1048
1155
|
}),
|
|
1049
1156
|
e.label,
|
|
1050
|
-
|
|
1157
|
+
i && /* @__PURE__ */ s("svg", {
|
|
1051
1158
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1052
1159
|
fill: "none",
|
|
1053
1160
|
viewBox: "0 0 24 24",
|
|
1054
1161
|
strokeWidth: 2,
|
|
1055
1162
|
stroke: "currentColor",
|
|
1056
|
-
className: `w-3.5 h-3.5 transition-transform duration-150 ${
|
|
1057
|
-
children: /* @__PURE__ */
|
|
1163
|
+
className: `w-3.5 h-3.5 transition-transform duration-150 ${a ? "rotate-180" : ""}`,
|
|
1164
|
+
children: /* @__PURE__ */ s("path", {
|
|
1058
1165
|
strokeLinecap: "round",
|
|
1059
1166
|
strokeLinejoin: "round",
|
|
1060
1167
|
d: "M19.5 8.25l-7.5 7.5-7.5-7.5"
|
|
@@ -1065,35 +1172,35 @@ function ce({ items: e, activeId: t, onNavigate: n }) {
|
|
|
1065
1172
|
}, e.id);
|
|
1066
1173
|
})
|
|
1067
1174
|
})
|
|
1068
|
-
}), p?.columns?.length && /* @__PURE__ */
|
|
1175
|
+
}), p?.columns?.length && /* @__PURE__ */ s("div", {
|
|
1069
1176
|
onMouseEnter: f,
|
|
1070
1177
|
onMouseLeave: d,
|
|
1071
|
-
children: /* @__PURE__ */
|
|
1178
|
+
children: /* @__PURE__ */ s(X, {
|
|
1072
1179
|
item: p,
|
|
1073
1180
|
onNavigate: (e) => n?.(e),
|
|
1074
|
-
onClose: () =>
|
|
1181
|
+
onClose: () => o(null)
|
|
1075
1182
|
})
|
|
1076
1183
|
})]
|
|
1077
1184
|
});
|
|
1078
1185
|
}
|
|
1079
1186
|
//#endregion
|
|
1080
1187
|
//#region src/components/BannerCarousel/BannerCarousel.tsx
|
|
1081
|
-
function
|
|
1082
|
-
let [m, h] =
|
|
1188
|
+
function fe({ banners: e, autoPlay: r = !0, autoPlayInterval: l = 5e3, arrows: u = !0, dots: d = !0, className: f = "", aspectRatio: p = "3 / 1" }) {
|
|
1189
|
+
let [m, h] = a(0), [g, _] = a(!1), v = i(null), y = i(null), b = e.length, x = t((e) => {
|
|
1083
1190
|
h((e % b + b) % b);
|
|
1084
1191
|
}, [b]), S = () => x(m - 1), C = t(() => x(m + 1), [m, x]);
|
|
1085
1192
|
n(() => {
|
|
1086
|
-
if (!(!
|
|
1193
|
+
if (!(!r || g || b <= 1)) return v.current = setInterval(C, l), () => {
|
|
1087
1194
|
v.current && clearInterval(v.current);
|
|
1088
1195
|
};
|
|
1089
1196
|
}, [
|
|
1090
|
-
|
|
1197
|
+
r,
|
|
1091
1198
|
g,
|
|
1092
1199
|
l,
|
|
1093
1200
|
C,
|
|
1094
1201
|
b
|
|
1095
1202
|
]);
|
|
1096
|
-
let w =
|
|
1203
|
+
let w = i(null), T = (e) => {
|
|
1097
1204
|
w.current = e.touches[0].clientX;
|
|
1098
1205
|
}, E = (e) => {
|
|
1099
1206
|
if (w.current === null) return;
|
|
@@ -1102,7 +1209,7 @@ function X({ banners: e, autoPlay: c = !0, autoPlayInterval: l = 5e3, arrows: u
|
|
|
1102
1209
|
};
|
|
1103
1210
|
if (b === 0) return null;
|
|
1104
1211
|
let D = e[m], O = D.textColor === "light" || !D.textColor;
|
|
1105
|
-
return /* @__PURE__ */
|
|
1212
|
+
return /* @__PURE__ */ c("div", {
|
|
1106
1213
|
className: ["relative overflow-hidden rounded-xl", f].filter(Boolean).join(" "),
|
|
1107
1214
|
style: { aspectRatio: p },
|
|
1108
1215
|
onMouseEnter: () => _(!0),
|
|
@@ -1110,41 +1217,41 @@ function X({ banners: e, autoPlay: c = !0, autoPlayInterval: l = 5e3, arrows: u
|
|
|
1110
1217
|
onTouchStart: T,
|
|
1111
1218
|
onTouchEnd: E,
|
|
1112
1219
|
children: [
|
|
1113
|
-
/* @__PURE__ */
|
|
1220
|
+
/* @__PURE__ */ s("div", {
|
|
1114
1221
|
ref: y,
|
|
1115
1222
|
className: "relative w-full h-full",
|
|
1116
|
-
children: e.map((e, t) => /* @__PURE__ */
|
|
1223
|
+
children: e.map((e, t) => /* @__PURE__ */ c("div", {
|
|
1117
1224
|
"aria-hidden": t !== m,
|
|
1118
1225
|
className: ["absolute inset-0 transition-opacity duration-700", t === m ? "opacity-100 z-10" : "opacity-0 z-0"].join(" "),
|
|
1119
1226
|
style: { background: e.backgroundImage ? `url(${e.backgroundImage}) center/cover no-repeat` : e.backgroundColor ?? "linear-gradient(135deg, #1d4ed8 0%, #7c3aed 100%)" },
|
|
1120
|
-
children: [e.backgroundImage && /* @__PURE__ */
|
|
1227
|
+
children: [e.backgroundImage && /* @__PURE__ */ s("div", { className: "absolute inset-0 bg-gradient-to-r from-black/50 via-black/20 to-transparent" }), /* @__PURE__ */ c("div", {
|
|
1121
1228
|
className: "relative z-10 h-full flex items-center px-8 md:px-12 gap-8",
|
|
1122
|
-
children: [/* @__PURE__ */
|
|
1229
|
+
children: [/* @__PURE__ */ c("div", {
|
|
1123
1230
|
className: "flex-1 max-w-lg",
|
|
1124
1231
|
children: [
|
|
1125
|
-
e.eyebrow && /* @__PURE__ */
|
|
1232
|
+
e.eyebrow && /* @__PURE__ */ s("p", {
|
|
1126
1233
|
className: `text-xs font-semibold uppercase tracking-widest mb-2 ${O ? "text-white/70" : "text-gray-500"}`,
|
|
1127
1234
|
children: e.eyebrow
|
|
1128
1235
|
}),
|
|
1129
|
-
/* @__PURE__ */
|
|
1236
|
+
/* @__PURE__ */ s("h2", {
|
|
1130
1237
|
className: `text-2xl md:text-3xl lg:text-4xl font-bold leading-tight ${O ? "text-white" : "text-gray-900"}`,
|
|
1131
1238
|
children: e.title
|
|
1132
1239
|
}),
|
|
1133
|
-
e.subtitle && /* @__PURE__ */
|
|
1240
|
+
e.subtitle && /* @__PURE__ */ s("p", {
|
|
1134
1241
|
className: `mt-2 text-sm md:text-base ${O ? "text-white/80" : "text-gray-600"}`,
|
|
1135
1242
|
children: e.subtitle
|
|
1136
1243
|
}),
|
|
1137
|
-
e.ctaLabel && /* @__PURE__ */
|
|
1244
|
+
e.ctaLabel && /* @__PURE__ */ c("button", {
|
|
1138
1245
|
onClick: e.onCtaClick,
|
|
1139
1246
|
className: ["mt-5 inline-flex items-center gap-2 px-5 py-2.5 rounded-lg text-sm font-semibold transition-all", O ? "bg-white text-gray-900 hover:bg-gray-100" : "bg-primary-600 text-white hover:bg-primary-700"].join(" "),
|
|
1140
|
-
children: [e.ctaLabel, /* @__PURE__ */
|
|
1247
|
+
children: [e.ctaLabel, /* @__PURE__ */ s("svg", {
|
|
1141
1248
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1142
1249
|
fill: "none",
|
|
1143
1250
|
viewBox: "0 0 24 24",
|
|
1144
1251
|
strokeWidth: 2,
|
|
1145
1252
|
stroke: "currentColor",
|
|
1146
1253
|
className: "w-4 h-4",
|
|
1147
|
-
children: /* @__PURE__ */
|
|
1254
|
+
children: /* @__PURE__ */ s("path", {
|
|
1148
1255
|
strokeLinecap: "round",
|
|
1149
1256
|
strokeLinejoin: "round",
|
|
1150
1257
|
d: "M8.25 4.5l7.5 7.5-7.5 7.5"
|
|
@@ -1152,9 +1259,9 @@ function X({ banners: e, autoPlay: c = !0, autoPlayInterval: l = 5e3, arrows: u
|
|
|
1152
1259
|
})]
|
|
1153
1260
|
})
|
|
1154
1261
|
]
|
|
1155
|
-
}), e.sideImage && /* @__PURE__ */
|
|
1262
|
+
}), e.sideImage && /* @__PURE__ */ s("div", {
|
|
1156
1263
|
className: "hidden md:block flex-1 h-full flex items-end justify-end overflow-hidden",
|
|
1157
|
-
children: /* @__PURE__ */
|
|
1264
|
+
children: /* @__PURE__ */ s("img", {
|
|
1158
1265
|
src: e.sideImage,
|
|
1159
1266
|
alt: "",
|
|
1160
1267
|
className: "h-full w-auto object-contain object-bottom drop-shadow-2xl"
|
|
@@ -1163,52 +1270,52 @@ function X({ banners: e, autoPlay: c = !0, autoPlayInterval: l = 5e3, arrows: u
|
|
|
1163
1270
|
})]
|
|
1164
1271
|
}, e.id))
|
|
1165
1272
|
}),
|
|
1166
|
-
u && b > 1 && /* @__PURE__ */
|
|
1273
|
+
u && b > 1 && /* @__PURE__ */ c(o, { children: [/* @__PURE__ */ s("button", {
|
|
1167
1274
|
onClick: S,
|
|
1168
1275
|
className: "absolute left-3 top-1/2 -translate-y-1/2 z-20 w-9 h-9 flex items-center justify-center rounded-full bg-black/30 text-white hover:bg-black/50 transition-colors backdrop-blur-sm",
|
|
1169
1276
|
"aria-label": "Previous banner",
|
|
1170
|
-
children: /* @__PURE__ */
|
|
1277
|
+
children: /* @__PURE__ */ s("svg", {
|
|
1171
1278
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1172
1279
|
fill: "none",
|
|
1173
1280
|
viewBox: "0 0 24 24",
|
|
1174
1281
|
strokeWidth: 2,
|
|
1175
1282
|
stroke: "currentColor",
|
|
1176
1283
|
className: "w-5 h-5",
|
|
1177
|
-
children: /* @__PURE__ */
|
|
1284
|
+
children: /* @__PURE__ */ s("path", {
|
|
1178
1285
|
strokeLinecap: "round",
|
|
1179
1286
|
strokeLinejoin: "round",
|
|
1180
1287
|
d: "M15.75 19.5L8.25 12l7.5-7.5"
|
|
1181
1288
|
})
|
|
1182
1289
|
})
|
|
1183
|
-
}), /* @__PURE__ */
|
|
1290
|
+
}), /* @__PURE__ */ s("button", {
|
|
1184
1291
|
onClick: C,
|
|
1185
1292
|
className: "absolute right-3 top-1/2 -translate-y-1/2 z-20 w-9 h-9 flex items-center justify-center rounded-full bg-black/30 text-white hover:bg-black/50 transition-colors backdrop-blur-sm",
|
|
1186
1293
|
"aria-label": "Next banner",
|
|
1187
|
-
children: /* @__PURE__ */
|
|
1294
|
+
children: /* @__PURE__ */ s("svg", {
|
|
1188
1295
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1189
1296
|
fill: "none",
|
|
1190
1297
|
viewBox: "0 0 24 24",
|
|
1191
1298
|
strokeWidth: 2,
|
|
1192
1299
|
stroke: "currentColor",
|
|
1193
1300
|
className: "w-5 h-5",
|
|
1194
|
-
children: /* @__PURE__ */
|
|
1301
|
+
children: /* @__PURE__ */ s("path", {
|
|
1195
1302
|
strokeLinecap: "round",
|
|
1196
1303
|
strokeLinejoin: "round",
|
|
1197
1304
|
d: "M8.25 4.5l7.5 7.5-7.5 7.5"
|
|
1198
1305
|
})
|
|
1199
1306
|
})
|
|
1200
1307
|
})] }),
|
|
1201
|
-
d && b > 1 && /* @__PURE__ */
|
|
1308
|
+
d && b > 1 && /* @__PURE__ */ s("div", {
|
|
1202
1309
|
className: "absolute bottom-3 left-1/2 -translate-x-1/2 z-20 flex gap-1.5",
|
|
1203
|
-
children: e.map((e, t) => /* @__PURE__ */
|
|
1310
|
+
children: e.map((e, t) => /* @__PURE__ */ s("button", {
|
|
1204
1311
|
onClick: () => x(t),
|
|
1205
1312
|
"aria-label": `Go to slide ${t + 1}`,
|
|
1206
1313
|
className: ["rounded-full transition-all duration-300", t === m ? "w-5 h-2 bg-white" : "w-2 h-2 bg-white/50 hover:bg-white/80"].join(" ")
|
|
1207
1314
|
}, t))
|
|
1208
1315
|
}),
|
|
1209
|
-
|
|
1316
|
+
r && b > 1 && /* @__PURE__ */ s("div", {
|
|
1210
1317
|
className: "absolute bottom-0 left-0 right-0 h-0.5 bg-white/20 z-20",
|
|
1211
|
-
children: /* @__PURE__ */
|
|
1318
|
+
children: /* @__PURE__ */ s("div", {
|
|
1212
1319
|
className: `h-full bg-white/60 ${g ? "" : "animate-progress"}`,
|
|
1213
1320
|
style: { animation: g ? "none" : `progress ${l}ms linear` }
|
|
1214
1321
|
}, `${m}-${g}`)
|
|
@@ -1218,23 +1325,23 @@ function X({ banners: e, autoPlay: c = !0, autoPlayInterval: l = 5e3, arrows: u
|
|
|
1218
1325
|
}
|
|
1219
1326
|
//#endregion
|
|
1220
1327
|
//#region src/components/ProductCard/ProductCard.tsx
|
|
1221
|
-
function
|
|
1222
|
-
return /* @__PURE__ */
|
|
1328
|
+
function pe({ filled: e }) {
|
|
1329
|
+
return /* @__PURE__ */ s("svg", {
|
|
1223
1330
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1224
1331
|
viewBox: "0 0 24 24",
|
|
1225
1332
|
className: `w-3.5 h-3.5 ${e ? "fill-amber-400 stroke-amber-400" : "fill-gray-200 stroke-gray-300"}`,
|
|
1226
1333
|
strokeWidth: 1,
|
|
1227
|
-
children: /* @__PURE__ */
|
|
1334
|
+
children: /* @__PURE__ */ s("path", {
|
|
1228
1335
|
strokeLinecap: "round",
|
|
1229
1336
|
strokeLinejoin: "round",
|
|
1230
1337
|
d: "M11.48 3.499a.562.562 0 011.04 0l2.125 5.111a.563.563 0 00.475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.563.563 0 00-.182.557l1.285 5.385a.562.562 0 01-.84.61l-4.725-2.885a.563.563 0 00-.586 0L6.982 20.54a.562.562 0 01-.84-.61l1.285-5.386a.562.562 0 00-.182-.557l-4.204-3.602a.563.563 0 01.321-.988l5.518-.442a.563.563 0 00.475-.345L11.48 3.5z"
|
|
1231
1338
|
})
|
|
1232
1339
|
});
|
|
1233
1340
|
}
|
|
1234
|
-
function
|
|
1235
|
-
return /* @__PURE__ */
|
|
1341
|
+
function me({ value: e, count: t }) {
|
|
1342
|
+
return /* @__PURE__ */ c("div", {
|
|
1236
1343
|
className: "flex items-center gap-1",
|
|
1237
|
-
children: [/* @__PURE__ */
|
|
1344
|
+
children: [/* @__PURE__ */ s("div", {
|
|
1238
1345
|
className: "flex gap-0.5",
|
|
1239
1346
|
children: [
|
|
1240
1347
|
1,
|
|
@@ -1242,8 +1349,8 @@ function ue({ value: e, count: t }) {
|
|
|
1242
1349
|
3,
|
|
1243
1350
|
4,
|
|
1244
1351
|
5
|
|
1245
|
-
].map((t) => /* @__PURE__ */
|
|
1246
|
-
}), t !== void 0 && /* @__PURE__ */
|
|
1352
|
+
].map((t) => /* @__PURE__ */ s(pe, { filled: t <= Math.round(e) }, t))
|
|
1353
|
+
}), t !== void 0 && /* @__PURE__ */ c("span", {
|
|
1247
1354
|
className: "text-xs text-gray-400",
|
|
1248
1355
|
children: [
|
|
1249
1356
|
"(",
|
|
@@ -1253,54 +1360,54 @@ function ue({ value: e, count: t }) {
|
|
|
1253
1360
|
})]
|
|
1254
1361
|
});
|
|
1255
1362
|
}
|
|
1256
|
-
function
|
|
1363
|
+
function he(e) {
|
|
1257
1364
|
let t = e.toLowerCase();
|
|
1258
1365
|
return t === "sale" || t === "akce" ? "danger" : t === "new" || t === "nové" ? "primary" : t === "hot" ? "warning" : "default";
|
|
1259
1366
|
}
|
|
1260
1367
|
function Z(e, t = "Kč") {
|
|
1261
1368
|
return `${e.toLocaleString("cs-CZ")} ${t}`;
|
|
1262
1369
|
}
|
|
1263
|
-
function
|
|
1370
|
+
function ge(e, t) {
|
|
1264
1371
|
return Math.round((1 - t / e) * 100);
|
|
1265
1372
|
}
|
|
1266
|
-
function Q({ product: e, onAddToCart: t, onWishlistToggle: n, isWishlisted: r = !1, onProductClick:
|
|
1267
|
-
let [u, d] =
|
|
1268
|
-
return /* @__PURE__ */
|
|
1373
|
+
function Q({ product: e, onAddToCart: t, onWishlistToggle: n, isWishlisted: r = !1, onProductClick: i, size: o = "default", className: l = "" }) {
|
|
1374
|
+
let [u, d] = a(!1), [f, p] = a(!1), m = e.originalPrice !== void 0 && e.originalPrice > e.price;
|
|
1375
|
+
return /* @__PURE__ */ c("article", {
|
|
1269
1376
|
className: [
|
|
1270
1377
|
"group relative flex flex-col bg-white rounded-xl border border-gray-200",
|
|
1271
1378
|
"hover:shadow-md transition-shadow duration-200 overflow-hidden cursor-pointer",
|
|
1272
1379
|
l
|
|
1273
1380
|
].filter(Boolean).join(" "),
|
|
1274
|
-
onClick: () =>
|
|
1381
|
+
onClick: () => i?.(e),
|
|
1275
1382
|
onMouseEnter: () => d(!0),
|
|
1276
1383
|
onMouseLeave: () => d(!1),
|
|
1277
|
-
children: [/* @__PURE__ */
|
|
1278
|
-
className: `relative overflow-hidden bg-gray-50 ${
|
|
1384
|
+
children: [/* @__PURE__ */ c("div", {
|
|
1385
|
+
className: `relative overflow-hidden bg-gray-50 ${o === "compact" ? "aspect-square" : "aspect-4/3"}`,
|
|
1279
1386
|
children: [
|
|
1280
|
-
e.image ? /* @__PURE__ */
|
|
1387
|
+
e.image ? /* @__PURE__ */ s("img", {
|
|
1281
1388
|
src: u && e.imageHover ? e.imageHover : e.image,
|
|
1282
1389
|
alt: e.name,
|
|
1283
1390
|
className: "w-full h-full object-contain p-4 transition-transform duration-300 group-hover:scale-105"
|
|
1284
|
-
}) : /* @__PURE__ */
|
|
1391
|
+
}) : /* @__PURE__ */ s("div", {
|
|
1285
1392
|
className: "w-full h-full flex items-center justify-center text-5xl bg-linear-to-br from-gray-100 to-gray-200",
|
|
1286
1393
|
children: "🛍️"
|
|
1287
1394
|
}),
|
|
1288
|
-
e.badge && /* @__PURE__ */
|
|
1395
|
+
e.badge && /* @__PURE__ */ s("div", {
|
|
1289
1396
|
className: "absolute top-2 left-2",
|
|
1290
|
-
children: /* @__PURE__ */
|
|
1291
|
-
variant:
|
|
1397
|
+
children: /* @__PURE__ */ s(k, {
|
|
1398
|
+
variant: he(e.badge),
|
|
1292
1399
|
size: "sm",
|
|
1293
|
-
children: e.badge === "sale" && m ? `-${
|
|
1400
|
+
children: e.badge === "sale" && m ? `-${ge(e.originalPrice, e.price)}%` : e.badge
|
|
1294
1401
|
})
|
|
1295
1402
|
}),
|
|
1296
|
-
e.inStock === !1 && /* @__PURE__ */
|
|
1403
|
+
e.inStock === !1 && /* @__PURE__ */ s("div", {
|
|
1297
1404
|
className: "absolute inset-0 bg-white/70 flex items-center justify-center",
|
|
1298
|
-
children: /* @__PURE__ */
|
|
1405
|
+
children: /* @__PURE__ */ s("span", {
|
|
1299
1406
|
className: "text-sm font-semibold text-gray-500 bg-white/90 px-3 py-1 rounded-full border border-gray-200",
|
|
1300
1407
|
children: "Vyprodáno"
|
|
1301
1408
|
})
|
|
1302
1409
|
}),
|
|
1303
|
-
/* @__PURE__ */
|
|
1410
|
+
/* @__PURE__ */ s("button", {
|
|
1304
1411
|
onClick: (t) => {
|
|
1305
1412
|
t.stopPropagation(), n?.(e);
|
|
1306
1413
|
},
|
|
@@ -1311,22 +1418,22 @@ function Q({ product: e, onAddToCart: t, onWishlistToggle: n, isWishlisted: r =
|
|
|
1311
1418
|
"opacity-0 group-hover:opacity-100 focus:opacity-100",
|
|
1312
1419
|
r ? "text-danger-500" : "text-gray-400 hover:text-danger-400"
|
|
1313
1420
|
].join(" "),
|
|
1314
|
-
children: /* @__PURE__ */
|
|
1421
|
+
children: /* @__PURE__ */ s("svg", {
|
|
1315
1422
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1316
1423
|
viewBox: "0 0 24 24",
|
|
1317
1424
|
strokeWidth: 1.5,
|
|
1318
1425
|
stroke: "currentColor",
|
|
1319
1426
|
className: `w-4 h-4 ${r ? "fill-current" : "fill-none"}`,
|
|
1320
|
-
children: /* @__PURE__ */
|
|
1427
|
+
children: /* @__PURE__ */ s("path", {
|
|
1321
1428
|
strokeLinecap: "round",
|
|
1322
1429
|
strokeLinejoin: "round",
|
|
1323
1430
|
d: "M21 8.25c0-2.485-2.099-4.5-4.688-4.5-1.935 0-3.597 1.126-4.312 2.733-.715-1.607-2.377-2.733-4.313-2.733C5.1 3.75 3 5.765 3 8.25c0 7.22 9 12 9 12s9-4.78 9-12z"
|
|
1324
1431
|
})
|
|
1325
1432
|
})
|
|
1326
1433
|
}),
|
|
1327
|
-
/* @__PURE__ */
|
|
1434
|
+
/* @__PURE__ */ s("div", {
|
|
1328
1435
|
className: ["absolute bottom-0 left-0 right-0 p-2 transition-transform duration-200", u ? "translate-y-0" : "translate-y-full"].join(" "),
|
|
1329
|
-
children: /* @__PURE__ */
|
|
1436
|
+
children: /* @__PURE__ */ s(S, {
|
|
1330
1437
|
variant: "primary",
|
|
1331
1438
|
size: "sm",
|
|
1332
1439
|
fullWidth: !0,
|
|
@@ -1336,16 +1443,16 @@ function Q({ product: e, onAddToCart: t, onWishlistToggle: n, isWishlisted: r =
|
|
|
1336
1443
|
n.stopPropagation(), t?.(e), p(!0), setTimeout(() => p(!1), 1500);
|
|
1337
1444
|
},
|
|
1338
1445
|
className: "shadow-lg",
|
|
1339
|
-
children: f ? /* @__PURE__ */
|
|
1446
|
+
children: f ? /* @__PURE__ */ c("span", {
|
|
1340
1447
|
className: "flex items-center gap-1.5",
|
|
1341
|
-
children: [/* @__PURE__ */
|
|
1448
|
+
children: [/* @__PURE__ */ s("svg", {
|
|
1342
1449
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1343
1450
|
fill: "none",
|
|
1344
1451
|
viewBox: "0 0 24 24",
|
|
1345
1452
|
strokeWidth: 2,
|
|
1346
1453
|
stroke: "currentColor",
|
|
1347
1454
|
className: "w-4 h-4",
|
|
1348
|
-
children: /* @__PURE__ */
|
|
1455
|
+
children: /* @__PURE__ */ s("path", {
|
|
1349
1456
|
strokeLinecap: "round",
|
|
1350
1457
|
strokeLinejoin: "round",
|
|
1351
1458
|
d: "M4.5 12.75l6 6 9-13.5"
|
|
@@ -1355,34 +1462,34 @@ function Q({ product: e, onAddToCart: t, onWishlistToggle: n, isWishlisted: r =
|
|
|
1355
1462
|
})
|
|
1356
1463
|
})
|
|
1357
1464
|
]
|
|
1358
|
-
}), /* @__PURE__ */
|
|
1359
|
-
className: `flex flex-col gap-1.5 ${
|
|
1465
|
+
}), /* @__PURE__ */ c("div", {
|
|
1466
|
+
className: `flex flex-col gap-1.5 ${o === "compact" ? "p-3" : "p-4"}`,
|
|
1360
1467
|
children: [
|
|
1361
|
-
e.variants && e.variants.length > 0 && /* @__PURE__ */
|
|
1468
|
+
e.variants && e.variants.length > 0 && /* @__PURE__ */ c("div", {
|
|
1362
1469
|
className: "flex gap-1",
|
|
1363
|
-
children: [e.variants.slice(0, 5).map((e) => /* @__PURE__ */
|
|
1470
|
+
children: [e.variants.slice(0, 5).map((e) => /* @__PURE__ */ s("span", {
|
|
1364
1471
|
title: e.label,
|
|
1365
1472
|
className: "w-4 h-4 rounded-full border border-gray-300 shrink-0",
|
|
1366
1473
|
style: { backgroundColor: e.color ?? "#ccc" }
|
|
1367
|
-
}, e.id)), e.variants.length > 5 && /* @__PURE__ */
|
|
1474
|
+
}, e.id)), e.variants.length > 5 && /* @__PURE__ */ c("span", {
|
|
1368
1475
|
className: "text-xs text-gray-400",
|
|
1369
1476
|
children: ["+", e.variants.length - 5]
|
|
1370
1477
|
})]
|
|
1371
1478
|
}),
|
|
1372
|
-
/* @__PURE__ */
|
|
1373
|
-
className: `font-medium text-gray-900 leading-snug line-clamp-2 group-hover:text-primary-600 transition-colors ${
|
|
1479
|
+
/* @__PURE__ */ s("h3", {
|
|
1480
|
+
className: `font-medium text-gray-900 leading-snug line-clamp-2 group-hover:text-primary-600 transition-colors ${o === "compact" ? "text-xs" : "text-sm"}`,
|
|
1374
1481
|
children: e.name
|
|
1375
1482
|
}),
|
|
1376
|
-
e.rating !== void 0 && /* @__PURE__ */
|
|
1483
|
+
e.rating !== void 0 && /* @__PURE__ */ s(me, {
|
|
1377
1484
|
value: e.rating,
|
|
1378
1485
|
count: e.reviewCount
|
|
1379
1486
|
}),
|
|
1380
|
-
/* @__PURE__ */
|
|
1487
|
+
/* @__PURE__ */ c("div", {
|
|
1381
1488
|
className: "flex items-baseline gap-2 mt-auto pt-1",
|
|
1382
|
-
children: [/* @__PURE__ */
|
|
1383
|
-
className: `font-bold text-gray-900 ${
|
|
1489
|
+
children: [/* @__PURE__ */ s("span", {
|
|
1490
|
+
className: `font-bold text-gray-900 ${o === "compact" ? "text-base" : "text-lg"}`,
|
|
1384
1491
|
children: Z(e.price, e.currency)
|
|
1385
|
-
}), m && /* @__PURE__ */
|
|
1492
|
+
}), m && /* @__PURE__ */ s("span", {
|
|
1386
1493
|
className: "text-sm text-gray-400 line-through",
|
|
1387
1494
|
children: Z(e.originalPrice, e.currency)
|
|
1388
1495
|
})]
|
|
@@ -1398,7 +1505,7 @@ var $ = {
|
|
|
1398
1505
|
3: "grid-cols-2 md:grid-cols-3",
|
|
1399
1506
|
4: "grid-cols-2 sm:grid-cols-3 lg:grid-cols-4",
|
|
1400
1507
|
5: "grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5"
|
|
1401
|
-
},
|
|
1508
|
+
}, _e = [
|
|
1402
1509
|
{
|
|
1403
1510
|
value: "newest",
|
|
1404
1511
|
label: "Nejnovější"
|
|
@@ -1420,50 +1527,50 @@ var $ = {
|
|
|
1420
1527
|
label: "Bestsellery"
|
|
1421
1528
|
}
|
|
1422
1529
|
];
|
|
1423
|
-
function
|
|
1424
|
-
return /* @__PURE__ */
|
|
1530
|
+
function ve() {
|
|
1531
|
+
return /* @__PURE__ */ c("div", {
|
|
1425
1532
|
className: "rounded-xl border border-gray-100 overflow-hidden animate-pulse",
|
|
1426
|
-
children: [/* @__PURE__ */
|
|
1533
|
+
children: [/* @__PURE__ */ s("div", { className: "aspect-4/3 bg-gray-200" }), /* @__PURE__ */ c("div", {
|
|
1427
1534
|
className: "p-4 space-y-2",
|
|
1428
1535
|
children: [
|
|
1429
|
-
/* @__PURE__ */
|
|
1430
|
-
/* @__PURE__ */
|
|
1431
|
-
/* @__PURE__ */
|
|
1536
|
+
/* @__PURE__ */ s("div", { className: "h-3 bg-gray-200 rounded w-3/4" }),
|
|
1537
|
+
/* @__PURE__ */ s("div", { className: "h-3 bg-gray-200 rounded w-1/2" }),
|
|
1538
|
+
/* @__PURE__ */ s("div", { className: "h-5 bg-gray-200 rounded w-1/3 mt-2" })
|
|
1432
1539
|
]
|
|
1433
1540
|
})]
|
|
1434
1541
|
});
|
|
1435
1542
|
}
|
|
1436
|
-
function
|
|
1543
|
+
function ye({ products: e, totalCount: t, page: n = 1, onPageChange: r, perPage: i = 20, columns: a = 4, sortOptions: o = _e, selectedSort: l, onSortChange: u, activeFilters: d = [], onRemoveFilter: f, onClearFilters: p, loading: m = !1, emptyState: h, onAddToCart: g, onWishlistToggle: _, onProductClick: v, wishlisted: y = [], className: b = "" }) {
|
|
1437
1544
|
let x = t ? Math.ceil(t / i) : void 0, S = a >= 5 ? "compact" : "default";
|
|
1438
|
-
return /* @__PURE__ */
|
|
1545
|
+
return /* @__PURE__ */ c("div", {
|
|
1439
1546
|
className: ["w-full", b].filter(Boolean).join(" "),
|
|
1440
1547
|
children: [
|
|
1441
|
-
/* @__PURE__ */
|
|
1548
|
+
/* @__PURE__ */ c("div", {
|
|
1442
1549
|
className: "flex flex-wrap items-center justify-between gap-3 mb-4",
|
|
1443
|
-
children: [/* @__PURE__ */
|
|
1550
|
+
children: [/* @__PURE__ */ c("div", {
|
|
1444
1551
|
className: "flex flex-wrap items-center gap-2",
|
|
1445
1552
|
children: [
|
|
1446
|
-
t !== void 0 && /* @__PURE__ */
|
|
1553
|
+
t !== void 0 && /* @__PURE__ */ c("span", {
|
|
1447
1554
|
className: "text-sm text-gray-500",
|
|
1448
|
-
children: [/* @__PURE__ */
|
|
1555
|
+
children: [/* @__PURE__ */ s("span", {
|
|
1449
1556
|
className: "font-semibold text-gray-900",
|
|
1450
1557
|
children: t
|
|
1451
1558
|
}), " produktů"]
|
|
1452
1559
|
}),
|
|
1453
|
-
d.map((e) => /* @__PURE__ */
|
|
1560
|
+
d.map((e) => /* @__PURE__ */ c("span", {
|
|
1454
1561
|
className: "inline-flex items-center gap-1 text-xs bg-primary-50 text-primary-700 border border-primary-200 rounded-full px-2.5 py-1",
|
|
1455
|
-
children: [e, /* @__PURE__ */
|
|
1562
|
+
children: [e, /* @__PURE__ */ s("button", {
|
|
1456
1563
|
onClick: () => f?.(e),
|
|
1457
1564
|
"aria-label": `Remove filter ${e}`,
|
|
1458
1565
|
className: "hover:text-primary-900 transition-colors",
|
|
1459
|
-
children: /* @__PURE__ */
|
|
1566
|
+
children: /* @__PURE__ */ s("svg", {
|
|
1460
1567
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1461
1568
|
fill: "none",
|
|
1462
1569
|
viewBox: "0 0 24 24",
|
|
1463
1570
|
strokeWidth: 2,
|
|
1464
1571
|
stroke: "currentColor",
|
|
1465
1572
|
className: "w-3 h-3",
|
|
1466
|
-
children: /* @__PURE__ */
|
|
1573
|
+
children: /* @__PURE__ */ s("path", {
|
|
1467
1574
|
strokeLinecap: "round",
|
|
1468
1575
|
strokeLinejoin: "round",
|
|
1469
1576
|
d: "M6 18L18 6M6 6l12 12"
|
|
@@ -1471,50 +1578,50 @@ function he({ products: e, totalCount: t, page: n = 1, onPageChange: r, perPage:
|
|
|
1471
1578
|
})
|
|
1472
1579
|
})]
|
|
1473
1580
|
}, e)),
|
|
1474
|
-
d.length > 1 && /* @__PURE__ */
|
|
1581
|
+
d.length > 1 && /* @__PURE__ */ s("button", {
|
|
1475
1582
|
onClick: p,
|
|
1476
1583
|
className: "text-xs text-gray-400 hover:text-gray-600 underline underline-offset-2 transition-colors",
|
|
1477
1584
|
children: "Zrušit vše"
|
|
1478
1585
|
})
|
|
1479
1586
|
]
|
|
1480
|
-
}), /* @__PURE__ */
|
|
1481
|
-
options:
|
|
1587
|
+
}), /* @__PURE__ */ s(E, {
|
|
1588
|
+
options: o,
|
|
1482
1589
|
value: l ?? "",
|
|
1483
1590
|
onChange: (e) => u?.(e.target.value),
|
|
1484
1591
|
"aria-label": "Sort products",
|
|
1485
1592
|
className: "text-sm"
|
|
1486
1593
|
})]
|
|
1487
1594
|
}),
|
|
1488
|
-
m ? /* @__PURE__ */
|
|
1595
|
+
m ? /* @__PURE__ */ s("div", {
|
|
1489
1596
|
className: `grid gap-4 ${$[a]}`,
|
|
1490
|
-
children: Array.from({ length: i > 12 ? 12 : i }).map((e, t) => /* @__PURE__ */
|
|
1491
|
-
}) : e.length === 0 ? /* @__PURE__ */
|
|
1597
|
+
children: Array.from({ length: i > 12 ? 12 : i }).map((e, t) => /* @__PURE__ */ s(ve, {}, t))
|
|
1598
|
+
}) : e.length === 0 ? /* @__PURE__ */ s("div", {
|
|
1492
1599
|
className: "py-16 text-center",
|
|
1493
|
-
children: h ?? /* @__PURE__ */
|
|
1600
|
+
children: h ?? /* @__PURE__ */ c("div", {
|
|
1494
1601
|
className: "space-y-2",
|
|
1495
1602
|
children: [
|
|
1496
|
-
/* @__PURE__ */
|
|
1603
|
+
/* @__PURE__ */ s("p", {
|
|
1497
1604
|
className: "text-4xl",
|
|
1498
1605
|
children: "🔍"
|
|
1499
1606
|
}),
|
|
1500
|
-
/* @__PURE__ */
|
|
1607
|
+
/* @__PURE__ */ s("p", {
|
|
1501
1608
|
className: "font-semibold text-gray-900",
|
|
1502
1609
|
children: "Žádné produkty nenalezeny"
|
|
1503
1610
|
}),
|
|
1504
|
-
/* @__PURE__ */
|
|
1611
|
+
/* @__PURE__ */ s("p", {
|
|
1505
1612
|
className: "text-sm text-gray-500",
|
|
1506
1613
|
children: "Zkuste upravit filtry nebo hledat jinak."
|
|
1507
1614
|
}),
|
|
1508
|
-
d.length > 0 && /* @__PURE__ */
|
|
1615
|
+
d.length > 0 && /* @__PURE__ */ s("button", {
|
|
1509
1616
|
onClick: p,
|
|
1510
1617
|
className: "mt-3 text-sm text-primary-600 hover:underline",
|
|
1511
1618
|
children: "Zrušit všechny filtry"
|
|
1512
1619
|
})
|
|
1513
1620
|
]
|
|
1514
1621
|
})
|
|
1515
|
-
}) : /* @__PURE__ */
|
|
1622
|
+
}) : /* @__PURE__ */ s("div", {
|
|
1516
1623
|
className: `grid gap-4 ${$[a]}`,
|
|
1517
|
-
children: e.map((e) => /* @__PURE__ */
|
|
1624
|
+
children: e.map((e) => /* @__PURE__ */ s(Q, {
|
|
1518
1625
|
product: e,
|
|
1519
1626
|
size: S,
|
|
1520
1627
|
onAddToCart: g,
|
|
@@ -1523,9 +1630,9 @@ function he({ products: e, totalCount: t, page: n = 1, onPageChange: r, perPage:
|
|
|
1523
1630
|
isWishlisted: y.includes(e.id)
|
|
1524
1631
|
}, e.id))
|
|
1525
1632
|
}),
|
|
1526
|
-
x && x > 1 && r && /* @__PURE__ */
|
|
1633
|
+
x && x > 1 && r && /* @__PURE__ */ s("div", {
|
|
1527
1634
|
className: "flex justify-center mt-8",
|
|
1528
|
-
children: /* @__PURE__ */
|
|
1635
|
+
children: /* @__PURE__ */ s(U, {
|
|
1529
1636
|
page: n,
|
|
1530
1637
|
totalPages: x,
|
|
1531
1638
|
onPageChange: r
|
|
@@ -1536,14 +1643,14 @@ function he({ products: e, totalCount: t, page: n = 1, onPageChange: r, perPage:
|
|
|
1536
1643
|
}
|
|
1537
1644
|
//#endregion
|
|
1538
1645
|
//#region src/components/CallToAction/CallToAction.tsx
|
|
1539
|
-
var
|
|
1646
|
+
var be = {
|
|
1540
1647
|
default: "bg-gray-50 border border-gray-200",
|
|
1541
1648
|
primary: "bg-primary-600",
|
|
1542
1649
|
dark: "bg-gray-900",
|
|
1543
1650
|
gradient: "bg-linear-to-br from-primary-600 via-primary-700 to-violet-700",
|
|
1544
1651
|
outline: "bg-white border-2 border-primary-600",
|
|
1545
1652
|
image: "relative overflow-hidden"
|
|
1546
|
-
},
|
|
1653
|
+
}, xe = {
|
|
1547
1654
|
default: {
|
|
1548
1655
|
eyebrow: "text-primary-600",
|
|
1549
1656
|
title: "text-gray-900",
|
|
@@ -1574,7 +1681,7 @@ var ge = {
|
|
|
1574
1681
|
title: "text-white",
|
|
1575
1682
|
description: "text-white/80"
|
|
1576
1683
|
}
|
|
1577
|
-
},
|
|
1684
|
+
}, Se = {
|
|
1578
1685
|
sm: {
|
|
1579
1686
|
wrapper: "px-6 py-6 rounded-xl",
|
|
1580
1687
|
title: "text-xl font-bold",
|
|
@@ -1599,7 +1706,7 @@ var ge = {
|
|
|
1599
1706
|
description: "text-xl",
|
|
1600
1707
|
eyebrow: "text-sm"
|
|
1601
1708
|
}
|
|
1602
|
-
},
|
|
1709
|
+
}, Ce = {
|
|
1603
1710
|
left: {
|
|
1604
1711
|
wrapper: "items-start text-left",
|
|
1605
1712
|
actions: "justify-start"
|
|
@@ -1613,8 +1720,8 @@ var ge = {
|
|
|
1613
1720
|
actions: "justify-end"
|
|
1614
1721
|
}
|
|
1615
1722
|
};
|
|
1616
|
-
function
|
|
1617
|
-
let h =
|
|
1723
|
+
function we({ eyebrow: e, title: t, description: n, actions: r = [], align: i = "center", layout: a = "stacked", size: o = "md", variant: l = "default", background: u, backgroundImage: d, media: f, className: p = "", style: m }) {
|
|
1724
|
+
let h = xe[l], g = Se[o], _ = Ce[i], v = a === "inline", y = {
|
|
1618
1725
|
...u ? { background: u } : {},
|
|
1619
1726
|
...d ? {
|
|
1620
1727
|
backgroundImage: `url(${d})`,
|
|
@@ -1623,48 +1730,48 @@ function be({ eyebrow: e, title: t, description: n, actions: r = [], align: i =
|
|
|
1623
1730
|
} : {},
|
|
1624
1731
|
...m
|
|
1625
1732
|
};
|
|
1626
|
-
return /* @__PURE__ */
|
|
1733
|
+
return /* @__PURE__ */ c("div", {
|
|
1627
1734
|
className: [
|
|
1628
1735
|
"w-full",
|
|
1629
|
-
|
|
1736
|
+
be[l],
|
|
1630
1737
|
g.wrapper,
|
|
1631
1738
|
p
|
|
1632
1739
|
].filter(Boolean).join(" "),
|
|
1633
1740
|
style: Object.keys(y).length ? y : void 0,
|
|
1634
|
-
children: [(l === "image" || d) && /* @__PURE__ */
|
|
1741
|
+
children: [(l === "image" || d) && /* @__PURE__ */ s("div", { className: "absolute inset-0 bg-black/50" }), /* @__PURE__ */ c("div", {
|
|
1635
1742
|
className: `relative ${v ? "flex flex-wrap items-center justify-between gap-6" : `flex flex-col gap-4 ${_.wrapper}`}`,
|
|
1636
1743
|
children: [
|
|
1637
|
-
/* @__PURE__ */
|
|
1744
|
+
/* @__PURE__ */ c("div", {
|
|
1638
1745
|
className: `flex flex-col gap-2 ${v ? "flex-1 min-w-0" : _.wrapper}`,
|
|
1639
1746
|
children: [
|
|
1640
|
-
e && /* @__PURE__ */
|
|
1747
|
+
e && /* @__PURE__ */ s("p", {
|
|
1641
1748
|
className: `font-semibold uppercase tracking-widest ${g.eyebrow} ${h.eyebrow}`,
|
|
1642
1749
|
children: e
|
|
1643
1750
|
}),
|
|
1644
|
-
/* @__PURE__ */
|
|
1751
|
+
/* @__PURE__ */ s("h2", {
|
|
1645
1752
|
className: `${g.title} ${h.title}`,
|
|
1646
1753
|
children: t
|
|
1647
1754
|
}),
|
|
1648
|
-
n && /* @__PURE__ */
|
|
1755
|
+
n && /* @__PURE__ */ s("p", {
|
|
1649
1756
|
className: `max-w-2xl ${g.description} ${h.description}`,
|
|
1650
1757
|
children: n
|
|
1651
1758
|
})
|
|
1652
1759
|
]
|
|
1653
1760
|
}),
|
|
1654
|
-
f && !v && /* @__PURE__ */
|
|
1761
|
+
f && !v && /* @__PURE__ */ s("div", {
|
|
1655
1762
|
className: "mt-2",
|
|
1656
1763
|
children: f
|
|
1657
1764
|
}),
|
|
1658
|
-
r.length > 0 && /* @__PURE__ */
|
|
1765
|
+
r.length > 0 && /* @__PURE__ */ s("div", {
|
|
1659
1766
|
className: `flex flex-wrap gap-3 ${v ? "shrink-0" : _.actions}`,
|
|
1660
1767
|
children: r.map((e, t) => {
|
|
1661
|
-
let n = /* @__PURE__ */
|
|
1662
|
-
variant: e.variant ?? (t === 0 ?
|
|
1663
|
-
size: e.size ?? (
|
|
1768
|
+
let n = /* @__PURE__ */ s(S, {
|
|
1769
|
+
variant: e.variant ?? (t === 0 ? Te(l) : "outline"),
|
|
1770
|
+
size: e.size ?? (o === "sm" ? "sm" : o === "xl" ? "lg" : "md"),
|
|
1664
1771
|
onClick: e.onClick,
|
|
1665
1772
|
children: e.label
|
|
1666
1773
|
}, t);
|
|
1667
|
-
return e.href ? /* @__PURE__ */
|
|
1774
|
+
return e.href ? /* @__PURE__ */ s("a", {
|
|
1668
1775
|
href: e.href,
|
|
1669
1776
|
className: "contents",
|
|
1670
1777
|
children: n
|
|
@@ -1675,233 +1782,233 @@ function be({ eyebrow: e, title: t, description: n, actions: r = [], align: i =
|
|
|
1675
1782
|
})]
|
|
1676
1783
|
});
|
|
1677
1784
|
}
|
|
1678
|
-
function
|
|
1785
|
+
function Te(e) {
|
|
1679
1786
|
return e === "default" || e === "outline" ? "primary" : "secondary";
|
|
1680
1787
|
}
|
|
1681
1788
|
//#endregion
|
|
1682
1789
|
//#region src/components/Footer/Footer.tsx
|
|
1683
|
-
function
|
|
1684
|
-
return /* @__PURE__ */
|
|
1790
|
+
function Ee() {
|
|
1791
|
+
return /* @__PURE__ */ s("svg", {
|
|
1685
1792
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1686
1793
|
fill: "none",
|
|
1687
1794
|
viewBox: "0 0 24 24",
|
|
1688
1795
|
strokeWidth: 1.5,
|
|
1689
1796
|
stroke: "currentColor",
|
|
1690
1797
|
className: "w-4 h-4 shrink-0",
|
|
1691
|
-
children: /* @__PURE__ */
|
|
1798
|
+
children: /* @__PURE__ */ s("path", {
|
|
1692
1799
|
strokeLinecap: "round",
|
|
1693
1800
|
strokeLinejoin: "round",
|
|
1694
1801
|
d: "M2.25 6.75c0 8.284 6.716 15 15 15h2.25a2.25 2.25 0 002.25-2.25v-1.372c0-.516-.351-.966-.852-1.091l-4.423-1.106c-.44-.11-.902.055-1.173.417l-.97 1.293c-.282.376-.769.542-1.21.38a12.035 12.035 0 01-7.143-7.143c-.162-.441.004-.928.38-1.21l1.293-.97c.363-.271.527-.734.417-1.173L6.963 3.102a1.125 1.125 0 00-1.091-.852H4.5A2.25 2.25 0 002.25 4.5v2.25z"
|
|
1695
1802
|
})
|
|
1696
1803
|
});
|
|
1697
1804
|
}
|
|
1698
|
-
function
|
|
1699
|
-
return /* @__PURE__ */
|
|
1805
|
+
function De() {
|
|
1806
|
+
return /* @__PURE__ */ s("svg", {
|
|
1700
1807
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1701
1808
|
fill: "none",
|
|
1702
1809
|
viewBox: "0 0 24 24",
|
|
1703
1810
|
strokeWidth: 1.5,
|
|
1704
1811
|
stroke: "currentColor",
|
|
1705
1812
|
className: "w-4 h-4 shrink-0",
|
|
1706
|
-
children: /* @__PURE__ */
|
|
1813
|
+
children: /* @__PURE__ */ s("path", {
|
|
1707
1814
|
strokeLinecap: "round",
|
|
1708
1815
|
strokeLinejoin: "round",
|
|
1709
1816
|
d: "M21.75 6.75v10.5a2.25 2.25 0 01-2.25 2.25h-15a2.25 2.25 0 01-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0019.5 4.5h-15a2.25 2.25 0 00-2.25 2.25m19.5 0v.243a2.25 2.25 0 01-1.07 1.916l-7.5 4.615a2.25 2.25 0 01-2.36 0L3.32 8.91a2.25 2.25 0 01-1.07-1.916V6.75"
|
|
1710
1817
|
})
|
|
1711
1818
|
});
|
|
1712
1819
|
}
|
|
1713
|
-
function
|
|
1714
|
-
return /* @__PURE__ */
|
|
1820
|
+
function Oe() {
|
|
1821
|
+
return /* @__PURE__ */ c("svg", {
|
|
1715
1822
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1716
1823
|
fill: "none",
|
|
1717
1824
|
viewBox: "0 0 24 24",
|
|
1718
1825
|
strokeWidth: 1.5,
|
|
1719
1826
|
stroke: "currentColor",
|
|
1720
1827
|
className: "w-4 h-4 shrink-0",
|
|
1721
|
-
children: [/* @__PURE__ */
|
|
1828
|
+
children: [/* @__PURE__ */ s("path", {
|
|
1722
1829
|
strokeLinecap: "round",
|
|
1723
1830
|
strokeLinejoin: "round",
|
|
1724
1831
|
d: "M15 10.5a3 3 0 11-6 0 3 3 0 016 0z"
|
|
1725
|
-
}), /* @__PURE__ */
|
|
1832
|
+
}), /* @__PURE__ */ s("path", {
|
|
1726
1833
|
strokeLinecap: "round",
|
|
1727
1834
|
strokeLinejoin: "round",
|
|
1728
1835
|
d: "M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z"
|
|
1729
1836
|
})]
|
|
1730
1837
|
});
|
|
1731
1838
|
}
|
|
1732
|
-
function
|
|
1733
|
-
return /* @__PURE__ */
|
|
1839
|
+
function ke() {
|
|
1840
|
+
return /* @__PURE__ */ s("svg", {
|
|
1734
1841
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1735
1842
|
fill: "none",
|
|
1736
1843
|
viewBox: "0 0 24 24",
|
|
1737
1844
|
strokeWidth: 1.5,
|
|
1738
1845
|
stroke: "currentColor",
|
|
1739
1846
|
className: "w-4 h-4 shrink-0",
|
|
1740
|
-
children: /* @__PURE__ */
|
|
1847
|
+
children: /* @__PURE__ */ s("path", {
|
|
1741
1848
|
strokeLinecap: "round",
|
|
1742
1849
|
strokeLinejoin: "round",
|
|
1743
1850
|
d: "M12 6v6h4.5m4.5 0a9 9 0 11-18 0 9 9 0 0118 0z"
|
|
1744
1851
|
})
|
|
1745
1852
|
});
|
|
1746
1853
|
}
|
|
1747
|
-
function
|
|
1748
|
-
return /* @__PURE__ */
|
|
1854
|
+
function Ae() {
|
|
1855
|
+
return /* @__PURE__ */ s("svg", {
|
|
1749
1856
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1750
1857
|
viewBox: "0 0 24 24",
|
|
1751
1858
|
fill: "currentColor",
|
|
1752
1859
|
className: "w-4 h-4",
|
|
1753
|
-
children: /* @__PURE__ */
|
|
1860
|
+
children: /* @__PURE__ */ s("path", { d: "M24 12.073C24 5.405 18.627 0 12 0S0 5.405 0 12.073C0 18.1 4.388 23.094 10.125 24v-8.437H7.078v-3.49h3.047V9.41c0-3.025 1.792-4.697 4.533-4.697 1.312 0 2.686.236 2.686.236v2.97h-1.513c-1.491 0-1.956.93-1.956 1.886v2.267h3.328l-.532 3.49h-2.796V24C19.612 23.094 24 18.1 24 12.073z" })
|
|
1754
1861
|
});
|
|
1755
1862
|
}
|
|
1756
|
-
function
|
|
1757
|
-
return /* @__PURE__ */
|
|
1863
|
+
function je() {
|
|
1864
|
+
return /* @__PURE__ */ s("svg", {
|
|
1758
1865
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1759
1866
|
viewBox: "0 0 24 24",
|
|
1760
1867
|
fill: "currentColor",
|
|
1761
1868
|
className: "w-4 h-4",
|
|
1762
|
-
children: /* @__PURE__ */
|
|
1869
|
+
children: /* @__PURE__ */ s("path", { d: "M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zm0-2.163c-3.259 0-3.667.014-4.947.072-4.358.2-6.78 2.618-6.98 6.98-.059 1.281-.073 1.689-.073 4.948 0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98 1.281.058 1.689.072 4.948.072 3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98-1.281-.059-1.69-.073-4.949-.073zm0 5.838a6.162 6.162 0 100 12.324 6.162 6.162 0 000-12.324zM12 16a4 4 0 110-8 4 4 0 010 8zm6.406-11.845a1.44 1.44 0 100 2.881 1.44 1.44 0 000-2.881z" })
|
|
1763
1870
|
});
|
|
1764
1871
|
}
|
|
1765
|
-
function
|
|
1766
|
-
return /* @__PURE__ */
|
|
1872
|
+
function Me() {
|
|
1873
|
+
return /* @__PURE__ */ s("svg", {
|
|
1767
1874
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1768
1875
|
viewBox: "0 0 24 24",
|
|
1769
1876
|
fill: "currentColor",
|
|
1770
1877
|
className: "w-4 h-4",
|
|
1771
|
-
children: /* @__PURE__ */
|
|
1878
|
+
children: /* @__PURE__ */ s("path", { d: "M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z" })
|
|
1772
1879
|
});
|
|
1773
1880
|
}
|
|
1774
|
-
function
|
|
1775
|
-
return /* @__PURE__ */
|
|
1881
|
+
function Ne() {
|
|
1882
|
+
return /* @__PURE__ */ s("svg", {
|
|
1776
1883
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1777
1884
|
viewBox: "0 0 24 24",
|
|
1778
1885
|
fill: "currentColor",
|
|
1779
1886
|
className: "w-4 h-4",
|
|
1780
|
-
children: /* @__PURE__ */
|
|
1887
|
+
children: /* @__PURE__ */ s("path", { d: "M23.498 6.186a3.016 3.016 0 00-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 00.502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 002.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 002.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z" })
|
|
1781
1888
|
});
|
|
1782
1889
|
}
|
|
1783
|
-
function
|
|
1784
|
-
return /* @__PURE__ */
|
|
1890
|
+
function Pe() {
|
|
1891
|
+
return /* @__PURE__ */ s("svg", {
|
|
1785
1892
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1786
1893
|
viewBox: "0 0 24 24",
|
|
1787
1894
|
fill: "currentColor",
|
|
1788
1895
|
className: "w-4 h-4",
|
|
1789
|
-
children: /* @__PURE__ */
|
|
1896
|
+
children: /* @__PURE__ */ s("path", { d: "M19.59 6.69a4.83 4.83 0 01-3.77-4.25V2h-3.45v13.67a2.89 2.89 0 01-2.88 2.5 2.89 2.89 0 01-2.89-2.89 2.89 2.89 0 012.89-2.89c.28 0 .54.04.79.1V9.01a6.33 6.33 0 00-.79-.05 6.34 6.34 0 00-6.34 6.34 6.34 6.34 0 006.34 6.34 6.34 6.34 0 006.33-6.34V8.69a8.18 8.18 0 004.78 1.52V6.76a4.85 4.85 0 01-1.01-.07z" })
|
|
1790
1897
|
});
|
|
1791
1898
|
}
|
|
1792
|
-
var
|
|
1793
|
-
facebook:
|
|
1794
|
-
instagram:
|
|
1795
|
-
twitter:
|
|
1796
|
-
youtube:
|
|
1797
|
-
tiktok:
|
|
1798
|
-
},
|
|
1799
|
-
phone:
|
|
1800
|
-
email:
|
|
1801
|
-
address:
|
|
1802
|
-
hours:
|
|
1899
|
+
var Fe = {
|
|
1900
|
+
facebook: Ae,
|
|
1901
|
+
instagram: je,
|
|
1902
|
+
twitter: Me,
|
|
1903
|
+
youtube: Ne,
|
|
1904
|
+
tiktok: Pe
|
|
1905
|
+
}, Ie = {
|
|
1906
|
+
phone: Ee,
|
|
1907
|
+
email: De,
|
|
1908
|
+
address: Oe,
|
|
1909
|
+
hours: ke
|
|
1803
1910
|
};
|
|
1804
|
-
function
|
|
1911
|
+
function Le(e) {
|
|
1805
1912
|
if (!e) return null;
|
|
1806
1913
|
if (typeof e == "string") {
|
|
1807
|
-
let t =
|
|
1808
|
-
return t ? /* @__PURE__ */
|
|
1914
|
+
let t = Ie[e];
|
|
1915
|
+
return t ? /* @__PURE__ */ s(t, {}) : null;
|
|
1809
1916
|
}
|
|
1810
1917
|
return e;
|
|
1811
1918
|
}
|
|
1812
|
-
function
|
|
1919
|
+
function Re(e) {
|
|
1813
1920
|
if (typeof e == "string") {
|
|
1814
|
-
let t =
|
|
1815
|
-
return t ? /* @__PURE__ */
|
|
1921
|
+
let t = Fe[e];
|
|
1922
|
+
return t ? /* @__PURE__ */ s(t, {}) : null;
|
|
1816
1923
|
}
|
|
1817
1924
|
return e;
|
|
1818
1925
|
}
|
|
1819
|
-
function
|
|
1926
|
+
function ze({ logo: e, tagline: t, contactHeading: n = "Kontakty", contacts: r = [], linkGroups: i = [], socialLinks: a = [], copyright: o, bottomLinks: l = [], className: u = "" }) {
|
|
1820
1927
|
let d = (/* @__PURE__ */ new Date()).getFullYear();
|
|
1821
|
-
return /* @__PURE__ */
|
|
1928
|
+
return /* @__PURE__ */ c("footer", {
|
|
1822
1929
|
className: ["bg-gray-900 text-gray-300", u].filter(Boolean).join(" "),
|
|
1823
|
-
children: [/* @__PURE__ */
|
|
1930
|
+
children: [/* @__PURE__ */ c("div", {
|
|
1824
1931
|
className: "max-w-7xl mx-auto px-4 py-12 grid grid-cols-1 md:grid-cols-2 gap-10 lg:gap-16",
|
|
1825
|
-
children: [/* @__PURE__ */
|
|
1932
|
+
children: [/* @__PURE__ */ c("div", {
|
|
1826
1933
|
className: "flex flex-col gap-6",
|
|
1827
1934
|
children: [
|
|
1828
|
-
/* @__PURE__ */
|
|
1935
|
+
/* @__PURE__ */ c("div", { children: [e ? /* @__PURE__ */ s("div", {
|
|
1829
1936
|
className: "mb-3",
|
|
1830
1937
|
children: e
|
|
1831
|
-
}) : /* @__PURE__ */
|
|
1938
|
+
}) : /* @__PURE__ */ s("span", {
|
|
1832
1939
|
className: "text-xl font-bold text-white tracking-tight mb-3 block",
|
|
1833
1940
|
children: "shopito"
|
|
1834
|
-
}), t && /* @__PURE__ */
|
|
1941
|
+
}), t && /* @__PURE__ */ s("p", {
|
|
1835
1942
|
className: "text-sm text-gray-400 max-w-xs",
|
|
1836
1943
|
children: t
|
|
1837
1944
|
})] }),
|
|
1838
|
-
r.length > 0 && /* @__PURE__ */
|
|
1945
|
+
r.length > 0 && /* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("h3", {
|
|
1839
1946
|
className: "text-xs font-semibold uppercase tracking-widest text-gray-500 mb-3",
|
|
1840
1947
|
children: n
|
|
1841
|
-
}), /* @__PURE__ */
|
|
1948
|
+
}), /* @__PURE__ */ s("ul", {
|
|
1842
1949
|
className: "space-y-3",
|
|
1843
1950
|
children: r.map((e, t) => {
|
|
1844
|
-
let n =
|
|
1951
|
+
let n = Le(e.icon), r = /* @__PURE__ */ c("div", {
|
|
1845
1952
|
className: "flex items-start gap-2.5",
|
|
1846
|
-
children: [n && /* @__PURE__ */
|
|
1953
|
+
children: [n && /* @__PURE__ */ s("span", {
|
|
1847
1954
|
className: "mt-0.5 text-primary-400",
|
|
1848
1955
|
children: n
|
|
1849
|
-
}), /* @__PURE__ */
|
|
1956
|
+
}), /* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("p", {
|
|
1850
1957
|
className: "text-xs text-gray-500 leading-none mb-0.5",
|
|
1851
1958
|
children: e.label
|
|
1852
|
-
}), /* @__PURE__ */
|
|
1959
|
+
}), /* @__PURE__ */ s("p", {
|
|
1853
1960
|
className: `text-sm text-gray-200 ${e.href ? "hover:text-white transition-colors" : ""}`,
|
|
1854
1961
|
children: e.value
|
|
1855
1962
|
})] })]
|
|
1856
1963
|
});
|
|
1857
|
-
return /* @__PURE__ */
|
|
1964
|
+
return /* @__PURE__ */ s("li", { children: e.href ? /* @__PURE__ */ s("a", {
|
|
1858
1965
|
href: e.href,
|
|
1859
1966
|
children: r
|
|
1860
1967
|
}) : r }, t);
|
|
1861
1968
|
})
|
|
1862
1969
|
})] }),
|
|
1863
|
-
a.length > 0 && /* @__PURE__ */
|
|
1970
|
+
a.length > 0 && /* @__PURE__ */ s("div", {
|
|
1864
1971
|
className: "flex gap-2 flex-wrap",
|
|
1865
|
-
children: a.map((e, t) => /* @__PURE__ */
|
|
1972
|
+
children: a.map((e, t) => /* @__PURE__ */ s("a", {
|
|
1866
1973
|
href: e.href,
|
|
1867
1974
|
"aria-label": e.label,
|
|
1868
1975
|
className: "w-8 h-8 flex items-center justify-center rounded-lg bg-gray-800 text-gray-400 hover:bg-primary-600 hover:text-white transition-colors",
|
|
1869
|
-
children:
|
|
1976
|
+
children: Re(e.icon)
|
|
1870
1977
|
}, t))
|
|
1871
1978
|
})
|
|
1872
1979
|
]
|
|
1873
|
-
}), i.length > 0 && /* @__PURE__ */
|
|
1980
|
+
}), i.length > 0 && /* @__PURE__ */ s("div", {
|
|
1874
1981
|
className: `grid gap-8 ${i.length === 1 ? "grid-cols-1" : i.length === 2 ? "grid-cols-2" : "grid-cols-2 sm:grid-cols-3"}`,
|
|
1875
|
-
children: i.map((e, t) => /* @__PURE__ */
|
|
1982
|
+
children: i.map((e, t) => /* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("h3", {
|
|
1876
1983
|
className: "text-xs font-semibold uppercase tracking-widest text-gray-500 mb-3",
|
|
1877
1984
|
children: e.heading
|
|
1878
|
-
}), /* @__PURE__ */
|
|
1985
|
+
}), /* @__PURE__ */ s("ul", {
|
|
1879
1986
|
className: "space-y-2",
|
|
1880
|
-
children: e.links.map((e, t) => /* @__PURE__ */
|
|
1987
|
+
children: e.links.map((e, t) => /* @__PURE__ */ s("li", { children: e.href ? /* @__PURE__ */ s("a", {
|
|
1881
1988
|
href: e.href,
|
|
1882
1989
|
className: "text-sm text-gray-400 hover:text-white transition-colors",
|
|
1883
1990
|
children: e.label
|
|
1884
|
-
}) : /* @__PURE__ */
|
|
1991
|
+
}) : /* @__PURE__ */ s("button", {
|
|
1885
1992
|
onClick: e.onClick,
|
|
1886
1993
|
className: "text-sm text-gray-400 hover:text-white transition-colors text-left",
|
|
1887
1994
|
children: e.label
|
|
1888
1995
|
}) }, t))
|
|
1889
1996
|
})] }, t))
|
|
1890
1997
|
})]
|
|
1891
|
-
}), /* @__PURE__ */
|
|
1998
|
+
}), /* @__PURE__ */ s("div", {
|
|
1892
1999
|
className: "border-t border-gray-800",
|
|
1893
|
-
children: /* @__PURE__ */
|
|
2000
|
+
children: /* @__PURE__ */ c("div", {
|
|
1894
2001
|
className: "max-w-7xl mx-auto px-4 py-4 flex flex-wrap items-center justify-between gap-3",
|
|
1895
|
-
children: [/* @__PURE__ */
|
|
2002
|
+
children: [/* @__PURE__ */ s("p", {
|
|
1896
2003
|
className: "text-xs text-gray-500",
|
|
1897
|
-
children:
|
|
1898
|
-
}), l.length > 0 && /* @__PURE__ */
|
|
2004
|
+
children: o ?? `© ${d} Shopito. Všechna práva vyhrazena.`
|
|
2005
|
+
}), l.length > 0 && /* @__PURE__ */ s("nav", {
|
|
1899
2006
|
className: "flex flex-wrap gap-4",
|
|
1900
|
-
children: l.map((e, t) => e.href ? /* @__PURE__ */
|
|
2007
|
+
children: l.map((e, t) => e.href ? /* @__PURE__ */ s("a", {
|
|
1901
2008
|
href: e.href,
|
|
1902
2009
|
className: "text-xs text-gray-500 hover:text-gray-300 transition-colors",
|
|
1903
2010
|
children: e.label
|
|
1904
|
-
}, t) : /* @__PURE__ */
|
|
2011
|
+
}, t) : /* @__PURE__ */ s("button", {
|
|
1905
2012
|
onClick: e.onClick,
|
|
1906
2013
|
className: "text-xs text-gray-500 hover:text-gray-300 transition-colors",
|
|
1907
2014
|
children: e.label
|
|
@@ -1912,6 +2019,6 @@ function Fe({ logo: e, tagline: t, contactHeading: n = "Kontakty", contacts: r =
|
|
|
1912
2019
|
});
|
|
1913
2020
|
}
|
|
1914
2021
|
//#endregion
|
|
1915
|
-
export {
|
|
2022
|
+
export { ne as Alert, ie as Avatar, k as Badge, fe as BannerCarousel, S as Button, we as CallToAction, j as Card, ee as CardBody, te as CardFooter, M as CardHeader, ue as CategoryTree, I as Checkbox, y as Container, ze as Footer, K as Header, D as Heading, w as IconButton, T as Input, C as LoadingSpin, b as Main, de as MegaMenu, F as Modal, U as Pagination, Q as ProductCard, ye as ProductGrid, z as QuantityInput, E as Select, N as Spinner, ae as Stack, O as Text, L as Toggle };
|
|
1916
2023
|
|
|
1917
2024
|
//# sourceMappingURL=index.js.map
|