@szymonpiatek/designsystem 0.0.5 → 0.0.7
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/index.cjs +1607 -466
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +206 -12
- package/dist/index.d.ts +206 -12
- package/dist/index.js +1404 -274
- package/dist/index.js.map +1 -1
- package/package.json +5 -18
- package/dist/ssr/EmotionRegistry.cjs +0 -71
- package/dist/ssr/EmotionRegistry.cjs.map +0 -1
- package/dist/ssr/EmotionRegistry.js +0 -46
- package/dist/ssr/EmotionRegistry.js.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var react = require('react');
|
|
4
4
|
var styles = require('@mui/material/styles');
|
|
5
|
-
var
|
|
5
|
+
var material = require('@mui/material');
|
|
6
6
|
var jsxRuntime = require('react/jsx-runtime');
|
|
7
|
+
var ShoppingCartIcon = require('@mui/icons-material/ShoppingCart');
|
|
8
|
+
var FavoriteIcon = require('@mui/icons-material/Favorite');
|
|
9
|
+
var FavoriteBorderIcon = require('@mui/icons-material/FavoriteBorder');
|
|
7
10
|
var ExpandMoreIcon = require('@mui/icons-material/ExpandMore');
|
|
8
11
|
var FileUploadIcon = require('@mui/icons-material/FileUpload');
|
|
9
12
|
var CloudUploadMuiIcon = require('@mui/icons-material/CloudUpload');
|
|
@@ -21,41 +24,32 @@ var ChevronLeftIcon = require('@mui/icons-material/ChevronLeft');
|
|
|
21
24
|
var ChevronRightIcon = require('@mui/icons-material/ChevronRight');
|
|
22
25
|
var KeyboardArrowUpIcon = require('@mui/icons-material/KeyboardArrowUp');
|
|
23
26
|
var KeyboardArrowDownIcon = require('@mui/icons-material/KeyboardArrowDown');
|
|
24
|
-
var react = require('@emotion/react');
|
|
27
|
+
var react$1 = require('@emotion/react');
|
|
28
|
+
var ImageIcon = require('@mui/icons-material/Image');
|
|
25
29
|
var ArticleIcon = require('@mui/icons-material/Article');
|
|
26
30
|
var CheckCircleOutlinedIcon = require('@mui/icons-material/CheckCircleOutlined');
|
|
27
31
|
var HighlightOffIcon = require('@mui/icons-material/HighlightOff');
|
|
32
|
+
var CreditCardOutlinedIcon = require('@mui/icons-material/CreditCardOutlined');
|
|
33
|
+
var LocalShippingOutlinedIcon = require('@mui/icons-material/LocalShippingOutlined');
|
|
34
|
+
var GridViewIcon = require('@mui/icons-material/GridView');
|
|
35
|
+
var ViewListIcon = require('@mui/icons-material/ViewList');
|
|
28
36
|
var reactDom = require('react-dom');
|
|
29
37
|
var KeyboardDoubleArrowLeftIcon = require('@mui/icons-material/KeyboardDoubleArrowLeft');
|
|
30
38
|
var KeyboardDoubleArrowRightIcon = require('@mui/icons-material/KeyboardDoubleArrowRight');
|
|
39
|
+
var InfoOutlinedIcon = require('@mui/icons-material/InfoOutlined');
|
|
40
|
+
var WarningAmberOutlinedIcon = require('@mui/icons-material/WarningAmberOutlined');
|
|
41
|
+
var ErrorOutlineOutlinedIcon = require('@mui/icons-material/ErrorOutlineOutlined');
|
|
42
|
+
var InboxOutlinedIcon = require('@mui/icons-material/InboxOutlined');
|
|
43
|
+
var VerifiedIcon = require('@mui/icons-material/Verified');
|
|
44
|
+
var ThumbUpOutlinedIcon = require('@mui/icons-material/ThumbUpOutlined');
|
|
31
45
|
var ArrowForwardIcon = require('@mui/icons-material/ArrowForward');
|
|
32
46
|
var MenuIcon = require('@mui/icons-material/Menu');
|
|
33
|
-
var CssBaseline = require('@mui/material/CssBaseline');
|
|
34
|
-
var navigation = require('next/navigation');
|
|
35
|
-
var createCache = require('@emotion/cache');
|
|
36
47
|
|
|
37
48
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
38
49
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
if (e) {
|
|
43
|
-
Object.keys(e).forEach(function (k) {
|
|
44
|
-
if (k !== 'default') {
|
|
45
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
46
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
47
|
-
enumerable: true,
|
|
48
|
-
get: function () { return e[k]; }
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
n.default = e;
|
|
54
|
-
return Object.freeze(n);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
58
|
-
var CircularProgress__default = /*#__PURE__*/_interopDefault(CircularProgress);
|
|
50
|
+
var ShoppingCartIcon__default = /*#__PURE__*/_interopDefault(ShoppingCartIcon);
|
|
51
|
+
var FavoriteIcon__default = /*#__PURE__*/_interopDefault(FavoriteIcon);
|
|
52
|
+
var FavoriteBorderIcon__default = /*#__PURE__*/_interopDefault(FavoriteBorderIcon);
|
|
59
53
|
var ExpandMoreIcon__default = /*#__PURE__*/_interopDefault(ExpandMoreIcon);
|
|
60
54
|
var FileUploadIcon__default = /*#__PURE__*/_interopDefault(FileUploadIcon);
|
|
61
55
|
var CloudUploadMuiIcon__default = /*#__PURE__*/_interopDefault(CloudUploadMuiIcon);
|
|
@@ -72,15 +66,24 @@ var ChevronLeftIcon__default = /*#__PURE__*/_interopDefault(ChevronLeftIcon);
|
|
|
72
66
|
var ChevronRightIcon__default = /*#__PURE__*/_interopDefault(ChevronRightIcon);
|
|
73
67
|
var KeyboardArrowUpIcon__default = /*#__PURE__*/_interopDefault(KeyboardArrowUpIcon);
|
|
74
68
|
var KeyboardArrowDownIcon__default = /*#__PURE__*/_interopDefault(KeyboardArrowDownIcon);
|
|
69
|
+
var ImageIcon__default = /*#__PURE__*/_interopDefault(ImageIcon);
|
|
75
70
|
var ArticleIcon__default = /*#__PURE__*/_interopDefault(ArticleIcon);
|
|
76
71
|
var CheckCircleOutlinedIcon__default = /*#__PURE__*/_interopDefault(CheckCircleOutlinedIcon);
|
|
77
72
|
var HighlightOffIcon__default = /*#__PURE__*/_interopDefault(HighlightOffIcon);
|
|
73
|
+
var CreditCardOutlinedIcon__default = /*#__PURE__*/_interopDefault(CreditCardOutlinedIcon);
|
|
74
|
+
var LocalShippingOutlinedIcon__default = /*#__PURE__*/_interopDefault(LocalShippingOutlinedIcon);
|
|
75
|
+
var GridViewIcon__default = /*#__PURE__*/_interopDefault(GridViewIcon);
|
|
76
|
+
var ViewListIcon__default = /*#__PURE__*/_interopDefault(ViewListIcon);
|
|
78
77
|
var KeyboardDoubleArrowLeftIcon__default = /*#__PURE__*/_interopDefault(KeyboardDoubleArrowLeftIcon);
|
|
79
78
|
var KeyboardDoubleArrowRightIcon__default = /*#__PURE__*/_interopDefault(KeyboardDoubleArrowRightIcon);
|
|
79
|
+
var InfoOutlinedIcon__default = /*#__PURE__*/_interopDefault(InfoOutlinedIcon);
|
|
80
|
+
var WarningAmberOutlinedIcon__default = /*#__PURE__*/_interopDefault(WarningAmberOutlinedIcon);
|
|
81
|
+
var ErrorOutlineOutlinedIcon__default = /*#__PURE__*/_interopDefault(ErrorOutlineOutlinedIcon);
|
|
82
|
+
var InboxOutlinedIcon__default = /*#__PURE__*/_interopDefault(InboxOutlinedIcon);
|
|
83
|
+
var VerifiedIcon__default = /*#__PURE__*/_interopDefault(VerifiedIcon);
|
|
84
|
+
var ThumbUpOutlinedIcon__default = /*#__PURE__*/_interopDefault(ThumbUpOutlinedIcon);
|
|
80
85
|
var ArrowForwardIcon__default = /*#__PURE__*/_interopDefault(ArrowForwardIcon);
|
|
81
86
|
var MenuIcon__default = /*#__PURE__*/_interopDefault(MenuIcon);
|
|
82
|
-
var CssBaseline__default = /*#__PURE__*/_interopDefault(CssBaseline);
|
|
83
|
-
var createCache__default = /*#__PURE__*/_interopDefault(createCache);
|
|
84
87
|
|
|
85
88
|
// src/components/atoms/buttons/Button/Button.tsx
|
|
86
89
|
var sizeMap = {
|
|
@@ -153,7 +156,7 @@ var IconSlot = styles.styled("span")({
|
|
|
153
156
|
var Spinner = styles.styled("span")({
|
|
154
157
|
display: "inline-flex"
|
|
155
158
|
});
|
|
156
|
-
var Button =
|
|
159
|
+
var Button = react.forwardRef(
|
|
157
160
|
({
|
|
158
161
|
variant = "primary",
|
|
159
162
|
size = "md",
|
|
@@ -183,7 +186,7 @@ var Button = React.forwardRef(
|
|
|
183
186
|
"aria-label": ariaLabel,
|
|
184
187
|
"aria-current": ariaCurrent,
|
|
185
188
|
children: [
|
|
186
|
-
loading ? /* @__PURE__ */ jsxRuntime.jsx(Spinner, { "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
189
|
+
loading ? /* @__PURE__ */ jsxRuntime.jsx(Spinner, { "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(material.CircularProgress, { size: "1em", color: "inherit", thickness: 5 }) }) : startIcon && /* @__PURE__ */ jsxRuntime.jsx(IconSlot, { children: startIcon }),
|
|
187
190
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children }),
|
|
188
191
|
endIcon && /* @__PURE__ */ jsxRuntime.jsx(IconSlot, { children: endIcon })
|
|
189
192
|
]
|
|
@@ -191,6 +194,102 @@ var Button = React.forwardRef(
|
|
|
191
194
|
)
|
|
192
195
|
);
|
|
193
196
|
Button.displayName = "Button";
|
|
197
|
+
var iconSizeMap = {
|
|
198
|
+
sm: 18,
|
|
199
|
+
md: 20,
|
|
200
|
+
lg: 24
|
|
201
|
+
};
|
|
202
|
+
var Root = styles.styled("span")({
|
|
203
|
+
position: "relative",
|
|
204
|
+
display: "inline-flex"
|
|
205
|
+
});
|
|
206
|
+
var Badge = styles.styled("span")(({ theme }) => ({
|
|
207
|
+
position: "absolute",
|
|
208
|
+
top: "-4px",
|
|
209
|
+
right: "-4px",
|
|
210
|
+
backgroundColor: theme.palette.primary.main,
|
|
211
|
+
color: "#fff",
|
|
212
|
+
borderRadius: "9999px",
|
|
213
|
+
fontSize: "0.625rem",
|
|
214
|
+
fontWeight: 700,
|
|
215
|
+
minWidth: "16px",
|
|
216
|
+
height: "16px",
|
|
217
|
+
display: "flex",
|
|
218
|
+
alignItems: "center",
|
|
219
|
+
justifyContent: "center",
|
|
220
|
+
padding: "0 3px",
|
|
221
|
+
pointerEvents: "none",
|
|
222
|
+
fontFamily: theme.typography.fontFamily,
|
|
223
|
+
lineHeight: 1
|
|
224
|
+
}));
|
|
225
|
+
var CartButton = react.forwardRef(
|
|
226
|
+
({ count, size = "sm", label = "Koszyk", disabled, onClick, className, "aria-label": ariaLabel }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root, { className, children: [
|
|
227
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
228
|
+
Button,
|
|
229
|
+
{
|
|
230
|
+
ref,
|
|
231
|
+
variant: "ghost",
|
|
232
|
+
size,
|
|
233
|
+
disabled,
|
|
234
|
+
onClick,
|
|
235
|
+
"aria-label": ariaLabel ?? (count ? `${label} (${count})` : label),
|
|
236
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("span", { style: { display: "flex" }, children: /* @__PURE__ */ jsxRuntime.jsx(ShoppingCartIcon__default.default, { "aria-hidden": true, style: { fontSize: iconSizeMap[size] } }) })
|
|
237
|
+
}
|
|
238
|
+
),
|
|
239
|
+
count != null && count > 0 && /* @__PURE__ */ jsxRuntime.jsx(Badge, { "aria-hidden": true, children: count > 99 ? "99+" : count })
|
|
240
|
+
] })
|
|
241
|
+
);
|
|
242
|
+
CartButton.displayName = "CartButton";
|
|
243
|
+
var sizeMap2 = {
|
|
244
|
+
sm: { iconSize: 16, padding: "0.375rem" },
|
|
245
|
+
md: { iconSize: 20, padding: "0.5rem" },
|
|
246
|
+
lg: { iconSize: 24, padding: "0.625rem" }
|
|
247
|
+
};
|
|
248
|
+
var Root2 = styles.styled("button")(
|
|
249
|
+
({ theme, $active, $size }) => ({
|
|
250
|
+
appearance: "none",
|
|
251
|
+
border: `1px solid ${$active ? theme.palette.error.main : theme.palette.divider}`,
|
|
252
|
+
background: $active ? `${theme.palette.error.main}14` : "transparent",
|
|
253
|
+
cursor: "pointer",
|
|
254
|
+
display: "inline-flex",
|
|
255
|
+
alignItems: "center",
|
|
256
|
+
justifyContent: "center",
|
|
257
|
+
borderRadius: "50%",
|
|
258
|
+
padding: sizeMap2[$size].padding,
|
|
259
|
+
color: $active ? theme.palette.error.main : theme.palette.text.secondary,
|
|
260
|
+
transition: "color 150ms ease, background-color 150ms ease, border-color 150ms ease",
|
|
261
|
+
"&:hover:not(:disabled)": {
|
|
262
|
+
color: theme.palette.error.main,
|
|
263
|
+
borderColor: theme.palette.error.main,
|
|
264
|
+
backgroundColor: `${theme.palette.error.main}14`
|
|
265
|
+
},
|
|
266
|
+
"&:focus-visible": {
|
|
267
|
+
outline: `3px solid ${theme.palette.primary.main}`,
|
|
268
|
+
outlineOffset: "2px"
|
|
269
|
+
},
|
|
270
|
+
"&:disabled": {
|
|
271
|
+
opacity: 0.4,
|
|
272
|
+
cursor: "not-allowed"
|
|
273
|
+
}
|
|
274
|
+
})
|
|
275
|
+
);
|
|
276
|
+
var WishlistButton = react.forwardRef(
|
|
277
|
+
({ active = false, loading = false, size = "md", label, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
278
|
+
Root2,
|
|
279
|
+
{
|
|
280
|
+
ref,
|
|
281
|
+
type: "button",
|
|
282
|
+
$active: active,
|
|
283
|
+
$size: size,
|
|
284
|
+
disabled: loading || props.disabled,
|
|
285
|
+
"aria-label": label ?? (active ? "Usu\u0144 z listy \u017Cycze\u0144" : "Dodaj do listy \u017Cycze\u0144"),
|
|
286
|
+
"aria-pressed": active,
|
|
287
|
+
...props,
|
|
288
|
+
children: loading ? /* @__PURE__ */ jsxRuntime.jsx(material.CircularProgress, { size: sizeMap2[size].iconSize, color: "inherit", thickness: 5 }) : active ? /* @__PURE__ */ jsxRuntime.jsx(FavoriteIcon__default.default, { "aria-hidden": true, style: { fontSize: sizeMap2[size].iconSize } }) : /* @__PURE__ */ jsxRuntime.jsx(FavoriteBorderIcon__default.default, { "aria-hidden": true, style: { fontSize: sizeMap2[size].iconSize } })
|
|
289
|
+
}
|
|
290
|
+
)
|
|
291
|
+
);
|
|
292
|
+
WishlistButton.displayName = "WishlistButton";
|
|
194
293
|
var StyledHelperText = styles.styled("p")(({ theme, $error }) => ({
|
|
195
294
|
margin: "0.25rem 0 0",
|
|
196
295
|
fontSize: "0.75rem",
|
|
@@ -247,7 +346,7 @@ var inputColors = (theme, error) => ({
|
|
|
247
346
|
boxShadow: `0 0 0 3px ${error ? theme.palette.error.main : theme.palette.primary.main}33`
|
|
248
347
|
}
|
|
249
348
|
});
|
|
250
|
-
var
|
|
349
|
+
var Root3 = styles.styled("div")(({ $fullWidth }) => ({
|
|
251
350
|
display: $fullWidth ? "block" : "inline-block",
|
|
252
351
|
width: $fullWidth ? "100%" : "auto"
|
|
253
352
|
}));
|
|
@@ -297,7 +396,7 @@ var Adornment = styles.styled("span")(({ theme }) => ({
|
|
|
297
396
|
color: theme.palette.text.secondary,
|
|
298
397
|
flexShrink: 0
|
|
299
398
|
}));
|
|
300
|
-
var BaseInput =
|
|
399
|
+
var BaseInput = react.forwardRef(
|
|
301
400
|
({
|
|
302
401
|
label,
|
|
303
402
|
helperText,
|
|
@@ -310,9 +409,9 @@ var BaseInput = React.forwardRef(
|
|
|
310
409
|
id,
|
|
311
410
|
...rest
|
|
312
411
|
}, ref) => {
|
|
313
|
-
const autoId =
|
|
412
|
+
const autoId = react.useId();
|
|
314
413
|
const inputId = id ?? autoId;
|
|
315
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
414
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root3, { $fullWidth: fullWidth, children: [
|
|
316
415
|
label && /* @__PURE__ */ jsxRuntime.jsx(Label, { htmlFor: inputId, error, size, children: label }),
|
|
317
416
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
318
417
|
InputWrapper,
|
|
@@ -416,12 +515,12 @@ var LabelText = styles.styled("span")(
|
|
|
416
515
|
userSelect: "none"
|
|
417
516
|
})
|
|
418
517
|
);
|
|
419
|
-
var
|
|
518
|
+
var Root4 = styles.styled("span")(({ $disabled }) => ({
|
|
420
519
|
display: "inline-flex",
|
|
421
520
|
flexDirection: "column",
|
|
422
521
|
cursor: $disabled ? "not-allowed" : "pointer"
|
|
423
522
|
}));
|
|
424
|
-
var CheckboxInput =
|
|
523
|
+
var CheckboxInput = react.forwardRef(
|
|
425
524
|
({
|
|
426
525
|
label,
|
|
427
526
|
helperText,
|
|
@@ -432,15 +531,15 @@ var CheckboxInput = React.forwardRef(
|
|
|
432
531
|
id,
|
|
433
532
|
...rest
|
|
434
533
|
}, ref) => {
|
|
435
|
-
const autoId =
|
|
534
|
+
const autoId = react.useId();
|
|
436
535
|
const inputId = id ?? autoId;
|
|
437
|
-
const innerRef =
|
|
438
|
-
|
|
536
|
+
const innerRef = react.useRef(null);
|
|
537
|
+
react.useEffect(() => {
|
|
439
538
|
if (innerRef.current) {
|
|
440
539
|
innerRef.current.indeterminate = indeterminate;
|
|
441
540
|
}
|
|
442
541
|
}, [indeterminate]);
|
|
443
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
542
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root4, { $disabled: disabled, children: [
|
|
444
543
|
/* @__PURE__ */ jsxRuntime.jsxs(Row, { htmlFor: inputId, children: [
|
|
445
544
|
/* @__PURE__ */ jsxRuntime.jsx(Box, { $size: size, $error: error, $disabled: disabled, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
446
545
|
HiddenInput,
|
|
@@ -474,7 +573,7 @@ var CloudUploadIcon = ({ size }) => /* @__PURE__ */ jsxRuntime.jsx(CloudUploadMu
|
|
|
474
573
|
var FileDocIcon = ({ size }) => /* @__PURE__ */ jsxRuntime.jsx(InsertDriveFileIcon__default.default, { "aria-hidden": true, style: { fontSize: size } });
|
|
475
574
|
var TrashIcon = ({ size = 12 }) => /* @__PURE__ */ jsxRuntime.jsx(DeleteOutlinedIcon__default.default, { "aria-hidden": true, style: { fontSize: size } });
|
|
476
575
|
var XIcon = () => /* @__PURE__ */ jsxRuntime.jsx(CloseIcon__default.default, { "aria-hidden": true, style: { fontSize: 11 } });
|
|
477
|
-
var
|
|
576
|
+
var Root5 = styles.styled("div")(({ $fullWidth }) => ({
|
|
478
577
|
display: $fullWidth ? "block" : "inline-block",
|
|
479
578
|
width: $fullWidth ? "100%" : "auto"
|
|
480
579
|
}));
|
|
@@ -865,7 +964,7 @@ var FileActionBtn = styles.styled("button")(({
|
|
|
865
964
|
"&:disabled": { opacity: 0.5, cursor: "not-allowed" }
|
|
866
965
|
};
|
|
867
966
|
});
|
|
868
|
-
var FileInput =
|
|
967
|
+
var FileInput = react.forwardRef(
|
|
869
968
|
({
|
|
870
969
|
label,
|
|
871
970
|
helperText,
|
|
@@ -893,11 +992,11 @@ var FileInput = React.forwardRef(
|
|
|
893
992
|
onChange,
|
|
894
993
|
...rest
|
|
895
994
|
}, ref) => {
|
|
896
|
-
const autoId =
|
|
995
|
+
const autoId = react.useId();
|
|
897
996
|
const inputId = id ?? autoId;
|
|
898
|
-
const innerRef =
|
|
899
|
-
const [files, setFiles] =
|
|
900
|
-
const [isDragging, setIsDragging] =
|
|
997
|
+
const innerRef = react.useRef(null);
|
|
998
|
+
const [files, setFiles] = react.useState([]);
|
|
999
|
+
const [isDragging, setIsDragging] = react.useState(false);
|
|
901
1000
|
const assignRef = (node) => {
|
|
902
1001
|
innerRef.current = node;
|
|
903
1002
|
if (typeof ref === "function") ref(node);
|
|
@@ -964,7 +1063,7 @@ var FileInput = React.forwardRef(
|
|
|
964
1063
|
}
|
|
965
1064
|
);
|
|
966
1065
|
if (variant === "dropzone") {
|
|
967
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1066
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root5, { $fullWidth: fullWidth, children: [
|
|
968
1067
|
label && /* @__PURE__ */ jsxRuntime.jsx(Label, { htmlFor: inputId, error, size, children: label }),
|
|
969
1068
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
970
1069
|
DropzoneArea,
|
|
@@ -1092,7 +1191,7 @@ var FileInput = React.forwardRef(
|
|
|
1092
1191
|
helperText && /* @__PURE__ */ jsxRuntime.jsx(HelperText, { error, children: helperText })
|
|
1093
1192
|
] });
|
|
1094
1193
|
}
|
|
1095
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1194
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root5, { $fullWidth: fullWidth, children: [
|
|
1096
1195
|
label && /* @__PURE__ */ jsxRuntime.jsx(Label, { htmlFor: inputId, error, size, children: label }),
|
|
1097
1196
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1098
1197
|
CompactWrapper,
|
|
@@ -1154,7 +1253,7 @@ var filterEmailString = (value) => {
|
|
|
1154
1253
|
const domain = value.slice(atIdx + 1).replace(/@/g, "").replace(/[^a-zA-Z0-9.-]/g, "");
|
|
1155
1254
|
return `${local}@${domain}`;
|
|
1156
1255
|
};
|
|
1157
|
-
var EmailInput =
|
|
1256
|
+
var EmailInput = react.forwardRef(
|
|
1158
1257
|
({ onKeyDown, onPaste, ...props }, ref) => {
|
|
1159
1258
|
const handleKeyDown = (e) => {
|
|
1160
1259
|
onKeyDown?.(e);
|
|
@@ -1211,7 +1310,7 @@ var triggerColors = (theme, error, open) => ({
|
|
|
1211
1310
|
borderColor: error ? theme.palette.error.dark : theme.palette.text.secondary
|
|
1212
1311
|
}
|
|
1213
1312
|
});
|
|
1214
|
-
var
|
|
1313
|
+
var Root6 = styles.styled("div")(({ $fullWidth }) => ({
|
|
1215
1314
|
display: $fullWidth ? "block" : "inline-block",
|
|
1216
1315
|
width: $fullWidth ? "100%" : "auto",
|
|
1217
1316
|
position: "relative"
|
|
@@ -1296,13 +1395,13 @@ var BaseSelectInput = ({
|
|
|
1296
1395
|
id
|
|
1297
1396
|
}) => {
|
|
1298
1397
|
const checkSelected = isSelected ?? ((option) => option.value === value);
|
|
1299
|
-
const autoId =
|
|
1398
|
+
const autoId = react.useId();
|
|
1300
1399
|
const inputId = id ?? autoId;
|
|
1301
1400
|
const listboxId = `${inputId}-listbox`;
|
|
1302
|
-
const [internalOpen, setInternalOpen] =
|
|
1401
|
+
const [internalOpen, setInternalOpen] = react.useState(false);
|
|
1303
1402
|
const isOpen = controlledOpen ?? internalOpen;
|
|
1304
|
-
const rootRef =
|
|
1305
|
-
const close =
|
|
1403
|
+
const rootRef = react.useRef(null);
|
|
1404
|
+
const close = react.useCallback(() => {
|
|
1306
1405
|
setInternalOpen(false);
|
|
1307
1406
|
onOpenChange?.(false);
|
|
1308
1407
|
}, [onOpenChange]);
|
|
@@ -1316,7 +1415,7 @@ var BaseSelectInput = ({
|
|
|
1316
1415
|
onSelect?.(option, close);
|
|
1317
1416
|
}
|
|
1318
1417
|
};
|
|
1319
|
-
|
|
1418
|
+
react.useEffect(() => {
|
|
1320
1419
|
if (!isOpen) return;
|
|
1321
1420
|
const handleMouseDown = (e) => {
|
|
1322
1421
|
if (rootRef.current && !rootRef.current.contains(e.target)) {
|
|
@@ -1328,7 +1427,7 @@ var BaseSelectInput = ({
|
|
|
1328
1427
|
}, [isOpen, close]);
|
|
1329
1428
|
const selectedLabel = options.find((o) => o.value === value)?.label;
|
|
1330
1429
|
const defaultTriggerContent = /* @__PURE__ */ jsxRuntime.jsx("span", { style: { opacity: selectedLabel ? 1 : 0.5 }, children: selectedLabel ?? placeholder });
|
|
1331
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1430
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root6, { $fullWidth: fullWidth, ref: rootRef, children: [
|
|
1332
1431
|
label && /* @__PURE__ */ jsxRuntime.jsx(Label, { htmlFor: inputId, error, size, children: label }),
|
|
1333
1432
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1334
1433
|
Trigger,
|
|
@@ -1370,7 +1469,7 @@ var BaseSelectInput = ({
|
|
|
1370
1469
|
] });
|
|
1371
1470
|
};
|
|
1372
1471
|
BaseSelectInput.displayName = "BaseSelectInput";
|
|
1373
|
-
var NumberInput =
|
|
1472
|
+
var NumberInput = react.forwardRef(
|
|
1374
1473
|
(props, ref) => /* @__PURE__ */ jsxRuntime.jsx(BaseInput, { ref, type: "number", ...props })
|
|
1375
1474
|
);
|
|
1376
1475
|
NumberInput.displayName = "NumberInput";
|
|
@@ -1474,9 +1573,9 @@ var ToggleButton = styles.styled("button")(({ theme }) => ({
|
|
|
1474
1573
|
}));
|
|
1475
1574
|
var EyeIcon = () => /* @__PURE__ */ jsxRuntime.jsx(VisibilityIcon__default.default, { "aria-hidden": true, sx: { fontSize: "1em" } });
|
|
1476
1575
|
var EyeOffIcon = () => /* @__PURE__ */ jsxRuntime.jsx(VisibilityOffIcon__default.default, { "aria-hidden": true, sx: { fontSize: "1em" } });
|
|
1477
|
-
var PasswordInput =
|
|
1576
|
+
var PasswordInput = react.forwardRef(
|
|
1478
1577
|
({ disabled, showPasswordLabel = "Poka\u017C has\u0142o", hidePasswordLabel = "Ukryj has\u0142o", ...props }, ref) => {
|
|
1479
|
-
const [show, setShow] =
|
|
1578
|
+
const [show, setShow] = react.useState(false);
|
|
1480
1579
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1481
1580
|
BaseInput,
|
|
1482
1581
|
{
|
|
@@ -1516,10 +1615,10 @@ var ClearButton = styles.styled("button")(({ theme }) => ({
|
|
|
1516
1615
|
}));
|
|
1517
1616
|
var SearchIcon = () => /* @__PURE__ */ jsxRuntime.jsx(SearchMuiIcon__default.default, { "aria-hidden": true, sx: { fontSize: "1em" } });
|
|
1518
1617
|
var XIcon2 = () => /* @__PURE__ */ jsxRuntime.jsx(CloseIcon__default.default, { "aria-hidden": true, sx: { fontSize: "1em" } });
|
|
1519
|
-
var SearchInput =
|
|
1618
|
+
var SearchInput = react.forwardRef(
|
|
1520
1619
|
({ value, onChange, onClear, clearAriaLabel = "Wyczy\u015B\u0107", ...props }, forwardedRef) => {
|
|
1521
|
-
const innerRef =
|
|
1522
|
-
const attachRef =
|
|
1620
|
+
const innerRef = react.useRef(null);
|
|
1621
|
+
const attachRef = react.useCallback(
|
|
1523
1622
|
(el) => {
|
|
1524
1623
|
innerRef.current = el;
|
|
1525
1624
|
if (typeof forwardedRef === "function") forwardedRef(el);
|
|
@@ -1529,7 +1628,7 @@ var SearchInput = React.forwardRef(
|
|
|
1529
1628
|
[forwardedRef]
|
|
1530
1629
|
);
|
|
1531
1630
|
const isControlled = value !== void 0;
|
|
1532
|
-
const [localValue, setLocalValue] =
|
|
1631
|
+
const [localValue, setLocalValue] = react.useState("");
|
|
1533
1632
|
const hasValue = isControlled ? !!value : !!localValue;
|
|
1534
1633
|
const handleChange = (e) => {
|
|
1535
1634
|
if (!isControlled) setLocalValue(e.target.value);
|
|
@@ -1608,7 +1707,7 @@ var borderColors = (theme, error) => ({
|
|
|
1608
1707
|
boxShadow: `0 0 0 3px ${error ? theme.palette.error.main : theme.palette.primary.main}33`
|
|
1609
1708
|
}
|
|
1610
1709
|
});
|
|
1611
|
-
var
|
|
1710
|
+
var Root7 = styles.styled("div")(({ $fullWidth }) => ({
|
|
1612
1711
|
display: $fullWidth ? "block" : "inline-block",
|
|
1613
1712
|
width: $fullWidth ? "100%" : "auto"
|
|
1614
1713
|
}));
|
|
@@ -1635,7 +1734,7 @@ var StyledTextarea = styles.styled("textarea")(({ theme, $size, $fullWidth, $err
|
|
|
1635
1734
|
color: theme.palette.text.disabled
|
|
1636
1735
|
}
|
|
1637
1736
|
}));
|
|
1638
|
-
var TextareaInput =
|
|
1737
|
+
var TextareaInput = react.forwardRef(
|
|
1639
1738
|
({
|
|
1640
1739
|
label,
|
|
1641
1740
|
helperText,
|
|
@@ -1647,9 +1746,9 @@ var TextareaInput = React.forwardRef(
|
|
|
1647
1746
|
id,
|
|
1648
1747
|
...rest
|
|
1649
1748
|
}, ref) => {
|
|
1650
|
-
const autoId =
|
|
1749
|
+
const autoId = react.useId();
|
|
1651
1750
|
const inputId = id ?? autoId;
|
|
1652
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1751
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root7, { $fullWidth: fullWidth, children: [
|
|
1653
1752
|
label && /* @__PURE__ */ jsxRuntime.jsx(Label, { htmlFor: inputId, error, size, children: label }),
|
|
1654
1753
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1655
1754
|
StyledTextarea,
|
|
@@ -1671,14 +1770,14 @@ var TextareaInput = React.forwardRef(
|
|
|
1671
1770
|
}
|
|
1672
1771
|
);
|
|
1673
1772
|
TextareaInput.displayName = "TextareaInput";
|
|
1674
|
-
var
|
|
1773
|
+
var sizeMap3 = { sm: "1em", md: "1.25em", lg: "1.75em" };
|
|
1675
1774
|
var toFlagEmoji = (code) => code.toUpperCase().replace(/[A-Z]/g, (char) => String.fromCodePoint(127462 + char.charCodeAt(0) - 65));
|
|
1676
1775
|
var CountryFlag = ({ countryCode, size = "md", style, ...rest }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1677
1776
|
"span",
|
|
1678
1777
|
{
|
|
1679
1778
|
role: "img",
|
|
1680
1779
|
"aria-label": `Flag: ${countryCode}`,
|
|
1681
|
-
style: { fontSize:
|
|
1780
|
+
style: { fontSize: sizeMap3[size], lineHeight: 1, display: "inline-flex", ...style },
|
|
1682
1781
|
...rest,
|
|
1683
1782
|
children: toFlagEmoji(countryCode)
|
|
1684
1783
|
}
|
|
@@ -3274,7 +3373,7 @@ var wrapperColors = (theme, error, focused) => ({
|
|
|
3274
3373
|
borderColor: !focused ? error ? theme.palette.error.dark : theme.palette.text.secondary : void 0
|
|
3275
3374
|
}
|
|
3276
3375
|
});
|
|
3277
|
-
var
|
|
3376
|
+
var Root8 = styles.styled("div")(({ $fullWidth }) => ({
|
|
3278
3377
|
display: $fullWidth ? "block" : "inline-block",
|
|
3279
3378
|
width: $fullWidth ? "100%" : "auto"
|
|
3280
3379
|
}));
|
|
@@ -3425,7 +3524,7 @@ var EmptyMessage = styles.styled("p")(({ theme }) => ({
|
|
|
3425
3524
|
fontSize: "0.875rem",
|
|
3426
3525
|
color: theme.palette.text.secondary
|
|
3427
3526
|
}));
|
|
3428
|
-
var PhoneInput =
|
|
3527
|
+
var PhoneInput = react.forwardRef(
|
|
3429
3528
|
({
|
|
3430
3529
|
value,
|
|
3431
3530
|
defaultValue = "",
|
|
@@ -3447,30 +3546,30 @@ var PhoneInput = React.forwardRef(
|
|
|
3447
3546
|
countrySearchAriaLabel = "Szukaj kraju",
|
|
3448
3547
|
digitsLabel = "cyfr"
|
|
3449
3548
|
}, ref) => {
|
|
3450
|
-
const autoId =
|
|
3549
|
+
const autoId = react.useId();
|
|
3451
3550
|
const inputId = id ?? autoId;
|
|
3452
3551
|
const listboxId = `${inputId}-listbox`;
|
|
3453
|
-
const initialCountry =
|
|
3552
|
+
const initialCountry = react.useMemo(
|
|
3454
3553
|
() => COUNTRIES.find((c) => c.flagCode === defaultCountry) ?? DEFAULT_COUNTRY,
|
|
3455
3554
|
[defaultCountry]
|
|
3456
3555
|
);
|
|
3457
|
-
const [selectedCountry, setSelectedCountry] =
|
|
3458
|
-
const [isOpen, setIsOpen] =
|
|
3459
|
-
const [searchQuery, setSearchQuery] =
|
|
3460
|
-
const [focused, setFocused] =
|
|
3556
|
+
const [selectedCountry, setSelectedCountry] = react.useState(initialCountry);
|
|
3557
|
+
const [isOpen, setIsOpen] = react.useState(false);
|
|
3558
|
+
const [searchQuery, setSearchQuery] = react.useState("");
|
|
3559
|
+
const [focused, setFocused] = react.useState(false);
|
|
3461
3560
|
const isControlled = value !== void 0;
|
|
3462
|
-
const [internalValue, setInternalValue] =
|
|
3561
|
+
const [internalValue, setInternalValue] = react.useState(defaultValue);
|
|
3463
3562
|
const phoneValue = isControlled ? value : internalValue;
|
|
3464
|
-
const rootRef =
|
|
3465
|
-
const searchRef =
|
|
3466
|
-
const filteredCountries =
|
|
3563
|
+
const rootRef = react.useRef(null);
|
|
3564
|
+
const searchRef = react.useRef(null);
|
|
3565
|
+
const filteredCountries = react.useMemo(() => {
|
|
3467
3566
|
const q = searchQuery.toLowerCase().trim();
|
|
3468
3567
|
if (!q) return COUNTRIES;
|
|
3469
3568
|
return COUNTRIES.filter(
|
|
3470
3569
|
(c) => c.country.toLowerCase().includes(q) || c.flagCode.toLowerCase().includes(q) || c.dialCode.includes(q)
|
|
3471
3570
|
);
|
|
3472
3571
|
}, [searchQuery]);
|
|
3473
|
-
const close =
|
|
3572
|
+
const close = react.useCallback(() => {
|
|
3474
3573
|
setIsOpen(false);
|
|
3475
3574
|
setSearchQuery("");
|
|
3476
3575
|
}, []);
|
|
@@ -3502,7 +3601,7 @@ var PhoneInput = React.forwardRef(
|
|
|
3502
3601
|
if (e.ctrlKey || e.metaKey || e.altKey || e.key.length > 1) return;
|
|
3503
3602
|
if (!/^\d$/.test(e.key)) e.preventDefault();
|
|
3504
3603
|
};
|
|
3505
|
-
|
|
3604
|
+
react.useEffect(() => {
|
|
3506
3605
|
if (!isOpen) return;
|
|
3507
3606
|
const handler = (e) => {
|
|
3508
3607
|
if (rootRef.current && !rootRef.current.contains(e.target)) close();
|
|
@@ -3511,7 +3610,7 @@ var PhoneInput = React.forwardRef(
|
|
|
3511
3610
|
return () => document.removeEventListener("mousedown", handler);
|
|
3512
3611
|
}, [isOpen, close]);
|
|
3513
3612
|
const derivedPlaceholder = placeholder ?? (selectedCountry.minLength === selectedCountry.maxLength ? `${selectedCountry.maxLength} ${digitsLabel}` : `${selectedCountry.minLength}\u2013${selectedCountry.maxLength} ${digitsLabel}`);
|
|
3514
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3613
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root8, { $fullWidth: fullWidth, ref: rootRef, children: [
|
|
3515
3614
|
label && /* @__PURE__ */ jsxRuntime.jsx(Label, { htmlFor: inputId, error, size, children: label }),
|
|
3516
3615
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
3517
3616
|
InputWrapper2,
|
|
@@ -3606,7 +3705,7 @@ var PhoneInput = React.forwardRef(
|
|
|
3606
3705
|
}
|
|
3607
3706
|
);
|
|
3608
3707
|
PhoneInput.displayName = "PhoneInput";
|
|
3609
|
-
var TextInput =
|
|
3708
|
+
var TextInput = react.forwardRef(
|
|
3610
3709
|
({ type = "text", ...rest }, ref) => /* @__PURE__ */ jsxRuntime.jsx(BaseInput, { ref, type, ...rest })
|
|
3611
3710
|
);
|
|
3612
3711
|
TextInput.displayName = "TextInput";
|
|
@@ -3626,7 +3725,7 @@ function getActiveColor(color, theme) {
|
|
|
3626
3725
|
return theme.palette.primary.main;
|
|
3627
3726
|
}
|
|
3628
3727
|
}
|
|
3629
|
-
var
|
|
3728
|
+
var Root9 = styles.styled("span")(({ $disabled }) => ({
|
|
3630
3729
|
display: "inline-flex",
|
|
3631
3730
|
flexDirection: "column",
|
|
3632
3731
|
cursor: $disabled ? "not-allowed" : "pointer"
|
|
@@ -3697,7 +3796,7 @@ var LabelText2 = styles.styled("span")(
|
|
|
3697
3796
|
fontFamily: theme.typography.fontFamily
|
|
3698
3797
|
})
|
|
3699
3798
|
);
|
|
3700
|
-
var SwitchInput =
|
|
3799
|
+
var SwitchInput = react.forwardRef(
|
|
3701
3800
|
({
|
|
3702
3801
|
label,
|
|
3703
3802
|
helperText,
|
|
@@ -3709,9 +3808,9 @@ var SwitchInput = React.forwardRef(
|
|
|
3709
3808
|
id,
|
|
3710
3809
|
...rest
|
|
3711
3810
|
}, ref) => {
|
|
3712
|
-
const autoId =
|
|
3811
|
+
const autoId = react.useId();
|
|
3713
3812
|
const inputId = id ?? autoId;
|
|
3714
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3813
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root9, { $disabled: disabled, children: [
|
|
3715
3814
|
/* @__PURE__ */ jsxRuntime.jsxs(Row2, { htmlFor: inputId, $placement: labelPlacement, children: [
|
|
3716
3815
|
/* @__PURE__ */ jsxRuntime.jsxs(Track, { $size: size, $color: color, $error: error, $disabled: disabled, children: [
|
|
3717
3816
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -3737,7 +3836,7 @@ SwitchInput.displayName = "SwitchInput";
|
|
|
3737
3836
|
var switchColors = ["primary", "secondary", "success", "danger"];
|
|
3738
3837
|
var TRACK_H2 = { sm: "0.25rem", md: "0.375rem", lg: "0.5rem" };
|
|
3739
3838
|
var THUMB_S2 = { sm: "0.875rem", md: "1.125rem", lg: "1.375rem" };
|
|
3740
|
-
var
|
|
3839
|
+
var Root10 = styles.styled("div")({
|
|
3741
3840
|
display: "flex",
|
|
3742
3841
|
flexDirection: "column",
|
|
3743
3842
|
gap: "0.5rem",
|
|
@@ -3813,7 +3912,7 @@ function pct(value, min, max) {
|
|
|
3813
3912
|
function clamp(v, min, max) {
|
|
3814
3913
|
return Math.min(max, Math.max(min, v));
|
|
3815
3914
|
}
|
|
3816
|
-
var RangeSlider =
|
|
3915
|
+
var RangeSlider = react.forwardRef(
|
|
3817
3916
|
({
|
|
3818
3917
|
min = 0,
|
|
3819
3918
|
max = 100,
|
|
@@ -3830,9 +3929,9 @@ var RangeSlider = React.forwardRef(
|
|
|
3830
3929
|
id,
|
|
3831
3930
|
...props
|
|
3832
3931
|
}, ref) => {
|
|
3833
|
-
const autoId =
|
|
3932
|
+
const autoId = react.useId();
|
|
3834
3933
|
const inputId = id ?? autoId;
|
|
3835
|
-
const getInitial =
|
|
3934
|
+
const getInitial = react.useCallback(() => {
|
|
3836
3935
|
if (range) {
|
|
3837
3936
|
const dv2 = defaultValue ?? controlledValue;
|
|
3838
3937
|
return dv2 ?? [min, max];
|
|
@@ -3840,7 +3939,7 @@ var RangeSlider = React.forwardRef(
|
|
|
3840
3939
|
const dv = defaultValue ?? controlledValue;
|
|
3841
3940
|
return [dv ?? min, max];
|
|
3842
3941
|
}, [range, defaultValue, controlledValue, min, max]);
|
|
3843
|
-
const [internal, setInternal] =
|
|
3942
|
+
const [internal, setInternal] = react.useState(getInitial);
|
|
3844
3943
|
const [lo, hi] = controlledValue !== void 0 ? range ? controlledValue : [controlledValue, max] : internal;
|
|
3845
3944
|
const emit = (next) => {
|
|
3846
3945
|
setInternal(next);
|
|
@@ -3860,7 +3959,7 @@ var RangeSlider = React.forwardRef(
|
|
|
3860
3959
|
const loP = pct(lo, min, max);
|
|
3861
3960
|
const hiP = pct(hi, min, max);
|
|
3862
3961
|
const valueLabel = range ? `${formatValue2(lo)} \u2013 ${formatValue2(hi)}` : formatValue2(lo);
|
|
3863
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3962
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root10, { ref, ...props, children: [
|
|
3864
3963
|
(label || showValue) && /* @__PURE__ */ jsxRuntime.jsxs(LabelRow, { children: [
|
|
3865
3964
|
label && /* @__PURE__ */ jsxRuntime.jsx("span", { children: label }),
|
|
3866
3965
|
showValue && /* @__PURE__ */ jsxRuntime.jsx("span", { children: valueLabel })
|
|
@@ -3990,7 +4089,7 @@ var inputColors2 = (theme, error) => ({
|
|
|
3990
4089
|
boxShadow: `0 0 0 3px ${error ? theme.palette.error.main : theme.palette.primary.main}33`
|
|
3991
4090
|
}
|
|
3992
4091
|
});
|
|
3993
|
-
var
|
|
4092
|
+
var Root11 = styles.styled("div")(({ $fullWidth }) => ({
|
|
3994
4093
|
display: $fullWidth ? "block" : "inline-block",
|
|
3995
4094
|
width: $fullWidth ? "100%" : "auto",
|
|
3996
4095
|
position: "relative"
|
|
@@ -4234,7 +4333,7 @@ function IconChevronDown() {
|
|
|
4234
4333
|
function IconX() {
|
|
4235
4334
|
return /* @__PURE__ */ jsxRuntime.jsx(CloseIcon__default.default, { "aria-hidden": "true", style: { fontSize: 14 } });
|
|
4236
4335
|
}
|
|
4237
|
-
var DateTimePicker =
|
|
4336
|
+
var DateTimePicker = react.forwardRef(
|
|
4238
4337
|
({
|
|
4239
4338
|
value,
|
|
4240
4339
|
defaultValue,
|
|
@@ -4251,26 +4350,26 @@ var DateTimePicker = React.forwardRef(
|
|
|
4251
4350
|
max,
|
|
4252
4351
|
id
|
|
4253
4352
|
}, ref) => {
|
|
4254
|
-
const autoId =
|
|
4353
|
+
const autoId = react.useId();
|
|
4255
4354
|
const inputId = id ?? autoId;
|
|
4256
|
-
const rootRef =
|
|
4355
|
+
const rootRef = react.useRef(null);
|
|
4257
4356
|
const isControlled = value !== void 0;
|
|
4258
|
-
const [internalDate, setInternalDate] =
|
|
4357
|
+
const [internalDate, setInternalDate] = react.useState(defaultValue ?? null);
|
|
4259
4358
|
const selectedDate = isControlled ? value ?? null : internalDate;
|
|
4260
|
-
const [open, setOpen] =
|
|
4359
|
+
const [open, setOpen] = react.useState(false);
|
|
4261
4360
|
const today = /* @__PURE__ */ new Date();
|
|
4262
|
-
const [viewYear, setViewYear] =
|
|
4263
|
-
const [viewMonth, setViewMonth] =
|
|
4264
|
-
const [hours, setHours] =
|
|
4265
|
-
const [minutes, setMinutes] =
|
|
4266
|
-
const [hourInput, setHourInput] =
|
|
4361
|
+
const [viewYear, setViewYear] = react.useState(selectedDate?.getFullYear() ?? today.getFullYear());
|
|
4362
|
+
const [viewMonth, setViewMonth] = react.useState(selectedDate?.getMonth() ?? today.getMonth());
|
|
4363
|
+
const [hours, setHours] = react.useState(selectedDate?.getHours() ?? 12);
|
|
4364
|
+
const [minutes, setMinutes] = react.useState(selectedDate?.getMinutes() ?? 0);
|
|
4365
|
+
const [hourInput, setHourInput] = react.useState(
|
|
4267
4366
|
String(selectedDate?.getHours() ?? 12).padStart(2, "0")
|
|
4268
4367
|
);
|
|
4269
|
-
const [minInput, setMinInput] =
|
|
4368
|
+
const [minInput, setMinInput] = react.useState(
|
|
4270
4369
|
String(selectedDate?.getMinutes() ?? 0).padStart(2, "0")
|
|
4271
4370
|
);
|
|
4272
|
-
const [draftDate, setDraftDate] =
|
|
4273
|
-
const calendarDays =
|
|
4371
|
+
const [draftDate, setDraftDate] = react.useState(null);
|
|
4372
|
+
const calendarDays = react.useMemo(
|
|
4274
4373
|
() => buildCalendarDays(viewYear, viewMonth),
|
|
4275
4374
|
[viewYear, viewMonth]
|
|
4276
4375
|
);
|
|
@@ -4289,7 +4388,7 @@ var DateTimePicker = React.forwardRef(
|
|
|
4289
4388
|
}
|
|
4290
4389
|
setOpen(true);
|
|
4291
4390
|
};
|
|
4292
|
-
const commit =
|
|
4391
|
+
const commit = react.useCallback(
|
|
4293
4392
|
(d) => {
|
|
4294
4393
|
if (!isControlled) setInternalDate(d);
|
|
4295
4394
|
onChange?.(d);
|
|
@@ -4364,7 +4463,7 @@ var DateTimePicker = React.forwardRef(
|
|
|
4364
4463
|
setMinutes(val);
|
|
4365
4464
|
setMinInput(String(val).padStart(2, "0"));
|
|
4366
4465
|
};
|
|
4367
|
-
|
|
4466
|
+
react.useEffect(() => {
|
|
4368
4467
|
if (!open) return;
|
|
4369
4468
|
const handler = (e) => {
|
|
4370
4469
|
if (rootRef.current && !rootRef.current.contains(e.target)) setOpen(false);
|
|
@@ -4372,7 +4471,7 @@ var DateTimePicker = React.forwardRef(
|
|
|
4372
4471
|
document.addEventListener("mousedown", handler);
|
|
4373
4472
|
return () => document.removeEventListener("mousedown", handler);
|
|
4374
4473
|
}, [open]);
|
|
4375
|
-
|
|
4474
|
+
react.useEffect(() => {
|
|
4376
4475
|
if (!open) return;
|
|
4377
4476
|
const handler = (e) => {
|
|
4378
4477
|
if (e.key === "Escape") setOpen(false);
|
|
@@ -4385,7 +4484,7 @@ var DateTimePicker = React.forwardRef(
|
|
|
4385
4484
|
const showCalendar = mode !== "time";
|
|
4386
4485
|
const showTime = mode !== "date";
|
|
4387
4486
|
const needsConfirm = mode !== "date";
|
|
4388
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
4487
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root11, { ref: rootRef, $fullWidth: fullWidth, children: [
|
|
4389
4488
|
label && /* @__PURE__ */ jsxRuntime.jsx(Label, { htmlFor: inputId, error, size, children: label }),
|
|
4390
4489
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
4391
4490
|
InputWrapper3,
|
|
@@ -4701,7 +4800,7 @@ var StyledCard = styles.styled("div", {
|
|
|
4701
4800
|
borderRadius: roundedMap[$rounded],
|
|
4702
4801
|
...getVariantStyles($variant, theme)
|
|
4703
4802
|
}));
|
|
4704
|
-
var Card =
|
|
4803
|
+
var Card = react.forwardRef(
|
|
4705
4804
|
({ variant = "default", padding = "md", rounded = "lg", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(StyledCard, { ref, $variant: variant, $padding: padding, $rounded: rounded, ...props })
|
|
4706
4805
|
);
|
|
4707
4806
|
Card.displayName = "Card";
|
|
@@ -4792,7 +4891,7 @@ var StyledBadge = styles.styled("span", {
|
|
|
4792
4891
|
fontFamily: theme.typography.fontFamily,
|
|
4793
4892
|
...getVariantStyles2($variant, theme)
|
|
4794
4893
|
}));
|
|
4795
|
-
function
|
|
4894
|
+
function Badge2({ variant = "default", ...props }) {
|
|
4796
4895
|
return /* @__PURE__ */ jsxRuntime.jsx(StyledBadge, { $variant: variant, ...props });
|
|
4797
4896
|
}
|
|
4798
4897
|
var badgeVariants = [
|
|
@@ -4804,7 +4903,41 @@ var badgeVariants = [
|
|
|
4804
4903
|
"ghost",
|
|
4805
4904
|
"promo"
|
|
4806
4905
|
];
|
|
4807
|
-
|
|
4906
|
+
function getBgColor(variant) {
|
|
4907
|
+
switch (variant) {
|
|
4908
|
+
case "flash":
|
|
4909
|
+
return "#f59e0b";
|
|
4910
|
+
case "new":
|
|
4911
|
+
return "#3b82f6";
|
|
4912
|
+
case "hot":
|
|
4913
|
+
return "#ef4444";
|
|
4914
|
+
default:
|
|
4915
|
+
return "#16a34a";
|
|
4916
|
+
}
|
|
4917
|
+
}
|
|
4918
|
+
var Root12 = styles.styled("span", {
|
|
4919
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
4920
|
+
})(({ theme, $variant }) => ({
|
|
4921
|
+
display: "inline-flex",
|
|
4922
|
+
alignItems: "center",
|
|
4923
|
+
gap: "0.25rem",
|
|
4924
|
+
borderRadius: "0.375rem",
|
|
4925
|
+
padding: "0.25rem 0.625rem",
|
|
4926
|
+
fontSize: "0.75rem",
|
|
4927
|
+
fontWeight: 700,
|
|
4928
|
+
lineHeight: 1,
|
|
4929
|
+
letterSpacing: "0.02em",
|
|
4930
|
+
fontFamily: theme.typography.fontFamily,
|
|
4931
|
+
backgroundColor: getBgColor($variant),
|
|
4932
|
+
color: "#ffffff",
|
|
4933
|
+
textTransform: "uppercase"
|
|
4934
|
+
}));
|
|
4935
|
+
function SaleBadge({ discount, label, variant = "default", ...props }) {
|
|
4936
|
+
const text = label ?? (discount !== void 0 ? `-${discount}%` : "SALE");
|
|
4937
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root12, { $variant: variant, ...props, children: text });
|
|
4938
|
+
}
|
|
4939
|
+
var saleBadgeVariants = ["default", "flash", "new", "hot"];
|
|
4940
|
+
var sizeMap4 = {
|
|
4808
4941
|
sm: { width: "2rem", height: "2rem", fontSize: "0.75rem" },
|
|
4809
4942
|
md: { width: "2.5rem", height: "2.5rem", fontSize: "0.875rem" },
|
|
4810
4943
|
lg: { width: "3rem", height: "3rem", fontSize: "1rem" },
|
|
@@ -4840,7 +4973,7 @@ var StyledAvatar = styles.styled("div", {
|
|
|
4840
4973
|
fontWeight: 600,
|
|
4841
4974
|
fontFamily: theme.typography.fontFamily,
|
|
4842
4975
|
userSelect: "none",
|
|
4843
|
-
...
|
|
4976
|
+
...sizeMap4[$size],
|
|
4844
4977
|
...getColorStyles($color, theme)
|
|
4845
4978
|
}));
|
|
4846
4979
|
function Avatar({ initials, size = "md", color = "primary", ...props }) {
|
|
@@ -4890,7 +5023,7 @@ function SectionHeading({
|
|
|
4890
5023
|
] });
|
|
4891
5024
|
}
|
|
4892
5025
|
var sectionHeadingAligns = ["center", "left", "right"];
|
|
4893
|
-
var shimmer = react.keyframes`
|
|
5026
|
+
var shimmer = react$1.keyframes`
|
|
4894
5027
|
0% { background-position: -200% 0; }
|
|
4895
5028
|
100% { background-position: 200% 0; }
|
|
4896
5029
|
`;
|
|
@@ -4948,11 +5081,11 @@ var SIZE_MAP = {
|
|
|
4948
5081
|
lg: "2rem",
|
|
4949
5082
|
xl: "3rem"
|
|
4950
5083
|
};
|
|
4951
|
-
var spin = react.keyframes`to { transform: rotate(360deg); }`;
|
|
4952
|
-
var fade = react.keyframes`0%,100%{opacity:.15} 50%{opacity:1}`;
|
|
4953
|
-
var scalePulse = react.keyframes`0%,100%{transform:scale(0.6);opacity:.4} 50%{transform:scale(1);opacity:1}`;
|
|
4954
|
-
var barAnim = react.keyframes`0%,100%{transform:scaleY(.4);opacity:.5} 50%{transform:scaleY(1);opacity:1}`;
|
|
4955
|
-
var
|
|
5084
|
+
var spin = react$1.keyframes`to { transform: rotate(360deg); }`;
|
|
5085
|
+
var fade = react$1.keyframes`0%,100%{opacity:.15} 50%{opacity:1}`;
|
|
5086
|
+
var scalePulse = react$1.keyframes`0%,100%{transform:scale(0.6);opacity:.4} 50%{transform:scale(1);opacity:1}`;
|
|
5087
|
+
var barAnim = react$1.keyframes`0%,100%{transform:scaleY(.4);opacity:.5} 50%{transform:scaleY(1);opacity:1}`;
|
|
5088
|
+
var Root13 = styles.styled("span", {
|
|
4956
5089
|
shouldForwardProp: (p) => !["$size", "$color"].includes(p)
|
|
4957
5090
|
})(({ theme, $size, $color }) => {
|
|
4958
5091
|
const colorMap = {
|
|
@@ -5040,8 +5173,8 @@ function Spinner3({
|
|
|
5040
5173
|
label = "\u0141adowanie\u2026",
|
|
5041
5174
|
...props
|
|
5042
5175
|
}) {
|
|
5043
|
-
const
|
|
5044
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5176
|
+
const Inner7 = VARIANTS[variant];
|
|
5177
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root13, { $size: size, $color: color, role: "status", "aria-label": label, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(Inner7, {}) });
|
|
5045
5178
|
}
|
|
5046
5179
|
var spinnerVariants = ["ring", "dots", "pulse", "bars"];
|
|
5047
5180
|
var spinnerSizes = ["xs", "sm", "md", "lg", "xl"];
|
|
@@ -5052,7 +5185,7 @@ var HEIGHT_MAP = {
|
|
|
5052
5185
|
md: "0.75rem",
|
|
5053
5186
|
lg: "1.25rem"
|
|
5054
5187
|
};
|
|
5055
|
-
var stripeAnim = react.keyframes`from{background-position:1rem 0}to{background-position:0 0}`;
|
|
5188
|
+
var stripeAnim = react$1.keyframes`from{background-position:1rem 0}to{background-position:0 0}`;
|
|
5056
5189
|
function getFillColor(variant, theme) {
|
|
5057
5190
|
switch (variant) {
|
|
5058
5191
|
case "success":
|
|
@@ -5167,7 +5300,7 @@ var FONT_MAP = {
|
|
|
5167
5300
|
lg: "1.125rem",
|
|
5168
5301
|
xl: "1.5rem"
|
|
5169
5302
|
};
|
|
5170
|
-
var
|
|
5303
|
+
var Root14 = styles.styled("div")({ position: "relative", display: "inline-flex", flexShrink: 0 });
|
|
5171
5304
|
var Label2 = styles.styled("div", {
|
|
5172
5305
|
shouldForwardProp: (p) => p !== "$size"
|
|
5173
5306
|
})(({ theme, $size }) => ({
|
|
@@ -5210,7 +5343,7 @@ function ProgressCircle({
|
|
|
5210
5343
|
children,
|
|
5211
5344
|
...props
|
|
5212
5345
|
}) {
|
|
5213
|
-
const gradientId =
|
|
5346
|
+
const gradientId = react.useId().replace(/:/g, "");
|
|
5214
5347
|
const px = PX_MAP[size];
|
|
5215
5348
|
const stroke = thickness ?? Math.max(3, px * 0.09);
|
|
5216
5349
|
const r = (px - stroke) / 2;
|
|
@@ -5221,7 +5354,7 @@ function ProgressCircle({
|
|
|
5221
5354
|
const { color, gradient } = useStrokeColor(variant, gradientId);
|
|
5222
5355
|
const trackColor = theme.palette.mode === "dark" ? "rgba(255,255,255,0.1)" : "rgba(0,0,0,0.08)";
|
|
5223
5356
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5224
|
-
|
|
5357
|
+
Root14,
|
|
5225
5358
|
{
|
|
5226
5359
|
role: "progressbar",
|
|
5227
5360
|
"aria-valuenow": value,
|
|
@@ -5343,7 +5476,7 @@ var StyledBox = styles.styled("div")(
|
|
|
5343
5476
|
return css;
|
|
5344
5477
|
}
|
|
5345
5478
|
);
|
|
5346
|
-
var Box2 =
|
|
5479
|
+
var Box2 = react.forwardRef(
|
|
5347
5480
|
({ direction = "row", wrap = "nowrap", gap = 0, cols, rows, children, ...rest }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
5348
5481
|
StyledBox,
|
|
5349
5482
|
{
|
|
@@ -5380,7 +5513,7 @@ var StyledContainer = styles.styled("div")(({ theme, $maxWidth }) => ({
|
|
|
5380
5513
|
paddingRight: "2rem"
|
|
5381
5514
|
}
|
|
5382
5515
|
}));
|
|
5383
|
-
var Container =
|
|
5516
|
+
var Container = react.forwardRef(
|
|
5384
5517
|
({ maxWidth = "xl", children, ...rest }, ref) => /* @__PURE__ */ jsxRuntime.jsx(StyledContainer, { ref, $maxWidth: maxWidth, ...rest, children })
|
|
5385
5518
|
);
|
|
5386
5519
|
Container.displayName = "Container";
|
|
@@ -5392,8 +5525,11 @@ var StyledSection = styles.styled("section")(({ theme }) => ({
|
|
|
5392
5525
|
paddingBottom: "3rem"
|
|
5393
5526
|
}
|
|
5394
5527
|
}));
|
|
5395
|
-
var Section =
|
|
5528
|
+
var Section = react.forwardRef(({ children, ...rest }, ref) => /* @__PURE__ */ jsxRuntime.jsx(StyledSection, { ref, ...rest, children }));
|
|
5396
5529
|
Section.displayName = "Section";
|
|
5530
|
+
var StyledMain = styles.styled("main")({});
|
|
5531
|
+
var Main = react.forwardRef(({ children, ...rest }, ref) => /* @__PURE__ */ jsxRuntime.jsx(StyledMain, { ref, ...rest, children }));
|
|
5532
|
+
Main.displayName = "Main";
|
|
5397
5533
|
var getTypographyStyles = (theme) => ({
|
|
5398
5534
|
fontFamily: theme.typography.fontFamily,
|
|
5399
5535
|
"& h1": { fontSize: "2.25rem", fontWeight: 500, letterSpacing: "-0.025em" },
|
|
@@ -5549,16 +5685,11 @@ var getHeaderSpacingStyles = () => ({
|
|
|
5549
5685
|
var spacingStyles = {
|
|
5550
5686
|
"& > * + *": { marginTop: "1.5rem" }
|
|
5551
5687
|
};
|
|
5552
|
-
var StyledMain = styles.styled("main")(({ theme }) => ({
|
|
5553
|
-
...getTypographyStyles(theme)
|
|
5554
|
-
}));
|
|
5555
|
-
var Main = React.forwardRef(({ children, ...rest }, ref) => /* @__PURE__ */ jsxRuntime.jsx(StyledMain, { ref, ...rest, children }));
|
|
5556
|
-
Main.displayName = "Main";
|
|
5557
5688
|
var StyledProse = styles.styled("div")(({ theme }) => ({
|
|
5558
5689
|
...getTypographyStyles(theme),
|
|
5559
5690
|
...spacingStyles
|
|
5560
5691
|
}));
|
|
5561
|
-
var Prose =
|
|
5692
|
+
var Prose = react.forwardRef(({ children, ...rest }, ref) => /* @__PURE__ */ jsxRuntime.jsx(StyledProse, { ref, ...rest, children }));
|
|
5562
5693
|
Prose.displayName = "Prose";
|
|
5563
5694
|
var StyledArticle = styles.styled("article")(({ theme }) => ({
|
|
5564
5695
|
maxWidth: "56rem",
|
|
@@ -5568,14 +5699,112 @@ var StyledArticle = styles.styled("article")(({ theme }) => ({
|
|
|
5568
5699
|
...getHeaderSpacingStyles(),
|
|
5569
5700
|
...spacingStyles
|
|
5570
5701
|
}));
|
|
5571
|
-
var Article =
|
|
5702
|
+
var Article = react.forwardRef(({ children, ...rest }, ref) => /* @__PURE__ */ jsxRuntime.jsx(StyledArticle, { ref, ...rest, children }));
|
|
5572
5703
|
Article.displayName = "Article";
|
|
5573
|
-
var
|
|
5704
|
+
var PRESET_MAP = {
|
|
5705
|
+
"1/1": 1,
|
|
5706
|
+
"4/3": 4 / 3,
|
|
5707
|
+
"3/2": 3 / 2,
|
|
5708
|
+
"16/9": 16 / 9,
|
|
5709
|
+
"21/9": 21 / 9,
|
|
5710
|
+
"9/16": 9 / 16,
|
|
5711
|
+
"3/4": 3 / 4,
|
|
5712
|
+
"2/3": 2 / 3
|
|
5713
|
+
};
|
|
5714
|
+
var Root15 = styles.styled("div")({
|
|
5715
|
+
position: "relative",
|
|
5716
|
+
width: "100%",
|
|
5717
|
+
"& > *": {
|
|
5718
|
+
position: "absolute",
|
|
5719
|
+
inset: 0,
|
|
5720
|
+
width: "100%",
|
|
5721
|
+
height: "100%",
|
|
5722
|
+
objectFit: "cover"
|
|
5723
|
+
}
|
|
5724
|
+
});
|
|
5725
|
+
var AspectRatio = react.forwardRef(
|
|
5726
|
+
({ ratio = "16/9", children, style, ...props }, ref) => {
|
|
5727
|
+
const numericRatio = typeof ratio === "string" ? PRESET_MAP[ratio] ?? 16 / 9 : ratio;
|
|
5728
|
+
const paddingBottom = `${1 / numericRatio * 100}%`;
|
|
5729
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root15, { ref, style: { paddingBottom, ...style }, ...props, children });
|
|
5730
|
+
}
|
|
5731
|
+
);
|
|
5732
|
+
AspectRatio.displayName = "AspectRatio";
|
|
5733
|
+
var aspectRatioPresets = Object.keys(PRESET_MAP);
|
|
5734
|
+
var Root16 = styles.styled(Card)(({ theme }) => ({
|
|
5735
|
+
display: "flex",
|
|
5736
|
+
flexDirection: "column",
|
|
5737
|
+
overflow: "hidden",
|
|
5738
|
+
cursor: "pointer",
|
|
5739
|
+
transition: "box-shadow 150ms ease, transform 150ms ease",
|
|
5740
|
+
"&:hover": {
|
|
5741
|
+
boxShadow: theme.shadows[4],
|
|
5742
|
+
transform: "translateY(-2px)"
|
|
5743
|
+
}
|
|
5744
|
+
}));
|
|
5745
|
+
var ImageWrap = styles.styled("div")({
|
|
5746
|
+
margin: "-1.5rem -1.5rem 1rem"
|
|
5747
|
+
});
|
|
5748
|
+
var Image = styles.styled("img")({
|
|
5749
|
+
objectFit: "cover",
|
|
5750
|
+
width: "100%",
|
|
5751
|
+
height: "100%"
|
|
5752
|
+
});
|
|
5753
|
+
var ImagePlaceholder = styles.styled("div")(({ theme }) => ({
|
|
5754
|
+
width: "100%",
|
|
5755
|
+
height: "100%",
|
|
5756
|
+
backgroundColor: theme.palette.action.hover,
|
|
5757
|
+
display: "flex",
|
|
5758
|
+
alignItems: "center",
|
|
5759
|
+
justifyContent: "center",
|
|
5760
|
+
color: theme.palette.text.disabled
|
|
5761
|
+
}));
|
|
5762
|
+
var Content = styles.styled("div")({
|
|
5763
|
+
display: "flex",
|
|
5764
|
+
flexDirection: "column",
|
|
5765
|
+
gap: "0.25rem"
|
|
5766
|
+
});
|
|
5767
|
+
var Name = styles.styled("h3")(({ theme }) => ({
|
|
5768
|
+
margin: 0,
|
|
5769
|
+
color: theme.palette.text.primary,
|
|
5770
|
+
fontFamily: theme.typography.fontFamily,
|
|
5771
|
+
fontSize: "1rem",
|
|
5772
|
+
fontWeight: 700,
|
|
5773
|
+
lineHeight: 1.4
|
|
5774
|
+
}));
|
|
5775
|
+
var Count = styles.styled("span")(({ theme }) => ({
|
|
5776
|
+
color: theme.palette.text.secondary,
|
|
5777
|
+
fontFamily: theme.typography.fontFamily,
|
|
5778
|
+
fontSize: "0.875rem"
|
|
5779
|
+
}));
|
|
5780
|
+
var CardLink = styles.styled("a")({
|
|
5781
|
+
display: "block",
|
|
5782
|
+
textDecoration: "none",
|
|
5783
|
+
color: "inherit",
|
|
5784
|
+
outline: "none"
|
|
5785
|
+
});
|
|
5786
|
+
var CategoryCard = react.forwardRef(
|
|
5787
|
+
({ name, imageUrl, imageAlt, count, href, ...props }, ref) => {
|
|
5788
|
+
const content = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
5789
|
+
/* @__PURE__ */ jsxRuntime.jsx(ImageWrap, { children: /* @__PURE__ */ jsxRuntime.jsx(AspectRatio, { ratio: "4/3", children: imageUrl ? /* @__PURE__ */ jsxRuntime.jsx(Image, { src: imageUrl, alt: imageAlt ?? name }) : /* @__PURE__ */ jsxRuntime.jsx(ImagePlaceholder, { "aria-label": imageAlt ?? name, children: /* @__PURE__ */ jsxRuntime.jsx(ImageIcon__default.default, { style: { fontSize: 48 } }) }) }) }),
|
|
5790
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Content, { children: [
|
|
5791
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name, { children: name }),
|
|
5792
|
+
count !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(Count, { children: [
|
|
5793
|
+
count,
|
|
5794
|
+
" produkt\xF3w"
|
|
5795
|
+
] })
|
|
5796
|
+
] })
|
|
5797
|
+
] });
|
|
5798
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root16, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: href ? /* @__PURE__ */ jsxRuntime.jsx(CardLink, { href, children: content }) : content });
|
|
5799
|
+
}
|
|
5800
|
+
);
|
|
5801
|
+
CategoryCard.displayName = "CategoryCard";
|
|
5802
|
+
var sizeMap5 = {
|
|
5574
5803
|
sm: "1rem",
|
|
5575
5804
|
md: "1.25rem",
|
|
5576
5805
|
lg: "1.5rem"
|
|
5577
5806
|
};
|
|
5578
|
-
var
|
|
5807
|
+
var Root17 = styles.styled("div")(({ theme }) => ({
|
|
5579
5808
|
display: "inline-flex",
|
|
5580
5809
|
alignItems: "center",
|
|
5581
5810
|
gap: "0.5rem",
|
|
@@ -5595,7 +5824,7 @@ var StarButton = styles.styled("button")(
|
|
|
5595
5824
|
padding: 0,
|
|
5596
5825
|
color: $active ? "#f59e0b" : theme.palette.action.disabled,
|
|
5597
5826
|
cursor: "pointer",
|
|
5598
|
-
fontSize:
|
|
5827
|
+
fontSize: sizeMap5[$size],
|
|
5599
5828
|
lineHeight: 1,
|
|
5600
5829
|
"&:disabled": {
|
|
5601
5830
|
cursor: "default"
|
|
@@ -5606,11 +5835,11 @@ var Meta = styles.styled("span")(({ theme }) => ({
|
|
|
5606
5835
|
fontSize: "0.875rem",
|
|
5607
5836
|
color: theme.palette.text.secondary
|
|
5608
5837
|
}));
|
|
5609
|
-
var Rating =
|
|
5838
|
+
var Rating = react.forwardRef(
|
|
5610
5839
|
({ value, max = 5, readonly = true, size = "md", label, count, onChange, ...props }, ref) => {
|
|
5611
5840
|
const roundedValue = Math.round(value);
|
|
5612
5841
|
const meta = label ?? (count !== void 0 ? `(${count})` : void 0);
|
|
5613
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5842
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root17, { ref, "aria-label": `Ocena ${value} z ${max}`, ...props, children: [
|
|
5614
5843
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5615
5844
|
Stars,
|
|
5616
5845
|
{
|
|
@@ -5641,36 +5870,6 @@ var Rating = React.forwardRef(
|
|
|
5641
5870
|
}
|
|
5642
5871
|
);
|
|
5643
5872
|
Rating.displayName = "Rating";
|
|
5644
|
-
var PRESET_MAP = {
|
|
5645
|
-
"1/1": 1,
|
|
5646
|
-
"4/3": 4 / 3,
|
|
5647
|
-
"3/2": 3 / 2,
|
|
5648
|
-
"16/9": 16 / 9,
|
|
5649
|
-
"21/9": 21 / 9,
|
|
5650
|
-
"9/16": 9 / 16,
|
|
5651
|
-
"3/4": 3 / 4,
|
|
5652
|
-
"2/3": 2 / 3
|
|
5653
|
-
};
|
|
5654
|
-
var Root13 = styles.styled("div")({
|
|
5655
|
-
position: "relative",
|
|
5656
|
-
width: "100%",
|
|
5657
|
-
"& > *": {
|
|
5658
|
-
position: "absolute",
|
|
5659
|
-
inset: 0,
|
|
5660
|
-
width: "100%",
|
|
5661
|
-
height: "100%",
|
|
5662
|
-
objectFit: "cover"
|
|
5663
|
-
}
|
|
5664
|
-
});
|
|
5665
|
-
var AspectRatio = React.forwardRef(
|
|
5666
|
-
({ ratio = "16/9", children, style, ...props }, ref) => {
|
|
5667
|
-
const numericRatio = typeof ratio === "string" ? PRESET_MAP[ratio] ?? 16 / 9 : ratio;
|
|
5668
|
-
const paddingBottom = `${1 / numericRatio * 100}%`;
|
|
5669
|
-
return /* @__PURE__ */ jsxRuntime.jsx(Root13, { ref, style: { paddingBottom, ...style }, ...props, children });
|
|
5670
|
-
}
|
|
5671
|
-
);
|
|
5672
|
-
AspectRatio.displayName = "AspectRatio";
|
|
5673
|
-
var aspectRatioPresets = Object.keys(PRESET_MAP);
|
|
5674
5873
|
var DEFAULT_OMNIBUS_LABEL = "Najni\u017Csza cena z ostatnich 30 dni";
|
|
5675
5874
|
var FONT_SIZE = {
|
|
5676
5875
|
sm: "0.875rem",
|
|
@@ -5678,7 +5877,7 @@ var FONT_SIZE = {
|
|
|
5678
5877
|
lg: "1.5rem",
|
|
5679
5878
|
xl: "2rem"
|
|
5680
5879
|
};
|
|
5681
|
-
var
|
|
5880
|
+
var Root18 = styles.styled("div")({
|
|
5682
5881
|
display: "inline-flex",
|
|
5683
5882
|
flexDirection: "column",
|
|
5684
5883
|
gap: "0.25rem"
|
|
@@ -5744,7 +5943,7 @@ function formatPrice(amount, currency, locale) {
|
|
|
5744
5943
|
function calcDiscount(price, original) {
|
|
5745
5944
|
return Math.round((1 - price / original) * 100);
|
|
5746
5945
|
}
|
|
5747
|
-
var Price =
|
|
5946
|
+
var Price = react.forwardRef(
|
|
5748
5947
|
({
|
|
5749
5948
|
price,
|
|
5750
5949
|
originalPrice,
|
|
@@ -5759,7 +5958,7 @@ var Price = React.forwardRef(
|
|
|
5759
5958
|
const onSale = originalPrice !== void 0 && originalPrice > price;
|
|
5760
5959
|
const discount = onSale ? calcDiscount(price, originalPrice) : 0;
|
|
5761
5960
|
const showOmnibus = lowestPrice !== void 0;
|
|
5762
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5961
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root18, { ref, ...props, children: [
|
|
5763
5962
|
/* @__PURE__ */ jsxRuntime.jsxs(PriceRow, { children: [
|
|
5764
5963
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5765
5964
|
Current,
|
|
@@ -5803,26 +6002,35 @@ var Price = React.forwardRef(
|
|
|
5803
6002
|
);
|
|
5804
6003
|
Price.displayName = "Price";
|
|
5805
6004
|
var priceSizes = ["sm", "md", "lg", "xl"];
|
|
5806
|
-
var
|
|
6005
|
+
var Root19 = styles.styled(Card)({
|
|
5807
6006
|
display: "flex",
|
|
5808
6007
|
flexDirection: "column",
|
|
5809
6008
|
height: "100%",
|
|
5810
6009
|
overflow: "hidden"
|
|
5811
6010
|
});
|
|
5812
|
-
var
|
|
6011
|
+
var ImageWrap2 = styles.styled("div")({
|
|
5813
6012
|
position: "relative",
|
|
5814
6013
|
margin: "-1.5rem -1.5rem 1rem"
|
|
5815
6014
|
});
|
|
5816
|
-
var
|
|
6015
|
+
var Image2 = styles.styled("img")(({ theme }) => ({
|
|
5817
6016
|
objectFit: "cover",
|
|
5818
6017
|
backgroundColor: theme.palette.action.hover
|
|
5819
6018
|
}));
|
|
6019
|
+
var ImagePlaceholder2 = styles.styled("div")(({ theme }) => ({
|
|
6020
|
+
width: "100%",
|
|
6021
|
+
height: "100%",
|
|
6022
|
+
backgroundColor: theme.palette.action.hover,
|
|
6023
|
+
display: "flex",
|
|
6024
|
+
alignItems: "center",
|
|
6025
|
+
justifyContent: "center",
|
|
6026
|
+
color: theme.palette.text.disabled
|
|
6027
|
+
}));
|
|
5820
6028
|
var BadgeSlot = styles.styled("div")({
|
|
5821
6029
|
position: "absolute",
|
|
5822
6030
|
left: "0.75rem",
|
|
5823
6031
|
top: "0.75rem"
|
|
5824
6032
|
});
|
|
5825
|
-
var
|
|
6033
|
+
var Name2 = styles.styled("h3")(({ theme }) => ({
|
|
5826
6034
|
margin: 0,
|
|
5827
6035
|
color: theme.palette.text.primary,
|
|
5828
6036
|
fontFamily: theme.typography.fontFamily,
|
|
@@ -5836,7 +6044,7 @@ var Footer = styles.styled("div")({
|
|
|
5836
6044
|
marginTop: "auto",
|
|
5837
6045
|
paddingTop: "1rem"
|
|
5838
6046
|
});
|
|
5839
|
-
var ProductCard =
|
|
6047
|
+
var ProductCard = react.forwardRef(
|
|
5840
6048
|
({
|
|
5841
6049
|
name,
|
|
5842
6050
|
imageUrl,
|
|
@@ -5853,12 +6061,12 @@ var ProductCard = React.forwardRef(
|
|
|
5853
6061
|
ctaLabel = "Dodaj do koszyka",
|
|
5854
6062
|
onAddToCart,
|
|
5855
6063
|
...props
|
|
5856
|
-
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5857
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5858
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5859
|
-
badge && /* @__PURE__ */ jsxRuntime.jsx(BadgeSlot, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6064
|
+
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root19, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: [
|
|
6065
|
+
/* @__PURE__ */ jsxRuntime.jsx(ImageWrap2, { children: /* @__PURE__ */ jsxRuntime.jsxs(AspectRatio, { ratio: "4/3", children: [
|
|
6066
|
+
imageUrl ? /* @__PURE__ */ jsxRuntime.jsx(Image2, { src: imageUrl, alt: imageAlt ?? name }) : /* @__PURE__ */ jsxRuntime.jsx(ImagePlaceholder2, { "aria-label": imageAlt ?? name, children: /* @__PURE__ */ jsxRuntime.jsx(ImageIcon__default.default, { style: { fontSize: 48 } }) }),
|
|
6067
|
+
badge && /* @__PURE__ */ jsxRuntime.jsx(BadgeSlot, { children: /* @__PURE__ */ jsxRuntime.jsx(Badge2, { variant: badgeVariant, children: badge }) })
|
|
5860
6068
|
] }) }),
|
|
5861
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6069
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name2, { children: name }),
|
|
5862
6070
|
rating !== void 0 && /* @__PURE__ */ jsxRuntime.jsx(Rating, { value: rating, count: reviewCount, size: "sm" }),
|
|
5863
6071
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5864
6072
|
Price,
|
|
@@ -5871,53 +6079,179 @@ var ProductCard = React.forwardRef(
|
|
|
5871
6079
|
style: { marginTop: "0.5rem" }
|
|
5872
6080
|
}
|
|
5873
6081
|
),
|
|
5874
|
-
/* @__PURE__ */ jsxRuntime.jsx(Footer, { children: /* @__PURE__ */ jsxRuntime.jsx(Button, { fullWidth: true, onClick:
|
|
6082
|
+
/* @__PURE__ */ jsxRuntime.jsx(Footer, { children: /* @__PURE__ */ jsxRuntime.jsx(Button, { fullWidth: true, onClick: (e) => {
|
|
6083
|
+
e.stopPropagation();
|
|
6084
|
+
onAddToCart?.();
|
|
6085
|
+
}, children: ctaLabel }) })
|
|
5875
6086
|
] })
|
|
5876
6087
|
);
|
|
5877
6088
|
ProductCard.displayName = "ProductCard";
|
|
5878
|
-
var
|
|
5879
|
-
|
|
5880
|
-
|
|
5881
|
-
position: "relative",
|
|
6089
|
+
var COLLAPSE_AT = "480px";
|
|
6090
|
+
var ContainerRoot = styles.styled("div")({
|
|
6091
|
+
containerType: "inline-size",
|
|
5882
6092
|
width: "100%",
|
|
5883
|
-
|
|
5884
|
-
|
|
5885
|
-
|
|
5886
|
-
|
|
5887
|
-
|
|
6093
|
+
height: "100%"
|
|
6094
|
+
});
|
|
6095
|
+
var Inner = styles.styled("div")({
|
|
6096
|
+
display: "flex",
|
|
6097
|
+
flexDirection: "row",
|
|
6098
|
+
height: "100%",
|
|
6099
|
+
[`@container (max-width: ${COLLAPSE_AT})`]: {
|
|
6100
|
+
flexDirection: "column"
|
|
6101
|
+
}
|
|
6102
|
+
});
|
|
6103
|
+
var ImageWrap3 = styles.styled("div")({
|
|
6104
|
+
position: "relative",
|
|
6105
|
+
flexShrink: 0,
|
|
6106
|
+
width: "clamp(120px, 33%, 200px)",
|
|
6107
|
+
alignSelf: "stretch",
|
|
6108
|
+
margin: "-1.5rem 1rem -1.5rem -1.5rem",
|
|
6109
|
+
[`@container (max-width: ${COLLAPSE_AT})`]: {
|
|
6110
|
+
width: "auto",
|
|
6111
|
+
alignSelf: "auto",
|
|
6112
|
+
margin: "-1.5rem -1.5rem 1rem",
|
|
6113
|
+
aspectRatio: "4 / 3"
|
|
6114
|
+
}
|
|
6115
|
+
});
|
|
6116
|
+
var Image3 = styles.styled("img")(({ theme }) => ({
|
|
6117
|
+
position: "absolute",
|
|
6118
|
+
inset: 0,
|
|
5888
6119
|
width: "100%",
|
|
5889
6120
|
height: "100%",
|
|
5890
6121
|
objectFit: "cover",
|
|
5891
|
-
|
|
5892
|
-
});
|
|
5893
|
-
var
|
|
6122
|
+
backgroundColor: theme.palette.action.hover
|
|
6123
|
+
}));
|
|
6124
|
+
var ImagePlaceholder3 = styles.styled("div")(({ theme }) => ({
|
|
6125
|
+
position: "absolute",
|
|
6126
|
+
inset: 0,
|
|
5894
6127
|
width: "100%",
|
|
5895
6128
|
height: "100%",
|
|
6129
|
+
backgroundColor: theme.palette.action.hover,
|
|
5896
6130
|
display: "flex",
|
|
5897
6131
|
alignItems: "center",
|
|
5898
6132
|
justifyContent: "center",
|
|
5899
|
-
|
|
6133
|
+
color: theme.palette.text.disabled
|
|
5900
6134
|
}));
|
|
5901
|
-
var
|
|
6135
|
+
var BadgeSlot2 = styles.styled("div")({
|
|
5902
6136
|
position: "absolute",
|
|
5903
|
-
|
|
5904
|
-
|
|
5905
|
-
|
|
6137
|
+
left: "0.75rem",
|
|
6138
|
+
top: "0.75rem",
|
|
6139
|
+
zIndex: 1
|
|
5906
6140
|
});
|
|
5907
|
-
var
|
|
5908
|
-
|
|
5909
|
-
|
|
5910
|
-
|
|
5911
|
-
|
|
5912
|
-
|
|
5913
|
-
|
|
5914
|
-
|
|
5915
|
-
|
|
5916
|
-
|
|
5917
|
-
|
|
6141
|
+
var Content2 = styles.styled("div")({
|
|
6142
|
+
display: "flex",
|
|
6143
|
+
flexDirection: "column",
|
|
6144
|
+
flex: 1,
|
|
6145
|
+
minWidth: 0
|
|
6146
|
+
});
|
|
6147
|
+
var Name3 = styles.styled("h3")(({ theme }) => ({
|
|
6148
|
+
margin: 0,
|
|
6149
|
+
color: theme.palette.text.primary,
|
|
6150
|
+
fontFamily: theme.typography.fontFamily,
|
|
6151
|
+
fontSize: "1rem",
|
|
6152
|
+
fontWeight: 700,
|
|
6153
|
+
lineHeight: 1.4
|
|
6154
|
+
}));
|
|
6155
|
+
var Footer2 = styles.styled("div")({
|
|
6156
|
+
display: "grid",
|
|
6157
|
+
gap: "1rem",
|
|
6158
|
+
marginTop: "auto",
|
|
6159
|
+
paddingTop: "1rem"
|
|
6160
|
+
});
|
|
6161
|
+
var ProductCardHorizontal = react.forwardRef(
|
|
6162
|
+
({
|
|
6163
|
+
name,
|
|
6164
|
+
imageUrl,
|
|
6165
|
+
imageAlt,
|
|
6166
|
+
price,
|
|
6167
|
+
originalPrice,
|
|
6168
|
+
currency,
|
|
6169
|
+
locale,
|
|
6170
|
+
lowestPrice,
|
|
6171
|
+
badge,
|
|
6172
|
+
badgeVariant = "success",
|
|
6173
|
+
rating,
|
|
6174
|
+
reviewCount,
|
|
6175
|
+
ctaLabel = "Dodaj do koszyka",
|
|
6176
|
+
onAddToCart,
|
|
6177
|
+
...props
|
|
6178
|
+
}, ref) => /* @__PURE__ */ jsxRuntime.jsx(Card, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(ContainerRoot, { children: /* @__PURE__ */ jsxRuntime.jsxs(Inner, { children: [
|
|
6179
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ImageWrap3, { children: [
|
|
6180
|
+
imageUrl ? /* @__PURE__ */ jsxRuntime.jsx(Image3, { src: imageUrl, alt: imageAlt ?? name }) : /* @__PURE__ */ jsxRuntime.jsx(ImagePlaceholder3, { "aria-label": imageAlt ?? name, children: /* @__PURE__ */ jsxRuntime.jsx(ImageIcon__default.default, { style: { fontSize: 48 } }) }),
|
|
6181
|
+
badge && /* @__PURE__ */ jsxRuntime.jsx(BadgeSlot2, { children: /* @__PURE__ */ jsxRuntime.jsx(Badge2, { variant: badgeVariant, children: badge }) })
|
|
6182
|
+
] }),
|
|
6183
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Content2, { children: [
|
|
6184
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name3, { children: name }),
|
|
6185
|
+
rating !== void 0 && /* @__PURE__ */ jsxRuntime.jsx(Rating, { value: rating, count: reviewCount, size: "sm" }),
|
|
6186
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6187
|
+
Price,
|
|
6188
|
+
{
|
|
6189
|
+
price,
|
|
6190
|
+
originalPrice,
|
|
6191
|
+
currency,
|
|
6192
|
+
locale,
|
|
6193
|
+
lowestPrice,
|
|
6194
|
+
style: { marginTop: "0.5rem" }
|
|
6195
|
+
}
|
|
6196
|
+
),
|
|
6197
|
+
/* @__PURE__ */ jsxRuntime.jsx(Footer2, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6198
|
+
Button,
|
|
6199
|
+
{
|
|
6200
|
+
fullWidth: true,
|
|
6201
|
+
onClick: (e) => {
|
|
6202
|
+
e.stopPropagation();
|
|
6203
|
+
onAddToCart?.();
|
|
6204
|
+
},
|
|
6205
|
+
children: ctaLabel
|
|
6206
|
+
}
|
|
6207
|
+
) })
|
|
6208
|
+
] })
|
|
6209
|
+
] }) }) })
|
|
6210
|
+
);
|
|
6211
|
+
ProductCardHorizontal.displayName = "ProductCardHorizontal";
|
|
6212
|
+
var ImageWrapper = styles.styled("div", {
|
|
6213
|
+
shouldForwardProp: (prop) => prop !== "$ar"
|
|
6214
|
+
})(({ $ar }) => ({
|
|
6215
|
+
position: "relative",
|
|
6216
|
+
width: "100%",
|
|
6217
|
+
aspectRatio: $ar,
|
|
6218
|
+
overflow: "hidden",
|
|
6219
|
+
flexShrink: 0
|
|
6220
|
+
}));
|
|
6221
|
+
var Img = styles.styled("img")({
|
|
6222
|
+
width: "100%",
|
|
6223
|
+
height: "100%",
|
|
6224
|
+
objectFit: "cover",
|
|
6225
|
+
display: "block"
|
|
6226
|
+
});
|
|
6227
|
+
var Placeholder2 = styles.styled("div")(({ theme }) => ({
|
|
6228
|
+
width: "100%",
|
|
6229
|
+
height: "100%",
|
|
6230
|
+
display: "flex",
|
|
6231
|
+
alignItems: "center",
|
|
6232
|
+
justifyContent: "center",
|
|
6233
|
+
backgroundColor: theme.palette.action.hover
|
|
6234
|
+
}));
|
|
6235
|
+
var Overlay = styles.styled("div")({
|
|
6236
|
+
position: "absolute",
|
|
6237
|
+
inset: 0,
|
|
6238
|
+
background: "linear-gradient(to bottom, rgba(0,0,0,0.3) 0%, transparent 50%)",
|
|
6239
|
+
pointerEvents: "none"
|
|
6240
|
+
});
|
|
6241
|
+
var FileTextIcon = () => /* @__PURE__ */ jsxRuntime.jsx(ArticleIcon__default.default, { "aria-hidden": "true", style: { fontSize: 32, opacity: 0.3 } });
|
|
6242
|
+
function toAspectRatioCss(ratio) {
|
|
6243
|
+
if (typeof ratio === "number") return String(ratio);
|
|
6244
|
+
return ratio.replace("/", " / ");
|
|
6245
|
+
}
|
|
6246
|
+
var PostCardImage = ({
|
|
6247
|
+
src,
|
|
6248
|
+
alt = "",
|
|
6249
|
+
aspectRatio = "4/3",
|
|
6250
|
+
overlay = false,
|
|
6251
|
+
className,
|
|
5918
6252
|
style
|
|
5919
6253
|
}) => {
|
|
5920
|
-
const [imgError, setImgError] =
|
|
6254
|
+
const [imgError, setImgError] = react.useState(false);
|
|
5921
6255
|
const showPlaceholder = !src || imgError;
|
|
5922
6256
|
return /* @__PURE__ */ jsxRuntime.jsxs(ImageWrapper, { $ar: toAspectRatioCss(aspectRatio), className, style, children: [
|
|
5923
6257
|
showPlaceholder ? /* @__PURE__ */ jsxRuntime.jsx(Placeholder2, { children: /* @__PURE__ */ jsxRuntime.jsx(FileTextIcon, {}) }) : /* @__PURE__ */ jsxRuntime.jsx(Img, { src, alt, onError: () => setImgError(true) }),
|
|
@@ -5995,7 +6329,7 @@ var StyledInner = styles.styled("div", {
|
|
|
5995
6329
|
height: "100%",
|
|
5996
6330
|
...getLayoutStyles($variant)
|
|
5997
6331
|
}));
|
|
5998
|
-
var
|
|
6332
|
+
var CardLink2 = styles.styled("a")(({ theme }) => ({
|
|
5999
6333
|
display: "block",
|
|
6000
6334
|
textDecoration: "none",
|
|
6001
6335
|
color: "inherit",
|
|
@@ -6080,7 +6414,7 @@ var FeaturedImageWrapper = styles.styled("div")({
|
|
|
6080
6414
|
aspectRatio: "auto"
|
|
6081
6415
|
}
|
|
6082
6416
|
});
|
|
6083
|
-
var PostCard =
|
|
6417
|
+
var PostCard = react.forwardRef(
|
|
6084
6418
|
({
|
|
6085
6419
|
title,
|
|
6086
6420
|
excerpt,
|
|
@@ -6101,13 +6435,13 @@ var PostCard = React.forwardRef(
|
|
|
6101
6435
|
isFeatured && showImage && /* @__PURE__ */ jsxRuntime.jsx(FeaturedImageWrapper, { children: /* @__PURE__ */ jsxRuntime.jsx(PostCardImage, { src: imageUrl, alt: imageAlt, aspectRatio: "16/9", overlay: true }) }),
|
|
6102
6436
|
!isFeatured && showImage && (isHorizontal ? /* @__PURE__ */ jsxRuntime.jsx(HorizontalImageWrapper, { children: /* @__PURE__ */ jsxRuntime.jsx(PostCardImage, { src: imageUrl, alt: imageAlt, aspectRatio: "4/3" }) }) : /* @__PURE__ */ jsxRuntime.jsx(PostCardImage, { src: imageUrl, alt: imageAlt, aspectRatio: "16/9" })),
|
|
6103
6437
|
/* @__PURE__ */ jsxRuntime.jsxs(StyledContent, { $variant: variant, children: [
|
|
6104
|
-
category && /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6438
|
+
category && /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(Badge2, { variant: isFeatured ? "ghost" : "default", children: category }) }),
|
|
6105
6439
|
/* @__PURE__ */ jsxRuntime.jsx(StyledTitle, { className: "post-card-title", $featured: isFeatured, children: title }),
|
|
6106
6440
|
excerpt && variant !== "compact" && !isFeatured && /* @__PURE__ */ jsxRuntime.jsx(StyledExcerpt, { children: excerpt }),
|
|
6107
6441
|
(date || author) && /* @__PURE__ */ jsxRuntime.jsx(PostCardMeta, { date, author, inverted: isFeatured })
|
|
6108
6442
|
] })
|
|
6109
6443
|
] });
|
|
6110
|
-
return /* @__PURE__ */ jsxRuntime.jsx(Card, { ref, variant: cardVariant, padding: "none", rounded: "lg", ...rest, children: /* @__PURE__ */ jsxRuntime.jsx(StyledRoot, { children: href ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
6444
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Card, { ref, variant: cardVariant, padding: "none", rounded: "lg", ...rest, children: /* @__PURE__ */ jsxRuntime.jsx(StyledRoot, { children: href ? /* @__PURE__ */ jsxRuntime.jsx(CardLink2, { href, "aria-label": title, children: inner }) : inner }) });
|
|
6111
6445
|
}
|
|
6112
6446
|
);
|
|
6113
6447
|
PostCard.displayName = "PostCard";
|
|
@@ -6119,7 +6453,7 @@ var postCardVariants = [
|
|
|
6119
6453
|
"featured",
|
|
6120
6454
|
"compact"
|
|
6121
6455
|
];
|
|
6122
|
-
var
|
|
6456
|
+
var Root20 = styles.styled(Card)({
|
|
6123
6457
|
display: "flex",
|
|
6124
6458
|
flexDirection: "column",
|
|
6125
6459
|
height: "100%"
|
|
@@ -6130,7 +6464,7 @@ var NameRow = styles.styled("div")({
|
|
|
6130
6464
|
justifyContent: "space-between",
|
|
6131
6465
|
marginBottom: "0.75rem"
|
|
6132
6466
|
});
|
|
6133
|
-
var
|
|
6467
|
+
var Name4 = styles.styled("p")(({ theme }) => ({
|
|
6134
6468
|
margin: 0,
|
|
6135
6469
|
fontFamily: theme.typography.fontFamily,
|
|
6136
6470
|
fontWeight: 600,
|
|
@@ -6231,7 +6565,7 @@ function CheckIcon3() {
|
|
|
6231
6565
|
function XIcon3() {
|
|
6232
6566
|
return /* @__PURE__ */ jsxRuntime.jsx(HighlightOffIcon__default.default, { "aria-hidden": "true", style: { fontSize: 16, flexShrink: 0 } });
|
|
6233
6567
|
}
|
|
6234
|
-
var PricingCard =
|
|
6568
|
+
var PricingCard = react.forwardRef(
|
|
6235
6569
|
({
|
|
6236
6570
|
name,
|
|
6237
6571
|
price,
|
|
@@ -6250,10 +6584,10 @@ var PricingCard = React.forwardRef(
|
|
|
6250
6584
|
}, ref) => {
|
|
6251
6585
|
const resolvedCardVariant = cardVariant ?? (popular ? "gradient-primary" : "default");
|
|
6252
6586
|
const resolvedCtaVariant = ctaVariant ?? (popular ? "primary" : "ghost");
|
|
6253
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6587
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root20, { ref, variant: resolvedCardVariant, padding: "lg", rounded: "lg", ...props, children: [
|
|
6254
6588
|
/* @__PURE__ */ jsxRuntime.jsxs(NameRow, { children: [
|
|
6255
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6256
|
-
popular && /* @__PURE__ */ jsxRuntime.jsx(
|
|
6589
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name4, { children: name }),
|
|
6590
|
+
popular && /* @__PURE__ */ jsxRuntime.jsx(Badge2, { variant: "default", children: popularLabel })
|
|
6257
6591
|
] }),
|
|
6258
6592
|
/* @__PURE__ */ jsxRuntime.jsxs(PriceRow2, { children: [
|
|
6259
6593
|
currency && /* @__PURE__ */ jsxRuntime.jsx(Currency, { children: currency }),
|
|
@@ -6276,7 +6610,7 @@ var PricingCard = React.forwardRef(
|
|
|
6276
6610
|
}
|
|
6277
6611
|
);
|
|
6278
6612
|
PricingCard.displayName = "PricingCard";
|
|
6279
|
-
var
|
|
6613
|
+
var Root21 = styles.styled(Card, {
|
|
6280
6614
|
shouldForwardProp: (prop) => prop !== "$align"
|
|
6281
6615
|
})(({ $align }) => ({
|
|
6282
6616
|
textAlign: $align,
|
|
@@ -6305,15 +6639,15 @@ var Description3 = styles.styled("p")(({ theme }) => ({
|
|
|
6305
6639
|
color: theme.palette.text.secondary,
|
|
6306
6640
|
lineHeight: 1.5
|
|
6307
6641
|
}));
|
|
6308
|
-
var StatCard =
|
|
6309
|
-
({ stat, cardVariant = "default", align = "center", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6642
|
+
var StatCard = react.forwardRef(
|
|
6643
|
+
({ stat, cardVariant = "default", align = "center", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root21, { ref, variant: cardVariant, padding: "lg", rounded: "lg", $align: align, ...props, children: [
|
|
6310
6644
|
/* @__PURE__ */ jsxRuntime.jsx(Value, { children: stat.value }),
|
|
6311
6645
|
/* @__PURE__ */ jsxRuntime.jsx(Label3, { children: stat.label }),
|
|
6312
6646
|
stat.description && /* @__PURE__ */ jsxRuntime.jsx(Description3, { children: stat.description })
|
|
6313
6647
|
] })
|
|
6314
6648
|
);
|
|
6315
6649
|
StatCard.displayName = "StatCard";
|
|
6316
|
-
var
|
|
6650
|
+
var Root22 = styles.styled(Card)({
|
|
6317
6651
|
display: "flex",
|
|
6318
6652
|
flexDirection: "column",
|
|
6319
6653
|
gap: "1.25rem",
|
|
@@ -6339,7 +6673,7 @@ var Quote = styles.styled("blockquote")(({ theme }) => ({
|
|
|
6339
6673
|
marginLeft: "0.125rem"
|
|
6340
6674
|
}
|
|
6341
6675
|
}));
|
|
6342
|
-
var
|
|
6676
|
+
var Footer3 = styles.styled("div")({
|
|
6343
6677
|
display: "flex",
|
|
6344
6678
|
alignItems: "center",
|
|
6345
6679
|
gap: "0.75rem"
|
|
@@ -6367,13 +6701,13 @@ var AuthorRole = styles.styled("p")(({ theme }) => ({
|
|
|
6367
6701
|
fontSize: "0.8125rem",
|
|
6368
6702
|
color: theme.palette.text.secondary
|
|
6369
6703
|
}));
|
|
6370
|
-
var TestimonialCard =
|
|
6704
|
+
var TestimonialCard = react.forwardRef(
|
|
6371
6705
|
({ testimonial, cardVariant = "default", ...props }, ref) => {
|
|
6372
6706
|
const initials = testimonial.authorInitials ?? testimonial.authorName.split(" ").filter(Boolean).slice(0, 2).map((p) => p[0]).join("").toUpperCase();
|
|
6373
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6707
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root22, { ref, variant: cardVariant, padding: "lg", rounded: "lg", ...props, children: [
|
|
6374
6708
|
testimonial.rating && /* @__PURE__ */ jsxRuntime.jsx(Rating, { value: testimonial.rating, readonly: true, size: "sm" }),
|
|
6375
6709
|
/* @__PURE__ */ jsxRuntime.jsx(Quote, { children: testimonial.quote }),
|
|
6376
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
6710
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Footer3, { children: [
|
|
6377
6711
|
testimonial.authorAvatarUrl ? /* @__PURE__ */ jsxRuntime.jsx(AvatarImage, { src: testimonial.authorAvatarUrl, alt: testimonial.authorName }) : /* @__PURE__ */ jsxRuntime.jsx(Avatar, { initials, size: "md", color: "primary" }),
|
|
6378
6712
|
/* @__PURE__ */ jsxRuntime.jsxs(AuthorInfo, { children: [
|
|
6379
6713
|
/* @__PURE__ */ jsxRuntime.jsx(AuthorName, { children: testimonial.authorName }),
|
|
@@ -6384,7 +6718,7 @@ var TestimonialCard = React.forwardRef(
|
|
|
6384
6718
|
}
|
|
6385
6719
|
);
|
|
6386
6720
|
TestimonialCard.displayName = "TestimonialCard";
|
|
6387
|
-
var
|
|
6721
|
+
var Root23 = styles.styled(Card)(({ theme }) => ({
|
|
6388
6722
|
display: "flex",
|
|
6389
6723
|
alignItems: "center",
|
|
6390
6724
|
gap: "1rem",
|
|
@@ -6403,10 +6737,10 @@ var AvatarImage2 = styles.styled("img")({
|
|
|
6403
6737
|
borderRadius: "50%",
|
|
6404
6738
|
objectFit: "cover"
|
|
6405
6739
|
});
|
|
6406
|
-
var
|
|
6740
|
+
var Content3 = styles.styled("div")({
|
|
6407
6741
|
minWidth: 0
|
|
6408
6742
|
});
|
|
6409
|
-
var
|
|
6743
|
+
var Name5 = styles.styled("h3")(({ theme }) => ({
|
|
6410
6744
|
margin: 0,
|
|
6411
6745
|
color: theme.palette.text.primary,
|
|
6412
6746
|
fontFamily: theme.typography.fontFamily,
|
|
@@ -6427,11 +6761,11 @@ function getInitials(member) {
|
|
|
6427
6761
|
}
|
|
6428
6762
|
return member.name.split(" ").filter(Boolean).slice(0, 2).map((part) => part[0]).join("").toUpperCase();
|
|
6429
6763
|
}
|
|
6430
|
-
var TeamMemberCard =
|
|
6431
|
-
({ member, cardVariant = "default", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6764
|
+
var TeamMemberCard = react.forwardRef(
|
|
6765
|
+
({ member, cardVariant = "default", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root23, { ref, variant: cardVariant, padding: "lg", rounded: "lg", ...props, children: [
|
|
6432
6766
|
member.avatarUrl ? /* @__PURE__ */ jsxRuntime.jsx(AvatarImage2, { src: member.avatarUrl, alt: member.avatarAlt ?? member.name }) : /* @__PURE__ */ jsxRuntime.jsx(Avatar, { initials: getInitials(member), size: "xl", color: member.avatarColor ?? "primary" }),
|
|
6433
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
6434
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6767
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Content3, { children: [
|
|
6768
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name5, { children: member.name }),
|
|
6435
6769
|
/* @__PURE__ */ jsxRuntime.jsx(Role, { children: member.role })
|
|
6436
6770
|
] })
|
|
6437
6771
|
] })
|
|
@@ -6609,8 +6943,143 @@ function CompareTool({
|
|
|
6609
6943
|
}) })
|
|
6610
6944
|
] }) });
|
|
6611
6945
|
}
|
|
6946
|
+
function calcTimeLeft(target) {
|
|
6947
|
+
const diff = new Date(target).getTime() - Date.now();
|
|
6948
|
+
if (diff <= 0) return null;
|
|
6949
|
+
return {
|
|
6950
|
+
days: Math.floor(diff / 864e5),
|
|
6951
|
+
hours: Math.floor(diff % 864e5 / 36e5),
|
|
6952
|
+
minutes: Math.floor(diff % 36e5 / 6e4),
|
|
6953
|
+
seconds: Math.floor(diff % 6e4 / 1e3)
|
|
6954
|
+
};
|
|
6955
|
+
}
|
|
6956
|
+
function pad(n) {
|
|
6957
|
+
return String(n).padStart(2, "0");
|
|
6958
|
+
}
|
|
6959
|
+
var Root24 = styles.styled("div", {
|
|
6960
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
6961
|
+
})(({ theme, $variant }) => ({
|
|
6962
|
+
display: "inline-flex",
|
|
6963
|
+
alignItems: "center",
|
|
6964
|
+
justifyContent: "space-between",
|
|
6965
|
+
flexWrap: "wrap",
|
|
6966
|
+
gap: "0.5rem",
|
|
6967
|
+
fontFamily: theme.typography.fontFamily,
|
|
6968
|
+
...$variant === "card" && {
|
|
6969
|
+
backgroundColor: theme.palette.background.paper,
|
|
6970
|
+
border: `1px solid ${theme.palette.divider}`,
|
|
6971
|
+
borderRadius: theme.shape.borderRadius,
|
|
6972
|
+
padding: "1rem 1.5rem"
|
|
6973
|
+
},
|
|
6974
|
+
...$variant === "banner" && {
|
|
6975
|
+
backgroundColor: theme.palette.error.main,
|
|
6976
|
+
color: "#fff",
|
|
6977
|
+
borderRadius: theme.shape.borderRadius,
|
|
6978
|
+
padding: "0.75rem 1.25rem"
|
|
6979
|
+
}
|
|
6980
|
+
}));
|
|
6981
|
+
var TimerLabel = styles.styled("span", {
|
|
6982
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
6983
|
+
})(({ theme, $variant }) => ({
|
|
6984
|
+
fontSize: "0.875rem",
|
|
6985
|
+
fontWeight: 600,
|
|
6986
|
+
color: $variant === "banner" ? "rgba(255,255,255,0.85)" : theme.palette.text.secondary,
|
|
6987
|
+
marginRight: "0.25rem"
|
|
6988
|
+
}));
|
|
6989
|
+
var Segments = styles.styled("div")({
|
|
6990
|
+
display: "flex",
|
|
6991
|
+
alignItems: "center",
|
|
6992
|
+
gap: "0.25rem"
|
|
6993
|
+
});
|
|
6994
|
+
var Segment = styles.styled("div", {
|
|
6995
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
6996
|
+
})(({ theme, $variant }) => ({
|
|
6997
|
+
display: "flex",
|
|
6998
|
+
flexDirection: "column",
|
|
6999
|
+
alignItems: "center",
|
|
7000
|
+
minWidth: "2.5rem",
|
|
7001
|
+
...$variant === "card" && {
|
|
7002
|
+
backgroundColor: theme.palette.action.hover,
|
|
7003
|
+
borderRadius: "0.375rem",
|
|
7004
|
+
padding: "0.375rem 0.5rem"
|
|
7005
|
+
}
|
|
7006
|
+
}));
|
|
7007
|
+
var Value2 = styles.styled("span", {
|
|
7008
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
7009
|
+
})(({ $variant }) => ({
|
|
7010
|
+
fontSize: $variant === "inline" ? "1rem" : "1.5rem",
|
|
7011
|
+
fontWeight: 700,
|
|
7012
|
+
lineHeight: 1,
|
|
7013
|
+
color: $variant === "banner" ? "#fff" : "inherit"
|
|
7014
|
+
}));
|
|
7015
|
+
var Unit = styles.styled("span", {
|
|
7016
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
7017
|
+
})(({ theme, $variant }) => ({
|
|
7018
|
+
fontSize: "0.6875rem",
|
|
7019
|
+
color: $variant === "banner" ? "rgba(255,255,255,0.7)" : theme.palette.text.secondary,
|
|
7020
|
+
marginTop: "0.125rem"
|
|
7021
|
+
}));
|
|
7022
|
+
var Colon = styles.styled("span", {
|
|
7023
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
7024
|
+
})(({ theme, $variant }) => ({
|
|
7025
|
+
fontSize: $variant === "inline" ? "1rem" : "1.5rem",
|
|
7026
|
+
fontWeight: 700,
|
|
7027
|
+
color: $variant === "banner" ? "rgba(255,255,255,0.6)" : theme.palette.text.disabled,
|
|
7028
|
+
alignSelf: $variant === "card" ? "flex-start" : "center",
|
|
7029
|
+
marginTop: $variant === "card" ? "0.375rem" : 0
|
|
7030
|
+
}));
|
|
7031
|
+
var UNITS = ["dni", "godz", "min", "sek"];
|
|
7032
|
+
var CountdownTimer = react.forwardRef(
|
|
7033
|
+
({
|
|
7034
|
+
targetDate,
|
|
7035
|
+
variant = "inline",
|
|
7036
|
+
label,
|
|
7037
|
+
expiredLabel = "Promocja zako\u0144czona",
|
|
7038
|
+
onExpire,
|
|
7039
|
+
...props
|
|
7040
|
+
}, ref) => {
|
|
7041
|
+
const [timeLeft, setTimeLeft] = react.useState(() => calcTimeLeft(targetDate));
|
|
7042
|
+
react.useEffect(() => {
|
|
7043
|
+
const id = setInterval(() => {
|
|
7044
|
+
const tl = calcTimeLeft(targetDate);
|
|
7045
|
+
setTimeLeft(tl);
|
|
7046
|
+
if (!tl) {
|
|
7047
|
+
clearInterval(id);
|
|
7048
|
+
onExpire?.();
|
|
7049
|
+
}
|
|
7050
|
+
}, 1e3);
|
|
7051
|
+
return () => clearInterval(id);
|
|
7052
|
+
}, [targetDate, onExpire]);
|
|
7053
|
+
if (!timeLeft) {
|
|
7054
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root24, { ref, $variant: variant, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(TimerLabel, { $variant: variant, children: expiredLabel }) });
|
|
7055
|
+
}
|
|
7056
|
+
const parts = [timeLeft.days, timeLeft.hours, timeLeft.minutes, timeLeft.seconds];
|
|
7057
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7058
|
+
Root24,
|
|
7059
|
+
{
|
|
7060
|
+
ref,
|
|
7061
|
+
$variant: variant,
|
|
7062
|
+
"aria-live": "polite",
|
|
7063
|
+
"aria-label": `Czas do ko\u0144ca promocji`,
|
|
7064
|
+
...props,
|
|
7065
|
+
children: [
|
|
7066
|
+
label && /* @__PURE__ */ jsxRuntime.jsx(TimerLabel, { $variant: variant, children: label }),
|
|
7067
|
+
/* @__PURE__ */ jsxRuntime.jsx(Segments, { children: parts.map((val, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { display: "contents" }, children: [
|
|
7068
|
+
i > 0 && /* @__PURE__ */ jsxRuntime.jsx(Colon, { $variant: variant, children: ":" }),
|
|
7069
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Segment, { $variant: variant, children: [
|
|
7070
|
+
/* @__PURE__ */ jsxRuntime.jsx(Value2, { $variant: variant, children: pad(val) }),
|
|
7071
|
+
variant !== "inline" && /* @__PURE__ */ jsxRuntime.jsx(Unit, { $variant: variant, children: UNITS[i] })
|
|
7072
|
+
] })
|
|
7073
|
+
] }, UNITS[i])) })
|
|
7074
|
+
]
|
|
7075
|
+
}
|
|
7076
|
+
);
|
|
7077
|
+
}
|
|
7078
|
+
);
|
|
7079
|
+
CountdownTimer.displayName = "CountdownTimer";
|
|
7080
|
+
var countdownTimerVariants = ["inline", "card", "banner"];
|
|
6612
7081
|
var spin2 = styles.keyframes`to { transform: rotate(360deg); }`;
|
|
6613
|
-
var
|
|
7082
|
+
var Root25 = styles.styled("div")({
|
|
6614
7083
|
display: "flex",
|
|
6615
7084
|
flexDirection: "column",
|
|
6616
7085
|
gap: "0.5rem"
|
|
@@ -6746,7 +7215,7 @@ function CouponInput({
|
|
|
6746
7215
|
successMessage,
|
|
6747
7216
|
className
|
|
6748
7217
|
}) {
|
|
6749
|
-
const id =
|
|
7218
|
+
const id = react.useId();
|
|
6750
7219
|
const errorId = `${id}-error`;
|
|
6751
7220
|
const successId = `${id}-success`;
|
|
6752
7221
|
const isDisabled = disabled || loading;
|
|
@@ -6757,7 +7226,7 @@ function CouponInput({
|
|
|
6757
7226
|
if (e.key === "Enter") handleApply();
|
|
6758
7227
|
};
|
|
6759
7228
|
if (appliedCode) {
|
|
6760
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7229
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root25, { className, children: [
|
|
6761
7230
|
/* @__PURE__ */ jsxRuntime.jsxs(AppliedRow, { role: "status", "aria-label": `Kod rabatowy ${appliedCode} zastosowany`, children: [
|
|
6762
7231
|
/* @__PURE__ */ jsxRuntime.jsx(AppliedCode, { children: appliedCode }),
|
|
6763
7232
|
onRemove && /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -6776,7 +7245,7 @@ function CouponInput({
|
|
|
6776
7245
|
] })
|
|
6777
7246
|
] });
|
|
6778
7247
|
}
|
|
6779
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7248
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root25, { className, children: [
|
|
6780
7249
|
/* @__PURE__ */ jsxRuntime.jsxs(InputRow, { $hasError: Boolean(error), $applied: false, children: [
|
|
6781
7250
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6782
7251
|
Input,
|
|
@@ -6808,7 +7277,82 @@ function CouponInput({
|
|
|
6808
7277
|
error && /* @__PURE__ */ jsxRuntime.jsx(Message, { $type: "error", id: errorId, role: "alert", children: error })
|
|
6809
7278
|
] });
|
|
6810
7279
|
}
|
|
6811
|
-
var
|
|
7280
|
+
var Root26 = styles.styled("div")({
|
|
7281
|
+
display: "flex",
|
|
7282
|
+
flexDirection: "column",
|
|
7283
|
+
gap: "0.5rem"
|
|
7284
|
+
});
|
|
7285
|
+
var GroupLabel = styles.styled("span")(({ theme }) => ({
|
|
7286
|
+
fontSize: "0.875rem",
|
|
7287
|
+
fontWeight: 600,
|
|
7288
|
+
color: theme.palette.text.primary,
|
|
7289
|
+
fontFamily: theme.typography.fontFamily
|
|
7290
|
+
}));
|
|
7291
|
+
var MethodLabel = styles.styled("label", {
|
|
7292
|
+
shouldForwardProp: (prop) => prop !== "$selected"
|
|
7293
|
+
})(({ theme, $selected }) => ({
|
|
7294
|
+
display: "flex",
|
|
7295
|
+
alignItems: "center",
|
|
7296
|
+
gap: "0.875rem",
|
|
7297
|
+
padding: "0.875rem 1rem",
|
|
7298
|
+
border: `${$selected ? 2 : 1}px solid ${$selected ? theme.palette.primary.main : theme.palette.divider}`,
|
|
7299
|
+
borderRadius: theme.shape.borderRadius,
|
|
7300
|
+
cursor: "pointer",
|
|
7301
|
+
backgroundColor: $selected ? `${theme.palette.primary.main}08` : theme.palette.background.paper,
|
|
7302
|
+
transition: "border-color 150ms ease, background-color 150ms ease",
|
|
7303
|
+
fontFamily: theme.typography.fontFamily,
|
|
7304
|
+
"&:hover": { borderColor: theme.palette.primary.main }
|
|
7305
|
+
}));
|
|
7306
|
+
var Radio = styles.styled("input")({
|
|
7307
|
+
width: "1rem",
|
|
7308
|
+
height: "1rem",
|
|
7309
|
+
flexShrink: 0,
|
|
7310
|
+
cursor: "pointer"
|
|
7311
|
+
});
|
|
7312
|
+
var IconWrap = styles.styled("span")(({ theme }) => ({
|
|
7313
|
+
color: theme.palette.text.secondary,
|
|
7314
|
+
display: "flex"
|
|
7315
|
+
}));
|
|
7316
|
+
var Info = styles.styled("div")({ flex: 1 });
|
|
7317
|
+
var Name6 = styles.styled("div")(({ theme }) => ({
|
|
7318
|
+
fontSize: "0.9375rem",
|
|
7319
|
+
fontWeight: 600,
|
|
7320
|
+
color: theme.palette.text.primary
|
|
7321
|
+
}));
|
|
7322
|
+
var Desc = styles.styled("div")(({ theme }) => ({
|
|
7323
|
+
fontSize: "0.8125rem",
|
|
7324
|
+
color: theme.palette.text.secondary,
|
|
7325
|
+
marginTop: "0.125rem"
|
|
7326
|
+
}));
|
|
7327
|
+
var PaymentMethodSelector = react.forwardRef(
|
|
7328
|
+
({ methods, value, onChange, label = "Metoda p\u0142atno\u015Bci", disabled, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root26, { ref, ...props, children: [
|
|
7329
|
+
/* @__PURE__ */ jsxRuntime.jsx(GroupLabel, { children: label }),
|
|
7330
|
+
methods.map((method) => {
|
|
7331
|
+
const selected = value === method.id;
|
|
7332
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(MethodLabel, { $selected: selected, children: [
|
|
7333
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7334
|
+
Radio,
|
|
7335
|
+
{
|
|
7336
|
+
type: "radio",
|
|
7337
|
+
name: "payment",
|
|
7338
|
+
value: method.id,
|
|
7339
|
+
checked: selected,
|
|
7340
|
+
disabled,
|
|
7341
|
+
onChange: () => onChange?.(method.id),
|
|
7342
|
+
"aria-label": method.label
|
|
7343
|
+
}
|
|
7344
|
+
),
|
|
7345
|
+
/* @__PURE__ */ jsxRuntime.jsx(IconWrap, { children: method.icon ?? /* @__PURE__ */ jsxRuntime.jsx(CreditCardOutlinedIcon__default.default, { "aria-hidden": true }) }),
|
|
7346
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Info, { children: [
|
|
7347
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name6, { children: method.label }),
|
|
7348
|
+
method.description && /* @__PURE__ */ jsxRuntime.jsx(Desc, { children: method.description })
|
|
7349
|
+
] })
|
|
7350
|
+
] }, method.id);
|
|
7351
|
+
})
|
|
7352
|
+
] })
|
|
7353
|
+
);
|
|
7354
|
+
PaymentMethodSelector.displayName = "PaymentMethodSelector";
|
|
7355
|
+
var Root27 = styles.styled("div")({
|
|
6812
7356
|
display: "grid",
|
|
6813
7357
|
gap: "0.75rem"
|
|
6814
7358
|
});
|
|
@@ -6834,9 +7378,9 @@ var ThumbnailButton = styles.styled("button")(({ theme, $active }) => ({
|
|
|
6834
7378
|
var ThumbnailImage = styles.styled("img")({
|
|
6835
7379
|
objectFit: "cover"
|
|
6836
7380
|
});
|
|
6837
|
-
var ProductGallery =
|
|
7381
|
+
var ProductGallery = react.forwardRef(
|
|
6838
7382
|
({ images, selectedIndex, onSelect, ...props }, ref) => {
|
|
6839
|
-
const [internalIndex, setInternalIndex] =
|
|
7383
|
+
const [internalIndex, setInternalIndex] = react.useState(0);
|
|
6840
7384
|
const activeIndex = selectedIndex ?? internalIndex;
|
|
6841
7385
|
const activeImage = images[activeIndex] ?? images[0];
|
|
6842
7386
|
const handleSelect = (index) => {
|
|
@@ -6846,7 +7390,7 @@ var ProductGallery = React.forwardRef(
|
|
|
6846
7390
|
if (!activeImage) {
|
|
6847
7391
|
return null;
|
|
6848
7392
|
}
|
|
6849
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7393
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root27, { ref, ...props, children: [
|
|
6850
7394
|
/* @__PURE__ */ jsxRuntime.jsx(AspectRatio, { ratio: "4/3", children: /* @__PURE__ */ jsxRuntime.jsx(MainImage, { src: activeImage.src, alt: activeImage.alt }) }),
|
|
6851
7395
|
images.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(Thumbnails, { children: images.map((image, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
6852
7396
|
ThumbnailButton,
|
|
@@ -6864,7 +7408,7 @@ var ProductGallery = React.forwardRef(
|
|
|
6864
7408
|
}
|
|
6865
7409
|
);
|
|
6866
7410
|
ProductGallery.displayName = "ProductGallery";
|
|
6867
|
-
var
|
|
7411
|
+
var Root28 = styles.styled("div")(({ theme, $variant }) => ({
|
|
6868
7412
|
display: "flex",
|
|
6869
7413
|
alignItems: "center",
|
|
6870
7414
|
justifyContent: "center",
|
|
@@ -6883,15 +7427,15 @@ var Link = styles.styled("a")(({ theme }) => ({
|
|
|
6883
7427
|
textDecoration: "underline",
|
|
6884
7428
|
textUnderlineOffset: "0.2em"
|
|
6885
7429
|
}));
|
|
6886
|
-
var PromoStrip =
|
|
6887
|
-
({ message, actionLabel, href, variant = "info", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7430
|
+
var PromoStrip = react.forwardRef(
|
|
7431
|
+
({ message, actionLabel, href, variant = "info", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root28, { ref, $variant: variant, ...props, children: [
|
|
6888
7432
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: message }),
|
|
6889
7433
|
actionLabel && href && /* @__PURE__ */ jsxRuntime.jsx(Link, { href, children: actionLabel })
|
|
6890
7434
|
] })
|
|
6891
7435
|
);
|
|
6892
7436
|
PromoStrip.displayName = "PromoStrip";
|
|
6893
7437
|
var promoStripVariants = ["info", "success", "warning"];
|
|
6894
|
-
var
|
|
7438
|
+
var Root29 = styles.styled("div")(({ theme }) => ({
|
|
6895
7439
|
display: "inline-grid",
|
|
6896
7440
|
gridTemplateColumns: "2.25rem 3rem 2.25rem",
|
|
6897
7441
|
alignItems: "center",
|
|
@@ -6913,7 +7457,7 @@ var Control = styles.styled("button")(({ theme }) => ({
|
|
|
6913
7457
|
cursor: "not-allowed"
|
|
6914
7458
|
}
|
|
6915
7459
|
}));
|
|
6916
|
-
var
|
|
7460
|
+
var Value3 = styles.styled("span")(({ theme }) => ({
|
|
6917
7461
|
display: "inline-flex",
|
|
6918
7462
|
alignItems: "center",
|
|
6919
7463
|
justifyContent: "center",
|
|
@@ -6923,11 +7467,11 @@ var Value2 = styles.styled("span")(({ theme }) => ({
|
|
|
6923
7467
|
borderRight: `1px solid ${theme.palette.divider}`,
|
|
6924
7468
|
fontWeight: 600
|
|
6925
7469
|
}));
|
|
6926
|
-
var QuantitySelector =
|
|
7470
|
+
var QuantitySelector = react.forwardRef(
|
|
6927
7471
|
({ value, min = 1, max = 99, step = 1, disabled = false, onChange, ...props }, ref) => {
|
|
6928
7472
|
const decrease = Math.max(min, value - step);
|
|
6929
7473
|
const increase = Math.min(max, value + step);
|
|
6930
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7474
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root29, { ref, "aria-label": "Wybierz ilo\u015B\u0107", ...props, children: [
|
|
6931
7475
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6932
7476
|
Control,
|
|
6933
7477
|
{
|
|
@@ -6938,7 +7482,7 @@ var QuantitySelector = React.forwardRef(
|
|
|
6938
7482
|
children: "\u2212"
|
|
6939
7483
|
}
|
|
6940
7484
|
),
|
|
6941
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7485
|
+
/* @__PURE__ */ jsxRuntime.jsx(Value3, { "aria-live": "polite", children: value }),
|
|
6942
7486
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6943
7487
|
Control,
|
|
6944
7488
|
{
|
|
@@ -6953,6 +7497,207 @@ var QuantitySelector = React.forwardRef(
|
|
|
6953
7497
|
}
|
|
6954
7498
|
);
|
|
6955
7499
|
QuantitySelector.displayName = "QuantitySelector";
|
|
7500
|
+
var Root30 = styles.styled("div")({
|
|
7501
|
+
display: "flex",
|
|
7502
|
+
flexDirection: "column",
|
|
7503
|
+
gap: "0.5rem"
|
|
7504
|
+
});
|
|
7505
|
+
var GroupLabel2 = styles.styled("span")(({ theme }) => ({
|
|
7506
|
+
fontSize: "0.875rem",
|
|
7507
|
+
fontWeight: 600,
|
|
7508
|
+
color: theme.palette.text.primary,
|
|
7509
|
+
fontFamily: theme.typography.fontFamily
|
|
7510
|
+
}));
|
|
7511
|
+
var OptionLabel = styles.styled("label", {
|
|
7512
|
+
shouldForwardProp: (prop) => prop !== "$selected"
|
|
7513
|
+
})(({ theme, $selected }) => ({
|
|
7514
|
+
display: "flex",
|
|
7515
|
+
alignItems: "center",
|
|
7516
|
+
gap: "0.875rem",
|
|
7517
|
+
padding: "0.875rem 1rem",
|
|
7518
|
+
border: `${$selected ? 2 : 1}px solid ${$selected ? theme.palette.primary.main : theme.palette.divider}`,
|
|
7519
|
+
borderRadius: theme.shape.borderRadius,
|
|
7520
|
+
cursor: "pointer",
|
|
7521
|
+
backgroundColor: $selected ? `${theme.palette.primary.main}08` : theme.palette.background.paper,
|
|
7522
|
+
transition: "border-color 150ms ease, background-color 150ms ease",
|
|
7523
|
+
fontFamily: theme.typography.fontFamily,
|
|
7524
|
+
"&:hover": {
|
|
7525
|
+
borderColor: theme.palette.primary.main
|
|
7526
|
+
}
|
|
7527
|
+
}));
|
|
7528
|
+
var Radio2 = styles.styled("input")({
|
|
7529
|
+
width: "1rem",
|
|
7530
|
+
height: "1rem",
|
|
7531
|
+
flexShrink: 0,
|
|
7532
|
+
cursor: "pointer"
|
|
7533
|
+
});
|
|
7534
|
+
var IconWrap2 = styles.styled("span")(({ theme }) => ({
|
|
7535
|
+
color: theme.palette.text.secondary,
|
|
7536
|
+
display: "flex"
|
|
7537
|
+
}));
|
|
7538
|
+
var Info2 = styles.styled("div")({ flex: 1 });
|
|
7539
|
+
var Name7 = styles.styled("div")(({ theme }) => ({
|
|
7540
|
+
fontSize: "0.9375rem",
|
|
7541
|
+
fontWeight: 600,
|
|
7542
|
+
color: theme.palette.text.primary
|
|
7543
|
+
}));
|
|
7544
|
+
var Desc2 = styles.styled("div")(({ theme }) => ({
|
|
7545
|
+
fontSize: "0.8125rem",
|
|
7546
|
+
color: theme.palette.text.secondary,
|
|
7547
|
+
marginTop: "0.125rem"
|
|
7548
|
+
}));
|
|
7549
|
+
var Price3 = styles.styled("div", {
|
|
7550
|
+
shouldForwardProp: (prop) => prop !== "$selected"
|
|
7551
|
+
})(({ theme, $selected }) => ({
|
|
7552
|
+
fontSize: "0.9375rem",
|
|
7553
|
+
fontWeight: 700,
|
|
7554
|
+
color: $selected ? theme.palette.primary.main : theme.palette.text.primary,
|
|
7555
|
+
whiteSpace: "nowrap"
|
|
7556
|
+
}));
|
|
7557
|
+
var ShippingSelector = react.forwardRef(
|
|
7558
|
+
({ options, value, onChange, label = "Metoda dostawy", disabled, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root30, { ref, ...props, children: [
|
|
7559
|
+
/* @__PURE__ */ jsxRuntime.jsx(GroupLabel2, { children: label }),
|
|
7560
|
+
options.map((opt) => {
|
|
7561
|
+
const selected = value === opt.id;
|
|
7562
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(OptionLabel, { $selected: selected, children: [
|
|
7563
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7564
|
+
Radio2,
|
|
7565
|
+
{
|
|
7566
|
+
type: "radio",
|
|
7567
|
+
name: "shipping",
|
|
7568
|
+
value: opt.id,
|
|
7569
|
+
checked: selected,
|
|
7570
|
+
disabled,
|
|
7571
|
+
onChange: () => onChange?.(opt.id),
|
|
7572
|
+
"aria-label": opt.label
|
|
7573
|
+
}
|
|
7574
|
+
),
|
|
7575
|
+
/* @__PURE__ */ jsxRuntime.jsx(IconWrap2, { children: opt.icon ?? /* @__PURE__ */ jsxRuntime.jsx(LocalShippingOutlinedIcon__default.default, { "aria-hidden": true }) }),
|
|
7576
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Info2, { children: [
|
|
7577
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name7, { children: opt.label }),
|
|
7578
|
+
(opt.description || opt.estimatedDays) && /* @__PURE__ */ jsxRuntime.jsxs(Desc2, { children: [
|
|
7579
|
+
opt.description,
|
|
7580
|
+
opt.estimatedDays && ` \xB7 ${opt.estimatedDays}`
|
|
7581
|
+
] })
|
|
7582
|
+
] }),
|
|
7583
|
+
/* @__PURE__ */ jsxRuntime.jsx(Price3, { $selected: selected, children: opt.price })
|
|
7584
|
+
] }, opt.id);
|
|
7585
|
+
})
|
|
7586
|
+
] })
|
|
7587
|
+
);
|
|
7588
|
+
ShippingSelector.displayName = "ShippingSelector";
|
|
7589
|
+
var DEFAULT_SORT_OPTIONS = [
|
|
7590
|
+
{ value: "popular", label: "Najpopularniejsze" },
|
|
7591
|
+
{ value: "newest", label: "Najnowsze" },
|
|
7592
|
+
{ value: "price-asc", label: "Cena rosn\u0105co" },
|
|
7593
|
+
{ value: "price-desc", label: "Cena malej\u0105co" }
|
|
7594
|
+
];
|
|
7595
|
+
var Root31 = styles.styled("div")(({ theme }) => ({
|
|
7596
|
+
display: "flex",
|
|
7597
|
+
alignItems: "center",
|
|
7598
|
+
justifyContent: "space-between",
|
|
7599
|
+
flexWrap: "wrap",
|
|
7600
|
+
gap: "0.75rem",
|
|
7601
|
+
padding: "0.75rem 0",
|
|
7602
|
+
borderBottom: `1px solid ${theme.palette.divider}`,
|
|
7603
|
+
fontFamily: theme.typography.fontFamily
|
|
7604
|
+
}));
|
|
7605
|
+
var TotalLabel = styles.styled("span")(({ theme }) => ({
|
|
7606
|
+
fontSize: "0.875rem",
|
|
7607
|
+
color: theme.palette.text.secondary
|
|
7608
|
+
}));
|
|
7609
|
+
var Controls = styles.styled("div")({
|
|
7610
|
+
display: "flex",
|
|
7611
|
+
alignItems: "center",
|
|
7612
|
+
gap: "0.75rem"
|
|
7613
|
+
});
|
|
7614
|
+
var SortLabel = styles.styled("label")(({ theme }) => ({
|
|
7615
|
+
fontSize: "0.875rem",
|
|
7616
|
+
color: theme.palette.text.secondary
|
|
7617
|
+
}));
|
|
7618
|
+
var Select = styles.styled("select")(({ theme }) => ({
|
|
7619
|
+
padding: "0.375rem 2rem 0.375rem 0.625rem",
|
|
7620
|
+
border: `1px solid ${theme.palette.divider}`,
|
|
7621
|
+
borderRadius: theme.shape.borderRadius,
|
|
7622
|
+
backgroundColor: theme.palette.background.paper,
|
|
7623
|
+
color: theme.palette.text.primary,
|
|
7624
|
+
fontFamily: theme.typography.fontFamily,
|
|
7625
|
+
fontSize: "0.875rem",
|
|
7626
|
+
cursor: "pointer",
|
|
7627
|
+
appearance: "none",
|
|
7628
|
+
backgroundImage: `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%23666' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E")`,
|
|
7629
|
+
backgroundRepeat: "no-repeat",
|
|
7630
|
+
backgroundPosition: "right 0.5rem center",
|
|
7631
|
+
"&:focus": { outline: `3px solid ${theme.palette.primary.main}`, outlineOffset: "2px" }
|
|
7632
|
+
}));
|
|
7633
|
+
var ViewToggle = styles.styled("div")(({ theme }) => ({
|
|
7634
|
+
display: "flex",
|
|
7635
|
+
border: `1px solid ${theme.palette.divider}`,
|
|
7636
|
+
borderRadius: theme.shape.borderRadius,
|
|
7637
|
+
overflow: "hidden"
|
|
7638
|
+
}));
|
|
7639
|
+
var ViewButton = styles.styled("button", {
|
|
7640
|
+
shouldForwardProp: (prop) => prop !== "$active"
|
|
7641
|
+
})(({ theme, $active }) => ({
|
|
7642
|
+
appearance: "none",
|
|
7643
|
+
border: "none",
|
|
7644
|
+
cursor: "pointer",
|
|
7645
|
+
display: "flex",
|
|
7646
|
+
alignItems: "center",
|
|
7647
|
+
padding: "0.375rem 0.5rem",
|
|
7648
|
+
backgroundColor: $active ? theme.palette.primary.main : "transparent",
|
|
7649
|
+
color: $active ? theme.palette.primary.contrastText : theme.palette.text.secondary,
|
|
7650
|
+
transition: "background-color 150ms ease, color 150ms ease",
|
|
7651
|
+
"&:hover:not(:disabled)": {
|
|
7652
|
+
backgroundColor: $active ? theme.palette.primary.dark : theme.palette.action.hover
|
|
7653
|
+
},
|
|
7654
|
+
"&:focus-visible": { outline: `3px solid ${theme.palette.primary.main}`, outlineOffset: "-1px" }
|
|
7655
|
+
}));
|
|
7656
|
+
var SortBar = react.forwardRef(
|
|
7657
|
+
({
|
|
7658
|
+
total,
|
|
7659
|
+
totalLabel,
|
|
7660
|
+
sortOptions = DEFAULT_SORT_OPTIONS,
|
|
7661
|
+
sortValue,
|
|
7662
|
+
onSortChange,
|
|
7663
|
+
viewMode = "grid",
|
|
7664
|
+
onViewModeChange,
|
|
7665
|
+
showViewToggle = true,
|
|
7666
|
+
...props
|
|
7667
|
+
}, ref) => {
|
|
7668
|
+
const resolvedLabel = totalLabel ?? (total !== void 0 ? `Znaleziono ${total} produkt\xF3w` : void 0);
|
|
7669
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root31, { ref, ...props, children: [
|
|
7670
|
+
resolvedLabel && /* @__PURE__ */ jsxRuntime.jsx(TotalLabel, { children: resolvedLabel }),
|
|
7671
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Controls, { children: [
|
|
7672
|
+
sortOptions.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
7673
|
+
/* @__PURE__ */ jsxRuntime.jsx(SortLabel, { htmlFor: "sort-select", children: "Sortuj:" }),
|
|
7674
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7675
|
+
Select,
|
|
7676
|
+
{
|
|
7677
|
+
id: "sort-select",
|
|
7678
|
+
value: sortValue ?? "",
|
|
7679
|
+
onChange: (e) => onSortChange?.(e.target.value),
|
|
7680
|
+
children: sortOptions.map((opt) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: opt.value, children: opt.label }, opt.value))
|
|
7681
|
+
}
|
|
7682
|
+
)
|
|
7683
|
+
] }),
|
|
7684
|
+
showViewToggle && /* @__PURE__ */ jsxRuntime.jsx(ViewToggle, { "aria-label": "Tryb widoku", children: ["grid", "list"].map((mode) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
7685
|
+
ViewButton,
|
|
7686
|
+
{
|
|
7687
|
+
type: "button",
|
|
7688
|
+
$active: viewMode === mode,
|
|
7689
|
+
"aria-label": mode === "grid" ? "Widok siatki" : "Widok listy",
|
|
7690
|
+
"aria-pressed": viewMode === mode,
|
|
7691
|
+
onClick: () => onViewModeChange?.(mode),
|
|
7692
|
+
children: mode === "grid" ? /* @__PURE__ */ jsxRuntime.jsx(GridViewIcon__default.default, { "aria-hidden": true, style: { fontSize: 16 } }) : /* @__PURE__ */ jsxRuntime.jsx(ViewListIcon__default.default, { "aria-hidden": true, style: { fontSize: 16 } })
|
|
7693
|
+
},
|
|
7694
|
+
mode
|
|
7695
|
+
)) })
|
|
7696
|
+
] })
|
|
7697
|
+
] });
|
|
7698
|
+
}
|
|
7699
|
+
);
|
|
7700
|
+
SortBar.displayName = "SortBar";
|
|
6956
7701
|
var COLOR_MAP = {
|
|
6957
7702
|
"in-stock": "success",
|
|
6958
7703
|
"low-stock": "warning",
|
|
@@ -6974,7 +7719,7 @@ function getDefaultLabel(status, count) {
|
|
|
6974
7719
|
return "Dost\u0119pny na zam\xF3wienie";
|
|
6975
7720
|
}
|
|
6976
7721
|
}
|
|
6977
|
-
var
|
|
7722
|
+
var Root32 = styles.styled("div", {
|
|
6978
7723
|
shouldForwardProp: (p) => p !== "$color" && p !== "$size"
|
|
6979
7724
|
})(({ theme, $color, $size }) => {
|
|
6980
7725
|
const colorMap = {
|
|
@@ -7011,25 +7756,128 @@ var Dot2 = styles.styled("span", {
|
|
|
7011
7756
|
flexShrink: 0
|
|
7012
7757
|
};
|
|
7013
7758
|
});
|
|
7014
|
-
var StockStatus =
|
|
7759
|
+
var StockStatus = react.forwardRef(
|
|
7015
7760
|
({ status, count, label, showIcon = true, size = "md", ...props }, ref) => {
|
|
7016
7761
|
const color = COLOR_MAP[status];
|
|
7017
7762
|
const text = label ?? getDefaultLabel(status, count);
|
|
7018
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7763
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root32, { ref, $color: color, $size: size, role: "status", "aria-label": text, ...props, children: [
|
|
7019
7764
|
showIcon && /* @__PURE__ */ jsxRuntime.jsx(Dot2, { $color: color, "aria-hidden": "true" }),
|
|
7020
7765
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: text })
|
|
7021
7766
|
] });
|
|
7022
7767
|
}
|
|
7023
7768
|
);
|
|
7024
|
-
StockStatus.displayName = "StockStatus";
|
|
7025
|
-
var stockStatusValues = [
|
|
7026
|
-
"in-stock",
|
|
7027
|
-
"low-stock",
|
|
7028
|
-
"out-of-stock",
|
|
7029
|
-
"preorder",
|
|
7030
|
-
"backorder"
|
|
7031
|
-
];
|
|
7032
|
-
var
|
|
7769
|
+
StockStatus.displayName = "StockStatus";
|
|
7770
|
+
var stockStatusValues = [
|
|
7771
|
+
"in-stock",
|
|
7772
|
+
"low-stock",
|
|
7773
|
+
"out-of-stock",
|
|
7774
|
+
"preorder",
|
|
7775
|
+
"backorder"
|
|
7776
|
+
];
|
|
7777
|
+
var Root33 = styles.styled("div")({
|
|
7778
|
+
display: "flex",
|
|
7779
|
+
flexDirection: "column",
|
|
7780
|
+
gap: "0.5rem"
|
|
7781
|
+
});
|
|
7782
|
+
var Label4 = styles.styled("span")(({ theme }) => ({
|
|
7783
|
+
fontSize: "0.875rem",
|
|
7784
|
+
fontWeight: 600,
|
|
7785
|
+
color: theme.palette.text.primary,
|
|
7786
|
+
fontFamily: theme.typography.fontFamily
|
|
7787
|
+
}));
|
|
7788
|
+
var OptionsRow = styles.styled("div")({
|
|
7789
|
+
display: "flex",
|
|
7790
|
+
flexWrap: "wrap",
|
|
7791
|
+
gap: "0.5rem"
|
|
7792
|
+
});
|
|
7793
|
+
var OptionButton = styles.styled("button", {
|
|
7794
|
+
shouldForwardProp: (prop) => prop !== "$active" && prop !== "$mode"
|
|
7795
|
+
})(({ theme, $active, $mode }) => ({
|
|
7796
|
+
appearance: "none",
|
|
7797
|
+
cursor: "pointer",
|
|
7798
|
+
fontFamily: theme.typography.fontFamily,
|
|
7799
|
+
fontSize: "0.875rem",
|
|
7800
|
+
fontWeight: 500,
|
|
7801
|
+
transition: "border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease",
|
|
7802
|
+
"&:disabled": {
|
|
7803
|
+
opacity: 0.4,
|
|
7804
|
+
cursor: "not-allowed",
|
|
7805
|
+
textDecoration: $mode === "button" ? "line-through" : "none"
|
|
7806
|
+
},
|
|
7807
|
+
"&:focus-visible": {
|
|
7808
|
+
outline: `3px solid ${theme.palette.primary.main}`,
|
|
7809
|
+
outlineOffset: "2px"
|
|
7810
|
+
},
|
|
7811
|
+
...$mode === "swatch" ? {
|
|
7812
|
+
width: "2rem",
|
|
7813
|
+
height: "2rem",
|
|
7814
|
+
borderRadius: "50%",
|
|
7815
|
+
border: $active ? `3px solid ${theme.palette.primary.main}` : `2px solid ${theme.palette.divider}`,
|
|
7816
|
+
boxShadow: $active ? `0 0 0 2px ${theme.palette.background.paper}, 0 0 0 4px ${theme.palette.primary.main}` : "none",
|
|
7817
|
+
padding: 0,
|
|
7818
|
+
background: "currentColor"
|
|
7819
|
+
} : {
|
|
7820
|
+
padding: "0.375rem 0.875rem",
|
|
7821
|
+
border: $active ? `2px solid ${theme.palette.primary.main}` : `1px solid ${theme.palette.divider}`,
|
|
7822
|
+
borderRadius: theme.shape.borderRadius,
|
|
7823
|
+
backgroundColor: $active ? `${theme.palette.primary.main}14` : "transparent",
|
|
7824
|
+
color: $active ? theme.palette.primary.main : theme.palette.text.primary
|
|
7825
|
+
}
|
|
7826
|
+
}));
|
|
7827
|
+
var Select2 = styles.styled("select")(({ theme }) => ({
|
|
7828
|
+
padding: "0.5rem 2rem 0.5rem 0.75rem",
|
|
7829
|
+
border: `1px solid ${theme.palette.divider}`,
|
|
7830
|
+
borderRadius: theme.shape.borderRadius,
|
|
7831
|
+
backgroundColor: theme.palette.background.paper,
|
|
7832
|
+
color: theme.palette.text.primary,
|
|
7833
|
+
fontFamily: theme.typography.fontFamily,
|
|
7834
|
+
fontSize: "0.875rem",
|
|
7835
|
+
cursor: "pointer",
|
|
7836
|
+
appearance: "none",
|
|
7837
|
+
backgroundImage: `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%23666' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E")`,
|
|
7838
|
+
backgroundRepeat: "no-repeat",
|
|
7839
|
+
backgroundPosition: "right 0.75rem center",
|
|
7840
|
+
"&:focus": {
|
|
7841
|
+
outline: `3px solid ${theme.palette.primary.main}`,
|
|
7842
|
+
outlineOffset: "2px"
|
|
7843
|
+
}
|
|
7844
|
+
}));
|
|
7845
|
+
var VariantSelector = react.forwardRef(
|
|
7846
|
+
({ label, options, value, onChange, mode = "button", disabled, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root33, { ref, ...props, children: [
|
|
7847
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Label4, { children: [
|
|
7848
|
+
label,
|
|
7849
|
+
value && mode !== "swatch" && /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontWeight: 400, marginLeft: "0.375rem" }, children: options.find((o) => o.value === value)?.label })
|
|
7850
|
+
] }),
|
|
7851
|
+
mode === "dropdown" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
7852
|
+
Select2,
|
|
7853
|
+
{
|
|
7854
|
+
value: value ?? "",
|
|
7855
|
+
onChange: (e) => onChange?.(e.target.value),
|
|
7856
|
+
disabled,
|
|
7857
|
+
"aria-label": label,
|
|
7858
|
+
children: options.map((opt) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: opt.value, disabled: opt.disabled, children: opt.label }, opt.value))
|
|
7859
|
+
}
|
|
7860
|
+
) : /* @__PURE__ */ jsxRuntime.jsx(OptionsRow, { role: "radiogroup", "aria-label": label, children: options.map((opt) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
7861
|
+
OptionButton,
|
|
7862
|
+
{
|
|
7863
|
+
type: "button",
|
|
7864
|
+
$active: value === opt.value,
|
|
7865
|
+
$mode: mode,
|
|
7866
|
+
disabled: opt.disabled || disabled,
|
|
7867
|
+
style: mode === "swatch" ? { color: opt.color ?? "#ccc" } : void 0,
|
|
7868
|
+
title: opt.label,
|
|
7869
|
+
"aria-label": opt.label,
|
|
7870
|
+
"aria-pressed": value === opt.value,
|
|
7871
|
+
onClick: () => onChange?.(opt.value),
|
|
7872
|
+
children: mode === "button" && opt.label
|
|
7873
|
+
},
|
|
7874
|
+
opt.value
|
|
7875
|
+
)) })
|
|
7876
|
+
] })
|
|
7877
|
+
);
|
|
7878
|
+
VariantSelector.displayName = "VariantSelector";
|
|
7879
|
+
var variantSelectorModes = ["button", "swatch", "dropdown"];
|
|
7880
|
+
var Root34 = styles.styled("div")(({ theme }) => ({
|
|
7033
7881
|
borderBottom: `1px solid ${theme.palette.divider}`
|
|
7034
7882
|
}));
|
|
7035
7883
|
var Trigger2 = styles.styled("button")(({ theme }) => ({
|
|
@@ -7074,10 +7922,10 @@ var PanelInner = styles.styled("p")(({ theme }) => ({
|
|
|
7074
7922
|
fontSize: "0.9375rem",
|
|
7075
7923
|
lineHeight: 1.7
|
|
7076
7924
|
}));
|
|
7077
|
-
var FaqItem =
|
|
7925
|
+
var FaqItem = react.forwardRef(
|
|
7078
7926
|
({ item, defaultOpen = false, ...props }, ref) => {
|
|
7079
|
-
const [open, setOpen] =
|
|
7080
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7927
|
+
const [open, setOpen] = react.useState(defaultOpen);
|
|
7928
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root34, { ref, ...props, children: [
|
|
7081
7929
|
/* @__PURE__ */ jsxRuntime.jsxs(Trigger2, { type: "button", "aria-expanded": open, onClick: () => setOpen((prev) => !prev), children: [
|
|
7082
7930
|
item.question,
|
|
7083
7931
|
/* @__PURE__ */ jsxRuntime.jsx(ChevronIcon2, { $open: open, "aria-hidden": "true" })
|
|
@@ -7132,7 +7980,7 @@ var Description4 = styles.styled("p")(({ theme }) => ({
|
|
|
7132
7980
|
color: theme.palette.text.secondary,
|
|
7133
7981
|
lineHeight: 1.6
|
|
7134
7982
|
}));
|
|
7135
|
-
var FeatureItem2 =
|
|
7983
|
+
var FeatureItem2 = react.forwardRef(
|
|
7136
7984
|
({ feature, cardVariant = "default", layout = "card", ...props }, ref) => {
|
|
7137
7985
|
if (layout === "icon-left") {
|
|
7138
7986
|
return /* @__PURE__ */ jsxRuntime.jsxs(IconLeftRoot, { ref, ...props, children: [
|
|
@@ -7153,7 +8001,7 @@ var FeatureItem2 = React.forwardRef(
|
|
|
7153
8001
|
}
|
|
7154
8002
|
);
|
|
7155
8003
|
FeatureItem2.displayName = "FeatureItem";
|
|
7156
|
-
var
|
|
8004
|
+
var Root35 = styles.styled("div")({
|
|
7157
8005
|
display: "flex",
|
|
7158
8006
|
flexDirection: "column",
|
|
7159
8007
|
alignItems: "center",
|
|
@@ -7200,8 +8048,8 @@ var Description5 = styles.styled("p")(({ theme }) => ({
|
|
|
7200
8048
|
lineHeight: 1.6,
|
|
7201
8049
|
maxWidth: "18rem"
|
|
7202
8050
|
}));
|
|
7203
|
-
var ProcessStep =
|
|
7204
|
-
({ step, title, description, icon, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8051
|
+
var ProcessStep = react.forwardRef(
|
|
8052
|
+
({ step, title, description, icon, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root35, { ref, ...props, children: [
|
|
7205
8053
|
/* @__PURE__ */ jsxRuntime.jsx(StepBadge, { "aria-hidden": "true", children: icon ? /* @__PURE__ */ jsxRuntime.jsx(IconWrapper2, { children: icon }) : /* @__PURE__ */ jsxRuntime.jsx(StepNumber, { children: step }) }),
|
|
7206
8054
|
/* @__PURE__ */ jsxRuntime.jsx(Title3, { children: title }),
|
|
7207
8055
|
description && /* @__PURE__ */ jsxRuntime.jsx(Description5, { children: description })
|
|
@@ -7284,7 +8132,7 @@ function renderLogo(logo, monochrome, logoHeight) {
|
|
|
7284
8132
|
}
|
|
7285
8133
|
);
|
|
7286
8134
|
}
|
|
7287
|
-
var LogoTile =
|
|
8135
|
+
var LogoTile = react.forwardRef(
|
|
7288
8136
|
({ logo, variant = "plain", monochrome = true, logoHeight = 40, ...props }, ref) => {
|
|
7289
8137
|
const content = renderLogo(logo, monochrome, logoHeight);
|
|
7290
8138
|
if (logo.href) {
|
|
@@ -7387,7 +8235,7 @@ var Dot3 = styles.styled("span", {
|
|
|
7387
8235
|
}
|
|
7388
8236
|
}
|
|
7389
8237
|
}));
|
|
7390
|
-
var
|
|
8238
|
+
var Content4 = styles.styled("div")({ flex: 1, minWidth: 0, paddingTop: "0.0625rem" });
|
|
7391
8239
|
var TitleRow = styles.styled("div")({
|
|
7392
8240
|
display: "flex",
|
|
7393
8241
|
alignItems: "baseline",
|
|
@@ -7432,7 +8280,7 @@ function TimelineItemComponent({
|
|
|
7432
8280
|
const hasIcon = Boolean(item.icon);
|
|
7433
8281
|
return /* @__PURE__ */ jsxRuntime.jsxs(ItemRow, { $compact: compact, $last: last, children: [
|
|
7434
8282
|
/* @__PURE__ */ jsxRuntime.jsx(DotCol, { $last: last, children: /* @__PURE__ */ jsxRuntime.jsx(Dot3, { $status: status, $hasIcon: hasIcon, children: item.icon ?? /* @__PURE__ */ jsxRuntime.jsx(StatusIcon, { status }) }) }),
|
|
7435
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
8283
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Content4, { children: [
|
|
7436
8284
|
/* @__PURE__ */ jsxRuntime.jsxs(TitleRow, { children: [
|
|
7437
8285
|
/* @__PURE__ */ jsxRuntime.jsx(Title4, { $compact: compact, children: item.title }),
|
|
7438
8286
|
item.date && /* @__PURE__ */ jsxRuntime.jsx(Date2, { dateTime: item.date, children: item.date })
|
|
@@ -7441,7 +8289,7 @@ function TimelineItemComponent({
|
|
|
7441
8289
|
] })
|
|
7442
8290
|
] });
|
|
7443
8291
|
}
|
|
7444
|
-
var Timeline =
|
|
8292
|
+
var Timeline = react.forwardRef(
|
|
7445
8293
|
({ items, variant = "default", align: _align = "left", ...props }, ref) => {
|
|
7446
8294
|
const compact = variant === "compact";
|
|
7447
8295
|
return /* @__PURE__ */ jsxRuntime.jsx(List, { ref, "aria-label": "O\u015B czasu", ...props, children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -7463,7 +8311,7 @@ var timelineItemStatuses = [
|
|
|
7463
8311
|
"pending",
|
|
7464
8312
|
"error"
|
|
7465
8313
|
];
|
|
7466
|
-
var
|
|
8314
|
+
var Root36 = styles.styled("div")({
|
|
7467
8315
|
position: "relative",
|
|
7468
8316
|
width: "100%",
|
|
7469
8317
|
overflow: "hidden",
|
|
@@ -7547,23 +8395,23 @@ function Carousel({
|
|
|
7547
8395
|
loop = true,
|
|
7548
8396
|
className
|
|
7549
8397
|
}) {
|
|
7550
|
-
const [index, setIndex] =
|
|
7551
|
-
const timerRef =
|
|
8398
|
+
const [index, setIndex] = react.useState(0);
|
|
8399
|
+
const timerRef = react.useRef(null);
|
|
7552
8400
|
const count = slides.length;
|
|
7553
|
-
const prev =
|
|
8401
|
+
const prev = react.useCallback(() => {
|
|
7554
8402
|
setIndex((i) => loop ? (i - 1 + count) % count : Math.max(0, i - 1));
|
|
7555
8403
|
}, [count, loop]);
|
|
7556
|
-
const next =
|
|
8404
|
+
const next = react.useCallback(() => {
|
|
7557
8405
|
setIndex((i) => loop ? (i + 1) % count : Math.min(count - 1, i + 1));
|
|
7558
8406
|
}, [count, loop]);
|
|
7559
|
-
|
|
8407
|
+
react.useEffect(() => {
|
|
7560
8408
|
if (!autoPlay) return;
|
|
7561
8409
|
timerRef.current = setInterval(next, autoPlayInterval);
|
|
7562
8410
|
return () => {
|
|
7563
8411
|
if (timerRef.current) clearInterval(timerRef.current);
|
|
7564
8412
|
};
|
|
7565
8413
|
}, [autoPlay, autoPlayInterval, next]);
|
|
7566
|
-
|
|
8414
|
+
react.useEffect(() => {
|
|
7567
8415
|
const handleKey = (e) => {
|
|
7568
8416
|
if (e.key === "ArrowLeft") prev();
|
|
7569
8417
|
if (e.key === "ArrowRight") next();
|
|
@@ -7573,7 +8421,7 @@ function Carousel({
|
|
|
7573
8421
|
}, [prev, next]);
|
|
7574
8422
|
if (!count) return null;
|
|
7575
8423
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className, children: [
|
|
7576
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
8424
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Root36, { "aria-roledescription": "carousel", children: [
|
|
7577
8425
|
/* @__PURE__ */ jsxRuntime.jsx(Track4, { $index: index, "aria-live": "polite", children: slides.map((slide, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
7578
8426
|
Slide,
|
|
7579
8427
|
{
|
|
@@ -7684,8 +8532,8 @@ function VideoPlayer({
|
|
|
7684
8532
|
}
|
|
7685
8533
|
) }) });
|
|
7686
8534
|
}
|
|
7687
|
-
var fadeIn = react.keyframes`from { opacity: 0; } to { opacity: 1; }`;
|
|
7688
|
-
var zoomIn = react.keyframes`from { opacity: 0; transform: scale(0.92); } to { opacity: 1; transform: scale(1); }`;
|
|
8535
|
+
var fadeIn = react$1.keyframes`from { opacity: 0; } to { opacity: 1; }`;
|
|
8536
|
+
var zoomIn = react$1.keyframes`from { opacity: 0; transform: scale(0.92); } to { opacity: 1; transform: scale(1); }`;
|
|
7689
8537
|
var Grid = styles.styled("div", {
|
|
7690
8538
|
shouldForwardProp: (prop) => !["$columns", "$gap"].includes(prop)
|
|
7691
8539
|
})(({ $columns, $gap }) => ({
|
|
@@ -7828,19 +8676,19 @@ var Counter = styles.styled("span")({
|
|
|
7828
8676
|
pointerEvents: "none"
|
|
7829
8677
|
});
|
|
7830
8678
|
function Lightbox({ images, columns = 3, gap = 8, className }) {
|
|
7831
|
-
const [activeIndex, setActiveIndex] =
|
|
8679
|
+
const [activeIndex, setActiveIndex] = react.useState(null);
|
|
7832
8680
|
const isOpen = activeIndex !== null;
|
|
7833
8681
|
const count = images.length;
|
|
7834
|
-
const close =
|
|
7835
|
-
const prev =
|
|
8682
|
+
const close = react.useCallback(() => setActiveIndex(null), []);
|
|
8683
|
+
const prev = react.useCallback(
|
|
7836
8684
|
() => setActiveIndex((i) => i === null ? null : (i - 1 + count) % count),
|
|
7837
8685
|
[count]
|
|
7838
8686
|
);
|
|
7839
|
-
const next =
|
|
8687
|
+
const next = react.useCallback(
|
|
7840
8688
|
() => setActiveIndex((i) => i === null ? null : (i + 1) % count),
|
|
7841
8689
|
[count]
|
|
7842
8690
|
);
|
|
7843
|
-
|
|
8691
|
+
react.useEffect(() => {
|
|
7844
8692
|
if (!isOpen) return;
|
|
7845
8693
|
const handler = (e) => {
|
|
7846
8694
|
if (e.key === "Escape") close();
|
|
@@ -7944,7 +8792,7 @@ var Current2 = styles.styled("span")(({ theme }) => ({
|
|
|
7944
8792
|
var Separator2 = styles.styled("span")(({ theme }) => ({
|
|
7945
8793
|
color: theme.palette.text.disabled
|
|
7946
8794
|
}));
|
|
7947
|
-
var Breadcrumbs =
|
|
8795
|
+
var Breadcrumbs = react.forwardRef(
|
|
7948
8796
|
({ items, separator = "/", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(Nav, { ref, "aria-label": "\u015Acie\u017Cka nawigacji", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(List2, { children: items.map((item, index) => {
|
|
7949
8797
|
const isLast = index === items.length - 1;
|
|
7950
8798
|
return /* @__PURE__ */ jsxRuntime.jsxs("li", { children: [
|
|
@@ -7957,7 +8805,7 @@ var Breadcrumbs = React.forwardRef(
|
|
|
7957
8805
|
}) }) })
|
|
7958
8806
|
);
|
|
7959
8807
|
Breadcrumbs.displayName = "Breadcrumbs";
|
|
7960
|
-
var
|
|
8808
|
+
var sizeMap6 = {
|
|
7961
8809
|
sm: { minWidth: "1.75rem", height: "1.75rem", fontSize: "0.75rem" },
|
|
7962
8810
|
md: { minWidth: "2rem", height: "2rem", fontSize: "0.875rem" },
|
|
7963
8811
|
lg: { minWidth: "2.5rem", height: "2.5rem", fontSize: "1rem" }
|
|
@@ -7986,7 +8834,7 @@ var StyledButton2 = styles.styled("button")(({ theme, $isActive, $size }) => ({
|
|
|
7986
8834
|
lineHeight: 1,
|
|
7987
8835
|
padding: "0 0.25rem",
|
|
7988
8836
|
transition: "background-color 150ms ease",
|
|
7989
|
-
...
|
|
8837
|
+
...sizeMap6[$size],
|
|
7990
8838
|
...$isActive ? activeStyles(theme) : idleStyles(theme),
|
|
7991
8839
|
"&:focus-visible": {
|
|
7992
8840
|
outline: `3px solid ${theme.palette.primary.main}`,
|
|
@@ -7998,7 +8846,7 @@ var StyledButton2 = styles.styled("button")(({ theme, $isActive, $size }) => ({
|
|
|
7998
8846
|
pointerEvents: "none"
|
|
7999
8847
|
}
|
|
8000
8848
|
}));
|
|
8001
|
-
var PaginationButton =
|
|
8849
|
+
var PaginationButton = react.forwardRef(
|
|
8002
8850
|
({ onClick, isActive = false, disabled = false, size = "md", children, "aria-label": ariaLabel }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
8003
8851
|
StyledButton2,
|
|
8004
8852
|
{
|
|
@@ -8015,7 +8863,7 @@ var PaginationButton = React.forwardRef(
|
|
|
8015
8863
|
)
|
|
8016
8864
|
);
|
|
8017
8865
|
PaginationButton.displayName = "PaginationButton";
|
|
8018
|
-
var
|
|
8866
|
+
var sizeMap7 = {
|
|
8019
8867
|
sm: { minWidth: "1.75rem", height: "1.75rem", fontSize: "0.75rem" },
|
|
8020
8868
|
md: { minWidth: "2rem", height: "2rem", fontSize: "0.875rem" },
|
|
8021
8869
|
lg: { minWidth: "2.5rem", height: "2.5rem", fontSize: "1rem" }
|
|
@@ -8026,7 +8874,7 @@ var StyledEllipsis = styles.styled("span")(({ theme, $size }) => ({
|
|
|
8026
8874
|
justifyContent: "center",
|
|
8027
8875
|
color: theme.palette.text.secondary,
|
|
8028
8876
|
userSelect: "none",
|
|
8029
|
-
...
|
|
8877
|
+
...sizeMap7[$size]
|
|
8030
8878
|
}));
|
|
8031
8879
|
var PaginationEllipsis = ({ size = "md" }) => /* @__PURE__ */ jsxRuntime.jsx(StyledEllipsis, { $size: size, "aria-hidden": "true", children: "\u2026" });
|
|
8032
8880
|
PaginationEllipsis.displayName = "PaginationEllipsis";
|
|
@@ -8136,7 +8984,7 @@ var PaginationBar = ({
|
|
|
8136
8984
|
] });
|
|
8137
8985
|
};
|
|
8138
8986
|
PaginationBar.displayName = "PaginationBar";
|
|
8139
|
-
var
|
|
8987
|
+
var Root37 = styles.styled("div", {
|
|
8140
8988
|
shouldForwardProp: (p) => p !== "$variant"
|
|
8141
8989
|
})(({ theme, $variant }) => ({
|
|
8142
8990
|
width: "100%",
|
|
@@ -8222,7 +9070,7 @@ var PanelContent = styles.styled("div")(({ theme }) => ({
|
|
|
8222
9070
|
fontSize: "0.9375rem",
|
|
8223
9071
|
lineHeight: 1.7
|
|
8224
9072
|
}));
|
|
8225
|
-
var Accordion =
|
|
9073
|
+
var Accordion = react.forwardRef(
|
|
8226
9074
|
({
|
|
8227
9075
|
items,
|
|
8228
9076
|
defaultOpenKeys = [],
|
|
@@ -8232,7 +9080,7 @@ var Accordion = React.forwardRef(
|
|
|
8232
9080
|
variant = "default",
|
|
8233
9081
|
...props
|
|
8234
9082
|
}, ref) => {
|
|
8235
|
-
const [internalKeys, setInternalKeys] =
|
|
9083
|
+
const [internalKeys, setInternalKeys] = react.useState(defaultOpenKeys);
|
|
8236
9084
|
const openKeys = controlledKeys ?? internalKeys;
|
|
8237
9085
|
const toggle = (key, disabled) => {
|
|
8238
9086
|
if (disabled) return;
|
|
@@ -8246,7 +9094,7 @@ var Accordion = React.forwardRef(
|
|
|
8246
9094
|
if (controlledKeys === void 0) setInternalKeys(next);
|
|
8247
9095
|
onChange?.(next);
|
|
8248
9096
|
};
|
|
8249
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9097
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root37, { ref, $variant: variant, ...props, children: items.map((item) => {
|
|
8250
9098
|
const isOpen = openKeys.includes(item.key);
|
|
8251
9099
|
const panelId = `accordion-panel-${item.key}`;
|
|
8252
9100
|
const triggerId = `accordion-trigger-${item.key}`;
|
|
@@ -8275,8 +9123,76 @@ var Accordion = React.forwardRef(
|
|
|
8275
9123
|
);
|
|
8276
9124
|
Accordion.displayName = "Accordion";
|
|
8277
9125
|
var accordionVariants = ["default", "bordered", "separated"];
|
|
8278
|
-
var
|
|
8279
|
-
|
|
9126
|
+
var SEVERITY_COLORS = {
|
|
9127
|
+
info: { bg: "rgba(25,118,210,0.08)", color: "#1565c0", border: "rgba(25,118,210,0.3)" },
|
|
9128
|
+
success: { bg: "rgba(34,197,94,0.1)", color: "#15803d", border: "rgba(34,197,94,0.35)" },
|
|
9129
|
+
warning: { bg: "rgba(245,158,11,0.1)", color: "#b45309", border: "rgba(245,158,11,0.35)" },
|
|
9130
|
+
error: { bg: "rgba(211,47,47,0.08)", color: "#c62828", border: "rgba(211,47,47,0.3)" }
|
|
9131
|
+
};
|
|
9132
|
+
var ICONS = {
|
|
9133
|
+
info: /* @__PURE__ */ jsxRuntime.jsx(InfoOutlinedIcon__default.default, { "aria-hidden": true, style: { fontSize: 20 } }),
|
|
9134
|
+
success: /* @__PURE__ */ jsxRuntime.jsx(CheckCircleOutlinedIcon__default.default, { "aria-hidden": true, style: { fontSize: 20 } }),
|
|
9135
|
+
warning: /* @__PURE__ */ jsxRuntime.jsx(WarningAmberOutlinedIcon__default.default, { "aria-hidden": true, style: { fontSize: 20 } }),
|
|
9136
|
+
error: /* @__PURE__ */ jsxRuntime.jsx(ErrorOutlineOutlinedIcon__default.default, { "aria-hidden": true, style: { fontSize: 20 } })
|
|
9137
|
+
};
|
|
9138
|
+
var Root38 = styles.styled("div", {
|
|
9139
|
+
shouldForwardProp: (prop) => prop !== "$severity"
|
|
9140
|
+
})(({ theme, $severity }) => {
|
|
9141
|
+
const c = SEVERITY_COLORS[$severity];
|
|
9142
|
+
return {
|
|
9143
|
+
display: "flex",
|
|
9144
|
+
gap: "0.75rem",
|
|
9145
|
+
padding: "0.875rem 1rem",
|
|
9146
|
+
borderRadius: theme.shape.borderRadius,
|
|
9147
|
+
border: `1px solid ${c.border}`,
|
|
9148
|
+
backgroundColor: c.bg,
|
|
9149
|
+
color: c.color,
|
|
9150
|
+
fontFamily: theme.typography.fontFamily,
|
|
9151
|
+
fontSize: "0.9375rem"
|
|
9152
|
+
};
|
|
9153
|
+
});
|
|
9154
|
+
var IconSlot2 = styles.styled("span")({
|
|
9155
|
+
flexShrink: 0,
|
|
9156
|
+
display: "flex",
|
|
9157
|
+
paddingTop: "0.0625rem"
|
|
9158
|
+
});
|
|
9159
|
+
var Body = styles.styled("div")({ flex: 1 });
|
|
9160
|
+
var Title5 = styles.styled("div")({
|
|
9161
|
+
fontWeight: 700,
|
|
9162
|
+
marginBottom: "0.25rem"
|
|
9163
|
+
});
|
|
9164
|
+
var CloseButton2 = styles.styled("button")(({ theme }) => ({
|
|
9165
|
+
appearance: "none",
|
|
9166
|
+
border: "none",
|
|
9167
|
+
background: "transparent",
|
|
9168
|
+
cursor: "pointer",
|
|
9169
|
+
display: "flex",
|
|
9170
|
+
alignItems: "center",
|
|
9171
|
+
padding: "0.125rem",
|
|
9172
|
+
color: "inherit",
|
|
9173
|
+
opacity: 0.6,
|
|
9174
|
+
borderRadius: "0.25rem",
|
|
9175
|
+
flexShrink: 0,
|
|
9176
|
+
"&:hover": { opacity: 1 },
|
|
9177
|
+
"&:focus-visible": {
|
|
9178
|
+
outline: `3px solid ${theme.palette.primary.main}`,
|
|
9179
|
+
outlineOffset: "2px"
|
|
9180
|
+
}
|
|
9181
|
+
}));
|
|
9182
|
+
var Alert = react.forwardRef(
|
|
9183
|
+
({ severity = "info", title, children, onClose, icon, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root38, { ref, role: "alert", $severity: severity, ...props, children: [
|
|
9184
|
+
/* @__PURE__ */ jsxRuntime.jsx(IconSlot2, { children: icon ?? ICONS[severity] }),
|
|
9185
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Body, { children: [
|
|
9186
|
+
title && /* @__PURE__ */ jsxRuntime.jsx(Title5, { children: title }),
|
|
9187
|
+
children
|
|
9188
|
+
] }),
|
|
9189
|
+
onClose && /* @__PURE__ */ jsxRuntime.jsx(CloseButton2, { type: "button", onClick: onClose, "aria-label": "Zamknij", children: /* @__PURE__ */ jsxRuntime.jsx(CloseIcon__default.default, { "aria-hidden": true, style: { fontSize: 16 } }) })
|
|
9190
|
+
] })
|
|
9191
|
+
);
|
|
9192
|
+
Alert.displayName = "Alert";
|
|
9193
|
+
var alertSeverities = ["info", "success", "warning", "error"];
|
|
9194
|
+
var fadeIn2 = react$1.keyframes`from{opacity:0;transform:translateY(0.5rem)}to{opacity:1;transform:translateY(0)}`;
|
|
9195
|
+
var fadeOut = react$1.keyframes`from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(0.5rem)}`;
|
|
8280
9196
|
var POSITION_MAP = {
|
|
8281
9197
|
"bottom-right": { right: "1.5rem", bottom: "1.5rem" },
|
|
8282
9198
|
"bottom-left": { left: "1.5rem", bottom: "1.5rem" },
|
|
@@ -8336,9 +9252,9 @@ function BackToTop({
|
|
|
8336
9252
|
label = "Wr\xF3\u0107 na g\xF3r\u0119",
|
|
8337
9253
|
scrollTarget
|
|
8338
9254
|
}) {
|
|
8339
|
-
const [visible, setVisible] =
|
|
8340
|
-
const getTarget =
|
|
8341
|
-
|
|
9255
|
+
const [visible, setVisible] = react.useState(false);
|
|
9256
|
+
const getTarget = react.useCallback(() => scrollTarget ? scrollTarget() : window, [scrollTarget]);
|
|
9257
|
+
react.useEffect(() => {
|
|
8342
9258
|
const target = getTarget();
|
|
8343
9259
|
const onScroll = () => {
|
|
8344
9260
|
const scrollY = target instanceof Window ? target.scrollY : target.scrollTop;
|
|
@@ -8436,12 +9352,12 @@ function clampToViewport(x, y, el) {
|
|
|
8436
9352
|
y: Math.min(y, window.innerHeight - h - MENU_MARGIN)
|
|
8437
9353
|
};
|
|
8438
9354
|
}
|
|
8439
|
-
var ContextMenu =
|
|
9355
|
+
var ContextMenu = react.forwardRef(
|
|
8440
9356
|
({ items, children, disabled = false, ...props }, ref) => {
|
|
8441
|
-
const [pos, setPos] =
|
|
8442
|
-
const menuRef =
|
|
8443
|
-
const close =
|
|
8444
|
-
const handleContextMenu =
|
|
9357
|
+
const [pos, setPos] = react.useState(null);
|
|
9358
|
+
const menuRef = react.useRef(null);
|
|
9359
|
+
const close = react.useCallback(() => setPos(null), []);
|
|
9360
|
+
const handleContextMenu = react.useCallback(
|
|
8445
9361
|
(e) => {
|
|
8446
9362
|
if (disabled) return;
|
|
8447
9363
|
e.preventDefault();
|
|
@@ -8449,7 +9365,7 @@ var ContextMenu = React.forwardRef(
|
|
|
8449
9365
|
},
|
|
8450
9366
|
[disabled]
|
|
8451
9367
|
);
|
|
8452
|
-
|
|
9368
|
+
react.useEffect(() => {
|
|
8453
9369
|
if (!pos) return;
|
|
8454
9370
|
if (menuRef.current) {
|
|
8455
9371
|
const clamped = clampToViewport(pos.x, pos.y, menuRef.current);
|
|
@@ -8514,6 +9430,44 @@ var ContextMenu = React.forwardRef(
|
|
|
8514
9430
|
}
|
|
8515
9431
|
);
|
|
8516
9432
|
ContextMenu.displayName = "ContextMenu";
|
|
9433
|
+
var Root39 = styles.styled("div")(({ theme }) => ({
|
|
9434
|
+
display: "flex",
|
|
9435
|
+
flexDirection: "column",
|
|
9436
|
+
alignItems: "center",
|
|
9437
|
+
justifyContent: "center",
|
|
9438
|
+
gap: "1rem",
|
|
9439
|
+
padding: "3rem 1.5rem",
|
|
9440
|
+
textAlign: "center",
|
|
9441
|
+
fontFamily: theme.typography.fontFamily
|
|
9442
|
+
}));
|
|
9443
|
+
var IconWrap3 = styles.styled("div")(({ theme }) => ({
|
|
9444
|
+
color: theme.palette.text.disabled,
|
|
9445
|
+
display: "flex",
|
|
9446
|
+
"& svg": { fontSize: "3.5rem" }
|
|
9447
|
+
}));
|
|
9448
|
+
var Title6 = styles.styled("h3")(({ theme }) => ({
|
|
9449
|
+
margin: 0,
|
|
9450
|
+
fontSize: "1.125rem",
|
|
9451
|
+
fontWeight: 700,
|
|
9452
|
+
color: theme.palette.text.primary
|
|
9453
|
+
}));
|
|
9454
|
+
var Description7 = styles.styled("p")(({ theme }) => ({
|
|
9455
|
+
margin: 0,
|
|
9456
|
+
fontSize: "0.9375rem",
|
|
9457
|
+
color: theme.palette.text.secondary,
|
|
9458
|
+
maxWidth: "28rem"
|
|
9459
|
+
}));
|
|
9460
|
+
var EmptyState = react.forwardRef(
|
|
9461
|
+
({ icon, title, description, action, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root39, { ref, ...props, children: [
|
|
9462
|
+
/* @__PURE__ */ jsxRuntime.jsx(IconWrap3, { "aria-hidden": true, children: icon ?? /* @__PURE__ */ jsxRuntime.jsx(InboxOutlinedIcon__default.default, {}) }),
|
|
9463
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
9464
|
+
/* @__PURE__ */ jsxRuntime.jsx(Title6, { children: title }),
|
|
9465
|
+
description && /* @__PURE__ */ jsxRuntime.jsx(Description7, { style: { marginTop: "0.5rem" }, children: description })
|
|
9466
|
+
] }),
|
|
9467
|
+
action && /* @__PURE__ */ jsxRuntime.jsx("div", { children: action })
|
|
9468
|
+
] })
|
|
9469
|
+
);
|
|
9470
|
+
EmptyState.displayName = "EmptyState";
|
|
8517
9471
|
var PADDING = {
|
|
8518
9472
|
sm: "0.5rem 0.75rem",
|
|
8519
9473
|
md: "0.75rem 1rem",
|
|
@@ -8524,7 +9478,7 @@ var FONT_SIZE2 = {
|
|
|
8524
9478
|
md: "0.9375rem",
|
|
8525
9479
|
lg: "1rem"
|
|
8526
9480
|
};
|
|
8527
|
-
var
|
|
9481
|
+
var Root40 = styles.styled("ul", {
|
|
8528
9482
|
shouldForwardProp: (p) => p !== "$variant"
|
|
8529
9483
|
})(({ theme, $variant }) => ({
|
|
8530
9484
|
listStyle: "none",
|
|
@@ -8616,10 +9570,10 @@ var SuffixWrap = styles.styled("span")({
|
|
|
8616
9570
|
display: "flex",
|
|
8617
9571
|
alignItems: "center"
|
|
8618
9572
|
});
|
|
8619
|
-
var List3 =
|
|
9573
|
+
var List3 = react.forwardRef(
|
|
8620
9574
|
({ items, size = "md", variant = "default", dividers = true, ...props }, ref) => {
|
|
8621
9575
|
const effectiveVariant = !dividers && variant === "default" ? "default" : variant;
|
|
8622
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9576
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root40, { ref, $variant: effectiveVariant, role: "list", ...props, children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8623
9577
|
Item2,
|
|
8624
9578
|
{
|
|
8625
9579
|
role: "listitem",
|
|
@@ -8658,7 +9612,7 @@ var speedDuration = {
|
|
|
8658
9612
|
normal: "20s",
|
|
8659
9613
|
fast: "10s"
|
|
8660
9614
|
};
|
|
8661
|
-
var
|
|
9615
|
+
var Root41 = styles.styled("div")({
|
|
8662
9616
|
overflow: "hidden",
|
|
8663
9617
|
width: "100%",
|
|
8664
9618
|
userSelect: "none"
|
|
@@ -8682,21 +9636,21 @@ var ItemWrap = styles.styled("div", {
|
|
|
8682
9636
|
flexShrink: 0,
|
|
8683
9637
|
gap: $gap
|
|
8684
9638
|
}));
|
|
8685
|
-
var Marquee =
|
|
9639
|
+
var Marquee = react.forwardRef(
|
|
8686
9640
|
({ children, direction = "left", speed = "normal", pauseOnHover = true, gap = "2rem", ...props }, ref) => {
|
|
8687
9641
|
const gapValue = typeof gap === "number" ? `${gap}px` : gap;
|
|
8688
9642
|
const content = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
8689
9643
|
/* @__PURE__ */ jsxRuntime.jsx(ItemWrap, { $gap: gapValue, "aria-hidden": "false", children }),
|
|
8690
9644
|
/* @__PURE__ */ jsxRuntime.jsx(ItemWrap, { $gap: gapValue, "aria-hidden": "true", children })
|
|
8691
9645
|
] });
|
|
8692
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9646
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root41, { ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(Track5, { $direction: direction, $speed: speed, $pauseOnHover: pauseOnHover, $gap: gapValue, children: content }) });
|
|
8693
9647
|
}
|
|
8694
9648
|
);
|
|
8695
9649
|
Marquee.displayName = "Marquee";
|
|
8696
9650
|
var marqueeDirections = ["left", "right"];
|
|
8697
9651
|
var marqueeSpeeds = ["slow", "normal", "fast"];
|
|
8698
|
-
var fadeIn3 = react.keyframes`from { opacity: 0; } to { opacity: 1; }`;
|
|
8699
|
-
var slideUp = react.keyframes`from { opacity: 0; transform: translateY(1rem) scale(0.98); } to { opacity: 1; transform: translateY(0) scale(1); }`;
|
|
9652
|
+
var fadeIn3 = react$1.keyframes`from { opacity: 0; } to { opacity: 1; }`;
|
|
9653
|
+
var slideUp = react$1.keyframes`from { opacity: 0; transform: translateY(1rem) scale(0.98); } to { opacity: 1; transform: translateY(0) scale(1); }`;
|
|
8700
9654
|
var SIZE_MAP2 = {
|
|
8701
9655
|
sm: "24rem",
|
|
8702
9656
|
md: "32rem",
|
|
@@ -8743,7 +9697,7 @@ var Header = styles.styled("div")(({ theme }) => ({
|
|
|
8743
9697
|
borderBottom: `1px solid ${theme.palette.divider}`,
|
|
8744
9698
|
flexShrink: 0
|
|
8745
9699
|
}));
|
|
8746
|
-
var
|
|
9700
|
+
var Title7 = styles.styled("h2")(({ theme }) => ({
|
|
8747
9701
|
margin: 0,
|
|
8748
9702
|
fontFamily: theme.typography.fontFamily,
|
|
8749
9703
|
fontSize: "1.125rem",
|
|
@@ -8751,7 +9705,7 @@ var Title5 = styles.styled("h2")(({ theme }) => ({
|
|
|
8751
9705
|
color: theme.palette.text.primary,
|
|
8752
9706
|
lineHeight: 1.4
|
|
8753
9707
|
}));
|
|
8754
|
-
var
|
|
9708
|
+
var CloseButton3 = styles.styled("button")(({ theme }) => ({
|
|
8755
9709
|
appearance: "none",
|
|
8756
9710
|
border: "none",
|
|
8757
9711
|
background: "none",
|
|
@@ -8774,14 +9728,14 @@ var CloseButton2 = styles.styled("button")(({ theme }) => ({
|
|
|
8774
9728
|
outlineOffset: "2px"
|
|
8775
9729
|
}
|
|
8776
9730
|
}));
|
|
8777
|
-
var
|
|
9731
|
+
var Body2 = styles.styled("div")(({ theme }) => ({
|
|
8778
9732
|
padding: "1.5rem",
|
|
8779
9733
|
overflowY: "auto",
|
|
8780
9734
|
flex: 1,
|
|
8781
9735
|
fontFamily: theme.typography.fontFamily,
|
|
8782
9736
|
color: theme.palette.text.primary
|
|
8783
9737
|
}));
|
|
8784
|
-
var
|
|
9738
|
+
var Footer4 = styles.styled("div")(({ theme }) => ({
|
|
8785
9739
|
padding: "1rem 1.5rem",
|
|
8786
9740
|
borderTop: `1px solid ${theme.palette.divider}`,
|
|
8787
9741
|
display: "flex",
|
|
@@ -8799,8 +9753,8 @@ function Modal({
|
|
|
8799
9753
|
closeOnBackdrop = true,
|
|
8800
9754
|
hideCloseButton = false
|
|
8801
9755
|
}) {
|
|
8802
|
-
const dialogRef =
|
|
8803
|
-
|
|
9756
|
+
const dialogRef = react.useRef(null);
|
|
9757
|
+
react.useEffect(() => {
|
|
8804
9758
|
if (!open) return;
|
|
8805
9759
|
const prev = document.body.style.overflow;
|
|
8806
9760
|
document.body.style.overflow = "hidden";
|
|
@@ -8808,7 +9762,7 @@ function Modal({
|
|
|
8808
9762
|
document.body.style.overflow = prev;
|
|
8809
9763
|
};
|
|
8810
9764
|
}, [open]);
|
|
8811
|
-
|
|
9765
|
+
react.useEffect(() => {
|
|
8812
9766
|
if (!open) return;
|
|
8813
9767
|
const handleKey = (e) => {
|
|
8814
9768
|
if (e.key === "Escape") onClose();
|
|
@@ -8816,7 +9770,7 @@ function Modal({
|
|
|
8816
9770
|
document.addEventListener("keydown", handleKey);
|
|
8817
9771
|
return () => document.removeEventListener("keydown", handleKey);
|
|
8818
9772
|
}, [open, onClose]);
|
|
8819
|
-
|
|
9773
|
+
react.useEffect(() => {
|
|
8820
9774
|
if (open) dialogRef.current?.focus();
|
|
8821
9775
|
}, [open]);
|
|
8822
9776
|
if (!open) return null;
|
|
@@ -8833,11 +9787,11 @@ function Modal({
|
|
|
8833
9787
|
onClick: (e) => e.stopPropagation(),
|
|
8834
9788
|
children: [
|
|
8835
9789
|
(title || !hideCloseButton) && /* @__PURE__ */ jsxRuntime.jsxs(Header, { children: [
|
|
8836
|
-
title ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
8837
|
-
!hideCloseButton && /* @__PURE__ */ jsxRuntime.jsx(
|
|
9790
|
+
title ? /* @__PURE__ */ jsxRuntime.jsx(Title7, { id: "modal-title", children: title }) : /* @__PURE__ */ jsxRuntime.jsx("span", {}),
|
|
9791
|
+
!hideCloseButton && /* @__PURE__ */ jsxRuntime.jsx(CloseButton3, { "aria-label": "Zamknij", onClick: onClose, children: /* @__PURE__ */ jsxRuntime.jsx(CloseIcon__default.default, { "aria-hidden": true, style: { fontSize: 16 } }) })
|
|
8838
9792
|
] }),
|
|
8839
|
-
children && /* @__PURE__ */ jsxRuntime.jsx(
|
|
8840
|
-
footer && /* @__PURE__ */ jsxRuntime.jsx(
|
|
9793
|
+
children && /* @__PURE__ */ jsxRuntime.jsx(Body2, { children }),
|
|
9794
|
+
footer && /* @__PURE__ */ jsxRuntime.jsx(Footer4, { children: footer })
|
|
8841
9795
|
]
|
|
8842
9796
|
}
|
|
8843
9797
|
) }),
|
|
@@ -8845,7 +9799,7 @@ function Modal({
|
|
|
8845
9799
|
);
|
|
8846
9800
|
}
|
|
8847
9801
|
var modalSizes = ["sm", "md", "lg", "xl", "full"];
|
|
8848
|
-
var
|
|
9802
|
+
var Root42 = styles.styled("div")({ width: "100%" });
|
|
8849
9803
|
var TabList = styles.styled("div", {
|
|
8850
9804
|
shouldForwardProp: (prop) => prop !== "$variant"
|
|
8851
9805
|
})(({ theme, $variant }) => ({
|
|
@@ -8916,16 +9870,16 @@ var Panel2 = styles.styled("div")(({ theme }) => ({
|
|
|
8916
9870
|
fontFamily: theme.typography.fontFamily,
|
|
8917
9871
|
color: theme.palette.text.primary
|
|
8918
9872
|
}));
|
|
8919
|
-
var Tabs =
|
|
9873
|
+
var Tabs = react.forwardRef(
|
|
8920
9874
|
({ tabs, defaultActiveKey, activeKey: controlledKey, onChange, variant = "underline", ...props }, ref) => {
|
|
8921
|
-
const [internalKey, setInternalKey] =
|
|
9875
|
+
const [internalKey, setInternalKey] = react.useState(defaultActiveKey ?? tabs[0]?.key ?? "");
|
|
8922
9876
|
const activeKey = controlledKey ?? internalKey;
|
|
8923
9877
|
const handleSelect = (key) => {
|
|
8924
9878
|
if (controlledKey === void 0) setInternalKey(key);
|
|
8925
9879
|
onChange?.(key);
|
|
8926
9880
|
};
|
|
8927
9881
|
const activeTab = tabs.find((t) => t.key === activeKey);
|
|
8928
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9882
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root42, { ref, ...props, children: [
|
|
8929
9883
|
/* @__PURE__ */ jsxRuntime.jsx(TabList, { role: "tablist", $variant: variant, children: tabs.map((tab) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
8930
9884
|
TabButton,
|
|
8931
9885
|
{
|
|
@@ -8983,7 +9937,7 @@ var Header2 = styles.styled("div")(({ theme }) => ({
|
|
|
8983
9937
|
padding: "1rem 1.25rem",
|
|
8984
9938
|
borderBottom: `1px solid ${theme.palette.divider}`
|
|
8985
9939
|
}));
|
|
8986
|
-
var
|
|
9940
|
+
var Title8 = styles.styled("h2")(({ theme }) => ({
|
|
8987
9941
|
margin: 0,
|
|
8988
9942
|
fontSize: "1.125rem",
|
|
8989
9943
|
color: theme.palette.text.primary
|
|
@@ -9046,14 +10000,14 @@ var RemoveButton2 = styles.styled("button")(({ theme }) => ({
|
|
|
9046
10000
|
padding: 0,
|
|
9047
10001
|
fontSize: "0.875rem"
|
|
9048
10002
|
}));
|
|
9049
|
-
var
|
|
10003
|
+
var Footer5 = styles.styled("div")(({ theme }) => ({
|
|
9050
10004
|
display: "grid",
|
|
9051
10005
|
gap: "1rem",
|
|
9052
10006
|
marginTop: "auto",
|
|
9053
10007
|
padding: "1rem 1.25rem",
|
|
9054
10008
|
borderTop: `1px solid ${theme.palette.divider}`
|
|
9055
10009
|
}));
|
|
9056
|
-
var CartDrawer =
|
|
10010
|
+
var CartDrawer = react.forwardRef(
|
|
9057
10011
|
({
|
|
9058
10012
|
open,
|
|
9059
10013
|
title = "Koszyk",
|
|
@@ -9068,7 +10022,7 @@ var CartDrawer = React.forwardRef(
|
|
|
9068
10022
|
...props
|
|
9069
10023
|
}, ref) => /* @__PURE__ */ jsxRuntime.jsx(Overlay3, { $open: open, children: /* @__PURE__ */ jsxRuntime.jsxs(Panel3, { ref, "aria-hidden": !open, "aria-label": title, ...props, children: [
|
|
9070
10024
|
/* @__PURE__ */ jsxRuntime.jsxs(Header2, { children: [
|
|
9071
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10025
|
+
/* @__PURE__ */ jsxRuntime.jsx(Title8, { children: title }),
|
|
9072
10026
|
/* @__PURE__ */ jsxRuntime.jsx(IconButton, { type: "button", "aria-label": closeLabel, onClick: onClose, children: "\xD7" })
|
|
9073
10027
|
] }),
|
|
9074
10028
|
/* @__PURE__ */ jsxRuntime.jsx(Items, { children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsxs(Item3, { children: [
|
|
@@ -9091,7 +10045,7 @@ var CartDrawer = React.forwardRef(
|
|
|
9091
10045
|
] })
|
|
9092
10046
|
] })
|
|
9093
10047
|
] }, item.id)) }),
|
|
9094
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
10048
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Footer5, { children: [
|
|
9095
10049
|
/* @__PURE__ */ jsxRuntime.jsxs(Row4, { children: [
|
|
9096
10050
|
/* @__PURE__ */ jsxRuntime.jsx("strong", { children: "Suma" }),
|
|
9097
10051
|
/* @__PURE__ */ jsxRuntime.jsx("strong", { children: subtotal })
|
|
@@ -9101,7 +10055,7 @@ var CartDrawer = React.forwardRef(
|
|
|
9101
10055
|
] }) })
|
|
9102
10056
|
);
|
|
9103
10057
|
CartDrawer.displayName = "CartDrawer";
|
|
9104
|
-
var
|
|
10058
|
+
var Root43 = styles.styled("aside")(({ theme }) => ({
|
|
9105
10059
|
display: "grid",
|
|
9106
10060
|
gap: "1.5rem",
|
|
9107
10061
|
width: "100%",
|
|
@@ -9118,7 +10072,7 @@ var Header3 = styles.styled("div")({
|
|
|
9118
10072
|
justifyContent: "space-between",
|
|
9119
10073
|
gap: "1rem"
|
|
9120
10074
|
});
|
|
9121
|
-
var
|
|
10075
|
+
var Title9 = styles.styled("h2")(({ theme }) => ({
|
|
9122
10076
|
margin: 0,
|
|
9123
10077
|
color: theme.palette.text.primary,
|
|
9124
10078
|
fontSize: "1.125rem"
|
|
@@ -9136,7 +10090,7 @@ var Legend = styles.styled("legend")({
|
|
|
9136
10090
|
marginBottom: "0.75rem",
|
|
9137
10091
|
fontWeight: 800
|
|
9138
10092
|
});
|
|
9139
|
-
var
|
|
10093
|
+
var OptionLabel2 = styles.styled("label")(({ theme }) => ({
|
|
9140
10094
|
display: "flex",
|
|
9141
10095
|
alignItems: "center",
|
|
9142
10096
|
justifyContent: "space-between",
|
|
@@ -9163,7 +10117,7 @@ var NumberInput2 = styles.styled("input")(({ theme }) => ({
|
|
|
9163
10117
|
fontFamily: theme.typography.fontFamily
|
|
9164
10118
|
}));
|
|
9165
10119
|
function renderOptions(options, selected, onToggle) {
|
|
9166
|
-
return options.map((option) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10120
|
+
return options.map((option) => /* @__PURE__ */ jsxRuntime.jsxs(OptionLabel2, { children: [
|
|
9167
10121
|
/* @__PURE__ */ jsxRuntime.jsxs(OptionText, { children: [
|
|
9168
10122
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
9169
10123
|
"input",
|
|
@@ -9178,7 +10132,7 @@ function renderOptions(options, selected, onToggle) {
|
|
|
9178
10132
|
option.count !== void 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { children: option.count })
|
|
9179
10133
|
] }, option.value));
|
|
9180
10134
|
}
|
|
9181
|
-
var FilterSidebar =
|
|
10135
|
+
var FilterSidebar = react.forwardRef(
|
|
9182
10136
|
({
|
|
9183
10137
|
categories = [],
|
|
9184
10138
|
colors = [],
|
|
@@ -9193,9 +10147,9 @@ var FilterSidebar = React.forwardRef(
|
|
|
9193
10147
|
onPriceRangeChange,
|
|
9194
10148
|
onClear,
|
|
9195
10149
|
...props
|
|
9196
|
-
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10150
|
+
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root43, { ref, "aria-label": "Filtry produkt\xF3w", ...props, children: [
|
|
9197
10151
|
/* @__PURE__ */ jsxRuntime.jsxs(Header3, { children: [
|
|
9198
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10152
|
+
/* @__PURE__ */ jsxRuntime.jsx(Title9, { children: "Filtry" }),
|
|
9199
10153
|
onClear && /* @__PURE__ */ jsxRuntime.jsx(Button, { variant: "ghost", size: "sm", onClick: onClear, children: "Wyczy\u015B\u0107" })
|
|
9200
10154
|
] }),
|
|
9201
10155
|
priceRange && /* @__PURE__ */ jsxRuntime.jsxs(Group, { children: [
|
|
@@ -9236,8 +10190,8 @@ var FilterSidebar = React.forwardRef(
|
|
|
9236
10190
|
] })
|
|
9237
10191
|
);
|
|
9238
10192
|
FilterSidebar.displayName = "FilterSidebar";
|
|
9239
|
-
var
|
|
9240
|
-
var
|
|
10193
|
+
var Root44 = styles.styled(Card)({ display: "grid", gap: "1rem" });
|
|
10194
|
+
var Title10 = styles.styled("h2")(({ theme }) => ({
|
|
9241
10195
|
margin: 0,
|
|
9242
10196
|
fontFamily: theme.typography.fontFamily,
|
|
9243
10197
|
fontSize: "1.125rem",
|
|
@@ -9322,7 +10276,7 @@ var TotalRow = styles.styled(Row5)(({ theme }) => ({
|
|
|
9322
10276
|
fontSize: "1rem",
|
|
9323
10277
|
fontWeight: 800
|
|
9324
10278
|
}));
|
|
9325
|
-
var OrderSummary =
|
|
10279
|
+
var OrderSummary = react.forwardRef(
|
|
9326
10280
|
({
|
|
9327
10281
|
title = "Podsumowanie zam\xF3wienia",
|
|
9328
10282
|
items = [],
|
|
@@ -9336,8 +10290,8 @@ var OrderSummary = React.forwardRef(
|
|
|
9336
10290
|
ctaLabel = "Przejd\u017A do kasy",
|
|
9337
10291
|
onCheckout,
|
|
9338
10292
|
...props
|
|
9339
|
-
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9340
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10293
|
+
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root44, { ref, variant: "default", padding: "lg", rounded: "lg", ...props, children: [
|
|
10294
|
+
/* @__PURE__ */ jsxRuntime.jsx(Title10, { children: title }),
|
|
9341
10295
|
items.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
9342
10296
|
/* @__PURE__ */ jsxRuntime.jsx(SectionTitle, { children: itemsTitle }),
|
|
9343
10297
|
/* @__PURE__ */ jsxRuntime.jsx(ItemList, { children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsxs(Item4, { children: [
|
|
@@ -9388,10 +10342,211 @@ var OrderSummary = React.forwardRef(
|
|
|
9388
10342
|
] })
|
|
9389
10343
|
);
|
|
9390
10344
|
OrderSummary.displayName = "OrderSummary";
|
|
10345
|
+
var Root45 = styles.styled("div")(({ theme }) => ({
|
|
10346
|
+
fontFamily: theme.typography.fontFamily
|
|
10347
|
+
}));
|
|
10348
|
+
var Grid2 = styles.styled("div", {
|
|
10349
|
+
shouldForwardProp: (prop) => prop !== "$columns"
|
|
10350
|
+
})(({ theme, $columns }) => ({
|
|
10351
|
+
display: "grid",
|
|
10352
|
+
gridTemplateColumns: `repeat(1, 1fr)`,
|
|
10353
|
+
gap: "1.25rem",
|
|
10354
|
+
[theme.breakpoints.up("sm")]: {
|
|
10355
|
+
gridTemplateColumns: `repeat(${Math.min($columns, 2)}, 1fr)`
|
|
10356
|
+
},
|
|
10357
|
+
[theme.breakpoints.up("md")]: {
|
|
10358
|
+
gridTemplateColumns: `repeat(${Math.min($columns, 3)}, 1fr)`
|
|
10359
|
+
},
|
|
10360
|
+
[theme.breakpoints.up("lg")]: {
|
|
10361
|
+
gridTemplateColumns: `repeat(${Math.min($columns, 4)}, 1fr)`
|
|
10362
|
+
}
|
|
10363
|
+
}));
|
|
10364
|
+
var ScrollTrack = styles.styled("div")({
|
|
10365
|
+
display: "flex",
|
|
10366
|
+
gap: "1.25rem",
|
|
10367
|
+
overflowX: "auto",
|
|
10368
|
+
paddingBottom: "0.5rem",
|
|
10369
|
+
scrollSnapType: "x mandatory",
|
|
10370
|
+
"&::-webkit-scrollbar": { height: "4px" },
|
|
10371
|
+
"&::-webkit-scrollbar-track": { background: "transparent" },
|
|
10372
|
+
"&::-webkit-scrollbar-thumb": { borderRadius: "9999px", background: "rgba(0,0,0,0.2)" },
|
|
10373
|
+
"& > *": {
|
|
10374
|
+
flexShrink: 0,
|
|
10375
|
+
scrollSnapAlign: "start",
|
|
10376
|
+
width: "clamp(220px, 28vw, 280px)"
|
|
10377
|
+
}
|
|
10378
|
+
});
|
|
10379
|
+
var RelatedProducts = react.forwardRef(
|
|
10380
|
+
({ products, title = "Podobne produkty", layout = "grid", columns = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root45, { ref, ...props, children: [
|
|
10381
|
+
/* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title, align: "left", style: { marginBottom: "1.5rem" } }),
|
|
10382
|
+
layout === "scroll" ? /* @__PURE__ */ jsxRuntime.jsx(ScrollTrack, { children: products.map((product, i) => /* @__PURE__ */ jsxRuntime.jsx(ProductCard, { ...product }, product.name + i)) }) : /* @__PURE__ */ jsxRuntime.jsx(Grid2, { $columns: columns, children: products.map((product, i) => /* @__PURE__ */ jsxRuntime.jsx(ProductCard, { ...product }, product.name + i)) })
|
|
10383
|
+
] })
|
|
10384
|
+
);
|
|
10385
|
+
RelatedProducts.displayName = "RelatedProducts";
|
|
10386
|
+
var relatedProductsLayouts = ["grid", "scroll"];
|
|
10387
|
+
var Root46 = styles.styled("div")(({ theme }) => ({
|
|
10388
|
+
fontFamily: theme.typography.fontFamily
|
|
10389
|
+
}));
|
|
10390
|
+
var Summary = styles.styled("div")(({ theme }) => ({
|
|
10391
|
+
display: "flex",
|
|
10392
|
+
alignItems: "center",
|
|
10393
|
+
gap: "2rem",
|
|
10394
|
+
flexWrap: "wrap",
|
|
10395
|
+
padding: "1.5rem",
|
|
10396
|
+
backgroundColor: theme.palette.action.hover,
|
|
10397
|
+
borderRadius: theme.shape.borderRadius,
|
|
10398
|
+
marginBottom: "2rem"
|
|
10399
|
+
}));
|
|
10400
|
+
var AverageBlock = styles.styled("div")({
|
|
10401
|
+
display: "flex",
|
|
10402
|
+
flexDirection: "column",
|
|
10403
|
+
alignItems: "center",
|
|
10404
|
+
gap: "0.25rem"
|
|
10405
|
+
});
|
|
10406
|
+
var AverageScore = styles.styled("span")(({ theme }) => ({
|
|
10407
|
+
fontSize: "3rem",
|
|
10408
|
+
fontWeight: 800,
|
|
10409
|
+
lineHeight: 1,
|
|
10410
|
+
color: theme.palette.text.primary
|
|
10411
|
+
}));
|
|
10412
|
+
var Distribution = styles.styled("div")({ flex: 1, display: "flex", flexDirection: "column", gap: "0.375rem" });
|
|
10413
|
+
var DistRow = styles.styled("div")({ display: "flex", alignItems: "center", gap: "0.75rem" });
|
|
10414
|
+
var DistLabel = styles.styled("span")(({ theme }) => ({
|
|
10415
|
+
fontSize: "0.8125rem",
|
|
10416
|
+
color: theme.palette.text.secondary,
|
|
10417
|
+
width: "1.5rem",
|
|
10418
|
+
textAlign: "right"
|
|
10419
|
+
}));
|
|
10420
|
+
var DistBar = styles.styled("div")(({ theme }) => ({
|
|
10421
|
+
flex: 1,
|
|
10422
|
+
height: "0.5rem",
|
|
10423
|
+
borderRadius: "9999px",
|
|
10424
|
+
backgroundColor: theme.palette.divider,
|
|
10425
|
+
overflow: "hidden"
|
|
10426
|
+
}));
|
|
10427
|
+
var DistFill = styles.styled("div", {
|
|
10428
|
+
shouldForwardProp: (prop) => prop !== "$pct"
|
|
10429
|
+
})(({ $pct }) => ({
|
|
10430
|
+
height: "100%",
|
|
10431
|
+
width: `${$pct}%`,
|
|
10432
|
+
backgroundColor: "#f59e0b",
|
|
10433
|
+
borderRadius: "9999px",
|
|
10434
|
+
transition: "width 400ms ease"
|
|
10435
|
+
}));
|
|
10436
|
+
var ReviewList = styles.styled("div")({
|
|
10437
|
+
display: "flex",
|
|
10438
|
+
flexDirection: "column",
|
|
10439
|
+
gap: "1.5rem"
|
|
10440
|
+
});
|
|
10441
|
+
var ReviewCard = styles.styled("div")(({ theme }) => ({
|
|
10442
|
+
padding: "1.25rem",
|
|
10443
|
+
border: `1px solid ${theme.palette.divider}`,
|
|
10444
|
+
borderRadius: theme.shape.borderRadius,
|
|
10445
|
+
display: "flex",
|
|
10446
|
+
flexDirection: "column",
|
|
10447
|
+
gap: "0.75rem"
|
|
10448
|
+
}));
|
|
10449
|
+
var ReviewHeader = styles.styled("div")({
|
|
10450
|
+
display: "flex",
|
|
10451
|
+
alignItems: "flex-start",
|
|
10452
|
+
gap: "0.875rem"
|
|
10453
|
+
});
|
|
10454
|
+
var AuthorInfo2 = styles.styled("div")({ flex: 1 });
|
|
10455
|
+
var AuthorName2 = styles.styled("div")(({ theme }) => ({
|
|
10456
|
+
display: "flex",
|
|
10457
|
+
alignItems: "center",
|
|
10458
|
+
gap: "0.375rem",
|
|
10459
|
+
fontSize: "0.9375rem",
|
|
10460
|
+
fontWeight: 700,
|
|
10461
|
+
color: theme.palette.text.primary
|
|
10462
|
+
}));
|
|
10463
|
+
var ReviewDate = styles.styled("div")(({ theme }) => ({
|
|
10464
|
+
fontSize: "0.8125rem",
|
|
10465
|
+
color: theme.palette.text.secondary,
|
|
10466
|
+
marginTop: "0.125rem"
|
|
10467
|
+
}));
|
|
10468
|
+
var ReviewTitle = styles.styled("div")(({ theme }) => ({
|
|
10469
|
+
fontSize: "0.9375rem",
|
|
10470
|
+
fontWeight: 700,
|
|
10471
|
+
color: theme.palette.text.primary
|
|
10472
|
+
}));
|
|
10473
|
+
var ReviewContent = styles.styled("p")(({ theme }) => ({
|
|
10474
|
+
margin: 0,
|
|
10475
|
+
fontSize: "0.9375rem",
|
|
10476
|
+
color: theme.palette.text.secondary,
|
|
10477
|
+
lineHeight: 1.6
|
|
10478
|
+
}));
|
|
10479
|
+
var HelpfulRow = styles.styled("div")(({ theme }) => ({
|
|
10480
|
+
display: "flex",
|
|
10481
|
+
alignItems: "center",
|
|
10482
|
+
gap: "0.375rem",
|
|
10483
|
+
fontSize: "0.8125rem",
|
|
10484
|
+
color: theme.palette.text.secondary
|
|
10485
|
+
}));
|
|
10486
|
+
function ReviewItem({ review }) {
|
|
10487
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(ReviewCard, { children: [
|
|
10488
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ReviewHeader, { children: [
|
|
10489
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10490
|
+
Avatar,
|
|
10491
|
+
{
|
|
10492
|
+
initials: review.author.slice(0, 2).toUpperCase(),
|
|
10493
|
+
size: "sm"
|
|
10494
|
+
}
|
|
10495
|
+
),
|
|
10496
|
+
/* @__PURE__ */ jsxRuntime.jsxs(AuthorInfo2, { children: [
|
|
10497
|
+
/* @__PURE__ */ jsxRuntime.jsxs(AuthorName2, { children: [
|
|
10498
|
+
review.author,
|
|
10499
|
+
review.verified && /* @__PURE__ */ jsxRuntime.jsx(VerifiedIcon__default.default, { "aria-label": "Zweryfikowany zakup", style: { fontSize: 14, color: "#16a34a" } })
|
|
10500
|
+
] }),
|
|
10501
|
+
/* @__PURE__ */ jsxRuntime.jsx(ReviewDate, { children: review.date })
|
|
10502
|
+
] }),
|
|
10503
|
+
/* @__PURE__ */ jsxRuntime.jsx(Rating, { value: review.rating, size: "sm", readonly: true })
|
|
10504
|
+
] }),
|
|
10505
|
+
review.title && /* @__PURE__ */ jsxRuntime.jsx(ReviewTitle, { children: review.title }),
|
|
10506
|
+
/* @__PURE__ */ jsxRuntime.jsx(ReviewContent, { children: review.content }),
|
|
10507
|
+
review.helpfulCount !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(HelpfulRow, { children: [
|
|
10508
|
+
/* @__PURE__ */ jsxRuntime.jsx(ThumbUpOutlinedIcon__default.default, { "aria-hidden": true, style: { fontSize: 14 } }),
|
|
10509
|
+
review.helpfulCount,
|
|
10510
|
+
" os\xF3b uzna\u0142o t\u0119 recenzj\u0119 za pomocn\u0105"
|
|
10511
|
+
] })
|
|
10512
|
+
] });
|
|
10513
|
+
}
|
|
10514
|
+
var ReviewSection = react.forwardRef(
|
|
10515
|
+
({ reviews, averageRating, totalReviews, title = "Opinie klient\xF3w", ratingDistribution, ...props }, ref) => {
|
|
10516
|
+
const totalDist = ratingDistribution ? Object.values(ratingDistribution).reduce((a, b) => a + b, 0) : 0;
|
|
10517
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root46, { ref, ...props, children: [
|
|
10518
|
+
/* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title, align: "left", style: { marginBottom: "1.5rem" } }),
|
|
10519
|
+
(averageRating !== void 0 || ratingDistribution) && /* @__PURE__ */ jsxRuntime.jsxs(Summary, { children: [
|
|
10520
|
+
averageRating !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(AverageBlock, { children: [
|
|
10521
|
+
/* @__PURE__ */ jsxRuntime.jsx(AverageScore, { children: averageRating.toFixed(1) }),
|
|
10522
|
+
/* @__PURE__ */ jsxRuntime.jsx(Rating, { value: averageRating, size: "sm", readonly: true }),
|
|
10523
|
+
totalReviews !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs("span", { style: { fontSize: "0.8125rem", marginTop: "0.25rem" }, children: [
|
|
10524
|
+
totalReviews,
|
|
10525
|
+
" opinii"
|
|
10526
|
+
] })
|
|
10527
|
+
] }),
|
|
10528
|
+
ratingDistribution && /* @__PURE__ */ jsxRuntime.jsx(Distribution, { children: [5, 4, 3, 2, 1].map((star) => {
|
|
10529
|
+
const count = ratingDistribution[star] ?? 0;
|
|
10530
|
+
const pct2 = totalDist > 0 ? count / totalDist * 100 : 0;
|
|
10531
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(DistRow, { children: [
|
|
10532
|
+
/* @__PURE__ */ jsxRuntime.jsxs(DistLabel, { children: [
|
|
10533
|
+
star,
|
|
10534
|
+
"\u2605"
|
|
10535
|
+
] }),
|
|
10536
|
+
/* @__PURE__ */ jsxRuntime.jsx(DistBar, { children: /* @__PURE__ */ jsxRuntime.jsx(DistFill, { $pct: pct2 }) }),
|
|
10537
|
+
/* @__PURE__ */ jsxRuntime.jsx(DistLabel, { style: { textAlign: "left" }, children: count })
|
|
10538
|
+
] }, star);
|
|
10539
|
+
}) })
|
|
10540
|
+
] }),
|
|
10541
|
+
/* @__PURE__ */ jsxRuntime.jsx(ReviewList, { children: reviews.map((review) => /* @__PURE__ */ jsxRuntime.jsx(ReviewItem, { review }, review.id)) })
|
|
10542
|
+
] });
|
|
10543
|
+
}
|
|
10544
|
+
);
|
|
10545
|
+
ReviewSection.displayName = "ReviewSection";
|
|
9391
10546
|
var List4 = styles.styled("div")(({ $hasHeading }) => ({
|
|
9392
10547
|
marginTop: $hasHeading ? "2.5rem" : 0
|
|
9393
10548
|
}));
|
|
9394
|
-
var FaqSection =
|
|
10549
|
+
var FaqSection = react.forwardRef(
|
|
9395
10550
|
({
|
|
9396
10551
|
title = "Najcz\u0119\u015Bciej zadawane pytania",
|
|
9397
10552
|
description,
|
|
@@ -9416,7 +10571,7 @@ var FaqSection = React.forwardRef(
|
|
|
9416
10571
|
}
|
|
9417
10572
|
);
|
|
9418
10573
|
FaqSection.displayName = "FaqSection";
|
|
9419
|
-
var
|
|
10574
|
+
var Grid3 = styles.styled("div", {
|
|
9420
10575
|
shouldForwardProp: (prop) => !["$columns", "$hasHeading", "$iconLeft"].includes(prop)
|
|
9421
10576
|
})(({ theme, $columns, $hasHeading, $iconLeft }) => ({
|
|
9422
10577
|
display: "grid",
|
|
@@ -9430,7 +10585,7 @@ var Grid2 = styles.styled("div", {
|
|
|
9430
10585
|
gridTemplateColumns: `repeat(${$columns}, minmax(0, 1fr))`
|
|
9431
10586
|
}
|
|
9432
10587
|
}));
|
|
9433
|
-
var FeatureGrid =
|
|
10588
|
+
var FeatureGrid = react.forwardRef(
|
|
9434
10589
|
({
|
|
9435
10590
|
title,
|
|
9436
10591
|
description,
|
|
@@ -9445,7 +10600,7 @@ var FeatureGrid = React.forwardRef(
|
|
|
9445
10600
|
const hasHeading = Boolean(title || description);
|
|
9446
10601
|
return /* @__PURE__ */ jsxRuntime.jsx(Section, { ref, ...rest, children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { maxWidth, children: [
|
|
9447
10602
|
hasHeading && /* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title: title ?? "", description, align: headingAlign }),
|
|
9448
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10603
|
+
/* @__PURE__ */ jsxRuntime.jsx(Grid3, { $columns: columns, $hasHeading: hasHeading, $iconLeft: itemLayout === "icon-left", children: features.map((feature, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
9449
10604
|
FeatureItem2,
|
|
9450
10605
|
{
|
|
9451
10606
|
feature,
|
|
@@ -9459,7 +10614,7 @@ var FeatureGrid = React.forwardRef(
|
|
|
9459
10614
|
);
|
|
9460
10615
|
FeatureGrid.displayName = "FeatureGrid";
|
|
9461
10616
|
var featureGridColumns = [2, 3, 4];
|
|
9462
|
-
var
|
|
10617
|
+
var Grid4 = styles.styled("div", {
|
|
9463
10618
|
shouldForwardProp: (prop) => !["$columns", "$hasHeading"].includes(prop)
|
|
9464
10619
|
})(({ theme, $columns, $hasHeading }) => ({
|
|
9465
10620
|
display: "grid",
|
|
@@ -9474,7 +10629,7 @@ var Grid3 = styles.styled("div", {
|
|
|
9474
10629
|
gridTemplateColumns: `repeat(${$columns}, minmax(0, 1fr))`
|
|
9475
10630
|
}
|
|
9476
10631
|
}));
|
|
9477
|
-
var LogoCloud =
|
|
10632
|
+
var LogoCloud = react.forwardRef(
|
|
9478
10633
|
({
|
|
9479
10634
|
title = "Zaufali nam",
|
|
9480
10635
|
description,
|
|
@@ -9491,7 +10646,7 @@ var LogoCloud = React.forwardRef(
|
|
|
9491
10646
|
return /* @__PURE__ */ jsxRuntime.jsx(Section, { ref, ...rest, children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { maxWidth, children: [
|
|
9492
10647
|
hasHeading && title && /* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title, description, align: headingAlign }),
|
|
9493
10648
|
hasHeading && !title && description && /* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title: description, align: headingAlign, as: "h2" }),
|
|
9494
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10649
|
+
/* @__PURE__ */ jsxRuntime.jsx(Grid4, { $columns: columns, $hasHeading: hasHeading, children: logos.map((logo) => {
|
|
9495
10650
|
const key = `${logo.name}-${logo.href ?? logo.logoUrl ?? "text"}`;
|
|
9496
10651
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9497
10652
|
LogoTile,
|
|
@@ -9575,7 +10730,7 @@ var SuccessMessage = styles.styled("p")(({ theme }) => ({
|
|
|
9575
10730
|
fontFamily: theme.typography.fontFamily,
|
|
9576
10731
|
textAlign: "center"
|
|
9577
10732
|
}));
|
|
9578
|
-
var NewsletterSection =
|
|
10733
|
+
var NewsletterSection = react.forwardRef(
|
|
9579
10734
|
({
|
|
9580
10735
|
title = "B\u0105d\u017A na bie\u017C\u0105co",
|
|
9581
10736
|
description = "Zapisz si\u0119 do newslettera i otrzymuj najnowsze informacje prosto na swoj\u0105 skrzynk\u0119.",
|
|
@@ -9590,8 +10745,8 @@ var NewsletterSection = React.forwardRef(
|
|
|
9590
10745
|
onSubmit,
|
|
9591
10746
|
...rest
|
|
9592
10747
|
}, ref) => {
|
|
9593
|
-
const [email, setEmail] =
|
|
9594
|
-
const [submitted, setSubmitted] =
|
|
10748
|
+
const [email, setEmail] = react.useState("");
|
|
10749
|
+
const [submitted, setSubmitted] = react.useState(false);
|
|
9595
10750
|
const handleSubmit = (e) => {
|
|
9596
10751
|
e.preventDefault();
|
|
9597
10752
|
if (!email) return;
|
|
@@ -9641,12 +10796,12 @@ var Section2 = styles.styled("section")(({ theme }) => ({
|
|
|
9641
10796
|
padding: "5rem 1rem",
|
|
9642
10797
|
backgroundColor: theme.palette.background.default
|
|
9643
10798
|
}));
|
|
9644
|
-
var
|
|
10799
|
+
var Inner2 = styles.styled("div")({
|
|
9645
10800
|
maxWidth: "80rem",
|
|
9646
10801
|
marginLeft: "auto",
|
|
9647
10802
|
marginRight: "auto"
|
|
9648
10803
|
});
|
|
9649
|
-
var
|
|
10804
|
+
var Grid5 = styles.styled("div")(({ theme }) => ({
|
|
9650
10805
|
marginTop: "3rem",
|
|
9651
10806
|
display: "grid",
|
|
9652
10807
|
gridTemplateColumns: "1fr",
|
|
@@ -9659,16 +10814,16 @@ var Grid4 = styles.styled("div")(({ theme }) => ({
|
|
|
9659
10814
|
}
|
|
9660
10815
|
}));
|
|
9661
10816
|
function PricingSection({ title, description, plans, ...props }) {
|
|
9662
|
-
return /* @__PURE__ */ jsxRuntime.jsx(Section2, { ...props, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10817
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Section2, { ...props, children: /* @__PURE__ */ jsxRuntime.jsxs(Inner2, { children: [
|
|
9663
10818
|
(title || description) && /* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title: title ?? "", description, align: "center" }),
|
|
9664
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10819
|
+
/* @__PURE__ */ jsxRuntime.jsx(Grid5, { children: plans.map((plan, i) => /* @__PURE__ */ jsxRuntime.jsx(PricingCard, { ...plan }, i)) })
|
|
9665
10820
|
] }) });
|
|
9666
10821
|
}
|
|
9667
10822
|
var Section3 = styles.styled("section")(({ theme }) => ({
|
|
9668
10823
|
padding: "5rem 1rem",
|
|
9669
10824
|
backgroundColor: theme.palette.background.default
|
|
9670
10825
|
}));
|
|
9671
|
-
var
|
|
10826
|
+
var Inner3 = styles.styled("div")({
|
|
9672
10827
|
maxWidth: "80rem",
|
|
9673
10828
|
marginLeft: "auto",
|
|
9674
10829
|
marginRight: "auto"
|
|
@@ -9706,9 +10861,9 @@ function ArrowIcon() {
|
|
|
9706
10861
|
return /* @__PURE__ */ jsxRuntime.jsx(ArrowForwardIcon__default.default, { "aria-hidden": "true", style: { fontSize: 24 } });
|
|
9707
10862
|
}
|
|
9708
10863
|
function ProcessSection({ title, description, steps, ...props }) {
|
|
9709
|
-
return /* @__PURE__ */ jsxRuntime.jsx(Section3, { ...props, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10864
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Section3, { ...props, children: /* @__PURE__ */ jsxRuntime.jsxs(Inner3, { children: [
|
|
9710
10865
|
(title || description) && /* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title: title ?? "", description, align: "center" }),
|
|
9711
|
-
/* @__PURE__ */ jsxRuntime.jsx(StepsRow, { children: steps.map((step, i) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10866
|
+
/* @__PURE__ */ jsxRuntime.jsx(StepsRow, { children: steps.map((step, i) => /* @__PURE__ */ jsxRuntime.jsxs(react.Fragment, { children: [
|
|
9712
10867
|
/* @__PURE__ */ jsxRuntime.jsx(StepWrapper, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
9713
10868
|
ProcessStep,
|
|
9714
10869
|
{
|
|
@@ -9722,7 +10877,7 @@ function ProcessSection({ title, description, steps, ...props }) {
|
|
|
9722
10877
|
] }, i)) })
|
|
9723
10878
|
] }) });
|
|
9724
10879
|
}
|
|
9725
|
-
var
|
|
10880
|
+
var Grid6 = styles.styled("div", {
|
|
9726
10881
|
shouldForwardProp: (prop) => !["$columns", "$hasHeading"].includes(prop)
|
|
9727
10882
|
})(({ theme, $columns, $hasHeading }) => ({
|
|
9728
10883
|
display: "grid",
|
|
@@ -9736,7 +10891,7 @@ var Grid5 = styles.styled("div", {
|
|
|
9736
10891
|
gridTemplateColumns: `repeat(${$columns}, minmax(0, 1fr))`
|
|
9737
10892
|
}
|
|
9738
10893
|
}));
|
|
9739
|
-
var StatsSection =
|
|
10894
|
+
var StatsSection = react.forwardRef(
|
|
9740
10895
|
({
|
|
9741
10896
|
title,
|
|
9742
10897
|
description,
|
|
@@ -9751,7 +10906,7 @@ var StatsSection = React.forwardRef(
|
|
|
9751
10906
|
const hasHeading = Boolean(title || description);
|
|
9752
10907
|
return /* @__PURE__ */ jsxRuntime.jsx(Section, { ref, ...rest, children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { maxWidth, children: [
|
|
9753
10908
|
hasHeading && /* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title: title ?? "", description, align: headingAlign }),
|
|
9754
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10909
|
+
/* @__PURE__ */ jsxRuntime.jsx(Grid6, { $columns: columns, $hasHeading: hasHeading, children: stats.map((stat, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
9755
10910
|
StatCard,
|
|
9756
10911
|
{
|
|
9757
10912
|
stat,
|
|
@@ -9765,7 +10920,7 @@ var StatsSection = React.forwardRef(
|
|
|
9765
10920
|
);
|
|
9766
10921
|
StatsSection.displayName = "StatsSection";
|
|
9767
10922
|
var statsSectionColumns = [2, 3, 4];
|
|
9768
|
-
var
|
|
10923
|
+
var Grid7 = styles.styled("div", {
|
|
9769
10924
|
shouldForwardProp: (prop) => !["$columns", "$hasHeading"].includes(prop)
|
|
9770
10925
|
})(({ theme, $columns, $hasHeading }) => ({
|
|
9771
10926
|
display: "grid",
|
|
@@ -9779,7 +10934,7 @@ var Grid6 = styles.styled("div", {
|
|
|
9779
10934
|
gridTemplateColumns: `repeat(${$columns}, minmax(0, 1fr))`
|
|
9780
10935
|
}
|
|
9781
10936
|
}));
|
|
9782
|
-
var TeamSection =
|
|
10937
|
+
var TeamSection = react.forwardRef(
|
|
9783
10938
|
({
|
|
9784
10939
|
title = "Nasz zesp\xF3\u0142",
|
|
9785
10940
|
description,
|
|
@@ -9794,7 +10949,7 @@ var TeamSection = React.forwardRef(
|
|
|
9794
10949
|
return /* @__PURE__ */ jsxRuntime.jsx(Section, { ref, ...rest, children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { maxWidth, children: [
|
|
9795
10950
|
hasHeading && title && /* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title, description, align: headingAlign }),
|
|
9796
10951
|
hasHeading && !title && description && /* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title: description, align: headingAlign, as: "h2" }),
|
|
9797
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10952
|
+
/* @__PURE__ */ jsxRuntime.jsx(Grid7, { $columns: columns, $hasHeading: hasHeading, children: members.map((member) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
9798
10953
|
TeamMemberCard,
|
|
9799
10954
|
{
|
|
9800
10955
|
member,
|
|
@@ -9807,7 +10962,7 @@ var TeamSection = React.forwardRef(
|
|
|
9807
10962
|
);
|
|
9808
10963
|
TeamSection.displayName = "TeamSection";
|
|
9809
10964
|
var teamSectionColumns = [2, 3, 4];
|
|
9810
|
-
var
|
|
10965
|
+
var Grid8 = styles.styled("div", {
|
|
9811
10966
|
shouldForwardProp: (prop) => !["$columns", "$hasHeading"].includes(prop)
|
|
9812
10967
|
})(({ theme, $columns, $hasHeading }) => ({
|
|
9813
10968
|
display: "grid",
|
|
@@ -9821,7 +10976,7 @@ var Grid7 = styles.styled("div", {
|
|
|
9821
10976
|
gridTemplateColumns: `repeat(${$columns}, minmax(0, 1fr))`
|
|
9822
10977
|
}
|
|
9823
10978
|
}));
|
|
9824
|
-
var TestimonialsSection =
|
|
10979
|
+
var TestimonialsSection = react.forwardRef(
|
|
9825
10980
|
({
|
|
9826
10981
|
title = "Co m\xF3wi\u0105 nasi klienci",
|
|
9827
10982
|
description,
|
|
@@ -9835,7 +10990,7 @@ var TestimonialsSection = React.forwardRef(
|
|
|
9835
10990
|
const hasHeading = Boolean(title || description);
|
|
9836
10991
|
return /* @__PURE__ */ jsxRuntime.jsx(Section, { ref, ...rest, children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { maxWidth, children: [
|
|
9837
10992
|
hasHeading && /* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title: title ?? "", description, align: headingAlign }),
|
|
9838
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10993
|
+
/* @__PURE__ */ jsxRuntime.jsx(Grid8, { $columns: columns, $hasHeading: hasHeading, children: testimonials.map((testimonial, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
9839
10994
|
TestimonialCard,
|
|
9840
10995
|
{
|
|
9841
10996
|
testimonial,
|
|
@@ -9848,11 +11003,11 @@ var TestimonialsSection = React.forwardRef(
|
|
|
9848
11003
|
);
|
|
9849
11004
|
TestimonialsSection.displayName = "TestimonialsSection";
|
|
9850
11005
|
var testimonialsSectionColumns = [1, 2, 3];
|
|
9851
|
-
var fadeIn4 = react.keyframes`
|
|
11006
|
+
var fadeIn4 = react$1.keyframes`
|
|
9852
11007
|
from { opacity: 0; }
|
|
9853
11008
|
to { opacity: 1; }
|
|
9854
11009
|
`;
|
|
9855
|
-
var slideDown = react.keyframes`
|
|
11010
|
+
var slideDown = react$1.keyframes`
|
|
9856
11011
|
from { opacity: 0; transform: translateY(-8px) scale(0.98); }
|
|
9857
11012
|
to { opacity: 1; transform: translateY(0) scale(1); }
|
|
9858
11013
|
`;
|
|
@@ -9920,7 +11075,7 @@ var ResultsScroll = styles.styled("div")({
|
|
|
9920
11075
|
flex: 1,
|
|
9921
11076
|
padding: "0.375rem 0"
|
|
9922
11077
|
});
|
|
9923
|
-
var
|
|
11078
|
+
var GroupLabel3 = styles.styled("div")(({ theme }) => ({
|
|
9924
11079
|
padding: "0.5rem 1rem 0.25rem",
|
|
9925
11080
|
fontFamily: theme.typography.fontFamily,
|
|
9926
11081
|
fontSize: "0.75rem",
|
|
@@ -9988,14 +11143,14 @@ var Kbd = styles.styled("kbd")(({ theme }) => ({
|
|
|
9988
11143
|
backgroundColor: theme.palette.action.hover,
|
|
9989
11144
|
lineHeight: 1.6
|
|
9990
11145
|
}));
|
|
9991
|
-
var
|
|
11146
|
+
var EmptyState2 = styles.styled("div")(({ theme }) => ({
|
|
9992
11147
|
padding: "2.5rem 1rem",
|
|
9993
11148
|
textAlign: "center",
|
|
9994
11149
|
fontFamily: theme.typography.fontFamily,
|
|
9995
11150
|
fontSize: "0.9375rem",
|
|
9996
11151
|
color: theme.palette.text.secondary
|
|
9997
11152
|
}));
|
|
9998
|
-
var
|
|
11153
|
+
var Footer6 = styles.styled("div")(({ theme }) => ({
|
|
9999
11154
|
display: "flex",
|
|
10000
11155
|
gap: "1.25rem",
|
|
10001
11156
|
padding: "0.5rem 1rem",
|
|
@@ -10031,14 +11186,14 @@ function CommandPalette({
|
|
|
10031
11186
|
emptyLabel = "Brak wynik\xF3w dla podanej frazy.",
|
|
10032
11187
|
onSelect
|
|
10033
11188
|
}) {
|
|
10034
|
-
const id =
|
|
10035
|
-
const [query, setQuery] =
|
|
10036
|
-
const [activeIndex, setActiveIndex] =
|
|
10037
|
-
const inputRef =
|
|
10038
|
-
const activeItemRef =
|
|
11189
|
+
const id = react.useId();
|
|
11190
|
+
const [query, setQuery] = react.useState("");
|
|
11191
|
+
const [activeIndex, setActiveIndex] = react.useState(0);
|
|
11192
|
+
const inputRef = react.useRef(null);
|
|
11193
|
+
const activeItemRef = react.useRef(null);
|
|
10039
11194
|
const filtered = filterGroups(groups, query);
|
|
10040
11195
|
const flat = flatItems(filtered);
|
|
10041
|
-
const handleSelect =
|
|
11196
|
+
const handleSelect = react.useCallback(
|
|
10042
11197
|
(item) => {
|
|
10043
11198
|
item.onSelect?.();
|
|
10044
11199
|
onSelect?.(item);
|
|
@@ -10046,20 +11201,20 @@ function CommandPalette({
|
|
|
10046
11201
|
},
|
|
10047
11202
|
[onSelect, onClose]
|
|
10048
11203
|
);
|
|
10049
|
-
|
|
11204
|
+
react.useEffect(() => {
|
|
10050
11205
|
if (open) {
|
|
10051
11206
|
setQuery("");
|
|
10052
11207
|
setActiveIndex(0);
|
|
10053
11208
|
setTimeout(() => inputRef.current?.focus(), 0);
|
|
10054
11209
|
}
|
|
10055
11210
|
}, [open]);
|
|
10056
|
-
|
|
11211
|
+
react.useEffect(() => {
|
|
10057
11212
|
setActiveIndex(0);
|
|
10058
11213
|
}, [query]);
|
|
10059
|
-
|
|
11214
|
+
react.useEffect(() => {
|
|
10060
11215
|
activeItemRef.current?.scrollIntoView?.({ block: "nearest" });
|
|
10061
11216
|
}, [activeIndex]);
|
|
10062
|
-
|
|
11217
|
+
react.useEffect(() => {
|
|
10063
11218
|
const handler = (e) => {
|
|
10064
11219
|
if (!open) return;
|
|
10065
11220
|
if (e.key === "Escape") {
|
|
@@ -10122,8 +11277,8 @@ function CommandPalette({
|
|
|
10122
11277
|
),
|
|
10123
11278
|
/* @__PURE__ */ jsxRuntime.jsx(KbdHint, { children: "esc" })
|
|
10124
11279
|
] }),
|
|
10125
|
-
/* @__PURE__ */ jsxRuntime.jsx(ResultsScroll, { id: `${id}-listbox`, role: "listbox", "aria-label": "Wyniki", children: flat.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
10126
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
11280
|
+
/* @__PURE__ */ jsxRuntime.jsx(ResultsScroll, { id: `${id}-listbox`, role: "listbox", "aria-label": "Wyniki", children: flat.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(EmptyState2, { children: emptyLabel }) : filtered.map((group) => /* @__PURE__ */ jsxRuntime.jsxs("div", { role: "group", "aria-labelledby": `${id}-group-${group.id}`, children: [
|
|
11281
|
+
/* @__PURE__ */ jsxRuntime.jsx(GroupLabel3, { id: `${id}-group-${group.id}`, children: group.label }),
|
|
10127
11282
|
group.items.map((item) => {
|
|
10128
11283
|
const idx = globalIndex++;
|
|
10129
11284
|
const isActive = idx === activeIndex;
|
|
@@ -10150,7 +11305,7 @@ function CommandPalette({
|
|
|
10150
11305
|
);
|
|
10151
11306
|
})
|
|
10152
11307
|
] }, group.id)) }),
|
|
10153
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
11308
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Footer6, { id: `${id}-hint`, "aria-hidden": "true", children: [
|
|
10154
11309
|
/* @__PURE__ */ jsxRuntime.jsxs(FooterHint, { children: [
|
|
10155
11310
|
/* @__PURE__ */ jsxRuntime.jsx(Kbd, { children: "\u2191" }),
|
|
10156
11311
|
/* @__PURE__ */ jsxRuntime.jsx(Kbd, { children: "\u2193" }),
|
|
@@ -10194,7 +11349,7 @@ var DEFAULT_CATEGORIES = [
|
|
|
10194
11349
|
defaultEnabled: false
|
|
10195
11350
|
}
|
|
10196
11351
|
];
|
|
10197
|
-
var slideUp2 = react.keyframes`
|
|
11352
|
+
var slideUp2 = react$1.keyframes`
|
|
10198
11353
|
from { opacity: 0; transform: translateY(100%); }
|
|
10199
11354
|
to { opacity: 1; transform: translateY(0); }
|
|
10200
11355
|
`;
|
|
@@ -10209,7 +11364,7 @@ var Bar2 = styles.styled("div")(({ theme }) => ({
|
|
|
10209
11364
|
boxShadow: "0 -4px 24px rgba(0,0,0,0.12)",
|
|
10210
11365
|
animation: `${slideUp2} 300ms cubic-bezier(0.16, 1, 0.3, 1)`
|
|
10211
11366
|
}));
|
|
10212
|
-
var
|
|
11367
|
+
var Inner4 = styles.styled("div")({
|
|
10213
11368
|
maxWidth: "72rem",
|
|
10214
11369
|
margin: "0 auto",
|
|
10215
11370
|
padding: "1.25rem 1.5rem",
|
|
@@ -10224,7 +11379,7 @@ var TopRow = styles.styled("div")({
|
|
|
10224
11379
|
flexWrap: "wrap"
|
|
10225
11380
|
});
|
|
10226
11381
|
var TextBlock = styles.styled("div")({ flex: 1, minWidth: "16rem" });
|
|
10227
|
-
var
|
|
11382
|
+
var Title11 = styles.styled("p")(({ theme }) => ({
|
|
10228
11383
|
margin: "0 0 0.25rem",
|
|
10229
11384
|
fontFamily: theme.typography.fontFamily,
|
|
10230
11385
|
fontSize: "1rem",
|
|
@@ -10232,7 +11387,7 @@ var Title9 = styles.styled("p")(({ theme }) => ({
|
|
|
10232
11387
|
color: theme.palette.text.primary,
|
|
10233
11388
|
lineHeight: 1.4
|
|
10234
11389
|
}));
|
|
10235
|
-
var
|
|
11390
|
+
var Description8 = styles.styled("p")(({ theme }) => ({
|
|
10236
11391
|
margin: 0,
|
|
10237
11392
|
fontFamily: theme.typography.fontFamily,
|
|
10238
11393
|
fontSize: "0.875rem",
|
|
@@ -10367,9 +11522,9 @@ function CookieConsent({
|
|
|
10367
11522
|
privacyPolicyLabel,
|
|
10368
11523
|
privacyPolicyHref
|
|
10369
11524
|
}) {
|
|
10370
|
-
const id =
|
|
10371
|
-
const [expanded, setExpanded] =
|
|
10372
|
-
const [prefs, setPrefs] =
|
|
11525
|
+
const id = react.useId();
|
|
11526
|
+
const [expanded, setExpanded] = react.useState(false);
|
|
11527
|
+
const [prefs, setPrefs] = react.useState(
|
|
10373
11528
|
() => Object.fromEntries(categories.map((c) => [c.id, c.defaultEnabled ?? false]))
|
|
10374
11529
|
);
|
|
10375
11530
|
if (!open) return null;
|
|
@@ -10386,11 +11541,11 @@ function CookieConsent({
|
|
|
10386
11541
|
onSave?.(prefs);
|
|
10387
11542
|
};
|
|
10388
11543
|
return reactDom.createPortal(
|
|
10389
|
-
/* @__PURE__ */ jsxRuntime.jsx(Bar2, { role: "region", "aria-label": "Zgoda na pliki cookie", "aria-live": "polite", children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
11544
|
+
/* @__PURE__ */ jsxRuntime.jsx(Bar2, { role: "region", "aria-label": "Zgoda na pliki cookie", "aria-live": "polite", children: /* @__PURE__ */ jsxRuntime.jsxs(Inner4, { children: [
|
|
10390
11545
|
/* @__PURE__ */ jsxRuntime.jsxs(TopRow, { children: [
|
|
10391
11546
|
/* @__PURE__ */ jsxRuntime.jsxs(TextBlock, { children: [
|
|
10392
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10393
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
11547
|
+
/* @__PURE__ */ jsxRuntime.jsx(Title11, { children: title }),
|
|
11548
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Description8, { children: [
|
|
10394
11549
|
description,
|
|
10395
11550
|
privacyPolicyLabel && privacyPolicyHref && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
10396
11551
|
" ",
|
|
@@ -10440,12 +11595,12 @@ function CookieConsent({
|
|
|
10440
11595
|
);
|
|
10441
11596
|
}
|
|
10442
11597
|
var defaultCookieCategories = DEFAULT_CATEGORIES;
|
|
10443
|
-
var
|
|
11598
|
+
var Root47 = styles.styled("footer")(({ theme }) => ({
|
|
10444
11599
|
width: "100%",
|
|
10445
11600
|
backgroundColor: theme.palette.background.paper,
|
|
10446
11601
|
borderTop: `1px solid ${theme.palette.divider}`
|
|
10447
11602
|
}));
|
|
10448
|
-
var
|
|
11603
|
+
var Inner5 = styles.styled("div")({
|
|
10449
11604
|
maxWidth: "72rem",
|
|
10450
11605
|
margin: "0 auto",
|
|
10451
11606
|
padding: "3rem 1.5rem 2rem"
|
|
@@ -10467,7 +11622,7 @@ var BrandBlock = styles.styled("div")({
|
|
|
10467
11622
|
flexDirection: "column",
|
|
10468
11623
|
gap: "0.75rem"
|
|
10469
11624
|
});
|
|
10470
|
-
var
|
|
11625
|
+
var Description9 = styles.styled("p")(({ theme }) => ({
|
|
10471
11626
|
margin: 0,
|
|
10472
11627
|
fontFamily: theme.typography.fontFamily,
|
|
10473
11628
|
fontSize: "0.875rem",
|
|
@@ -10573,7 +11728,7 @@ var SOCIAL_ICONS = {
|
|
|
10573
11728
|
/* @__PURE__ */ jsxRuntime.jsx("polygon", { fill: "white", points: "9.75 15.02 15.5 12 9.75 8.98 9.75 15.02" })
|
|
10574
11729
|
] })
|
|
10575
11730
|
};
|
|
10576
|
-
function
|
|
11731
|
+
function Footer7({
|
|
10577
11732
|
logo,
|
|
10578
11733
|
description,
|
|
10579
11734
|
columns = [],
|
|
@@ -10581,11 +11736,11 @@ function Footer6({
|
|
|
10581
11736
|
copyright
|
|
10582
11737
|
}) {
|
|
10583
11738
|
const colCount = columns.length;
|
|
10584
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
11739
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root47, { children: /* @__PURE__ */ jsxRuntime.jsxs(Inner5, { children: [
|
|
10585
11740
|
(logo || description || colCount > 0) && /* @__PURE__ */ jsxRuntime.jsxs(TopRow2, { style: { "--col-count": colCount }, children: [
|
|
10586
11741
|
(logo || description) && /* @__PURE__ */ jsxRuntime.jsxs(BrandBlock, { children: [
|
|
10587
11742
|
logo,
|
|
10588
|
-
description && /* @__PURE__ */ jsxRuntime.jsx(
|
|
11743
|
+
description && /* @__PURE__ */ jsxRuntime.jsx(Description9, { children: description })
|
|
10589
11744
|
] }),
|
|
10590
11745
|
columns.map((col) => /* @__PURE__ */ jsxRuntime.jsxs(Column, { children: [
|
|
10591
11746
|
/* @__PURE__ */ jsxRuntime.jsx(ColumnTitle, { children: col.title }),
|
|
@@ -10608,7 +11763,7 @@ function Footer6({
|
|
|
10608
11763
|
] })
|
|
10609
11764
|
] }) });
|
|
10610
11765
|
}
|
|
10611
|
-
var
|
|
11766
|
+
var Root48 = styles.styled("header", {
|
|
10612
11767
|
shouldForwardProp: (p) => p !== "$sticky" && p !== "$variant"
|
|
10613
11768
|
})(({ theme, $sticky, $variant }) => ({
|
|
10614
11769
|
position: $sticky ? "sticky" : "relative",
|
|
@@ -10619,15 +11774,17 @@ var Root35 = styles.styled("header", {
|
|
|
10619
11774
|
borderBottom: $variant === "transparent" ? "none" : `1px solid ${theme.palette.divider}`,
|
|
10620
11775
|
boxShadow: $variant === "transparent" ? "none" : "0 1px 4px rgba(0,0,0,0.08)"
|
|
10621
11776
|
}));
|
|
10622
|
-
var
|
|
10623
|
-
|
|
11777
|
+
var Inner6 = styles.styled("div", {
|
|
11778
|
+
shouldForwardProp: (p) => p !== "$maxWidth"
|
|
11779
|
+
})(({ $maxWidth }) => ({
|
|
11780
|
+
maxWidth: typeof $maxWidth === "number" ? `${$maxWidth}px` : $maxWidth,
|
|
10624
11781
|
margin: "0 auto",
|
|
10625
11782
|
padding: "0 1.5rem",
|
|
10626
11783
|
height: "3.75rem",
|
|
10627
11784
|
display: "flex",
|
|
10628
11785
|
alignItems: "center",
|
|
10629
11786
|
gap: "1.5rem"
|
|
10630
|
-
});
|
|
11787
|
+
}));
|
|
10631
11788
|
var LogoSlot = styles.styled("div")({
|
|
10632
11789
|
flexShrink: 0,
|
|
10633
11790
|
display: "flex",
|
|
@@ -10723,11 +11880,12 @@ function Navbar({
|
|
|
10723
11880
|
navItems = [],
|
|
10724
11881
|
actions,
|
|
10725
11882
|
sticky = false,
|
|
10726
|
-
variant = "filled"
|
|
11883
|
+
variant = "filled",
|
|
11884
|
+
maxWidth = "72rem"
|
|
10727
11885
|
}) {
|
|
10728
|
-
const [mobileOpen, setMobileOpen] =
|
|
10729
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10730
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
11886
|
+
const [mobileOpen, setMobileOpen] = react.useState(false);
|
|
11887
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root48, { $sticky: sticky, $variant: variant, children: [
|
|
11888
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Inner6, { $maxWidth: maxWidth, children: [
|
|
10731
11889
|
logo && /* @__PURE__ */ jsxRuntime.jsx(LogoSlot, { children: logo }),
|
|
10732
11890
|
/* @__PURE__ */ jsxRuntime.jsx(Nav3, { "aria-label": "Nawigacja g\u0142\xF3wna", children: navItems.map((item) => /* @__PURE__ */ jsxRuntime.jsx(NavLink, { href: item.href, $active: !!item.active, children: item.label }, item.href)) }),
|
|
10733
11891
|
(actions || navItems.length > 0) && /* @__PURE__ */ jsxRuntime.jsxs(RightSlot, { children: [
|
|
@@ -10834,7 +11992,7 @@ var MyThemeProvider = ({
|
|
|
10834
11992
|
disableCssBaseline = false,
|
|
10835
11993
|
children
|
|
10836
11994
|
}) => {
|
|
10837
|
-
const resolvedTheme =
|
|
11995
|
+
const resolvedTheme = react.useMemo(() => {
|
|
10838
11996
|
if (theme) return theme;
|
|
10839
11997
|
switch (mode) {
|
|
10840
11998
|
case "dark":
|
|
@@ -10847,52 +12005,18 @@ var MyThemeProvider = ({
|
|
|
10847
12005
|
}
|
|
10848
12006
|
}, [theme, mode]);
|
|
10849
12007
|
return /* @__PURE__ */ jsxRuntime.jsxs(styles.ThemeProvider, { theme: resolvedTheme, children: [
|
|
10850
|
-
!disableCssBaseline && /* @__PURE__ */ jsxRuntime.jsx(
|
|
12008
|
+
!disableCssBaseline && /* @__PURE__ */ jsxRuntime.jsx(material.CssBaseline, {}),
|
|
10851
12009
|
children
|
|
10852
12010
|
] });
|
|
10853
12011
|
};
|
|
10854
|
-
function EmotionRegistry({ children }) {
|
|
10855
|
-
const [{ cache, flush }] = React__namespace.useState(() => {
|
|
10856
|
-
const c = createCache__default.default({ key: "css", prepend: true });
|
|
10857
|
-
c.compat = true;
|
|
10858
|
-
const prevInsert = c.insert.bind(c);
|
|
10859
|
-
let inserted = [];
|
|
10860
|
-
c.insert = (...args) => {
|
|
10861
|
-
const serialized = args[1];
|
|
10862
|
-
if (c.inserted[serialized.name] === void 0) {
|
|
10863
|
-
inserted.push(serialized.name);
|
|
10864
|
-
}
|
|
10865
|
-
return prevInsert(...args);
|
|
10866
|
-
};
|
|
10867
|
-
return {
|
|
10868
|
-
cache: c,
|
|
10869
|
-
flush: () => {
|
|
10870
|
-
const s = inserted;
|
|
10871
|
-
inserted = [];
|
|
10872
|
-
return s;
|
|
10873
|
-
}
|
|
10874
|
-
};
|
|
10875
|
-
});
|
|
10876
|
-
navigation.useServerInsertedHTML(() => {
|
|
10877
|
-
const names = flush();
|
|
10878
|
-
if (!names.length) return null;
|
|
10879
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
10880
|
-
"style",
|
|
10881
|
-
{
|
|
10882
|
-
"data-emotion": `${cache.key} ${names.join(" ")}`,
|
|
10883
|
-
dangerouslySetInnerHTML: { __html: names.map((n) => cache.inserted[n]).join("") }
|
|
10884
|
-
}
|
|
10885
|
-
);
|
|
10886
|
-
});
|
|
10887
|
-
return /* @__PURE__ */ jsxRuntime.jsx(react.CacheProvider, { value: cache, children });
|
|
10888
|
-
}
|
|
10889
12012
|
|
|
10890
12013
|
exports.Accordion = Accordion;
|
|
12014
|
+
exports.Alert = Alert;
|
|
10891
12015
|
exports.Article = Article;
|
|
10892
12016
|
exports.AspectRatio = AspectRatio;
|
|
10893
12017
|
exports.Avatar = Avatar;
|
|
10894
12018
|
exports.BackToTop = BackToTop;
|
|
10895
|
-
exports.Badge =
|
|
12019
|
+
exports.Badge = Badge2;
|
|
10896
12020
|
exports.BaseInput = BaseInput;
|
|
10897
12021
|
exports.BaseSelectInput = BaseSelectInput;
|
|
10898
12022
|
exports.Box = Box2;
|
|
@@ -10900,25 +12024,28 @@ exports.Breadcrumbs = Breadcrumbs;
|
|
|
10900
12024
|
exports.Button = Button;
|
|
10901
12025
|
exports.Card = Card;
|
|
10902
12026
|
exports.Carousel = Carousel;
|
|
12027
|
+
exports.CartButton = CartButton;
|
|
10903
12028
|
exports.CartDrawer = CartDrawer;
|
|
12029
|
+
exports.CategoryCard = CategoryCard;
|
|
10904
12030
|
exports.CheckboxInput = CheckboxInput;
|
|
10905
12031
|
exports.CommandPalette = CommandPalette;
|
|
10906
12032
|
exports.CompareTool = CompareTool;
|
|
10907
12033
|
exports.Container = Container;
|
|
10908
12034
|
exports.ContextMenu = ContextMenu;
|
|
10909
12035
|
exports.CookieConsent = CookieConsent;
|
|
12036
|
+
exports.CountdownTimer = CountdownTimer;
|
|
10910
12037
|
exports.CountryFlag = CountryFlag;
|
|
10911
12038
|
exports.CouponInput = CouponInput;
|
|
10912
12039
|
exports.DateTimePicker = DateTimePicker;
|
|
10913
12040
|
exports.EmailInput = EmailInput;
|
|
10914
|
-
exports.
|
|
12041
|
+
exports.EmptyState = EmptyState;
|
|
10915
12042
|
exports.FaqItem = FaqItem;
|
|
10916
12043
|
exports.FaqSection = FaqSection;
|
|
10917
12044
|
exports.FeatureGrid = FeatureGrid;
|
|
10918
12045
|
exports.FeatureItem = FeatureItem2;
|
|
10919
12046
|
exports.FileInput = FileInput;
|
|
10920
12047
|
exports.FilterSidebar = FilterSidebar;
|
|
10921
|
-
exports.Footer =
|
|
12048
|
+
exports.Footer = Footer7;
|
|
10922
12049
|
exports.Lightbox = Lightbox;
|
|
10923
12050
|
exports.List = List3;
|
|
10924
12051
|
exports.LogoCloud = LogoCloud;
|
|
@@ -10937,6 +12064,7 @@ exports.PaginationButton = PaginationButton;
|
|
|
10937
12064
|
exports.PaginationEllipsis = PaginationEllipsis;
|
|
10938
12065
|
exports.Partners = Partners;
|
|
10939
12066
|
exports.PasswordInput = PasswordInput;
|
|
12067
|
+
exports.PaymentMethodSelector = PaymentMethodSelector;
|
|
10940
12068
|
exports.PhoneInput = PhoneInput;
|
|
10941
12069
|
exports.PostCard = PostCard;
|
|
10942
12070
|
exports.PostCardImage = PostCardImage;
|
|
@@ -10947,6 +12075,7 @@ exports.PricingSection = PricingSection;
|
|
|
10947
12075
|
exports.ProcessSection = ProcessSection;
|
|
10948
12076
|
exports.ProcessStep = ProcessStep;
|
|
10949
12077
|
exports.ProductCard = ProductCard;
|
|
12078
|
+
exports.ProductCardHorizontal = ProductCardHorizontal;
|
|
10950
12079
|
exports.ProductGallery = ProductGallery;
|
|
10951
12080
|
exports.ProgressBar = ProgressBar;
|
|
10952
12081
|
exports.ProgressCircle = ProgressCircle;
|
|
@@ -10955,11 +12084,16 @@ exports.Prose = Prose;
|
|
|
10955
12084
|
exports.QuantitySelector = QuantitySelector;
|
|
10956
12085
|
exports.RangeSlider = RangeSlider;
|
|
10957
12086
|
exports.Rating = Rating;
|
|
12087
|
+
exports.RelatedProducts = RelatedProducts;
|
|
12088
|
+
exports.ReviewSection = ReviewSection;
|
|
12089
|
+
exports.SaleBadge = SaleBadge;
|
|
10958
12090
|
exports.SearchInput = SearchInput;
|
|
10959
12091
|
exports.Section = Section;
|
|
10960
12092
|
exports.SectionHeading = SectionHeading;
|
|
10961
12093
|
exports.SelectInput = SelectInput;
|
|
12094
|
+
exports.ShippingSelector = ShippingSelector;
|
|
10962
12095
|
exports.Skeleton = Skeleton;
|
|
12096
|
+
exports.SortBar = SortBar;
|
|
10963
12097
|
exports.Spinner = Spinner3;
|
|
10964
12098
|
exports.StatCard = StatCard;
|
|
10965
12099
|
exports.StatsSection = StatsSection;
|
|
@@ -10973,8 +12107,11 @@ exports.TestimonialsSection = TestimonialsSection;
|
|
|
10973
12107
|
exports.TextInput = TextInput;
|
|
10974
12108
|
exports.TextareaInput = TextareaInput;
|
|
10975
12109
|
exports.Timeline = Timeline;
|
|
12110
|
+
exports.VariantSelector = VariantSelector;
|
|
10976
12111
|
exports.VideoPlayer = VideoPlayer;
|
|
12112
|
+
exports.WishlistButton = WishlistButton;
|
|
10977
12113
|
exports.accordionVariants = accordionVariants;
|
|
12114
|
+
exports.alertSeverities = alertSeverities;
|
|
10978
12115
|
exports.aspectRatioPresets = aspectRatioPresets;
|
|
10979
12116
|
exports.avatarColors = avatarColors;
|
|
10980
12117
|
exports.avatarSizes = avatarSizes;
|
|
@@ -10984,6 +12121,7 @@ exports.badgeVariants = badgeVariants;
|
|
|
10984
12121
|
exports.cardPaddings = cardPaddings;
|
|
10985
12122
|
exports.cardRoundeds = cardRoundeds;
|
|
10986
12123
|
exports.cardVariants = cardVariants;
|
|
12124
|
+
exports.countdownTimerVariants = countdownTimerVariants;
|
|
10987
12125
|
exports.createMyTheme = createMyTheme;
|
|
10988
12126
|
exports.dateTimePickerModes = dateTimePickerModes;
|
|
10989
12127
|
exports.defaultCookieCategories = defaultCookieCategories;
|
|
@@ -11006,6 +12144,8 @@ exports.progressCircleSizes = progressCircleSizes;
|
|
|
11006
12144
|
exports.progressCircleVariants = progressCircleVariants;
|
|
11007
12145
|
exports.promoStripVariants = promoStripVariants;
|
|
11008
12146
|
exports.rangeSliderSizes = rangeSliderSizes;
|
|
12147
|
+
exports.relatedProductsLayouts = relatedProductsLayouts;
|
|
12148
|
+
exports.saleBadgeVariants = saleBadgeVariants;
|
|
11009
12149
|
exports.sectionHeadingAligns = sectionHeadingAligns;
|
|
11010
12150
|
exports.skeletonVariants = skeletonVariants;
|
|
11011
12151
|
exports.spinnerColors = spinnerColors;
|
|
@@ -11022,5 +12162,6 @@ exports.themeHighContrast = themeHighContrast;
|
|
|
11022
12162
|
exports.themeLight = themeLight;
|
|
11023
12163
|
exports.timelineItemStatuses = timelineItemStatuses;
|
|
11024
12164
|
exports.timelineVariants = timelineVariants;
|
|
12165
|
+
exports.variantSelectorModes = variantSelectorModes;
|
|
11025
12166
|
//# sourceMappingURL=index.cjs.map
|
|
11026
12167
|
//# sourceMappingURL=index.cjs.map
|