@szymonpiatek/designsystem 0.0.7 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { forwardRef, useId, useRef, useEffect, useState, useCallback, useMemo, Fragment as Fragment$1 } from 'react';
2
2
  import { styled, alpha, keyframes, createTheme, useTheme, ThemeProvider } from '@mui/material/styles';
3
- import { CircularProgress, CssBaseline } from '@mui/material';
3
+ import { CircularProgress, Container as Container$1, CssBaseline } from '@mui/material';
4
4
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
5
5
  import ShoppingCartIcon from '@mui/icons-material/ShoppingCart';
6
6
  import FavoriteIcon from '@mui/icons-material/Favorite';
@@ -27,6 +27,8 @@ import ImageIcon from '@mui/icons-material/Image';
27
27
  import ArticleIcon from '@mui/icons-material/Article';
28
28
  import CheckCircleOutlinedIcon from '@mui/icons-material/CheckCircleOutlined';
29
29
  import HighlightOffIcon from '@mui/icons-material/HighlightOff';
30
+ import ContentCopyIcon from '@mui/icons-material/ContentCopy';
31
+ import LocalOfferIcon from '@mui/icons-material/LocalOffer';
30
32
  import CreditCardOutlinedIcon from '@mui/icons-material/CreditCardOutlined';
31
33
  import LocalShippingOutlinedIcon from '@mui/icons-material/LocalShippingOutlined';
32
34
  import GridViewIcon from '@mui/icons-material/GridView';
@@ -5131,8 +5133,8 @@ function Spinner3({
5131
5133
  label = "\u0141adowanie\u2026",
5132
5134
  ...props
5133
5135
  }) {
5134
- const Inner7 = VARIANTS[variant];
5135
- return /* @__PURE__ */ jsx(Root13, { $size: size, $color: color, role: "status", "aria-label": label, ...props, children: /* @__PURE__ */ jsx(Inner7, {}) });
5136
+ const Inner5 = VARIANTS[variant];
5137
+ return /* @__PURE__ */ jsx(Root13, { $size: size, $color: color, role: "status", "aria-label": label, ...props, children: /* @__PURE__ */ jsx(Inner5, {}) });
5136
5138
  }
5137
5139
  var spinnerVariants = ["ring", "dots", "pulse", "bars"];
5138
5140
  var spinnerSizes = ["xs", "sm", "md", "lg", "xl"];
@@ -5689,26 +5691,12 @@ var AspectRatio = forwardRef(
5689
5691
  );
5690
5692
  AspectRatio.displayName = "AspectRatio";
5691
5693
  var aspectRatioPresets = Object.keys(PRESET_MAP);
