@sonic-equipment/ui 0.0.38 → 0.0.40
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/badges/tag/tag.stories.d.ts +1 -0
- package/dist/breadcrumbs/breadcrumb.stories.d.ts +1 -0
- package/dist/buttons/add-to-cart-button/add-to-cart-button.stories.d.ts +1 -0
- package/dist/buttons/button/button.stories.d.ts +1 -0
- package/dist/buttons/favorite/favorite-button.stories.d.ts +1 -0
- package/dist/buttons/icon-button/icon-button.stories.d.ts +1 -0
- package/dist/buttons/link-button/link-button.stories.d.ts +1 -0
- package/dist/cards/category-card/category-card.stories.d.ts +1 -0
- package/dist/cards/product-card/connected-product-cart.d.ts +2 -3
- package/dist/cards/product-card/product-card.stories.d.ts +1 -0
- package/dist/carousel/carousel.d.ts +3 -1
- package/dist/carousel/category-carousel/category-carousel.d.ts +3 -3
- package/dist/carousel/category-carousel/category-carousel.stories.d.ts +4 -0
- package/dist/carousel/product-carousel/product-carousel.d.ts +5 -0
- package/dist/collapsables/accordion/accordion.stories.d.ts +1 -0
- package/dist/collapsables/show-all/show-all.stories.d.ts +1 -0
- package/dist/display/product-price/product-price.stories.d.ts +1 -0
- package/dist/display/product-sku/product-sku.stories.d.ts +1 -0
- package/dist/filters/active-filters/active-filters.stories.d.ts +1 -0
- package/dist/filters/multi-select/multi-select.stories.d.ts +1 -0
- package/dist/filters/pagination/pagination.stories.d.ts +3 -0
- package/dist/forms/checkbox/checkbox.stories.d.ts +1 -0
- package/dist/forms/color-checkbox/color-checkbox.stories.d.ts +1 -0
- package/dist/forms/field-error/field-error.stories.d.ts +1 -0
- package/dist/forms/input/input.stories.d.ts +1 -0
- package/dist/forms/label/label.stories.d.ts +1 -0
- package/dist/forms/number-field/number-field.stories.d.ts +1 -0
- package/dist/forms/select/select.stories.d.ts +1 -0
- package/dist/forms/text-field/text-field.stories.d.ts +1 -0
- package/dist/forms/textarea/textarea.stories.d.ts +1 -0
- package/dist/global-search/global-search.stories.d.ts +1 -0
- package/dist/global-search/search-result-panel/panel-content.d.ts +0 -9
- package/dist/global-search/search-result-panel/sections/no-results.d.ts +1 -0
- package/dist/global-search/search-result-panel/sections/no-search.d.ts +1 -0
- package/dist/global-search/search-result-panel/sections/search-content-section.d.ts +3 -0
- package/dist/global-search/search-result-panel/sections/section-container.d.ts +7 -0
- package/dist/global-search/search-result-panel/sections/with-results.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-black-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-black-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-blackcaps-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-blackcaps-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-bold-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-bold-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-boldcaps-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-boldcaps-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-regular-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-regular-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-regularcaps-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-regularcaps-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-semibold-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-semibold-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-semiboldcaps-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-semiboldcaps-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-thin-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-thin-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-thincaps-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-arrow-thincaps-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-chevrons-bold-down-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-chevrons-bold-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-chevrons-bold-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-chevrons-bold-up-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-chevrons-slim-down-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-chevrons-slim-left-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-chevrons-slim-right-icon.d.ts +1 -0
- package/dist/icons/glyph/glyphs-chevrons-slim-up-icon.d.ts +1 -0
- package/dist/icons/other/career-innovate-icon.d.ts +1 -0
- package/dist/icons/other/career-proactive-icon.d.ts +1 -0
- package/dist/icons/other/career-teamplayer-icon.d.ts +1 -0
- package/dist/icons/other/fallback-icon.d.ts +1 -0
- package/dist/icons/other/some-facebook-icon.d.ts +1 -0
- package/dist/icons/other/some-instagram-icon.d.ts +1 -0
- package/dist/icons/other/some-linkedin-icon.d.ts +1 -0
- package/dist/icons/other/some-mail-icon.d.ts +1 -0
- package/dist/icons/other/some-youtube-icon.d.ts +1 -0
- package/dist/icons/other/usp-efficiency-icon.d.ts +1 -0
- package/dist/icons/other/usp-style-icon.d.ts +1 -0
- package/dist/icons/other/usp-support-icon.d.ts +1 -0
- package/dist/icons/other/warranty-10y-icon.d.ts +1 -0
- package/dist/icons/other/warranty-1y-icon.d.ts +1 -0
- package/dist/icons/other/warranty-3y-icon.d.ts +1 -0
- package/dist/icons/other/warranty-5y-icon.d.ts +1 -0
- package/dist/icons/other/warranty-consumable-icon.d.ts +1 -0
- package/dist/icons/other/warranty-lifetime-icon.d.ts +1 -0
- package/dist/icons/solid/solid-attention-icon.d.ts +1 -0
- package/dist/icons/solid/solid-business-icon.d.ts +1 -0
- package/dist/icons/solid/solid-cart-icon.d.ts +1 -0
- package/dist/icons/solid/solid-clock-icon.d.ts +1 -0
- package/dist/icons/solid/solid-close-icon.d.ts +1 -0
- package/dist/icons/solid/solid-download-icon.d.ts +1 -0
- package/dist/icons/solid/solid-favorite-icon.d.ts +1 -0
- package/dist/icons/solid/solid-home-icon.d.ts +1 -0
- package/dist/icons/solid/solid-information-icon.d.ts +1 -0
- package/dist/icons/solid/solid-login-icon.d.ts +1 -0
- package/dist/icons/solid/solid-notice-icon.d.ts +1 -0
- package/dist/icons/solid/solid-okay-icon.d.ts +1 -0
- package/dist/icons/solid/solid-rating-icon.d.ts +1 -0
- package/dist/icons/solid/solid-tag-icon.d.ts +1 -0
- package/dist/icons/solid/solid-trash-icon.d.ts +1 -0
- package/dist/icons/solid/solid-updateuser-icon.d.ts +1 -0
- package/dist/icons/solid/solid-vote-thumbsdown-icon.d.ts +1 -0
- package/dist/icons/solid/solid-vote-thumbsup-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-attention-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-business-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-cart-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-categories-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-checkmark-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-clock-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-close-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-closebox-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-closemenu-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-collapse-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-dehashed-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-download-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-expand-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-favorite-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-filter-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-hashed-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-home-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-information-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-login-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-menu-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-notice-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-okay-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-rating-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-recent-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-search-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-tag-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-trash-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-updateuser-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-vote-thumbsdown-icon.d.ts +1 -0
- package/dist/icons/stroke/stroke-vote-thumbsup-icon.d.ts +1 -0
- package/dist/index.d.ts +11 -26
- package/dist/index.js +479 -224
- package/dist/lists/product-overview-grid/product-overview-grid.stories.d.ts +1 -0
- package/dist/loading/loading-overlay.d.ts +1 -0
- package/dist/loading/progress-circle.d.ts +4 -0
- package/dist/loading/progress-circle.stories.d.ts +12 -0
- package/dist/media/image/image.stories.d.ts +1 -0
- package/dist/pages/page/page.stories.d.ts +1 -0
- package/dist/pages/page-container/page-container.stories.d.ts +1 -0
- package/dist/pages/product-listing-page/product-listing-page.d.ts +1 -1
- package/dist/pages/product-listing-page/product-listing-page.stories.d.ts +1 -0
- package/dist/shared/api/bff/hooks/use-fetch-product-listing-page-data.stories.d.ts +1 -0
- package/dist/shared/api/shop/hooks/cart/cart.stories.d.ts +1 -0
- package/dist/shared/routing/route-provider.stories.d.ts +1 -0
- package/dist/styles.css +283 -117
- package/dist/typography/heading/heading.stories.d.ts +1 -0
- package/package.json +4 -1
- package/dist/icons/arrows/chrevron-down-bold.d.ts +0 -1
- package/dist/icons/arrows/chrevron-down-slim.d.ts +0 -1
- package/dist/icons/arrows/left-arrow-filled-icon.d.ts +0 -1
- package/dist/icons/arrows/right-arrow-filled-icon.d.ts +0 -1
- package/dist/icons/arrows/text-aligned-arrow-icon.d.ts +0 -1
- package/dist/icons/cart/cart-filled-icon.d.ts +0 -1
- package/dist/icons/cart/cart-outlined-icon.d.ts +0 -1
- package/dist/icons/checkmark/checkmark-filled-icon.d.ts +0 -1
- package/dist/icons/chevrons/chevron-left-filled-icon.d.ts +0 -1
- package/dist/icons/chevrons/chevron-right-filled-icon.d.ts +0 -1
- package/dist/icons/close/close-filled-icon.d.ts +0 -1
- package/dist/icons/dehashed/dehashed-outlined-icon.d.ts +0 -1
- package/dist/icons/favorite/favorite-filled-icon.d.ts +0 -1
- package/dist/icons/favorite/favorite-outlined-icon.d.ts +0 -1
- package/dist/icons/filter/filter-outlined-icon.d.ts +0 -1
- package/dist/icons/hashed/hashed-outlined-icon.d.ts +0 -1
- package/dist/icons/home/home-filled-icon.d.ts +0 -1
- package/dist/icons/magnifying-glass/magnifying-glass-icon.d.ts +0 -1
- package/dist/icons/math/minus-filled-icon.d.ts +0 -1
- package/dist/icons/math/plus-filled-icon.d.ts +0 -1
- package/dist/icons/reset/reset-icon.d.ts +0 -1
- package/dist/icons/trash/trash-outlined-icon.d.ts +0 -1
package/dist/index.js
CHANGED
|
@@ -552,30 +552,30 @@ function RouteButton({ children, ...props }) {
|
|
|
552
552
|
}, ...props, children: children }));
|
|
553
553
|
}
|
|
554
554
|
|
|
555
|
-
function
|
|
556
|
-
return (jsx("svg", { height: "
|
|
555
|
+
function GlyphsChevronsSlimLeftIcon(props) {
|
|
556
|
+
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: "M3,6 L7.93354971,1 C8.12109594,1.08169007 8.30512588,1.19817561 8.48563954,1.34945663 C8.6661532,1.50073764 8.83760669,1.68216803 9,1.89374779 L4.91652188,5.98800959 L9,9.9960307 C8.83350762,10.2121071 8.66205413,10.4031847 8.48563954,10.5692635 C8.30922495,10.7353424 8.12519501,10.8789212 7.93354971,11 L3,6 Z", fillRule: "evenodd" }) }));
|
|
557
557
|
}
|
|
558
558
|
|
|
559
|
-
function
|
|
560
|
-
return (jsx("svg", {
|
|
559
|
+
function SolidHomeIcon(props) {
|
|
560
|
+
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" }) }));
|
|
561
561
|
}
|
|
562
562
|
|
|
563
|
-
var styles$
|
|
563
|
+
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"};
|
|
564
564
|
|
|
565
565
|
function BreadcrumbShort({ links }) {
|
|
566
566
|
const homeLink = links[0];
|
|
567
567
|
const previousLink = links[links.length - 2];
|
|
568
|
-
return (jsx(Breadcrumbs, { className: styles$
|
|
568
|
+
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 }))] }) }) }));
|
|
569
569
|
}
|
|
570
570
|
function BreadcrumbLongItem({ index, isDisabled, link, }) {
|
|
571
|
-
return (jsx(Breadcrumb$1, { className: styles$
|
|
571
|
+
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));
|
|
572
572
|
}
|
|
573
573
|
function BreadcrumbLong({ links }) {
|
|
574
574
|
const linksWithoutFirst = links.slice(1);
|
|
575
575
|
const homeLink = links[0];
|
|
576
576
|
if (!homeLink)
|
|
577
577
|
return null;
|
|
578
|
-
return (jsxs(Breadcrumbs, { className: styles$
|
|
578
|
+
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)))] }));
|
|
579
579
|
}
|
|
580
580
|
function Breadcrumb({ links }) {
|
|
581
581
|
const { lg } = useBreakpoint();
|
|
@@ -584,64 +584,64 @@ function Breadcrumb({ links }) {
|
|
|
584
584
|
return lg ? BreadcrumbLong({ links }) : BreadcrumbShort({ links });
|
|
585
585
|
}
|
|
586
586
|
|
|
587
|
-
function
|
|
588
|
-
return (jsx("svg", { height: "11", viewBox: "0 0
|
|
587
|
+
function GlyphsArrowBoldCapsRightIcon(props) {
|
|
588
|
+
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" }) }));
|
|
589
589
|
}
|
|
590
590
|
|
|
591
|
-
var styles$
|
|
591
|
+
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"};
|
|
592
592
|
|
|
593
593
|
function Button({ _pseudo = 'none', children, className, color = 'primary', condensed, icon, iconPosition = 'left', isDisabled, onPress, size = 'lg', type = 'button', variant = 'solid', withArrow = false, }) {
|
|
594
|
-
return (jsxs(Button$1, { className: clsx(className, styles$
|
|
594
|
+
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,
|
|
595
595
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
596
596
|
// @ts-ignore
|
|
597
|
-
onClick: e => e.preventDefault(), onPress: onPress, type: type, children: [icon && iconPosition === 'left' && (jsx("span", { className: styles$
|
|
597
|
+
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 }))] }));
|
|
598
598
|
}
|
|
599
599
|
|
|
600
|
-
var styles$
|
|
600
|
+
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"};
|
|
601
601
|
|
|
602
602
|
function IconButton({ children, className, color = 'primary', isDisabled, onPress, size = 'md', type = 'button', }) {
|
|
603
|
-
return (jsx(Button$1, { className: clsx(styles$
|
|
603
|
+
return (jsx(Button$1, { className: clsx(styles$E['icon-button'], styles$E[size], styles$E[color], className), isDisabled: isDisabled,
|
|
604
604
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
605
605
|
// @ts-expect-error
|
|
606
606
|
onClick: e => e.preventDefault(), onPress: onPress, type: type, children: children }));
|
|
607
607
|
}
|
|
608
608
|
|
|
609
|
-
function
|
|
610
|
-
return (jsx("svg", { height: "24", viewBox: "0 0 24 24", width: "24",
|
|
609
|
+
function SolidFavoriteIcon(props) {
|
|
610
|
+
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: "M11.9999248,22 L11.9999248,22 C11.7899542,22 11.5920163,21.9009968 11.4662746,21.7328866 L3.22733528,10.7206953 C2.41121748,9.59905954 2,8.45954615 2,7.32679321 C2,4.3895979 4.39255176,2 7.33334336,2 C9.22503403,2 11.0018124,2.98206975 12.0000752,4.46801926 C12.9980372,2.98206975 14.774966,2 16.6666566,2 C19.6074482,2 22,4.3895979 22,7.32679321 C22,8.45969638 21.5889329,9.59920978 20.777929,10.7136343 L12.533575,21.7328866 C12.4078333,21.9009968 12.2098954,22 11.9999248,22", fillRule: "evenodd" }) }));
|
|
611
611
|
}
|
|
612
612
|
|
|
613
|
-
function
|
|
614
|
-
return (jsx("svg", {
|
|
613
|
+
function StrokeFavoriteIcon(props) {
|
|
614
|
+
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" }) }));
|
|
615
615
|
}
|
|
616
616
|
|
|
617
|
-
var styles$
|
|
617
|
+
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"};
|
|
618
618
|
|
|
619
619
|
function FavoriteButton({ isFavorite, onPress }) {
|
|
620
|
-
return (jsx(IconButton, { className: clsx(styles$
|
|
621
|
-
[styles$
|
|
622
|
-
}), color: "secondary", onPress: onPress, children: isFavorite ? jsx(
|
|
620
|
+
return (jsx(IconButton, { className: clsx(styles$D['favorite-button'], {
|
|
621
|
+
[styles$D['is-favorite']]: isFavorite,
|
|
622
|
+
}), color: "secondary", onPress: onPress, children: isFavorite ? jsx(SolidFavoriteIcon, {}) : jsx(StrokeFavoriteIcon, {}) }));
|
|
623
623
|
}
|
|
624
624
|
|
|
625
|
-
var styles$
|
|
625
|
+
var styles$C = {"link-button":"link-button-module-6i75g"};
|
|
626
626
|
|
|
627
627
|
function LinkButton({ children, className, href, isDisabled, onPress, route, target, type = href ? 'link' : 'button', }) {
|
|
628
628
|
if (type === 'link') {
|
|
629
|
-
return (jsx(RouteLink, { className: clsx(styles$
|
|
629
|
+
return (jsx(RouteLink, { className: clsx(styles$C['link-button'], className), href: href, isDisabled: isDisabled, onPress: onPress, route: route, target: target, children: children }));
|
|
630
630
|
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
631
631
|
}
|
|
632
632
|
else if (type === 'button') {
|
|
633
|
-
return (jsx(RouteButton, { className: clsx(styles$
|
|
633
|
+
return (jsx(RouteButton, { className: clsx(styles$C['link-button'], className), href: href, isDisabled: isDisabled, onPress: onPress, route: route, type: "button", children: children }));
|
|
634
634
|
}
|
|
635
635
|
throw new Error('Invalid type ${type} for LinkButton component');
|
|
636
636
|
}
|
|
637
637
|
|
|
638
|
-
var styles$
|
|
638
|
+
var styles$B = {"field-error":"field-error-module-FXnIg"};
|
|
639
639
|
|
|
640
640
|
function FieldError({ children }) {
|
|
641
|
-
return (jsx(FieldError$1, { className: styles$
|
|
641
|
+
return (jsx(FieldError$1, { className: styles$B['field-error'], children: children }));
|
|
642
642
|
}
|
|
643
643
|
|
|
644
|
-
var styles$
|
|
644
|
+
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"};
|
|
645
645
|
|
|
646
646
|
/**
|
|
647
647
|
* This component is used to create an input that grows as the user types.
|
|
@@ -656,34 +656,35 @@ const Input = forwardRef(({ _pseudo = 'none', autoGrow, size = 'lg', ...inputPro
|
|
|
656
656
|
const handleChange = (event) => isControlled
|
|
657
657
|
? onChange?.(event)
|
|
658
658
|
: setUncontrolledValue(event.target.value);
|
|
659
|
-
return (jsx("div", { className: clsx(styles$
|
|
659
|
+
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 => {
|
|
660
660
|
e.preventDefault();
|
|
661
|
+
e.stopPropagation();
|
|
661
662
|
e.target.focus();
|
|
662
|
-
} }), autoGrow && jsx("span", { className: styles$
|
|
663
|
+
} }), autoGrow && jsx("span", { className: styles$A['shadow-input'], children: value })] }) }));
|
|
663
664
|
});
|
|
664
665
|
Input.displayName = 'Input';
|
|
665
666
|
|
|
666
|
-
var styles$
|
|
667
|
+
var styles$z = {"label":"label-module-LGfJt","required":"label-module-oTWaS"};
|
|
667
668
|
|
|
668
669
|
function Label({ children, isRequired }) {
|
|
669
670
|
if (!children)
|
|
670
671
|
return null;
|
|
671
|
-
return (jsxs(Label$1, { className: styles$
|
|
672
|
+
return (jsxs(Label$1, { className: styles$z.label, children: [children, isRequired && jsx("span", { className: styles$z.required, children: "*" })] }));
|
|
672
673
|
}
|
|
673
674
|
|
|
674
|
-
function
|
|
675
|
-
return (jsx("svg", { height: "
|
|
675
|
+
function StrokeCollapseIcon(props) {
|
|
676
|
+
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: "M18,12 C18,12.5522847 17.5522847,13 17,13 L7,13 C6.44771525,13 6,12.5522847 6,12 C6,11.4477153 6.44771525,11 7,11 L17,11 C17.5522847,11 18,11.4477153 18,12 Z" }) }));
|
|
676
677
|
}
|
|
677
678
|
|
|
678
|
-
function
|
|
679
|
-
return (jsx("svg", { height: "
|
|
679
|
+
function StrokeExpandIcon(props) {
|
|
680
|
+
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: "M12,6 C12.5522847,6 13,6.44771525 13,7 L13,11 L17,11 C17.5522847,11 18,11.4477153 18,12 C18,12.5522847 17.5522847,13 17,13 L13,13 L13,17 C13,17.5128358 12.6139598,17.9355072 12.1166211,17.9932723 L12,18 C11.4477153,18 11,17.5522847 11,17 L11,13 L7,13 C6.44771525,13 6,12.5522847 6,12 C6,11.4477153 6.44771525,11 7,11 L11,11 L11,7 C11,6.44771525 11.4477153,6 12,6 Z" }) }));
|
|
680
681
|
}
|
|
681
682
|
|
|
682
|
-
function
|
|
683
|
-
return (jsx("svg", { height: "
|
|
683
|
+
function StrokeTrashIcon(props) {
|
|
684
|
+
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" }) }));
|
|
684
685
|
}
|
|
685
686
|
|
|
686
|
-
var styles$
|
|
687
|
+
var styles$y = {"field":"number-field-module-gmnog","button-input-container":"number-field-module-8Lvgh","zoom-in-text":"number-field-module-OlEoa"};
|
|
687
688
|
|
|
688
689
|
/**
|
|
689
690
|
* This component is used to create a number field.
|
|
@@ -691,20 +692,20 @@ var styles$u = {"field":"number-field-module-gmnog","button-input-container":"nu
|
|
|
691
692
|
*/
|
|
692
693
|
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, }) {
|
|
693
694
|
const inputRef = useRef(null);
|
|
694
|
-
return (jsxs(NumberField$1, { "aria-label": label, autoFocus: autoFocus, className: clsx(styles$
|
|
695
|
+
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,
|
|
695
696
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
696
697
|
// @ts-expect-error
|
|
697
|
-
onClick: e => e.preventDefault(), onPressStart: e => e.target.focus(), slot: "decrement", children: (value || 0) <= 1 ? jsx(
|
|
698
|
+
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,
|
|
698
699
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
699
700
|
// @ts-expect-error
|
|
700
|
-
onClick: e => e.preventDefault(), onPressStart: e => e.target.focus(), slot: "increment", children: jsx(
|
|
701
|
+
onClick: e => e.preventDefault(), onPressStart: e => e.target.focus(), slot: "increment", children: jsx(StrokeExpandIcon, {}) }))] }), jsx(FieldError, {})] }));
|
|
701
702
|
}
|
|
702
703
|
|
|
703
|
-
function
|
|
704
|
-
return (jsx("svg", { height: "24", viewBox: "0 0 24 24", width: "24",
|
|
704
|
+
function SolidCartIcon(props) {
|
|
705
|
+
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" }) }));
|
|
705
706
|
}
|
|
706
707
|
|
|
707
|
-
var styles$
|
|
708
|
+
var styles$x = {"manual-input-container":"add-to-cart-button-module-AWFvQ","left-button-spacer":"add-to-cart-button-module-SS7WM"};
|
|
708
709
|
|
|
709
710
|
function AddToCartButton({ initialState = 'initial', isDisabled = false, onChange, quantity, }) {
|
|
710
711
|
const [currentState, setState] = useState(initialState);
|
|
@@ -740,10 +741,10 @@ function AddToCartButton({ initialState = 'initial', isDisabled = false, onChang
|
|
|
740
741
|
}, quantity: quantity }));
|
|
741
742
|
return (jsx(ManualInputState, { isDisabled: isDisabled, onCancel: () => setState('spinner'), onConfirm: value => {
|
|
742
743
|
onChange(value);
|
|
743
|
-
}, quantity: manualInputQuantity ||
|
|
744
|
+
}, quantity: manualInputQuantity || '' }));
|
|
744
745
|
}
|
|
745
746
|
function InitialState({ isDisabled, onAddToCart, }) {
|
|
746
|
-
return (jsx(Button, { condensed: true, icon: jsx(
|
|
747
|
+
return (jsx(Button, { condensed: true, icon: jsx(SolidCartIcon, {}), isDisabled: isDisabled, onPress: onAddToCart, size: "md" }));
|
|
747
748
|
}
|
|
748
749
|
const ensureNumber = (value) => {
|
|
749
750
|
if (typeof value === 'number')
|
|
@@ -783,20 +784,20 @@ function SpinnerState({ isDisabled, onChange, onManualInput, quantity, }) {
|
|
|
783
784
|
}
|
|
784
785
|
onDebouncedChange(quantity);
|
|
785
786
|
}, onInput: e => {
|
|
786
|
-
onManualInput(
|
|
787
|
+
onManualInput(e.target.value);
|
|
787
788
|
}, showLabel: false, size: "md", value: internalQuantity }));
|
|
788
789
|
}
|
|
789
790
|
function ManualInputState({ isDisabled, onCancel, onConfirm, quantity, }) {
|
|
790
791
|
const [updatedQuantity, setQuantity] = useState(quantity);
|
|
791
792
|
const onKeyUp = (e) => {
|
|
792
|
-
e.key === 'Enter' && onConfirm(updatedQuantity);
|
|
793
|
+
e.key === 'Enter' && onConfirm(ensureNumber(updatedQuantity));
|
|
793
794
|
e.key === 'Escape' && onCancel();
|
|
794
795
|
};
|
|
795
|
-
return (jsxs("div", { className: styles$
|
|
796
|
+
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: {
|
|
796
797
|
maximumFractionDigits: 0,
|
|
797
798
|
style: 'decimal',
|
|
798
799
|
useGrouping: false,
|
|
799
|
-
}, isDisabled: isDisabled, label: "Quantity", maxLength: 4, maxValue: 9999, minValue: 0, name: "quantity", onChange: setQuantity, onKeyUp: onKeyUp, showLabel: false, size: "md" }), jsx(Button, { condensed: true, isDisabled: isDisabled, onPress: () => onConfirm(updatedQuantity), size: "md", children: "OK" })] }));
|
|
800
|
+
}, isDisabled: isDisabled, label: "Quantity", maxLength: 4, maxValue: 9999, minValue: 0, name: "quantity", onChange: value => setQuantity(String(value)), onKeyUp: onKeyUp, showLabel: false, size: "md" }), jsx(Button, { condensed: true, isDisabled: isDisabled, onPress: () => onConfirm(ensureNumber(updatedQuantity)), size: "md", children: "OK" })] }));
|
|
800
801
|
}
|
|
801
802
|
|
|
802
803
|
const ConnectedAddToCartButton = ({ productId }) => {
|
|
@@ -841,12 +842,12 @@ const ConnectedAddToCartButton = ({ productId }) => {
|
|
|
841
842
|
return (jsx(AddToCartButton, { isDisabled: isPendingDeleteCartLine || isLoadingCartLines || isPendingAddToCart, onChange: handleChange, quantity: quantity }));
|
|
842
843
|
};
|
|
843
844
|
|
|
844
|
-
var styles$
|
|
845
|
+
var styles$w = {"tag":"tag-module-B7r15","body":"tag-module-4cfCf","shape":"tag-module-c7CRb"};
|
|
845
846
|
|
|
846
847
|
function Tag({ children }) {
|
|
847
848
|
if (!children)
|
|
848
849
|
return null;
|
|
849
|
-
return (jsxs("div", { className: styles$
|
|
850
|
+
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" }) })] }));
|
|
850
851
|
}
|
|
851
852
|
|
|
852
853
|
const IntlContext = createContext({
|
|
@@ -882,7 +883,7 @@ function useFormattedMessage() {
|
|
|
882
883
|
|
|
883
884
|
const FormattedMessage = ({ fallbackValue, id, optional, replacementValues, }) => useFormattedMessage()(id, { fallbackValue, optional, replacementValues });
|
|
884
885
|
|
|
885
|
-
var styles$
|
|
886
|
+
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"};
|
|
886
887
|
|
|
887
888
|
const formatPrice = (price) => new Intl.NumberFormat('en-US', {
|
|
888
889
|
maximumFractionDigits: 2,
|
|
@@ -894,16 +895,19 @@ function ProductPrice({ className, isVatIncluded, originalPrice, price, }) {
|
|
|
894
895
|
const originalPriceWithCurrency = formatPrice(!isNaN(originalPrice) ? originalPrice : price);
|
|
895
896
|
const priceWithCurrency = formatPrice(price);
|
|
896
897
|
const [wholes, decimals] = priceWithCurrency.split('.');
|
|
897
|
-
|
|
898
|
+
const showOriginalPrice = priceWithCurrency !== originalPriceWithCurrency;
|
|
899
|
+
return (jsxs("div", { className: clsx(className, styles$v['product-price']), children: [jsx("span", { className: clsx(styles$v['original-price'], {
|
|
900
|
+
[styles$v['is-hidden']]: !showOriginalPrice,
|
|
901
|
+
}), 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" })) })] })] }));
|
|
898
902
|
}
|
|
899
903
|
|
|
900
|
-
var styles$
|
|
904
|
+
var styles$u = {"product-sku":"product-sku-module-ITb8x"};
|
|
901
905
|
|
|
902
906
|
function ProductSku({ sku }) {
|
|
903
|
-
return jsx("p", { className: styles$
|
|
907
|
+
return jsx("p", { className: styles$u['product-sku'], children: sku });
|
|
904
908
|
}
|
|
905
909
|
|
|
906
|
-
var styles$
|
|
910
|
+
var styles$t = {"image":"image-module-lg7Kj","contain":"image-module-KFEgG","cover":"image-module-tVKFe","has-error":"image-module-LM93B"};
|
|
907
911
|
|
|
908
912
|
const breakpointToWidth = {
|
|
909
913
|
lg: 1440,
|
|
@@ -934,22 +938,14 @@ function Image({ alt, className, fallbackSrc = 'https://res.cloudinary.com/dkz9e
|
|
|
934
938
|
setHasError(true);
|
|
935
939
|
};
|
|
936
940
|
return (jsx("img", { alt: alt, className: clsx({
|
|
937
|
-
[styles$
|
|
938
|
-
}, styles$
|
|
941
|
+
[styles$t['has-error']]: hasError,
|
|
942
|
+
}, 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 }));
|
|
939
943
|
}
|
|
940
944
|
|
|
941
|
-
var styles$
|
|
945
|
+
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"};
|
|
942
946
|
|
|
943
947
|
function ProductCard({ addToCartButton: AddToCartButton, favoriteButton: FavoriteButton, href, image, price, sku, tags, title, }) {
|
|
944
|
-
return (jsxs(RouteLink, { className: styles$
|
|
945
|
-
}
|
|
946
|
-
|
|
947
|
-
var styles$n = {"category-card":"category-card-module-4NUjH","title":"category-card-module-LEhh3","is-selected":"category-card-module-vJ7vB","image-container":"category-card-module-oNTrK"};
|
|
948
|
-
|
|
949
|
-
function CategoryCard({ href, image, isSelected = false, title, }) {
|
|
950
|
-
return (jsxs(RouteLink, { className: clsx({
|
|
951
|
-
[styles$n['is-selected']]: isSelected,
|
|
952
|
-
}, styles$n['category-card']), href: href, children: [jsx("div", { className: styles$n['image-container'], children: jsx(Image, { ...image, fit: "contain" }) }), jsx("p", { className: styles$n.title, children: title })] }));
|
|
948
|
+
return (jsxs(RouteLink, { className: styles$s['product-card'], href: href, 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 })] })] })] }));
|
|
953
949
|
}
|
|
954
950
|
|
|
955
951
|
/**
|
|
@@ -1345,6 +1341,16 @@ function elementParents(el, selector) {
|
|
|
1345
1341
|
}
|
|
1346
1342
|
return parents;
|
|
1347
1343
|
}
|
|
1344
|
+
function elementTransitionEnd(el, callback) {
|
|
1345
|
+
function fireCallBack(e) {
|
|
1346
|
+
if (e.target !== el) return;
|
|
1347
|
+
callback.call(el, e);
|
|
1348
|
+
el.removeEventListener('transitionend', fireCallBack);
|
|
1349
|
+
}
|
|
1350
|
+
if (callback) {
|
|
1351
|
+
el.addEventListener('transitionend', fireCallBack);
|
|
1352
|
+
}
|
|
1353
|
+
}
|
|
1348
1354
|
function elementOuterSize(el, size, includeMargins) {
|
|
1349
1355
|
const window = getWindow();
|
|
1350
1356
|
{
|
|
@@ -1352,6 +1358,240 @@ function elementOuterSize(el, size, includeMargins) {
|
|
|
1352
1358
|
}
|
|
1353
1359
|
}
|
|
1354
1360
|
|
|
1361
|
+
function freeMode(_ref) {
|
|
1362
|
+
let {
|
|
1363
|
+
swiper,
|
|
1364
|
+
extendParams,
|
|
1365
|
+
emit,
|
|
1366
|
+
once
|
|
1367
|
+
} = _ref;
|
|
1368
|
+
extendParams({
|
|
1369
|
+
freeMode: {
|
|
1370
|
+
enabled: false,
|
|
1371
|
+
momentum: true,
|
|
1372
|
+
momentumRatio: 1,
|
|
1373
|
+
momentumBounce: true,
|
|
1374
|
+
momentumBounceRatio: 1,
|
|
1375
|
+
momentumVelocityRatio: 1,
|
|
1376
|
+
sticky: false,
|
|
1377
|
+
minimumVelocity: 0.02
|
|
1378
|
+
}
|
|
1379
|
+
});
|
|
1380
|
+
function onTouchStart() {
|
|
1381
|
+
if (swiper.params.cssMode) return;
|
|
1382
|
+
const translate = swiper.getTranslate();
|
|
1383
|
+
swiper.setTranslate(translate);
|
|
1384
|
+
swiper.setTransition(0);
|
|
1385
|
+
swiper.touchEventsData.velocities.length = 0;
|
|
1386
|
+
swiper.freeMode.onTouchEnd({
|
|
1387
|
+
currentPos: swiper.rtl ? swiper.translate : -swiper.translate
|
|
1388
|
+
});
|
|
1389
|
+
}
|
|
1390
|
+
function onTouchMove() {
|
|
1391
|
+
if (swiper.params.cssMode) return;
|
|
1392
|
+
const {
|
|
1393
|
+
touchEventsData: data,
|
|
1394
|
+
touches
|
|
1395
|
+
} = swiper;
|
|
1396
|
+
// Velocity
|
|
1397
|
+
if (data.velocities.length === 0) {
|
|
1398
|
+
data.velocities.push({
|
|
1399
|
+
position: touches[swiper.isHorizontal() ? 'startX' : 'startY'],
|
|
1400
|
+
time: data.touchStartTime
|
|
1401
|
+
});
|
|
1402
|
+
}
|
|
1403
|
+
data.velocities.push({
|
|
1404
|
+
position: touches[swiper.isHorizontal() ? 'currentX' : 'currentY'],
|
|
1405
|
+
time: now()
|
|
1406
|
+
});
|
|
1407
|
+
}
|
|
1408
|
+
function onTouchEnd(_ref2) {
|
|
1409
|
+
let {
|
|
1410
|
+
currentPos
|
|
1411
|
+
} = _ref2;
|
|
1412
|
+
if (swiper.params.cssMode) return;
|
|
1413
|
+
const {
|
|
1414
|
+
params,
|
|
1415
|
+
wrapperEl,
|
|
1416
|
+
rtlTranslate: rtl,
|
|
1417
|
+
snapGrid,
|
|
1418
|
+
touchEventsData: data
|
|
1419
|
+
} = swiper;
|
|
1420
|
+
// Time diff
|
|
1421
|
+
const touchEndTime = now();
|
|
1422
|
+
const timeDiff = touchEndTime - data.touchStartTime;
|
|
1423
|
+
if (currentPos < -swiper.minTranslate()) {
|
|
1424
|
+
swiper.slideTo(swiper.activeIndex);
|
|
1425
|
+
return;
|
|
1426
|
+
}
|
|
1427
|
+
if (currentPos > -swiper.maxTranslate()) {
|
|
1428
|
+
if (swiper.slides.length < snapGrid.length) {
|
|
1429
|
+
swiper.slideTo(snapGrid.length - 1);
|
|
1430
|
+
} else {
|
|
1431
|
+
swiper.slideTo(swiper.slides.length - 1);
|
|
1432
|
+
}
|
|
1433
|
+
return;
|
|
1434
|
+
}
|
|
1435
|
+
if (params.freeMode.momentum) {
|
|
1436
|
+
if (data.velocities.length > 1) {
|
|
1437
|
+
const lastMoveEvent = data.velocities.pop();
|
|
1438
|
+
const velocityEvent = data.velocities.pop();
|
|
1439
|
+
const distance = lastMoveEvent.position - velocityEvent.position;
|
|
1440
|
+
const time = lastMoveEvent.time - velocityEvent.time;
|
|
1441
|
+
swiper.velocity = distance / time;
|
|
1442
|
+
swiper.velocity /= 2;
|
|
1443
|
+
if (Math.abs(swiper.velocity) < params.freeMode.minimumVelocity) {
|
|
1444
|
+
swiper.velocity = 0;
|
|
1445
|
+
}
|
|
1446
|
+
// this implies that the user stopped moving a finger then released.
|
|
1447
|
+
// There would be no events with distance zero, so the last event is stale.
|
|
1448
|
+
if (time > 150 || now() - lastMoveEvent.time > 300) {
|
|
1449
|
+
swiper.velocity = 0;
|
|
1450
|
+
}
|
|
1451
|
+
} else {
|
|
1452
|
+
swiper.velocity = 0;
|
|
1453
|
+
}
|
|
1454
|
+
swiper.velocity *= params.freeMode.momentumVelocityRatio;
|
|
1455
|
+
data.velocities.length = 0;
|
|
1456
|
+
let momentumDuration = 1000 * params.freeMode.momentumRatio;
|
|
1457
|
+
const momentumDistance = swiper.velocity * momentumDuration;
|
|
1458
|
+
let newPosition = swiper.translate + momentumDistance;
|
|
1459
|
+
if (rtl) newPosition = -newPosition;
|
|
1460
|
+
let doBounce = false;
|
|
1461
|
+
let afterBouncePosition;
|
|
1462
|
+
const bounceAmount = Math.abs(swiper.velocity) * 20 * params.freeMode.momentumBounceRatio;
|
|
1463
|
+
let needsLoopFix;
|
|
1464
|
+
if (newPosition < swiper.maxTranslate()) {
|
|
1465
|
+
if (params.freeMode.momentumBounce) {
|
|
1466
|
+
if (newPosition + swiper.maxTranslate() < -bounceAmount) {
|
|
1467
|
+
newPosition = swiper.maxTranslate() - bounceAmount;
|
|
1468
|
+
}
|
|
1469
|
+
afterBouncePosition = swiper.maxTranslate();
|
|
1470
|
+
doBounce = true;
|
|
1471
|
+
data.allowMomentumBounce = true;
|
|
1472
|
+
} else {
|
|
1473
|
+
newPosition = swiper.maxTranslate();
|
|
1474
|
+
}
|
|
1475
|
+
if (params.loop && params.centeredSlides) needsLoopFix = true;
|
|
1476
|
+
} else if (newPosition > swiper.minTranslate()) {
|
|
1477
|
+
if (params.freeMode.momentumBounce) {
|
|
1478
|
+
if (newPosition - swiper.minTranslate() > bounceAmount) {
|
|
1479
|
+
newPosition = swiper.minTranslate() + bounceAmount;
|
|
1480
|
+
}
|
|
1481
|
+
afterBouncePosition = swiper.minTranslate();
|
|
1482
|
+
doBounce = true;
|
|
1483
|
+
data.allowMomentumBounce = true;
|
|
1484
|
+
} else {
|
|
1485
|
+
newPosition = swiper.minTranslate();
|
|
1486
|
+
}
|
|
1487
|
+
if (params.loop && params.centeredSlides) needsLoopFix = true;
|
|
1488
|
+
} else if (params.freeMode.sticky) {
|
|
1489
|
+
let nextSlide;
|
|
1490
|
+
for (let j = 0; j < snapGrid.length; j += 1) {
|
|
1491
|
+
if (snapGrid[j] > -newPosition) {
|
|
1492
|
+
nextSlide = j;
|
|
1493
|
+
break;
|
|
1494
|
+
}
|
|
1495
|
+
}
|
|
1496
|
+
if (Math.abs(snapGrid[nextSlide] - newPosition) < Math.abs(snapGrid[nextSlide - 1] - newPosition) || swiper.swipeDirection === 'next') {
|
|
1497
|
+
newPosition = snapGrid[nextSlide];
|
|
1498
|
+
} else {
|
|
1499
|
+
newPosition = snapGrid[nextSlide - 1];
|
|
1500
|
+
}
|
|
1501
|
+
newPosition = -newPosition;
|
|
1502
|
+
}
|
|
1503
|
+
if (needsLoopFix) {
|
|
1504
|
+
once('transitionEnd', () => {
|
|
1505
|
+
swiper.loopFix();
|
|
1506
|
+
});
|
|
1507
|
+
}
|
|
1508
|
+
// Fix duration
|
|
1509
|
+
if (swiper.velocity !== 0) {
|
|
1510
|
+
if (rtl) {
|
|
1511
|
+
momentumDuration = Math.abs((-newPosition - swiper.translate) / swiper.velocity);
|
|
1512
|
+
} else {
|
|
1513
|
+
momentumDuration = Math.abs((newPosition - swiper.translate) / swiper.velocity);
|
|
1514
|
+
}
|
|
1515
|
+
if (params.freeMode.sticky) {
|
|
1516
|
+
// If freeMode.sticky is active and the user ends a swipe with a slow-velocity
|
|
1517
|
+
// event, then durations can be 20+ seconds to slide one (or zero!) slides.
|
|
1518
|
+
// It's easy to see this when simulating touch with mouse events. To fix this,
|
|
1519
|
+
// limit single-slide swipes to the default slide duration. This also has the
|
|
1520
|
+
// nice side effect of matching slide speed if the user stopped moving before
|
|
1521
|
+
// lifting finger or mouse vs. moving slowly before lifting the finger/mouse.
|
|
1522
|
+
// For faster swipes, also apply limits (albeit higher ones).
|
|
1523
|
+
const moveDistance = Math.abs((rtl ? -newPosition : newPosition) - swiper.translate);
|
|
1524
|
+
const currentSlideSize = swiper.slidesSizesGrid[swiper.activeIndex];
|
|
1525
|
+
if (moveDistance < currentSlideSize) {
|
|
1526
|
+
momentumDuration = params.speed;
|
|
1527
|
+
} else if (moveDistance < 2 * currentSlideSize) {
|
|
1528
|
+
momentumDuration = params.speed * 1.5;
|
|
1529
|
+
} else {
|
|
1530
|
+
momentumDuration = params.speed * 2.5;
|
|
1531
|
+
}
|
|
1532
|
+
}
|
|
1533
|
+
} else if (params.freeMode.sticky) {
|
|
1534
|
+
swiper.slideToClosest();
|
|
1535
|
+
return;
|
|
1536
|
+
}
|
|
1537
|
+
if (params.freeMode.momentumBounce && doBounce) {
|
|
1538
|
+
swiper.updateProgress(afterBouncePosition);
|
|
1539
|
+
swiper.setTransition(momentumDuration);
|
|
1540
|
+
swiper.setTranslate(newPosition);
|
|
1541
|
+
swiper.transitionStart(true, swiper.swipeDirection);
|
|
1542
|
+
swiper.animating = true;
|
|
1543
|
+
elementTransitionEnd(wrapperEl, () => {
|
|
1544
|
+
if (!swiper || swiper.destroyed || !data.allowMomentumBounce) return;
|
|
1545
|
+
emit('momentumBounce');
|
|
1546
|
+
swiper.setTransition(params.speed);
|
|
1547
|
+
setTimeout(() => {
|
|
1548
|
+
swiper.setTranslate(afterBouncePosition);
|
|
1549
|
+
elementTransitionEnd(wrapperEl, () => {
|
|
1550
|
+
if (!swiper || swiper.destroyed) return;
|
|
1551
|
+
swiper.transitionEnd();
|
|
1552
|
+
});
|
|
1553
|
+
}, 0);
|
|
1554
|
+
});
|
|
1555
|
+
} else if (swiper.velocity) {
|
|
1556
|
+
emit('_freeModeNoMomentumRelease');
|
|
1557
|
+
swiper.updateProgress(newPosition);
|
|
1558
|
+
swiper.setTransition(momentumDuration);
|
|
1559
|
+
swiper.setTranslate(newPosition);
|
|
1560
|
+
swiper.transitionStart(true, swiper.swipeDirection);
|
|
1561
|
+
if (!swiper.animating) {
|
|
1562
|
+
swiper.animating = true;
|
|
1563
|
+
elementTransitionEnd(wrapperEl, () => {
|
|
1564
|
+
if (!swiper || swiper.destroyed) return;
|
|
1565
|
+
swiper.transitionEnd();
|
|
1566
|
+
});
|
|
1567
|
+
}
|
|
1568
|
+
} else {
|
|
1569
|
+
swiper.updateProgress(newPosition);
|
|
1570
|
+
}
|
|
1571
|
+
swiper.updateActiveIndex();
|
|
1572
|
+
swiper.updateSlidesClasses();
|
|
1573
|
+
} else if (params.freeMode.sticky) {
|
|
1574
|
+
swiper.slideToClosest();
|
|
1575
|
+
return;
|
|
1576
|
+
} else if (params.freeMode) {
|
|
1577
|
+
emit('_freeModeNoMomentumRelease');
|
|
1578
|
+
}
|
|
1579
|
+
if (!params.freeMode.momentum || timeDiff >= params.longSwipesMs) {
|
|
1580
|
+
emit('_freeModeStaticRelease');
|
|
1581
|
+
swiper.updateProgress();
|
|
1582
|
+
swiper.updateActiveIndex();
|
|
1583
|
+
swiper.updateSlidesClasses();
|
|
1584
|
+
}
|
|
1585
|
+
}
|
|
1586
|
+
Object.assign(swiper, {
|
|
1587
|
+
freeMode: {
|
|
1588
|
+
onTouchStart,
|
|
1589
|
+
onTouchMove,
|
|
1590
|
+
onTouchEnd
|
|
1591
|
+
}
|
|
1592
|
+
});
|
|
1593
|
+
}
|
|
1594
|
+
|
|
1355
1595
|
let support;
|
|
1356
1596
|
function calcSupport() {
|
|
1357
1597
|
const window = getWindow();
|
|
@@ -5996,15 +6236,11 @@ const SwiperSlide = /*#__PURE__*/forwardRef(function (_temp, externalRef) {
|
|
|
5996
6236
|
});
|
|
5997
6237
|
SwiperSlide.displayName = 'SwiperSlide';
|
|
5998
6238
|
|
|
5999
|
-
function
|
|
6000
|
-
return (jsx("svg", { height: "
|
|
6001
|
-
}
|
|
6002
|
-
|
|
6003
|
-
function RightArrowFilledIcon(props) {
|
|
6004
|
-
return (jsx("svg", { height: "13", viewBox: "0 0 13 13", width: "13", xmlns: "http://www.w3.org/2000/svg", ...props, children: jsx("path", { d: "M3.539 11.917c-.227 0-.365-.224-.245-.396l3.752-5.384a1.098 1.098 0 0 0-.112-1.409L3.902 1.509c-.158-.168-.025-.426.22-.426h2.363c.085 0 .165.034.22.092L8.96 3.57c.94.997 1.052 2.412.28 3.52l-3.28 4.706a.297.297 0 0 1-.245.122H3.54z", fill: "currentColor", fillRule: "evenodd" }) }));
|
|
6239
|
+
function GlyphsArrowBoldCapsLeftIcon(props) {
|
|
6240
|
+
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)" }) }));
|
|
6005
6241
|
}
|
|
6006
6242
|
|
|
6007
|
-
var styles$
|
|
6243
|
+
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"};
|
|
6008
6244
|
|
|
6009
6245
|
function CarouselNavigationButton({ direction, isDisabled = false, }) {
|
|
6010
6246
|
const swiper = useSwiper();
|
|
@@ -6016,10 +6252,12 @@ function CarouselNavigationButton({ direction, isDisabled = false, }) {
|
|
|
6016
6252
|
swiper.slidePrev();
|
|
6017
6253
|
}
|
|
6018
6254
|
}
|
|
6019
|
-
return (jsx(Button$1, { className: styles$
|
|
6255
|
+
return (jsx(Button$1, { className: clsx(styles$r['navigation-button'], {
|
|
6256
|
+
[styles$r['is-locked']]: swiper.isLocked,
|
|
6257
|
+
}), isDisabled: isDisabled, onPress: handleNavigation, children: direction === 'previous' ? (jsx(GlyphsArrowBoldCapsLeftIcon, {})) : (jsx(GlyphsArrowBoldCapsRightIcon, {})) }));
|
|
6020
6258
|
}
|
|
6021
6259
|
|
|
6022
|
-
function Carousel({ breakpoints, hasNavigation = true, navigationButtonsPosition = 'top', slides, slidesPerView = 'auto', spaceBetween = 8, }) {
|
|
6260
|
+
function Carousel({ breakpoints, className, hasNavigation = true, hasOverflow = true, navigationButtonsPosition = 'top', slideClasses, slides, slidesPerView = 'auto', spaceBetween = 8, }) {
|
|
6023
6261
|
const [isEnd, setIsEnd] = useState(false);
|
|
6024
6262
|
const [isBeginning, setIsBeginning] = useState(true);
|
|
6025
6263
|
const [isLocked, setIsLocked] = useState(false);
|
|
@@ -6029,11 +6267,16 @@ function Carousel({ breakpoints, hasNavigation = true, navigationButtonsPosition
|
|
|
6029
6267
|
setIsBeginning(swiper.isBeginning);
|
|
6030
6268
|
}
|
|
6031
6269
|
const showNavigation = hasNavigation && !isLocked;
|
|
6032
|
-
return (jsx("div", { className: styles$
|
|
6270
|
+
return (jsx("div", { className: clsx(styles$r.carousel, className), children: jsxs(Swiper, { breakpoints: breakpoints, className: clsx(styles$r.swiper, {
|
|
6271
|
+
[styles$r['is-dragging']]: isDragging,
|
|
6272
|
+
[styles$r['has-overflow']]: hasOverflow,
|
|
6273
|
+
}), freeMode: {
|
|
6274
|
+
enabled: true,
|
|
6275
|
+
sticky: true,
|
|
6276
|
+
}, 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 }) })] }))] }) }));
|
|
6033
6277
|
}
|
|
6034
6278
|
|
|
6035
|
-
function CategoryCarousel({
|
|
6036
|
-
const slides = categories.map((slide, index) => (jsx(CategoryCard, { ...slide }, index)));
|
|
6279
|
+
function CategoryCarousel({ categoryCards }) {
|
|
6037
6280
|
return (jsx(Carousel, { breakpoints: {
|
|
6038
6281
|
1024: {
|
|
6039
6282
|
spaceBetween: 12,
|
|
@@ -6041,23 +6284,23 @@ function CategoryCarousel({ categories }) {
|
|
|
6041
6284
|
1440: {
|
|
6042
6285
|
spaceBetween: 16,
|
|
6043
6286
|
},
|
|
6044
|
-
}, slides:
|
|
6287
|
+
}, slides: categoryCards, spaceBetween: 8 }));
|
|
6045
6288
|
}
|
|
6046
6289
|
|
|
6047
|
-
var styles$
|
|
6290
|
+
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"};
|
|
6048
6291
|
|
|
6049
6292
|
function Accordion({ children, color = 'black', hasLineSeparator = true, indented, size = 'md', }) {
|
|
6050
|
-
return (jsx("div", { className: clsx({ [styles$
|
|
6293
|
+
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 &&
|
|
6051
6294
|
Children.map(children, child => {
|
|
6052
6295
|
return cloneElement(child, { size });
|
|
6053
6296
|
}) }));
|
|
6054
6297
|
}
|
|
6055
6298
|
|
|
6056
|
-
function
|
|
6057
|
-
return (jsx("svg", {
|
|
6299
|
+
function GlyphsChevronsSlimDownIcon(props) {
|
|
6300
|
+
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" }) }));
|
|
6058
6301
|
}
|
|
6059
6302
|
|
|
6060
|
-
var styles$
|
|
6303
|
+
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"};
|
|
6061
6304
|
|
|
6062
6305
|
const ShowAll = ({ children, hasTransparency = true, initialHeight = 0, isOpen, onToggle, }) => {
|
|
6063
6306
|
const showAllRef = useRef(null);
|
|
@@ -6066,14 +6309,14 @@ const ShowAll = ({ children, hasTransparency = true, initialHeight = 0, isOpen,
|
|
|
6066
6309
|
return;
|
|
6067
6310
|
showAllRef.current.style.setProperty('--initital-height', `${initialHeight}px`);
|
|
6068
6311
|
}, [initialHeight]);
|
|
6069
|
-
return (jsxs("div", { ref: showAllRef, className: clsx(styles$
|
|
6070
|
-
[styles$
|
|
6071
|
-
}), children: [jsx("div", { className: styles$
|
|
6072
|
-
[styles$
|
|
6073
|
-
}), children: children }) }), jsxs(LinkButton, { className: styles$
|
|
6312
|
+
return (jsxs("div", { ref: showAllRef, className: clsx(styles$p['show-all'], {
|
|
6313
|
+
[styles$p['is-open']]: isOpen,
|
|
6314
|
+
}), children: [jsx("div", { className: styles$p.panel, children: jsx("div", { className: clsx(styles$p.content, {
|
|
6315
|
+
[styles$p['has-transparency']]: hasTransparency,
|
|
6316
|
+
}), 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" }))] })] }));
|
|
6074
6317
|
};
|
|
6075
6318
|
|
|
6076
|
-
var styles$
|
|
6319
|
+
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"};
|
|
6077
6320
|
|
|
6078
6321
|
function MultiSelect({ amountShown = 3, onChange, options, render, }) {
|
|
6079
6322
|
const shownOptions = options.slice(0, amountShown);
|
|
@@ -6084,28 +6327,28 @@ function MultiSelect({ amountShown = 3, onChange, options, render, }) {
|
|
|
6084
6327
|
options.filter(option => option.isSelected).length === 0) {
|
|
6085
6328
|
return null;
|
|
6086
6329
|
}
|
|
6087
|
-
return (jsxs("div", { className: styles$
|
|
6330
|
+
return (jsxs("div", { className: styles$o['multi-select'], children: [jsx("div", { className: styles$o['filter-items'], children: shownOptions
|
|
6088
6331
|
.concat(isOpen ? [] : hiddenSelectedOptions)
|
|
6089
|
-
.map(option => (jsxs("div", { className: styles$
|
|
6332
|
+
.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))) }) }))] }));
|
|
6090
6333
|
}
|
|
6091
6334
|
|
|
6092
|
-
var styles$
|
|
6335
|
+
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"};
|
|
6093
6336
|
|
|
6094
6337
|
function Checkbox({ _pseudo = 'none', children, className, isDisabled, isSelected, onChange, value, }) {
|
|
6095
|
-
return (jsxs(Checkbox$1, { className: clsx(className, styles$
|
|
6338
|
+
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] }));
|
|
6096
6339
|
}
|
|
6097
6340
|
|
|
6098
6341
|
function ColorCheckbox({ _pseudo = 'none', children, className, color, isDisabled, isSelected, onChange, value, }) {
|
|
6099
|
-
return (jsxs(Checkbox$1, { className: clsx(className, styles$
|
|
6342
|
+
return (jsxs(Checkbox$1, { className: clsx(className, styles$n.checkbox, styles$n['color-checkbox'], styles$n[_pseudo]), isDisabled: isDisabled, isSelected: isSelected, onChange: onChange, style: {
|
|
6100
6343
|
'--selected-color': color,
|
|
6101
|
-
}, value: value, children: [jsx("div", { className: styles$
|
|
6344
|
+
}, value: value, children: [jsx("div", { className: styles$n.box }), children] }));
|
|
6102
6345
|
}
|
|
6103
6346
|
|
|
6104
|
-
function
|
|
6105
|
-
return (jsx("svg", {
|
|
6347
|
+
function StrokeCheckmarkIcon(props) {
|
|
6348
|
+
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" }) }));
|
|
6106
6349
|
}
|
|
6107
6350
|
|
|
6108
|
-
var styles$
|
|
6351
|
+
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"};
|
|
6109
6352
|
|
|
6110
6353
|
function Select({ isDisabled = false, label, onChange, options, selectedOption, showLabel = true, size = 'md', }) {
|
|
6111
6354
|
const selectRef = useRef(null);
|
|
@@ -6122,10 +6365,10 @@ function Select({ isDisabled = false, label, onChange, options, selectedOption,
|
|
|
6122
6365
|
window.addEventListener('resize', updateWidth);
|
|
6123
6366
|
return () => window.removeEventListener('resize', updateWidth);
|
|
6124
6367
|
}, []);
|
|
6125
|
-
return (jsxs(Select$1, { ref: selectRef, "aria-label": label, className: clsx(styles$
|
|
6368
|
+
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, { 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)))] }) }) })] }));
|
|
6126
6369
|
}
|
|
6127
6370
|
|
|
6128
|
-
var styles$
|
|
6371
|
+
var styles$l = {"input-container":"textarea-module-C6Xr1","lg":"textarea-module-vksG-","md":"textarea-module-6JrQJ"};
|
|
6129
6372
|
|
|
6130
6373
|
/**
|
|
6131
6374
|
* This component is used to create a textarea that can grow as the user types.
|
|
@@ -6160,7 +6403,7 @@ const TextArea = forwardRef(({ autoGrow, size, ...textAreaProps }, _ref) => {
|
|
|
6160
6403
|
}
|
|
6161
6404
|
updateHeight();
|
|
6162
6405
|
}, [ref, autoGrow, updateHeight, size]);
|
|
6163
|
-
return (jsx("div", { className: styles$
|
|
6406
|
+
return (jsx("div", { className: styles$l['input-container'], children: jsx(TextArea$1, { ...textAreaProps, ref: node => {
|
|
6164
6407
|
ref.current =
|
|
6165
6408
|
node;
|
|
6166
6409
|
textAreaRef.current = node;
|
|
@@ -6171,7 +6414,7 @@ const TextArea = forwardRef(({ autoGrow, size, ...textAreaProps }, _ref) => {
|
|
|
6171
6414
|
});
|
|
6172
6415
|
TextArea.displayName = 'TextArea';
|
|
6173
6416
|
|
|
6174
|
-
var styles$
|
|
6417
|
+
var styles$k = {"field":"text-field-module-JeaK0"};
|
|
6175
6418
|
|
|
6176
6419
|
/**
|
|
6177
6420
|
* This component is used to create a text field.
|
|
@@ -6179,41 +6422,41 @@ var styles$f = {"field":"text-field-module-JeaK0"};
|
|
|
6179
6422
|
* This field can also grow when a user types in text.
|
|
6180
6423
|
*/
|
|
6181
6424
|
function TextField({ autoFocus, autoGrow, defaultValue, isDisabled, isInvalid, isMultiline, isReadOnly, isRequired, label, maxLength, onChange, onInput, onKeyUp, placeholder, rows, showLabel = false, size = 'lg', value, }) {
|
|
6182
|
-
return (jsxs(TextField$1, { "aria-label": label, autoFocus: autoFocus, className: clsx(styles$
|
|
6425
|
+
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 => {
|
|
6183
6426
|
onChange?.(value);
|
|
6184
6427
|
}, 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, {})] }));
|
|
6185
6428
|
}
|
|
6186
6429
|
|
|
6187
|
-
function
|
|
6188
|
-
|
|
6430
|
+
function IntlProvider({ children, formatMessage, languageCode: _languageCode, }) {
|
|
6431
|
+
const [languageCode, updateLanguageCode] = useState(_languageCode);
|
|
6432
|
+
return (jsx(IntlContext.Provider, { value: { formatMessage, languageCode, updateLanguageCode }, children: children }));
|
|
6189
6433
|
}
|
|
6190
6434
|
|
|
6191
|
-
|
|
6192
|
-
return (jsx("svg", { height: "24", viewBox: "0 0 24 24", width: "24", xmlns: "http://www.w3.org/2000/svg", ...props, children: jsx("path", { d: "m4.934 4.19 15.069 14.705c.259.253.259.663 0 .915a.67.67 0 0 1-.47.19.67.67 0 0 1-.468-.19L3.995 5.105a.636.636 0 0 1 0-.915.675.675 0 0 1 .939 0zm.012 3.604a.637.637 0 0 1-.022.916C3.88 9.682 3.327 10.82 3.327 12c0 3.152 3.88 5.717 8.65 5.717.834 0 1.664-.081 2.469-.242.36-.071.71.155.783.505a.648.648 0 0 1-.517.764c-.892.177-1.812.268-2.735.268C6.476 19.012 2 15.866 2 11.999c0-1.541.695-3.003 2.008-4.226a.675.675 0 0 1 .938.021zm7.077-2.807c5.501 0 9.977 3.146 9.977 7.012 0 1.542-.695 3.003-2.008 4.227a.67.67 0 0 1-.458.179.67.67 0 0 1-.48-.2.636.636 0 0 1 .022-.916c1.045-.973 1.597-2.11 1.597-3.29 0-3.153-3.88-5.717-8.65-5.717-.834 0-1.665.08-2.469.241a.662.662 0 0 1-.783-.504.648.648 0 0 1 .517-.764 14.019 14.019 0 0 1 2.735-.268zm-4.382 6.14c.047-.225.337-.305.504-.142l4.894 4.776a.29.29 0 0 1-.146.492 4.56 4.56 0 0 1-1.522.046c-1.946-.266-3.503-1.785-3.777-3.685a4.243 4.243 0 0 1 .047-1.486zm3.462-3.381a4.564 4.564 0 0 1 1.524-.047c1.949.266 3.507 1.787 3.78 3.688a4.244 4.244 0 0 1-.048 1.488c-.048.225-.338.305-.505.142l-4.897-4.78a.29.29 0 0 1 .146-.491z", fill: "currentColor", fillRule: "evenodd" }) }));
|
|
6193
|
-
}
|
|
6435
|
+
var styles$j = {"product-grid":"product-overview-grid-module-bzys-","grid-item":"product-overview-grid-module-MlUVA"};
|
|
6194
6436
|
|
|
6195
|
-
function
|
|
6196
|
-
return (jsx("
|
|
6437
|
+
function ProductOverviewGrid({ children }) {
|
|
6438
|
+
return (jsx("div", { className: styles$j['product-grid'], children: Children.map(children, (child, index) => (jsx("div", { className: styles$j['grid-item'], children: child }, index))) }));
|
|
6197
6439
|
}
|
|
6198
6440
|
|
|
6199
|
-
|
|
6200
|
-
|
|
6201
|
-
|
|
6441
|
+
var styles$i = {"progress-circle":"progress-circle-module-4nweP","load-spin":"progress-circle-module-jPY-W"};
|
|
6442
|
+
|
|
6443
|
+
function ProgressCircle({ className }) {
|
|
6444
|
+
return jsx("div", { className: clsx(styles$i['progress-circle'], className) });
|
|
6202
6445
|
}
|
|
6203
6446
|
|
|
6204
|
-
var styles$
|
|
6447
|
+
var styles$h = {"loading-overlay":"loading-overlay-module-L67Gy"};
|
|
6205
6448
|
|
|
6206
|
-
function
|
|
6207
|
-
return (jsx("div", { className: styles$
|
|
6449
|
+
function LoadingOverlay() {
|
|
6450
|
+
return (jsx("div", { className: styles$h['loading-overlay'], children: jsx(ProgressCircle, {}) }));
|
|
6208
6451
|
}
|
|
6209
6452
|
|
|
6210
|
-
var styles$
|
|
6453
|
+
var styles$g = {"page-container":"page-container-module-PYmbC","inner-page-container":"page-container-module-uD8GF"};
|
|
6211
6454
|
|
|
6212
6455
|
function PageContainer({ children, className, }) {
|
|
6213
|
-
return (jsx("div", { className: styles$
|
|
6456
|
+
return (jsx("div", { className: styles$g['page-container'], children: jsx("div", { className: clsx(styles$g['inner-page-container'], className), children: children }) }));
|
|
6214
6457
|
}
|
|
6215
6458
|
|
|
6216
|
-
var styles$
|
|
6459
|
+
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"};
|
|
6217
6460
|
|
|
6218
6461
|
const sizeToTag = {
|
|
6219
6462
|
l: 'h3',
|
|
@@ -6226,30 +6469,30 @@ const sizeToTag = {
|
|
|
6226
6469
|
};
|
|
6227
6470
|
function Heading({ children, className, italic, size = 'xxl', tag, uppercase, }) {
|
|
6228
6471
|
return createElement$1(tag || sizeToTag[size], {
|
|
6229
|
-
className: clsx(className, styles$
|
|
6230
|
-
[styles$
|
|
6231
|
-
[styles$
|
|
6472
|
+
className: clsx(className, styles$f.heading, styles$f[size], {
|
|
6473
|
+
[styles$f.uppercase]: uppercase,
|
|
6474
|
+
[styles$f.italic]: italic,
|
|
6232
6475
|
}),
|
|
6233
6476
|
}, children);
|
|
6234
6477
|
}
|
|
6235
6478
|
|
|
6236
|
-
var styles$
|
|
6479
|
+
var styles$e = {"page":"page-module-XtZ9Y","breadcrumb":"page-module-ohh9z","title":"page-module-TEmve"};
|
|
6237
6480
|
|
|
6238
6481
|
function Page({ breadCrumb, children, className, title }) {
|
|
6239
6482
|
const { lg, xxl } = useBreakpoint();
|
|
6240
|
-
return (jsxs(PageContainer, { className: clsx(styles$
|
|
6483
|
+
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] }));
|
|
6241
6484
|
}
|
|
6242
6485
|
|
|
6243
|
-
function
|
|
6244
|
-
return (jsx("svg", {
|
|
6486
|
+
function StrokeCloseboxIcon(props) {
|
|
6487
|
+
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" }) }));
|
|
6245
6488
|
}
|
|
6246
6489
|
|
|
6247
|
-
var styles$
|
|
6490
|
+
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"};
|
|
6248
6491
|
|
|
6249
6492
|
const ActiveFilters = ({ onClearAllFilters, onClearFilter, selectedFilterCategories, }) => {
|
|
6250
6493
|
if (selectedFilterCategories.length === 0)
|
|
6251
6494
|
return null;
|
|
6252
|
-
return (jsxs("div", { className: styles$
|
|
6495
|
+
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}`)))] }));
|
|
6253
6496
|
};
|
|
6254
6497
|
|
|
6255
6498
|
function AlgoliaActiveFilters() {
|
|
@@ -6273,19 +6516,19 @@ function AlgoliaActiveFilters() {
|
|
|
6273
6516
|
return (jsx(ActiveFilters, { onClearAllFilters: clearAllFilters, onClearFilter: onClearFilter, selectedFilterCategories: selectedFilterCategories }));
|
|
6274
6517
|
}
|
|
6275
6518
|
|
|
6276
|
-
function
|
|
6277
|
-
return (jsx("svg", {
|
|
6519
|
+
function GlyphsChevronsBoldDownIcon(props) {
|
|
6520
|
+
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: "M5.98800959,10 L1,4.97931034 C1.17585931,4.65747126 1.4636291,4.2954023 1.86330935,3.89310345 C2.03916867,3.71609195 2.21502798,3.55517241 2.39088729,3.41034483 C2.5667466,3.26551724 2.70263789,3.16896552 2.79856115,3.12068966 L2.94244604,3.02413793 L5.98800959,6.08965517 L9.05755396,3 C9.39328537,3.19310345 9.7529976,3.48275862 10.1366906,3.86896552 C10.31255,4.04597701 10.4724221,4.22298851 10.616307,4.4 L10.8321343,4.67517241 C10.8705036,4.72666667 10.902478,4.77172414 10.9280576,4.81034483 L11,4.95517241 L5.98800959,10 Z", fillRule: "evenodd" }) }));
|
|
6278
6521
|
}
|
|
6279
6522
|
|
|
6280
6523
|
function AccordionItem({ _pseudo = 'none', children, className, id, initialIsOpen = false, isDisabled = false, size, title, }) {
|
|
6281
6524
|
const { isOpen, toggle } = useDisclosure(initialIsOpen);
|
|
6282
6525
|
const panelId = `panel-${id}`;
|
|
6283
|
-
return (jsxs("div", { className: clsx(className, styles$
|
|
6284
|
-
[styles$
|
|
6285
|
-
}), children: [jsx("h3", { children: jsxs("button", { "aria-controls": panelId, "aria-expanded": isOpen, className: clsx(styles$
|
|
6526
|
+
return (jsxs("div", { className: clsx(className, styles$q['accordion-item'], {
|
|
6527
|
+
[styles$q['is-open']]: isOpen,
|
|
6528
|
+
}), 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 }) })] }));
|
|
6286
6529
|
}
|
|
6287
6530
|
|
|
6288
|
-
var styles$
|
|
6531
|
+
var styles$c = {"filter-panel":"filter-panel-module-8oxI1","scroll-container":"filter-panel-module-w0hhZ","categories-section":"filter-panel-module-AHlq3","category":"filter-panel-module-TMp3J","count":"filter-panel-module-ykW1a","categories":"filter-panel-module-xvhRz","categories-header":"filter-panel-module-hJVR0","button":"filter-panel-module-hMmIb"};
|
|
6289
6532
|
|
|
6290
6533
|
function AlgoliaFilterSection({ attribute, children, initialIsOpen = true, }) {
|
|
6291
6534
|
const { items, refine } = useRefinementList({
|
|
@@ -6297,7 +6540,7 @@ function AlgoliaFilterSection({ attribute, children, initialIsOpen = true, }) {
|
|
|
6297
6540
|
if (items.length < 2 && items.filter(item => item.isRefined).length === 0) {
|
|
6298
6541
|
return null;
|
|
6299
6542
|
}
|
|
6300
|
-
return (jsx(Accordion, { children: jsx(AccordionItem, { id: attribute, initialIsOpen: initialIsOpen, title: jsx("span", { className: styles$
|
|
6543
|
+
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({ items, refine }) }) }));
|
|
6301
6544
|
}
|
|
6302
6545
|
|
|
6303
6546
|
function AlgoliaMultiSelectFilterSection({ attribute, }) {
|
|
@@ -6322,17 +6565,17 @@ function AlgoliaFilterPanel({ onShowProducts, }) {
|
|
|
6322
6565
|
const { attributesToRender } = useDynamicWidgets({
|
|
6323
6566
|
maxValuesPerFacet: 100,
|
|
6324
6567
|
});
|
|
6325
|
-
return (jsx("div", { className: styles$
|
|
6568
|
+
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, {})] }) })] }) }));
|
|
6326
6569
|
}
|
|
6327
6570
|
|
|
6328
|
-
function
|
|
6329
|
-
return (jsx("svg", { height: "
|
|
6571
|
+
function GlyphsChevronsSlimRightIcon(props) {
|
|
6572
|
+
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" }) }));
|
|
6330
6573
|
}
|
|
6331
6574
|
|
|
6332
|
-
var styles$
|
|
6575
|
+
var styles$b = {"pagination":"pagination-module-k4OgY","page-number-container":"pagination-module-oq89A"};
|
|
6333
6576
|
|
|
6334
6577
|
function Pagination({ currentPage, onChange, totalPages, }) {
|
|
6335
|
-
return (jsxs("div", { className: styles$
|
|
6578
|
+
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, {}) })] }));
|
|
6336
6579
|
}
|
|
6337
6580
|
|
|
6338
6581
|
function AlgoliaPagination({ onChange }) {
|
|
@@ -6552,10 +6795,18 @@ function AlgoliaSortBy() {
|
|
|
6552
6795
|
return (jsx(Select, { label: t('Sort by'), onChange: value => refine(String(value)), options: options, selectedOption: currentRefinement, showLabel: false, size: "sm" }));
|
|
6553
6796
|
}
|
|
6554
6797
|
|
|
6555
|
-
function
|
|
6798
|
+
function ConnectedProductCard({ productId, ...props }) {
|
|
6556
6799
|
return (jsx(ProductCard, { ...props, addToCartButton: jsx(ConnectedAddToCartButton, { productId: productId }) }));
|
|
6557
6800
|
}
|
|
6558
6801
|
|
|
6802
|
+
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"};
|
|
6803
|
+
|
|
6804
|
+
function CategoryCard({ href, image, isSelected = false, title, }) {
|
|
6805
|
+
return (jsxs(RouteLink, { className: clsx({
|
|
6806
|
+
[styles$a['is-selected']]: isSelected,
|
|
6807
|
+
}, 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 })] }));
|
|
6808
|
+
}
|
|
6809
|
+
|
|
6559
6810
|
const ProductListingPageContext = createContext({
|
|
6560
6811
|
data: undefined,
|
|
6561
6812
|
});
|
|
@@ -6576,7 +6827,7 @@ function ConnectedCategoryCarousel() {
|
|
|
6576
6827
|
const { isLoading, subcategories } = useSubcatagories();
|
|
6577
6828
|
if (isLoading || !subcategories)
|
|
6578
6829
|
return null;
|
|
6579
|
-
return jsx(CategoryCarousel, {
|
|
6830
|
+
return (jsx(CategoryCarousel, { categoryCards: subcategories.map((slide, index) => (jsx(CategoryCard, { ...slide }, index))) }));
|
|
6580
6831
|
}
|
|
6581
6832
|
|
|
6582
6833
|
const scrollToTop = (scrollOptions) => {
|
|
@@ -6603,26 +6854,26 @@ const useSidebar = () => {
|
|
|
6603
6854
|
return context;
|
|
6604
6855
|
};
|
|
6605
6856
|
|
|
6606
|
-
var styles$
|
|
6857
|
+
var styles$9 = {"sidebar":"sidebar-module-fSa9Q","is-closed":"sidebar-module-dGDrr","close":"sidebar-module-2puGC","is-open":"sidebar-module-lV7wp"};
|
|
6607
6858
|
|
|
6608
6859
|
function Sidebar({ children }) {
|
|
6609
6860
|
const { isOpen, toggle } = useSidebar();
|
|
6610
|
-
return (jsxs("aside", { className: clsx(styles$
|
|
6611
|
-
[styles$
|
|
6612
|
-
[styles$
|
|
6613
|
-
}), children: [jsx("div", { className: styles$
|
|
6861
|
+
return (jsxs("aside", { className: clsx(styles$9.sidebar, {
|
|
6862
|
+
[styles$9['is-open']]: isOpen,
|
|
6863
|
+
[styles$9['is-closed']]: !isOpen,
|
|
6864
|
+
}), children: [jsx("div", { className: styles$9.close, children: jsx(IconButton, { color: "secondary", onPress: toggle, children: jsx(StrokeCloseboxIcon, {}) }) }), children] }));
|
|
6614
6865
|
}
|
|
6615
6866
|
|
|
6616
|
-
function
|
|
6617
|
-
return (jsx("svg", {
|
|
6867
|
+
function StrokeFilterIcon(props) {
|
|
6868
|
+
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: "M9.32310642,12.5897436 C10.7497603,12.5897436 11.9463087,13.599359 12.2991371,14.9775641 L19.1869607,14.9775641 C19.6471716,14.9775641 20,15.3461538 20,15.8108974 C20,16.275641 19.6471716,16.6602564 19.1869607,16.6602564 L12.2837967,16.6602564 C11.915628,18.0064103 10.7344199,19 9.32310642,19 C7.91179291,19 6.73058485,18.0064103 6.36241611,16.6602564 L4.78235858,16.6602564 C4.35282838,16.6602564 4,16.275641 4,15.8108974 C4,15.3461538 4.35282838,14.9775641 4.78235858,14.9775641 L6.34707574,14.9775641 C6.69990412,13.599359 7.89645254,12.5897436 9.32310642,12.5897436 Z M9.32310642,14 C8.37200384,14 7.62032598,14.7692308 7.62032598,15.7788462 C7.62032598,16.7884615 8.37200384,17.5737179 9.32310642,17.5737179 C10.274209,17.5737179 11.0258869,16.7884615 11.0258869,15.7788462 C11.0258869,14.7692308 10.274209,14 9.32310642,14 Z M14.6922339,6 C16.1035475,6 17.3000959,7.02564103 17.6529243,8.40384615 L19.2329818,8.40384615 C19.6471716,8.40384615 20,8.7724359 20,9.23717949 C20,9.70192308 19.6471716,10.0705128 19.2329818,10.0705128 L17.6375839,10.0705128 C17.2847555,11.4326923 16.0882071,12.4262821 14.6922339,12.4262821 C13.2809204,12.4262821 12.0997124,11.4326923 11.7315436,10.0705128 L4.81303931,10.0705128 C4.35282838,10.0705128 4,9.70192308 4,9.23717949 C4,8.7724359 4.35282838,8.40384615 4.81303931,8.40384615 L11.7162033,8.40384615 C12.0690316,7.02564103 13.2655801,6 14.6922339,6 Z M14.6922339,7.42628205 C13.725791,7.42628205 12.9894535,8.19551282 12.9894535,9.20512821 C12.9894535,10.2147436 13.725791,11 14.6922339,11 C15.6433365,11 16.3950144,10.2147436 16.3950144,9.20512821 C16.3950144,8.19551282 15.6433365,7.42628205 14.6922339,7.42628205 Z", fillRule: "evenodd" }) }));
|
|
6618
6869
|
}
|
|
6619
6870
|
|
|
6620
6871
|
const ToggleSidebarButton = () => {
|
|
6621
6872
|
const { isOpen, toggle } = useSidebar();
|
|
6622
|
-
return (jsx(Button, { color: "secondary", icon: jsx(
|
|
6873
|
+
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" })) }));
|
|
6623
6874
|
};
|
|
6624
6875
|
|
|
6625
|
-
var styles$
|
|
6876
|
+
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"};
|
|
6626
6877
|
|
|
6627
6878
|
function ProductListingPage({ bffUrl, pageUrl, searchClient, }) {
|
|
6628
6879
|
const languageCode = useLanguageCode();
|
|
@@ -6634,20 +6885,19 @@ function ProductListingPage({ bffUrl, pageUrl, searchClient, }) {
|
|
|
6634
6885
|
return (jsxs("h1", { children: [error.status, " - ", error.statusText] }));
|
|
6635
6886
|
}
|
|
6636
6887
|
if (!data || isFetching) {
|
|
6637
|
-
|
|
6638
|
-
return null;
|
|
6888
|
+
return jsx(LoadingOverlay, {});
|
|
6639
6889
|
}
|
|
6640
6890
|
const category = data.breadCrumb.slice(1).map(breadCrumb => breadCrumb.label);
|
|
6641
6891
|
return (jsx(ProductListingPageProvider, { data: data, error: error, isError: isError, isLoading: isFetching, children: jsx(AlgoliaProvider, { categoryPages: data.categoryPages, languageCode: languageCode, offlineSearchClient: offlineSearchClient, searchClient: searchClient ||
|
|
6642
|
-
createSonicSearchClient(`${bffUrl}${bffUrl.endsWith('/') ? '' : '/'}search`), children: jsx(Page, { breadCrumb: data.breadCrumb, className: styles$
|
|
6892
|
+
createSonicSearchClient(`${bffUrl}${bffUrl.endsWith('/') ? '' : '/'}search`), children: jsx(Page, { breadCrumb: data.breadCrumb, className: styles$8['product-listing'], title: category.slice().pop(), children: jsx(ProductListingPageContent, {}) }) }) }));
|
|
6643
6893
|
}
|
|
6644
6894
|
function ProductListingPageContent() {
|
|
6645
6895
|
const { toggle } = useSidebar();
|
|
6646
|
-
return (jsxs(Fragment, { children: [jsx("section", { className: styles$
|
|
6896
|
+
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() }) })] })] }) })] }));
|
|
6647
6897
|
}
|
|
6648
6898
|
function ProductOverview() {
|
|
6649
6899
|
const { hits: productHits } = useHits();
|
|
6650
|
-
return (jsx(ProductOverviewGrid, { children: productHits.map(productHit => (jsx(
|
|
6900
|
+
return (jsx(ProductOverviewGrid, { children: productHits.map(productHit => (jsx(ConnectedProductCard, { href: productHit.storefrontSlug, image: {
|
|
6651
6901
|
alt: productHit.name,
|
|
6652
6902
|
fit: 'contain',
|
|
6653
6903
|
src: productHit.images?.find(image => image.quality === 'medium')
|
|
@@ -6660,7 +6910,7 @@ function ProductOverview() {
|
|
|
6660
6910
|
}, productId: productHit.storefrontId, sku: productHit.id, tags: productHit.labels, title: productHit.name }, productHit.storefrontId))) }));
|
|
6661
6911
|
}
|
|
6662
6912
|
|
|
6663
|
-
var styles$
|
|
6913
|
+
var styles$7 = {"overlay-background":"overlay-background-module-j7R7T","open":"overlay-background-module-DZWsP","close":"overlay-background-module-8pcWN"};
|
|
6664
6914
|
|
|
6665
6915
|
function OverlayBackground({ className, isOpen, onClick, }) {
|
|
6666
6916
|
const [, setRender] = useState(isOpen);
|
|
@@ -6681,9 +6931,9 @@ function OverlayBackground({ className, isOpen, onClick, }) {
|
|
|
6681
6931
|
}, [isOpen]);
|
|
6682
6932
|
if (typeof window === 'undefined')
|
|
6683
6933
|
return null;
|
|
6684
|
-
return ReactDOM.createPortal(jsx("div", { ref: nodeRef, className: clsx(styles$
|
|
6685
|
-
[styles$
|
|
6686
|
-
[styles$
|
|
6934
|
+
return ReactDOM.createPortal(jsx("div", { ref: nodeRef, className: clsx(styles$7['overlay-background'], {
|
|
6935
|
+
[styles$7['open']]: isOpen,
|
|
6936
|
+
[styles$7['close']]: !isOpen,
|
|
6687
6937
|
}, className), onClick: onClick }), document.body);
|
|
6688
6938
|
}
|
|
6689
6939
|
|
|
@@ -6701,7 +6951,7 @@ function useIsBreakpoint(breakpoint) {
|
|
|
6701
6951
|
return isMatch;
|
|
6702
6952
|
}
|
|
6703
6953
|
|
|
6704
|
-
var styles$
|
|
6954
|
+
var styles$6 = {"sidebar-container":"sidebar-provider-module-rjeCL","transition":"sidebar-provider-module-C0cKR","sidebar-background":"sidebar-provider-module-VRgS9","is-open":"sidebar-provider-module-lxq2-"};
|
|
6705
6955
|
|
|
6706
6956
|
function SidebarDetectBreakpoint() {
|
|
6707
6957
|
const xxl = useIsBreakpoint('xxl');
|
|
@@ -6740,14 +6990,14 @@ function SidebarProvider({ children }) {
|
|
|
6740
6990
|
setTransition(true);
|
|
6741
6991
|
toggle();
|
|
6742
6992
|
};
|
|
6743
|
-
return (jsx(SidebarContext.Provider, { value: { close, isOpen, open, toggle: toggleTransition, transition }, children: jsxs("div", { className: clsx(styles$
|
|
6744
|
-
[styles$
|
|
6993
|
+
return (jsx(SidebarContext.Provider, { value: { close, isOpen, open, toggle: toggleTransition, transition }, children: jsxs("div", { className: clsx(styles$6['sidebar-container'], {
|
|
6994
|
+
[styles$6['transition']]: transition,
|
|
6745
6995
|
}), children: [jsx(SidebarDetectBreakpoint, {}), children] }) }));
|
|
6746
6996
|
}
|
|
6747
6997
|
|
|
6748
6998
|
function AlgoliaCategories() {
|
|
6749
6999
|
const categories = [{ count: 123, href: '#', id: '123', name: 'Hand tools' }];
|
|
6750
|
-
return (jsx("div", { children: categories.length > 0 && (jsxs("section", { className: styles$
|
|
7000
|
+
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))) })] })) }));
|
|
6751
7001
|
}
|
|
6752
7002
|
|
|
6753
7003
|
const categoriesPlugin = ({ productsIndexName, searchClient, }) => {
|
|
@@ -7044,12 +7294,12 @@ function useAlgoliaSearch() {
|
|
|
7044
7294
|
};
|
|
7045
7295
|
}
|
|
7046
7296
|
|
|
7047
|
-
var styles$
|
|
7297
|
+
var styles$5 = {"global-search-overlay-background-position":"global-search-module-mmXv1","search-wrapper":"global-search-module-d2g2F","search-root":"global-search-module-Sx8Lx"};
|
|
7048
7298
|
|
|
7049
7299
|
const GlobalSearchDisclosureContext = createContext(null);
|
|
7050
7300
|
function GlobalSearchContainer({ children, }) {
|
|
7051
7301
|
const { close, isOpen, open, toggle } = useDisclosure(false);
|
|
7052
|
-
return (jsx(TransitionGroup, { children: jsxs(GlobalSearchDisclosureContext.Provider, { value: { close, isOpen, open, toggle }, children: [jsx(Transition, { in: isOpen, timeout: 300, children: state => jsx("div", { className: state, children: children }) }), jsx(OverlayBackground, { className: styles$
|
|
7302
|
+
return (jsx(TransitionGroup, { children: jsxs(GlobalSearchDisclosureContext.Provider, { value: { close, isOpen, open, toggle }, children: [jsx(Transition, { in: isOpen, timeout: 300, children: state => jsx("div", { className: state, children: children }) }), jsx(OverlayBackground, { className: styles$5['global-search-overlay-background-position'], isOpen: isOpen, onClick: toggle })] }) }));
|
|
7053
7303
|
}
|
|
7054
7304
|
|
|
7055
7305
|
const useGlobalSearchDisclosure = () => {
|
|
@@ -7060,15 +7310,15 @@ const useGlobalSearchDisclosure = () => {
|
|
|
7060
7310
|
return context;
|
|
7061
7311
|
};
|
|
7062
7312
|
|
|
7063
|
-
function
|
|
7064
|
-
return (jsx("svg", {
|
|
7313
|
+
function SolidCloseIcon(props) {
|
|
7314
|
+
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: "M11.9997748,2 C17.5138784,2 22,6.48597148 22,11.9997748 C22,17.5138784 17.5138784,22 11.9997748,22 C6.48597148,22 2,17.5138784 2,11.9997748 C2,6.48597148 6.48597148,2 11.9997748,2 Z M16.4949747,7.50502525 C16.2216077,7.23165825 15.7783923,7.23165825 15.5050253,7.50502525 L12,11.011 L8.49497475,7.50502525 C8.22160774,7.23165825 7.77839226,7.23165825 7.50502525,7.50502525 L7.43121616,7.59179111 C7.23439192,7.86533687 7.25899495,8.24894444 7.50502525,8.49497475 L11.011,12 L7.50502525,15.5050253 C7.23165825,15.7783923 7.23165825,16.2216077 7.50502525,16.4949747 L7.59179111,16.5687838 C7.86533687,16.7656081 8.24894444,16.7410051 8.49497475,16.4949747 L12,12.988 L15.5050253,16.4949747 C15.7783923,16.7683418 16.2216077,16.7683418 16.4949747,16.4949747 L16.5687838,16.4082089 C16.7656081,16.1346631 16.7410051,15.7510556 16.4949747,15.5050253 L12.988,12 L16.4949747,8.49497475 C16.7683418,8.22160774 16.7683418,7.77839226 16.4949747,7.50502525 Z", fillRule: "evenodd" }) }));
|
|
7065
7315
|
}
|
|
7066
7316
|
|
|
7067
|
-
function
|
|
7068
|
-
return (jsx("svg", {
|
|
7317
|
+
function StrokeSearchIcon(props) {
|
|
7318
|
+
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.1044994,16.5738466 C6.53724234,16.5738466 3.63503896,13.6716658 3.63503896,10.1044364 C3.63503896,6.53739167 6.53724234,3.63521084 10.1044994,3.63521084 C13.6717564,3.63521084 16.5737752,6.53739167 16.5737752,10.1044364 C16.5737752,13.6716658 13.6717564,16.5738466 10.1044994,16.5738466 M21.7583512,20.6019769 L16.3655653,15.2505791 C17.5171805,13.8510793 18.2089988,12.0586047 18.2089988,10.1044364 C18.2089988,5.62851052 14.5804601,2 10.1044994,2 C5.62853871,2 2,5.62851052 2,10.1044364 C2,14.5805469 5.62853871,18.2090574 10.1044994,18.2090574 C12.0372712,18.2090574 13.8113014,17.5312728 15.2041671,16.4020009 L20.6065514,21.7628123 C20.7660314,21.9208144 20.9742413,22 21.1824513,22 C21.3925071,22 21.6029321,21.9191531 21.7627812,21.7581977 C22.0808183,21.4377636 22.0787879,20.9200114 21.7583512,20.6019769", fillRule: "evenodd" }) }));
|
|
7069
7319
|
}
|
|
7070
7320
|
|
|
7071
|
-
var styles$
|
|
7321
|
+
var styles$4 = {"form":"search-input-module-xCCzd","input-container":"search-input-module-okP8k","icon":"search-input-module-GZbhK","label":"search-input-module-vKCm4","reset-btn":"search-input-module-lYseZ","input":"search-input-module-bELFK"};
|
|
7072
7322
|
|
|
7073
7323
|
function SearchInput({ autocomplete, formRef, inputRef, }) {
|
|
7074
7324
|
const formProps = autocomplete?.getFormProps({
|
|
@@ -7078,7 +7328,7 @@ function SearchInput({ autocomplete, formRef, inputRef, }) {
|
|
|
7078
7328
|
inputElement: inputRef.current,
|
|
7079
7329
|
});
|
|
7080
7330
|
const labelProps = autocomplete?.getLabelProps({});
|
|
7081
|
-
return (jsx("form", { ref: formRef, className: styles$
|
|
7331
|
+
return (jsx("form", { ref: formRef, className: styles$4.form, ...formProps, children: jsxs("div", { className: styles$4['input-container'], children: [jsx("label", { className: styles$4.label, ...labelProps, children: jsx(StrokeSearchIcon, { className: clsx(styles$4['icon-search'], styles$4.icon) }) }), jsx("input", { ref: inputRef, ...inputProps, className: styles$4.input }), inputProps?.value && (jsx(IconButton, { className: styles$4['reset-btn'], color: "secondary", onPress: () => formRef.current?.reset(), type: "reset", children: jsx(SolidCloseIcon, {}) }))] }) }));
|
|
7082
7332
|
}
|
|
7083
7333
|
|
|
7084
7334
|
function ConnectedSearchInput() {
|
|
@@ -7086,6 +7336,27 @@ function ConnectedSearchInput() {
|
|
|
7086
7336
|
return (jsx(SearchInput, { autocomplete: autocomplete, formRef: formRef, inputRef: inputRef }));
|
|
7087
7337
|
}
|
|
7088
7338
|
|
|
7339
|
+
var styles$3 = {"content":"search-content-module-KIok6","left":"search-content-module-YRLIf","right":"search-content-module-qK5sg","section":"search-content-module-HLQ4O","title":"search-content-module-ywvOI","product-results-section":"search-content-module--V5hi","product-results":"search-content-module-bcFCH"};
|
|
7340
|
+
|
|
7341
|
+
function SectionContainer({ leftContent, rightContent, }) {
|
|
7342
|
+
return (jsxs("div", { className: styles$3['content'], children: [jsx("div", { className: styles$3['left'], children: leftContent }), jsx("div", { className: styles$3['right'], children: rightContent })] }));
|
|
7343
|
+
}
|
|
7344
|
+
|
|
7345
|
+
function NoResults() {
|
|
7346
|
+
const { state } = useAlgoliaSearch();
|
|
7347
|
+
return (jsx(Fragment, { children: jsx(SectionContainer, { leftContent: jsx("div", { className: styles$3['no-results-text'], children: jsxs("div", { className: styles$3.section, children: [jsxs("h3", { className: styles$3.title, children: ["No results for \"", state.query, "\"."] }), jsxs("div", { children: ["You could try:", jsxs("ul", { children: [jsx("li", { children: "Searching again using more general terms" }), jsx("li", { children: "Double check your spelling" }), jsx("li", { children: "Use fewer keywords" }), jsx("li", { children: "Exploring our products by category" })] })] })] }) }), rightContent: jsx(PopularCategoriesSection, {}) }) }));
|
|
7348
|
+
}
|
|
7349
|
+
function PopularCategoriesSection() {
|
|
7350
|
+
const { autocomplete, popularCategories: collection } = useAlgoliaSearch();
|
|
7351
|
+
if (!collection)
|
|
7352
|
+
return null;
|
|
7353
|
+
const { items, source } = collection;
|
|
7354
|
+
return (jsxs("div", { className: styles$3.section, children: [jsx("h3", { className: styles$3.title, children: "Explore by categories" }), jsx("div", { ...autocomplete.getListProps({ source }), children: items.map(item => (jsx("div", { ...autocomplete.getItemProps({
|
|
7355
|
+
item,
|
|
7356
|
+
source: source,
|
|
7357
|
+
}), children: item.label }, item.label))) })] }));
|
|
7358
|
+
}
|
|
7359
|
+
|
|
7089
7360
|
function Highlight({ attribute, hit, tagName = 'mark', }) {
|
|
7090
7361
|
return createElement$1(Fragment$1, {}, parseAlgoliaHitHighlight({ attribute, hit }).map(({ isHighlighted, value }, index) => {
|
|
7091
7362
|
if (isHighlighted) {
|
|
@@ -7095,25 +7366,15 @@ function Highlight({ attribute, hit, tagName = 'mark', }) {
|
|
|
7095
7366
|
}));
|
|
7096
7367
|
}
|
|
7097
7368
|
|
|
7098
|
-
function PanelContent() {
|
|
7099
|
-
const { hasResults, state } = useAlgoliaSearch();
|
|
7100
|
-
if (!state.query.length) {
|
|
7101
|
-
return jsx(NoSearch, {});
|
|
7102
|
-
}
|
|
7103
|
-
if (!hasResults) {
|
|
7104
|
-
return jsx(NoResults, {});
|
|
7105
|
-
}
|
|
7106
|
-
return jsx(WithResults, {});
|
|
7107
|
-
}
|
|
7108
7369
|
function NoSearch() {
|
|
7109
|
-
return (
|
|
7370
|
+
return (jsx(SectionContainer, { leftContent: jsxs("div", { children: [jsx(RecentSearchesSection, {}), jsx(PopularSearchesSection, {})] }), rightContent: jsx(QuickAccessSection, {}) }));
|
|
7110
7371
|
}
|
|
7111
7372
|
function PopularSearchesSection() {
|
|
7112
7373
|
const { autocomplete, popularSearches: collection } = useAlgoliaSearch();
|
|
7113
7374
|
if (!collection)
|
|
7114
7375
|
return null;
|
|
7115
7376
|
const { items, source } = collection;
|
|
7116
|
-
return (jsxs("div", { children: [jsx("h3", { children: "Popular searches" }), jsx("div", { ...autocomplete.getListProps({
|
|
7377
|
+
return (jsxs("div", { className: styles$3.section, children: [jsx("h3", { className: styles$3.title, children: "Popular searches" }), jsx("div", { ...autocomplete.getListProps({
|
|
7117
7378
|
source,
|
|
7118
7379
|
}), children: items.slice(0, 4).map(item => (jsx("div", { ...autocomplete.getItemProps({
|
|
7119
7380
|
item,
|
|
@@ -7126,7 +7387,7 @@ function RecentSearchesSection() {
|
|
|
7126
7387
|
return null;
|
|
7127
7388
|
}
|
|
7128
7389
|
const { items, source } = collection;
|
|
7129
|
-
return (jsxs("div", { children: [jsx("h3", { children: "Recent searches" }), jsx("div", { ...autocomplete.getListProps({ source }), children: items.map(item => (jsxs("div", { ...autocomplete.getItemProps({
|
|
7390
|
+
return (jsxs("div", { className: styles$3.section, children: [jsx("h3", { className: styles$3.title, children: "Recent searches" }), jsx("div", { ...autocomplete.getListProps({ source }), children: items.map(item => (jsxs("div", { ...autocomplete.getItemProps({
|
|
7130
7391
|
item,
|
|
7131
7392
|
source: source,
|
|
7132
7393
|
}), children: [jsx(Highlight, { attribute: "label", hit: item }), jsx("button", { onClick: e => {
|
|
@@ -7141,31 +7402,24 @@ function QuickAccessSection() {
|
|
|
7141
7402
|
if (!collection)
|
|
7142
7403
|
return;
|
|
7143
7404
|
const { items, source } = collection;
|
|
7144
|
-
return (jsxs("div", { children: [jsx("h3", { children: "Quick access" }), jsx("div", { ...autocomplete.getListProps({ source }), children: items.map(item => (jsx("div", { ...autocomplete.getItemProps({
|
|
7405
|
+
return (jsxs("div", { className: styles$3.section, children: [jsx("h3", { className: styles$3.title, children: "Quick access" }), jsx("div", { ...autocomplete.getListProps({ source }), children: items.map(item => (jsx("div", { ...autocomplete.getItemProps({
|
|
7145
7406
|
item,
|
|
7146
7407
|
source: source,
|
|
7147
7408
|
}), children: item.title }, item.id))) })] }));
|
|
7148
7409
|
}
|
|
7149
|
-
|
|
7150
|
-
|
|
7151
|
-
|
|
7152
|
-
}
|
|
7153
|
-
|
|
7154
|
-
const { autocomplete, popularCategories: collection } = useAlgoliaSearch();
|
|
7155
|
-
if (!collection)
|
|
7156
|
-
return null;
|
|
7157
|
-
const { items, source } = collection;
|
|
7158
|
-
return (jsxs("div", { children: [jsx("h3", { children: "Explore by categories" }), jsx("div", { ...autocomplete.getListProps({ source }), children: items.map(item => (jsx("div", { ...autocomplete.getItemProps({
|
|
7159
|
-
item,
|
|
7160
|
-
source: source,
|
|
7161
|
-
}), children: item.label }, item.label))) })] }));
|
|
7410
|
+
|
|
7411
|
+
var styles$2 = {"slide":"product-carousel-module-XVTB1"};
|
|
7412
|
+
|
|
7413
|
+
function ProductCarousel({ productCards }) {
|
|
7414
|
+
return (jsx(Carousel, { hasOverflow: false, navigationButtonsPosition: "center", slideClasses: styles$2.slide, slides: productCards, spaceBetween: 16 }));
|
|
7162
7415
|
}
|
|
7416
|
+
|
|
7163
7417
|
function WithResults() {
|
|
7164
|
-
return (
|
|
7418
|
+
return (jsx(SectionContainer, { leftContent: jsx(SuggestionsSection, {}), rightContent: jsx(ProductResultsSection, {}) }));
|
|
7165
7419
|
}
|
|
7166
7420
|
function SuggestionsSection() {
|
|
7167
7421
|
const { autocomplete, categories, querySuggestions, recentSearches } = useAlgoliaSearch();
|
|
7168
|
-
return (jsxs("div", { children: [jsx("h3", { children: "Suggestions" }), jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: '16px' }, children: [recentSearches && (jsx("div", { ...autocomplete.getListProps({
|
|
7422
|
+
return (jsxs("div", { className: styles$3['section'], children: [jsx("h3", { className: styles$3.title, children: "Suggestions" }), jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: '16px' }, children: [recentSearches && (jsx("div", { ...autocomplete.getListProps({
|
|
7169
7423
|
source: recentSearches.source,
|
|
7170
7424
|
}), children: recentSearches.items.slice(0, 1).map(item => (jsx("div", { ...autocomplete.getItemProps({
|
|
7171
7425
|
item,
|
|
@@ -7184,24 +7438,25 @@ function SuggestionsSection() {
|
|
|
7184
7438
|
}
|
|
7185
7439
|
function ProductResultsSection() {
|
|
7186
7440
|
const { autocomplete, products: collection } = useAlgoliaSearch();
|
|
7187
|
-
const [quantity, setQuantity] = useState(0);
|
|
7188
7441
|
if (!collection)
|
|
7189
7442
|
return null;
|
|
7190
7443
|
const { items, source } = collection;
|
|
7191
|
-
return (jsxs("div", { children: [jsx("h3", { children: "Products" }), jsx("div", {
|
|
7192
|
-
|
|
7193
|
-
|
|
7194
|
-
|
|
7195
|
-
|
|
7196
|
-
|
|
7197
|
-
|
|
7198
|
-
|
|
7199
|
-
|
|
7200
|
-
|
|
7201
|
-
|
|
7202
|
-
|
|
7203
|
-
|
|
7204
|
-
|
|
7444
|
+
return (jsxs("div", { className: clsx(styles$3['section'], styles$3['product-results-section']), children: [jsx("h3", { className: styles$3['title'], children: "Products" }), jsx("div", { className: styles$3['product-results'], ...autocomplete.getListProps({ source }), children: jsx(ProductCarousel, { productCards: items.map(product => (jsx(ConnectedProductCard, { href: product.storefrontSlug, image: {
|
|
7445
|
+
alt: product.name,
|
|
7446
|
+
fit: 'contain',
|
|
7447
|
+
src: product.images?.find(image => image.quality === 'medium')
|
|
7448
|
+
?.url || '',
|
|
7449
|
+
title: product.name,
|
|
7450
|
+
}, price: {
|
|
7451
|
+
isVatIncluded: product.isVatIncluded,
|
|
7452
|
+
originalPrice: product.originalPrice,
|
|
7453
|
+
price: product.price,
|
|
7454
|
+
}, productId: "", sku: product.id, tags: product.labels, title: product.name }, product.id))) }) })] }));
|
|
7455
|
+
}
|
|
7456
|
+
|
|
7457
|
+
function PanelContent() {
|
|
7458
|
+
const { hasResults, state } = useAlgoliaSearch();
|
|
7459
|
+
return (jsx(Fragment, { children: !state.query.length ? (jsx(NoSearch, {})) : hasResults ? (jsx(WithResults, {})) : (jsx(NoResults, {})) }));
|
|
7205
7460
|
}
|
|
7206
7461
|
|
|
7207
7462
|
var styles$1 = {"search-result-panel":"search-result-panel-module-KBrc9","entering":"search-result-panel-module-Us8rb","entered":"search-result-panel-module-7UxfH","exiting":"search-result-panel-module-3xEiy","exited":"search-result-panel-module-xSeC-"};
|
|
@@ -7240,7 +7495,7 @@ function SearchRoot() {
|
|
|
7240
7495
|
* https://codesandbox.io/p/sandbox/github/algolia/autocomplete/tree/next/examples/two-column-layout
|
|
7241
7496
|
*/
|
|
7242
7497
|
function GlobalSearch({ children, searchClient }) {
|
|
7243
|
-
return (jsx(GlobalSearchContainer, { children: jsx(AlgoliaSearchProvider, { searchClient: searchClient, children: jsxs("div", { className: styles$
|
|
7498
|
+
return (jsx(GlobalSearchContainer, { children: jsx(AlgoliaSearchProvider, { searchClient: searchClient, children: jsxs("div", { className: styles$5['search-wrapper'], children: [children, jsx("div", { className: styles$5['search-root'], children: jsx(SearchRoot, {}) })] }) }) }));
|
|
7244
7499
|
}
|
|
7245
7500
|
|
|
7246
|
-
export { Accordion, AddProductToCurrentCartError, AddToCartButton, AlgoliaCategories, AlgoliaFilterPanel, AlgoliaFilterSection, AlgoliaMultiSelectFilterSection, AlgoliaPagination, AlgoliaProvider, AlgoliaResultsCount, AlgoliaSortBy, AvailabilityMessageType, BadgeImagePlacementValues, BadgeStyleValues, BadgeTypeValues, Breadcrumb, Button,
|
|
7501
|
+
export { Accordion, AddProductToCurrentCartError, AddToCartButton, AlgoliaCategories, AlgoliaFilterPanel, AlgoliaFilterSection, AlgoliaMultiSelectFilterSection, AlgoliaPagination, AlgoliaProvider, AlgoliaResultsCount, AlgoliaSortBy, AvailabilityMessageType, BadgeImagePlacementValues, BadgeStyleValues, BadgeTypeValues, Breadcrumb, Button, CartProvider, CategoryCarousel, Checkbox, ColorCheckbox, ConnectedAddToCartButton, CurrencyPositioningType, DeleteCartLineByIdError, FavoriteButton, FavoriteProvider, FetchCurrentCartLinesError, FetchProductListingPageDataError, FormattedMessage, GlobalSearch, GlobalSearchContainer, GlobalSearchDisclosureContext, GlobalStateProvider, GlobalStateProviderContext, IconButton, Image, IntlProvider, LinkButton, LoadingOverlay, MultiSelect, NumberField, Page, PageContainer, ProductCard, ProductListingPage, ProductOverviewGrid, ProductPrice, ProductSku, ProgressCircle, RouteButton, RouteLink, RouteProvider, Select, ShowAll, Sidebar, SidebarDetectBreakpoint, SidebarProvider, TextField, UpdateCartLineByIdError, VariantDisplayTypeValues, breakpoints$1 as breakpoints, createSonicSearchClient, useAddProductToCurrentCart, useAlgolia, useAlgoliaSearch, useBreakpoint, useCartEvents, useDebouncedCallback, useDeleteCartLineById, useDisclosure, useFavorite, useFetchCurrentCartLines, useFetchProductListingPageData, useFormattedMessage, useGlobalSearchDisclosure, useGlobalState, useNavigate, useScrollLock, useUpdateCartLineById };
|