@sonic-equipment/ui 0.0.45 → 0.0.47

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.d.ts CHANGED
@@ -52,6 +52,7 @@ interface Category$1 {
52
52
  }
53
53
  interface BannerItem$1 {
54
54
  alt: string;
55
+ href: string;
55
56
  srcSet: {
56
57
  src: string;
57
58
  width: number;
@@ -99,6 +100,7 @@ interface Category {
99
100
 
100
101
  interface BannerItem {
101
102
  alt: string
103
+ href: string
102
104
  srcSet: {
103
105
  src: string
104
106
  width: number
package/dist/index.js CHANGED
@@ -633,22 +633,22 @@ function SolidHomeIcon(props) {
633
633
  return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", ...props, fill: "currentColor", height: "24", viewBox: "0 0 24 24", width: "24", children: jsx("path", { d: "M15.039782,22 C14.6690193,22 14.3684378,21.6994185 14.3684378,21.3286559 L14.3684378,15.6029043 L9.34495251,15.6029043 L9.34495251,21.3286559 C9.34495251,21.6994185 9.04437101,22 8.67345678,22 L3.67134415,22 C3.3005815,22 3,21.6994185 3,21.3286559 L3,9.79560307 C3,9.60127857 3.08412644,9.41665514 3.23055192,9.28917706 L11.4158271,2.16495603 C11.6686612,1.94501466 12.0447291,1.94501466 12.2975632,2.16495603 L20.4828384,9.28917706 C20.6292639,9.41665514 20.7133903,9.60127857 20.7133903,9.79560307 L20.7133903,21.3286559 C20.7133903,21.6994185 20.4128088,22 20.0418946,22 L15.039782,22 Z", fillRule: "evenodd" }) }));
634
634
  }
635
635
 
636
- var styles$G = {"breadcrumbs":"breadcrumb-module-CQGse","breadcrumb":"breadcrumb-module-hxhDY","link":"breadcrumb-module-fp2Q6","icon":"breadcrumb-module-uIn3w","previous-icon":"breadcrumb-module-K-wMJ"};
636
+ var styles$I = {"breadcrumbs":"breadcrumb-module-CQGse","breadcrumb":"breadcrumb-module-hxhDY","link":"breadcrumb-module-fp2Q6","icon":"breadcrumb-module-uIn3w","previous-icon":"breadcrumb-module-K-wMJ"};
637
637
 
638
638
  function BreadcrumbShort({ links }) {
639
639
  const homeLink = links[0];
640
640
  const previousLink = links[links.length - 2];
641
- return (jsx(Breadcrumbs, { className: styles$G.breadcrumbs, children: jsx(Breadcrumb$1, { className: styles$G.breadcrumb, children: jsxs(RouteLink, { className: styles$G.link, isDisabled: false, children: [jsx(GlyphsChevronsSlimLeftIcon, { className: styles$G.icon }), previousLink === undefined || previousLink === homeLink ? (jsx(SolidHomeIcon, { className: styles$G.icon })) : (jsx("span", { children: previousLink.label }))] }) }) }));
641
+ return (jsx(Breadcrumbs, { className: styles$I.breadcrumbs, children: jsx(Breadcrumb$1, { className: styles$I.breadcrumb, children: jsxs(RouteLink, { className: styles$I.link, isDisabled: false, children: [jsx(GlyphsChevronsSlimLeftIcon, { className: styles$I.icon }), previousLink === undefined || previousLink === homeLink ? (jsx(SolidHomeIcon, { className: styles$I.icon })) : (jsx("span", { children: previousLink.label }))] }) }) }));
642
642
  }
643
643
  function BreadcrumbLongItem({ index, isDisabled, link, }) {
644
- return (jsx(Breadcrumb$1, { className: styles$G.breadcrumb, children: jsxs(RouteLink, { className: styles$G.link, href: link.href, isDisabled: isDisabled, children: [jsx(GlyphsChevronsSlimLeftIcon, { className: clsx(styles$G['previous-icon'], styles$G.icon) }), link.label] }) }, index));
644
+ return (jsx(Breadcrumb$1, { className: styles$I.breadcrumb, children: jsxs(RouteLink, { className: styles$I.link, href: link.href, isDisabled: isDisabled, children: [jsx(GlyphsChevronsSlimLeftIcon, { className: clsx(styles$I['previous-icon'], styles$I.icon) }), link.label] }) }, index));
645
645
  }
646
646
  function BreadcrumbLong({ links }) {
647
647
  const linksWithoutFirst = links.slice(1);
648
648
  const homeLink = links[0];
649
649
  if (!homeLink)
650
650
  return null;
651
- return (jsxs(Breadcrumbs, { className: styles$G.breadcrumbs, children: [jsx(Breadcrumb$1, { className: styles$G.breadcrumb, children: jsx(RouteLink, { className: styles$G.link, href: homeLink.href, children: jsx(SolidHomeIcon, { className: clsx(styles$G['home-icon'], styles$G.icon) }) }) }), linksWithoutFirst.map((link, index) => (jsx(BreadcrumbLongItem, { index: index, isDisabled: linksWithoutFirst.length - 1 === index, link: link }, index)))] }));
651
+ return (jsxs(Breadcrumbs, { className: styles$I.breadcrumbs, children: [jsx(Breadcrumb$1, { className: styles$I.breadcrumb, children: jsx(RouteLink, { className: styles$I.link, href: homeLink.href, children: jsx(SolidHomeIcon, { className: clsx(styles$I['home-icon'], styles$I.icon) }) }) }), linksWithoutFirst.map((link, index) => (jsx(BreadcrumbLongItem, { index: index, isDisabled: linksWithoutFirst.length - 1 === index, link: link }, index)))] }));
652
652
  }
653
653
  function Breadcrumb({ links }) {
654
654
  const { lg } = useBreakpoint();
@@ -661,20 +661,20 @@ function GlyphsArrowBoldCapsRightIcon(props) {
661
661
  return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", ...props, fill: "currentColor", height: "11", viewBox: "0 0 11 11", width: "11", children: jsx("path", { d: "M2.31124163,11 C2.06716529,11 1.91839241,10.7730596 2.04771379,10.5980857 L6.08820761,5.13116556 C6.42092595,4.68081431 6.37243043,4.10595375 5.96732409,3.70073526 L2.70240329,0.432177991 C2.53178078,0.261409485 2.67540212,0 2.93972934,0 L5.48361239,0 C5.57518542,0 5.6619622,0.0340936243 5.72102726,0.0931942463 L8.14882304,2.52367916 C9.1607451,3.53657521 9.28198389,4.9729381 8.45036569,6.09787751 L4.91836426,10.876542 C4.86160851,10.9533653 4.7620417,11 4.65492523,11 L2.31124163,11 Z", fillRule: "evenodd" }) }));
662
662
  }
663
663
 
664
- var styles$F = {"button":"button-module-V4meK","icon":"button-module-XaNWz","sm":"button-module-Pbwz7","md":"button-module-GVTEW","condensed":"button-module-GKHQc","lg":"button-module-nyNY8","primary":"button-module-tmyk8","outline":"button-module-vq9GI","solid":"button-module-AjvlY","hover":"button-module-YzPAr","focus":"button-module--xzsY","active":"button-module-XMFzj","ghost":"button-module-f4UVe","right-arrow-icon":"button-module-ydQAo","secondary":"button-module--1bCH"};
664
+ var styles$H = {"button":"button-module-V4meK","icon":"button-module-XaNWz","sm":"button-module-Pbwz7","md":"button-module-GVTEW","condensed":"button-module-GKHQc","lg":"button-module-nyNY8","primary":"button-module-tmyk8","outline":"button-module-vq9GI","solid":"button-module-AjvlY","hover":"button-module-YzPAr","focus":"button-module--xzsY","active":"button-module-XMFzj","ghost":"button-module-f4UVe","right-arrow-icon":"button-module-ydQAo","secondary":"button-module--1bCH"};
665
665
 
666
666
  function Button({ _pseudo = 'none', children, className, color = 'primary', condensed, icon, iconPosition = 'left', isDisabled, onPress, size = 'lg', type = 'button', variant = 'solid', withArrow = false, }) {
667
- return (jsxs(Button$1, { className: clsx(className, styles$F.button, styles$F[variant], styles$F[size], styles$F[color], { [styles$F.condensed]: condensed }, { [styles$F.icon]: icon }, styles$F[_pseudo]), isDisabled: isDisabled,
667
+ return (jsxs(Button$1, { className: clsx(className, styles$H.button, styles$H[variant], styles$H[size], styles$H[color], { [styles$H.condensed]: condensed }, { [styles$H.icon]: icon }, styles$H[_pseudo]), isDisabled: isDisabled,
668
668
  // Workaround for adobe/react-spectrum #963
669
669
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
670
670
  // @ts-ignore
671
- onClick: e => e.preventDefault(), onPress: onPress, type: type, children: [icon && iconPosition === 'left' && (jsx("span", { className: styles$F.icon, children: icon })), children, withArrow && (jsx(GlyphsArrowBoldCapsRightIcon, { className: styles$F['right-arrow-icon'] })), icon && iconPosition === 'right' && (jsx("span", { className: styles$F.icon, children: icon }))] }));
671
+ onClick: e => e.preventDefault(), onPress: onPress, type: type, children: [icon && iconPosition === 'left' && (jsx("span", { className: styles$H.icon, children: icon })), children, withArrow && (jsx(GlyphsArrowBoldCapsRightIcon, { className: styles$H['right-arrow-icon'] })), icon && iconPosition === 'right' && (jsx("span", { className: styles$H.icon, children: icon }))] }));
672
672
  }
673
673
 
674
- var styles$E = {"icon-button":"icon-button-module-4PDK-","md":"icon-button-module-k3s9J","lg":"icon-button-module-agk6Y","primary":"icon-button-module-fTeP4","secondary":"icon-button-module-dM0eo"};
674
+ var styles$G = {"icon-button":"icon-button-module-4PDK-","md":"icon-button-module-k3s9J","lg":"icon-button-module-agk6Y","primary":"icon-button-module-fTeP4","secondary":"icon-button-module-dM0eo"};
675
675
 
676
676
  function IconButton({ children, className, color = 'primary', isDisabled, onPress, size = 'md', type = 'button', }) {
677
- return (jsx(Button$1, { className: clsx(styles$E['icon-button'], styles$E[size], styles$E[color], className), isDisabled: isDisabled,
677
+ return (jsx(Button$1, { className: clsx(styles$G['icon-button'], styles$G[size], styles$G[color], className), isDisabled: isDisabled,
678
678
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
679
679
  // @ts-expect-error
680
680
  onClick: e => e.preventDefault(), onPress: onPress, type: type, children: children }));
@@ -688,34 +688,34 @@ function StrokeFavoriteIcon(props) {
688
688
  return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", ...props, fill: "currentColor", height: "24", viewBox: "0 0 24 24", width: "24", children: jsx("path", { d: "M7.33319295,3.33090958 C5.12714802,3.33090958 3.33232058,5.12348359 3.33232058,7.32679321 C3.33232058,8.18447047 3.64878056,9.03643889 4.29989998,9.93107334 L11.9997744,20.2227497 L19.7053643,9.92401241 C20.351069,9.03643889 20.6673786,8.1846207 20.6673786,7.32679321 C20.6673786,5.12348359 18.8727016,3.33090958 16.6666566,3.33090958 C14.8537801,3.33090958 13.1222748,4.56251549 12.6388611,6.19569283 C12.5552338,6.47843037 12.2951771,6.67253074 11.9999248,6.67253074 C11.7046724,6.67253074 11.4447662,6.47843037 11.3609885,6.19569283 C10.8775748,4.56251549 9.14606944,3.33090958 7.33319295,3.33090958 M11.9997744,22 L11.9997744,22 C11.7898038,22 11.5918659,21.9008466 11.4662746,21.7327364 L3.22718487,10.720545 C2.41106707,9.59905954 2,8.45954615 2,7.32679321 C2,4.3895979 4.39240135,2 7.33319295,2 C9.22488362,2 11.0018124,2.98206975 11.9999248,4.46786903 C12.9978868,2.98206975 14.774966,2 16.6666566,2 C19.6072978,2 22,4.3895979 22,7.32679321 C22,8.45969638 21.5887825,9.59920978 20.777929,10.7136343 L12.5334246,21.7327364 C12.4076829,21.9008466 12.2098954,22 11.9997744,22", fillRule: "evenodd" }) }));
689
689
  }
690
690
 
691
- var styles$D = {"favorite-button":"favorite-button-module-tXSS3","is-favorite":"favorite-button-module-l557q","favorite-on":"favorite-button-module-6Tsmy","favorite-off":"favorite-button-module-LQauU"};
691
+ var styles$F = {"favorite-button":"favorite-button-module-tXSS3","is-favorite":"favorite-button-module-l557q","favorite-on":"favorite-button-module-6Tsmy","favorite-off":"favorite-button-module-LQauU"};
692
692
 
693
693
  function FavoriteButton({ isFavorite, onPress }) {
694
- return (jsx(IconButton, { className: clsx(styles$D['favorite-button'], {
695
- [styles$D['is-favorite']]: isFavorite,
694
+ return (jsx(IconButton, { className: clsx(styles$F['favorite-button'], {
695
+ [styles$F['is-favorite']]: isFavorite,
696
696
  }), color: "secondary", onPress: onPress, children: isFavorite ? jsx(SolidFavoriteIcon, {}) : jsx(StrokeFavoriteIcon, {}) }));
697
697
  }
698
698
 
699
- var styles$C = {"link-button":"link-button-module-6i75g"};
699
+ var styles$E = {"link-button":"link-button-module-6i75g"};
700
700
 
701
701
  function LinkButton({ children, className, href, isDisabled, onPress, route, target, type = href ? 'link' : 'button', }) {
702
702
  if (type === 'link') {
703
- return (jsx(RouteLink, { className: clsx(styles$C['link-button'], className), href: href, isDisabled: isDisabled, onPress: onPress, route: route, target: target, children: children }));
703
+ return (jsx(RouteLink, { className: clsx(styles$E['link-button'], className), href: href, isDisabled: isDisabled, onPress: onPress, route: route, target: target, children: children }));
704
704
  // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
705
705
  }
706
706
  else if (type === 'button') {
707
- return (jsx(RouteButton, { className: clsx(styles$C['link-button'], className), href: href, isDisabled: isDisabled, onPress: onPress, route: route, type: "button", children: children }));
707
+ return (jsx(RouteButton, { className: clsx(styles$E['link-button'], className), href: href, isDisabled: isDisabled, onPress: onPress, route: route, type: "button", children: children }));
708
708
  }
709
709
  throw new Error('Invalid type ${type} for LinkButton component');
710
710
  }
711
711
 
712
- var styles$B = {"field-error":"field-error-module-FXnIg"};
712
+ var styles$D = {"field-error":"field-error-module-FXnIg"};
713
713
 
714
714
  function FieldError({ children }) {
715
- return (jsx(FieldError$1, { className: styles$B['field-error'], children: children }));
715
+ return (jsx(FieldError$1, { className: styles$D['field-error'], children: children }));
716
716
  }
717
717
 
718
- var styles$A = {"input-container":"input-module-2woJR","shadow-input":"input-module-pNKEt","lg":"input-module-Dx2qC","md":"input-module-sH6e7","focus":"input-module-hEEuy","growing-input":"input-module-6HwY4"};
718
+ var styles$C = {"input-container":"input-module-2woJR","shadow-input":"input-module-pNKEt","lg":"input-module-Dx2qC","md":"input-module-sH6e7","focus":"input-module-hEEuy","growing-input":"input-module-6HwY4"};
719
719
 
720
720
  /**
721
721
  * This component is used to create an input that grows as the user types.
@@ -730,20 +730,20 @@ const Input = forwardRef(({ _pseudo = 'none', autoGrow, size = 'lg', ...inputPro
730
730
  const handleChange = (event) => isControlled
731
731
  ? onChange?.(event)
732
732
  : setUncontrolledValue(event.target.value);
733
- return (jsx("div", { className: clsx(styles$A['input-container'], styles$A[size], styles$A[_pseudo]), children: jsxs("div", { className: clsx({ [styles$A['growing-input']]: autoGrow }), children: [jsx(Input$1, { size: autoGrow ? 1 : undefined, ...props, ref: ref, onChange: handleChange, onClick: e => {
733
+ return (jsx("div", { className: clsx(styles$C['input-container'], styles$C[size], styles$C[_pseudo]), children: jsxs("div", { className: clsx({ [styles$C['growing-input']]: autoGrow }), children: [jsx(Input$1, { size: autoGrow ? 1 : undefined, ...props, ref: ref, onChange: handleChange, onClick: e => {
734
734
  e.preventDefault();
735
735
  e.stopPropagation();
736
736
  e.target.focus();
737
- } }), autoGrow && jsx("span", { className: styles$A['shadow-input'], children: value })] }) }));
737
+ } }), autoGrow && jsx("span", { className: styles$C['shadow-input'], children: value })] }) }));
738
738
  });
739
739
  Input.displayName = 'Input';
740
740
 
741
- var styles$z = {"label":"label-module-LGfJt","required":"label-module-oTWaS"};
741
+ var styles$B = {"label":"label-module-LGfJt","required":"label-module-oTWaS"};
742
742
 
743
743
  function Label({ children, isRequired }) {
744
744
  if (!children)
745
745
  return null;
746
- return (jsxs(Label$1, { className: styles$z.label, children: [children, isRequired && jsx("span", { className: styles$z.required, children: "*" })] }));
746
+ return (jsxs(Label$1, { className: styles$B.label, children: [children, isRequired && jsx("span", { className: styles$B.required, children: "*" })] }));
747
747
  }
748
748
 
749
749
  function StrokeCollapseIcon(props) {
@@ -758,7 +758,7 @@ function StrokeTrashIcon(props) {
758
758
  return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", ...props, fill: "currentColor", height: "24", viewBox: "0 0 24 24", width: "24", children: jsx("path", { d: "M7.77273912,6.04398453 L9.07201126,6.04398453 L9.07201126,4.11757519 C9.07201126,3.84748949 9.15880324,3.63104347 9.33238719,3.46823712 C9.50597114,3.30543077 9.73570292,3.22402759 10.0215825,3.22402759 L13.3263825,3.22402759 C13.6186194,3.22402759 13.850313,3.30543077 14.0214633,3.46823712 C14.1926136,3.63104347 14.2781888,3.84748949 14.2781888,4.11757519 L14.2781888,6.04398453 L15.5846129,6.04398453 L15.5846129,4.04352264 C15.5846129,3.40769382 15.3900697,2.90814951 15.0009834,2.5448897 C14.6118971,2.1816299 14.0799703,2 13.405203,2 L9.942762,2 C9.26869007,2 8.73850162,2.1816299 8.35219662,2.5448897 C7.96589162,2.90814951 7.77273912,3.40769382 7.77273912,4.04352264 L7.77273912,6.04398453 Z M3.60955531,6.6940676 L19.7561406,6.6940676 C19.9248076,6.6940676 20.0683931,6.6332263 20.186897,6.51154371 C20.305401,6.38986111 20.3646529,6.242352 20.3646529,6.06901638 C20.3646529,5.9003494 20.3052023,5.75537328 20.186301,5.63408801 C20.0673997,5.51280275 19.9240129,5.45216011 19.7561406,5.45216011 L3.60955531,5.45216011 C3.44734496,5.45216011 3.30519982,5.51300141 3.18311989,5.63468401 C3.06103996,5.75636661 3,5.90114406 3,6.06901638 C3,6.24314666 3.06103996,6.39085444 3.18311989,6.5121397 C3.30519982,6.63342497 3.44734496,6.6940676 3.60955531,6.6940676 Z M7.56920636,22 L15.8049825,22 C16.4210441,22 16.9252074,21.8108208 17.3174724,21.4324624 C17.7097373,21.0541041 17.9209684,20.5545101 17.9511655,19.9336805 L18.6066126,6.5283806 L17.2870766,6.5283806 L16.6578534,19.8059883 C16.6444435,20.0808419 16.5455825,20.3084381 16.3612707,20.4887766 C16.1769588,20.6691152 15.9469787,20.7592845 15.6713303,20.7592845 L7.68497866,20.7592845 C7.41479362,20.7592845 7.18757,20.6677246 7.00330778,20.4846047 C6.81904556,20.3014848 6.72015983,20.0752793 6.70665057,19.8059883 L6.05358753,6.5295726 L4.76996029,6.5295726 L5.41587138,19.9420245 C5.4468632,20.562854 5.65806942,21.0610573 6.04949005,21.4366344 C6.44091068,21.8122115 6.94748278,22 7.56920636,22 Z M9.00213069,19.1375783 C9.15957307,19.1375783 9.2862223,19.0920591 9.38207839,19.0010206 C9.47793448,18.9099822 9.5230812,18.7917017 9.51751857,18.6461793 L9.2314403,8.86811345 C9.22587767,8.72338566 9.17618647,8.60729053 9.0823667,8.51982806 C8.98854694,8.43236558 8.86649184,8.38863435 8.71620142,8.38863435 C8.55945437,8.38863435 8.43436962,8.43395491 8.34094719,8.52459603 C8.24752475,8.61523714 8.20081354,8.73371626 8.20081354,8.88003338 L8.48555081,18.6485633 C8.49121278,18.7988537 8.54055631,18.9179288 8.63358142,19.0057886 C8.72660652,19.0936484 8.84945628,19.1375783 9.00213069,19.1375783 Z M11.6876904,19.1375783 C11.8451328,19.1375783 11.9717821,19.0922578 12.0676381,19.0016166 C12.1634942,18.9109755 12.2114223,18.7924964 12.2114223,18.6461793 L12.2114223,8.88003338 C12.2114223,8.73451092 12.1634942,8.61623047 12.0676381,8.52519202 C11.9717821,8.43415357 11.8451328,8.38863435 11.6876904,8.38863435 C11.5310427,8.38863435 11.4032015,8.43415357 11.3041668,8.52519202 C11.205132,8.61623047 11.1556147,8.73451092 11.1556147,8.88003338 L11.1556147,18.6461793 C11.1556147,18.7924964 11.205132,18.9109755 11.3041668,19.0016166 C11.4032015,19.0922578 11.5310427,19.1375783 11.6876904,19.1375783 Z M14.3635653,19.1387703 C14.516339,19.1387703 14.6392384,19.0948404 14.7322635,19.0069806 C14.8252886,18.9191208 14.8745825,18.802827 14.8801451,18.6580992 L15.1662234,8.88122537 C15.1662234,8.73490825 15.1194873,8.6166278 15.0260152,8.52638402 C14.9325431,8.43614023 14.8070859,8.39101833 14.6496435,8.39101833 C14.4993531,8.39101833 14.3772732,8.4345509 14.2834037,8.52161604 C14.1895343,8.60868118 14.1398183,8.7277563 14.1342556,8.87884138 L13.8483264,18.6485633 C13.8483264,18.7932911 13.8948389,18.9111742 13.987864,19.0022126 C14.0808891,19.0932511 14.2061229,19.1387703 14.3635653,19.1387703 Z" }) }));
759
759
  }
760
760
 
761
- var styles$y = {"field":"number-field-module-gmnog","button-input-container":"number-field-module-8Lvgh","zoom-in-text":"number-field-module-OlEoa"};
761
+ var styles$A = {"field":"number-field-module-gmnog","button-input-container":"number-field-module-8Lvgh","zoom-in-text":"number-field-module-OlEoa"};
762
762
 
763
763
  /**
764
764
  * This component is used to create a number field.
@@ -766,7 +766,7 @@ var styles$y = {"field":"number-field-module-gmnog","button-input-container":"nu
766
766
  */
767
767
  function NumberField({ autoFocus, autoGrow, defaultValue, formatOptions = { style: 'decimal', useGrouping: false }, isDisabled, isInvalid, isReadOnly, isRequired, label, maxLength, maxValue, minValue, name, onChange, onInput, onKeyUp, placeholder, showLabel = false, size = 'lg', value, withButtons, }) {
768
768
  const inputRef = useRef(null);
769
- return (jsxs(NumberField$1, { "aria-label": label, autoFocus: autoFocus, className: clsx(styles$y.field, styles$y[size]), defaultValue: defaultValue, formatOptions: formatOptions, isDisabled: isDisabled, isInvalid: isInvalid, isReadOnly: isReadOnly, isRequired: isRequired, maxValue: maxValue, minValue: minValue, name: name, onChange: onChange, onInput: onInput, value: value, children: [showLabel && jsx(Label, { isRequired: isRequired, children: label }), jsxs("div", { className: styles$y['button-input-container'], children: [withButtons && (jsx(Button$1, { isDisabled: isDisabled,
769
+ return (jsxs(NumberField$1, { "aria-label": label, autoFocus: autoFocus, className: clsx(styles$A.field, styles$A[size]), defaultValue: defaultValue, formatOptions: formatOptions, isDisabled: isDisabled, isInvalid: isInvalid, isReadOnly: isReadOnly, isRequired: isRequired, maxValue: maxValue, minValue: minValue, name: name, onChange: onChange, onInput: onInput, value: value, children: [showLabel && jsx(Label, { isRequired: isRequired, children: label }), jsxs("div", { className: styles$A['button-input-container'], children: [withButtons && (jsx(Button$1, { isDisabled: isDisabled,
770
770
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
771
771
  // @ts-expect-error
772
772
  onClick: e => e.preventDefault(), onPressStart: e => e.target.focus(), slot: "decrement", children: (value || 0) <= 1 ? jsx(StrokeTrashIcon, {}) : jsx(StrokeCollapseIcon, {}) })), jsx(Input, { ref: inputRef, autoGrow: autoGrow, maxLength: maxLength, onFocus: e => (e.target.selectionStart = e.target.value.length || 0), onKeyUp: e => onKeyUp?.(e), placeholder: placeholder, size: size }), withButtons && (jsx(Button$1, { isDisabled: isDisabled,
@@ -779,7 +779,7 @@ function SolidCartIcon(props) {
779
779
  return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", ...props, fill: "currentColor", height: "24", viewBox: "0 0 24 24", width: "24", children: jsx("path", { d: "M7.89619008,16.6656848 C9.33405626,16.6656848 10.4996925,17.831321 10.4996925,19.2690253 C10.4996925,20.7068915 9.33405626,21.8725278 7.89619008,21.8725278 C6.45832389,21.8725278 5.29268766,20.7068915 5.29268766,19.2690253 C5.29268766,17.831321 6.45832389,16.6656848 7.89619008,16.6656848 Z M16.8207199,16.6656848 C18.2585861,16.6656848 19.4242223,17.831321 19.4242223,19.2690253 C19.4242223,20.7068915 18.2585861,21.8725278 16.8207199,21.8725278 C15.3828537,21.8725278 14.2172175,20.7068915 14.2172175,19.2690253 C14.2172175,17.831321 15.3828537,16.6656848 16.8207199,16.6656848 Z M7.89619008,18.0995047 C7.25122196,18.0995047 6.72650762,18.6242191 6.72650762,19.2690253 C6.72650762,19.9139935 7.25122196,20.4387078 7.89619008,20.4387078 C8.54115819,20.4387078 9.06587253,19.9139935 9.06587253,19.2690253 C9.06587253,18.6242191 8.54115819,18.0995047 7.89619008,18.0995047 Z M16.8207199,18.0995047 C16.1757518,18.0995047 15.6510375,18.6242191 15.6510375,19.2690253 C15.6510375,19.9139935 16.1757518,20.4387078 16.8207199,20.4387078 C17.465688,20.4387078 17.9904024,19.9139935 17.9904024,19.2690253 C17.9904024,18.6242191 17.465688,18.0995047 16.8207199,18.0995047 Z M4.58909785,3 C4.6054446,3 4.6206584,3.00372253 4.63668145,3.00485547 C4.65869291,3.00631211 4.68038067,3.0079306 4.70174473,3.01132943 C4.72958275,3.0158612 4.75628783,3.02233516 4.78299291,3.02994206 C4.8001489,3.03479753 4.81698119,3.03949115 4.83365164,3.04564141 C4.8622989,3.05616159 4.88948953,3.06862396 4.91619461,3.08254297 L4.956495,3.10439258 C4.98287638,3.12025378 5.00763927,3.13789532 5.03175477,3.15699349 L5.06736154,3.18645 C5.08921115,3.20603373 5.10911857,3.22707409 5.1283786,3.2492474 C5.13986987,3.26251902 5.1511993,3.27562878 5.16171948,3.28970964 C5.17806623,3.31155925 5.19230894,3.33421811 5.2060661,3.35768621 C5.21626258,3.37500405 5.22597352,3.39216004 5.23455152,3.41028712 C5.24555725,3.43326967 5.25462079,3.45706147 5.26319878,3.48150066 C5.27032014,3.50205548 5.27711779,3.52244845 5.28245881,3.54381251 C5.28860907,3.56825171 5.29249345,3.59317645 5.29605412,3.61858673 C5.29799631,3.63299129 5.30252808,3.64642476 5.30382287,3.66115301 L5.510504,6.30738355 L21.2869744,6.30772748 C21.3139222,6.30835464 21.3370666,6.31256272 21.3603729,6.3151523 C21.3861069,6.31790373 21.4120027,6.31936037 21.4369275,6.32486324 C21.4591008,6.32923316 21.4726961,6.33603082 21.4875862,6.34056259 C21.5163953,6.34914058 21.5452044,6.35723303 21.5722332,6.36920985 C21.5918169,6.37778785 21.6092966,6.38911728 21.6275855,6.39931376 C21.6497588,6.41145243 21.6722559,6.42278186 21.6928107,6.43718642 C21.711747,6.45029618 21.7280937,6.46583368 21.7455734,6.48072379 C21.763215,6.49577574 21.7815039,6.51001845 21.7976888,6.52668889 C21.8132263,6.54287379 21.8261742,6.56067718 21.8400932,6.57815686 C21.8551452,6.59676949 21.8706827,6.61473473 21.8836306,6.634804 C21.8954456,6.65293108 21.9043473,6.67251481 21.9145437,6.69161299 C21.9258732,6.71330075 21.9381737,6.73434111 21.9473991,6.75716182 C21.9559771,6.77868773 21.9614799,6.80134658 21.9679539,6.82368174 C21.9744279,6.8456932 21.9820348,6.86705726 21.9864047,6.89003981 C21.9915839,6.91658304 21.9925549,6.94393552 21.994659,6.97128799 C21.9959538,6.98909138 22,7.00608552 22,7.0242126 C21.9988671,7.05496391 21.994659,7.07794646 21.9922312,7.10109086 C21.9894798,7.1269867 21.9880232,7.15320623 21.9825203,7.17813097 L20.5915903,13.2322533 L20.587706,13.2487619 C20.5797754,13.2835594 20.5681222,13.3164147 20.555498,13.3486227 C20.5524229,13.3567151 20.5499951,13.3651313 20.5465963,13.3730619 C20.5299259,13.4117438 20.5096948,13.4483216 20.4870359,13.4827955 C20.4797527,13.4938012 20.4710129,13.5031884 20.4632441,13.5137086 C20.445117,13.5381478 20.4265044,13.5619396 20.4056259,13.5836274 C20.3944583,13.5952805 20.3823196,13.605477 20.3705046,13.6163208 C20.3505972,13.6344479 20.3302043,13.6517658 20.3083546,13.6674651 C20.2941119,13.6778235 20.2795455,13.6872107 20.2646554,13.6964361 C20.2424821,13.7101932 20.2198233,13.7223319 20.1963552,13.7334995 L20.148286,13.7550254 C20.1214191,13.7655456 20.0935811,13.7734762 20.0654194,13.7807594 C20.0513385,13.7843201 20.037905,13.7888518 20.0235005,13.7916033 C19.9798012,13.8000194 19.9351309,13.8053604 19.8898132,13.8053604 L6.09623539,13.8051986 L6.20774933,15.2317353 L19.411064,15.2317353 C19.8069466,15.2317353 20.1278931,15.5528437 20.1278931,15.9487262 C20.1278931,16.3446088 19.8069466,16.6657172 19.411064,16.6657172 L5.54384488,16.6657172 C5.49593759,16.6657172 5.44932509,16.660538 5.40384553,16.6514744 C5.38863173,16.6483993 5.37471272,16.6425728 5.35998446,16.6386884 C5.33052795,16.6307578 5.30090959,16.6231509 5.27290972,16.6116596 C5.25543003,16.6043764 5.23940699,16.5945036 5.22257469,16.5859256 C5.19910659,16.5741106 5.17547665,16.5627812 5.15362704,16.5485385 C5.13711844,16.5376946 5.12255203,16.5249086 5.10701453,16.5127699 C5.08694526,16.4972324 5.06687599,16.4821804 5.04874891,16.4647007 C5.03434435,16.4509436 5.02204383,16.4357298 5.00893406,16.4208397 C4.99226362,16.4019033 4.97575503,16.3834526 4.96118862,16.3628977 C4.94937364,16.3463891 4.93966271,16.3285858 4.92930437,16.3111061 C4.91668015,16.2899039 4.90437963,16.2688635 4.8940213,16.2462046 C4.88511961,16.2267828 4.87832195,16.2065516 4.87103875,16.1861587 C4.86310815,16.163338 4.8553394,16.1406791 4.84967468,16.1168873 C4.84433367,16.0950377 4.84109669,16.0728644 4.83785971,16.0502055 L4.82992911,16.0045641 L3.92600265,4.43381996 L2.7169909,4.43381996 C2.32110834,4.43381996 2,4.11287347 2,3.7169909 C2,3.32094649 2.32110834,3 2.7169909,3 Z", fillRule: "evenodd" }) }));
780
780
  }
781
781
 
782
- var styles$x = {"manual-input-container":"add-to-cart-button-module-AWFvQ","left-button-spacer":"add-to-cart-button-module-SS7WM"};
782
+ var styles$z = {"manual-input-container":"add-to-cart-button-module-AWFvQ","left-button-spacer":"add-to-cart-button-module-SS7WM"};
783
783
 
784
784
  function AddToCartButton({ initialState = 'initial', isDisabled = false, onChange, quantity, }) {
785
785
  const [currentState, setState] = useState(initialState);
@@ -867,7 +867,7 @@ function ManualInputState({ isDisabled, onCancel, onConfirm, quantity, }) {
867
867
  e.key === 'Enter' && onConfirm(ensureNumber(updatedQuantity));
868
868
  e.key === 'Escape' && onCancel();
869
869
  };
870
- return (jsxs("div", { className: styles$x['manual-input-container'], children: [jsx("div", { className: styles$x['left-button-spacer'] }), jsx(NumberField, { autoFocus: true, autoGrow: true, defaultValue: quantity ? ensureNumber(quantity) : undefined, formatOptions: {
870
+ return (jsxs("div", { className: styles$z['manual-input-container'], children: [jsx("div", { className: styles$z['left-button-spacer'] }), jsx(NumberField, { autoFocus: true, autoGrow: true, defaultValue: quantity ? ensureNumber(quantity) : undefined, formatOptions: {
871
871
  maximumFractionDigits: 0,
872
872
  style: 'decimal',
873
873
  useGrouping: false,
@@ -917,12 +917,12 @@ const ConnectedAddToCartButton = ({ onAddToCart, productId }) => {
917
917
  return (jsx(AddToCartButton, { isDisabled: isPendingDeleteCartLine || isLoadingCartLines || isPendingAddToCart, onChange: handleChange, quantity: quantity }));
918
918
  };
919
919
 
920
- var styles$w = {"tag":"tag-module-B7r15","body":"tag-module-4cfCf","shape":"tag-module-c7CRb"};
920
+ var styles$y = {"tag":"tag-module-B7r15","body":"tag-module-4cfCf","shape":"tag-module-c7CRb"};
921
921
 
922
922
  function Tag({ children }) {
923
923
  if (!children)
924
924
  return null;
925
- return (jsxs("div", { className: styles$w.tag, children: [jsx("div", { className: styles$w.body, children: children }), jsx("svg", { className: styles$w.shape, height: "16", viewBox: "0 0 9 16", width: "9", xmlns: "http://www.w3.org/2000/svg", children: jsx("path", { d: "M1.92461763,0 L0,0 L0,16 L1.92461763,16 L6.4117887,16 L8.87489381,7.57121588 C9.23711515,6.3325062 8.79482383,4.99454094 7.78060408,4.2560794 L1.92461763,0 Z", fill: "currentColor" }) })] }));
925
+ return (jsxs("div", { className: styles$y.tag, children: [jsx("div", { className: styles$y.body, children: children }), jsx("svg", { className: styles$y.shape, height: "16", viewBox: "0 0 9 16", width: "9", xmlns: "http://www.w3.org/2000/svg", children: jsx("path", { d: "M1.92461763,0 L0,0 L0,16 L1.92461763,16 L6.4117887,16 L8.87489381,7.57121588 C9.23711515,6.3325062 8.79482383,4.99454094 7.78060408,4.2560794 L1.92461763,0 Z", fill: "currentColor" }) })] }));
926
926
  }
927
927
 
928
928
  const IntlContext = createContext({
@@ -958,7 +958,7 @@ function useFormattedMessage() {
958
958
 
959
959
  const FormattedMessage = ({ fallbackValue, id, optional, replacementValues, }) => useFormattedMessage()(id, { fallbackValue, optional, replacementValues });
960
960
 
961
- var styles$v = {"product-price":"product-price-module-oIU1K","original-price":"product-price-module-til0s","is-hidden":"product-price-module-V1NCf","current-price-wrapper":"product-price-module-FfVhl","current-price":"product-price-module-pvy2w","wholes":"product-price-module-GCw07","dot":"product-price-module-N56iV","decimals":"product-price-module-eWOOF","vat":"product-price-module-96DoG"};
961
+ var styles$x = {"product-price":"product-price-module-oIU1K","original-price":"product-price-module-til0s","is-hidden":"product-price-module-V1NCf","current-price-wrapper":"product-price-module-FfVhl","current-price":"product-price-module-pvy2w","wholes":"product-price-module-GCw07","dot":"product-price-module-N56iV","decimals":"product-price-module-eWOOF","vat":"product-price-module-96DoG"};
962
962
 
963
963
  const formatPrice = (price) => new Intl.NumberFormat('en-US', {
964
964
  maximumFractionDigits: 2,
@@ -971,18 +971,18 @@ function ProductPrice({ className, isVatIncluded, originalPrice, price, }) {
971
971
  const priceWithCurrency = formatPrice(price);
972
972
  const [wholes, decimals] = priceWithCurrency.split('.');
973
973
  const showOriginalPrice = priceWithCurrency !== originalPriceWithCurrency;
974
- return (jsxs("div", { className: clsx(className, styles$v['product-price']), children: [jsx("span", { className: clsx(styles$v['original-price'], {
975
- [styles$v['is-hidden']]: !showOriginalPrice,
976
- }), children: originalPriceWithCurrency }), jsxs("div", { className: styles$v['current-price-wrapper'], children: [jsxs("div", { className: styles$v['current-price'], children: [jsx("span", { className: styles$v.wholes, children: wholes }), jsx("span", { className: styles$v.dot, children: "." }), jsx("span", { className: styles$v.decimals, children: decimals })] }), jsx("span", { className: styles$v.vat, children: isVatIncluded ? (jsx(FormattedMessage, { id: "Incl. VAT" })) : (jsx(FormattedMessage, { id: "Excl. VAT" })) })] })] }));
974
+ return (jsxs("div", { className: clsx(className, styles$x['product-price']), children: [jsx("span", { className: clsx(styles$x['original-price'], {
975
+ [styles$x['is-hidden']]: !showOriginalPrice,
976
+ }), children: originalPriceWithCurrency }), jsxs("div", { className: styles$x['current-price-wrapper'], children: [jsxs("div", { className: styles$x['current-price'], children: [jsx("span", { className: styles$x.wholes, children: wholes }), jsx("span", { className: styles$x.dot, children: "." }), jsx("span", { className: styles$x.decimals, children: decimals })] }), jsx("span", { className: styles$x.vat, children: isVatIncluded ? (jsx(FormattedMessage, { id: "Incl. VAT" })) : (jsx(FormattedMessage, { id: "Excl. VAT" })) })] })] }));
977
977
  }
978
978
 
979
- var styles$u = {"product-sku":"product-sku-module-ITb8x"};
979
+ var styles$w = {"product-sku":"product-sku-module-ITb8x"};
980
980
 
981
981
  function ProductSku({ sku }) {
982
- return jsx("p", { className: styles$u['product-sku'], children: sku });
982
+ return jsx("p", { className: styles$w['product-sku'], children: sku });
983
983
  }
984
984
 
985
- var styles$t = {"image":"image-module-lg7Kj","contain":"image-module-KFEgG","cover":"image-module-tVKFe","has-error":"image-module-LM93B"};
985
+ var styles$v = {"image":"image-module-lg7Kj","contain":"image-module-KFEgG","cover":"image-module-tVKFe","has-error":"image-module-LM93B"};
986
986
 
987
987
  const breakpointToWidth = {
988
988
  lg: 1440,
@@ -1013,14 +1013,14 @@ function Image({ alt, className, fallbackSrc = 'https://res.cloudinary.com/dkz9e
1013
1013
  setHasError(true);
1014
1014
  };
1015
1015
  return (jsx("img", { alt: alt, className: clsx({
1016
- [styles$t['has-error']]: hasError,
1017
- }, styles$t.image, styles$t[fit], className), height: height, loading: loading, onError: handleError, sizes: sizesString, src: hasError ? fallbackSrc : src, srcSet: srcSet, title: title, width: width }));
1016
+ [styles$v['has-error']]: hasError,
1017
+ }, styles$v.image, styles$v[fit], className), height: height, loading: loading, onError: handleError, sizes: sizesString, src: hasError ? fallbackSrc : src, srcSet: srcSet, title: title, width: width }));
1018
1018
  }
1019
1019
 
1020
- var styles$s = {"product-card":"product-card-module-pLaiB","favorite-button":"product-card-module-tvEdz","content":"product-card-module-e0kMu","top":"product-card-module-Q0VvF","tag":"product-card-module-HkWBE","title":"product-card-module-CStNi","bottom":"product-card-module-kD2tU","image":"product-card-module-p-zoi","price":"product-card-module-irW0D","add-to-cart-button":"product-card-module-SnCvX"};
1020
+ var styles$u = {"product-card":"product-card-module-pLaiB","favorite-button":"product-card-module-tvEdz","content":"product-card-module-e0kMu","top":"product-card-module-Q0VvF","tag":"product-card-module-HkWBE","title":"product-card-module-CStNi","bottom":"product-card-module-kD2tU","image":"product-card-module-p-zoi","price":"product-card-module-irW0D","add-to-cart-button":"product-card-module-SnCvX"};
1021
1021
 
1022
1022
  function ProductCard({ addToCartButton: AddToCartButton, areaSelected, favoriteButton: FavoriteButton, href, id, image, onClick, onMouseDown, onMouseMove, onPress, price, role, sku, tags, title, }) {
1023
- return (jsxs(RouteLink, { "aria-selected": areaSelected, className: styles$s['product-card'], href: href, id: id, onClick: onClick, onMouseDown: onMouseDown, onMouseMove: onMouseMove, onPress: onPress, role: role, children: [jsx("div", { className: styles$s.image, children: jsx(Image, { ...image }) }), jsx("div", { className: styles$s['favorite-button'], children: FavoriteButton && FavoriteButton }), jsxs("div", { className: styles$s.content, children: [jsxs("div", { className: styles$s.top, children: [jsx("div", { className: styles$s.tag, children: tags?.map(tag => (jsx(Tag, { children: jsx(FormattedMessage, { optional: true, fallbackValue: tag, id: `tag.${tag.toLowerCase()}` }) }, tag))) }), jsx("h2", { className: styles$s.title, children: title }), jsx(ProductSku, { sku: sku })] }), jsxs("div", { className: styles$s.bottom, children: [jsx("div", { className: styles$s.price, children: jsx(ProductPrice, { isVatIncluded: price.isVatIncluded, originalPrice: price.originalPrice, price: price.price }) }), jsx("div", { className: styles$s['add-to-cart-button'], children: AddToCartButton })] })] })] }));
1023
+ return (jsxs(RouteLink, { "aria-selected": areaSelected, className: styles$u['product-card'], href: href, id: id, onClick: onClick, onMouseDown: onMouseDown, onMouseMove: onMouseMove, onPress: onPress, role: role, children: [jsx("div", { className: styles$u.image, children: jsx(Image, { ...image }) }), jsx("div", { className: styles$u['favorite-button'], children: FavoriteButton && FavoriteButton }), jsxs("div", { className: styles$u.content, children: [jsxs("div", { className: styles$u.top, children: [jsx("div", { className: styles$u.tag, children: tags?.map(tag => (jsx(Tag, { children: jsx(FormattedMessage, { optional: true, fallbackValue: tag, id: `tag.${tag.toLowerCase()}` }) }, tag))) }), jsx("h2", { className: styles$u.title, children: title }), jsx(ProductSku, { sku: sku })] }), jsxs("div", { className: styles$u.bottom, children: [jsx("div", { className: styles$u.price, children: jsx(ProductPrice, { isVatIncluded: price.isVatIncluded, originalPrice: price.originalPrice, price: price.price }) }), jsx("div", { className: styles$u['add-to-cart-button'], children: AddToCartButton })] })] })] }));
1024
1024
  }
1025
1025
 
1026
1026
  /**
@@ -6315,7 +6315,7 @@ function GlyphsArrowBoldCapsLeftIcon(props) {
6315
6315
  return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", ...props, fill: "currentColor", height: "11", viewBox: "0 0 11 11", width: "11", children: jsx("path", { d: "M2.31124163,11 C2.06716529,11 1.91839241,10.7730596 2.04771379,10.5980857 L6.08820761,5.13116556 C6.42092595,4.68081431 6.37243043,4.10595375 5.96732409,3.70073526 L2.70240329,0.432177991 C2.53178078,0.261409485 2.67540212,0 2.93972934,0 L5.48361239,0 C5.57518542,0 5.6619622,0.0340936243 5.72102726,0.0931942463 L8.14882304,2.52367916 C9.1607451,3.53657521 9.28198389,4.9729381 8.45036569,6.09787751 L4.91836426,10.876542 C4.86160851,10.9533653 4.7620417,11 4.65492523,11 L2.31124163,11 Z", fillRule: "evenodd", transform: "matrix(-1 0 0 1 11 0)" }) }));
6316
6316
  }
6317
6317
 
6318
- var styles$r = {"carousel":"carousel-module-ealh-","swiper":"carousel-module-IftbN","has-overflow":"carousel-module-tPg7k","slide":"carousel-module-bUMlb","navigation-button":"carousel-module-kcqEE","is-locked":"carousel-module-uCrOA","navigation-button-next":"carousel-module-T7bTr","is-dragging":"carousel-module-34OWD","navigation-button-prev":"carousel-module-984Rr","navigation-buttons":"carousel-module-k7Z4S","navigation-button-wrapper":"carousel-module-Hi-0z","top":"carousel-module-nL-O8","center":"carousel-module-5SGYn"};
6318
+ var styles$t = {"carousel":"carousel-module-ealh-","swiper":"carousel-module-IftbN","has-overflow":"carousel-module-tPg7k","slide":"carousel-module-bUMlb","navigation-button":"carousel-module-kcqEE","is-locked":"carousel-module-uCrOA","navigation-button-next":"carousel-module-T7bTr","is-dragging":"carousel-module-34OWD","navigation-button-prev":"carousel-module-984Rr","navigation-buttons":"carousel-module-k7Z4S","navigation-button-wrapper":"carousel-module-Hi-0z","top":"carousel-module-nL-O8","center":"carousel-module-5SGYn"};
6319
6319
 
6320
6320
  function CarouselNavigationButton({ direction, isDisabled = false, }) {
6321
6321
  const swiper = useSwiper();
@@ -6327,8 +6327,8 @@ function CarouselNavigationButton({ direction, isDisabled = false, }) {
6327
6327
  swiper.slidePrev();
6328
6328
  }
6329
6329
  }
6330
- return (jsx(Button$1, { className: clsx(styles$r['navigation-button'], {
6331
- [styles$r['is-locked']]: swiper.isLocked,
6330
+ return (jsx(Button$1, { className: clsx(styles$t['navigation-button'], {
6331
+ [styles$t['is-locked']]: swiper.isLocked,
6332
6332
  }), isDisabled: isDisabled, onPress: handleNavigation, children: direction === 'previous' ? (jsx(GlyphsArrowBoldCapsLeftIcon, {})) : (jsx(GlyphsArrowBoldCapsRightIcon, {})) }));
6333
6333
  }
6334
6334
 
@@ -6339,16 +6339,17 @@ function Carousel({ breakpoints, className, hasNavigation = true, hasOverflow =
6339
6339
  const [isDragging, setIsDragging] = useState(false);
6340
6340
  function handleSlideChange(swiper) {
6341
6341
  setIsEnd(swiper.isEnd);
6342
+ setIsLocked(swiper.isLocked);
6342
6343
  setIsBeginning(swiper.isBeginning);
6343
6344
  }
6344
6345
  const showNavigation = hasNavigation && !isLocked;
6345
- return (jsx("div", { className: clsx(styles$r.carousel, className), children: jsxs(Swiper, { breakpoints: breakpoints, className: clsx(styles$r.swiper, {
6346
- [styles$r['is-dragging']]: isDragging,
6347
- [styles$r['has-overflow']]: hasOverflow,
6346
+ return (jsx("div", { className: clsx(styles$t.carousel, className), children: jsxs(Swiper, { breakpoints: breakpoints, className: clsx(styles$t.swiper, {
6347
+ [styles$t['is-dragging']]: isDragging,
6348
+ [styles$t['has-overflow']]: hasOverflow,
6348
6349
  }), freeMode: {
6349
6350
  enabled: true,
6350
6351
  sticky: true,
6351
- }, modules: [freeMode], onSlideChange: swiper => handleSlideChange(swiper), onSwiper: swiper => setIsLocked(swiper.isLocked), onTouchEnd: () => setIsDragging(false), onTouchStart: () => setIsDragging(true), slidesPerView: slidesPerView, spaceBetween: spaceBetween, children: [slides.map((slide, index) => (jsx(SwiperSlide, { className: clsx(styles$r.slide, slideClasses), children: slide }, index))), showNavigation && (jsxs("div", { className: clsx(styles$r['navigation-buttons'], styles$r[navigationButtonsPosition]), children: [jsx("div", { className: clsx(styles$r['navigation-button-wrapper'], styles$r['navigation-button-prev']), children: jsx(CarouselNavigationButton, { direction: "previous", isDisabled: isBeginning }) }), jsx("div", { className: clsx(styles$r['navigation-button-wrapper'], styles$r['navigation-button-next']), children: jsx(CarouselNavigationButton, { direction: "next", isDisabled: isEnd }) })] }))] }) }));
6352
+ }, modules: [freeMode], onSwiper: swiper => setIsLocked(swiper.isLocked), onTouchEnd: () => setIsDragging(false), onTouchStart: () => setIsDragging(true), onUpdate: swiper => handleSlideChange(swiper), slidesPerView: slidesPerView, spaceBetween: spaceBetween, children: [slides.map((slide, index) => (jsx(SwiperSlide, { className: clsx(styles$t.slide, slideClasses), children: slide }, index))), showNavigation && (jsxs("div", { className: clsx(styles$t['navigation-buttons'], styles$t[navigationButtonsPosition]), children: [jsx("div", { className: clsx(styles$t['navigation-button-wrapper'], styles$t['navigation-button-prev']), children: jsx(CarouselNavigationButton, { direction: "previous", isDisabled: isBeginning }) }), jsx("div", { className: clsx(styles$t['navigation-button-wrapper'], styles$t['navigation-button-next']), children: jsx(CarouselNavigationButton, { direction: "next", isDisabled: isEnd }) })] }))] }) }));
6352
6353
  }
6353
6354
 
6354
6355
  function CategoryCarousel({ categoryCards }) {
@@ -6362,10 +6363,10 @@ function CategoryCarousel({ categoryCards }) {
6362
6363
  }, slides: categoryCards, spaceBetween: 8 }));
6363
6364
  }
6364
6365
 
6365
- var styles$q = {"accordion":"accordion-module-9WvAH","white":"accordion-module-CaVdG","accordion-item":"accordion-module-lf9d-","lg":"accordion-module-0qnae","with-seperators":"accordion-module-yOLrW","indented":"accordion-module-6CcEH","button":"accordion-module--Rwpb","icon":"accordion-module-Y50uq","focus":"accordion-module-M4BZs","panel":"accordion-module-KZjMo","content":"accordion-module-ejMH3","is-open":"accordion-module-W0F1z"};
6366
+ var styles$s = {"accordion":"accordion-module-9WvAH","white":"accordion-module-CaVdG","accordion-item":"accordion-module-lf9d-","lg":"accordion-module-0qnae","with-seperators":"accordion-module-yOLrW","indented":"accordion-module-6CcEH","button":"accordion-module--Rwpb","icon":"accordion-module-Y50uq","focus":"accordion-module-M4BZs","panel":"accordion-module-KZjMo","content":"accordion-module-ejMH3","is-open":"accordion-module-W0F1z"};
6366
6367
 
6367
6368
  function Accordion({ children, color = 'black', hasLineSeparator = true, indented, size = 'md', }) {
6368
- return (jsx("div", { className: clsx({ [styles$q.indented]: indented }, styles$q.accordion, styles$q[color], styles$q[size], hasLineSeparator && styles$q['with-seperators']), children: children &&
6369
+ return (jsx("div", { className: clsx({ [styles$s.indented]: indented }, styles$s.accordion, styles$s[color], styles$s[size], hasLineSeparator && styles$s['with-seperators']), children: children &&
6369
6370
  Children.map(children, child => {
6370
6371
  return cloneElement(child, { size });
6371
6372
  }) }));
@@ -6375,7 +6376,7 @@ function GlyphsChevronsSlimDownIcon(props) {
6375
6376
  return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", ...props, fill: "currentColor", height: "12", viewBox: "0 0 12 12", width: "12", children: jsx("path", { d: "M6,9 L1,4.06645029 C1.08169007,3.87890406 1.19817561,3.69487412 1.34945663,3.51436046 C1.50073764,3.3338468 1.68216803,3.16239331 1.89374779,3 L5.98800959,7.08347812 L9.9960307,3 C10.2121071,3.16649238 10.4031847,3.33794587 10.5692635,3.51436046 C10.7353424,3.69077505 10.8789212,3.87480499 11,4.06645029 L6,9 Z", fillRule: "evenodd" }) }));
6376
6377
  }
6377
6378
 
6378
- var styles$p = {"show-all":"show-all-module-BDp21","panel":"show-all-module-bEdda","content":"show-all-module-RF--F","has-transparency":"show-all-module-30y7l","button":"show-all-module-58e7Q","icon":"show-all-module-fqncI","is-open":"show-all-module-hQeGI"};
6379
+ var styles$r = {"show-all":"show-all-module-BDp21","panel":"show-all-module-bEdda","content":"show-all-module-RF--F","has-transparency":"show-all-module-30y7l","button":"show-all-module-58e7Q","icon":"show-all-module-fqncI","is-open":"show-all-module-hQeGI"};
6379
6380
 
6380
6381
  const ShowAll = ({ children, hasTransparency = true, initialHeight = 0, isOpen, onToggle, }) => {
6381
6382
  const showAllRef = useRef(null);
@@ -6384,14 +6385,14 @@ const ShowAll = ({ children, hasTransparency = true, initialHeight = 0, isOpen,
6384
6385
  return;
6385
6386
  showAllRef.current.style.setProperty('--initital-height', `${initialHeight}px`);
6386
6387
  }, [initialHeight]);
6387
- return (jsxs("div", { ref: showAllRef, className: clsx(styles$p['show-all'], {
6388
- [styles$p['is-open']]: isOpen,
6389
- }), children: [jsx("div", { className: styles$p.panel, children: jsx("div", { className: clsx(styles$p.content, {
6390
- [styles$p['has-transparency']]: hasTransparency,
6391
- }), children: children }) }), jsxs(LinkButton, { className: styles$p.button, onPress: () => onToggle(!isOpen), children: [jsx(GlyphsChevronsSlimDownIcon, { className: styles$p.icon }), isOpen ? (jsx(FormattedMessage, { id: "Show less" })) : (jsx(FormattedMessage, { id: "Show all" }))] })] }));
6388
+ return (jsxs("div", { ref: showAllRef, className: clsx(styles$r['show-all'], {
6389
+ [styles$r['is-open']]: isOpen,
6390
+ }), children: [jsx("div", { className: styles$r.panel, children: jsx("div", { className: clsx(styles$r.content, {
6391
+ [styles$r['has-transparency']]: hasTransparency,
6392
+ }), children: children }) }), jsxs(LinkButton, { className: styles$r.button, onPress: () => onToggle(!isOpen), children: [jsx(GlyphsChevronsSlimDownIcon, { className: styles$r.icon }), isOpen ? (jsx(FormattedMessage, { id: "Show less" })) : (jsx(FormattedMessage, { id: "Show all" }))] })] }));
6392
6393
  };
6393
6394
 
6394
- var styles$o = {"multi-select":"multi-select-module-DC7Ix","filter-items":"multi-select-module-cwVFb","hidden":"multi-select-module-o7yHU","filter-item":"multi-select-module-OW-NK"};
6395
+ var styles$q = {"multi-select":"multi-select-module-DC7Ix","filter-items":"multi-select-module-cwVFb","hidden":"multi-select-module-o7yHU","filter-item":"multi-select-module-OW-NK"};
6395
6396
 
6396
6397
  function MultiSelect({ amountShown = 3, onChange, options, render, }) {
6397
6398
  const shownOptions = options.slice(0, amountShown);
@@ -6402,28 +6403,28 @@ function MultiSelect({ amountShown = 3, onChange, options, render, }) {
6402
6403
  options.filter(option => option.isSelected).length === 0) {
6403
6404
  return null;
6404
6405
  }
6405
- return (jsxs("div", { className: styles$o['multi-select'], children: [jsx("div", { className: styles$o['filter-items'], children: shownOptions
6406
+ return (jsxs("div", { className: styles$q['multi-select'], children: [jsx("div", { className: styles$q['filter-items'], children: shownOptions
6406
6407
  .concat(isOpen ? [] : hiddenSelectedOptions)
6407
- .map(option => (jsxs("div", { className: styles$o['filter-item'], children: [render({ onChange: () => onChange(option), option }), jsxs("span", { children: ["(", option.amount, ")"] })] }, option.value))) }), hiddenOptions.length > 0 && (jsx(ShowAll, { hasTransparency: false, isOpen: isOpen, onToggle: toggle, children: jsx("div", { className: clsx(styles$o['filter-items'], styles$o['hidden']), children: hiddenOptions.map(option => (jsxs("div", { className: styles$o['filter-item'], children: [render({ onChange: () => onChange(option), option }), jsxs("span", { children: ["(", option.amount, ")"] })] }, option.value))) }) }))] }));
6408
+ .map(option => (jsxs("div", { className: styles$q['filter-item'], children: [render({ onChange: () => onChange(option), option }), jsxs("span", { children: ["(", option.amount, ")"] })] }, option.value))) }), hiddenOptions.length > 0 && (jsx(ShowAll, { hasTransparency: false, isOpen: isOpen, onToggle: toggle, children: jsx("div", { className: clsx(styles$q['filter-items'], styles$q['hidden']), children: hiddenOptions.map(option => (jsxs("div", { className: styles$q['filter-item'], children: [render({ onChange: () => onChange(option), option }), jsxs("span", { children: ["(", option.amount, ")"] })] }, option.value))) }) }))] }));
6408
6409
  }
6409
6410
 
6410
- var styles$n = {"checkbox":"checkbox-module-YNVdd","box":"checkbox-module-UKoyf","checkmark":"checkbox-module-pHIwh","focus":"checkbox-module-v23jy","active":"checkbox-module-7UG-b","color-checkbox":"checkbox-module-nEhvW"};
6411
+ var styles$p = {"checkbox":"checkbox-module-YNVdd","box":"checkbox-module-UKoyf","checkmark":"checkbox-module-pHIwh","focus":"checkbox-module-v23jy","active":"checkbox-module-7UG-b","color-checkbox":"checkbox-module-nEhvW"};
6411
6412
 
6412
6413
  function Checkbox({ _pseudo = 'none', children, className, isDisabled, isSelected, onChange, value, }) {
6413
- return (jsxs(Checkbox$1, { className: clsx(className, styles$n.checkbox, styles$n[_pseudo]), isDisabled: isDisabled, isSelected: isSelected, onChange: onChange, value: value, children: [jsx("div", { className: styles$n.box, children: jsx("svg", { "aria-hidden": "true", className: styles$n.checkmark, viewBox: "0 0 18 18", children: jsx("polyline", { points: "1 9 7 14 15 4" }) }) }), children] }));
6414
+ return (jsxs(Checkbox$1, { className: clsx(className, styles$p.checkbox, styles$p[_pseudo]), isDisabled: isDisabled, isSelected: isSelected, onChange: onChange, value: value, children: [jsx("div", { className: styles$p.box, children: jsx("svg", { "aria-hidden": "true", className: styles$p.checkmark, viewBox: "0 0 18 18", children: jsx("polyline", { points: "1 9 7 14 15 4" }) }) }), children] }));
6414
6415
  }
6415
6416
 
6416
6417
  function ColorCheckbox({ _pseudo = 'none', children, className, color, isDisabled, isSelected, onChange, value, }) {
6417
- return (jsxs(Checkbox$1, { className: clsx(className, styles$n.checkbox, styles$n['color-checkbox'], styles$n[_pseudo]), isDisabled: isDisabled, isSelected: isSelected, onChange: onChange, style: {
6418
+ return (jsxs(Checkbox$1, { className: clsx(className, styles$p.checkbox, styles$p['color-checkbox'], styles$p[_pseudo]), isDisabled: isDisabled, isSelected: isSelected, onChange: onChange, style: {
6418
6419
  '--selected-color': color,
6419
- }, value: value, children: [jsx("div", { className: styles$n.box }), children] }));
6420
+ }, value: value, children: [jsx("div", { className: styles$p.box }), children] }));
6420
6421
  }
6421
6422
 
6422
6423
  function StrokeCheckmarkIcon(props) {
6423
6424
  return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", ...props, fill: "currentColor", height: "24", viewBox: "0 0 24 24", width: "24", children: jsx("path", { d: "M10.8641425,17 C10.6636971,17 10.4855234,16.9548533 10.3296214,16.8645598 C10.1737194,16.7742664 10.0252413,16.6388262 9.88418708,16.4582393 L6.27839644,12.2189616 C6.09279881,11.9857035 6,11.744921 6,11.496614 C6,11.2332581 6.08723088,11.0094056 6.26169265,10.8250564 C6.43615442,10.6407073 6.65330364,10.5485327 6.91314031,10.5485327 C7.06904232,10.5485327 7.21195249,10.5823928 7.34187082,10.6501129 C7.47178916,10.717833 7.59985152,10.8382242 7.72605791,11.0112867 L10.8195991,14.7200903 L16.2405345,6.53047404 C16.4558278,6.17682468 16.7230883,6 17.0423163,6 C17.2873051,6 17.5081663,6.08088789 17.7048998,6.24266366 C17.9016333,6.40443943 18,6.61700527 18,6.88036117 C18,7.00075245 17.9721604,7.12302483 17.9164811,7.24717833 C17.8608018,7.37133183 17.7958426,7.48984199 17.7216036,7.6027088 L11.7884187,16.4469526 C11.5582777,16.8156509 11.2501856,17 10.8641425,17 Z", fillRule: "evenodd" }) }));
6424
6425
  }
6425
6426
 
6426
- var styles$m = {"select":"select-module-ui-Wc","sm":"select-module-44a1l","md":"select-module-QUm-8","button":"select-module-aMQIQ","chevron":"select-module-00uRU","focus":"select-module-XMc0P","popover":"select-module-z8cWq","listbox":"select-module-S21ba","header":"select-module-4Bm2j","item":"select-module-LgEJO","check":"select-module-lQFw3"};
6427
+ var styles$o = {"select":"select-module-ui-Wc","sm":"select-module-44a1l","md":"select-module-QUm-8","button":"select-module-aMQIQ","chevron":"select-module-00uRU","focus":"select-module-XMc0P","popover":"select-module-z8cWq","listbox":"select-module-S21ba","header":"select-module-4Bm2j","item":"select-module-LgEJO","check":"select-module-lQFw3"};
6427
6428
 
6428
6429
  function Select({ isDisabled = false, label, onChange, options, selectedOption, showLabel = true, size = 'md', }) {
6429
6430
  const selectRef = useRef(null);
@@ -6440,12 +6441,12 @@ function Select({ isDisabled = false, label, onChange, options, selectedOption,
6440
6441
  window.addEventListener('resize', updateWidth);
6441
6442
  return () => window.removeEventListener('resize', updateWidth);
6442
6443
  }, []);
6443
- return (jsxs(Select$1, { ref: selectRef, "aria-label": label, className: clsx(styles$m.select, styles$m[size]), isDisabled: isDisabled, onSelectionChange: selected => onChange(selected), placeholder: label, selectedKey: String(selectedOption), children: [showLabel && jsx(Label, { children: label }), jsxs(Button$1, { className: styles$m.button, children: [jsx(SelectValue, {}), jsx(GlyphsChevronsSlimDownIcon, { "aria-hidden": "true", className: styles$m.chevron })] }), jsx(Popover, { ref: ref =>
6444
+ return (jsxs(Select$1, { ref: selectRef, "aria-label": label, className: clsx(styles$o.select, styles$o[size]), isDisabled: isDisabled, onSelectionChange: selected => onChange(selected), placeholder: label, selectedKey: String(selectedOption), children: [showLabel && jsx(Label, { children: label }), jsxs(Button$1, { className: styles$o.button, children: [jsx(SelectValue, {}), jsx(GlyphsChevronsSlimDownIcon, { "aria-hidden": "true", className: styles$o.chevron })] }), jsx(Popover, { ref: ref =>
6444
6445
  // Workaround for react/react-aria #1513
6445
- ref?.addEventListener('touchend', e => e.preventDefault()), className: styles$m.popover, placement: "bottom left", triggerRef: selectRef, children: jsx(ListBox, { className: styles$m.listbox, children: jsxs(Section, { children: [jsx(Header, { className: styles$m.header, children: label }), Object.entries(options).map(([key, value]) => (jsxs(ListBoxItem, { "aria-label": value, className: styles$m.item, id: key, textValue: value, children: [selectedOption === key && (jsx("span", { slot: "description", children: jsx(StrokeCheckmarkIcon, { className: styles$m.check }) })), jsx("span", { slot: "label", children: value })] }, key)))] }) }) })] }));
6446
+ ref?.addEventListener('touchend', e => e.preventDefault()), className: styles$o.popover, placement: "bottom left", triggerRef: selectRef, children: jsx(ListBox, { className: styles$o.listbox, children: jsxs(Section, { children: [jsx(Header, { className: styles$o.header, children: label }), Object.entries(options).map(([key, value]) => (jsxs(ListBoxItem, { "aria-label": value, className: styles$o.item, id: key, textValue: value, children: [selectedOption === key && (jsx("span", { slot: "description", children: jsx(StrokeCheckmarkIcon, { className: styles$o.check }) })), jsx("span", { slot: "label", children: value })] }, key)))] }) }) })] }));
6446
6447
  }
6447
6448
 
6448
- var styles$l = {"input-container":"textarea-module-C6Xr1","lg":"textarea-module-vksG-","md":"textarea-module-6JrQJ"};
6449
+ var styles$n = {"input-container":"textarea-module-C6Xr1","lg":"textarea-module-vksG-","md":"textarea-module-6JrQJ"};
6449
6450
 
6450
6451
  /**
6451
6452
  * This component is used to create a textarea that can grow as the user types.
@@ -6480,7 +6481,7 @@ const TextArea = forwardRef(({ autoGrow, size, ...textAreaProps }, _ref) => {
6480
6481
  }
6481
6482
  updateHeight();
6482
6483
  }, [ref, autoGrow, updateHeight, size]);
6483
- return (jsx("div", { className: styles$l['input-container'], children: jsx(TextArea$1, { ...textAreaProps, ref: node => {
6484
+ return (jsx("div", { className: styles$n['input-container'], children: jsx(TextArea$1, { ...textAreaProps, ref: node => {
6484
6485
  ref.current =
6485
6486
  node;
6486
6487
  textAreaRef.current = node;
@@ -6491,7 +6492,7 @@ const TextArea = forwardRef(({ autoGrow, size, ...textAreaProps }, _ref) => {
6491
6492
  });
6492
6493
  TextArea.displayName = 'TextArea';
6493
6494
 
6494
- var styles$k = {"field":"text-field-module-JeaK0"};
6495
+ var styles$m = {"field":"text-field-module-JeaK0"};
6495
6496
 
6496
6497
  /**
6497
6498
  * This component is used to create a text field.
@@ -6499,7 +6500,7 @@ var styles$k = {"field":"text-field-module-JeaK0"};
6499
6500
  * This field can also grow when a user types in text.
6500
6501
  */
6501
6502
  function TextField({ autoFocus, autoGrow, defaultValue, isDisabled, isInvalid, isMultiline, isReadOnly, isRequired, label, maxLength, onChange, onInput, onKeyUp, placeholder, rows, showLabel = false, size = 'lg', value, }) {
6502
- return (jsxs(TextField$1, { "aria-label": label, autoFocus: autoFocus, className: clsx(styles$k.field, styles$k[size]), defaultValue: defaultValue, isDisabled: isDisabled, isInvalid: isInvalid, isReadOnly: isReadOnly, isRequired: isRequired, maxLength: maxLength, onChange: value => {
6503
+ return (jsxs(TextField$1, { "aria-label": label, autoFocus: autoFocus, className: clsx(styles$m.field, styles$m[size]), defaultValue: defaultValue, isDisabled: isDisabled, isInvalid: isInvalid, isReadOnly: isReadOnly, isRequired: isRequired, maxLength: maxLength, onChange: value => {
6503
6504
  onChange?.(value);
6504
6505
  }, onInput: onInput, onKeyUp: e => onKeyUp?.(e), value: value, children: [showLabel && jsx(Label, { isRequired: isRequired, children: label }), isMultiline ? (jsx(TextArea, { autoGrow: autoGrow, placeholder: placeholder, rows: rows, size: size })) : (jsx(Input, { autoGrow: autoGrow, placeholder: placeholder, size: size })), jsx(FieldError, {})] }));
6505
6506
  }
@@ -6509,31 +6510,31 @@ function IntlProvider({ children, formatMessage, languageCode: _languageCode, })
6509
6510
  return (jsx(IntlContext.Provider, { value: { formatMessage, languageCode, updateLanguageCode }, children: children }));
6510
6511
  }
6511
6512
 
6512
- var styles$j = {"product-grid":"product-overview-grid-module-bzys-","grid-item":"product-overview-grid-module-MlUVA"};
6513
+ var styles$l = {"product-grid":"product-overview-grid-module-bzys-","grid-item":"product-overview-grid-module-MlUVA"};
6513
6514
 
6514
6515
  function ProductOverviewGrid({ children }) {
6515
- return (jsx("div", { className: styles$j['product-grid'], children: Children.map(children, (child, index) => (jsx("div", { className: styles$j['grid-item'], children: child }, index))) }));
6516
+ return (jsx("div", { className: styles$l['product-grid'], children: Children.map(children, (child, index) => (jsx("div", { className: styles$l['grid-item'], children: child }, index))) }));
6516
6517
  }
6517
6518
 
6518
- var styles$i = {"progress-circle":"progress-circle-module-4nweP","spin":"progress-circle-module-kCf7K"};
6519
+ var styles$k = {"progress-circle":"progress-circle-module-4nweP","spin":"progress-circle-module-kCf7K"};
6519
6520
 
6520
6521
  function ProgressCircle({ className }) {
6521
- return (jsxs("svg", { className: clsx(styles$i['progress-circle'], className), viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink", children: [jsx("title", { children: "Spinner" }), jsxs("defs", { children: [jsx("pattern", { height: "100%", id: "pattern-1", patternUnits: "objectBoundingBox", width: "100%", children: jsx("use", { xlinkHref: "#image-2" }) }), jsx("image", { height: "24", id: "image-2", width: "24", xlinkHref: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAAB7UlEQVRIDZ2VSaoCQQyG01rOoBtBr+YZXXsFL+BGEHcqDuCE89SPL480hdpiGYil3an/S1KDUavViq/Xq1wul8RPp5Ocz2dhPB6PiR8OB42RAHO5XE7D4zgW/PF4CM/u97tks1n1TCYjURSpB2hraALglw8BQGXOuQQSKk68y+fzL9lRBQAqAUIlVkUoxBUKBZ3sC1irbrdbUoX/PgTyAqDXmFVBBVRCFfYuGMBk67UvRCUA2FFAfgKUSiWhFTgQA9ESjLVgC7NWwEPNFYtFFUEICJnigAxCFbvd7jcAFVi/gbDoCALmOzCMAzebzUILEFculxVgOwcIDqRSqaiTBDadToMhziYDwBgNRmW0rdFoSLPZ1PeDwUDHbz+iTqejyv5VYHuekbVggavVqkLq9fq32hqnLTJxdgmijPQeYSqs1Woa3G63g8QJ1haZKMJkjDgLjLi/Nbvd7m8ARCxry9x2jyn2ej2ZTCb28+tRK/Azpy3vrN/vy2azeffq4zM9aLTFP1jPM4bDoWbPH06o6WXn9/lZgDMxGo1kuVwG/5uhlfkkTsB4PJb5fC7b7VYPH89C7P9GS5nBLYr4er2W/X6vhy4lNPXxR8BisdDWkD13Ee0KtVQAgqvVSncO2XNlc3WEWirAxLmmgf0K+ANZ6DTlvO5jwwAAAABJRU5ErkJggg==" })] }), jsx("g", { fill: "none", fillRule: "evenodd", id: "Page-1", stroke: "none", strokeWidth: "1", children: jsx("path", { d: "M12,0 C18.627417,0 24,5.372583 24,12 C24,14.7277828 23.0855773,17.3196292 21.4324752,19.4188392 C19.1717866,22.2895997 15.7255176,24 12,24 C11.2636203,24 10.6666667,23.4030463 10.6666667,22.6666667 C10.6666667,21.930287 11.2636203,21.3333333 12,21.3333333 C14.8994206,21.3333333 17.5771113,20.0043823 19.3374325,17.7690188 C20.6234737,16.1359252 21.3333333,14.1238938 21.3333333,12 C21.3333333,6.84534234 17.1546577,2.66666667 12,2.66666667 C6.84534234,2.66666667 2.66666667,6.84534234 2.66666667,12 C2.66666667,14.4546154 3.61656005,16.756214 5.28844833,18.485859 C5.80023235,19.015323 5.78589988,19.8594213 5.25643588,20.3712053 C4.72697187,20.8829893 3.88287357,20.8686569 3.37108955,20.3391928 C1.22326178,18.1171666 0,15.1531945 0,12 C0,5.372583 5.372583,0 12,0 Z", fill: "url(#pattern-1)", fillRule: "nonzero", id: "Spinner" }) })] }));
6522
+ return (jsxs("svg", { className: clsx(styles$k['progress-circle'], className), viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink", children: [jsx("title", { children: "Spinner" }), jsxs("defs", { children: [jsx("pattern", { height: "100%", id: "pattern-1", patternUnits: "objectBoundingBox", width: "100%", children: jsx("use", { xlinkHref: "#image-2" }) }), jsx("image", { height: "24", id: "image-2", width: "24", xlinkHref: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAAB7UlEQVRIDZ2VSaoCQQyG01rOoBtBr+YZXXsFL+BGEHcqDuCE89SPL480hdpiGYil3an/S1KDUavViq/Xq1wul8RPp5Ocz2dhPB6PiR8OB42RAHO5XE7D4zgW/PF4CM/u97tks1n1TCYjURSpB2hraALglw8BQGXOuQQSKk68y+fzL9lRBQAqAUIlVkUoxBUKBZ3sC1irbrdbUoX/PgTyAqDXmFVBBVRCFfYuGMBk67UvRCUA2FFAfgKUSiWhFTgQA9ESjLVgC7NWwEPNFYtFFUEICJnigAxCFbvd7jcAFVi/gbDoCALmOzCMAzebzUILEFculxVgOwcIDqRSqaiTBDadToMhziYDwBgNRmW0rdFoSLPZ1PeDwUDHbz+iTqejyv5VYHuekbVggavVqkLq9fq32hqnLTJxdgmijPQeYSqs1Woa3G63g8QJ1haZKMJkjDgLjLi/Nbvd7m8ARCxry9x2jyn2ej2ZTCb28+tRK/Azpy3vrN/vy2azeffq4zM9aLTFP1jPM4bDoWbPH06o6WXn9/lZgDMxGo1kuVwG/5uhlfkkTsB4PJb5fC7b7VYPH89C7P9GS5nBLYr4er2W/X6vhy4lNPXxR8BisdDWkD13Ee0KtVQAgqvVSncO2XNlc3WEWirAxLmmgf0K+ANZ6DTlvO5jwwAAAABJRU5ErkJggg==" })] }), jsx("g", { fill: "none", fillRule: "evenodd", id: "Page-1", stroke: "none", strokeWidth: "1", children: jsx("path", { d: "M12,0 C18.627417,0 24,5.372583 24,12 C24,14.7277828 23.0855773,17.3196292 21.4324752,19.4188392 C19.1717866,22.2895997 15.7255176,24 12,24 C11.2636203,24 10.6666667,23.4030463 10.6666667,22.6666667 C10.6666667,21.930287 11.2636203,21.3333333 12,21.3333333 C14.8994206,21.3333333 17.5771113,20.0043823 19.3374325,17.7690188 C20.6234737,16.1359252 21.3333333,14.1238938 21.3333333,12 C21.3333333,6.84534234 17.1546577,2.66666667 12,2.66666667 C6.84534234,2.66666667 2.66666667,6.84534234 2.66666667,12 C2.66666667,14.4546154 3.61656005,16.756214 5.28844833,18.485859 C5.80023235,19.015323 5.78589988,19.8594213 5.25643588,20.3712053 C4.72697187,20.8829893 3.88287357,20.8686569 3.37108955,20.3391928 C1.22326178,18.1171666 0,15.1531945 0,12 C0,5.372583 5.372583,0 12,0 Z", fill: "url(#pattern-1)", fillRule: "nonzero", id: "Spinner" }) })] }));
6522
6523
  }
6523
6524
 
6524
- var styles$h = {"loading-overlay":"loading-overlay-module-L67Gy"};
6525
+ var styles$j = {"loading-overlay":"loading-overlay-module-L67Gy"};
6525
6526
 
6526
6527
  function LoadingOverlay() {
6527
- return (jsx("div", { className: styles$h['loading-overlay'], children: jsx(ProgressCircle, {}) }));
6528
+ return (jsx("div", { className: styles$j['loading-overlay'], children: jsx(ProgressCircle, {}) }));
6528
6529
  }
6529
6530
 
6530
- var styles$g = {"page-container":"page-container-module-PYmbC","inner-page-container":"page-container-module-uD8GF"};
6531
+ var styles$i = {"page-container":"page-container-module-PYmbC","inner-page-container":"page-container-module-uD8GF"};
6531
6532
 
6532
6533
  function PageContainer({ children, className, }) {
6533
- return (jsx("div", { className: styles$g['page-container'], children: jsx("div", { className: clsx(styles$g['inner-page-container'], className), children: children }) }));
6534
+ return (jsx("div", { className: styles$i['page-container'], children: jsx("div", { className: clsx(styles$i['inner-page-container'], className), children: children }) }));
6534
6535
  }
6535
6536
 
6536
- var styles$f = {"heading":"heading-module-pMC65","uppercase":"heading-module-6spgX","italic":"heading-module-XXMDM","xxl":"heading-module-Kn3ZN","xl":"heading-module--hZs-","l":"heading-module-WrJRY","m":"heading-module-hTexc","s":"heading-module-7W29m","xs":"heading-module-SgaLB","xxs":"heading-module-33en7"};
6537
+ var styles$h = {"heading":"heading-module-pMC65","uppercase":"heading-module-6spgX","italic":"heading-module-XXMDM","xxl":"heading-module-Kn3ZN","xl":"heading-module--hZs-","l":"heading-module-WrJRY","m":"heading-module-hTexc","s":"heading-module-7W29m","xs":"heading-module-SgaLB","xxs":"heading-module-33en7"};
6537
6538
 
6538
6539
  const sizeToTag = {
6539
6540
  l: 'h3',
@@ -6546,30 +6547,30 @@ const sizeToTag = {
6546
6547
  };
6547
6548
  function Heading({ children, className, italic, size = 'xxl', tag, uppercase, }) {
6548
6549
  return createElement$1(tag || sizeToTag[size], {
6549
- className: clsx(className, styles$f.heading, styles$f[size], {
6550
- [styles$f.uppercase]: uppercase,
6551
- [styles$f.italic]: italic,
6550
+ className: clsx(className, styles$h.heading, styles$h[size], {
6551
+ [styles$h.uppercase]: uppercase,
6552
+ [styles$h.italic]: italic,
6552
6553
  }),
6553
6554
  }, children);
6554
6555
  }
6555
6556
 
6556
- var styles$e = {"page":"page-module-XtZ9Y","breadcrumb":"page-module-ohh9z","title":"page-module-TEmve"};
6557
+ var styles$g = {"page":"page-module-XtZ9Y","breadcrumb":"page-module-ohh9z","title":"page-module-TEmve"};
6557
6558
 
6558
6559
  function Page({ breadCrumb, children, className, title }) {
6559
6560
  const { lg, xxl } = useBreakpoint();
6560
- return (jsxs(PageContainer, { className: clsx(styles$e.page, className), children: [jsx("div", { className: styles$e.breadcrumb, children: jsx(Breadcrumb, { links: breadCrumb }) }), title && (jsx(Heading, { italic: true, uppercase: true, className: styles$e.title, size: xxl ? 'xl' : lg ? 'm' : 's', tag: "h1", children: title })), children] }));
6561
+ return (jsxs(PageContainer, { className: clsx(styles$g.page, className), children: [jsx("div", { className: styles$g.breadcrumb, children: jsx(Breadcrumb, { links: breadCrumb }) }), title && (jsx(Heading, { italic: true, uppercase: true, className: styles$g.title, size: xxl ? 'xl' : lg ? 'm' : 's', tag: "h1", children: title })), children] }));
6561
6562
  }
6562
6563
 
6563
6564
  function StrokeCloseboxIcon(props) {
6564
6565
  return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", ...props, height: "24", viewBox: "0 0 24 24", width: "24", children: jsx("path", { d: "M8,8 L16,16 M16,8 L8,16", fill: "currentColor", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.4" }) }));
6565
6566
  }
6566
6567
 
6567
- var styles$d = {"active-filters":"active-filters-module-1qLjB","header":"active-filters-module-UKKDu","title":"active-filters-module-h29rI","active-filter-item":"active-filters-module-Rrmhy","category":"active-filters-module-u9TTE","active-filter-value":"active-filters-module-CIuPU"};
6568
+ var styles$f = {"active-filters":"active-filters-module-1qLjB","header":"active-filters-module-UKKDu","title":"active-filters-module-h29rI","active-filter-item":"active-filters-module-Rrmhy","category":"active-filters-module-u9TTE","active-filter-value":"active-filters-module-CIuPU"};
6568
6569
 
6569
6570
  const ActiveFilters = ({ onClearAllFilters, onClearFilter, selectedFilterCategories, }) => {
6570
6571
  if (selectedFilterCategories.length === 0)
6571
6572
  return null;
6572
- return (jsxs("div", { className: styles$d['active-filters'], children: [jsxs("div", { className: styles$d.header, children: [jsx(Heading, { className: styles$d.title, size: "xxs", children: jsx(FormattedMessage, { id: "Chosen filters" }) }), jsx(LinkButton, { onPress: onClearAllFilters, children: jsx(FormattedMessage, { id: "Clear filters" }) })] }), selectedFilterCategories.map((category, index) => (jsx("section", { className: styles$d.category, children: category.filters.map(filter => (jsxs("div", { className: styles$d['active-filter-item'], children: [jsxs("span", { children: [jsxs("span", { children: [category.label, ": "] }), jsx("span", { className: styles$d['active-filter-value'], children: filter.label })] }), jsx(IconButton, { color: "secondary", onPress: () => onClearFilter(category.label, filter), children: jsx(StrokeCloseboxIcon, {}) })] }, `${category.label}-${filter.value}`))) }, `${category.label}-${index}`)))] }));
6573
+ return (jsxs("div", { className: styles$f['active-filters'], children: [jsxs("div", { className: styles$f.header, children: [jsx(Heading, { className: styles$f.title, size: "xxs", children: jsx(FormattedMessage, { id: "Chosen filters" }) }), jsx(LinkButton, { onPress: onClearAllFilters, children: jsx(FormattedMessage, { id: "Clear filters" }) })] }), selectedFilterCategories.map((category, index) => (jsx("section", { className: styles$f.category, children: category.filters.map(filter => (jsxs("div", { className: styles$f['active-filter-item'], children: [jsxs("span", { children: [jsxs("span", { children: [category.label, ": "] }), jsx("span", { className: styles$f['active-filter-value'], children: filter.label })] }), jsx(IconButton, { color: "secondary", onPress: () => onClearFilter(category.label, filter), children: jsx(StrokeCloseboxIcon, {}) })] }, `${category.label}-${filter.value}`))) }, `${category.label}-${index}`)))] }));
6573
6574
  };
6574
6575
 
6575
6576
  function AlgoliaActiveFilters() {
@@ -6598,12 +6599,12 @@ function GlyphsChevronsBoldDownIcon(props) {
6598
6599
  function AccordionItem({ _pseudo = 'none', children, className, id, initialIsOpen = false, isDisabled = false, size, title, }) {
6599
6600
  const { isOpen, toggle } = useDisclosure(initialIsOpen);
6600
6601
  const panelId = `panel-${id}`;
6601
- return (jsxs("div", { className: clsx(className, styles$q['accordion-item'], {
6602
- [styles$q['is-open']]: isOpen,
6603
- }), children: [jsx("h3", { children: jsxs("button", { "aria-controls": panelId, "aria-expanded": isOpen, className: clsx(styles$q.button, styles$q[_pseudo]), disabled: isDisabled, id: id, onClick: toggle, type: "button", children: [title, jsx("span", { className: styles$q.icon, children: size === 'lg' ? (jsx(GlyphsChevronsBoldDownIcon, {})) : (jsx(GlyphsChevronsSlimDownIcon, {})) })] }) }), jsx("div", { "aria-labelledby": id, className: styles$q.panel, id: panelId, role: "region", children: jsx("div", { className: styles$q.content, children: children }) })] }));
6602
+ return (jsxs("div", { className: clsx(className, styles$s['accordion-item'], {
6603
+ [styles$s['is-open']]: isOpen,
6604
+ }), children: [jsx("h3", { children: jsxs("button", { "aria-controls": panelId, "aria-expanded": isOpen, className: clsx(styles$s.button, styles$s[_pseudo]), disabled: isDisabled, id: id, onClick: toggle, type: "button", children: [title, jsx("span", { className: styles$s.icon, children: size === 'lg' ? (jsx(GlyphsChevronsBoldDownIcon, {})) : (jsx(GlyphsChevronsSlimDownIcon, {})) })] }) }), jsx("div", { "aria-labelledby": id, className: styles$s.panel, id: panelId, role: "region", children: jsx("div", { className: styles$s.content, children: children }) })] }));
6604
6605
  }
6605
6606
 
6606
- var styles$c = {"filter-panel":"algolia-filter-panel-module-GfhOO","scroll-container":"algolia-filter-panel-module-4ubB1","categories-section":"algolia-filter-panel-module-8EC87","category":"algolia-filter-panel-module-LKet3","count":"algolia-filter-panel-module-uAHPx","categories":"algolia-filter-panel-module-BqX04","categories-header":"algolia-filter-panel-module-WcY7E","button":"algolia-filter-panel-module-ABOYv"};
6607
+ var styles$e = {"filter-panel":"algolia-filter-panel-module-GfhOO","scroll-container":"algolia-filter-panel-module-4ubB1","categories-section":"algolia-filter-panel-module-8EC87","category":"algolia-filter-panel-module-LKet3","count":"algolia-filter-panel-module-uAHPx","categories":"algolia-filter-panel-module-BqX04","categories-header":"algolia-filter-panel-module-WcY7E","button":"algolia-filter-panel-module-ABOYv"};
6607
6608
 
6608
6609
  function AlgoliaFilterSection({ attribute, children, initialIsOpen = true, }) {
6609
6610
  const { items, refine } = useRefinementList({
@@ -6615,7 +6616,7 @@ function AlgoliaFilterSection({ attribute, children, initialIsOpen = true, }) {
6615
6616
  if (items.length < 2 && items.filter(item => item.isRefined).length === 0) {
6616
6617
  return null;
6617
6618
  }
6618
- return (jsx(Accordion, { children: jsx(AccordionItem, { id: attribute, initialIsOpen: initialIsOpen, title: jsx("span", { className: styles$c['accordion-title'], children: jsx(FormattedMessage, { optional: true, fallbackValue: attribute, id: `facet.${attribute.toLowerCase()}` }) }), children: children({
6619
+ return (jsx(Accordion, { children: jsx(AccordionItem, { id: attribute, initialIsOpen: initialIsOpen, title: jsx("span", { className: styles$e['accordion-title'], children: jsx(FormattedMessage, { optional: true, fallbackValue: attribute, id: `facet.${attribute.toLowerCase()}` }) }), children: children({
6619
6620
  items,
6620
6621
  refine,
6621
6622
  }) }) }));
@@ -6643,17 +6644,17 @@ function AlgoliaFilterPanel({ onShowProducts, }) {
6643
6644
  const { attributesToRender } = useDynamicWidgets({
6644
6645
  maxValuesPerFacet: 100,
6645
6646
  });
6646
- return (jsx("div", { className: styles$c['filter-panel'], children: jsxs("div", { className: styles$c['scroll-container'], children: [jsx(AlgoliaActiveFilters, {}), attributesToRender.length > 0 && (jsx("section", { children: attributesToRender.map((attribute, index) => (jsx(AlgoliaMultiSelectFilterSection, { attribute: attribute }, `attribute-${index}`))) })), jsx("div", { className: styles$c.button, children: jsxs(Button, { withArrow: true, onPress: onShowProducts, size: "md", children: [jsx(FormattedMessage, { id: "Show" }), " ", jsx(AlgoliaResultsCount, {})] }) })] }) }));
6647
+ return (jsx("div", { className: styles$e['filter-panel'], children: jsxs("div", { className: styles$e['scroll-container'], children: [jsx(AlgoliaActiveFilters, {}), attributesToRender.length > 0 && (jsx("section", { children: attributesToRender.map((attribute, index) => (jsx(AlgoliaMultiSelectFilterSection, { attribute: attribute }, `attribute-${index}`))) })), jsx("div", { className: styles$e.button, children: jsxs(Button, { withArrow: true, onPress: onShowProducts, size: "md", children: [jsx(FormattedMessage, { id: "Show" }), " ", jsx(AlgoliaResultsCount, {})] }) })] }) }));
6647
6648
  }
6648
6649
 
6649
6650
  function GlyphsChevronsSlimRightIcon(props) {
6650
6651
  return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", ...props, fill: "currentColor", height: "12", viewBox: "0 0 12 12", width: "12", children: jsx("path", { d: "M9,6 L4.06645029,1 C3.87890406,1.08169007 3.69487412,1.19817561 3.51436046,1.34945663 C3.3338468,1.50073764 3.16239331,1.68216803 3,1.89374779 L7.08347812,5.98800959 L3,9.9960307 C3.16649238,10.2121071 3.33794587,10.4031847 3.51436046,10.5692635 C3.69077505,10.7353424 3.87480499,10.8789212 4.06645029,11 L9,6 Z", fillRule: "evenodd" }) }));
6651
6652
  }
6652
6653
 
6653
- var styles$b = {"pagination":"pagination-module-k4OgY","page-number-container":"pagination-module-oq89A"};
6654
+ var styles$d = {"pagination":"pagination-module-k4OgY","page-number-container":"pagination-module-oq89A"};
6654
6655
 
6655
6656
  function Pagination({ currentPage, onChange, totalPages, }) {
6656
- return (jsxs("div", { className: styles$b.pagination, children: [jsx(IconButton, { isDisabled: currentPage === 1, onPress: () => onChange(currentPage - 1), children: jsx(GlyphsChevronsSlimLeftIcon, {}) }), jsxs("div", { className: styles$b['page-number-container'], children: [jsx(NumberField, { autoGrow: true, label: "current-page", maxValue: totalPages, minValue: 1, onChange: onChange, value: currentPage }), jsx(FormattedMessage, { id: "of" }), jsx("div", { children: totalPages })] }), jsx(IconButton, { isDisabled: currentPage >= totalPages, onPress: () => onChange(currentPage + 1), children: jsx(GlyphsChevronsSlimRightIcon, {}) })] }));
6657
+ return (jsxs("div", { className: styles$d.pagination, children: [jsx(IconButton, { isDisabled: currentPage === 1, onPress: () => onChange(currentPage - 1), children: jsx(GlyphsChevronsSlimLeftIcon, {}) }), jsxs("div", { className: styles$d['page-number-container'], children: [jsx(NumberField, { autoGrow: true, label: "current-page", maxValue: totalPages, minValue: 1, onChange: onChange, value: currentPage }), jsx(FormattedMessage, { id: "of" }), jsx("div", { children: totalPages })] }), jsx(IconButton, { isDisabled: currentPage >= totalPages, onPress: () => onChange(currentPage + 1), children: jsx(GlyphsChevronsSlimRightIcon, {}) })] }));
6657
6658
  }
6658
6659
 
6659
6660
  function AlgoliaPagination({ onChange }) {
@@ -7025,12 +7026,12 @@ function ConnectedProductCard({ onAddToCart, productId, ...props }) {
7025
7026
  return (jsx(ProductCard, { ...props, addToCartButton: jsx(ConnectedAddToCartButton, { onAddToCart: onAddToCart, productId: productId }) }));
7026
7027
  }
7027
7028
 
7028
- var styles$a = {"category-card":"category-card-module-4NUjH","title":"category-card-module-LEhh3","is-selected":"category-card-module-vJ7vB","image-container":"category-card-module-oNTrK"};
7029
+ var styles$c = {"category-card":"category-card-module-4NUjH","title":"category-card-module-LEhh3","is-selected":"category-card-module-vJ7vB","image-container":"category-card-module-oNTrK"};
7029
7030
 
7030
7031
  function CategoryCard({ href, image, isSelected = false, title, }) {
7031
7032
  return (jsxs(RouteLink, { className: clsx({
7032
- [styles$a['is-selected']]: isSelected,
7033
- }, styles$a['category-card']), href: href, children: [jsx("div", { className: styles$a['image-container'], children: jsx(Image, { ...image, fit: "contain" }) }), jsx("p", { className: styles$a.title, children: title })] }));
7033
+ [styles$c['is-selected']]: isSelected,
7034
+ }, styles$c['category-card']), href: href, children: [jsx("div", { className: styles$c['image-container'], children: jsx(Image, { ...image, fit: "contain" }) }), jsx("p", { className: styles$c.title, children: title })] }));
7034
7035
  }
7035
7036
 
7036
7037
  const ProductListingPageContext = createContext({
@@ -7056,6 +7057,65 @@ function ConnectedCategoryCarousel() {
7056
7057
  return (jsx(CategoryCarousel, { categoryCards: subcategories.map((slide, index) => (jsx(CategoryCard, { ...slide }, index))) }));
7057
7058
  }
7058
7059
 
7060
+ var styles$b = {"promo-card":"promo-card-module-e2oii","sm":"promo-card-module-1-jT0","lg":"promo-card-module-zIYDh"};
7061
+
7062
+ function PromoCard({ alt, href, srcSet, variant }) {
7063
+ const smallSrc = srcSet && srcSet.length > 0 ? srcSet[0] : null;
7064
+ const mediumSrc = srcSet && srcSet.length > 1 ? srcSet[1] : null;
7065
+ const largeSrc = srcSet && srcSet.length > 2 ? srcSet[2] : null;
7066
+ const defaultSrc = largeSrc || mediumSrc || smallSrc;
7067
+ return (jsx(RouteLink, { className: clsx(styles$b['promo-card'], styles$b[variant]), href: href, children: jsxs("picture", { children: [srcSet && srcSet.length > 0 && (jsx("source", { height: 122, media: "(max-width: 768px)", srcSet: smallSrc?.src, width: smallSrc?.width })), srcSet && srcSet.length > 1 && (jsx("source", { height: 230, media: "(max-width: 1439px)", srcSet: mediumSrc?.src, width: mediumSrc?.width })), srcSet && srcSet.length > 2 && (jsx("source", { height: 230, media: "(min-width: 1440px)", srcSet: largeSrc?.src, width: largeSrc?.width })), jsx("img", { alt: alt, height: 230, src: defaultSrc?.src, width: defaultSrc?.width })] }) }));
7068
+ }
7069
+
7070
+ var styles$a = {"promos":"promo-cards-module-Dy4p3"};
7071
+
7072
+ // TODO: Remove this and use actual data instead when backend is implemented
7073
+ // const tempPromoCards: BannerItem[] = [
7074
+ // {
7075
+ // alt: 'Large promo card',
7076
+ // href: '#',
7077
+ // srcSet: [
7078
+ // {
7079
+ // src: '/images/promo-cards/promo-content-block-on-sale-svp.webp',
7080
+ // width: 310,
7081
+ // },
7082
+ // {
7083
+ // src: '/images/promo-cards/promo-content-block-on-sale-mvp.webp',
7084
+ // width: 527,
7085
+ // },
7086
+ // {
7087
+ // src: '/images/promo-cards/promo-content-block-on-sale-lvp.webp',
7088
+ // width: 720,
7089
+ // },
7090
+ // ],
7091
+ // },
7092
+ // {
7093
+ // alt: 'Small promo card',
7094
+ // href: '#',
7095
+ // srcSet: [
7096
+ // {
7097
+ // src: '/images/promo-cards/promo-content-block-cross-sell-svp.png',
7098
+ // width: 250,
7099
+ // },
7100
+ // {
7101
+ // src: '/images/promo-cards/promo-content-block-cross-sell-mvp.webp',
7102
+ // width: 264,
7103
+ // },
7104
+ // {
7105
+ // src: '/images/promo-cards/promo-content-block-cross-sell-lvp.webp',
7106
+ // width: 480,
7107
+ // },
7108
+ // ],
7109
+ // },
7110
+ // ]
7111
+ function PromoCards({ promoCardsData = [], }) {
7112
+ const { lg } = useBreakpoint();
7113
+ const promoCards = promoCardsData.map((promoCard, index) => (jsx(PromoCard, { alt: promoCard.alt, href: promoCard.href, srcSet: promoCard.srcSet, variant: index % 2 === 0 ? 'lg' : 'sm' }, `promo-card-${index}`)));
7114
+ if (promoCardsData.length === 0)
7115
+ return null;
7116
+ return (jsx("div", { className: styles$a.promos, children: lg ? (jsx(Fragment, { children: promoCards })) : (jsx(Carousel, { hasNavigation: false, hasOverflow: false, slides: promoCards, spaceBetween: 16 })) }));
7117
+ }
7118
+
7059
7119
  const scrollToTop = (scrollOptions) => {
7060
7120
  window.scrollTo({
7061
7121
  behavior: 'smooth',
@@ -7099,7 +7159,7 @@ const ToggleSidebarButton = () => {
7099
7159
  return (jsx(Button, { color: "secondary", icon: jsx(StrokeFilterIcon, {}), onPress: toggle, size: "sm", variant: "outline", children: isOpen ? (jsx(FormattedMessage, { id: "Hide filters" })) : (jsx(FormattedMessage, { id: "Show filters" })) }));
7100
7160
  };
7101
7161
 
7102
- var styles$8 = {"product-listing":"product-listing-page-module-dmIHF","header":"product-listing-page-module-Oz76Z","action-bar":"product-listing-page-module-XxGrr","sidebar-toggle":"product-listing-page-module-F7bxy","sort":"product-listing-page-module-aQzHr","count":"product-listing-page-module-zx79v","categories":"product-listing-page-module-R4aOl","product-grid-container":"product-listing-page-module-ICkKg","product-grid":"product-listing-page-module-LHE7z","pagination":"product-listing-page-module-xsRaj"};
7162
+ var styles$8 = {"product-listing":"product-listing-page-module-dmIHF","header":"product-listing-page-module-Oz76Z","promos":"product-listing-page-module-iY1yj","action-bar":"product-listing-page-module-XxGrr","sidebar-toggle":"product-listing-page-module-F7bxy","sort":"product-listing-page-module-aQzHr","count":"product-listing-page-module-zx79v","categories":"product-listing-page-module-R4aOl","product-grid-container":"product-listing-page-module-ICkKg","product-grid":"product-listing-page-module-LHE7z","pagination":"product-listing-page-module-xsRaj"};
7103
7163
 
7104
7164
  function ProductListingPage({ pageUrl, searchClient: _searchClient, }) {
7105
7165
  const languageCode = useLanguageCode();
@@ -7124,11 +7184,11 @@ function ProductListingPage({ pageUrl, searchClient: _searchClient, }) {
7124
7184
  return jsx(LoadingOverlay, {});
7125
7185
  }
7126
7186
  const category = data.breadCrumb.slice(1).map(breadCrumb => breadCrumb.label);
7127
- return (jsx(ProductListingPageProvider, { data: data, error: error, isError: isError, isLoading: isFetching, children: jsx(AlgoliaProvider, { categoryPages: data.categoryPages, languageCode: languageCode, offlineSearchClient: offlineSearchClient, searchClient: searchClient, children: jsx(Page, { breadCrumb: data.breadCrumb, className: styles$8['product-listing'], title: category.slice().pop(), children: jsx(ProductListingPageContent, {}) }) }) }));
7187
+ return (jsx(ProductListingPageProvider, { data: data, error: error, isError: isError, isLoading: isFetching, children: jsx(AlgoliaProvider, { categoryPages: data.categoryPages, languageCode: languageCode, offlineSearchClient: offlineSearchClient, searchClient: searchClient, children: jsx(Page, { breadCrumb: data.breadCrumb, className: styles$8['product-listing'], title: category.slice().pop(), children: jsx(ProductListingPageContent, { promoCards: undefined }) }) }) }));
7128
7188
  }
7129
- function ProductListingPageContent() {
7189
+ function ProductListingPageContent({ promoCards, }) {
7130
7190
  const { toggle } = useSidebar();
7131
- return (jsxs(Fragment, { children: [jsx("section", { className: styles$8.categories, children: jsx(ConnectedCategoryCarousel, {}) }), jsxs("section", { className: styles$8['action-bar'], children: [jsx("div", { className: styles$8['sidebar-toggle'], children: jsx(ToggleSidebarButton, {}) }), jsx("span", { className: styles$8.count, children: jsx(AlgoliaResultsCount, {}) }), jsx("div", { className: styles$8.sort, children: jsx(AlgoliaSortBy, {}) })] }), jsx("section", { children: jsxs("div", { className: styles$8['product-grid-container'], children: [jsx(Sidebar, { children: jsx(AlgoliaFilterPanel, { onShowProducts: toggle }) }), jsxs("div", { className: styles$8['product-grid'], children: [jsx(ProductOverview, {}), jsx("div", { className: styles$8.pagination, children: jsx(AlgoliaPagination, { onChange: () => scrollToTop() }) })] })] }) })] }));
7191
+ return (jsxs(Fragment, { children: [jsx("section", { className: styles$8.promos, children: jsx(PromoCards, { promoCardsData: promoCards }) }), jsx("section", { className: styles$8.categories, children: jsx(ConnectedCategoryCarousel, {}) }), jsxs("section", { className: styles$8['action-bar'], children: [jsx("div", { className: styles$8['sidebar-toggle'], children: jsx(ToggleSidebarButton, {}) }), jsx("span", { className: styles$8.count, children: jsx(AlgoliaResultsCount, {}) }), jsx("div", { className: styles$8.sort, children: jsx(AlgoliaSortBy, {}) })] }), jsx("section", { children: jsxs("div", { className: styles$8['product-grid-container'], children: [jsx(Sidebar, { children: jsx(AlgoliaFilterPanel, { onShowProducts: toggle }) }), jsxs("div", { className: styles$8['product-grid'], children: [jsx(ProductOverview, {}), jsx("div", { className: styles$8.pagination, children: jsx(AlgoliaPagination, { onChange: () => scrollToTop() }) })] })] }) })] }));
7132
7192
  }
7133
7193
  function ProductOverview() {
7134
7194
  const { items } = useHits();
@@ -7238,7 +7298,7 @@ function SidebarProvider({ children }) {
7238
7298
 
7239
7299
  function AlgoliaCategories() {
7240
7300
  const categories = [{ count: 123, href: '#', id: '123', name: 'Hand tools' }];
7241
- return (jsx("div", { children: categories.length > 0 && (jsxs("section", { className: styles$c['categories-section'], children: [jsx("h4", { className: styles$c['categories-header'], children: "Categories" }), jsx("div", { className: styles$c.categories, children: categories.map(({ count, href, id, name }) => (jsxs("a", { className: styles$c['category'], href: href, children: [jsx("span", { children: name }), ' ', jsxs("span", { className: styles$c.count, children: ["(", count, ")"] })] }, id))) })] })) }));
7301
+ return (jsx("div", { children: categories.length > 0 && (jsxs("section", { className: styles$e['categories-section'], children: [jsx("h4", { className: styles$e['categories-header'], children: "Categories" }), jsx("div", { className: styles$e.categories, children: categories.map(({ count, href, id, name }) => (jsxs("a", { className: styles$e['category'], href: href, children: [jsx("span", { children: name }), ' ', jsxs("span", { className: styles$e.count, children: ["(", count, ")"] })] }, id))) })] })) }));
7242
7302
  }
7243
7303
 
7244
7304
  const categoriesPlugin = ({ productsIndexName, searchClient, }) => {
@@ -1,6 +1,7 @@
1
1
  import { Category } from 'shared/types/category';
2
2
  export interface BannerItem {
3
3
  alt: string;
4
+ href: string;
4
5
  srcSet: {
5
6
  src: string;
6
7
  width: number;
@@ -0,0 +1,10 @@
1
+ export interface PromoCardProps {
2
+ alt: string;
3
+ href?: string;
4
+ srcSet?: {
5
+ src: string;
6
+ width: number;
7
+ }[];
8
+ variant: 'sm' | 'lg';
9
+ }
10
+ export declare function PromoCard({ alt, href, srcSet, variant }: PromoCardProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,19 @@
1
+ import { StoryObj } from '@storybook/react';
2
+ import { PromoCard } from './promo-card';
3
+ declare const meta: {
4
+ component: typeof PromoCard;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ tags: string[];
9
+ title: string;
10
+ };
11
+ export default meta;
12
+ type Story = StoryObj<typeof meta>;
13
+ export declare const SmallSVP: Story;
14
+ export declare const SmallMVP: Story;
15
+ export declare const SmallLVP: Story;
16
+ export declare const LargeSVP: Story;
17
+ export declare const LargeMVP: Story;
18
+ export declare const LargeLVP: Story;
19
+ export declare const NoLink: Story;
@@ -0,0 +1,4 @@
1
+ import { BannerItem } from 'shared/api/bff/model/bff.model';
2
+ export declare function PromoCards({ promoCardsData, }: {
3
+ promoCardsData?: BannerItem[];
4
+ }): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,18 @@
1
+ import { StoryObj } from '@storybook/react';
2
+ import { PromoCards } from './promo-cards';
3
+ declare const meta: {
4
+ component: typeof PromoCards;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ render: (args: {
9
+ promoCardsData?: import("../..").BannerItem[];
10
+ }) => import("react/jsx-runtime").JSX.Element;
11
+ tags: string[];
12
+ title: string;
13
+ };
14
+ export default meta;
15
+ type Story = StoryObj<typeof meta>;
16
+ export declare const SVP: Story;
17
+ export declare const MVP: Story;
18
+ export declare const LVP: Story;
@@ -28,6 +28,7 @@ export interface Category {
28
28
  }
29
29
  export interface BannerItem {
30
30
  alt: string;
31
+ href: string;
31
32
  srcSet: {
32
33
  src: string;
33
34
  width: number;
package/dist/styles.css CHANGED
@@ -1352,10 +1352,10 @@
1352
1352
  top: 50%;
1353
1353
  }
1354
1354
  @media (width < 1024px) {
1355
- .carousel-module-ealh- {
1356
- width: calc(100% + 20px);
1357
- margin-left: -10px
1358
- }
1355
+ .carousel-module-ealh-:has(.carousel-module-tPg7k) {
1356
+ width: calc(100% + 20px);
1357
+ margin-left: -10px;
1358
+ }
1359
1359
 
1360
1360
  .carousel-module-ealh- .carousel-module-Hi-0z {
1361
1361
  display: none;
@@ -2026,9 +2026,14 @@
2026
2026
  line-height: var(--text-heading-xxs-line-height);
2027
2027
  }
2028
2028
 
2029
- .page-module-XtZ9Y .page-module-ohh9z {
2029
+ .page-module-XtZ9Y {
2030
+ font-family: var(--font-family-sonic);
2031
+ }
2032
+
2033
+ .page-module-XtZ9Y .page-module-ohh9z {
2030
2034
  margin-block: var(--space-24);
2031
2035
  }
2036
+
2032
2037
  .page-module-XtZ9Y .page-module-TEmve {
2033
2038
  margin-bottom: var(--space-44);
2034
2039
  }
@@ -2201,6 +2206,8 @@
2201
2206
  position: relative;
2202
2207
  z-index: 5;
2203
2208
  margin: auto;
2209
+ aspect-ratio: 1;
2210
+ mix-blend-mode: multiply;
2204
2211
  }
2205
2212
 
2206
2213
  .category-card-module-4NUjH .category-card-module-oNTrK::after {
@@ -2246,6 +2253,67 @@
2246
2253
  }
2247
2254
  }
2248
2255
 
2256
+ & .promo-card-module-e2oii {
2257
+ display: block;
2258
+ height: 122px;
2259
+ outline: none;
2260
+ }
2261
+
2262
+ & .promo-card-module-e2oii.promo-card-module-1-jT0 {
2263
+ width: 250px;
2264
+ }
2265
+
2266
+ & .promo-card-module-e2oii.promo-card-module-zIYDh {
2267
+ width: 310px;
2268
+ }
2269
+
2270
+ & .promo-card-module-e2oii picture {
2271
+ display: block;
2272
+ max-width: 100%;
2273
+ }
2274
+
2275
+ & .promo-card-module-e2oii picture img {
2276
+ display: block;
2277
+ max-width: 100%;
2278
+ -o-object-fit: cover;
2279
+ object-fit: cover;
2280
+ }
2281
+
2282
+ & .promo-card-module-e2oii[data-focus-visible] {
2283
+ box-shadow: var(--shadow-focus-outline);
2284
+ }
2285
+
2286
+ @media (width >= 768px) {
2287
+ & .promo-card-module-e2oii {
2288
+ height: 230px;
2289
+ }
2290
+
2291
+ & .promo-card-module-e2oii.promo-card-module-zIYDh,
2292
+ & .promo-card-module-e2oii.promo-card-module-1-jT0 {
2293
+ width: auto;
2294
+ }
2295
+ }
2296
+
2297
+ .promo-cards-module-Dy4p3 {
2298
+ margin-bottom: var(--space-24);
2299
+ }
2300
+
2301
+ @media (width >= 768px) {
2302
+ .promo-cards-module-Dy4p3 {
2303
+ display: grid;
2304
+ margin-bottom: var(--space-32);
2305
+ gap: var(--space-16);
2306
+ grid-template-columns: 2fr 1fr;
2307
+ }
2308
+ }
2309
+
2310
+ @media (width >= 1440px) {
2311
+ .promo-cards-module-Dy4p3 {
2312
+ gap: var(--space-24);
2313
+ grid-template-columns: 1.5fr 1fr;
2314
+ }
2315
+ }
2316
+
2249
2317
  .sidebar-module-fSa9Q {
2250
2318
  --transition-timing-function: ease-in-out;
2251
2319
 
@@ -2321,6 +2389,9 @@
2321
2389
  .product-listing-page-module-dmIHF .product-listing-page-module-Oz76Z {
2322
2390
  margin-bottom: 44px;
2323
2391
  }
2392
+ .product-listing-page-module-dmIHF .product-listing-page-module-iY1yj {
2393
+ margin-bottom: var(--space-24);
2394
+ }
2324
2395
  .product-listing-page-module-dmIHF .product-listing-page-module-XxGrr {
2325
2396
  display: grid;
2326
2397
  gap: var(--space-16);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sonic-equipment/ui",
3
- "version": "0.0.45",
3
+ "version": "0.0.47",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "engines": {