@szymonpiatek/designsystem 0.0.7 → 0.0.9
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 +1830 -1234
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +349 -67
- package/dist/index.d.ts +349 -67
- package/dist/index.js +1804 -1232
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -29,10 +29,14 @@ var ImageIcon = require('@mui/icons-material/Image');
|
|
|
29
29
|
var ArticleIcon = require('@mui/icons-material/Article');
|
|
30
30
|
var CheckCircleOutlinedIcon = require('@mui/icons-material/CheckCircleOutlined');
|
|
31
31
|
var HighlightOffIcon = require('@mui/icons-material/HighlightOff');
|
|
32
|
+
var ContentCopyIcon = require('@mui/icons-material/ContentCopy');
|
|
33
|
+
var LocalOfferIcon = require('@mui/icons-material/LocalOffer');
|
|
32
34
|
var CreditCardOutlinedIcon = require('@mui/icons-material/CreditCardOutlined');
|
|
33
35
|
var LocalShippingOutlinedIcon = require('@mui/icons-material/LocalShippingOutlined');
|
|
34
36
|
var GridViewIcon = require('@mui/icons-material/GridView');
|
|
35
37
|
var ViewListIcon = require('@mui/icons-material/ViewList');
|
|
38
|
+
var ThumbUpOutlinedIcon = require('@mui/icons-material/ThumbUpOutlined');
|
|
39
|
+
var ReplyIcon = require('@mui/icons-material/Reply');
|
|
36
40
|
var reactDom = require('react-dom');
|
|
37
41
|
var KeyboardDoubleArrowLeftIcon = require('@mui/icons-material/KeyboardDoubleArrowLeft');
|
|
38
42
|
var KeyboardDoubleArrowRightIcon = require('@mui/icons-material/KeyboardDoubleArrowRight');
|
|
@@ -41,7 +45,6 @@ var WarningAmberOutlinedIcon = require('@mui/icons-material/WarningAmberOutlined
|
|
|
41
45
|
var ErrorOutlineOutlinedIcon = require('@mui/icons-material/ErrorOutlineOutlined');
|
|
42
46
|
var InboxOutlinedIcon = require('@mui/icons-material/InboxOutlined');
|
|
43
47
|
var VerifiedIcon = require('@mui/icons-material/Verified');
|
|
44
|
-
var ThumbUpOutlinedIcon = require('@mui/icons-material/ThumbUpOutlined');
|
|
45
48
|
var ArrowForwardIcon = require('@mui/icons-material/ArrowForward');
|
|
46
49
|
var MenuIcon = require('@mui/icons-material/Menu');
|
|
47
50
|
|
|
@@ -70,10 +73,14 @@ var ImageIcon__default = /*#__PURE__*/_interopDefault(ImageIcon);
|
|
|
70
73
|
var ArticleIcon__default = /*#__PURE__*/_interopDefault(ArticleIcon);
|
|
71
74
|
var CheckCircleOutlinedIcon__default = /*#__PURE__*/_interopDefault(CheckCircleOutlinedIcon);
|
|
72
75
|
var HighlightOffIcon__default = /*#__PURE__*/_interopDefault(HighlightOffIcon);
|
|
76
|
+
var ContentCopyIcon__default = /*#__PURE__*/_interopDefault(ContentCopyIcon);
|
|
77
|
+
var LocalOfferIcon__default = /*#__PURE__*/_interopDefault(LocalOfferIcon);
|
|
73
78
|
var CreditCardOutlinedIcon__default = /*#__PURE__*/_interopDefault(CreditCardOutlinedIcon);
|
|
74
79
|
var LocalShippingOutlinedIcon__default = /*#__PURE__*/_interopDefault(LocalShippingOutlinedIcon);
|
|
75
80
|
var GridViewIcon__default = /*#__PURE__*/_interopDefault(GridViewIcon);
|
|
76
81
|
var ViewListIcon__default = /*#__PURE__*/_interopDefault(ViewListIcon);
|
|
82
|
+
var ThumbUpOutlinedIcon__default = /*#__PURE__*/_interopDefault(ThumbUpOutlinedIcon);
|
|
83
|
+
var ReplyIcon__default = /*#__PURE__*/_interopDefault(ReplyIcon);
|
|
77
84
|
var KeyboardDoubleArrowLeftIcon__default = /*#__PURE__*/_interopDefault(KeyboardDoubleArrowLeftIcon);
|
|
78
85
|
var KeyboardDoubleArrowRightIcon__default = /*#__PURE__*/_interopDefault(KeyboardDoubleArrowRightIcon);
|
|
79
86
|
var InfoOutlinedIcon__default = /*#__PURE__*/_interopDefault(InfoOutlinedIcon);
|
|
@@ -81,7 +88,6 @@ var WarningAmberOutlinedIcon__default = /*#__PURE__*/_interopDefault(WarningAmbe
|
|
|
81
88
|
var ErrorOutlineOutlinedIcon__default = /*#__PURE__*/_interopDefault(ErrorOutlineOutlinedIcon);
|
|
82
89
|
var InboxOutlinedIcon__default = /*#__PURE__*/_interopDefault(InboxOutlinedIcon);
|
|
83
90
|
var VerifiedIcon__default = /*#__PURE__*/_interopDefault(VerifiedIcon);
|
|
84
|
-
var ThumbUpOutlinedIcon__default = /*#__PURE__*/_interopDefault(ThumbUpOutlinedIcon);
|
|
85
91
|
var ArrowForwardIcon__default = /*#__PURE__*/_interopDefault(ArrowForwardIcon);
|
|
86
92
|
var MenuIcon__default = /*#__PURE__*/_interopDefault(MenuIcon);
|
|
87
93
|
|
|
@@ -3366,6 +3372,19 @@ var COUNTRIES = countries_default.countries.map((c) => {
|
|
|
3366
3372
|
};
|
|
3367
3373
|
}).sort((a, b) => a.country.localeCompare(b.country, "pl"));
|
|
3368
3374
|
var DEFAULT_COUNTRY = COUNTRIES.find((c) => c.flagCode === "US") ?? COUNTRIES[0];
|
|
3375
|
+
var COUNTRIES_BY_DIAL_CODE_LENGTH = [...COUNTRIES].sort(
|
|
3376
|
+
(a, b) => b.dialCode.length - a.dialCode.length
|
|
3377
|
+
);
|
|
3378
|
+
var parsePhoneValue = (full) => {
|
|
3379
|
+
if (full.startsWith("+")) {
|
|
3380
|
+
for (const c of COUNTRIES_BY_DIAL_CODE_LENGTH) {
|
|
3381
|
+
if (full.startsWith(c.dialCode)) {
|
|
3382
|
+
return { country: c, localDigits: full.slice(c.dialCode.length).replace(/\D/g, "") };
|
|
3383
|
+
}
|
|
3384
|
+
}
|
|
3385
|
+
}
|
|
3386
|
+
return { country: DEFAULT_COUNTRY, localDigits: full.replace(/\D/g, "") };
|
|
3387
|
+
};
|
|
3369
3388
|
var wrapperColors = (theme, error, focused) => ({
|
|
3370
3389
|
borderColor: focused ? error ? theme.palette.error.main : theme.palette.primary.main : error ? theme.palette.error.main : theme.palette.divider,
|
|
3371
3390
|
boxShadow: focused ? `0 0 0 3px ${error ? theme.palette.error.main : theme.palette.primary.main}33` : "none",
|
|
@@ -3553,13 +3572,24 @@ var PhoneInput = react.forwardRef(
|
|
|
3553
3572
|
() => COUNTRIES.find((c) => c.flagCode === defaultCountry) ?? DEFAULT_COUNTRY,
|
|
3554
3573
|
[defaultCountry]
|
|
3555
3574
|
);
|
|
3556
|
-
const [selectedCountry, setSelectedCountry] = react.useState(
|
|
3575
|
+
const [selectedCountry, setSelectedCountry] = react.useState(() => {
|
|
3576
|
+
if (defaultValue?.startsWith("+")) return parsePhoneValue(defaultValue).country;
|
|
3577
|
+
return initialCountry;
|
|
3578
|
+
});
|
|
3557
3579
|
const [isOpen, setIsOpen] = react.useState(false);
|
|
3558
3580
|
const [searchQuery, setSearchQuery] = react.useState("");
|
|
3559
3581
|
const [focused, setFocused] = react.useState(false);
|
|
3560
3582
|
const isControlled = value !== void 0;
|
|
3561
|
-
const [
|
|
3562
|
-
|
|
3583
|
+
const [internalDigits, setInternalDigits] = react.useState(() => {
|
|
3584
|
+
if (defaultValue?.startsWith("+")) return parsePhoneValue(defaultValue).localDigits;
|
|
3585
|
+
return defaultValue ?? "";
|
|
3586
|
+
});
|
|
3587
|
+
const parsedControlled = react.useMemo(() => {
|
|
3588
|
+
if (!isControlled || typeof value !== "string" || !value.startsWith("+")) return null;
|
|
3589
|
+
return parsePhoneValue(value);
|
|
3590
|
+
}, [isControlled, value]);
|
|
3591
|
+
const activeCountry = parsedControlled?.country ?? selectedCountry;
|
|
3592
|
+
const inputDisplayValue = isControlled ? parsedControlled?.localDigits ?? (typeof value === "string" ? value : "") ?? "" : internalDigits;
|
|
3563
3593
|
const rootRef = react.useRef(null);
|
|
3564
3594
|
const searchRef = react.useRef(null);
|
|
3565
3595
|
const filteredCountries = react.useMemo(() => {
|
|
@@ -3584,21 +3614,29 @@ var PhoneInput = react.forwardRef(
|
|
|
3584
3614
|
setSelectedCountry(country);
|
|
3585
3615
|
onCountryChange?.(country);
|
|
3586
3616
|
close();
|
|
3587
|
-
if (!isControlled)
|
|
3588
|
-
onChange?.(
|
|
3617
|
+
if (!isControlled) setInternalDigits("");
|
|
3618
|
+
onChange?.(country.dialCode, { country, dialCode: country.dialCode, fullNumber: country.dialCode });
|
|
3589
3619
|
};
|
|
3590
3620
|
const handlePhoneChange = (e) => {
|
|
3591
|
-
const raw = e.target.value
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
|
|
3595
|
-
country
|
|
3596
|
-
|
|
3597
|
-
|
|
3598
|
-
|
|
3621
|
+
const raw = e.target.value;
|
|
3622
|
+
if (raw.startsWith("+")) {
|
|
3623
|
+
const { country, localDigits } = parsePhoneValue(raw);
|
|
3624
|
+
const clamped = localDigits.slice(0, country.maxLength);
|
|
3625
|
+
setSelectedCountry(country);
|
|
3626
|
+
onCountryChange?.(country);
|
|
3627
|
+
if (!isControlled) setInternalDigits(clamped);
|
|
3628
|
+
const full = country.dialCode + clamped;
|
|
3629
|
+
onChange?.(full, { country, dialCode: country.dialCode, fullNumber: full });
|
|
3630
|
+
} else {
|
|
3631
|
+
const clamped = raw.replace(/\D/g, "").slice(0, activeCountry.maxLength);
|
|
3632
|
+
if (!isControlled) setInternalDigits(clamped);
|
|
3633
|
+
const full = activeCountry.dialCode + clamped;
|
|
3634
|
+
onChange?.(full, { country: activeCountry, dialCode: activeCountry.dialCode, fullNumber: full });
|
|
3635
|
+
}
|
|
3599
3636
|
};
|
|
3600
3637
|
const handlePhoneKeyDown = (e) => {
|
|
3601
3638
|
if (e.ctrlKey || e.metaKey || e.altKey || e.key.length > 1) return;
|
|
3639
|
+
if (e.key === "+" && e.target.value === "") return;
|
|
3602
3640
|
if (!/^\d$/.test(e.key)) e.preventDefault();
|
|
3603
3641
|
};
|
|
3604
3642
|
react.useEffect(() => {
|
|
@@ -3609,7 +3647,7 @@ var PhoneInput = react.forwardRef(
|
|
|
3609
3647
|
document.addEventListener("mousedown", handler);
|
|
3610
3648
|
return () => document.removeEventListener("mousedown", handler);
|
|
3611
3649
|
}, [isOpen, close]);
|
|
3612
|
-
const derivedPlaceholder = placeholder ?? (
|
|
3650
|
+
const derivedPlaceholder = placeholder ?? (activeCountry.minLength === activeCountry.maxLength ? `${activeCountry.maxLength} ${digitsLabel}` : `${activeCountry.minLength}\u2013${activeCountry.maxLength} ${digitsLabel}`);
|
|
3613
3651
|
return /* @__PURE__ */ jsxRuntime.jsxs(Root8, { $fullWidth: fullWidth, ref: rootRef, children: [
|
|
3614
3652
|
label && /* @__PURE__ */ jsxRuntime.jsx(Label, { htmlFor: inputId, error, size, children: label }),
|
|
3615
3653
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -3631,14 +3669,14 @@ var PhoneInput = react.forwardRef(
|
|
|
3631
3669
|
"aria-haspopup": "listbox",
|
|
3632
3670
|
"aria-expanded": isOpen,
|
|
3633
3671
|
"aria-controls": isOpen ? listboxId : void 0,
|
|
3634
|
-
"aria-label": countrySelectAriaLabel(
|
|
3672
|
+
"aria-label": countrySelectAriaLabel(activeCountry.country, activeCountry.dialCode),
|
|
3635
3673
|
onClick: openDropdown,
|
|
3636
3674
|
onKeyDown: (e) => e.key === "Escape" && close(),
|
|
3637
3675
|
onFocus: () => setFocused(true),
|
|
3638
3676
|
onBlur: () => setFocused(false),
|
|
3639
3677
|
children: [
|
|
3640
|
-
/* @__PURE__ */ jsxRuntime.jsx(CountryFlag, { countryCode:
|
|
3641
|
-
/* @__PURE__ */ jsxRuntime.jsx(DialCode, { children:
|
|
3678
|
+
/* @__PURE__ */ jsxRuntime.jsx(CountryFlag, { countryCode: activeCountry.flagCode, size }),
|
|
3679
|
+
/* @__PURE__ */ jsxRuntime.jsx(DialCode, { children: activeCountry.dialCode }),
|
|
3642
3680
|
/* @__PURE__ */ jsxRuntime.jsx(ChevronIcon, { $open: isOpen, children: /* @__PURE__ */ jsxRuntime.jsx(Chevron, {}) })
|
|
3643
3681
|
]
|
|
3644
3682
|
}
|
|
@@ -3652,14 +3690,14 @@ var PhoneInput = react.forwardRef(
|
|
|
3652
3690
|
$size: size,
|
|
3653
3691
|
type: "tel",
|
|
3654
3692
|
inputMode: "numeric",
|
|
3655
|
-
value:
|
|
3693
|
+
value: inputDisplayValue,
|
|
3656
3694
|
onChange: handlePhoneChange,
|
|
3657
3695
|
onKeyDown: handlePhoneKeyDown,
|
|
3658
3696
|
onFocus: () => setFocused(true),
|
|
3659
3697
|
onBlur: () => setFocused(false),
|
|
3660
3698
|
disabled,
|
|
3661
3699
|
placeholder: derivedPlaceholder,
|
|
3662
|
-
maxLength:
|
|
3700
|
+
maxLength: activeCountry.maxLength,
|
|
3663
3701
|
"aria-label": label ? void 0 : phoneAriaLabel
|
|
3664
3702
|
}
|
|
3665
3703
|
),
|
|
@@ -3676,26 +3714,23 @@ var PhoneInput = react.forwardRef(
|
|
|
3676
3714
|
"aria-label": countrySearchAriaLabel
|
|
3677
3715
|
}
|
|
3678
3716
|
) }),
|
|
3679
|
-
/* @__PURE__ */ jsxRuntime.jsx(OptionList, { children: filteredCountries.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(EmptyMessage, { children: "Nie znaleziono kraju" }) : filteredCountries.map((country) =>
|
|
3680
|
-
|
|
3681
|
-
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
|
-
|
|
3686
|
-
|
|
3687
|
-
|
|
3688
|
-
|
|
3689
|
-
|
|
3690
|
-
children:
|
|
3691
|
-
|
|
3692
|
-
|
|
3693
|
-
|
|
3694
|
-
|
|
3695
|
-
|
|
3696
|
-
country.flagCode
|
|
3697
|
-
);
|
|
3698
|
-
}) })
|
|
3717
|
+
/* @__PURE__ */ jsxRuntime.jsx(OptionList, { children: filteredCountries.length === 0 ? /* @__PURE__ */ jsxRuntime.jsx(EmptyMessage, { children: "Nie znaleziono kraju" }) : filteredCountries.map((country) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3718
|
+
OptionItem2,
|
|
3719
|
+
{
|
|
3720
|
+
role: "option",
|
|
3721
|
+
"aria-selected": country.flagCode === activeCountry.flagCode,
|
|
3722
|
+
$selected: country.flagCode === activeCountry.flagCode,
|
|
3723
|
+
onClick: () => selectCountry(country),
|
|
3724
|
+
onKeyDown: (e) => e.key === "Enter" && selectCountry(country),
|
|
3725
|
+
tabIndex: 0,
|
|
3726
|
+
children: [
|
|
3727
|
+
/* @__PURE__ */ jsxRuntime.jsx(CountryFlag, { countryCode: country.flagCode, size: "sm" }),
|
|
3728
|
+
/* @__PURE__ */ jsxRuntime.jsx(CountryName, { children: country.country }),
|
|
3729
|
+
/* @__PURE__ */ jsxRuntime.jsx(OptionDialCode, { children: country.dialCode })
|
|
3730
|
+
]
|
|
3731
|
+
},
|
|
3732
|
+
country.flagCode
|
|
3733
|
+
)) })
|
|
3699
3734
|
] })
|
|
3700
3735
|
]
|
|
3701
3736
|
}
|
|
@@ -4830,55 +4865,51 @@ var cardVariants = [
|
|
|
4830
4865
|
];
|
|
4831
4866
|
var cardPaddings = ["none", "sm", "md", "lg", "xl"];
|
|
4832
4867
|
var cardRoundeds = ["none", "sm", "md", "lg", "full"];
|
|
4833
|
-
|
|
4834
|
-
|
|
4835
|
-
|
|
4836
|
-
|
|
4837
|
-
|
|
4838
|
-
|
|
4839
|
-
|
|
4840
|
-
|
|
4841
|
-
|
|
4842
|
-
|
|
4843
|
-
|
|
4844
|
-
|
|
4845
|
-
|
|
4846
|
-
|
|
4847
|
-
|
|
4848
|
-
|
|
4849
|
-
|
|
4850
|
-
|
|
4851
|
-
|
|
4852
|
-
|
|
4853
|
-
|
|
4854
|
-
|
|
4855
|
-
|
|
4856
|
-
|
|
4857
|
-
|
|
4858
|
-
|
|
4859
|
-
|
|
4860
|
-
|
|
4861
|
-
|
|
4862
|
-
|
|
4863
|
-
|
|
4864
|
-
|
|
4865
|
-
|
|
4866
|
-
|
|
4867
|
-
|
|
4868
|
-
|
|
4869
|
-
|
|
4870
|
-
|
|
4871
|
-
|
|
4872
|
-
|
|
4873
|
-
|
|
4874
|
-
|
|
4875
|
-
|
|
4876
|
-
|
|
4877
|
-
|
|
4878
|
-
border: "1px solid transparent"
|
|
4879
|
-
};
|
|
4880
|
-
}
|
|
4881
|
-
}
|
|
4868
|
+
|
|
4869
|
+
// src/components/atoms/badges/Badge/Badge.variants.ts
|
|
4870
|
+
var variantStyles2 = {
|
|
4871
|
+
default: (theme) => ({
|
|
4872
|
+
backgroundColor: theme.palette.primary.main,
|
|
4873
|
+
color: "#fff",
|
|
4874
|
+
border: "1px solid transparent"
|
|
4875
|
+
}),
|
|
4876
|
+
secondary: (theme) => ({
|
|
4877
|
+
backgroundColor: theme.palette.secondary.main,
|
|
4878
|
+
color: "#fff",
|
|
4879
|
+
border: "1px solid transparent"
|
|
4880
|
+
}),
|
|
4881
|
+
outline: (theme) => ({
|
|
4882
|
+
backgroundColor: "transparent",
|
|
4883
|
+
border: `1px solid ${theme.palette.divider}`,
|
|
4884
|
+
color: theme.palette.text.primary
|
|
4885
|
+
}),
|
|
4886
|
+
destructive: (theme) => ({
|
|
4887
|
+
backgroundColor: theme.palette.error.main,
|
|
4888
|
+
color: "#fff",
|
|
4889
|
+
border: "1px solid transparent"
|
|
4890
|
+
}),
|
|
4891
|
+
success: (theme) => ({
|
|
4892
|
+
backgroundColor: theme.palette.success.main,
|
|
4893
|
+
color: "#fff",
|
|
4894
|
+
border: "1px solid transparent"
|
|
4895
|
+
}),
|
|
4896
|
+
ghost: (theme) => ({
|
|
4897
|
+
backgroundColor: "rgba(255,255,255,0.15)",
|
|
4898
|
+
color: theme.palette.common.white,
|
|
4899
|
+
border: "1px solid rgba(255,255,255,0.4)"
|
|
4900
|
+
}),
|
|
4901
|
+
warning: (theme) => ({
|
|
4902
|
+
backgroundColor: theme.palette.warning.main,
|
|
4903
|
+
color: "#fff",
|
|
4904
|
+
border: "1px solid transparent"
|
|
4905
|
+
}),
|
|
4906
|
+
promo: (theme) => ({
|
|
4907
|
+
backgroundColor: theme.palette.success.main,
|
|
4908
|
+
color: "#fff",
|
|
4909
|
+
border: "1px solid transparent"
|
|
4910
|
+
})
|
|
4911
|
+
};
|
|
4912
|
+
var badgeVariants = Object.keys(variantStyles2);
|
|
4882
4913
|
var StyledBadge = styles.styled("span", {
|
|
4883
4914
|
shouldForwardProp: (prop) => prop !== "$variant"
|
|
4884
4915
|
})(({ theme, $variant }) => ({
|
|
@@ -4889,54 +4920,11 @@ var StyledBadge = styles.styled("span", {
|
|
|
4889
4920
|
fontWeight: 500,
|
|
4890
4921
|
lineHeight: 1,
|
|
4891
4922
|
fontFamily: theme.typography.fontFamily,
|
|
4892
|
-
...
|
|
4923
|
+
...variantStyles2[$variant](theme)
|
|
4893
4924
|
}));
|
|
4894
4925
|
function Badge2({ variant = "default", ...props }) {
|
|
4895
4926
|
return /* @__PURE__ */ jsxRuntime.jsx(StyledBadge, { $variant: variant, ...props });
|
|
4896
4927
|
}
|
|
4897
|
-
var badgeVariants = [
|
|
4898
|
-
"default",
|
|
4899
|
-
"secondary",
|
|
4900
|
-
"outline",
|
|
4901
|
-
"destructive",
|
|
4902
|
-
"success",
|
|
4903
|
-
"ghost",
|
|
4904
|
-
"promo"
|
|
4905
|
-
];
|
|
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
4928
|
var sizeMap4 = {
|
|
4941
4929
|
sm: { width: "2rem", height: "2rem", fontSize: "0.75rem" },
|
|
4942
4930
|
md: { width: "2.5rem", height: "2.5rem", fontSize: "0.875rem" },
|
|
@@ -5085,7 +5073,7 @@ var spin = react$1.keyframes`to { transform: rotate(360deg); }`;
|
|
|
5085
5073
|
var fade = react$1.keyframes`0%,100%{opacity:.15} 50%{opacity:1}`;
|
|
5086
5074
|
var scalePulse = react$1.keyframes`0%,100%{transform:scale(0.6);opacity:.4} 50%{transform:scale(1);opacity:1}`;
|
|
5087
5075
|
var barAnim = react$1.keyframes`0%,100%{transform:scaleY(.4);opacity:.5} 50%{transform:scaleY(1);opacity:1}`;
|
|
5088
|
-
var
|
|
5076
|
+
var Root12 = styles.styled("span", {
|
|
5089
5077
|
shouldForwardProp: (p) => !["$size", "$color"].includes(p)
|
|
5090
5078
|
})(({ theme, $size, $color }) => {
|
|
5091
5079
|
const colorMap = {
|
|
@@ -5173,8 +5161,8 @@ function Spinner3({
|
|
|
5173
5161
|
label = "\u0141adowanie\u2026",
|
|
5174
5162
|
...props
|
|
5175
5163
|
}) {
|
|
5176
|
-
const
|
|
5177
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5164
|
+
const Inner5 = VARIANTS[variant];
|
|
5165
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root12, { $size: size, $color: color, role: "status", "aria-label": label, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(Inner5, {}) });
|
|
5178
5166
|
}
|
|
5179
5167
|
var spinnerVariants = ["ring", "dots", "pulse", "bars"];
|
|
5180
5168
|
var spinnerSizes = ["xs", "sm", "md", "lg", "xl"];
|
|
@@ -5300,7 +5288,7 @@ var FONT_MAP = {
|
|
|
5300
5288
|
lg: "1.125rem",
|
|
5301
5289
|
xl: "1.5rem"
|
|
5302
5290
|
};
|
|
5303
|
-
var
|
|
5291
|
+
var Root13 = styles.styled("div")({ position: "relative", display: "inline-flex", flexShrink: 0 });
|
|
5304
5292
|
var Label2 = styles.styled("div", {
|
|
5305
5293
|
shouldForwardProp: (p) => p !== "$size"
|
|
5306
5294
|
})(({ theme, $size }) => ({
|
|
@@ -5354,7 +5342,7 @@ function ProgressCircle({
|
|
|
5354
5342
|
const { color, gradient } = useStrokeColor(variant, gradientId);
|
|
5355
5343
|
const trackColor = theme.palette.mode === "dark" ? "rgba(255,255,255,0.1)" : "rgba(0,0,0,0.08)";
|
|
5356
5344
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5357
|
-
|
|
5345
|
+
Root13,
|
|
5358
5346
|
{
|
|
5359
5347
|
role: "progressbar",
|
|
5360
5348
|
"aria-valuenow": value,
|
|
@@ -5711,9 +5699,10 @@ var PRESET_MAP = {
|
|
|
5711
5699
|
"3/4": 3 / 4,
|
|
5712
5700
|
"2/3": 2 / 3
|
|
5713
5701
|
};
|
|
5714
|
-
var
|
|
5702
|
+
var Root14 = styles.styled("div")({
|
|
5715
5703
|
position: "relative",
|
|
5716
5704
|
width: "100%",
|
|
5705
|
+
aspectRatio: "var(--ar)",
|
|
5717
5706
|
"& > *": {
|
|
5718
5707
|
position: "absolute",
|
|
5719
5708
|
inset: 0,
|
|
@@ -5725,32 +5714,25 @@ var Root15 = styles.styled("div")({
|
|
|
5725
5714
|
var AspectRatio = react.forwardRef(
|
|
5726
5715
|
({ ratio = "16/9", children, style, ...props }, ref) => {
|
|
5727
5716
|
const numericRatio = typeof ratio === "string" ? PRESET_MAP[ratio] ?? 16 / 9 : ratio;
|
|
5728
|
-
|
|
5729
|
-
|
|
5717
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5718
|
+
Root14,
|
|
5719
|
+
{
|
|
5720
|
+
ref,
|
|
5721
|
+
style: { "--ar": String(numericRatio), ...style },
|
|
5722
|
+
...props,
|
|
5723
|
+
children
|
|
5724
|
+
}
|
|
5725
|
+
);
|
|
5730
5726
|
}
|
|
5731
5727
|
);
|
|
5732
5728
|
AspectRatio.displayName = "AspectRatio";
|
|
5733
5729
|
var aspectRatioPresets = Object.keys(PRESET_MAP);
|
|
5734
|
-
var
|
|
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")({
|
|
5730
|
+
var Img = styles.styled("img")({
|
|
5749
5731
|
objectFit: "cover",
|
|
5750
5732
|
width: "100%",
|
|
5751
5733
|
height: "100%"
|
|
5752
5734
|
});
|
|
5753
|
-
var
|
|
5735
|
+
var Placeholder2 = styles.styled("div")(({ theme }) => ({
|
|
5754
5736
|
width: "100%",
|
|
5755
5737
|
height: "100%",
|
|
5756
5738
|
backgroundColor: theme.palette.action.hover,
|
|
@@ -5759,7 +5741,9 @@ var ImagePlaceholder = styles.styled("div")(({ theme }) => ({
|
|
|
5759
5741
|
justifyContent: "center",
|
|
5760
5742
|
color: theme.palette.text.disabled
|
|
5761
5743
|
}));
|
|
5762
|
-
var
|
|
5744
|
+
var CategoryCardImage = ({ src, alt }) => /* @__PURE__ */ jsxRuntime.jsx(AspectRatio, { ratio: "4/3", children: src ? /* @__PURE__ */ jsxRuntime.jsx(Img, { src, alt }) : /* @__PURE__ */ jsxRuntime.jsx(Placeholder2, { "aria-label": alt, children: /* @__PURE__ */ jsxRuntime.jsx(ImageIcon__default.default, { style: { fontSize: 48 } }) }) });
|
|
5745
|
+
CategoryCardImage.displayName = "CategoryCardImage";
|
|
5746
|
+
var Root15 = styles.styled("div")({
|
|
5763
5747
|
display: "flex",
|
|
5764
5748
|
flexDirection: "column",
|
|
5765
5749
|
gap: "0.25rem"
|
|
@@ -5777,6 +5761,33 @@ var Count = styles.styled("span")(({ theme }) => ({
|
|
|
5777
5761
|
fontFamily: theme.typography.fontFamily,
|
|
5778
5762
|
fontSize: "0.875rem"
|
|
5779
5763
|
}));
|
|
5764
|
+
var CategoryCardInfo = ({
|
|
5765
|
+
name,
|
|
5766
|
+
count,
|
|
5767
|
+
countLabel = "produkt\xF3w"
|
|
5768
|
+
}) => /* @__PURE__ */ jsxRuntime.jsxs(Root15, { children: [
|
|
5769
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name, { children: name }),
|
|
5770
|
+
count !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(Count, { children: [
|
|
5771
|
+
count,
|
|
5772
|
+
" ",
|
|
5773
|
+
countLabel
|
|
5774
|
+
] })
|
|
5775
|
+
] });
|
|
5776
|
+
CategoryCardInfo.displayName = "CategoryCardInfo";
|
|
5777
|
+
var Root16 = styles.styled(Card)(({ theme }) => ({
|
|
5778
|
+
display: "flex",
|
|
5779
|
+
flexDirection: "column",
|
|
5780
|
+
overflow: "hidden",
|
|
5781
|
+
cursor: "pointer",
|
|
5782
|
+
transition: "box-shadow 150ms ease, transform 150ms ease",
|
|
5783
|
+
"&:hover": {
|
|
5784
|
+
boxShadow: theme.shadows[4],
|
|
5785
|
+
transform: "translateY(-2px)"
|
|
5786
|
+
}
|
|
5787
|
+
}));
|
|
5788
|
+
var ImageWrap = styles.styled("div")({
|
|
5789
|
+
margin: "-1.5rem -1.5rem 1rem"
|
|
5790
|
+
});
|
|
5780
5791
|
var CardLink = styles.styled("a")({
|
|
5781
5792
|
display: "block",
|
|
5782
5793
|
textDecoration: "none",
|
|
@@ -5786,90 +5797,95 @@ var CardLink = styles.styled("a")({
|
|
|
5786
5797
|
var CategoryCard = react.forwardRef(
|
|
5787
5798
|
({ name, imageUrl, imageAlt, count, href, ...props }, ref) => {
|
|
5788
5799
|
const content = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
5789
|
-
/* @__PURE__ */ jsxRuntime.jsx(ImageWrap, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
5790
|
-
/* @__PURE__ */ jsxRuntime.
|
|
5791
|
-
/* @__PURE__ */ jsxRuntime.jsx(Name, { children: name }),
|
|
5792
|
-
count !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(Count, { children: [
|
|
5793
|
-
count,
|
|
5794
|
-
" produkt\xF3w"
|
|
5795
|
-
] })
|
|
5796
|
-
] })
|
|
5800
|
+
/* @__PURE__ */ jsxRuntime.jsx(ImageWrap, { children: /* @__PURE__ */ jsxRuntime.jsx(CategoryCardImage, { src: imageUrl, alt: imageAlt ?? name }) }),
|
|
5801
|
+
/* @__PURE__ */ jsxRuntime.jsx(CategoryCardInfo, { name, count })
|
|
5797
5802
|
] });
|
|
5798
5803
|
return /* @__PURE__ */ jsxRuntime.jsx(Root16, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: href ? /* @__PURE__ */ jsxRuntime.jsx(CardLink, { href, children: content }) : content });
|
|
5799
5804
|
}
|
|
5800
5805
|
);
|
|
5801
5806
|
CategoryCard.displayName = "CategoryCard";
|
|
5802
|
-
|
|
5803
|
-
|
|
5804
|
-
|
|
5805
|
-
|
|
5806
|
-
|
|
5807
|
-
var Root17 = styles.styled("div")(({ theme }) => ({
|
|
5808
|
-
display: "inline-flex",
|
|
5807
|
+
function deriveInitials(name) {
|
|
5808
|
+
return name.split(/\s+/).filter(Boolean).slice(0, 2).map((p) => p[0]?.toUpperCase() ?? "").join("");
|
|
5809
|
+
}
|
|
5810
|
+
var Root17 = styles.styled(Card)({
|
|
5811
|
+
display: "flex",
|
|
5809
5812
|
alignItems: "center",
|
|
5810
|
-
|
|
5811
|
-
|
|
5812
|
-
|
|
5813
|
-
})
|
|
5814
|
-
var
|
|
5815
|
-
|
|
5813
|
+
justifyContent: "space-between",
|
|
5814
|
+
gap: "1rem",
|
|
5815
|
+
flexWrap: "wrap"
|
|
5816
|
+
});
|
|
5817
|
+
var AvatarImg = styles.styled("img")({
|
|
5818
|
+
borderRadius: "50%",
|
|
5819
|
+
objectFit: "cover",
|
|
5820
|
+
flexShrink: 0
|
|
5821
|
+
});
|
|
5822
|
+
var Identity = styles.styled("div")({
|
|
5823
|
+
display: "flex",
|
|
5816
5824
|
alignItems: "center",
|
|
5817
|
-
gap: "
|
|
5825
|
+
gap: "1rem",
|
|
5826
|
+
flex: 1,
|
|
5827
|
+
minWidth: 0
|
|
5818
5828
|
});
|
|
5819
|
-
var
|
|
5820
|
-
|
|
5821
|
-
|
|
5822
|
-
|
|
5823
|
-
|
|
5824
|
-
|
|
5825
|
-
|
|
5826
|
-
|
|
5827
|
-
|
|
5828
|
-
|
|
5829
|
-
|
|
5830
|
-
|
|
5831
|
-
|
|
5832
|
-
|
|
5833
|
-
);
|
|
5834
|
-
var Meta = styles.styled("span")(({ theme }) => ({
|
|
5829
|
+
var TextBlock = styles.styled("div")({ minWidth: 0 });
|
|
5830
|
+
var Name2 = styles.styled("h2")(({ theme }) => ({
|
|
5831
|
+
margin: 0,
|
|
5832
|
+
fontFamily: theme.typography.fontFamily,
|
|
5833
|
+
fontSize: "1.25rem",
|
|
5834
|
+
fontWeight: 700,
|
|
5835
|
+
color: theme.palette.text.primary,
|
|
5836
|
+
whiteSpace: "nowrap",
|
|
5837
|
+
overflow: "hidden",
|
|
5838
|
+
textOverflow: "ellipsis"
|
|
5839
|
+
}));
|
|
5840
|
+
var Subtitle = styles.styled("p")(({ theme }) => ({
|
|
5841
|
+
margin: "0.25rem 0 0",
|
|
5842
|
+
fontFamily: theme.typography.fontFamily,
|
|
5835
5843
|
fontSize: "0.875rem",
|
|
5836
|
-
color: theme.palette.text.secondary
|
|
5844
|
+
color: theme.palette.text.secondary,
|
|
5845
|
+
whiteSpace: "nowrap",
|
|
5846
|
+
overflow: "hidden",
|
|
5847
|
+
textOverflow: "ellipsis"
|
|
5837
5848
|
}));
|
|
5838
|
-
var
|
|
5839
|
-
|
|
5840
|
-
|
|
5841
|
-
|
|
5842
|
-
|
|
5843
|
-
|
|
5844
|
-
|
|
5845
|
-
|
|
5846
|
-
|
|
5847
|
-
|
|
5848
|
-
|
|
5849
|
-
|
|
5850
|
-
|
|
5851
|
-
|
|
5852
|
-
|
|
5853
|
-
|
|
5854
|
-
|
|
5855
|
-
|
|
5856
|
-
|
|
5857
|
-
|
|
5858
|
-
|
|
5859
|
-
|
|
5860
|
-
|
|
5861
|
-
|
|
5862
|
-
|
|
5863
|
-
|
|
5864
|
-
|
|
5865
|
-
|
|
5866
|
-
|
|
5867
|
-
|
|
5868
|
-
|
|
5849
|
+
var Actions = styles.styled("div")({
|
|
5850
|
+
display: "flex",
|
|
5851
|
+
alignItems: "center",
|
|
5852
|
+
gap: "0.75rem",
|
|
5853
|
+
flexWrap: "wrap",
|
|
5854
|
+
justifyContent: "flex-end"
|
|
5855
|
+
});
|
|
5856
|
+
var sizeMap5 = {
|
|
5857
|
+
sm: "2rem",
|
|
5858
|
+
md: "2.5rem",
|
|
5859
|
+
lg: "3rem",
|
|
5860
|
+
xl: "4rem"
|
|
5861
|
+
};
|
|
5862
|
+
var ProfileCard = react.forwardRef(
|
|
5863
|
+
({
|
|
5864
|
+
name,
|
|
5865
|
+
subtitle,
|
|
5866
|
+
initials,
|
|
5867
|
+
avatarUrl,
|
|
5868
|
+
avatarColor = "primary",
|
|
5869
|
+
avatarSize = "xl",
|
|
5870
|
+
actions,
|
|
5871
|
+
cardVariant = "default",
|
|
5872
|
+
...props
|
|
5873
|
+
}, ref) => {
|
|
5874
|
+
const resolvedInitials = initials ?? deriveInitials(name);
|
|
5875
|
+
const imgSize = sizeMap5[avatarSize] ?? "4rem";
|
|
5876
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root17, { ref, variant: cardVariant, padding: "lg", rounded: "lg", ...props, children: [
|
|
5877
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Identity, { children: [
|
|
5878
|
+
avatarUrl ? /* @__PURE__ */ jsxRuntime.jsx(AvatarImg, { src: avatarUrl, alt: name, style: { width: imgSize, height: imgSize } }) : /* @__PURE__ */ jsxRuntime.jsx(Avatar, { initials: resolvedInitials, size: avatarSize, color: avatarColor }),
|
|
5879
|
+
/* @__PURE__ */ jsxRuntime.jsxs(TextBlock, { children: [
|
|
5880
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name2, { children: name }),
|
|
5881
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx(Subtitle, { children: subtitle })
|
|
5882
|
+
] })
|
|
5883
|
+
] }),
|
|
5884
|
+
actions && /* @__PURE__ */ jsxRuntime.jsx(Actions, { children: actions })
|
|
5869
5885
|
] });
|
|
5870
5886
|
}
|
|
5871
5887
|
);
|
|
5872
|
-
|
|
5888
|
+
ProfileCard.displayName = "ProfileCard";
|
|
5873
5889
|
var DEFAULT_OMNIBUS_LABEL = "Najni\u017Csza cena z ostatnich 30 dni";
|
|
5874
5890
|
var FONT_SIZE = {
|
|
5875
5891
|
sm: "0.875rem",
|
|
@@ -6002,147 +6018,150 @@ var Price = react.forwardRef(
|
|
|
6002
6018
|
);
|
|
6003
6019
|
Price.displayName = "Price";
|
|
6004
6020
|
var priceSizes = ["sm", "md", "lg", "xl"];
|
|
6005
|
-
|
|
6006
|
-
|
|
6007
|
-
|
|
6008
|
-
|
|
6009
|
-
|
|
6010
|
-
|
|
6011
|
-
|
|
6012
|
-
|
|
6013
|
-
|
|
6014
|
-
}
|
|
6015
|
-
|
|
6016
|
-
|
|
6017
|
-
|
|
6021
|
+
function calcTimeLeft(target) {
|
|
6022
|
+
const diff = new Date(target).getTime() - Date.now();
|
|
6023
|
+
if (diff <= 0) return null;
|
|
6024
|
+
return {
|
|
6025
|
+
days: Math.floor(diff / 864e5),
|
|
6026
|
+
hours: Math.floor(diff % 864e5 / 36e5),
|
|
6027
|
+
minutes: Math.floor(diff % 36e5 / 6e4),
|
|
6028
|
+
seconds: Math.floor(diff % 6e4 / 1e3)
|
|
6029
|
+
};
|
|
6030
|
+
}
|
|
6031
|
+
function pad(n) {
|
|
6032
|
+
return String(n).padStart(2, "0");
|
|
6033
|
+
}
|
|
6034
|
+
var Root19 = styles.styled("div", {
|
|
6035
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
6036
|
+
})(({ theme, $variant }) => ({
|
|
6037
|
+
display: "inline-flex",
|
|
6038
|
+
alignItems: "center",
|
|
6039
|
+
justifyContent: "space-between",
|
|
6040
|
+
flexWrap: "wrap",
|
|
6041
|
+
gap: "0.5rem",
|
|
6042
|
+
fontFamily: theme.typography.fontFamily,
|
|
6043
|
+
...$variant === "card" && {
|
|
6044
|
+
backgroundColor: theme.palette.background.paper,
|
|
6045
|
+
border: `1px solid ${theme.palette.divider}`,
|
|
6046
|
+
borderRadius: theme.shape.borderRadius,
|
|
6047
|
+
padding: "1rem 1.5rem"
|
|
6048
|
+
},
|
|
6049
|
+
...$variant === "banner" && {
|
|
6050
|
+
backgroundColor: theme.palette.error.main,
|
|
6051
|
+
color: "#fff",
|
|
6052
|
+
borderRadius: theme.shape.borderRadius,
|
|
6053
|
+
padding: "0.75rem 1.25rem"
|
|
6054
|
+
}
|
|
6018
6055
|
}));
|
|
6019
|
-
var
|
|
6020
|
-
|
|
6021
|
-
|
|
6022
|
-
|
|
6056
|
+
var TimerLabel = styles.styled("span", {
|
|
6057
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
6058
|
+
})(({ theme, $variant }) => ({
|
|
6059
|
+
fontSize: "0.875rem",
|
|
6060
|
+
fontWeight: 600,
|
|
6061
|
+
color: $variant === "banner" ? "rgba(255,255,255,0.85)" : theme.palette.text.secondary,
|
|
6062
|
+
marginRight: "0.25rem"
|
|
6063
|
+
}));
|
|
6064
|
+
var Segments = styles.styled("div")({
|
|
6023
6065
|
display: "flex",
|
|
6024
6066
|
alignItems: "center",
|
|
6025
|
-
|
|
6026
|
-
color: theme.palette.text.disabled
|
|
6027
|
-
}));
|
|
6028
|
-
var BadgeSlot = styles.styled("div")({
|
|
6029
|
-
position: "absolute",
|
|
6030
|
-
left: "0.75rem",
|
|
6031
|
-
top: "0.75rem"
|
|
6067
|
+
gap: "0.25rem"
|
|
6032
6068
|
});
|
|
6033
|
-
var
|
|
6034
|
-
|
|
6035
|
-
|
|
6036
|
-
|
|
6037
|
-
|
|
6069
|
+
var Segment = styles.styled("div", {
|
|
6070
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
6071
|
+
})(({ theme, $variant }) => ({
|
|
6072
|
+
display: "flex",
|
|
6073
|
+
flexDirection: "column",
|
|
6074
|
+
alignItems: "center",
|
|
6075
|
+
minWidth: "2.5rem",
|
|
6076
|
+
...$variant === "card" && {
|
|
6077
|
+
backgroundColor: theme.palette.action.hover,
|
|
6078
|
+
borderRadius: "0.375rem",
|
|
6079
|
+
padding: "0.375rem 0.5rem"
|
|
6080
|
+
}
|
|
6081
|
+
}));
|
|
6082
|
+
var Value = styles.styled("span", {
|
|
6083
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
6084
|
+
})(({ $variant }) => ({
|
|
6085
|
+
fontSize: $variant === "inline" ? "1rem" : "1.5rem",
|
|
6038
6086
|
fontWeight: 700,
|
|
6039
|
-
lineHeight: 1
|
|
6087
|
+
lineHeight: 1,
|
|
6088
|
+
color: $variant === "banner" ? "#fff" : "inherit"
|
|
6040
6089
|
}));
|
|
6041
|
-
var
|
|
6042
|
-
|
|
6043
|
-
|
|
6044
|
-
|
|
6045
|
-
|
|
6046
|
-
|
|
6047
|
-
|
|
6090
|
+
var Unit = styles.styled("span", {
|
|
6091
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
6092
|
+
})(({ theme, $variant }) => ({
|
|
6093
|
+
fontSize: "0.6875rem",
|
|
6094
|
+
color: $variant === "banner" ? "rgba(255,255,255,0.7)" : theme.palette.text.secondary,
|
|
6095
|
+
marginTop: "0.125rem"
|
|
6096
|
+
}));
|
|
6097
|
+
var Colon = styles.styled("span", {
|
|
6098
|
+
shouldForwardProp: (prop) => prop !== "$variant"
|
|
6099
|
+
})(({ theme, $variant }) => ({
|
|
6100
|
+
fontSize: $variant === "inline" ? "1rem" : "1.5rem",
|
|
6101
|
+
fontWeight: 700,
|
|
6102
|
+
color: $variant === "banner" ? "rgba(255,255,255,0.6)" : theme.palette.text.disabled,
|
|
6103
|
+
alignSelf: $variant === "card" ? "flex-start" : "center",
|
|
6104
|
+
marginTop: $variant === "card" ? "0.375rem" : 0
|
|
6105
|
+
}));
|
|
6106
|
+
var UNITS = ["dni", "godz", "min", "sek"];
|
|
6107
|
+
var CountdownTimer = react.forwardRef(
|
|
6048
6108
|
({
|
|
6049
|
-
|
|
6050
|
-
|
|
6051
|
-
|
|
6052
|
-
|
|
6053
|
-
|
|
6054
|
-
currency,
|
|
6055
|
-
locale,
|
|
6056
|
-
lowestPrice,
|
|
6057
|
-
badge,
|
|
6058
|
-
badgeVariant = "success",
|
|
6059
|
-
rating,
|
|
6060
|
-
reviewCount,
|
|
6061
|
-
ctaLabel = "Dodaj do koszyka",
|
|
6062
|
-
onAddToCart,
|
|
6109
|
+
targetDate,
|
|
6110
|
+
variant = "inline",
|
|
6111
|
+
label,
|
|
6112
|
+
expiredLabel = "Promocja zako\u0144czona",
|
|
6113
|
+
onExpire,
|
|
6063
6114
|
...props
|
|
6064
|
-
}, ref) =>
|
|
6065
|
-
|
|
6066
|
-
|
|
6067
|
-
|
|
6068
|
-
|
|
6069
|
-
|
|
6070
|
-
|
|
6071
|
-
|
|
6072
|
-
|
|
6115
|
+
}, ref) => {
|
|
6116
|
+
const [timeLeft, setTimeLeft] = react.useState(() => calcTimeLeft(targetDate));
|
|
6117
|
+
react.useEffect(() => {
|
|
6118
|
+
const id = setInterval(() => {
|
|
6119
|
+
const tl = calcTimeLeft(targetDate);
|
|
6120
|
+
setTimeLeft(tl);
|
|
6121
|
+
if (!tl) {
|
|
6122
|
+
clearInterval(id);
|
|
6123
|
+
onExpire?.();
|
|
6124
|
+
}
|
|
6125
|
+
}, 1e3);
|
|
6126
|
+
return () => clearInterval(id);
|
|
6127
|
+
}, [targetDate, onExpire]);
|
|
6128
|
+
if (!timeLeft) {
|
|
6129
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root19, { ref, $variant: variant, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(TimerLabel, { $variant: variant, children: expiredLabel }) });
|
|
6130
|
+
}
|
|
6131
|
+
const parts = [timeLeft.days, timeLeft.hours, timeLeft.minutes, timeLeft.seconds];
|
|
6132
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6133
|
+
Root19,
|
|
6073
6134
|
{
|
|
6074
|
-
|
|
6075
|
-
|
|
6076
|
-
|
|
6077
|
-
|
|
6078
|
-
|
|
6079
|
-
|
|
6135
|
+
ref,
|
|
6136
|
+
$variant: variant,
|
|
6137
|
+
"aria-live": "polite",
|
|
6138
|
+
"aria-label": `Czas do ko\u0144ca promocji`,
|
|
6139
|
+
...props,
|
|
6140
|
+
children: [
|
|
6141
|
+
label && /* @__PURE__ */ jsxRuntime.jsx(TimerLabel, { $variant: variant, children: label }),
|
|
6142
|
+
/* @__PURE__ */ jsxRuntime.jsx(Segments, { children: parts.map((val, i) => /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { display: "contents" }, children: [
|
|
6143
|
+
i > 0 && /* @__PURE__ */ jsxRuntime.jsx(Colon, { $variant: variant, children: ":" }),
|
|
6144
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Segment, { $variant: variant, children: [
|
|
6145
|
+
/* @__PURE__ */ jsxRuntime.jsx(Value, { $variant: variant, children: pad(val) }),
|
|
6146
|
+
variant !== "inline" && /* @__PURE__ */ jsxRuntime.jsx(Unit, { $variant: variant, children: UNITS[i] })
|
|
6147
|
+
] })
|
|
6148
|
+
] }, UNITS[i])) })
|
|
6149
|
+
]
|
|
6080
6150
|
}
|
|
6081
|
-
)
|
|
6082
|
-
|
|
6083
|
-
e.stopPropagation();
|
|
6084
|
-
onAddToCart?.();
|
|
6085
|
-
}, children: ctaLabel }) })
|
|
6086
|
-
] })
|
|
6151
|
+
);
|
|
6152
|
+
}
|
|
6087
6153
|
);
|
|
6088
|
-
|
|
6089
|
-
var
|
|
6090
|
-
var
|
|
6091
|
-
containerType: "inline-size",
|
|
6092
|
-
width: "100%",
|
|
6093
|
-
height: "100%"
|
|
6094
|
-
});
|
|
6095
|
-
var Inner = styles.styled("div")({
|
|
6154
|
+
CountdownTimer.displayName = "CountdownTimer";
|
|
6155
|
+
var countdownTimerVariants = ["inline", "card", "banner"];
|
|
6156
|
+
var Root20 = styles.styled(Card)({
|
|
6096
6157
|
display: "flex",
|
|
6097
|
-
flexDirection: "
|
|
6158
|
+
flexDirection: "column",
|
|
6098
6159
|
height: "100%",
|
|
6099
|
-
|
|
6100
|
-
flexDirection: "column"
|
|
6101
|
-
}
|
|
6160
|
+
overflow: "hidden"
|
|
6102
6161
|
});
|
|
6103
|
-
var
|
|
6162
|
+
var ImageWrap2 = styles.styled("div")({
|
|
6104
6163
|
position: "relative",
|
|
6105
|
-
|
|
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,
|
|
6119
|
-
width: "100%",
|
|
6120
|
-
height: "100%",
|
|
6121
|
-
objectFit: "cover",
|
|
6122
|
-
backgroundColor: theme.palette.action.hover
|
|
6123
|
-
}));
|
|
6124
|
-
var ImagePlaceholder3 = styles.styled("div")(({ theme }) => ({
|
|
6125
|
-
position: "absolute",
|
|
6126
|
-
inset: 0,
|
|
6127
|
-
width: "100%",
|
|
6128
|
-
height: "100%",
|
|
6129
|
-
backgroundColor: theme.palette.action.hover,
|
|
6130
|
-
display: "flex",
|
|
6131
|
-
alignItems: "center",
|
|
6132
|
-
justifyContent: "center",
|
|
6133
|
-
color: theme.palette.text.disabled
|
|
6134
|
-
}));
|
|
6135
|
-
var BadgeSlot2 = styles.styled("div")({
|
|
6136
|
-
position: "absolute",
|
|
6137
|
-
left: "0.75rem",
|
|
6138
|
-
top: "0.75rem",
|
|
6139
|
-
zIndex: 1
|
|
6140
|
-
});
|
|
6141
|
-
var Content2 = styles.styled("div")({
|
|
6142
|
-
display: "flex",
|
|
6143
|
-
flexDirection: "column",
|
|
6144
|
-
flex: 1,
|
|
6145
|
-
minWidth: 0
|
|
6164
|
+
margin: "-1.5rem -1.5rem 1rem"
|
|
6146
6165
|
});
|
|
6147
6166
|
var Name3 = styles.styled("h3")(({ theme }) => ({
|
|
6148
6167
|
margin: 0,
|
|
@@ -6152,13 +6171,13 @@ var Name3 = styles.styled("h3")(({ theme }) => ({
|
|
|
6152
6171
|
fontWeight: 700,
|
|
6153
6172
|
lineHeight: 1.4
|
|
6154
6173
|
}));
|
|
6155
|
-
var
|
|
6174
|
+
var Footer = styles.styled("div")({
|
|
6156
6175
|
display: "grid",
|
|
6157
6176
|
gap: "1rem",
|
|
6158
6177
|
marginTop: "auto",
|
|
6159
6178
|
paddingTop: "1rem"
|
|
6160
6179
|
});
|
|
6161
|
-
var
|
|
6180
|
+
var DealCard = react.forwardRef(
|
|
6162
6181
|
({
|
|
6163
6182
|
name,
|
|
6164
6183
|
imageUrl,
|
|
@@ -6167,22 +6186,14 @@ var ProductCardHorizontal = react.forwardRef(
|
|
|
6167
6186
|
originalPrice,
|
|
6168
6187
|
currency,
|
|
6169
6188
|
locale,
|
|
6170
|
-
|
|
6171
|
-
|
|
6172
|
-
badgeVariant = "success",
|
|
6173
|
-
rating,
|
|
6174
|
-
reviewCount,
|
|
6175
|
-
ctaLabel = "Dodaj do koszyka",
|
|
6189
|
+
dealEndsAt,
|
|
6190
|
+
ctaLabel = "Kup teraz",
|
|
6176
6191
|
onAddToCart,
|
|
6177
6192
|
...props
|
|
6178
|
-
}, ref) =>
|
|
6179
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
6180
|
-
|
|
6181
|
-
badge && /* @__PURE__ */ jsxRuntime.jsx(BadgeSlot2, { children: /* @__PURE__ */ jsxRuntime.jsx(Badge2, { variant: badgeVariant, children: badge }) })
|
|
6182
|
-
] }),
|
|
6183
|
-
/* @__PURE__ */ jsxRuntime.jsxs(Content2, { children: [
|
|
6193
|
+
}, ref) => {
|
|
6194
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root20, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: [
|
|
6195
|
+
/* @__PURE__ */ jsxRuntime.jsx(ImageWrap2, { children: /* @__PURE__ */ jsxRuntime.jsx(ProductCardImage, { src: imageUrl, alt: imageAlt ?? name }) }),
|
|
6184
6196
|
/* @__PURE__ */ jsxRuntime.jsx(Name3, { children: name }),
|
|
6185
|
-
rating !== void 0 && /* @__PURE__ */ jsxRuntime.jsx(Rating, { value: rating, count: reviewCount, size: "sm" }),
|
|
6186
6197
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6187
6198
|
Price,
|
|
6188
6199
|
{
|
|
@@ -6190,14 +6201,22 @@ var ProductCardHorizontal = react.forwardRef(
|
|
|
6190
6201
|
originalPrice,
|
|
6191
6202
|
currency,
|
|
6192
6203
|
locale,
|
|
6193
|
-
lowestPrice,
|
|
6194
6204
|
style: { marginTop: "0.5rem" }
|
|
6195
6205
|
}
|
|
6196
6206
|
),
|
|
6197
|
-
|
|
6207
|
+
dealEndsAt && /* @__PURE__ */ jsxRuntime.jsx(
|
|
6208
|
+
CountdownTimer,
|
|
6209
|
+
{
|
|
6210
|
+
targetDate: dealEndsAt,
|
|
6211
|
+
label: "Oferta ko\u0144czy si\u0119 za:",
|
|
6212
|
+
style: { marginTop: "0.75rem" }
|
|
6213
|
+
}
|
|
6214
|
+
),
|
|
6215
|
+
/* @__PURE__ */ jsxRuntime.jsx(Footer, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6198
6216
|
Button,
|
|
6199
6217
|
{
|
|
6200
6218
|
fullWidth: true,
|
|
6219
|
+
variant: "primary",
|
|
6201
6220
|
onClick: (e) => {
|
|
6202
6221
|
e.stopPropagation();
|
|
6203
6222
|
onAddToCart?.();
|
|
@@ -6205,10 +6224,10 @@ var ProductCardHorizontal = react.forwardRef(
|
|
|
6205
6224
|
children: ctaLabel
|
|
6206
6225
|
}
|
|
6207
6226
|
) })
|
|
6208
|
-
] })
|
|
6209
|
-
|
|
6227
|
+
] });
|
|
6228
|
+
}
|
|
6210
6229
|
);
|
|
6211
|
-
|
|
6230
|
+
DealCard.displayName = "DealCard";
|
|
6212
6231
|
var ImageWrapper = styles.styled("div", {
|
|
6213
6232
|
shouldForwardProp: (prop) => prop !== "$ar"
|
|
6214
6233
|
})(({ $ar }) => ({
|
|
@@ -6218,13 +6237,13 @@ var ImageWrapper = styles.styled("div", {
|
|
|
6218
6237
|
overflow: "hidden",
|
|
6219
6238
|
flexShrink: 0
|
|
6220
6239
|
}));
|
|
6221
|
-
var
|
|
6240
|
+
var Img2 = styles.styled("img")({
|
|
6222
6241
|
width: "100%",
|
|
6223
6242
|
height: "100%",
|
|
6224
6243
|
objectFit: "cover",
|
|
6225
6244
|
display: "block"
|
|
6226
6245
|
});
|
|
6227
|
-
var
|
|
6246
|
+
var Placeholder3 = styles.styled("div")(({ theme }) => ({
|
|
6228
6247
|
width: "100%",
|
|
6229
6248
|
height: "100%",
|
|
6230
6249
|
display: "flex",
|
|
@@ -6254,7 +6273,7 @@ var PostCardImage = ({
|
|
|
6254
6273
|
const [imgError, setImgError] = react.useState(false);
|
|
6255
6274
|
const showPlaceholder = !src || imgError;
|
|
6256
6275
|
return /* @__PURE__ */ jsxRuntime.jsxs(ImageWrapper, { $ar: toAspectRatioCss(aspectRatio), className, style, children: [
|
|
6257
|
-
showPlaceholder ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
6276
|
+
showPlaceholder ? /* @__PURE__ */ jsxRuntime.jsx(Placeholder3, { children: /* @__PURE__ */ jsxRuntime.jsx(FileTextIcon, {}) }) : /* @__PURE__ */ jsxRuntime.jsx(Img2, { src, alt, onError: () => setImgError(true) }),
|
|
6258
6277
|
overlay && !showPlaceholder && /* @__PURE__ */ jsxRuntime.jsx(Overlay, {})
|
|
6259
6278
|
] });
|
|
6260
6279
|
};
|
|
@@ -6424,6 +6443,7 @@ var PostCard = react.forwardRef(
|
|
|
6424
6443
|
author,
|
|
6425
6444
|
href,
|
|
6426
6445
|
category,
|
|
6446
|
+
categoryBadgeVariant,
|
|
6427
6447
|
variant = "vertical",
|
|
6428
6448
|
cardVariant = "default",
|
|
6429
6449
|
...rest
|
|
@@ -6435,7 +6455,7 @@ var PostCard = react.forwardRef(
|
|
|
6435
6455
|
isFeatured && showImage && /* @__PURE__ */ jsxRuntime.jsx(FeaturedImageWrapper, { children: /* @__PURE__ */ jsxRuntime.jsx(PostCardImage, { src: imageUrl, alt: imageAlt, aspectRatio: "16/9", overlay: true }) }),
|
|
6436
6456
|
!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" })),
|
|
6437
6457
|
/* @__PURE__ */ jsxRuntime.jsxs(StyledContent, { $variant: variant, children: [
|
|
6438
|
-
category && /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(Badge2, { variant: isFeatured ? "ghost" : "default", children: category }) }),
|
|
6458
|
+
category && /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(Badge2, { variant: categoryBadgeVariant ?? (isFeatured ? "ghost" : "default"), children: category }) }),
|
|
6439
6459
|
/* @__PURE__ */ jsxRuntime.jsx(StyledTitle, { className: "post-card-title", $featured: isFeatured, children: title }),
|
|
6440
6460
|
excerpt && variant !== "compact" && !isFeatured && /* @__PURE__ */ jsxRuntime.jsx(StyledExcerpt, { children: excerpt }),
|
|
6441
6461
|
(date || author) && /* @__PURE__ */ jsxRuntime.jsx(PostCardMeta, { date, author, inverted: isFeatured })
|
|
@@ -6453,25 +6473,7 @@ var postCardVariants = [
|
|
|
6453
6473
|
"featured",
|
|
6454
6474
|
"compact"
|
|
6455
6475
|
];
|
|
6456
|
-
var
|
|
6457
|
-
display: "flex",
|
|
6458
|
-
flexDirection: "column",
|
|
6459
|
-
height: "100%"
|
|
6460
|
-
});
|
|
6461
|
-
var NameRow = styles.styled("div")({
|
|
6462
|
-
display: "flex",
|
|
6463
|
-
alignItems: "center",
|
|
6464
|
-
justifyContent: "space-between",
|
|
6465
|
-
marginBottom: "0.75rem"
|
|
6466
|
-
});
|
|
6467
|
-
var Name4 = styles.styled("p")(({ theme }) => ({
|
|
6468
|
-
margin: 0,
|
|
6469
|
-
fontFamily: theme.typography.fontFamily,
|
|
6470
|
-
fontWeight: 600,
|
|
6471
|
-
fontSize: "1rem",
|
|
6472
|
-
color: theme.palette.text.primary
|
|
6473
|
-
}));
|
|
6474
|
-
var PriceRow2 = styles.styled("div")({
|
|
6476
|
+
var Row3 = styles.styled("div")({
|
|
6475
6477
|
display: "flex",
|
|
6476
6478
|
alignItems: "baseline",
|
|
6477
6479
|
gap: "0.25rem"
|
|
@@ -6484,7 +6486,7 @@ var Currency = styles.styled("span")(({ theme }) => ({
|
|
|
6484
6486
|
alignSelf: "flex-start",
|
|
6485
6487
|
paddingTop: "0.375rem"
|
|
6486
6488
|
}));
|
|
6487
|
-
var
|
|
6489
|
+
var Amount = styles.styled("span")(({ theme }) => ({
|
|
6488
6490
|
fontFamily: theme.typography.fontFamily,
|
|
6489
6491
|
fontWeight: 700,
|
|
6490
6492
|
fontSize: "3rem",
|
|
@@ -6496,28 +6498,21 @@ var Period = styles.styled("span")(({ theme }) => ({
|
|
|
6496
6498
|
fontSize: "0.875rem",
|
|
6497
6499
|
color: theme.palette.text.secondary
|
|
6498
6500
|
}));
|
|
6499
|
-
var
|
|
6500
|
-
|
|
6501
|
-
|
|
6502
|
-
|
|
6503
|
-
|
|
6504
|
-
|
|
6505
|
-
|
|
6506
|
-
var Divider2 = styles.styled("hr")(({ theme }) => ({
|
|
6507
|
-
border: "none",
|
|
6508
|
-
borderTop: `1px solid ${theme.palette.divider}`,
|
|
6509
|
-
margin: "1.25rem 0"
|
|
6510
|
-
}));
|
|
6511
|
-
var FeatureList = styles.styled("ul")({
|
|
6501
|
+
var PricingCardPrice = ({ price, currency, period }) => /* @__PURE__ */ jsxRuntime.jsxs(Row3, { children: [
|
|
6502
|
+
currency && /* @__PURE__ */ jsxRuntime.jsx(Currency, { children: currency }),
|
|
6503
|
+
/* @__PURE__ */ jsxRuntime.jsx(Amount, { children: price }),
|
|
6504
|
+
period && /* @__PURE__ */ jsxRuntime.jsx(Period, { children: period })
|
|
6505
|
+
] });
|
|
6506
|
+
PricingCardPrice.displayName = "PricingCardPrice";
|
|
6507
|
+
var List = styles.styled("ul")({
|
|
6512
6508
|
listStyle: "none",
|
|
6513
6509
|
margin: 0,
|
|
6514
6510
|
padding: 0,
|
|
6515
6511
|
display: "flex",
|
|
6516
6512
|
flexDirection: "column",
|
|
6517
|
-
gap: "0.625rem"
|
|
6518
|
-
flex: 1
|
|
6513
|
+
gap: "0.625rem"
|
|
6519
6514
|
});
|
|
6520
|
-
var
|
|
6515
|
+
var Item = styles.styled("li", {
|
|
6521
6516
|
shouldForwardProp: (prop) => prop !== "$included"
|
|
6522
6517
|
})(({ theme, $included }) => ({
|
|
6523
6518
|
display: "flex",
|
|
@@ -6527,6 +6522,50 @@ var FeatureItem = styles.styled("li", {
|
|
|
6527
6522
|
fontSize: "0.875rem",
|
|
6528
6523
|
color: $included ? theme.palette.text.primary : theme.palette.text.disabled
|
|
6529
6524
|
}));
|
|
6525
|
+
function CheckIcon3() {
|
|
6526
|
+
return /* @__PURE__ */ jsxRuntime.jsx(CheckCircleOutlinedIcon__default.default, { "aria-hidden": "true", style: { fontSize: 16, flexShrink: 0 } });
|
|
6527
|
+
}
|
|
6528
|
+
function XIcon3() {
|
|
6529
|
+
return /* @__PURE__ */ jsxRuntime.jsx(HighlightOffIcon__default.default, { "aria-hidden": "true", style: { fontSize: 16, flexShrink: 0 } });
|
|
6530
|
+
}
|
|
6531
|
+
var PricingCardFeatureList = ({ features }) => /* @__PURE__ */ jsxRuntime.jsx(List, { children: features.map((feature, i) => {
|
|
6532
|
+
const included = feature.included !== false;
|
|
6533
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Item, { $included: included, children: [
|
|
6534
|
+
included ? /* @__PURE__ */ jsxRuntime.jsx(CheckIcon3, {}) : /* @__PURE__ */ jsxRuntime.jsx(XIcon3, {}),
|
|
6535
|
+
feature.text
|
|
6536
|
+
] }, i);
|
|
6537
|
+
}) });
|
|
6538
|
+
PricingCardFeatureList.displayName = "PricingCardFeatureList";
|
|
6539
|
+
var Root21 = styles.styled(Card)({
|
|
6540
|
+
display: "flex",
|
|
6541
|
+
flexDirection: "column",
|
|
6542
|
+
height: "100%"
|
|
6543
|
+
});
|
|
6544
|
+
var NameRow = styles.styled("div")({
|
|
6545
|
+
display: "flex",
|
|
6546
|
+
alignItems: "center",
|
|
6547
|
+
justifyContent: "space-between",
|
|
6548
|
+
marginBottom: "0.75rem"
|
|
6549
|
+
});
|
|
6550
|
+
var Name4 = styles.styled("p")(({ theme }) => ({
|
|
6551
|
+
margin: 0,
|
|
6552
|
+
fontFamily: theme.typography.fontFamily,
|
|
6553
|
+
fontWeight: 600,
|
|
6554
|
+
fontSize: "1rem",
|
|
6555
|
+
color: theme.palette.text.primary
|
|
6556
|
+
}));
|
|
6557
|
+
var Description2 = styles.styled("p")(({ theme }) => ({
|
|
6558
|
+
margin: "0.75rem 0 0",
|
|
6559
|
+
fontFamily: theme.typography.fontFamily,
|
|
6560
|
+
fontSize: "0.875rem",
|
|
6561
|
+
color: theme.palette.text.secondary,
|
|
6562
|
+
lineHeight: 1.6
|
|
6563
|
+
}));
|
|
6564
|
+
var Divider2 = styles.styled("hr")(({ theme }) => ({
|
|
6565
|
+
border: "none",
|
|
6566
|
+
borderTop: `1px solid ${theme.palette.divider}`,
|
|
6567
|
+
margin: "1.25rem 0"
|
|
6568
|
+
}));
|
|
6530
6569
|
var CtaLink = styles.styled("a", {
|
|
6531
6570
|
shouldForwardProp: (prop) => prop !== "$variant"
|
|
6532
6571
|
})(({ theme, $variant }) => ({
|
|
@@ -6559,12 +6598,6 @@ var CtaLink = styles.styled("a", {
|
|
|
6559
6598
|
var CtaWrapper = styles.styled("div")({
|
|
6560
6599
|
marginTop: "1.5rem"
|
|
6561
6600
|
});
|
|
6562
|
-
function CheckIcon3() {
|
|
6563
|
-
return /* @__PURE__ */ jsxRuntime.jsx(CheckCircleOutlinedIcon__default.default, { "aria-hidden": "true", style: { fontSize: 16, flexShrink: 0 } });
|
|
6564
|
-
}
|
|
6565
|
-
function XIcon3() {
|
|
6566
|
-
return /* @__PURE__ */ jsxRuntime.jsx(HighlightOffIcon__default.default, { "aria-hidden": "true", style: { fontSize: 16, flexShrink: 0 } });
|
|
6567
|
-
}
|
|
6568
6601
|
var PricingCard = react.forwardRef(
|
|
6569
6602
|
({
|
|
6570
6603
|
name,
|
|
@@ -6579,44 +6612,320 @@ var PricingCard = react.forwardRef(
|
|
|
6579
6612
|
href,
|
|
6580
6613
|
popular = false,
|
|
6581
6614
|
popularLabel = "Najpopularniejszy",
|
|
6615
|
+
popularBadgeVariant = "default",
|
|
6582
6616
|
cardVariant,
|
|
6583
6617
|
...props
|
|
6584
6618
|
}, ref) => {
|
|
6585
6619
|
const resolvedCardVariant = cardVariant ?? (popular ? "gradient-primary" : "default");
|
|
6586
6620
|
const resolvedCtaVariant = ctaVariant ?? (popular ? "primary" : "ghost");
|
|
6587
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6621
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root21, { ref, variant: resolvedCardVariant, padding: "lg", rounded: "lg", ...props, children: [
|
|
6588
6622
|
/* @__PURE__ */ jsxRuntime.jsxs(NameRow, { children: [
|
|
6589
6623
|
/* @__PURE__ */ jsxRuntime.jsx(Name4, { children: name }),
|
|
6590
|
-
popular && /* @__PURE__ */ jsxRuntime.jsx(Badge2, { variant:
|
|
6591
|
-
] }),
|
|
6592
|
-
/* @__PURE__ */ jsxRuntime.jsxs(PriceRow2, { children: [
|
|
6593
|
-
currency && /* @__PURE__ */ jsxRuntime.jsx(Currency, { children: currency }),
|
|
6594
|
-
/* @__PURE__ */ jsxRuntime.jsx(Price2, { children: price }),
|
|
6595
|
-
period && /* @__PURE__ */ jsxRuntime.jsx(Period, { children: period })
|
|
6624
|
+
popular && /* @__PURE__ */ jsxRuntime.jsx(Badge2, { variant: popularBadgeVariant, children: popularLabel })
|
|
6596
6625
|
] }),
|
|
6626
|
+
/* @__PURE__ */ jsxRuntime.jsx(PricingCardPrice, { price, currency, period }),
|
|
6597
6627
|
description && /* @__PURE__ */ jsxRuntime.jsx(Description2, { children: description }),
|
|
6598
6628
|
features.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
6599
6629
|
/* @__PURE__ */ jsxRuntime.jsx(Divider2, {}),
|
|
6600
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6601
|
-
const included = feature.included !== false;
|
|
6602
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(FeatureItem, { $included: included, children: [
|
|
6603
|
-
included ? /* @__PURE__ */ jsxRuntime.jsx(CheckIcon3, {}) : /* @__PURE__ */ jsxRuntime.jsx(XIcon3, {}),
|
|
6604
|
-
feature.text
|
|
6605
|
-
] }, i);
|
|
6606
|
-
}) })
|
|
6630
|
+
/* @__PURE__ */ jsxRuntime.jsx(PricingCardFeatureList, { features })
|
|
6607
6631
|
] }),
|
|
6608
6632
|
/* @__PURE__ */ jsxRuntime.jsx(CtaWrapper, { children: href ? /* @__PURE__ */ jsxRuntime.jsx(CtaLink, { href, $variant: resolvedCtaVariant, children: ctaLabel }) : /* @__PURE__ */ jsxRuntime.jsx(Button, { variant: resolvedCtaVariant, fullWidth: true, onClick: onCtaClick, children: ctaLabel }) })
|
|
6609
6633
|
] });
|
|
6610
6634
|
}
|
|
6611
6635
|
);
|
|
6612
6636
|
PricingCard.displayName = "PricingCard";
|
|
6613
|
-
var
|
|
6637
|
+
var sizeMap6 = {
|
|
6638
|
+
sm: "1rem",
|
|
6639
|
+
md: "1.25rem",
|
|
6640
|
+
lg: "1.5rem"
|
|
6641
|
+
};
|
|
6642
|
+
var Root22 = styles.styled("div")(({ theme }) => ({
|
|
6643
|
+
display: "inline-flex",
|
|
6644
|
+
alignItems: "center",
|
|
6645
|
+
gap: "0.5rem",
|
|
6646
|
+
color: theme.palette.text.secondary,
|
|
6647
|
+
fontFamily: theme.typography.fontFamily
|
|
6648
|
+
}));
|
|
6649
|
+
var Stars = styles.styled("div")({
|
|
6650
|
+
display: "inline-flex",
|
|
6651
|
+
alignItems: "center",
|
|
6652
|
+
gap: "0.125rem"
|
|
6653
|
+
});
|
|
6654
|
+
var StarButton = styles.styled("button")(
|
|
6655
|
+
({ theme, $size, $active }) => ({
|
|
6656
|
+
appearance: "none",
|
|
6657
|
+
border: 0,
|
|
6658
|
+
background: "transparent",
|
|
6659
|
+
padding: 0,
|
|
6660
|
+
color: $active ? "#f59e0b" : theme.palette.action.disabled,
|
|
6661
|
+
cursor: "pointer",
|
|
6662
|
+
fontSize: sizeMap6[$size],
|
|
6663
|
+
lineHeight: 1,
|
|
6664
|
+
"&:disabled": {
|
|
6665
|
+
cursor: "default"
|
|
6666
|
+
}
|
|
6667
|
+
})
|
|
6668
|
+
);
|
|
6669
|
+
var Meta = styles.styled("span")(({ theme }) => ({
|
|
6670
|
+
fontSize: "0.875rem",
|
|
6671
|
+
color: theme.palette.text.secondary
|
|
6672
|
+
}));
|
|
6673
|
+
var Rating = react.forwardRef(
|
|
6674
|
+
({ value, max = 5, readonly = true, size = "md", label, count, onChange, ...props }, ref) => {
|
|
6675
|
+
const roundedValue = Math.round(value);
|
|
6676
|
+
const meta = label ?? (count !== void 0 ? `(${count})` : void 0);
|
|
6677
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root22, { ref, "aria-label": `Ocena ${value} z ${max}`, ...props, children: [
|
|
6678
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6679
|
+
Stars,
|
|
6680
|
+
{
|
|
6681
|
+
role: readonly ? "img" : "radiogroup",
|
|
6682
|
+
"aria-label": readonly ? void 0 : "Wybierz ocen\u0119",
|
|
6683
|
+
children: Array.from({ length: max }, (_, index) => {
|
|
6684
|
+
const starValue = index + 1;
|
|
6685
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6686
|
+
StarButton,
|
|
6687
|
+
{
|
|
6688
|
+
type: "button",
|
|
6689
|
+
$size: size,
|
|
6690
|
+
$active: starValue <= roundedValue,
|
|
6691
|
+
disabled: readonly,
|
|
6692
|
+
"aria-label": `${starValue} z ${max}`,
|
|
6693
|
+
"aria-checked": readonly ? void 0 : starValue === roundedValue,
|
|
6694
|
+
role: readonly ? void 0 : "radio",
|
|
6695
|
+
onClick: () => onChange?.(starValue),
|
|
6696
|
+
children: "\u2605"
|
|
6697
|
+
},
|
|
6698
|
+
starValue
|
|
6699
|
+
);
|
|
6700
|
+
})
|
|
6701
|
+
}
|
|
6702
|
+
),
|
|
6703
|
+
meta && /* @__PURE__ */ jsxRuntime.jsx(Meta, { children: meta })
|
|
6704
|
+
] });
|
|
6705
|
+
}
|
|
6706
|
+
);
|
|
6707
|
+
Rating.displayName = "Rating";
|
|
6708
|
+
var Container2 = styles.styled("div")({
|
|
6709
|
+
width: "100%",
|
|
6710
|
+
height: "100%"
|
|
6711
|
+
});
|
|
6712
|
+
var Img3 = styles.styled("img")(({ theme }) => ({
|
|
6713
|
+
position: "absolute",
|
|
6714
|
+
inset: 0,
|
|
6715
|
+
width: "100%",
|
|
6716
|
+
height: "100%",
|
|
6717
|
+
objectFit: "cover",
|
|
6718
|
+
backgroundColor: theme.palette.action.hover
|
|
6719
|
+
}));
|
|
6720
|
+
var Placeholder4 = styles.styled("div")(({ theme }) => ({
|
|
6721
|
+
position: "absolute",
|
|
6722
|
+
inset: 0,
|
|
6723
|
+
width: "100%",
|
|
6724
|
+
height: "100%",
|
|
6725
|
+
backgroundColor: theme.palette.action.hover,
|
|
6726
|
+
display: "flex",
|
|
6727
|
+
alignItems: "center",
|
|
6728
|
+
justifyContent: "center",
|
|
6729
|
+
color: theme.palette.text.disabled
|
|
6730
|
+
}));
|
|
6731
|
+
var BadgeSlot = styles.styled("div")({
|
|
6732
|
+
position: "absolute",
|
|
6733
|
+
left: "0.75rem",
|
|
6734
|
+
top: "0.75rem",
|
|
6735
|
+
zIndex: 1
|
|
6736
|
+
});
|
|
6737
|
+
var ProductCardImage = ({
|
|
6738
|
+
src,
|
|
6739
|
+
alt,
|
|
6740
|
+
badge,
|
|
6741
|
+
badgeVariant = "success"
|
|
6742
|
+
}) => /* @__PURE__ */ jsxRuntime.jsxs(Container2, { children: [
|
|
6743
|
+
src ? /* @__PURE__ */ jsxRuntime.jsx(Img3, { src, alt }) : /* @__PURE__ */ jsxRuntime.jsx(Placeholder4, { "aria-label": alt, children: /* @__PURE__ */ jsxRuntime.jsx(ImageIcon__default.default, { style: { fontSize: 48 } }) }),
|
|
6744
|
+
badge && /* @__PURE__ */ jsxRuntime.jsx(BadgeSlot, { children: /* @__PURE__ */ jsxRuntime.jsx(Badge2, { variant: badgeVariant, children: badge }) })
|
|
6745
|
+
] });
|
|
6746
|
+
ProductCardImage.displayName = "ProductCardImage";
|
|
6747
|
+
var Root23 = styles.styled(Card)({
|
|
6748
|
+
display: "flex",
|
|
6749
|
+
flexDirection: "column",
|
|
6750
|
+
height: "100%",
|
|
6751
|
+
overflow: "hidden"
|
|
6752
|
+
});
|
|
6753
|
+
var Name5 = styles.styled("h3")(({ theme }) => ({
|
|
6754
|
+
margin: 0,
|
|
6755
|
+
color: theme.palette.text.primary,
|
|
6756
|
+
fontFamily: theme.typography.fontFamily,
|
|
6757
|
+
fontSize: "1rem",
|
|
6758
|
+
fontWeight: 700,
|
|
6759
|
+
lineHeight: 1.4
|
|
6760
|
+
}));
|
|
6761
|
+
var Footer2 = styles.styled("div")({
|
|
6762
|
+
display: "grid",
|
|
6763
|
+
gap: "1rem",
|
|
6764
|
+
marginTop: "auto",
|
|
6765
|
+
paddingTop: "1rem"
|
|
6766
|
+
});
|
|
6767
|
+
var ProductCard = react.forwardRef(
|
|
6768
|
+
({
|
|
6769
|
+
name,
|
|
6770
|
+
imageUrl,
|
|
6771
|
+
imageAlt,
|
|
6772
|
+
price,
|
|
6773
|
+
originalPrice,
|
|
6774
|
+
currency,
|
|
6775
|
+
locale,
|
|
6776
|
+
lowestPrice,
|
|
6777
|
+
badge,
|
|
6778
|
+
badgeVariant = "success",
|
|
6779
|
+
imageRatio = "4/3",
|
|
6780
|
+
rating,
|
|
6781
|
+
reviewCount,
|
|
6782
|
+
ctaLabel = "Dodaj do koszyka",
|
|
6783
|
+
onAddToCart,
|
|
6784
|
+
buttonVariant = "primary",
|
|
6785
|
+
disabledButton = false,
|
|
6786
|
+
hideButton = false,
|
|
6787
|
+
...props
|
|
6788
|
+
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root23, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: [
|
|
6789
|
+
/* @__PURE__ */ jsxRuntime.jsx(AspectRatio, { ratio: imageRatio, style: { margin: "-1.5rem -1.5rem 1rem", width: "calc(100% + 3rem)" }, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6790
|
+
ProductCardImage,
|
|
6791
|
+
{
|
|
6792
|
+
src: imageUrl,
|
|
6793
|
+
alt: imageAlt ?? name,
|
|
6794
|
+
badge,
|
|
6795
|
+
badgeVariant
|
|
6796
|
+
}
|
|
6797
|
+
) }),
|
|
6798
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name5, { children: name }),
|
|
6799
|
+
rating !== void 0 && /* @__PURE__ */ jsxRuntime.jsx(Rating, { value: rating, count: reviewCount, size: "sm" }),
|
|
6800
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6801
|
+
Price,
|
|
6802
|
+
{
|
|
6803
|
+
price,
|
|
6804
|
+
originalPrice,
|
|
6805
|
+
currency,
|
|
6806
|
+
locale,
|
|
6807
|
+
lowestPrice,
|
|
6808
|
+
style: { marginTop: "0.5rem" }
|
|
6809
|
+
}
|
|
6810
|
+
),
|
|
6811
|
+
!hideButton && /* @__PURE__ */ jsxRuntime.jsx(Footer2, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6812
|
+
Button,
|
|
6813
|
+
{
|
|
6814
|
+
fullWidth: true,
|
|
6815
|
+
variant: buttonVariant,
|
|
6816
|
+
disabled: disabledButton,
|
|
6817
|
+
onClick: (e) => {
|
|
6818
|
+
e.stopPropagation();
|
|
6819
|
+
onAddToCart?.();
|
|
6820
|
+
},
|
|
6821
|
+
children: ctaLabel
|
|
6822
|
+
}
|
|
6823
|
+
) })
|
|
6824
|
+
] })
|
|
6825
|
+
);
|
|
6826
|
+
ProductCard.displayName = "ProductCard";
|
|
6827
|
+
var COLLAPSE_AT = "480px";
|
|
6828
|
+
var ContainerRoot = styles.styled("div")({
|
|
6829
|
+
containerType: "inline-size",
|
|
6830
|
+
width: "100%",
|
|
6831
|
+
height: "100%"
|
|
6832
|
+
});
|
|
6833
|
+
var Inner = styles.styled("div")({
|
|
6834
|
+
display: "flex",
|
|
6835
|
+
flexDirection: "row",
|
|
6836
|
+
height: "100%",
|
|
6837
|
+
[`@container (max-width: ${COLLAPSE_AT})`]: {
|
|
6838
|
+
flexDirection: "column"
|
|
6839
|
+
}
|
|
6840
|
+
});
|
|
6841
|
+
var ImageWrap3 = styles.styled("div")({
|
|
6842
|
+
position: "relative",
|
|
6843
|
+
flexShrink: 0,
|
|
6844
|
+
width: "clamp(120px, 33%, 200px)",
|
|
6845
|
+
alignSelf: "stretch",
|
|
6846
|
+
margin: "-1.5rem 1rem -1.5rem -1.5rem",
|
|
6847
|
+
[`@container (max-width: ${COLLAPSE_AT})`]: {
|
|
6848
|
+
width: "auto",
|
|
6849
|
+
alignSelf: "auto",
|
|
6850
|
+
margin: "-1.5rem -1.5rem 1rem",
|
|
6851
|
+
aspectRatio: "4 / 3"
|
|
6852
|
+
}
|
|
6853
|
+
});
|
|
6854
|
+
var Content = styles.styled("div")({
|
|
6855
|
+
display: "flex",
|
|
6856
|
+
flexDirection: "column",
|
|
6857
|
+
flex: 1,
|
|
6858
|
+
minWidth: 0
|
|
6859
|
+
});
|
|
6860
|
+
var Name6 = styles.styled("h3")(({ theme }) => ({
|
|
6861
|
+
margin: 0,
|
|
6862
|
+
color: theme.palette.text.primary,
|
|
6863
|
+
fontFamily: theme.typography.fontFamily,
|
|
6864
|
+
fontSize: "1rem",
|
|
6865
|
+
fontWeight: 700,
|
|
6866
|
+
lineHeight: 1.4
|
|
6867
|
+
}));
|
|
6868
|
+
var Footer3 = styles.styled("div")({
|
|
6869
|
+
display: "grid",
|
|
6870
|
+
gap: "1rem",
|
|
6871
|
+
marginTop: "auto",
|
|
6872
|
+
paddingTop: "1rem"
|
|
6873
|
+
});
|
|
6874
|
+
var ProductCardHorizontal = react.forwardRef(
|
|
6875
|
+
({
|
|
6876
|
+
name,
|
|
6877
|
+
imageUrl,
|
|
6878
|
+
imageAlt,
|
|
6879
|
+
price,
|
|
6880
|
+
originalPrice,
|
|
6881
|
+
currency,
|
|
6882
|
+
locale,
|
|
6883
|
+
lowestPrice,
|
|
6884
|
+
badge,
|
|
6885
|
+
badgeVariant = "success",
|
|
6886
|
+
rating,
|
|
6887
|
+
reviewCount,
|
|
6888
|
+
ctaLabel = "Dodaj do koszyka",
|
|
6889
|
+
onAddToCart,
|
|
6890
|
+
...props
|
|
6891
|
+
}, ref) => /* @__PURE__ */ jsxRuntime.jsx(Card, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(ContainerRoot, { children: /* @__PURE__ */ jsxRuntime.jsxs(Inner, { children: [
|
|
6892
|
+
/* @__PURE__ */ jsxRuntime.jsx(ImageWrap3, { children: /* @__PURE__ */ jsxRuntime.jsx(ProductCardImage, { src: imageUrl, alt: imageAlt ?? name, badge, badgeVariant }) }),
|
|
6893
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Content, { children: [
|
|
6894
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name6, { children: name }),
|
|
6895
|
+
rating !== void 0 && /* @__PURE__ */ jsxRuntime.jsx(Rating, { value: rating, count: reviewCount, size: "sm" }),
|
|
6896
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6897
|
+
Price,
|
|
6898
|
+
{
|
|
6899
|
+
price,
|
|
6900
|
+
originalPrice,
|
|
6901
|
+
currency,
|
|
6902
|
+
locale,
|
|
6903
|
+
lowestPrice,
|
|
6904
|
+
style: { marginTop: "0.5rem" }
|
|
6905
|
+
}
|
|
6906
|
+
),
|
|
6907
|
+
/* @__PURE__ */ jsxRuntime.jsx(Footer3, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6908
|
+
Button,
|
|
6909
|
+
{
|
|
6910
|
+
fullWidth: true,
|
|
6911
|
+
onClick: (e) => {
|
|
6912
|
+
e.stopPropagation();
|
|
6913
|
+
onAddToCart?.();
|
|
6914
|
+
},
|
|
6915
|
+
children: ctaLabel
|
|
6916
|
+
}
|
|
6917
|
+
) })
|
|
6918
|
+
] })
|
|
6919
|
+
] }) }) })
|
|
6920
|
+
);
|
|
6921
|
+
ProductCardHorizontal.displayName = "ProductCardHorizontal";
|
|
6922
|
+
var Root24 = styles.styled(Card, {
|
|
6614
6923
|
shouldForwardProp: (prop) => prop !== "$align"
|
|
6615
6924
|
})(({ $align }) => ({
|
|
6616
6925
|
textAlign: $align,
|
|
6617
6926
|
height: "100%"
|
|
6618
6927
|
}));
|
|
6619
|
-
var
|
|
6928
|
+
var Value2 = styles.styled("p")(({ theme }) => ({
|
|
6620
6929
|
margin: 0,
|
|
6621
6930
|
fontFamily: theme.typography.fontFamily,
|
|
6622
6931
|
fontSize: "2.5rem",
|
|
@@ -6640,19 +6949,85 @@ var Description3 = styles.styled("p")(({ theme }) => ({
|
|
|
6640
6949
|
lineHeight: 1.5
|
|
6641
6950
|
}));
|
|
6642
6951
|
var StatCard = react.forwardRef(
|
|
6643
|
-
({ stat, cardVariant = "default", align = "center", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6644
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6952
|
+
({ stat, cardVariant = "default", align = "center", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root24, { ref, variant: cardVariant, padding: "lg", rounded: "lg", $align: align, ...props, children: [
|
|
6953
|
+
/* @__PURE__ */ jsxRuntime.jsx(Value2, { children: stat.value }),
|
|
6645
6954
|
/* @__PURE__ */ jsxRuntime.jsx(Label3, { children: stat.label }),
|
|
6646
6955
|
stat.description && /* @__PURE__ */ jsxRuntime.jsx(Description3, { children: stat.description })
|
|
6647
6956
|
] })
|
|
6648
6957
|
);
|
|
6649
|
-
StatCard.displayName = "StatCard";
|
|
6650
|
-
var
|
|
6651
|
-
|
|
6652
|
-
|
|
6653
|
-
|
|
6654
|
-
|
|
6655
|
-
|
|
6958
|
+
StatCard.displayName = "StatCard";
|
|
6959
|
+
var Img4 = styles.styled("img")({
|
|
6960
|
+
width: "4rem",
|
|
6961
|
+
height: "4rem",
|
|
6962
|
+
flexShrink: 0,
|
|
6963
|
+
borderRadius: "50%",
|
|
6964
|
+
objectFit: "cover"
|
|
6965
|
+
});
|
|
6966
|
+
function deriveInitials2(name) {
|
|
6967
|
+
return name.split(" ").filter(Boolean).slice(0, 2).map((part) => part[0]).join("").toUpperCase();
|
|
6968
|
+
}
|
|
6969
|
+
var TeamMemberAvatar = ({
|
|
6970
|
+
name,
|
|
6971
|
+
avatarUrl,
|
|
6972
|
+
avatarAlt,
|
|
6973
|
+
initials,
|
|
6974
|
+
avatarColor = "primary"
|
|
6975
|
+
}) => {
|
|
6976
|
+
if (avatarUrl) {
|
|
6977
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Img4, { src: avatarUrl, alt: avatarAlt ?? name });
|
|
6978
|
+
}
|
|
6979
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Avatar, { initials: initials ?? deriveInitials2(name), size: "xl", color: avatarColor });
|
|
6980
|
+
};
|
|
6981
|
+
TeamMemberAvatar.displayName = "TeamMemberAvatar";
|
|
6982
|
+
var Root25 = styles.styled("div")({ minWidth: 0 });
|
|
6983
|
+
var Name7 = styles.styled("h3")(({ theme }) => ({
|
|
6984
|
+
margin: 0,
|
|
6985
|
+
color: theme.palette.text.primary,
|
|
6986
|
+
fontFamily: theme.typography.fontFamily,
|
|
6987
|
+
fontSize: "1rem",
|
|
6988
|
+
fontWeight: 700,
|
|
6989
|
+
lineHeight: 1.4
|
|
6990
|
+
}));
|
|
6991
|
+
var Role = styles.styled("p")(({ theme }) => ({
|
|
6992
|
+
margin: "0.25rem 0 0",
|
|
6993
|
+
color: theme.palette.text.secondary,
|
|
6994
|
+
fontFamily: theme.typography.fontFamily,
|
|
6995
|
+
fontSize: "0.875rem",
|
|
6996
|
+
lineHeight: 1.5
|
|
6997
|
+
}));
|
|
6998
|
+
var TeamMemberInfo = ({ name, role }) => /* @__PURE__ */ jsxRuntime.jsxs(Root25, { children: [
|
|
6999
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name7, { children: name }),
|
|
7000
|
+
role && /* @__PURE__ */ jsxRuntime.jsx(Role, { children: role })
|
|
7001
|
+
] });
|
|
7002
|
+
TeamMemberInfo.displayName = "TeamMemberInfo";
|
|
7003
|
+
var Root26 = styles.styled(Card)(({ theme }) => ({
|
|
7004
|
+
display: "flex",
|
|
7005
|
+
alignItems: "center",
|
|
7006
|
+
gap: "1rem",
|
|
7007
|
+
height: "100%",
|
|
7008
|
+
transition: "border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease",
|
|
7009
|
+
"&:hover": {
|
|
7010
|
+
borderColor: theme.palette.primary.main,
|
|
7011
|
+
boxShadow: theme.shadows[2],
|
|
7012
|
+
transform: "translateY(-2px)"
|
|
7013
|
+
}
|
|
7014
|
+
}));
|
|
7015
|
+
var TeamMemberCard = react.forwardRef(
|
|
7016
|
+
({ member, cardVariant = "default", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root26, { ref, variant: cardVariant, padding: "lg", rounded: "lg", ...props, children: [
|
|
7017
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7018
|
+
TeamMemberAvatar,
|
|
7019
|
+
{
|
|
7020
|
+
name: member.name,
|
|
7021
|
+
avatarUrl: member.avatarUrl,
|
|
7022
|
+
avatarAlt: member.avatarAlt,
|
|
7023
|
+
initials: member.initials,
|
|
7024
|
+
avatarColor: member.avatarColor
|
|
7025
|
+
}
|
|
7026
|
+
),
|
|
7027
|
+
/* @__PURE__ */ jsxRuntime.jsx(TeamMemberInfo, { name: member.name, role: member.role })
|
|
7028
|
+
] })
|
|
7029
|
+
);
|
|
7030
|
+
TeamMemberCard.displayName = "TeamMemberCard";
|
|
6656
7031
|
var Quote = styles.styled("blockquote")(({ theme }) => ({
|
|
6657
7032
|
margin: 0,
|
|
6658
7033
|
fontFamily: theme.typography.fontFamily,
|
|
@@ -6673,104 +7048,162 @@ var Quote = styles.styled("blockquote")(({ theme }) => ({
|
|
|
6673
7048
|
marginLeft: "0.125rem"
|
|
6674
7049
|
}
|
|
6675
7050
|
}));
|
|
6676
|
-
var
|
|
7051
|
+
var TestimonialQuote = ({ quote }) => /* @__PURE__ */ jsxRuntime.jsx(Quote, { children: quote });
|
|
7052
|
+
TestimonialQuote.displayName = "TestimonialQuote";
|
|
7053
|
+
var Root27 = styles.styled("div")({
|
|
6677
7054
|
display: "flex",
|
|
6678
7055
|
alignItems: "center",
|
|
6679
7056
|
gap: "0.75rem"
|
|
6680
7057
|
});
|
|
6681
|
-
var
|
|
7058
|
+
var AvatarImg2 = styles.styled("img")({
|
|
6682
7059
|
width: "2.5rem",
|
|
6683
7060
|
height: "2.5rem",
|
|
6684
7061
|
borderRadius: "50%",
|
|
6685
7062
|
objectFit: "cover",
|
|
6686
7063
|
flexShrink: 0
|
|
6687
7064
|
});
|
|
6688
|
-
var
|
|
6689
|
-
|
|
6690
|
-
});
|
|
6691
|
-
var AuthorName = styles.styled("p")(({ theme }) => ({
|
|
7065
|
+
var Info = styles.styled("div")({ minWidth: 0 });
|
|
7066
|
+
var Name8 = styles.styled("p")(({ theme }) => ({
|
|
6692
7067
|
margin: 0,
|
|
6693
7068
|
fontFamily: theme.typography.fontFamily,
|
|
6694
7069
|
fontSize: "0.875rem",
|
|
6695
7070
|
fontWeight: 700,
|
|
6696
7071
|
color: theme.palette.text.primary
|
|
6697
7072
|
}));
|
|
6698
|
-
var
|
|
7073
|
+
var Role2 = styles.styled("p")(({ theme }) => ({
|
|
6699
7074
|
margin: "0.125rem 0 0",
|
|
6700
7075
|
fontFamily: theme.typography.fontFamily,
|
|
6701
7076
|
fontSize: "0.8125rem",
|
|
6702
7077
|
color: theme.palette.text.secondary
|
|
6703
7078
|
}));
|
|
7079
|
+
function deriveInitials3(name) {
|
|
7080
|
+
return name.split(" ").filter(Boolean).slice(0, 2).map((p) => p[0]).join("").toUpperCase();
|
|
7081
|
+
}
|
|
7082
|
+
var TestimonialAuthor = ({
|
|
7083
|
+
authorName,
|
|
7084
|
+
authorRole,
|
|
7085
|
+
authorAvatarUrl,
|
|
7086
|
+
authorInitials
|
|
7087
|
+
}) => /* @__PURE__ */ jsxRuntime.jsxs(Root27, { children: [
|
|
7088
|
+
authorAvatarUrl ? /* @__PURE__ */ jsxRuntime.jsx(AvatarImg2, { src: authorAvatarUrl, alt: authorName }) : /* @__PURE__ */ jsxRuntime.jsx(Avatar, { initials: authorInitials ?? deriveInitials3(authorName), size: "md", color: "primary" }),
|
|
7089
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Info, { children: [
|
|
7090
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name8, { children: authorName }),
|
|
7091
|
+
authorRole && /* @__PURE__ */ jsxRuntime.jsx(Role2, { children: authorRole })
|
|
7092
|
+
] })
|
|
7093
|
+
] });
|
|
7094
|
+
TestimonialAuthor.displayName = "TestimonialAuthor";
|
|
7095
|
+
var Root28 = styles.styled(Card)({
|
|
7096
|
+
display: "flex",
|
|
7097
|
+
flexDirection: "column",
|
|
7098
|
+
gap: "1.25rem",
|
|
7099
|
+
height: "100%"
|
|
7100
|
+
});
|
|
6704
7101
|
var TestimonialCard = react.forwardRef(
|
|
6705
|
-
({ testimonial, cardVariant = "default", ...props }, ref) => {
|
|
6706
|
-
|
|
6707
|
-
|
|
6708
|
-
|
|
6709
|
-
|
|
6710
|
-
|
|
6711
|
-
|
|
6712
|
-
|
|
6713
|
-
|
|
6714
|
-
|
|
6715
|
-
|
|
6716
|
-
|
|
6717
|
-
|
|
6718
|
-
}
|
|
7102
|
+
({ testimonial, cardVariant = "default", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root28, { ref, variant: cardVariant, padding: "lg", rounded: "lg", ...props, children: [
|
|
7103
|
+
testimonial.rating && /* @__PURE__ */ jsxRuntime.jsx(Rating, { value: testimonial.rating, readonly: true, size: "sm" }),
|
|
7104
|
+
/* @__PURE__ */ jsxRuntime.jsx(TestimonialQuote, { quote: testimonial.quote }),
|
|
7105
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7106
|
+
TestimonialAuthor,
|
|
7107
|
+
{
|
|
7108
|
+
authorName: testimonial.authorName,
|
|
7109
|
+
authorRole: testimonial.authorRole,
|
|
7110
|
+
authorAvatarUrl: testimonial.authorAvatarUrl,
|
|
7111
|
+
authorInitials: testimonial.authorInitials
|
|
7112
|
+
}
|
|
7113
|
+
)
|
|
7114
|
+
] })
|
|
6719
7115
|
);
|
|
6720
7116
|
TestimonialCard.displayName = "TestimonialCard";
|
|
6721
|
-
var
|
|
7117
|
+
var Root29 = styles.styled("div")(({ theme }) => ({
|
|
7118
|
+
position: "relative",
|
|
7119
|
+
padding: "1.5rem",
|
|
7120
|
+
borderRadius: "1rem",
|
|
7121
|
+
border: `2px dashed ${theme.palette.primary.main}`,
|
|
7122
|
+
backgroundColor: theme.palette.background.paper,
|
|
7123
|
+
fontFamily: theme.typography.fontFamily,
|
|
6722
7124
|
display: "flex",
|
|
6723
|
-
|
|
6724
|
-
gap: "1rem"
|
|
6725
|
-
height: "100%",
|
|
6726
|
-
transition: "border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease",
|
|
6727
|
-
"&:hover": {
|
|
6728
|
-
borderColor: theme.palette.primary.main,
|
|
6729
|
-
boxShadow: theme.shadows[2],
|
|
6730
|
-
transform: "translateY(-2px)"
|
|
6731
|
-
}
|
|
7125
|
+
flexDirection: "column",
|
|
7126
|
+
gap: "1rem"
|
|
6732
7127
|
}));
|
|
6733
|
-
var
|
|
6734
|
-
|
|
6735
|
-
|
|
6736
|
-
|
|
6737
|
-
borderRadius: "50%",
|
|
6738
|
-
objectFit: "cover"
|
|
6739
|
-
});
|
|
6740
|
-
var Content3 = styles.styled("div")({
|
|
6741
|
-
minWidth: 0
|
|
7128
|
+
var Header = styles.styled("div")({
|
|
7129
|
+
display: "flex",
|
|
7130
|
+
alignItems: "center",
|
|
7131
|
+
gap: "0.75rem"
|
|
6742
7132
|
});
|
|
6743
|
-
var
|
|
6744
|
-
|
|
6745
|
-
|
|
6746
|
-
|
|
6747
|
-
|
|
6748
|
-
fontWeight: 700,
|
|
6749
|
-
lineHeight: 1.4
|
|
7133
|
+
var Discount = styles.styled("span")(({ theme }) => ({
|
|
7134
|
+
fontSize: "2rem",
|
|
7135
|
+
fontWeight: 800,
|
|
7136
|
+
lineHeight: 1,
|
|
7137
|
+
color: theme.palette.primary.main
|
|
6750
7138
|
}));
|
|
6751
|
-
var
|
|
6752
|
-
margin:
|
|
6753
|
-
color: theme.palette.text.secondary,
|
|
6754
|
-
fontFamily: theme.typography.fontFamily,
|
|
7139
|
+
var Description4 = styles.styled("p")(({ theme }) => ({
|
|
7140
|
+
margin: 0,
|
|
6755
7141
|
fontSize: "0.875rem",
|
|
7142
|
+
color: theme.palette.text.secondary,
|
|
6756
7143
|
lineHeight: 1.5
|
|
6757
7144
|
}));
|
|
6758
|
-
|
|
6759
|
-
|
|
6760
|
-
|
|
7145
|
+
var CodeRow = styles.styled("div")(({ theme }) => ({
|
|
7146
|
+
display: "flex",
|
|
7147
|
+
alignItems: "center",
|
|
7148
|
+
gap: "0.5rem",
|
|
7149
|
+
padding: "0.625rem 1rem",
|
|
7150
|
+
backgroundColor: theme.palette.action.hover,
|
|
7151
|
+
borderRadius: theme.shape.borderRadius
|
|
7152
|
+
}));
|
|
7153
|
+
var Code = styles.styled("span")(({ theme }) => ({
|
|
7154
|
+
flex: 1,
|
|
7155
|
+
fontFamily: "monospace",
|
|
7156
|
+
fontSize: "1rem",
|
|
7157
|
+
fontWeight: 700,
|
|
7158
|
+
letterSpacing: "0.1em",
|
|
7159
|
+
color: theme.palette.text.primary,
|
|
7160
|
+
userSelect: "all"
|
|
7161
|
+
}));
|
|
7162
|
+
var CopyButton = styles.styled("button")(({ theme }) => ({
|
|
7163
|
+
border: 0,
|
|
7164
|
+
background: "transparent",
|
|
7165
|
+
color: theme.palette.primary.main,
|
|
7166
|
+
cursor: "pointer",
|
|
7167
|
+
padding: "0.25rem",
|
|
7168
|
+
display: "flex",
|
|
7169
|
+
alignItems: "center",
|
|
7170
|
+
borderRadius: theme.shape.borderRadius,
|
|
7171
|
+
transition: "background-color 150ms ease",
|
|
7172
|
+
"&:hover": {
|
|
7173
|
+
backgroundColor: theme.palette.action.hover
|
|
6761
7174
|
}
|
|
6762
|
-
|
|
6763
|
-
}
|
|
6764
|
-
|
|
6765
|
-
|
|
6766
|
-
|
|
6767
|
-
|
|
6768
|
-
|
|
6769
|
-
|
|
7175
|
+
}));
|
|
7176
|
+
var Expiry = styles.styled("p")(({ theme }) => ({
|
|
7177
|
+
margin: 0,
|
|
7178
|
+
fontSize: "0.75rem",
|
|
7179
|
+
color: theme.palette.text.disabled
|
|
7180
|
+
}));
|
|
7181
|
+
var VoucherCard = react.forwardRef(
|
|
7182
|
+
({ code, discount, description, expiresAt, copied = false, onCopy, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root29, { ref, ...props, children: [
|
|
7183
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Header, { children: [
|
|
7184
|
+
/* @__PURE__ */ jsxRuntime.jsx(LocalOfferIcon__default.default, { style: { fontSize: 20 }, color: "primary" }),
|
|
7185
|
+
/* @__PURE__ */ jsxRuntime.jsx(Discount, { children: discount })
|
|
7186
|
+
] }),
|
|
7187
|
+
description && /* @__PURE__ */ jsxRuntime.jsx(Description4, { children: description }),
|
|
7188
|
+
/* @__PURE__ */ jsxRuntime.jsxs(CodeRow, { children: [
|
|
7189
|
+
/* @__PURE__ */ jsxRuntime.jsx(Code, { children: code }),
|
|
7190
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7191
|
+
CopyButton,
|
|
7192
|
+
{
|
|
7193
|
+
type: "button",
|
|
7194
|
+
"aria-label": copied ? "Skopiowano" : "Kopiuj kod",
|
|
7195
|
+
onClick: () => onCopy?.(code),
|
|
7196
|
+
children: copied ? /* @__PURE__ */ jsxRuntime.jsx(CheckIcon__default.default, { style: { fontSize: 18, color: "green" } }) : /* @__PURE__ */ jsxRuntime.jsx(ContentCopyIcon__default.default, { style: { fontSize: 18 } })
|
|
7197
|
+
}
|
|
7198
|
+
)
|
|
7199
|
+
] }),
|
|
7200
|
+
expiresAt && /* @__PURE__ */ jsxRuntime.jsxs(Expiry, { children: [
|
|
7201
|
+
"Wa\u017Cny do: ",
|
|
7202
|
+
expiresAt
|
|
6770
7203
|
] })
|
|
6771
7204
|
] })
|
|
6772
7205
|
);
|
|
6773
|
-
|
|
7206
|
+
VoucherCard.displayName = "VoucherCard";
|
|
6774
7207
|
var Wrapper3 = styles.styled("div")({
|
|
6775
7208
|
width: "100%",
|
|
6776
7209
|
overflowX: "auto",
|
|
@@ -6855,7 +7288,7 @@ var RemoveBtn = styles.styled("button")(({ theme }) => ({
|
|
|
6855
7288
|
}
|
|
6856
7289
|
}));
|
|
6857
7290
|
var Tbody = styles.styled("tbody")({});
|
|
6858
|
-
var
|
|
7291
|
+
var Row4 = styles.styled("tr", {
|
|
6859
7292
|
shouldForwardProp: (p) => p !== "$diff"
|
|
6860
7293
|
})(({ theme, $diff }) => ({
|
|
6861
7294
|
backgroundColor: $diff ? theme.palette.mode === "dark" ? "rgba(255,255,255,0.03)" : "rgba(0,0,0,0.02)" : "transparent",
|
|
@@ -6876,210 +7309,75 @@ var ValueCell = styles.styled("td", {
|
|
|
6876
7309
|
})(({ theme, $highlight }) => ({
|
|
6877
7310
|
padding: "0.75rem 1rem",
|
|
6878
7311
|
textAlign: "center",
|
|
6879
|
-
fontSize: "0.9375rem",
|
|
6880
|
-
color: theme.palette.text.primary,
|
|
6881
|
-
borderBottom: `1px solid ${theme.palette.divider}`,
|
|
6882
|
-
fontWeight: $highlight ? 700 : 400,
|
|
6883
|
-
backgroundColor: $highlight ? theme.palette.mode === "dark" ? "rgba(99,102,241,0.08)" : "rgba(99,102,241,0.06)" : "transparent"
|
|
6884
|
-
}));
|
|
6885
|
-
var BoolIcon = ({ value }) => /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-label": value ? "Tak" : "Nie", style: { display: "inline-flex", fontSize: "1.125rem" }, children: value ? /* @__PURE__ */ jsxRuntime.jsx(CheckIcon__default.default, {}) : /* @__PURE__ */ jsxRuntime.jsx(CloseIcon__default.default, {}) });
|
|
6886
|
-
function formatValue(v) {
|
|
6887
|
-
if (typeof v === "boolean") return /* @__PURE__ */ jsxRuntime.jsx(BoolIcon, { value: v });
|
|
6888
|
-
return String(v);
|
|
6889
|
-
}
|
|
6890
|
-
function isDiff(specKey, products) {
|
|
6891
|
-
const values = products.map((p) => p.specs[specKey]);
|
|
6892
|
-
return values.some((v) => String(v) !== String(values[0]));
|
|
6893
|
-
}
|
|
6894
|
-
function getSpecKeys(products) {
|
|
6895
|
-
const keys = /* @__PURE__ */ new Set();
|
|
6896
|
-
products.forEach((p) => Object.keys(p.specs).forEach((k) => keys.add(k)));
|
|
6897
|
-
return Array.from(keys);
|
|
6898
|
-
}
|
|
6899
|
-
function CompareTool({
|
|
6900
|
-
products,
|
|
6901
|
-
specLabels = {},
|
|
6902
|
-
onRemove,
|
|
6903
|
-
highlightDifferences = true,
|
|
6904
|
-
className
|
|
6905
|
-
}) {
|
|
6906
|
-
if (!products.length) return null;
|
|
6907
|
-
const specKeys = getSpecKeys(products);
|
|
6908
|
-
const bestValues = {};
|
|
6909
|
-
specKeys.forEach((key) => {
|
|
6910
|
-
const nums = products.map((p) => p.specs[key]).filter((v) => typeof v === "number");
|
|
6911
|
-
if (nums.length === products.length) {
|
|
6912
|
-
bestValues[key] = Math.max(...nums);
|
|
6913
|
-
}
|
|
6914
|
-
});
|
|
6915
|
-
return /* @__PURE__ */ jsxRuntime.jsx(Wrapper3, { className, children: /* @__PURE__ */ jsxRuntime.jsxs(Table, { role: "table", "aria-label": "Por\xF3wnanie produkt\xF3w", children: [
|
|
6916
|
-
/* @__PURE__ */ jsxRuntime.jsx(Thead, { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
|
6917
|
-
/* @__PURE__ */ jsxRuntime.jsx(HeaderCell, { $isLabel: true, as: "th", scope: "col", children: "Parametr" }),
|
|
6918
|
-
products.map((p) => /* @__PURE__ */ jsxRuntime.jsxs(HeaderCell, { as: "th", scope: "col", children: [
|
|
6919
|
-
p.imageUrl ? /* @__PURE__ */ jsxRuntime.jsx(ProductImage, { src: p.imageUrl, alt: p.name }) : /* @__PURE__ */ jsxRuntime.jsx(ProductImagePlaceholder, { "aria-hidden": "true" }),
|
|
6920
|
-
/* @__PURE__ */ jsxRuntime.jsx(ProductName, { children: p.name }),
|
|
6921
|
-
/* @__PURE__ */ jsxRuntime.jsx(ProductPrice, { children: p.price }),
|
|
6922
|
-
onRemove && /* @__PURE__ */ jsxRuntime.jsx(
|
|
6923
|
-
RemoveBtn,
|
|
6924
|
-
{
|
|
6925
|
-
type: "button",
|
|
6926
|
-
"aria-label": `Usu\u0144 ${p.name} z por\xF3wnania`,
|
|
6927
|
-
onClick: () => onRemove(p.id),
|
|
6928
|
-
children: "Usu\u0144"
|
|
6929
|
-
}
|
|
6930
|
-
)
|
|
6931
|
-
] }, p.id))
|
|
6932
|
-
] }) }),
|
|
6933
|
-
/* @__PURE__ */ jsxRuntime.jsx(Tbody, { children: specKeys.map((key) => {
|
|
6934
|
-
const diff = highlightDifferences && isDiff(key, products);
|
|
6935
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(Row3, { $diff: diff, children: [
|
|
6936
|
-
/* @__PURE__ */ jsxRuntime.jsx(LabelCell, { as: "th", scope: "row", children: specLabels[key] ?? key }),
|
|
6937
|
-
products.map((p) => {
|
|
6938
|
-
const val = p.specs[key];
|
|
6939
|
-
const isHighlighted = highlightDifferences && key in bestValues && typeof val === "number" && val === bestValues[key];
|
|
6940
|
-
return /* @__PURE__ */ jsxRuntime.jsx(ValueCell, { $highlight: isHighlighted, children: val !== void 0 ? formatValue(val) : /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-label": "Brak danych", children: "\u2014" }) }, p.id);
|
|
6941
|
-
})
|
|
6942
|
-
] }, key);
|
|
6943
|
-
}) })
|
|
6944
|
-
] }) });
|
|
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
|
|
7312
|
+
fontSize: "0.9375rem",
|
|
7313
|
+
color: theme.palette.text.primary,
|
|
7314
|
+
borderBottom: `1px solid ${theme.palette.divider}`,
|
|
7315
|
+
fontWeight: $highlight ? 700 : 400,
|
|
7316
|
+
backgroundColor: $highlight ? theme.palette.mode === "dark" ? "rgba(99,102,241,0.08)" : "rgba(99,102,241,0.06)" : "transparent"
|
|
7030
7317
|
}));
|
|
7031
|
-
var
|
|
7032
|
-
|
|
7033
|
-
({
|
|
7034
|
-
|
|
7035
|
-
|
|
7036
|
-
|
|
7037
|
-
|
|
7038
|
-
|
|
7039
|
-
|
|
7040
|
-
|
|
7041
|
-
|
|
7042
|
-
|
|
7043
|
-
|
|
7044
|
-
|
|
7045
|
-
|
|
7046
|
-
|
|
7047
|
-
|
|
7048
|
-
|
|
7049
|
-
|
|
7050
|
-
|
|
7051
|
-
|
|
7052
|
-
|
|
7053
|
-
|
|
7054
|
-
|
|
7318
|
+
var BoolIcon = ({ value }) => /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-label": value ? "Tak" : "Nie", style: { display: "inline-flex", fontSize: "1.125rem" }, children: value ? /* @__PURE__ */ jsxRuntime.jsx(CheckIcon__default.default, {}) : /* @__PURE__ */ jsxRuntime.jsx(CloseIcon__default.default, {}) });
|
|
7319
|
+
function formatValue(v) {
|
|
7320
|
+
if (typeof v === "boolean") return /* @__PURE__ */ jsxRuntime.jsx(BoolIcon, { value: v });
|
|
7321
|
+
return String(v);
|
|
7322
|
+
}
|
|
7323
|
+
function isDiff(specKey, products) {
|
|
7324
|
+
const values = products.map((p) => p.specs[specKey]);
|
|
7325
|
+
return values.some((v) => String(v) !== String(values[0]));
|
|
7326
|
+
}
|
|
7327
|
+
function getSpecKeys(products) {
|
|
7328
|
+
const keys = /* @__PURE__ */ new Set();
|
|
7329
|
+
products.forEach((p) => Object.keys(p.specs).forEach((k) => keys.add(k)));
|
|
7330
|
+
return Array.from(keys);
|
|
7331
|
+
}
|
|
7332
|
+
function CompareTool({
|
|
7333
|
+
products,
|
|
7334
|
+
specLabels = {},
|
|
7335
|
+
onRemove,
|
|
7336
|
+
highlightDifferences = true,
|
|
7337
|
+
className
|
|
7338
|
+
}) {
|
|
7339
|
+
if (!products.length) return null;
|
|
7340
|
+
const specKeys = getSpecKeys(products);
|
|
7341
|
+
const bestValues = {};
|
|
7342
|
+
specKeys.forEach((key) => {
|
|
7343
|
+
const nums = products.map((p) => p.specs[key]).filter((v) => typeof v === "number");
|
|
7344
|
+
if (nums.length === products.length) {
|
|
7345
|
+
bestValues[key] = Math.max(...nums);
|
|
7055
7346
|
}
|
|
7056
|
-
|
|
7057
|
-
|
|
7058
|
-
|
|
7059
|
-
{
|
|
7060
|
-
|
|
7061
|
-
|
|
7062
|
-
|
|
7063
|
-
|
|
7064
|
-
|
|
7065
|
-
|
|
7066
|
-
|
|
7067
|
-
|
|
7068
|
-
|
|
7069
|
-
|
|
7070
|
-
|
|
7071
|
-
|
|
7072
|
-
|
|
7073
|
-
|
|
7074
|
-
|
|
7075
|
-
|
|
7076
|
-
|
|
7077
|
-
|
|
7078
|
-
)
|
|
7079
|
-
|
|
7080
|
-
|
|
7347
|
+
});
|
|
7348
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Wrapper3, { className, children: /* @__PURE__ */ jsxRuntime.jsxs(Table, { role: "table", "aria-label": "Por\xF3wnanie produkt\xF3w", children: [
|
|
7349
|
+
/* @__PURE__ */ jsxRuntime.jsx(Thead, { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
|
7350
|
+
/* @__PURE__ */ jsxRuntime.jsx(HeaderCell, { $isLabel: true, as: "th", scope: "col", children: "Parametr" }),
|
|
7351
|
+
products.map((p) => /* @__PURE__ */ jsxRuntime.jsxs(HeaderCell, { as: "th", scope: "col", children: [
|
|
7352
|
+
p.imageUrl ? /* @__PURE__ */ jsxRuntime.jsx(ProductImage, { src: p.imageUrl, alt: p.name }) : /* @__PURE__ */ jsxRuntime.jsx(ProductImagePlaceholder, { "aria-hidden": "true" }),
|
|
7353
|
+
/* @__PURE__ */ jsxRuntime.jsx(ProductName, { children: p.name }),
|
|
7354
|
+
/* @__PURE__ */ jsxRuntime.jsx(ProductPrice, { children: p.price }),
|
|
7355
|
+
onRemove && /* @__PURE__ */ jsxRuntime.jsx(
|
|
7356
|
+
RemoveBtn,
|
|
7357
|
+
{
|
|
7358
|
+
type: "button",
|
|
7359
|
+
"aria-label": `Usu\u0144 ${p.name} z por\xF3wnania`,
|
|
7360
|
+
onClick: () => onRemove(p.id),
|
|
7361
|
+
children: "Usu\u0144"
|
|
7362
|
+
}
|
|
7363
|
+
)
|
|
7364
|
+
] }, p.id))
|
|
7365
|
+
] }) }),
|
|
7366
|
+
/* @__PURE__ */ jsxRuntime.jsx(Tbody, { children: specKeys.map((key) => {
|
|
7367
|
+
const diff = highlightDifferences && isDiff(key, products);
|
|
7368
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Row4, { $diff: diff, children: [
|
|
7369
|
+
/* @__PURE__ */ jsxRuntime.jsx(LabelCell, { as: "th", scope: "row", children: specLabels[key] ?? key }),
|
|
7370
|
+
products.map((p) => {
|
|
7371
|
+
const val = p.specs[key];
|
|
7372
|
+
const isHighlighted = highlightDifferences && key in bestValues && typeof val === "number" && val === bestValues[key];
|
|
7373
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ValueCell, { $highlight: isHighlighted, children: val !== void 0 ? formatValue(val) : /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-label": "Brak danych", children: "\u2014" }) }, p.id);
|
|
7374
|
+
})
|
|
7375
|
+
] }, key);
|
|
7376
|
+
}) })
|
|
7377
|
+
] }) });
|
|
7378
|
+
}
|
|
7081
7379
|
var spin2 = styles.keyframes`to { transform: rotate(360deg); }`;
|
|
7082
|
-
var
|
|
7380
|
+
var Root30 = styles.styled("div")({
|
|
7083
7381
|
display: "flex",
|
|
7084
7382
|
flexDirection: "column",
|
|
7085
7383
|
gap: "0.5rem"
|
|
@@ -7226,7 +7524,7 @@ function CouponInput({
|
|
|
7226
7524
|
if (e.key === "Enter") handleApply();
|
|
7227
7525
|
};
|
|
7228
7526
|
if (appliedCode) {
|
|
7229
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7527
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root30, { className, children: [
|
|
7230
7528
|
/* @__PURE__ */ jsxRuntime.jsxs(AppliedRow, { role: "status", "aria-label": `Kod rabatowy ${appliedCode} zastosowany`, children: [
|
|
7231
7529
|
/* @__PURE__ */ jsxRuntime.jsx(AppliedCode, { children: appliedCode }),
|
|
7232
7530
|
onRemove && /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -7245,7 +7543,7 @@ function CouponInput({
|
|
|
7245
7543
|
] })
|
|
7246
7544
|
] });
|
|
7247
7545
|
}
|
|
7248
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7546
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root30, { className, children: [
|
|
7249
7547
|
/* @__PURE__ */ jsxRuntime.jsxs(InputRow, { $hasError: Boolean(error), $applied: false, children: [
|
|
7250
7548
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7251
7549
|
Input,
|
|
@@ -7277,7 +7575,7 @@ function CouponInput({
|
|
|
7277
7575
|
error && /* @__PURE__ */ jsxRuntime.jsx(Message, { $type: "error", id: errorId, role: "alert", children: error })
|
|
7278
7576
|
] });
|
|
7279
7577
|
}
|
|
7280
|
-
var
|
|
7578
|
+
var Root31 = styles.styled("div")({
|
|
7281
7579
|
display: "flex",
|
|
7282
7580
|
flexDirection: "column",
|
|
7283
7581
|
gap: "0.5rem"
|
|
@@ -7313,8 +7611,8 @@ var IconWrap = styles.styled("span")(({ theme }) => ({
|
|
|
7313
7611
|
color: theme.palette.text.secondary,
|
|
7314
7612
|
display: "flex"
|
|
7315
7613
|
}));
|
|
7316
|
-
var
|
|
7317
|
-
var
|
|
7614
|
+
var Info2 = styles.styled("div")({ flex: 1 });
|
|
7615
|
+
var Name9 = styles.styled("div")(({ theme }) => ({
|
|
7318
7616
|
fontSize: "0.9375rem",
|
|
7319
7617
|
fontWeight: 600,
|
|
7320
7618
|
color: theme.palette.text.primary
|
|
@@ -7325,7 +7623,7 @@ var Desc = styles.styled("div")(({ theme }) => ({
|
|
|
7325
7623
|
marginTop: "0.125rem"
|
|
7326
7624
|
}));
|
|
7327
7625
|
var PaymentMethodSelector = react.forwardRef(
|
|
7328
|
-
({ methods, value, onChange, label = "Metoda p\u0142atno\u015Bci", disabled, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7626
|
+
({ methods, value, onChange, label = "Metoda p\u0142atno\u015Bci", disabled, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root31, { ref, ...props, children: [
|
|
7329
7627
|
/* @__PURE__ */ jsxRuntime.jsx(GroupLabel, { children: label }),
|
|
7330
7628
|
methods.map((method) => {
|
|
7331
7629
|
const selected = value === method.id;
|
|
@@ -7343,8 +7641,8 @@ var PaymentMethodSelector = react.forwardRef(
|
|
|
7343
7641
|
}
|
|
7344
7642
|
),
|
|
7345
7643
|
/* @__PURE__ */ jsxRuntime.jsx(IconWrap, { children: method.icon ?? /* @__PURE__ */ jsxRuntime.jsx(CreditCardOutlinedIcon__default.default, { "aria-hidden": true }) }),
|
|
7346
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
7347
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7644
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Info2, { children: [
|
|
7645
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name9, { children: method.label }),
|
|
7348
7646
|
method.description && /* @__PURE__ */ jsxRuntime.jsx(Desc, { children: method.description })
|
|
7349
7647
|
] })
|
|
7350
7648
|
] }, method.id);
|
|
@@ -7352,7 +7650,7 @@ var PaymentMethodSelector = react.forwardRef(
|
|
|
7352
7650
|
] })
|
|
7353
7651
|
);
|
|
7354
7652
|
PaymentMethodSelector.displayName = "PaymentMethodSelector";
|
|
7355
|
-
var
|
|
7653
|
+
var Root32 = styles.styled("div")({
|
|
7356
7654
|
display: "grid",
|
|
7357
7655
|
gap: "0.75rem"
|
|
7358
7656
|
});
|
|
@@ -7379,7 +7677,7 @@ var ThumbnailImage = styles.styled("img")({
|
|
|
7379
7677
|
objectFit: "cover"
|
|
7380
7678
|
});
|
|
7381
7679
|
var ProductGallery = react.forwardRef(
|
|
7382
|
-
({ images, selectedIndex, onSelect, ...props }, ref) => {
|
|
7680
|
+
({ images, selectedIndex, onSelect, imageRatio = "4/3", ...props }, ref) => {
|
|
7383
7681
|
const [internalIndex, setInternalIndex] = react.useState(0);
|
|
7384
7682
|
const activeIndex = selectedIndex ?? internalIndex;
|
|
7385
7683
|
const activeImage = images[activeIndex] ?? images[0];
|
|
@@ -7390,8 +7688,8 @@ var ProductGallery = react.forwardRef(
|
|
|
7390
7688
|
if (!activeImage) {
|
|
7391
7689
|
return null;
|
|
7392
7690
|
}
|
|
7393
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7394
|
-
/* @__PURE__ */ jsxRuntime.jsx(AspectRatio, { ratio:
|
|
7691
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root32, { ref, ...props, children: [
|
|
7692
|
+
/* @__PURE__ */ jsxRuntime.jsx(AspectRatio, { ratio: imageRatio, children: /* @__PURE__ */ jsxRuntime.jsx(MainImage, { src: activeImage.src, alt: activeImage.alt }) }),
|
|
7395
7693
|
images.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(Thumbnails, { children: images.map((image, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
7396
7694
|
ThumbnailButton,
|
|
7397
7695
|
{
|
|
@@ -7408,7 +7706,7 @@ var ProductGallery = react.forwardRef(
|
|
|
7408
7706
|
}
|
|
7409
7707
|
);
|
|
7410
7708
|
ProductGallery.displayName = "ProductGallery";
|
|
7411
|
-
var
|
|
7709
|
+
var Root33 = styles.styled("div")(({ theme, $variant }) => ({
|
|
7412
7710
|
display: "flex",
|
|
7413
7711
|
alignItems: "center",
|
|
7414
7712
|
justifyContent: "center",
|
|
@@ -7428,14 +7726,14 @@ var Link = styles.styled("a")(({ theme }) => ({
|
|
|
7428
7726
|
textUnderlineOffset: "0.2em"
|
|
7429
7727
|
}));
|
|
7430
7728
|
var PromoStrip = react.forwardRef(
|
|
7431
|
-
({ message, actionLabel, href, variant = "info", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7729
|
+
({ message, actionLabel, href, variant = "info", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root33, { ref, $variant: variant, ...props, children: [
|
|
7432
7730
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: message }),
|
|
7433
7731
|
actionLabel && href && /* @__PURE__ */ jsxRuntime.jsx(Link, { href, children: actionLabel })
|
|
7434
7732
|
] })
|
|
7435
7733
|
);
|
|
7436
7734
|
PromoStrip.displayName = "PromoStrip";
|
|
7437
7735
|
var promoStripVariants = ["info", "success", "warning"];
|
|
7438
|
-
var
|
|
7736
|
+
var Root34 = styles.styled("div")(({ theme }) => ({
|
|
7439
7737
|
display: "inline-grid",
|
|
7440
7738
|
gridTemplateColumns: "2.25rem 3rem 2.25rem",
|
|
7441
7739
|
alignItems: "center",
|
|
@@ -7471,7 +7769,7 @@ var QuantitySelector = react.forwardRef(
|
|
|
7471
7769
|
({ value, min = 1, max = 99, step = 1, disabled = false, onChange, ...props }, ref) => {
|
|
7472
7770
|
const decrease = Math.max(min, value - step);
|
|
7473
7771
|
const increase = Math.min(max, value + step);
|
|
7474
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7772
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root34, { ref, "aria-label": "Wybierz ilo\u015B\u0107", ...props, children: [
|
|
7475
7773
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7476
7774
|
Control,
|
|
7477
7775
|
{
|
|
@@ -7497,7 +7795,7 @@ var QuantitySelector = react.forwardRef(
|
|
|
7497
7795
|
}
|
|
7498
7796
|
);
|
|
7499
7797
|
QuantitySelector.displayName = "QuantitySelector";
|
|
7500
|
-
var
|
|
7798
|
+
var Root35 = styles.styled("div")({
|
|
7501
7799
|
display: "flex",
|
|
7502
7800
|
flexDirection: "column",
|
|
7503
7801
|
gap: "0.5rem"
|
|
@@ -7535,8 +7833,8 @@ var IconWrap2 = styles.styled("span")(({ theme }) => ({
|
|
|
7535
7833
|
color: theme.palette.text.secondary,
|
|
7536
7834
|
display: "flex"
|
|
7537
7835
|
}));
|
|
7538
|
-
var
|
|
7539
|
-
var
|
|
7836
|
+
var Info3 = styles.styled("div")({ flex: 1 });
|
|
7837
|
+
var Name10 = styles.styled("div")(({ theme }) => ({
|
|
7540
7838
|
fontSize: "0.9375rem",
|
|
7541
7839
|
fontWeight: 600,
|
|
7542
7840
|
color: theme.palette.text.primary
|
|
@@ -7546,7 +7844,7 @@ var Desc2 = styles.styled("div")(({ theme }) => ({
|
|
|
7546
7844
|
color: theme.palette.text.secondary,
|
|
7547
7845
|
marginTop: "0.125rem"
|
|
7548
7846
|
}));
|
|
7549
|
-
var
|
|
7847
|
+
var Price2 = styles.styled("div", {
|
|
7550
7848
|
shouldForwardProp: (prop) => prop !== "$selected"
|
|
7551
7849
|
})(({ theme, $selected }) => ({
|
|
7552
7850
|
fontSize: "0.9375rem",
|
|
@@ -7555,7 +7853,7 @@ var Price3 = styles.styled("div", {
|
|
|
7555
7853
|
whiteSpace: "nowrap"
|
|
7556
7854
|
}));
|
|
7557
7855
|
var ShippingSelector = react.forwardRef(
|
|
7558
|
-
({ options, value, onChange, label = "Metoda dostawy", disabled, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7856
|
+
({ options, value, onChange, label = "Metoda dostawy", disabled, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root35, { ref, ...props, children: [
|
|
7559
7857
|
/* @__PURE__ */ jsxRuntime.jsx(GroupLabel2, { children: label }),
|
|
7560
7858
|
options.map((opt) => {
|
|
7561
7859
|
const selected = value === opt.id;
|
|
@@ -7573,14 +7871,14 @@ var ShippingSelector = react.forwardRef(
|
|
|
7573
7871
|
}
|
|
7574
7872
|
),
|
|
7575
7873
|
/* @__PURE__ */ jsxRuntime.jsx(IconWrap2, { children: opt.icon ?? /* @__PURE__ */ jsxRuntime.jsx(LocalShippingOutlinedIcon__default.default, { "aria-hidden": true }) }),
|
|
7576
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
7577
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7874
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Info3, { children: [
|
|
7875
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name10, { children: opt.label }),
|
|
7578
7876
|
(opt.description || opt.estimatedDays) && /* @__PURE__ */ jsxRuntime.jsxs(Desc2, { children: [
|
|
7579
7877
|
opt.description,
|
|
7580
7878
|
opt.estimatedDays && ` \xB7 ${opt.estimatedDays}`
|
|
7581
7879
|
] })
|
|
7582
7880
|
] }),
|
|
7583
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7881
|
+
/* @__PURE__ */ jsxRuntime.jsx(Price2, { $selected: selected, children: opt.price })
|
|
7584
7882
|
] }, opt.id);
|
|
7585
7883
|
})
|
|
7586
7884
|
] })
|
|
@@ -7592,7 +7890,7 @@ var DEFAULT_SORT_OPTIONS = [
|
|
|
7592
7890
|
{ value: "price-asc", label: "Cena rosn\u0105co" },
|
|
7593
7891
|
{ value: "price-desc", label: "Cena malej\u0105co" }
|
|
7594
7892
|
];
|
|
7595
|
-
var
|
|
7893
|
+
var Root36 = styles.styled("div")(({ theme }) => ({
|
|
7596
7894
|
display: "flex",
|
|
7597
7895
|
alignItems: "center",
|
|
7598
7896
|
justifyContent: "space-between",
|
|
@@ -7666,7 +7964,7 @@ var SortBar = react.forwardRef(
|
|
|
7666
7964
|
...props
|
|
7667
7965
|
}, ref) => {
|
|
7668
7966
|
const resolvedLabel = totalLabel ?? (total !== void 0 ? `Znaleziono ${total} produkt\xF3w` : void 0);
|
|
7669
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7967
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root36, { ref, ...props, children: [
|
|
7670
7968
|
resolvedLabel && /* @__PURE__ */ jsxRuntime.jsx(TotalLabel, { children: resolvedLabel }),
|
|
7671
7969
|
/* @__PURE__ */ jsxRuntime.jsxs(Controls, { children: [
|
|
7672
7970
|
sortOptions.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
@@ -7719,7 +8017,7 @@ function getDefaultLabel(status, count) {
|
|
|
7719
8017
|
return "Dost\u0119pny na zam\xF3wienie";
|
|
7720
8018
|
}
|
|
7721
8019
|
}
|
|
7722
|
-
var
|
|
8020
|
+
var Root37 = styles.styled("div", {
|
|
7723
8021
|
shouldForwardProp: (p) => p !== "$color" && p !== "$size"
|
|
7724
8022
|
})(({ theme, $color, $size }) => {
|
|
7725
8023
|
const colorMap = {
|
|
@@ -7760,7 +8058,7 @@ var StockStatus = react.forwardRef(
|
|
|
7760
8058
|
({ status, count, label, showIcon = true, size = "md", ...props }, ref) => {
|
|
7761
8059
|
const color = COLOR_MAP[status];
|
|
7762
8060
|
const text = label ?? getDefaultLabel(status, count);
|
|
7763
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8061
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root37, { ref, $color: color, $size: size, role: "status", "aria-label": text, ...props, children: [
|
|
7764
8062
|
showIcon && /* @__PURE__ */ jsxRuntime.jsx(Dot2, { $color: color, "aria-hidden": "true" }),
|
|
7765
8063
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: text })
|
|
7766
8064
|
] });
|
|
@@ -7774,7 +8072,7 @@ var stockStatusValues = [
|
|
|
7774
8072
|
"preorder",
|
|
7775
8073
|
"backorder"
|
|
7776
8074
|
];
|
|
7777
|
-
var
|
|
8075
|
+
var Root38 = styles.styled("div")({
|
|
7778
8076
|
display: "flex",
|
|
7779
8077
|
flexDirection: "column",
|
|
7780
8078
|
gap: "0.5rem"
|
|
@@ -7796,88 +8094,231 @@ var OptionButton = styles.styled("button", {
|
|
|
7796
8094
|
appearance: "none",
|
|
7797
8095
|
cursor: "pointer",
|
|
7798
8096
|
fontFamily: theme.typography.fontFamily,
|
|
7799
|
-
fontSize: "0.875rem",
|
|
8097
|
+
fontSize: "0.875rem",
|
|
8098
|
+
fontWeight: 500,
|
|
8099
|
+
transition: "border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease",
|
|
8100
|
+
"&:disabled": {
|
|
8101
|
+
opacity: 0.4,
|
|
8102
|
+
cursor: "not-allowed",
|
|
8103
|
+
textDecoration: $mode === "button" ? "line-through" : "none"
|
|
8104
|
+
},
|
|
8105
|
+
"&:focus-visible": {
|
|
8106
|
+
outline: `3px solid ${theme.palette.primary.main}`,
|
|
8107
|
+
outlineOffset: "2px"
|
|
8108
|
+
},
|
|
8109
|
+
...$mode === "swatch" ? {
|
|
8110
|
+
width: "2rem",
|
|
8111
|
+
height: "2rem",
|
|
8112
|
+
borderRadius: "50%",
|
|
8113
|
+
border: $active ? `3px solid ${theme.palette.primary.main}` : `2px solid ${theme.palette.divider}`,
|
|
8114
|
+
boxShadow: $active ? `0 0 0 2px ${theme.palette.background.paper}, 0 0 0 4px ${theme.palette.primary.main}` : "none",
|
|
8115
|
+
padding: 0,
|
|
8116
|
+
background: "currentColor"
|
|
8117
|
+
} : {
|
|
8118
|
+
padding: "0.375rem 0.875rem",
|
|
8119
|
+
border: $active ? `2px solid ${theme.palette.primary.main}` : `1px solid ${theme.palette.divider}`,
|
|
8120
|
+
borderRadius: theme.shape.borderRadius,
|
|
8121
|
+
backgroundColor: $active ? `${theme.palette.primary.main}14` : "transparent",
|
|
8122
|
+
color: $active ? theme.palette.primary.main : theme.palette.text.primary
|
|
8123
|
+
}
|
|
8124
|
+
}));
|
|
8125
|
+
var Select2 = styles.styled("select")(({ theme }) => ({
|
|
8126
|
+
padding: "0.5rem 2rem 0.5rem 0.75rem",
|
|
8127
|
+
border: `1px solid ${theme.palette.divider}`,
|
|
8128
|
+
borderRadius: theme.shape.borderRadius,
|
|
8129
|
+
backgroundColor: theme.palette.background.paper,
|
|
8130
|
+
color: theme.palette.text.primary,
|
|
8131
|
+
fontFamily: theme.typography.fontFamily,
|
|
8132
|
+
fontSize: "0.875rem",
|
|
8133
|
+
cursor: "pointer",
|
|
8134
|
+
appearance: "none",
|
|
8135
|
+
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")`,
|
|
8136
|
+
backgroundRepeat: "no-repeat",
|
|
8137
|
+
backgroundPosition: "right 0.75rem center",
|
|
8138
|
+
"&:focus": {
|
|
8139
|
+
outline: `3px solid ${theme.palette.primary.main}`,
|
|
8140
|
+
outlineOffset: "2px"
|
|
8141
|
+
}
|
|
8142
|
+
}));
|
|
8143
|
+
var VariantSelector = react.forwardRef(
|
|
8144
|
+
({ label, options, value, onChange, mode = "button", disabled, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root38, { ref, ...props, children: [
|
|
8145
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Label4, { children: [
|
|
8146
|
+
label,
|
|
8147
|
+
value && mode !== "swatch" && /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontWeight: 400, marginLeft: "0.375rem" }, children: options.find((o) => o.value === value)?.label })
|
|
8148
|
+
] }),
|
|
8149
|
+
mode === "dropdown" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
8150
|
+
Select2,
|
|
8151
|
+
{
|
|
8152
|
+
value: value ?? "",
|
|
8153
|
+
onChange: (e) => onChange?.(e.target.value),
|
|
8154
|
+
disabled,
|
|
8155
|
+
"aria-label": label,
|
|
8156
|
+
children: options.map((opt) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: opt.value, disabled: opt.disabled, children: opt.label }, opt.value))
|
|
8157
|
+
}
|
|
8158
|
+
) : /* @__PURE__ */ jsxRuntime.jsx(OptionsRow, { role: "radiogroup", "aria-label": label, children: options.map((opt) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
8159
|
+
OptionButton,
|
|
8160
|
+
{
|
|
8161
|
+
type: "button",
|
|
8162
|
+
$active: value === opt.value,
|
|
8163
|
+
$mode: mode,
|
|
8164
|
+
disabled: opt.disabled || disabled,
|
|
8165
|
+
style: mode === "swatch" ? { color: opt.color ?? "#ccc" } : void 0,
|
|
8166
|
+
title: opt.label,
|
|
8167
|
+
"aria-label": opt.label,
|
|
8168
|
+
"aria-pressed": value === opt.value,
|
|
8169
|
+
onClick: () => onChange?.(opt.value),
|
|
8170
|
+
children: mode === "button" && opt.label
|
|
8171
|
+
},
|
|
8172
|
+
opt.value
|
|
8173
|
+
)) })
|
|
8174
|
+
] })
|
|
8175
|
+
);
|
|
8176
|
+
VariantSelector.displayName = "VariantSelector";
|
|
8177
|
+
var variantSelectorModes = ["button", "swatch", "dropdown"];
|
|
8178
|
+
function deriveInitials4(name) {
|
|
8179
|
+
return name.split(" ").filter(Boolean).slice(0, 2).map((p) => p[0]).join("").toUpperCase();
|
|
8180
|
+
}
|
|
8181
|
+
var Root39 = styles.styled("div")({
|
|
8182
|
+
display: "flex",
|
|
8183
|
+
alignItems: "center",
|
|
8184
|
+
gap: "0.75rem"
|
|
8185
|
+
});
|
|
8186
|
+
var AvatarImg3 = styles.styled("img")({
|
|
8187
|
+
width: "2.5rem",
|
|
8188
|
+
height: "2.5rem",
|
|
8189
|
+
borderRadius: "50%",
|
|
8190
|
+
objectFit: "cover",
|
|
8191
|
+
flexShrink: 0
|
|
8192
|
+
});
|
|
8193
|
+
var Info4 = styles.styled("div")({ minWidth: 0 });
|
|
8194
|
+
var NameRow2 = styles.styled("div")({
|
|
8195
|
+
display: "flex",
|
|
8196
|
+
alignItems: "center",
|
|
8197
|
+
gap: "0.5rem",
|
|
8198
|
+
flexWrap: "wrap"
|
|
8199
|
+
});
|
|
8200
|
+
var Name11 = styles.styled("span")(({ theme }) => ({
|
|
8201
|
+
fontFamily: theme.typography.fontFamily,
|
|
8202
|
+
fontSize: "0.9375rem",
|
|
8203
|
+
fontWeight: 700,
|
|
8204
|
+
color: theme.palette.text.primary
|
|
8205
|
+
}));
|
|
8206
|
+
var AuthorBadge = styles.styled("span")(({ theme }) => ({
|
|
8207
|
+
display: "inline-flex",
|
|
8208
|
+
alignItems: "center",
|
|
8209
|
+
fontSize: "0.6875rem",
|
|
8210
|
+
fontWeight: 600,
|
|
8211
|
+
padding: "0.125rem 0.5rem",
|
|
8212
|
+
borderRadius: "999px",
|
|
8213
|
+
backgroundColor: theme.palette.primary.main,
|
|
8214
|
+
color: theme.palette.primary.contrastText,
|
|
8215
|
+
fontFamily: theme.typography.fontFamily,
|
|
8216
|
+
letterSpacing: "0.03em",
|
|
8217
|
+
textTransform: "uppercase"
|
|
8218
|
+
}));
|
|
8219
|
+
var DateText = styles.styled("time")(({ theme }) => ({
|
|
8220
|
+
display: "block",
|
|
8221
|
+
marginTop: "0.125rem",
|
|
8222
|
+
fontFamily: theme.typography.fontFamily,
|
|
8223
|
+
fontSize: "0.8125rem",
|
|
8224
|
+
color: theme.palette.text.secondary
|
|
8225
|
+
}));
|
|
8226
|
+
function CommentMeta({ author, date }) {
|
|
8227
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root39, { children: [
|
|
8228
|
+
author.avatarUrl ? /* @__PURE__ */ jsxRuntime.jsx(AvatarImg3, { src: author.avatarUrl, alt: author.name }) : /* @__PURE__ */ jsxRuntime.jsx(Avatar, { initials: deriveInitials4(author.name), size: "md", color: "primary" }),
|
|
8229
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Info4, { children: [
|
|
8230
|
+
/* @__PURE__ */ jsxRuntime.jsxs(NameRow2, { children: [
|
|
8231
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name11, { children: author.name }),
|
|
8232
|
+
author.isPostAuthor && /* @__PURE__ */ jsxRuntime.jsx(AuthorBadge, { children: "Autor" })
|
|
8233
|
+
] }),
|
|
8234
|
+
/* @__PURE__ */ jsxRuntime.jsx(DateText, { dateTime: date, children: date })
|
|
8235
|
+
] })
|
|
8236
|
+
] });
|
|
8237
|
+
}
|
|
8238
|
+
CommentMeta.displayName = "CommentMeta";
|
|
8239
|
+
var Text = styles.styled("p")(({ theme }) => ({
|
|
8240
|
+
margin: 0,
|
|
8241
|
+
fontFamily: theme.typography.fontFamily,
|
|
8242
|
+
fontSize: "0.9375rem",
|
|
8243
|
+
lineHeight: 1.7,
|
|
8244
|
+
color: theme.palette.text.primary
|
|
8245
|
+
}));
|
|
8246
|
+
function CommentBody({ content }) {
|
|
8247
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Text, { children: content });
|
|
8248
|
+
}
|
|
8249
|
+
CommentBody.displayName = "CommentBody";
|
|
8250
|
+
var Root40 = styles.styled("div")({
|
|
8251
|
+
display: "flex",
|
|
8252
|
+
alignItems: "center",
|
|
8253
|
+
gap: "0.25rem"
|
|
8254
|
+
});
|
|
8255
|
+
var ActionButton = styles.styled("button")(({ theme }) => ({
|
|
8256
|
+
display: "inline-flex",
|
|
8257
|
+
alignItems: "center",
|
|
8258
|
+
gap: "0.375rem",
|
|
8259
|
+
padding: "0.3125rem 0.625rem",
|
|
8260
|
+
background: "none",
|
|
8261
|
+
border: "none",
|
|
8262
|
+
borderRadius: theme.shape.borderRadius,
|
|
8263
|
+
cursor: "pointer",
|
|
8264
|
+
color: theme.palette.text.secondary,
|
|
8265
|
+
fontFamily: theme.typography.fontFamily,
|
|
8266
|
+
fontSize: "0.8125rem",
|
|
7800
8267
|
fontWeight: 500,
|
|
7801
|
-
|
|
7802
|
-
"
|
|
7803
|
-
|
|
7804
|
-
|
|
7805
|
-
|
|
8268
|
+
lineHeight: 1,
|
|
8269
|
+
transition: "background-color 150ms ease, color 150ms ease",
|
|
8270
|
+
"&:hover": {
|
|
8271
|
+
backgroundColor: theme.palette.action.hover,
|
|
8272
|
+
color: theme.palette.primary.main
|
|
7806
8273
|
},
|
|
7807
8274
|
"&:focus-visible": {
|
|
7808
8275
|
outline: `3px solid ${theme.palette.primary.main}`,
|
|
7809
8276
|
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
8277
|
}
|
|
7826
8278
|
}));
|
|
7827
|
-
|
|
7828
|
-
|
|
7829
|
-
|
|
7830
|
-
|
|
7831
|
-
|
|
7832
|
-
|
|
7833
|
-
|
|
7834
|
-
|
|
7835
|
-
|
|
7836
|
-
|
|
7837
|
-
|
|
7838
|
-
|
|
7839
|
-
|
|
7840
|
-
|
|
7841
|
-
|
|
7842
|
-
|
|
8279
|
+
function CommentActions({ commentId, likesCount, onLike, onReply }) {
|
|
8280
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root40, { children: [
|
|
8281
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ActionButton, { type: "button", "aria-label": "Lubi\u0119 to", onClick: () => onLike?.(commentId), children: [
|
|
8282
|
+
/* @__PURE__ */ jsxRuntime.jsx(ThumbUpOutlinedIcon__default.default, { style: { fontSize: "0.9375rem" }, "aria-hidden": "true" }),
|
|
8283
|
+
typeof likesCount === "number" && /* @__PURE__ */ jsxRuntime.jsx("span", { children: likesCount }),
|
|
8284
|
+
"Lubi\u0119 to"
|
|
8285
|
+
] }),
|
|
8286
|
+
/* @__PURE__ */ jsxRuntime.jsxs(ActionButton, { type: "button", "aria-label": "Odpowiedz", onClick: () => onReply?.(commentId), children: [
|
|
8287
|
+
/* @__PURE__ */ jsxRuntime.jsx(ReplyIcon__default.default, { style: { fontSize: "0.9375rem" }, "aria-hidden": "true" }),
|
|
8288
|
+
"Odpowiedz"
|
|
8289
|
+
] })
|
|
8290
|
+
] });
|
|
8291
|
+
}
|
|
8292
|
+
CommentActions.displayName = "CommentActions";
|
|
8293
|
+
var Root41 = styles.styled("div", {
|
|
8294
|
+
shouldForwardProp: (p) => p !== "$depth"
|
|
8295
|
+
})(({ theme, $depth }) => ({
|
|
8296
|
+
display: "flex",
|
|
8297
|
+
flexDirection: "column",
|
|
8298
|
+
gap: "0.75rem",
|
|
8299
|
+
...$depth > 0 && {
|
|
8300
|
+
paddingLeft: "1.25rem",
|
|
8301
|
+
borderLeft: `3px solid ${theme.palette.divider}`,
|
|
8302
|
+
marginLeft: "1rem"
|
|
7843
8303
|
}
|
|
7844
8304
|
}));
|
|
7845
|
-
var
|
|
7846
|
-
({
|
|
7847
|
-
/* @__PURE__ */ jsxRuntime.
|
|
7848
|
-
|
|
7849
|
-
|
|
7850
|
-
|
|
7851
|
-
mode === "dropdown" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
7852
|
-
Select2,
|
|
8305
|
+
var CommentCard = react.forwardRef(
|
|
8306
|
+
({ comment, depth = 0, onLike, onReply, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root41, { ref, $depth: depth, ...props, children: [
|
|
8307
|
+
/* @__PURE__ */ jsxRuntime.jsx(CommentMeta, { author: comment.author, date: comment.date }),
|
|
8308
|
+
/* @__PURE__ */ jsxRuntime.jsx(CommentBody, { content: comment.content }),
|
|
8309
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
8310
|
+
CommentActions,
|
|
7853
8311
|
{
|
|
7854
|
-
|
|
7855
|
-
|
|
7856
|
-
|
|
7857
|
-
|
|
7858
|
-
children: options.map((opt) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: opt.value, disabled: opt.disabled, children: opt.label }, opt.value))
|
|
8312
|
+
commentId: comment.id,
|
|
8313
|
+
likesCount: comment.likesCount,
|
|
8314
|
+
onLike,
|
|
8315
|
+
onReply
|
|
7859
8316
|
}
|
|
7860
|
-
)
|
|
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
|
-
)) })
|
|
8317
|
+
)
|
|
7876
8318
|
] })
|
|
7877
8319
|
);
|
|
7878
|
-
|
|
7879
|
-
var
|
|
7880
|
-
var Root34 = styles.styled("div")(({ theme }) => ({
|
|
8320
|
+
CommentCard.displayName = "CommentCard";
|
|
8321
|
+
var Root42 = styles.styled("div")(({ theme }) => ({
|
|
7881
8322
|
borderBottom: `1px solid ${theme.palette.divider}`
|
|
7882
8323
|
}));
|
|
7883
8324
|
var Trigger2 = styles.styled("button")(({ theme }) => ({
|
|
@@ -7925,7 +8366,7 @@ var PanelInner = styles.styled("p")(({ theme }) => ({
|
|
|
7925
8366
|
var FaqItem = react.forwardRef(
|
|
7926
8367
|
({ item, defaultOpen = false, ...props }, ref) => {
|
|
7927
8368
|
const [open, setOpen] = react.useState(defaultOpen);
|
|
7928
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8369
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root42, { ref, ...props, children: [
|
|
7929
8370
|
/* @__PURE__ */ jsxRuntime.jsxs(Trigger2, { type: "button", "aria-expanded": open, onClick: () => setOpen((prev) => !prev), children: [
|
|
7930
8371
|
item.question,
|
|
7931
8372
|
/* @__PURE__ */ jsxRuntime.jsx(ChevronIcon2, { $open: open, "aria-hidden": "true" })
|
|
@@ -7973,21 +8414,21 @@ var Title2 = styles.styled("h3")(({ theme }) => ({
|
|
|
7973
8414
|
color: theme.palette.text.primary,
|
|
7974
8415
|
lineHeight: 1.4
|
|
7975
8416
|
}));
|
|
7976
|
-
var
|
|
8417
|
+
var Description5 = styles.styled("p")(({ theme }) => ({
|
|
7977
8418
|
margin: "0.375rem 0 0",
|
|
7978
8419
|
fontFamily: theme.typography.fontFamily,
|
|
7979
8420
|
fontSize: "0.9rem",
|
|
7980
8421
|
color: theme.palette.text.secondary,
|
|
7981
8422
|
lineHeight: 1.6
|
|
7982
8423
|
}));
|
|
7983
|
-
var
|
|
8424
|
+
var FeatureItem = react.forwardRef(
|
|
7984
8425
|
({ feature, cardVariant = "default", layout = "card", ...props }, ref) => {
|
|
7985
8426
|
if (layout === "icon-left") {
|
|
7986
8427
|
return /* @__PURE__ */ jsxRuntime.jsxs(IconLeftRoot, { ref, ...props, children: [
|
|
7987
8428
|
feature.icon && /* @__PURE__ */ jsxRuntime.jsx(IconWrapper, { children: feature.icon }),
|
|
7988
8429
|
/* @__PURE__ */ jsxRuntime.jsxs(TextGroup2, { children: [
|
|
7989
8430
|
/* @__PURE__ */ jsxRuntime.jsx(Title2, { children: feature.title }),
|
|
7990
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
8431
|
+
/* @__PURE__ */ jsxRuntime.jsx(Description5, { children: feature.description })
|
|
7991
8432
|
] })
|
|
7992
8433
|
] });
|
|
7993
8434
|
}
|
|
@@ -7995,13 +8436,13 @@ var FeatureItem2 = react.forwardRef(
|
|
|
7995
8436
|
feature.icon && /* @__PURE__ */ jsxRuntime.jsx(IconWrapper, { children: feature.icon }),
|
|
7996
8437
|
/* @__PURE__ */ jsxRuntime.jsxs(TextGroup2, { children: [
|
|
7997
8438
|
/* @__PURE__ */ jsxRuntime.jsx(Title2, { children: feature.title }),
|
|
7998
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
8439
|
+
/* @__PURE__ */ jsxRuntime.jsx(Description5, { children: feature.description })
|
|
7999
8440
|
] })
|
|
8000
8441
|
] });
|
|
8001
8442
|
}
|
|
8002
8443
|
);
|
|
8003
|
-
|
|
8004
|
-
var
|
|
8444
|
+
FeatureItem.displayName = "FeatureItem";
|
|
8445
|
+
var Root43 = styles.styled("div")({
|
|
8005
8446
|
display: "flex",
|
|
8006
8447
|
flexDirection: "column",
|
|
8007
8448
|
alignItems: "center",
|
|
@@ -8040,7 +8481,7 @@ var Title3 = styles.styled("h3")(({ theme }) => ({
|
|
|
8040
8481
|
fontSize: "1rem",
|
|
8041
8482
|
color: theme.palette.text.primary
|
|
8042
8483
|
}));
|
|
8043
|
-
var
|
|
8484
|
+
var Description6 = styles.styled("p")(({ theme }) => ({
|
|
8044
8485
|
margin: 0,
|
|
8045
8486
|
fontFamily: theme.typography.fontFamily,
|
|
8046
8487
|
fontSize: "0.875rem",
|
|
@@ -8049,10 +8490,10 @@ var Description5 = styles.styled("p")(({ theme }) => ({
|
|
|
8049
8490
|
maxWidth: "18rem"
|
|
8050
8491
|
}));
|
|
8051
8492
|
var ProcessStep = react.forwardRef(
|
|
8052
|
-
({ step, title, description, icon, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8493
|
+
({ step, title, description, icon, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root43, { ref, ...props, children: [
|
|
8053
8494
|
/* @__PURE__ */ jsxRuntime.jsx(StepBadge, { "aria-hidden": "true", children: icon ? /* @__PURE__ */ jsxRuntime.jsx(IconWrapper2, { children: icon }) : /* @__PURE__ */ jsxRuntime.jsx(StepNumber, { children: step }) }),
|
|
8054
8495
|
/* @__PURE__ */ jsxRuntime.jsx(Title3, { children: title }),
|
|
8055
|
-
description && /* @__PURE__ */ jsxRuntime.jsx(
|
|
8496
|
+
description && /* @__PURE__ */ jsxRuntime.jsx(Description6, { children: description })
|
|
8056
8497
|
] })
|
|
8057
8498
|
);
|
|
8058
8499
|
ProcessStep.displayName = "ProcessStep";
|
|
@@ -8175,7 +8616,7 @@ function getDotColor(status, theme) {
|
|
|
8175
8616
|
return theme.palette.mode === "dark" ? "rgba(255,255,255,0.2)" : "rgba(0,0,0,0.15)";
|
|
8176
8617
|
}
|
|
8177
8618
|
}
|
|
8178
|
-
var
|
|
8619
|
+
var List2 = styles.styled("ol")({
|
|
8179
8620
|
listStyle: "none",
|
|
8180
8621
|
margin: 0,
|
|
8181
8622
|
padding: 0,
|
|
@@ -8235,7 +8676,7 @@ var Dot3 = styles.styled("span", {
|
|
|
8235
8676
|
}
|
|
8236
8677
|
}
|
|
8237
8678
|
}));
|
|
8238
|
-
var
|
|
8679
|
+
var Content2 = styles.styled("div")({ flex: 1, minWidth: 0, paddingTop: "0.0625rem" });
|
|
8239
8680
|
var TitleRow = styles.styled("div")({
|
|
8240
8681
|
display: "flex",
|
|
8241
8682
|
alignItems: "baseline",
|
|
@@ -8258,7 +8699,7 @@ var Date2 = styles.styled("time")(({ theme }) => ({
|
|
|
8258
8699
|
color: theme.palette.text.secondary,
|
|
8259
8700
|
whiteSpace: "nowrap"
|
|
8260
8701
|
}));
|
|
8261
|
-
var
|
|
8702
|
+
var Description7 = styles.styled("div")(({ theme }) => ({
|
|
8262
8703
|
marginTop: "0.25rem",
|
|
8263
8704
|
fontFamily: theme.typography.fontFamily,
|
|
8264
8705
|
fontSize: "0.875rem",
|
|
@@ -8280,19 +8721,19 @@ function TimelineItemComponent({
|
|
|
8280
8721
|
const hasIcon = Boolean(item.icon);
|
|
8281
8722
|
return /* @__PURE__ */ jsxRuntime.jsxs(ItemRow, { $compact: compact, $last: last, children: [
|
|
8282
8723
|
/* @__PURE__ */ jsxRuntime.jsx(DotCol, { $last: last, children: /* @__PURE__ */ jsxRuntime.jsx(Dot3, { $status: status, $hasIcon: hasIcon, children: item.icon ?? /* @__PURE__ */ jsxRuntime.jsx(StatusIcon, { status }) }) }),
|
|
8283
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
8724
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Content2, { children: [
|
|
8284
8725
|
/* @__PURE__ */ jsxRuntime.jsxs(TitleRow, { children: [
|
|
8285
8726
|
/* @__PURE__ */ jsxRuntime.jsx(Title4, { $compact: compact, children: item.title }),
|
|
8286
8727
|
item.date && /* @__PURE__ */ jsxRuntime.jsx(Date2, { dateTime: item.date, children: item.date })
|
|
8287
8728
|
] }),
|
|
8288
|
-
item.description && /* @__PURE__ */ jsxRuntime.jsx(
|
|
8729
|
+
item.description && /* @__PURE__ */ jsxRuntime.jsx(Description7, { children: item.description })
|
|
8289
8730
|
] })
|
|
8290
8731
|
] });
|
|
8291
8732
|
}
|
|
8292
8733
|
var Timeline = react.forwardRef(
|
|
8293
8734
|
({ items, variant = "default", align: _align = "left", ...props }, ref) => {
|
|
8294
8735
|
const compact = variant === "compact";
|
|
8295
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
8736
|
+
return /* @__PURE__ */ jsxRuntime.jsx(List2, { ref, "aria-label": "O\u015B czasu", ...props, children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
8296
8737
|
TimelineItemComponent,
|
|
8297
8738
|
{
|
|
8298
8739
|
item,
|
|
@@ -8311,7 +8752,7 @@ var timelineItemStatuses = [
|
|
|
8311
8752
|
"pending",
|
|
8312
8753
|
"error"
|
|
8313
8754
|
];
|
|
8314
|
-
var
|
|
8755
|
+
var Root44 = styles.styled("div")({
|
|
8315
8756
|
position: "relative",
|
|
8316
8757
|
width: "100%",
|
|
8317
8758
|
overflow: "hidden",
|
|
@@ -8421,7 +8862,7 @@ function Carousel({
|
|
|
8421
8862
|
}, [prev, next]);
|
|
8422
8863
|
if (!count) return null;
|
|
8423
8864
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className, children: [
|
|
8424
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
8865
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Root44, { "aria-roledescription": "carousel", children: [
|
|
8425
8866
|
/* @__PURE__ */ jsxRuntime.jsx(Track4, { $index: index, "aria-live": "polite", children: slides.map((slide, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
8426
8867
|
Slide,
|
|
8427
8868
|
{
|
|
@@ -8468,6 +8909,46 @@ function Carousel({
|
|
|
8468
8909
|
)) })
|
|
8469
8910
|
] });
|
|
8470
8911
|
}
|
|
8912
|
+
var Img5 = styles.styled("img")({
|
|
8913
|
+
position: "absolute",
|
|
8914
|
+
inset: 0,
|
|
8915
|
+
width: "100%",
|
|
8916
|
+
height: "100%"
|
|
8917
|
+
});
|
|
8918
|
+
var Placeholder5 = styles.styled("div")(({ theme }) => ({
|
|
8919
|
+
position: "absolute",
|
|
8920
|
+
inset: 0,
|
|
8921
|
+
width: "100%",
|
|
8922
|
+
height: "100%",
|
|
8923
|
+
backgroundColor: theme.palette.action.hover,
|
|
8924
|
+
display: "flex",
|
|
8925
|
+
alignItems: "center",
|
|
8926
|
+
justifyContent: "center",
|
|
8927
|
+
color: theme.palette.text.disabled
|
|
8928
|
+
}));
|
|
8929
|
+
var Image = react.forwardRef(
|
|
8930
|
+
({
|
|
8931
|
+
src,
|
|
8932
|
+
alt = "",
|
|
8933
|
+
ratio = "16/9",
|
|
8934
|
+
objectFit = "cover",
|
|
8935
|
+
objectPosition = "center",
|
|
8936
|
+
loading = "lazy",
|
|
8937
|
+
style,
|
|
8938
|
+
...props
|
|
8939
|
+
}, ref) => /* @__PURE__ */ jsxRuntime.jsx(AspectRatio, { ratio, children: src ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
8940
|
+
Img5,
|
|
8941
|
+
{
|
|
8942
|
+
ref,
|
|
8943
|
+
src,
|
|
8944
|
+
alt,
|
|
8945
|
+
loading,
|
|
8946
|
+
style: { objectFit, objectPosition, ...style },
|
|
8947
|
+
...props
|
|
8948
|
+
}
|
|
8949
|
+
) : /* @__PURE__ */ jsxRuntime.jsx(Placeholder5, { "aria-label": alt || "Image placeholder", children: /* @__PURE__ */ jsxRuntime.jsx(ImageIcon__default.default, { style: { fontSize: 48 } }) }) })
|
|
8950
|
+
);
|
|
8951
|
+
Image.displayName = "Image";
|
|
8471
8952
|
var Wrapper4 = styles.styled("div")(({ theme }) => ({
|
|
8472
8953
|
borderRadius: "0.75rem",
|
|
8473
8954
|
overflow: "hidden",
|
|
@@ -8769,7 +9250,7 @@ var Nav = styles.styled("nav")(({ theme }) => ({
|
|
|
8769
9250
|
fontSize: "0.875rem",
|
|
8770
9251
|
color: theme.palette.text.secondary
|
|
8771
9252
|
}));
|
|
8772
|
-
var
|
|
9253
|
+
var List3 = styles.styled("ol")({
|
|
8773
9254
|
display: "flex",
|
|
8774
9255
|
alignItems: "center",
|
|
8775
9256
|
flexWrap: "wrap",
|
|
@@ -8793,7 +9274,7 @@ var Separator2 = styles.styled("span")(({ theme }) => ({
|
|
|
8793
9274
|
color: theme.palette.text.disabled
|
|
8794
9275
|
}));
|
|
8795
9276
|
var Breadcrumbs = react.forwardRef(
|
|
8796
|
-
({ items, separator = "/", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(Nav, { ref, "aria-label": "\u015Acie\u017Cka nawigacji", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
9277
|
+
({ items, separator = "/", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(Nav, { ref, "aria-label": "\u015Acie\u017Cka nawigacji", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(List3, { children: items.map((item, index) => {
|
|
8797
9278
|
const isLast = index === items.length - 1;
|
|
8798
9279
|
return /* @__PURE__ */ jsxRuntime.jsxs("li", { children: [
|
|
8799
9280
|
item.href && !isLast ? /* @__PURE__ */ jsxRuntime.jsx(Link2, { href: item.href, children: item.label }) : /* @__PURE__ */ jsxRuntime.jsx(Current2, { "aria-current": isLast ? "page" : void 0, children: item.label }),
|
|
@@ -8805,7 +9286,7 @@ var Breadcrumbs = react.forwardRef(
|
|
|
8805
9286
|
}) }) })
|
|
8806
9287
|
);
|
|
8807
9288
|
Breadcrumbs.displayName = "Breadcrumbs";
|
|
8808
|
-
var
|
|
9289
|
+
var sizeMap7 = {
|
|
8809
9290
|
sm: { minWidth: "1.75rem", height: "1.75rem", fontSize: "0.75rem" },
|
|
8810
9291
|
md: { minWidth: "2rem", height: "2rem", fontSize: "0.875rem" },
|
|
8811
9292
|
lg: { minWidth: "2.5rem", height: "2.5rem", fontSize: "1rem" }
|
|
@@ -8834,7 +9315,7 @@ var StyledButton2 = styles.styled("button")(({ theme, $isActive, $size }) => ({
|
|
|
8834
9315
|
lineHeight: 1,
|
|
8835
9316
|
padding: "0 0.25rem",
|
|
8836
9317
|
transition: "background-color 150ms ease",
|
|
8837
|
-
...
|
|
9318
|
+
...sizeMap7[$size],
|
|
8838
9319
|
...$isActive ? activeStyles(theme) : idleStyles(theme),
|
|
8839
9320
|
"&:focus-visible": {
|
|
8840
9321
|
outline: `3px solid ${theme.palette.primary.main}`,
|
|
@@ -8863,7 +9344,7 @@ var PaginationButton = react.forwardRef(
|
|
|
8863
9344
|
)
|
|
8864
9345
|
);
|
|
8865
9346
|
PaginationButton.displayName = "PaginationButton";
|
|
8866
|
-
var
|
|
9347
|
+
var sizeMap8 = {
|
|
8867
9348
|
sm: { minWidth: "1.75rem", height: "1.75rem", fontSize: "0.75rem" },
|
|
8868
9349
|
md: { minWidth: "2rem", height: "2rem", fontSize: "0.875rem" },
|
|
8869
9350
|
lg: { minWidth: "2.5rem", height: "2.5rem", fontSize: "1rem" }
|
|
@@ -8874,7 +9355,7 @@ var StyledEllipsis = styles.styled("span")(({ theme, $size }) => ({
|
|
|
8874
9355
|
justifyContent: "center",
|
|
8875
9356
|
color: theme.palette.text.secondary,
|
|
8876
9357
|
userSelect: "none",
|
|
8877
|
-
...
|
|
9358
|
+
...sizeMap8[$size]
|
|
8878
9359
|
}));
|
|
8879
9360
|
var PaginationEllipsis = ({ size = "md" }) => /* @__PURE__ */ jsxRuntime.jsx(StyledEllipsis, { $size: size, "aria-hidden": "true", children: "\u2026" });
|
|
8880
9361
|
PaginationEllipsis.displayName = "PaginationEllipsis";
|
|
@@ -8984,7 +9465,7 @@ var PaginationBar = ({
|
|
|
8984
9465
|
] });
|
|
8985
9466
|
};
|
|
8986
9467
|
PaginationBar.displayName = "PaginationBar";
|
|
8987
|
-
var
|
|
9468
|
+
var Root45 = styles.styled("div", {
|
|
8988
9469
|
shouldForwardProp: (p) => p !== "$variant"
|
|
8989
9470
|
})(({ theme, $variant }) => ({
|
|
8990
9471
|
width: "100%",
|
|
@@ -8999,7 +9480,7 @@ var Root37 = styles.styled("div", {
|
|
|
8999
9480
|
gap: "0.5rem"
|
|
9000
9481
|
}
|
|
9001
9482
|
}));
|
|
9002
|
-
var
|
|
9483
|
+
var Item2 = styles.styled("div", {
|
|
9003
9484
|
shouldForwardProp: (p) => !["$variant", "$disabled"].includes(p)
|
|
9004
9485
|
})(({ theme, $variant, $disabled }) => ({
|
|
9005
9486
|
opacity: $disabled ? 0.5 : 1,
|
|
@@ -9094,11 +9575,11 @@ var Accordion = react.forwardRef(
|
|
|
9094
9575
|
if (controlledKeys === void 0) setInternalKeys(next);
|
|
9095
9576
|
onChange?.(next);
|
|
9096
9577
|
};
|
|
9097
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9578
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root45, { ref, $variant: variant, ...props, children: items.map((item) => {
|
|
9098
9579
|
const isOpen = openKeys.includes(item.key);
|
|
9099
9580
|
const panelId = `accordion-panel-${item.key}`;
|
|
9100
9581
|
const triggerId = `accordion-trigger-${item.key}`;
|
|
9101
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9582
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Item2, { $variant: variant, $disabled: Boolean(item.disabled), children: [
|
|
9102
9583
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
9103
9584
|
Trigger3,
|
|
9104
9585
|
{
|
|
@@ -9123,32 +9604,31 @@ var Accordion = react.forwardRef(
|
|
|
9123
9604
|
);
|
|
9124
9605
|
Accordion.displayName = "Accordion";
|
|
9125
9606
|
var accordionVariants = ["default", "bordered", "separated"];
|
|
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
9607
|
var ICONS = {
|
|
9133
9608
|
info: /* @__PURE__ */ jsxRuntime.jsx(InfoOutlinedIcon__default.default, { "aria-hidden": true, style: { fontSize: 20 } }),
|
|
9134
9609
|
success: /* @__PURE__ */ jsxRuntime.jsx(CheckCircleOutlinedIcon__default.default, { "aria-hidden": true, style: { fontSize: 20 } }),
|
|
9135
9610
|
warning: /* @__PURE__ */ jsxRuntime.jsx(WarningAmberOutlinedIcon__default.default, { "aria-hidden": true, style: { fontSize: 20 } }),
|
|
9136
9611
|
error: /* @__PURE__ */ jsxRuntime.jsx(ErrorOutlineOutlinedIcon__default.default, { "aria-hidden": true, style: { fontSize: 20 } })
|
|
9137
9612
|
};
|
|
9138
|
-
var
|
|
9613
|
+
var Root46 = styles.styled("div", {
|
|
9139
9614
|
shouldForwardProp: (prop) => prop !== "$severity"
|
|
9140
9615
|
})(({ theme, $severity }) => {
|
|
9141
|
-
const
|
|
9616
|
+
const palette = {
|
|
9617
|
+
info: theme.palette.info,
|
|
9618
|
+
success: theme.palette.success,
|
|
9619
|
+
warning: theme.palette.warning,
|
|
9620
|
+
error: theme.palette.error
|
|
9621
|
+
}[$severity];
|
|
9142
9622
|
return {
|
|
9143
9623
|
display: "flex",
|
|
9144
9624
|
gap: "0.75rem",
|
|
9145
9625
|
padding: "0.875rem 1rem",
|
|
9146
9626
|
borderRadius: theme.shape.borderRadius,
|
|
9147
|
-
border: `1px solid ${
|
|
9148
|
-
backgroundColor:
|
|
9149
|
-
color:
|
|
9627
|
+
border: `1px solid ${palette.dark}`,
|
|
9628
|
+
backgroundColor: palette.main,
|
|
9629
|
+
color: palette.contrastText,
|
|
9150
9630
|
fontFamily: theme.typography.fontFamily,
|
|
9151
|
-
fontSize: "
|
|
9631
|
+
fontSize: "1rem"
|
|
9152
9632
|
};
|
|
9153
9633
|
});
|
|
9154
9634
|
var IconSlot2 = styles.styled("span")({
|
|
@@ -9180,11 +9660,11 @@ var CloseButton2 = styles.styled("button")(({ theme }) => ({
|
|
|
9180
9660
|
}
|
|
9181
9661
|
}));
|
|
9182
9662
|
var Alert = react.forwardRef(
|
|
9183
|
-
({ severity = "info", title, children, onClose, icon, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9663
|
+
({ severity = "info", title, children, onClose, icon, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root46, { ref, role: "alert", $severity: severity, ...props, children: [
|
|
9184
9664
|
/* @__PURE__ */ jsxRuntime.jsx(IconSlot2, { children: icon ?? ICONS[severity] }),
|
|
9185
9665
|
/* @__PURE__ */ jsxRuntime.jsxs(Body, { children: [
|
|
9186
9666
|
title && /* @__PURE__ */ jsxRuntime.jsx(Title5, { children: title }),
|
|
9187
|
-
children
|
|
9667
|
+
typeof children === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { dangerouslySetInnerHTML: { __html: children } }) : children
|
|
9188
9668
|
] }),
|
|
9189
9669
|
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
9670
|
] })
|
|
@@ -9201,7 +9681,7 @@ var POSITION_MAP = {
|
|
|
9201
9681
|
var Btn = styles.styled("button", {
|
|
9202
9682
|
shouldForwardProp: (p) => !["$variant", "$visible", "$position"].includes(p)
|
|
9203
9683
|
})(({ theme, $variant, $visible, $position }) => {
|
|
9204
|
-
const
|
|
9684
|
+
const variantStyles3 = {
|
|
9205
9685
|
default: {
|
|
9206
9686
|
backgroundColor: theme.palette.background.paper,
|
|
9207
9687
|
border: `1px solid ${theme.palette.divider}`,
|
|
@@ -9242,7 +9722,7 @@ var Btn = styles.styled("button", {
|
|
|
9242
9722
|
outlineOffset: "3px"
|
|
9243
9723
|
},
|
|
9244
9724
|
...POSITION_MAP[$position],
|
|
9245
|
-
...
|
|
9725
|
+
...variantStyles3
|
|
9246
9726
|
};
|
|
9247
9727
|
});
|
|
9248
9728
|
function BackToTop({
|
|
@@ -9430,7 +9910,7 @@ var ContextMenu = react.forwardRef(
|
|
|
9430
9910
|
}
|
|
9431
9911
|
);
|
|
9432
9912
|
ContextMenu.displayName = "ContextMenu";
|
|
9433
|
-
var
|
|
9913
|
+
var Root47 = styles.styled("div")(({ theme }) => ({
|
|
9434
9914
|
display: "flex",
|
|
9435
9915
|
flexDirection: "column",
|
|
9436
9916
|
alignItems: "center",
|
|
@@ -9451,18 +9931,18 @@ var Title6 = styles.styled("h3")(({ theme }) => ({
|
|
|
9451
9931
|
fontWeight: 700,
|
|
9452
9932
|
color: theme.palette.text.primary
|
|
9453
9933
|
}));
|
|
9454
|
-
var
|
|
9934
|
+
var Description8 = styles.styled("p")(({ theme }) => ({
|
|
9455
9935
|
margin: 0,
|
|
9456
9936
|
fontSize: "0.9375rem",
|
|
9457
9937
|
color: theme.palette.text.secondary,
|
|
9458
9938
|
maxWidth: "28rem"
|
|
9459
9939
|
}));
|
|
9460
9940
|
var EmptyState = react.forwardRef(
|
|
9461
|
-
({ icon, title, description, action, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9941
|
+
({ icon, title, description, action, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root47, { ref, ...props, children: [
|
|
9462
9942
|
/* @__PURE__ */ jsxRuntime.jsx(IconWrap3, { "aria-hidden": true, children: icon ?? /* @__PURE__ */ jsxRuntime.jsx(InboxOutlinedIcon__default.default, {}) }),
|
|
9463
9943
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
9464
9944
|
/* @__PURE__ */ jsxRuntime.jsx(Title6, { children: title }),
|
|
9465
|
-
description && /* @__PURE__ */ jsxRuntime.jsx(
|
|
9945
|
+
description && /* @__PURE__ */ jsxRuntime.jsx(Description8, { style: { marginTop: "0.5rem" }, children: description })
|
|
9466
9946
|
] }),
|
|
9467
9947
|
action && /* @__PURE__ */ jsxRuntime.jsx("div", { children: action })
|
|
9468
9948
|
] })
|
|
@@ -9478,7 +9958,7 @@ var FONT_SIZE2 = {
|
|
|
9478
9958
|
md: "0.9375rem",
|
|
9479
9959
|
lg: "1rem"
|
|
9480
9960
|
};
|
|
9481
|
-
var
|
|
9961
|
+
var Root48 = styles.styled("ul", {
|
|
9482
9962
|
shouldForwardProp: (p) => p !== "$variant"
|
|
9483
9963
|
})(({ theme, $variant }) => ({
|
|
9484
9964
|
listStyle: "none",
|
|
@@ -9496,7 +9976,7 @@ var Root40 = styles.styled("ul", {
|
|
|
9496
9976
|
gap: "0.375rem"
|
|
9497
9977
|
}
|
|
9498
9978
|
}));
|
|
9499
|
-
var
|
|
9979
|
+
var Item3 = styles.styled("li", {
|
|
9500
9980
|
shouldForwardProp: (p) => !["$size", "$variant", "$clickable", "$disabled"].includes(p)
|
|
9501
9981
|
})(({ theme, $size, $variant, $clickable, $disabled }) => ({
|
|
9502
9982
|
display: "flex",
|
|
@@ -9570,11 +10050,11 @@ var SuffixWrap = styles.styled("span")({
|
|
|
9570
10050
|
display: "flex",
|
|
9571
10051
|
alignItems: "center"
|
|
9572
10052
|
});
|
|
9573
|
-
var
|
|
10053
|
+
var List4 = react.forwardRef(
|
|
9574
10054
|
({ items, size = "md", variant = "default", dividers = true, ...props }, ref) => {
|
|
9575
10055
|
const effectiveVariant = !dividers && variant === "default" ? "default" : variant;
|
|
9576
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9577
|
-
|
|
10056
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root48, { ref, $variant: effectiveVariant, role: "list", ...props, children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10057
|
+
Item3,
|
|
9578
10058
|
{
|
|
9579
10059
|
role: "listitem",
|
|
9580
10060
|
$size: size,
|
|
@@ -9596,7 +10076,7 @@ var List3 = react.forwardRef(
|
|
|
9596
10076
|
)) });
|
|
9597
10077
|
}
|
|
9598
10078
|
);
|
|
9599
|
-
|
|
10079
|
+
List4.displayName = "List";
|
|
9600
10080
|
var listVariants = ["default", "bordered", "separated"];
|
|
9601
10081
|
var listSizes = ["sm", "md", "lg"];
|
|
9602
10082
|
var scrollLeft = styles.keyframes`
|
|
@@ -9612,7 +10092,7 @@ var speedDuration = {
|
|
|
9612
10092
|
normal: "20s",
|
|
9613
10093
|
fast: "10s"
|
|
9614
10094
|
};
|
|
9615
|
-
var
|
|
10095
|
+
var Root49 = styles.styled("div")({
|
|
9616
10096
|
overflow: "hidden",
|
|
9617
10097
|
width: "100%",
|
|
9618
10098
|
userSelect: "none"
|
|
@@ -9643,7 +10123,7 @@ var Marquee = react.forwardRef(
|
|
|
9643
10123
|
/* @__PURE__ */ jsxRuntime.jsx(ItemWrap, { $gap: gapValue, "aria-hidden": "false", children }),
|
|
9644
10124
|
/* @__PURE__ */ jsxRuntime.jsx(ItemWrap, { $gap: gapValue, "aria-hidden": "true", children })
|
|
9645
10125
|
] });
|
|
9646
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
10126
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root49, { ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(Track5, { $direction: direction, $speed: speed, $pauseOnHover: pauseOnHover, $gap: gapValue, children: content }) });
|
|
9647
10127
|
}
|
|
9648
10128
|
);
|
|
9649
10129
|
Marquee.displayName = "Marquee";
|
|
@@ -9689,7 +10169,7 @@ var Dialog = styles.styled("div", {
|
|
|
9689
10169
|
margin: 0
|
|
9690
10170
|
}
|
|
9691
10171
|
}));
|
|
9692
|
-
var
|
|
10172
|
+
var Header2 = styles.styled("div")(({ theme }) => ({
|
|
9693
10173
|
display: "flex",
|
|
9694
10174
|
alignItems: "center",
|
|
9695
10175
|
justifyContent: "space-between",
|
|
@@ -9786,7 +10266,7 @@ function Modal({
|
|
|
9786
10266
|
tabIndex: -1,
|
|
9787
10267
|
onClick: (e) => e.stopPropagation(),
|
|
9788
10268
|
children: [
|
|
9789
|
-
(title || !hideCloseButton) && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10269
|
+
(title || !hideCloseButton) && /* @__PURE__ */ jsxRuntime.jsxs(Header2, { children: [
|
|
9790
10270
|
title ? /* @__PURE__ */ jsxRuntime.jsx(Title7, { id: "modal-title", children: title }) : /* @__PURE__ */ jsxRuntime.jsx("span", {}),
|
|
9791
10271
|
!hideCloseButton && /* @__PURE__ */ jsxRuntime.jsx(CloseButton3, { "aria-label": "Zamknij", onClick: onClose, children: /* @__PURE__ */ jsxRuntime.jsx(CloseIcon__default.default, { "aria-hidden": true, style: { fontSize: 16 } }) })
|
|
9792
10272
|
] }),
|
|
@@ -9799,7 +10279,7 @@ function Modal({
|
|
|
9799
10279
|
);
|
|
9800
10280
|
}
|
|
9801
10281
|
var modalSizes = ["sm", "md", "lg", "xl", "full"];
|
|
9802
|
-
var
|
|
10282
|
+
var Root50 = styles.styled("div")({ width: "100%" });
|
|
9803
10283
|
var TabList = styles.styled("div", {
|
|
9804
10284
|
shouldForwardProp: (prop) => prop !== "$variant"
|
|
9805
10285
|
})(({ theme, $variant }) => ({
|
|
@@ -9879,7 +10359,7 @@ var Tabs = react.forwardRef(
|
|
|
9879
10359
|
onChange?.(key);
|
|
9880
10360
|
};
|
|
9881
10361
|
const activeTab = tabs.find((t) => t.key === activeKey);
|
|
9882
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10362
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root50, { ref, ...props, children: [
|
|
9883
10363
|
/* @__PURE__ */ jsxRuntime.jsx(TabList, { role: "tablist", $variant: variant, children: tabs.map((tab) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
9884
10364
|
TabButton,
|
|
9885
10365
|
{
|
|
@@ -9911,6 +10391,79 @@ var Tabs = react.forwardRef(
|
|
|
9911
10391
|
);
|
|
9912
10392
|
Tabs.displayName = "Tabs";
|
|
9913
10393
|
var tabsVariants = ["underline", "pills", "bordered"];
|
|
10394
|
+
var Root51 = styles.styled("div")(({ theme }) => ({
|
|
10395
|
+
display: "grid",
|
|
10396
|
+
gridTemplateColumns: "4.5rem 1fr",
|
|
10397
|
+
gap: "0.875rem",
|
|
10398
|
+
paddingBottom: "1rem",
|
|
10399
|
+
borderBottom: `1px solid ${theme.palette.divider}`
|
|
10400
|
+
}));
|
|
10401
|
+
var ImageWrap4 = styles.styled("div")(({ theme }) => ({
|
|
10402
|
+
position: "relative",
|
|
10403
|
+
width: "4.5rem",
|
|
10404
|
+
height: "4.5rem",
|
|
10405
|
+
borderRadius: theme.shape.borderRadius,
|
|
10406
|
+
overflow: "hidden",
|
|
10407
|
+
flexShrink: 0
|
|
10408
|
+
}));
|
|
10409
|
+
var Info5 = styles.styled("div")({ display: "grid", gap: "0.5rem" });
|
|
10410
|
+
var Row5 = styles.styled("div")({
|
|
10411
|
+
display: "flex",
|
|
10412
|
+
alignItems: "center",
|
|
10413
|
+
justifyContent: "space-between",
|
|
10414
|
+
gap: "0.75rem"
|
|
10415
|
+
});
|
|
10416
|
+
var Name12 = styles.styled("p")(({ theme }) => ({
|
|
10417
|
+
margin: 0,
|
|
10418
|
+
color: theme.palette.text.primary,
|
|
10419
|
+
fontFamily: theme.typography.fontFamily,
|
|
10420
|
+
fontWeight: 700
|
|
10421
|
+
}));
|
|
10422
|
+
var Price3 = styles.styled("p")(({ theme }) => ({
|
|
10423
|
+
margin: 0,
|
|
10424
|
+
color: theme.palette.text.secondary,
|
|
10425
|
+
fontFamily: theme.typography.fontFamily,
|
|
10426
|
+
fontSize: "0.875rem"
|
|
10427
|
+
}));
|
|
10428
|
+
var RemoveButton2 = styles.styled("button")(({ theme }) => ({
|
|
10429
|
+
border: 0,
|
|
10430
|
+
background: "transparent",
|
|
10431
|
+
color: theme.palette.error.main,
|
|
10432
|
+
cursor: "pointer",
|
|
10433
|
+
padding: 0,
|
|
10434
|
+
fontFamily: theme.typography.fontFamily,
|
|
10435
|
+
fontSize: "0.875rem"
|
|
10436
|
+
}));
|
|
10437
|
+
var CartDrawerItem = ({
|
|
10438
|
+
id,
|
|
10439
|
+
name,
|
|
10440
|
+
price,
|
|
10441
|
+
quantity,
|
|
10442
|
+
imageUrl,
|
|
10443
|
+
imageAlt,
|
|
10444
|
+
onQuantityChange,
|
|
10445
|
+
onRemove
|
|
10446
|
+
}) => /* @__PURE__ */ jsxRuntime.jsxs(Root51, { children: [
|
|
10447
|
+
/* @__PURE__ */ jsxRuntime.jsx(ImageWrap4, { children: /* @__PURE__ */ jsxRuntime.jsx(ProductCardImage, { src: imageUrl, alt: imageAlt ?? name }) }),
|
|
10448
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Info5, { children: [
|
|
10449
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Row5, { children: [
|
|
10450
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name12, { children: name }),
|
|
10451
|
+
/* @__PURE__ */ jsxRuntime.jsx(Price3, { children: price })
|
|
10452
|
+
] }),
|
|
10453
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Row5, { children: [
|
|
10454
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10455
|
+
QuantitySelector,
|
|
10456
|
+
{
|
|
10457
|
+
value: quantity,
|
|
10458
|
+
min: 1,
|
|
10459
|
+
onChange: (qty) => onQuantityChange?.(id, qty)
|
|
10460
|
+
}
|
|
10461
|
+
),
|
|
10462
|
+
/* @__PURE__ */ jsxRuntime.jsx(RemoveButton2, { type: "button", onClick: () => onRemove?.(id), children: "Usu\u0144" })
|
|
10463
|
+
] })
|
|
10464
|
+
] })
|
|
10465
|
+
] });
|
|
10466
|
+
CartDrawerItem.displayName = "CartDrawerItem";
|
|
9914
10467
|
var Overlay3 = styles.styled("div")(({ $open }) => ({
|
|
9915
10468
|
position: "fixed",
|
|
9916
10469
|
inset: 0,
|
|
@@ -9930,7 +10483,7 @@ var Panel3 = styles.styled("aside")(({ theme }) => ({
|
|
|
9930
10483
|
boxShadow: theme.shadows[5],
|
|
9931
10484
|
fontFamily: theme.typography.fontFamily
|
|
9932
10485
|
}));
|
|
9933
|
-
var
|
|
10486
|
+
var Header3 = styles.styled("div")(({ theme }) => ({
|
|
9934
10487
|
display: "flex",
|
|
9935
10488
|
alignItems: "center",
|
|
9936
10489
|
justifyContent: "space-between",
|
|
@@ -9955,51 +10508,12 @@ var Items = styles.styled("div")({
|
|
|
9955
10508
|
padding: "1rem 1.25rem",
|
|
9956
10509
|
overflow: "auto"
|
|
9957
10510
|
});
|
|
9958
|
-
var
|
|
9959
|
-
display: "grid",
|
|
9960
|
-
gridTemplateColumns: "4.5rem 1fr",
|
|
9961
|
-
gap: "0.875rem",
|
|
9962
|
-
paddingBottom: "1rem",
|
|
9963
|
-
borderBottom: `1px solid ${theme.palette.divider}`
|
|
9964
|
-
}));
|
|
9965
|
-
var ItemImage = styles.styled("img")(({ theme }) => ({
|
|
9966
|
-
width: "4.5rem",
|
|
9967
|
-
height: "4.5rem",
|
|
9968
|
-
borderRadius: theme.shape.borderRadius,
|
|
9969
|
-
objectFit: "cover",
|
|
9970
|
-
backgroundColor: theme.palette.action.hover
|
|
9971
|
-
}));
|
|
9972
|
-
var PlaceholderImage = styles.styled("div")(({ theme }) => ({
|
|
9973
|
-
width: "4.5rem",
|
|
9974
|
-
height: "4.5rem",
|
|
9975
|
-
borderRadius: theme.shape.borderRadius,
|
|
9976
|
-
backgroundColor: theme.palette.action.hover
|
|
9977
|
-
}));
|
|
9978
|
-
var ItemInfo = styles.styled("div")({ display: "grid", gap: "0.5rem" });
|
|
9979
|
-
var ItemName = styles.styled("p")(({ theme }) => ({
|
|
9980
|
-
margin: 0,
|
|
9981
|
-
color: theme.palette.text.primary,
|
|
9982
|
-
fontWeight: 700
|
|
9983
|
-
}));
|
|
9984
|
-
var ItemMeta = styles.styled("p")(({ theme }) => ({
|
|
9985
|
-
margin: 0,
|
|
9986
|
-
color: theme.palette.text.secondary,
|
|
9987
|
-
fontSize: "0.875rem"
|
|
9988
|
-
}));
|
|
9989
|
-
var Row4 = styles.styled("div")({
|
|
10511
|
+
var Row6 = styles.styled("div")({
|
|
9990
10512
|
display: "flex",
|
|
9991
10513
|
alignItems: "center",
|
|
9992
10514
|
justifyContent: "space-between",
|
|
9993
10515
|
gap: "0.75rem"
|
|
9994
10516
|
});
|
|
9995
|
-
var RemoveButton2 = styles.styled("button")(({ theme }) => ({
|
|
9996
|
-
border: 0,
|
|
9997
|
-
background: "transparent",
|
|
9998
|
-
color: theme.palette.error.main,
|
|
9999
|
-
cursor: "pointer",
|
|
10000
|
-
padding: 0,
|
|
10001
|
-
fontSize: "0.875rem"
|
|
10002
|
-
}));
|
|
10003
10517
|
var Footer5 = styles.styled("div")(({ theme }) => ({
|
|
10004
10518
|
display: "grid",
|
|
10005
10519
|
gap: "1rem",
|
|
@@ -10021,32 +10535,21 @@ var CartDrawer = react.forwardRef(
|
|
|
10021
10535
|
onRemove,
|
|
10022
10536
|
...props
|
|
10023
10537
|
}, ref) => /* @__PURE__ */ jsxRuntime.jsx(Overlay3, { $open: open, children: /* @__PURE__ */ jsxRuntime.jsxs(Panel3, { ref, "aria-hidden": !open, "aria-label": title, ...props, children: [
|
|
10024
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
10538
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Header3, { children: [
|
|
10025
10539
|
/* @__PURE__ */ jsxRuntime.jsx(Title8, { children: title }),
|
|
10026
10540
|
/* @__PURE__ */ jsxRuntime.jsx(IconButton, { type: "button", "aria-label": closeLabel, onClick: onClose, children: "\xD7" })
|
|
10027
10541
|
] }),
|
|
10028
|
-
/* @__PURE__ */ jsxRuntime.jsx(Items, { children: items.map((item) => /* @__PURE__ */ jsxRuntime.
|
|
10029
|
-
|
|
10030
|
-
|
|
10031
|
-
|
|
10032
|
-
|
|
10033
|
-
|
|
10034
|
-
|
|
10035
|
-
|
|
10036
|
-
|
|
10037
|
-
QuantitySelector,
|
|
10038
|
-
{
|
|
10039
|
-
value: item.quantity,
|
|
10040
|
-
min: 1,
|
|
10041
|
-
onChange: (quantity) => onQuantityChange?.(item.id, quantity)
|
|
10042
|
-
}
|
|
10043
|
-
),
|
|
10044
|
-
/* @__PURE__ */ jsxRuntime.jsx(RemoveButton2, { type: "button", onClick: () => onRemove?.(item.id), children: "Usu\u0144" })
|
|
10045
|
-
] })
|
|
10046
|
-
] })
|
|
10047
|
-
] }, item.id)) }),
|
|
10542
|
+
/* @__PURE__ */ jsxRuntime.jsx(Items, { children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
10543
|
+
CartDrawerItem,
|
|
10544
|
+
{
|
|
10545
|
+
...item,
|
|
10546
|
+
onQuantityChange,
|
|
10547
|
+
onRemove
|
|
10548
|
+
},
|
|
10549
|
+
item.id
|
|
10550
|
+
)) }),
|
|
10048
10551
|
/* @__PURE__ */ jsxRuntime.jsxs(Footer5, { children: [
|
|
10049
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
10552
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Row6, { children: [
|
|
10050
10553
|
/* @__PURE__ */ jsxRuntime.jsx("strong", { children: "Suma" }),
|
|
10051
10554
|
/* @__PURE__ */ jsxRuntime.jsx("strong", { children: subtotal })
|
|
10052
10555
|
] }),
|
|
@@ -10055,7 +10558,7 @@ var CartDrawer = react.forwardRef(
|
|
|
10055
10558
|
] }) })
|
|
10056
10559
|
);
|
|
10057
10560
|
CartDrawer.displayName = "CartDrawer";
|
|
10058
|
-
var
|
|
10561
|
+
var Root52 = styles.styled("aside")(({ theme }) => ({
|
|
10059
10562
|
display: "grid",
|
|
10060
10563
|
gap: "1.5rem",
|
|
10061
10564
|
width: "100%",
|
|
@@ -10066,7 +10569,7 @@ var Root43 = styles.styled("aside")(({ theme }) => ({
|
|
|
10066
10569
|
backgroundColor: theme.palette.background.paper,
|
|
10067
10570
|
fontFamily: theme.typography.fontFamily
|
|
10068
10571
|
}));
|
|
10069
|
-
var
|
|
10572
|
+
var Header4 = styles.styled("div")({
|
|
10070
10573
|
display: "flex",
|
|
10071
10574
|
alignItems: "center",
|
|
10072
10575
|
justifyContent: "space-between",
|
|
@@ -10147,8 +10650,8 @@ var FilterSidebar = react.forwardRef(
|
|
|
10147
10650
|
onPriceRangeChange,
|
|
10148
10651
|
onClear,
|
|
10149
10652
|
...props
|
|
10150
|
-
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10151
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
10653
|
+
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root52, { ref, "aria-label": "Filtry produkt\xF3w", ...props, children: [
|
|
10654
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Header4, { children: [
|
|
10152
10655
|
/* @__PURE__ */ jsxRuntime.jsx(Title9, { children: "Filtry" }),
|
|
10153
10656
|
onClear && /* @__PURE__ */ jsxRuntime.jsx(Button, { variant: "ghost", size: "sm", onClick: onClear, children: "Wyczy\u015B\u0107" })
|
|
10154
10657
|
] }),
|
|
@@ -10175,67 +10678,37 @@ var FilterSidebar = react.forwardRef(
|
|
|
10175
10678
|
)
|
|
10176
10679
|
] })
|
|
10177
10680
|
] }),
|
|
10178
|
-
categories.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(Group, { children: [
|
|
10179
|
-
/* @__PURE__ */ jsxRuntime.jsx(Legend, { children: "Kategorie" }),
|
|
10180
|
-
renderOptions(categories, selectedCategories, onToggleCategory)
|
|
10181
|
-
] }),
|
|
10182
|
-
colors.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(Group, { children: [
|
|
10183
|
-
/* @__PURE__ */ jsxRuntime.jsx(Legend, { children: "Kolory" }),
|
|
10184
|
-
renderOptions(colors, selectedColors, onToggleColor)
|
|
10185
|
-
] }),
|
|
10186
|
-
sizes.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(Group, { children: [
|
|
10187
|
-
/* @__PURE__ */ jsxRuntime.jsx(Legend, { children: "Rozmiary" }),
|
|
10188
|
-
renderOptions(sizes, selectedSizes, onToggleSize)
|
|
10189
|
-
] })
|
|
10190
|
-
] })
|
|
10191
|
-
);
|
|
10192
|
-
FilterSidebar.displayName = "FilterSidebar";
|
|
10193
|
-
var
|
|
10194
|
-
var Title10 = styles.styled("h2")(({ theme }) => ({
|
|
10195
|
-
margin: 0,
|
|
10196
|
-
fontFamily: theme.typography.fontFamily,
|
|
10197
|
-
fontSize: "1.125rem",
|
|
10198
|
-
fontWeight: 800,
|
|
10199
|
-
color: theme.palette.text.primary
|
|
10200
|
-
}));
|
|
10201
|
-
var Rows = styles.styled("dl")({ display: "grid", gap: "0.75rem", margin: 0 });
|
|
10202
|
-
var SectionTitle = styles.styled("h3")(({ theme }) => ({
|
|
10203
|
-
margin: 0,
|
|
10204
|
-
fontFamily: theme.typography.fontFamily,
|
|
10205
|
-
fontSize: "0.875rem",
|
|
10206
|
-
fontWeight: 800,
|
|
10207
|
-
color: theme.palette.text.primary
|
|
10208
|
-
}));
|
|
10209
|
-
var ItemList = styles.styled("ul")({
|
|
10210
|
-
display: "grid",
|
|
10211
|
-
gap: "0.875rem",
|
|
10212
|
-
padding: 0,
|
|
10213
|
-
margin: 0,
|
|
10214
|
-
listStyle: "none"
|
|
10215
|
-
});
|
|
10216
|
-
var Item4 = styles.styled("li")({
|
|
10681
|
+
categories.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(Group, { children: [
|
|
10682
|
+
/* @__PURE__ */ jsxRuntime.jsx(Legend, { children: "Kategorie" }),
|
|
10683
|
+
renderOptions(categories, selectedCategories, onToggleCategory)
|
|
10684
|
+
] }),
|
|
10685
|
+
colors.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(Group, { children: [
|
|
10686
|
+
/* @__PURE__ */ jsxRuntime.jsx(Legend, { children: "Kolory" }),
|
|
10687
|
+
renderOptions(colors, selectedColors, onToggleColor)
|
|
10688
|
+
] }),
|
|
10689
|
+
sizes.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(Group, { children: [
|
|
10690
|
+
/* @__PURE__ */ jsxRuntime.jsx(Legend, { children: "Rozmiary" }),
|
|
10691
|
+
renderOptions(sizes, selectedSizes, onToggleSize)
|
|
10692
|
+
] })
|
|
10693
|
+
] })
|
|
10694
|
+
);
|
|
10695
|
+
FilterSidebar.displayName = "FilterSidebar";
|
|
10696
|
+
var Root53 = styles.styled("li")({
|
|
10217
10697
|
display: "grid",
|
|
10218
10698
|
gridTemplateColumns: "3.5rem 1fr auto",
|
|
10219
10699
|
alignItems: "center",
|
|
10220
10700
|
gap: "0.75rem"
|
|
10221
10701
|
});
|
|
10222
|
-
var
|
|
10223
|
-
|
|
10224
|
-
height: "3.5rem",
|
|
10225
|
-
borderRadius: theme.shape.borderRadius,
|
|
10226
|
-
objectFit: "cover",
|
|
10227
|
-
backgroundColor: theme.palette.action.hover
|
|
10228
|
-
}));
|
|
10229
|
-
var ItemImagePlaceholder = styles.styled("div")(({ theme }) => ({
|
|
10702
|
+
var ImageWrap5 = styles.styled("div")(({ theme }) => ({
|
|
10703
|
+
position: "relative",
|
|
10230
10704
|
width: "3.5rem",
|
|
10231
10705
|
height: "3.5rem",
|
|
10232
10706
|
borderRadius: theme.shape.borderRadius,
|
|
10233
|
-
|
|
10707
|
+
overflow: "hidden",
|
|
10708
|
+
flexShrink: 0
|
|
10234
10709
|
}));
|
|
10235
|
-
var
|
|
10236
|
-
|
|
10237
|
-
});
|
|
10238
|
-
var ItemName2 = styles.styled("p")(({ theme }) => ({
|
|
10710
|
+
var Info6 = styles.styled("div")({ minWidth: 0 });
|
|
10711
|
+
var Name13 = styles.styled("p")(({ theme }) => ({
|
|
10239
10712
|
margin: 0,
|
|
10240
10713
|
color: theme.palette.text.primary,
|
|
10241
10714
|
fontFamily: theme.typography.fontFamily,
|
|
@@ -10243,39 +10716,88 @@ var ItemName2 = styles.styled("p")(({ theme }) => ({
|
|
|
10243
10716
|
fontWeight: 700,
|
|
10244
10717
|
lineHeight: 1.4
|
|
10245
10718
|
}));
|
|
10246
|
-
var
|
|
10719
|
+
var Meta2 = styles.styled("p")(({ theme }) => ({
|
|
10247
10720
|
margin: "0.25rem 0 0",
|
|
10248
10721
|
color: theme.palette.text.secondary,
|
|
10249
10722
|
fontFamily: theme.typography.fontFamily,
|
|
10250
10723
|
fontSize: "0.8125rem",
|
|
10251
10724
|
lineHeight: 1.4
|
|
10252
10725
|
}));
|
|
10253
|
-
var
|
|
10726
|
+
var Price4 = styles.styled("span")(({ theme }) => ({
|
|
10254
10727
|
color: theme.palette.text.primary,
|
|
10255
10728
|
fontFamily: theme.typography.fontFamily,
|
|
10256
10729
|
fontSize: "0.875rem",
|
|
10257
10730
|
fontWeight: 800,
|
|
10258
10731
|
whiteSpace: "nowrap"
|
|
10259
10732
|
}));
|
|
10260
|
-
var
|
|
10733
|
+
var OrderSummaryItem = ({
|
|
10734
|
+
name,
|
|
10735
|
+
price,
|
|
10736
|
+
imageUrl,
|
|
10737
|
+
imageAlt,
|
|
10738
|
+
quantity,
|
|
10739
|
+
meta
|
|
10740
|
+
}) => /* @__PURE__ */ jsxRuntime.jsxs(Root53, { children: [
|
|
10741
|
+
/* @__PURE__ */ jsxRuntime.jsx(ImageWrap5, { children: /* @__PURE__ */ jsxRuntime.jsx(ProductCardImage, { src: imageUrl, alt: imageAlt ?? String(name) }) }),
|
|
10742
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Info6, { children: [
|
|
10743
|
+
/* @__PURE__ */ jsxRuntime.jsx(Name13, { children: name }),
|
|
10744
|
+
(quantity !== void 0 || meta) && /* @__PURE__ */ jsxRuntime.jsxs(Meta2, { children: [
|
|
10745
|
+
quantity !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
10746
|
+
"Ilo\u015B\u0107: ",
|
|
10747
|
+
quantity
|
|
10748
|
+
] }),
|
|
10749
|
+
quantity !== void 0 && meta && " \xB7 ",
|
|
10750
|
+
meta
|
|
10751
|
+
] })
|
|
10752
|
+
] }),
|
|
10753
|
+
/* @__PURE__ */ jsxRuntime.jsx(Price4, { children: price })
|
|
10754
|
+
] });
|
|
10755
|
+
OrderSummaryItem.displayName = "OrderSummaryItem";
|
|
10756
|
+
var Root54 = styles.styled("div", {
|
|
10757
|
+
shouldForwardProp: (prop) => prop !== "$total"
|
|
10758
|
+
})(({ theme, $total }) => ({
|
|
10261
10759
|
display: "flex",
|
|
10262
10760
|
justifyContent: "space-between",
|
|
10263
10761
|
gap: "1rem",
|
|
10264
|
-
color: theme.palette.text.secondary,
|
|
10762
|
+
color: $total ? theme.palette.text.primary : theme.palette.text.secondary,
|
|
10265
10763
|
fontFamily: theme.typography.fontFamily,
|
|
10266
|
-
fontSize: "0.875rem",
|
|
10764
|
+
fontSize: $total ? "1rem" : "0.875rem",
|
|
10765
|
+
fontWeight: $total ? 800 : 400,
|
|
10267
10766
|
"& dt, & dd": { margin: 0 }
|
|
10268
10767
|
}));
|
|
10768
|
+
var OrderSummaryRow = ({ label, value, total = false }) => /* @__PURE__ */ jsxRuntime.jsxs(Root54, { as: "div", $total: total, children: [
|
|
10769
|
+
/* @__PURE__ */ jsxRuntime.jsx("dt", { children: label }),
|
|
10770
|
+
/* @__PURE__ */ jsxRuntime.jsx("dd", { children: value })
|
|
10771
|
+
] });
|
|
10772
|
+
OrderSummaryRow.displayName = "OrderSummaryRow";
|
|
10773
|
+
var Root55 = styles.styled(Card)({ display: "grid", gap: "1rem" });
|
|
10774
|
+
var Title10 = styles.styled("h2")(({ theme }) => ({
|
|
10775
|
+
margin: 0,
|
|
10776
|
+
fontFamily: theme.typography.fontFamily,
|
|
10777
|
+
fontSize: "1.125rem",
|
|
10778
|
+
fontWeight: 800,
|
|
10779
|
+
color: theme.palette.text.primary
|
|
10780
|
+
}));
|
|
10781
|
+
var Rows = styles.styled("dl")({ display: "grid", gap: "0.75rem", margin: 0 });
|
|
10782
|
+
var SectionTitle = styles.styled("h3")(({ theme }) => ({
|
|
10783
|
+
margin: 0,
|
|
10784
|
+
fontFamily: theme.typography.fontFamily,
|
|
10785
|
+
fontSize: "0.875rem",
|
|
10786
|
+
fontWeight: 800,
|
|
10787
|
+
color: theme.palette.text.primary
|
|
10788
|
+
}));
|
|
10789
|
+
var ItemList = styles.styled("ul")({
|
|
10790
|
+
display: "grid",
|
|
10791
|
+
gap: "0.875rem",
|
|
10792
|
+
padding: 0,
|
|
10793
|
+
margin: 0,
|
|
10794
|
+
listStyle: "none"
|
|
10795
|
+
});
|
|
10269
10796
|
var Divider3 = styles.styled("hr")(({ theme }) => ({
|
|
10270
10797
|
width: "100%",
|
|
10271
10798
|
border: 0,
|
|
10272
10799
|
borderTop: `1px solid ${theme.palette.divider}`
|
|
10273
10800
|
}));
|
|
10274
|
-
var TotalRow = styles.styled(Row5)(({ theme }) => ({
|
|
10275
|
-
color: theme.palette.text.primary,
|
|
10276
|
-
fontSize: "1rem",
|
|
10277
|
-
fontWeight: 800
|
|
10278
|
-
}));
|
|
10279
10801
|
var OrderSummary = react.forwardRef(
|
|
10280
10802
|
({
|
|
10281
10803
|
title = "Podsumowanie zam\xF3wienia",
|
|
@@ -10290,59 +10812,27 @@ var OrderSummary = react.forwardRef(
|
|
|
10290
10812
|
ctaLabel = "Przejd\u017A do kasy",
|
|
10291
10813
|
onCheckout,
|
|
10292
10814
|
...props
|
|
10293
|
-
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10815
|
+
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root55, { ref, variant: "default", padding: "lg", rounded: "lg", ...props, children: [
|
|
10294
10816
|
/* @__PURE__ */ jsxRuntime.jsx(Title10, { children: title }),
|
|
10295
10817
|
items.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
10296
10818
|
/* @__PURE__ */ jsxRuntime.jsx(SectionTitle, { children: itemsTitle }),
|
|
10297
|
-
/* @__PURE__ */ jsxRuntime.jsx(ItemList, { children: items.map((item) => /* @__PURE__ */ jsxRuntime.
|
|
10298
|
-
item.imageUrl ? /* @__PURE__ */ jsxRuntime.jsx(ItemImage2, { src: item.imageUrl, alt: item.imageAlt ?? String(item.name) }) : /* @__PURE__ */ jsxRuntime.jsx(ItemImagePlaceholder, { "aria-hidden": "true" }),
|
|
10299
|
-
/* @__PURE__ */ jsxRuntime.jsxs(ItemInfo2, { children: [
|
|
10300
|
-
/* @__PURE__ */ jsxRuntime.jsx(ItemName2, { children: item.name }),
|
|
10301
|
-
(item.quantity !== void 0 || item.meta) && /* @__PURE__ */ jsxRuntime.jsxs(ItemMeta2, { children: [
|
|
10302
|
-
item.quantity !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
10303
|
-
"Ilo\u015B\u0107: ",
|
|
10304
|
-
item.quantity
|
|
10305
|
-
] }),
|
|
10306
|
-
item.quantity !== void 0 && item.meta && " \xB7 ",
|
|
10307
|
-
item.meta
|
|
10308
|
-
] })
|
|
10309
|
-
] }),
|
|
10310
|
-
/* @__PURE__ */ jsxRuntime.jsx(ItemPrice, { children: item.price })
|
|
10311
|
-
] }, item.id)) }),
|
|
10819
|
+
/* @__PURE__ */ jsxRuntime.jsx(ItemList, { children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(OrderSummaryItem, { ...item }, item.id)) }),
|
|
10312
10820
|
/* @__PURE__ */ jsxRuntime.jsx(Divider3, {})
|
|
10313
10821
|
] }),
|
|
10314
10822
|
/* @__PURE__ */ jsxRuntime.jsxs(Rows, { children: [
|
|
10315
|
-
/* @__PURE__ */ jsxRuntime.
|
|
10316
|
-
|
|
10317
|
-
|
|
10318
|
-
|
|
10319
|
-
|
|
10320
|
-
/* @__PURE__ */ jsxRuntime.jsx("dt", { children: "Dostawa" }),
|
|
10321
|
-
/* @__PURE__ */ jsxRuntime.jsx("dd", { children: shipping })
|
|
10322
|
-
] }),
|
|
10323
|
-
tax !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(Row5, { children: [
|
|
10324
|
-
/* @__PURE__ */ jsxRuntime.jsx("dt", { children: "Podatek" }),
|
|
10325
|
-
/* @__PURE__ */ jsxRuntime.jsx("dd", { children: tax })
|
|
10326
|
-
] }),
|
|
10327
|
-
discount !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(Row5, { children: [
|
|
10328
|
-
/* @__PURE__ */ jsxRuntime.jsx("dt", { children: "Rabat" }),
|
|
10329
|
-
/* @__PURE__ */ jsxRuntime.jsx("dd", { children: discount })
|
|
10330
|
-
] }),
|
|
10331
|
-
lines.map((line, index) => /* @__PURE__ */ jsxRuntime.jsxs(Row5, { children: [
|
|
10332
|
-
/* @__PURE__ */ jsxRuntime.jsx("dt", { children: line.label }),
|
|
10333
|
-
/* @__PURE__ */ jsxRuntime.jsx("dd", { children: line.value })
|
|
10334
|
-
] }, index))
|
|
10823
|
+
/* @__PURE__ */ jsxRuntime.jsx(OrderSummaryRow, { label: "Warto\u015B\u0107 produkt\xF3w", value: subtotal }),
|
|
10824
|
+
shipping !== void 0 && /* @__PURE__ */ jsxRuntime.jsx(OrderSummaryRow, { label: "Dostawa", value: shipping }),
|
|
10825
|
+
tax !== void 0 && /* @__PURE__ */ jsxRuntime.jsx(OrderSummaryRow, { label: "Podatek", value: tax }),
|
|
10826
|
+
discount !== void 0 && /* @__PURE__ */ jsxRuntime.jsx(OrderSummaryRow, { label: "Rabat", value: discount }),
|
|
10827
|
+
lines.map((line, index) => /* @__PURE__ */ jsxRuntime.jsx(OrderSummaryRow, { label: line.label, value: line.value }, index))
|
|
10335
10828
|
] }),
|
|
10336
10829
|
/* @__PURE__ */ jsxRuntime.jsx(Divider3, {}),
|
|
10337
|
-
/* @__PURE__ */ jsxRuntime.jsx(Rows, { children: /* @__PURE__ */ jsxRuntime.
|
|
10338
|
-
/* @__PURE__ */ jsxRuntime.jsx("dt", { children: "Razem" }),
|
|
10339
|
-
/* @__PURE__ */ jsxRuntime.jsx("dd", { children: total })
|
|
10340
|
-
] }) }),
|
|
10830
|
+
/* @__PURE__ */ jsxRuntime.jsx(Rows, { children: /* @__PURE__ */ jsxRuntime.jsx(OrderSummaryRow, { label: "Razem", value: total, total: true }) }),
|
|
10341
10831
|
/* @__PURE__ */ jsxRuntime.jsx(Button, { fullWidth: true, onClick: onCheckout, children: ctaLabel })
|
|
10342
10832
|
] })
|
|
10343
10833
|
);
|
|
10344
10834
|
OrderSummary.displayName = "OrderSummary";
|
|
10345
|
-
var
|
|
10835
|
+
var Root56 = styles.styled("div")(({ theme }) => ({
|
|
10346
10836
|
fontFamily: theme.typography.fontFamily
|
|
10347
10837
|
}));
|
|
10348
10838
|
var Grid2 = styles.styled("div", {
|
|
@@ -10377,17 +10867,87 @@ var ScrollTrack = styles.styled("div")({
|
|
|
10377
10867
|
}
|
|
10378
10868
|
});
|
|
10379
10869
|
var RelatedProducts = react.forwardRef(
|
|
10380
|
-
({ products, title = "Podobne produkty", layout = "grid", columns = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
10870
|
+
({ products, title = "Podobne produkty", layout = "grid", columns = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root56, { ref, ...props, children: [
|
|
10381
10871
|
/* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title, align: "left", style: { marginBottom: "1.5rem" } }),
|
|
10382
10872
|
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
10873
|
] })
|
|
10384
10874
|
);
|
|
10385
10875
|
RelatedProducts.displayName = "RelatedProducts";
|
|
10386
10876
|
var relatedProductsLayouts = ["grid", "scroll"];
|
|
10387
|
-
var
|
|
10877
|
+
var Card2 = styles.styled("div")(({ theme }) => ({
|
|
10878
|
+
padding: "1.25rem",
|
|
10879
|
+
border: `1px solid ${theme.palette.divider}`,
|
|
10880
|
+
borderRadius: theme.shape.borderRadius,
|
|
10881
|
+
display: "flex",
|
|
10882
|
+
flexDirection: "column",
|
|
10883
|
+
gap: "0.75rem",
|
|
10388
10884
|
fontFamily: theme.typography.fontFamily
|
|
10389
10885
|
}));
|
|
10390
|
-
var
|
|
10886
|
+
var Header5 = styles.styled("div")({
|
|
10887
|
+
display: "flex",
|
|
10888
|
+
alignItems: "flex-start",
|
|
10889
|
+
gap: "0.875rem"
|
|
10890
|
+
});
|
|
10891
|
+
var AuthorInfo = styles.styled("div")({ flex: 1 });
|
|
10892
|
+
var AuthorName = styles.styled("div")(({ theme }) => ({
|
|
10893
|
+
display: "flex",
|
|
10894
|
+
alignItems: "center",
|
|
10895
|
+
gap: "0.375rem",
|
|
10896
|
+
fontSize: "0.9375rem",
|
|
10897
|
+
fontWeight: 700,
|
|
10898
|
+
color: theme.palette.text.primary
|
|
10899
|
+
}));
|
|
10900
|
+
var ReviewDate = styles.styled("div")(({ theme }) => ({
|
|
10901
|
+
fontSize: "0.8125rem",
|
|
10902
|
+
color: theme.palette.text.secondary,
|
|
10903
|
+
marginTop: "0.125rem"
|
|
10904
|
+
}));
|
|
10905
|
+
var Title11 = styles.styled("div")(({ theme }) => ({
|
|
10906
|
+
fontSize: "0.9375rem",
|
|
10907
|
+
fontWeight: 700,
|
|
10908
|
+
color: theme.palette.text.primary
|
|
10909
|
+
}));
|
|
10910
|
+
var Content3 = styles.styled("p")(({ theme }) => ({
|
|
10911
|
+
margin: 0,
|
|
10912
|
+
fontSize: "0.9375rem",
|
|
10913
|
+
color: theme.palette.text.secondary,
|
|
10914
|
+
lineHeight: 1.6
|
|
10915
|
+
}));
|
|
10916
|
+
var HelpfulRow = styles.styled("div")(({ theme }) => ({
|
|
10917
|
+
display: "flex",
|
|
10918
|
+
alignItems: "center",
|
|
10919
|
+
gap: "0.375rem",
|
|
10920
|
+
fontSize: "0.8125rem",
|
|
10921
|
+
color: theme.palette.text.secondary
|
|
10922
|
+
}));
|
|
10923
|
+
var ReviewItem = ({ review }) => /* @__PURE__ */ jsxRuntime.jsxs(Card2, { children: [
|
|
10924
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Header5, { children: [
|
|
10925
|
+
/* @__PURE__ */ jsxRuntime.jsx(Avatar, { initials: review.author.slice(0, 2).toUpperCase(), size: "sm" }),
|
|
10926
|
+
/* @__PURE__ */ jsxRuntime.jsxs(AuthorInfo, { children: [
|
|
10927
|
+
/* @__PURE__ */ jsxRuntime.jsxs(AuthorName, { children: [
|
|
10928
|
+
review.author,
|
|
10929
|
+
review.verified && /* @__PURE__ */ jsxRuntime.jsx(
|
|
10930
|
+
VerifiedIcon__default.default,
|
|
10931
|
+
{
|
|
10932
|
+
"aria-label": "Zweryfikowany zakup",
|
|
10933
|
+
style: { fontSize: 14, color: "#16a34a" }
|
|
10934
|
+
}
|
|
10935
|
+
)
|
|
10936
|
+
] }),
|
|
10937
|
+
/* @__PURE__ */ jsxRuntime.jsx(ReviewDate, { children: review.date })
|
|
10938
|
+
] }),
|
|
10939
|
+
/* @__PURE__ */ jsxRuntime.jsx(Rating, { value: review.rating, size: "sm", readonly: true })
|
|
10940
|
+
] }),
|
|
10941
|
+
review.title && /* @__PURE__ */ jsxRuntime.jsx(Title11, { children: review.title }),
|
|
10942
|
+
/* @__PURE__ */ jsxRuntime.jsx(Content3, { children: review.content }),
|
|
10943
|
+
review.helpfulCount !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(HelpfulRow, { children: [
|
|
10944
|
+
/* @__PURE__ */ jsxRuntime.jsx(ThumbUpOutlinedIcon__default.default, { "aria-hidden": true, style: { fontSize: 14 } }),
|
|
10945
|
+
review.helpfulCount,
|
|
10946
|
+
" os\xF3b uzna\u0142o t\u0119 recenzj\u0119 za pomocn\u0105"
|
|
10947
|
+
] })
|
|
10948
|
+
] });
|
|
10949
|
+
ReviewItem.displayName = "ReviewItem";
|
|
10950
|
+
var Root57 = styles.styled("div")(({ theme }) => ({
|
|
10391
10951
|
display: "flex",
|
|
10392
10952
|
alignItems: "center",
|
|
10393
10953
|
gap: "2rem",
|
|
@@ -10395,7 +10955,7 @@ var Summary = styles.styled("div")(({ theme }) => ({
|
|
|
10395
10955
|
padding: "1.5rem",
|
|
10396
10956
|
backgroundColor: theme.palette.action.hover,
|
|
10397
10957
|
borderRadius: theme.shape.borderRadius,
|
|
10398
|
-
|
|
10958
|
+
fontFamily: theme.typography.fontFamily
|
|
10399
10959
|
}));
|
|
10400
10960
|
var AverageBlock = styles.styled("div")({
|
|
10401
10961
|
display: "flex",
|
|
@@ -10403,13 +10963,23 @@ var AverageBlock = styles.styled("div")({
|
|
|
10403
10963
|
alignItems: "center",
|
|
10404
10964
|
gap: "0.25rem"
|
|
10405
10965
|
});
|
|
10406
|
-
var
|
|
10966
|
+
var Score = styles.styled("span")(({ theme }) => ({
|
|
10407
10967
|
fontSize: "3rem",
|
|
10408
10968
|
fontWeight: 800,
|
|
10409
10969
|
lineHeight: 1,
|
|
10410
10970
|
color: theme.palette.text.primary
|
|
10411
10971
|
}));
|
|
10412
|
-
var
|
|
10972
|
+
var ReviewCount = styles.styled("span")(({ theme }) => ({
|
|
10973
|
+
fontSize: "0.8125rem",
|
|
10974
|
+
marginTop: "0.25rem",
|
|
10975
|
+
color: theme.palette.text.secondary
|
|
10976
|
+
}));
|
|
10977
|
+
var Distribution = styles.styled("div")({
|
|
10978
|
+
flex: 1,
|
|
10979
|
+
display: "flex",
|
|
10980
|
+
flexDirection: "column",
|
|
10981
|
+
gap: "0.375rem"
|
|
10982
|
+
});
|
|
10413
10983
|
var DistRow = styles.styled("div")({ display: "flex", alignItems: "center", gap: "0.75rem" });
|
|
10414
10984
|
var DistLabel = styles.styled("span")(({ theme }) => ({
|
|
10415
10985
|
fontSize: "0.8125rem",
|
|
@@ -10433,117 +11003,142 @@ var DistFill = styles.styled("div", {
|
|
|
10433
11003
|
borderRadius: "9999px",
|
|
10434
11004
|
transition: "width 400ms ease"
|
|
10435
11005
|
}));
|
|
11006
|
+
var ReviewSummary = ({
|
|
11007
|
+
averageRating,
|
|
11008
|
+
totalReviews,
|
|
11009
|
+
ratingDistribution
|
|
11010
|
+
}) => {
|
|
11011
|
+
const totalDist = ratingDistribution ? Object.values(ratingDistribution).reduce((a, b) => a + b, 0) : 0;
|
|
11012
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root57, { children: [
|
|
11013
|
+
/* @__PURE__ */ jsxRuntime.jsxs(AverageBlock, { children: [
|
|
11014
|
+
/* @__PURE__ */ jsxRuntime.jsx(Score, { children: averageRating.toFixed(1) }),
|
|
11015
|
+
/* @__PURE__ */ jsxRuntime.jsx(Rating, { value: averageRating, size: "sm", readonly: true }),
|
|
11016
|
+
totalReviews !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(ReviewCount, { children: [
|
|
11017
|
+
totalReviews,
|
|
11018
|
+
" opinii"
|
|
11019
|
+
] })
|
|
11020
|
+
] }),
|
|
11021
|
+
ratingDistribution && /* @__PURE__ */ jsxRuntime.jsx(Distribution, { children: [5, 4, 3, 2, 1].map((star) => {
|
|
11022
|
+
const count = ratingDistribution[star] ?? 0;
|
|
11023
|
+
const pct2 = totalDist > 0 ? count / totalDist * 100 : 0;
|
|
11024
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(DistRow, { children: [
|
|
11025
|
+
/* @__PURE__ */ jsxRuntime.jsxs(DistLabel, { children: [
|
|
11026
|
+
star,
|
|
11027
|
+
"\u2605"
|
|
11028
|
+
] }),
|
|
11029
|
+
/* @__PURE__ */ jsxRuntime.jsx(DistBar, { children: /* @__PURE__ */ jsxRuntime.jsx(DistFill, { $pct: pct2 }) }),
|
|
11030
|
+
/* @__PURE__ */ jsxRuntime.jsx(DistLabel, { style: { textAlign: "left" }, children: count })
|
|
11031
|
+
] }, star);
|
|
11032
|
+
}) })
|
|
11033
|
+
] });
|
|
11034
|
+
};
|
|
11035
|
+
ReviewSummary.displayName = "ReviewSummary";
|
|
11036
|
+
var Root58 = styles.styled("div")(({ theme }) => ({
|
|
11037
|
+
fontFamily: theme.typography.fontFamily
|
|
11038
|
+
}));
|
|
10436
11039
|
var ReviewList = styles.styled("div")({
|
|
10437
11040
|
display: "flex",
|
|
10438
11041
|
flexDirection: "column",
|
|
10439
11042
|
gap: "1.5rem"
|
|
10440
11043
|
});
|
|
10441
|
-
var
|
|
10442
|
-
|
|
10443
|
-
|
|
10444
|
-
|
|
10445
|
-
|
|
10446
|
-
|
|
10447
|
-
|
|
10448
|
-
|
|
10449
|
-
|
|
10450
|
-
|
|
10451
|
-
|
|
10452
|
-
|
|
10453
|
-
|
|
10454
|
-
|
|
10455
|
-
|
|
10456
|
-
|
|
10457
|
-
|
|
10458
|
-
|
|
10459
|
-
|
|
10460
|
-
|
|
10461
|
-
|
|
10462
|
-
|
|
10463
|
-
var
|
|
10464
|
-
|
|
10465
|
-
|
|
10466
|
-
|
|
10467
|
-
}));
|
|
10468
|
-
var ReviewTitle = styles.styled("div")(({ theme }) => ({
|
|
10469
|
-
fontSize: "0.9375rem",
|
|
11044
|
+
var ReviewSection = react.forwardRef(
|
|
11045
|
+
({
|
|
11046
|
+
reviews,
|
|
11047
|
+
averageRating,
|
|
11048
|
+
totalReviews,
|
|
11049
|
+
title = "Opinie klient\xF3w",
|
|
11050
|
+
ratingDistribution,
|
|
11051
|
+
...props
|
|
11052
|
+
}, ref) => /* @__PURE__ */ jsxRuntime.jsxs(Root58, { ref, ...props, children: [
|
|
11053
|
+
/* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title, align: "left", style: { marginBottom: "1.5rem" } }),
|
|
11054
|
+
averageRating !== void 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { style: { marginBottom: "2rem" }, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
11055
|
+
ReviewSummary,
|
|
11056
|
+
{
|
|
11057
|
+
averageRating,
|
|
11058
|
+
totalReviews,
|
|
11059
|
+
ratingDistribution
|
|
11060
|
+
}
|
|
11061
|
+
) }),
|
|
11062
|
+
/* @__PURE__ */ jsxRuntime.jsx(ReviewList, { children: reviews.map((review) => /* @__PURE__ */ jsxRuntime.jsx(ReviewItem, { review }, review.id)) })
|
|
11063
|
+
] })
|
|
11064
|
+
);
|
|
11065
|
+
ReviewSection.displayName = "ReviewSection";
|
|
11066
|
+
var Heading = styles.styled("h2")(({ theme }) => ({
|
|
11067
|
+
margin: "0 0 2rem",
|
|
11068
|
+
fontFamily: theme.typography.fontFamily,
|
|
11069
|
+
fontSize: "1.5rem",
|
|
10470
11070
|
fontWeight: 700,
|
|
10471
11071
|
color: theme.palette.text.primary
|
|
10472
11072
|
}));
|
|
10473
|
-
var
|
|
10474
|
-
|
|
10475
|
-
fontSize: "0.9375rem",
|
|
11073
|
+
var CommentCount = styles.styled("span")(({ theme }) => ({
|
|
11074
|
+
marginLeft: "0.375rem",
|
|
10476
11075
|
color: theme.palette.text.secondary,
|
|
10477
|
-
|
|
11076
|
+
fontWeight: 400
|
|
10478
11077
|
}));
|
|
10479
|
-
var
|
|
11078
|
+
var List5 = styles.styled("div")({
|
|
10480
11079
|
display: "flex",
|
|
10481
|
-
|
|
10482
|
-
|
|
10483
|
-
|
|
10484
|
-
|
|
11080
|
+
flexDirection: "column"
|
|
11081
|
+
});
|
|
11082
|
+
var ThreadWrapper = styles.styled("div")(({ theme }) => ({
|
|
11083
|
+
display: "flex",
|
|
11084
|
+
flexDirection: "column",
|
|
11085
|
+
gap: "1.5rem",
|
|
11086
|
+
paddingTop: "1.5rem",
|
|
11087
|
+
paddingBottom: "1.5rem",
|
|
11088
|
+
borderBottom: `1px solid ${theme.palette.divider}`,
|
|
11089
|
+
"&:first-of-type": {
|
|
11090
|
+
paddingTop: 0
|
|
11091
|
+
},
|
|
11092
|
+
"&:last-child": {
|
|
11093
|
+
borderBottom: "none",
|
|
11094
|
+
paddingBottom: 0
|
|
11095
|
+
}
|
|
10485
11096
|
}));
|
|
10486
|
-
|
|
10487
|
-
|
|
10488
|
-
|
|
10489
|
-
|
|
10490
|
-
|
|
10491
|
-
|
|
10492
|
-
|
|
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
|
-
] });
|
|
11097
|
+
var Replies = styles.styled("div")({
|
|
11098
|
+
display: "flex",
|
|
11099
|
+
flexDirection: "column",
|
|
11100
|
+
gap: "1.5rem"
|
|
11101
|
+
});
|
|
11102
|
+
function countTotal(comments) {
|
|
11103
|
+
return comments.reduce((acc, c) => acc + 1 + (c.replies?.length ?? 0), 0);
|
|
10513
11104
|
}
|
|
10514
|
-
var
|
|
10515
|
-
({
|
|
10516
|
-
|
|
10517
|
-
|
|
10518
|
-
|
|
10519
|
-
|
|
10520
|
-
|
|
10521
|
-
|
|
10522
|
-
|
|
10523
|
-
|
|
10524
|
-
|
|
10525
|
-
|
|
10526
|
-
|
|
10527
|
-
|
|
10528
|
-
|
|
10529
|
-
|
|
10530
|
-
|
|
10531
|
-
|
|
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
|
-
}) })
|
|
11105
|
+
var CommentSection = react.forwardRef(
|
|
11106
|
+
({
|
|
11107
|
+
title = "Komentarze",
|
|
11108
|
+
comments,
|
|
11109
|
+
maxWidth = "xl",
|
|
11110
|
+
onLike,
|
|
11111
|
+
onReply,
|
|
11112
|
+
...rest
|
|
11113
|
+
}, ref) => {
|
|
11114
|
+
const total = countTotal(comments);
|
|
11115
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Section, { ref, ...rest, children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { maxWidth, children: [
|
|
11116
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Heading, { children: [
|
|
11117
|
+
title,
|
|
11118
|
+
/* @__PURE__ */ jsxRuntime.jsxs(CommentCount, { children: [
|
|
11119
|
+
"(",
|
|
11120
|
+
total,
|
|
11121
|
+
")"
|
|
11122
|
+
] })
|
|
10540
11123
|
] }),
|
|
10541
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
10542
|
-
|
|
11124
|
+
/* @__PURE__ */ jsxRuntime.jsx(List5, { children: comments.map((comment) => /* @__PURE__ */ jsxRuntime.jsxs(ThreadWrapper, { children: [
|
|
11125
|
+
/* @__PURE__ */ jsxRuntime.jsx(CommentCard, { comment, depth: 0, onLike, onReply }),
|
|
11126
|
+
comment.replies && comment.replies.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(Replies, { children: comment.replies.map((reply) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
11127
|
+
CommentCard,
|
|
11128
|
+
{
|
|
11129
|
+
comment: reply,
|
|
11130
|
+
depth: 1,
|
|
11131
|
+
onLike,
|
|
11132
|
+
onReply
|
|
11133
|
+
},
|
|
11134
|
+
reply.id
|
|
11135
|
+
)) })
|
|
11136
|
+
] }, comment.id)) })
|
|
11137
|
+
] }) });
|
|
10543
11138
|
}
|
|
10544
11139
|
);
|
|
10545
|
-
|
|
10546
|
-
var
|
|
11140
|
+
CommentSection.displayName = "CommentSection";
|
|
11141
|
+
var List6 = styles.styled("div")(({ $hasHeading }) => ({
|
|
10547
11142
|
marginTop: $hasHeading ? "2.5rem" : 0
|
|
10548
11143
|
}));
|
|
10549
11144
|
var FaqSection = react.forwardRef(
|
|
@@ -10559,7 +11154,7 @@ var FaqSection = react.forwardRef(
|
|
|
10559
11154
|
const hasHeading = Boolean(title || description);
|
|
10560
11155
|
return /* @__PURE__ */ jsxRuntime.jsx(Section, { ref, ...rest, children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { maxWidth, children: [
|
|
10561
11156
|
hasHeading && /* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title: title ?? "", description, align: headingAlign }),
|
|
10562
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
11157
|
+
/* @__PURE__ */ jsxRuntime.jsx(List6, { $hasHeading: hasHeading, children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
10563
11158
|
FaqItem,
|
|
10564
11159
|
{
|
|
10565
11160
|
item,
|
|
@@ -10601,7 +11196,7 @@ var FeatureGrid = react.forwardRef(
|
|
|
10601
11196
|
return /* @__PURE__ */ jsxRuntime.jsx(Section, { ref, ...rest, children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { maxWidth, children: [
|
|
10602
11197
|
hasHeading && /* @__PURE__ */ jsxRuntime.jsx(SectionHeading, { title: title ?? "", description, align: headingAlign }),
|
|
10603
11198
|
/* @__PURE__ */ jsxRuntime.jsx(Grid3, { $columns: columns, $hasHeading: hasHeading, $iconLeft: itemLayout === "icon-left", children: features.map((feature, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
10604
|
-
|
|
11199
|
+
FeatureItem,
|
|
10605
11200
|
{
|
|
10606
11201
|
feature,
|
|
10607
11202
|
cardVariant,
|
|
@@ -11084,7 +11679,7 @@ var GroupLabel3 = styles.styled("div")(({ theme }) => ({
|
|
|
11084
11679
|
textTransform: "uppercase",
|
|
11085
11680
|
letterSpacing: "0.06em"
|
|
11086
11681
|
}));
|
|
11087
|
-
var
|
|
11682
|
+
var Item4 = styles.styled("div", {
|
|
11088
11683
|
shouldForwardProp: (p) => p !== "$active"
|
|
11089
11684
|
})(({ theme, $active }) => ({
|
|
11090
11685
|
display: "flex",
|
|
@@ -11283,7 +11878,7 @@ function CommandPalette({
|
|
|
11283
11878
|
const idx = globalIndex++;
|
|
11284
11879
|
const isActive = idx === activeIndex;
|
|
11285
11880
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
11286
|
-
|
|
11881
|
+
Item4,
|
|
11287
11882
|
{
|
|
11288
11883
|
id: `${id}-item-${item.id}`,
|
|
11289
11884
|
role: "option",
|
|
@@ -11378,8 +11973,8 @@ var TopRow = styles.styled("div")({
|
|
|
11378
11973
|
gap: "1rem",
|
|
11379
11974
|
flexWrap: "wrap"
|
|
11380
11975
|
});
|
|
11381
|
-
var
|
|
11382
|
-
var
|
|
11976
|
+
var TextBlock2 = styles.styled("div")({ flex: 1, minWidth: "16rem" });
|
|
11977
|
+
var Title12 = styles.styled("p")(({ theme }) => ({
|
|
11383
11978
|
margin: "0 0 0.25rem",
|
|
11384
11979
|
fontFamily: theme.typography.fontFamily,
|
|
11385
11980
|
fontSize: "1rem",
|
|
@@ -11387,7 +11982,7 @@ var Title11 = styles.styled("p")(({ theme }) => ({
|
|
|
11387
11982
|
color: theme.palette.text.primary,
|
|
11388
11983
|
lineHeight: 1.4
|
|
11389
11984
|
}));
|
|
11390
|
-
var
|
|
11985
|
+
var Description9 = styles.styled("p")(({ theme }) => ({
|
|
11391
11986
|
margin: 0,
|
|
11392
11987
|
fontFamily: theme.typography.fontFamily,
|
|
11393
11988
|
fontSize: "0.875rem",
|
|
@@ -11399,7 +11994,7 @@ var Link3 = styles.styled("a")(({ theme }) => ({
|
|
|
11399
11994
|
textDecoration: "underline",
|
|
11400
11995
|
"&:hover": { opacity: 0.8 }
|
|
11401
11996
|
}));
|
|
11402
|
-
var
|
|
11997
|
+
var Actions2 = styles.styled("div")({
|
|
11403
11998
|
display: "flex",
|
|
11404
11999
|
alignItems: "center",
|
|
11405
12000
|
gap: "0.625rem",
|
|
@@ -11543,9 +12138,9 @@ function CookieConsent({
|
|
|
11543
12138
|
return reactDom.createPortal(
|
|
11544
12139
|
/* @__PURE__ */ jsxRuntime.jsx(Bar2, { role: "region", "aria-label": "Zgoda na pliki cookie", "aria-live": "polite", children: /* @__PURE__ */ jsxRuntime.jsxs(Inner4, { children: [
|
|
11545
12140
|
/* @__PURE__ */ jsxRuntime.jsxs(TopRow, { children: [
|
|
11546
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
11547
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
11548
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
12141
|
+
/* @__PURE__ */ jsxRuntime.jsxs(TextBlock2, { children: [
|
|
12142
|
+
/* @__PURE__ */ jsxRuntime.jsx(Title12, { children: title }),
|
|
12143
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Description9, { children: [
|
|
11549
12144
|
description,
|
|
11550
12145
|
privacyPolicyLabel && privacyPolicyHref && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
11551
12146
|
" ",
|
|
@@ -11553,7 +12148,7 @@ function CookieConsent({
|
|
|
11553
12148
|
] })
|
|
11554
12149
|
] })
|
|
11555
12150
|
] }),
|
|
11556
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
12151
|
+
/* @__PURE__ */ jsxRuntime.jsxs(Actions2, { children: [
|
|
11557
12152
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
11558
12153
|
TextButton,
|
|
11559
12154
|
{
|
|
@@ -11595,16 +12190,11 @@ function CookieConsent({
|
|
|
11595
12190
|
);
|
|
11596
12191
|
}
|
|
11597
12192
|
var defaultCookieCategories = DEFAULT_CATEGORIES;
|
|
11598
|
-
var
|
|
12193
|
+
var Root59 = styles.styled("footer")(({ theme }) => ({
|
|
11599
12194
|
width: "100%",
|
|
11600
12195
|
backgroundColor: theme.palette.background.paper,
|
|
11601
12196
|
borderTop: `1px solid ${theme.palette.divider}`
|
|
11602
12197
|
}));
|
|
11603
|
-
var Inner5 = styles.styled("div")({
|
|
11604
|
-
maxWidth: "72rem",
|
|
11605
|
-
margin: "0 auto",
|
|
11606
|
-
padding: "3rem 1.5rem 2rem"
|
|
11607
|
-
});
|
|
11608
12198
|
var TopRow2 = styles.styled("div")({
|
|
11609
12199
|
display: "grid",
|
|
11610
12200
|
gridTemplateColumns: "1fr",
|
|
@@ -11622,7 +12212,7 @@ var BrandBlock = styles.styled("div")({
|
|
|
11622
12212
|
flexDirection: "column",
|
|
11623
12213
|
gap: "0.75rem"
|
|
11624
12214
|
});
|
|
11625
|
-
var
|
|
12215
|
+
var Description10 = styles.styled("p")(({ theme }) => ({
|
|
11626
12216
|
margin: 0,
|
|
11627
12217
|
fontFamily: theme.typography.fontFamily,
|
|
11628
12218
|
fontSize: "0.875rem",
|
|
@@ -11733,14 +12323,16 @@ function Footer7({
|
|
|
11733
12323
|
description,
|
|
11734
12324
|
columns = [],
|
|
11735
12325
|
socialLinks = [],
|
|
11736
|
-
copyright
|
|
12326
|
+
copyright,
|
|
12327
|
+
maxWidth = "lg",
|
|
12328
|
+
style
|
|
11737
12329
|
}) {
|
|
11738
12330
|
const colCount = columns.length;
|
|
11739
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
12331
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Root59, { style, children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { maxWidth, style: { paddingTop: "3rem", paddingBottom: "2rem" }, children: [
|
|
11740
12332
|
(logo || description || colCount > 0) && /* @__PURE__ */ jsxRuntime.jsxs(TopRow2, { style: { "--col-count": colCount }, children: [
|
|
11741
12333
|
(logo || description) && /* @__PURE__ */ jsxRuntime.jsxs(BrandBlock, { children: [
|
|
11742
12334
|
logo,
|
|
11743
|
-
description && /* @__PURE__ */ jsxRuntime.jsx(
|
|
12335
|
+
description && /* @__PURE__ */ jsxRuntime.jsx(Description10, { children: description })
|
|
11744
12336
|
] }),
|
|
11745
12337
|
columns.map((col) => /* @__PURE__ */ jsxRuntime.jsxs(Column, { children: [
|
|
11746
12338
|
/* @__PURE__ */ jsxRuntime.jsx(ColumnTitle, { children: col.title }),
|
|
@@ -11763,7 +12355,7 @@ function Footer7({
|
|
|
11763
12355
|
] })
|
|
11764
12356
|
] }) });
|
|
11765
12357
|
}
|
|
11766
|
-
var
|
|
12358
|
+
var Root60 = styles.styled("header", {
|
|
11767
12359
|
shouldForwardProp: (p) => p !== "$sticky" && p !== "$variant"
|
|
11768
12360
|
})(({ theme, $sticky, $variant }) => ({
|
|
11769
12361
|
position: $sticky ? "sticky" : "relative",
|
|
@@ -11774,17 +12366,6 @@ var Root48 = styles.styled("header", {
|
|
|
11774
12366
|
borderBottom: $variant === "transparent" ? "none" : `1px solid ${theme.palette.divider}`,
|
|
11775
12367
|
boxShadow: $variant === "transparent" ? "none" : "0 1px 4px rgba(0,0,0,0.08)"
|
|
11776
12368
|
}));
|
|
11777
|
-
var Inner6 = styles.styled("div", {
|
|
11778
|
-
shouldForwardProp: (p) => p !== "$maxWidth"
|
|
11779
|
-
})(({ $maxWidth }) => ({
|
|
11780
|
-
maxWidth: typeof $maxWidth === "number" ? `${$maxWidth}px` : $maxWidth,
|
|
11781
|
-
margin: "0 auto",
|
|
11782
|
-
padding: "0 1.5rem",
|
|
11783
|
-
height: "3.75rem",
|
|
11784
|
-
display: "flex",
|
|
11785
|
-
alignItems: "center",
|
|
11786
|
-
gap: "1.5rem"
|
|
11787
|
-
}));
|
|
11788
12369
|
var LogoSlot = styles.styled("div")({
|
|
11789
12370
|
flexShrink: 0,
|
|
11790
12371
|
display: "flex",
|
|
@@ -11850,7 +12431,8 @@ var MobileDrawer = styles.styled("div", {
|
|
|
11850
12431
|
display: $open ? "flex" : "none",
|
|
11851
12432
|
flexDirection: "column",
|
|
11852
12433
|
gap: "0.25rem",
|
|
11853
|
-
|
|
12434
|
+
paddingTop: "0.75rem",
|
|
12435
|
+
paddingBottom: "1rem",
|
|
11854
12436
|
borderTop: `1px solid ${theme.palette.divider}`,
|
|
11855
12437
|
backgroundColor: theme.palette.background.paper,
|
|
11856
12438
|
"@media (min-width: 768px)": {
|
|
@@ -11881,87 +12463,80 @@ function Navbar({
|
|
|
11881
12463
|
actions,
|
|
11882
12464
|
sticky = false,
|
|
11883
12465
|
variant = "filled",
|
|
11884
|
-
maxWidth = "
|
|
12466
|
+
maxWidth = "lg",
|
|
12467
|
+
style
|
|
11885
12468
|
}) {
|
|
11886
12469
|
const [mobileOpen, setMobileOpen] = react.useState(false);
|
|
11887
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
11888
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
11889
|
-
|
|
11890
|
-
|
|
11891
|
-
|
|
11892
|
-
|
|
11893
|
-
|
|
11894
|
-
|
|
11895
|
-
{
|
|
11896
|
-
|
|
11897
|
-
|
|
11898
|
-
|
|
11899
|
-
|
|
11900
|
-
|
|
11901
|
-
|
|
11902
|
-
|
|
11903
|
-
|
|
11904
|
-
|
|
11905
|
-
|
|
12470
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Root60, { $sticky: sticky, $variant: variant, style, children: [
|
|
12471
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
12472
|
+
Container,
|
|
12473
|
+
{
|
|
12474
|
+
maxWidth,
|
|
12475
|
+
style: { height: "3.75rem", display: "flex", alignItems: "center", gap: "1.5rem" },
|
|
12476
|
+
children: [
|
|
12477
|
+
logo && /* @__PURE__ */ jsxRuntime.jsx(LogoSlot, { children: logo }),
|
|
12478
|
+
/* @__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)) }),
|
|
12479
|
+
(actions || navItems.length > 0) && /* @__PURE__ */ jsxRuntime.jsxs(RightSlot, { children: [
|
|
12480
|
+
actions,
|
|
12481
|
+
navItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
12482
|
+
HamburgerButton,
|
|
12483
|
+
{
|
|
12484
|
+
type: "button",
|
|
12485
|
+
"aria-label": mobileOpen ? "Zamknij menu" : "Otw\xF3rz menu",
|
|
12486
|
+
"aria-expanded": mobileOpen,
|
|
12487
|
+
onClick: () => setMobileOpen((v) => !v),
|
|
12488
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(HamburgerIcon, { open: mobileOpen })
|
|
12489
|
+
}
|
|
12490
|
+
)
|
|
12491
|
+
] })
|
|
12492
|
+
]
|
|
12493
|
+
}
|
|
12494
|
+
),
|
|
12495
|
+
navItems.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(MobileDrawer, { $open: mobileOpen, "aria-label": "Menu mobilne", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { maxWidth, children: navItems.map((item) => /* @__PURE__ */ jsxRuntime.jsx(MobileNavLink, { href: item.href, $active: !!item.active, children: item.label }, item.href)) }) })
|
|
11906
12496
|
] });
|
|
11907
12497
|
}
|
|
11908
|
-
var
|
|
12498
|
+
var fontFamily = "'Lato', sans-serif";
|
|
11909
12499
|
var typographyOptions = {
|
|
11910
|
-
fontFamily
|
|
11911
|
-
h1: {
|
|
11912
|
-
|
|
11913
|
-
|
|
11914
|
-
},
|
|
11915
|
-
|
|
11916
|
-
|
|
11917
|
-
fontSize: "1.375rem"
|
|
11918
|
-
},
|
|
11919
|
-
h3: {
|
|
11920
|
-
fontFamily: ["'Lato'", ss].join(","),
|
|
11921
|
-
fontSize: "1.125rem"
|
|
11922
|
-
},
|
|
11923
|
-
h4: {
|
|
11924
|
-
fontFamily: ["'Lato'", ss].join(","),
|
|
11925
|
-
fontSize: "1rem"
|
|
11926
|
-
},
|
|
11927
|
-
h5: {
|
|
11928
|
-
fontFamily: ["'Lato'", ss].join(","),
|
|
11929
|
-
fontSize: "0.875rem"
|
|
11930
|
-
},
|
|
11931
|
-
h6: {
|
|
11932
|
-
fontFamily: ["'Lato'", ss].join(","),
|
|
11933
|
-
fontSize: "0.75rem"
|
|
11934
|
-
}
|
|
12500
|
+
fontFamily,
|
|
12501
|
+
h1: { fontSize: "1.75rem" },
|
|
12502
|
+
h2: { fontSize: "1.375rem" },
|
|
12503
|
+
h3: { fontSize: "1.125rem" },
|
|
12504
|
+
h4: { fontSize: "1rem" },
|
|
12505
|
+
h5: { fontSize: "0.875rem" },
|
|
12506
|
+
h6: { fontSize: "0.75rem" }
|
|
11935
12507
|
};
|
|
11936
|
-
var
|
|
12508
|
+
var themeBase = {
|
|
11937
12509
|
typography: typographyOptions,
|
|
12510
|
+
palette: {
|
|
12511
|
+
error: { main: "#d32f2f", dark: "#b71c1c", light: "#ef5350", contrastText: "#ffffff" },
|
|
12512
|
+
success: { main: "#388e3c", dark: "#2e7d32", light: "#66bb6a", contrastText: "#ffffff" },
|
|
12513
|
+
warning: { main: "#f57c00", dark: "#ef6c00", light: "#ffb74d", contrastText: "#000000" },
|
|
12514
|
+
info: { main: "#1976d2", dark: "#1565c0", light: "#42a5f5", contrastText: "#ffffff" }
|
|
12515
|
+
}
|
|
12516
|
+
};
|
|
12517
|
+
var themeLight = styles.createTheme(themeBase, {
|
|
11938
12518
|
palette: {
|
|
11939
12519
|
mode: "light",
|
|
11940
12520
|
primary: { main: "#1976d2", dark: "#1565c0", light: "#42a5f5", contrastText: "#ffffff" },
|
|
11941
12521
|
secondary: { main: "#6b7280", dark: "#4b5563", light: "#9ca3af", contrastText: "#ffffff" },
|
|
11942
|
-
error: { main: "#d32f2f", dark: "#b71c1c", light: "#ef5350", contrastText: "#ffffff" },
|
|
11943
12522
|
action: { disabled: "rgba(0,0,0,0.38)", disabledBackground: "rgba(0,0,0,0.12)" },
|
|
11944
12523
|
background: { default: "#ffffff", paper: "#f5f5f5" }
|
|
11945
12524
|
}
|
|
11946
12525
|
});
|
|
11947
|
-
var themeDark = styles.createTheme({
|
|
11948
|
-
typography: typographyOptions,
|
|
12526
|
+
var themeDark = styles.createTheme(themeBase, {
|
|
11949
12527
|
palette: {
|
|
11950
12528
|
mode: "dark",
|
|
11951
12529
|
primary: { main: "#90caf9", dark: "#42a5f5", light: "#bbdefb", contrastText: "#0d1b2a" },
|
|
11952
12530
|
secondary: { main: "#9ca3af", dark: "#6b7280", light: "#d1d5db", contrastText: "#111827" },
|
|
11953
|
-
error: { main: "#f48fb1", dark: "#f06292", light: "#fce4ec", contrastText: "#1a0010" },
|
|
11954
12531
|
action: { disabled: "rgba(255,255,255,0.30)", disabledBackground: "rgba(255,255,255,0.12)" },
|
|
11955
12532
|
background: { default: "#121212", paper: "#1e1e1e" }
|
|
11956
12533
|
}
|
|
11957
12534
|
});
|
|
11958
|
-
var themeHighContrast = styles.createTheme({
|
|
11959
|
-
typography: typographyOptions,
|
|
12535
|
+
var themeHighContrast = styles.createTheme(themeBase, {
|
|
11960
12536
|
palette: {
|
|
11961
12537
|
mode: "dark",
|
|
11962
12538
|
primary: { main: "#ffffff", dark: "#e0e0e0", light: "#ffffff", contrastText: "#000000" },
|
|
11963
12539
|
secondary: { main: "#ffff00", dark: "#cccc00", light: "#ffff66", contrastText: "#000000" },
|
|
11964
|
-
error: { main: "#ff6b6b", dark: "#ff3333", light: "#ffaaaa", contrastText: "#000000" },
|
|
11965
12540
|
action: { disabled: "rgba(255,255,255,0.38)", disabledBackground: "rgba(255,255,255,0.12)" },
|
|
11966
12541
|
background: { default: "#000000", paper: "#1a1a1a" }
|
|
11967
12542
|
}
|
|
@@ -12026,9 +12601,17 @@ exports.Card = Card;
|
|
|
12026
12601
|
exports.Carousel = Carousel;
|
|
12027
12602
|
exports.CartButton = CartButton;
|
|
12028
12603
|
exports.CartDrawer = CartDrawer;
|
|
12604
|
+
exports.CartDrawerItemComponent = CartDrawerItem;
|
|
12029
12605
|
exports.CategoryCard = CategoryCard;
|
|
12606
|
+
exports.CategoryCardImage = CategoryCardImage;
|
|
12607
|
+
exports.CategoryCardInfo = CategoryCardInfo;
|
|
12030
12608
|
exports.CheckboxInput = CheckboxInput;
|
|
12031
12609
|
exports.CommandPalette = CommandPalette;
|
|
12610
|
+
exports.CommentActions = CommentActions;
|
|
12611
|
+
exports.CommentBody = CommentBody;
|
|
12612
|
+
exports.CommentCard = CommentCard;
|
|
12613
|
+
exports.CommentMeta = CommentMeta;
|
|
12614
|
+
exports.CommentSection = CommentSection;
|
|
12032
12615
|
exports.CompareTool = CompareTool;
|
|
12033
12616
|
exports.Container = Container;
|
|
12034
12617
|
exports.ContextMenu = ContextMenu;
|
|
@@ -12037,17 +12620,19 @@ exports.CountdownTimer = CountdownTimer;
|
|
|
12037
12620
|
exports.CountryFlag = CountryFlag;
|
|
12038
12621
|
exports.CouponInput = CouponInput;
|
|
12039
12622
|
exports.DateTimePicker = DateTimePicker;
|
|
12623
|
+
exports.DealCard = DealCard;
|
|
12040
12624
|
exports.EmailInput = EmailInput;
|
|
12041
12625
|
exports.EmptyState = EmptyState;
|
|
12042
12626
|
exports.FaqItem = FaqItem;
|
|
12043
12627
|
exports.FaqSection = FaqSection;
|
|
12044
12628
|
exports.FeatureGrid = FeatureGrid;
|
|
12045
|
-
exports.FeatureItem =
|
|
12629
|
+
exports.FeatureItem = FeatureItem;
|
|
12046
12630
|
exports.FileInput = FileInput;
|
|
12047
12631
|
exports.FilterSidebar = FilterSidebar;
|
|
12048
12632
|
exports.Footer = Footer7;
|
|
12633
|
+
exports.Image = Image;
|
|
12049
12634
|
exports.Lightbox = Lightbox;
|
|
12050
|
-
exports.List =
|
|
12635
|
+
exports.List = List4;
|
|
12051
12636
|
exports.LogoCloud = LogoCloud;
|
|
12052
12637
|
exports.LogoTile = LogoTile;
|
|
12053
12638
|
exports.Main = Main;
|
|
@@ -12059,6 +12644,8 @@ exports.Navbar = Navbar;
|
|
|
12059
12644
|
exports.NewsletterSection = NewsletterSection;
|
|
12060
12645
|
exports.NumberInput = NumberInput;
|
|
12061
12646
|
exports.OrderSummary = OrderSummary;
|
|
12647
|
+
exports.OrderSummaryItemComponent = OrderSummaryItem;
|
|
12648
|
+
exports.OrderSummaryRow = OrderSummaryRow;
|
|
12062
12649
|
exports.PaginationBar = PaginationBar;
|
|
12063
12650
|
exports.PaginationButton = PaginationButton;
|
|
12064
12651
|
exports.PaginationEllipsis = PaginationEllipsis;
|
|
@@ -12071,12 +12658,16 @@ exports.PostCardImage = PostCardImage;
|
|
|
12071
12658
|
exports.PostCardMeta = PostCardMeta;
|
|
12072
12659
|
exports.Price = Price;
|
|
12073
12660
|
exports.PricingCard = PricingCard;
|
|
12661
|
+
exports.PricingCardFeatureList = PricingCardFeatureList;
|
|
12662
|
+
exports.PricingCardPrice = PricingCardPrice;
|
|
12074
12663
|
exports.PricingSection = PricingSection;
|
|
12075
12664
|
exports.ProcessSection = ProcessSection;
|
|
12076
12665
|
exports.ProcessStep = ProcessStep;
|
|
12077
12666
|
exports.ProductCard = ProductCard;
|
|
12078
12667
|
exports.ProductCardHorizontal = ProductCardHorizontal;
|
|
12668
|
+
exports.ProductCardImage = ProductCardImage;
|
|
12079
12669
|
exports.ProductGallery = ProductGallery;
|
|
12670
|
+
exports.ProfileCard = ProfileCard;
|
|
12080
12671
|
exports.ProgressBar = ProgressBar;
|
|
12081
12672
|
exports.ProgressCircle = ProgressCircle;
|
|
12082
12673
|
exports.PromoStrip = PromoStrip;
|
|
@@ -12085,8 +12676,9 @@ exports.QuantitySelector = QuantitySelector;
|
|
|
12085
12676
|
exports.RangeSlider = RangeSlider;
|
|
12086
12677
|
exports.Rating = Rating;
|
|
12087
12678
|
exports.RelatedProducts = RelatedProducts;
|
|
12679
|
+
exports.ReviewItem = ReviewItem;
|
|
12088
12680
|
exports.ReviewSection = ReviewSection;
|
|
12089
|
-
exports.
|
|
12681
|
+
exports.ReviewSummary = ReviewSummary;
|
|
12090
12682
|
exports.SearchInput = SearchInput;
|
|
12091
12683
|
exports.Section = Section;
|
|
12092
12684
|
exports.SectionHeading = SectionHeading;
|
|
@@ -12100,15 +12692,20 @@ exports.StatsSection = StatsSection;
|
|
|
12100
12692
|
exports.StockStatus = StockStatus;
|
|
12101
12693
|
exports.SwitchInput = SwitchInput;
|
|
12102
12694
|
exports.Tabs = Tabs;
|
|
12695
|
+
exports.TeamMemberAvatar = TeamMemberAvatar;
|
|
12103
12696
|
exports.TeamMemberCard = TeamMemberCard;
|
|
12697
|
+
exports.TeamMemberInfo = TeamMemberInfo;
|
|
12104
12698
|
exports.TeamSection = TeamSection;
|
|
12699
|
+
exports.TestimonialAuthor = TestimonialAuthor;
|
|
12105
12700
|
exports.TestimonialCard = TestimonialCard;
|
|
12701
|
+
exports.TestimonialQuote = TestimonialQuote;
|
|
12106
12702
|
exports.TestimonialsSection = TestimonialsSection;
|
|
12107
12703
|
exports.TextInput = TextInput;
|
|
12108
12704
|
exports.TextareaInput = TextareaInput;
|
|
12109
12705
|
exports.Timeline = Timeline;
|
|
12110
12706
|
exports.VariantSelector = VariantSelector;
|
|
12111
12707
|
exports.VideoPlayer = VideoPlayer;
|
|
12708
|
+
exports.VoucherCard = VoucherCard;
|
|
12112
12709
|
exports.WishlistButton = WishlistButton;
|
|
12113
12710
|
exports.accordionVariants = accordionVariants;
|
|
12114
12711
|
exports.alertSeverities = alertSeverities;
|
|
@@ -12145,7 +12742,6 @@ exports.progressCircleVariants = progressCircleVariants;
|
|
|
12145
12742
|
exports.promoStripVariants = promoStripVariants;
|
|
12146
12743
|
exports.rangeSliderSizes = rangeSliderSizes;
|
|
12147
12744
|
exports.relatedProductsLayouts = relatedProductsLayouts;
|
|
12148
|
-
exports.saleBadgeVariants = saleBadgeVariants;
|
|
12149
12745
|
exports.sectionHeadingAligns = sectionHeadingAligns;
|
|
12150
12746
|
exports.skeletonVariants = skeletonVariants;
|
|
12151
12747
|
exports.spinnerColors = spinnerColors;
|