@shopito/design-system-fe 0.1.19 → 0.1.21
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/common/Carousel/Carousel.d.ts +16 -8
- package/dist/common/Carousel/Carousel.d.ts.map +1 -1
- package/dist/common/Carousel/index.d.ts +1 -0
- package/dist/common/Carousel/index.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 +711 -571
- package/dist/index.js.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +2 -3
package/dist/index.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Fragment as
|
|
3
|
-
import { createPortal as
|
|
1
|
+
import { Children as e, forwardRef as t, useCallback as n, useEffect as r, useId as i, useLayoutEffect as a, useRef as o, useState as s } from "react";
|
|
2
|
+
import { Fragment as c, jsx as l, jsxs as u } from "react/jsx-runtime";
|
|
3
|
+
import { createPortal as d } 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 f = Object.create, p = Object.defineProperty, m = Object.getOwnPropertyDescriptor, h = Object.getOwnPropertyNames, g = Object.getPrototypeOf, _ = Object.prototype.hasOwnProperty, v = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), e = null), t.exports), y = (e, t, n, r) => {
|
|
6
|
+
if (t && typeof t == "object" || typeof t == "function") for (var i = h(t), a = 0, o = i.length, s; a < o; a++) s = i[a], !_.call(e, s) && s !== n && p(e, s, {
|
|
7
7
|
get: ((e) => t[e]).bind(null, s),
|
|
8
|
-
enumerable: !(r =
|
|
8
|
+
enumerable: !(r = m(t, s)) || r.enumerable
|
|
9
9
|
});
|
|
10
10
|
return e;
|
|
11
|
-
},
|
|
11
|
+
}, b = (e, t, n) => (n = e == null ? {} : f(g(e)), y(t || !e || !e.__esModule ? p(n, "default", {
|
|
12
12
|
value: e,
|
|
13
13
|
enumerable: !0
|
|
14
|
-
}) : n, e)),
|
|
14
|
+
}) : n, e)), x = ({ children: e }) => /* @__PURE__ */ l("div", {
|
|
15
15
|
className: "container",
|
|
16
16
|
children: e
|
|
17
|
-
}),
|
|
17
|
+
}), S = ({ children: e }) => /* @__PURE__ */ l("main", {
|
|
18
18
|
className: "main",
|
|
19
|
-
children: /* @__PURE__ */
|
|
20
|
-
}),
|
|
19
|
+
children: /* @__PURE__ */ l(x, { children: e })
|
|
20
|
+
}), C = /* @__PURE__ */ b((/* @__PURE__ */ v(((e, t) => {
|
|
21
21
|
(function() {
|
|
22
22
|
var e = {}.hasOwnProperty;
|
|
23
23
|
function n() {
|
|
@@ -43,137 +43,137 @@ var u = Object.create, d = Object.defineProperty, f = Object.getOwnPropertyDescr
|
|
|
43
43
|
return n;
|
|
44
44
|
}) : window.classNames = n;
|
|
45
45
|
})();
|
|
46
|
-
})))(), 1),
|
|
47
|
-
ref:
|
|
46
|
+
})))(), 1), w = t(({ variant: e = "primary", size: t = "md", loading: n = !1, fullWidth: r = !1, disabled: i, children: a, className: o = "", ...s }, c) => /* @__PURE__ */ u("button", {
|
|
47
|
+
ref: c,
|
|
48
48
|
disabled: i || n,
|
|
49
|
-
className: (0,
|
|
50
|
-
...
|
|
51
|
-
children: [n && /* @__PURE__ */
|
|
49
|
+
className: (0, C.default)("btn", e && `btn-${e}`, t && `btn-${t}`, r && "w-full", o),
|
|
50
|
+
...s,
|
|
51
|
+
children: [n && /* @__PURE__ */ u("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__ */ l("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__ */ l("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
|
+
w.displayName = "Button";
|
|
71
71
|
//#endregion
|
|
72
72
|
//#region src/components/common/LoadingSpin/LoadingSpin.tsx
|
|
73
|
-
var
|
|
74
|
-
className: (0,
|
|
73
|
+
var T = ({ size: e = "md" }) => /* @__PURE__ */ u("svg", {
|
|
74
|
+
className: (0, C.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__ */ l("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__ */ l("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
|
-
}),
|
|
91
|
-
ref:
|
|
90
|
+
}), E = t(({ icon: e, label: t, variant: n = "ghost", size: r = "md", loading: i = !1, disabled: a, className: o = "", ...s }, c) => /* @__PURE__ */ l("button", {
|
|
91
|
+
ref: c,
|
|
92
92
|
disabled: a || i,
|
|
93
93
|
"aria-label": t,
|
|
94
94
|
title: t,
|
|
95
|
-
className: (0,
|
|
96
|
-
...
|
|
97
|
-
children: i ? /* @__PURE__ */
|
|
95
|
+
className: (0, C.default)("icon-button", `icon-button-${n}`, `icon-button-${r}`, o),
|
|
96
|
+
...s,
|
|
97
|
+
children: i ? /* @__PURE__ */ l(T, { size: r }) : e
|
|
98
98
|
}));
|
|
99
|
-
|
|
99
|
+
E.displayName = "IconButton";
|
|
100
100
|
//#endregion
|
|
101
101
|
//#region src/components/common/Input/Input.tsx
|
|
102
|
-
var
|
|
102
|
+
var D = t(({ label: e, error: t, hint: n, leftIcon: r, rightIcon: i, className: a = "", id: o, ...s }, c) => {
|
|
103
103
|
let d = o ?? e?.toLowerCase().replace(/\s+/g, "-");
|
|
104
|
-
return /* @__PURE__ */
|
|
104
|
+
return /* @__PURE__ */ u("div", {
|
|
105
105
|
className: "w-full",
|
|
106
106
|
children: [
|
|
107
|
-
e && /* @__PURE__ */
|
|
107
|
+
e && /* @__PURE__ */ l("label", {
|
|
108
108
|
htmlFor: d,
|
|
109
109
|
className: "input-label",
|
|
110
110
|
children: e
|
|
111
111
|
}),
|
|
112
|
-
/* @__PURE__ */
|
|
112
|
+
/* @__PURE__ */ u("div", {
|
|
113
113
|
className: "relative",
|
|
114
114
|
children: [
|
|
115
|
-
r && /* @__PURE__ */
|
|
115
|
+
r && /* @__PURE__ */ l("span", {
|
|
116
116
|
className: "left-icon",
|
|
117
117
|
children: r
|
|
118
118
|
}),
|
|
119
|
-
/* @__PURE__ */
|
|
120
|
-
ref:
|
|
119
|
+
/* @__PURE__ */ l("input", {
|
|
120
|
+
ref: c,
|
|
121
121
|
id: d,
|
|
122
|
-
className: (0,
|
|
123
|
-
...
|
|
122
|
+
className: (0, C.default)("input", t && "has-error", !!r && "with-left-icon", !!i && "with-right-icon", "w-full", a),
|
|
123
|
+
...s
|
|
124
124
|
}),
|
|
125
|
-
i && /* @__PURE__ */
|
|
125
|
+
i && /* @__PURE__ */ l("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__ */ l("p", {
|
|
132
|
+
className: (0, C.default)("helper-text", t && "has-error"),
|
|
133
133
|
children: t ?? n
|
|
134
134
|
})
|
|
135
135
|
]
|
|
136
136
|
});
|
|
137
137
|
});
|
|
138
|
-
|
|
138
|
+
D.displayName = "Input";
|
|
139
139
|
//#endregion
|
|
140
140
|
//#region src/components/common/Select/Select.tsx
|
|
141
|
-
var
|
|
141
|
+
var O = t(({ label: e, error: t, hint: n, options: r, placeholder: i, className: a = "", id: o, ...s }, c) => {
|
|
142
142
|
let d = o ?? e?.toLowerCase().replace(/\s+/g, "-");
|
|
143
|
-
return /* @__PURE__ */
|
|
144
|
-
className: (0,
|
|
143
|
+
return /* @__PURE__ */ u("div", {
|
|
144
|
+
className: (0, C.default)("select-wrapper", "w-full"),
|
|
145
145
|
children: [
|
|
146
|
-
e && /* @__PURE__ */
|
|
146
|
+
e && /* @__PURE__ */ l("label", {
|
|
147
147
|
htmlFor: d,
|
|
148
148
|
className: "select-label",
|
|
149
149
|
children: e
|
|
150
150
|
}),
|
|
151
|
-
/* @__PURE__ */
|
|
151
|
+
/* @__PURE__ */ u("div", {
|
|
152
152
|
className: "relative",
|
|
153
|
-
children: [/* @__PURE__ */
|
|
154
|
-
ref:
|
|
153
|
+
children: [/* @__PURE__ */ u("select", {
|
|
154
|
+
ref: c,
|
|
155
155
|
id: d,
|
|
156
|
-
className: (0,
|
|
157
|
-
...
|
|
158
|
-
children: [i && /* @__PURE__ */
|
|
156
|
+
className: (0, C.default)("select", "w-full", t && "has-error", a),
|
|
157
|
+
...s,
|
|
158
|
+
children: [i && /* @__PURE__ */ l("option", {
|
|
159
159
|
value: "",
|
|
160
160
|
disabled: !0,
|
|
161
161
|
children: i
|
|
162
|
-
}), r.map((e) => /* @__PURE__ */
|
|
162
|
+
}), r.map((e) => /* @__PURE__ */ l("option", {
|
|
163
163
|
value: e.value,
|
|
164
164
|
disabled: e.disabled,
|
|
165
165
|
children: e.label
|
|
166
166
|
}, e.value))]
|
|
167
|
-
}), /* @__PURE__ */
|
|
167
|
+
}), /* @__PURE__ */ l("span", {
|
|
168
168
|
className: "select-chevron-icon",
|
|
169
|
-
children: /* @__PURE__ */
|
|
169
|
+
children: /* @__PURE__ */ l("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__ */ l("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 E = e(({ label: e, error: t, hint: n, options: r, placeholder: i, className:
|
|
|
181
181
|
})
|
|
182
182
|
})]
|
|
183
183
|
}),
|
|
184
|
-
(t || n) && /* @__PURE__ */
|
|
185
|
-
className: (0,
|
|
184
|
+
(t || n) && /* @__PURE__ */ l("p", {
|
|
185
|
+
className: (0, C.default)("select-helper", t && "has-error"),
|
|
186
186
|
children: t ?? n
|
|
187
187
|
})
|
|
188
188
|
]
|
|
189
189
|
});
|
|
190
190
|
});
|
|
191
|
-
|
|
191
|
+
O.displayName = "Select";
|
|
192
192
|
//#endregion
|
|
193
193
|
//#region src/components/common/Typography/Heading.tsx
|
|
194
|
-
var
|
|
195
|
-
className: (0,
|
|
194
|
+
var k = ({ as: e, level: t = 1, color: n = "default", className: r = "", children: i, ...a }) => /* @__PURE__ */ l(e ?? `h${t}`, {
|
|
195
|
+
className: (0, C.default)(`text-color-${n}`, `heading-size-${t}`, r),
|
|
196
196
|
...a,
|
|
197
197
|
children: i
|
|
198
|
-
}),
|
|
199
|
-
className: (0,
|
|
198
|
+
}), A = ({ variant: e = "body", color: t = "default", as: n = "p", className: r = "", children: i, ...a }) => /* @__PURE__ */ l(n, {
|
|
199
|
+
className: (0, C.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 j({ variant: e = "default", size: t = "md", dot: n = !1, className: r, children: i, ...a }) {
|
|
206
|
+
return /* @__PURE__ */ u("span", {
|
|
207
|
+
className: (0, C.default)("badge", `badge-${e}`, `badge-${t}`, r),
|
|
208
208
|
...a,
|
|
209
|
-
children: [n && /* @__PURE__ */
|
|
209
|
+
children: [n && /* @__PURE__ */ l("span", { className: (0, C.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 M = {
|
|
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 N({ children: e, padding: t = "md", shadow: n = !0, border: r = !0, className: i = "", ...a }) {
|
|
221
|
+
return /* @__PURE__ */ l("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
|
+
M[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 P({ children: e, className: t = "", ...n }) {
|
|
234
|
+
return /* @__PURE__ */ l("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 F({ children: e, className: t = "", ...n }) {
|
|
241
|
+
return /* @__PURE__ */ l("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 I({ children: e, className: t = "", ...n }) {
|
|
248
|
+
return /* @__PURE__ */ l("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 ne({ 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 L({ size: e = "md", color: t = "primary", label: n = "Loading…", className: r = "", ...i }) {
|
|
257
|
+
return /* @__PURE__ */ u("span", {
|
|
258
258
|
role: "status",
|
|
259
259
|
"aria-label": n,
|
|
260
|
-
className: (0,
|
|
260
|
+
className: (0, C.default)("spinner-wrapper", r),
|
|
261
261
|
...i,
|
|
262
|
-
children: [/* @__PURE__ */
|
|
262
|
+
children: [/* @__PURE__ */ l("span", { className: (0, C.default)("spinner", `spinner-${e}`, `spinner-${t}`) }), /* @__PURE__ */ l("span", {
|
|
263
263
|
className: "sr-only",
|
|
264
264
|
children: n
|
|
265
265
|
})]
|
|
@@ -267,65 +267,65 @@ function re({ 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 R = {
|
|
271
|
+
info: /* @__PURE__ */ l("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__ */ l("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__ */ l("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__ */ l("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 z({ variant: e = "info", title: t, children: n, onClose: r, className: i = "", ...a }) {
|
|
293
|
+
return /* @__PURE__ */ u("div", {
|
|
294
294
|
role: "alert",
|
|
295
|
-
className: (0,
|
|
295
|
+
className: (0, C.default)("alert", `alert-${e}`, "w-full", i),
|
|
296
296
|
...a,
|
|
297
297
|
children: [
|
|
298
|
-
/* @__PURE__ */
|
|
298
|
+
/* @__PURE__ */ l("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, C.default)("alert-icon", `alert-icon-${e}`),
|
|
305
|
+
children: R[e]
|
|
306
306
|
}),
|
|
307
|
-
/* @__PURE__ */
|
|
307
|
+
/* @__PURE__ */ u("div", {
|
|
308
308
|
className: "flex-1 min-w-0",
|
|
309
|
-
children: [t && /* @__PURE__ */
|
|
309
|
+
children: [t && /* @__PURE__ */ l("p", {
|
|
310
310
|
className: "alert-title",
|
|
311
311
|
children: t
|
|
312
|
-
}), /* @__PURE__ */
|
|
312
|
+
}), /* @__PURE__ */ l("div", {
|
|
313
313
|
className: "alert-text",
|
|
314
314
|
children: n
|
|
315
315
|
})]
|
|
316
316
|
}),
|
|
317
|
-
r && /* @__PURE__ */
|
|
317
|
+
r && /* @__PURE__ */ l("button", {
|
|
318
318
|
onClick: r,
|
|
319
319
|
className: "alert-close-btn",
|
|
320
320
|
"aria-label": "Close",
|
|
321
|
-
children: /* @__PURE__ */
|
|
321
|
+
children: /* @__PURE__ */ l("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__ */ l("path", {
|
|
329
329
|
strokeLinecap: "round",
|
|
330
330
|
strokeLinejoin: "round",
|
|
331
331
|
d: "M6 18L18 6M6 6l12 12"
|
|
@@ -337,57 +337,57 @@ function ae({ 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 B = {
|
|
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 =
|
|
349
|
-
return
|
|
347
|
+
function ee({ open: e, onClose: t, title: n, children: i, footer: a, size: s = "md", closeOnBackdrop: c = !0 }) {
|
|
348
|
+
let f = o(null);
|
|
349
|
+
return r(() => {
|
|
350
350
|
if (!e) return;
|
|
351
351
|
let t = document.body.style.overflow;
|
|
352
352
|
return document.body.style.overflow = "hidden", () => {
|
|
353
353
|
document.body.style.overflow = t;
|
|
354
354
|
};
|
|
355
|
-
}, [e]),
|
|
355
|
+
}, [e]), r(() => {
|
|
356
356
|
if (!e) return;
|
|
357
357
|
let n = (e) => {
|
|
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 ? d(/* @__PURE__ */ l("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
|
+
c && e.target === f.current && t();
|
|
366
366
|
},
|
|
367
|
-
children: /* @__PURE__ */
|
|
367
|
+
children: /* @__PURE__ */ u("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": n ? "modal-title" : void 0,
|
|
371
|
+
className: ["relative w-full bg-white rounded-xl shadow-xl flex flex-col max-h-[90vh]", B[s]].join(" "),
|
|
372
372
|
children: [
|
|
373
|
-
|
|
373
|
+
n && /* @__PURE__ */ u("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__ */ l("h2", {
|
|
376
376
|
id: "modal-title",
|
|
377
377
|
className: "text-lg font-semibold text-gray-900",
|
|
378
|
-
children:
|
|
379
|
-
}), /* @__PURE__ */
|
|
378
|
+
children: n
|
|
379
|
+
}), /* @__PURE__ */ l("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__ */ l("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__ */ l("path", {
|
|
391
391
|
strokeLinecap: "round",
|
|
392
392
|
strokeLinejoin: "round",
|
|
393
393
|
d: "M6 18L18 6M6 6l12 12"
|
|
@@ -395,13 +395,13 @@ function se({ open: e, onClose: t, title: r, children: a, footer: o, size: u = "
|
|
|
395
395
|
})
|
|
396
396
|
})]
|
|
397
397
|
}),
|
|
398
|
-
/* @__PURE__ */
|
|
398
|
+
/* @__PURE__ */ l("div", {
|
|
399
399
|
className: "flex-1 overflow-y-auto px-6 py-4",
|
|
400
|
-
children:
|
|
400
|
+
children: i
|
|
401
401
|
}),
|
|
402
|
-
|
|
402
|
+
a && /* @__PURE__ */ l("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: a
|
|
405
405
|
})
|
|
406
406
|
]
|
|
407
407
|
})
|
|
@@ -409,73 +409,73 @@ function se({ open: e, onClose: t, title: r, children: a, footer: o, size: u = "
|
|
|
409
409
|
}
|
|
410
410
|
//#endregion
|
|
411
411
|
//#region src/components/common/Checkbox/Checkbox.tsx
|
|
412
|
-
var
|
|
413
|
-
let
|
|
414
|
-
return /* @__PURE__ */
|
|
415
|
-
className: (0,
|
|
416
|
-
children: [/* @__PURE__ */
|
|
412
|
+
var V = t(({ label: e, description: t, error: n, indeterminate: r, className: i = "", id: a, ...o }, s) => {
|
|
413
|
+
let c = a ?? e?.toLowerCase().replace(/\s+/g, "-");
|
|
414
|
+
return /* @__PURE__ */ u("div", {
|
|
415
|
+
className: (0, C.default)("checkbox-wrapper", i),
|
|
416
|
+
children: [/* @__PURE__ */ l("div", {
|
|
417
417
|
className: "checkbox-wrapper-inner",
|
|
418
|
-
children: /* @__PURE__ */
|
|
418
|
+
children: /* @__PURE__ */ l("input", {
|
|
419
419
|
ref: (e) => {
|
|
420
|
-
e && (e.indeterminate = r ?? !1), typeof
|
|
420
|
+
e && (e.indeterminate = r ?? !1), typeof s == "function" ? s(e) : s && (s.current = e);
|
|
421
421
|
},
|
|
422
|
-
id:
|
|
422
|
+
id: c,
|
|
423
423
|
type: "checkbox",
|
|
424
|
-
className: (0,
|
|
424
|
+
className: (0, C.default)("checkbox", n && "has-error"),
|
|
425
425
|
...o
|
|
426
426
|
})
|
|
427
|
-
}), (e || t) && /* @__PURE__ */
|
|
428
|
-
e && /* @__PURE__ */
|
|
429
|
-
htmlFor:
|
|
427
|
+
}), (e || t) && /* @__PURE__ */ u("div", { children: [
|
|
428
|
+
e && /* @__PURE__ */ l("label", {
|
|
429
|
+
htmlFor: c,
|
|
430
430
|
className: "checkbox-label",
|
|
431
431
|
children: e
|
|
432
432
|
}),
|
|
433
|
-
t && /* @__PURE__ */
|
|
433
|
+
t && /* @__PURE__ */ l("p", {
|
|
434
434
|
className: "checkbox-description",
|
|
435
435
|
children: t
|
|
436
436
|
}),
|
|
437
|
-
n && /* @__PURE__ */
|
|
437
|
+
n && /* @__PURE__ */ l("p", {
|
|
438
438
|
className: "checkbox-error",
|
|
439
439
|
children: n
|
|
440
440
|
})
|
|
441
441
|
] })]
|
|
442
442
|
});
|
|
443
443
|
});
|
|
444
|
-
|
|
444
|
+
V.displayName = "Checkbox";
|
|
445
445
|
//#endregion
|
|
446
446
|
//#region src/components/common/Toggle/Toggle.tsx
|
|
447
|
-
var
|
|
448
|
-
let
|
|
449
|
-
return /* @__PURE__ */
|
|
450
|
-
htmlFor:
|
|
451
|
-
className: (0,
|
|
452
|
-
children: [/* @__PURE__ */
|
|
453
|
-
className: (0,
|
|
447
|
+
var H = t(({ label: e, description: t, size: n = "md", className: r = "", id: i, ...a }, o) => {
|
|
448
|
+
let s = i ?? e?.toLowerCase().replace(/\s+/g, "-");
|
|
449
|
+
return /* @__PURE__ */ u("label", {
|
|
450
|
+
htmlFor: s,
|
|
451
|
+
className: (0, C.default)("toggle", a.disabled && "toggle-disabled", r),
|
|
452
|
+
children: [/* @__PURE__ */ u("div", {
|
|
453
|
+
className: (0, C.default)("toggle-wrapper", `toggle-wrapper-${n}`),
|
|
454
454
|
children: [
|
|
455
|
-
/* @__PURE__ */
|
|
455
|
+
/* @__PURE__ */ l("input", {
|
|
456
456
|
ref: o,
|
|
457
|
-
id:
|
|
457
|
+
id: s,
|
|
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__ */ l("div", { className: "toggle-track" }),
|
|
464
|
+
/* @__PURE__ */ l("div", { className: (0, C.default)("toggle-thumb", `toggle-thumb-${n}`) })
|
|
465
465
|
]
|
|
466
|
-
}), (e || t) && /* @__PURE__ */
|
|
466
|
+
}), (e || t) && /* @__PURE__ */ u("div", { children: [e && /* @__PURE__ */ l("span", {
|
|
467
467
|
className: "toggle-label",
|
|
468
468
|
children: e
|
|
469
|
-
}), t && /* @__PURE__ */
|
|
469
|
+
}), t && /* @__PURE__ */ l("span", {
|
|
470
470
|
className: "toggle-description",
|
|
471
471
|
children: t
|
|
472
472
|
})] })]
|
|
473
473
|
});
|
|
474
474
|
});
|
|
475
|
-
|
|
475
|
+
H.displayName = "Toggle";
|
|
476
476
|
//#endregion
|
|
477
477
|
//#region src/components/common/Avatar/Avatar.tsx
|
|
478
|
-
var
|
|
478
|
+
var U = [
|
|
479
479
|
"bg-red-500",
|
|
480
480
|
"bg-orange-500",
|
|
481
481
|
"bg-amber-500",
|
|
@@ -486,38 +486,38 @@ var P = [
|
|
|
486
486
|
"bg-violet-500",
|
|
487
487
|
"bg-pink-500"
|
|
488
488
|
];
|
|
489
|
-
function
|
|
489
|
+
function te({ src: e, alt: t, name: n, size: r = "md", className: i, ...a }) {
|
|
490
490
|
let o = [
|
|
491
491
|
"avatar",
|
|
492
492
|
`avatar-${r}`,
|
|
493
493
|
i
|
|
494
|
-
],
|
|
494
|
+
], s = (e) => {
|
|
495
495
|
let t = 0;
|
|
496
496
|
for (let n = 0; n < e.length; n++) t += e.charCodeAt(n);
|
|
497
|
-
return
|
|
498
|
-
},
|
|
499
|
-
return e ? /* @__PURE__ */
|
|
500
|
-
className: (0,
|
|
497
|
+
return U[t % U.length];
|
|
498
|
+
}, c = (e) => e.split(" ").slice(0, 2).map((e) => e[0]).join("").toUpperCase();
|
|
499
|
+
return e ? /* @__PURE__ */ l("span", {
|
|
500
|
+
className: (0, C.default)(o),
|
|
501
501
|
...a,
|
|
502
|
-
children: /* @__PURE__ */
|
|
502
|
+
children: /* @__PURE__ */ l("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__ */ l("span", {
|
|
508
|
+
className: (0, C.default)(o, s(n)),
|
|
509
509
|
"aria-label": n,
|
|
510
510
|
...a,
|
|
511
|
-
children:
|
|
512
|
-
}) : /* @__PURE__ */
|
|
513
|
-
className: (0,
|
|
511
|
+
children: c(n)
|
|
512
|
+
}) : /* @__PURE__ */ l("span", {
|
|
513
|
+
className: (0, C.default)(o, "avatar-fallback"),
|
|
514
514
|
...a,
|
|
515
|
-
children: /* @__PURE__ */
|
|
515
|
+
children: /* @__PURE__ */ l("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__ */ l("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 ce({ 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
|
|
531
|
-
className: (0,
|
|
530
|
+
var ne = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems: r = "start", justifyContent: i = "normal", className: a, children: o }) => /* @__PURE__ */ l("div", {
|
|
531
|
+
className: (0, C.default)("stack", `stack-${e}`, t && `gap-${t}`, {
|
|
532
532
|
start: "items-start",
|
|
533
533
|
end: "items-end",
|
|
534
534
|
center: "items-center",
|
|
@@ -550,14 +550,14 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
550
550
|
stretch: "justify-stretch"
|
|
551
551
|
}[i], a),
|
|
552
552
|
children: o
|
|
553
|
-
}),
|
|
553
|
+
}), re = {
|
|
554
554
|
1: "grid-cols-1",
|
|
555
555
|
2: "grid-cols-2",
|
|
556
556
|
3: "grid-cols-3",
|
|
557
557
|
4: "grid-cols-4",
|
|
558
558
|
6: "grid-cols-6",
|
|
559
559
|
12: "grid-cols-12"
|
|
560
|
-
},
|
|
560
|
+
}, ie = {
|
|
561
561
|
0: "gap-0",
|
|
562
562
|
1: "gap-1",
|
|
563
563
|
2: "gap-2",
|
|
@@ -569,7 +569,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
569
569
|
10: "gap-10",
|
|
570
570
|
12: "gap-12",
|
|
571
571
|
16: "gap-16"
|
|
572
|
-
},
|
|
572
|
+
}, ae = {
|
|
573
573
|
0: "gap-y-0",
|
|
574
574
|
1: "gap-y-1",
|
|
575
575
|
2: "gap-y-2",
|
|
@@ -581,7 +581,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
581
581
|
10: "gap-y-10",
|
|
582
582
|
12: "gap-y-12",
|
|
583
583
|
16: "gap-y-16"
|
|
584
|
-
},
|
|
584
|
+
}, oe = {
|
|
585
585
|
0: "gap-x-0",
|
|
586
586
|
1: "gap-x-1",
|
|
587
587
|
2: "gap-x-2",
|
|
@@ -593,7 +593,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
593
593
|
10: "gap-x-10",
|
|
594
594
|
12: "gap-x-12",
|
|
595
595
|
16: "gap-x-16"
|
|
596
|
-
},
|
|
596
|
+
}, se = {
|
|
597
597
|
1: "col-span-1",
|
|
598
598
|
2: "col-span-2",
|
|
599
599
|
3: "col-span-3",
|
|
@@ -606,7 +606,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
606
606
|
10: "col-span-10",
|
|
607
607
|
11: "col-span-11",
|
|
608
608
|
12: "col-span-12"
|
|
609
|
-
},
|
|
609
|
+
}, ce = {
|
|
610
610
|
1: "sm:col-span-1",
|
|
611
611
|
2: "sm:col-span-2",
|
|
612
612
|
3: "sm:col-span-3",
|
|
@@ -619,7 +619,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
619
619
|
10: "sm:col-span-10",
|
|
620
620
|
11: "sm:col-span-11",
|
|
621
621
|
12: "sm:col-span-12"
|
|
622
|
-
},
|
|
622
|
+
}, le = {
|
|
623
623
|
1: "md:col-span-1",
|
|
624
624
|
2: "md:col-span-2",
|
|
625
625
|
3: "md:col-span-3",
|
|
@@ -632,7 +632,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
632
632
|
10: "md:col-span-10",
|
|
633
633
|
11: "md:col-span-11",
|
|
634
634
|
12: "md:col-span-12"
|
|
635
|
-
},
|
|
635
|
+
}, ue = {
|
|
636
636
|
1: "lg:col-span-1",
|
|
637
637
|
2: "lg:col-span-2",
|
|
638
638
|
3: "lg:col-span-3",
|
|
@@ -645,7 +645,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
645
645
|
10: "lg:col-span-10",
|
|
646
646
|
11: "lg:col-span-11",
|
|
647
647
|
12: "lg:col-span-12"
|
|
648
|
-
},
|
|
648
|
+
}, de = {
|
|
649
649
|
1: "xl:col-span-1",
|
|
650
650
|
2: "xl:col-span-2",
|
|
651
651
|
3: "xl:col-span-3",
|
|
@@ -658,7 +658,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
658
658
|
10: "xl:col-span-10",
|
|
659
659
|
11: "xl:col-span-11",
|
|
660
660
|
12: "xl:col-span-12"
|
|
661
|
-
},
|
|
661
|
+
}, fe = {
|
|
662
662
|
1: "col-start-2",
|
|
663
663
|
2: "col-start-3",
|
|
664
664
|
3: "col-start-4",
|
|
@@ -670,7 +670,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
670
670
|
9: "col-start-10",
|
|
671
671
|
10: "col-start-11",
|
|
672
672
|
11: "col-start-12"
|
|
673
|
-
},
|
|
673
|
+
}, pe = {
|
|
674
674
|
1: "sm:col-start-2",
|
|
675
675
|
2: "sm:col-start-3",
|
|
676
676
|
3: "sm:col-start-4",
|
|
@@ -682,7 +682,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
682
682
|
9: "sm:col-start-10",
|
|
683
683
|
10: "sm:col-start-11",
|
|
684
684
|
11: "sm:col-start-12"
|
|
685
|
-
},
|
|
685
|
+
}, me = {
|
|
686
686
|
1: "md:col-start-2",
|
|
687
687
|
2: "md:col-start-3",
|
|
688
688
|
3: "md:col-start-4",
|
|
@@ -694,7 +694,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
694
694
|
9: "md:col-start-10",
|
|
695
695
|
10: "md:col-start-11",
|
|
696
696
|
11: "md:col-start-12"
|
|
697
|
-
},
|
|
697
|
+
}, he = {
|
|
698
698
|
1: "lg:col-start-2",
|
|
699
699
|
2: "lg:col-start-3",
|
|
700
700
|
3: "lg:col-start-4",
|
|
@@ -706,7 +706,7 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
706
706
|
9: "lg:col-start-10",
|
|
707
707
|
10: "lg:col-start-11",
|
|
708
708
|
11: "lg:col-start-12"
|
|
709
|
-
},
|
|
709
|
+
}, ge = {
|
|
710
710
|
1: "xl:col-start-2",
|
|
711
711
|
2: "xl:col-start-3",
|
|
712
712
|
3: "xl:col-start-4",
|
|
@@ -718,32 +718,32 @@ var le = ({ direction: e = "row", gap: t, alignItems: n = "start", justifyItems:
|
|
|
718
718
|
9: "xl:col-start-10",
|
|
719
719
|
10: "xl:col-start-11",
|
|
720
720
|
11: "xl:col-start-12"
|
|
721
|
-
},
|
|
722
|
-
className: (0,
|
|
721
|
+
}, W = ({ children: e, cols: t = 12, gap: n, rowGap: r, colGap: i, as: a = "div", className: o }) => /* @__PURE__ */ l(a, {
|
|
722
|
+
className: (0, C.default)("grid", "w-full", re[t], n !== void 0 && ie[n], r !== void 0 && ae[r], i !== void 0 && oe[i], o),
|
|
723
723
|
children: e
|
|
724
724
|
});
|
|
725
|
-
|
|
726
|
-
var
|
|
727
|
-
className: (0,
|
|
725
|
+
W.displayName = "Grid";
|
|
726
|
+
var G = ({ children: e, span: t, sm: n, md: r, lg: i, xl: a, offset: o, smOffset: s, mdOffset: c, lgOffset: u, xlOffset: d, className: f, ...p }) => /* @__PURE__ */ l("div", {
|
|
727
|
+
className: (0, C.default)(t && se[t], n && ce[n], r && le[r], i && ue[i], a && de[a], o && fe[o], s && pe[s], c && me[c], u && he[u], d && ge[d], f),
|
|
728
728
|
...p,
|
|
729
729
|
children: e
|
|
730
730
|
});
|
|
731
|
-
|
|
731
|
+
G.displayName = "Col";
|
|
732
732
|
//#endregion
|
|
733
733
|
//#region src/components/common/QuantityInput/QuantityInput.tsx
|
|
734
|
-
var
|
|
735
|
-
let _ =
|
|
736
|
-
|
|
737
|
-
document.activeElement !== y.current &&
|
|
734
|
+
var K = ({ value: e, onChange: t, min: n = 1, max: a = 999, step: c = 1, disabled: d = !1, label: f, error: p, hint: m, id: h, className: g }) => {
|
|
735
|
+
let _ = i(), v = h ?? _, y = o(null), [b, x] = s(String(e));
|
|
736
|
+
r(() => {
|
|
737
|
+
document.activeElement !== y.current && x(String(e));
|
|
738
738
|
}, [e]);
|
|
739
|
-
let
|
|
740
|
-
let r = parseInt(n, 10), i = isNaN(r) ? e :
|
|
741
|
-
|
|
739
|
+
let S = (e) => Math.min(a, Math.max(n, e)), w = (n) => {
|
|
740
|
+
let r = parseInt(n, 10), i = isNaN(r) ? e : S(r);
|
|
741
|
+
x(String(i)), i !== e && t(i);
|
|
742
742
|
}, T = (e) => {
|
|
743
743
|
let n = e.target.value.replace(/[^0-9]/g, "");
|
|
744
|
-
|
|
744
|
+
x(n);
|
|
745
745
|
let r = parseInt(n, 10);
|
|
746
|
-
isNaN(r) || t(
|
|
746
|
+
isNaN(r) || t(S(r));
|
|
747
747
|
}, E = () => w(b), D = (e) => {
|
|
748
748
|
if (e.key === "Enter") {
|
|
749
749
|
w(b), y.current?.blur();
|
|
@@ -759,28 +759,28 @@ var H = ({ value: e, onChange: t, min: o = 1, max: l = 999, step: u = 1, disable
|
|
|
759
759
|
"Home",
|
|
760
760
|
"End"
|
|
761
761
|
].includes(e.key) && !/^[0-9]$/.test(e.key) && !e.metaKey && !e.ctrlKey && e.preventDefault();
|
|
762
|
-
}, O = () => t(
|
|
763
|
-
return /* @__PURE__ */
|
|
764
|
-
className: (0,
|
|
762
|
+
}, O = () => t(S(e - c)), k = () => t(S(e + c)), A = e - c >= n, j = e + c <= a;
|
|
763
|
+
return /* @__PURE__ */ u("div", {
|
|
764
|
+
className: (0, C.default)("quantity-input-wrapper", g),
|
|
765
765
|
children: [
|
|
766
|
-
f && /* @__PURE__ */
|
|
766
|
+
f && /* @__PURE__ */ l("label", {
|
|
767
767
|
htmlFor: v,
|
|
768
768
|
className: "input-label",
|
|
769
769
|
children: f
|
|
770
770
|
}),
|
|
771
|
-
/* @__PURE__ */
|
|
772
|
-
className: (0,
|
|
771
|
+
/* @__PURE__ */ u("div", {
|
|
772
|
+
className: (0, C.default)("quantity-input", p && "has-error", d && "is-disabled"),
|
|
773
773
|
children: [
|
|
774
|
-
/* @__PURE__ */
|
|
774
|
+
/* @__PURE__ */ l("button", {
|
|
775
775
|
type: "button",
|
|
776
776
|
className: "quantity-btn",
|
|
777
777
|
onClick: O,
|
|
778
778
|
disabled: d || !A,
|
|
779
779
|
"aria-label": "Snížit množství",
|
|
780
780
|
tabIndex: -1,
|
|
781
|
-
children: /* @__PURE__ */
|
|
781
|
+
children: /* @__PURE__ */ l(_e, {})
|
|
782
782
|
}),
|
|
783
|
-
/* @__PURE__ */
|
|
783
|
+
/* @__PURE__ */ l("input", {
|
|
784
784
|
ref: y,
|
|
785
785
|
id: v,
|
|
786
786
|
type: "text",
|
|
@@ -792,122 +792,122 @@ var H = ({ value: e, onChange: t, min: o = 1, max: l = 999, step: u = 1, disable
|
|
|
792
792
|
onKeyDown: D,
|
|
793
793
|
disabled: d,
|
|
794
794
|
"aria-label": f ?? "Množství",
|
|
795
|
-
"aria-valuemin":
|
|
796
|
-
"aria-valuemax":
|
|
795
|
+
"aria-valuemin": n,
|
|
796
|
+
"aria-valuemax": a,
|
|
797
797
|
"aria-valuenow": e
|
|
798
798
|
}),
|
|
799
|
-
/* @__PURE__ */
|
|
799
|
+
/* @__PURE__ */ l("button", {
|
|
800
800
|
type: "button",
|
|
801
801
|
className: "quantity-btn",
|
|
802
802
|
onClick: k,
|
|
803
803
|
disabled: d || !j,
|
|
804
804
|
"aria-label": "Zvýšit množství",
|
|
805
805
|
tabIndex: -1,
|
|
806
|
-
children: /* @__PURE__ */
|
|
806
|
+
children: /* @__PURE__ */ l(ve, {})
|
|
807
807
|
})
|
|
808
808
|
]
|
|
809
809
|
}),
|
|
810
|
-
(p || m) && /* @__PURE__ */
|
|
811
|
-
className: (0,
|
|
810
|
+
(p || m) && /* @__PURE__ */ l("p", {
|
|
811
|
+
className: (0, C.default)("helper-text", p && "has-error"),
|
|
812
812
|
children: p ?? m
|
|
813
813
|
})
|
|
814
814
|
]
|
|
815
815
|
});
|
|
816
816
|
};
|
|
817
|
-
|
|
818
|
-
var
|
|
817
|
+
K.displayName = "QuantityInput";
|
|
818
|
+
var _e = () => /* @__PURE__ */ l("svg", {
|
|
819
819
|
width: "12",
|
|
820
820
|
height: "2",
|
|
821
821
|
viewBox: "0 0 12 2",
|
|
822
822
|
fill: "none",
|
|
823
823
|
"aria-hidden": "true",
|
|
824
|
-
children: /* @__PURE__ */
|
|
824
|
+
children: /* @__PURE__ */ l("path", {
|
|
825
825
|
d: "M1 1H11",
|
|
826
826
|
stroke: "currentColor",
|
|
827
827
|
strokeWidth: "1.5",
|
|
828
828
|
strokeLinecap: "round"
|
|
829
829
|
})
|
|
830
|
-
}),
|
|
830
|
+
}), ve = () => /* @__PURE__ */ l("svg", {
|
|
831
831
|
width: "12",
|
|
832
832
|
height: "12",
|
|
833
833
|
viewBox: "0 0 12 12",
|
|
834
834
|
fill: "none",
|
|
835
835
|
"aria-hidden": "true",
|
|
836
|
-
children: /* @__PURE__ */
|
|
836
|
+
children: /* @__PURE__ */ l("path", {
|
|
837
837
|
d: "M6 1V11M1 6H11",
|
|
838
838
|
stroke: "currentColor",
|
|
839
839
|
strokeWidth: "1.5",
|
|
840
840
|
strokeLinecap: "round"
|
|
841
841
|
})
|
|
842
|
-
}),
|
|
843
|
-
if (t <= n * 2 + 5) return
|
|
842
|
+
}), q = (e, t) => Array.from({ length: t - e + 1 }, (t, n) => e + n), ye = (e, t, n) => {
|
|
843
|
+
if (t <= n * 2 + 5) return q(1, t);
|
|
844
844
|
let r = Math.max(e - n, 1), i = Math.min(e + n, t), a = r > 2, o = i < t - 1;
|
|
845
845
|
return !a && o ? [
|
|
846
|
-
...
|
|
846
|
+
...q(1, 3 + n * 2),
|
|
847
847
|
"…",
|
|
848
848
|
t
|
|
849
849
|
] : a && !o ? [
|
|
850
850
|
1,
|
|
851
851
|
"…",
|
|
852
|
-
...
|
|
852
|
+
...q(t - (2 + n * 2), t)
|
|
853
853
|
] : [
|
|
854
854
|
1,
|
|
855
855
|
"…",
|
|
856
|
-
...
|
|
856
|
+
...q(r, i),
|
|
857
857
|
"…",
|
|
858
858
|
t
|
|
859
859
|
];
|
|
860
|
-
},
|
|
860
|
+
}, J = ({ active: e, disabled: t, children: n, ...r }) => /* @__PURE__ */ l("button", {
|
|
861
861
|
disabled: t,
|
|
862
|
-
className: (0,
|
|
862
|
+
className: (0, C.default)("pagination-button", `pagination-button-${e ? "active" : "inactive"}`),
|
|
863
863
|
...r,
|
|
864
864
|
children: n
|
|
865
|
-
}),
|
|
866
|
-
let i =
|
|
867
|
-
return /* @__PURE__ */
|
|
865
|
+
}), Y = ({ page: e, totalPages: t, onPageChange: n, siblingsCount: r = 1 }) => {
|
|
866
|
+
let i = ye(e, t, r);
|
|
867
|
+
return /* @__PURE__ */ u("nav", {
|
|
868
868
|
"aria-label": "Pagination",
|
|
869
869
|
className: "pagination",
|
|
870
870
|
children: [
|
|
871
|
-
/* @__PURE__ */
|
|
871
|
+
/* @__PURE__ */ l(J, {
|
|
872
872
|
disabled: e <= 1,
|
|
873
873
|
onClick: () => n(e - 1),
|
|
874
874
|
"aria-label": "Previous page",
|
|
875
|
-
children: /* @__PURE__ */
|
|
875
|
+
children: /* @__PURE__ */ l("svg", {
|
|
876
876
|
xmlns: "http://www.w3.org/2000/svg",
|
|
877
877
|
fill: "none",
|
|
878
878
|
viewBox: "0 0 24 24",
|
|
879
879
|
strokeWidth: 2,
|
|
880
880
|
stroke: "currentColor",
|
|
881
881
|
className: "w-4 h-4",
|
|
882
|
-
children: /* @__PURE__ */
|
|
882
|
+
children: /* @__PURE__ */ l("path", {
|
|
883
883
|
strokeLinecap: "round",
|
|
884
884
|
strokeLinejoin: "round",
|
|
885
885
|
d: "M15.75 19.5L8.25 12l7.5-7.5"
|
|
886
886
|
})
|
|
887
887
|
})
|
|
888
888
|
}),
|
|
889
|
-
i.map((t, r) => t === "…" ? /* @__PURE__ */
|
|
889
|
+
i.map((t, r) => t === "…" ? /* @__PURE__ */ l("span", {
|
|
890
890
|
className: "pagination-dots",
|
|
891
891
|
children: "…"
|
|
892
|
-
}, `dots-${r}`) : /* @__PURE__ */
|
|
892
|
+
}, `dots-${r}`) : /* @__PURE__ */ l(J, {
|
|
893
893
|
active: t === e,
|
|
894
894
|
onClick: () => n(t),
|
|
895
895
|
"aria-label": `Page ${t}`,
|
|
896
896
|
"aria-current": t === e ? "page" : void 0,
|
|
897
897
|
children: t
|
|
898
898
|
}, t)),
|
|
899
|
-
/* @__PURE__ */
|
|
899
|
+
/* @__PURE__ */ l(J, {
|
|
900
900
|
disabled: e >= t,
|
|
901
901
|
onClick: () => n(e + 1),
|
|
902
902
|
"aria-label": "Next page",
|
|
903
|
-
children: /* @__PURE__ */
|
|
903
|
+
children: /* @__PURE__ */ l("svg", {
|
|
904
904
|
xmlns: "http://www.w3.org/2000/svg",
|
|
905
905
|
fill: "none",
|
|
906
906
|
viewBox: "0 0 24 24",
|
|
907
907
|
strokeWidth: 2,
|
|
908
908
|
stroke: "currentColor",
|
|
909
909
|
className: "w-4 h-4",
|
|
910
|
-
children: /* @__PURE__ */
|
|
910
|
+
children: /* @__PURE__ */ l("path", {
|
|
911
911
|
strokeLinecap: "round",
|
|
912
912
|
strokeLinejoin: "round",
|
|
913
913
|
d: "M8.25 4.5l7.5 7.5-7.5 7.5"
|
|
@@ -918,10 +918,150 @@ var ye = () => /* @__PURE__ */ s("svg", {
|
|
|
918
918
|
});
|
|
919
919
|
};
|
|
920
920
|
//#endregion
|
|
921
|
+
//#region src/components/common/Carousel/Carousel.tsx
|
|
922
|
+
function be({ children: t, slidesPerView: i = 1, gap: d = 16, arrows: f = !0, dots: p = !0, autoPlay: m = !1, autoPlayInterval: h = 4e3, loop: g = !1, className: _, ...v }) {
|
|
923
|
+
let y = e.toArray(t), b = y.length, x = g ? b - 1 : Math.max(0, b - i), S = b > i, [w, T] = s(0), [E, D] = s(!1), O = o(null), k = o(null), A = o(null), j = o(null), M = n((e, t = !0) => {
|
|
924
|
+
let n = O.current;
|
|
925
|
+
if (!n) return;
|
|
926
|
+
let r = n.children[e];
|
|
927
|
+
r && (t || (n.style.transition = "none", n.getBoundingClientRect()), n.style.transform = `translateX(${-r.offsetLeft}px)`, t || (n.getBoundingClientRect(), n.style.transition = ""));
|
|
928
|
+
}, []), N = n((e = !0) => {
|
|
929
|
+
let t = O.current, n = k.current;
|
|
930
|
+
if (!t || !n) return;
|
|
931
|
+
e || (n.style.transition = "none", n.getBoundingClientRect()), t.style.alignItems = "flex-start";
|
|
932
|
+
let r = Math.max(0, ...Array.from(t.children).map((e) => e.offsetHeight));
|
|
933
|
+
t.style.alignItems = "", r > 0 && (n.style.height = `${r}px`), e || (n.getBoundingClientRect(), n.style.transition = "");
|
|
934
|
+
}, []), P = n((e) => {
|
|
935
|
+
T(g ? (e % b + b) % b : Math.max(0, Math.min(e, x)));
|
|
936
|
+
}, [
|
|
937
|
+
b,
|
|
938
|
+
g,
|
|
939
|
+
x
|
|
940
|
+
]), F = n(() => P(w - 1), [w, P]), I = n(() => P(w + 1), [w, P]);
|
|
941
|
+
a(() => {
|
|
942
|
+
N(), M(w);
|
|
943
|
+
}, [
|
|
944
|
+
w,
|
|
945
|
+
M,
|
|
946
|
+
N
|
|
947
|
+
]), r(() => {
|
|
948
|
+
let e = O.current;
|
|
949
|
+
if (!e) return;
|
|
950
|
+
let t = () => N(), n = Array.from(e.querySelectorAll("img"));
|
|
951
|
+
return n.forEach((e) => {
|
|
952
|
+
e.complete || e.addEventListener("load", t, { once: !0 });
|
|
953
|
+
}), () => n.forEach((e) => e.removeEventListener("load", t));
|
|
954
|
+
}, [N]), r(() => {
|
|
955
|
+
let e = k.current;
|
|
956
|
+
if (!e) return;
|
|
957
|
+
let t = new ResizeObserver(() => {
|
|
958
|
+
N(!1), M(w, !1);
|
|
959
|
+
});
|
|
960
|
+
return t.observe(e), () => t.disconnect();
|
|
961
|
+
}, [
|
|
962
|
+
w,
|
|
963
|
+
M,
|
|
964
|
+
N
|
|
965
|
+
]), r(() => {
|
|
966
|
+
if (!(!m || E || !S)) return A.current = setInterval(I, h), () => {
|
|
967
|
+
A.current && clearInterval(A.current);
|
|
968
|
+
};
|
|
969
|
+
}, [
|
|
970
|
+
m,
|
|
971
|
+
E,
|
|
972
|
+
h,
|
|
973
|
+
I,
|
|
974
|
+
S
|
|
975
|
+
]);
|
|
976
|
+
let L = (e) => {
|
|
977
|
+
j.current = e.touches[0].clientX;
|
|
978
|
+
}, R = (e) => {
|
|
979
|
+
if (j.current === null) return;
|
|
980
|
+
let t = e.changedTouches[0].clientX - j.current;
|
|
981
|
+
Math.abs(t) > 50 && (t < 0 ? I() : F()), j.current = null;
|
|
982
|
+
};
|
|
983
|
+
if (b === 0) return null;
|
|
984
|
+
let z = g || w > 0, B = g || w < x;
|
|
985
|
+
return /* @__PURE__ */ u("div", {
|
|
986
|
+
className: (0, C.default)("carousel", _),
|
|
987
|
+
onMouseEnter: () => D(!0),
|
|
988
|
+
onMouseLeave: () => D(!1),
|
|
989
|
+
onTouchStart: L,
|
|
990
|
+
onTouchEnd: R,
|
|
991
|
+
...v,
|
|
992
|
+
children: [
|
|
993
|
+
/* @__PURE__ */ l("div", {
|
|
994
|
+
ref: k,
|
|
995
|
+
className: "carousel-viewport",
|
|
996
|
+
children: /* @__PURE__ */ l("div", {
|
|
997
|
+
ref: O,
|
|
998
|
+
className: "carousel-track",
|
|
999
|
+
style: { gap: `${d}px` },
|
|
1000
|
+
children: y.map((e, t) => /* @__PURE__ */ l("div", {
|
|
1001
|
+
className: "carousel-slide",
|
|
1002
|
+
style: {
|
|
1003
|
+
minWidth: `calc((100% - ${d}px * ${i - 1}) / ${i})`,
|
|
1004
|
+
maxWidth: `calc((100% - ${d}px * ${i - 1}) / ${i})`
|
|
1005
|
+
},
|
|
1006
|
+
"aria-hidden": t < w || t >= w + i,
|
|
1007
|
+
children: e
|
|
1008
|
+
}, t))
|
|
1009
|
+
})
|
|
1010
|
+
}),
|
|
1011
|
+
f && S && /* @__PURE__ */ u(c, { children: [/* @__PURE__ */ l("button", {
|
|
1012
|
+
onClick: F,
|
|
1013
|
+
disabled: !z,
|
|
1014
|
+
className: "carousel-btn carousel-btn-prev",
|
|
1015
|
+
"aria-label": "Previous slide",
|
|
1016
|
+
children: /* @__PURE__ */ l("svg", {
|
|
1017
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1018
|
+
fill: "none",
|
|
1019
|
+
viewBox: "0 0 24 24",
|
|
1020
|
+
strokeWidth: 2,
|
|
1021
|
+
stroke: "currentColor",
|
|
1022
|
+
className: "w-5 h-5",
|
|
1023
|
+
children: /* @__PURE__ */ l("path", {
|
|
1024
|
+
strokeLinecap: "round",
|
|
1025
|
+
strokeLinejoin: "round",
|
|
1026
|
+
d: "M15.75 19.5L8.25 12l7.5-7.5"
|
|
1027
|
+
})
|
|
1028
|
+
})
|
|
1029
|
+
}), /* @__PURE__ */ l("button", {
|
|
1030
|
+
onClick: I,
|
|
1031
|
+
disabled: !B,
|
|
1032
|
+
className: "carousel-btn carousel-btn-next",
|
|
1033
|
+
"aria-label": "Next slide",
|
|
1034
|
+
children: /* @__PURE__ */ l("svg", {
|
|
1035
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1036
|
+
fill: "none",
|
|
1037
|
+
viewBox: "0 0 24 24",
|
|
1038
|
+
strokeWidth: 2,
|
|
1039
|
+
stroke: "currentColor",
|
|
1040
|
+
className: "w-5 h-5",
|
|
1041
|
+
children: /* @__PURE__ */ l("path", {
|
|
1042
|
+
strokeLinecap: "round",
|
|
1043
|
+
strokeLinejoin: "round",
|
|
1044
|
+
d: "M8.25 4.5l7.5 7.5-7.5 7.5"
|
|
1045
|
+
})
|
|
1046
|
+
})
|
|
1047
|
+
})] }),
|
|
1048
|
+
p && S && /* @__PURE__ */ l("div", {
|
|
1049
|
+
className: "carousel-dots",
|
|
1050
|
+
children: Array.from({ length: x + 1 }).map((e, t) => /* @__PURE__ */ l("button", {
|
|
1051
|
+
onClick: () => P(t),
|
|
1052
|
+
className: (0, C.default)("carousel-dot", t === w && "carousel-dot-active"),
|
|
1053
|
+
"aria-label": `Go to slide ${t + 1}`,
|
|
1054
|
+
"aria-current": t === w ? "true" : void 0
|
|
1055
|
+
}, t))
|
|
1056
|
+
})
|
|
1057
|
+
]
|
|
1058
|
+
});
|
|
1059
|
+
}
|
|
1060
|
+
//#endregion
|
|
921
1061
|
//#region src/components/Header/Header.tsx
|
|
922
|
-
function
|
|
923
|
-
let [
|
|
924
|
-
return /* @__PURE__ */
|
|
1062
|
+
function X({ trigger: e, items: t, onSelect: n, getKey: r, renderItem: i }) {
|
|
1063
|
+
let [a, c] = s(!1), d = o(null), f = () => c(!1);
|
|
1064
|
+
return /* @__PURE__ */ u("div", {
|
|
925
1065
|
ref: d,
|
|
926
1066
|
className: "relative",
|
|
927
1067
|
onBlur: (e) => {
|
|
@@ -930,83 +1070,83 @@ function K({ trigger: e, items: t, onSelect: n, getKey: r, renderItem: o }) {
|
|
|
930
1070
|
onKeyDown: (e) => {
|
|
931
1071
|
e.key === "Escape" && f();
|
|
932
1072
|
},
|
|
933
|
-
children: [/* @__PURE__ */
|
|
1073
|
+
children: [/* @__PURE__ */ l("div", {
|
|
934
1074
|
role: "button",
|
|
935
1075
|
tabIndex: 0,
|
|
936
|
-
onClick: () =>
|
|
937
|
-
onKeyDown: (e) => e.key === "Enter" &&
|
|
1076
|
+
onClick: () => c((e) => !e),
|
|
1077
|
+
onKeyDown: (e) => e.key === "Enter" && c((e) => !e),
|
|
938
1078
|
className: "cursor-pointer",
|
|
939
1079
|
children: e
|
|
940
|
-
}),
|
|
1080
|
+
}), a && /* @__PURE__ */ l("ul", {
|
|
941
1081
|
role: "menu",
|
|
942
1082
|
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",
|
|
943
|
-
children: t.map((e) => /* @__PURE__ */
|
|
1083
|
+
children: t.map((e) => /* @__PURE__ */ l("li", {
|
|
944
1084
|
role: "none",
|
|
945
|
-
children: /* @__PURE__ */
|
|
1085
|
+
children: /* @__PURE__ */ l("button", {
|
|
946
1086
|
role: "menuitem",
|
|
947
1087
|
className: "w-full px-3 py-1.5 text-left hover:bg-gray-50 text-gray-700 whitespace-nowrap",
|
|
948
1088
|
onClick: () => {
|
|
949
1089
|
n(e), f();
|
|
950
1090
|
},
|
|
951
|
-
children:
|
|
1091
|
+
children: i ? i(e) : e.label
|
|
952
1092
|
})
|
|
953
1093
|
}, r(e)))
|
|
954
1094
|
})]
|
|
955
1095
|
});
|
|
956
1096
|
}
|
|
957
|
-
function
|
|
958
|
-
return /* @__PURE__ */
|
|
1097
|
+
function xe() {
|
|
1098
|
+
return /* @__PURE__ */ l("svg", {
|
|
959
1099
|
xmlns: "http://www.w3.org/2000/svg",
|
|
960
1100
|
fill: "none",
|
|
961
1101
|
viewBox: "0 0 24 24",
|
|
962
1102
|
strokeWidth: 1.5,
|
|
963
1103
|
stroke: "currentColor",
|
|
964
1104
|
className: "w-4 h-4",
|
|
965
|
-
children: /* @__PURE__ */
|
|
1105
|
+
children: /* @__PURE__ */ l("path", {
|
|
966
1106
|
strokeLinecap: "round",
|
|
967
1107
|
strokeLinejoin: "round",
|
|
968
1108
|
d: "M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 15.803a7.5 7.5 0 0010.607 10.607z"
|
|
969
1109
|
})
|
|
970
1110
|
});
|
|
971
1111
|
}
|
|
972
|
-
function
|
|
973
|
-
let [y, b] =
|
|
974
|
-
return /* @__PURE__ */
|
|
1112
|
+
function Se({ logo: e, searchPlaceholder: t = "Hledat produkty…", onSearch: n, cartItemCount: r = 0, onCartClick: i, isLoggedIn: a = !1, customerName: o, onCustomerClick: d, currencies: f = [], selectedCurrency: p, onCurrencyChange: m, locales: h = [], selectedLocale: g, onLocaleChange: _, rightSlot: v }) {
|
|
1113
|
+
let [y, b] = s(""), x = f.find((e) => e.code === p), S = h.find((e) => e.code === g);
|
|
1114
|
+
return /* @__PURE__ */ l("header", {
|
|
975
1115
|
className: "bg-white border-b border-gray-200 sticky top-0 z-40",
|
|
976
|
-
children: /* @__PURE__ */
|
|
1116
|
+
children: /* @__PURE__ */ u("div", {
|
|
977
1117
|
className: "max-w-7xl mx-auto px-4 h-16 flex items-center gap-4",
|
|
978
1118
|
children: [
|
|
979
|
-
/* @__PURE__ */
|
|
1119
|
+
/* @__PURE__ */ l("div", {
|
|
980
1120
|
className: "shrink-0",
|
|
981
|
-
children: e ?? /* @__PURE__ */
|
|
1121
|
+
children: e ?? /* @__PURE__ */ l("span", {
|
|
982
1122
|
className: "text-xl font-bold text-primary-600 tracking-tight",
|
|
983
1123
|
children: "shopito"
|
|
984
1124
|
})
|
|
985
1125
|
}),
|
|
986
|
-
/* @__PURE__ */
|
|
1126
|
+
/* @__PURE__ */ l("div", {
|
|
987
1127
|
className: "flex-1 max-w-xl",
|
|
988
|
-
children: /* @__PURE__ */
|
|
1128
|
+
children: /* @__PURE__ */ l(D, {
|
|
989
1129
|
placeholder: t,
|
|
990
1130
|
value: y,
|
|
991
1131
|
onChange: (e) => b(e.target.value),
|
|
992
1132
|
onKeyDown: (e) => {
|
|
993
1133
|
e.key === "Enter" && n?.(y);
|
|
994
1134
|
},
|
|
995
|
-
leftIcon: /* @__PURE__ */
|
|
996
|
-
rightIcon: y ? /* @__PURE__ */
|
|
1135
|
+
leftIcon: /* @__PURE__ */ l(xe, {}),
|
|
1136
|
+
rightIcon: y ? /* @__PURE__ */ l("button", {
|
|
997
1137
|
onClick: () => {
|
|
998
1138
|
b(""), n?.("");
|
|
999
1139
|
},
|
|
1000
1140
|
className: "hover:text-gray-600 transition-colors",
|
|
1001
1141
|
"aria-label": "Clear search",
|
|
1002
|
-
children: /* @__PURE__ */
|
|
1142
|
+
children: /* @__PURE__ */ l("svg", {
|
|
1003
1143
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1004
1144
|
fill: "none",
|
|
1005
1145
|
viewBox: "0 0 24 24",
|
|
1006
1146
|
strokeWidth: 2,
|
|
1007
1147
|
stroke: "currentColor",
|
|
1008
1148
|
className: "w-3.5 h-3.5",
|
|
1009
|
-
children: /* @__PURE__ */
|
|
1149
|
+
children: /* @__PURE__ */ l("path", {
|
|
1010
1150
|
strokeLinecap: "round",
|
|
1011
1151
|
strokeLinejoin: "round",
|
|
1012
1152
|
d: "M6 18L18 6M6 6l12 12"
|
|
@@ -1015,85 +1155,85 @@ function Ce({ logo: e, searchPlaceholder: t = "Hledat produkty…", onSearch: n,
|
|
|
1015
1155
|
}) : void 0
|
|
1016
1156
|
})
|
|
1017
1157
|
}),
|
|
1018
|
-
/* @__PURE__ */
|
|
1158
|
+
/* @__PURE__ */ u("div", {
|
|
1019
1159
|
className: "flex items-center gap-1 shrink-0 ml-auto",
|
|
1020
1160
|
children: [
|
|
1021
|
-
f.length > 0 && /* @__PURE__ */
|
|
1022
|
-
trigger: /* @__PURE__ */
|
|
1161
|
+
f.length > 0 && /* @__PURE__ */ l(X, {
|
|
1162
|
+
trigger: /* @__PURE__ */ u("button", {
|
|
1023
1163
|
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",
|
|
1024
1164
|
children: [
|
|
1025
|
-
/* @__PURE__ */
|
|
1026
|
-
/* @__PURE__ */
|
|
1165
|
+
/* @__PURE__ */ l("span", { children: x?.symbol ?? p }),
|
|
1166
|
+
/* @__PURE__ */ l("span", {
|
|
1027
1167
|
className: "text-xs text-gray-400",
|
|
1028
1168
|
children: x?.code ?? p
|
|
1029
1169
|
}),
|
|
1030
|
-
/* @__PURE__ */
|
|
1170
|
+
/* @__PURE__ */ l(Z, { className: "w-3 h-3 text-gray-400" })
|
|
1031
1171
|
]
|
|
1032
1172
|
}),
|
|
1033
1173
|
items: f,
|
|
1034
1174
|
getKey: (e) => e.code,
|
|
1035
1175
|
onSelect: (e) => m?.(e.code),
|
|
1036
|
-
renderItem: (e) => /* @__PURE__ */
|
|
1176
|
+
renderItem: (e) => /* @__PURE__ */ u("span", {
|
|
1037
1177
|
className: "flex items-center gap-2",
|
|
1038
|
-
children: [/* @__PURE__ */
|
|
1178
|
+
children: [/* @__PURE__ */ l("span", {
|
|
1039
1179
|
className: "w-6 text-center font-medium text-gray-500",
|
|
1040
1180
|
children: e.symbol
|
|
1041
|
-
}), /* @__PURE__ */
|
|
1181
|
+
}), /* @__PURE__ */ l("span", { children: e.label })]
|
|
1042
1182
|
})
|
|
1043
1183
|
}),
|
|
1044
|
-
h.length > 0 && /* @__PURE__ */
|
|
1045
|
-
trigger: /* @__PURE__ */
|
|
1184
|
+
h.length > 0 && /* @__PURE__ */ l(X, {
|
|
1185
|
+
trigger: /* @__PURE__ */ u("button", {
|
|
1046
1186
|
className: "flex items-center gap-1 px-2 py-1.5 rounded-md text-sm text-gray-600 hover:bg-gray-50 transition-colors",
|
|
1047
1187
|
children: [
|
|
1048
|
-
S?.flag && /* @__PURE__ */
|
|
1188
|
+
S?.flag && /* @__PURE__ */ l("span", {
|
|
1049
1189
|
className: "text-base leading-none",
|
|
1050
1190
|
children: S.flag
|
|
1051
1191
|
}),
|
|
1052
|
-
/* @__PURE__ */
|
|
1192
|
+
/* @__PURE__ */ l("span", {
|
|
1053
1193
|
className: "font-medium uppercase",
|
|
1054
1194
|
children: S?.code ?? g
|
|
1055
1195
|
}),
|
|
1056
|
-
/* @__PURE__ */
|
|
1196
|
+
/* @__PURE__ */ l(Z, { className: "w-3 h-3 text-gray-400" })
|
|
1057
1197
|
]
|
|
1058
1198
|
}),
|
|
1059
1199
|
items: h,
|
|
1060
1200
|
getKey: (e) => e.code,
|
|
1061
1201
|
onSelect: (e) => _?.(e.code),
|
|
1062
|
-
renderItem: (e) => /* @__PURE__ */
|
|
1202
|
+
renderItem: (e) => /* @__PURE__ */ u("span", {
|
|
1063
1203
|
className: "flex items-center gap-2",
|
|
1064
|
-
children: [e.flag && /* @__PURE__ */
|
|
1204
|
+
children: [e.flag && /* @__PURE__ */ l("span", {
|
|
1065
1205
|
className: "text-base",
|
|
1066
1206
|
children: e.flag
|
|
1067
|
-
}), /* @__PURE__ */
|
|
1207
|
+
}), /* @__PURE__ */ l("span", { children: e.label })]
|
|
1068
1208
|
})
|
|
1069
1209
|
}),
|
|
1070
|
-
(f.length > 0 || h.length > 0) && /* @__PURE__ */
|
|
1071
|
-
/* @__PURE__ */
|
|
1210
|
+
(f.length > 0 || h.length > 0) && /* @__PURE__ */ l("div", { className: "w-px h-5 bg-gray-200 mx-1" }),
|
|
1211
|
+
/* @__PURE__ */ l("button", {
|
|
1072
1212
|
onClick: d,
|
|
1073
1213
|
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",
|
|
1074
|
-
"aria-label":
|
|
1075
|
-
children:
|
|
1214
|
+
"aria-label": a ? "My account" : "Sign in",
|
|
1215
|
+
children: a ? /* @__PURE__ */ u(c, { children: [/* @__PURE__ */ l("div", {
|
|
1076
1216
|
className: "w-6 h-6 rounded-full bg-primary-600 text-white flex items-center justify-center text-xs font-bold",
|
|
1077
|
-
children: (
|
|
1078
|
-
}),
|
|
1217
|
+
children: (o ?? "U")[0].toUpperCase()
|
|
1218
|
+
}), o && /* @__PURE__ */ l("span", {
|
|
1079
1219
|
className: "hidden sm:block font-medium max-w-32 truncate",
|
|
1080
|
-
children:
|
|
1081
|
-
})] }) : /* @__PURE__ */ c
|
|
1220
|
+
children: o
|
|
1221
|
+
})] }) : /* @__PURE__ */ u(c, { children: [/* @__PURE__ */ l(Ce, { className: "w-5 h-5" }), /* @__PURE__ */ l("span", {
|
|
1082
1222
|
className: "hidden sm:block font-medium",
|
|
1083
1223
|
children: "Přihlásit se"
|
|
1084
1224
|
})] })
|
|
1085
1225
|
}),
|
|
1086
|
-
/* @__PURE__ */
|
|
1226
|
+
/* @__PURE__ */ u("button", {
|
|
1087
1227
|
onClick: i,
|
|
1088
1228
|
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",
|
|
1089
1229
|
"aria-label": `Cart, ${r} items`,
|
|
1090
1230
|
children: [
|
|
1091
|
-
/* @__PURE__ */
|
|
1092
|
-
/* @__PURE__ */
|
|
1231
|
+
/* @__PURE__ */ l(we, { className: "w-5 h-5" }),
|
|
1232
|
+
/* @__PURE__ */ l("span", {
|
|
1093
1233
|
className: "hidden sm:block font-medium",
|
|
1094
1234
|
children: "Košík"
|
|
1095
1235
|
}),
|
|
1096
|
-
r > 0 && /* @__PURE__ */
|
|
1236
|
+
r > 0 && /* @__PURE__ */ l("span", {
|
|
1097
1237
|
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",
|
|
1098
1238
|
children: r > 99 ? "99+" : r
|
|
1099
1239
|
})
|
|
@@ -1106,45 +1246,45 @@ function Ce({ logo: e, searchPlaceholder: t = "Hledat produkty…", onSearch: n,
|
|
|
1106
1246
|
})
|
|
1107
1247
|
});
|
|
1108
1248
|
}
|
|
1109
|
-
function
|
|
1110
|
-
return /* @__PURE__ */
|
|
1249
|
+
function Z({ className: e }) {
|
|
1250
|
+
return /* @__PURE__ */ l("svg", {
|
|
1111
1251
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1112
1252
|
fill: "none",
|
|
1113
1253
|
viewBox: "0 0 24 24",
|
|
1114
1254
|
strokeWidth: 2,
|
|
1115
1255
|
stroke: "currentColor",
|
|
1116
1256
|
className: e,
|
|
1117
|
-
children: /* @__PURE__ */
|
|
1257
|
+
children: /* @__PURE__ */ l("path", {
|
|
1118
1258
|
strokeLinecap: "round",
|
|
1119
1259
|
strokeLinejoin: "round",
|
|
1120
1260
|
d: "M19.5 8.25l-7.5 7.5-7.5-7.5"
|
|
1121
1261
|
})
|
|
1122
1262
|
});
|
|
1123
1263
|
}
|
|
1124
|
-
function
|
|
1125
|
-
return /* @__PURE__ */
|
|
1264
|
+
function Ce({ className: e }) {
|
|
1265
|
+
return /* @__PURE__ */ l("svg", {
|
|
1126
1266
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1127
1267
|
fill: "none",
|
|
1128
1268
|
viewBox: "0 0 24 24",
|
|
1129
1269
|
strokeWidth: 1.5,
|
|
1130
1270
|
stroke: "currentColor",
|
|
1131
1271
|
className: e,
|
|
1132
|
-
children: /* @__PURE__ */
|
|
1272
|
+
children: /* @__PURE__ */ l("path", {
|
|
1133
1273
|
strokeLinecap: "round",
|
|
1134
1274
|
strokeLinejoin: "round",
|
|
1135
1275
|
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"
|
|
1136
1276
|
})
|
|
1137
1277
|
});
|
|
1138
1278
|
}
|
|
1139
|
-
function
|
|
1140
|
-
return /* @__PURE__ */
|
|
1279
|
+
function we({ className: e }) {
|
|
1280
|
+
return /* @__PURE__ */ l("svg", {
|
|
1141
1281
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1142
1282
|
fill: "none",
|
|
1143
1283
|
viewBox: "0 0 24 24",
|
|
1144
1284
|
strokeWidth: 1.5,
|
|
1145
1285
|
stroke: "currentColor",
|
|
1146
1286
|
className: e,
|
|
1147
|
-
children: /* @__PURE__ */
|
|
1287
|
+
children: /* @__PURE__ */ l("path", {
|
|
1148
1288
|
strokeLinecap: "round",
|
|
1149
1289
|
strokeLinejoin: "round",
|
|
1150
1290
|
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"
|
|
@@ -1153,9 +1293,9 @@ function Te({ className: e }) {
|
|
|
1153
1293
|
}
|
|
1154
1294
|
//#endregion
|
|
1155
1295
|
//#region src/components/CategoryTree/CategoryTree.tsx
|
|
1156
|
-
function
|
|
1157
|
-
let
|
|
1158
|
-
return /* @__PURE__ */
|
|
1296
|
+
function Q({ node: e, activeId: t, onSelect: n, showCounts: r, depth: i, defaultExpandAll: a }) {
|
|
1297
|
+
let o = e.children && e.children.length > 0, [c, d] = s(a || $(e, t)), f = e.id === t;
|
|
1298
|
+
return /* @__PURE__ */ u("li", { children: [/* @__PURE__ */ u("div", {
|
|
1159
1299
|
className: [
|
|
1160
1300
|
"group flex items-center gap-1.5 rounded-lg px-2 py-1.5 cursor-pointer select-none",
|
|
1161
1301
|
"transition-colors text-sm",
|
|
@@ -1164,72 +1304,72 @@ function J({ node: e, activeId: t, onSelect: n, showCounts: r, depth: i, default
|
|
|
1164
1304
|
].filter(Boolean).join(" "),
|
|
1165
1305
|
style: i > 0 ? { marginLeft: i * 16 } : void 0,
|
|
1166
1306
|
onClick: () => {
|
|
1167
|
-
n(e),
|
|
1307
|
+
n(e), o && d((e) => !e);
|
|
1168
1308
|
},
|
|
1169
1309
|
role: "button",
|
|
1170
1310
|
tabIndex: 0,
|
|
1171
1311
|
onKeyDown: (t) => {
|
|
1172
|
-
(t.key === "Enter" || t.key === " ") && (t.preventDefault(), n(e),
|
|
1312
|
+
(t.key === "Enter" || t.key === " ") && (t.preventDefault(), n(e), o && d((e) => !e));
|
|
1173
1313
|
},
|
|
1174
|
-
"aria-expanded":
|
|
1314
|
+
"aria-expanded": o ? c : void 0,
|
|
1175
1315
|
children: [
|
|
1176
|
-
|
|
1177
|
-
className: `shrink-0 text-gray-400 transition-transform duration-150 ${
|
|
1178
|
-
children: /* @__PURE__ */
|
|
1316
|
+
o ? /* @__PURE__ */ l("span", {
|
|
1317
|
+
className: `shrink-0 text-gray-400 transition-transform duration-150 ${c ? "rotate-90" : ""}`,
|
|
1318
|
+
children: /* @__PURE__ */ l("svg", {
|
|
1179
1319
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1180
1320
|
fill: "none",
|
|
1181
1321
|
viewBox: "0 0 24 24",
|
|
1182
1322
|
strokeWidth: 2,
|
|
1183
1323
|
stroke: "currentColor",
|
|
1184
1324
|
className: "w-3.5 h-3.5",
|
|
1185
|
-
children: /* @__PURE__ */
|
|
1325
|
+
children: /* @__PURE__ */ l("path", {
|
|
1186
1326
|
strokeLinecap: "round",
|
|
1187
1327
|
strokeLinejoin: "round",
|
|
1188
1328
|
d: "M8.25 4.5l7.5 7.5-7.5 7.5"
|
|
1189
1329
|
})
|
|
1190
1330
|
})
|
|
1191
|
-
}) : /* @__PURE__ */
|
|
1192
|
-
e.icon && /* @__PURE__ */
|
|
1331
|
+
}) : /* @__PURE__ */ l("span", { className: "w-3.5 shrink-0" }),
|
|
1332
|
+
e.icon && /* @__PURE__ */ l("span", {
|
|
1193
1333
|
className: "text-base leading-none",
|
|
1194
1334
|
children: e.icon
|
|
1195
1335
|
}),
|
|
1196
|
-
/* @__PURE__ */
|
|
1336
|
+
/* @__PURE__ */ l("span", {
|
|
1197
1337
|
className: "flex-1 truncate",
|
|
1198
1338
|
children: e.label
|
|
1199
1339
|
}),
|
|
1200
|
-
r && e.count !== void 0 && /* @__PURE__ */
|
|
1340
|
+
r && e.count !== void 0 && /* @__PURE__ */ l("span", {
|
|
1201
1341
|
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"}`,
|
|
1202
1342
|
children: e.count
|
|
1203
1343
|
})
|
|
1204
1344
|
]
|
|
1205
|
-
}),
|
|
1345
|
+
}), o && c && /* @__PURE__ */ l("ul", {
|
|
1206
1346
|
role: "group",
|
|
1207
|
-
children: e.children.map((e) => /* @__PURE__ */
|
|
1347
|
+
children: e.children.map((e) => /* @__PURE__ */ l(Q, {
|
|
1208
1348
|
node: e,
|
|
1209
1349
|
activeId: t,
|
|
1210
1350
|
onSelect: n,
|
|
1211
1351
|
showCounts: r,
|
|
1212
1352
|
depth: i + 1,
|
|
1213
|
-
defaultExpandAll:
|
|
1353
|
+
defaultExpandAll: a
|
|
1214
1354
|
}, e.id))
|
|
1215
1355
|
})] });
|
|
1216
1356
|
}
|
|
1217
|
-
function
|
|
1218
|
-
return !t || !e.children ? !1 : e.children.some((e) => e.id === t ||
|
|
1357
|
+
function $(e, t) {
|
|
1358
|
+
return !t || !e.children ? !1 : e.children.some((e) => e.id === t || $(e, t));
|
|
1219
1359
|
}
|
|
1220
|
-
function
|
|
1221
|
-
let
|
|
1222
|
-
return /* @__PURE__ */
|
|
1360
|
+
function Te({ categories: e, activeId: t, onSelect: n, showCounts: r = !0, defaultExpandAll: i = !1, className: a = "", ...o }) {
|
|
1361
|
+
let s = (e) => n?.(e);
|
|
1362
|
+
return /* @__PURE__ */ l("nav", {
|
|
1223
1363
|
"aria-label": "Category navigation",
|
|
1224
1364
|
className: ["w-full", a].filter(Boolean).join(" "),
|
|
1225
1365
|
...o,
|
|
1226
|
-
children: /* @__PURE__ */
|
|
1366
|
+
children: /* @__PURE__ */ l("ul", {
|
|
1227
1367
|
role: "tree",
|
|
1228
1368
|
className: "space-y-0.5",
|
|
1229
|
-
children: e.map((e) => /* @__PURE__ */
|
|
1369
|
+
children: e.map((e) => /* @__PURE__ */ l(Q, {
|
|
1230
1370
|
node: e,
|
|
1231
1371
|
activeId: t,
|
|
1232
|
-
onSelect:
|
|
1372
|
+
onSelect: s,
|
|
1233
1373
|
showCounts: r,
|
|
1234
1374
|
depth: 0,
|
|
1235
1375
|
defaultExpandAll: i
|
|
@@ -1239,59 +1379,59 @@ function Ee({ categories: e, activeId: t, onSelect: n, showCounts: r = !0, defau
|
|
|
1239
1379
|
}
|
|
1240
1380
|
//#endregion
|
|
1241
1381
|
//#region src/components/MegaMenu/MegaMenu.tsx
|
|
1242
|
-
function
|
|
1243
|
-
return e.columns?.length ? /* @__PURE__ */
|
|
1382
|
+
function Ee({ item: e, onNavigate: t, onClose: n }) {
|
|
1383
|
+
return e.columns?.length ? /* @__PURE__ */ l("div", {
|
|
1244
1384
|
className: "absolute left-0 right-0 top-full z-50 bg-white border-b border-gray-200 shadow-lg",
|
|
1245
|
-
children: /* @__PURE__ */
|
|
1385
|
+
children: /* @__PURE__ */ u("div", {
|
|
1246
1386
|
className: "max-w-7xl mx-auto px-4 py-6 flex gap-8",
|
|
1247
|
-
children: [/* @__PURE__ */
|
|
1387
|
+
children: [/* @__PURE__ */ l("div", {
|
|
1248
1388
|
className: "flex-1 grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-6",
|
|
1249
|
-
children: e.columns.map((e, r) => /* @__PURE__ */
|
|
1389
|
+
children: e.columns.map((e, r) => /* @__PURE__ */ u("div", { children: [e.heading && /* @__PURE__ */ l("p", {
|
|
1250
1390
|
className: "text-xs font-semibold uppercase tracking-wider text-gray-400 mb-2",
|
|
1251
1391
|
children: e.heading
|
|
1252
|
-
}), /* @__PURE__ */
|
|
1392
|
+
}), /* @__PURE__ */ l("ul", {
|
|
1253
1393
|
className: "space-y-1",
|
|
1254
|
-
children: e.items.map((e) => /* @__PURE__ */
|
|
1394
|
+
children: e.items.map((e) => /* @__PURE__ */ l("li", { children: /* @__PURE__ */ u("button", {
|
|
1255
1395
|
className: "flex items-center gap-1.5 text-sm text-gray-700 hover:text-primary-600 transition-colors py-0.5",
|
|
1256
1396
|
onClick: () => {
|
|
1257
1397
|
t(e), n();
|
|
1258
1398
|
},
|
|
1259
|
-
children: [e.label, e.badge && /* @__PURE__ */
|
|
1399
|
+
children: [e.label, e.badge && /* @__PURE__ */ l("span", {
|
|
1260
1400
|
className: "text-[10px] font-semibold px-1.5 py-0.5 rounded-full bg-danger-50 text-danger-600 leading-none",
|
|
1261
1401
|
children: e.badge
|
|
1262
1402
|
})]
|
|
1263
1403
|
}) }, e.id))
|
|
1264
1404
|
})] }, r))
|
|
1265
|
-
}), e.featured && /* @__PURE__ */
|
|
1405
|
+
}), e.featured && /* @__PURE__ */ l("div", {
|
|
1266
1406
|
className: "w-52 shrink-0",
|
|
1267
|
-
children: /* @__PURE__ */
|
|
1407
|
+
children: /* @__PURE__ */ u("button", {
|
|
1268
1408
|
className: "group block w-full rounded-xl overflow-hidden border border-gray-100 text-left hover:shadow-md transition-shadow",
|
|
1269
1409
|
onClick: () => {
|
|
1270
1410
|
t(e), n();
|
|
1271
1411
|
},
|
|
1272
|
-
children: [e.featured.image ? /* @__PURE__ */
|
|
1412
|
+
children: [e.featured.image ? /* @__PURE__ */ l("img", {
|
|
1273
1413
|
src: e.featured.image,
|
|
1274
1414
|
alt: e.featured.title,
|
|
1275
1415
|
className: "w-full h-28 object-cover"
|
|
1276
|
-
}) : /* @__PURE__ */
|
|
1416
|
+
}) : /* @__PURE__ */ l("div", {
|
|
1277
1417
|
className: "w-full h-28 bg-linear-to-br from-primary-100 to-primary-200 flex items-center justify-center text-4xl",
|
|
1278
1418
|
children: e.icon ?? "🛍️"
|
|
1279
|
-
}), /* @__PURE__ */
|
|
1419
|
+
}), /* @__PURE__ */ u("div", {
|
|
1280
1420
|
className: "p-3",
|
|
1281
1421
|
children: [
|
|
1282
|
-
e.featured.eyebrow && /* @__PURE__ */
|
|
1422
|
+
e.featured.eyebrow && /* @__PURE__ */ l("p", {
|
|
1283
1423
|
className: "text-[10px] font-semibold uppercase tracking-wider text-primary-500 mb-0.5",
|
|
1284
1424
|
children: e.featured.eyebrow
|
|
1285
1425
|
}),
|
|
1286
|
-
/* @__PURE__ */
|
|
1426
|
+
/* @__PURE__ */ l("p", {
|
|
1287
1427
|
className: "text-sm font-semibold text-gray-900 group-hover:text-primary-600 transition-colors",
|
|
1288
1428
|
children: e.featured.title
|
|
1289
1429
|
}),
|
|
1290
|
-
e.featured.description && /* @__PURE__ */
|
|
1430
|
+
e.featured.description && /* @__PURE__ */ l("p", {
|
|
1291
1431
|
className: "text-xs text-gray-500 mt-0.5 line-clamp-2",
|
|
1292
1432
|
children: e.featured.description
|
|
1293
1433
|
}),
|
|
1294
|
-
e.featured.cta && /* @__PURE__ */
|
|
1434
|
+
e.featured.cta && /* @__PURE__ */ u("span", {
|
|
1295
1435
|
className: "inline-block mt-2 text-xs font-medium text-primary-600",
|
|
1296
1436
|
children: [e.featured.cta, " →"]
|
|
1297
1437
|
})
|
|
@@ -1302,56 +1442,56 @@ function De({ item: e, onNavigate: t, onClose: n }) {
|
|
|
1302
1442
|
})
|
|
1303
1443
|
}) : null;
|
|
1304
1444
|
}
|
|
1305
|
-
function
|
|
1306
|
-
let [r,
|
|
1307
|
-
|
|
1445
|
+
function De({ items: e, activeId: t, onNavigate: n }) {
|
|
1446
|
+
let [r, i] = s(null), a = o(null), c = (e) => {
|
|
1447
|
+
a.current && clearTimeout(a.current), i(e);
|
|
1308
1448
|
}, d = () => {
|
|
1309
|
-
|
|
1449
|
+
a.current = setTimeout(() => i(null), 120);
|
|
1310
1450
|
}, f = () => {
|
|
1311
|
-
|
|
1451
|
+
a.current && clearTimeout(a.current);
|
|
1312
1452
|
}, p = e.find((e) => e.id === r);
|
|
1313
|
-
return /* @__PURE__ */
|
|
1453
|
+
return /* @__PURE__ */ u("nav", {
|
|
1314
1454
|
"aria-label": "Main navigation",
|
|
1315
1455
|
className: "relative bg-white border-b border-gray-100",
|
|
1316
1456
|
onMouseLeave: d,
|
|
1317
|
-
children: [/* @__PURE__ */
|
|
1457
|
+
children: [/* @__PURE__ */ l("div", {
|
|
1318
1458
|
className: "max-w-7xl mx-auto px-4",
|
|
1319
|
-
children: /* @__PURE__ */
|
|
1459
|
+
children: /* @__PURE__ */ l("ul", {
|
|
1320
1460
|
className: "flex items-center gap-0",
|
|
1321
1461
|
role: "menubar",
|
|
1322
1462
|
children: e.map((e) => {
|
|
1323
|
-
let
|
|
1324
|
-
return /* @__PURE__ */
|
|
1463
|
+
let a = !!e.columns?.length, o = r === e.id, s = t === e.id;
|
|
1464
|
+
return /* @__PURE__ */ l("li", {
|
|
1325
1465
|
role: "none",
|
|
1326
|
-
children: /* @__PURE__ */
|
|
1466
|
+
children: /* @__PURE__ */ u("button", {
|
|
1327
1467
|
role: "menuitem",
|
|
1328
|
-
"aria-haspopup":
|
|
1329
|
-
"aria-expanded":
|
|
1468
|
+
"aria-haspopup": a ? "true" : void 0,
|
|
1469
|
+
"aria-expanded": a ? o : void 0,
|
|
1330
1470
|
className: [
|
|
1331
1471
|
"flex items-center gap-1.5 px-4 py-3.5 text-sm font-medium transition-colors relative",
|
|
1332
1472
|
"outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary-500",
|
|
1333
|
-
|
|
1334
|
-
|
|
1473
|
+
s || o ? "text-primary-600" : "text-gray-700 hover:text-gray-900",
|
|
1474
|
+
o ? "after:absolute after:bottom-0 after:left-0 after:right-0 after:h-0.5 after:bg-primary-600" : ""
|
|
1335
1475
|
].filter(Boolean).join(" "),
|
|
1336
|
-
onMouseEnter: () =>
|
|
1337
|
-
onFocus: () =>
|
|
1476
|
+
onMouseEnter: () => a ? c(e.id) : i(null),
|
|
1477
|
+
onFocus: () => a && c(e.id),
|
|
1338
1478
|
onClick: () => {
|
|
1339
|
-
|
|
1479
|
+
a || (n?.(e), i(null));
|
|
1340
1480
|
},
|
|
1341
1481
|
children: [
|
|
1342
|
-
e.icon && /* @__PURE__ */
|
|
1482
|
+
e.icon && /* @__PURE__ */ l("span", {
|
|
1343
1483
|
className: "text-base leading-none",
|
|
1344
1484
|
children: e.icon
|
|
1345
1485
|
}),
|
|
1346
1486
|
e.label,
|
|
1347
|
-
|
|
1487
|
+
a && /* @__PURE__ */ l("svg", {
|
|
1348
1488
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1349
1489
|
fill: "none",
|
|
1350
1490
|
viewBox: "0 0 24 24",
|
|
1351
1491
|
strokeWidth: 2,
|
|
1352
1492
|
stroke: "currentColor",
|
|
1353
|
-
className: `w-3.5 h-3.5 transition-transform duration-150 ${
|
|
1354
|
-
children: /* @__PURE__ */
|
|
1493
|
+
className: `w-3.5 h-3.5 transition-transform duration-150 ${o ? "rotate-180" : ""}`,
|
|
1494
|
+
children: /* @__PURE__ */ l("path", {
|
|
1355
1495
|
strokeLinecap: "round",
|
|
1356
1496
|
strokeLinejoin: "round",
|
|
1357
1497
|
d: "M19.5 8.25l-7.5 7.5-7.5-7.5"
|
|
@@ -1362,35 +1502,35 @@ function Oe({ items: e, activeId: t, onNavigate: n }) {
|
|
|
1362
1502
|
}, e.id);
|
|
1363
1503
|
})
|
|
1364
1504
|
})
|
|
1365
|
-
}), p?.columns?.length && /* @__PURE__ */
|
|
1505
|
+
}), p?.columns?.length && /* @__PURE__ */ l("div", {
|
|
1366
1506
|
onMouseEnter: f,
|
|
1367
1507
|
onMouseLeave: d,
|
|
1368
|
-
children: /* @__PURE__ */
|
|
1508
|
+
children: /* @__PURE__ */ l(Ee, {
|
|
1369
1509
|
item: p,
|
|
1370
1510
|
onNavigate: (e) => n?.(e),
|
|
1371
|
-
onClose: () =>
|
|
1511
|
+
onClose: () => i(null)
|
|
1372
1512
|
})
|
|
1373
1513
|
})]
|
|
1374
1514
|
});
|
|
1375
1515
|
}
|
|
1376
1516
|
//#endregion
|
|
1377
1517
|
//#region src/components/BannerCarousel/BannerCarousel.tsx
|
|
1378
|
-
function
|
|
1379
|
-
let [m, h] =
|
|
1518
|
+
function Oe({ banners: e, autoPlay: t = !0, autoPlayInterval: i = 5e3, arrows: a = !0, dots: d = !0, className: f = "", aspectRatio: p = "3 / 1" }) {
|
|
1519
|
+
let [m, h] = s(0), [g, _] = s(!1), v = o(null), y = o(null), b = e.length, x = n((e) => {
|
|
1380
1520
|
h((e % b + b) % b);
|
|
1381
|
-
}, [b]), S = () => x(m - 1), C =
|
|
1382
|
-
|
|
1383
|
-
if (!(!
|
|
1521
|
+
}, [b]), S = () => x(m - 1), C = n(() => x(m + 1), [m, x]);
|
|
1522
|
+
r(() => {
|
|
1523
|
+
if (!(!t || g || b <= 1)) return v.current = setInterval(C, i), () => {
|
|
1384
1524
|
v.current && clearInterval(v.current);
|
|
1385
1525
|
};
|
|
1386
1526
|
}, [
|
|
1387
|
-
|
|
1527
|
+
t,
|
|
1388
1528
|
g,
|
|
1389
|
-
|
|
1529
|
+
i,
|
|
1390
1530
|
C,
|
|
1391
1531
|
b
|
|
1392
1532
|
]);
|
|
1393
|
-
let w =
|
|
1533
|
+
let w = o(null), T = (e) => {
|
|
1394
1534
|
w.current = e.touches[0].clientX;
|
|
1395
1535
|
}, E = (e) => {
|
|
1396
1536
|
if (w.current === null) return;
|
|
@@ -1399,7 +1539,7 @@ function ke({ banners: e, autoPlay: r = !0, autoPlayInterval: l = 5e3, arrows: u
|
|
|
1399
1539
|
};
|
|
1400
1540
|
if (b === 0) return null;
|
|
1401
1541
|
let D = e[m], O = D.textColor === "light" || !D.textColor;
|
|
1402
|
-
return /* @__PURE__ */
|
|
1542
|
+
return /* @__PURE__ */ u("div", {
|
|
1403
1543
|
className: ["relative overflow-hidden rounded-xl", f].filter(Boolean).join(" "),
|
|
1404
1544
|
style: { aspectRatio: p },
|
|
1405
1545
|
onMouseEnter: () => _(!0),
|
|
@@ -1407,41 +1547,41 @@ function ke({ banners: e, autoPlay: r = !0, autoPlayInterval: l = 5e3, arrows: u
|
|
|
1407
1547
|
onTouchStart: T,
|
|
1408
1548
|
onTouchEnd: E,
|
|
1409
1549
|
children: [
|
|
1410
|
-
/* @__PURE__ */
|
|
1550
|
+
/* @__PURE__ */ l("div", {
|
|
1411
1551
|
ref: y,
|
|
1412
1552
|
className: "relative w-full h-full",
|
|
1413
|
-
children: e.map((e, t) => /* @__PURE__ */
|
|
1553
|
+
children: e.map((e, t) => /* @__PURE__ */ u("div", {
|
|
1414
1554
|
"aria-hidden": t !== m,
|
|
1415
1555
|
className: ["absolute inset-0 transition-opacity duration-700", t === m ? "opacity-100 z-10" : "opacity-0 z-0"].join(" "),
|
|
1416
1556
|
style: { background: e.backgroundImage ? `url(${e.backgroundImage}) center/cover no-repeat` : e.backgroundColor ?? "linear-gradient(135deg, #1d4ed8 0%, #7c3aed 100%)" },
|
|
1417
|
-
children: [e.backgroundImage && /* @__PURE__ */
|
|
1557
|
+
children: [e.backgroundImage && /* @__PURE__ */ l("div", { className: "absolute inset-0 bg-gradient-to-r from-black/50 via-black/20 to-transparent" }), /* @__PURE__ */ u("div", {
|
|
1418
1558
|
className: "relative z-10 h-full flex items-center px-8 md:px-12 gap-8",
|
|
1419
|
-
children: [/* @__PURE__ */
|
|
1559
|
+
children: [/* @__PURE__ */ u("div", {
|
|
1420
1560
|
className: "flex-1 max-w-lg",
|
|
1421
1561
|
children: [
|
|
1422
|
-
e.eyebrow && /* @__PURE__ */
|
|
1562
|
+
e.eyebrow && /* @__PURE__ */ l("p", {
|
|
1423
1563
|
className: `text-xs font-semibold uppercase tracking-widest mb-2 ${O ? "text-white/70" : "text-gray-500"}`,
|
|
1424
1564
|
children: e.eyebrow
|
|
1425
1565
|
}),
|
|
1426
|
-
/* @__PURE__ */
|
|
1566
|
+
/* @__PURE__ */ l("h2", {
|
|
1427
1567
|
className: `text-2xl md:text-3xl lg:text-4xl font-bold leading-tight ${O ? "text-white" : "text-gray-900"}`,
|
|
1428
1568
|
children: e.title
|
|
1429
1569
|
}),
|
|
1430
|
-
e.subtitle && /* @__PURE__ */
|
|
1570
|
+
e.subtitle && /* @__PURE__ */ l("p", {
|
|
1431
1571
|
className: `mt-2 text-sm md:text-base ${O ? "text-white/80" : "text-gray-600"}`,
|
|
1432
1572
|
children: e.subtitle
|
|
1433
1573
|
}),
|
|
1434
|
-
e.ctaLabel && /* @__PURE__ */
|
|
1574
|
+
e.ctaLabel && /* @__PURE__ */ u("button", {
|
|
1435
1575
|
onClick: e.onCtaClick,
|
|
1436
1576
|
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(" "),
|
|
1437
|
-
children: [e.ctaLabel, /* @__PURE__ */
|
|
1577
|
+
children: [e.ctaLabel, /* @__PURE__ */ l("svg", {
|
|
1438
1578
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1439
1579
|
fill: "none",
|
|
1440
1580
|
viewBox: "0 0 24 24",
|
|
1441
1581
|
strokeWidth: 2,
|
|
1442
1582
|
stroke: "currentColor",
|
|
1443
1583
|
className: "w-4 h-4",
|
|
1444
|
-
children: /* @__PURE__ */
|
|
1584
|
+
children: /* @__PURE__ */ l("path", {
|
|
1445
1585
|
strokeLinecap: "round",
|
|
1446
1586
|
strokeLinejoin: "round",
|
|
1447
1587
|
d: "M8.25 4.5l7.5 7.5-7.5 7.5"
|
|
@@ -1449,9 +1589,9 @@ function ke({ banners: e, autoPlay: r = !0, autoPlayInterval: l = 5e3, arrows: u
|
|
|
1449
1589
|
})]
|
|
1450
1590
|
})
|
|
1451
1591
|
]
|
|
1452
|
-
}), e.sideImage && /* @__PURE__ */
|
|
1592
|
+
}), e.sideImage && /* @__PURE__ */ l("div", {
|
|
1453
1593
|
className: "hidden md:block flex-1 h-full flex items-end justify-end overflow-hidden",
|
|
1454
|
-
children: /* @__PURE__ */
|
|
1594
|
+
children: /* @__PURE__ */ l("img", {
|
|
1455
1595
|
src: e.sideImage,
|
|
1456
1596
|
alt: "",
|
|
1457
1597
|
className: "h-full w-auto object-contain object-bottom drop-shadow-2xl"
|
|
@@ -1460,54 +1600,54 @@ function ke({ banners: e, autoPlay: r = !0, autoPlayInterval: l = 5e3, arrows: u
|
|
|
1460
1600
|
})]
|
|
1461
1601
|
}, e.id))
|
|
1462
1602
|
}),
|
|
1463
|
-
|
|
1603
|
+
a && b > 1 && /* @__PURE__ */ u(c, { children: [/* @__PURE__ */ l("button", {
|
|
1464
1604
|
onClick: S,
|
|
1465
1605
|
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",
|
|
1466
1606
|
"aria-label": "Previous banner",
|
|
1467
|
-
children: /* @__PURE__ */
|
|
1607
|
+
children: /* @__PURE__ */ l("svg", {
|
|
1468
1608
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1469
1609
|
fill: "none",
|
|
1470
1610
|
viewBox: "0 0 24 24",
|
|
1471
1611
|
strokeWidth: 2,
|
|
1472
1612
|
stroke: "currentColor",
|
|
1473
1613
|
className: "w-5 h-5",
|
|
1474
|
-
children: /* @__PURE__ */
|
|
1614
|
+
children: /* @__PURE__ */ l("path", {
|
|
1475
1615
|
strokeLinecap: "round",
|
|
1476
1616
|
strokeLinejoin: "round",
|
|
1477
1617
|
d: "M15.75 19.5L8.25 12l7.5-7.5"
|
|
1478
1618
|
})
|
|
1479
1619
|
})
|
|
1480
|
-
}), /* @__PURE__ */
|
|
1620
|
+
}), /* @__PURE__ */ l("button", {
|
|
1481
1621
|
onClick: C,
|
|
1482
1622
|
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",
|
|
1483
1623
|
"aria-label": "Next banner",
|
|
1484
|
-
children: /* @__PURE__ */
|
|
1624
|
+
children: /* @__PURE__ */ l("svg", {
|
|
1485
1625
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1486
1626
|
fill: "none",
|
|
1487
1627
|
viewBox: "0 0 24 24",
|
|
1488
1628
|
strokeWidth: 2,
|
|
1489
1629
|
stroke: "currentColor",
|
|
1490
1630
|
className: "w-5 h-5",
|
|
1491
|
-
children: /* @__PURE__ */
|
|
1631
|
+
children: /* @__PURE__ */ l("path", {
|
|
1492
1632
|
strokeLinecap: "round",
|
|
1493
1633
|
strokeLinejoin: "round",
|
|
1494
1634
|
d: "M8.25 4.5l7.5 7.5-7.5 7.5"
|
|
1495
1635
|
})
|
|
1496
1636
|
})
|
|
1497
1637
|
})] }),
|
|
1498
|
-
d && b > 1 && /* @__PURE__ */
|
|
1638
|
+
d && b > 1 && /* @__PURE__ */ l("div", {
|
|
1499
1639
|
className: "absolute bottom-3 left-1/2 -translate-x-1/2 z-20 flex gap-1.5",
|
|
1500
|
-
children: e.map((e, t) => /* @__PURE__ */
|
|
1640
|
+
children: e.map((e, t) => /* @__PURE__ */ l("button", {
|
|
1501
1641
|
onClick: () => x(t),
|
|
1502
1642
|
"aria-label": `Go to slide ${t + 1}`,
|
|
1503
1643
|
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(" ")
|
|
1504
1644
|
}, t))
|
|
1505
1645
|
}),
|
|
1506
|
-
|
|
1646
|
+
t && b > 1 && /* @__PURE__ */ l("div", {
|
|
1507
1647
|
className: "absolute bottom-0 left-0 right-0 h-0.5 bg-white/20 z-20",
|
|
1508
|
-
children: /* @__PURE__ */
|
|
1648
|
+
children: /* @__PURE__ */ l("div", {
|
|
1509
1649
|
className: `h-full bg-white/60 ${g ? "" : "animate-progress"}`,
|
|
1510
|
-
style: { animation: g ? "none" : `progress ${
|
|
1650
|
+
style: { animation: g ? "none" : `progress ${i}ms linear` }
|
|
1511
1651
|
}, `${m}-${g}`)
|
|
1512
1652
|
})
|
|
1513
1653
|
]
|
|
@@ -1515,23 +1655,23 @@ function ke({ banners: e, autoPlay: r = !0, autoPlayInterval: l = 5e3, arrows: u
|
|
|
1515
1655
|
}
|
|
1516
1656
|
//#endregion
|
|
1517
1657
|
//#region src/components/ProductCard/ProductCard.tsx
|
|
1518
|
-
function
|
|
1519
|
-
return /* @__PURE__ */
|
|
1658
|
+
function ke({ filled: e }) {
|
|
1659
|
+
return /* @__PURE__ */ l("svg", {
|
|
1520
1660
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1521
1661
|
viewBox: "0 0 24 24",
|
|
1522
1662
|
className: `w-3.5 h-3.5 ${e ? "fill-amber-400 stroke-amber-400" : "fill-gray-200 stroke-gray-300"}`,
|
|
1523
1663
|
strokeWidth: 1,
|
|
1524
|
-
children: /* @__PURE__ */
|
|
1664
|
+
children: /* @__PURE__ */ l("path", {
|
|
1525
1665
|
strokeLinecap: "round",
|
|
1526
1666
|
strokeLinejoin: "round",
|
|
1527
1667
|
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"
|
|
1528
1668
|
})
|
|
1529
1669
|
});
|
|
1530
1670
|
}
|
|
1531
|
-
function
|
|
1532
|
-
return /* @__PURE__ */
|
|
1671
|
+
function Ae({ value: e, count: t }) {
|
|
1672
|
+
return /* @__PURE__ */ u("div", {
|
|
1533
1673
|
className: "flex items-center gap-1",
|
|
1534
|
-
children: [/* @__PURE__ */
|
|
1674
|
+
children: [/* @__PURE__ */ l("div", {
|
|
1535
1675
|
className: "flex gap-0.5",
|
|
1536
1676
|
children: [
|
|
1537
1677
|
1,
|
|
@@ -1539,8 +1679,8 @@ function je({ value: e, count: t }) {
|
|
|
1539
1679
|
3,
|
|
1540
1680
|
4,
|
|
1541
1681
|
5
|
|
1542
|
-
].map((t) => /* @__PURE__ */
|
|
1543
|
-
}), t !== void 0 && /* @__PURE__ */
|
|
1682
|
+
].map((t) => /* @__PURE__ */ l(ke, { filled: t <= Math.round(e) }, t))
|
|
1683
|
+
}), t !== void 0 && /* @__PURE__ */ u("span", {
|
|
1544
1684
|
className: "text-xs text-gray-400",
|
|
1545
1685
|
children: [
|
|
1546
1686
|
"(",
|
|
@@ -1550,54 +1690,54 @@ function je({ value: e, count: t }) {
|
|
|
1550
1690
|
})]
|
|
1551
1691
|
});
|
|
1552
1692
|
}
|
|
1553
|
-
function
|
|
1693
|
+
function je(e) {
|
|
1554
1694
|
let t = e.toLowerCase();
|
|
1555
1695
|
return t === "sale" || t === "akce" ? "danger" : t === "new" || t === "nové" ? "primary" : t === "hot" ? "warning" : "default";
|
|
1556
1696
|
}
|
|
1557
|
-
function
|
|
1697
|
+
function Me(e, t = "Kč") {
|
|
1558
1698
|
return `${e.toLocaleString("cs-CZ")} ${t}`;
|
|
1559
1699
|
}
|
|
1560
1700
|
function Ne(e, t) {
|
|
1561
1701
|
return Math.round((1 - t / e) * 100);
|
|
1562
1702
|
}
|
|
1563
|
-
function
|
|
1564
|
-
let [
|
|
1565
|
-
return /* @__PURE__ */
|
|
1703
|
+
function Pe({ product: e, onAddToCart: t, onWishlistToggle: n, isWishlisted: r = !1, onProductClick: i, size: a = "default", className: o = "" }) {
|
|
1704
|
+
let [c, d] = s(!1), [f, p] = s(!1), m = e.originalPrice !== void 0 && e.originalPrice > e.price;
|
|
1705
|
+
return /* @__PURE__ */ u("article", {
|
|
1566
1706
|
className: [
|
|
1567
1707
|
"group relative flex flex-col bg-white rounded-xl border border-gray-200",
|
|
1568
1708
|
"hover:shadow-md transition-shadow duration-200 overflow-hidden cursor-pointer",
|
|
1569
|
-
|
|
1709
|
+
o
|
|
1570
1710
|
].filter(Boolean).join(" "),
|
|
1571
1711
|
onClick: () => i?.(e),
|
|
1572
1712
|
onMouseEnter: () => d(!0),
|
|
1573
1713
|
onMouseLeave: () => d(!1),
|
|
1574
|
-
children: [/* @__PURE__ */
|
|
1575
|
-
className: `relative overflow-hidden bg-gray-50 ${
|
|
1714
|
+
children: [/* @__PURE__ */ u("div", {
|
|
1715
|
+
className: `relative overflow-hidden bg-gray-50 ${a === "compact" ? "aspect-square" : "aspect-4/3"}`,
|
|
1576
1716
|
children: [
|
|
1577
|
-
e.image ? /* @__PURE__ */
|
|
1578
|
-
src:
|
|
1717
|
+
e.image ? /* @__PURE__ */ l("img", {
|
|
1718
|
+
src: c && e.imageHover ? e.imageHover : e.image,
|
|
1579
1719
|
alt: e.name,
|
|
1580
1720
|
className: "w-full h-full object-contain p-4 transition-transform duration-300 group-hover:scale-105"
|
|
1581
|
-
}) : /* @__PURE__ */
|
|
1721
|
+
}) : /* @__PURE__ */ l("div", {
|
|
1582
1722
|
className: "w-full h-full flex items-center justify-center text-5xl bg-linear-to-br from-gray-100 to-gray-200",
|
|
1583
1723
|
children: "🛍️"
|
|
1584
1724
|
}),
|
|
1585
|
-
e.badge && /* @__PURE__ */
|
|
1725
|
+
e.badge && /* @__PURE__ */ l("div", {
|
|
1586
1726
|
className: "absolute top-2 left-2",
|
|
1587
|
-
children: /* @__PURE__ */
|
|
1588
|
-
variant:
|
|
1727
|
+
children: /* @__PURE__ */ l(j, {
|
|
1728
|
+
variant: je(e.badge),
|
|
1589
1729
|
size: "sm",
|
|
1590
1730
|
children: e.badge === "sale" && m ? `-${Ne(e.originalPrice, e.price)}%` : e.badge
|
|
1591
1731
|
})
|
|
1592
1732
|
}),
|
|
1593
|
-
e.inStock === !1 && /* @__PURE__ */
|
|
1733
|
+
e.inStock === !1 && /* @__PURE__ */ l("div", {
|
|
1594
1734
|
className: "absolute inset-0 bg-white/70 flex items-center justify-center",
|
|
1595
|
-
children: /* @__PURE__ */
|
|
1735
|
+
children: /* @__PURE__ */ l("span", {
|
|
1596
1736
|
className: "text-sm font-semibold text-gray-500 bg-white/90 px-3 py-1 rounded-full border border-gray-200",
|
|
1597
1737
|
children: "Vyprodáno"
|
|
1598
1738
|
})
|
|
1599
1739
|
}),
|
|
1600
|
-
/* @__PURE__ */
|
|
1740
|
+
/* @__PURE__ */ l("button", {
|
|
1601
1741
|
onClick: (t) => {
|
|
1602
1742
|
t.stopPropagation(), n?.(e);
|
|
1603
1743
|
},
|
|
@@ -1608,22 +1748,22 @@ function Z({ product: e, onAddToCart: t, onWishlistToggle: n, isWishlisted: r =
|
|
|
1608
1748
|
"opacity-0 group-hover:opacity-100 focus:opacity-100",
|
|
1609
1749
|
r ? "text-danger-500" : "text-gray-400 hover:text-danger-400"
|
|
1610
1750
|
].join(" "),
|
|
1611
|
-
children: /* @__PURE__ */
|
|
1751
|
+
children: /* @__PURE__ */ l("svg", {
|
|
1612
1752
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1613
1753
|
viewBox: "0 0 24 24",
|
|
1614
1754
|
strokeWidth: 1.5,
|
|
1615
1755
|
stroke: "currentColor",
|
|
1616
1756
|
className: `w-4 h-4 ${r ? "fill-current" : "fill-none"}`,
|
|
1617
|
-
children: /* @__PURE__ */
|
|
1757
|
+
children: /* @__PURE__ */ l("path", {
|
|
1618
1758
|
strokeLinecap: "round",
|
|
1619
1759
|
strokeLinejoin: "round",
|
|
1620
1760
|
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"
|
|
1621
1761
|
})
|
|
1622
1762
|
})
|
|
1623
1763
|
}),
|
|
1624
|
-
/* @__PURE__ */
|
|
1625
|
-
className: ["absolute bottom-0 left-0 right-0 p-2 transition-transform duration-200",
|
|
1626
|
-
children: /* @__PURE__ */
|
|
1764
|
+
/* @__PURE__ */ l("div", {
|
|
1765
|
+
className: ["absolute bottom-0 left-0 right-0 p-2 transition-transform duration-200", c ? "translate-y-0" : "translate-y-full"].join(" "),
|
|
1766
|
+
children: /* @__PURE__ */ l(w, {
|
|
1627
1767
|
variant: "primary",
|
|
1628
1768
|
size: "sm",
|
|
1629
1769
|
fullWidth: !0,
|
|
@@ -1633,16 +1773,16 @@ function Z({ product: e, onAddToCart: t, onWishlistToggle: n, isWishlisted: r =
|
|
|
1633
1773
|
n.stopPropagation(), t?.(e), p(!0), setTimeout(() => p(!1), 1500);
|
|
1634
1774
|
},
|
|
1635
1775
|
className: "shadow-lg",
|
|
1636
|
-
children: f ? /* @__PURE__ */
|
|
1776
|
+
children: f ? /* @__PURE__ */ u("span", {
|
|
1637
1777
|
className: "flex items-center gap-1.5",
|
|
1638
|
-
children: [/* @__PURE__ */
|
|
1778
|
+
children: [/* @__PURE__ */ l("svg", {
|
|
1639
1779
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1640
1780
|
fill: "none",
|
|
1641
1781
|
viewBox: "0 0 24 24",
|
|
1642
1782
|
strokeWidth: 2,
|
|
1643
1783
|
stroke: "currentColor",
|
|
1644
1784
|
className: "w-4 h-4",
|
|
1645
|
-
children: /* @__PURE__ */
|
|
1785
|
+
children: /* @__PURE__ */ l("path", {
|
|
1646
1786
|
strokeLinecap: "round",
|
|
1647
1787
|
strokeLinejoin: "round",
|
|
1648
1788
|
d: "M4.5 12.75l6 6 9-13.5"
|
|
@@ -1652,36 +1792,36 @@ function Z({ product: e, onAddToCart: t, onWishlistToggle: n, isWishlisted: r =
|
|
|
1652
1792
|
})
|
|
1653
1793
|
})
|
|
1654
1794
|
]
|
|
1655
|
-
}), /* @__PURE__ */
|
|
1656
|
-
className: `flex flex-col gap-1.5 ${
|
|
1795
|
+
}), /* @__PURE__ */ u("div", {
|
|
1796
|
+
className: `flex flex-col gap-1.5 ${a === "compact" ? "p-3" : "p-4"}`,
|
|
1657
1797
|
children: [
|
|
1658
|
-
e.variants && e.variants.length > 0 && /* @__PURE__ */
|
|
1798
|
+
e.variants && e.variants.length > 0 && /* @__PURE__ */ u("div", {
|
|
1659
1799
|
className: "flex gap-1",
|
|
1660
|
-
children: [e.variants.slice(0, 5).map((e) => /* @__PURE__ */
|
|
1800
|
+
children: [e.variants.slice(0, 5).map((e) => /* @__PURE__ */ l("span", {
|
|
1661
1801
|
title: e.label,
|
|
1662
1802
|
className: "w-4 h-4 rounded-full border border-gray-300 shrink-0",
|
|
1663
1803
|
style: { backgroundColor: e.color ?? "#ccc" }
|
|
1664
|
-
}, e.id)), e.variants.length > 5 && /* @__PURE__ */
|
|
1804
|
+
}, e.id)), e.variants.length > 5 && /* @__PURE__ */ u("span", {
|
|
1665
1805
|
className: "text-xs text-gray-400",
|
|
1666
1806
|
children: ["+", e.variants.length - 5]
|
|
1667
1807
|
})]
|
|
1668
1808
|
}),
|
|
1669
|
-
/* @__PURE__ */
|
|
1670
|
-
className: `font-medium text-gray-900 leading-snug line-clamp-2 group-hover:text-primary-600 transition-colors ${
|
|
1809
|
+
/* @__PURE__ */ l("h3", {
|
|
1810
|
+
className: `font-medium text-gray-900 leading-snug line-clamp-2 group-hover:text-primary-600 transition-colors ${a === "compact" ? "text-xs" : "text-sm"}`,
|
|
1671
1811
|
children: e.name
|
|
1672
1812
|
}),
|
|
1673
|
-
e.rating !== void 0 && /* @__PURE__ */
|
|
1813
|
+
e.rating !== void 0 && /* @__PURE__ */ l(Ae, {
|
|
1674
1814
|
value: e.rating,
|
|
1675
1815
|
count: e.reviewCount
|
|
1676
1816
|
}),
|
|
1677
|
-
/* @__PURE__ */
|
|
1817
|
+
/* @__PURE__ */ u("div", {
|
|
1678
1818
|
className: "flex items-baseline gap-2 mt-auto pt-1",
|
|
1679
|
-
children: [/* @__PURE__ */
|
|
1680
|
-
className: `font-bold text-gray-900 ${
|
|
1681
|
-
children:
|
|
1682
|
-
}), m && /* @__PURE__ */
|
|
1819
|
+
children: [/* @__PURE__ */ l("span", {
|
|
1820
|
+
className: `font-bold text-gray-900 ${a === "compact" ? "text-base" : "text-lg"}`,
|
|
1821
|
+
children: Me(e.price, e.currency)
|
|
1822
|
+
}), m && /* @__PURE__ */ l("span", {
|
|
1683
1823
|
className: "text-sm text-gray-400 line-through",
|
|
1684
|
-
children:
|
|
1824
|
+
children: Me(e.originalPrice, e.currency)
|
|
1685
1825
|
})]
|
|
1686
1826
|
})
|
|
1687
1827
|
]
|
|
@@ -1690,12 +1830,12 @@ function Z({ product: e, onAddToCart: t, onWishlistToggle: n, isWishlisted: r =
|
|
|
1690
1830
|
}
|
|
1691
1831
|
//#endregion
|
|
1692
1832
|
//#region src/components/ProductGrid/ProductGrid.tsx
|
|
1693
|
-
var
|
|
1833
|
+
var Fe = {
|
|
1694
1834
|
2: "grid-cols-2",
|
|
1695
1835
|
3: "grid-cols-2 md:grid-cols-3",
|
|
1696
1836
|
4: "grid-cols-2 sm:grid-cols-3 lg:grid-cols-4",
|
|
1697
1837
|
5: "grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5"
|
|
1698
|
-
},
|
|
1838
|
+
}, Ie = [
|
|
1699
1839
|
{
|
|
1700
1840
|
value: "newest",
|
|
1701
1841
|
label: "Nejnovější"
|
|
@@ -1717,50 +1857,50 @@ var Q = {
|
|
|
1717
1857
|
label: "Bestsellery"
|
|
1718
1858
|
}
|
|
1719
1859
|
];
|
|
1720
|
-
function
|
|
1721
|
-
return /* @__PURE__ */
|
|
1860
|
+
function Le() {
|
|
1861
|
+
return /* @__PURE__ */ u("div", {
|
|
1722
1862
|
className: "rounded-xl border border-gray-100 overflow-hidden animate-pulse",
|
|
1723
|
-
children: [/* @__PURE__ */
|
|
1863
|
+
children: [/* @__PURE__ */ l("div", { className: "aspect-4/3 bg-gray-200" }), /* @__PURE__ */ u("div", {
|
|
1724
1864
|
className: "p-4 space-y-2",
|
|
1725
1865
|
children: [
|
|
1726
|
-
/* @__PURE__ */
|
|
1727
|
-
/* @__PURE__ */
|
|
1728
|
-
/* @__PURE__ */
|
|
1866
|
+
/* @__PURE__ */ l("div", { className: "h-3 bg-gray-200 rounded w-3/4" }),
|
|
1867
|
+
/* @__PURE__ */ l("div", { className: "h-3 bg-gray-200 rounded w-1/2" }),
|
|
1868
|
+
/* @__PURE__ */ l("div", { className: "h-5 bg-gray-200 rounded w-1/3 mt-2" })
|
|
1729
1869
|
]
|
|
1730
1870
|
})]
|
|
1731
1871
|
});
|
|
1732
1872
|
}
|
|
1733
|
-
function
|
|
1873
|
+
function Re({ products: e, totalCount: t, page: n = 1, onPageChange: r, perPage: i = 20, columns: a = 4, sortOptions: o = Ie, selectedSort: s, onSortChange: c, activeFilters: d = [], onRemoveFilter: f, onClearFilters: p, loading: m = !1, emptyState: h, onAddToCart: g, onWishlistToggle: _, onProductClick: v, wishlisted: y = [], className: b = "" }) {
|
|
1734
1874
|
let x = t ? Math.ceil(t / i) : void 0, S = a >= 5 ? "compact" : "default";
|
|
1735
|
-
return /* @__PURE__ */
|
|
1875
|
+
return /* @__PURE__ */ u("div", {
|
|
1736
1876
|
className: ["w-full", b].filter(Boolean).join(" "),
|
|
1737
1877
|
children: [
|
|
1738
|
-
/* @__PURE__ */
|
|
1878
|
+
/* @__PURE__ */ u("div", {
|
|
1739
1879
|
className: "flex flex-wrap items-center justify-between gap-3 mb-4",
|
|
1740
|
-
children: [/* @__PURE__ */
|
|
1880
|
+
children: [/* @__PURE__ */ u("div", {
|
|
1741
1881
|
className: "flex flex-wrap items-center gap-2",
|
|
1742
1882
|
children: [
|
|
1743
|
-
t !== void 0 && /* @__PURE__ */
|
|
1883
|
+
t !== void 0 && /* @__PURE__ */ u("span", {
|
|
1744
1884
|
className: "text-sm text-gray-500",
|
|
1745
|
-
children: [/* @__PURE__ */
|
|
1885
|
+
children: [/* @__PURE__ */ l("span", {
|
|
1746
1886
|
className: "font-semibold text-gray-900",
|
|
1747
1887
|
children: t
|
|
1748
1888
|
}), " produktů"]
|
|
1749
1889
|
}),
|
|
1750
|
-
d.map((e) => /* @__PURE__ */
|
|
1890
|
+
d.map((e) => /* @__PURE__ */ u("span", {
|
|
1751
1891
|
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",
|
|
1752
|
-
children: [e, /* @__PURE__ */
|
|
1892
|
+
children: [e, /* @__PURE__ */ l("button", {
|
|
1753
1893
|
onClick: () => f?.(e),
|
|
1754
1894
|
"aria-label": `Remove filter ${e}`,
|
|
1755
1895
|
className: "hover:text-primary-900 transition-colors",
|
|
1756
|
-
children: /* @__PURE__ */
|
|
1896
|
+
children: /* @__PURE__ */ l("svg", {
|
|
1757
1897
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1758
1898
|
fill: "none",
|
|
1759
1899
|
viewBox: "0 0 24 24",
|
|
1760
1900
|
strokeWidth: 2,
|
|
1761
1901
|
stroke: "currentColor",
|
|
1762
1902
|
className: "w-3 h-3",
|
|
1763
|
-
children: /* @__PURE__ */
|
|
1903
|
+
children: /* @__PURE__ */ l("path", {
|
|
1764
1904
|
strokeLinecap: "round",
|
|
1765
1905
|
strokeLinejoin: "round",
|
|
1766
1906
|
d: "M6 18L18 6M6 6l12 12"
|
|
@@ -1768,50 +1908,50 @@ function Ie({ products: e, totalCount: t, page: n = 1, onPageChange: r, perPage:
|
|
|
1768
1908
|
})
|
|
1769
1909
|
})]
|
|
1770
1910
|
}, e)),
|
|
1771
|
-
d.length > 1 && /* @__PURE__ */
|
|
1911
|
+
d.length > 1 && /* @__PURE__ */ l("button", {
|
|
1772
1912
|
onClick: p,
|
|
1773
1913
|
className: "text-xs text-gray-400 hover:text-gray-600 underline underline-offset-2 transition-colors",
|
|
1774
1914
|
children: "Zrušit vše"
|
|
1775
1915
|
})
|
|
1776
1916
|
]
|
|
1777
|
-
}), /* @__PURE__ */
|
|
1917
|
+
}), /* @__PURE__ */ l(O, {
|
|
1778
1918
|
options: o,
|
|
1779
|
-
value:
|
|
1780
|
-
onChange: (e) =>
|
|
1919
|
+
value: s ?? "",
|
|
1920
|
+
onChange: (e) => c?.(e.target.value),
|
|
1781
1921
|
"aria-label": "Sort products",
|
|
1782
1922
|
className: "text-sm"
|
|
1783
1923
|
})]
|
|
1784
1924
|
}),
|
|
1785
|
-
m ? /* @__PURE__ */
|
|
1786
|
-
className: `grid gap-4 ${
|
|
1787
|
-
children: Array.from({ length: i > 12 ? 12 : i }).map((e, t) => /* @__PURE__ */
|
|
1788
|
-
}) : e.length === 0 ? /* @__PURE__ */
|
|
1925
|
+
m ? /* @__PURE__ */ l("div", {
|
|
1926
|
+
className: `grid gap-4 ${Fe[a]}`,
|
|
1927
|
+
children: Array.from({ length: i > 12 ? 12 : i }).map((e, t) => /* @__PURE__ */ l(Le, {}, t))
|
|
1928
|
+
}) : e.length === 0 ? /* @__PURE__ */ l("div", {
|
|
1789
1929
|
className: "py-16 text-center",
|
|
1790
|
-
children: h ?? /* @__PURE__ */
|
|
1930
|
+
children: h ?? /* @__PURE__ */ u("div", {
|
|
1791
1931
|
className: "space-y-2",
|
|
1792
1932
|
children: [
|
|
1793
|
-
/* @__PURE__ */
|
|
1933
|
+
/* @__PURE__ */ l("p", {
|
|
1794
1934
|
className: "text-4xl",
|
|
1795
1935
|
children: "🔍"
|
|
1796
1936
|
}),
|
|
1797
|
-
/* @__PURE__ */
|
|
1937
|
+
/* @__PURE__ */ l("p", {
|
|
1798
1938
|
className: "font-semibold text-gray-900",
|
|
1799
1939
|
children: "Žádné produkty nenalezeny"
|
|
1800
1940
|
}),
|
|
1801
|
-
/* @__PURE__ */
|
|
1941
|
+
/* @__PURE__ */ l("p", {
|
|
1802
1942
|
className: "text-sm text-gray-500",
|
|
1803
1943
|
children: "Zkuste upravit filtry nebo hledat jinak."
|
|
1804
1944
|
}),
|
|
1805
|
-
d.length > 0 && /* @__PURE__ */
|
|
1945
|
+
d.length > 0 && /* @__PURE__ */ l("button", {
|
|
1806
1946
|
onClick: p,
|
|
1807
1947
|
className: "mt-3 text-sm text-primary-600 hover:underline",
|
|
1808
1948
|
children: "Zrušit všechny filtry"
|
|
1809
1949
|
})
|
|
1810
1950
|
]
|
|
1811
1951
|
})
|
|
1812
|
-
}) : /* @__PURE__ */
|
|
1813
|
-
className: `grid gap-4 ${
|
|
1814
|
-
children: e.map((e) => /* @__PURE__ */
|
|
1952
|
+
}) : /* @__PURE__ */ l("div", {
|
|
1953
|
+
className: `grid gap-4 ${Fe[a]}`,
|
|
1954
|
+
children: e.map((e) => /* @__PURE__ */ l(Pe, {
|
|
1815
1955
|
product: e,
|
|
1816
1956
|
size: S,
|
|
1817
1957
|
onAddToCart: g,
|
|
@@ -1820,9 +1960,9 @@ function Ie({ products: e, totalCount: t, page: n = 1, onPageChange: r, perPage:
|
|
|
1820
1960
|
isWishlisted: y.includes(e.id)
|
|
1821
1961
|
}, e.id))
|
|
1822
1962
|
}),
|
|
1823
|
-
x && x > 1 && r && /* @__PURE__ */
|
|
1963
|
+
x && x > 1 && r && /* @__PURE__ */ l("div", {
|
|
1824
1964
|
className: "flex justify-center mt-8",
|
|
1825
|
-
children: /* @__PURE__ */
|
|
1965
|
+
children: /* @__PURE__ */ l(Y, {
|
|
1826
1966
|
page: n,
|
|
1827
1967
|
totalPages: x,
|
|
1828
1968
|
onPageChange: r
|
|
@@ -1833,14 +1973,14 @@ function Ie({ products: e, totalCount: t, page: n = 1, onPageChange: r, perPage:
|
|
|
1833
1973
|
}
|
|
1834
1974
|
//#endregion
|
|
1835
1975
|
//#region src/components/CallToAction/CallToAction.tsx
|
|
1836
|
-
var
|
|
1976
|
+
var ze = {
|
|
1837
1977
|
default: "bg-gray-50 border border-gray-200",
|
|
1838
1978
|
primary: "bg-primary-600",
|
|
1839
1979
|
dark: "bg-gray-900",
|
|
1840
1980
|
gradient: "bg-linear-to-br from-primary-600 via-primary-700 to-violet-700",
|
|
1841
1981
|
outline: "bg-white border-2 border-primary-600",
|
|
1842
1982
|
image: "relative overflow-hidden"
|
|
1843
|
-
},
|
|
1983
|
+
}, Be = {
|
|
1844
1984
|
default: {
|
|
1845
1985
|
eyebrow: "text-primary-600",
|
|
1846
1986
|
title: "text-gray-900",
|
|
@@ -1871,7 +2011,7 @@ var Le = {
|
|
|
1871
2011
|
title: "text-white",
|
|
1872
2012
|
description: "text-white/80"
|
|
1873
2013
|
}
|
|
1874
|
-
},
|
|
2014
|
+
}, Ve = {
|
|
1875
2015
|
sm: {
|
|
1876
2016
|
wrapper: "px-6 py-6 rounded-xl",
|
|
1877
2017
|
title: "text-xl font-bold",
|
|
@@ -1896,7 +2036,7 @@ var Le = {
|
|
|
1896
2036
|
description: "text-xl",
|
|
1897
2037
|
eyebrow: "text-sm"
|
|
1898
2038
|
}
|
|
1899
|
-
},
|
|
2039
|
+
}, He = {
|
|
1900
2040
|
left: {
|
|
1901
2041
|
wrapper: "items-start text-left",
|
|
1902
2042
|
actions: "justify-start"
|
|
@@ -1910,9 +2050,9 @@ var Le = {
|
|
|
1910
2050
|
actions: "justify-end"
|
|
1911
2051
|
}
|
|
1912
2052
|
};
|
|
1913
|
-
function
|
|
1914
|
-
let h =
|
|
1915
|
-
...
|
|
2053
|
+
function Ue({ eyebrow: e, title: t, description: n, actions: r = [], align: i = "center", layout: a = "stacked", size: o = "md", variant: s = "default", background: c, backgroundImage: d, media: f, className: p = "", style: m }) {
|
|
2054
|
+
let h = Be[s], g = Ve[o], _ = He[i], v = a === "inline", y = {
|
|
2055
|
+
...c ? { background: c } : {},
|
|
1916
2056
|
...d ? {
|
|
1917
2057
|
backgroundImage: `url(${d})`,
|
|
1918
2058
|
backgroundSize: "cover",
|
|
@@ -1920,48 +2060,48 @@ function Ve({ eyebrow: e, title: t, description: n, actions: r = [], align: i =
|
|
|
1920
2060
|
} : {},
|
|
1921
2061
|
...m
|
|
1922
2062
|
};
|
|
1923
|
-
return /* @__PURE__ */
|
|
2063
|
+
return /* @__PURE__ */ u("div", {
|
|
1924
2064
|
className: [
|
|
1925
2065
|
"w-full",
|
|
1926
|
-
|
|
2066
|
+
ze[s],
|
|
1927
2067
|
g.wrapper,
|
|
1928
2068
|
p
|
|
1929
2069
|
].filter(Boolean).join(" "),
|
|
1930
2070
|
style: Object.keys(y).length ? y : void 0,
|
|
1931
|
-
children: [(
|
|
2071
|
+
children: [(s === "image" || d) && /* @__PURE__ */ l("div", { className: "absolute inset-0 bg-black/50" }), /* @__PURE__ */ u("div", {
|
|
1932
2072
|
className: `relative ${v ? "flex flex-wrap items-center justify-between gap-6" : `flex flex-col gap-4 ${_.wrapper}`}`,
|
|
1933
2073
|
children: [
|
|
1934
|
-
/* @__PURE__ */
|
|
2074
|
+
/* @__PURE__ */ u("div", {
|
|
1935
2075
|
className: `flex flex-col gap-2 ${v ? "flex-1 min-w-0" : _.wrapper}`,
|
|
1936
2076
|
children: [
|
|
1937
|
-
e && /* @__PURE__ */
|
|
2077
|
+
e && /* @__PURE__ */ l("p", {
|
|
1938
2078
|
className: `font-semibold uppercase tracking-widest ${g.eyebrow} ${h.eyebrow}`,
|
|
1939
2079
|
children: e
|
|
1940
2080
|
}),
|
|
1941
|
-
/* @__PURE__ */
|
|
2081
|
+
/* @__PURE__ */ l("h2", {
|
|
1942
2082
|
className: `${g.title} ${h.title}`,
|
|
1943
2083
|
children: t
|
|
1944
2084
|
}),
|
|
1945
|
-
n && /* @__PURE__ */
|
|
2085
|
+
n && /* @__PURE__ */ l("p", {
|
|
1946
2086
|
className: `max-w-2xl ${g.description} ${h.description}`,
|
|
1947
2087
|
children: n
|
|
1948
2088
|
})
|
|
1949
2089
|
]
|
|
1950
2090
|
}),
|
|
1951
|
-
f && !v && /* @__PURE__ */
|
|
2091
|
+
f && !v && /* @__PURE__ */ l("div", {
|
|
1952
2092
|
className: "mt-2",
|
|
1953
2093
|
children: f
|
|
1954
2094
|
}),
|
|
1955
|
-
r.length > 0 && /* @__PURE__ */
|
|
2095
|
+
r.length > 0 && /* @__PURE__ */ l("div", {
|
|
1956
2096
|
className: `flex flex-wrap gap-3 ${v ? "shrink-0" : _.actions}`,
|
|
1957
2097
|
children: r.map((e, t) => {
|
|
1958
|
-
let n = /* @__PURE__ */
|
|
1959
|
-
variant: e.variant ?? (t === 0 ?
|
|
2098
|
+
let n = /* @__PURE__ */ l(w, {
|
|
2099
|
+
variant: e.variant ?? (t === 0 ? We(s) : "outline"),
|
|
1960
2100
|
size: e.size ?? (o === "sm" ? "sm" : o === "xl" ? "lg" : "md"),
|
|
1961
2101
|
onClick: e.onClick,
|
|
1962
2102
|
children: e.label
|
|
1963
2103
|
}, t);
|
|
1964
|
-
return e.href ? /* @__PURE__ */
|
|
2104
|
+
return e.href ? /* @__PURE__ */ l("a", {
|
|
1965
2105
|
href: e.href,
|
|
1966
2106
|
className: "contents",
|
|
1967
2107
|
children: n
|
|
@@ -1972,233 +2112,233 @@ function Ve({ eyebrow: e, title: t, description: n, actions: r = [], align: i =
|
|
|
1972
2112
|
})]
|
|
1973
2113
|
});
|
|
1974
2114
|
}
|
|
1975
|
-
function
|
|
2115
|
+
function We(e) {
|
|
1976
2116
|
return e === "default" || e === "outline" ? "primary" : "secondary";
|
|
1977
2117
|
}
|
|
1978
2118
|
//#endregion
|
|
1979
2119
|
//#region src/components/Footer/Footer.tsx
|
|
1980
|
-
function
|
|
1981
|
-
return /* @__PURE__ */
|
|
2120
|
+
function Ge() {
|
|
2121
|
+
return /* @__PURE__ */ l("svg", {
|
|
1982
2122
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1983
2123
|
fill: "none",
|
|
1984
2124
|
viewBox: "0 0 24 24",
|
|
1985
2125
|
strokeWidth: 1.5,
|
|
1986
2126
|
stroke: "currentColor",
|
|
1987
2127
|
className: "w-4 h-4 shrink-0",
|
|
1988
|
-
children: /* @__PURE__ */
|
|
2128
|
+
children: /* @__PURE__ */ l("path", {
|
|
1989
2129
|
strokeLinecap: "round",
|
|
1990
2130
|
strokeLinejoin: "round",
|
|
1991
2131
|
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"
|
|
1992
2132
|
})
|
|
1993
2133
|
});
|
|
1994
2134
|
}
|
|
1995
|
-
function
|
|
1996
|
-
return /* @__PURE__ */
|
|
2135
|
+
function Ke() {
|
|
2136
|
+
return /* @__PURE__ */ l("svg", {
|
|
1997
2137
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1998
2138
|
fill: "none",
|
|
1999
2139
|
viewBox: "0 0 24 24",
|
|
2000
2140
|
strokeWidth: 1.5,
|
|
2001
2141
|
stroke: "currentColor",
|
|
2002
2142
|
className: "w-4 h-4 shrink-0",
|
|
2003
|
-
children: /* @__PURE__ */
|
|
2143
|
+
children: /* @__PURE__ */ l("path", {
|
|
2004
2144
|
strokeLinecap: "round",
|
|
2005
2145
|
strokeLinejoin: "round",
|
|
2006
2146
|
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"
|
|
2007
2147
|
})
|
|
2008
2148
|
});
|
|
2009
2149
|
}
|
|
2010
|
-
function
|
|
2011
|
-
return /* @__PURE__ */
|
|
2150
|
+
function qe() {
|
|
2151
|
+
return /* @__PURE__ */ u("svg", {
|
|
2012
2152
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2013
2153
|
fill: "none",
|
|
2014
2154
|
viewBox: "0 0 24 24",
|
|
2015
2155
|
strokeWidth: 1.5,
|
|
2016
2156
|
stroke: "currentColor",
|
|
2017
2157
|
className: "w-4 h-4 shrink-0",
|
|
2018
|
-
children: [/* @__PURE__ */
|
|
2158
|
+
children: [/* @__PURE__ */ l("path", {
|
|
2019
2159
|
strokeLinecap: "round",
|
|
2020
2160
|
strokeLinejoin: "round",
|
|
2021
2161
|
d: "M15 10.5a3 3 0 11-6 0 3 3 0 016 0z"
|
|
2022
|
-
}), /* @__PURE__ */
|
|
2162
|
+
}), /* @__PURE__ */ l("path", {
|
|
2023
2163
|
strokeLinecap: "round",
|
|
2024
2164
|
strokeLinejoin: "round",
|
|
2025
2165
|
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"
|
|
2026
2166
|
})]
|
|
2027
2167
|
});
|
|
2028
2168
|
}
|
|
2029
|
-
function
|
|
2030
|
-
return /* @__PURE__ */
|
|
2169
|
+
function Je() {
|
|
2170
|
+
return /* @__PURE__ */ l("svg", {
|
|
2031
2171
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2032
2172
|
fill: "none",
|
|
2033
2173
|
viewBox: "0 0 24 24",
|
|
2034
2174
|
strokeWidth: 1.5,
|
|
2035
2175
|
stroke: "currentColor",
|
|
2036
2176
|
className: "w-4 h-4 shrink-0",
|
|
2037
|
-
children: /* @__PURE__ */
|
|
2177
|
+
children: /* @__PURE__ */ l("path", {
|
|
2038
2178
|
strokeLinecap: "round",
|
|
2039
2179
|
strokeLinejoin: "round",
|
|
2040
2180
|
d: "M12 6v6h4.5m4.5 0a9 9 0 11-18 0 9 9 0 0118 0z"
|
|
2041
2181
|
})
|
|
2042
2182
|
});
|
|
2043
2183
|
}
|
|
2044
|
-
function
|
|
2045
|
-
return /* @__PURE__ */
|
|
2184
|
+
function Ye() {
|
|
2185
|
+
return /* @__PURE__ */ l("svg", {
|
|
2046
2186
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2047
2187
|
viewBox: "0 0 24 24",
|
|
2048
2188
|
fill: "currentColor",
|
|
2049
2189
|
className: "w-4 h-4",
|
|
2050
|
-
children: /* @__PURE__ */
|
|
2190
|
+
children: /* @__PURE__ */ l("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" })
|
|
2051
2191
|
});
|
|
2052
2192
|
}
|
|
2053
|
-
function
|
|
2054
|
-
return /* @__PURE__ */
|
|
2193
|
+
function Xe() {
|
|
2194
|
+
return /* @__PURE__ */ l("svg", {
|
|
2055
2195
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2056
2196
|
viewBox: "0 0 24 24",
|
|
2057
2197
|
fill: "currentColor",
|
|
2058
2198
|
className: "w-4 h-4",
|
|
2059
|
-
children: /* @__PURE__ */
|
|
2199
|
+
children: /* @__PURE__ */ l("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" })
|
|
2060
2200
|
});
|
|
2061
2201
|
}
|
|
2062
|
-
function
|
|
2063
|
-
return /* @__PURE__ */
|
|
2202
|
+
function Ze() {
|
|
2203
|
+
return /* @__PURE__ */ l("svg", {
|
|
2064
2204
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2065
2205
|
viewBox: "0 0 24 24",
|
|
2066
2206
|
fill: "currentColor",
|
|
2067
2207
|
className: "w-4 h-4",
|
|
2068
|
-
children: /* @__PURE__ */
|
|
2208
|
+
children: /* @__PURE__ */ l("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" })
|
|
2069
2209
|
});
|
|
2070
2210
|
}
|
|
2071
|
-
function
|
|
2072
|
-
return /* @__PURE__ */
|
|
2211
|
+
function Qe() {
|
|
2212
|
+
return /* @__PURE__ */ l("svg", {
|
|
2073
2213
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2074
2214
|
viewBox: "0 0 24 24",
|
|
2075
2215
|
fill: "currentColor",
|
|
2076
2216
|
className: "w-4 h-4",
|
|
2077
|
-
children: /* @__PURE__ */
|
|
2217
|
+
children: /* @__PURE__ */ l("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" })
|
|
2078
2218
|
});
|
|
2079
2219
|
}
|
|
2080
|
-
function
|
|
2081
|
-
return /* @__PURE__ */
|
|
2220
|
+
function $e() {
|
|
2221
|
+
return /* @__PURE__ */ l("svg", {
|
|
2082
2222
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2083
2223
|
viewBox: "0 0 24 24",
|
|
2084
2224
|
fill: "currentColor",
|
|
2085
2225
|
className: "w-4 h-4",
|
|
2086
|
-
children: /* @__PURE__ */
|
|
2226
|
+
children: /* @__PURE__ */ l("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" })
|
|
2087
2227
|
});
|
|
2088
2228
|
}
|
|
2089
|
-
var
|
|
2090
|
-
facebook:
|
|
2091
|
-
instagram:
|
|
2092
|
-
twitter:
|
|
2093
|
-
youtube:
|
|
2094
|
-
tiktok:
|
|
2095
|
-
},
|
|
2096
|
-
phone:
|
|
2097
|
-
email:
|
|
2098
|
-
address:
|
|
2099
|
-
hours:
|
|
2229
|
+
var et = {
|
|
2230
|
+
facebook: Ye,
|
|
2231
|
+
instagram: Xe,
|
|
2232
|
+
twitter: Ze,
|
|
2233
|
+
youtube: Qe,
|
|
2234
|
+
tiktok: $e
|
|
2235
|
+
}, tt = {
|
|
2236
|
+
phone: Ge,
|
|
2237
|
+
email: Ke,
|
|
2238
|
+
address: qe,
|
|
2239
|
+
hours: Je
|
|
2100
2240
|
};
|
|
2101
|
-
function
|
|
2241
|
+
function nt(e) {
|
|
2102
2242
|
if (!e) return null;
|
|
2103
2243
|
if (typeof e == "string") {
|
|
2104
|
-
let t =
|
|
2105
|
-
return t ? /* @__PURE__ */
|
|
2244
|
+
let t = tt[e];
|
|
2245
|
+
return t ? /* @__PURE__ */ l(t, {}) : null;
|
|
2106
2246
|
}
|
|
2107
2247
|
return e;
|
|
2108
2248
|
}
|
|
2109
|
-
function
|
|
2249
|
+
function rt(e) {
|
|
2110
2250
|
if (typeof e == "string") {
|
|
2111
|
-
let t =
|
|
2112
|
-
return t ? /* @__PURE__ */
|
|
2251
|
+
let t = et[e];
|
|
2252
|
+
return t ? /* @__PURE__ */ l(t, {}) : null;
|
|
2113
2253
|
}
|
|
2114
2254
|
return e;
|
|
2115
2255
|
}
|
|
2116
|
-
function
|
|
2256
|
+
function it({ logo: e, tagline: t, contactHeading: n = "Kontakty", contacts: r = [], linkGroups: i = [], socialLinks: a = [], copyright: o, bottomLinks: s = [], className: c = "" }) {
|
|
2117
2257
|
let d = (/* @__PURE__ */ new Date()).getFullYear();
|
|
2118
|
-
return /* @__PURE__ */
|
|
2119
|
-
className: ["bg-gray-900 text-gray-300",
|
|
2120
|
-
children: /* @__PURE__ */
|
|
2258
|
+
return /* @__PURE__ */ l("footer", {
|
|
2259
|
+
className: ["bg-gray-900 text-gray-300", c].filter(Boolean).join(" "),
|
|
2260
|
+
children: /* @__PURE__ */ u(x, { children: [/* @__PURE__ */ u("div", {
|
|
2121
2261
|
className: "max-w-7xl mx-auto px-4 py-12 grid grid-cols-1 md:grid-cols-2 gap-10 lg:gap-16",
|
|
2122
|
-
children: [/* @__PURE__ */
|
|
2262
|
+
children: [/* @__PURE__ */ u("div", {
|
|
2123
2263
|
className: "flex flex-col gap-6",
|
|
2124
2264
|
children: [
|
|
2125
|
-
/* @__PURE__ */
|
|
2265
|
+
/* @__PURE__ */ u("div", { children: [e ? /* @__PURE__ */ l("div", {
|
|
2126
2266
|
className: "mb-3",
|
|
2127
2267
|
children: e
|
|
2128
|
-
}) : /* @__PURE__ */
|
|
2268
|
+
}) : /* @__PURE__ */ l("span", {
|
|
2129
2269
|
className: "text-xl font-bold text-white tracking-tight mb-3 block",
|
|
2130
2270
|
children: "shopito"
|
|
2131
|
-
}), t && /* @__PURE__ */
|
|
2271
|
+
}), t && /* @__PURE__ */ l("p", {
|
|
2132
2272
|
className: "text-sm text-gray-400 max-w-xs",
|
|
2133
2273
|
children: t
|
|
2134
2274
|
})] }),
|
|
2135
|
-
r.length > 0 && /* @__PURE__ */
|
|
2275
|
+
r.length > 0 && /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ l("h3", {
|
|
2136
2276
|
className: "text-xs font-semibold uppercase tracking-widest text-gray-500 mb-3",
|
|
2137
2277
|
children: n
|
|
2138
|
-
}), /* @__PURE__ */
|
|
2278
|
+
}), /* @__PURE__ */ l("ul", {
|
|
2139
2279
|
className: "space-y-3",
|
|
2140
2280
|
children: r.map((e, t) => {
|
|
2141
|
-
let n =
|
|
2281
|
+
let n = nt(e.icon), r = /* @__PURE__ */ u("div", {
|
|
2142
2282
|
className: "flex items-start gap-2.5",
|
|
2143
|
-
children: [n && /* @__PURE__ */
|
|
2283
|
+
children: [n && /* @__PURE__ */ l("span", {
|
|
2144
2284
|
className: "mt-0.5 text-primary-400",
|
|
2145
2285
|
children: n
|
|
2146
|
-
}), /* @__PURE__ */
|
|
2286
|
+
}), /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ l("p", {
|
|
2147
2287
|
className: "text-xs text-gray-500 leading-none mb-0.5",
|
|
2148
2288
|
children: e.label
|
|
2149
|
-
}), /* @__PURE__ */
|
|
2289
|
+
}), /* @__PURE__ */ l("p", {
|
|
2150
2290
|
className: `text-sm text-gray-200 ${e.href ? "hover:text-white transition-colors" : ""}`,
|
|
2151
2291
|
children: e.value
|
|
2152
2292
|
})] })]
|
|
2153
2293
|
});
|
|
2154
|
-
return /* @__PURE__ */
|
|
2294
|
+
return /* @__PURE__ */ l("li", { children: e.href ? /* @__PURE__ */ l("a", {
|
|
2155
2295
|
href: e.href,
|
|
2156
2296
|
children: r
|
|
2157
2297
|
}) : r }, t);
|
|
2158
2298
|
})
|
|
2159
2299
|
})] }),
|
|
2160
|
-
a.length > 0 && /* @__PURE__ */
|
|
2300
|
+
a.length > 0 && /* @__PURE__ */ l("div", {
|
|
2161
2301
|
className: "flex gap-2 flex-wrap",
|
|
2162
|
-
children: a.map((e, t) => /* @__PURE__ */
|
|
2302
|
+
children: a.map((e, t) => /* @__PURE__ */ l("a", {
|
|
2163
2303
|
href: e.href,
|
|
2164
2304
|
"aria-label": e.label,
|
|
2165
2305
|
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",
|
|
2166
|
-
children:
|
|
2306
|
+
children: rt(e.icon)
|
|
2167
2307
|
}, t))
|
|
2168
2308
|
})
|
|
2169
2309
|
]
|
|
2170
|
-
}), i.length > 0 && /* @__PURE__ */
|
|
2310
|
+
}), i.length > 0 && /* @__PURE__ */ l("div", {
|
|
2171
2311
|
className: `grid gap-8 ${i.length === 1 ? "grid-cols-1" : i.length === 2 ? "grid-cols-2" : "grid-cols-2 sm:grid-cols-3"}`,
|
|
2172
|
-
children: i.map((e, t) => /* @__PURE__ */
|
|
2312
|
+
children: i.map((e, t) => /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ l("h3", {
|
|
2173
2313
|
className: "text-xs font-semibold uppercase tracking-widest text-gray-500 mb-3",
|
|
2174
2314
|
children: e.heading
|
|
2175
|
-
}), /* @__PURE__ */
|
|
2315
|
+
}), /* @__PURE__ */ l("ul", {
|
|
2176
2316
|
className: "space-y-2",
|
|
2177
|
-
children: e.links.map((e, t) => /* @__PURE__ */
|
|
2317
|
+
children: e.links.map((e, t) => /* @__PURE__ */ l("li", { children: e.href ? /* @__PURE__ */ l("a", {
|
|
2178
2318
|
href: e.href,
|
|
2179
2319
|
className: "text-sm text-gray-400 hover:text-white transition-colors",
|
|
2180
2320
|
children: e.label
|
|
2181
|
-
}) : /* @__PURE__ */
|
|
2321
|
+
}) : /* @__PURE__ */ l("button", {
|
|
2182
2322
|
onClick: e.onClick,
|
|
2183
2323
|
className: "text-sm text-gray-400 hover:text-white transition-colors text-left",
|
|
2184
2324
|
children: e.label
|
|
2185
2325
|
}) }, t))
|
|
2186
2326
|
})] }, t))
|
|
2187
2327
|
})]
|
|
2188
|
-
}), /* @__PURE__ */
|
|
2328
|
+
}), /* @__PURE__ */ l("div", {
|
|
2189
2329
|
className: "border-t border-gray-800",
|
|
2190
|
-
children: /* @__PURE__ */
|
|
2330
|
+
children: /* @__PURE__ */ u("div", {
|
|
2191
2331
|
className: "max-w-7xl mx-auto px-4 py-4 flex flex-wrap items-center justify-between gap-3",
|
|
2192
|
-
children: [/* @__PURE__ */
|
|
2332
|
+
children: [/* @__PURE__ */ l("p", {
|
|
2193
2333
|
className: "text-xs text-gray-500",
|
|
2194
2334
|
children: o ?? `© ${d} Shopito. Všechna práva vyhrazena.`
|
|
2195
|
-
}),
|
|
2335
|
+
}), s.length > 0 && /* @__PURE__ */ l("nav", {
|
|
2196
2336
|
className: "flex flex-wrap gap-4",
|
|
2197
|
-
children:
|
|
2337
|
+
children: s.map((e, t) => e.href ? /* @__PURE__ */ l("a", {
|
|
2198
2338
|
href: e.href,
|
|
2199
2339
|
className: "text-xs text-gray-500 hover:text-gray-300 transition-colors",
|
|
2200
2340
|
children: e.label
|
|
2201
|
-
}, t) : /* @__PURE__ */
|
|
2341
|
+
}, t) : /* @__PURE__ */ l("button", {
|
|
2202
2342
|
onClick: e.onClick,
|
|
2203
2343
|
className: "text-xs text-gray-500 hover:text-gray-300 transition-colors",
|
|
2204
2344
|
children: e.label
|
|
@@ -2209,6 +2349,6 @@ function tt({ logo: e, tagline: t, contactHeading: n = "Kontakty", contacts: r =
|
|
|
2209
2349
|
});
|
|
2210
2350
|
}
|
|
2211
2351
|
//#endregion
|
|
2212
|
-
export {
|
|
2352
|
+
export { z as Alert, te as Avatar, j as Badge, Oe as BannerCarousel, w as Button, Ue as CallToAction, N as Card, F as CardBody, I as CardFooter, P as CardHeader, be as Carousel, Te as CategoryTree, V as Checkbox, G as Col, x as Container, it as Footer, W as Grid, Se as Header, k as Heading, E as IconButton, D as Input, T as LoadingSpin, S as Main, De as MegaMenu, ee as Modal, Y as Pagination, Pe as ProductCard, Re as ProductGrid, K as QuantityInput, O as Select, L as Spinner, ne as Stack, A as Text, H as Toggle };
|
|
2213
2353
|
|
|
2214
2354
|
//# sourceMappingURL=index.js.map
|