@faststore/core 3.0.51 → 3.0.52
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/app-build-manifest.json +3 -3
- package/.next/build-manifest.json +29 -27
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/config.json +3 -3
- package/.next/cache/eslint/.cache_1gneedd +1 -1
- package/.next/cache/fetch-cache/50912854cb7c781522a6ff8792d714e549515fcbbbfd660761961b06afe01c07 +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-minimal-server.js.nft.json +1 -1
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.js +1 -1
- package/.next/prerender-manifest.json +1 -1
- package/.next/react-loadable-manifest.json +1 -1
- package/.next/routes-manifest.json +1 -1
- package/.next/server/app/_not-found.html +2 -2
- package/.next/server/app/_not-found.js.nft.json +1 -1
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/fs-next-update/page.js.nft.json +1 -1
- package/.next/server/app/fs-next-update.html +2 -2
- package/.next/server/app/fs-next-update.rsc +1 -1
- package/.next/server/chunks/2074.js +9 -0
- package/.next/server/chunks/210.js +1 -0
- package/.next/server/chunks/4314.js +1 -0
- package/.next/server/chunks/513.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/404.html +2 -2
- 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 +1 -1
- package/.next/server/pages/[...slug].js.nft.json +1 -1
- package/.next/server/pages/[slug]/p.js +1 -1
- package/.next/server/pages/[slug]/p.js.nft.json +1 -1
- package/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/server/pages/_document.js.nft.json +1 -1
- package/.next/server/pages/_error.js.nft.json +1 -1
- package/.next/server/pages/account.js.nft.json +1 -1
- package/.next/server/pages/api/graphql.js +1 -1
- package/.next/server/pages/api/graphql.js.nft.json +1 -1
- package/.next/server/pages/api/health/live.js.nft.json +1 -1
- package/.next/server/pages/api/health/ready.js.nft.json +1 -1
- package/.next/server/pages/api/preview.js.nft.json +1 -1
- package/.next/server/pages/checkout.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 +2 -2
- package/.next/server/pages/index.js +1 -1
- package/.next/server/pages/index.js.nft.json +1 -1
- package/.next/server/pages/login.js.nft.json +1 -1
- package/.next/server/pages/s.js +1 -1
- package/.next/server/pages/s.js.nft.json +1 -1
- package/.next/server/pages-manifest.json +1 -1
- package/.next/static/chunks/207-38bb75a9dc261947.js +1 -0
- package/.next/static/chunks/661.adc1ee6bb386048a.js +1 -0
- package/.next/static/chunks/pages/[...slug]-76e3ceb9ed46e5fd.js +1 -0
- package/.next/static/chunks/pages/[slug]/p-da3c9dc487f407ce.js +1 -0
- package/.next/static/chunks/pages/index-607f33d0ca51003b.js +1 -0
- package/.next/static/chunks/pages/s-56162ba83c7754f3.js +1 -0
- package/.next/static/chunks/{webpack-9f1c9c7cf9345782.js → webpack-d9b9091082069dd3.js} +1 -1
- package/.next/static/css/3eed8d7ed5000eb8.css +1 -0
- package/.next/static/css/548bab931c45c770.css +1 -0
- package/.next/static/css/{36f9392d58a1a958.css → 65f6dd6d16812461.css} +1 -1
- package/.next/static/css/fa6d43e3c11a59dc.css +1 -0
- package/.next/static/jSa0D6EYVF6ZyY9xud-2S/_buildManifest.js +1 -0
- package/.next/trace +132 -132
- package/.turbo/turbo-build.log +12 -12
- package/.turbo/turbo-test.log +10 -10
- package/package.json +2 -2
- package/src/components/templates/LandingPage/LandingPage.tsx +6 -2
- package/src/components/templates/ProductListingPage/ProductListing.tsx +8 -0
- package/src/components/templates/SearchPage/SearchPage.tsx +16 -4
- package/src/pages/[slug]/p.tsx +10 -2
- package/src/pages/index.tsx +2 -0
- package/.next/server/chunks/1488.js +0 -9
- package/.next/server/chunks/5553.js +0 -1
- package/.next/server/chunks/692.js +0 -1
- package/.next/server/chunks/8609.js +0 -1
- package/.next/server/chunks/9239.js +0 -1
- package/.next/static/D3jXwCCgHDP90sJeJUgm0/_buildManifest.js +0 -1
- package/.next/static/chunks/346-9ca6d5a6a8749dda.js +0 -1
- package/.next/static/chunks/661.238d10731eba48c4.js +0 -1
- package/.next/static/chunks/pages/[...slug]-5e2a4e9dad048ff3.js +0 -1
- package/.next/static/chunks/pages/[slug]/p-003fd9d91eec1798.js +0 -1
- package/.next/static/chunks/pages/index-58951c53d8027e6e.js +0 -1
- package/.next/static/chunks/pages/s-4d4c0bb22d489fa2.js +0 -1
- package/.next/static/css/4ababb851a0d481b.css +0 -1
- package/.next/static/css/6ce7302d311d7d68.css +0 -1
- package/.next/static/css/ec840ce35f0cf5e0.css +0 -1
- /package/.next/static/{D3jXwCCgHDP90sJeJUgm0 → jSa0D6EYVF6ZyY9xud-2S}/_ssgManifest.js +0 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
$ yarn partytown & yarn generate && next build
|
|
2
|
-
$ faststore generate-graphql -c
|
|
3
2
|
$ partytown copylib ./public/~partytown
|
|
3
|
+
$ faststore generate-graphql -c
|
|
4
4
|
Partytown lib copied to: /home/runner/work/faststore/faststore/packages/core/public/~partytown
|
|
5
5
|
success - GraphQL schema, types, and optimizations successfully generated 🎉
|
|
6
6
|
⚠ No build cache found. Please configure build caching for faster rebuilds. Read more: https://nextjs.org/docs/messages/no-cache
|
|
@@ -32,17 +32,17 @@ warn - CustomIconsAlert not found. Add a new component for this section or remov
|
|
|
32
32
|
warn - AlertWithImage not found. Add a new component for this section or remove it from the CMS
|
|
33
33
|
warn - CustomIconsAlert not found. Add a new component for this section or remove it from the CMS
|
|
34
34
|
|
|
35
35
|
Generating static pages (2/9)
|
|
36
|
-
|
|
37
36
|
Generating static pages (4/9)
|
|
38
37
|
warn - AlertWithImage not found. Add a new component for this section or remove it from the CMS
|
|
39
38
|
warn - CustomIconsAlert not found. Add a new component for this section or remove it from the CMS
|
|
39
|
+
|
|
40
40
|
Generating static pages (4/9)
|
|
41
41
|
Warning: Dynamic Content not found for the page: home. Refer to the Dynamic Content documentation at https://developers.vtex.com/docs/guides/faststore/dynamic-content-overview for mapping the page and the corresponding data-fetching function.
|
|
42
42
|
warn - AlertWithImage not found. Add a new component for this section or remove it from the CMS
|
|
43
43
|
warn - CustomIconsAlert not found. Add a new component for this section or remove it from the CMS
|
|
44
|
+
|
|
44
45
|
Generating static pages (6/9)
|
|
45
46
|
warn - AlertWithImage not found. Add a new component for this section or remove it from the CMS
|
|
46
47
|
warn - CustomIconsAlert not found. Add a new component for this section or remove it from the CMS
|
|
47
48
|
warn - AlertWithImage not found. Add a new component for this section or remove it from the CMS
|
|
48
49
|
warn - CustomIconsAlert not found. Add a new component for this section or remove it from the CMS
|
|
49
|
-
|
|
50
50
|
Generating static pages (6/9)
|
|
51
51
|
|
|
52
52
|
✓ Generating static pages (9/9)
|
|
53
53
|
Finalizing page optimization ...
|
|
54
54
|
Collecting build traces ...
|
|
@@ -54,16 +54,16 @@ Route (app) Size First Load JS
|
|
|
54
54
|
├ chunks/503-c781fed990b2a19d.js 28.4 kB
|
|
55
55
|
├ chunks/fd9d1056-43c43818840d7811.js 51.1 kB
|
|
56
56
|
├ chunks/main-app-7b31a9960d0fa675.js 232 B
|
|
57
|
-
└ chunks/webpack-
|
|
57
|
+
└ chunks/webpack-d9b9091082069dd3.js 2.45 kB
|
|
58
58
|
|
|
59
59
|
Route (pages) Size First Load JS
|
|
60
|
-
┌ ● /
|
|
61
|
-
├ └ css/
|
|
60
|
+
┌ ● / 1.26 kB 143 kB
|
|
61
|
+
├ └ css/fa6d43e3c11a59dc.css 755 B
|
|
62
62
|
├ /_app 0 B 93.5 kB
|
|
63
|
-
├ ● /[...slug]
|
|
64
|
-
├ └ css/
|
|
65
|
-
├ ● /[slug]/p
|
|
66
|
-
├ └ css/
|
|
63
|
+
├ ● /[...slug] 2.79 kB 156 kB
|
|
64
|
+
├ └ css/3eed8d7ed5000eb8.css 2.4 kB
|
|
65
|
+
├ ● /[slug]/p 10.9 kB 153 kB
|
|
66
|
+
├ └ css/65f6dd6d16812461.css 9.49 kB
|
|
67
67
|
├ ○ /404 1.47 kB 127 kB
|
|
68
68
|
├ ● /500 1.47 kB 127 kB
|
|
69
69
|
├ ● /account 675 B 126 kB
|
|
@@ -73,12 +73,12 @@ Route (pages) Size First Load JS
|
|
|
73
73
|
├ λ /api/preview 0 B 93.5 kB
|
|
74
74
|
├ ● /checkout 660 B 126 kB
|
|
75
75
|
├ ● /login 1.59 kB 127 kB
|
|
76
|
-
└ ● /s
|
|
76
|
+
└ ● /s 1.49 kB 155 kB
|
|
77
77
|
+ First Load JS shared by all 96.5 kB
|
|
78
78
|
├ chunks/framework-21e9365486ba23a6.js 45.4 kB
|
|
79
79
|
├ chunks/main-5e45f8a409e3ce1c.js 33.1 kB
|
|
80
80
|
├ chunks/pages/_app-ddcbec71774555c4.js 12.6 kB
|
|
81
|
-
├ chunks/webpack-
|
|
81
|
+
├ chunks/webpack-d9b9091082069dd3.js 2.45 kB
|
|
82
82
|
└ css/5d1f64b61ea581f4.css 3.05 kB
|
|
83
83
|
|
|
84
84
|
λ (Server) server-side renders at runtime (uses getInitialProps or getServerSideProps)
|
package/.turbo/turbo-test.log
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
$ jest
|
|
2
|
-
PASS test/server/index.test.ts (26.
|
|
2
|
+
PASS test/server/index.test.ts (26.466 s)
|
|
3
3
|
FastStore GraphQL Layer
|
|
4
4
|
@faststore/api
|
|
5
|
-
✓ should return a valid GraphQL schema (
|
|
6
|
-
✓ should return a valid GraphQL schema contain all expected types (
|
|
7
|
-
✓ should return a valid GraphQL schema contain all expected queries (
|
|
5
|
+
✓ should return a valid GraphQL schema (5 ms)
|
|
6
|
+
✓ should return a valid GraphQL schema contain all expected types (18 ms)
|
|
7
|
+
✓ should return a valid GraphQL schema contain all expected queries (3 ms)
|
|
8
8
|
✓ should return a valid GraphQL schema contain all expected mutations
|
|
9
9
|
VTEX API Extension
|
|
10
|
-
✓ getTypeDefsFromFolder function should return an Array (
|
|
10
|
+
✓ getTypeDefsFromFolder function should return an Array (9 ms)
|
|
11
11
|
Third Party API Extension
|
|
12
|
-
✓ getTypeDefsFromFolder function should return an Array (
|
|
12
|
+
✓ getTypeDefsFromFolder function should return an Array (5 ms)
|
|
13
13
|
Final Schema after merging
|
|
14
|
-
✓ should return a valid merged GraphQL schema (
|
|
14
|
+
✓ should return a valid merged GraphQL schema (51 ms)
|
|
15
15
|
Envelop
|
|
16
|
-
✓ should exist with its plugins (
|
|
17
|
-
✓ should handle options and execute (
|
|
16
|
+
✓ should exist with its plugins (32 ms)
|
|
17
|
+
✓ should handle options and execute (550 ms)
|
|
18
18
|
|
|
19
19
|
Test Suites: 1 passed, 1 total
|
|
20
20
|
Tests: 9 passed, 9 total
|
|
21
21
|
Snapshots: 0 total
|
|
22
|
-
Time: 26.
|
|
22
|
+
Time: 26.575 s
|
|
23
23
|
Ran all test suites.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@faststore/core",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.52",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": "vtex/faststore",
|
|
6
6
|
"browserslist": "supports es6-module and not dead",
|
|
@@ -124,5 +124,5 @@
|
|
|
124
124
|
"node": "18.19.0",
|
|
125
125
|
"yarn": "1.19.1"
|
|
126
126
|
},
|
|
127
|
-
"gitHead": "
|
|
127
|
+
"gitHead": "edb19bceb845435894c31ef2fa13e38fff092a24"
|
|
128
128
|
}
|
|
@@ -3,7 +3,9 @@ import { NextSeo, SiteLinksSearchBoxJsonLd } from 'next-seo'
|
|
|
3
3
|
import type { ComponentType } from 'react'
|
|
4
4
|
|
|
5
5
|
import RenderSections from 'src/components/cms/RenderSections'
|
|
6
|
+
import BannerNewsletter from 'src/components/sections/BannerNewsletter/BannerNewsletter'
|
|
6
7
|
import { OverriddenDefaultBannerText as BannerText } from 'src/components/sections/BannerText/OverriddenDefaultBannerText'
|
|
8
|
+
import { OverriddenDefaultCrossSellingShelf as CrossSellingShelf } from 'src/components/sections/CrossSellingShelf/OverriddenDefaultCrossSellingShelf'
|
|
7
9
|
import { OverriddenDefaultHero as Hero } from 'src/components/sections/Hero/OverriddenDefaultHero'
|
|
8
10
|
import Incentives from 'src/components/sections/Incentives'
|
|
9
11
|
import { OverriddenDefaultNewsletter as Newsletter } from 'src/components/sections/Newsletter/OverriddenDefaultNewsletter'
|
|
@@ -20,11 +22,13 @@ import storeConfig from 'faststore.config'
|
|
|
20
22
|
/* A list of components that can be used in the CMS. */
|
|
21
23
|
const COMPONENTS: Record<string, ComponentType<any>> = {
|
|
22
24
|
Hero,
|
|
25
|
+
BannerText,
|
|
26
|
+
BannerNewsletter,
|
|
27
|
+
CrossSellingShelf,
|
|
23
28
|
Incentives,
|
|
29
|
+
Newsletter,
|
|
24
30
|
ProductShelf,
|
|
25
31
|
ProductTiles,
|
|
26
|
-
BannerText,
|
|
27
|
-
Newsletter,
|
|
28
32
|
...CUSTOM_COMPONENTS,
|
|
29
33
|
}
|
|
30
34
|
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { useSearch } from '@faststore/sdk'
|
|
2
2
|
import type { ServerCollectionPageQueryQuery } from '@generated/graphql'
|
|
3
3
|
import deepmerge from 'deepmerge'
|
|
4
|
+
import BannerNewsletter from 'src/components/sections/BannerNewsletter/BannerNewsletter'
|
|
5
|
+
import { OverriddenDefaultBannerText as BannerText } from 'src/components/sections/BannerText/OverriddenDefaultBannerText'
|
|
4
6
|
import { OverriddenDefaultBreadcrumb as Breadcrumb } from 'src/components/sections/Breadcrumb/OverriddenDefaultBreadcrumb'
|
|
5
7
|
import { OverriddenDefaultHero as Hero } from 'src/components/sections/Hero/OverriddenDefaultHero'
|
|
8
|
+
import { OverriddenDefaultNewsletter as Newsletter } from 'src/components/sections/Newsletter/OverriddenDefaultNewsletter'
|
|
6
9
|
import { OverriddenDefaultProductGallery as ProductGallery } from 'src/components/sections/ProductGallery/OverriddenDefaultProductGallery'
|
|
7
10
|
import { OverriddenDefaultProductShelf as ProductShelf } from 'src/components/sections/ProductShelf/OverriddenDefaultProductShelf'
|
|
11
|
+
import ProductTiles from 'src/components/sections/ProductTiles'
|
|
8
12
|
import ScrollToTopButton from 'src/components/sections/ScrollToTopButton'
|
|
9
13
|
import { ITEMS_PER_PAGE } from 'src/constants'
|
|
10
14
|
|
|
@@ -31,9 +35,13 @@ export type ProductListingPageProps = {
|
|
|
31
35
|
*/
|
|
32
36
|
const COMPONENTS: Record<string, ComponentType<any>> = {
|
|
33
37
|
Breadcrumb,
|
|
38
|
+
BannerText,
|
|
39
|
+
BannerNewsletter,
|
|
34
40
|
Hero,
|
|
41
|
+
Newsletter,
|
|
35
42
|
ProductGallery,
|
|
36
43
|
ProductShelf,
|
|
44
|
+
ProductTiles,
|
|
37
45
|
...CUSTOM_COMPONENTS,
|
|
38
46
|
}
|
|
39
47
|
|
|
@@ -1,19 +1,25 @@
|
|
|
1
1
|
import { useSearch } from '@faststore/sdk'
|
|
2
2
|
import type { ComponentType } from 'react'
|
|
3
3
|
|
|
4
|
+
import RenderSections from 'src/components/cms/RenderSections'
|
|
5
|
+
import BannerNewsletter from 'src/components/sections/BannerNewsletter/BannerNewsletter'
|
|
6
|
+
import { OverriddenDefaultBannerText as BannerText } from 'src/components/sections/BannerText/OverriddenDefaultBannerText'
|
|
4
7
|
import { OverriddenDefaultBreadcrumb as Breadcrumb } from 'src/components/sections/Breadcrumb/OverriddenDefaultBreadcrumb'
|
|
8
|
+
import { OverriddenDefaultHero as Hero } from 'src/components/sections/Hero/OverriddenDefaultHero'
|
|
9
|
+
import { OverriddenDefaultNewsletter as Newsletter } from 'src/components/sections/Newsletter/OverriddenDefaultNewsletter'
|
|
5
10
|
import { OverriddenDefaultProductGallery as ProductGallery } from 'src/components/sections/ProductGallery/OverriddenDefaultProductGallery'
|
|
11
|
+
import { OverriddenDefaultProductShelf as ProductShelf } from 'src/components/sections/ProductShelf/OverriddenDefaultProductShelf'
|
|
12
|
+
import ProductTiles from 'src/components/sections/ProductTiles'
|
|
6
13
|
import { ITEMS_PER_PAGE } from 'src/constants'
|
|
7
14
|
import CUSTOM_COMPONENTS from 'src/customizations/src/components'
|
|
8
|
-
import
|
|
9
|
-
import { SearchContentType } from 'src/server/cms'
|
|
10
|
-
import { useProductGalleryQuery } from 'src/sdk/product/useProductGalleryQuery'
|
|
15
|
+
import { SearchPageContextType } from 'src/pages/s'
|
|
11
16
|
import PageProvider, { SearchPageContext } from 'src/sdk/overrides/PageProvider'
|
|
12
17
|
import {
|
|
13
18
|
useCreateUseGalleryPage,
|
|
14
19
|
UseGalleryPageContext,
|
|
15
20
|
} from 'src/sdk/product/usePageProductsQuery'
|
|
16
|
-
import {
|
|
21
|
+
import { useProductGalleryQuery } from 'src/sdk/product/useProductGalleryQuery'
|
|
22
|
+
import { SearchContentType } from 'src/server/cms'
|
|
17
23
|
|
|
18
24
|
/**
|
|
19
25
|
* Sections: Components imported from each store's custom components and '../components/sections' only.
|
|
@@ -21,7 +27,13 @@ import { SearchPageContextType } from 'src/pages/s'
|
|
|
21
27
|
*/
|
|
22
28
|
const COMPONENTS: Record<string, ComponentType<any>> = {
|
|
23
29
|
Breadcrumb,
|
|
30
|
+
BannerText,
|
|
31
|
+
BannerNewsletter,
|
|
32
|
+
Newsletter,
|
|
33
|
+
Hero,
|
|
24
34
|
ProductGallery,
|
|
35
|
+
ProductShelf,
|
|
36
|
+
ProductTiles,
|
|
25
37
|
...CUSTOM_COMPONENTS,
|
|
26
38
|
}
|
|
27
39
|
|
package/src/pages/[slug]/p.tsx
CHANGED
|
@@ -15,7 +15,11 @@ import BannerNewsletter from 'src/components/sections/BannerNewsletter/BannerNew
|
|
|
15
15
|
import { OverriddenDefaultBannerText as BannerText } from 'src/components/sections/BannerText/OverriddenDefaultBannerText'
|
|
16
16
|
import { OverriddenDefaultBreadcrumb as Breadcrumb } from 'src/components/sections/Breadcrumb/OverriddenDefaultBreadcrumb'
|
|
17
17
|
import { OverriddenDefaultCrossSellingShelf as CrossSellingShelf } from 'src/components/sections/CrossSellingShelf/OverriddenDefaultCrossSellingShelf'
|
|
18
|
+
import { OverriddenDefaultHero as Hero } from 'src/components/sections/Hero/OverriddenDefaultHero'
|
|
19
|
+
import { OverriddenDefaultNewsletter as Newsletter } from 'src/components/sections/Newsletter/OverriddenDefaultNewsletter'
|
|
18
20
|
import { OverriddenDefaultProductDetails as ProductDetails } from 'src/components/sections/ProductDetails/OverriddenDefaultProductDetails'
|
|
21
|
+
import { OverriddenDefaultProductShelf as ProductShelf } from 'src/components/sections/ProductShelf/OverriddenDefaultProductShelf'
|
|
22
|
+
import ProductTiles from 'src/components/sections/ProductTiles'
|
|
19
23
|
import CUSTOM_COMPONENTS from 'src/customizations/src/components'
|
|
20
24
|
import { useSession } from 'src/sdk/session'
|
|
21
25
|
import { mark } from 'src/sdk/tests/mark'
|
|
@@ -36,10 +40,14 @@ import { PDPContentType, getPDP } from 'src/server/cms/pdp'
|
|
|
36
40
|
*/
|
|
37
41
|
const COMPONENTS: Record<string, ComponentType<any>> = {
|
|
38
42
|
Breadcrumb,
|
|
39
|
-
ProductDetails,
|
|
40
|
-
CrossSellingShelf,
|
|
41
43
|
BannerNewsletter,
|
|
44
|
+
Newsletter,
|
|
42
45
|
BannerText,
|
|
46
|
+
Hero,
|
|
47
|
+
ProductDetails,
|
|
48
|
+
ProductShelf,
|
|
49
|
+
ProductTiles,
|
|
50
|
+
CrossSellingShelf,
|
|
43
51
|
...CUSTOM_COMPONENTS,
|
|
44
52
|
}
|
|
45
53
|
|
package/src/pages/index.tsx
CHANGED
|
@@ -4,6 +4,7 @@ import { NextSeo, SiteLinksSearchBoxJsonLd } from 'next-seo'
|
|
|
4
4
|
import type { ComponentType } from 'react'
|
|
5
5
|
|
|
6
6
|
import RenderSections from 'src/components/cms/RenderSections'
|
|
7
|
+
import BannerNewsletter from 'src/components/sections/BannerNewsletter/BannerNewsletter'
|
|
7
8
|
import { OverriddenDefaultBannerText as BannerText } from 'src/components/sections/BannerText/OverriddenDefaultBannerText'
|
|
8
9
|
import { OverriddenDefaultHero as Hero } from 'src/components/sections/Hero/OverriddenDefaultHero'
|
|
9
10
|
import Incentives from 'src/components/sections/Incentives'
|
|
@@ -30,6 +31,7 @@ const COMPONENTS: Record<string, ComponentType<any>> = {
|
|
|
30
31
|
ProductShelf,
|
|
31
32
|
ProductTiles,
|
|
32
33
|
BannerText,
|
|
34
|
+
BannerNewsletter,
|
|
33
35
|
Newsletter,
|
|
34
36
|
...CUSTOM_COMPONENTS,
|
|
35
37
|
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
exports.id=1488,exports.ids=[1488],exports.modules={6737:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(6689),a=r.n(n);let o=(0,n.forwardRef)(function({testId:e="fs-product-shelf",children:t,...r},n){return a().createElement("div",{ref:n,"data-fs-product-shelf":!0,"data-fs-content":"product-shelf","data-testid":e,...r},t)}),i=o},6832:(e,t,r)=>{"use strict";r.d(t,{i:()=>g});var n=r(9629),a=r(4208),o=r(7473),i=r(6319),l=r.n(i),s=r(6689),c=r.n(s);let u=(0,s.createContext)(void 0),d=(0,s.forwardRef)(function({children:e,testId:t="fs-banner-text",variant:r="primary",colorVariant:n="main",...a},o){return c().createElement(u.Provider,{value:{variant:r,colorVariant:n}},c().createElement("article",{ref:o,"data-fs-banner-text":!0,"data-fs-content":"banner-text","data-fs-banner-text-variant":r,"data-fs-banner-text-color-variant":n,"data-testid":t,...a},e))});var p=r(3922);let f=(0,s.forwardRef)(function({testId:e="fs-banner-text-content",title:t,caption:r,link:n,linkText:a,linkTargetBlank:o,...i},l){let{variant:d,colorVariant:f}=function(){let e=(0,s.useContext)(u);if(void 0===e)throw Error("Do not use BannerText components outside the BannerText context.");return e}();return c().createElement("header",{ref:l,"data-fs-banner-text-content":!0,"data-fs-content":"banner-text","data-testid":e,...i},c().createElement("div",{"data-fs-banner-text-heading":!0,"data-fs-banner-text-color-variant":f},c().createElement("h2",null,t),"secondary"===d&&r&&c().createElement("p",null,r)),c().createElement(p.Z,{"data-fs-banner-text-link":!0,href:n,variant:d,inverse:"main"===f,"aria-label":a,target:o?"_blank":void 0},a))});var b=r(997);function ownKeys(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 _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let m=(0,n.B)("BannerText",function({title:e,caption:t,link:{url:r,text:n,linkTargetBlank:i},variant:s,colorVariant:c}){let{BannerText:u,BannerTextContent:d}=(0,a.r3)();return b.jsx(o.Z,{className:`${l().section} section-banner layout__section`,children:b.jsx(u.Component,_objectSpread(_objectSpread({},u.props),{},{variant:s??u.props.variant??"primary",colorVariant:c??u.props.colorVariant??"main",children:b.jsx(d.Component,_objectSpread(_objectSpread({},d.props),{},{title:e,caption:t,link:r??d.props.link,linkText:n??d.props.linkText,linkTargetBlank:i??d.props.linkTargetBlank}))}))})},{BannerText:d,BannerTextContent:f});function OverriddenDefaultBannerText_ownKeys(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 OverriddenDefaultBannerText_objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?OverriddenDefaultBannerText_ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):OverriddenDefaultBannerText_ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let g=(0,n.v)(OverriddenDefaultBannerText_objectSpread(OverriddenDefaultBannerText_objectSpread({},{section:"BannerText"}),{},{Section:m}))},6324:(e,t,r)=>{"use strict";r.d(t,{O:()=>N});var n=r(9629),a=r(6689),o=r.n(a),i=r(6652),l=r(236),s=r(549),c=r.n(s),u=r(3362),d=r(3523);let useLazyQuery=(e,t,r)=>{let n=c()((0,d.km)(e.__meta__.operationName,t),()=>null,d.WN),execute=async t=>{let a=await (0,u.W)(e,t,r);n.mutate(a,!1)};return[execute,n]},p=l.HZ,useNewsletter=()=>{let[e,{data:t,error:r,isValidating:n}]=useLazyQuery(p,{data:{name:"",email:""}});return{subscribeUser:e,data:t,error:r,loading:n}};var f=r(4208),b=r(997);function ownKeys(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 _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let Newsletter_Newsletter=function({icon:{icon:e,alt:t},title:r,description:n,privacyPolicy:o,emailInputLabel:l,displayNameInput:s,nameInputLabel:c,subscribeButtonLabel:u,subscribeButtonLoadingLabel:d,card:p,toastSubscribe:m,toastSubscribeError:g,colorVariant:y}){let{Button:O,HeaderIcon:P,InputFieldName:w,InputFieldEmail:j,Newsletter:h,NewsletterAddendum:v,NewsletterContent:S,NewsletterForm:_,NewsletterHeader:x,ToastIconError:E,ToastIconSuccess:D}=(0,f.r3)(),{pushToast:C}=(0,i.l)(),{subscribeUser:I,loading:k,data:N}=useNewsletter(),T=(0,a.useRef)(null),L=(0,a.useRef)(null),B=(0,a.useRef)(null);return b.jsx(h.Component,_objectSpread(_objectSpread({card:p,colorVariant:y},h.props),{},{children:(0,b.jsxs)(_.Component,_objectSpread(_objectSpread({ref:T,onSubmit:e=>{e.preventDefault(),I({data:{name:L.current?.value??"",email:B.current?.value??""}}),N?.subscribeToNewsletter?.id?C(_objectSpread(_objectSpread({},m),{},{status:"INFO",icon:b.jsx(D.Component,_objectSpread(_objectSpread({width:30,height:30},D.props),{},{name:m.icon??D.props.name}))})):C(_objectSpread(_objectSpread({},g),{},{status:"ERROR",icon:b.jsx(E.Component,_objectSpread(_objectSpread({width:30,height:30},E.props),{},{name:m.icon??E.props.name}))})),T.current.reset()}},_.props),{},{children:[b.jsx(x.Component,_objectSpread({title:r,description:n,icon:b.jsx(P.Component,_objectSpread(_objectSpread({width:32,height:32},P.props),{},{name:e??P.props.name,"aria-label":t??P.props["aria-label"]}))},x.props)),(0,b.jsxs)(S.Component,_objectSpread(_objectSpread({},S.props),{},{children:[s&&b.jsx(w.Component,_objectSpread(_objectSpread({id:"newsletter-name",required:!0},w.props),{},{label:c??w.props.label,inputRef:L})),b.jsx(j.Component,_objectSpread(_objectSpread({id:"newsletter-email",type:"email",required:!0},j.props),{},{label:l??j.props.label,inputRef:B})),b.jsx(v.Component,_objectSpread({addendum:o},v.props)),b.jsx(O.Component,_objectSpread(_objectSpread({variant:"secondary",inverse:!0,type:"submit"},O.props),{},{children:k?d:u}))]}))]}))}))};var m=r(7473),g=r(9518),y=r.n(g),O=r(3339),P=r(2614),w=r(3779);let j=(0,a.forwardRef)(function({card:e,children:t,colorVariant:r="main",testId:n="fs-newsletter",...a},i){return o().createElement("div",{ref:i,"data-testid":n,"data-fs-content":"newsletter","data-fs-newsletter":e?"card":"","data-fs-newsletter-color-variant":r,...a},t)}),h=(0,a.forwardRef)(function({children:e,testId:t="fs-newsletter-content",...r},n){return o().createElement("div",{ref:n,"data-testid":t,"data-fs-newsletter-content":!0,...r},e)}),v=(0,a.forwardRef)(function({children:e,onSubmit:t,testId:r="fs-newsletter-form",...n},a){return o().createElement("form",{ref:a,"data-testid":r,"data-fs-newsletter-form":!0,onSubmit:t,...n},e)}),S=(0,a.forwardRef)(function({icon:e,title:t,description:r,testId:n="fs-newsletter-header",...a},i){return o().createElement("header",{ref:i,"data-testid":n,"data-fs-newsletter-header":!0,...a},o().createElement("h3",{"data-fs-newsletter-header-title":!0},e,t),r&&o().createElement("span",{"data-fs-newsletter-header-description":!0},r))});var _=r(8641),x=r.n(_);let E=(0,a.forwardRef)(function({addendum:e,testId:t="fs-newsletter-addendum",...r},n){return o().createElement("span",{ref:n,"data-testid":t,"data-fs-newsletter-addendum":!0,...r},e)}),D=["addendum"];function NewsletterAddendum_ownKeys(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}let C={Button:O.Z,HeaderIcon:P.Z,InputFieldEmail:w.Z,InputFieldName:w.Z,Newsletter:j,NewsletterAddendum:function(e){let{addendum:t}=e,r=function(e,t){if(null==e)return{};var r,n,a=function(e,t){if(null==e)return{};var r,n,a={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)r=o[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}(e,D);return b.jsx(E,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?NewsletterAddendum_ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):NewsletterAddendum_ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}({dangerouslySetInnerHTML:{__html:function(e){if(!e)return"";let t=null;try{t=JSON.parse(e)}catch(e){throw Error('Newsletter\'s prop "addendum" is not a JSON string. This is happening because the overridden prop is malformed or the CMS is providing malformed content for that prop.',{cause:e})}return t?x()(t,void 0,void 0,(e,t)=>{var r;return"LINK"!==e.type?null:(r=e.data.url,`
|
|
2
|
-
<a
|
|
3
|
-
data-fs-link="true"
|
|
4
|
-
data-fs-link-variant="inline"
|
|
5
|
-
data-fs-link-inverse="true"
|
|
6
|
-
data-fs-link-size="regular"
|
|
7
|
-
data-testid="fs-link"
|
|
8
|
-
href="${r}"
|
|
9
|
-
>${t}</a>`)}):""}(t)}},r))},NewsletterContent:h,NewsletterForm:v,NewsletterHeader:S,ToastIconError:P.Z,ToastIconSuccess:P.Z},I=["icon","title","description","privacyPolicy","emailInputLabel","displayNameInput","nameInputLabel","subscribeButtonLabel","subscribeButtonLoadingLabel","card","toastSubscribe","toastSubscribeError","colorVariant"];function Newsletter_ownKeys(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}let k=(0,n.B)("Newsletter",function(e){let{icon:t,title:r,description:n,privacyPolicy:a,emailInputLabel:o,displayNameInput:i,nameInputLabel:l,subscribeButtonLabel:s,subscribeButtonLoadingLabel:c,card:u,toastSubscribe:d,toastSubscribeError:p,colorVariant:f}=e,g=function(e,t){if(null==e)return{};var r,n,a=function(e,t){if(null==e)return{};var r,n,a={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)r=o[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}(e,I);return b.jsx(m.Z,{className:`${y().section} section-newsletter layout__section`,children:b.jsx(Newsletter_Newsletter,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Newsletter_ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Newsletter_ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}({icon:t,title:r,description:n,privacyPolicy:a,emailInputLabel:o,displayNameInput:i,nameInputLabel:l,subscribeButtonLabel:s,subscribeButtonLoadingLabel:c,toastSubscribe:d,toastSubscribeError:p,card:u,colorVariant:f},g))})},C);function OverriddenDefaultNewsletter_ownKeys(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 OverriddenDefaultNewsletter_objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?OverriddenDefaultNewsletter_ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):OverriddenDefaultNewsletter_ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let N=(0,n.v)(OverriddenDefaultNewsletter_objectSpread(OverriddenDefaultNewsletter_objectSpread({},{section:"Newsletter"}),{},{Section:k}))},7657:(e,t,r)=>{"use strict";r.d(t,{Z:()=>ui_Carousel_Carousel});var n=r(6689),a=r.n(n),o=r(7041),i=r(2614),l=r(3789);let nextPage=(e,t)=>(e+1)%t,previousPage=(e,t)=>(t-(t-e+1)%t)%t;function reducer(e,t){switch(t.type){case"NEXT_PAGE":{let t=e.infinite?e.totalPages+1:e.totalPages,r=nextPage(e.currentPage,t),n=r%t*e.itemsPerPage;return{...e,sliding:!0,slideDirection:"next",currentItem:n,currentPage:r}}case"PREVIOUS_PAGE":{let t=e.infinite?e.totalPages+1:e.totalPages,r=e.infinite&&0===e.currentPage,n=r?-1:previousPage(e.currentPage,e.totalPages);return{...e,sliding:!0,slideDirection:"previous",currentItem:n%t*e.itemsPerPage,currentPage:n}}case"GO_TO_PAGE":if(t.payload.pageIndex===e.currentPage)return e;return{...e,sliding:t.payload.shouldSlide,slideDirection:t.payload.pageIndex>e.currentPage?"next":"previous",currentItem:t.payload.pageIndex%e.totalPages*e.itemsPerPage,currentPage:t.payload.pageIndex};case"STOP_SLIDE":return{...e,sliding:!1};default:return e}}let defaultSliderState=(e,t,r)=>({currentItem:0,currentPage:0,sliding:!1,slideDirection:"next",totalItems:e,itemsPerPage:t,totalPages:Math.ceil(e/t),infinite:r}),slide=(e,t)=>{"next"===e&&t({type:"NEXT_PAGE"}),"previous"===e&&t({type:"PREVIOUS_PAGE"}),"number"==typeof e&&t({type:"GO_TO_PAGE",payload:{pageIndex:e,shouldSlide:!0}})},useSlider=({totalItems:e,itemsPerPage:t=1,infiniteMode:r=!1,shouldSlideOnSwipe:a=!0,...o})=>{let[i,s]=(0,n.useReducer)(reducer,void 0,()=>defaultSliderState(e,t,r)),c=(0,l.useSwipeable)({onSwipedRight:()=>a&&slide("previous",s),onSwipedLeft:()=>a&&slide("next",s),trackMouse:!0,...o});return{handlers:c,slide,sliderState:i,sliderDispatch:s}};var s=r(3339);let defaultAriaLabel=(e,t,r)=>r?`Current page from ${e}`:`Go to page ${t+1} from ${e}`,c=(0,n.forwardRef)(function({id:e,totalQuantity:t,activeBullet:r,onClick:o,testId:i="fs-carousel-bullets",ariaLabelGenerator:l=defaultAriaLabel,ariaControlsGenerator:c,...u},d){let p=(0,n.useMemo)(()=>Array(t).fill(0),[t]);return a().createElement("div",{ref:d,"data-fs-carousel-bullets":!0,"data-testid":i,role:"tablist",...u},p.map((t,n)=>{let u=r===n;return a().createElement(s.Z,{key:`${e}-${n}`,role:"tab",tabIndex:-1,"data-fs-carousel-bullet":!0,testId:`${i}-bullet`,onClick:e=>o(e,n),"aria-label":l(e,n,u),"aria-controls":c?.(n),"aria-selected":u,variant:"tertiary"})}))}),useSlideVisibility=({currentSlide:e,itemsPerPage:t,totalItems:r})=>{let a=(0,n.useRef)(new Set);(0,n.useEffect)(()=>{for(let r=0;r<t;r++)a.current.add(e+r)},[e,t]);let isItemVisible=n=>(function({itemsPerPage:e,currentSlide:t,slideIdx:r,totalItems:n}){return t<0||t>=n||r>=t&&r<t+e})({slideIdx:n,currentSlide:e,itemsPerPage:t,totalItems:r});return{shouldRenderItem:e=>a.current.has(e)||isItemVisible(e),isItemVisible}},Carousel_CarouselItem=function({id:e,index:t,state:r,children:n,totalItems:o,infiniteMode:i,isScrollCarousel:l,marginRightValue:s}){let{isItemVisible:c,shouldRenderItem:u}=useSlideVisibility({totalItems:o,currentSlide:r.currentItem,itemsPerPage:r.itemsPerPage}),d={width:`calc((100% - ${s} * ${r.itemsPerPage-1}) / ${r.itemsPerPage})`},p=l&&r.itemsPerPage>1?{...d}:{width:"100%"},f=l||u(t-Number(i));return a().createElement("li",{style:p,id:`${e}-carousel-item-${t}`,"data-fs-carousel-item":!0,"data-fs-carousel-item-visible":c(t-Number(i))||void 0},f?n:null)},createTransformValues=(e,t)=>{let r={},n=100/t;for(let a=0;a<t;++a){let t=e?a-1:a,o=-(n*a);r[t]=o}return r},Carousel_Carousel=function({children:e,className:t,"aria-label":r,infiniteMode:l=!1,controls:s="complete",testId:u="fs-carousel",transition:d={duration:400,property:"transform"},id:p="fs-carousel",variant:f="scroll",itemsPerPage:b=1,navigationIcons:m,...g}){if(b<1)throw Error("itemsPerPage must be greater than or equal to 1");let y=(0,n.useRef)(null),O="slide"===f,P="scroll"===f,w=a().Children.toArray(e),j=w.length,h=l?j+2:j,v=`${d.property} ${d.duration}ms ${d.timing??""} ${d.delay??""}`,{handlers:S,slide:_,sliderState:x,sliderDispatch:E}=useSlider({itemsPerPage:b,infiniteMode:l,totalItems:j,shouldSlideOnSwipe:O,...g}),D=Math.ceil(j/x.itemsPerPage),[C,I]=(0,n.useState)("16px"),[k,N]=(0,n.useState)(0);(0,n.useEffect)(()=>{let e=y.current?.firstElementChild;e&&(I(getComputedStyle(e).getPropertyValue("margin-right")),N(Number(e.clientWidth)+parseInt(C,10)+1))},[k]);let T=(0,n.useMemo)(()=>createTransformValues(l,h),[h,l]),L=l&&e?w.slice(0,1):[],B=l&&e?w.slice(j-1):[],R=B.concat(e??[],L),K=(0,n.useMemo)(()=>({width:`${100*h}%`,transition:x.sliding?v:void 0,transform:`translate3d(${T[x.currentPage]}%, 0, 0)`}),[h,T,v,x.sliding,x.currentPage]),$=(0,n.useMemo)(()=>({width:"100%",overflowX:"scroll",whiteSpace:"nowrap"}),[]),slidePrevious=()=>{!x.sliding&&(l||0!==x.currentPage)&&_("previous",E)},slideNext=()=>{!x.sliding&&(l||x.currentPage!==j-1)&&_("next",E)},onScrollPagination=async(e,t)=>{if("previous"===t&&0===x.currentPage||"next"===t&&x.currentPage===x.totalPages-1)return;let r=e*k*b;y.current?.scrollTo({left:r,behavior:"smooth"}),_(e,E)};return a().createElement("section",{id:p,"data-fs-carousel":!0,"data-fs-carousel-variant":f,className:t,"data-testid":u,"aria-label":r},a().createElement("div",{"data-fs-carousel-track-container":!0,style:{width:"100%",overflow:"hidden",display:P?"block":void 0},...S},a().createElement("ul",{"aria-live":"polite",ref:y,style:O&&K||P&&$,"data-fs-carousel-track":!0,onScroll:e=>{if(O||b>1)return;let t=Number(e.currentTarget.firstElementChild?.scrollWidth),r=e.currentTarget?.scrollLeft,n=r>t/2?Math.round:Math.floor,a=n(r/t);_(a,E)},onTransitionEnd:()=>{E({type:"STOP_SLIDE"}),l&&x.currentItem>=j&&E({type:"GO_TO_PAGE",payload:{pageIndex:0,shouldSlide:!1}}),l&&x.currentItem<0&&E({type:"GO_TO_PAGE",payload:{pageIndex:x.totalPages-1,shouldSlide:!1}})}},R.map((e,t)=>a().createElement(Carousel_CarouselItem,{id:p,index:t,key:String(t),state:x,totalItems:j,infiniteMode:l,isScrollCarousel:P,marginRightValue:C},e)))),1!==D&&("complete"===s||"navigationArrows"===s)&&a().createElement("div",{"data-fs-carousel-controls":!0},a().createElement(o.Z,{"data-fs-carousel-control":"left","aria-controls":p,disabled:!l&&0===x.currentPage,"aria-label":"previous",icon:m?.left??a().createElement(i.Z,{name:"ArrowLeft",width:20,height:20,weight:"bold"}),onClick:()=>{O&&slidePrevious(),P&&onScrollPagination(x.currentPage-1,"previous")}}),a().createElement(o.Z,{"data-fs-carousel-control":"right","aria-controls":p,disabled:!l&&x.currentPage===x.totalPages-1,"aria-label":"next",icon:m?.right??a().createElement(i.Z,{name:"ArrowRight",width:20,height:20,weight:"bold"}),onClick:()=>{O&&slideNext(),P&&onScrollPagination(x.currentPage+1,"next")}})),1!==D&&("complete"===s||"paginationBullets"===s)&&a().createElement(c,{id:p,tabIndex:0,activeBullet:x.currentPage,totalQuantity:D,onKeyDown:e=>{switch(e.key){case"ArrowLeft":O&&slidePrevious(),P&&onScrollPagination(x.currentPage-1,"previous");break;case"ArrowRight":O&&slideNext(),P&&onScrollPagination(x.currentPage+1,"next");break;case"Home":_(0,E);break;case"End":_(j-1,E)}},onClick:async(e,t)=>{O&&!x.sliding&&_(t,E),P&&onScrollPagination(t)},onFocus:e=>e.currentTarget.focus(),ariaControlsGenerator:e=>`${p}-carousel-item-${e}`}))};var u=r(997);let ui_Carousel_Carousel=function({id:e,testId:t,children:r,itemsPerPage:n,variant:a="scroll",infiniteMode:o=!1}){let i=window.innerWidth<=768;return u.jsx(Carousel_Carousel,{id:e,testId:t,variant:a,infiniteMode:o,itemsPerPage:i?1.6:n,children:r})}},8041:(e,t,r)=>{"use strict";r.d(t,{Z:()=>ui_ProductShelf_ProductShelf});var n=r(6689),a=r.n(n),o=r(5553),i=r(6737);let l=(0,n.forwardRef)(function({testId:e="fs-product-shelf-items",children:t,...r},n){return a().createElement("ul",{role:"list",ref:n,"data-fs-product-shelf-items":!0,"data-fs-content":"product-shelf","data-testid":e,...r},t)}),s=(0,n.forwardRef)(function({testId:e="fs-product-shelf-item",children:t,...r},n){return a().createElement("li",{role:"listitem",ref:n,"data-fs-product-shelf-item":!0,"data-testid":e,...r},t)});var c=r(5209),u=r(997);let ProductShelfSkeleton_ProductShelfSkeleton=function({children:e,aspectRatio:t,itemsPerPage:r,loading:n=!0}){return n?u.jsx(i.Z,{"data-fs-product-shelf-skeleton":!0,children:u.jsx(l,{children:Array.from({length:r},(e,r)=>u.jsx(s,{children:u.jsx(c.Z,{aspectRatio:t,sectioned:!0,bordered:!0})},String(r)))})}):u.jsx(u.Fragment,{children:e})};var d=r(4208),p=r(7490),f=r(1411);let b=["title","inView","productCardConfiguration","numberOfItems","itemsPerPage"];function ownKeys(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 _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let ui_ProductShelf_ProductShelf=function(e){let{title:t,inView:r,productCardConfiguration:{bordered:a,showDiscountBadge:i}={},numberOfItems:l,itemsPerPage:s=5}=e,c=function(e,t){if(null==e)return{};var r,n,a=function(e,t){if(null==e)return{};var r,n,a={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)r=o[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}(e,b),{ProductShelf:m,__experimentalCarousel:g,__experimentalProductCard:y}=(0,d.r3)(),O=(0,f.B5)(t),P=(0,n.useId)(),w=(0,n.useRef)(!1),j=(0,p.k)(_objectSpread({first:l},c)),h=j?.search?.products,v=h?.edges??[],{sendViewItemListEvent:S}=(0,o.m)({products:v,title:t,page:0,pageSize:0});return((0,n.useEffect)(()=>{r&&!w.current&&v.length&&(S(),w.current=!0)},[r,v.length,S]),h?.edges.length===0)?null:(0,u.jsxs)(u.Fragment,{children:[u.jsx("h2",{className:"text__title-section layout__content",children:t}),u.jsx(ProductShelfSkeleton_ProductShelfSkeleton,{aspectRatio:1,loading:void 0===h,itemsPerPage:s,children:u.jsx(m.Component,_objectSpread(_objectSpread({},m.props),{},{children:u.jsx(g.Component,_objectSpread(_objectSpread({id:O||P,itemsPerPage:s},g.props),{},{children:v.map((e,t)=>(0,n.createElement)(y.Component,_objectSpread(_objectSpread({aspectRatio:1,imgProps:{width:216,height:216,sizes:"(max-width: 768px) 42vw, 30vw"}},y.props),{},{bordered:a??y.props.bordered,showDiscountBadge:i??y.props.showDiscountBadge,key:`${e.node.id}`,product:e.node,index:t+1})))}))}))})]})}},7490:(e,t,r)=>{"use strict";r.d(t,{k:()=>useProductsQuery});var n=r(236),a=r(3523),o=r(2465);function ownKeys(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}let i=n.gU,useProductsQuery=(e,t)=>{let r=(0,o.y)(e),{data:n}=(0,a.aM)(i,r,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}({fallbackData:null,suspense:!0},t));return n}},1411:(e,t,r)=>{"use strict";function textToKebabCase(e){let t=e.replace(/[^\w\s]/gi,"-");return(t=(t=t.replace(/\s+/g,"-")).toLowerCase())??""}function normalizePLPSlug(e){let t=e.replace(/^\/+|\/+$/g,"");return"/"+(t=t.replace(/\/+/g,"/").replace(/\s+/g,"")).toLowerCase()}function findPLPTemplateBySlug(e,t){return e.find(e=>{if(!e.settings?.template?.value)return!1;let r=normalizePLPSlug(e.settings?.template?.value);return r===t})}function findBestPLPTemplate(e,t){let r=normalizePLPSlug(t),n=findPLPTemplateBySlug(e,r);for(;!n&&-1!==r.lastIndexOf("/");)n=findPLPTemplateBySlug(e,r=r.substring(0,r.lastIndexOf("/")));return n||e.find(e=>!e.settings?.template?.value)||e[0]}function findBestPDPTemplate(e,t,r){let n=r?.breadcrumbList?.itemListElement?[...r?.breadcrumbList?.itemListElement].reverse().map(({item:e})=>e):[];for(let r of(n.unshift(t),n))for(let t of e){if(!t.settings?.template?.value)continue;let e=function(e){let t=e.trim().replace(/^\/+|\/+$/g,"");return t.startsWith("/")||(t="/"+t),t.endsWith("/p")||(t+="/"),(t=t.replace(/\/+/g,"/").replace(/\s+/g,"")).toLowerCase()}(t.settings.template.value);if(e===r)return t}return e.find(e=>!e.settings?.template?.value)||e[0]}r.d(t,{$j:()=>findBestPDPTemplate,AQ:()=>findBestPLPTemplate,B5:()=>textToKebabCase})},6319:e=>{e.exports={section:"section_section__p_P_L"}},9518:e=>{e.exports={section:"section_section__6iqtV"}},5531:e=>{e.exports={section:"section_section__TjtMz",loading:"section_loading__ffSvt"}}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=5553,exports.ids=[5553],exports.modules={5553:(e,i,t)=>{t.d(i,{m:()=>useViewItemListEvent});var r=t(1072),s=t(6689),a=t(5518);let useViewItemListEvent=({products:e,title:i,page:t,pageSize:n})=>{let{currency:{code:m}}=(0,a.kP)(),f=(0,s.useCallback)(()=>{(0,r._)({name:"view_item_list",params:{item_list_name:i,item_list_id:i,items:e.map(({node:e},i)=>({item_id:e.isVariantOf.productGroupID,item_name:e.isVariantOf.name,item_brand:e.brand.name,item_variant:e.sku,price:e.offers.offers[0].price,index:t*n+i+1,discount:e.offers.offers[0].listPrice-e.offers.offers[0].price,currency:m,item_variant_name:e.name,product_reference_id:e.gtin}))}})},[m,e,i,t,n]);return{sendViewItemListEvent:f}}}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=692,exports.ids=[692],exports.modules={792:(e,t,r)=>{r.d(t,{Z:()=>i});var a=r(6689),n=r.n(a);let o=(0,a.forwardRef)(function({testId:e="fs-skeleton",loading:t=!0,shimmer:r=!0,children:a,size:o,border:i,borderRadius:d,...c},s){let l={width:o.width,height:o.height};return t?n().createElement("div",{ref:s,"data-fs-skeleton":!0,"data-testid":e,"data-fs-skeleton-border":i||null,style:d?{...l,borderRadius:d}:l,...c},r&&n().createElement("div",{"data-fs-skeleton-shimmer":!0})):n().createElement(n().Fragment,null,a)}),i=o},2946:(e,t,r)=>{r.d(t,{Z:()=>DiscountBadge_DiscountBadge});var a=r(6689),n=r.n(a),o=r(276);let useDiscountPercent=(e,t)=>(0,a.useMemo)(()=>{let r=e-t,a=100*r/e;return Math.round(a)},[t,e]),DiscountBadge_DiscountBadge=({listPrice:e,spotPrice:t,thresholdLow:r=15,thresholdHigh:a=40,size:i,testId:d="fs-discount-badge"})=>{let c=useDiscountPercent(e,t);if(0===c)return n().createElement(n().Fragment,null);let s=c<=r?"low":c<=a?"medium":"high";return n().createElement(o.Z,{"data-fs-discount-badge":!0,"data-fs-discount-badge-variant":s,size:i,"data-testid":d},c,"% off")}},3024:(e,t,r)=>{r.d(t,{Z:()=>s});var a=r(6689),n=r.n(a),o=r(2614),i=r(7041),d=r(4564);let c=(0,a.forwardRef)(function({children:e,testId:t="fs-rating",length:r=5,value:c=0,icon:s,onChange:l,...u},f){let[m,p]=(0,a.useState)(0),g={"data-fs-rating-icon-outline":!0},h=n().isValidElement(s)?s:n().createElement(o.Z,{name:"Star"});return n().createElement(d.Z,{ref:f,"data-fs-rating":!0,"data-fs-rating-actionable":"function"==typeof l,"data-testid":t,...u},Array.from({length:r}).map((e,r)=>{let a=r+1;return n().createElement("li",{key:`rating-${r}`,"data-fs-rating-item":a<=(m||c)?"full":a-c>0&&a-c<1?"partial":"empty","data-testid":`${t}-item`},l?n().createElement(i.Z,{"data-fs-rating-button":!0,icon:h,size:"small","aria-label":"rate",onClick:()=>{l(a)},onMouseEnter:()=>p(a),onMouseLeave:()=>p(c)}):n().createElement(n().Fragment,null,n().createElement("div",{"data-fs-rating-icon-wrapper":!0},h),n().isValidElement(s)?n().cloneElement(s,g):n().createElement(o.Z,{name:"Star","data-fs-rating-icon-outline":!0})))}))}),s=c},2440:(e,t,r)=>{r.d(t,{Z:()=>O});var a=r(6689),n=r.n(a);let o=(0,a.forwardRef)(function({testId:e="fs-product-card",variant:t="default",bordered:r=!1,outOfStock:a,children:o,...i},d){return n().createElement("article",{ref:d,"data-fs-product-card":a?"out-of-stock":"","data-fs-product-card-variant":t,"data-fs-product-card-bordered":r,"data-testid":e,...i},o)}),i=(0,a.forwardRef)(function({testId:e="fs-product-card-image",aspectRatio:t=1,children:r,...a},o){return n().createElement("div",{ref:o,"data-fs-product-card-image":!0,"data-testid":e,style:{"--fs-product-card-image-aspect-ratio":t},...a},r)});var d=r(727),c=r(9088),s=r(3024),l=r(2614),u=r(2946),f=r(276),m=r(3339);let p=(0,a.forwardRef)(function({testId:e="fs-product-card-content",title:t,linkProps:r,price:a,outOfStock:o,outOfStockLabel:i="Out of stock",ratingValue:p,showDiscountBadge:g,buttonLabel:h="Add",onButtonClick:v,children:P,...b},E){let y=a?.listPrice?a.listPrice:0,O=a?.value?a.value:0;return n().createElement("section",{ref:E,"data-fs-product-card-content":!0,"data-fs-product-card-badge":g,"data-testid":e,...b},n().createElement("div",{"data-fs-product-card-heading":!0},n().createElement("h3",{"data-fs-product-card-title":!0},n().createElement(d.Z,{...r,title:t},n().createElement("span",null,t))),!o&&n().createElement(c.Z,{"data-fs-product-card-prices":!0,value:O,listPrice:y,formatter:a?.formatter}),p&&n().createElement(s.Z,{value:p,icon:n().createElement(l.Z,{name:"Star"})})),g&&!o&&n().createElement(u.Z,{listPrice:y,spotPrice:O}),o&&n().createElement(f.Z,null,i),v&&!o&&n().createElement("div",{"data-fs-product-card-actions":!0},n().createElement(m.Z,{variant:"primary",icon:n().createElement(l.Z,{name:"ShoppingCart"}),iconPosition:"left",size:"small",onClick:v},h)))});var g=r(1664),h=r.n(g),v=r(4410),P=r(5141),b=r(7143),E=r(997);let y=["product","index","bordered","variant","aspectRatio","imgProps","ratingValue","buttonLabel","onButtonClick","showDiscountBadge"];function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,a)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var a;a=r[t],t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let O=(0,a.memo)(function(e){let{product:t,index:r,bordered:n=!0,variant:d="default",aspectRatio:c=1,imgProps:s,ratingValue:l,buttonLabel:u="Add",onButtonClick:f,showDiscountBadge:m=!0}=e,g=function(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},o=Object.keys(e);for(a=0;a<o.length;a++)r=o[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a<o.length;a++)r=o[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}(e,y),{sku:O,isVariantOf:{name:w},image:[k],offers:{lowPrice:j,offers:[{listPrice:_,availability:x}]}}=t,Z=_objectSpread(_objectSpread({},(0,b.w)({product:t,selectedOffer:0,index:r})),{},{as:h(),passHref:!0,legacyBehavior:!1,prefetch:!1}),D=(0,a.useMemo)(()=>"https://schema.org/InStock"!==x,[x]);return(0,E.jsxs)(o,_objectSpread(_objectSpread({outOfStock:D,bordered:n,variant:d,"data-fs-product-card-sku":O},g),{},{children:[E.jsx(i,{aspectRatio:c,children:E.jsx(v.Z,{src:k.url,alt:k.alternateName,sizes:`${s?.sizes??"(max-width: 768px) 40vw, 30vw"}`,width:s?.width??360,height:Math.round((Number(s?.height)||360)/c),loading:s?.loading})}),E.jsx(p,{title:w,price:{value:j,listPrice:_,formatter:P.P},ratingValue:l,outOfStock:D,onButtonClick:f,linkProps:Z,showDiscountBadge:j<=_&&m})]}))})},5209:(e,t,r)=>{r.d(t,{Z:()=>__WEBPACK_DEFAULT_EXPORT__});var a=r(792),n=r(997);let __WEBPACK_DEFAULT_EXPORT__=function({bordered:e,sectioned:t,displayButton:r,aspectRatio:o=1,variant:i="default"}){return(0,n.jsxs)("div",{"data-fs-product-card-skeleton":!0,"data-fs-product-card-skeleton-variant":i,"data-fs-product-card-skeleton-bordered":e,"data-fs-product-card-skeleton-sectioned":t,children:[n.jsx("div",{"data-fs-product-card-skeleton-image":!0,style:{"--fs-product-card-skeleton-image-aspect-ratio":o},children:n.jsx(a.Z,{size:{width:"100%",height:"100%"}})}),(0,n.jsxs)("div",{"data-fs-product-card-skeleton-content":!0,children:[n.jsx(a.Z,{"data-fs-product-card-skeleton-text":!0,size:{width:"90%",height:"1.5rem"}}),n.jsx(a.Z,{"data-fs-product-card-skeleton-text":!0,size:{width:"70%",height:"1.5rem"}}),n.jsx(a.Z,{"data-fs-product-card-skeleton-badge":!0,size:{width:"6rem",height:"2rem"},border:"pill"}),r&&n.jsx(a.Z,{"data-fs-product-card-skeleton-button":!0,size:{width:"6rem",height:"2rem"},style:{columnGap:".75rem"}})]})]})}},4259:(e,t,r)=>{r.d(t,{K:()=>n,g:()=>a});let a=12,n=5},3304:(e,t,r)=>{r.d(t,{En:()=>isSearchPage,OJ:()=>isPLP,ZP:()=>__WEBPACK_DEFAULT_EXPORT__,al:()=>usePDP,qt:()=>usePage,tS:()=>isPDP});var a=r(6689),n=r(997);let isPDP=e=>e?.data?.product?.sku!=void 0&&e?.data?.product?.sku!=null,isPLP=e=>e?.data?.collection?.seo!=void 0&&e?.data?.collection?.seo!=null&&e?.data?.collection?.sku==void 0,isSearchPage=e=>void 0===e||e?.data?.title!=void 0||e?.data?.searchTerm!=void 0,o=(0,a.createContext)(null);function usePage(){let{context:e}=(0,a.useContext)(o);if(null==e)throw Error("Missing Overrides context on React tree");return e}let usePDP=()=>usePage(),__WEBPACK_DEFAULT_EXPORT__=function({context:e,children:t}){let r=(0,a.useMemo)(()=>({context:e}),[e]);return n.jsx(o.Provider,{value:r,children:t})}},2465:(e,t,r)=>{r.d(t,{y:()=>useLocalizedVariables});var a=r(6689),n=r(5518),o=r(4259);let toArray=e=>Array.isArray(e)?e:e?[e]:[],useLocalizedVariables=({first:e,after:t,sort:r,term:i,selectedFacets:d})=>{let{channel:c,locale:s}=(0,n.kP)();return(0,a.useMemo)(()=>{let a=toArray(d);return{first:e??o.K,after:t??"0",sort:r??"score_desc",term:i??"",selectedFacets:[...a,{key:"channel",value:c??""},{key:"locale",value:s}]}},[d,e,t,r,i,c,s])}}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
exports.id=8609,exports.ids=[8609],exports.modules={7976:(e,t,r)=>{"use strict";r.d(t,{V:()=>y});var n=r(9629),o=r(4410),i=r(4208),c=r(7473),a=r(3215),s=r.n(a),l=r(6689),d=r.n(l);let u=(0,l.createContext)(void 0),f=(0,l.forwardRef)(function({children:e,testId:t="fs-hero",variant:r="primary",colorVariant:n="main",...o},i){return d().createElement(u.Provider,{value:{variant:r,colorVariant:n}},d().createElement("article",{ref:i,"data-fs-hero":!0,"data-fs-hero-variant":r,"data-fs-hero-color-variant":n,"data-testid":t,...o},e))}),p=(0,l.forwardRef)(function({children:e,testId:t="fs-hero-image",...r},n){return d().createElement("div",{ref:n,"data-fs-hero-image":!0,"data-testid":t,...r},e)});var h=r(3922),b=r(2614);let O=(0,l.forwardRef)(function({icon:e,link:t,title:r,linkText:n,linkTargetBlank:o,subtitle:i,children:c,testId:a="fs-hero-heading",...s},f){let{variant:p,colorVariant:O}=function(){let e=(0,l.useContext)(u);if(void 0===e)throw Error("Do not use Hero components outside the Hero context.");return e}();return d().createElement("header",{ref:f,"data-fs-hero-heading":!0,"data-testid":a,...s},d().createElement("div",{"data-fs-hero-wrapper":!0,"data-fs-content":"hero"},d().createElement("div",{"data-fs-hero-info":!0},d().createElement("h1",{"data-fs-hero-title":!0},r),d().createElement("p",{"data-fs-hero-subtitle":!0},i),!!t&&d().createElement(h.Z,{href:t,inverse:"main"===O,icon:d().createElement(b.Z,{name:"ArrowRight"}),iconPosition:"right",target:o?"_blank":void 0},n)),!!e&&"secondary"===p&&d().createElement("span",{"data-fs-hero-icon":!0},e)))});var j=r(997);function ownKeys(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 _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let g=(0,n.B)("Hero",({link:e,title:t,subtitle:r,image:n,variant:a,colorVariant:l,icon:d})=>{let{Hero:u,HeroImage:f,HeroHeader:p}=(0,i.r3)();return j.jsx(c.Z,{className:`${s().section} section-hero`,children:(0,j.jsxs)(u.Component,_objectSpread(_objectSpread({},u.props),{},{variant:a??u.props.variant??"primary",colorVariant:l??u.props.colorVariant??"main",children:[j.jsx(f.Component,_objectSpread(_objectSpread({},f.props),{},{children:j.jsx(o.Z,{loading:"eager",src:n.src,alt:n.alt,width:360,height:240,sizes:"(max-width: 360px) 50vw, (max-width: 768px) 90vw, 50vw"})})),j.jsx(p.Component,_objectSpread({title:t,subtitle:r,link:e?.url,linkText:e?.text,linkTargetBlank:e?.linkTargetBlank,icon:d},p.props))]}))})},{Hero:f,HeroImage:p,HeroHeader:O});function OverriddenDefaultHero_ownKeys(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 OverriddenDefaultHero_objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?OverriddenDefaultHero_ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):OverriddenDefaultHero_ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let y=(0,n.v)(OverriddenDefaultHero_objectSpread(OverriddenDefaultHero_objectSpread({},{section:"Hero"}),{},{Section:g}))},9946:(e,t,r)=>{"use strict";r.d(t,{Z:()=>__WEBPACK_DEFAULT_EXPORT__});var n=r(639),o=r(7473),i=r(6099),c=r.n(i),a=r(997);let __WEBPACK_DEFAULT_EXPORT__=function({incentives:e}){return a.jsx(o.Z,{className:`${c().section} section-incentives layout__section`,children:a.jsx(n.Z,{incentives:e,colored:!0})})}},4657:(e,t,r)=>{"use strict";r.d(t,{T:()=>b});var n=r(9629),o=r(9785),i=r(7473),c=r(8041),a=r(5531),s=r.n(a),l=r(6737),d=r(2440),u=r(7657);let f={ProductShelf:l.Z,__experimentalCarousel:u.Z,__experimentalProductCard:d.Z};var p=r(997);function ownKeys(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}let h=(0,n.B)("ProductShelf",function(e){let t=Object.assign({},e),{ref:r,inView:n}=(0,o.useInView)();return p.jsx(i.Z,{className:`${s().section} section-product-shelf layout__section`,ref:r,children:p.jsx(c.Z,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}({inView:n},t))})},f);function OverriddenDefaultProductShelf_ownKeys(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 OverriddenDefaultProductShelf_objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?OverriddenDefaultProductShelf_ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):OverriddenDefaultProductShelf_ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let b=(0,n.v)(OverriddenDefaultProductShelf_objectSpread(OverriddenDefaultProductShelf_objectSpread({},{section:"ProductShelf"}),{},{Section:h}))},8485:(e,t,r)=>{"use strict";r.d(t,{Z:()=>ProductTiles_ProductTiles});var n=r(6689),o=r.n(n),i=r(9785),c=r(5553),a=r(2440);let s=(0,n.forwardRef)(function({testId:e="store-tiles",children:t,...r},i){let c=n.Children.count(t);return o().createElement("ul",{ref:i,role:"list","data-fs-tiles":!0,"data-fs-tiles-variant":3===c?"expanded-first":2===c?"expanded-first-two":"","data-fs-content":"tiles","data-testid":e,...r},t)});var l=r(997);let d=["children"];function ownKeys(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 _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}let ui_Tiles_Tiles=e=>{let{children:t}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,d);return l.jsx(s,_objectSpread(_objectSpread({},r),{},{children:t}))},u=(0,n.forwardRef)(function({testId:e="store-tile",children:t,...r},n){return o().createElement("li",{ref:n,role:"listitem","data-fs-tile":!0,"data-testid":e,...r},t)});var f=r(792);let ProductTileSkeleton_ProductTileSkeleton=function({index:e,aspectRatio:t=1}){return(0,l.jsxs)("div",{"data-fs-product-tile-skeleton":!0,"data-fs-product-tile-skeleton-index":e,children:[l.jsx("div",{"data-fs-product-tile-skeleton-image":!0,"data-fs-product-tile-skeleton-index":e,style:{"--fs-product-tile-skeleton-image-aspect-ratio":t},children:l.jsx(f.Z,{size:{width:"auto",height:"100%"},loading:!0})}),(0,l.jsxs)("div",{"data-fs-product-tile-skeleton-content":!0,"data-fs-product-tile-skeleton-index":e,children:[(0,l.jsxs)("div",{"data-fs-product-tile-skeleton-heading":!0,children:[l.jsx("div",{"data-fs-product-tile-skeleton-text":!0,"data-fs-product-tile-skeleton-index":e,children:l.jsx(f.Z,{size:{width:"70%",height:"1.5rem"}})}),l.jsx("div",{"data-fs-product-tile-skeleton-price":!0,children:l.jsx(f.Z,{size:{width:"60%",height:"1.5rem"}})})]}),l.jsx("div",{"data-fs-product-tile-skeleton-badge":!0,"data-fs-product-tile-skeleton-index":e,children:l.jsx(f.Z,{size:{width:"6rem",height:"2rem"},border:"pill"})})]})]})},getRatio=(e,t)=>3===e&&0===t||2===e&&(0===t||1===t)?5/3:3/4,ProductTilesSkeleton_ProductTilesSkeleton=function({children:e,loading:t=!0}){return t?l.jsx(ui_Tiles_Tiles,{children:Array.from({length:3},(e,t)=>l.jsx(u,{children:l.jsx(ProductTileSkeleton_ProductTileSkeleton,{index:t+1,aspectRatio:getRatio(3,t)})},String(t)))}):l.jsx(l.Fragment,{children:e})};var p=r(7490),h=r(7473),b=r(8348),O=r.n(b);let j=["title"],ProductTiles_getRatio=(e,t)=>3===e&&0===t||2===e&&(0===t||1===t)?5/3:3/4,getSizes=(e,t)=>3===e&&0===t||2===e&&(0===t||1===t)?{width:594,height:364}:{width:284,height:364},ProductTiles_ProductTiles=e=>{let{title:t}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,j),o=(0,n.useRef)(!1),{ref:s,inView:d}=(0,i.useInView)(),f=(0,p.k)(r),b=f?.search?.products,g=b?.edges??[],{sendViewItemListEvent:y}=(0,c.m)({products:g,title:t,page:0,pageSize:0});return((0,n.useEffect)(()=>{d&&!o.current&&g.length&&(y(),o.current=!0)},[d,g.length,y]),b?.edges.length===0)?null:(0,l.jsxs)(h.Z,{className:`${O().section} section-product-tiles layout__section`,ref:s,children:[l.jsx("h2",{className:"text__title-section layout__content",children:t}),l.jsx(ProductTilesSkeleton_ProductTilesSkeleton,{loading:!b,children:l.jsx(ui_Tiles_Tiles,{children:g.map((e,t)=>l.jsx(u,{children:l.jsx(a.Z,{"data-testid":"tile-card",product:e.node,index:t+1,variant:"wide",aspectRatio:ProductTiles_getRatio(g.length,t),imgProps:getSizes(g.length,t)})},e.node.id))})})]})}},5603:(e,t,r)=>{"use strict";r.d(t,{V:()=>getDynamicContent});let n={};async function getDynamicContent({pageType:e}){try{let t=n[e];if(!t)return console.warn(`Warning: Dynamic Content not found for the page: ${e}. Refer to the Dynamic Content documentation at https://developers.vtex.com/docs/guides/faststore/dynamic-content-overview for mapping the page and the corresponding data-fetching function.`),null;let{data:r,errors:o=[]}=await t();return o.length>0&&console.error(...o),r}catch(e){return console.error("Error while fetching Dynamic Content:",e),console.warn("Refer to the Dynamic Content documentation at https://developers.vtex.com/docs/guides/faststore/dynamic-content-overview for mapping the page and the corresponding data-fetching function."),null}}},3215:e=>{e.exports={section:"section_section__Pdf2v"}},6099:e=>{e.exports={section:"section_section__jnQ3q"}},8348:e=>{e.exports={section:"section_section__Wwc_y",loading:"section_loading__7M1Dl"}}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=9239,exports.ids=[9239],exports.modules={6565:(e,t,r)=>{r.d(t,{E9:()=>src_getContextFactory,yd:()=>src_getResolvers,T9:()=>isFastStoreError,XD:()=>isNotFoundError});var a,o=r(7881),i=r.n(o);let n=JSON.parse('{"u2":"@faststore/api","i8":"3.0.47"}'),s=`${n.u2}@${n.i8}`,fetchAPI=async(e,t,r)=>{let a=await i()(e,{...t,headers:{...t?.headers??{},"User-Agent":s}});if(a.ok)return r?.storeCookies&&r.storeCookies(a.headers),204!==a.status?a.json():void 0;console.error(e,t,a);let o=await a.text();throw Error(o)},l=/^([^=]+)=([^;]*)/,updatesContextStorageCookies=(e,t)=>{let r=t.match(l);if(r){let a=r[1],o=r[2];e.storage.cookies.set(a,{value:o,setCookie:t})}},setCookie=(e,t)=>{t.getSetCookie().forEach(t=>updatesContextStorageCookies(e,t))},getStoreCookie=e=>t=>setCookie(e,t),getUpdatedCookie=e=>{if(!e.headers?.cookie)return null;let t=Array.from(e.storage.cookies.entries());return 0===t.length?e.headers.cookie:t.reduce((e,[t,{value:r}])=>updatesCookieValueByKey(e,t,r),e.headers.cookie)},getWithCookie=e=>function(t){let r=getUpdatedCookie(e);return r?{...t,cookie:r}:t},updatesCookieValueByKey=(e,t,r)=>{let a=RegExp(`(${t})=([^;]*)`),o=e.match(a);return o?e.replace(o[0],`${o[1]}=${r}`):`${e};${t}=${r}`},c={method:"POST",headers:{"content-type":"application/json"}},VtexCommerce=({account:e,environment:t,incrementAddress:r,subDomainPrefix:a},o)=>{let i=`https://${e}.${t}.com.br`,n=getStoreCookie(o),s=getWithCookie(o),l=new Headers(o.headers).get("x-forwarded-host")??o.headers?.host??"",d=a&&a.map(e=>e+".").find(e=>l.includes(e))||"",u=l.replace(d,"");return{catalog:{salesChannel:e=>fetchAPI(`${i}/api/catalog_system/pub/saleschannel/${e}`,void 0,{storeCookies:n}),brand:{list:()=>fetchAPI(`${i}/api/catalog_system/pub/brand/list`,void 0,{storeCookies:n})},category:{tree:(e=3)=>fetchAPI(`${i}/api/catalog_system/pub/category/tree/${e}`,void 0,{storeCookies:n})},portal:{pagetype:e=>fetchAPI(`${i}/api/catalog_system/pub/portal/pagetype/${e}`,void 0,{storeCookies:n})},products:{crossselling:({type:e,productId:t,groupByProduct:r=!0})=>{let a=new URLSearchParams({sc:o.storage.channel.salesChannel,groupByProduct:r.toString()});return fetchAPI(`${i}/api/catalog_system/pub/products/crossselling/${e}/${t}?${a}`,void 0,{storeCookies:n})}}},checkout:{simulation:(e,{salesChannel:t}=o.storage.channel)=>{let r=new URLSearchParams({sc:t}),a=s({"content-type":"application/json","X-FORWARDED-HOST":u});return fetchAPI(`${i}/api/checkout/pub/orderForms/simulation?${r.toString()}`,{...c,headers:a,body:JSON.stringify(e)},{storeCookies:n})},shippingData:({id:e,index:t,deliveryMode:a,selectedAddresses:o},l)=>{let d=l?{startDateUtc:a?.deliveryWindow?.startDate,endDateUtc:a?.deliveryWindow?.endDate}:null,p={logisticsInfo:Array.from({length:t},(e,t)=>({itemIndex:t,selectedDeliveryChannel:a?.deliveryChannel||null,selectedSla:a?.deliveryMethod||null,deliveryWindow:d})),selectedAddresses:o,clearAddressIfPostalCodeNotFound:r},m=s({"content-type":"application/json","X-FORWARDED-HOST":u});return fetchAPI(`${i}/api/checkout/pub/orderForm/${e}/attachments/shippingData`,{...c,headers:m,body:JSON.stringify(p)},{storeCookies:n})},orderForm:({id:e,refreshOutdatedData:t=!0,channel:r=o.storage.channel})=>{let{salesChannel:a}=r,l=new URLSearchParams({refreshOutdatedData:t.toString(),sc:a}),d=s({"content-type":"application/json","X-FORWARDED-HOST":u});return fetchAPI(`${i}/api/checkout/pub/orderForm/${e}?${l.toString()}`,{...c,headers:d},{storeCookies:n})},clearOrderFormMessages:({id:e})=>{let t=s({"content-type":"application/json","X-FORWARDED-HOST":u});return fetchAPI(`${i}/api/checkout/pub/orderForm/${e}/messages/clear`,{...c,headers:t,body:"{}"})},updateOrderFormItems:({id:e,orderItems:t,allowOutdatedData:r="paymentData",salesChannel:a=o.storage.channel.salesChannel,shouldSplitItem:l=!0})=>{let c=new URLSearchParams({allowOutdatedData:r,sc:a}),d=s({"content-type":"application/json","X-FORWARDED-HOST":u});return fetchAPI(`${i}/api/checkout/pub/orderForm/${e}/items?${c}`,{headers:d,body:JSON.stringify({orderItems:t,noSplitItem:!l}),method:"PATCH"},{storeCookies:n})},setCustomData:({id:e,appId:t,key:r,value:a})=>{let o=s({"content-type":"application/json","X-FORWARDED-HOST":u});return fetchAPI(`${i}/api/checkout/pub/orderForm/${e}/customData/${t}/${r}`,{headers:o,body:JSON.stringify({value:a}),method:"PUT"})},region:async({postalCode:e,geoCoordinates:t,country:r,salesChannel:a})=>{let o=new URLSearchParams({country:r,sc:a??""});e?o.append("postalCode",e):o.append("geoCoordinates",`${t?.longitude};${t?.latitude}`);let l=`${i}/api/checkout/pub/regions/?${o.toString()}`,c=s({"content-type":"application/json","X-FORWARDED-HOST":u});return fetchAPI(l,{headers:c},{storeCookies:n})},address:async({postalCode:e,country:t})=>{let r=s({"content-type":"application/json","X-FORWARDED-HOST":u});return fetchAPI(`${i}/api/checkout/pub/postal-code/${t}/${e}`,{headers:r},{storeCookies:n})}},session:e=>{let t=new URLSearchParams(e);t.set("items","profile.id,profile.email,profile.firstName,profile.lastName,store.channel,store.countryCode,store.cultureInfo,store.currencyCode,store.currencySymbol");let r=s({"content-type":"application/json"});return fetchAPI(`${i}/api/sessions?${t.toString()}`,{method:"POST",headers:r,body:"{}"},{storeCookies:n})},subscribeToNewsletter:e=>fetchAPI(`${i}/api/dataentities/NL/documents/`,{...c,body:JSON.stringify({...e,isNewsletterOptIn:!0}),method:"PATCH"},{storeCookies:n})}},d="trade-policy",u="region-id",p="fuzzy",m="operator",g=new Set([d,u,p,m]),isFuzzyFacet=e=>"fuzzy"===e.key&&("0"===e.value||"1"===e.value||"auto"===e.value),isOperatorFacet=e=>"operator"===e.key&&("and"===e.value||"or"===e.value),IntelligentSearch=({account:e,environment:t,hideUnavailableItems:r},a)=>{let o=`https://${e}.${t}.com.br/api/io`,i=getStoreCookie(a),getPolicyFacet=()=>{let{salesChannel:e}=a.storage.channel;return e?{key:d,value:e}:null},getRegionFacet=()=>{let{regionId:e,seller:t}=a.storage.channel,r=t?Buffer.from(`SW#${t}`).toString("base64"):null,o=r??e;return o?{key:u,value:o}:null},addDefaultFacets=e=>{let t=e.filter(({key:e})=>!g.has(e)),r=e.find(({key:e})=>e===d)??getPolicyFacet(),a=e.find(({key:e})=>e===u)??getRegionFacet();return null!==r&&t.push(r),null!==a&&t.push(a),t},addSearchParamsFacets=(e,t)=>{let r=e.find(({key:e})=>e===p)??null,a=e.find(({key:e})=>e===m)??null;r&&isFuzzyFacet(r)&&t.append(p,r.value),a&&isOperatorFacet(a)&&t.append(m,a.value)},search=({query:e="",page:t,count:n,sort:s="",selectedFacets:l=[],type:c})=>{let d=new URLSearchParams({page:(t+1).toString(),count:n.toString(),query:e,sort:s,locale:a.storage.locale});void 0!==r&&d.append("hideUnavailableItems",r.toString());let u=addDefaultFacets(l).map(({key:e,value:t})=>`${e}/${t}`).join("/");return addSearchParamsFacets(l,d),fetchAPI(`${o}/_v/api/intelligent-search/${c}/${u}?${d.toString()}`,void 0,{storeCookies:i})};return{facets:e=>search({...e,type:"facets"}),products:e=>search({...e,type:"product_search"}),suggestedTerms:e=>{let t=new URLSearchParams({query:e.query?.toString()??"",locale:a.storage.locale});return fetchAPI(`${o}/_v/api/intelligent-search/search_suggestions?${t.toString()}`,void 0,{storeCookies:i})},topSearches:()=>{let e=new URLSearchParams({locale:a.storage.locale});return fetchAPI(`${o}/_v/api/intelligent-search/top_searches?${e.toString()}`,void 0,{storeCookies:i})}}},getClients=(e,t)=>{let r=IntelligentSearch(e,t),a=VtexCommerce(e,t);return{search:r,commerce:a}};var f=r(3404),h=r.n(f);let getSalesChannelLoader=(e,t)=>{let loader=async e=>Promise.all(e.map(e=>t.commerce.catalog.salesChannel(e)));return new(h())(loader)};var y=r(5471),S=r.n(y);let getSimulationLoader=(e,t)=>{let r=S()(1),loader=async e=>{let r=e.reduce((e,{items:t})=>[...e,t],[]),a=[...r.flat()],o=await t.commerce.checkout.simulation({country:e[0].country,postalCode:e[0].postalCode,items:a}),i=o.items.reduce((e,t)=>{let r=t.requestIndex;return"number"==typeof r&&r<e.length&&(e[r]=t),e},Array(a.length).fill(null)),n=r.reduce((e,t)=>[...e,t.length+e[e.length-1]],[0]);return r.map((e,t)=>({...o,items:i.slice(n[t],n[t+1]).filter(e=>!!e)}))},limited=async e=>r(loader,e);return new(h())(limited,{maxBatchSize:50})};var v=r(6109),C=r.n(v);let sanitizeHtml=(e,t)=>C()(e,t),enhanceSku=(e,t)=>({...e,isVariantOf:function(e){return{...e,description:e.description?sanitizeHtml(e.description):e.description}}(t)});let FastStoreError=class FastStoreError extends Error{extensions;constructor(e,t){super(t),this.extensions=e,this.name="FastStoreError"}};let BadRequestError=class BadRequestError extends FastStoreError{constructor(e){super({status:400,type:"BadRequestError"},e)}};let NotFoundError=class NotFoundError extends FastStoreError{constructor(e){super({status:404,type:"NotFoundError"},e)}};let isFastStoreError=e=>e?.name==="FastStoreError",isNotFoundError=e=>e?.extensions?.type==="NotFoundError",getSkuLoader=(e,t)=>{let loader=async e=>{let{products:r}=await t.search.products({query:`sku:${e.join(";")}`,page:0,count:e.length}),a=r.reduce((e,t)=>{for(let r of t.items)e[r.itemId]=enhanceSku(r,t);return e},{}),o=e.map(e=>a[e]),i=e.filter(e=>!a[e]);if(i.length>0)throw new NotFoundError(`Search API did not found the following skus: ${i.join(",")}`);return o};return new(h())(loader,{maxBatchSize:99})},b=new Set(["brand","category","department","subcategory","collection","cluster"]),isCollectionPageType=e=>"string"==typeof e.pageType&&b.has(e.pageType.toLowerCase()),getCollectionLoader=(e,t)=>{let r=S()(20),loader=async e=>Promise.all(e.map(e=>r(async()=>{let r=await t.commerce.catalog.portal.pagetype(e);if(isCollectionPageType(r))return r;throw new NotFoundError(`Catalog returned ${r.pageType} for slug: ${e}. This usually happens when there is more than one category with the same name in the same category tree level.`)})));return new(h())(loader,{batch:!1})},getLoaders=(e,{clients:t})=>{let r=getSkuLoader(e,t),a=getSimulationLoader(e,t),o=getCollectionLoader(e,t),i=getSalesChannelLoader(e,t);return{skuLoader:r,simulationLoader:a,collectionLoader:o,salesChannelLoader:i}},inStock=e=>e.AvailableQuantity>0,price=e=>e.spotPrice??0,sellingPrice=e=>e.Price??0,availability=e=>e?"https://schema.org/InStock":"https://schema.org/OutOfStock",bestOfferFirst=(e,t)=>inStock(e)&&!inStock(t)?-1:!inStock(e)&&inStock(t)?1:price(e)-price(t),inStockOrderFormItem=e=>"available"===e,I="\xc1\xc4\xc2\xc0\xc3\xc5Č\xc7ĆĎ\xc9Ě\xcb\xc8\xcaẼĔȆ\xcd\xcc\xce\xcfŇ\xd1\xd3\xd6\xd2\xd4\xd5\xd8ŘŔŠŤ\xdaŮ\xdc\xd9\xdb\xddŸŽ\xe1\xe4\xe2\xe0\xe3\xe5č\xe7ćď\xe9ě\xeb\xe8\xeaẽĕȇ\xed\xec\xee\xefň\xf1\xf3\xf6\xf2\xf4\xf5\xf8\xf0řŕšť\xfaů\xfc\xf9\xfb\xfd\xffž\xfe\xdeĐđ\xdf\xc6a",removeDiacritics=e=>{let t=e.slice(0);for(let e=0;e<I.length;e++)t=t.replace(RegExp(I.charAt(e),"g"),"AAAAAACCCDEEEEEEEEIIIINNOOOOOORRSTUUUUUYYZaaaaaacccdeeeeeeeeiiiinnooooooorrstuuuuuyyzbBDdBAa".charAt(e));return t},slugifySpecialCharacters=e=>e.replace(/[·/_,:]/,"-");function slugify(e){let t=e.replace(/,/g,""),r=t.replace(/[*+~.()'"!:@&\[\]`/ %$#?{}|><=_^]/g,"-"),a=slugifySpecialCharacters(removeDiacritics(r));return a.toLowerCase()}let isBrand=e=>"brand"===e.type||isCollectionPageType(e)&&"brand"===e.pageType.toLowerCase(),isCollection=e=>isCollectionPageType(e)&&"collection"===e.pageType.toLowerCase(),slugifyRoot=e=>isBrand(e)||isCollection(e)?slugify(e.name):isCollectionPageType(e)?new URL(`https://${e.url}`).pathname.slice(1).toLowerCase():new URL(e.url).pathname.slice(1).toLowerCase(),P={id:({id:e})=>e.toString(),slug:e=>slugifyRoot(e),seo:e=>isBrand(e)||isCollectionPageType(e)?{title:e.title,description:e.metaTagDescription}:{title:e.Title,description:e.MetaTagDescription},type:e=>isBrand(e)?"Brand":isCollectionPageType(e)?e.pageType:0===e.level?"Department":"Category",meta:e=>{let t=slugifyRoot(e);return isBrand(e)?{selectedFacets:[{key:"brand",value:t}]}:isCollection(e)?{selectedFacets:[{key:"productclusterids",value:e.id}]}:{selectedFacets:t.split("/").map((e,t)=>({key:`category-${t+1}`,value:e}))}},breadcrumbList:async(e,t,r)=>{let{loaders:{collectionLoader:a}}=r,o=slugifyRoot(e),i=o.split("/").filter(e=>!!e),n=i.map((e,t)=>i.slice(0,t+1).join("/")),s=await Promise.all(n.map(async e=>{let t=await a.load(e);return{slug:e,...t}}));return{itemListElement:s.map((e,t)=>({item:isCollection(e)?`/${e.slug}`:new URL(`https://${e.url}`).pathname.toLowerCase(),name:e.name,position:t+1})),numberOfItems:s.length}}},O={buy:"whoboughtalsobought",view:"whosawalsosaw",similars:"similars",viewAndBought:"whosawalsobought",accessories:"accessories",suggestions:"suggestions"},transformSelectedFacet=({key:e,value:t})=>{switch(e){case"price":return{key:e,value:t.replace("-to-",":")};case"channel":case"locale":case"buy":case"view":case"similars":case"viewAndBought":case"accessories":case"suggestions":return[];default:return{key:e,value:t}}},parseRange=e=>{let t=e.split(":").map(Number);return 2!==t.length||Number.isNaN(t[0])||Number.isNaN(t[1])?null:t},isCrossSelling=e=>"string"==typeof O[e],findCrossSelling=e=>{let t=e?.filter(e=>isCrossSelling(e.key));if(Array.isArray(t)&&t.length>1)throw new BadRequestError(`You passed ${t.length} cross selling facets but only one is allowed. Please leave one of the following facet: ${t.map(e=>e.key).join(",")}`);return t?.[0]??null},findSlug=e=>e?.find(e=>"slug"===e.key)?.value??null,findSkuId=e=>e?.find(e=>"id"===e.key)?.value??null,findLocale=e=>e?.find(e=>"locale"===e.key)?.value??null,findChannel=e=>e?.find(e=>"channel"===e.key)?.value??null,min=(e,t)=>{let r=0;for(let a=1;a<e.length;a++)t(e[r],e[a])>0&&(r=a);return e[r]},subscribeToNewsletter=async(e,{data:t},{clients:{commerce:r}})=>{let a=await r.subscribeToNewsletter(t);return{id:a?.Id}};var $=r(2404),F=r.n($);let ChannelMarshal=class ChannelMarshal{static parse(e){try{let t=JSON.parse(e);return{seller:t.seller??"",regionId:t.regionId??"",salesChannel:t.salesChannel??"",hasOnlyDefaultSalesChannel:t.hasOnlyDefaultSalesChannel??!0}}catch(e){throw console.error(e),Error("Malformed channel string")}}static stringify(e){return JSON.stringify(e)}};let mutateChannelContext=(e,t)=>{e.storage.channel=ChannelMarshal.parse(t)},mutateLocaleContext=(e,t)=>{e.storage.locale=t};var k=r(6113),w=r.n(k);let md5=e=>w().createHash("md5").update(e).digest("hex"),E={attachment:"ATTACHMENT",specification:"SPECIFICATION",attribute:"ATTRIBUTE"};function attachmentToPropertyValue(e){return{name:e.name,value:e.content,valueReference:E.attachment}}function attributeToPropertyValue(e){return{propertyID:e.id,name:e.name,value:e.value,valueReference:{valueReference:E.attribute,visible:e.visible}}}function getPropertyId(e){return md5(`${e.name}:${JSON.stringify(e.value)}:${e.valueReference}`)}var N=r(4802);let shouldUpdateShippingData=(e,t)=>{if(!hasSessionPostalCodeOrGeoCoordinates(t)||!hasItems(e))return{updateShipping:!1,addressChanged:!1};let[r]=e?.shippingData?.selectedAddresses??[];if(checkPostalCode(r,t.postalCode)||checkGeoCoordinates(r,t.geoCoordinates)||checkAddressType(r,t.addressType))return{updateShipping:!0,addressChanged:!0};let{logisticsInfo:a}=e.shippingData;return shouldUpdateDeliveryInfo(a,t)?{updateShipping:!0,addressChanged:!1}:{updateShipping:!1,addressChanged:!1}},hasSessionPostalCodeOrGeoCoordinates=e=>!!e.postalCode||e.geoCoordinates?.latitude&&e.geoCoordinates?.longitude,checkPostalCode=(e,t)=>"string"==typeof t&&e?.postalCode!==t,checkGeoCoordinates=(e,t)=>"number"==typeof t?.latitude&&"number"==typeof t?.longitude&&(e?.geoCoordinates[0]!==t?.longitude||e?.geoCoordinates[1]!==t?.latitude),checkAddressType=(e,t)=>"string"==typeof t&&e?.addressType!==t,hasItems=e=>0!==e.items.length,shouldUpdateDeliveryInfo=(e,t)=>{let r=t?.deliveryMode?.deliveryChannel,a=t?.deliveryMode?.deliveryMethod,{startDate:o,endDate:i}=t?.deliveryMode?.deliveryWindow||{};return e.some(({selectedDeliveryChannel:e,selectedSla:t,slas:n})=>{let s=r&&e!==r,l=a&&t!==a;return n?.some(e=>!!s&&e.deliveryChannel===r||!!l&&e.id===a||o&&i&&e.deliveryChannel===r&&e.id===a&&(!e?.deliveryWindow||e?.deliveryWindow?.startDateUtc!==o||e?.deliveryWindow?.endDateUtc!==i)&&e.availableDeliveryWindows?.some(e=>e?.startDateUtc===o&&e?.endDateUtc===i))})},getAddressOrderForm=(e,t,r)=>{let a=t.postalCode,o=t.geoCoordinates,i=e?.shippingData?.availableAddresses??[],n=e?.shippingData?.selectedAddresses??[];if(!r&&n.length>0)return[n[0]];if(r&&i.length>0)for(let e of i){if(a&&o){let t=e.postalCode===a||e.geoCoordinates[0]===o.longitude&&e.geoCoordinates[1]===o.latitude;if(t)return[e]}if(a&&!o){let t=e.postalCode===a;if(t)return[e]}if(o&&!a){let t=e.geoCoordinates[0]===o.longitude&&e.geoCoordinates[1]===o.latitude;if(t)return[e]}}return null},createNewAddress=e=>{let t=e.postalCode,r=e.geoCoordinates,a={addressType:e.addressType||null,postalCode:t||null,city:null,state:null,country:e.country||null,street:null,number:null,neighborhood:null,complement:null,reference:null,geoCoordinates:[]};if(r){let e="object"==typeof r&&"latitude"in r?r.latitude:null,t="object"==typeof r&&"longitude"in r?r.longitude:null;a.geoCoordinates=null!==e&&null!==t?[t,e]:[]}return[a]},isAttachment=e=>e.valueReference===E.attachment,getId=e=>[e.itemOffered.sku,e.seller.identifier,e.price<.01?"Gift":void 0,e.itemOffered.additionalProperty?.filter(isAttachment).map(getPropertyId).join("-")].filter(Boolean).join("::"),orderFormItemToOffer=(e,t)=>({listPrice:e.listPrice/100,price:e.sellingPrice/100,quantity:e.quantity,seller:{identifier:e.seller},itemOffered:{sku:e.id,image:[],name:e.name,additionalProperty:e.attachments.map(attachmentToPropertyValue)},index:t}),offerToOrderItemInput=e=>({quantity:e.quantity,seller:e.seller.identifier,id:e.itemOffered.sku,index:e.index,attachments:(e.itemOffered.additionalProperty?.filter(isAttachment)??[]).map(e=>({name:e.name,content:e.value}))}),groupById=e=>e.reduce((e,t)=>{let r=getId(t);return e.has(r)||e.set(r,[]),e.get(r)?.push(t),e},new Map),equals=(e,t)=>{let pick=(e,t)=>({...e,itemOffered:{sku:e.itemOffered.sku},index:t}),r=t.items.map(orderFormItemToOffer).map(pick),a=e.acceptedOffer.map(pick),o=e.orderNumber===t.orderFormId,i=F()(r,a);return o&&i},joinItems=e=>{let t=e.items.reduce((e,t)=>{let r=getId(orderFormItemToOffer(t));return e[r]||(e[r]=[]),e[r].push(t),e},{});return{...e,items:Object.values(t).map(e=>{let[t]=e,r=e.reduce((e,t)=>e+t.quantity,0),a=e.reduce((e,t)=>e+(t?.priceDefinition?.total??(t?.quantity??0)*(t?.sellingPrice??0)),0);return{...t,quantity:r,sellingPrice:a/r}})}},orderFormToCart=async(e,t)=>({order:{orderNumber:e.orderFormId,acceptedOffer:e.items.map(async e=>({...e,product:await t.load(e.id)}))},messages:e.messages.map(({text:e,status:t})=>({text:e,status:t.toUpperCase()}))}),getOrderFormEtag=({items:e})=>md5(JSON.stringify(e)),setOrderFormEtag=async(e,t)=>{try{let r=await t.checkout.setCustomData({id:e.orderFormId,appId:"faststore",key:"cartEtag",value:getOrderFormEtag(e)});return r}catch(e){throw console.error('Error while setting custom data to orderForm.\n Make sure to add the following custom app to the orderForm: \n{"fields":["cartEtag"],"id":"faststore","major":1}.\n More info at: https://developers.vtex.com/vtex-rest-api/docs/customizable-fields-with-checkout-api'),e}},isOrderFormStale=e=>{let t=e.customData?.customApps.find(e=>"faststore"===e.id),r=t?.fields?.cartEtag;if(null==r)return!0;let a=getOrderFormEtag(e);return a!==r},getOrderForm=async(e,{clients:{commerce:t}})=>t.checkout.orderForm({id:e}),clearOrderFormMessages=async(e,{clients:{commerce:t}})=>t.checkout.clearOrderFormMessages({id:e}),updateOrderFormShippingData=async(e,t,{clients:{commerce:r}})=>{if(!t)return e;let{updateShipping:a,addressChanged:o}=shouldUpdateShippingData(e,t);if(a){let a=getAddressOrderForm(e,t,o),i=a||createNewAddress(t),n=!!t.deliveryMode?.deliveryWindow;return n&&await r.checkout.shippingData({id:e.orderFormId,index:e.items.length,deliveryMode:t.deliveryMode,selectedAddresses:i},!1),r.checkout.shippingData({id:e.orderFormId,index:e.items.length,deliveryMode:t.deliveryMode,selectedAddresses:i},!0)}return e},getCookieCheckoutOrderNumber=(e,t)=>{if(!e)return"";let r=(0,N.parse)(e),a=r[t];return a?a.split("=")[1]:""},validateCart=async(e,{cart:{order:t},session:r},a)=>{let o=t?.orderNumber?t.orderNumber:getCookieCheckoutOrderNumber(a.headers.cookie,"checkout.vtex.com"),{acceptedOffer:i,shouldSplitItem:n}=t,{clients:{commerce:s},loaders:{skuLoader:l}}=a,c=r?.channel,d=r?.locale;c&&mutateChannelContext(a,c),d&&mutateLocaleContext(a,d);let u=await getOrderForm(o,a);0!==u.messages.length&&await clearOrderFormMessages(o,a);let p=isOrderFormStale(u);if(p){let e=await setOrderFormEtag(u,s).then(joinItems);if(o)return orderFormToCart(e,l)}let m=groupById(i),g=groupById(u.items.map(orderFormItemToOffer)),f=Array.from(g.entries()),h=Array.from(m.entries()),{itemsToAdd:y,itemsToUpdate:S}=h.reduce((e,[t,r])=>{let a=g.get(t);if(!a)return r.forEach(t=>e.itemsToAdd.push(t)),e;let[o,...i]=a,n=r.reduce((e,t)=>e+t.quantity,0);return e.itemsToUpdate.push({...o,quantity:n}),i.forEach(t=>e.itemsToUpdate.push({...t,quantity:0})),e},{itemsToAdd:[],itemsToUpdate:[]}),v=f.filter(([e])=>!m.has(e)).flatMap(([,e])=>e.map(e=>({...e,quantity:0}))),C=[...y,...S,...v].map(offerToOrderItemInput);if(0===C.length)return null;let b=await s.checkout.updateOrderFormItems({id:u.orderFormId,orderItems:C,shouldSplitItem:n}).then(e=>updateOrderFormShippingData(e,r,a)).then(e=>setOrderFormEtag(e,s)).then(joinItems),I=F()(u.messages,b.messages);return equals(t,b)&&I?null:orderFormToCart(b,l)},validateSession=async(e,{session:t,search:r},{clients:a})=>{let o=ChannelMarshal.parse(t.channel??""),i=String(t.postalCode??""),n=t.geoCoordinates??null,s=t.country??"",l=new URLSearchParams(r),c=l.get("sc")??o.salesChannel;l.set("sc",c);let[d,u]=await Promise.all([i||n?a.commerce.checkout.region({postalCode:i,geoCoordinates:n,country:s,salesChannel:c}):Promise.resolve(null),a.commerce.session(l.toString()).catch(()=>null)]),p=u?.namespaces.profile??null,m=u?.namespaces.store??null,g=d?.[0],f=g?.sellers.find(e=>o.seller===e.id),h={...t,currency:{code:m?.currencyCode?.value??t.currency.code,symbol:m?.currencySymbol?.value??t.currency.symbol},country:m?.countryCode?.value??t.country,channel:ChannelMarshal.stringify({salesChannel:m?.channel?.value??o.salesChannel,regionId:g?.id??o.regionId,seller:f?.id,hasOnlyDefaultSalesChannel:!m?.channel?.value}),person:p?.id?{id:p.id?.value??"",email:p.email?.value??"",givenName:p.firstName?.value??"",familyName:p.lastName?.value??""}:null};return F()(t,h)?null:h};var x=r(7343),T=r(6548);let R=new x.GraphQLScalarType({name:"ObjectOrString",description:"A string or the string representation of an object (a stringified object).",parseValue:function(e){return"string"==typeof e?getValueAsObjectOrString(e):null},serialize:function(e){return"object"==typeof e?JSON.stringify(e):"string"==typeof e?e:null},parseLiteral:e=>e.kind===T.Kind.STRING?getValueAsObjectOrString(e.value):null});function getValueAsObjectOrString(e){try{return JSON.parse(e)}catch(t){return e}}let isSearchItem=e=>"Price"in e&&"seller"in e&&"product"in e,isOrderFormItem=e=>"skuName"in e,canonicalFromProduct=({linkText:e})=>`/${e}/p`,enhanceCommercialOffer=({offer:e,seller:t,product:r})=>({...e,product:r,seller:t}),D={imageText:"image",imageUrl:"https://storecomponents.vtexassets.com/assets/faststore/images/image___117a6d3e229a96ad0e0d0876352566e2.svg",imageLabel:"label"},getSlug=(e,t)=>`${e}-${t}`,getPath=(e,t)=>`/${getSlug(e,t)}/p`,nonEmptyArray=e=>Array.isArray(e)&&e.length>0?e:null,A=new Set(["allSpecifications"]),V={price_desc:"price:desc",price_asc:"price:asc",orders_desc:"orders:desc",name_desc:"name:desc",name_asc:"name:asc",release_desc:"release:desc",discount_desc:"discount:desc",score_desc:""},pickBestSku=e=>{let t=e.flatMap(e=>e.sellers.map(t=>({offer:t.commertialOffer,sku:e}))),r=min(t,({offer:e},{offer:t})=>bestOfferFirst(e,t));return r?r.sku:e[0]},isValidSkuId=e=>""!==e&&!Number.isNaN(Number(e)),isRootFacet=(e,t,r)=>t?"category-1"===e.key:!!r&&"brand"===e.key,_=["bd","d","h","m"],isUnit=e=>_.includes(e),L={bd:{0:"Today",1:"In 1 business day",other:"Up to # business days"},d:{0:"Today",1:"In 1 day",other:"Up to # days"},h:{0:"Now",1:"In 1 hour",other:"Up to # hours"},m:{0:"Now",1:"In 1 minute",other:"Up to # minutes"}},getLocalizedEstimates=e=>{let[t,r]=[e.split(/\D+/)[0],e.split(/[0-9]+/)[1]],a=""!==t&&!Number.isNaN(Number(t)),o=isUnit(r);if(!a||!o)return"";let i=2>Number(t)?Number(t):"other";return L[r][i].replace("#",t)??""},M="skuvariation";function findSkuVariantImage(e,t){let r=`${M}${t}`.toLowerCase(),a=e.find(e=>e.imageLabel===r);if(a)return a;let o=e.find(e=>e.imageLabel===M);return o||e[0]}function getActiveSkuVariations(e){let t={};return e.forEach(e=>{t[e.name]=e.values[0]}),t}let U={StoreCollection:P,StoreAggregateOffer:{highPrice:e=>{let t=e.filter(inStock),r=t[t.length-1];return null!=r?price(r):0},lowPrice:e=>{let[t]=e.filter(inStock);return t?price(t):0},offerCount:e=>e.length,priceCurrency:async(e,t,r)=>{let{loaders:{salesChannelLoader:a},storage:{channel:o}}=r,i=await a.load(o.salesChannel);return i.CurrencyCode??""},offers:e=>e},StoreProduct:{productID:({itemId:e})=>e,name:({isVariantOf:e,name:t})=>t??e.productName,slug:({isVariantOf:{linkText:e},itemId:t})=>getSlug(e,t),description:({isVariantOf:{description:e}})=>e,seo:({isVariantOf:e})=>({title:e.productName,description:e.description,canonical:canonicalFromProduct(e)}),brand:({isVariantOf:{brand:e}})=>({name:e}),unitMultiplier:({unitMultiplier:e})=>e,breadcrumbList:({isVariantOf:{categories:e,productName:t,linkText:r},itemId:a})=>({itemListElement:[...e.reverse().map((e,t)=>{let r=e.split("/"),a=r[r.length-2],o=r.map(slugify).join("/");return{name:a,item:o,position:t+1}}),{name:t,item:getPath(r,a),position:e.length+1}],numberOfItems:e.length}),image:({images:e},t)=>{let r=(nonEmptyArray(e)??[D]).map(({imageUrl:e,imageText:t,imageLabel:r})=>({alternateName:t??"",url:e.replace("vteximg.com.br","vtexassets.com"),keywords:r}));if("object"!=typeof t)return r;let{context:a,limit:o}=t,i="generic"!==a;o=(o=o||-1)<=-1?void 0:o;let n=i?r.filter(({keywords:e})=>e===a):r;return(n=0===n.length?r:n).slice(0,o)},sku:({itemId:e})=>e,gtin:({referenceId:e})=>e[0]?.Value??"",review:()=>[],aggregateRating:()=>({}),offers:e=>e.sellers.map(t=>enhanceCommercialOffer({offer:t.commertialOffer,seller:t,product:e})).sort(bestOfferFirst),isVariantOf:e=>e,additionalProperty:({variations:e=[],attachmentsValues:t=[],attributes:r=[]})=>{let a=e.flatMap(({name:e,values:t})=>t.map(t=>({name:e,value:t,valueReference:E.specification}))),o=t.map(attachmentToPropertyValue),i=r.map(attributeToPropertyValue);return[...a,...o,...i]},releaseDate:({isVariantOf:{releaseDate:e}})=>e??""},StoreSeo:{title:({title:e})=>e??"",description:({description:e})=>e??"",canonical:({canonical:e})=>e??"",titleTemplate:()=>""},StoreFacet:{__resolveType:({type:e,values:t})=>"TEXT"!==e||t.every(e=>e.range)?"StoreFacetRange":"StoreFacetBoolean"},StoreFacetBoolean:{key:({key:e})=>e,label:({name:e})=>e,values:({values:e})=>e.sort((e,t)=>e.name.localeCompare(t.name))},StoreFacetRange:{key:({key:e})=>e,label:({name:e})=>e,min:({values:e,key:t},r,{storage:{searchArgs:a}})=>{let o=parseRange(a?.selectedFacets?.find(e=>e.key===t)?.value??""),i=min(e,(e,t)=>e.range.from-t.range.from),n=i?.range.from??0;return{selected:o?.[0]??n,absolute:n}},max:({values:e,key:t},r,{storage:{searchArgs:a}})=>{let o=parseRange(a?.selectedFacets?.find(e=>e.key===t)?.value??""),i=min(e,(e,t)=>t.range.to-e.range.to),n=i?.range.to??0;return{selected:o?.[1]??n,absolute:n}}},StoreFacetValueBoolean:{value:({value:e})=>e,label:({name:e})=>e||"unknown",selected:({selected:e})=>e,quantity:({quantity:e})=>e},StoreOffer:{priceCurrency:async(e,t,r)=>{let{loaders:{salesChannelLoader:a},storage:{channel:o}}=r,i=await a.load(o.salesChannel);return i.CurrencyCode??""},priceValidUntil:e=>isSearchItem(e)?e.PriceValidUntil??"":isOrderFormItem(e)?e.priceValidUntil??"":null,itemCondition:()=>"https://schema.org/NewCondition",availability:async e=>isSearchItem(e)?availability(inStock(e)):isOrderFormItem(e)?availability(inStockOrderFormItem(e.availability)):null,seller:(e,t,r)=>isSearchItem(e)?{identifier:r.storage.channel?.seller||e.seller.sellerId||""}:isOrderFormItem(e)?{identifier:e.seller}:null,price:e=>isSearchItem(e)?price(e):isOrderFormItem(e)?e.sellingPrice/100:null,sellingPrice:e=>isSearchItem(e)?sellingPrice(e):isOrderFormItem(e)?e.sellingPrice/100:null,listPrice:e=>isSearchItem(e)?e.ListPrice??0:isOrderFormItem(e)?e.listPrice/100:null,itemOffered:e=>isSearchItem(e)?e.product:isOrderFormItem(e)?{...e.product,attachmentsValues:e.attachments}:null,quantity:e=>isSearchItem(e)?e.AvailableQuantity??0:isOrderFormItem(e)?e.quantity:null},StoreAggregateRating:{ratingValue:()=>5,reviewCount:()=>0},StoreReview:{reviewRating:()=>({ratingValue:5,bestRating:5}),author:()=>({name:""})},StoreProductGroup:{hasVariant:e=>e.isVariantOf.items.map(t=>enhanceSku(t,e.isVariantOf)),productGroupID:({isVariantOf:e})=>e.productId,name:e=>e.isVariantOf.productName,skuVariants:e=>e,additionalProperty:({isVariantOf:{specificationGroups:e}})=>e.filter(e=>!A.has(e.name)).flatMap(({specifications:e})=>e.flatMap(({name:e,values:t})=>t.map(t=>({name:e,value:t,valueReference:E.specification}))))},StoreSearchResult:{suggestions:async(e,t,r)=>{let{clients:{search:a}}=r,{searchArgs:o}=e;if(!o.query){let e=await a.topSearches();return{terms:e.searches.map(e=>({value:e.term,count:e.count})),products:[]}}let{productSearchPromise:i}=e,[n,s]=await Promise.all([a.suggestedTerms(o),i]),l=s.products.map(e=>{let t=pickBestSku(e.items);return t&&enhanceSku(t,e)}).filter(e=>!!e),{searches:c}=n;return{terms:c.map(e=>({value:e.term,count:e.count})),products:l}},products:async({productSearchPromise:e})=>{let t=await e,r=t.products.map(e=>{let t=pickBestSku(e.items);return t&&enhanceSku(t,e)}).filter(e=>!!e);return{pageInfo:{hasNextPage:t.pagination.after.length>0,hasPreviousPage:t.pagination.before.length>0,startCursor:"0",endCursor:t.recordsFiltered.toString(),totalCount:t.recordsFiltered},edges:r.map((e,t)=>({node:e,cursor:t.toString()}))}},facets:async({searchArgs:e},t,r)=>{let{clients:{search:a}}=r;r.storage.searchArgs=e;let{facets:o=[]}=await a.facets(e),i=!e.query,n=!!e.selectedFacets?.length&&"category-1"===e.selectedFacets[0].key,s=!!e.selectedFacets?.length&&"brand"===e.selectedFacets[0].key,l=o.filter(e=>!i||!isRootFacet(e,n,s));return l},metadata:async({productSearchPromise:e})=>{let t=await e;return{isTermMisspelled:t.correction?.misspelled??!1,logicalOperator:t.operator,fuzzy:t.fuzzy}}},StorePropertyValue:{propertyID:e=>e.propertyID||getPropertyId(e),name:({name:e})=>e,value:({value:e})=>e,valueReference:({valueReference:e})=>e},SkuVariants:{activeVariations:e=>getActiveSkuVariations(e.variations),allVariantsByName:e=>(function(e){let t={};return e?.forEach(e=>{t[e.field.originalName??e.field.name]=e.values.map(e=>e.originalName??e.name)}),t})(e.isVariantOf.skuSpecifications),slugsMap:(e,t)=>(function(e,t,r){let a={};return e.forEach(e=>{let o=e.variations;if(0===o.length)return;let i=`${t}-${o.find(e=>e.name===t)?.values[0]??""}`,n=o.reduce((e,r)=>{let a=r.name===t;return a?e:e+`-${r.name}-${r.values[0]}`},i);a[n]=`${r}-${e.itemId}`}),a})(e.isVariantOf.items,t.dominantVariantName??e.variations[0]?.name,e.isVariantOf.linkText),availableVariations:(e,t)=>{let r=t.dominantVariantName??e.variations[0]?.name,a=getActiveSkuVariations(e.variations),o=a[r],i=function(e,t,r){let a={},o=new Set;return e.forEach(e=>{if(0===e.variations.length)return;let i=e.variations.find(e=>e.name===t),n=i?.values[0]===r;if(!n){let r=`${t}-${i?.values[0]}`;if(!i||o.has(r))return;o.add(r);let n=findSkuVariantImage(e.images,t),s={src:n.imageUrl,alt:n.imageLabel??"",label:`${t}: ${i.values[0]}`,value:i.values[0]};a[i.name]?a[i.name].push(s):a[i.name]=[s];return}e.variations.forEach(t=>{let r=`${t.name}-${t.values[0]}`;if(o.has(r))return;o.add(r);let i=findSkuVariantImage(e.images,t.name),n={src:i.imageUrl,alt:i.imageText??"",label:`${t.name}: ${t.values[0]}`,value:t.values[0]};a[t.name]?a[t.name].push(n):a[t.name]=[n]})}),function(e){for(let t in e)e[t].sort((e,t)=>{var r,a;return r=e.value,a=t.value,Number.isNaN(Number(r)-Number(a))?r<a?-1:r>a?1:0:Number(r)-Number(a)});return e}(a)}(e.isVariantOf.items,r,o);return i}},ShippingSLA:{carrier:e=>e?.friendlyName??e?.name??"",price:e=>e?.price?e.price/100:e?.price,localizedEstimates:e=>e?.shippingEstimate?getLocalizedEstimates(e.shippingEstimate):""},ObjectOrString:R,Query:{product:async(e,{locator:t},r)=>{let a=findChannel(t),o=findLocale(t),i=findSkuId(t),n=findSlug(t);a&&mutateChannelContext(r,a),o&&mutateLocaleContext(r,o);let{loaders:{skuLoader:s},clients:{commerce:l,search:c}}=r;try{let e=i??n?.split("-").pop()??"";if(!isValidSkuId(e))throw Error("Invalid SkuId");let t=await s.load(e);if(n&&t.isVariantOf.linkText&&!n.startsWith(t.isVariantOf.linkText))throw Error(`Slug was set but the fetched sku does not satisfy the slug condition. slug: ${n}, linkText: ${t.isVariantOf.linkText}`);return t}catch(a){if(null==n)throw new BadRequestError("Missing slug or id");let e=await l.catalog.portal.pagetype(`${n}/p`);if("Product"!==e.pageType||!e.id)throw new NotFoundError(`No product found for slug ${n}`);let{products:[t]}=await c.products({page:0,count:1,query:`product:${e.id}`});if(!t)throw new NotFoundError(`No product found for id ${e.id}`);let r=pickBestSku(t.items);return enhanceSku(r,t)}},collection:(e,{slug:t},r)=>{let{loaders:{collectionLoader:a}}=r;return a.load(t)},search:async(e,{first:t,after:r,sort:a,term:o,selectedFacets:i},n)=>{let s=findChannel(i),l=findLocale(i),c=findCrossSelling(i);s&&mutateChannelContext(n,s),l&&mutateLocaleContext(n,l);let d=o;if(c){let e=await n.clients.commerce.catalog.products.crossselling({type:O[c.key],productId:c.value});d=`product:${e.map(e=>e.productId).slice(0,t).join(";")}`}let u=r?Number(r):0,p={page:Math.ceil(u/t),count:t,query:d??void 0,sort:V[a??"score_desc"],selectedFacets:i?.flatMap(transformSelectedFacet)??[]},m=n.clients.search.products(p);return{searchArgs:p,productSearchPromise:m}},allProducts:async(e,{first:t,after:r},a)=>{let{clients:{search:o}}=a,i=r?Number(r):0,n=await o.products({page:Math.ceil(i/t),count:t}),s=n.products.map(e=>e.items.map(t=>enhanceSku(t,e))).flat().filter(e=>e.sellers.length>0);return{pageInfo:{hasNextPage:n.pagination.after.length>0,hasPreviousPage:n.pagination.before.length>0,startCursor:"0",endCursor:n.recordsFiltered.toString(),totalCount:n.recordsFiltered},edges:s.map((e,t)=>({node:e,cursor:(i+t).toString()}))}},allCollections:async(e,{first:t,after:r},a)=>{let{clients:{commerce:o}}=a,i=r?Number(r):0,[n,s]=await Promise.all([o.catalog.brand.list(),o.catalog.category.tree()]),l=[],dfs=(e,t)=>{for(let r of(l.push({...e,level:t}),e.children))dfs(r,t+1)};for(let e of s)dfs(e,0);let c=[...n.filter(e=>e.isActive).map(e=>({...e,type:"brand"})),...l],d=c.filter(e=>!!P.slug(e,null,a,null));return{pageInfo:{hasNextPage:d.length-i>t,hasPreviousPage:i>0,startCursor:"0",endCursor:(Math.min(t,d.length-i)-1).toString(),totalCount:d.length},edges:d.slice(i,i+t).map((e,t)=>({node:e,cursor:(i+t).toString()}))}},shipping:async(e,{country:t,items:r,postalCode:a},o)=>{let{loaders:{simulationLoader:i},clients:{commerce:n}}=o,[s,l]=await Promise.all([i.load({country:t,items:r,postalCode:a}),n.checkout.address({postalCode:a,country:t})]);return{...s,address:l}},redirect:async(e,{term:t,selectedFacets:r},a)=>{if(!t&&(!r||!r.length))return null;let{redirect:o}=await a.clients.search.products({page:1,count:1,query:t??void 0,selectedFacets:r?.flatMap(transformSelectedFacet)??[]});return{url:o}},sellers:async(e,{postalCode:t,geoCoordinates:r,country:a,salesChannel:o},i)=>{let{clients:{commerce:n}}=i,s=await n.checkout.region({postalCode:t,geoCoordinates:r,country:a,salesChannel:o}),l=s?.[0],{id:c,sellers:d}=l;return{id:c,sellers:d}}},Mutation:{validateCart:validateCart,validateSession:validateSession,subscribeToNewsletter:subscribeToNewsletter}};(0,r(5785).loadFilesSync)(__dirname,{extensions:[".graphql"]}).map(x.print).join("\n"),r(1718),r(1283),r(4161),r(5196),r(2793),r(6969),r(4691),r(8973),function(e){e.EXECUTION_ERROR="graphql.error",e.EXECUTION_RESULT="graphql.result",e.RESOLVER_EXECUTION_ERROR="graphql.resolver.error",e.RESOLVER_EXCEPTION="graphql.resolver.exception",e.RESOLVER_FIELD_NAME="graphql.resolver.fieldName",e.RESOLVER_TYPE_NAME="graphql.resolver.typeName",e.RESOLVER_RESULT_TYPE="graphql.resolver.resultType",e.RESOLVER_ARGS="graphql.resolver.args",e.EXECUTION_OPERATION_NAME="graphql.operation.name",e.EXECUTION_OPERATION_TYPE="graphql.operation.type",e.EXECUTION_OPERATION_DOCUMENT="graphql.document",e.EXECUTION_VARIABLES="graphql.variables"}(a||(a={})),Symbol("OPEN_TELEMETRY_GRAPHQL"),n.i8;let q={vtex:{getResolvers:e=>U,getContextFactory:e=>t=>(t.storage={channel:ChannelMarshal.parse(e.channel),flags:e.flags??{},locale:e.locale,cookies:new Map},t.clients=getClients(e,t),t.loaders=getLoaders(e,t),t)}},src_getResolvers=e=>q[e.platform].getResolvers(e),src_getContextFactory=e=>q[e.platform].getContextFactory(e)},9239:(e,t,r)=>{r.d(t,{h:()=>execute});var a=r(1423),o=r.n(a),i=r(4354),n=r(697),s=r(3760),l=r(4772),c=r(6565),d=r(7343),u=r(4626),p=r(5785);let m=JSON.parse('{"4b33c5c07f440dc7489e55619dc2211a13786e72":"fragment ServerCollectionPage on Query { collection(slug: $slug) { id } } query ServerCollectionPageQuery($slug: String!) { collection(slug: $slug) { breadcrumbList { itemListElement { item name position } } meta { selectedFacets { key value } } seo { description title } } ...ServerCollectionPage }","3ce56e42296689b601347fedc380c89519355ab7":"fragment CartProductItem on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations availableVariations slugsMap } } name sku unitMultiplier } fragment ProductDetailsFragment_product on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } description gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations availableVariations slugsMap } } name offers { lowPrice offers { availability listPrice price seller { identifier } } } id: productID sku unitMultiplier ...CartProductItem } fragment ServerProduct on Query { product(locator: $locator) { id: productID } } query ServerProductQuery($locator: [IStoreSelectedFacet!]!) { product(locator: $locator) { brand { name } breadcrumbList { itemListElement { item name position } } description gtin image { alternateName url } isVariantOf { productGroupID } name offers { highPrice lowPrice offers { availability itemCondition price priceCurrency priceValidUntil seller { identifier } } priceCurrency } id: productID releaseDate seo { canonical description title } sku ...ProductDetailsFragment_product } ...ServerProduct }","534fae829675533052d75fd4aa509b9cf85b4d40":"fragment CartItem on StoreOffer { itemOffered { ...CartProductItem } listPrice price quantity seller { identifier } } fragment CartMessage on StoreCartMessage { status text } fragment CartProductItem on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations availableVariations slugsMap } } name sku unitMultiplier } mutation ValidateCartMutation($cart: IStoreCart!, $session: IStoreSession!) { validateCart(cart: $cart, session: $session) { messages { ...CartMessage } order { acceptedOffer { ...CartItem } orderNumber } } }","feb7005103a859e2bc8cf2360d568806fd88deba":"mutation SubscribeToNewsletter($data: IPersonNewsletter!) { subscribeToNewsletter(data: $data) { id } }","c0d7d2ae1d5aaae5d50eea683b389377c36fb57d":"fragment ClientManyProducts on Query { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets ) { products { pageInfo { totalCount } } } } fragment ProductSummary_product on StoreProduct { additionalProperty { name propertyID value valueReference } brand { brandName: name } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID } name offers { lowPrice offers { availability listPrice price quantity seller { identifier } } } id: productID sku slug } query ClientManyProductsQuery($after: String, $first: Int!, $selectedFacets: [IStoreSelectedFacet!]!, $sort: StoreSort!, $term: String!) { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets ) { products { edges { node { ...ProductSummary_product } } pageInfo { totalCount } } } ...ClientManyProducts }","054742a6e1a39f1e09237dcec956879d964f3f20":"fragment ClientProductGallery on Query { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets ) { products { pageInfo { totalCount } } } } fragment Filter_facets on StoreFacet { ... on StoreFacetBoolean { __typename key label values { label quantity selected value } } ... on StoreFacetRange { __typename key label max { absolute selected } min { absolute selected } } } fragment SearchEvent_metadata on SearchMetadata { fuzzy isTermMisspelled logicalOperator } query ClientProductGalleryQuery($after: String!, $first: Int!, $selectedFacets: [IStoreSelectedFacet!]!, $sort: StoreSort!, $term: String!) { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets ) { facets { ...Filter_facets } metadata { ...SearchEvent_metadata } products { pageInfo { totalCount } } } ...ClientProductGallery }","cedeb0c3e7ec1678400fe2ae930f5a79382fba1e":"fragment CartProductItem on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations availableVariations slugsMap } } name sku unitMultiplier } fragment ClientProduct on Query { product(locator: $locator) { id: productID } } fragment ProductDetailsFragment_product on StoreProduct { additionalProperty { name propertyID value valueReference } brand { name } description gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations availableVariations slugsMap } } name offers { lowPrice offers { availability listPrice price seller { identifier } } } id: productID sku unitMultiplier ...CartProductItem } query ClientProductQuery($locator: [IStoreSelectedFacet!]!) { product(locator: $locator) { ...ProductDetailsFragment_product } ...ClientProduct }","a8a27661f6a032e086c047339e0d0f180f0e0161":"fragment ClientSearchSuggestions on Query { search(first: 5, term: $term, selectedFacets: $selectedFacets) { suggestions { terms { value } } } } fragment ProductSummary_product on StoreProduct { additionalProperty { name propertyID value valueReference } brand { brandName: name } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID } name offers { lowPrice offers { availability listPrice price quantity seller { identifier } } } id: productID sku slug } fragment SearchEvent_metadata on SearchMetadata { fuzzy isTermMisspelled logicalOperator } query ClientSearchSuggestionsQuery($selectedFacets: [IStoreSelectedFacet!], $term: String!) { search(first: 5, term: $term, selectedFacets: $selectedFacets) { metadata { ...SearchEvent_metadata } products { pageInfo { totalCount } } suggestions { products { ...ProductSummary_product } terms { value } } } ...ClientSearchSuggestions }","e2385b0f11726d0068f96548f57a8dd441c064e3":"fragment ClientTopSearchSuggestions on Query { search(first: 5, term: $term, selectedFacets: $selectedFacets) { suggestions { terms { value } } } } query ClientTopSearchSuggestionsQuery($selectedFacets: [IStoreSelectedFacet!], $term: String!) { search(first: 5, term: $term, selectedFacets: $selectedFacets) { suggestions { terms { value } } } ...ClientTopSearchSuggestions }","5696202828f9275216a445e316ebf516f168c506":"mutation ValidateSession($search: String!, $session: IStoreSession!) { validateSession(session: $session, search: $search) { addressType channel country currency { code symbol } deliveryMode { deliveryChannel deliveryMethod deliveryWindow { endDate startDate } } geoCoordinates { latitude longitude } locale person { email familyName givenName id } postalCode } }","d6667f1de2a26b94b9b55f4b25d7d823f82635a0":"fragment ClientShippingSimulation on Query { shipping(items: $items, postalCode: $postalCode, country: $country) { address { city } } } query ClientShippingSimulationQuery($country: String!, $items: [IShippingItem!]!, $postalCode: String!) { shipping(items: $items, postalCode: $postalCode, country: $country) { address { city neighborhood state } logisticsInfo { slas { availableDeliveryWindows { endDateUtc listPrice price startDateUtc } carrier localizedEstimates price shippingEstimate } } } ...ClientShippingSimulation }"}'),g={},f={};var h=r(9740),y=r.n(h);let S={platform:y().platform,account:y().api.storeId,environment:y().api.environment,subDomainPrefix:y().api.subDomainPrefix??["www"],hideUnavailableItems:y().api.hideUnavailableItems,incrementAddress:y().api.incrementAddress,channel:y().session.channel,locale:y().session.locale,flags:{enableOrderFormSync:!0}},v=new Map(Object.entries(m)),C=(0,c.E9)(S),formatError=e=>e instanceof d.GraphQLError&&(0,c.T9)(e.originalError)?e:(console.error(e),new d.GraphQLError("Sorry, something went wrong.")),getEnvelop=async()=>(0,i.envelop)({plugins:[(0,i.useSchema)(function(){let e=(0,p.loadFilesSync)(o().join(process.cwd(),"@generated"),{extensions:["graphql"]}),t=(0,c.yd)(S);return(0,u.makeExecutableSchema)({typeDefs:e,resolvers:[t,g,f]})}()),(0,i.useExtendContext)(C),(0,i.useMaskedErrors)({formatError}),(0,n.useGraphQlJit)(),(0,l.useValidationCache)(),(0,s.useParserCache)()]}),b=getEnvelop(),execute=async(e,t={headers:{}})=>{let{operation:r,variables:a,query:o}=e,{operationHash:i,operationName:n}=r.__meta__,s=o??v.get(i);if(null==s)throw Error(`No query found for operationName ${n} and operationHash ${i}`);let l=await b,{parse:c,contextFactory:d,execute:u,schema:p}=l(t),m=await d(t),{data:g,errors:f}=await u({schema:p,document:c(s),variableValues:a,contextValue:m,operationName:n});return{data:g,errors:f,extensions:{cookies:m.storage.cookies,cacheControl:m.cacheControl}}}}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
self.__BUILD_MANIFEST=function(s,c,a,t,e,b,i,u){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":[s,c,a,t,e,"static/css/6ce7302d311d7d68.css","static/chunks/pages/index-58951c53d8027e6e.js"],"/404":[s,c,a,b,"static/chunks/pages/404-28a52b92a626978b.js"],"/500":[s,c,a,b,"static/chunks/pages/500-0d28b814be7b9731.js"],"/_error":["static/chunks/pages/_error-5a3e12f364a20272.js"],"/account":[s,c,a,"static/chunks/pages/account-9e4bcc3ab5b88353.js"],"/checkout":[s,c,a,"static/chunks/pages/checkout-7c95e252d2cbfd75.js"],"/login":[s,c,a,b,"static/chunks/pages/login-cf8e5aafcae9efd5.js"],"/s":[s,c,a,i,u,"static/chunks/pages/s-4d4c0bb22d489fa2.js"],"/[slug]/p":[s,c,a,t,e,"static/css/36f9392d58a1a958.css","static/chunks/pages/[slug]/p-003fd9d91eec1798.js"],"/[...slug]":[s,c,a,t,e,i,u,"static/css/ec840ce35f0cf5e0.css","static/chunks/pages/[...slug]-5e2a4e9dad048ff3.js"],sortedPages:["/","/404","/500","/_app","/_error","/account","/checkout","/login","/s","/[slug]/p","/[...slug]"]}}("static/chunks/575-cdcaf62ab25bbfca.js","static/css/25261a033e496803.css","static/chunks/551-162bba2358b63a62.js","static/css/4ababb851a0d481b.css","static/chunks/346-9ca6d5a6a8749dda.js","static/css/ec44b650be144ada.css","static/css/185f3332f3d0db64.css","static/chunks/913-024e149266ee79b9.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|