5692
- var Root16 = styled(Card)(({ theme }) => ({
5693
- display: "flex",
5694
- flexDirection: "column",
5695
- overflow: "hidden",
5696
- cursor: "pointer",
5697
- transition: "box-shadow 150ms ease, transform 150ms ease",
5698
- "&:hover": {
5699
- boxShadow: theme.shadows[4],
5700
- transform: "translateY(-2px)"
5701
- }
5702
- }));
5703
- var ImageWrap = styled("div")({
5704
- margin: "-1.5rem -1.5rem 1rem"
5705
- });
5706
- var Image = styled("img")({
5694
+ var Img = styled("img")({
5707
5695
  objectFit: "cover",
5708
5696
  width: "100%",
5709
5697
  height: "100%"
5710
5698
  });
5711
- var ImagePlaceholder = styled("div")(({ theme }) => ({
5699
+ var Placeholder2 = styled("div")(({ theme }) => ({
5712
5700
  width: "100%",
5713
5701
  height: "100%",
5714
5702
  backgroundColor: theme.palette.action.hover,
@@ -5717,7 +5705,9 @@ var ImagePlaceholder = styled("div")(({ theme }) => ({
5717
5705
  justifyContent: "center",
5718
5706
  color: theme.palette.text.disabled
5719
5707
  }));
5720
- var Content = styled("div")({
5708
+ var CategoryCardImage = ({ src, alt }) => /* @__PURE__ */ jsx(AspectRatio, { ratio: "4/3", children: src ? /* @__PURE__ */ jsx(Img, { src, alt }) : /* @__PURE__ */ jsx(Placeholder2, { "aria-label": alt, children: /* @__PURE__ */ jsx(ImageIcon, { style: { fontSize: 48 } }) }) });
5709
+ CategoryCardImage.displayName = "CategoryCardImage";
5710
+ var Root16 = styled("div")({
5721
5711
  display: "flex",
5722
5712
  flexDirection: "column",
5723
5713
  gap: "0.25rem"
@@ -5735,6 +5725,33 @@ var Count = styled("span")(({ theme }) => ({
5735
5725
  fontFamily: theme.typography.fontFamily,
5736
5726
  fontSize: "0.875rem"
5737
5727
  }));
5728
+ var CategoryCardInfo = ({
5729
+ name,
5730
+ count,
5731
+ countLabel = "produkt\xF3w"
5732
+ }) => /* @__PURE__ */ jsxs(Root16, { children: [
5733
+ /* @__PURE__ */ jsx(Name, { children: name }),
5734
+ count !== void 0 && /* @__PURE__ */ jsxs(Count, { children: [
5735
+ count,
5736
+ " ",
5737
+ countLabel
5738
+ ] })
5739
+ ] });
5740
+ CategoryCardInfo.displayName = "CategoryCardInfo";
5741
+ var Root17 = styled(Card)(({ theme }) => ({
5742
+ display: "flex",
5743
+ flexDirection: "column",
5744
+ overflow: "hidden",
5745
+ cursor: "pointer",
5746
+ transition: "box-shadow 150ms ease, transform 150ms ease",
5747
+ "&:hover": {
5748
+ boxShadow: theme.shadows[4],
5749
+ transform: "translateY(-2px)"
5750
+ }
5751
+ }));
5752
+ var ImageWrap = styled("div")({
5753
+ margin: "-1.5rem -1.5rem 1rem"
5754
+ });
5738
5755
  var CardLink = styled("a")({
5739
5756
  display: "block",
5740
5757
  textDecoration: "none",
@@ -5744,90 +5761,13 @@ var CardLink = styled("a")({
5744
5761
  var CategoryCard = forwardRef(
5745
5762
  ({ name, imageUrl, imageAlt, count, href, ...props }, ref) => {
5746
5763
  const content = /* @__PURE__ */ jsxs(Fragment, { children: [
5747
- /* @__PURE__ */ jsx(ImageWrap, { children: /* @__PURE__ */ jsx(AspectRatio, { ratio: "4/3", children: imageUrl ? /* @__PURE__ */ jsx(Image, { src: imageUrl, alt: imageAlt ?? name }) : /* @__PURE__ */ jsx(ImagePlaceholder, { "aria-label": imageAlt ?? name, children: /* @__PURE__ */ jsx(ImageIcon, { style: { fontSize: 48 } }) }) }) }),
5748
- /* @__PURE__ */ jsxs(Content, { children: [
5749
- /* @__PURE__ */ jsx(Name, { children: name }),
5750
- count !== void 0 && /* @__PURE__ */ jsxs(Count, { children: [
5751
- count,
5752
- " produkt\xF3w"
5753
- ] })
5754
- ] })
5764
+ /* @__PURE__ */ jsx(ImageWrap, { children: /* @__PURE__ */ jsx(CategoryCardImage, { src: imageUrl, alt: imageAlt ?? name }) }),
5765
+ /* @__PURE__ */ jsx(CategoryCardInfo, { name, count })
5755
5766
  ] });
5756
- return /* @__PURE__ */ jsx(Root16, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: href ? /* @__PURE__ */ jsx(CardLink, { href, children: content }) : content });
5767
+ return /* @__PURE__ */ jsx(Root17, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: href ? /* @__PURE__ */ jsx(CardLink, { href, children: content }) : content });
5757
5768
  }
5758
5769
  );
5759
5770
  CategoryCard.displayName = "CategoryCard";
5760
- var sizeMap5 = {
5761
- sm: "1rem",
5762
- md: "1.25rem",
5763
- lg: "1.5rem"
5764
- };
5765
- var Root17 = styled("div")(({ theme }) => ({
5766
- display: "inline-flex",
5767
- alignItems: "center",
5768
- gap: "0.5rem",
5769
- color: theme.palette.text.secondary,
5770
- fontFamily: theme.typography.fontFamily
5771
- }));
5772
- var Stars = styled("div")({
5773
- display: "inline-flex",
5774
- alignItems: "center",
5775
- gap: "0.125rem"
5776
- });
5777
- var StarButton = styled("button")(
5778
- ({ theme, $size, $active }) => ({
5779
- appearance: "none",
5780
- border: 0,
5781
- background: "transparent",
5782
- padding: 0,
5783
- color: $active ? "#f59e0b" : theme.palette.action.disabled,
5784
- cursor: "pointer",
5785
- fontSize: sizeMap5[$size],
5786
- lineHeight: 1,
5787
- "&:disabled": {
5788
- cursor: "default"
5789
- }
5790
- })
5791
- );
5792
- var Meta = styled("span")(({ theme }) => ({
5793
- fontSize: "0.875rem",
5794
- color: theme.palette.text.secondary
5795
- }));
5796
- var Rating = forwardRef(
5797
- ({ value, max = 5, readonly = true, size = "md", label, count, onChange, ...props }, ref) => {
5798
- const roundedValue = Math.round(value);
5799
- const meta = label ?? (count !== void 0 ? `(${count})` : void 0);
5800
- return /* @__PURE__ */ jsxs(Root17, { ref, "aria-label": `Ocena ${value} z ${max}`, ...props, children: [
5801
- /* @__PURE__ */ jsx(
5802
- Stars,
5803
- {
5804
- role: readonly ? "img" : "radiogroup",
5805
- "aria-label": readonly ? void 0 : "Wybierz ocen\u0119",
5806
- children: Array.from({ length: max }, (_, index) => {
5807
- const starValue = index + 1;
5808
- return /* @__PURE__ */ jsx(
5809
- StarButton,
5810
- {
5811
- type: "button",
5812
- $size: size,
5813
- $active: starValue <= roundedValue,
5814
- disabled: readonly,
5815
- "aria-label": `${starValue} z ${max}`,
5816
- "aria-checked": readonly ? void 0 : starValue === roundedValue,
5817
- role: readonly ? void 0 : "radio",
5818
- onClick: () => onChange?.(starValue),
5819
- children: "\u2605"
5820
- },
5821
- starValue
5822
- );
5823
- })
5824
- }
5825
- ),
5826
- meta && /* @__PURE__ */ jsx(Meta, { children: meta })
5827
- ] });
5828
- }
5829
- );
5830
- Rating.displayName = "Rating";
5831
5771
  var DEFAULT_OMNIBUS_LABEL = "Najni\u017Csza cena z ostatnich 30 dni";
5832
5772
  var FONT_SIZE = {
5833
5773
  sm: "0.875rem",
@@ -5960,7 +5900,142 @@ var Price = forwardRef(
5960
5900
  );
5961
5901
  Price.displayName = "Price";
5962
5902
  var priceSizes = ["sm", "md", "lg", "xl"];
5963
- var Root19 = styled(Card)({
5903
+ function calcTimeLeft(target) {
5904
+ const diff = new Date(target).getTime() - Date.now();
5905
+ if (diff <= 0) return null;
5906
+ return {
5907
+ days: Math.floor(diff / 864e5),
5908
+ hours: Math.floor(diff % 864e5 / 36e5),
5909
+ minutes: Math.floor(diff % 36e5 / 6e4),
5910
+ seconds: Math.floor(diff % 6e4 / 1e3)
5911
+ };
5912
+ }
5913
+ function pad(n) {
5914
+ return String(n).padStart(2, "0");
5915
+ }
5916
+ var Root19 = styled("div", {
5917
+ shouldForwardProp: (prop) => prop !== "$variant"
5918
+ })(({ theme, $variant }) => ({
5919
+ display: "inline-flex",
5920
+ alignItems: "center",
5921
+ justifyContent: "space-between",
5922
+ flexWrap: "wrap",
5923
+ gap: "0.5rem",
5924
+ fontFamily: theme.typography.fontFamily,
5925
+ ...$variant === "card" && {
5926
+ backgroundColor: theme.palette.background.paper,
5927
+ border: `1px solid ${theme.palette.divider}`,
5928
+ borderRadius: theme.shape.borderRadius,
5929
+ padding: "1rem 1.5rem"
5930
+ },
5931
+ ...$variant === "banner" && {
5932
+ backgroundColor: theme.palette.error.main,
5933
+ color: "#fff",
5934
+ borderRadius: theme.shape.borderRadius,
5935
+ padding: "0.75rem 1.25rem"
5936
+ }
5937
+ }));
5938
+ var TimerLabel = styled("span", {
5939
+ shouldForwardProp: (prop) => prop !== "$variant"
5940
+ })(({ theme, $variant }) => ({
5941
+ fontSize: "0.875rem",
5942
+ fontWeight: 600,
5943
+ color: $variant === "banner" ? "rgba(255,255,255,0.85)" : theme.palette.text.secondary,
5944
+ marginRight: "0.25rem"
5945
+ }));
5946
+ var Segments = styled("div")({
5947
+ display: "flex",
5948
+ alignItems: "center",
5949
+ gap: "0.25rem"
5950
+ });
5951
+ var Segment = styled("div", {
5952
+ shouldForwardProp: (prop) => prop !== "$variant"
5953
+ })(({ theme, $variant }) => ({
5954
+ display: "flex",
5955
+ flexDirection: "column",
5956
+ alignItems: "center",
5957
+ minWidth: "2.5rem",
5958
+ ...$variant === "card" && {
5959
+ backgroundColor: theme.palette.action.hover,
5960
+ borderRadius: "0.375rem",
5961
+ padding: "0.375rem 0.5rem"
5962
+ }
5963
+ }));
5964
+ var Value = styled("span", {
5965
+ shouldForwardProp: (prop) => prop !== "$variant"
5966
+ })(({ $variant }) => ({
5967
+ fontSize: $variant === "inline" ? "1rem" : "1.5rem",
5968
+ fontWeight: 700,
5969
+ lineHeight: 1,
5970
+ color: $variant === "banner" ? "#fff" : "inherit"
5971
+ }));
5972
+ var Unit = styled("span", {
5973
+ shouldForwardProp: (prop) => prop !== "$variant"
5974
+ })(({ theme, $variant }) => ({
5975
+ fontSize: "0.6875rem",
5976
+ color: $variant === "banner" ? "rgba(255,255,255,0.7)" : theme.palette.text.secondary,
5977
+ marginTop: "0.125rem"
5978
+ }));
5979
+ var Colon = styled("span", {
5980
+ shouldForwardProp: (prop) => prop !== "$variant"
5981
+ })(({ theme, $variant }) => ({
5982
+ fontSize: $variant === "inline" ? "1rem" : "1.5rem",
5983
+ fontWeight: 700,
5984
+ color: $variant === "banner" ? "rgba(255,255,255,0.6)" : theme.palette.text.disabled,
5985
+ alignSelf: $variant === "card" ? "flex-start" : "center",
5986
+ marginTop: $variant === "card" ? "0.375rem" : 0
5987
+ }));
5988
+ var UNITS = ["dni", "godz", "min", "sek"];
5989
+ var CountdownTimer = forwardRef(
5990
+ ({
5991
+ targetDate,
5992
+ variant = "inline",
5993
+ label,
5994
+ expiredLabel = "Promocja zako\u0144czona",
5995
+ onExpire,
5996
+ ...props
5997
+ }, ref) => {
5998
+ const [timeLeft, setTimeLeft] = useState(() => calcTimeLeft(targetDate));
5999
+ useEffect(() => {
6000
+ const id = setInterval(() => {
6001
+ const tl = calcTimeLeft(targetDate);
6002
+ setTimeLeft(tl);
6003
+ if (!tl) {
6004
+ clearInterval(id);
6005
+ onExpire?.();
6006
+ }
6007
+ }, 1e3);
6008
+ return () => clearInterval(id);
6009
+ }, [targetDate, onExpire]);
6010
+ if (!timeLeft) {
6011
+ return /* @__PURE__ */ jsx(Root19, { ref, $variant: variant, ...props, children: /* @__PURE__ */ jsx(TimerLabel, { $variant: variant, children: expiredLabel }) });
6012
+ }
6013
+ const parts = [timeLeft.days, timeLeft.hours, timeLeft.minutes, timeLeft.seconds];
6014
+ return /* @__PURE__ */ jsxs(
6015
+ Root19,
6016
+ {
6017
+ ref,
6018
+ $variant: variant,
6019
+ "aria-live": "polite",
6020
+ "aria-label": `Czas do ko\u0144ca promocji`,
6021
+ ...props,
6022
+ children: [
6023
+ label && /* @__PURE__ */ jsx(TimerLabel, { $variant: variant, children: label }),
6024
+ /* @__PURE__ */ jsx(Segments, { children: parts.map((val, i) => /* @__PURE__ */ jsxs("div", { style: { display: "contents" }, children: [
6025
+ i > 0 && /* @__PURE__ */ jsx(Colon, { $variant: variant, children: ":" }),
6026
+ /* @__PURE__ */ jsxs(Segment, { $variant: variant, children: [
6027
+ /* @__PURE__ */ jsx(Value, { $variant: variant, children: pad(val) }),
6028
+ variant !== "inline" && /* @__PURE__ */ jsx(Unit, { $variant: variant, children: UNITS[i] })
6029
+ ] })
6030
+ ] }, UNITS[i])) })
6031
+ ]
6032
+ }
6033
+ );
6034
+ }
6035
+ );
6036
+ CountdownTimer.displayName = "CountdownTimer";
6037
+ var countdownTimerVariants = ["inline", "card", "banner"];
6038
+ var Root20 = styled(Card)({
5964
6039
  display: "flex",
5965
6040
  flexDirection: "column",
5966
6041
  height: "100%",
@@ -5970,24 +6045,6 @@ var ImageWrap2 = styled("div")({
5970
6045
  position: "relative",
5971
6046
  margin: "-1.5rem -1.5rem 1rem"
5972
6047
  });
5973
- var Image2 = styled("img")(({ theme }) => ({
5974
- objectFit: "cover",
5975
- backgroundColor: theme.palette.action.hover
5976
- }));
5977
- var ImagePlaceholder2 = styled("div")(({ theme }) => ({
5978
- width: "100%",
5979
- height: "100%",
5980
- backgroundColor: theme.palette.action.hover,
5981
- display: "flex",
5982
- alignItems: "center",
5983
- justifyContent: "center",
5984
- color: theme.palette.text.disabled
5985
- }));
5986
- var BadgeSlot = styled("div")({
5987
- position: "absolute",
5988
- left: "0.75rem",
5989
- top: "0.75rem"
5990
- });
5991
6048
  var Name2 = styled("h3")(({ theme }) => ({
5992
6049
  margin: 0,
5993
6050
  color: theme.palette.text.primary,
@@ -6002,7 +6059,7 @@ var Footer = styled("div")({
6002
6059
  marginTop: "auto",
6003
6060
  paddingTop: "1rem"
6004
6061
  });
6005
- var ProductCard = forwardRef(
6062
+ var DealCard = forwardRef(
6006
6063
  ({
6007
6064
  name,
6008
6065
  imageUrl,
@@ -6011,136 +6068,14 @@ var ProductCard = forwardRef(
6011
6068
  originalPrice,
6012
6069
  currency,
6013
6070
  locale,
6014
- lowestPrice,
6015
- badge,
6016
- badgeVariant = "success",
6017
- rating,
6018
- reviewCount,
6019
- ctaLabel = "Dodaj do koszyka",
6071
+ dealEndsAt,
6072
+ ctaLabel = "Kup teraz",
6020
6073
  onAddToCart,
6021
6074
  ...props
6022
- }, ref) => /* @__PURE__ */ jsxs(Root19, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: [
6023
- /* @__PURE__ */ jsx(ImageWrap2, { children: /* @__PURE__ */ jsxs(AspectRatio, { ratio: "4/3", children: [
6024
- imageUrl ? /* @__PURE__ */ jsx(Image2, { src: imageUrl, alt: imageAlt ?? name }) : /* @__PURE__ */ jsx(ImagePlaceholder2, { "aria-label": imageAlt ?? name, children: /* @__PURE__ */ jsx(ImageIcon, { style: { fontSize: 48 } }) }),
6025
- badge && /* @__PURE__ */ jsx(BadgeSlot, { children: /* @__PURE__ */ jsx(Badge2, { variant: badgeVariant, children: badge }) })
6026
- ] }) }),
6027
- /* @__PURE__ */ jsx(Name2, { children: name }),
6028
- rating !== void 0 && /* @__PURE__ */ jsx(Rating, { value: rating, count: reviewCount, size: "sm" }),
6029
- /* @__PURE__ */ jsx(
6030
- Price,
6031
- {
6032
- price,
6033
- originalPrice,
6034
- currency,
6035
- locale,
6036
- lowestPrice,
6037
- style: { marginTop: "0.5rem" }
6038
- }
6039
- ),
6040
- /* @__PURE__ */ jsx(Footer, { children: /* @__PURE__ */ jsx(Button, { fullWidth: true, onClick: (e) => {
6041
- e.stopPropagation();
6042
- onAddToCart?.();
6043
- }, children: ctaLabel }) })
6044
- ] })
6045
- );
6046
- ProductCard.displayName = "ProductCard";
6047
- var COLLAPSE_AT = "480px";
6048
- var ContainerRoot = styled("div")({
6049
- containerType: "inline-size",
6050
- width: "100%",
6051
- height: "100%"
6052
- });
6053
- var Inner = styled("div")({
6054
- display: "flex",
6055
- flexDirection: "row",
6056
- height: "100%",
6057
- [`@container (max-width: ${COLLAPSE_AT})`]: {
6058
- flexDirection: "column"
6059
- }
6060
- });
6061
- var ImageWrap3 = styled("div")({
6062
- position: "relative",
6063
- flexShrink: 0,
6064
- width: "clamp(120px, 33%, 200px)",
6065
- alignSelf: "stretch",
6066
- margin: "-1.5rem 1rem -1.5rem -1.5rem",
6067
- [`@container (max-width: ${COLLAPSE_AT})`]: {
6068
- width: "auto",
6069
- alignSelf: "auto",
6070
- margin: "-1.5rem -1.5rem 1rem",
6071
- aspectRatio: "4 / 3"
6072
- }
6073
- });
6074
- var Image3 = styled("img")(({ theme }) => ({
6075
- position: "absolute",
6076
- inset: 0,
6077
- width: "100%",
6078
- height: "100%",
6079
- objectFit: "cover",
6080
- backgroundColor: theme.palette.action.hover
6081
- }));
6082
- var ImagePlaceholder3 = styled("div")(({ theme }) => ({
6083
- position: "absolute",
6084
- inset: 0,
6085
- width: "100%",
6086
- height: "100%",
6087
- backgroundColor: theme.palette.action.hover,
6088
- display: "flex",
6089
- alignItems: "center",
6090
- justifyContent: "center",
6091
- color: theme.palette.text.disabled
6092
- }));
6093
- var BadgeSlot2 = styled("div")({
6094
- position: "absolute",
6095
- left: "0.75rem",
6096
- top: "0.75rem",
6097
- zIndex: 1
6098
- });
6099
- var Content2 = styled("div")({
6100
- display: "flex",
6101
- flexDirection: "column",
6102
- flex: 1,
6103
- minWidth: 0
6104
- });
6105
- var Name3 = styled("h3")(({ theme }) => ({
6106
- margin: 0,
6107
- color: theme.palette.text.primary,
6108
- fontFamily: theme.typography.fontFamily,
6109
- fontSize: "1rem",
6110
- fontWeight: 700,
6111
- lineHeight: 1.4
6112
- }));
6113
- var Footer2 = styled("div")({
6114
- display: "grid",
6115
- gap: "1rem",
6116
- marginTop: "auto",
6117
- paddingTop: "1rem"
6118
- });
6119
- var ProductCardHorizontal = forwardRef(
6120
- ({
6121
- name,
6122
- imageUrl,
6123
- imageAlt,
6124
- price,
6125
- originalPrice,
6126
- currency,
6127
- locale,
6128
- lowestPrice,
6129
- badge,
6130
- badgeVariant = "success",
6131
- rating,
6132
- reviewCount,
6133
- ctaLabel = "Dodaj do koszyka",
6134
- onAddToCart,
6135
- ...props
6136
- }, ref) => /* @__PURE__ */ jsx(Card, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: /* @__PURE__ */ jsx(ContainerRoot, { children: /* @__PURE__ */ jsxs(Inner, { children: [
6137
- /* @__PURE__ */ jsxs(ImageWrap3, { children: [
6138
- imageUrl ? /* @__PURE__ */ jsx(Image3, { src: imageUrl, alt: imageAlt ?? name }) : /* @__PURE__ */ jsx(ImagePlaceholder3, { "aria-label": imageAlt ?? name, children: /* @__PURE__ */ jsx(ImageIcon, { style: { fontSize: 48 } }) }),
6139
- badge && /* @__PURE__ */ jsx(BadgeSlot2, { children: /* @__PURE__ */ jsx(Badge2, { variant: badgeVariant, children: badge }) })
6140
- ] }),
6141
- /* @__PURE__ */ jsxs(Content2, { children: [
6142
- /* @__PURE__ */ jsx(Name3, { children: name }),
6143
- rating !== void 0 && /* @__PURE__ */ jsx(Rating, { value: rating, count: reviewCount, size: "sm" }),
6075
+ }, ref) => {
6076
+ return /* @__PURE__ */ jsxs(Root20, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: [
6077
+ /* @__PURE__ */ jsx(ImageWrap2, { children: /* @__PURE__ */ jsx(ProductCardImage, { src: imageUrl, alt: imageAlt ?? name }) }),
6078
+ /* @__PURE__ */ jsx(Name2, { children: name }),
6144
6079
  /* @__PURE__ */ jsx(
6145
6080
  Price,
6146
6081
  {
@@ -6148,14 +6083,22 @@ var ProductCardHorizontal = forwardRef(
6148
6083
  originalPrice,
6149
6084
  currency,
6150
6085
  locale,
6151
- lowestPrice,
6152
6086
  style: { marginTop: "0.5rem" }
6153
6087
  }
6154
6088
  ),
6155
- /* @__PURE__ */ jsx(Footer2, { children: /* @__PURE__ */ jsx(
6089
+ dealEndsAt && /* @__PURE__ */ jsx(
6090
+ CountdownTimer,
6091
+ {
6092
+ targetDate: dealEndsAt,
6093
+ label: "Oferta ko\u0144czy si\u0119 za:",
6094
+ style: { marginTop: "0.75rem" }
6095
+ }
6096
+ ),
6097
+ /* @__PURE__ */ jsx(Footer, { children: /* @__PURE__ */ jsx(
6156
6098
  Button,
6157
6099
  {
6158
6100
  fullWidth: true,
6101
+ variant: "primary",
6159
6102
  onClick: (e) => {
6160
6103
  e.stopPropagation();
6161
6104
  onAddToCart?.();
@@ -6163,10 +6106,10 @@ var ProductCardHorizontal = forwardRef(
6163
6106
  children: ctaLabel
6164
6107
  }
6165
6108
  ) })
6166
- ] })
6167
- ] }) }) })
6109
+ ] });
6110
+ }
6168
6111
  );
6169
- ProductCardHorizontal.displayName = "ProductCardHorizontal";
6112
+ DealCard.displayName = "DealCard";
6170
6113
  var ImageWrapper = styled("div", {
6171
6114
  shouldForwardProp: (prop) => prop !== "$ar"
6172
6115
  })(({ $ar }) => ({
@@ -6176,13 +6119,13 @@ var ImageWrapper = styled("div", {
6176
6119
  overflow: "hidden",
6177
6120
  flexShrink: 0
6178
6121
  }));
6179
- var Img = styled("img")({
6122
+ var Img2 = styled("img")({
6180
6123
  width: "100%",
6181
6124
  height: "100%",
6182
6125
  objectFit: "cover",
6183
6126
  display: "block"
6184
6127
  });
6185
- var Placeholder2 = styled("div")(({ theme }) => ({
6128
+ var Placeholder3 = styled("div")(({ theme }) => ({
6186
6129
  width: "100%",
6187
6130
  height: "100%",
6188
6131
  display: "flex",
@@ -6212,7 +6155,7 @@ var PostCardImage = ({
6212
6155
  const [imgError, setImgError] = useState(false);
6213
6156
  const showPlaceholder = !src || imgError;
6214
6157
  return /* @__PURE__ */ jsxs(ImageWrapper, { $ar: toAspectRatioCss(aspectRatio), className, style, children: [
6215
- showPlaceholder ? /* @__PURE__ */ jsx(Placeholder2, { children: /* @__PURE__ */ jsx(FileTextIcon, {}) }) : /* @__PURE__ */ jsx(Img, { src, alt, onError: () => setImgError(true) }),
6158
+ showPlaceholder ? /* @__PURE__ */ jsx(Placeholder3, { children: /* @__PURE__ */ jsx(FileTextIcon, {}) }) : /* @__PURE__ */ jsx(Img2, { src, alt, onError: () => setImgError(true) }),
6216
6159
  overlay && !showPlaceholder && /* @__PURE__ */ jsx(Overlay, {})
6217
6160
  ] });
6218
6161
  };
@@ -6411,25 +6354,7 @@ var postCardVariants = [
6411
6354
  "featured",
6412
6355
  "compact"
6413
6356
  ];
6414
- var Root20 = styled(Card)({
6415
- display: "flex",
6416
- flexDirection: "column",
6417
- height: "100%"
6418
- });
6419
- var NameRow = styled("div")({
6420
- display: "flex",
6421
- alignItems: "center",
6422
- justifyContent: "space-between",
6423
- marginBottom: "0.75rem"
6424
- });
6425
- var Name4 = styled("p")(({ theme }) => ({
6426
- margin: 0,
6427
- fontFamily: theme.typography.fontFamily,
6428
- fontWeight: 600,
6429
- fontSize: "1rem",
6430
- color: theme.palette.text.primary
6431
- }));
6432
- var PriceRow2 = styled("div")({
6357
+ var Row3 = styled("div")({
6433
6358
  display: "flex",
6434
6359
  alignItems: "baseline",
6435
6360
  gap: "0.25rem"
@@ -6442,7 +6367,7 @@ var Currency = styled("span")(({ theme }) => ({
6442
6367
  alignSelf: "flex-start",
6443
6368
  paddingTop: "0.375rem"
6444
6369
  }));
6445
- var Price2 = styled("span")(({ theme }) => ({
6370
+ var Amount = styled("span")(({ theme }) => ({
6446
6371
  fontFamily: theme.typography.fontFamily,
6447
6372
  fontWeight: 700,
6448
6373
  fontSize: "3rem",
@@ -6454,28 +6379,21 @@ var Period = styled("span")(({ theme }) => ({
6454
6379
  fontSize: "0.875rem",
6455
6380
  color: theme.palette.text.secondary
6456
6381
  }));
6457
- var Description2 = styled("p")(({ theme }) => ({
6458
- margin: "0.75rem 0 0",
6459
- fontFamily: theme.typography.fontFamily,
6460
- fontSize: "0.875rem",
6461
- color: theme.palette.text.secondary,
6462
- lineHeight: 1.6
6463
- }));
6464
- var Divider2 = styled("hr")(({ theme }) => ({
6465
- border: "none",
6466
- borderTop: `1px solid ${theme.palette.divider}`,
6467
- margin: "1.25rem 0"
6468
- }));
6469
- var FeatureList = styled("ul")({
6382
+ var PricingCardPrice = ({ price, currency, period }) => /* @__PURE__ */ jsxs(Row3, { children: [
6383
+ currency && /* @__PURE__ */ jsx(Currency, { children: currency }),
6384
+ /* @__PURE__ */ jsx(Amount, { children: price }),
6385
+ period && /* @__PURE__ */ jsx(Period, { children: period })
6386
+ ] });
6387
+ PricingCardPrice.displayName = "PricingCardPrice";
6388
+ var List = styled("ul")({
6470
6389
  listStyle: "none",
6471
6390
  margin: 0,
6472
6391
  padding: 0,
6473
6392
  display: "flex",
6474
6393
  flexDirection: "column",
6475
- gap: "0.625rem",
6476
- flex: 1
6394
+ gap: "0.625rem"
6477
6395
  });
6478
- var FeatureItem = styled("li", {
6396
+ var Item = styled("li", {
6479
6397
  shouldForwardProp: (prop) => prop !== "$included"
6480
6398
  })(({ theme, $included }) => ({
6481
6399
  display: "flex",
@@ -6485,6 +6403,50 @@ var FeatureItem = styled("li", {
6485
6403
  fontSize: "0.875rem",
6486
6404
  color: $included ? theme.palette.text.primary : theme.palette.text.disabled
6487
6405
  }));
6406
+ function CheckIcon3() {
6407
+ return /* @__PURE__ */ jsx(CheckCircleOutlinedIcon, { "aria-hidden": "true", style: { fontSize: 16, flexShrink: 0 } });
6408
+ }
6409
+ function XIcon3() {
6410
+ return /* @__PURE__ */ jsx(HighlightOffIcon, { "aria-hidden": "true", style: { fontSize: 16, flexShrink: 0 } });
6411
+ }
6412
+ var PricingCardFeatureList = ({ features }) => /* @__PURE__ */ jsx(List, { children: features.map((feature, i) => {
6413
+ const included = feature.included !== false;
6414
+ return /* @__PURE__ */ jsxs(Item, { $included: included, children: [
6415
+ included ? /* @__PURE__ */ jsx(CheckIcon3, {}) : /* @__PURE__ */ jsx(XIcon3, {}),
6416
+ feature.text
6417
+ ] }, i);
6418
+ }) });
6419
+ PricingCardFeatureList.displayName = "PricingCardFeatureList";
6420
+ var Root21 = styled(Card)({
6421
+ display: "flex",
6422
+ flexDirection: "column",
6423
+ height: "100%"
6424
+ });
6425
+ var NameRow = styled("div")({
6426
+ display: "flex",
6427
+ alignItems: "center",
6428
+ justifyContent: "space-between",
6429
+ marginBottom: "0.75rem"
6430
+ });
6431
+ var Name3 = styled("p")(({ theme }) => ({
6432
+ margin: 0,
6433
+ fontFamily: theme.typography.fontFamily,
6434
+ fontWeight: 600,
6435
+ fontSize: "1rem",
6436
+ color: theme.palette.text.primary
6437
+ }));
6438
+ var Description2 = styled("p")(({ theme }) => ({
6439
+ margin: "0.75rem 0 0",
6440
+ fontFamily: theme.typography.fontFamily,
6441
+ fontSize: "0.875rem",
6442
+ color: theme.palette.text.secondary,
6443
+ lineHeight: 1.6
6444
+ }));
6445
+ var Divider2 = styled("hr")(({ theme }) => ({
6446
+ border: "none",
6447
+ borderTop: `1px solid ${theme.palette.divider}`,
6448
+ margin: "1.25rem 0"
6449
+ }));
6488
6450
  var CtaLink = styled("a", {
6489
6451
  shouldForwardProp: (prop) => prop !== "$variant"
6490
6452
  })(({ theme, $variant }) => ({
@@ -6517,12 +6479,6 @@ var CtaLink = styled("a", {
6517
6479
  var CtaWrapper = styled("div")({
6518
6480
  marginTop: "1.5rem"
6519
6481
  });
6520
- function CheckIcon3() {
6521
- return /* @__PURE__ */ jsx(CheckCircleOutlinedIcon, { "aria-hidden": "true", style: { fontSize: 16, flexShrink: 0 } });
6522
- }
6523
- function XIcon3() {
6524
- return /* @__PURE__ */ jsx(HighlightOffIcon, { "aria-hidden": "true", style: { fontSize: 16, flexShrink: 0 } });
6525
- }
6526
6482
  var PricingCard = forwardRef(
6527
6483
  ({
6528
6484
  name,
@@ -6542,141 +6498,376 @@ var PricingCard = forwardRef(
6542
6498
  }, ref) => {
6543
6499
  const resolvedCardVariant = cardVariant ?? (popular ? "gradient-primary" : "default");
6544
6500
  const resolvedCtaVariant = ctaVariant ?? (popular ? "primary" : "ghost");
6545
- return /* @__PURE__ */ jsxs(Root20, { ref, variant: resolvedCardVariant, padding: "lg", rounded: "lg", ...props, children: [
6501
+ return /* @__PURE__ */ jsxs(Root21, { ref, variant: resolvedCardVariant, padding: "lg", rounded: "lg", ...props, children: [
6546
6502
  /* @__PURE__ */ jsxs(NameRow, { children: [
6547
- /* @__PURE__ */ jsx(Name4, { children: name }),
6503
+ /* @__PURE__ */ jsx(Name3, { children: name }),
6548
6504
  popular && /* @__PURE__ */ jsx(Badge2, { variant: "default", children: popularLabel })
6549
6505
  ] }),
6550
- /* @__PURE__ */ jsxs(PriceRow2, { children: [
6551
- currency && /* @__PURE__ */ jsx(Currency, { children: currency }),
6552
- /* @__PURE__ */ jsx(Price2, { children: price }),
6553
- period && /* @__PURE__ */ jsx(Period, { children: period })
6554
- ] }),
6506
+ /* @__PURE__ */ jsx(PricingCardPrice, { price, currency, period }),
6555
6507
  description && /* @__PURE__ */ jsx(Description2, { children: description }),
6556
6508
  features.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
6557
6509
  /* @__PURE__ */ jsx(Divider2, {}),
6558
- /* @__PURE__ */ jsx(FeatureList, { children: features.map((feature, i) => {
6559
- const included = feature.included !== false;
6560
- return /* @__PURE__ */ jsxs(FeatureItem, { $included: included, children: [
6561
- included ? /* @__PURE__ */ jsx(CheckIcon3, {}) : /* @__PURE__ */ jsx(XIcon3, {}),
6562
- feature.text
6563
- ] }, i);
6564
- }) })
6510
+ /* @__PURE__ */ jsx(PricingCardFeatureList, { features })
6565
6511
  ] }),
6566
6512
  /* @__PURE__ */ jsx(CtaWrapper, { children: href ? /* @__PURE__ */ jsx(CtaLink, { href, $variant: resolvedCtaVariant, children: ctaLabel }) : /* @__PURE__ */ jsx(Button, { variant: resolvedCtaVariant, fullWidth: true, onClick: onCtaClick, children: ctaLabel }) })
6567
6513
  ] });
6568
6514
  }
6569
6515
  );
6570
6516
  PricingCard.displayName = "PricingCard";
6571
- var Root21 = styled(Card, {
6572
- shouldForwardProp: (prop) => prop !== "$align"
6573
- })(({ $align }) => ({
6574
- textAlign: $align,
6575
- height: "100%"
6576
- }));
6577
- var Value = styled("p")(({ theme }) => ({
6578
- margin: 0,
6579
- fontFamily: theme.typography.fontFamily,
6580
- fontSize: "2.5rem",
6581
- fontWeight: 800,
6582
- letterSpacing: "-0.03em",
6583
- color: theme.palette.primary.main,
6584
- lineHeight: 1.1
6585
- }));
6586
- var Label3 = styled("p")(({ theme }) => ({
6587
- margin: "0.5rem 0 0",
6588
- fontFamily: theme.typography.fontFamily,
6589
- fontSize: "1rem",
6590
- fontWeight: 600,
6591
- color: theme.palette.text.primary
6592
- }));
6593
- var Description3 = styled("p")(({ theme }) => ({
6594
- margin: "0.375rem 0 0",
6595
- fontFamily: theme.typography.fontFamily,
6596
- fontSize: "0.875rem",
6517
+ var sizeMap5 = {
6518
+ sm: "1rem",
6519
+ md: "1.25rem",
6520
+ lg: "1.5rem"
6521
+ };
6522
+ var Root22 = styled("div")(({ theme }) => ({
6523
+ display: "inline-flex",
6524
+ alignItems: "center",
6525
+ gap: "0.5rem",
6597
6526
  color: theme.palette.text.secondary,
6598
- lineHeight: 1.5
6527
+ fontFamily: theme.typography.fontFamily
6599
6528
  }));
6600
- var StatCard = forwardRef(
6601
- ({ stat, cardVariant = "default", align = "center", ...props }, ref) => /* @__PURE__ */ jsxs(Root21, { ref, variant: cardVariant, padding: "lg", rounded: "lg", $align: align, ...props, children: [
6602
- /* @__PURE__ */ jsx(Value, { children: stat.value }),
6603
- /* @__PURE__ */ jsx(Label3, { children: stat.label }),
6604
- stat.description && /* @__PURE__ */ jsx(Description3, { children: stat.description })
6605
- ] })
6606
- );
6607
- StatCard.displayName = "StatCard";
6608
- var Root22 = styled(Card)({
6609
- display: "flex",
6610
- flexDirection: "column",
6611
- gap: "1.25rem",
6612
- height: "100%"
6529
+ var Stars = styled("div")({
6530
+ display: "inline-flex",
6531
+ alignItems: "center",
6532
+ gap: "0.125rem"
6613
6533
  });
6614
- var Quote = styled("blockquote")(({ theme }) => ({
6615
- margin: 0,
6616
- fontFamily: theme.typography.fontFamily,
6617
- fontSize: "0.9375rem",
6618
- color: theme.palette.text.secondary,
6619
- lineHeight: 1.7,
6620
- flex: 1,
6621
- "&::before": {
6622
- content: '"\u201C"',
6623
- color: theme.palette.primary.main,
6624
- fontWeight: 700,
6625
- marginRight: "0.125rem"
6626
- },
6627
- "&::after": {
6628
- content: '"\u201D"',
6629
- color: theme.palette.primary.main,
6630
- fontWeight: 700,
6631
- marginLeft: "0.125rem"
6534
+ var StarButton = styled("button")(
6535
+ ({ theme, $size, $active }) => ({
6536
+ appearance: "none",
6537
+ border: 0,
6538
+ background: "transparent",
6539
+ padding: 0,
6540
+ color: $active ? "#f59e0b" : theme.palette.action.disabled,
6541
+ cursor: "pointer",
6542
+ fontSize: sizeMap5[$size],
6543
+ lineHeight: 1,
6544
+ "&:disabled": {
6545
+ cursor: "default"
6546
+ }
6547
+ })
6548
+ );
6549
+ var Meta = styled("span")(({ theme }) => ({
6550
+ fontSize: "0.875rem",
6551
+ color: theme.palette.text.secondary
6552
+ }));
6553
+ var Rating = forwardRef(
6554
+ ({ value, max = 5, readonly = true, size = "md", label, count, onChange, ...props }, ref) => {
6555
+ const roundedValue = Math.round(value);
6556
+ const meta = label ?? (count !== void 0 ? `(${count})` : void 0);
6557
+ return /* @__PURE__ */ jsxs(Root22, { ref, "aria-label": `Ocena ${value} z ${max}`, ...props, children: [
6558
+ /* @__PURE__ */ jsx(
6559
+ Stars,
6560
+ {
6561
+ role: readonly ? "img" : "radiogroup",
6562
+ "aria-label": readonly ? void 0 : "Wybierz ocen\u0119",
6563
+ children: Array.from({ length: max }, (_, index) => {
6564
+ const starValue = index + 1;
6565
+ return /* @__PURE__ */ jsx(
6566
+ StarButton,
6567
+ {
6568
+ type: "button",
6569
+ $size: size,
6570
+ $active: starValue <= roundedValue,
6571
+ disabled: readonly,
6572
+ "aria-label": `${starValue} z ${max}`,
6573
+ "aria-checked": readonly ? void 0 : starValue === roundedValue,
6574
+ role: readonly ? void 0 : "radio",
6575
+ onClick: () => onChange?.(starValue),
6576
+ children: "\u2605"
6577
+ },
6578
+ starValue
6579
+ );
6580
+ })
6581
+ }
6582
+ ),
6583
+ meta && /* @__PURE__ */ jsx(Meta, { children: meta })
6584
+ ] });
6632
6585
  }
6586
+ );
6587
+ Rating.displayName = "Rating";
6588
+ var Img3 = styled("img")(({ theme }) => ({
6589
+ position: "absolute",
6590
+ inset: 0,
6591
+ width: "100%",
6592
+ height: "100%",
6593
+ objectFit: "cover",
6594
+ backgroundColor: theme.palette.action.hover
6633
6595
  }));
6634
- var Footer3 = styled("div")({
6596
+ var Placeholder4 = styled("div")(({ theme }) => ({
6597
+ position: "absolute",
6598
+ inset: 0,
6599
+ width: "100%",
6600
+ height: "100%",
6601
+ backgroundColor: theme.palette.action.hover,
6635
6602
  display: "flex",
6636
6603
  alignItems: "center",
6637
- gap: "0.75rem"
6604
+ justifyContent: "center",
6605
+ color: theme.palette.text.disabled
6606
+ }));
6607
+ var BadgeSlot = styled("div")({
6608
+ position: "absolute",
6609
+ left: "0.75rem",
6610
+ top: "0.75rem",
6611
+ zIndex: 1
6638
6612
  });
6639
- var AvatarImage = styled("img")({
6640
- width: "2.5rem",
6641
- height: "2.5rem",
6642
- borderRadius: "50%",
6643
- objectFit: "cover",
6644
- flexShrink: 0
6613
+ var ProductCardImage = ({
6614
+ src,
6615
+ alt,
6616
+ badge,
6617
+ badgeVariant = "success"
6618
+ }) => /* @__PURE__ */ jsxs(Fragment, { children: [
6619
+ src ? /* @__PURE__ */ jsx(Img3, { src, alt }) : /* @__PURE__ */ jsx(Placeholder4, { "aria-label": alt, children: /* @__PURE__ */ jsx(ImageIcon, { style: { fontSize: 48 } }) }),
6620
+ badge && /* @__PURE__ */ jsx(BadgeSlot, { children: /* @__PURE__ */ jsx(Badge2, { variant: badgeVariant, children: badge }) })
6621
+ ] });
6622
+ ProductCardImage.displayName = "ProductCardImage";
6623
+ var Root23 = styled(Card)({
6624
+ display: "flex",
6625
+ flexDirection: "column",
6626
+ height: "100%",
6627
+ overflow: "hidden"
6628
+ });
6629
+ var ImageWrap3 = styled("div")({
6630
+ position: "relative",
6631
+ aspectRatio: "4 / 3",
6632
+ margin: "-1.5rem -1.5rem 1rem"
6633
+ });
6634
+ var Name4 = styled("h3")(({ theme }) => ({
6635
+ margin: 0,
6636
+ color: theme.palette.text.primary,
6637
+ fontFamily: theme.typography.fontFamily,
6638
+ fontSize: "1rem",
6639
+ fontWeight: 700,
6640
+ lineHeight: 1.4
6641
+ }));
6642
+ var Footer2 = styled("div")({
6643
+ display: "grid",
6644
+ gap: "1rem",
6645
+ marginTop: "auto",
6646
+ paddingTop: "1rem"
6647
+ });
6648
+ var ProductCard = forwardRef(
6649
+ ({
6650
+ name,
6651
+ imageUrl,
6652
+ imageAlt,
6653
+ price,
6654
+ originalPrice,
6655
+ currency,
6656
+ locale,
6657
+ lowestPrice,
6658
+ badge,
6659
+ badgeVariant = "success",
6660
+ rating,
6661
+ reviewCount,
6662
+ ctaLabel = "Dodaj do koszyka",
6663
+ onAddToCart,
6664
+ ...props
6665
+ }, ref) => /* @__PURE__ */ jsxs(Root23, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: [
6666
+ /* @__PURE__ */ jsx(ImageWrap3, { children: /* @__PURE__ */ jsx(ProductCardImage, { src: imageUrl, alt: imageAlt ?? name, badge, badgeVariant }) }),
6667
+ /* @__PURE__ */ jsx(Name4, { children: name }),
6668
+ rating !== void 0 && /* @__PURE__ */ jsx(Rating, { value: rating, count: reviewCount, size: "sm" }),
6669
+ /* @__PURE__ */ jsx(
6670
+ Price,
6671
+ {
6672
+ price,
6673
+ originalPrice,
6674
+ currency,
6675
+ locale,
6676
+ lowestPrice,
6677
+ style: { marginTop: "0.5rem" }
6678
+ }
6679
+ ),
6680
+ /* @__PURE__ */ jsx(Footer2, { children: /* @__PURE__ */ jsx(Button, { fullWidth: true, onClick: (e) => {
6681
+ e.stopPropagation();
6682
+ onAddToCart?.();
6683
+ }, children: ctaLabel }) })
6684
+ ] })
6685
+ );
6686
+ ProductCard.displayName = "ProductCard";
6687
+ var COLLAPSE_AT = "480px";
6688
+ var ContainerRoot = styled("div")({
6689
+ containerType: "inline-size",
6690
+ width: "100%",
6691
+ height: "100%"
6692
+ });
6693
+ var Inner = styled("div")({
6694
+ display: "flex",
6695
+ flexDirection: "row",
6696
+ height: "100%",
6697
+ [`@container (max-width: ${COLLAPSE_AT})`]: {
6698
+ flexDirection: "column"
6699
+ }
6645
6700
  });
6646
- var AuthorInfo = styled("div")({
6701
+ var ImageWrap4 = styled("div")({
6702
+ position: "relative",
6703
+ flexShrink: 0,
6704
+ width: "clamp(120px, 33%, 200px)",
6705
+ alignSelf: "stretch",
6706
+ margin: "-1.5rem 1rem -1.5rem -1.5rem",
6707
+ [`@container (max-width: ${COLLAPSE_AT})`]: {
6708
+ width: "auto",
6709
+ alignSelf: "auto",
6710
+ margin: "-1.5rem -1.5rem 1rem",
6711
+ aspectRatio: "4 / 3"
6712
+ }
6713
+ });
6714
+ var Content = styled("div")({
6715
+ display: "flex",
6716
+ flexDirection: "column",
6717
+ flex: 1,
6647
6718
  minWidth: 0
6648
6719
  });
6649
- var AuthorName = styled("p")(({ theme }) => ({
6720
+ var Name5 = styled("h3")(({ theme }) => ({
6650
6721
  margin: 0,
6722
+ color: theme.palette.text.primary,
6651
6723
  fontFamily: theme.typography.fontFamily,
6652
- fontSize: "0.875rem",
6724
+ fontSize: "1rem",
6653
6725
  fontWeight: 700,
6726
+ lineHeight: 1.4
6727
+ }));
6728
+ var Footer3 = styled("div")({
6729
+ display: "grid",
6730
+ gap: "1rem",
6731
+ marginTop: "auto",
6732
+ paddingTop: "1rem"
6733
+ });
6734
+ var ProductCardHorizontal = forwardRef(
6735
+ ({
6736
+ name,
6737
+ imageUrl,
6738
+ imageAlt,
6739
+ price,
6740
+ originalPrice,
6741
+ currency,
6742
+ locale,
6743
+ lowestPrice,
6744
+ badge,
6745
+ badgeVariant = "success",
6746
+ rating,
6747
+ reviewCount,
6748
+ ctaLabel = "Dodaj do koszyka",
6749
+ onAddToCart,
6750
+ ...props
6751
+ }, ref) => /* @__PURE__ */ jsx(Card, { ref, variant: "default", padding: "md", rounded: "lg", ...props, children: /* @__PURE__ */ jsx(ContainerRoot, { children: /* @__PURE__ */ jsxs(Inner, { children: [
6752
+ /* @__PURE__ */ jsx(ImageWrap4, { children: /* @__PURE__ */ jsx(ProductCardImage, { src: imageUrl, alt: imageAlt ?? name, badge, badgeVariant }) }),
6753
+ /* @__PURE__ */ jsxs(Content, { children: [
6754
+ /* @__PURE__ */ jsx(Name5, { children: name }),
6755
+ rating !== void 0 && /* @__PURE__ */ jsx(Rating, { value: rating, count: reviewCount, size: "sm" }),
6756
+ /* @__PURE__ */ jsx(
6757
+ Price,
6758
+ {
6759
+ price,
6760
+ originalPrice,
6761
+ currency,
6762
+ locale,
6763
+ lowestPrice,
6764
+ style: { marginTop: "0.5rem" }
6765
+ }
6766
+ ),
6767
+ /* @__PURE__ */ jsx(Footer3, { children: /* @__PURE__ */ jsx(
6768
+ Button,
6769
+ {
6770
+ fullWidth: true,
6771
+ onClick: (e) => {
6772
+ e.stopPropagation();
6773
+ onAddToCart?.();
6774
+ },
6775
+ children: ctaLabel
6776
+ }
6777
+ ) })
6778
+ ] })
6779
+ ] }) }) })
6780
+ );
6781
+ ProductCardHorizontal.displayName = "ProductCardHorizontal";
6782
+ var Root24 = styled(Card, {
6783
+ shouldForwardProp: (prop) => prop !== "$align"
6784
+ })(({ $align }) => ({
6785
+ textAlign: $align,
6786
+ height: "100%"
6787
+ }));
6788
+ var Value2 = styled("p")(({ theme }) => ({
6789
+ margin: 0,
6790
+ fontFamily: theme.typography.fontFamily,
6791
+ fontSize: "2.5rem",
6792
+ fontWeight: 800,
6793
+ letterSpacing: "-0.03em",
6794
+ color: theme.palette.primary.main,
6795
+ lineHeight: 1.1
6796
+ }));
6797
+ var Label3 = styled("p")(({ theme }) => ({
6798
+ margin: "0.5rem 0 0",
6799
+ fontFamily: theme.typography.fontFamily,
6800
+ fontSize: "1rem",
6801
+ fontWeight: 600,
6654
6802
  color: theme.palette.text.primary
6655
6803
  }));
6656
- var AuthorRole = styled("p")(({ theme }) => ({
6657
- margin: "0.125rem 0 0",
6804
+ var Description3 = styled("p")(({ theme }) => ({
6805
+ margin: "0.375rem 0 0",
6658
6806
  fontFamily: theme.typography.fontFamily,
6659
- fontSize: "0.8125rem",
6660
- color: theme.palette.text.secondary
6807
+ fontSize: "0.875rem",
6808
+ color: theme.palette.text.secondary,
6809
+ lineHeight: 1.5
6661
6810
  }));
6662
- var TestimonialCard = forwardRef(
6663
- ({ testimonial, cardVariant = "default", ...props }, ref) => {
6664
- const initials = testimonial.authorInitials ?? testimonial.authorName.split(" ").filter(Boolean).slice(0, 2).map((p) => p[0]).join("").toUpperCase();
6665
- return /* @__PURE__ */ jsxs(Root22, { ref, variant: cardVariant, padding: "lg", rounded: "lg", ...props, children: [
6666
- testimonial.rating && /* @__PURE__ */ jsx(Rating, { value: testimonial.rating, readonly: true, size: "sm" }),
6667
- /* @__PURE__ */ jsx(Quote, { children: testimonial.quote }),
6668
- /* @__PURE__ */ jsxs(Footer3, { children: [
6669
- testimonial.authorAvatarUrl ? /* @__PURE__ */ jsx(AvatarImage, { src: testimonial.authorAvatarUrl, alt: testimonial.authorName }) : /* @__PURE__ */ jsx(Avatar, { initials, size: "md", color: "primary" }),
6670
- /* @__PURE__ */ jsxs(AuthorInfo, { children: [
6671
- /* @__PURE__ */ jsx(AuthorName, { children: testimonial.authorName }),
6672
- testimonial.authorRole && /* @__PURE__ */ jsx(AuthorRole, { children: testimonial.authorRole })
6673
- ] })
6674
- ] })
6675
- ] });
6676
- }
6811
+ var StatCard = forwardRef(
6812
+ ({ stat, cardVariant = "default", align = "center", ...props }, ref) => /* @__PURE__ */ jsxs(Root24, { ref, variant: cardVariant, padding: "lg", rounded: "lg", $align: align, ...props, children: [
6813
+ /* @__PURE__ */ jsx(Value2, { children: stat.value }),
6814
+ /* @__PURE__ */ jsx(Label3, { children: stat.label }),
6815
+ stat.description && /* @__PURE__ */ jsx(Description3, { children: stat.description })
6816
+ ] })
6677
6817
  );
6678
- TestimonialCard.displayName = "TestimonialCard";
6679
- var Root23 = styled(Card)(({ theme }) => ({
6818
+ StatCard.displayName = "StatCard";
6819
+ var Img4 = styled("img")({
6820
+ width: "4rem",
6821
+ height: "4rem",
6822
+ flexShrink: 0,
6823
+ borderRadius: "50%",
6824
+ objectFit: "cover"
6825
+ });
6826
+ function deriveInitials(name) {
6827
+ return name.split(" ").filter(Boolean).slice(0, 2).map((part) => part[0]).join("").toUpperCase();
6828
+ }
6829
+ var TeamMemberAvatar = ({
6830
+ name,
6831
+ avatarUrl,
6832
+ avatarAlt,
6833
+ initials,
6834
+ avatarColor = "primary"
6835
+ }) => {
6836
+ if (avatarUrl) {
6837
+ return /* @__PURE__ */ jsx(Img4, { src: avatarUrl, alt: avatarAlt ?? name });
6838
+ }
6839
+ return /* @__PURE__ */ jsx(
6840
+ Avatar,
6841
+ {
6842
+ initials: initials ?? deriveInitials(name),
6843
+ size: "xl",
6844
+ color: avatarColor
6845
+ }
6846
+ );
6847
+ };
6848
+ TeamMemberAvatar.displayName = "TeamMemberAvatar";
6849
+ var Root25 = styled("div")({ minWidth: 0 });
6850
+ var Name6 = styled("h3")(({ theme }) => ({
6851
+ margin: 0,
6852
+ color: theme.palette.text.primary,
6853
+ fontFamily: theme.typography.fontFamily,
6854
+ fontSize: "1rem",
6855
+ fontWeight: 700,
6856
+ lineHeight: 1.4
6857
+ }));
6858
+ var Role = styled("p")(({ theme }) => ({
6859
+ margin: "0.25rem 0 0",
6860
+ color: theme.palette.text.secondary,
6861
+ fontFamily: theme.typography.fontFamily,
6862
+ fontSize: "0.875rem",
6863
+ lineHeight: 1.5
6864
+ }));
6865
+ var TeamMemberInfo = ({ name, role }) => /* @__PURE__ */ jsxs(Root25, { children: [
6866
+ /* @__PURE__ */ jsx(Name6, { children: name }),
6867
+ role && /* @__PURE__ */ jsx(Role, { children: role })
6868
+ ] });
6869
+ TeamMemberInfo.displayName = "TeamMemberInfo";
6870
+ var Root26 = styled(Card)(({ theme }) => ({
6680
6871
  display: "flex",
6681
6872
  alignItems: "center",
6682
6873
  gap: "1rem",
@@ -6688,47 +6879,198 @@ var Root23 = styled(Card)(({ theme }) => ({
6688
6879
  transform: "translateY(-2px)"
6689
6880
  }
6690
6881
  }));
6691
- var AvatarImage2 = styled("img")({
6692
- width: "4rem",
6693
- height: "4rem",
6694
- flexShrink: 0,
6695
- borderRadius: "50%",
6696
- objectFit: "cover"
6882
+ var TeamMemberCard = forwardRef(
6883
+ ({ member, cardVariant = "default", ...props }, ref) => /* @__PURE__ */ jsxs(Root26, { ref, variant: cardVariant, padding: "lg", rounded: "lg", ...props, children: [
6884
+ /* @__PURE__ */ jsx(
6885
+ TeamMemberAvatar,
6886
+ {
6887
+ name: member.name,
6888
+ avatarUrl: member.avatarUrl,
6889
+ avatarAlt: member.avatarAlt,
6890
+ initials: member.initials,
6891
+ avatarColor: member.avatarColor
6892
+ }
6893
+ ),
6894
+ /* @__PURE__ */ jsx(TeamMemberInfo, { name: member.name, role: member.role })
6895
+ ] })
6896
+ );
6897
+ TeamMemberCard.displayName = "TeamMemberCard";
6898
+ var Quote = styled("blockquote")(({ theme }) => ({
6899
+ margin: 0,
6900
+ fontFamily: theme.typography.fontFamily,
6901
+ fontSize: "0.9375rem",
6902
+ color: theme.palette.text.secondary,
6903
+ lineHeight: 1.7,
6904
+ flex: 1,
6905
+ "&::before": {
6906
+ content: '"\u201C"',
6907
+ color: theme.palette.primary.main,
6908
+ fontWeight: 700,
6909
+ marginRight: "0.125rem"
6910
+ },
6911
+ "&::after": {
6912
+ content: '"\u201D"',
6913
+ color: theme.palette.primary.main,
6914
+ fontWeight: 700,
6915
+ marginLeft: "0.125rem"
6916
+ }
6917
+ }));
6918
+ var TestimonialQuote = ({ quote }) => /* @__PURE__ */ jsx(Quote, { children: quote });
6919
+ TestimonialQuote.displayName = "TestimonialQuote";
6920
+ var Root27 = styled("div")({
6921
+ display: "flex",
6922
+ alignItems: "center",
6923
+ gap: "0.75rem"
6697
6924
  });
6698
- var Content3 = styled("div")({
6699
- minWidth: 0
6925
+ var AvatarImg = styled("img")({
6926
+ width: "2.5rem",
6927
+ height: "2.5rem",
6928
+ borderRadius: "50%",
6929
+ objectFit: "cover",
6930
+ flexShrink: 0
6700
6931
  });
6701
- var Name5 = styled("h3")(({ theme }) => ({
6932
+ var Info = styled("div")({ minWidth: 0 });
6933
+ var Name7 = styled("p")(({ theme }) => ({
6702
6934
  margin: 0,
6703
- color: theme.palette.text.primary,
6704
6935
  fontFamily: theme.typography.fontFamily,
6705
- fontSize: "1rem",
6936
+ fontSize: "0.875rem",
6706
6937
  fontWeight: 700,
6707
- lineHeight: 1.4
6938
+ color: theme.palette.text.primary
6708
6939
  }));
6709
- var Role = styled("p")(({ theme }) => ({
6710
- margin: "0.25rem 0 0",
6711
- color: theme.palette.text.secondary,
6940
+ var Role2 = styled("p")(({ theme }) => ({
6941
+ margin: "0.125rem 0 0",
6942
+ fontFamily: theme.typography.fontFamily,
6943
+ fontSize: "0.8125rem",
6944
+ color: theme.palette.text.secondary
6945
+ }));
6946
+ function deriveInitials2(name) {
6947
+ return name.split(" ").filter(Boolean).slice(0, 2).map((p) => p[0]).join("").toUpperCase();
6948
+ }
6949
+ var TestimonialAuthor = ({
6950
+ authorName,
6951
+ authorRole,
6952
+ authorAvatarUrl,
6953
+ authorInitials
6954
+ }) => /* @__PURE__ */ jsxs(Root27, { children: [
6955
+ authorAvatarUrl ? /* @__PURE__ */ jsx(AvatarImg, { src: authorAvatarUrl, alt: authorName }) : /* @__PURE__ */ jsx(Avatar, { initials: authorInitials ?? deriveInitials2(authorName), size: "md", color: "primary" }),
6956
+ /* @__PURE__ */ jsxs(Info, { children: [
6957
+ /* @__PURE__ */ jsx(Name7, { children: authorName }),
6958
+ authorRole && /* @__PURE__ */ jsx(Role2, { children: authorRole })
6959
+ ] })
6960
+ ] });
6961
+ TestimonialAuthor.displayName = "TestimonialAuthor";
6962
+ var Root28 = styled(Card)({
6963
+ display: "flex",
6964
+ flexDirection: "column",
6965
+ gap: "1.25rem",
6966
+ height: "100%"
6967
+ });
6968
+ var TestimonialCard = forwardRef(
6969
+ ({ testimonial, cardVariant = "default", ...props }, ref) => /* @__PURE__ */ jsxs(Root28, { ref, variant: cardVariant, padding: "lg", rounded: "lg", ...props, children: [
6970
+ testimonial.rating && /* @__PURE__ */ jsx(Rating, { value: testimonial.rating, readonly: true, size: "sm" }),
6971
+ /* @__PURE__ */ jsx(TestimonialQuote, { quote: testimonial.quote }),
6972
+ /* @__PURE__ */ jsx(
6973
+ TestimonialAuthor,
6974
+ {
6975
+ authorName: testimonial.authorName,
6976
+ authorRole: testimonial.authorRole,
6977
+ authorAvatarUrl: testimonial.authorAvatarUrl,
6978
+ authorInitials: testimonial.authorInitials
6979
+ }
6980
+ )
6981
+ ] })
6982
+ );
6983
+ TestimonialCard.displayName = "TestimonialCard";
6984
+ var Root29 = styled("div")(({ theme }) => ({
6985
+ position: "relative",
6986
+ padding: "1.5rem",
6987
+ borderRadius: "1rem",
6988
+ border: `2px dashed ${theme.palette.primary.main}`,
6989
+ backgroundColor: theme.palette.background.paper,
6712
6990
  fontFamily: theme.typography.fontFamily,
6991
+ display: "flex",
6992
+ flexDirection: "column",
6993
+ gap: "1rem"
6994
+ }));
6995
+ var Header = styled("div")({
6996
+ display: "flex",
6997
+ alignItems: "center",
6998
+ gap: "0.75rem"
6999
+ });
7000
+ var Discount = styled("span")(({ theme }) => ({
7001
+ fontSize: "2rem",
7002
+ fontWeight: 800,
7003
+ lineHeight: 1,
7004
+ color: theme.palette.primary.main
7005
+ }));
7006
+ var Description4 = styled("p")(({ theme }) => ({
7007
+ margin: 0,
6713
7008
  fontSize: "0.875rem",
7009
+ color: theme.palette.text.secondary,
6714
7010
  lineHeight: 1.5
6715
7011
  }));
6716
- function getInitials(member) {
6717
- if (member.initials) {
6718
- return member.initials;
7012
+ var CodeRow = styled("div")(({ theme }) => ({
7013
+ display: "flex",
7014
+ alignItems: "center",
7015
+ gap: "0.5rem",
7016
+ padding: "0.625rem 1rem",
7017
+ backgroundColor: theme.palette.action.hover,
7018
+ borderRadius: theme.shape.borderRadius
7019
+ }));
7020
+ var Code = styled("span")(({ theme }) => ({
7021
+ flex: 1,
7022
+ fontFamily: "monospace",
7023
+ fontSize: "1rem",
7024
+ fontWeight: 700,
7025
+ letterSpacing: "0.1em",
7026
+ color: theme.palette.text.primary,
7027
+ userSelect: "all"
7028
+ }));
7029
+ var CopyButton = styled("button")(({ theme }) => ({
7030
+ border: 0,
7031
+ background: "transparent",
7032
+ color: theme.palette.primary.main,
7033
+ cursor: "pointer",
7034
+ padding: "0.25rem",
7035
+ display: "flex",
7036
+ alignItems: "center",
7037
+ borderRadius: theme.shape.borderRadius,
7038
+ transition: "background-color 150ms ease",
7039
+ "&:hover": {
7040
+ backgroundColor: theme.palette.action.hover
6719
7041
  }
6720
- return member.name.split(" ").filter(Boolean).slice(0, 2).map((part) => part[0]).join("").toUpperCase();
6721
- }
6722
- var TeamMemberCard = forwardRef(
6723
- ({ member, cardVariant = "default", ...props }, ref) => /* @__PURE__ */ jsxs(Root23, { ref, variant: cardVariant, padding: "lg", rounded: "lg", ...props, children: [
6724
- member.avatarUrl ? /* @__PURE__ */ jsx(AvatarImage2, { src: member.avatarUrl, alt: member.avatarAlt ?? member.name }) : /* @__PURE__ */ jsx(Avatar, { initials: getInitials(member), size: "xl", color: member.avatarColor ?? "primary" }),
6725
- /* @__PURE__ */ jsxs(Content3, { children: [
6726
- /* @__PURE__ */ jsx(Name5, { children: member.name }),
6727
- /* @__PURE__ */ jsx(Role, { children: member.role })
7042
+ }));
7043
+ var Expiry = styled("p")(({ theme }) => ({
7044
+ margin: 0,
7045
+ fontSize: "0.75rem",
7046
+ color: theme.palette.text.disabled
7047
+ }));
7048
+ var VoucherCard = forwardRef(
7049
+ ({ code, discount, description, expiresAt, copied = false, onCopy, ...props }, ref) => /* @__PURE__ */ jsxs(Root29, { ref, ...props, children: [
7050
+ /* @__PURE__ */ jsxs(Header, { children: [
7051
+ /* @__PURE__ */ jsx(LocalOfferIcon, { style: { fontSize: 20 }, color: "primary" }),
7052
+ /* @__PURE__ */ jsx(Discount, { children: discount })
7053
+ ] }),
7054
+ description && /* @__PURE__ */ jsx(Description4, { children: description }),
7055
+ /* @__PURE__ */ jsxs(CodeRow, { children: [
7056
+ /* @__PURE__ */ jsx(Code, { children: code }),
7057
+ /* @__PURE__ */ jsx(
7058
+ CopyButton,
7059
+ {
7060
+ type: "button",
7061
+ "aria-label": copied ? "Skopiowano" : "Kopiuj kod",
7062
+ onClick: () => onCopy?.(code),
7063
+ children: copied ? /* @__PURE__ */ jsx(CheckIcon, { style: { fontSize: 18, color: "green" } }) : /* @__PURE__ */ jsx(ContentCopyIcon, { style: { fontSize: 18 } })
7064
+ }
7065
+ )
7066
+ ] }),
7067
+ expiresAt && /* @__PURE__ */ jsxs(Expiry, { children: [
7068
+ "Wa\u017Cny do: ",
7069
+ expiresAt
6728
7070
  ] })
6729
7071
  ] })
6730
7072
  );
6731
- TeamMemberCard.displayName = "TeamMemberCard";
7073
+ VoucherCard.displayName = "VoucherCard";
6732
7074
  var Wrapper3 = styled("div")({
6733
7075
  width: "100%",
6734
7076
  overflowX: "auto",
@@ -6813,7 +7155,7 @@ var RemoveBtn = styled("button")(({ theme }) => ({
6813
7155
  }
6814
7156
  }));
6815
7157
  var Tbody = styled("tbody")({});
6816
- var Row3 = styled("tr", {
7158
+ var Row4 = styled("tr", {
6817
7159
  shouldForwardProp: (p) => p !== "$diff"
6818
7160
  })(({ theme, $diff }) => ({
6819
7161
  backgroundColor: $diff ? theme.palette.mode === "dark" ? "rgba(255,255,255,0.03)" : "rgba(0,0,0,0.02)" : "transparent",
@@ -6890,7 +7232,7 @@ function CompareTool({
6890
7232
  ] }) }),
6891
7233
  /* @__PURE__ */ jsx(Tbody, { children: specKeys.map((key) => {
6892
7234
  const diff = highlightDifferences && isDiff(key, products);
6893
- return /* @__PURE__ */ jsxs(Row3, { $diff: diff, children: [
7235
+ return /* @__PURE__ */ jsxs(Row4, { $diff: diff, children: [
6894
7236
  /* @__PURE__ */ jsx(LabelCell, { as: "th", scope: "row", children: specLabels[key] ?? key }),
6895
7237
  products.map((p) => {
6896
7238
  const val = p.specs[key];
@@ -6901,143 +7243,8 @@ function CompareTool({
6901
7243
  }) })
6902
7244
  ] }) });
6903
7245
  }
6904
- function calcTimeLeft(target) {
6905
- const diff = new Date(target).getTime() - Date.now();
6906
- if (diff <= 0) return null;
6907
- return {
6908
- days: Math.floor(diff / 864e5),
6909
- hours: Math.floor(diff % 864e5 / 36e5),
6910
- minutes: Math.floor(diff % 36e5 / 6e4),
6911
- seconds: Math.floor(diff % 6e4 / 1e3)
6912
- };
6913
- }
6914
- function pad(n) {
6915
- return String(n).padStart(2, "0");
6916
- }
6917
- var Root24 = styled("div", {
6918
- shouldForwardProp: (prop) => prop !== "$variant"
6919
- })(({ theme, $variant }) => ({
6920
- display: "inline-flex",
6921
- alignItems: "center",
6922
- justifyContent: "space-between",
6923
- flexWrap: "wrap",
6924
- gap: "0.5rem",
6925
- fontFamily: theme.typography.fontFamily,
6926
- ...$variant === "card" && {
6927
- backgroundColor: theme.palette.background.paper,
6928
- border: `1px solid ${theme.palette.divider}`,
6929
- borderRadius: theme.shape.borderRadius,
6930
- padding: "1rem 1.5rem"
6931
- },
6932
- ...$variant === "banner" && {
6933
- backgroundColor: theme.palette.error.main,
6934
- color: "#fff",
6935
- borderRadius: theme.shape.borderRadius,
6936
- padding: "0.75rem 1.25rem"
6937
- }
6938
- }));
6939
- var TimerLabel = styled("span", {
6940
- shouldForwardProp: (prop) => prop !== "$variant"
6941
- })(({ theme, $variant }) => ({
6942
- fontSize: "0.875rem",
6943
- fontWeight: 600,
6944
- color: $variant === "banner" ? "rgba(255,255,255,0.85)" : theme.palette.text.secondary,
6945
- marginRight: "0.25rem"
6946
- }));
6947
- var Segments = styled("div")({
6948
- display: "flex",
6949
- alignItems: "center",
6950
- gap: "0.25rem"
6951
- });
6952
- var Segment = styled("div", {
6953
- shouldForwardProp: (prop) => prop !== "$variant"
6954
- })(({ theme, $variant }) => ({
6955
- display: "flex",
6956
- flexDirection: "column",
6957
- alignItems: "center",
6958
- minWidth: "2.5rem",
6959
- ...$variant === "card" && {
6960
- backgroundColor: theme.palette.action.hover,
6961
- borderRadius: "0.375rem",
6962
- padding: "0.375rem 0.5rem"
6963
- }
6964
- }));
6965
- var Value2 = styled("span", {
6966
- shouldForwardProp: (prop) => prop !== "$variant"
6967
- })(({ $variant }) => ({
6968
- fontSize: $variant === "inline" ? "1rem" : "1.5rem",
6969
- fontWeight: 700,
6970
- lineHeight: 1,
6971
- color: $variant === "banner" ? "#fff" : "inherit"
6972
- }));
6973
- var Unit = styled("span", {
6974
- shouldForwardProp: (prop) => prop !== "$variant"
6975
- })(({ theme, $variant }) => ({
6976
- fontSize: "0.6875rem",
6977
- color: $variant === "banner" ? "rgba(255,255,255,0.7)" : theme.palette.text.secondary,
6978
- marginTop: "0.125rem"
6979
- }));
6980
- var Colon = styled("span", {
6981
- shouldForwardProp: (prop) => prop !== "$variant"
6982
- })(({ theme, $variant }) => ({
6983
- fontSize: $variant === "inline" ? "1rem" : "1.5rem",
6984
- fontWeight: 700,
6985
- color: $variant === "banner" ? "rgba(255,255,255,0.6)" : theme.palette.text.disabled,
6986
- alignSelf: $variant === "card" ? "flex-start" : "center",
6987
- marginTop: $variant === "card" ? "0.375rem" : 0
6988
- }));
6989
- var UNITS = ["dni", "godz", "min", "sek"];
6990
- var CountdownTimer = forwardRef(
6991
- ({
6992
- targetDate,
6993
- variant = "inline",
6994
- label,
6995
- expiredLabel = "Promocja zako\u0144czona",
6996
- onExpire,
6997
- ...props
6998
- }, ref) => {
6999
- const [timeLeft, setTimeLeft] = useState(() => calcTimeLeft(targetDate));
7000
- useEffect(() => {
7001
- const id = setInterval(() => {
7002
- const tl = calcTimeLeft(targetDate);
7003
- setTimeLeft(tl);
7004
- if (!tl) {
7005
- clearInterval(id);
7006
- onExpire?.();
7007
- }
7008
- }, 1e3);
7009
- return () => clearInterval(id);
7010
- }, [targetDate, onExpire]);
7011
- if (!timeLeft) {
7012
- return /* @__PURE__ */ jsx(Root24, { ref, $variant: variant, ...props, children: /* @__PURE__ */ jsx(TimerLabel, { $variant: variant, children: expiredLabel }) });
7013
- }
7014
- const parts = [timeLeft.days, timeLeft.hours, timeLeft.minutes, timeLeft.seconds];
7015
- return /* @__PURE__ */ jsxs(
7016
- Root24,
7017
- {
7018
- ref,
7019
- $variant: variant,
7020
- "aria-live": "polite",
7021
- "aria-label": `Czas do ko\u0144ca promocji`,
7022
- ...props,
7023
- children: [
7024
- label && /* @__PURE__ */ jsx(TimerLabel, { $variant: variant, children: label }),
7025
- /* @__PURE__ */ jsx(Segments, { children: parts.map((val, i) => /* @__PURE__ */ jsxs("div", { style: { display: "contents" }, children: [
7026
- i > 0 && /* @__PURE__ */ jsx(Colon, { $variant: variant, children: ":" }),
7027
- /* @__PURE__ */ jsxs(Segment, { $variant: variant, children: [
7028
- /* @__PURE__ */ jsx(Value2, { $variant: variant, children: pad(val) }),
7029
- variant !== "inline" && /* @__PURE__ */ jsx(Unit, { $variant: variant, children: UNITS[i] })
7030
- ] })
7031
- ] }, UNITS[i])) })
7032
- ]
7033
- }
7034
- );
7035
- }
7036
- );
7037
- CountdownTimer.displayName = "CountdownTimer";
7038
- var countdownTimerVariants = ["inline", "card", "banner"];
7039
7246
  var spin2 = keyframes`to { transform: rotate(360deg); }`;
7040
- var Root25 = styled("div")({
7247
+ var Root30 = styled("div")({
7041
7248
  display: "flex",
7042
7249
  flexDirection: "column",
7043
7250
  gap: "0.5rem"
@@ -7184,7 +7391,7 @@ function CouponInput({
7184
7391
  if (e.key === "Enter") handleApply();
7185
7392
  };
7186
7393
  if (appliedCode) {
7187
- return /* @__PURE__ */ jsxs(Root25, { className, children: [
7394
+ return /* @__PURE__ */ jsxs(Root30, { className, children: [
7188
7395
  /* @__PURE__ */ jsxs(AppliedRow, { role: "status", "aria-label": `Kod rabatowy ${appliedCode} zastosowany`, children: [
7189
7396
  /* @__PURE__ */ jsx(AppliedCode, { children: appliedCode }),
7190
7397
  onRemove && /* @__PURE__ */ jsx(
@@ -7203,7 +7410,7 @@ function CouponInput({
7203
7410
  ] })
7204
7411
  ] });
7205
7412
  }
7206
- return /* @__PURE__ */ jsxs(Root25, { className, children: [
7413
+ return /* @__PURE__ */ jsxs(Root30, { className, children: [
7207
7414
  /* @__PURE__ */ jsxs(InputRow, { $hasError: Boolean(error), $applied: false, children: [
7208
7415
  /* @__PURE__ */ jsx(
7209
7416
  Input,
@@ -7235,7 +7442,7 @@ function CouponInput({
7235
7442
  error && /* @__PURE__ */ jsx(Message, { $type: "error", id: errorId, role: "alert", children: error })
7236
7443
  ] });
7237
7444
  }
7238
- var Root26 = styled("div")({
7445
+ var Root31 = styled("div")({
7239
7446
  display: "flex",
7240
7447
  flexDirection: "column",
7241
7448
  gap: "0.5rem"
@@ -7271,8 +7478,8 @@ var IconWrap = styled("span")(({ theme }) => ({
7271
7478
  color: theme.palette.text.secondary,
7272
7479
  display: "flex"
7273
7480
  }));
7274
- var Info = styled("div")({ flex: 1 });
7275
- var Name6 = styled("div")(({ theme }) => ({
7481
+ var Info2 = styled("div")({ flex: 1 });
7482
+ var Name8 = styled("div")(({ theme }) => ({
7276
7483
  fontSize: "0.9375rem",
7277
7484
  fontWeight: 600,
7278
7485
  color: theme.palette.text.primary
@@ -7283,7 +7490,7 @@ var Desc = styled("div")(({ theme }) => ({
7283
7490
  marginTop: "0.125rem"
7284
7491
  }));
7285
7492
  var PaymentMethodSelector = forwardRef(
7286
- ({ methods, value, onChange, label = "Metoda p\u0142atno\u015Bci", disabled, ...props }, ref) => /* @__PURE__ */ jsxs(Root26, { ref, ...props, children: [
7493
+ ({ methods, value, onChange, label = "Metoda p\u0142atno\u015Bci", disabled, ...props }, ref) => /* @__PURE__ */ jsxs(Root31, { ref, ...props, children: [
7287
7494
  /* @__PURE__ */ jsx(GroupLabel, { children: label }),
7288
7495
  methods.map((method) => {
7289
7496
  const selected = value === method.id;
@@ -7301,8 +7508,8 @@ var PaymentMethodSelector = forwardRef(
7301
7508
  }
7302
7509
  ),
7303
7510
  /* @__PURE__ */ jsx(IconWrap, { children: method.icon ?? /* @__PURE__ */ jsx(CreditCardOutlinedIcon, { "aria-hidden": true }) }),
7304
- /* @__PURE__ */ jsxs(Info, { children: [
7305
- /* @__PURE__ */ jsx(Name6, { children: method.label }),
7511
+ /* @__PURE__ */ jsxs(Info2, { children: [
7512
+ /* @__PURE__ */ jsx(Name8, { children: method.label }),
7306
7513
  method.description && /* @__PURE__ */ jsx(Desc, { children: method.description })
7307
7514
  ] })
7308
7515
  ] }, method.id);
@@ -7310,7 +7517,7 @@ var PaymentMethodSelector = forwardRef(
7310
7517
  ] })
7311
7518
  );
7312
7519
  PaymentMethodSelector.displayName = "PaymentMethodSelector";
7313
- var Root27 = styled("div")({
7520
+ var Root32 = styled("div")({
7314
7521
  display: "grid",
7315
7522
  gap: "0.75rem"
7316
7523
  });
@@ -7348,7 +7555,7 @@ var ProductGallery = forwardRef(
7348
7555
  if (!activeImage) {
7349
7556
  return null;
7350
7557
  }
7351
- return /* @__PURE__ */ jsxs(Root27, { ref, ...props, children: [
7558
+ return /* @__PURE__ */ jsxs(Root32, { ref, ...props, children: [
7352
7559
  /* @__PURE__ */ jsx(AspectRatio, { ratio: "4/3", children: /* @__PURE__ */ jsx(MainImage, { src: activeImage.src, alt: activeImage.alt }) }),
7353
7560
  images.length > 1 && /* @__PURE__ */ jsx(Thumbnails, { children: images.map((image, index) => /* @__PURE__ */ jsx(
7354
7561
  ThumbnailButton,
@@ -7366,7 +7573,7 @@ var ProductGallery = forwardRef(
7366
7573
  }
7367
7574
  );
7368
7575
  ProductGallery.displayName = "ProductGallery";
7369
- var Root28 = styled("div")(({ theme, $variant }) => ({
7576
+ var Root33 = styled("div")(({ theme, $variant }) => ({
7370
7577
  display: "flex",
7371
7578
  alignItems: "center",
7372
7579
  justifyContent: "center",
@@ -7386,14 +7593,14 @@ var Link = styled("a")(({ theme }) => ({
7386
7593
  textUnderlineOffset: "0.2em"
7387
7594
  }));
7388
7595
  var PromoStrip = forwardRef(
7389
- ({ message, actionLabel, href, variant = "info", ...props }, ref) => /* @__PURE__ */ jsxs(Root28, { ref, $variant: variant, ...props, children: [
7596
+ ({ message, actionLabel, href, variant = "info", ...props }, ref) => /* @__PURE__ */ jsxs(Root33, { ref, $variant: variant, ...props, children: [
7390
7597
  /* @__PURE__ */ jsx("span", { children: message }),
7391
7598
  actionLabel && href && /* @__PURE__ */ jsx(Link, { href, children: actionLabel })
7392
7599
  ] })
7393
7600
  );
7394
7601
  PromoStrip.displayName = "PromoStrip";
7395
7602
  var promoStripVariants = ["info", "success", "warning"];
7396
- var Root29 = styled("div")(({ theme }) => ({
7603
+ var Root34 = styled("div")(({ theme }) => ({
7397
7604
  display: "inline-grid",
7398
7605
  gridTemplateColumns: "2.25rem 3rem 2.25rem",
7399
7606
  alignItems: "center",
@@ -7429,7 +7636,7 @@ var QuantitySelector = forwardRef(
7429
7636
  ({ value, min = 1, max = 99, step = 1, disabled = false, onChange, ...props }, ref) => {
7430
7637
  const decrease = Math.max(min, value - step);
7431
7638
  const increase = Math.min(max, value + step);
7432
- return /* @__PURE__ */ jsxs(Root29, { ref, "aria-label": "Wybierz ilo\u015B\u0107", ...props, children: [
7639
+ return /* @__PURE__ */ jsxs(Root34, { ref, "aria-label": "Wybierz ilo\u015B\u0107", ...props, children: [
7433
7640
  /* @__PURE__ */ jsx(
7434
7641
  Control,
7435
7642
  {
@@ -7455,7 +7662,7 @@ var QuantitySelector = forwardRef(
7455
7662
  }
7456
7663
  );
7457
7664
  QuantitySelector.displayName = "QuantitySelector";
7458
- var Root30 = styled("div")({
7665
+ var Root35 = styled("div")({
7459
7666
  display: "flex",
7460
7667
  flexDirection: "column",
7461
7668
  gap: "0.5rem"
@@ -7493,8 +7700,8 @@ var IconWrap2 = styled("span")(({ theme }) => ({
7493
7700
  color: theme.palette.text.secondary,
7494
7701
  display: "flex"
7495
7702
  }));
7496
- var Info2 = styled("div")({ flex: 1 });
7497
- var Name7 = styled("div")(({ theme }) => ({
7703
+ var Info3 = styled("div")({ flex: 1 });
7704
+ var Name9 = styled("div")(({ theme }) => ({
7498
7705
  fontSize: "0.9375rem",
7499
7706
  fontWeight: 600,
7500
7707
  color: theme.palette.text.primary
@@ -7504,7 +7711,7 @@ var Desc2 = styled("div")(({ theme }) => ({
7504
7711
  color: theme.palette.text.secondary,
7505
7712
  marginTop: "0.125rem"
7506
7713
  }));
7507
- var Price3 = styled("div", {
7714
+ var Price2 = styled("div", {
7508
7715
  shouldForwardProp: (prop) => prop !== "$selected"
7509
7716
  })(({ theme, $selected }) => ({
7510
7717
  fontSize: "0.9375rem",
@@ -7513,7 +7720,7 @@ var Price3 = styled("div", {
7513
7720
  whiteSpace: "nowrap"
7514
7721
  }));
7515
7722
  var ShippingSelector = forwardRef(
7516
- ({ options, value, onChange, label = "Metoda dostawy", disabled, ...props }, ref) => /* @__PURE__ */ jsxs(Root30, { ref, ...props, children: [
7723
+ ({ options, value, onChange, label = "Metoda dostawy", disabled, ...props }, ref) => /* @__PURE__ */ jsxs(Root35, { ref, ...props, children: [
7517
7724
  /* @__PURE__ */ jsx(GroupLabel2, { children: label }),
7518
7725
  options.map((opt) => {
7519
7726
  const selected = value === opt.id;
@@ -7531,14 +7738,14 @@ var ShippingSelector = forwardRef(
7531
7738
  }
7532
7739
  ),
7533
7740
  /* @__PURE__ */ jsx(IconWrap2, { children: opt.icon ?? /* @__PURE__ */ jsx(LocalShippingOutlinedIcon, { "aria-hidden": true }) }),
7534
- /* @__PURE__ */ jsxs(Info2, { children: [
7535
- /* @__PURE__ */ jsx(Name7, { children: opt.label }),
7741
+ /* @__PURE__ */ jsxs(Info3, { children: [
7742
+ /* @__PURE__ */ jsx(Name9, { children: opt.label }),
7536
7743
  (opt.description || opt.estimatedDays) && /* @__PURE__ */ jsxs(Desc2, { children: [
7537
7744
  opt.description,
7538
7745
  opt.estimatedDays && ` \xB7 ${opt.estimatedDays}`
7539
7746
  ] })
7540
7747
  ] }),
7541
- /* @__PURE__ */ jsx(Price3, { $selected: selected, children: opt.price })
7748
+ /* @__PURE__ */ jsx(Price2, { $selected: selected, children: opt.price })
7542
7749
  ] }, opt.id);
7543
7750
  })
7544
7751
  ] })
@@ -7550,7 +7757,7 @@ var DEFAULT_SORT_OPTIONS = [
7550
7757
  { value: "price-asc", label: "Cena rosn\u0105co" },
7551
7758
  { value: "price-desc", label: "Cena malej\u0105co" }
7552
7759
  ];
7553
- var Root31 = styled("div")(({ theme }) => ({
7760
+ var Root36 = styled("div")(({ theme }) => ({
7554
7761
  display: "flex",
7555
7762
  alignItems: "center",
7556
7763
  justifyContent: "space-between",
@@ -7624,7 +7831,7 @@ var SortBar = forwardRef(
7624
7831
  ...props
7625
7832
  }, ref) => {
7626
7833
  const resolvedLabel = totalLabel ?? (total !== void 0 ? `Znaleziono ${total} produkt\xF3w` : void 0);
7627
- return /* @__PURE__ */ jsxs(Root31, { ref, ...props, children: [
7834
+ return /* @__PURE__ */ jsxs(Root36, { ref, ...props, children: [
7628
7835
  resolvedLabel && /* @__PURE__ */ jsx(TotalLabel, { children: resolvedLabel }),
7629
7836
  /* @__PURE__ */ jsxs(Controls, { children: [
7630
7837
  sortOptions.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
@@ -7677,7 +7884,7 @@ function getDefaultLabel(status, count) {
7677
7884
  return "Dost\u0119pny na zam\xF3wienie";
7678
7885
  }
7679
7886
  }
7680
- var Root32 = styled("div", {
7887
+ var Root37 = styled("div", {
7681
7888
  shouldForwardProp: (p) => p !== "$color" && p !== "$size"
7682
7889
  })(({ theme, $color, $size }) => {
7683
7890
  const colorMap = {
@@ -7718,7 +7925,7 @@ var StockStatus = forwardRef(
7718
7925
  ({ status, count, label, showIcon = true, size = "md", ...props }, ref) => {
7719
7926
  const color = COLOR_MAP[status];
7720
7927
  const text = label ?? getDefaultLabel(status, count);
7721
- return /* @__PURE__ */ jsxs(Root32, { ref, $color: color, $size: size, role: "status", "aria-label": text, ...props, children: [
7928
+ return /* @__PURE__ */ jsxs(Root37, { ref, $color: color, $size: size, role: "status", "aria-label": text, ...props, children: [
7722
7929
  showIcon && /* @__PURE__ */ jsx(Dot2, { $color: color, "aria-hidden": "true" }),
7723
7930
  /* @__PURE__ */ jsx("span", { children: text })
7724
7931
  ] });
@@ -7732,7 +7939,7 @@ var stockStatusValues = [
7732
7939
  "preorder",
7733
7940
  "backorder"
7734
7941
  ];
7735
- var Root33 = styled("div")({
7942
+ var Root38 = styled("div")({
7736
7943
  display: "flex",
7737
7944
  flexDirection: "column",
7738
7945
  gap: "0.5rem"
@@ -7801,7 +8008,7 @@ var Select2 = styled("select")(({ theme }) => ({
7801
8008
  }
7802
8009
  }));
7803
8010
  var VariantSelector = forwardRef(
7804
- ({ label, options, value, onChange, mode = "button", disabled, ...props }, ref) => /* @__PURE__ */ jsxs(Root33, { ref, ...props, children: [
8011
+ ({ label, options, value, onChange, mode = "button", disabled, ...props }, ref) => /* @__PURE__ */ jsxs(Root38, { ref, ...props, children: [
7805
8012
  /* @__PURE__ */ jsxs(Label4, { children: [
7806
8013
  label,
7807
8014
  value && mode !== "swatch" && /* @__PURE__ */ jsx("span", { style: { fontWeight: 400, marginLeft: "0.375rem" }, children: options.find((o) => o.value === value)?.label })
@@ -7835,7 +8042,7 @@ var VariantSelector = forwardRef(
7835
8042
  );
7836
8043
  VariantSelector.displayName = "VariantSelector";
7837
8044
  var variantSelectorModes = ["button", "swatch", "dropdown"];
7838
- var Root34 = styled("div")(({ theme }) => ({
8045
+ var Root39 = styled("div")(({ theme }) => ({
7839
8046
  borderBottom: `1px solid ${theme.palette.divider}`
7840
8047
  }));
7841
8048
  var Trigger2 = styled("button")(({ theme }) => ({
@@ -7883,7 +8090,7 @@ var PanelInner = styled("p")(({ theme }) => ({
7883
8090
  var FaqItem = forwardRef(
7884
8091
  ({ item, defaultOpen = false, ...props }, ref) => {
7885
8092
  const [open, setOpen] = useState(defaultOpen);
7886
- return /* @__PURE__ */ jsxs(Root34, { ref, ...props, children: [
8093
+ return /* @__PURE__ */ jsxs(Root39, { ref, ...props, children: [
7887
8094
  /* @__PURE__ */ jsxs(Trigger2, { type: "button", "aria-expanded": open, onClick: () => setOpen((prev) => !prev), children: [
7888
8095
  item.question,
7889
8096
  /* @__PURE__ */ jsx(ChevronIcon2, { $open: open, "aria-hidden": "true" })
@@ -7931,21 +8138,21 @@ var Title2 = styled("h3")(({ theme }) => ({
7931
8138
  color: theme.palette.text.primary,
7932
8139
  lineHeight: 1.4
7933
8140
  }));
7934
- var Description4 = styled("p")(({ theme }) => ({
8141
+ var Description5 = styled("p")(({ theme }) => ({
7935
8142
  margin: "0.375rem 0 0",
7936
8143
  fontFamily: theme.typography.fontFamily,
7937
8144
  fontSize: "0.9rem",
7938
8145
  color: theme.palette.text.secondary,
7939
8146
  lineHeight: 1.6
7940
8147
  }));
7941
- var FeatureItem2 = forwardRef(
8148
+ var FeatureItem = forwardRef(
7942
8149
  ({ feature, cardVariant = "default", layout = "card", ...props }, ref) => {
7943
8150
  if (layout === "icon-left") {
7944
8151
  return /* @__PURE__ */ jsxs(IconLeftRoot, { ref, ...props, children: [
7945
8152
  feature.icon && /* @__PURE__ */ jsx(IconWrapper, { children: feature.icon }),
7946
8153
  /* @__PURE__ */ jsxs(TextGroup2, { children: [
7947
8154
  /* @__PURE__ */ jsx(Title2, { children: feature.title }),
7948
- /* @__PURE__ */ jsx(Description4, { children: feature.description })
8155
+ /* @__PURE__ */ jsx(Description5, { children: feature.description })
7949
8156
  ] })
7950
8157
  ] });
7951
8158
  }
@@ -7953,13 +8160,13 @@ var FeatureItem2 = forwardRef(
7953
8160
  feature.icon && /* @__PURE__ */ jsx(IconWrapper, { children: feature.icon }),
7954
8161
  /* @__PURE__ */ jsxs(TextGroup2, { children: [
7955
8162
  /* @__PURE__ */ jsx(Title2, { children: feature.title }),
7956
- /* @__PURE__ */ jsx(Description4, { children: feature.description })
8163
+ /* @__PURE__ */ jsx(Description5, { children: feature.description })
7957
8164
  ] })
7958
8165
  ] });
7959
8166
  }
7960
8167
  );
7961
- FeatureItem2.displayName = "FeatureItem";
7962
- var Root35 = styled("div")({
8168
+ FeatureItem.displayName = "FeatureItem";
8169
+ var Root40 = styled("div")({
7963
8170
  display: "flex",
7964
8171
  flexDirection: "column",
7965
8172
  alignItems: "center",
@@ -7998,7 +8205,7 @@ var Title3 = styled("h3")(({ theme }) => ({
7998
8205
  fontSize: "1rem",
7999
8206
  color: theme.palette.text.primary
8000
8207
  }));
8001
- var Description5 = styled("p")(({ theme }) => ({
8208
+ var Description6 = styled("p")(({ theme }) => ({
8002
8209
  margin: 0,
8003
8210
  fontFamily: theme.typography.fontFamily,
8004
8211
  fontSize: "0.875rem",
@@ -8007,10 +8214,10 @@ var Description5 = styled("p")(({ theme }) => ({
8007
8214
  maxWidth: "18rem"
8008
8215
  }));
8009
8216
  var ProcessStep = forwardRef(
8010
- ({ step, title, description, icon, ...props }, ref) => /* @__PURE__ */ jsxs(Root35, { ref, ...props, children: [
8217
+ ({ step, title, description, icon, ...props }, ref) => /* @__PURE__ */ jsxs(Root40, { ref, ...props, children: [
8011
8218
  /* @__PURE__ */ jsx(StepBadge, { "aria-hidden": "true", children: icon ? /* @__PURE__ */ jsx(IconWrapper2, { children: icon }) : /* @__PURE__ */ jsx(StepNumber, { children: step }) }),
8012
8219
  /* @__PURE__ */ jsx(Title3, { children: title }),
8013
- description && /* @__PURE__ */ jsx(Description5, { children: description })
8220
+ description && /* @__PURE__ */ jsx(Description6, { children: description })
8014
8221
  ] })
8015
8222
  );
8016
8223
  ProcessStep.displayName = "ProcessStep";
@@ -8133,7 +8340,7 @@ function getDotColor(status, theme) {
8133
8340
  return theme.palette.mode === "dark" ? "rgba(255,255,255,0.2)" : "rgba(0,0,0,0.15)";
8134
8341
  }
8135
8342
  }
8136
- var List = styled("ol")({
8343
+ var List2 = styled("ol")({
8137
8344
  listStyle: "none",
8138
8345
  margin: 0,
8139
8346
  padding: 0,
@@ -8193,7 +8400,7 @@ var Dot3 = styled("span", {
8193
8400
  }
8194
8401
  }
8195
8402
  }));
8196
- var Content4 = styled("div")({ flex: 1, minWidth: 0, paddingTop: "0.0625rem" });
8403
+ var Content2 = styled("div")({ flex: 1, minWidth: 0, paddingTop: "0.0625rem" });
8197
8404
  var TitleRow = styled("div")({
8198
8405
  display: "flex",
8199
8406
  alignItems: "baseline",
@@ -8216,7 +8423,7 @@ var Date2 = styled("time")(({ theme }) => ({
8216
8423
  color: theme.palette.text.secondary,
8217
8424
  whiteSpace: "nowrap"
8218
8425
  }));
8219
- var Description6 = styled("div")(({ theme }) => ({
8426
+ var Description7 = styled("div")(({ theme }) => ({
8220
8427
  marginTop: "0.25rem",
8221
8428
  fontFamily: theme.typography.fontFamily,
8222
8429
  fontSize: "0.875rem",
@@ -8238,19 +8445,19 @@ function TimelineItemComponent({
8238
8445
  const hasIcon = Boolean(item.icon);
8239
8446
  return /* @__PURE__ */ jsxs(ItemRow, { $compact: compact, $last: last, children: [
8240
8447
  /* @__PURE__ */ jsx(DotCol, { $last: last, children: /* @__PURE__ */ jsx(Dot3, { $status: status, $hasIcon: hasIcon, children: item.icon ?? /* @__PURE__ */ jsx(StatusIcon, { status }) }) }),
8241
- /* @__PURE__ */ jsxs(Content4, { children: [
8448
+ /* @__PURE__ */ jsxs(Content2, { children: [
8242
8449
  /* @__PURE__ */ jsxs(TitleRow, { children: [
8243
8450
  /* @__PURE__ */ jsx(Title4, { $compact: compact, children: item.title }),
8244
8451
  item.date && /* @__PURE__ */ jsx(Date2, { dateTime: item.date, children: item.date })
8245
8452
  ] }),
8246
- item.description && /* @__PURE__ */ jsx(Description6, { children: item.description })
8453
+ item.description && /* @__PURE__ */ jsx(Description7, { children: item.description })
8247
8454
  ] })
8248
8455
  ] });
8249
8456
  }
8250
8457
  var Timeline = forwardRef(
8251
8458
  ({ items, variant = "default", align: _align = "left", ...props }, ref) => {
8252
8459
  const compact = variant === "compact";
8253
- return /* @__PURE__ */ jsx(List, { ref, "aria-label": "O\u015B czasu", ...props, children: items.map((item, i) => /* @__PURE__ */ jsx(
8460
+ return /* @__PURE__ */ jsx(List2, { ref, "aria-label": "O\u015B czasu", ...props, children: items.map((item, i) => /* @__PURE__ */ jsx(
8254
8461
  TimelineItemComponent,
8255
8462
  {
8256
8463
  item,
@@ -8269,7 +8476,7 @@ var timelineItemStatuses = [
8269
8476
  "pending",
8270
8477
  "error"
8271
8478
  ];
8272
- var Root36 = styled("div")({
8479
+ var Root41 = styled("div")({
8273
8480
  position: "relative",
8274
8481
  width: "100%",
8275
8482
  overflow: "hidden",
@@ -8379,7 +8586,7 @@ function Carousel({
8379
8586
  }, [prev, next]);
8380
8587
  if (!count) return null;
8381
8588
  return /* @__PURE__ */ jsxs("div", { className, children: [
8382
- /* @__PURE__ */ jsxs(Root36, { "aria-roledescription": "carousel", children: [
8589
+ /* @__PURE__ */ jsxs(Root41, { "aria-roledescription": "carousel", children: [
8383
8590
  /* @__PURE__ */ jsx(Track4, { $index: index, "aria-live": "polite", children: slides.map((slide, i) => /* @__PURE__ */ jsx(
8384
8591
  Slide,
8385
8592
  {
@@ -8727,7 +8934,7 @@ var Nav = styled("nav")(({ theme }) => ({
8727
8934
  fontSize: "0.875rem",
8728
8935
  color: theme.palette.text.secondary
8729
8936
  }));
8730
- var List2 = styled("ol")({
8937
+ var List3 = styled("ol")({
8731
8938
  display: "flex",
8732
8939
  alignItems: "center",
8733
8940
  flexWrap: "wrap",
@@ -8751,7 +8958,7 @@ var Separator2 = styled("span")(({ theme }) => ({
8751
8958
  color: theme.palette.text.disabled
8752
8959
  }));
8753
8960
  var Breadcrumbs = forwardRef(
8754
- ({ items, separator = "/", ...props }, ref) => /* @__PURE__ */ jsx(Nav, { ref, "aria-label": "\u015Acie\u017Cka nawigacji", ...props, children: /* @__PURE__ */ jsx(List2, { children: items.map((item, index) => {
8961
+ ({ items, separator = "/", ...props }, ref) => /* @__PURE__ */ jsx(Nav, { ref, "aria-label": "\u015Acie\u017Cka nawigacji", ...props, children: /* @__PURE__ */ jsx(List3, { children: items.map((item, index) => {
8755
8962
  const isLast = index === items.length - 1;
8756
8963
  return /* @__PURE__ */ jsxs("li", { children: [
8757
8964
  item.href && !isLast ? /* @__PURE__ */ jsx(Link2, { href: item.href, children: item.label }) : /* @__PURE__ */ jsx(Current2, { "aria-current": isLast ? "page" : void 0, children: item.label }),
@@ -8942,7 +9149,7 @@ var PaginationBar = ({
8942
9149
  ] });
8943
9150
  };
8944
9151
  PaginationBar.displayName = "PaginationBar";
8945
- var Root37 = styled("div", {
9152
+ var Root42 = styled("div", {
8946
9153
  shouldForwardProp: (p) => p !== "$variant"
8947
9154
  })(({ theme, $variant }) => ({
8948
9155
  width: "100%",
@@ -8957,7 +9164,7 @@ var Root37 = styled("div", {
8957
9164
  gap: "0.5rem"
8958
9165
  }
8959
9166
  }));
8960
- var Item = styled("div", {
9167
+ var Item2 = styled("div", {
8961
9168
  shouldForwardProp: (p) => !["$variant", "$disabled"].includes(p)
8962
9169
  })(({ theme, $variant, $disabled }) => ({
8963
9170
  opacity: $disabled ? 0.5 : 1,
@@ -9052,11 +9259,11 @@ var Accordion = forwardRef(
9052
9259
  if (controlledKeys === void 0) setInternalKeys(next);
9053
9260
  onChange?.(next);
9054
9261
  };
9055
- return /* @__PURE__ */ jsx(Root37, { ref, $variant: variant, ...props, children: items.map((item) => {
9262
+ return /* @__PURE__ */ jsx(Root42, { ref, $variant: variant, ...props, children: items.map((item) => {
9056
9263
  const isOpen = openKeys.includes(item.key);
9057
9264
  const panelId = `accordion-panel-${item.key}`;
9058
9265
  const triggerId = `accordion-trigger-${item.key}`;
9059
- return /* @__PURE__ */ jsxs(Item, { $variant: variant, $disabled: Boolean(item.disabled), children: [
9266
+ return /* @__PURE__ */ jsxs(Item2, { $variant: variant, $disabled: Boolean(item.disabled), children: [
9060
9267
  /* @__PURE__ */ jsxs(
9061
9268
  Trigger3,
9062
9269
  {
@@ -9093,7 +9300,7 @@ var ICONS = {
9093
9300
  warning: /* @__PURE__ */ jsx(WarningAmberOutlinedIcon, { "aria-hidden": true, style: { fontSize: 20 } }),
9094
9301
  error: /* @__PURE__ */ jsx(ErrorOutlineOutlinedIcon, { "aria-hidden": true, style: { fontSize: 20 } })
9095
9302
  };
9096
- var Root38 = styled("div", {
9303
+ var Root43 = styled("div", {
9097
9304
  shouldForwardProp: (prop) => prop !== "$severity"
9098
9305
  })(({ theme, $severity }) => {
9099
9306
  const c = SEVERITY_COLORS[$severity];
@@ -9138,7 +9345,7 @@ var CloseButton2 = styled("button")(({ theme }) => ({
9138
9345
  }
9139
9346
  }));
9140
9347
  var Alert = forwardRef(
9141
- ({ severity = "info", title, children, onClose, icon, ...props }, ref) => /* @__PURE__ */ jsxs(Root38, { ref, role: "alert", $severity: severity, ...props, children: [
9348
+ ({ severity = "info", title, children, onClose, icon, ...props }, ref) => /* @__PURE__ */ jsxs(Root43, { ref, role: "alert", $severity: severity, ...props, children: [
9142
9349
  /* @__PURE__ */ jsx(IconSlot2, { children: icon ?? ICONS[severity] }),
9143
9350
  /* @__PURE__ */ jsxs(Body, { children: [
9144
9351
  title && /* @__PURE__ */ jsx(Title5, { children: title }),
@@ -9388,7 +9595,7 @@ var ContextMenu = forwardRef(
9388
9595
  }
9389
9596
  );
9390
9597
  ContextMenu.displayName = "ContextMenu";
9391
- var Root39 = styled("div")(({ theme }) => ({
9598
+ var Root44 = styled("div")(({ theme }) => ({
9392
9599
  display: "flex",
9393
9600
  flexDirection: "column",
9394
9601
  alignItems: "center",
@@ -9409,18 +9616,18 @@ var Title6 = styled("h3")(({ theme }) => ({
9409
9616
  fontWeight: 700,
9410
9617
  color: theme.palette.text.primary
9411
9618
  }));
9412
- var Description7 = styled("p")(({ theme }) => ({
9619
+ var Description8 = styled("p")(({ theme }) => ({
9413
9620
  margin: 0,
9414
9621
  fontSize: "0.9375rem",
9415
9622
  color: theme.palette.text.secondary,
9416
9623
  maxWidth: "28rem"
9417
9624
  }));
9418
9625
  var EmptyState = forwardRef(
9419
- ({ icon, title, description, action, ...props }, ref) => /* @__PURE__ */ jsxs(Root39, { ref, ...props, children: [
9626
+ ({ icon, title, description, action, ...props }, ref) => /* @__PURE__ */ jsxs(Root44, { ref, ...props, children: [
9420
9627
  /* @__PURE__ */ jsx(IconWrap3, { "aria-hidden": true, children: icon ?? /* @__PURE__ */ jsx(InboxOutlinedIcon, {}) }),
9421
9628
  /* @__PURE__ */ jsxs("div", { children: [
9422
9629
  /* @__PURE__ */ jsx(Title6, { children: title }),
9423
- description && /* @__PURE__ */ jsx(Description7, { style: { marginTop: "0.5rem" }, children: description })
9630
+ description && /* @__PURE__ */ jsx(Description8, { style: { marginTop: "0.5rem" }, children: description })
9424
9631
  ] }),
9425
9632
  action && /* @__PURE__ */ jsx("div", { children: action })
9426
9633
  ] })
@@ -9436,7 +9643,7 @@ var FONT_SIZE2 = {
9436
9643
  md: "0.9375rem",
9437
9644
  lg: "1rem"
9438
9645
  };
9439
- var Root40 = styled("ul", {
9646
+ var Root45 = styled("ul", {
9440
9647
  shouldForwardProp: (p) => p !== "$variant"
9441
9648
  })(({ theme, $variant }) => ({
9442
9649
  listStyle: "none",
@@ -9454,7 +9661,7 @@ var Root40 = styled("ul", {
9454
9661
  gap: "0.375rem"
9455
9662
  }
9456
9663
  }));
9457
- var Item2 = styled("li", {
9664
+ var Item3 = styled("li", {
9458
9665
  shouldForwardProp: (p) => !["$size", "$variant", "$clickable", "$disabled"].includes(p)
9459
9666
  })(({ theme, $size, $variant, $clickable, $disabled }) => ({
9460
9667
  display: "flex",
@@ -9528,11 +9735,11 @@ var SuffixWrap = styled("span")({
9528
9735
  display: "flex",
9529
9736
  alignItems: "center"
9530
9737
  });
9531
- var List3 = forwardRef(
9738
+ var List4 = forwardRef(
9532
9739
  ({ items, size = "md", variant = "default", dividers = true, ...props }, ref) => {
9533
9740
  const effectiveVariant = !dividers && variant === "default" ? "default" : variant;
9534
- return /* @__PURE__ */ jsx(Root40, { ref, $variant: effectiveVariant, role: "list", ...props, children: items.map((item) => /* @__PURE__ */ jsxs(
9535
- Item2,
9741
+ return /* @__PURE__ */ jsx(Root45, { ref, $variant: effectiveVariant, role: "list", ...props, children: items.map((item) => /* @__PURE__ */ jsxs(
9742
+ Item3,
9536
9743
  {
9537
9744
  role: "listitem",
9538
9745
  $size: size,
@@ -9554,7 +9761,7 @@ var List3 = forwardRef(
9554
9761
  )) });
9555
9762
  }
9556
9763
  );
9557
- List3.displayName = "List";
9764
+ List4.displayName = "List";
9558
9765
  var listVariants = ["default", "bordered", "separated"];
9559
9766
  var listSizes = ["sm", "md", "lg"];
9560
9767
  var scrollLeft = keyframes`
@@ -9570,7 +9777,7 @@ var speedDuration = {
9570
9777
  normal: "20s",
9571
9778
  fast: "10s"
9572
9779
  };
9573
- var Root41 = styled("div")({
9780
+ var Root46 = styled("div")({
9574
9781
  overflow: "hidden",
9575
9782
  width: "100%",
9576
9783
  userSelect: "none"
@@ -9601,7 +9808,7 @@ var Marquee = forwardRef(
9601
9808
  /* @__PURE__ */ jsx(ItemWrap, { $gap: gapValue, "aria-hidden": "false", children }),
9602
9809
  /* @__PURE__ */ jsx(ItemWrap, { $gap: gapValue, "aria-hidden": "true", children })
9603
9810
  ] });
9604
- return /* @__PURE__ */ jsx(Root41, { ref, ...props, children: /* @__PURE__ */ jsx(Track5, { $direction: direction, $speed: speed, $pauseOnHover: pauseOnHover, $gap: gapValue, children: content }) });
9811
+ return /* @__PURE__ */ jsx(Root46, { ref, ...props, children: /* @__PURE__ */ jsx(Track5, { $direction: direction, $speed: speed, $pauseOnHover: pauseOnHover, $gap: gapValue, children: content }) });
9605
9812
  }
9606
9813
  );
9607
9814
  Marquee.displayName = "Marquee";
@@ -9647,7 +9854,7 @@ var Dialog = styled("div", {
9647
9854
  margin: 0
9648
9855
  }
9649
9856
  }));
9650
- var Header = styled("div")(({ theme }) => ({
9857
+ var Header2 = styled("div")(({ theme }) => ({
9651
9858
  display: "flex",
9652
9859
  alignItems: "center",
9653
9860
  justifyContent: "space-between",
@@ -9744,7 +9951,7 @@ function Modal({
9744
9951
  tabIndex: -1,
9745
9952
  onClick: (e) => e.stopPropagation(),
9746
9953
  children: [
9747
- (title || !hideCloseButton) && /* @__PURE__ */ jsxs(Header, { children: [
9954
+ (title || !hideCloseButton) && /* @__PURE__ */ jsxs(Header2, { children: [
9748
9955
  title ? /* @__PURE__ */ jsx(Title7, { id: "modal-title", children: title }) : /* @__PURE__ */ jsx("span", {}),
9749
9956
  !hideCloseButton && /* @__PURE__ */ jsx(CloseButton3, { "aria-label": "Zamknij", onClick: onClose, children: /* @__PURE__ */ jsx(CloseIcon, { "aria-hidden": true, style: { fontSize: 16 } }) })
9750
9957
  ] }),
@@ -9757,7 +9964,7 @@ function Modal({
9757
9964
  );
9758
9965
  }
9759
9966
  var modalSizes = ["sm", "md", "lg", "xl", "full"];
9760
- var Root42 = styled("div")({ width: "100%" });
9967
+ var Root47 = styled("div")({ width: "100%" });
9761
9968
  var TabList = styled("div", {
9762
9969
  shouldForwardProp: (prop) => prop !== "$variant"
9763
9970
  })(({ theme, $variant }) => ({
@@ -9837,7 +10044,7 @@ var Tabs = forwardRef(
9837
10044
  onChange?.(key);
9838
10045
  };
9839
10046
  const activeTab = tabs.find((t) => t.key === activeKey);
9840
- return /* @__PURE__ */ jsxs(Root42, { ref, ...props, children: [
10047
+ return /* @__PURE__ */ jsxs(Root47, { ref, ...props, children: [
9841
10048
  /* @__PURE__ */ jsx(TabList, { role: "tablist", $variant: variant, children: tabs.map((tab) => /* @__PURE__ */ jsx(
9842
10049
  TabButton,
9843
10050
  {
@@ -9869,6 +10076,79 @@ var Tabs = forwardRef(
9869
10076
  );
9870
10077
  Tabs.displayName = "Tabs";
9871
10078
  var tabsVariants = ["underline", "pills", "bordered"];
10079
+ var Root48 = styled("div")(({ theme }) => ({
10080
+ display: "grid",
10081
+ gridTemplateColumns: "4.5rem 1fr",
10082
+ gap: "0.875rem",
10083
+ paddingBottom: "1rem",
10084
+ borderBottom: `1px solid ${theme.palette.divider}`
10085
+ }));
10086
+ var ImageWrap5 = styled("div")(({ theme }) => ({
10087
+ position: "relative",
10088
+ width: "4.5rem",
10089
+ height: "4.5rem",
10090
+ borderRadius: theme.shape.borderRadius,
10091
+ overflow: "hidden",
10092
+ flexShrink: 0
10093
+ }));
10094
+ var Info4 = styled("div")({ display: "grid", gap: "0.5rem" });
10095
+ var Row5 = styled("div")({
10096
+ display: "flex",
10097
+ alignItems: "center",
10098
+ justifyContent: "space-between",
10099
+ gap: "0.75rem"
10100
+ });
10101
+ var Name10 = styled("p")(({ theme }) => ({
10102
+ margin: 0,
10103
+ color: theme.palette.text.primary,
10104
+ fontFamily: theme.typography.fontFamily,
10105
+ fontWeight: 700
10106
+ }));
10107
+ var Price3 = styled("p")(({ theme }) => ({
10108
+ margin: 0,
10109
+ color: theme.palette.text.secondary,
10110
+ fontFamily: theme.typography.fontFamily,
10111
+ fontSize: "0.875rem"
10112
+ }));
10113
+ var RemoveButton2 = styled("button")(({ theme }) => ({
10114
+ border: 0,
10115
+ background: "transparent",
10116
+ color: theme.palette.error.main,
10117
+ cursor: "pointer",
10118
+ padding: 0,
10119
+ fontFamily: theme.typography.fontFamily,
10120
+ fontSize: "0.875rem"
10121
+ }));
10122
+ var CartDrawerItem = ({
10123
+ id,
10124
+ name,
10125
+ price,
10126
+ quantity,
10127
+ imageUrl,
10128
+ imageAlt,
10129
+ onQuantityChange,
10130
+ onRemove
10131
+ }) => /* @__PURE__ */ jsxs(Root48, { children: [
10132
+ /* @__PURE__ */ jsx(ImageWrap5, { children: /* @__PURE__ */ jsx(ProductCardImage, { src: imageUrl, alt: imageAlt ?? name }) }),
10133
+ /* @__PURE__ */ jsxs(Info4, { children: [
10134
+ /* @__PURE__ */ jsxs(Row5, { children: [
10135
+ /* @__PURE__ */ jsx(Name10, { children: name }),
10136
+ /* @__PURE__ */ jsx(Price3, { children: price })
10137
+ ] }),
10138
+ /* @__PURE__ */ jsxs(Row5, { children: [
10139
+ /* @__PURE__ */ jsx(
10140
+ QuantitySelector,
10141
+ {
10142
+ value: quantity,
10143
+ min: 1,
10144
+ onChange: (qty) => onQuantityChange?.(id, qty)
10145
+ }
10146
+ ),
10147
+ /* @__PURE__ */ jsx(RemoveButton2, { type: "button", onClick: () => onRemove?.(id), children: "Usu\u0144" })
10148
+ ] })
10149
+ ] })
10150
+ ] });
10151
+ CartDrawerItem.displayName = "CartDrawerItem";
9872
10152
  var Overlay3 = styled("div")(({ $open }) => ({
9873
10153
  position: "fixed",
9874
10154
  inset: 0,
@@ -9888,7 +10168,7 @@ var Panel3 = styled("aside")(({ theme }) => ({
9888
10168
  boxShadow: theme.shadows[5],
9889
10169
  fontFamily: theme.typography.fontFamily
9890
10170
  }));
9891
- var Header2 = styled("div")(({ theme }) => ({
10171
+ var Header3 = styled("div")(({ theme }) => ({
9892
10172
  display: "flex",
9893
10173
  alignItems: "center",
9894
10174
  justifyContent: "space-between",
@@ -9901,63 +10181,24 @@ var Title8 = styled("h2")(({ theme }) => ({
9901
10181
  color: theme.palette.text.primary
9902
10182
  }));
9903
10183
  var IconButton = styled("button")(({ theme }) => ({
9904
- border: 0,
9905
- background: "transparent",
9906
- color: theme.palette.text.primary,
9907
- cursor: "pointer",
9908
- fontSize: "1.5rem"
9909
- }));
9910
- var Items = styled("div")({
9911
- display: "grid",
9912
- gap: "1rem",
9913
- padding: "1rem 1.25rem",
9914
- overflow: "auto"
9915
- });
9916
- var Item3 = styled("div")(({ theme }) => ({
9917
- display: "grid",
9918
- gridTemplateColumns: "4.5rem 1fr",
9919
- gap: "0.875rem",
9920
- paddingBottom: "1rem",
9921
- borderBottom: `1px solid ${theme.palette.divider}`
9922
- }));
9923
- var ItemImage = styled("img")(({ theme }) => ({
9924
- width: "4.5rem",
9925
- height: "4.5rem",
9926
- borderRadius: theme.shape.borderRadius,
9927
- objectFit: "cover",
9928
- backgroundColor: theme.palette.action.hover
9929
- }));
9930
- var PlaceholderImage = styled("div")(({ theme }) => ({
9931
- width: "4.5rem",
9932
- height: "4.5rem",
9933
- borderRadius: theme.shape.borderRadius,
9934
- backgroundColor: theme.palette.action.hover
9935
- }));
9936
- var ItemInfo = styled("div")({ display: "grid", gap: "0.5rem" });
9937
- var ItemName = styled("p")(({ theme }) => ({
9938
- margin: 0,
9939
- color: theme.palette.text.primary,
9940
- fontWeight: 700
9941
- }));
9942
- var ItemMeta = styled("p")(({ theme }) => ({
9943
- margin: 0,
9944
- color: theme.palette.text.secondary,
9945
- fontSize: "0.875rem"
10184
+ border: 0,
10185
+ background: "transparent",
10186
+ color: theme.palette.text.primary,
10187
+ cursor: "pointer",
10188
+ fontSize: "1.5rem"
9946
10189
  }));
9947
- var Row4 = styled("div")({
10190
+ var Items = styled("div")({
10191
+ display: "grid",
10192
+ gap: "1rem",
10193
+ padding: "1rem 1.25rem",
10194
+ overflow: "auto"
10195
+ });
10196
+ var Row6 = styled("div")({
9948
10197
  display: "flex",
9949
10198
  alignItems: "center",
9950
10199
  justifyContent: "space-between",
9951
10200
  gap: "0.75rem"
9952
10201
  });
9953
- var RemoveButton2 = styled("button")(({ theme }) => ({
9954
- border: 0,
9955
- background: "transparent",
9956
- color: theme.palette.error.main,
9957
- cursor: "pointer",
9958
- padding: 0,
9959
- fontSize: "0.875rem"
9960
- }));
9961
10202
  var Footer5 = styled("div")(({ theme }) => ({
9962
10203
  display: "grid",
9963
10204
  gap: "1rem",
@@ -9979,32 +10220,21 @@ var CartDrawer = forwardRef(
9979
10220
  onRemove,
9980
10221
  ...props
9981
10222
  }, ref) => /* @__PURE__ */ jsx(Overlay3, { $open: open, children: /* @__PURE__ */ jsxs(Panel3, { ref, "aria-hidden": !open, "aria-label": title, ...props, children: [
9982
- /* @__PURE__ */ jsxs(Header2, { children: [
10223
+ /* @__PURE__ */ jsxs(Header3, { children: [
9983
10224
  /* @__PURE__ */ jsx(Title8, { children: title }),
9984
10225
  /* @__PURE__ */ jsx(IconButton, { type: "button", "aria-label": closeLabel, onClick: onClose, children: "\xD7" })
9985
10226
  ] }),
9986
- /* @__PURE__ */ jsx(Items, { children: items.map((item) => /* @__PURE__ */ jsxs(Item3, { children: [
9987
- item.imageUrl ? /* @__PURE__ */ jsx(ItemImage, { src: item.imageUrl, alt: item.imageAlt ?? item.name }) : /* @__PURE__ */ jsx(PlaceholderImage, {}),
9988
- /* @__PURE__ */ jsxs(ItemInfo, { children: [
9989
- /* @__PURE__ */ jsxs(Row4, { children: [
9990
- /* @__PURE__ */ jsx(ItemName, { children: item.name }),
9991
- /* @__PURE__ */ jsx(ItemMeta, { children: item.price })
9992
- ] }),
9993
- /* @__PURE__ */ jsxs(Row4, { children: [
9994
- /* @__PURE__ */ jsx(
9995
- QuantitySelector,
9996
- {
9997
- value: item.quantity,
9998
- min: 1,
9999
- onChange: (quantity) => onQuantityChange?.(item.id, quantity)
10000
- }
10001
- ),
10002
- /* @__PURE__ */ jsx(RemoveButton2, { type: "button", onClick: () => onRemove?.(item.id), children: "Usu\u0144" })
10003
- ] })
10004
- ] })
10005
- ] }, item.id)) }),
10227
+ /* @__PURE__ */ jsx(Items, { children: items.map((item) => /* @__PURE__ */ jsx(
10228
+ CartDrawerItem,
10229
+ {
10230
+ ...item,
10231
+ onQuantityChange,
10232
+ onRemove
10233
+ },
10234
+ item.id
10235
+ )) }),
10006
10236
  /* @__PURE__ */ jsxs(Footer5, { children: [
10007
- /* @__PURE__ */ jsxs(Row4, { children: [
10237
+ /* @__PURE__ */ jsxs(Row6, { children: [
10008
10238
  /* @__PURE__ */ jsx("strong", { children: "Suma" }),
10009
10239
  /* @__PURE__ */ jsx("strong", { children: subtotal })
10010
10240
  ] }),
@@ -10013,7 +10243,7 @@ var CartDrawer = forwardRef(
10013
10243
  ] }) })
10014
10244
  );
10015
10245
  CartDrawer.displayName = "CartDrawer";
10016
- var Root43 = styled("aside")(({ theme }) => ({
10246
+ var Root49 = styled("aside")(({ theme }) => ({
10017
10247
  display: "grid",
10018
10248
  gap: "1.5rem",
10019
10249
  width: "100%",
@@ -10024,7 +10254,7 @@ var Root43 = styled("aside")(({ theme }) => ({
10024
10254
  backgroundColor: theme.palette.background.paper,
10025
10255
  fontFamily: theme.typography.fontFamily
10026
10256
  }));
10027
- var Header3 = styled("div")({
10257
+ var Header4 = styled("div")({
10028
10258
  display: "flex",
10029
10259
  alignItems: "center",
10030
10260
  justifyContent: "space-between",
@@ -10105,8 +10335,8 @@ var FilterSidebar = forwardRef(
10105
10335
  onPriceRangeChange,
10106
10336
  onClear,
10107
10337
  ...props
10108
- }, ref) => /* @__PURE__ */ jsxs(Root43, { ref, "aria-label": "Filtry produkt\xF3w", ...props, children: [
10109
- /* @__PURE__ */ jsxs(Header3, { children: [
10338
+ }, ref) => /* @__PURE__ */ jsxs(Root49, { ref, "aria-label": "Filtry produkt\xF3w", ...props, children: [
10339
+ /* @__PURE__ */ jsxs(Header4, { children: [
10110
10340
  /* @__PURE__ */ jsx(Title9, { children: "Filtry" }),
10111
10341
  onClear && /* @__PURE__ */ jsx(Button, { variant: "ghost", size: "sm", onClick: onClear, children: "Wyczy\u015B\u0107" })
10112
10342
  ] }),
@@ -10148,52 +10378,22 @@ var FilterSidebar = forwardRef(
10148
10378
  ] })
10149
10379
  );
10150
10380
  FilterSidebar.displayName = "FilterSidebar";
10151
- var Root44 = styled(Card)({ display: "grid", gap: "1rem" });
10152
- var Title10 = styled("h2")(({ theme }) => ({
10153
- margin: 0,
10154
- fontFamily: theme.typography.fontFamily,
10155
- fontSize: "1.125rem",
10156
- fontWeight: 800,
10157
- color: theme.palette.text.primary
10158
- }));
10159
- var Rows = styled("dl")({ display: "grid", gap: "0.75rem", margin: 0 });
10160
- var SectionTitle = styled("h3")(({ theme }) => ({
10161
- margin: 0,
10162
- fontFamily: theme.typography.fontFamily,
10163
- fontSize: "0.875rem",
10164
- fontWeight: 800,
10165
- color: theme.palette.text.primary
10166
- }));
10167
- var ItemList = styled("ul")({
10168
- display: "grid",
10169
- gap: "0.875rem",
10170
- padding: 0,
10171
- margin: 0,
10172
- listStyle: "none"
10173
- });
10174
- var Item4 = styled("li")({
10381
+ var Root50 = styled("li")({
10175
10382
  display: "grid",
10176
10383
  gridTemplateColumns: "3.5rem 1fr auto",
10177
10384
  alignItems: "center",
10178
10385
  gap: "0.75rem"
10179
10386
  });
10180
- var ItemImage2 = styled("img")(({ theme }) => ({
10181
- width: "3.5rem",
10182
- height: "3.5rem",
10183
- borderRadius: theme.shape.borderRadius,
10184
- objectFit: "cover",
10185
- backgroundColor: theme.palette.action.hover
10186
- }));
10187
- var ItemImagePlaceholder = styled("div")(({ theme }) => ({
10387
+ var ImageWrap6 = styled("div")(({ theme }) => ({
10388
+ position: "relative",
10188
10389
  width: "3.5rem",
10189
10390
  height: "3.5rem",
10190
10391
  borderRadius: theme.shape.borderRadius,
10191
- backgroundColor: theme.palette.action.hover
10392
+ overflow: "hidden",
10393
+ flexShrink: 0
10192
10394
  }));
10193
- var ItemInfo2 = styled("div")({
10194
- minWidth: 0
10195
- });
10196
- var ItemName2 = styled("p")(({ theme }) => ({
10395
+ var Info5 = styled("div")({ minWidth: 0 });
10396
+ var Name11 = styled("p")(({ theme }) => ({
10197
10397
  margin: 0,
10198
10398
  color: theme.palette.text.primary,
10199
10399
  fontFamily: theme.typography.fontFamily,
@@ -10201,39 +10401,88 @@ var ItemName2 = styled("p")(({ theme }) => ({
10201
10401
  fontWeight: 700,
10202
10402
  lineHeight: 1.4
10203
10403
  }));
10204
- var ItemMeta2 = styled("p")(({ theme }) => ({
10404
+ var Meta2 = styled("p")(({ theme }) => ({
10205
10405
  margin: "0.25rem 0 0",
10206
10406
  color: theme.palette.text.secondary,
10207
10407
  fontFamily: theme.typography.fontFamily,
10208
10408
  fontSize: "0.8125rem",
10209
10409
  lineHeight: 1.4
10210
10410
  }));
10211
- var ItemPrice = styled("span")(({ theme }) => ({
10411
+ var Price4 = styled("span")(({ theme }) => ({
10212
10412
  color: theme.palette.text.primary,
10213
10413
  fontFamily: theme.typography.fontFamily,
10214
10414
  fontSize: "0.875rem",
10215
10415
  fontWeight: 800,
10216
10416
  whiteSpace: "nowrap"
10217
10417
  }));
10218
- var Row5 = styled("div")(({ theme }) => ({
10418
+ var OrderSummaryItem = ({
10419
+ name,
10420
+ price,
10421
+ imageUrl,
10422
+ imageAlt,
10423
+ quantity,
10424
+ meta
10425
+ }) => /* @__PURE__ */ jsxs(Root50, { children: [
10426
+ /* @__PURE__ */ jsx(ImageWrap6, { children: /* @__PURE__ */ jsx(ProductCardImage, { src: imageUrl, alt: imageAlt ?? String(name) }) }),
10427
+ /* @__PURE__ */ jsxs(Info5, { children: [
10428
+ /* @__PURE__ */ jsx(Name11, { children: name }),
10429
+ (quantity !== void 0 || meta) && /* @__PURE__ */ jsxs(Meta2, { children: [
10430
+ quantity !== void 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
10431
+ "Ilo\u015B\u0107: ",
10432
+ quantity
10433
+ ] }),
10434
+ quantity !== void 0 && meta && " \xB7 ",
10435
+ meta
10436
+ ] })
10437
+ ] }),
10438
+ /* @__PURE__ */ jsx(Price4, { children: price })
10439
+ ] });
10440
+ OrderSummaryItem.displayName = "OrderSummaryItem";
10441
+ var Root51 = styled("div", {
10442
+ shouldForwardProp: (prop) => prop !== "$total"
10443
+ })(({ theme, $total }) => ({
10219
10444
  display: "flex",
10220
10445
  justifyContent: "space-between",
10221
10446
  gap: "1rem",
10222
- color: theme.palette.text.secondary,
10447
+ color: $total ? theme.palette.text.primary : theme.palette.text.secondary,
10223
10448
  fontFamily: theme.typography.fontFamily,
10224
- fontSize: "0.875rem",
10449
+ fontSize: $total ? "1rem" : "0.875rem",
10450
+ fontWeight: $total ? 800 : 400,
10225
10451
  "& dt, & dd": { margin: 0 }
10226
10452
  }));
10453
+ var OrderSummaryRow = ({ label, value, total = false }) => /* @__PURE__ */ jsxs(Root51, { as: "div", $total: total, children: [
10454
+ /* @__PURE__ */ jsx("dt", { children: label }),
10455
+ /* @__PURE__ */ jsx("dd", { children: value })
10456
+ ] });
10457
+ OrderSummaryRow.displayName = "OrderSummaryRow";
10458
+ var Root52 = styled(Card)({ display: "grid", gap: "1rem" });
10459
+ var Title10 = styled("h2")(({ theme }) => ({
10460
+ margin: 0,
10461
+ fontFamily: theme.typography.fontFamily,
10462
+ fontSize: "1.125rem",
10463
+ fontWeight: 800,
10464
+ color: theme.palette.text.primary
10465
+ }));
10466
+ var Rows = styled("dl")({ display: "grid", gap: "0.75rem", margin: 0 });
10467
+ var SectionTitle = styled("h3")(({ theme }) => ({
10468
+ margin: 0,
10469
+ fontFamily: theme.typography.fontFamily,
10470
+ fontSize: "0.875rem",
10471
+ fontWeight: 800,
10472
+ color: theme.palette.text.primary
10473
+ }));
10474
+ var ItemList = styled("ul")({
10475
+ display: "grid",
10476
+ gap: "0.875rem",
10477
+ padding: 0,
10478
+ margin: 0,
10479
+ listStyle: "none"
10480
+ });
10227
10481
  var Divider3 = styled("hr")(({ theme }) => ({
10228
10482
  width: "100%",
10229
10483
  border: 0,
10230
10484
  borderTop: `1px solid ${theme.palette.divider}`
10231
10485
  }));
10232
- var TotalRow = styled(Row5)(({ theme }) => ({
10233
- color: theme.palette.text.primary,
10234
- fontSize: "1rem",
10235
- fontWeight: 800
10236
- }));
10237
10486
  var OrderSummary = forwardRef(
10238
10487
  ({
10239
10488
  title = "Podsumowanie zam\xF3wienia",
@@ -10248,59 +10497,27 @@ var OrderSummary = forwardRef(
10248
10497
  ctaLabel = "Przejd\u017A do kasy",
10249
10498
  onCheckout,
10250
10499
  ...props
10251
- }, ref) => /* @__PURE__ */ jsxs(Root44, { ref, variant: "default", padding: "lg", rounded: "lg", ...props, children: [
10500
+ }, ref) => /* @__PURE__ */ jsxs(Root52, { ref, variant: "default", padding: "lg", rounded: "lg", ...props, children: [
10252
10501
  /* @__PURE__ */ jsx(Title10, { children: title }),
10253
10502
  items.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
10254
10503
  /* @__PURE__ */ jsx(SectionTitle, { children: itemsTitle }),
10255
- /* @__PURE__ */ jsx(ItemList, { children: items.map((item) => /* @__PURE__ */ jsxs(Item4, { children: [
10256
- item.imageUrl ? /* @__PURE__ */ jsx(ItemImage2, { src: item.imageUrl, alt: item.imageAlt ?? String(item.name) }) : /* @__PURE__ */ jsx(ItemImagePlaceholder, { "aria-hidden": "true" }),
10257
- /* @__PURE__ */ jsxs(ItemInfo2, { children: [
10258
- /* @__PURE__ */ jsx(ItemName2, { children: item.name }),
10259
- (item.quantity !== void 0 || item.meta) && /* @__PURE__ */ jsxs(ItemMeta2, { children: [
10260
- item.quantity !== void 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
10261
- "Ilo\u015B\u0107: ",
10262
- item.quantity
10263
- ] }),
10264
- item.quantity !== void 0 && item.meta && " \xB7 ",
10265
- item.meta
10266
- ] })
10267
- ] }),
10268
- /* @__PURE__ */ jsx(ItemPrice, { children: item.price })
10269
- ] }, item.id)) }),
10504
+ /* @__PURE__ */ jsx(ItemList, { children: items.map((item) => /* @__PURE__ */ jsx(OrderSummaryItem, { ...item }, item.id)) }),
10270
10505
  /* @__PURE__ */ jsx(Divider3, {})
10271
10506
  ] }),
10272
10507
  /* @__PURE__ */ jsxs(Rows, { children: [
10273
- /* @__PURE__ */ jsxs(Row5, { children: [
10274
- /* @__PURE__ */ jsx("dt", { children: "Warto\u015B\u0107 produkt\xF3w" }),
10275
- /* @__PURE__ */ jsx("dd", { children: subtotal })
10276
- ] }),
10277
- shipping !== void 0 && /* @__PURE__ */ jsxs(Row5, { children: [
10278
- /* @__PURE__ */ jsx("dt", { children: "Dostawa" }),
10279
- /* @__PURE__ */ jsx("dd", { children: shipping })
10280
- ] }),
10281
- tax !== void 0 && /* @__PURE__ */ jsxs(Row5, { children: [
10282
- /* @__PURE__ */ jsx("dt", { children: "Podatek" }),
10283
- /* @__PURE__ */ jsx("dd", { children: tax })
10284
- ] }),
10285
- discount !== void 0 && /* @__PURE__ */ jsxs(Row5, { children: [
10286
- /* @__PURE__ */ jsx("dt", { children: "Rabat" }),
10287
- /* @__PURE__ */ jsx("dd", { children: discount })
10288
- ] }),
10289
- lines.map((line, index) => /* @__PURE__ */ jsxs(Row5, { children: [
10290
- /* @__PURE__ */ jsx("dt", { children: line.label }),
10291
- /* @__PURE__ */ jsx("dd", { children: line.value })
10292
- ] }, index))
10508
+ /* @__PURE__ */ jsx(OrderSummaryRow, { label: "Warto\u015B\u0107 produkt\xF3w", value: subtotal }),
10509
+ shipping !== void 0 && /* @__PURE__ */ jsx(OrderSummaryRow, { label: "Dostawa", value: shipping }),
10510
+ tax !== void 0 && /* @__PURE__ */ jsx(OrderSummaryRow, { label: "Podatek", value: tax }),
10511
+ discount !== void 0 && /* @__PURE__ */ jsx(OrderSummaryRow, { label: "Rabat", value: discount }),
10512
+ lines.map((line, index) => /* @__PURE__ */ jsx(OrderSummaryRow, { label: line.label, value: line.value }, index))
10293
10513
  ] }),
10294
10514
  /* @__PURE__ */ jsx(Divider3, {}),
10295
- /* @__PURE__ */ jsx(Rows, { children: /* @__PURE__ */ jsxs(TotalRow, { children: [
10296
- /* @__PURE__ */ jsx("dt", { children: "Razem" }),
10297
- /* @__PURE__ */ jsx("dd", { children: total })
10298
- ] }) }),
10515
+ /* @__PURE__ */ jsx(Rows, { children: /* @__PURE__ */ jsx(OrderSummaryRow, { label: "Razem", value: total, total: true }) }),
10299
10516
  /* @__PURE__ */ jsx(Button, { fullWidth: true, onClick: onCheckout, children: ctaLabel })
10300
10517
  ] })
10301
10518
  );
10302
10519
  OrderSummary.displayName = "OrderSummary";
10303
- var Root45 = styled("div")(({ theme }) => ({
10520
+ var Root53 = styled("div")(({ theme }) => ({
10304
10521
  fontFamily: theme.typography.fontFamily
10305
10522
  }));
10306
10523
  var Grid2 = styled("div", {
@@ -10335,17 +10552,81 @@ var ScrollTrack = styled("div")({
10335
10552
  }
10336
10553
  });
10337
10554
  var RelatedProducts = forwardRef(
10338
- ({ products, title = "Podobne produkty", layout = "grid", columns = 4, ...props }, ref) => /* @__PURE__ */ jsxs(Root45, { ref, ...props, children: [
10555
+ ({ products, title = "Podobne produkty", layout = "grid", columns = 4, ...props }, ref) => /* @__PURE__ */ jsxs(Root53, { ref, ...props, children: [
10339
10556
  /* @__PURE__ */ jsx(SectionHeading, { title, align: "left", style: { marginBottom: "1.5rem" } }),
10340
10557
  layout === "scroll" ? /* @__PURE__ */ jsx(ScrollTrack, { children: products.map((product, i) => /* @__PURE__ */ jsx(ProductCard, { ...product }, product.name + i)) }) : /* @__PURE__ */ jsx(Grid2, { $columns: columns, children: products.map((product, i) => /* @__PURE__ */ jsx(ProductCard, { ...product }, product.name + i)) })
10341
10558
  ] })
10342
10559
  );
10343
10560
  RelatedProducts.displayName = "RelatedProducts";
10344
10561
  var relatedProductsLayouts = ["grid", "scroll"];
10345
- var Root46 = styled("div")(({ theme }) => ({
10562
+ var Card2 = styled("div")(({ theme }) => ({
10563
+ padding: "1.25rem",
10564
+ border: `1px solid ${theme.palette.divider}`,
10565
+ borderRadius: theme.shape.borderRadius,
10566
+ display: "flex",
10567
+ flexDirection: "column",
10568
+ gap: "0.75rem",
10346
10569
  fontFamily: theme.typography.fontFamily
10347
10570
  }));
10348
- var Summary = styled("div")(({ theme }) => ({
10571
+ var Header5 = styled("div")({
10572
+ display: "flex",
10573
+ alignItems: "flex-start",
10574
+ gap: "0.875rem"
10575
+ });
10576
+ var AuthorInfo = styled("div")({ flex: 1 });
10577
+ var AuthorName = styled("div")(({ theme }) => ({
10578
+ display: "flex",
10579
+ alignItems: "center",
10580
+ gap: "0.375rem",
10581
+ fontSize: "0.9375rem",
10582
+ fontWeight: 700,
10583
+ color: theme.palette.text.primary
10584
+ }));
10585
+ var ReviewDate = styled("div")(({ theme }) => ({
10586
+ fontSize: "0.8125rem",
10587
+ color: theme.palette.text.secondary,
10588
+ marginTop: "0.125rem"
10589
+ }));
10590
+ var Title11 = styled("div")(({ theme }) => ({
10591
+ fontSize: "0.9375rem",
10592
+ fontWeight: 700,
10593
+ color: theme.palette.text.primary
10594
+ }));
10595
+ var Content3 = styled("p")(({ theme }) => ({
10596
+ margin: 0,
10597
+ fontSize: "0.9375rem",
10598
+ color: theme.palette.text.secondary,
10599
+ lineHeight: 1.6
10600
+ }));
10601
+ var HelpfulRow = styled("div")(({ theme }) => ({
10602
+ display: "flex",
10603
+ alignItems: "center",
10604
+ gap: "0.375rem",
10605
+ fontSize: "0.8125rem",
10606
+ color: theme.palette.text.secondary
10607
+ }));
10608
+ var ReviewItem = ({ review }) => /* @__PURE__ */ jsxs(Card2, { children: [
10609
+ /* @__PURE__ */ jsxs(Header5, { children: [
10610
+ /* @__PURE__ */ jsx(Avatar, { initials: review.author.slice(0, 2).toUpperCase(), size: "sm" }),
10611
+ /* @__PURE__ */ jsxs(AuthorInfo, { children: [
10612
+ /* @__PURE__ */ jsxs(AuthorName, { children: [
10613
+ review.author,
10614
+ review.verified && /* @__PURE__ */ jsx(VerifiedIcon, { "aria-label": "Zweryfikowany zakup", style: { fontSize: 14, color: "#16a34a" } })
10615
+ ] }),
10616
+ /* @__PURE__ */ jsx(ReviewDate, { children: review.date })
10617
+ ] }),
10618
+ /* @__PURE__ */ jsx(Rating, { value: review.rating, size: "sm", readonly: true })
10619
+ ] }),
10620
+ review.title && /* @__PURE__ */ jsx(Title11, { children: review.title }),
10621
+ /* @__PURE__ */ jsx(Content3, { children: review.content }),
10622
+ review.helpfulCount !== void 0 && /* @__PURE__ */ jsxs(HelpfulRow, { children: [
10623
+ /* @__PURE__ */ jsx(ThumbUpOutlinedIcon, { "aria-hidden": true, style: { fontSize: 14 } }),
10624
+ review.helpfulCount,
10625
+ " os\xF3b uzna\u0142o t\u0119 recenzj\u0119 za pomocn\u0105"
10626
+ ] })
10627
+ ] });
10628
+ ReviewItem.displayName = "ReviewItem";
10629
+ var Root54 = styled("div")(({ theme }) => ({
10349
10630
  display: "flex",
10350
10631
  alignItems: "center",
10351
10632
  gap: "2rem",
@@ -10353,7 +10634,7 @@ var Summary = styled("div")(({ theme }) => ({
10353
10634
  padding: "1.5rem",
10354
10635
  backgroundColor: theme.palette.action.hover,
10355
10636
  borderRadius: theme.shape.borderRadius,
10356
- marginBottom: "2rem"
10637
+ fontFamily: theme.typography.fontFamily
10357
10638
  }));
10358
10639
  var AverageBlock = styled("div")({
10359
10640
  display: "flex",
@@ -10361,13 +10642,23 @@ var AverageBlock = styled("div")({
10361
10642
  alignItems: "center",
10362
10643
  gap: "0.25rem"
10363
10644
  });
10364
- var AverageScore = styled("span")(({ theme }) => ({
10645
+ var Score = styled("span")(({ theme }) => ({
10365
10646
  fontSize: "3rem",
10366
10647
  fontWeight: 800,
10367
10648
  lineHeight: 1,
10368
10649
  color: theme.palette.text.primary
10369
10650
  }));
10370
- var Distribution = styled("div")({ flex: 1, display: "flex", flexDirection: "column", gap: "0.375rem" });
10651
+ var ReviewCount = styled("span")(({ theme }) => ({
10652
+ fontSize: "0.8125rem",
10653
+ marginTop: "0.25rem",
10654
+ color: theme.palette.text.secondary
10655
+ }));
10656
+ var Distribution = styled("div")({
10657
+ flex: 1,
10658
+ display: "flex",
10659
+ flexDirection: "column",
10660
+ gap: "0.375rem"
10661
+ });
10371
10662
  var DistRow = styled("div")({ display: "flex", alignItems: "center", gap: "0.75rem" });
10372
10663
  var DistLabel = styled("span")(({ theme }) => ({
10373
10664
  fontSize: "0.8125rem",
@@ -10391,117 +10682,60 @@ var DistFill = styled("div", {
10391
10682
  borderRadius: "9999px",
10392
10683
  transition: "width 400ms ease"
10393
10684
  }));
10685
+ var ReviewSummary = ({
10686
+ averageRating,
10687
+ totalReviews,
10688
+ ratingDistribution
10689
+ }) => {
10690
+ const totalDist = ratingDistribution ? Object.values(ratingDistribution).reduce((a, b) => a + b, 0) : 0;
10691
+ return /* @__PURE__ */ jsxs(Root54, { children: [
10692
+ /* @__PURE__ */ jsxs(AverageBlock, { children: [
10693
+ /* @__PURE__ */ jsx(Score, { children: averageRating.toFixed(1) }),
10694
+ /* @__PURE__ */ jsx(Rating, { value: averageRating, size: "sm", readonly: true }),
10695
+ totalReviews !== void 0 && /* @__PURE__ */ jsxs(ReviewCount, { children: [
10696
+ totalReviews,
10697
+ " opinii"
10698
+ ] })
10699
+ ] }),
10700
+ ratingDistribution && /* @__PURE__ */ jsx(Distribution, { children: [5, 4, 3, 2, 1].map((star) => {
10701
+ const count = ratingDistribution[star] ?? 0;
10702
+ const pct2 = totalDist > 0 ? count / totalDist * 100 : 0;
10703
+ return /* @__PURE__ */ jsxs(DistRow, { children: [
10704
+ /* @__PURE__ */ jsxs(DistLabel, { children: [
10705
+ star,
10706
+ "\u2605"
10707
+ ] }),
10708
+ /* @__PURE__ */ jsx(DistBar, { children: /* @__PURE__ */ jsx(DistFill, { $pct: pct2 }) }),
10709
+ /* @__PURE__ */ jsx(DistLabel, { style: { textAlign: "left" }, children: count })
10710
+ ] }, star);
10711
+ }) })
10712
+ ] });
10713
+ };
10714
+ ReviewSummary.displayName = "ReviewSummary";
10715
+ var Root55 = styled("div")(({ theme }) => ({
10716
+ fontFamily: theme.typography.fontFamily
10717
+ }));
10394
10718
  var ReviewList = styled("div")({
10395
10719
  display: "flex",
10396
10720
  flexDirection: "column",
10397
10721
  gap: "1.5rem"
10398
10722
  });
10399
- var ReviewCard = styled("div")(({ theme }) => ({
10400
- padding: "1.25rem",
10401
- border: `1px solid ${theme.palette.divider}`,
10402
- borderRadius: theme.shape.borderRadius,
10403
- display: "flex",
10404
- flexDirection: "column",
10405
- gap: "0.75rem"
10406
- }));
10407
- var ReviewHeader = styled("div")({
10408
- display: "flex",
10409
- alignItems: "flex-start",
10410
- gap: "0.875rem"
10411
- });
10412
- var AuthorInfo2 = styled("div")({ flex: 1 });
10413
- var AuthorName2 = styled("div")(({ theme }) => ({
10414
- display: "flex",
10415
- alignItems: "center",
10416
- gap: "0.375rem",
10417
- fontSize: "0.9375rem",
10418
- fontWeight: 700,
10419
- color: theme.palette.text.primary
10420
- }));
10421
- var ReviewDate = styled("div")(({ theme }) => ({
10422
- fontSize: "0.8125rem",
10423
- color: theme.palette.text.secondary,
10424
- marginTop: "0.125rem"
10425
- }));
10426
- var ReviewTitle = styled("div")(({ theme }) => ({
10427
- fontSize: "0.9375rem",
10428
- fontWeight: 700,
10429
- color: theme.palette.text.primary
10430
- }));
10431
- var ReviewContent = styled("p")(({ theme }) => ({
10432
- margin: 0,
10433
- fontSize: "0.9375rem",
10434
- color: theme.palette.text.secondary,
10435
- lineHeight: 1.6
10436
- }));
10437
- var HelpfulRow = styled("div")(({ theme }) => ({
10438
- display: "flex",
10439
- alignItems: "center",
10440
- gap: "0.375rem",
10441
- fontSize: "0.8125rem",
10442
- color: theme.palette.text.secondary
10443
- }));
10444
- function ReviewItem({ review }) {
10445
- return /* @__PURE__ */ jsxs(ReviewCard, { children: [
10446
- /* @__PURE__ */ jsxs(ReviewHeader, { children: [
10447
- /* @__PURE__ */ jsx(
10448
- Avatar,
10449
- {
10450
- initials: review.author.slice(0, 2).toUpperCase(),
10451
- size: "sm"
10452
- }
10453
- ),
10454
- /* @__PURE__ */ jsxs(AuthorInfo2, { children: [
10455
- /* @__PURE__ */ jsxs(AuthorName2, { children: [
10456
- review.author,
10457
- review.verified && /* @__PURE__ */ jsx(VerifiedIcon, { "aria-label": "Zweryfikowany zakup", style: { fontSize: 14, color: "#16a34a" } })
10458
- ] }),
10459
- /* @__PURE__ */ jsx(ReviewDate, { children: review.date })
10460
- ] }),
10461
- /* @__PURE__ */ jsx(Rating, { value: review.rating, size: "sm", readonly: true })
10462
- ] }),
10463
- review.title && /* @__PURE__ */ jsx(ReviewTitle, { children: review.title }),
10464
- /* @__PURE__ */ jsx(ReviewContent, { children: review.content }),
10465
- review.helpfulCount !== void 0 && /* @__PURE__ */ jsxs(HelpfulRow, { children: [
10466
- /* @__PURE__ */ jsx(ThumbUpOutlinedIcon, { "aria-hidden": true, style: { fontSize: 14 } }),
10467
- review.helpfulCount,
10468
- " os\xF3b uzna\u0142o t\u0119 recenzj\u0119 za pomocn\u0105"
10469
- ] })
10470
- ] });
10471
- }
10472
10723
  var ReviewSection = forwardRef(
10473
- ({ reviews, averageRating, totalReviews, title = "Opinie klient\xF3w", ratingDistribution, ...props }, ref) => {
10474
- const totalDist = ratingDistribution ? Object.values(ratingDistribution).reduce((a, b) => a + b, 0) : 0;
10475
- return /* @__PURE__ */ jsxs(Root46, { ref, ...props, children: [
10476
- /* @__PURE__ */ jsx(SectionHeading, { title, align: "left", style: { marginBottom: "1.5rem" } }),
10477
- (averageRating !== void 0 || ratingDistribution) && /* @__PURE__ */ jsxs(Summary, { children: [
10478
- averageRating !== void 0 && /* @__PURE__ */ jsxs(AverageBlock, { children: [
10479
- /* @__PURE__ */ jsx(AverageScore, { children: averageRating.toFixed(1) }),
10480
- /* @__PURE__ */ jsx(Rating, { value: averageRating, size: "sm", readonly: true }),
10481
- totalReviews !== void 0 && /* @__PURE__ */ jsxs("span", { style: { fontSize: "0.8125rem", marginTop: "0.25rem" }, children: [
10482
- totalReviews,
10483
- " opinii"
10484
- ] })
10485
- ] }),
10486
- ratingDistribution && /* @__PURE__ */ jsx(Distribution, { children: [5, 4, 3, 2, 1].map((star) => {
10487
- const count = ratingDistribution[star] ?? 0;
10488
- const pct2 = totalDist > 0 ? count / totalDist * 100 : 0;
10489
- return /* @__PURE__ */ jsxs(DistRow, { children: [
10490
- /* @__PURE__ */ jsxs(DistLabel, { children: [
10491
- star,
10492
- "\u2605"
10493
- ] }),
10494
- /* @__PURE__ */ jsx(DistBar, { children: /* @__PURE__ */ jsx(DistFill, { $pct: pct2 }) }),
10495
- /* @__PURE__ */ jsx(DistLabel, { style: { textAlign: "left" }, children: count })
10496
- ] }, star);
10497
- }) })
10498
- ] }),
10499
- /* @__PURE__ */ jsx(ReviewList, { children: reviews.map((review) => /* @__PURE__ */ jsx(ReviewItem, { review }, review.id)) })
10500
- ] });
10501
- }
10724
+ ({ reviews, averageRating, totalReviews, title = "Opinie klient\xF3w", ratingDistribution, ...props }, ref) => /* @__PURE__ */ jsxs(Root55, { ref, ...props, children: [
10725
+ /* @__PURE__ */ jsx(SectionHeading, { title, align: "left", style: { marginBottom: "1.5rem" } }),
10726
+ averageRating !== void 0 && /* @__PURE__ */ jsx("div", { style: { marginBottom: "2rem" }, children: /* @__PURE__ */ jsx(
10727
+ ReviewSummary,
10728
+ {
10729
+ averageRating,
10730
+ totalReviews,
10731
+ ratingDistribution
10732
+ }
10733
+ ) }),
10734
+ /* @__PURE__ */ jsx(ReviewList, { children: reviews.map((review) => /* @__PURE__ */ jsx(ReviewItem, { review }, review.id)) })
10735
+ ] })
10502
10736
  );
10503
10737
  ReviewSection.displayName = "ReviewSection";
10504
- var List4 = styled("div")(({ $hasHeading }) => ({
10738
+ var List5 = styled("div")(({ $hasHeading }) => ({
10505
10739
  marginTop: $hasHeading ? "2.5rem" : 0
10506
10740
  }));
10507
10741
  var FaqSection = forwardRef(
@@ -10517,7 +10751,7 @@ var FaqSection = forwardRef(
10517
10751
  const hasHeading = Boolean(title || description);
10518
10752
  return /* @__PURE__ */ jsx(Section, { ref, ...rest, children: /* @__PURE__ */ jsxs(Container, { maxWidth, children: [
10519
10753
  hasHeading && /* @__PURE__ */ jsx(SectionHeading, { title: title ?? "", description, align: headingAlign }),
10520
- /* @__PURE__ */ jsx(List4, { $hasHeading: hasHeading, children: items.map((item, index) => /* @__PURE__ */ jsx(
10754
+ /* @__PURE__ */ jsx(List5, { $hasHeading: hasHeading, children: items.map((item, index) => /* @__PURE__ */ jsx(
10521
10755
  FaqItem,
10522
10756
  {
10523
10757
  item,
@@ -10559,7 +10793,7 @@ var FeatureGrid = forwardRef(
10559
10793
  return /* @__PURE__ */ jsx(Section, { ref, ...rest, children: /* @__PURE__ */ jsxs(Container, { maxWidth, children: [
10560
10794
  hasHeading && /* @__PURE__ */ jsx(SectionHeading, { title: title ?? "", description, align: headingAlign }),
10561
10795
  /* @__PURE__ */ jsx(Grid3, { $columns: columns, $hasHeading: hasHeading, $iconLeft: itemLayout === "icon-left", children: features.map((feature, index) => /* @__PURE__ */ jsx(
10562
- FeatureItem2,
10796
+ FeatureItem,
10563
10797
  {
10564
10798
  feature,
10565
10799
  cardVariant,
@@ -11042,7 +11276,7 @@ var GroupLabel3 = styled("div")(({ theme }) => ({
11042
11276
  textTransform: "uppercase",
11043
11277
  letterSpacing: "0.06em"
11044
11278
  }));
11045
- var Item5 = styled("div", {
11279
+ var Item4 = styled("div", {
11046
11280
  shouldForwardProp: (p) => p !== "$active"
11047
11281
  })(({ theme, $active }) => ({
11048
11282
  display: "flex",
@@ -11241,7 +11475,7 @@ function CommandPalette({
11241
11475
  const idx = globalIndex++;
11242
11476
  const isActive = idx === activeIndex;
11243
11477
  return /* @__PURE__ */ jsxs(
11244
- Item5,
11478
+ Item4,
11245
11479
  {
11246
11480
  id: `${id}-item-${item.id}`,
11247
11481
  role: "option",
@@ -11337,7 +11571,7 @@ var TopRow = styled("div")({
11337
11571
  flexWrap: "wrap"
11338
11572
  });
11339
11573
  var TextBlock = styled("div")({ flex: 1, minWidth: "16rem" });
11340
- var Title11 = styled("p")(({ theme }) => ({
11574
+ var Title12 = styled("p")(({ theme }) => ({
11341
11575
  margin: "0 0 0.25rem",
11342
11576
  fontFamily: theme.typography.fontFamily,
11343
11577
  fontSize: "1rem",
@@ -11345,7 +11579,7 @@ var Title11 = styled("p")(({ theme }) => ({
11345
11579
  color: theme.palette.text.primary,
11346
11580
  lineHeight: 1.4
11347
11581
  }));
11348
- var Description8 = styled("p")(({ theme }) => ({
11582
+ var Description9 = styled("p")(({ theme }) => ({
11349
11583
  margin: 0,
11350
11584
  fontFamily: theme.typography.fontFamily,
11351
11585
  fontSize: "0.875rem",
@@ -11502,8 +11736,8 @@ function CookieConsent({
11502
11736
  /* @__PURE__ */ jsx(Bar2, { role: "region", "aria-label": "Zgoda na pliki cookie", "aria-live": "polite", children: /* @__PURE__ */ jsxs(Inner4, { children: [
11503
11737
  /* @__PURE__ */ jsxs(TopRow, { children: [
11504
11738
  /* @__PURE__ */ jsxs(TextBlock, { children: [
11505
- /* @__PURE__ */ jsx(Title11, { children: title }),
11506
- /* @__PURE__ */ jsxs(Description8, { children: [
11739
+ /* @__PURE__ */ jsx(Title12, { children: title }),
11740
+ /* @__PURE__ */ jsxs(Description9, { children: [
11507
11741
  description,
11508
11742
  privacyPolicyLabel && privacyPolicyHref && /* @__PURE__ */ jsxs(Fragment, { children: [
11509
11743
  " ",
@@ -11553,16 +11787,11 @@ function CookieConsent({
11553
11787
  );
11554
11788
  }
11555
11789
  var defaultCookieCategories = DEFAULT_CATEGORIES;
11556
- var Root47 = styled("footer")(({ theme }) => ({
11790
+ var Root56 = styled("footer")(({ theme }) => ({
11557
11791
  width: "100%",
11558
11792
  backgroundColor: theme.palette.background.paper,
11559
11793
  borderTop: `1px solid ${theme.palette.divider}`
11560
11794
  }));
11561
- var Inner5 = styled("div")({
11562
- maxWidth: "72rem",
11563
- margin: "0 auto",
11564
- padding: "3rem 1.5rem 2rem"
11565
- });
11566
11795
  var TopRow2 = styled("div")({
11567
11796
  display: "grid",
11568
11797
  gridTemplateColumns: "1fr",
@@ -11580,7 +11809,7 @@ var BrandBlock = styled("div")({
11580
11809
  flexDirection: "column",
11581
11810
  gap: "0.75rem"
11582
11811
  });
11583
- var Description9 = styled("p")(({ theme }) => ({
11812
+ var Description10 = styled("p")(({ theme }) => ({
11584
11813
  margin: 0,
11585
11814
  fontFamily: theme.typography.fontFamily,
11586
11815
  fontSize: "0.875rem",
@@ -11691,14 +11920,16 @@ function Footer7({
11691
11920
  description,
11692
11921
  columns = [],
11693
11922
  socialLinks = [],
11694
- copyright
11923
+ copyright,
11924
+ maxWidth = "lg",
11925
+ style
11695
11926
  }) {
11696
11927
  const colCount = columns.length;
11697
- return /* @__PURE__ */ jsx(Root47, { children: /* @__PURE__ */ jsxs(Inner5, { children: [
11928
+ return /* @__PURE__ */ jsx(Root56, { style, children: /* @__PURE__ */ jsxs(Container$1, { maxWidth, sx: { pt: "3rem", pb: "2rem" }, children: [
11698
11929
  (logo || description || colCount > 0) && /* @__PURE__ */ jsxs(TopRow2, { style: { "--col-count": colCount }, children: [
11699
11930
  (logo || description) && /* @__PURE__ */ jsxs(BrandBlock, { children: [
11700
11931
  logo,
11701
- description && /* @__PURE__ */ jsx(Description9, { children: description })
11932
+ description && /* @__PURE__ */ jsx(Description10, { children: description })
11702
11933
  ] }),
11703
11934
  columns.map((col) => /* @__PURE__ */ jsxs(Column, { children: [
11704
11935
  /* @__PURE__ */ jsx(ColumnTitle, { children: col.title }),
@@ -11721,7 +11952,7 @@ function Footer7({
11721
11952
  ] })
11722
11953
  ] }) });
11723
11954
  }
11724
- var Root48 = styled("header", {
11955
+ var Root57 = styled("header", {
11725
11956
  shouldForwardProp: (p) => p !== "$sticky" && p !== "$variant"
11726
11957
  })(({ theme, $sticky, $variant }) => ({
11727
11958
  position: $sticky ? "sticky" : "relative",
@@ -11732,17 +11963,6 @@ var Root48 = styled("header", {
11732
11963
  borderBottom: $variant === "transparent" ? "none" : `1px solid ${theme.palette.divider}`,
11733
11964
  boxShadow: $variant === "transparent" ? "none" : "0 1px 4px rgba(0,0,0,0.08)"
11734
11965
  }));
11735
- var Inner6 = styled("div", {
11736
- shouldForwardProp: (p) => p !== "$maxWidth"
11737
- })(({ $maxWidth }) => ({
11738
- maxWidth: typeof $maxWidth === "number" ? `${$maxWidth}px` : $maxWidth,
11739
- margin: "0 auto",
11740
- padding: "0 1.5rem",
11741
- height: "3.75rem",
11742
- display: "flex",
11743
- alignItems: "center",
11744
- gap: "1.5rem"
11745
- }));
11746
11966
  var LogoSlot = styled("div")({
11747
11967
  flexShrink: 0,
11748
11968
  display: "flex",
@@ -11808,7 +12028,8 @@ var MobileDrawer = styled("div", {
11808
12028
  display: $open ? "flex" : "none",
11809
12029
  flexDirection: "column",
11810
12030
  gap: "0.25rem",
11811
- padding: "0.75rem 1.5rem 1rem",
12031
+ paddingTop: "0.75rem",
12032
+ paddingBottom: "1rem",
11812
12033
  borderTop: `1px solid ${theme.palette.divider}`,
11813
12034
  backgroundColor: theme.palette.background.paper,
11814
12035
  "@media (min-width: 768px)": {
@@ -11839,28 +12060,36 @@ function Navbar({
11839
12060
  actions,
11840
12061
  sticky = false,
11841
12062
  variant = "filled",
11842
- maxWidth = "72rem"
12063
+ maxWidth = "lg",
12064
+ style
11843
12065
  }) {
11844
12066
  const [mobileOpen, setMobileOpen] = useState(false);
11845
- return /* @__PURE__ */ jsxs(Root48, { $sticky: sticky, $variant: variant, children: [
11846
- /* @__PURE__ */ jsxs(Inner6, { $maxWidth: maxWidth, children: [
11847
- logo && /* @__PURE__ */ jsx(LogoSlot, { children: logo }),
11848
- /* @__PURE__ */ jsx(Nav3, { "aria-label": "Nawigacja g\u0142\xF3wna", children: navItems.map((item) => /* @__PURE__ */ jsx(NavLink, { href: item.href, $active: !!item.active, children: item.label }, item.href)) }),
11849
- (actions || navItems.length > 0) && /* @__PURE__ */ jsxs(RightSlot, { children: [
11850
- actions,
11851
- navItems.length > 0 && /* @__PURE__ */ jsx(
11852
- HamburgerButton,
11853
- {
11854
- type: "button",
11855
- "aria-label": mobileOpen ? "Zamknij menu" : "Otw\xF3rz menu",
11856
- "aria-expanded": mobileOpen,
11857
- onClick: () => setMobileOpen((v) => !v),
11858
- children: /* @__PURE__ */ jsx(HamburgerIcon, { open: mobileOpen })
11859
- }
11860
- )
11861
- ] })
11862
- ] }),
11863
- navItems.length > 0 && /* @__PURE__ */ jsx(MobileDrawer, { $open: mobileOpen, "aria-label": "Menu mobilne", children: navItems.map((item) => /* @__PURE__ */ jsx(MobileNavLink, { href: item.href, $active: !!item.active, children: item.label }, item.href)) })
12067
+ return /* @__PURE__ */ jsxs(Root57, { $sticky: sticky, $variant: variant, style, children: [
12068
+ /* @__PURE__ */ jsxs(
12069
+ Container$1,
12070
+ {
12071
+ maxWidth,
12072
+ sx: { height: "3.75rem", display: "flex", alignItems: "center", gap: "1.5rem" },
12073
+ children: [
12074
+ logo && /* @__PURE__ */ jsx(LogoSlot, { children: logo }),
12075
+ /* @__PURE__ */ jsx(Nav3, { "aria-label": "Nawigacja g\u0142\xF3wna", children: navItems.map((item) => /* @__PURE__ */ jsx(NavLink, { href: item.href, $active: !!item.active, children: item.label }, item.href)) }),
12076
+ (actions || navItems.length > 0) && /* @__PURE__ */ jsxs(RightSlot, { children: [
12077
+ actions,
12078
+ navItems.length > 0 && /* @__PURE__ */ jsx(
12079
+ HamburgerButton,
12080
+ {
12081
+ type: "button",
12082
+ "aria-label": mobileOpen ? "Zamknij menu" : "Otw\xF3rz menu",
12083
+ "aria-expanded": mobileOpen,
12084
+ onClick: () => setMobileOpen((v) => !v),
12085
+ children: /* @__PURE__ */ jsx(HamburgerIcon, { open: mobileOpen })
12086
+ }
12087
+ )
12088
+ ] })
12089
+ ]
12090
+ }
12091
+ ),
12092
+ navItems.length > 0 && /* @__PURE__ */ jsx(MobileDrawer, { $open: mobileOpen, "aria-label": "Menu mobilne", children: /* @__PURE__ */ jsx(Container$1, { maxWidth, children: navItems.map((item) => /* @__PURE__ */ jsx(MobileNavLink, { href: item.href, $active: !!item.active, children: item.label }, item.href)) }) })
11864
12093
  ] });
11865
12094
  }
11866
12095
  var ss = "sans-serif";
@@ -11968,6 +12197,6 @@ var MyThemeProvider = ({
11968
12197
  ] });
11969
12198
  };
11970
12199
 
11971
- export { Accordion, Alert, Article, AspectRatio, Avatar, BackToTop, Badge2 as Badge, BaseInput, BaseSelectInput, Box2 as Box, Breadcrumbs, Button, Card, Carousel, CartButton, CartDrawer, CategoryCard, CheckboxInput, CommandPalette, CompareTool, Container, ContextMenu, CookieConsent, CountdownTimer, CountryFlag, CouponInput, DateTimePicker, EmailInput, EmptyState, FaqItem, FaqSection, FeatureGrid, FeatureItem2 as FeatureItem, FileInput, FilterSidebar, Footer7 as Footer, Lightbox, List3 as List, LogoCloud, LogoTile, Main, Marquee, Modal, MultiSelectInput, MyThemeProvider, Navbar, NewsletterSection, NumberInput, OrderSummary, PaginationBar, PaginationButton, PaginationEllipsis, Partners, PasswordInput, PaymentMethodSelector, PhoneInput, PostCard, PostCardImage, PostCardMeta, Price, PricingCard, PricingSection, ProcessSection, ProcessStep, ProductCard, ProductCardHorizontal, ProductGallery, ProgressBar, ProgressCircle, PromoStrip, Prose, QuantitySelector, RangeSlider, Rating, RelatedProducts, ReviewSection, SaleBadge, SearchInput, Section, SectionHeading, SelectInput, ShippingSelector, Skeleton, SortBar, Spinner3 as Spinner, StatCard, StatsSection, StockStatus, SwitchInput, Tabs, TeamMemberCard, TeamSection, TestimonialCard, TestimonialsSection, TextInput, TextareaInput, Timeline, VariantSelector, VideoPlayer, WishlistButton, accordionVariants, alertSeverities, aspectRatioPresets, avatarColors, avatarSizes, backToTopPositions, backToTopVariants, badgeVariants, cardPaddings, cardRoundeds, cardVariants, countdownTimerVariants, createMyTheme, dateTimePickerModes, defaultCookieCategories, featureGridColumns, listSizes, listVariants, logoCloudColumns, logoCloudVariants, logoTileVariants, marqueeDirections, marqueeSpeeds, modalSizes, myTheme, newsletterLayouts, postCardVariants, priceSizes, progressBarSizes, progressBarVariants, progressCircleSizes, progressCircleVariants, promoStripVariants, rangeSliderSizes, relatedProductsLayouts, saleBadgeVariants, sectionHeadingAligns, skeletonVariants, spinnerColors, spinnerSizes, spinnerVariants, statsSectionColumns, stockStatusValues, switchColors, tabsVariants, teamSectionColumns, testimonialsSectionColumns, themeDark, themeHighContrast, themeLight, timelineItemStatuses, timelineVariants, variantSelectorModes };
12200
+ export { Accordion, Alert, Article, AspectRatio, Avatar, BackToTop, Badge2 as Badge, BaseInput, BaseSelectInput, Box2 as Box, Breadcrumbs, Button, Card, Carousel, CartButton, CartDrawer, CartDrawerItem as CartDrawerItemComponent, CategoryCard, CategoryCardImage, CategoryCardInfo, CheckboxInput, CommandPalette, CompareTool, Container, ContextMenu, CookieConsent, CountdownTimer, CountryFlag, CouponInput, DateTimePicker, DealCard, EmailInput, EmptyState, FaqItem, FaqSection, FeatureGrid, FeatureItem, FileInput, FilterSidebar, Footer7 as Footer, Lightbox, List4 as List, LogoCloud, LogoTile, Main, Marquee, Modal, MultiSelectInput, MyThemeProvider, Navbar, NewsletterSection, NumberInput, OrderSummary, OrderSummaryItem as OrderSummaryItemComponent, OrderSummaryRow, PaginationBar, PaginationButton, PaginationEllipsis, Partners, PasswordInput, PaymentMethodSelector, PhoneInput, PostCard, PostCardImage, PostCardMeta, Price, PricingCard, PricingCardFeatureList, PricingCardPrice, PricingSection, ProcessSection, ProcessStep, ProductCard, ProductCardHorizontal, ProductCardImage, ProductGallery, ProgressBar, ProgressCircle, PromoStrip, Prose, QuantitySelector, RangeSlider, Rating, RelatedProducts, ReviewItem, ReviewSection, ReviewSummary, SaleBadge, SearchInput, Section, SectionHeading, SelectInput, ShippingSelector, Skeleton, SortBar, Spinner3 as Spinner, StatCard, StatsSection, StockStatus, SwitchInput, Tabs, TeamMemberAvatar, TeamMemberCard, TeamMemberInfo, TeamSection, TestimonialAuthor, TestimonialCard, TestimonialQuote, TestimonialsSection, TextInput, TextareaInput, Timeline, VariantSelector, VideoPlayer, VoucherCard, WishlistButton, accordionVariants, alertSeverities, aspectRatioPresets, avatarColors, avatarSizes, backToTopPositions, backToTopVariants, badgeVariants, cardPaddings, cardRoundeds, cardVariants, countdownTimerVariants, createMyTheme, dateTimePickerModes, defaultCookieCategories, featureGridColumns, listSizes, listVariants, logoCloudColumns, logoCloudVariants, logoTileVariants, marqueeDirections, marqueeSpeeds, modalSizes, myTheme, newsletterLayouts, postCardVariants, priceSizes, progressBarSizes, progressBarVariants, progressCircleSizes, progressCircleVariants, promoStripVariants, rangeSliderSizes, relatedProductsLayouts, saleBadgeVariants, sectionHeadingAligns, skeletonVariants, spinnerColors, spinnerSizes, spinnerVariants, statsSectionColumns, stockStatusValues, switchColors, tabsVariants, teamSectionColumns, testimonialsSectionColumns, themeDark, themeHighContrast, themeLight, timelineItemStatuses, timelineVariants, variantSelectorModes };
11972
12201
  //# sourceMappingURL=index.js.map
11973
12202
  //# sourceMappingURL=index.js.map