@faststore/core 3.42.0 → 3.44.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +55 -55
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/config.json +3 -3
- 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/prerender-manifest.js +1 -1
- package/.next/prerender-manifest.json +1 -1
- package/.next/react-loadable-manifest.json +65 -65
- package/.next/routes-manifest.json +1 -1
- package/.next/server/chunks/1506.js +1 -1
- package/.next/server/chunks/2443.js +1 -0
- package/.next/server/chunks/2524.js +1 -0
- package/.next/server/chunks/4289.js +2 -362
- package/.next/server/chunks/4559.js +361 -0
- package/.next/server/chunks/4725.js +1 -0
- package/.next/server/chunks/4746.js +1 -1
- package/.next/server/chunks/5474.js +6 -0
- package/.next/server/chunks/5607.js +1 -0
- package/.next/server/chunks/563.js +1 -1
- package/.next/server/chunks/6594.js +1 -1
- package/.next/server/chunks/674.js +1 -1
- package/.next/server/chunks/6968.js +10 -0
- package/.next/server/chunks/7986.js +6 -1
- package/.next/server/chunks/804.js +1 -0
- package/.next/server/chunks/831.js +1 -1
- package/.next/server/chunks/8562.js +1 -1
- package/.next/server/chunks/8646.js +1 -1
- package/.next/server/chunks/ButtonSignIn.js +1 -1
- package/.next/server/chunks/UIBannerText.js +1 -1
- package/.next/server/chunks/UISKUMatrixSidebar.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.js +1 -1
- package/.next/server/pages/404.js.nft.json +1 -1
- package/.next/server/pages/500.js +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 +1 -1
- package/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/server/pages/_document.js +1 -1
- package/.next/server/pages/_document.js.nft.json +1 -1
- package/.next/server/pages/_error.js +1 -1
- package/.next/server/pages/_error.js.nft.json +1 -1
- package/.next/server/pages/account/profile.js +1 -1
- package/.next/server/pages/account/profile.js.nft.json +1 -1
- package/.next/server/pages/account.js +1 -1
- package/.next/server/pages/account.js.nft.json +1 -1
- package/.next/server/pages/api/graphql.js +2 -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 +1 -1
- package/.next/server/pages/api/preview.js.nft.json +1 -1
- package/.next/server/pages/checkout.js +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/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 +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/U_9W0qMyv_4RQSLFdrtHC/_buildManifest.js +1 -0
- package/.next/static/chunks/{1153.ed17e19083f51bdb.js → 1153.8f0ac867c4ddce90.js} +1 -1
- package/.next/static/chunks/1173.ca14a5bc4e1264f4.js +1 -0
- package/.next/static/chunks/1418-e86227bcf9a5d486.js +28 -0
- package/.next/static/chunks/1552.8751332da83cadc5.js +1 -0
- package/.next/static/chunks/{6076.d80e37e35892bafc.js → 3684.3e6f435506c2c7c9.js} +1 -1
- package/.next/static/chunks/417.edbb75ab2f55482f.js +1 -0
- package/.next/static/chunks/{4349-6fc936580b772e67.js → 4349-87a956a73b97519c.js} +1 -1
- package/.next/static/chunks/{4625-9a273e78866c389b.js → 4625-553d20c86b0ca577.js} +1 -1
- package/.next/static/chunks/{4746.19eddeaeb33ea820.js → 4746.2e16ec0663a3873f.js} +1 -1
- package/.next/static/chunks/{4774.907a71a04126d57c.js → 4774.8e70c01dcd0ed4b3.js} +1 -1
- package/.next/static/chunks/{4865.3e2ae9feb511c870.js → 4865.4017be0f8e7c8cf0.js} +1 -1
- package/.next/static/chunks/5836.c5c244a8cbfa7f7d.js +1 -0
- package/.next/static/chunks/630.13d3dd939b789798.js +6 -0
- package/.next/static/chunks/6335-6eb4ff84af184b88.js +1 -0
- package/.next/static/chunks/6536.d5260107222db13c.js +1 -0
- package/.next/static/chunks/{7195.e88924bd232c58b7.js → 7195.fd4cacc0bef1a233.js} +1 -1
- package/.next/static/chunks/7498-72289e704e7c7056.js +1 -0
- package/.next/static/chunks/7959.7c721505286572c0.js +1 -0
- package/.next/static/chunks/9.89f24163370f3a22.js +1 -0
- package/.next/static/chunks/BannerNewsletter.8982f42e60ed8828.js +1 -0
- package/.next/static/chunks/{ButtonSignIn.df0e3ce490436fe2.js → ButtonSignIn.bff8dc7b2133806c.js} +1 -1
- package/.next/static/chunks/CartItem.f2493be7c504f22f.js +1 -0
- package/.next/static/chunks/{CartSidebar.26d3e39bf93a368f.js → CartSidebar.aa9e43be37034654.js} +1 -1
- package/.next/static/chunks/{Gift.affb75f8f7bcb6db.js → Gift.375356d6a74e2693.js} +1 -1
- package/.next/static/chunks/Newsletter.9db4df2d4fb33227.js +1 -0
- package/.next/static/chunks/OrderSummary.e6e0a3af3c224b4e.js +1 -0
- package/.next/static/chunks/ProductShelf.9cea36116836c161.js +1 -0
- package/.next/static/chunks/ProductTiles.059a4a6360e1d4ea.js +1 -0
- package/.next/static/chunks/RegionModal.4594b707a1092551.js +1 -0
- package/.next/static/chunks/UIBannerText.45cf608e46cde628.js +1 -0
- package/.next/static/chunks/UIButton.3186f933c0ecfb31.js +1 -0
- package/.next/static/chunks/UISKUMatrixSidebar.9ac3980a60cfc358.js +1 -0
- package/.next/static/chunks/UIToast.221eb10681d2f642.js +1 -0
- package/.next/static/chunks/pages/{404-8e61ea158e7b314c.js → 404-6300c433469b7262.js} +1 -1
- package/.next/static/chunks/pages/{500-68f51177e64de6e7.js → 500-2d1dd344c8a8827f.js} +1 -1
- package/.next/static/chunks/pages/[...slug]-c1a62d58f5940747.js +1 -0
- package/.next/static/chunks/pages/[slug]/p-555dc09a5e78260e.js +1 -0
- package/.next/static/chunks/pages/_app-929466ed763a6d46.js +1 -0
- package/.next/static/chunks/pages/account/{profile-1fdb500de8f12b3a.js → profile-23b2e9fbbd95a30b.js} +1 -1
- package/.next/static/chunks/pages/{checkout-0dfe0dc9cee443ba.js → checkout-93b647fc45454d97.js} +1 -1
- package/.next/static/chunks/pages/{index-d36123e232b889d8.js → index-07bc320fc045538c.js} +1 -1
- package/.next/static/chunks/pages/{login-b59ea5561defc0d4.js → login-2454f1cd309c27d2.js} +1 -1
- package/.next/static/chunks/pages/{s-6120de2f57d674fc.js → s-9901e6857f517b8b.js} +1 -1
- package/.next/static/chunks/webpack-c2eed1e0b727b3ee.js +1 -0
- package/.next/static/css/b8945ac5f5327c34.css +1 -0
- package/.next/static/css/{f03f8973f7c72071.css → dbbb10bf2f162a58.css} +1 -1
- package/.next/trace +113 -109
- package/.turbo/turbo-build.log +25 -25
- package/.turbo/turbo-test.log +5 -5
- package/@generated/gql.ts +18 -2
- package/@generated/graphql.ts +58 -1
- package/@generated/persisted-documents.json +3 -1
- package/@generated/schema.graphql +14 -0
- package/CHANGELOG.md +12 -0
- package/cms/faststore/sections.json +110 -1
- package/discovery.config.default.js +12 -0
- package/package.json +7 -6
- package/src/Layout.tsx +2 -0
- package/src/components/cms/GlobalSections.tsx +13 -9
- package/src/components/cms/global/Components.ts +2 -0
- package/src/components/region/RegionBar/RegionBar.tsx +35 -2
- package/src/components/region/RegionButton/RegionButton.tsx +41 -6
- package/src/components/region/RegionModal/RegionModal.tsx +46 -34
- package/src/components/region/RegionModal/useRegion.ts +79 -0
- package/src/components/region/RegionModal/useRegionModal.ts +44 -0
- package/src/components/region/RegionPopover/RegionPopover.tsx +174 -0
- package/src/components/region/RegionPopover/index.ts +1 -0
- package/src/components/region/RegionPopover/section.module.scss +9 -0
- package/src/components/search/SearchInput/SearchInput.tsx +2 -2
- package/src/components/sections/Navbar/section.module.scss +3 -0
- package/src/components/sections/RegionBar/RegionBar.tsx +8 -3
- package/src/components/templates/LandingPage/LandingPage.tsx +22 -18
- package/src/components/templates/ProductListingPage/ProductListing.tsx +6 -1
- package/src/constants.ts +1 -0
- package/src/experimental/searchServerSideFunctions/getServerSideProps.ts +8 -5
- package/src/experimental/searchServerSideFunctions/getStaticProps.ts +9 -7
- package/src/pages/404.tsx +6 -5
- package/src/pages/500.tsx +6 -5
- package/src/pages/[...slug].tsx +11 -4
- package/src/pages/[slug]/p.tsx +16 -6
- package/src/pages/_app.tsx +4 -2
- package/src/pages/api/preview.ts +43 -18
- package/src/pages/index.tsx +9 -7
- package/src/pages/login.tsx +6 -5
- package/src/sdk/error/MissingContentError/MissingContentError.ts +6 -4
- package/src/sdk/error/MultipleContentError/MultipleContentError.ts +6 -4
- package/src/sdk/geolocation/useGeolocation.ts +42 -0
- package/src/sdk/product/index.ts +21 -0
- package/src/sdk/profile/index.ts +31 -0
- package/src/sdk/session/index.ts +37 -0
- package/src/sdk/ui/useOnClickOutside.ts +3 -38
- package/src/server/cms/index.ts +1 -2
- package/src/server/content/service.ts +227 -0
- package/src/server/content/types.ts +26 -0
- package/src/server/content/utils.ts +8 -0
- package/src/utils/utilities.ts +9 -1
- package/test/server/index.test.ts +1 -0
- package/.next/server/chunks/3105.js +0 -6
- package/.next/server/chunks/3779.js +0 -1
- package/.next/server/chunks/4444.js +0 -6
- package/.next/server/chunks/6026.js +0 -9
- package/.next/server/chunks/6030.js +0 -1
- package/.next/server/chunks/7337.js +0 -1
- package/.next/server/chunks/7675.js +0 -1
- package/.next/server/chunks/9594.js +0 -1
- package/.next/static/Ra_8xXVEVCNHcT2KePSUO/_buildManifest.js +0 -1
- package/.next/static/chunks/1036.27f5244aaf7d0915.js +0 -1
- package/.next/static/chunks/1173.5e86a9295010b785.js +0 -1
- package/.next/static/chunks/1552.e7cece605fc2e1cd.js +0 -1
- package/.next/static/chunks/3684.ba7a2a994988063b.js +0 -1
- package/.next/static/chunks/417.c39c1c5e5ef57b4a.js +0 -1
- package/.next/static/chunks/485.a35fab0c7c75a11b.js +0 -1
- package/.next/static/chunks/6167-ecb49640dcb9d566.js +0 -28
- package/.next/static/chunks/6335-5870fc075bf96b86.js +0 -1
- package/.next/static/chunks/6536.cd75ac69c241a35c.js +0 -1
- package/.next/static/chunks/7498-415859c993f5002b.js +0 -1
- package/.next/static/chunks/7959.9d31abae51a7e419.js +0 -1
- package/.next/static/chunks/9.e42e9b7463b94493.js +0 -1
- package/.next/static/chunks/BannerNewsletter.06b2b9724aa3c3ea.js +0 -1
- package/.next/static/chunks/CartItem.44cc90c698a69889.js +0 -1
- package/.next/static/chunks/Newsletter.d775e641d99322e6.js +0 -1
- package/.next/static/chunks/OrderSummary.8f34504b20564fec.js +0 -1
- package/.next/static/chunks/ProductShelf.0b5a71a93bca3148.js +0 -1
- package/.next/static/chunks/ProductTiles.a75612c0bcf990d6.js +0 -1
- package/.next/static/chunks/RegionModal.68b05bfd591d27fc.js +0 -1
- package/.next/static/chunks/UIBannerText.5ee380812ac3772c.js +0 -1
- package/.next/static/chunks/UIButton.c7a3273ac6ee5da5.js +0 -1
- package/.next/static/chunks/UISKUMatrixSidebar.c68540bda6d40e13.js +0 -1
- package/.next/static/chunks/UIToast.85ae30e3e8cc5ec7.js +0 -1
- package/.next/static/chunks/pages/[...slug]-f4fd6c8d7dc53f8f.js +0 -1
- package/.next/static/chunks/pages/[slug]/p-3b513ae37c648620.js +0 -1
- package/.next/static/chunks/pages/_app-0f16b6b5d7dfab2a.js +0 -1
- package/.next/static/chunks/webpack-d72e5eb27bf80195.js +0 -1
- package/.next/static/css/31fb64e064998460.css +0 -1
- /package/.next/static/{Ra_8xXVEVCNHcT2KePSUO → U_9W0qMyv_4RQSLFdrtHC}/_ssgManifest.js +0 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
|
|
2
|
-
> @faststore/core@3.
|
|
2
|
+
> @faststore/core@3.43.0 prebuild /home/runner/work/faststore/faststore/packages/core
|
|
3
3
|
> na run partytown && na run generate
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
> @faststore/core@3.
|
|
6
|
+
> @faststore/core@3.43.0 partytown /home/runner/work/faststore/faststore/packages/core
|
|
7
7
|
> partytown copylib ./public/~partytown
|
|
8
8
|
|
|
9
9
|
Partytown lib copied to: /home/runner/work/faststore/faststore/packages/core/public/~partytown
|
|
10
10
|
|
|
11
|
-
> @faststore/core@3.
|
|
11
|
+
> @faststore/core@3.43.0 generate /home/runner/work/faststore/faststore/packages/core
|
|
12
12
|
> na run generate:schema && na run generate:codegen && na run format:generated
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
> @faststore/core@3.
|
|
15
|
+
> @faststore/core@3.43.0 generate:schema /home/runner/work/faststore/faststore/packages/core
|
|
16
16
|
> tsx src/server/generator/generateGraphQLSchemaFile.ts
|
|
17
17
|
|
|
18
18
|
Schema GraphQL file generated successfully
|
|
19
19
|
|
|
20
|
-
> @faststore/core@3.
|
|
20
|
+
> @faststore/core@3.43.0 generate:codegen /home/runner/work/faststore/faststore/packages/core
|
|
21
21
|
> graphql-codegen
|
|
22
22
|
|
|
23
23
|
[STARTED] Parse Configuration
|
|
@@ -37,11 +37,11 @@ Running lifecycle hook "afterStart" scripts...
|
|
|
37
37
|
[CLI] Loading Documents
|
|
38
38
|
[CLI] Generating output
|
|
39
39
|
|
|
40
|
-
> @faststore/core@3.
|
|
40
|
+
> @faststore/core@3.43.0 format:generated /home/runner/work/faststore/faststore/packages/core
|
|
41
41
|
> prettier --write "@generated/**/*.{ts,js,tsx,jsx,json}" --loglevel error
|
|
42
42
|
|
|
43
43
|
|
|
44
|
-
> @faststore/core@3.
|
|
44
|
+
> @faststore/core@3.43.0 build /home/runner/work/faststore/faststore/packages/core
|
|
45
45
|
> next build
|
|
46
46
|
|
|
47
47
|
⚠ No build cache found. Please configure build caching for faster rebuilds. Read more: https://nextjs.org/docs/messages/no-cache
|
|
@@ -67,31 +67,31 @@ Warning: Dynamic Content not found for the page: home. Refer to the Dynamic Cont
|
|
|
67
67
|
Collecting build traces ...
|
|
68
68
|
|
|
69
69
|
Route (pages) Size First Load JS
|
|
70
|
-
┌ ● / 3.86 kB
|
|
70
|
+
┌ ● / 3.86 kB 128 kB
|
|
71
71
|
├ └ css/b1806cbafd0c1f81.css 3.06 kB
|
|
72
|
-
├ /_app 0 B
|
|
73
|
-
├ ● /[...slug] 2.
|
|
74
|
-
├ ● /[slug]/p 35.
|
|
72
|
+
├ /_app 0 B 98.3 kB
|
|
73
|
+
├ ● /[...slug] 2.44 kB 136 kB
|
|
74
|
+
├ ● /[slug]/p 35.4 kB 159 kB
|
|
75
75
|
├ ├ css/a3ca6a9b63f657be.css 5.75 kB
|
|
76
76
|
├ ├ css/62a5153ac7061286.css 6.11 kB
|
|
77
77
|
├ └ css/b5bf49598c8f8b66.css 16.1 kB
|
|
78
|
-
├ ○ /404 1.48 kB
|
|
79
|
-
├ ● /500 1.48 kB
|
|
80
|
-
├ λ /account 240 B
|
|
81
|
-
├ λ /account/profile 1.
|
|
78
|
+
├ ○ /404 1.48 kB 125 kB
|
|
79
|
+
├ ● /500 1.48 kB 125 kB
|
|
80
|
+
├ λ /account 240 B 98.5 kB
|
|
81
|
+
├ λ /account/profile 1.33 kB 125 kB
|
|
82
82
|
├ └ css/249b9deaabc0d32d.css 2.51 kB
|
|
83
|
-
├ λ /api/graphql 0 B
|
|
84
|
-
├ λ /api/health/live 0 B
|
|
85
|
-
├ λ /api/health/ready 0 B
|
|
86
|
-
├ λ /api/preview 0 B
|
|
87
|
-
├ ● /checkout
|
|
88
|
-
├ ● /login 1.59 kB
|
|
89
|
-
└ ● /s 3.17 kB
|
|
90
|
-
+ First Load JS shared by all
|
|
83
|
+
├ λ /api/graphql 0 B 98.3 kB
|
|
84
|
+
├ λ /api/health/live 0 B 98.3 kB
|
|
85
|
+
├ λ /api/health/ready 0 B 98.3 kB
|
|
86
|
+
├ λ /api/preview 0 B 98.3 kB
|
|
87
|
+
├ ● /checkout 695 B 124 kB
|
|
88
|
+
├ ● /login 1.59 kB 125 kB
|
|
89
|
+
└ ● /s 3.17 kB 137 kB
|
|
90
|
+
+ First Load JS shared by all 102 kB
|
|
91
91
|
├ chunks/framework-807b0f81cbc129f0.js 45.4 kB
|
|
92
92
|
├ chunks/main-5569625b3fdd6741.js 33.1 kB
|
|
93
|
-
├ chunks/pages/_app-
|
|
94
|
-
├ chunks/webpack-
|
|
93
|
+
├ chunks/pages/_app-929466ed763a6d46.js 16.2 kB
|
|
94
|
+
├ chunks/webpack-c2eed1e0b727b3ee.js 3.67 kB
|
|
95
95
|
└ css/0a57ee6c7a57788c.css 3.49 kB
|
|
96
96
|
|
|
97
97
|
λ (Server) server-side renders at runtime (uses getInitialProps or getServerSideProps)
|
package/.turbo/turbo-test.log
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
|
|
2
|
-
> @faststore/core@3.
|
|
2
|
+
> @faststore/core@3.43.0 test /home/runner/work/faststore/faststore/packages/core
|
|
3
3
|
> jest
|
|
4
4
|
|
|
5
|
-
PASS test/
|
|
6
|
-
PASS test/
|
|
5
|
+
PASS test/server/cms/global.test.ts (23.396 s)
|
|
6
|
+
PASS test/utils/multipleTemplates.test.ts (24.179 s)
|
|
7
7
|
PASS test/server/cms/index.test.ts
|
|
8
|
-
PASS test/server/index.test.ts (
|
|
8
|
+
PASS test/server/index.test.ts (28.681 s)
|
|
9
9
|
|
|
10
10
|
Test Suites: 4 passed, 4 total
|
|
11
11
|
Tests: 22 passed, 22 total
|
|
12
12
|
Snapshots: 0 total
|
|
13
|
-
Time: 30.
|
|
13
|
+
Time: 30.024 s
|
|
14
14
|
Ran all test suites.
|
package/@generated/gql.ts
CHANGED
|
@@ -44,6 +44,8 @@ const documents = {
|
|
|
44
44
|
types.ValidateCartMutationDocument,
|
|
45
45
|
'\n mutation SubscribeToNewsletter($data: IPersonNewsletter!) {\n subscribeToNewsletter(data: $data) {\n id\n }\n }\n':
|
|
46
46
|
types.SubscribeToNewsletterDocument,
|
|
47
|
+
'\n query ClientProductCountQuery($term: String) {\n productCount(term: $term) {\n total\n }\n }\n':
|
|
48
|
+
types.ClientProductCountQueryDocument,
|
|
47
49
|
'\n query ClientAllVariantProductsQuery($locator: [IStoreSelectedFacet!]!) {\n product(locator: $locator) {\n ...ProductSKUMatrixSidebarFragment_product\n }\n }\n':
|
|
48
50
|
types.ClientAllVariantProductsQueryDocument,
|
|
49
51
|
'\n query ClientManyProductsQuery(\n $first: Int!\n $after: String\n $sort: StoreSort!\n $term: String!\n $selectedFacets: [IStoreSelectedFacet!]!\n $sponsoredCount: Int\n ) {\n ...ClientManyProducts\n search(\n first: $first\n after: $after\n sort: $sort\n term: $term\n selectedFacets: $selectedFacets\n sponsoredCount: $sponsoredCount\n ) {\n products {\n pageInfo {\n totalCount\n }\n edges {\n node {\n ...ProductSummary_product\n }\n }\n }\n }\n }\n':
|
|
@@ -52,11 +54,13 @@ const documents = {
|
|
|
52
54
|
types.ClientProductGalleryQueryDocument,
|
|
53
55
|
'\n query ClientProductQuery($locator: [IStoreSelectedFacet!]!) {\n ...ClientProduct\n product(locator: $locator) {\n ...ProductDetailsFragment_product\n }\n }\n':
|
|
54
56
|
types.ClientProductQueryDocument,
|
|
57
|
+
'\n query ClientProfileQuery($id: String!) {\n profile(id: $id) {\n addresses {\n country\n postalCode\n geoCoordinate\n city\n }\n }\n }\n':
|
|
58
|
+
types.ClientProfileQueryDocument,
|
|
55
59
|
'\n query ClientSearchSuggestionsQuery(\n $term: String!\n $selectedFacets: [IStoreSelectedFacet!]\n ) {\n ...ClientSearchSuggestions\n search(first: 5, term: $term, selectedFacets: $selectedFacets) {\n suggestions {\n terms {\n value\n }\n products {\n ...ProductSummary_product\n }\n }\n products {\n pageInfo {\n totalCount\n }\n }\n metadata {\n ...SearchEvent_metadata\n }\n }\n }\n':
|
|
56
60
|
types.ClientSearchSuggestionsQueryDocument,
|
|
57
61
|
'\n query ClientTopSearchSuggestionsQuery(\n $term: String!\n $selectedFacets: [IStoreSelectedFacet!]\n ) {\n ...ClientTopSearchSuggestions\n search(first: 5, term: $term, selectedFacets: $selectedFacets) {\n suggestions {\n terms {\n value\n }\n }\n }\n }\n':
|
|
58
62
|
types.ClientTopSearchSuggestionsQueryDocument,
|
|
59
|
-
'\n mutation ValidateSession($session: IStoreSession!, $search: String!) {\n validateSession(session: $session, search: $search) {\n locale\n channel\n country\n addressType\n postalCode\n deliveryMode {\n deliveryChannel\n deliveryMethod\n deliveryWindow {\n startDate\n endDate\n }\n }\n geoCoordinates {\n latitude\n longitude\n }\n currency {\n code\n symbol\n }\n person {\n id\n email\n givenName\n familyName\n }\n b2b {\n customerId\n }\n marketingData {\n utmCampaign\n utmMedium\n utmSource\n utmiCampaign\n utmiPage\n utmiPart\n }\n }\n }\n':
|
|
63
|
+
'\n mutation ValidateSession($session: IStoreSession!, $search: String!) {\n validateSession(session: $session, search: $search) {\n locale\n channel\n country\n addressType\n postalCode\n city\n deliveryMode {\n deliveryChannel\n deliveryMethod\n deliveryWindow {\n startDate\n endDate\n }\n }\n geoCoordinates {\n latitude\n longitude\n }\n currency {\n code\n symbol\n }\n person {\n id\n email\n givenName\n familyName\n }\n b2b {\n customerId\n }\n marketingData {\n utmCampaign\n utmMedium\n utmSource\n utmiCampaign\n utmiPage\n utmiPart\n }\n }\n }\n':
|
|
60
64
|
types.ValidateSessionDocument,
|
|
61
65
|
'\n query ClientShippingSimulationQuery(\n $postalCode: String!\n $country: String!\n $items: [IShippingItem!]!\n ) {\n ...ClientShippingSimulation\n shipping(items: $items, postalCode: $postalCode, country: $country) {\n logisticsInfo {\n slas {\n carrier\n price\n availableDeliveryWindows {\n startDateUtc\n endDateUtc\n price\n listPrice\n }\n shippingEstimate\n localizedEstimates\n deliveryChannel\n }\n }\n address {\n city\n neighborhood\n state\n }\n }\n }\n':
|
|
62
66
|
types.ClientShippingSimulationQueryDocument,
|
|
@@ -160,6 +164,12 @@ export function gql(
|
|
|
160
164
|
export function gql(
|
|
161
165
|
source: '\n mutation SubscribeToNewsletter($data: IPersonNewsletter!) {\n subscribeToNewsletter(data: $data) {\n id\n }\n }\n'
|
|
162
166
|
): typeof import('./graphql').SubscribeToNewsletterDocument
|
|
167
|
+
/**
|
|
168
|
+
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
169
|
+
*/
|
|
170
|
+
export function gql(
|
|
171
|
+
source: '\n query ClientProductCountQuery($term: String) {\n productCount(term: $term) {\n total\n }\n }\n'
|
|
172
|
+
): typeof import('./graphql').ClientProductCountQueryDocument
|
|
163
173
|
/**
|
|
164
174
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
165
175
|
*/
|
|
@@ -184,6 +194,12 @@ export function gql(
|
|
|
184
194
|
export function gql(
|
|
185
195
|
source: '\n query ClientProductQuery($locator: [IStoreSelectedFacet!]!) {\n ...ClientProduct\n product(locator: $locator) {\n ...ProductDetailsFragment_product\n }\n }\n'
|
|
186
196
|
): typeof import('./graphql').ClientProductQueryDocument
|
|
197
|
+
/**
|
|
198
|
+
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
199
|
+
*/
|
|
200
|
+
export function gql(
|
|
201
|
+
source: '\n query ClientProfileQuery($id: String!) {\n profile(id: $id) {\n addresses {\n country\n postalCode\n geoCoordinate\n city\n }\n }\n }\n'
|
|
202
|
+
): typeof import('./graphql').ClientProfileQueryDocument
|
|
187
203
|
/**
|
|
188
204
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
189
205
|
*/
|
|
@@ -200,7 +216,7 @@ export function gql(
|
|
|
200
216
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
201
217
|
*/
|
|
202
218
|
export function gql(
|
|
203
|
-
source: '\n mutation ValidateSession($session: IStoreSession!, $search: String!) {\n validateSession(session: $session, search: $search) {\n locale\n channel\n country\n addressType\n postalCode\n deliveryMode {\n deliveryChannel\n deliveryMethod\n deliveryWindow {\n startDate\n endDate\n }\n }\n geoCoordinates {\n latitude\n longitude\n }\n currency {\n code\n symbol\n }\n person {\n id\n email\n givenName\n familyName\n }\n b2b {\n customerId\n }\n marketingData {\n utmCampaign\n utmMedium\n utmSource\n utmiCampaign\n utmiPage\n utmiPart\n }\n }\n }\n'
|
|
219
|
+
source: '\n mutation ValidateSession($session: IStoreSession!, $search: String!) {\n validateSession(session: $session, search: $search) {\n locale\n channel\n country\n addressType\n postalCode\n city\n deliveryMode {\n deliveryChannel\n deliveryMethod\n deliveryWindow {\n startDate\n endDate\n }\n }\n geoCoordinates {\n latitude\n longitude\n }\n currency {\n code\n symbol\n }\n person {\n id\n email\n givenName\n familyName\n }\n b2b {\n customerId\n }\n marketingData {\n utmCampaign\n utmMedium\n utmSource\n utmiCampaign\n utmiPage\n utmiPart\n }\n }\n }\n'
|
|
204
220
|
): typeof import('./graphql').ValidateSessionDocument
|
|
205
221
|
/**
|
|
206
222
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
package/@generated/graphql.ts
CHANGED
|
@@ -320,6 +320,8 @@ export type IStoreSession = {
|
|
|
320
320
|
b2b: InputMaybe<IStoreB2B>
|
|
321
321
|
/** Session input channel. */
|
|
322
322
|
channel: InputMaybe<Scalars['String']['input']>
|
|
323
|
+
/** Session input city. */
|
|
324
|
+
city: InputMaybe<Scalars['String']['input']>
|
|
323
325
|
/** Session input country. */
|
|
324
326
|
country: Scalars['String']['input']
|
|
325
327
|
/** Session input currency. */
|
|
@@ -469,6 +471,11 @@ export type PickupStoreInfo = {
|
|
|
469
471
|
isPickupStore: Maybe<Scalars['Boolean']['output']>
|
|
470
472
|
}
|
|
471
473
|
|
|
474
|
+
export type ProductCountResult = {
|
|
475
|
+
/** Total product count. */
|
|
476
|
+
total: Scalars['Int']['output']
|
|
477
|
+
}
|
|
478
|
+
|
|
472
479
|
export type Profile = {
|
|
473
480
|
/** Collection of user's address */
|
|
474
481
|
addresses: Maybe<Array<Maybe<ProfileAddress>>>
|
|
@@ -512,6 +519,8 @@ export type Query = {
|
|
|
512
519
|
collection: StoreCollection
|
|
513
520
|
/** Returns the details of a product based on the specified locator. */
|
|
514
521
|
product: StoreProduct
|
|
522
|
+
/** Returns the total product count information based on a specific location accessible through the VTEX segment cookie. */
|
|
523
|
+
productCount: Maybe<ProductCountResult>
|
|
515
524
|
/** Returns information about the profile. */
|
|
516
525
|
profile: Maybe<Profile>
|
|
517
526
|
/** Returns if there's a redirect for a search. */
|
|
@@ -542,6 +551,10 @@ export type QueryProductArgs = {
|
|
|
542
551
|
locator: Array<IStoreSelectedFacet>
|
|
543
552
|
}
|
|
544
553
|
|
|
554
|
+
export type QueryProductCountArgs = {
|
|
555
|
+
term: InputMaybe<Scalars['String']['input']>
|
|
556
|
+
}
|
|
557
|
+
|
|
545
558
|
export type QueryProfileArgs = {
|
|
546
559
|
id: Scalars['String']['input']
|
|
547
560
|
}
|
|
@@ -1138,6 +1151,8 @@ export type StoreSession = {
|
|
|
1138
1151
|
b2b: Maybe<StoreB2B>
|
|
1139
1152
|
/** Session channel. */
|
|
1140
1153
|
channel: Maybe<Scalars['String']['output']>
|
|
1154
|
+
/** Session city. */
|
|
1155
|
+
city: Maybe<Scalars['String']['output']>
|
|
1141
1156
|
/** Session country. */
|
|
1142
1157
|
country: Scalars['String']['output']
|
|
1143
1158
|
/** Session currency. */
|
|
@@ -1547,6 +1562,14 @@ export type SubscribeToNewsletterMutation = {
|
|
|
1547
1562
|
subscribeToNewsletter: { id: string } | null
|
|
1548
1563
|
}
|
|
1549
1564
|
|
|
1565
|
+
export type ClientProductCountQueryQueryVariables = Exact<{
|
|
1566
|
+
term: InputMaybe<Scalars['String']['input']>
|
|
1567
|
+
}>
|
|
1568
|
+
|
|
1569
|
+
export type ClientProductCountQueryQuery = {
|
|
1570
|
+
productCount: { total: number } | null
|
|
1571
|
+
}
|
|
1572
|
+
|
|
1550
1573
|
export type ClientAllVariantProductsQueryQueryVariables = Exact<{
|
|
1551
1574
|
locator: Array<IStoreSelectedFacet> | IStoreSelectedFacet
|
|
1552
1575
|
}>
|
|
@@ -1745,6 +1768,21 @@ export type ClientProductQueryQuery = {
|
|
|
1745
1768
|
}
|
|
1746
1769
|
}
|
|
1747
1770
|
|
|
1771
|
+
export type ClientProfileQueryQueryVariables = Exact<{
|
|
1772
|
+
id: Scalars['String']['input']
|
|
1773
|
+
}>
|
|
1774
|
+
|
|
1775
|
+
export type ClientProfileQueryQuery = {
|
|
1776
|
+
profile: {
|
|
1777
|
+
addresses: Array<{
|
|
1778
|
+
country: string | null
|
|
1779
|
+
postalCode: string | null
|
|
1780
|
+
geoCoordinate: Array<number | null> | null
|
|
1781
|
+
city: string | null
|
|
1782
|
+
} | null> | null
|
|
1783
|
+
} | null
|
|
1784
|
+
}
|
|
1785
|
+
|
|
1748
1786
|
export type ClientSearchSuggestionsQueryQueryVariables = Exact<{
|
|
1749
1787
|
term: Scalars['String']['input']
|
|
1750
1788
|
selectedFacets: InputMaybe<Array<IStoreSelectedFacet> | IStoreSelectedFacet>
|
|
@@ -1825,6 +1863,7 @@ export type ValidateSessionMutation = {
|
|
|
1825
1863
|
country: string
|
|
1826
1864
|
addressType: string | null
|
|
1827
1865
|
postalCode: string | null
|
|
1866
|
+
city: string | null
|
|
1828
1867
|
deliveryMode: {
|
|
1829
1868
|
deliveryChannel: string
|
|
1830
1869
|
deliveryMethod: string
|
|
@@ -2427,6 +2466,15 @@ export const SubscribeToNewsletterDocument = {
|
|
|
2427
2466
|
SubscribeToNewsletterMutation,
|
|
2428
2467
|
SubscribeToNewsletterMutationVariables
|
|
2429
2468
|
>
|
|
2469
|
+
export const ClientProductCountQueryDocument = {
|
|
2470
|
+
__meta__: {
|
|
2471
|
+
operationName: 'ClientProductCountQuery',
|
|
2472
|
+
operationHash: 'dc912e7272e3d9f5ced206837df87f544d39d0a5',
|
|
2473
|
+
},
|
|
2474
|
+
} as unknown as TypedDocumentString<
|
|
2475
|
+
ClientProductCountQueryQuery,
|
|
2476
|
+
ClientProductCountQueryQueryVariables
|
|
2477
|
+
>
|
|
2430
2478
|
export const ClientAllVariantProductsQueryDocument = {
|
|
2431
2479
|
__meta__: {
|
|
2432
2480
|
operationName: 'ClientAllVariantProductsQuery',
|
|
@@ -2463,6 +2511,15 @@ export const ClientProductQueryDocument = {
|
|
|
2463
2511
|
ClientProductQueryQuery,
|
|
2464
2512
|
ClientProductQueryQueryVariables
|
|
2465
2513
|
>
|
|
2514
|
+
export const ClientProfileQueryDocument = {
|
|
2515
|
+
__meta__: {
|
|
2516
|
+
operationName: 'ClientProfileQuery',
|
|
2517
|
+
operationHash: '34ea14c0d4a57ddf9bc11e4be0cd2b5a6506d3d4',
|
|
2518
|
+
},
|
|
2519
|
+
} as unknown as TypedDocumentString<
|
|
2520
|
+
ClientProfileQueryQuery,
|
|
2521
|
+
ClientProfileQueryQueryVariables
|
|
2522
|
+
>
|
|
2466
2523
|
export const ClientSearchSuggestionsQueryDocument = {
|
|
2467
2524
|
__meta__: {
|
|
2468
2525
|
operationName: 'ClientSearchSuggestionsQuery',
|
|
@@ -2484,7 +2541,7 @@ export const ClientTopSearchSuggestionsQueryDocument = {
|
|
|
2484
2541
|
export const ValidateSessionDocument = {
|
|
2485
2542
|
__meta__: {
|
|
2486
2543
|
operationName: 'ValidateSession',
|
|
2487
|
-
operationHash: '
|
|
2544
|
+
operationHash: '6189ed611a20d9d5fe8ebebf61c87c9c29a5cef4',
|
|
2488
2545
|
},
|
|
2489
2546
|
} as unknown as TypedDocumentString<
|
|
2490
2547
|
ValidateSessionMutation,
|
|
@@ -3,13 +3,15 @@
|
|
|
3
3
|
"46103bee661405bde706d72126fdbf9b0a0c9e6e": "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 lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes 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 lowPriceWithTaxes offers { availability itemCondition price priceCurrency priceValidUntil seller { identifier } } priceCurrency } id: productID releaseDate seo { canonical description title } sku ...ProductDetailsFragment_product } ...ServerProduct }",
|
|
4
4
|
"c2b3f8bff73ebf6ac79d758c66cabbc21ba9fcc0": "fragment CartItem on StoreOffer { itemOffered { ...CartProductItem } listPrice listPriceWithTaxes price priceWithTaxes 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 shouldSplitItem } } }",
|
|
5
5
|
"feb7005103a859e2bc8cf2360d568806fd88deba": "mutation SubscribeToNewsletter($data: IPersonNewsletter!) { subscribeToNewsletter(data: $data) { id } }",
|
|
6
|
+
"dc912e7272e3d9f5ced206837df87f544d39d0a5": "query ClientProductCountQuery($term: String) { productCount(term: $term) { total } }",
|
|
6
7
|
"4039e05f01a2fe449e20e8b82170d0ba94b1fbe9": "fragment ProductSKUMatrixSidebarFragment_product on StoreProduct { isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { additionalProperty { name propertyID value valueReference } image { alternateName url } name offers { highPrice lowPrice lowPriceWithTaxes offerCount offers { availability itemCondition listPrice listPriceWithTaxes price priceCurrency priceValidUntil priceWithTaxes quantity sellingPrice } priceCurrency } sku } availableVariations slugsMap } } id: productID } query ClientAllVariantProductsQuery($locator: [IStoreSelectedFacet!]!) { product(locator: $locator) { ...ProductSKUMatrixSidebarFragment_product } }",
|
|
7
8
|
"1adc93c70f16173540c50f725ee09a2d67cb85ab": "fragment ClientManyProducts on Query { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { products { pageInfo { totalCount } } } } fragment ProductSummary_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { brandName: name } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier } query ClientManyProductsQuery($after: String, $first: Int!, $selectedFacets: [IStoreSelectedFacet!]!, $sort: StoreSort!, $sponsoredCount: Int, $term: String!) { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { products { edges { node { ...ProductSummary_product } } pageInfo { totalCount } } } ...ClientManyProducts }",
|
|
8
9
|
"bfc40da32b60f9404a4adb96b0856e3fbb04b076": "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!) { redirect(term: $term, selectedFacets: $selectedFacets) { url } search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets ) { facets { ...Filter_facets } metadata { ...SearchEvent_metadata } products { pageInfo { totalCount } } } ...ClientProductGallery }",
|
|
9
10
|
"7d121ef8d4dc99174e64e4429a9b977b8bbebed8": "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 lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes seller { identifier } } } id: productID sku unitMultiplier ...CartProductItem } query ClientProductQuery($locator: [IStoreSelectedFacet!]!) { product(locator: $locator) { ...ProductDetailsFragment_product } ...ClientProduct }",
|
|
11
|
+
"34ea14c0d4a57ddf9bc11e4be0cd2b5a6506d3d4": "query ClientProfileQuery($id: String!) { profile(id: $id) { addresses { city country geoCoordinate postalCode } } }",
|
|
10
12
|
"b548281d477a173be7b6960434604d69769a97e7": "fragment ClientSearchSuggestions on Query { search(first: 5, term: $term, selectedFacets: $selectedFacets) { suggestions { terms { value } } } } fragment ProductSummary_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { brandName: name } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier } 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 }",
|
|
11
13
|
"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 }",
|
|
12
|
-
"
|
|
14
|
+
"6189ed611a20d9d5fe8ebebf61c87c9c29a5cef4": "mutation ValidateSession($search: String!, $session: IStoreSession!) { validateSession(session: $session, search: $search) { addressType b2b { customerId } channel city country currency { code symbol } deliveryMode { deliveryChannel deliveryMethod deliveryWindow { endDate startDate } } geoCoordinates { latitude longitude } locale marketingData { utmCampaign utmMedium utmSource utmiCampaign utmiPage utmiPart } person { email familyName givenName id } postalCode } }",
|
|
13
15
|
"c35bad22f67f3eb34fea52bb49efa6b1da6b728d": "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 deliveryChannel localizedEstimates price shippingEstimate } } } ...ClientShippingSimulation }",
|
|
14
16
|
"5c2181dde311ca80b72e0cc76ac0855d8aa8b51e": "fragment ClientManyProducts on Query { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { products { pageInfo { totalCount } } } } fragment ProductSummary_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { brandName: name } brand { name } gtin image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier } fragment SearchEvent_metadata on SearchMetadata { fuzzy isTermMisspelled logicalOperator } query ServerManyProductsQuery($after: String, $first: Int!, $selectedFacets: [IStoreSelectedFacet!]!, $sort: StoreSort!, $sponsoredCount: Int, $term: String!) { search( first: $first after: $after sort: $sort term: $term selectedFacets: $selectedFacets sponsoredCount: $sponsoredCount ) { metadata { ...SearchEvent_metadata } products { edges { node { ...ProductSummary_product } } pageInfo { totalCount } } } ...ClientManyProducts }"
|
|
15
17
|
}
|
|
@@ -602,6 +602,11 @@ input IGeoCoordinates {
|
|
|
602
602
|
longitude: Float!
|
|
603
603
|
}
|
|
604
604
|
|
|
605
|
+
type ProductCountResult {
|
|
606
|
+
"""Total product count."""
|
|
607
|
+
total: Int!
|
|
608
|
+
}
|
|
609
|
+
|
|
605
610
|
type Query {
|
|
606
611
|
"""Returns the details of a product based on the specified locator."""
|
|
607
612
|
product(
|
|
@@ -674,6 +679,11 @@ type Query {
|
|
|
674
679
|
"""Identifier for user."""
|
|
675
680
|
id: String!
|
|
676
681
|
): Profile @cacheControl(scope: "public", sMaxAge: 120, staleWhileRevalidate: 3600)
|
|
682
|
+
"""Returns the total product count information based on a specific location accessible through the VTEX segment cookie."""
|
|
683
|
+
productCount(
|
|
684
|
+
"""Search term."""
|
|
685
|
+
term: String
|
|
686
|
+
): ProductCountResult @cacheControl(scope: "public", sMaxAge: 120, staleWhileRevalidate: 3600)
|
|
677
687
|
}
|
|
678
688
|
|
|
679
689
|
"""
|
|
@@ -829,6 +839,8 @@ type StoreSession {
|
|
|
829
839
|
deliveryMode: StoreDeliveryMode
|
|
830
840
|
"""Session address type."""
|
|
831
841
|
addressType: String
|
|
842
|
+
"""Session city."""
|
|
843
|
+
city: String
|
|
832
844
|
"""Session postal code."""
|
|
833
845
|
postalCode: String
|
|
834
846
|
"""Session input geoCoordinates."""
|
|
@@ -863,6 +875,8 @@ input IStoreSession {
|
|
|
863
875
|
deliveryMode: IStoreDeliveryMode
|
|
864
876
|
"""Session input address type."""
|
|
865
877
|
addressType: String
|
|
878
|
+
"""Session input city."""
|
|
879
|
+
city: String
|
|
866
880
|
"""Session input postal code."""
|
|
867
881
|
postalCode: String
|
|
868
882
|
"""Session input geoCoordinates."""
|
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [3.44.0](https://github.com/vtex/faststore/compare/v3.43.0...v3.44.0) (2025-05-13)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- Delivery Promise - navigation based on shopper location ([#2716](https://github.com/vtex/faststore/issues/2716)) ([d683080](https://github.com/vtex/faststore/commit/d683080b9806bf7587be5ef84d403e30d3969e51)), closes [#2708](https://github.com/vtex/faststore/issues/2708) [#2728](https://github.com/vtex/faststore/issues/2728) [#2739](https://github.com/vtex/faststore/issues/2739) [#2745](https://github.com/vtex/faststore/issues/2745) [#2749](https://github.com/vtex/faststore/issues/2749) [#2750](https://github.com/vtex/faststore/issues/2750) [#2768](https://github.com/vtex/faststore/issues/2768) [#2772](https://github.com/vtex/faststore/issues/2772) [#2775](https://github.com/vtex/faststore/issues/2775) [#2809](https://github.com/vtex/faststore/issues/2809) [#2817](https://github.com/vtex/faststore/issues/2817) [#2824](https://github.com/vtex/faststore/issues/2824) [#2835](https://github.com/vtex/faststore/issues/2835)
|
|
11
|
+
|
|
12
|
+
# [3.43.0](https://github.com/vtex/faststore/compare/v3.42.0...v3.43.0) (2025-05-12)
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
- [CP-432] [CP-433] Adding CP integration as a data source alternative to hCMS ([#2807](https://github.com/vtex/faststore/issues/2807)) ([122e2d9](https://github.com/vtex/faststore/commit/122e2d94cb94a6edc9726a3be8d83e62fa44a51e)), closes [/github.com/vtex/faststore/pull/2807/files#diff-63a7f8cba93bce2eb5ed6be3a1bcf1fbde76d643b165ae2a1a44cc8765dfb73fR141](https://github.com//github.com/vtex/faststore/pull/2807/files/issues/diff-63a7f8cba93bce2eb5ed6be3a1bcf1fbde76d643b165ae2a1a44cc8765dfb73fR141) [/github.com/vtex/faststore/pull/2807/files#diff-8dd0ec358e808043c69af593825ff65e9afe1dd776dad04f15480a45b57a2608R91](https://github.com//github.com/vtex/faststore/pull/2807/files/issues/diff-8dd0ec358e808043c69af593825ff65e9afe1dd776dad04f15480a45b57a2608R91) [/github.com/vtex/faststore/pull/2807/files#diff-63a7f8cba93bce2eb5ed6be3a1bcf1fbde76d643b165ae2a1a44cc8765dfb73fR24](https://github.com//github.com/vtex/faststore/pull/2807/files/issues/diff-63a7f8cba93bce2eb5ed6be3a1bcf1fbde76d643b165ae2a1a44cc8765dfb73fR24)
|
|
17
|
+
|
|
6
18
|
# [3.42.0](https://github.com/vtex/faststore/compare/v3.41.9...v3.42.0) (2025-05-08)
|
|
7
19
|
|
|
8
20
|
### Features
|
|
@@ -2206,7 +2206,7 @@
|
|
|
2206
2206
|
"description": {
|
|
2207
2207
|
"title": "Description",
|
|
2208
2208
|
"type": "string",
|
|
2209
|
-
"default": "
|
|
2209
|
+
"default": "Offers and availability vary by location"
|
|
2210
2210
|
},
|
|
2211
2211
|
"closeButtonAriaLabel": {
|
|
2212
2212
|
"title": "Close modal aria-label",
|
|
@@ -2226,6 +2226,17 @@
|
|
|
2226
2226
|
"title": "Input field error message",
|
|
2227
2227
|
"type": "string",
|
|
2228
2228
|
"default": "You entered an invalid Postal Code"
|
|
2229
|
+
},
|
|
2230
|
+
"noProductsAvailableErrorMessage": {
|
|
2231
|
+
"title": "Input field error message for the scenario of no products available for a given location",
|
|
2232
|
+
"type": "string",
|
|
2233
|
+
"default": "There are no products available for %s.",
|
|
2234
|
+
"description": "The '%s' will be replaced by the postal code value."
|
|
2235
|
+
},
|
|
2236
|
+
"buttonActionText": {
|
|
2237
|
+
"title": "Input field action button label",
|
|
2238
|
+
"type": "string",
|
|
2239
|
+
"default": "Apply"
|
|
2229
2240
|
}
|
|
2230
2241
|
}
|
|
2231
2242
|
},
|
|
@@ -2265,6 +2276,104 @@
|
|
|
2265
2276
|
}
|
|
2266
2277
|
}
|
|
2267
2278
|
},
|
|
2279
|
+
{
|
|
2280
|
+
"name": "RegionPopover",
|
|
2281
|
+
"requiredScopes": [],
|
|
2282
|
+
"schema": {
|
|
2283
|
+
"title": "Region Popover",
|
|
2284
|
+
"type": "object",
|
|
2285
|
+
"description": "Region Popover configuration",
|
|
2286
|
+
"properties": {
|
|
2287
|
+
"title": {
|
|
2288
|
+
"title": "Title",
|
|
2289
|
+
"type": "string",
|
|
2290
|
+
"default": "Set your location"
|
|
2291
|
+
},
|
|
2292
|
+
"closeButtonAriaLabel": {
|
|
2293
|
+
"title": "Close popover aria-label",
|
|
2294
|
+
"type": "string",
|
|
2295
|
+
"default": "Close Region Popover"
|
|
2296
|
+
},
|
|
2297
|
+
"inputField": {
|
|
2298
|
+
"title": "Input Field",
|
|
2299
|
+
"type": "object",
|
|
2300
|
+
"properties": {
|
|
2301
|
+
"label": {
|
|
2302
|
+
"title": "Input field label",
|
|
2303
|
+
"type": "string",
|
|
2304
|
+
"default": "Postal Code"
|
|
2305
|
+
},
|
|
2306
|
+
"errorMessage": {
|
|
2307
|
+
"title": "Input field error message",
|
|
2308
|
+
"type": "string",
|
|
2309
|
+
"default": "You entered an invalid Postal Code"
|
|
2310
|
+
},
|
|
2311
|
+
"noProductsAvailableErrorMessage": {
|
|
2312
|
+
"title": "Input field error message for the scenario of no products available for a given location",
|
|
2313
|
+
"type": "string",
|
|
2314
|
+
"default": "There are no products available for %s.",
|
|
2315
|
+
"description": "The '%s' will be replaced by the postal code value."
|
|
2316
|
+
},
|
|
2317
|
+
"buttonActionText": {
|
|
2318
|
+
"title": "Input field action button label",
|
|
2319
|
+
"type": "string",
|
|
2320
|
+
"default": "Apply"
|
|
2321
|
+
}
|
|
2322
|
+
}
|
|
2323
|
+
},
|
|
2324
|
+
"textBeforeLocation": {
|
|
2325
|
+
"title": "Text before location",
|
|
2326
|
+
"type": "string",
|
|
2327
|
+
"default": "Your current location is",
|
|
2328
|
+
"description": "If location is available, this text will be shown before the location"
|
|
2329
|
+
},
|
|
2330
|
+
"textAfterLocation": {
|
|
2331
|
+
"title": "Text After location",
|
|
2332
|
+
"type": "string",
|
|
2333
|
+
"default": "Use the field below to change it.",
|
|
2334
|
+
"description": "If location is available, this text will be shown after the location"
|
|
2335
|
+
},
|
|
2336
|
+
"description": {
|
|
2337
|
+
"title": "Description",
|
|
2338
|
+
"type": "string",
|
|
2339
|
+
"default": "Offers and availability vary by location"
|
|
2340
|
+
},
|
|
2341
|
+
"idkPostalCodeLink": {
|
|
2342
|
+
"title": "I don't know my postal code link",
|
|
2343
|
+
"type": "object",
|
|
2344
|
+
"properties": {
|
|
2345
|
+
"text": {
|
|
2346
|
+
"type": "string",
|
|
2347
|
+
"title": "Link Text",
|
|
2348
|
+
"default": "I don't know my Postal Code"
|
|
2349
|
+
},
|
|
2350
|
+
"to": {
|
|
2351
|
+
"type": "string",
|
|
2352
|
+
"title": "Action link"
|
|
2353
|
+
},
|
|
2354
|
+
"icon": {
|
|
2355
|
+
"title": "Icon",
|
|
2356
|
+
"type": "object",
|
|
2357
|
+
"properties": {
|
|
2358
|
+
"icon": {
|
|
2359
|
+
"title": "Icon",
|
|
2360
|
+
"type": "string",
|
|
2361
|
+
"enumNames": ["Arrow Square Out"],
|
|
2362
|
+
"enum": ["ArrowSquareOut"],
|
|
2363
|
+
"default": "ArrowSquareOut"
|
|
2364
|
+
},
|
|
2365
|
+
"alt": {
|
|
2366
|
+
"title": "Alternative Label",
|
|
2367
|
+
"type": "string",
|
|
2368
|
+
"default": "Arrow Square Out icon"
|
|
2369
|
+
}
|
|
2370
|
+
}
|
|
2371
|
+
}
|
|
2372
|
+
}
|
|
2373
|
+
}
|
|
2374
|
+
}
|
|
2375
|
+
}
|
|
2376
|
+
},
|
|
2268
2377
|
{
|
|
2269
2378
|
"name": "EmptyState",
|
|
2270
2379
|
"schema": {
|
|
@@ -52,6 +52,7 @@ module.exports = {
|
|
|
52
52
|
country: 'USA',
|
|
53
53
|
deliveryMode: null,
|
|
54
54
|
addressType: null,
|
|
55
|
+
city: null,
|
|
55
56
|
postalCode: null,
|
|
56
57
|
geoCoordinates: null,
|
|
57
58
|
b2b: null,
|
|
@@ -88,6 +89,8 @@ module.exports = {
|
|
|
88
89
|
plp: '/office',
|
|
89
90
|
search: '/s?q=headphone',
|
|
90
91
|
pdp: '/apple-magic-mouse/p',
|
|
92
|
+
500: '/500',
|
|
93
|
+
404: '/404',
|
|
91
94
|
},
|
|
92
95
|
|
|
93
96
|
// Lighthouse CI
|
|
@@ -122,6 +125,15 @@ module.exports = {
|
|
|
122
125
|
data: process.env.CMS_DATA,
|
|
123
126
|
},
|
|
124
127
|
|
|
128
|
+
contentSource: {
|
|
129
|
+
type: 'CMS',
|
|
130
|
+
},
|
|
131
|
+
|
|
132
|
+
deliveryPromise: {
|
|
133
|
+
enabled: false,
|
|
134
|
+
mandatory: false,
|
|
135
|
+
},
|
|
136
|
+
|
|
125
137
|
experimental: {
|
|
126
138
|
cypressVersion: 12,
|
|
127
139
|
enableCypressExtension: false,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@faststore/core",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.44.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": "vtex/faststore",
|
|
6
6
|
"browserslist": "supports es6-module and not dead",
|
|
@@ -44,12 +44,12 @@
|
|
|
44
44
|
"@envelop/graphql-jit": "^8.0.3",
|
|
45
45
|
"@envelop/parser-cache": "^6.0.2",
|
|
46
46
|
"@envelop/validation-cache": "^6.0.2",
|
|
47
|
-
"@faststore/api": "^3.
|
|
48
|
-
"@faststore/components": "^3.
|
|
47
|
+
"@faststore/api": "^3.44.0",
|
|
48
|
+
"@faststore/components": "^3.44.0",
|
|
49
49
|
"@faststore/graphql-utils": "^3.38.3",
|
|
50
50
|
"@faststore/lighthouse": "^3.38.3",
|
|
51
|
-
"@faststore/sdk": "^3.
|
|
52
|
-
"@faststore/ui": "^3.
|
|
51
|
+
"@faststore/sdk": "^3.44.0",
|
|
52
|
+
"@faststore/ui": "^3.44.0",
|
|
53
53
|
"@graphql-codegen/cli": "5.0.2",
|
|
54
54
|
"@graphql-codegen/client-preset": "4.2.6",
|
|
55
55
|
"@graphql-codegen/typescript": "4.0.7",
|
|
@@ -62,6 +62,7 @@
|
|
|
62
62
|
"@parcel/watcher": "^2.4.0",
|
|
63
63
|
"@types/react": "^18.2.42",
|
|
64
64
|
"@vtex/client-cms": "^0.2.12",
|
|
65
|
+
"@vtex/client-cp": "0.2.2",
|
|
65
66
|
"@vtex/prettier-config": "1.0.0",
|
|
66
67
|
"autoprefixer": "^10.4.0",
|
|
67
68
|
"css-loader": "^6.7.1",
|
|
@@ -105,5 +106,5 @@
|
|
|
105
106
|
"ts-jest": "29.1.1",
|
|
106
107
|
"typescript": "5.3.2"
|
|
107
108
|
},
|
|
108
|
-
"gitHead": "
|
|
109
|
+
"gitHead": "14c097d5af92dbe8a6bf8e07e91ce4b343a827a7"
|
|
109
110
|
}
|
package/src/Layout.tsx
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { useMemo, type PropsWithChildren, type ReactElement } from 'react'
|
|
2
2
|
|
|
3
|
+
import { useRegionModal } from './components/region/RegionModal/useRegionModal'
|
|
3
4
|
import { usePageViewEvent } from './sdk/analytics/hooks/usePageViewEvent'
|
|
4
5
|
|
|
5
6
|
function Layout({ children }: PropsWithChildren) {
|
|
6
7
|
const props = useMemo(() => (children as ReactElement)?.props, [])
|
|
7
8
|
usePageViewEvent(props)
|
|
9
|
+
useRegionModal()
|
|
8
10
|
|
|
9
11
|
return <>{children}</>
|
|
10
12
|
}
|