@faststore/core 2.0.72-alpha.0 → 2.0.73-alpha.0
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/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +23 -23
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/config.json +3 -3
- package/.next/cache/eslint/.cache_1gneedd +1 -1
- package/.next/cache/next-server.js.nft.json +1 -1
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.json +1 -1
- package/.next/react-loadable-manifest.json +6 -6
- package/.next/routes-manifest.json +1 -1
- package/.next/server/chunks/312.js +140 -101
- package/.next/server/chunks/{528.js → 317.js} +8 -8
- package/.next/server/chunks/371.js +14 -27
- package/.next/server/chunks/{352.js → 377.js} +3 -79
- package/.next/server/chunks/650.js +3 -3
- package/.next/server/chunks/664.js +124 -0
- package/.next/server/chunks/953.js +36 -50
- package/.next/server/chunks/98.js +229 -87
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/404.js.nft.json +1 -1
- package/.next/server/pages/500.js.nft.json +1 -1
- package/.next/server/pages/[...slug].js +2 -2
- package/.next/server/pages/[...slug].js.nft.json +1 -1
- package/.next/server/pages/[slug]/p.js +62 -65
- package/.next/server/pages/[slug]/p.js.nft.json +1 -1
- package/.next/server/pages/_app.js +14 -42
- package/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/server/pages/api/graphql.js.nft.json +1 -1
- package/.next/server/pages/en-US/404.html +2 -2
- package/.next/server/pages/en-US/500.html +2 -2
- package/.next/server/pages/en-US/account.html +2 -2
- package/.next/server/pages/en-US/checkout.html +2 -2
- package/.next/server/pages/en-US/login.html +2 -2
- package/.next/server/pages/en-US/s.html +2 -2
- package/.next/server/pages/en-US.html +3 -3
- package/.next/server/pages/en-US.json +1 -1
- package/.next/server/pages/index.js +2 -2
- package/.next/server/pages/index.js.nft.json +1 -1
- package/.next/server/pages/s.js.nft.json +1 -1
- package/.next/static/{G3-BZ2q8Yidjo2K-piTay → 3KDvXDJ5wh2RiI2nHY3eo}/_buildManifest.js +1 -1
- package/.next/static/chunks/337-4b719ca7a86d8d8c.js +1 -0
- package/.next/static/chunks/650.807852d1c36bfe44.js +1 -0
- package/.next/static/chunks/791.e9be2b77d132c1b1.js +1 -0
- package/.next/static/chunks/953.77a48c854f628dcf.js +1 -0
- package/.next/static/chunks/pages/{[...slug]-320aee38665be1f9.js → [...slug]-9443b18a60d89746.js} +1 -1
- package/.next/static/chunks/pages/[slug]/p-cb8ef12f6449cf26.js +1 -0
- package/.next/static/chunks/pages/_app-286bcfa03a5e17a7.js +1 -0
- package/.next/static/chunks/pages/{index-d6f91f5ff8ab8b48.js → index-6717326cc207d674.js} +1 -1
- package/.next/static/chunks/webpack-8f397ae160440a8e.js +1 -0
- package/.next/static/css/430b8cafbf7c23c1.css +1 -0
- package/.next/static/css/9dd1d1084d254c66.css +1 -0
- package/.next/static/css/b2f16bd4b93e0aca.css +1 -0
- package/.next/static/css/d78f4c5305f398ac.css +1 -0
- package/.next/static/css/e1c24beb73906eed.css +1 -0
- package/.next/static/css/{1bc30e7e0de1217d.css → e63697a078fd522e.css} +1 -1
- package/.next/trace +64 -65
- package/.turbo/turbo-build.log +9 -9
- package/CHANGELOG.md +6 -0
- package/package.json +4 -4
- package/src/components/cart/CartSidebar/CartSidebar.stories.mdx +1 -15
- package/src/components/cart/CartSidebar/CartSidebar.tsx +11 -14
- package/src/components/cart/CartSidebar/cart-sidebar.module.scss +2 -16
- package/src/components/common/Navbar/NavbarSlider.tsx +8 -14
- package/src/components/common/Navbar/navbar-slider.module.scss +2 -9
- package/src/components/regionalization/RegionalizationModal/RegionalizationModalContent.tsx +1 -1
- package/src/components/search/Filter/FilterSlider.stories.mdx +0 -9
- package/src/components/search/Filter/FilterSlider.tsx +18 -20
- package/src/components/search/Filter/filter-slider.module.scss +2 -12
- package/src/components/search/SearchDropdown/SearchDropdown.tsx +2 -2
- package/src/components/search/SearchHistory/SearchHistory.tsx +17 -35
- package/src/components/search/SearchInput/SearchInput.stories.mdx +0 -4
- package/src/components/search/SearchInput/search-input.module.scss +9 -3
- package/src/components/search/SearchTop/SearchTop.tsx +32 -59
- package/src/components/search/search.module.scss +0 -14
- package/src/components/sections/Hero/Hero.tsx +4 -4
- package/src/components/sections/ProductDetails/ProductDetails.tsx +4 -5
- package/src/components/sections/ProductDetails/product-details.module.scss +1 -1
- package/src/components/ui/Gift/Gift.tsx +10 -33
- package/src/components/ui/ShippingSimulation/ShippingSimulation.tsx +2 -2
- package/.next/server/chunks/731.js +0 -282
- package/.next/static/chunks/158.b4898013c4a4f10c.js +0 -1
- package/.next/static/chunks/337-12ae3c3ff71e4dcf.js +0 -1
- package/.next/static/chunks/650.32d18858075fbe98.js +0 -1
- package/.next/static/chunks/953.b6387969c2dcdcae.js +0 -1
- package/.next/static/chunks/pages/[slug]/p-d64952a99f04e24d.js +0 -1
- package/.next/static/chunks/pages/_app-8bf35fcba4db8198.js +0 -1
- package/.next/static/chunks/webpack-1bf4acba8ca90a1e.js +0 -1
- package/.next/static/css/4d4cbc524ba58b0a.css +0 -1
- package/.next/static/css/5f6541bfaaa52b08.css +0 -1
- package/.next/static/css/8e980d3191396e67.css +0 -1
- package/.next/static/css/e8f44fcf61ab2e4a.css +0 -1
- package/.next/static/css/f03ffa52b8ad3e4c.css +0 -1
- package/src/components/ui/Price/Price.stories.mdx +0 -194
- package/src/components/ui/Price/Price.tsx +0 -31
- package/src/components/ui/Price/index.ts +0 -1
- package/src/components/ui/Price/price.module.scss +0 -27
- package/src/components/ui/SlideOver/SlideOver.stories.mdx +0 -283
- package/src/components/ui/SlideOver/SlideOver.tsx +0 -59
- package/src/components/ui/SlideOver/index.ts +0 -1
- package/src/components/ui/SlideOver/slide-over.module.scss +0 -63
- /package/.next/static/{G3-BZ2q8Yidjo2K-piTay → 3KDvXDJ5wh2RiI2nHY3eo}/_ssgManifest.js +0 -0
|
@@ -8,11 +8,6 @@
|
|
|
8
8
|
--fs-search-title-size : var(--fs-text-size-lead);
|
|
9
9
|
--fs-search-title-line-height : 1.5;
|
|
10
10
|
|
|
11
|
-
// Section
|
|
12
|
-
--fs-search-section-padding : var(--fs-spacing-1) 0;
|
|
13
|
-
--fs-search-section-bkg-color : var(--fs-color-neutral-0);
|
|
14
|
-
--fs-search-section-border-bottom : var(--fs-border-width) solid var(--fs-border-color-light);
|
|
15
|
-
|
|
16
11
|
// Link
|
|
17
12
|
--fs-search-item-link-color : var(--fs-color-text-light);
|
|
18
13
|
--fs-search-item-link-padding-right : var(--fs-spacing-3);
|
|
@@ -43,15 +38,6 @@
|
|
|
43
38
|
line-height: var(--fs-search-title-line-height);
|
|
44
39
|
}
|
|
45
40
|
|
|
46
|
-
[data-fs-search-section] {
|
|
47
|
-
padding: var(--fs-search-section-padding);
|
|
48
|
-
border-bottom: var(--fs-search-section-border-bottom);
|
|
49
|
-
|
|
50
|
-
&:last-child {
|
|
51
|
-
border-bottom-width: 0;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
41
|
[data-fs-search-item-link] {
|
|
56
42
|
color: var(--fs-search-item-link-color);
|
|
57
43
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type {
|
|
2
|
-
|
|
2
|
+
HeroHeaderProps as UIHeroHeaderProps,
|
|
3
3
|
HeroImageProps as UIHeroImageProps,
|
|
4
4
|
HeroProps as UIHeroProps,
|
|
5
5
|
} from '@faststore/ui'
|
|
6
6
|
import {
|
|
7
7
|
Hero as UIHero,
|
|
8
|
-
|
|
8
|
+
HeroHeader as UIHeroHeader,
|
|
9
9
|
HeroImage as UIHeroImage,
|
|
10
10
|
} from '@faststore/ui'
|
|
11
11
|
|
|
@@ -14,7 +14,7 @@ import { Image } from 'src/components/ui/Image'
|
|
|
14
14
|
import Section from '../Section'
|
|
15
15
|
|
|
16
16
|
export type HeroProps = UIHeroProps &
|
|
17
|
-
|
|
17
|
+
UIHeroHeaderProps &
|
|
18
18
|
UIHeroImageProps & {
|
|
19
19
|
/**
|
|
20
20
|
* Specifies the image URL.
|
|
@@ -50,7 +50,7 @@ const Hero = ({
|
|
|
50
50
|
sizes="(max-width: 768px) 70vw, 50vw"
|
|
51
51
|
/>
|
|
52
52
|
</UIHeroImage>
|
|
53
|
-
<
|
|
53
|
+
<UIHeroHeader
|
|
54
54
|
title={title}
|
|
55
55
|
subtitle={subtitle}
|
|
56
56
|
link={link}
|
|
@@ -7,13 +7,13 @@ import {
|
|
|
7
7
|
DiscountBadge as UIDiscountBadge,
|
|
8
8
|
QuantitySelector as UIQuantitySelector,
|
|
9
9
|
ProductTitle as UIProductTitle,
|
|
10
|
+
Price as UIPrice,
|
|
10
11
|
} from '@faststore/ui'
|
|
11
12
|
|
|
12
13
|
import type { ProductDetailsFragment_ProductFragment } from '@generated/graphql'
|
|
13
14
|
import OutOfStock from 'src/components/product/OutOfStock'
|
|
14
15
|
import Breadcrumb from 'src/components/ui/Breadcrumb'
|
|
15
16
|
import { ImageGallery } from 'src/components/ui/ImageGallery'
|
|
16
|
-
import Price from 'src/components/ui/Price'
|
|
17
17
|
import ShippingSimulation from 'src/components/ui/ShippingSimulation'
|
|
18
18
|
import Selectors from 'src/components/ui/SkuSelector'
|
|
19
19
|
import type { AnalyticsItem } from 'src/sdk/analytics/types'
|
|
@@ -144,22 +144,21 @@ function ProductDetails({ context: staleProduct }: Props) {
|
|
|
144
144
|
>
|
|
145
145
|
<section data-fs-product-details-values>
|
|
146
146
|
<div data-fs-product-details-prices>
|
|
147
|
-
<
|
|
147
|
+
<UIPrice
|
|
148
148
|
value={listPrice}
|
|
149
149
|
formatter={useFormattedPrice}
|
|
150
150
|
testId="list-price"
|
|
151
151
|
data-value={listPrice}
|
|
152
152
|
variant="listing"
|
|
153
|
-
classes="text__legend"
|
|
154
153
|
SRText="Original price:"
|
|
155
154
|
/>
|
|
156
|
-
<
|
|
155
|
+
<UIPrice
|
|
157
156
|
value={lowPrice}
|
|
158
157
|
formatter={useFormattedPrice}
|
|
159
158
|
testId="price"
|
|
160
159
|
data-value={lowPrice}
|
|
161
160
|
variant="spot"
|
|
162
|
-
|
|
161
|
+
className="text__lead"
|
|
163
162
|
SRText="Sale Price:"
|
|
164
163
|
/>
|
|
165
164
|
</div>
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import type { GiftProps } from '@faststore/ui'
|
|
2
2
|
import {
|
|
3
|
-
Badge as UIBadge,
|
|
4
3
|
Gift as UIGift,
|
|
5
4
|
GiftContent as UIGiftContent,
|
|
6
5
|
GiftImage as UIGiftImage,
|
|
6
|
+
Price as UIPrice,
|
|
7
7
|
} from '@faststore/ui'
|
|
8
8
|
|
|
9
9
|
import Icon from 'src/components/ui/Icon'
|
|
10
10
|
import { Image } from 'src/components/ui/Image'
|
|
11
|
-
import Price from 'src/components/ui/Price'
|
|
12
11
|
import { useFormattedPrice } from 'src/sdk/product/useFormattedPrice'
|
|
13
12
|
import type { CartItem as ICartItem } from 'src/sdk/cart'
|
|
14
13
|
|
|
@@ -17,22 +16,9 @@ export type Props = GiftProps & {
|
|
|
17
16
|
* Product to be showed as `Gift`.
|
|
18
17
|
*/
|
|
19
18
|
item: ICartItem
|
|
20
|
-
/**
|
|
21
|
-
* Additional message in the title
|
|
22
|
-
*/
|
|
23
|
-
titleMessage?: string
|
|
24
|
-
/**
|
|
25
|
-
* Badge's label
|
|
26
|
-
*/
|
|
27
|
-
badgeLabel?: string
|
|
28
19
|
}
|
|
29
20
|
|
|
30
|
-
function Gift({
|
|
31
|
-
item,
|
|
32
|
-
titleMessage = 'Get a',
|
|
33
|
-
badgeLabel = 'Free',
|
|
34
|
-
...otherProps
|
|
35
|
-
}: Props) {
|
|
21
|
+
function Gift({ item, ...otherProps }: Props) {
|
|
36
22
|
return (
|
|
37
23
|
<UIGift icon={<Icon name="Tag" width={18} height={18} />} {...otherProps}>
|
|
38
24
|
<UIGiftImage>
|
|
@@ -43,23 +29,14 @@ function Gift({
|
|
|
43
29
|
height={89}
|
|
44
30
|
/>
|
|
45
31
|
</UIGiftImage>
|
|
46
|
-
<UIGiftContent
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
testId="list-price"
|
|
55
|
-
data-value={item.price}
|
|
56
|
-
variant="listing"
|
|
57
|
-
classes="text__legend"
|
|
58
|
-
SRText="Original price:"
|
|
59
|
-
/>
|
|
60
|
-
<UIBadge>{badgeLabel}</UIBadge>
|
|
61
|
-
</span>
|
|
62
|
-
</UIGiftContent>
|
|
32
|
+
<UIGiftContent
|
|
33
|
+
productName={item.itemOffered.isVariantOf.name}
|
|
34
|
+
price={{
|
|
35
|
+
value: item.price,
|
|
36
|
+
listPrice: item.listPrice,
|
|
37
|
+
formatter: useFormattedPrice,
|
|
38
|
+
}}
|
|
39
|
+
/>
|
|
63
40
|
</UIGift>
|
|
64
41
|
)
|
|
65
42
|
}
|
|
@@ -5,10 +5,10 @@ import {
|
|
|
5
5
|
TableCell,
|
|
6
6
|
TableRow,
|
|
7
7
|
InputField as UIInputField,
|
|
8
|
+
Price as UIPrice,
|
|
8
9
|
} from '@faststore/ui'
|
|
9
10
|
import type { HTMLAttributes } from 'react'
|
|
10
11
|
|
|
11
|
-
import Price from 'src/components/ui/Price'
|
|
12
12
|
import { usePriceFormatter } from 'src/sdk/product/useFormattedPrice'
|
|
13
13
|
|
|
14
14
|
import Icon from '../Icon'
|
|
@@ -95,7 +95,7 @@ function ShippingSimulation({
|
|
|
95
95
|
<TableCell>{option.localizedEstimates}</TableCell>
|
|
96
96
|
<TableCell align="right">
|
|
97
97
|
{option.price && (
|
|
98
|
-
<
|
|
98
|
+
<UIPrice
|
|
99
99
|
formatter={formatter}
|
|
100
100
|
value={option.price}
|
|
101
101
|
SRText="price"
|
|
@@ -1,282 +0,0 @@
|
|
|
1
|
-
exports.id = 731;
|
|
2
|
-
exports.ids = [731];
|
|
3
|
-
exports.modules = {
|
|
4
|
-
|
|
5
|
-
/***/ 6074:
|
|
6
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
7
|
-
|
|
8
|
-
"use strict";
|
|
9
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
10
|
-
/* harmony export */ "b": () => (/* binding */ useFadeEffect)
|
|
11
|
-
/* harmony export */ });
|
|
12
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
|
|
13
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
14
|
-
|
|
15
|
-
const useFadeEffect = () => {
|
|
16
|
-
const [fade, setFade] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('out');
|
|
17
|
-
const fadeOut = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => setFade('out'), []);
|
|
18
|
-
const fadeIn = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => setFade('in'), []);
|
|
19
|
-
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
|
|
20
|
-
fadeIn();
|
|
21
|
-
return () => {
|
|
22
|
-
fadeOut();
|
|
23
|
-
};
|
|
24
|
-
}, [fadeIn, fadeOut]);
|
|
25
|
-
return {
|
|
26
|
-
fade,
|
|
27
|
-
fadeIn,
|
|
28
|
-
fadeOut,
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
//# sourceMappingURL=useFadeEffect.js.map
|
|
32
|
-
|
|
33
|
-
/***/ }),
|
|
34
|
-
|
|
35
|
-
/***/ 9600:
|
|
36
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
37
|
-
|
|
38
|
-
"use strict";
|
|
39
|
-
|
|
40
|
-
// EXPORTS
|
|
41
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
42
|
-
"Z": () => (/* binding */ Modal_Modal)
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
// EXTERNAL MODULE: external "react"
|
|
46
|
-
var external_react_ = __webpack_require__(6689);
|
|
47
|
-
var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
|
|
48
|
-
// EXTERNAL MODULE: external "react-dom"
|
|
49
|
-
var external_react_dom_ = __webpack_require__(6405);
|
|
50
|
-
;// CONCATENATED MODULE: ../components/dist/atoms/Overlay/Overlay.js
|
|
51
|
-
|
|
52
|
-
const Overlay = (0,external_react_.forwardRef)(function Overlay({ testId = 'fs-overlay', ...otherProps }, ref) {
|
|
53
|
-
return (external_react_default().createElement("div", { ref: ref, "data-fs-overlay": true, role: "presentation", "data-testid": testId, ...otherProps }));
|
|
54
|
-
});
|
|
55
|
-
/* harmony default export */ const Overlay_Overlay = (Overlay);
|
|
56
|
-
//# sourceMappingURL=Overlay.js.map
|
|
57
|
-
// EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
|
|
58
|
-
var UIProvider = __webpack_require__(395);
|
|
59
|
-
// EXTERNAL MODULE: ../components/dist/hooks/useFadeEffect.js
|
|
60
|
-
var useFadeEffect = __webpack_require__(6074);
|
|
61
|
-
// EXTERNAL MODULE: external "tabbable"
|
|
62
|
-
var external_tabbable_ = __webpack_require__(3823);
|
|
63
|
-
;// CONCATENATED MODULE: ../components/dist/hooks/useTrapFocus.js
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
/*
|
|
67
|
-
* Element that will maintain the focus inside trapFocusRef, focus the first element,
|
|
68
|
-
* and focus back on the element that was in focus when useTrapFocus was triggered.
|
|
69
|
-
*
|
|
70
|
-
* Inspired by Reakit useTrapFocus https://github.com/reakit/reakit/blob/a211d94da9f3b683182568a56479b91afb1b85ae/packages/reakit/src/Dialog/__utils/useFocusTrap.ts
|
|
71
|
-
*/
|
|
72
|
-
const useTrapFocus = ({ trapFocusRef, beforeElementRef, afterElementRef, }) => {
|
|
73
|
-
const tabbableNodesRef = (0,external_react_.useRef)();
|
|
74
|
-
const nodeToRestoreRef = (0,external_react_.useRef)(document.hasFocus() ? document.activeElement : null);
|
|
75
|
-
// Focus back on the element that was focused when useTrapFocus is triggered.
|
|
76
|
-
(0,external_react_.useEffect)(() => {
|
|
77
|
-
const nodeToRestore = nodeToRestoreRef.current;
|
|
78
|
-
return () => {
|
|
79
|
-
nodeToRestore?.focus();
|
|
80
|
-
};
|
|
81
|
-
}, [nodeToRestoreRef]);
|
|
82
|
-
// Set focus on first tabbable element
|
|
83
|
-
(0,external_react_.useEffect)(() => {
|
|
84
|
-
if (!trapFocusRef.current) {
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
if (!tabbableNodesRef.current) {
|
|
88
|
-
tabbableNodesRef.current = (0,external_tabbable_.tabbable)(trapFocusRef.current);
|
|
89
|
-
}
|
|
90
|
-
const [firstTabbable] = tabbableNodesRef.current;
|
|
91
|
-
if (!firstTabbable) {
|
|
92
|
-
trapFocusRef.current.focus();
|
|
93
|
-
return;
|
|
94
|
-
}
|
|
95
|
-
firstTabbable.focus();
|
|
96
|
-
}, [trapFocusRef]);
|
|
97
|
-
// Handle loop focus. Set keydown and focusin event listeners
|
|
98
|
-
(0,external_react_.useEffect)(() => {
|
|
99
|
-
if (!trapFocusRef.current ||
|
|
100
|
-
!beforeElementRef.current ||
|
|
101
|
-
!afterElementRef.current) {
|
|
102
|
-
return;
|
|
103
|
-
}
|
|
104
|
-
const beforeElement = beforeElementRef.current;
|
|
105
|
-
const afterElement = afterElementRef.current;
|
|
106
|
-
const trapFocus = trapFocusRef.current;
|
|
107
|
-
const handleLoopFocus = (nativeEvent) => {
|
|
108
|
-
if (!document.hasFocus()) {
|
|
109
|
-
return;
|
|
110
|
-
}
|
|
111
|
-
tabbableNodesRef.current = (0,external_tabbable_.tabbable)(trapFocusRef.current);
|
|
112
|
-
if (!tabbableNodesRef.current.length) {
|
|
113
|
-
trapFocus.focus();
|
|
114
|
-
}
|
|
115
|
-
/*
|
|
116
|
-
* Handle loop focus from beforeElementRef. This node can only be focused if the user press shift tab.
|
|
117
|
-
* It will focus the last element of the trapFocusRef.
|
|
118
|
-
*/
|
|
119
|
-
if (nativeEvent.target === beforeElement) {
|
|
120
|
-
tabbableNodesRef.current[tabbableNodesRef.current.length - 1]?.focus();
|
|
121
|
-
}
|
|
122
|
-
/*
|
|
123
|
-
* Handle loop focus from afterElementRef. This node can only be focused if the user press tab.
|
|
124
|
-
* It will focus the first element of the trapFocusRef.
|
|
125
|
-
*/
|
|
126
|
-
if (nativeEvent.target === afterElement) {
|
|
127
|
-
tabbableNodesRef.current[0]?.focus();
|
|
128
|
-
}
|
|
129
|
-
};
|
|
130
|
-
beforeElement?.addEventListener('focusin', handleLoopFocus);
|
|
131
|
-
afterElement?.addEventListener('focusin', handleLoopFocus);
|
|
132
|
-
return () => {
|
|
133
|
-
beforeElement?.removeEventListener('focusin', handleLoopFocus);
|
|
134
|
-
afterElement?.removeEventListener('focusin', handleLoopFocus);
|
|
135
|
-
};
|
|
136
|
-
}, [tabbableNodesRef, afterElementRef, beforeElementRef, trapFocusRef]);
|
|
137
|
-
};
|
|
138
|
-
//# sourceMappingURL=useTrapFocus.js.map
|
|
139
|
-
;// CONCATENATED MODULE: ../components/dist/molecules/Modal/ModalContent.js
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
const ModalContentPure = ({ beforeElementRef, trapFocusRef, afterElementRef, testId = 'store-modal-content', children, ...otherProps }) => {
|
|
143
|
-
return (external_react_default().createElement((external_react_default()).Fragment, null,
|
|
144
|
-
external_react_default().createElement("div", { ref: beforeElementRef, "data-testid": "beforeElement", tabIndex: 0, "aria-hidden": "true" }),
|
|
145
|
-
external_react_default().createElement("div", { "data-fs-modal-content": true, "data-testid": testId, ref: trapFocusRef, "aria-modal": "true", role: "dialog", tabIndex: -1, ...otherProps }, children),
|
|
146
|
-
external_react_default().createElement("div", { ref: afterElementRef, "data-testid": "afterElement", tabIndex: 0, "aria-hidden": "true" })));
|
|
147
|
-
};
|
|
148
|
-
const ModalContent = ({ children, ...otherProps }) => {
|
|
149
|
-
const trapFocusRef = (0,external_react_.useRef)(null);
|
|
150
|
-
const beforeElementRef = (0,external_react_.useRef)(null);
|
|
151
|
-
const afterElementRef = (0,external_react_.useRef)(null);
|
|
152
|
-
useTrapFocus({
|
|
153
|
-
beforeElementRef,
|
|
154
|
-
trapFocusRef,
|
|
155
|
-
afterElementRef,
|
|
156
|
-
});
|
|
157
|
-
return (external_react_default().createElement(ModalContentPure, { ...otherProps, trapFocusRef: trapFocusRef, beforeElementRef: beforeElementRef, afterElementRef: afterElementRef, onClick: (event) => {
|
|
158
|
-
event.stopPropagation();
|
|
159
|
-
} }, children));
|
|
160
|
-
};
|
|
161
|
-
/* harmony default export */ const Modal_ModalContent = (ModalContent);
|
|
162
|
-
//# sourceMappingURL=ModalContent.js.map
|
|
163
|
-
;// CONCATENATED MODULE: ../components/dist/molecules/Modal/Modal.js
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
/*
|
|
170
|
-
* This component is based on @reach/dialog.
|
|
171
|
-
* https://github.com/reach/reach-ui/blob/main/packages/dialog/src/index.tsx
|
|
172
|
-
* https://reach.tech/dialog
|
|
173
|
-
*/
|
|
174
|
-
const Modal = ({ children, testId = 'fs-modal', isOpen = true, onDismiss, ...otherProps }) => {
|
|
175
|
-
const { closeModal } = (0,UIProvider/* useUI */.l)();
|
|
176
|
-
const { fade, fadeOut, fadeIn } = (0,useFadeEffect/* useFadeEffect */.b)();
|
|
177
|
-
const handleBackdropClick = (event) => {
|
|
178
|
-
if (event.defaultPrevented) {
|
|
179
|
-
return;
|
|
180
|
-
}
|
|
181
|
-
event.stopPropagation();
|
|
182
|
-
fadeOut?.();
|
|
183
|
-
onDismiss?.();
|
|
184
|
-
};
|
|
185
|
-
const handleBackdropKeyDown = (event) => {
|
|
186
|
-
if (event.key !== 'Escape' || event.defaultPrevented) {
|
|
187
|
-
return;
|
|
188
|
-
}
|
|
189
|
-
event.stopPropagation();
|
|
190
|
-
fadeOut?.();
|
|
191
|
-
onDismiss?.();
|
|
192
|
-
};
|
|
193
|
-
return isOpen
|
|
194
|
-
? (0,external_react_dom_.createPortal)(external_react_default().createElement(Overlay_Overlay, { onClick: handleBackdropClick, onKeyDown: handleBackdropKeyDown },
|
|
195
|
-
external_react_default().createElement(Modal_ModalContent, { onTransitionEnd: () => fade === 'out' && closeModal(), "data-fs-modal": true, "data-fs-modal-state": fade, testId: testId, ...otherProps }, typeof children === 'function'
|
|
196
|
-
? children({ fade, fadeOut, fadeIn })
|
|
197
|
-
: children)), document.body)
|
|
198
|
-
: null;
|
|
199
|
-
};
|
|
200
|
-
/* harmony default export */ const Modal_Modal = (Modal);
|
|
201
|
-
//# sourceMappingURL=Modal.js.map
|
|
202
|
-
|
|
203
|
-
/***/ }),
|
|
204
|
-
|
|
205
|
-
/***/ 5731:
|
|
206
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
207
|
-
|
|
208
|
-
"use strict";
|
|
209
|
-
|
|
210
|
-
// EXPORTS
|
|
211
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
212
|
-
"Z": () => (/* reexport */ SlideOver_SlideOver)
|
|
213
|
-
});
|
|
214
|
-
|
|
215
|
-
// EXTERNAL MODULE: ../components/dist/molecules/Modal/Modal.js + 3 modules
|
|
216
|
-
var Modal = __webpack_require__(9600);
|
|
217
|
-
// EXTERNAL MODULE: ./src/components/ui/SlideOver/slide-over.module.scss
|
|
218
|
-
var slide_over_module = __webpack_require__(2436);
|
|
219
|
-
var slide_over_module_default = /*#__PURE__*/__webpack_require__.n(slide_over_module);
|
|
220
|
-
// EXTERNAL MODULE: external "react/jsx-runtime"
|
|
221
|
-
var jsx_runtime_ = __webpack_require__(997);
|
|
222
|
-
;// CONCATENATED MODULE: ./src/components/ui/SlideOver/SlideOver.tsx
|
|
223
|
-
const _excluded = ["isOpen", "direction", "size", "fade", "children", "className"];
|
|
224
|
-
|
|
225
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
226
|
-
|
|
227
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
228
|
-
|
|
229
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
230
|
-
|
|
231
|
-
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
232
|
-
|
|
233
|
-
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
function SlideOver(_ref) {
|
|
240
|
-
let {
|
|
241
|
-
isOpen,
|
|
242
|
-
direction = 'leftSide',
|
|
243
|
-
size = 'full',
|
|
244
|
-
fade = 'out',
|
|
245
|
-
children,
|
|
246
|
-
className
|
|
247
|
-
} = _ref,
|
|
248
|
-
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
249
|
-
|
|
250
|
-
return /*#__PURE__*/jsx_runtime_.jsx(Modal/* default */.Z, _objectSpread(_objectSpread({
|
|
251
|
-
className: `${(slide_over_module_default()).fsSlideOver} ${className}`,
|
|
252
|
-
isOpen: isOpen,
|
|
253
|
-
"data-fs-modal": null,
|
|
254
|
-
"data-fs-slide-over": true,
|
|
255
|
-
"data-fs-slide-over-direction": direction,
|
|
256
|
-
"data-fs-slide-over-size": size,
|
|
257
|
-
"data-fs-slide-over-state": fade
|
|
258
|
-
}, otherProps), {}, {
|
|
259
|
-
children: children
|
|
260
|
-
}));
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
/* harmony default export */ const SlideOver_SlideOver = (SlideOver);
|
|
264
|
-
;// CONCATENATED MODULE: ./src/components/ui/SlideOver/index.ts
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
/***/ }),
|
|
268
|
-
|
|
269
|
-
/***/ 2436:
|
|
270
|
-
/***/ ((module) => {
|
|
271
|
-
|
|
272
|
-
// Exports
|
|
273
|
-
module.exports = {
|
|
274
|
-
"fs-slide-over": "slide-over_fs-slide-over__rhXvd",
|
|
275
|
-
"fsSlideOver": "slide-over_fs-slide-over__rhXvd"
|
|
276
|
-
};
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
/***/ })
|
|
280
|
-
|
|
281
|
-
};
|
|
282
|
-
;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[158],{7549:function(e,r,t){"use strict";var n=t(2784),c=t(2691);const a=(0,n.forwardRef)((function({value:e,as:r="span",variant:t="selling",testId:a="fs-price",formatter:i=(e=>e),SRText:s,...o},l){const u=i(e,t);return n.createElement(r,{ref:l,"data-fs-price":!0,"data-fs-price-variant":t,"data-testid":a,...o},s&&n.createElement(c.Z,{text:s}),u)}));r.Z=a},5158:function(e,r,t){"use strict";t.r(r),t.d(r,{default:function(){return J}});var n=t(9499),c=t(4730),a=t(1329),i=t(2784),s=t(7865);var o=(0,i.forwardRef)((function({testId:e="fs-search-product-card",linkProps:r,onLinkClick:t,children:n,...c},a){return i.createElement("article",{ref:a,"data-fs-search-product-card":!0,"data-testid":e,...c},i.createElement(s.Z,{...r,"data-fs-search-product-card-link":!0,title:name,variant:"display",onClick:t},n))}));var l=(0,i.forwardRef)((function({testId:e="fs-search-product-card-image",children:r,...t},n){return i.createElement("div",{ref:n,"data-fs-search-product-card-image":!0,"data-testid":e,...t},r)})),u=t(7549);var d=(0,i.forwardRef)((function({price:e,title:r,...t},n){return i.createElement("section",{ref:n,"data-fs-search-product-card-content":!0,...t},i.createElement("p",{"data-fs-search-product-card-title":!0},r),i.createElement("span",{"data-fs-search-product-card-prices":!0},i.createElement(u.Z,{value:e?.listPrice?e.listPrice:0,formatter:e?.formatter,testId:"list-price","data-value":e?.listPrice,variant:"listing",SRText:"Original price:"}),i.createElement(u.Z,{value:e?.value?e.value:0,formatter:e?.formatter,testId:"price","data-value":e?.value,variant:"spot",SRText:"Price:"})))})),f=t(2154),p=t(5346),h=t(9854),m=t(3588),v=t(2322),O=["product","index"];function j(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function g(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?j(Object(t),!0).forEach((function(r){(0,n.Z)(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):j(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}var y=function(e){var{product:r,index:t}=e,n=(0,c.Z)(e,O),{onSearchInputSelection:a}=(0,m.ZP)(),i=(0,h.w)({product:r,selectedOffer:0,index:t}),{isVariantOf:{name:s},image:[u],offers:{lowPrice:j,offers:[{listPrice:y}]}}=r;return(0,v.jsxs)(o,g(g({linkProps:i,onLinkClick:()=>{i.onClick,null===a||void 0===a||a(s,i.href)}},n),{},{children:[(0,v.jsx)(l,{children:(0,v.jsx)(f.E,{src:u.url,alt:u.alternateName,width:56,height:56})}),(0,v.jsx)(d,{title:s,price:{value:j,listPrice:y,formatter:p.P}})]}))},b=t(2478),P=t(1093),w=t(1393),x=t.n(w),k=["testId","term","terms","products"];function S(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function Z(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?S(Object(t),!0).forEach((function(r){(0,n.Z)(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):S(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}function D(e,r,t){return 0===e?r.split("").map(((e,r)=>0===r&&0===t.indexOf(e.toUpperCase())?e.toUpperCase():e.toLowerCase())).join(""):r.toLowerCase()}function E(e,r){var t=e.toLowerCase().split(r.toLowerCase());return(0,v.jsx)("p",{children:t.map(((n,c)=>(0,v.jsxs)(i.Fragment,{children:[n.length>0&&(0,v.jsx)("b",{"data-fs-search-item-bold":!0,children:0===c?n.charAt(0).toUpperCase()+n.slice(1):n}),c!==t.length-1&&D(c,r,e)]},[n,c].join())))})}var C=function(e){var{testId:r="suggestions",term:t="",terms:n=[],products:i=[]}=e,s=(0,c.Z)(e,k),{onSearchInputSelection:o}=(0,m.ZP)();return(0,v.jsxs)("section",Z(Z({"data-testid":r,"data-fs-search":!0,className:x().fsSearch},s),{},{children:[n.length>0&&(0,v.jsx)(a.Z,{"data-fs-search-section":"terms",children:null===n||void 0===n?void 0:n.map((e=>{var{value:r}=e;return(0,v.jsx)("li",{"data-fs-search-item":!0,children:(0,v.jsxs)(P.Z,{"data-fs-search-item-link":!0,href:(0,m.uc)(r),onClick:()=>{null===o||void 0===o||o(r,(0,m.uc)(r))},children:[(0,v.jsx)(b.Z,{name:"MagnifyingGlass",width:18,height:18,"data-fs-search-item-icon":!0}),E(r,t)]})},r)}))}),i.length>0&&(0,v.jsxs)("div",{"data-fs-search-section":!0,children:[(0,v.jsx)("div",{"data-fs-search-header":!0,children:(0,v.jsx)("p",{"data-fs-search-title":!0,children:"Suggested Products"})}),(0,v.jsx)(a.Z,{children:i.map(((e,r)=>(0,v.jsx)("li",{"data-fs-search-item":!0,children:(0,v.jsx)(y,{product:e,index:r})},e.id)))})]})]}))},_=t(7732),I=t(5914),R="SearchSuggestionsQuery";var L=function(e){var r,t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5,{channel:c,locale:a}=(0,I.kP)(),{data:i,error:s}=(0,_.aM)(R,{term:e,selectedFacets:[{key:"channel",value:null!==c&&void 0!==c?c:""},{key:"locale",value:a}]});return{terms:(null!==(r=null===i||void 0===i?void 0:i.search.suggestions.terms)&&void 0!==r?r:[]).slice(0,n),products:(null!==(t=null===i||void 0===i?void 0:i.search.suggestions.products)&&void 0!==t?t:[]).slice(0,n),isLoading:!s&&!i}},N=t(4842),F=t(5098),T=()=>{var{onSearchInputSelection:e}=(0,m.ZP)(),{searchHistory:r,clearSearchHistory:t}=(0,F.Z)();return r.length?(0,v.jsxs)("section",{"data-fs-search-section":!0,className:x().fsSearch,children:[(0,v.jsxs)("div",{"data-fs-search-header":!0,children:[(0,v.jsx)("p",{"data-fs-search-title":!0,children:"History"}),(0,v.jsx)(N.Z,{variant:"tertiary",onClick:t,children:"Clear History"})]}),(0,v.jsx)(a.Z,{as:"ol",children:r.map((r=>(0,v.jsx)("li",{"data-fs-search-item":!0,children:(0,v.jsxs)(P.Z,{"data-fs-search-item-link":!0,variant:"display",href:r.path,onClick:()=>null===e||void 0===e?void 0:e(r.term,r.path),children:[(0,v.jsx)(b.Z,{name:"Clock",width:18,height:18,"data-fs-search-item-icon":!0}),(0,v.jsx)("span",{children:r.term})]})},r.term)))})]}):null},H=t(44),M="TopSearchSuggestionsQuery";var A=function(){var e,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5,{channel:n,locale:c}=(0,I.kP)(),{data:a,error:i}=(0,_.aM)(M,{term:"",selectedFacets:[{key:"channel",value:null!==n&&void 0!==n?n:""},{key:"locale",value:c}]});return{terms:(null!==(e=null===a||void 0===a?void 0:a.search.suggestions.terms)&&void 0!==e?e:r).slice(0,t),isLoading:!i&&!a}},V=["testId","topTerms"];function z(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function U(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?z(Object(t),!0).forEach((function(r){(0,n.Z)(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):z(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}var W=(0,i.forwardRef)((function(e,r){var{testId:t="top-search",topTerms:n}=e,i=(0,c.Z)(e,V),{onSearchInputSelection:s}=(0,m.ZP)(),{terms:o,isLoading:l}=A(n);return 0===o.length?null:(0,v.jsx)("section",U(U({ref:r,"data-testid":t,"data-fs-search-section":!0,className:x().fsSearch},i),{},{children:l?(0,v.jsx)("p",{"data-fs-search-input-loading-text":!0,children:"Loading..."}):(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)("div",{"data-fs-search-header":!0,children:(0,v.jsx)("p",{"data-fs-search-title":!0,children:"Top Search"})}),(0,v.jsx)(a.Z,{as:"ol",children:o.map(((e,r)=>(0,v.jsx)("li",{"data-fs-search-item":!0,children:(0,v.jsxs)(P.Z,{"data-fs-search-item-link":!0,variant:"display",href:(0,m.uc)(e.value),onClick:()=>null===s||void 0===s?void 0:s(e.value,(0,m.uc)(e.value)),children:[(0,v.jsx)(H.Z,{"data-fs-search-badge":!0,variant:"info",children:r+1}),e.value]})},e.value)))})]})}))})),G=["term","style"];function Q(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}var J=function(e){var{term:r="",style:t}=e,a=(0,c.Z)(e,G),{terms:i,products:s,isLoading:o}=L(r);return 0!==r.length||o?o?(0,v.jsx)("p",{"data-fs-search-input-loading-text":!0,children:"Loading..."}):0===i.length&&0===s.length?null:(0,v.jsx)(C,function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?Q(Object(t),!0).forEach((function(r){(0,n.Z)(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Q(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}({term:r,terms:i,products:s},a)):(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(T,{}),(0,v.jsx)(W,{})]})}},2154:function(e,r,t){"use strict";t.d(r,{E:function(){return g}});var n=t(9499),c=t(4730),a=t(2784),i=t(9008),s=t.n(i);var o=(e,r)=>{var t,n,c=["https://assets.vtex.app","unsafe"],a=[];r.trim&&c.push("trim"),r.manualCrop&&c.push((e=>{var{left:r,top:t,right:n,bottom:c}=e;return"".concat(r,"x").concat(t,":").concat(n,"x").concat(c)})(r.manualCrop)),r.fitIn&&c.push("fit-in"),a.push(null!==(t=r.horizontalAlign)&&void 0!==t?t:"center"),a.push(null!==(n=r.verticalAlign)&&void 0!==n?n:"middle"),r.smart&&a.push("smart");var{filters:i}=r;return i&&a.push(function(e){var r=["filters"];return Object.keys(e).forEach((t=>{var n,c=e[t];n=Array.isArray(c)?c.join(","):!0===c?"":String(c),r.push("".concat(t,"(").concat(n,")"))})),r.join(":")}(i)),a.push(encodeURIComponent(e)),(e,t)=>{var n="";return r.flipHorizontal&&(n+="-"),n+="".concat(e,"x"),r.flipVertical&&(n+="-"),n+="".concat(t),[...c,n,...a].join("/")}},l=["src","width","height","options"];function u(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}var d=[1,2,3],f=d[d.length-1],p=e=>{var{src:r,width:t,height:i,options:s={}}=e,p=(0,c.Z)(e,l),{srcSet:h,src:m}=(0,a.useMemo)((()=>{var e=o(r,s),n=d.map((r=>{var n=t*r;return"".concat(e(n,i*r)," ").concat(n,"w")}));return{src:e(t*f,i*f),srcSet:n.join(", ")}}),[i,s,r,t]);return function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?u(Object(t),!0).forEach((function(r){(0,n.Z)(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):u(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}({src:m,srcSet:h,width:"".concat(t,"px"),height:"".concat(i,"px")},p)},h=t(2322),m=["preload","fetchPriority"];function v(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function O(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?v(Object(t),!0).forEach((function(r){(0,n.Z)(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):v(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}var j=(0,a.forwardRef)(((e,r)=>{var{preload:t=!1,fetchPriority:n}=e,a=(0,c.Z)(e,m),i=p(a),{src:o,sizes:l="100vw",srcSet:u}=i;return(0,h.jsxs)(h.Fragment,{children:[t&&(0,h.jsx)(s(),{children:(0,h.jsx)("link",{as:"image",rel:"preload",href:o,imageSrcSet:u,imageSizes:l,fetchpriority:n})}),(0,h.jsx)("img",O(O({ref:r,"data-fs-image":!0},i),{},{alt:i.alt,fetchpriority:n}))]})}));j.displayName="Image";var g=(0,a.memo)(j)},7732:function(e,r,t){"use strict";t.d(r,{WN:function(){return u},aM:function(){return d},km:function(){return l}});var n=t(29),c=t(9499),a=t(9857),i=t(180);function s(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function o(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?s(Object(t),!0).forEach((function(r){(0,c.Z)(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):s(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}var l=(e,r)=>"".concat(e,"::").concat(JSON.stringify(r)),u={errorRetryCount:3,refreshWhenHidden:!1,refreshWhenOffline:!1,revalidateOnFocus:!1,revalidateOnReconnect:!1,shouldRetryOnError:!0},d=(e,r,t)=>(0,a.ZP)(l(e,r),o(o({fetcher:()=>new Promise((c=>{setTimeout((0,n.Z)((function*(){c(yield(0,i.W)(e,r,t))})))}))},u),t))},5346:function(e,r,t){"use strict";t.d(r,{P:function(){return i},o:function(){return a}});var n=t(2784),c=t(5914),a=function(){var{decimals:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{currency:r,locale:t}=(0,c.kP)();return(0,n.useCallback)((n=>Intl.NumberFormat(t,{style:"currency",currency:r.code,minimumFractionDigits:e?2:0}).format(n)),[r.code,t,e])},i=e=>{var r=a();return(0,n.useMemo)((()=>r(e)),[r,e])}},9854:function(e,r,t){"use strict";t.d(r,{w:function(){return i}});var n=t(8460),c=t(2784),a=t(5914),i=e=>{var{index:r,product:t,selectedOffer:i}=e,{slug:s}=t,{currency:{code:o}}=(0,a.kP)(),l=(0,c.useCallback)((()=>{(0,n._)({name:"select_item",params:{items:[{item_id:t.isVariantOf.productGroupID,item_name:t.isVariantOf.name,item_brand:t.brand.name,item_variant:t.sku,index:r,price:t.offers.offers[i].price,discount:t.offers.offers[i].listPrice-t.offers.offers[i].price,currency:o,item_variant_name:t.name,product_reference_id:t.gtin}]}}),(0,n._)({name:"search_select_item",params:{url:window.location.href,items:[{item_id:t.isVariantOf.productGroupID,item_variant:t.sku,index:r}]}})}),[o,t,r,i]);return{href:"/".concat(s,"/p"),onClick:l,"data-testid":"product-link"}}},1393:function(e){e.exports={"fs-search":"search_fs-search__DRhxy",fsSearch:"search_fs-search__DRhxy"}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[337],{3417:function(e,t,r){"use strict";var n=r(2784);t.Z=()=>n.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 256 256",strokeWidth:"16",width:20,height:20},n.createElement("rect",{width:"256",height:"256",fill:"none"}),n.createElement("circle",{cx:"128",cy:"128",r:"96",fill:"none",stroke:"currentColor",strokeMiterlimit:"10"}),n.createElement("line",{x1:"160",y1:"96",x2:"96",y2:"160",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),n.createElement("line",{x1:"160",y1:"160",x2:"96",y2:"96",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},7216:function(e,t,r){"use strict";var n=r(2784);const a=(0,n.forwardRef)((function({testId:e="fs-label",children:t,...r},a){return n.createElement("label",{ref:a,"data-fs-label":!0,"data-testid":e,...r},t)}));t.Z=a},7549:function(e,t,r){"use strict";var n=r(2784),a=r(2691);const s=(0,n.forwardRef)((function({value:e,as:t="span",variant:r="selling",testId:s="fs-price",formatter:o=(e=>e),SRText:i,...c},l){const d=o(e,r);return n.createElement(t,{ref:l,"data-fs-price":!0,"data-fs-price-variant":r,"data-testid":s,...c},i&&n.createElement(a.Z,{text:i}),d)}));t.Z=s},2928:function(e,t,r){"use strict";var n=r(2784);const a=(0,n.forwardRef)((function({testId:e="fs-skeleton",loading:t=!0,shimmer:r=!0,children:a,size:s,border:o,borderRadius:i,...c},l){const d={width:s.width,height:s.height};return t?n.createElement("div",{ref:l,"data-fs-skeleton":!0,"data-testid":e,"data-fs-skeleton-border":o||null,style:i?{...d,borderRadius:i}:d,...c},r&&n.createElement("div",{"data-fs-skeleton-shimmer":!0})):n.createElement(n.Fragment,null,a)}));t.Z=a},8287:function(e,t,r){"use strict";var n=r(2784),a=r(875),s=r(7216),o=r(2765),i=r(4842),c=r(3417);t.Z=({id:e,label:t,type:r="text",error:l,displayClearButton:d,actionable:u,buttonActionText:f="Apply",onSubmit:m,onClear:p,placeholder:h=" ",inputRef:b,disabled:v,value:g,testId:y="fs-input-field",...x})=>{const j=!v&&l&&""!==l,w=u&&!v&&""!==g;return n.createElement("div",{"data-fs-input-field":!0,"data-fs-input-field-actionable":u,"data-fs-input-field-error":l&&""!==l,"data-testid":y},n.createElement(a.Z,{id:e,type:r,value:g,ref:b,disabled:v,placeholder:h,...x}),n.createElement(s.Z,{htmlFor:e},t),w&&(d||l?n.createElement(o.Z,{"data-fs-button-size":"small","aria-label":"Clear Field",icon:n.createElement(c.Z,null),onClick:()=>{p?.(),b?.current?.focus()}}):n.createElement(i.Z,{variant:"tertiary",size:"small",onClick:m},f)),j&&n.createElement("span",{"data-fs-input-field-error-message":!0},l))}},3769:function(e,t,r){"use strict";r.d(t,{Z:function(){return c}});var n=r(2784),a=r(1444),s=r(8879),o=r(2322);function i(e){var{breadcrumbList:t,name:r}=e,n=null!==t&&void 0!==t?t:[{item:"/",name:r,position:1}];return(0,o.jsx)(s.Z,{className:"layout__content",children:(0,o.jsx)(a.Z,{breadcrumbList:n})})}var c=(0,n.memo)(i)},8739:function(e,t,r){"use strict";r.d(t,{Z:function(){return ye}});var n=r(7794),a=r(5351),s=r(2784),o=r(2928),i=r(4842),c=r(7703),l=r(9499),d=r(3425),u=r(395),f=r(9739),m=r(997),p=r(7831),h=r(331),b=r(1329);var v=(0,s.forwardRef)((function({testId:e="fs-checkbox",partial:t,...r},n){return s.createElement("input",{ref:n,"data-fs-checkbox":!0,"data-testid":e,"data-fs-checkbox-partial":t,type:"checkbox",...r})})),g=r(7216),y=r(44);const x=(e,t,r)=>Math.round((e-t)/(r-t)*100);var j=(0,s.forwardRef)((function({min:e,max:t,absoluteValuesLabel:r,onChange:n,onEnd:a,testId:o="fs-slider",getAriaValueText:i,step:c,minValueLabelComponent:l,maxValueLabelComponent:d,...u},f){const m=(0,s.useMemo)((()=>(t.absolute-e.absolute)/100),[t.absolute,e.absolute]),[p,h]=(0,s.useState)((()=>x(e.selected,e.absolute,t.absolute))),[b,v]=(0,s.useState)((()=>x(t.selected,e.absolute,t.absolute))),[g,y]=(0,s.useState)((()=>Math.floor(e.absolute+p*m))),[j,w]=(0,s.useState)((()=>Math.round(e.absolute+b*m))),k=e=>e/t.absolute*100;return(0,s.useImperativeHandle)(f,(()=>({setSliderValues:r=>{const n=Math.min(Number(r.min),j);if(y(n),h(x(n,e.absolute,t.absolute)),r.max>t.absolute)return w(t.absolute),void v(x(t.absolute,e.absolute,t.absolute));const a=Math.max(Number(r.max),g);w(a),v(x(a,e.absolute,t.absolute))}}))),s.createElement("div",{"data-fs-slider":!0,"data-testid":o},s.createElement("div",{"data-fs-slider-absolute-values":!0},s.createElement("span",null,r.min),s.createElement("span",null,r.max)),s.createElement("div",{"data-fs-slider-wrapper":!0},s.createElement("div",{"data-fs-slider-range":!0,style:{left:`${p}%`,width:b-p+"%"}}),s.createElement("input",{type:"range",min:Math.floor(e.absolute),max:Math.round(t.absolute),value:g,step:c,onMouseUp:()=>a?.({min:g,max:j}),onTouchEnd:()=>a?.({min:g,max:j}),onChange:r=>{const a=Math.min(Number(r.target.value),j);y(a),h(x(a,e.absolute,t.absolute)),n?.({min:a,max:j})},"data-fs-slider-thumb":"left","aria-valuemin":e.absolute,"aria-valuemax":t.absolute,"aria-valuenow":g,"aria-label":String(g),"aria-labelledby":i?.(g,"min"),...u}),l&&s.createElement("span",{"data-fs-slider-value-label":"min",style:{left:`calc(${k(g)}% + (${8-.2*k(g)}px))`}},l(g)),s.createElement("input",{type:"range",min:Math.floor(e.absolute),max:Math.round(t.absolute),value:j,step:c,onMouseUp:()=>a?.({min:g,max:j}),onTouchEnd:()=>a?.({min:g,max:j}),onChange:r=>{const a=Math.max(Number(r.target.value),g);w(a),v(x(a,e.absolute,t.absolute)),n?.({min:g,max:a})},"data-fs-slider-thumb":"right","aria-valuemin":e.absolute,"aria-valuemax":t.absolute,"aria-valuenow":j,"aria-label":String(j),"aria-labelledby":i?.(j,"max")}),d&&s.createElement("span",{"data-fs-slider-value-label":"max",style:{left:`calc(${k(j)}% + (${8-.2*k(j)}px))`}},d(j))))})),w=r(7549),k=r(8287);var E=(0,s.forwardRef)((function({formatter:e,max:t,min:r,step:n=1,onChange:a,onEnd:o,testId:i="fs-price-range",variant:c,"aria-label":l,...d},u){const f=(0,s.useRef)();(0,s.useImperativeHandle)(u,(()=>({setPriceRangeValues:e=>{a?.(e),f.current?.setSliderValues(e)}})));const m=(0,s.useRef)(null),p=(0,s.useRef)(null),[h,b]=(0,s.useState)(),[v,g]=(0,s.useState)(),[y,x]=(0,s.useState)({min:Math.floor(r.selected),max:Math.round(t.selected)});return s.createElement("div",{"data-fs-price-range":!0,"data-testid":i,...d},s.createElement(j,{ref:f,min:r,max:t,step:n,onEnd:e=>{o?.(e),function(e){b(void 0),g(void 0),x({min:e.min,max:e.max}),m.current?.value&&(m.current.value=String(e.min)),p.current?.value&&(p.current.value=String(e.max))}(e)},"aria-label":l,onChange:e=>a?.(e),absoluteValuesLabel:{min:s.createElement(w.Z,{value:Math.floor(r.absolute),variant:c,formatter:e}),max:s.createElement(w.Z,{value:Math.round(t.absolute),variant:c,formatter:e})},minValueLabelComponent:t=>s.createElement(w.Z,{value:t,variant:c,formatter:e}),maxValueLabelComponent:t=>s.createElement(w.Z,{value:t,variant:c,formatter:e})}),s.createElement("div",{"data-fs-price-range-inputs":!0},s.createElement(k.Z,{id:"price-range-min",step:n,label:"Min",type:"number",inputMode:"numeric",error:h,inputRef:m,min:Math.floor(r.absolute),max:y.max,value:y.min,onChange:e=>{return t=e.target.value,b(void 0),void(Number(t)<Math.floor(r.absolute)||(Number(t)>Math.floor(y.max)&&b("Min price can't be greater than max"),x({...y,min:Number(t)}),f.current?.setSliderValues({...y,min:Number(t)})));var t},onBlur:()=>!h&&o?.(y)}),s.createElement(k.Z,{id:"price-range-max",label:"Max",step:n,type:"number",inputMode:"numeric",error:v,inputRef:p,max:Math.round(t.absolute),min:y.min,value:y.max,onChange:e=>{return r=e.target.value,g(void 0),void(Number(r)>Math.round(t.absolute)||(Number(r)<Math.round(y.min)&&g("Max price can't be smaller than min"),x({...y,max:Number(r)}),f.current?.setSliderValues({...y,max:Number(r)})));var r},onBlur:()=>!v&&o?.(y)})))})),O=r(5346),P=r(3671),Z=r.n(P),_=r(2322);var S=function(e){var{testId:t,facets:r,indicesExpanded:n,onFacetChange:a,onAccordionChange:s}=e;return(0,_.jsxs)("div",{className:Z().fsFacets,"data-fs-filter":!0,"data-testid":t,children:[(0,_.jsx)("h2",{className:"text__title-mini-alt","data-fs-facets-title":!0,children:"Filters"}),(0,_.jsx)(f.Z,{indices:n,onChange:s,"data-fs-facets-accordion":!0,children:r.map(((e,r)=>{var s=n.has(r),{__typename:o,label:i}=e;return(0,_.jsxs)(m.Z,{prefixId:t,testId:"".concat(t,"-accordion"),"data-type":o,"data-fs-facets-accordion-item":!0,children:[(0,_.jsx)(p.Z,{testId:"".concat(t,"-accordion-button"),children:i}),(0,_.jsxs)(h.Z,{children:["StoreFacetBoolean"===o&&s&&(0,_.jsx)(b.Z,{"data-fs-facets-list":!0,children:e.values.map((r=>{var n="".concat(t,"-").concat(e.label,"-").concat(r.label);return(0,_.jsxs)("li",{"data-fs-facets-list-item":!0,children:[(0,_.jsx)(v,{id:n,checked:r.selected,onChange:()=>a({key:e.key,value:r.value},"BOOLEAN"),"data-fs-facets-list-item-checkbox":!0,"data-testid":"".concat(t,"-accordion-panel-checkbox"),"data-value":r.value,"data-quantity":r.quantity}),(0,_.jsxs)(g.Z,{htmlFor:n,className:"text__title-mini-alt","data-fs-facets-list-item-label":!0,children:[r.label," ",(0,_.jsx)(y.Z,{"data-fs-facets-list-item-badge":!0,children:r.quantity})]})]},n)}))}),"StoreFacetRange"===o&&s&&(0,_.jsx)(E,{min:e.min,max:e.max,formatter:O.P,step:1,onEnd:t=>{return a({key:e.key,value:(r=t.min,n=t.max,"".concat(r.toFixed(2),"-to-").concat(n.toFixed(2)))},"RANGE");var r,n}})]})]},"".concat(i,"-").concat(r))}))})]})},C=r(2765),F=r(2478),R=r(5731),I=r(6074),D=r(4864),N=r.n(D);function L(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function M(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?L(Object(r),!0).forEach((function(t){(0,l.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):L(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var B=function(e){var{facets:t,testId:r,dispatch:a,expanded:s,selected:o}=e,{closeFilter:c}=(0,u.l)(),{fade:l,fadeOut:d}=(0,I.b)(),{resetInfiniteScroll:f,setState:m,state:p}=(0,n.R)();return(0,_.jsxs)(R.Z,{isOpen:!0,fade:l,onDismiss:d,size:"partial",direction:"rightSide",className:N().fsFilterSlider,onTransitionEnd:()=>"out"===l&&c(),children:[(0,_.jsxs)("div",{"data-fs-filter-slider-content":!0,children:[(0,_.jsxs)("header",{"data-fs-filter-slider-header":!0,children:[(0,_.jsx)("h2",{className:"text__lead",children:"Filters"}),(0,_.jsx)(C.Z,{"data-fs-filter-slider-header-icon":!0,"aria-label":"Close Filters",icon:(0,_.jsx)(F.Z,{name:"X",width:32,height:32}),onClick:()=>{a({type:"selectFacets",payload:p.selectedFacets}),d()}})]}),(0,_.jsx)(S,{facets:t,testId:"mobile-".concat(r),indicesExpanded:s,onFacetChange:(e,t)=>a("BOOLEAN"===t?{type:"toggleFacet",payload:e}:{type:"setFacet",payload:{facet:e,unique:!0}}),onAccordionChange:e=>a({type:"toggleExpanded",payload:e})})]}),(0,_.jsxs)("footer",{"data-fs-filter-slider-footer":!0,children:[(0,_.jsx)(i.Z,{"data-fs-filter-slider-footer-button-clear":!0,variant:"secondary",onClick:()=>a({type:"selectFacets",payload:[]}),children:"Clear All"}),(0,_.jsx)(i.Z,{"data-fs-filter-slider-footer-button-apply":!0,variant:"primary","data-testid":"filter-slider-button-apply",onClick:()=>{f(0),m(M(M({},p),{},{selectedFacets:o,page:0})),d()},children:"Apply"})]})]})},z=r(4730),A=["value"];function H(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function V(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?H(Object(r),!0).forEach((function(t){(0,l.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):H(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var W=(e,t)=>{var{expanded:r,selected:n}=e,{type:a,payload:s}=t;switch(a){case"toggleExpanded":return r.has(s)?r.delete(s):r.add(s),V(V({},e),{},{expanded:new Set(r)});case"selectFacets":if(s!==n)return V(V({},e),{},{selected:s});break;case"toggleFacet":return V(V({},e),{},{selected:(0,d.wB)(e.selected,s)});case"setFacet":return V(V({},e),{},{selected:(0,d.uL)(e.selected,s.facet,s.unique)});default:throw new Error("Action ".concat(a," not implemented"))}return e};function T(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function G(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?T(Object(r),!0).forEach((function(t){(0,l.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):T(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var $=function(e){var{facets:t,testId:r="store-filter"}=e,a=(e=>{var{state:{selectedFacets:t}}=(0,n.R)(),{0:{selected:r,expanded:a},1:o}=(0,s.useReducer)(W,null,(()=>({expanded:new Set([]),selected:t}))),i=(0,s.useMemo)((()=>r.reduce(((e,t)=>{var r;return e.has(t.key)||e.set(t.key,new Map),null===(r=e.get(t.key))||void 0===r||r.set(t.value,t),e}),new Map)),[r]),c=(0,s.useMemo)((()=>e.map((e=>"StoreFacetBoolean"===e.__typename?V(V({},e),{},{values:e.values.map((t=>{var r,{value:n}=t;return V(V({},(0,z.Z)(t,A)),{},{value:n,selected:Boolean(null===(r=i.get(e.key))||void 0===r?void 0:r.has(n))})}))}):e))),[e,i]);return(0,s.useEffect)((()=>{o({type:"selectFacets",payload:t})}),[t]),{facets:c,selected:r,expanded:a,dispatch:o}})(t),{resetInfiniteScroll:o,state:i,setState:c}=(0,n.R)(),{filter:l}=(0,u.l)(),{facets:f,expanded:m,dispatch:p}=a;return(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)("div",{className:"hidden-mobile",children:(0,_.jsx)(S,{facets:f,testId:"desktop-".concat(r),indicesExpanded:m,onFacetChange:(e,t)=>{c(G(G({},i),{},{selectedFacets:"BOOLEAN"===t?(0,d.wB)(i.selectedFacets,e):(0,d.uL)(i.selectedFacets,e,!0),page:0})),o(0)},onAccordionChange:e=>p({type:"toggleExpanded",payload:e})})}),l&&(0,_.jsx)(B,G(G({},a),{},{testId:r}))]})},q=r(5045);var U=()=>s.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 256 256",strokeWidth:"16",width:24,height:24},s.createElement("rect",{width:"256",height:"256",fill:"none"}),s.createElement("polyline",{points:"208 96 128 176 48 96",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"24"}));var J=(0,s.forwardRef)((function({options:e,id:t,testId:r="fs-select",...n},a){return s.createElement("div",{"data-fs-select":!0},s.createElement("select",{ref:a,id:t,"data-testid":r,...n},Object.keys(e).map((t=>s.createElement("option",{key:t,value:t},e[t])))),s.createElement(q.Z,{"data-fs-select-icon":!0,component:s.createElement(U,null)}))}));var K=(0,s.forwardRef)((function({id:e,label:t,options:r,testId:n="fs-select-field",...a},o){return s.createElement("div",{ref:o,"data-fs-select-field":!0},s.createElement(g.Z,{"data-fs-select-field-label":!0,htmlFor:e},t),s.createElement(J,{id:e,options:r,"data-testid":n,...a}))}));function X(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Q(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?X(Object(r),!0).forEach((function(t){(0,l.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):X(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var Y={price_desc:"Price, descending",price_asc:"Price, ascending",orders_desc:"Top sales",name_asc:"Name, A-Z",name_desc:"Name, Z-A",release_desc:"Release date",discount_desc:"Discount",score_desc:"Relevance"},ee=Object.keys(Y);var te=function(){var{state:e,setState:t}=(0,n.R)();return(0,_.jsx)(K,{id:"sort-select",className:"sort / text__title-mini-alt",label:"Sort by",options:Y,onChange:r=>{var n=ee[r.target.selectedIndex];t(Q(Q({},e),{},{sort:n,page:0}))},value:e.sort,testId:"search-sort"})},re=r(4432),ne=r.n(re);var ae=function(e){var{children:t,loading:r=!0}=e;return r?(0,_.jsxs)("div",{className:ne().fsFilterSkeleton,"data-fs-filter-skeleton":!0,children:[(0,_.jsx)(o.Z,{"data-fs-filter-skeleton-text":!0,size:{width:"100%",height:"1.5rem"}}),(0,_.jsxs)("div",{"data-fs-filter-skeleton-content":!0,children:[(0,_.jsx)(o.Z,{"data-fs-filter-skeleton-text":!0,size:{width:"100%",height:"1.5rem"},shimmer:!1}),(0,_.jsx)(o.Z,{"data-fs-filter-skeleton-text":!0,size:{width:"100%",height:"1.5rem"},shimmer:!1}),(0,_.jsx)(o.Z,{"data-fs-filter-skeleton-text":!0,size:{width:"100%",height:"1.5rem"},shimmer:!1})]})]}):(0,_.jsx)(_.Fragment,{children:t})},se=r(9913),oe=r(2541),ie=r(8879),ce=r(9509);var le=function(){return(0,_.jsxs)(ce.Z,{variant:"rounded",children:[(0,_.jsxs)("header",{"data-fs-empty-state-title":!0,children:[(0,_.jsx)(F.Z,{name:"CircleWavyWarning",width:56,height:56,weight:"thin"}),(0,_.jsx)("p",{children:"Nothing matches with your search"})]}),(0,_.jsx)(c.Z,{"data-fs-empty-state-link":!0,href:"/office",variant:"secondary",icon:(0,_.jsx)(F.Z,{name:"CircleWavyWarning",width:18,height:18,weight:"bold"}),iconPosition:"left",children:"Browse Offers"}),(0,_.jsx)(c.Z,{"data-fs-empty-state-link":!0,href:"/technology",variant:"secondary",icon:(0,_.jsx)(F.Z,{name:"RocketLaunch",width:18,height:18,weight:"bold"}),iconPosition:"left",children:"Just Arrived"})]})},de=r(8666),ue=r.n(de),fe=r(2549),me=r(7732),pe=r(737),he=r(763),be=(0,s.lazy)((()=>r.e(686).then(r.bind(r,8686)))),ve=(0,_.jsx)(se.Z,{loading:!0});function ge(e){var t,{title:r,searchTerm:l}=e,{openFilter:d}=(0,u.l)(),{pages:f,addNextPage:m,addPrevPage:p}=(0,n.R)(),{data:h}=(()=>{var{state:{term:e,sort:t,selectedFacets:r},itemsPerPage:a}=(0,n.R)(),s=(0,pe.yb)({first:a,after:"0",sort:t,term:null!==e&&void 0!==e?e:"",selectedFacets:r});return(0,me.aM)("ProductGalleryQuery",s)})(),b=(e=>{var t=(0,s.useRef)([]);return(0,s.useMemo)((()=>(e&&(t.current=e.search.facets),t.current)),[e,t])})(h),v=null!==(t=null===h||void 0===h?void 0:h.search.products.pageInfo.totalCount)&&void 0!==t?t:0,{next:g,prev:y}=(e=>{var t=(0,fe.h)(e),{0:r,1:n}=(0,s.useState)((()=>({next:!1,prev:!1})));return(0,s.useEffect)((()=>{n(t)}),[t]),r})(v);return(0,he.F)(y?y.cursor:null),(0,he.F)(g?g.cursor:null),h&&0===v?(0,_.jsx)(ie.Z,{"data-testid":"product-gallery",className:"".concat(ue().fsProductListing," layout__content"),"data-fs-product-listing":!0,children:(0,_.jsx)(le,{})}):(0,_.jsxs)(ie.Z,{"data-testid":"product-gallery",className:"".concat(ue().fsProductListing," layout__content-full"),"data-fs-product-listing":!0,children:[l&&(0,_.jsx)("header",{"data-fs-product-listing-search-term":!0,className:"layout__content",children:(0,_.jsxs)("h1",{children:["Showing results for: ",(0,_.jsx)("span",{children:l})]})}),(0,_.jsxs)("div",{"data-fs-product-listing-content-grid":!0,className:"layout__content",children:[(0,_.jsx)("div",{"data-fs-product-listing-filters":!0,children:(0,_.jsx)(ae,{loading:0===(null===b||void 0===b?void 0:b.length),children:(0,_.jsx)($,{facets:b})})}),(0,_.jsx)("div",{"data-fs-product-listing-results-count":!0,"data-count":v,children:(0,_.jsx)(o.Z,{"data-fs-product-listing-results-count-skeleton":!0,loading:!h,size:{width:"100%",height:"1.5rem"},children:(0,_.jsxs)("h2",{"data-testid":"total-product-count",children:[v," Results"]})})}),(0,_.jsxs)("div",{"data-fs-product-listing-sort":!0,children:[(0,_.jsx)(o.Z,{"data-fs-product-listing-sort-skeleton":!0,loading:0===(null===b||void 0===b?void 0:b.length),size:{width:"auto",height:"1.5rem"},children:(0,_.jsx)(te,{})}),(0,_.jsx)(o.Z,{"data-fs-product-listing-filter-button-skeleton":!0,loading:0===(null===b||void 0===b?void 0:b.length),size:{width:"6rem",height:"1.5rem"},children:(0,_.jsx)(i.Z,{variant:"tertiary","data-testid":"open-filter-button",icon:(0,_.jsx)(F.Z,{name:"FadersHorizontal",width:16,height:16}),iconPosition:"left","aria-label":"Open Filters",onClick:d,children:"Filters"})})]}),(0,_.jsxs)("div",{"data-fs-product-listing-results":!0,children:[!1!==y&&(0,_.jsxs)("div",{"data-fs-product-listing-pagination":"top",children:[(0,_.jsx)(a.PB,{additionalLinkTags:[{rel:"prev",href:y.link}]}),(0,_.jsx)(c.Z,{onClick:e=>{e.currentTarget.blur(),e.preventDefault(),p()},href:y.link,rel:"prev",variant:"secondary",iconPosition:"left",icon:(0,_.jsx)(F.Z,{name:"ArrowLeft",width:16,height:16,weight:"bold"}),children:"Previous Page"})]}),h?(0,_.jsx)(s.Suspense,{fallback:ve,children:f.map((e=>(0,_.jsx)(be,{showSponsoredProducts:!1,page:e,title:r},"gallery-page-".concat(e))))}):ve,!1!==g&&(0,_.jsxs)("div",{"data-fs-product-listing-pagination":"bottom",children:[(0,_.jsx)(a.PB,{additionalLinkTags:[{rel:"next",href:g.link}]}),(0,_.jsx)(c.Z,{testId:"show-more",onClick:e=>{e.currentTarget.blur(),e.preventDefault(),m()},href:g.link,rel:"next",variant:"secondary",children:"Load more products"})]})]})]})]})}ge.displayName="ProductGallery";var ye=(0,oe.B)(ge)},763:function(e,t,r){"use strict";r.d(t,{F:function(){return o},r:function(){return i}});var n=r(7794),a=r(2784),s=r(737),o=e=>{var{itemsPerPage:t,state:{sort:r,term:o,selectedFacets:i}}=(0,n.R)(),c=(0,s.BG)({first:t,after:(t*(null!==e&&void 0!==e?e:0)).toString(),sort:r,term:null!==o&&void 0!==o?o:"",selectedFacets:i});(0,a.useEffect)((()=>{null!==e&&c()}),[e,c])},i=e=>{var{itemsPerPage:t,state:{sort:r,term:a,selectedFacets:o}}=(0,n.R)(),i=(0,s.kN)({first:t,after:(t*e).toString(),sort:r,term:null!==a&&void 0!==a?a:"",selectedFacets:o},{suspense:!0});return null===i||void 0===i?void 0:i.edges}},8879:function(e,t,r){"use strict";r.d(t,{Z:function(){return d}});var n=r(9499),a=r(4730),s=r(2784),o=r(2322),i=["className"];function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var l=(0,s.forwardRef)((function(e,t){var{className:r=""}=e,s=(0,a.Z)(e,i);return(0,o.jsx)("section",function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({ref:t,className:"section ".concat(r)},s))})),d=l},3288:function(e,t,r){"use strict";r.d(t,{Z:function(){return i}});var n=r(2928),a=r(1237),s=r.n(a),o=r(2322);var i=function(e){var{bordered:t,sectioned:r,displayButton:a,aspectRatio:i=1,variant:c="default"}=e;return(0,o.jsxs)("div",{className:s().fsProductCardSkeleton,"data-fs-product-card-skeleton":!0,"data-fs-product-card-skeleton-variant":c,"data-fs-product-card-skeleton-bordered":t,"data-fs-product-card-skeleton-sectioned":r,children:[(0,o.jsx)("div",{"data-fs-product-card-skeleton-image":!0,style:{"--fs-product-card-skeleton-image-aspect-ratio":i},children:(0,o.jsx)(n.Z,{size:{width:"100%",height:"100%"}})}),(0,o.jsxs)("div",{"data-fs-product-card-skeleton-content":!0,children:[(0,o.jsx)(n.Z,{"data-fs-product-card-skeleton-text":!0,size:{width:"90%",height:"1.5rem"}}),(0,o.jsx)(n.Z,{"data-fs-product-card-skeleton-text":!0,size:{width:"70%",height:"1.5rem"}}),(0,o.jsx)(n.Z,{"data-fs-product-card-skeleton-badge":!0,size:{width:"6rem",height:"2rem"},border:"pill"}),a&&(0,o.jsx)(n.Z,{"data-fs-product-card-skeleton-button":!0,size:{width:"6rem",height:"2rem"},style:{columnGap:".75rem"}})]})]})}},9913:function(e,t,r){"use strict";r.d(t,{Z:function(){return c}});var n=r(8459),a=r(2981),s=r.n(a),o=r(3288),i=r(2322);var c=function(e){var{children:t,aspectRatio:r,loading:a=!0}=e;return a?(0,i.jsx)("ul",{className:s().fsProductGrid,children:Array.from({length:n.g},((e,t)=>(0,i.jsx)("li",{children:(0,i.jsx)(o.Z,{aspectRatio:r,bordered:!0})},String(t))))}):(0,i.jsx)(i.Fragment,{children:t})}},1444:function(e,t,r){"use strict";r.d(t,{Z:function(){return R}});var n=r(9499),a=r(4730),s=r(2784);var o=({size:e=24})=>s.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 256 256",strokeWidth:"16",width:e,height:e},s.createElement("rect",{width:"256",height:"256",fill:"none"}),s.createElement("circle",{cx:"128",cy:"128",r:"12"}),s.createElement("circle",{cx:"192",cy:"128",r:"12"}),s.createElement("circle",{cx:"64",cy:"128",r:"12"}));var i=({size:e=24})=>s.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256",fill:"currentColor",strokeWidth:"16",width:e,height:e},s.createElement("rect",{width:"256",height:"256",fill:"none"}),s.createElement("polyline",{points:"160 128 208 176 160 224",fill:"none",stroke:"currentColor"}),s.createElement("polyline",{points:"64 32 64 176 208 176",fill:"none",stroke:"currentColor"})),c=r(5045),l=r(7865);var d=(0,s.createContext)({isOpen:!1,dropdownButtonRef:null,selectedDropdownItemIndexRef:null,dropdownItemsRef:null,id:"fs-dropdown"});var u=({children:e,isOpen:t=!1,onDismiss:r,id:n="fs-dropdown"})=>{const[a,o]=(0,s.useState)(t),i=(0,s.useRef)([]),c=(0,s.useRef)(0),l=(0,s.useRef)(null),u=(0,s.useCallback)((()=>{o(!1),r?.()}),[r]),f=()=>{o(!0)},m=(0,s.useCallback)((()=>{o((e=>(e&&(r?.(),l.current?.focus()),!e)))}),[r]);(0,s.useEffect)((()=>{o(t)}),[t]),(0,s.useEffect)((()=>{a&&i?.current[0]?.focus()}),[a]),(0,s.useEffect)((()=>{let e=!0;const t=t=>{const r=i?.current.some((e=>t.target===e));e?e=!1:!r&&u()};return a?document.addEventListener("click",t):document.removeEventListener("click",t),()=>{document.removeEventListener("click",t)}}),[u,a]);const p=(0,s.useMemo)((()=>({isOpen:a,close:u,open:f,toggle:m,dropdownButtonRef:l,onDismiss:r,selectedDropdownItemIndexRef:c,dropdownItemsRef:i,id:n})),[u,n,a,r,m]);return s.createElement(d.Provider,{value:p},e)},f=r(4842);const m=()=>{const e=(0,s.useContext)(d);if(void 0===e)throw new Error("Do not use useDropdown hook outside the Dropdown context.");return e};var p=(0,s.forwardRef)((function({children:e,testId:t="fs-dropdown-button",...r},n){const{toggle:a,dropdownButtonRef:o,isOpen:i,id:c}=m();return(0,s.useImperativeHandle)(n,(()=>o.current),[o]),s.createElement(f.Z,{"data-fs-dropdown-button":!0,onClick:a,"data-testid":t,ref:o,"aria-expanded":i,"aria-haspopup":"menu","aria-controls":c,variant:"tertiary",...r},e)})),h=r(8316);var b=({children:e,testId:t="fs-dropdown-menu",size:r="regular",style:n,...a})=>{const{isOpen:o,close:i,dropdownItemsRef:c,selectedDropdownItemIndexRef:l,dropdownButtonRef:d,id:u}=m(),f=(()=>{const{dropdownButtonRef:e}=m(),t="undefined"!==typeof window,r=e?.current?.getBoundingClientRect(),n=r?.top??0,a=r?.height??0,s=r?.left??0;return{position:"absolute",top:n+a+(t?document?.documentElement?.scrollTop:0),left:s+(t?document?.documentElement?.scrollLeft:0)}})(),p=s.Children.toArray(e).length;return o?(0,h.createPortal)(s.createElement("div",{role:"presentation","data-fs-dropdown-overlay":!0,onKeyDown:e=>{e.defaultPrevented||"Enter"===e.key||(e.preventDefault(),"Escape"===e.key&&(i?.(),d?.current?.focus()),"ArrowDown"===e.key&&(l.current<p-1?l.current++:l.current=0,c?.current[l.current]?.focus()),"ArrowUp"===e.key&&(l.current>0?l.current--:l.current=p-1,c?.current[l.current]?.focus()),"Home"===e.key&&(l.current=0,c?.current[l.current]?.focus()),"End"===e.key&&(l.current=p-1,c?.current[l.current]?.focus()),e.stopPropagation())},"data-testid":`${t}-overlay`},s.createElement("div",{role:"menu","aria-orientation":"vertical","data-fs-dropdown-menu":!0,"data-fs-dropdown-menu-size":r,"data-testid":t,style:{...f,...n},id:u,...a},e)),document.body):(c.current=[],null)};var v=(0,s.forwardRef)((function({children:e,icon:t,onClick:r,testId:n="fs-dropdown-item",...a},o){const{dropdownItemsRef:i,selectedDropdownItemIndexRef:l,close:d}=m(),[u,f]=(0,s.useState)(0),p=(0,s.useRef)(),h=()=>{l.current=u,i?.current[l.current]?.focus()};return(0,s.useImperativeHandle)(o,(()=>p.current),[]),s.createElement("button",{"data-fs-dropdown-item":!0,"data-testid":n,ref:e=>{e&&!i?.current.includes(e)&&(i?.current.push(e),f(i?.current.findIndex((t=>t===e))??0)),p.current=e},onFocus:h,onMouseEnter:h,onClick:e=>{r?.(e),d?.()},role:"menuitem",tabIndex:-1,"data-index":u,...a},t&&s.createElement(c.Z,{"data-fs-dropdown-item-icon":!0,component:t}),e)})),g=r(1329);var y=({divider:e,testId:t})=>{const r={"data-fs-breadcrumb-divider":!0,"aria-hidden":!0,"data-testid":`${t}-divider`};return s.isValidElement(e)?s.cloneElement(e,r):s.createElement("span",{...r},e??"/")};var x=({children:e,isLastItem:t,divider:r,testId:n})=>{const a={"data-testid":`${n}-item`,"data-fs-breadcrumb-item":!t||"current","aria-current":t?"page":void 0};return s.isValidElement(e)?s.createElement("li",{"data-fs-breadcrumb-list-item":!0},s.cloneElement(e,a),t?null:s.createElement(y,{divider:r,testId:n})):s.createElement("li",{"data-fs-breadcrumb-list-item":!0},s.createElement("span",{...a},e,t?null:s.createElement(y,{divider:r,testId:n})))};var j=(0,s.forwardRef)((function({children:e,divider:t="",testId:r="fs-breadcrumb",...n},a){return s.createElement("nav",{"aria-label":"Breadcrumb",role:"navigation",ref:a,"data-fs-breadcrumb":!0,"data-testid":r,...n},s.createElement(g.Z,{as:"ol","data-fs-breadcrumb-list":!0},s.Children.toArray(e).map(((e,n,a)=>{const o=n===a.length-1;return s.createElement(x,{isLastItem:o,divider:t,key:`breadcrumb-${n}`,testId:r},e)}))))}));var w=({size:e=24})=>s.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 256 256",strokeWidth:"16",width:e,height:e},s.createElement("rect",{width:"256",height:"256",fill:"none"}),s.createElement("path",{d:"M152,208V160a8,8,0,0,0-8-8H112a8,8,0,0,0-8,8v48a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V115.5a8.3,8.3,0,0,1,2.6-5.9l80-72.7a8,8,0,0,1,10.8,0l80,72.7a8.3,8.3,0,0,1,2.6,5.9V208a8,8,0,0,1-8,8H160A8,8,0,0,1,152,208Z",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"24"}));var k=()=>s.createElement(l.Z,{"data-fs-breadcrumb-link":!0,"data-fs-breadcrumb-link-home":!0,"aria-label":"Go to homepage",href:"/"},s.createElement(c.Z,{component:s.createElement(w,{size:18})}));var E=(0,s.forwardRef)((function({children:e,divider:t="",testId:r="fs-breadcrumb",breadcrumbList:n,isDesktop:a=!1,renderLink:d,homeLink:f=s.createElement(k,null),dropdownButtonIcon:m=s.createElement(c.Z,{component:s.createElement(o,null)}),collapsedItemsIcon:h=s.createElement(c.Z,{component:s.createElement(i,null)}),...g},y){const x=(0,s.cloneElement)(f,{"data-fs-breadcrumb-link":!0,"data-fs-breadcrumb-link-home":!0,"aria-label":"Go to homepage",href:"/"}),w=a?n[0]:null,E=a?n.slice(1,-2):n.slice(0,-2),O=n.slice(-2),P=n.length>4,Z=(0,s.useCallback)((e=>{const t=d?.(e),r=e.collapsed?{"data-fs-breadcrumb-dropdown-link":!0}:{"data-fs-breadcrumb-link":!0};return t?(0,s.cloneElement)(t,{...r,key:e.itemProps.position}):s.createElement(l.Z,{...r,href:e.itemProps.item,key:e.itemProps.position},e.itemProps.name)}),[d]);return s.createElement(j,{ref:y,"data-fs-breadcrumb-is-desktop":a,...g},x,!P&&n.map(((e,t)=>n.length===t+1?s.createElement("span",{key:String(e.position)},e.name):Z({itemProps:e,collapsed:!1}))),P&&w&&Z({itemProps:w,collapsed:!1}),P&&s.createElement(u,null,s.createElement(p,{"data-fs-breadcrumb-dropdown-button":!0,size:"small"},m),s.createElement(b,{"data-fs-breadcrumb-dropdown-menu":!0},E.map((e=>s.createElement(v,{"data-fs-breadcrumb-dropdown-item":!0,key:String(e.position),icon:h},Z({itemProps:e,collapsed:!0})))))),P&&O.map(((e,t)=>O.length===t+1?s.createElement("span",{key:String(e.position)},e.name):Z({itemProps:e,collapsed:!1}))))}));var O=({breadcrumbList:e,...t})=>s.createElement(s.Fragment,null,s.createElement(E,{breadcrumbList:e,...t}),s.createElement(E,{breadcrumbList:e,isDesktop:!0,...t})),P=r(2478),Z=r(1093),_=r(2322),S=["breadcrumbList"];function C(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var F=e=>{var{breadcrumbList:t}=e,r=(0,a.Z)(e,S);return(0,_.jsx)(O,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?C(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):C(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({breadcrumbList:t,homeLink:(0,_.jsx)(Z.Z,{"aria-label":"Go to homepage",href:"/",children:(0,_.jsx)(P.Z,{name:"House",width:18,height:18,weight:"bold"})}),renderLink:e=>{var{itemProps:{item:t,name:r}}=e;return(0,_.jsx)(Z.Z,{"data-fs-breadcrumb-link":!0,href:t,children:r})}},r))},R=(0,s.memo)(F)},9509:function(e,t,r){"use strict";r.d(t,{Z:function(){return o}});var n=r(1313),a=r.n(n),s=r(2322);var o=function(e){var{children:t,variant:r="default"}=e;return(0,s.jsx)("section",{className:a().fsEmptyState,"data-fs-empty-state":!0,"data-fs-empty-state-variant":r,children:t})}},8459:function(e,t,r){"use strict";r.d(t,{K:function(){return a},g:function(){return n}});var n=12,a=5},7732:function(e,t,r){"use strict";r.d(t,{WN:function(){return d},aM:function(){return u},km:function(){return l}});var n=r(29),a=r(9499),s=r(9857),o=r(180);function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){(0,a.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var l=(e,t)=>"".concat(e,"::").concat(JSON.stringify(t)),d={errorRetryCount:3,refreshWhenHidden:!1,refreshWhenOffline:!1,revalidateOnFocus:!1,revalidateOnReconnect:!1,shouldRetryOnError:!0},u=(e,t,r)=>(0,s.ZP)(l(e,t),c(c({fetcher:()=>new Promise((a=>{setTimeout((0,n.Z)((function*(){a(yield(0,o.W)(e,t,r))})))}))},d),r))},5346:function(e,t,r){"use strict";r.d(t,{P:function(){return o},o:function(){return s}});var n=r(2784),a=r(5914),s=function(){var{decimals:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{currency:t,locale:r}=(0,a.kP)();return(0,n.useCallback)((n=>Intl.NumberFormat(r,{style:"currency",currency:t.code,minimumFractionDigits:e?2:0}).format(n)),[t.code,r,e])},o=e=>{var t=s();return(0,n.useMemo)((()=>t(e)),[t,e])}},737:function(e,t,r){"use strict";r.d(t,{yb:function(){return h},kN:function(){return b},BG:function(){return v}});var n=r(9499),a=r(2784),s=r(9857),o=r(8459),i=r(4730),c=r(180),l=r(7732),d=["cache"],u=r(5914);function f(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function m(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?f(Object(r),!0).forEach((function(t){(0,n.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):f(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var p="ProductsQuery",h=e=>{var{first:t,after:r,sort:n,term:s,selectedFacets:i}=e,{channel:c,locale:l}=(0,u.kP)();return(0,a.useMemo)((()=>{var e,a=(e=i,Array.isArray(e)?e:e?[e]:[]);return{first:null!==t&&void 0!==t?t:o.K,after:null!==r&&void 0!==r?r:"0",sort:null!==n&&void 0!==n?n:"score_desc",term:null!==s&&void 0!==s?s:"",selectedFacets:[...a,{key:"channel",value:null!==c&&void 0!==c?c:""},{key:"locale",value:l}]}}),[i,t,r,n,s,c,l])},b=(e,t)=>{var r,n=h(e),{data:a}=(0,l.aM)(p,n,m({fallbackData:null,suspense:!0},t));return null===a||void 0===a||null===(r=a.search)||void 0===r?void 0:r.products},v=(e,t)=>{var r=h(e),{cache:n}=(0,s.kY)();return(0,a.useCallback)((()=>((e,t,r)=>{var{cache:n}=r,a=(0,i.Z)(r,d),o=(0,l.km)(e,t);n.get(o)||(0,s.JG)(o,(0,c.W)(e,t,a))})(p,r,m({cache:n},t))),[r,n,t])}},1523:function(e,t,r){"use strict";r.d(t,{j:function(){return s}});var n=r(2784),a=r(1163),s=()=>{var e=(0,a.useRouter)();return(0,n.useCallback)((t=>e.push("".concat(t.pathname).concat(t.search))),[e])}},2981:function(e){e.exports={"fs-product-grid":"product-grid_fs-product-grid__SF25P",fsProductGrid:"product-grid_fs-product-grid__SF25P"}},3671:function(e){e.exports={"fs-facets":"facets_fs-facets__Hva9t",fsFacets:"facets_fs-facets__Hva9t"}},4864:function(e){e.exports={"fs-filter-slider":"filter-slider_fs-filter-slider__bHe2U",fsFilterSlider:"filter-slider_fs-filter-slider__bHe2U"}},8666:function(e){e.exports={"fs-product-listing":"product-gallery_fs-product-listing__BBpw4",fsProductListing:"product-gallery_fs-product-listing__BBpw4"}},4432:function(e){e.exports={"fs-filter-skeleton":"filter-skeleton_fs-filter-skeleton___kwHE",fsFilterSkeleton:"filter-skeleton_fs-filter-skeleton___kwHE"}},1237:function(e){e.exports={"fs-product-card-skeleton":"product-card-skeleton_fs-product-card-skeleton__fPdHb",fsProductCardSkeleton:"product-card-skeleton_fs-product-card-skeleton__fPdHb"}},1313:function(e){e.exports={"fs-empty-state":"empty-state_fs-empty-state__F7Xul",fsEmptyState:"empty-state_fs-empty-state__F7Xul"}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[650],{3417:function(e,t,n){"use strict";var r=n(2784);t.Z=()=>r.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 256 256",strokeWidth:"16",width:20,height:20},r.createElement("rect",{width:"256",height:"256",fill:"none"}),r.createElement("circle",{cx:"128",cy:"128",r:"96",fill:"none",stroke:"currentColor",strokeMiterlimit:"10"}),r.createElement("line",{x1:"160",y1:"96",x2:"96",y2:"160",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),r.createElement("line",{x1:"160",y1:"160",x2:"96",y2:"96",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},7216:function(e,t,n){"use strict";var r=n(2784);const a=(0,r.forwardRef)((function({testId:e="fs-label",children:t,...n},a){return r.createElement("label",{ref:a,"data-fs-label":!0,"data-testid":e,...n},t)}));t.Z=a},8287:function(e,t,n){"use strict";var r=n(2784),a=n(875),o=n(7216),i=n(2765),l=n(4842),s=n(3417);t.Z=({id:e,label:t,type:n="text",error:c,displayClearButton:d,actionable:u,buttonActionText:f="Apply",onSubmit:p,onClear:m,placeholder:b=" ",inputRef:y,disabled:v,value:h,testId:g="fs-input-field",...j})=>{const C=!v&&c&&""!==c,E=u&&!v&&""!==h;return r.createElement("div",{"data-fs-input-field":!0,"data-fs-input-field-actionable":u,"data-fs-input-field-error":c&&""!==c,"data-testid":g},r.createElement(a.Z,{id:e,type:n,value:h,ref:y,disabled:v,placeholder:b,...j}),r.createElement(o.Z,{htmlFor:e},t),E&&(d||c?r.createElement(i.Z,{"data-fs-button-size":"small","aria-label":"Clear Field",icon:r.createElement(s.Z,null),onClick:()=>{m?.(),y?.current?.focus()}}):r.createElement(l.Z,{variant:"tertiary",size:"small",onClick:p},f)),C&&r.createElement("span",{"data-fs-input-field-error-message":!0},c))}},650:function(e,t,n){"use strict";n.r(t),n.d(t,{RegionalizationModalContent:function(){return x},default:function(){return k}});var r=n(36),a=n(2784),o=n(2543),i=n(2765);var l=({onClose:e,title:t,closeButtonProps:n={},description:r})=>a.createElement("header",{"data-fs-modal-header":!0},e&&a.createElement(i.Z,{onClick:()=>e?.(),"data-fs-modal-header-close-button":!0,icon:a.createElement(o.Z,null),"aria-label":"Close modal",...n}),a.createElement("p",{"data-fs-modal-header-title":!0},t),r&&a.createElement("p",{"data-fs-modal-header-description":!0},r));var s=({children:e,...t})=>a.createElement("div",{"data-fs-modal-body":!0,...t},e),c=n(9499),d=n(29),u=n(4730),f=n(8287),p=n(5914),m=n(2322),b=["isValidating"];function y(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function v(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?y(Object(n),!0).forEach((function(t){(0,c.Z)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):y(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var h=function(e){var{closeModal:t}=e,n=(0,a.useRef)(null),r=(0,p.kP)(),{isValidating:o}=r,i=(0,u.Z)(r,b),{0:l,1:s}=(0,a.useState)(""),{0:c,1:y}=(0,a.useState)(""),h=function(){var e=(0,d.Z)((function*(){var e,r=null===(e=n.current)||void 0===e?void 0:e.value;if("string"===typeof r){s("");try{var a=v(v({},i),{},{postalCode:r}),o=yield(0,p.je)(a);p.Qf.set(null!==o&&void 0!==o?o:a),t()}catch(l){s("You entered an invalid Postal Code")}}}));return function(){return e.apply(this,arguments)}}();return(0,m.jsx)("div",{className:"regionalization-input",children:(0,m.jsx)(f.Z,{inputRef:n,id:"postal-code-input",error:l,label:"Postal Code",actionable:!0,value:c,onInput:e=>{""!==l&&s(""),y(e.currentTarget.value)},onSubmit:h,onClear:()=>y("")})})},g=n(2478),j=n(1093),C=n(8208),E=n.n(C);var x=function(e){var{onClose:t}=e;return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(l,{onClose:()=>t(),title:"Set your location",description:"Prices, offers and availability may vary according to your location.",closeButtonProps:{"aria-label":"Close Regionalization Modal"}}),(0,m.jsxs)(s,{className:E().fsRegionalizationModalBody,children:[(0,m.jsx)("div",{"data-fs-regionalization-modal-input":!0,children:(0,m.jsx)(h,{closeModal:()=>t()})}),(0,m.jsxs)(j.Z,{href:"/","data-fs-regionalization-modal-link":!0,children:["I don't know my Postal Code",(0,m.jsx)(g.Z,{name:"ArrowSquareOut",width:18,height:18})]})]})]})};var k=function(){return(0,m.jsx)(r.Z,{children:e=>{var{fadeOut:t}=e;return(0,m.jsx)(x,{onClose:t})}})}},8208:function(e){e.exports={"fs-regionalization-modal-body":"regionalization-modal-body_fs-regionalization-modal-body__RBye7",fsRegionalizationModalBody:"regionalization-modal-body_fs-regionalization-modal-body__RBye7"}}}]);
|