@faststore/core 3.6.0 → 3.8.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 +35 -34
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/config.json +3 -3
- package/.next/cache/eslint/.cache_1gneedd +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 +38 -38
- package/.next/routes-manifest.json +1 -1
- package/.next/server/chunks/1153.js +1 -1
- package/.next/server/chunks/1163.js +2 -2
- package/.next/server/chunks/1377.js +1 -1
- package/.next/server/chunks/2082.js +3 -3
- package/.next/server/chunks/2245.js +1 -1
- package/.next/server/chunks/2295.js +1 -1
- package/.next/server/chunks/2552.js +1 -1
- package/.next/server/chunks/2710.js +1 -1
- package/.next/server/chunks/2880.js +1 -1
- package/.next/server/chunks/2918.js +2 -2
- package/.next/server/chunks/3157.js +1 -1
- package/.next/server/chunks/319.js +1 -1
- package/.next/server/chunks/3202.js +1 -1
- package/.next/server/chunks/371.js +1 -1
- package/.next/server/chunks/3716.js +2 -2
- package/.next/server/chunks/3779.js +1 -1
- package/.next/server/chunks/3922.js +1 -1
- package/.next/server/chunks/4012.js +1 -1
- package/.next/server/chunks/4222.js +1 -1
- package/.next/server/chunks/4358.js +1 -1
- package/.next/server/chunks/4451.js +1 -1
- package/.next/server/chunks/5110.js +1 -1
- package/.next/server/chunks/5156.js +1 -1
- package/.next/server/chunks/5284.js +1 -1
- package/.next/server/chunks/5342.js +1 -1
- package/.next/server/chunks/5380.js +1 -1
- package/.next/server/chunks/5430.js +1 -1
- package/.next/server/chunks/5476.js +1 -1
- package/.next/server/chunks/5484.js +1 -1
- package/.next/server/chunks/5671.js +1 -1
- package/.next/server/chunks/5754.js +2 -2
- package/.next/server/chunks/6198.js +1 -0
- package/.next/server/chunks/6335.js +1 -1
- package/.next/server/chunks/64.js +1 -1
- package/.next/server/chunks/6414.js +1 -1
- package/.next/server/chunks/6859.js +3 -3
- package/.next/server/chunks/7169.js +1 -1
- package/.next/server/chunks/7228.js +1 -1
- package/.next/server/chunks/7468.js +1 -1
- package/.next/server/chunks/7675.js +1 -1
- package/.next/server/chunks/7986.js +1 -1
- package/.next/server/chunks/8096.js +1 -1
- package/.next/server/chunks/8640.js +1 -1
- package/.next/server/chunks/8724.js +1 -1
- package/.next/server/chunks/8737.js +1 -1
- package/.next/server/chunks/8857.js +1 -1
- package/.next/server/chunks/9088.js +1 -1
- package/.next/server/chunks/9160.js +1 -1
- package/.next/server/chunks/9369.js +1 -1
- package/.next/server/chunks/9410.js +1 -1
- package/.next/server/chunks/945.js +1 -1
- package/.next/server/chunks/9570.js +1 -1
- package/.next/server/chunks/9572.js +49 -3
- package/.next/server/chunks/983.js +1 -1
- package/.next/server/chunks/9844.js +1 -1
- package/.next/server/chunks/ButtonSignIn.js +1 -1
- package/.next/server/chunks/Dropdown.js +1 -1
- package/.next/server/chunks/DropdownButton.js +1 -1
- package/.next/server/chunks/DropdownItem.js +1 -1
- package/.next/server/chunks/DropdownMenu.js +1 -1
- package/.next/server/chunks/FilterSkeleton.js +1 -1
- package/.next/server/chunks/ScrollToTopButton.js +1 -1
- package/.next/server/chunks/UIBannerText.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.js +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 +1 -1
- package/.next/server/pages/api/health/live.js.nft.json +1 -1
- package/.next/server/pages/api/health/ready.js +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 +1 -1
- package/.next/server/pages/en-US/500.html +1 -1
- package/.next/server/pages/en-US/account.html +1 -1
- package/.next/server/pages/en-US/checkout.html +1 -1
- package/.next/server/pages/en-US/login.html +1 -1
- package/.next/server/pages/en-US/s.html +1 -1
- package/.next/server/pages/en-US.html +1 -1
- 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/chunks/{1153.d7522522b6c917ed.js → 1153.7f616071da309cf5.js} +1 -1
- package/.next/static/chunks/{1978.6d1246731da0f1b0.js → 1978.afceeb8879bd2646.js} +1 -1
- package/.next/static/chunks/2552.9070ea604ee3c214.js +1 -0
- package/.next/static/chunks/2599-67df8c38c483737b.js +1 -0
- package/.next/static/chunks/3285.419d379c827c993d.js +1 -0
- package/.next/static/chunks/6379-e49fe5643b85d5b5.js +1 -0
- package/.next/static/chunks/7498-791ad2ef2c9fc716.js +1 -0
- package/.next/static/chunks/7563-e2275f3ee79ddd83.js +1 -0
- package/.next/static/chunks/BannerNewsletter.29403e046f34b6c1.js +1 -0
- package/.next/static/chunks/BannerText.24939a8013e30e18.js +1 -0
- package/.next/static/chunks/CartSidebar.71febd97344a7b4c.js +1 -0
- package/.next/static/chunks/ProductShelf.d40d1e693c5a302b.js +1 -0
- package/.next/static/chunks/RegionModal.cec6e7d1faeeae2d.js +1 -0
- package/.next/static/chunks/Toast.0e3d2c547b67cf60.js +1 -0
- package/.next/static/chunks/pages/{404-358f6795222bf991.js → 404-71d5202357fb9e69.js} +1 -1
- package/.next/static/chunks/pages/{500-7adc48c3231ccee1.js → 500-75704d5230292280.js} +1 -1
- package/.next/static/chunks/pages/{[...slug]-0203b74377537f7d.js → [...slug]-21a03c0e2b98783d.js} +1 -1
- package/.next/static/chunks/pages/[slug]/p-fcdc2b26731a7f07.js +1 -0
- package/.next/static/chunks/pages/{account-9db0ef5c4174c7dd.js → account-1d2b1635afa59ace.js} +1 -1
- package/.next/static/chunks/pages/{checkout-abaa6374ae946641.js → checkout-4b85659485b4500c.js} +1 -1
- package/.next/static/chunks/pages/{index-ad532cf8840c5d3f.js → index-2ec096f367505f35.js} +1 -1
- package/.next/static/chunks/pages/{login-8d2eb8db226d6363.js → login-363e38c5172ec5a4.js} +1 -1
- package/.next/static/chunks/pages/{s-ba5734fbe496d9af.js → s-d74217745109de5d.js} +1 -1
- package/.next/static/chunks/webpack-bd90055e2ebc407d.js +1 -0
- package/.next/static/css/d92839440872e246.css +1 -0
- package/.next/static/er25JH1Tpwm62rGwg_DUa/_buildManifest.js +1 -0
- package/.next/trace +98 -98
- package/.turbo/turbo-build.log +7 -7
- package/.turbo/turbo-lint.log +1 -1
- package/.turbo/turbo-test.log +5 -5
- package/@generated/gql.ts +18 -2
- package/@generated/graphql.ts +157 -0
- package/@generated/persisted-documents.json +1 -0
- package/@generated/schema.graphql +2 -0
- package/CHANGELOG.md +12 -0
- package/cms/faststore/sections.json +193 -406
- package/package.json +5 -5
- package/src/components/cms/RenderSections.tsx +55 -8
- package/src/components/cms/ViewportObserver.tsx +3 -1
- package/src/components/sections/ProductDetails/DefaultComponents.ts +9 -1
- package/src/components/sections/ProductDetails/ProductDetails.tsx +46 -3
- package/src/components/sections/ProductDetails/section.module.scss +39 -3
- package/src/components/ui/SKUMatrix/SKUMatrixSidebar.tsx +132 -0
- package/src/sdk/cart/useBuyButton.ts +41 -20
- package/src/sdk/performance/useTTI.ts +35 -0
- package/src/sdk/product/useAllVariantProducts.ts +114 -0
- package/src/typings/overrides.ts +21 -5
- package/.next/server/chunks/463.js +0 -1
- package/.next/static/chunks/1550-b2d0f274d1db008a.js +0 -1
- package/.next/static/chunks/2552.35321485d927aa08.js +0 -1
- package/.next/static/chunks/299.c58d37a55fab85ad.js +0 -1
- package/.next/static/chunks/6379-fc541ff2f12fab06.js +0 -1
- package/.next/static/chunks/9638-24a86482d4a4b434.js +0 -1
- package/.next/static/chunks/BannerNewsletter.96d85bb5fbde1d76.js +0 -1
- package/.next/static/chunks/BannerText.f58f1afdd622dd6c.js +0 -1
- package/.next/static/chunks/CartSidebar.33f111ff908118cf.js +0 -1
- package/.next/static/chunks/ProductShelf.58b9c11d0b9d412c.js +0 -1
- package/.next/static/chunks/RegionModal.8d2c6065d8aaf911.js +0 -1
- package/.next/static/chunks/Toast.9ad46e15a6444bd6.js +0 -1
- package/.next/static/chunks/pages/[slug]/p-b5e429fbf8e96d36.js +0 -1
- package/.next/static/chunks/webpack-712cba50a8ffee1b.js +0 -1
- package/.next/static/css/9718991cd57978e9.css +0 -1
- package/.next/static/hTBj6SJWSWID7EQkobAYG/_buildManifest.js +0 -1
- /package/.next/static/{hTBj6SJWSWID7EQkobAYG → er25JH1Tpwm62rGwg_DUa}/_ssgManifest.js +0 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -50,29 +50,29 @@ Route (pages) Size First Load JS
|
|
|
50
50
|
├ └ css/b1806cbafd0c1f81.css 3.06 kB
|
|
51
51
|
├ /_app 0 B 91.9 kB
|
|
52
52
|
├ ● /[...slug] 2 kB 130 kB
|
|
53
|
-
├ ● /[slug]/p
|
|
53
|
+
├ ● /[slug]/p 34 kB 153 kB
|
|
54
54
|
├ ├ css/bf1560439df2c1a1.css 5.66 kB
|
|
55
55
|
├ ├ css/e3ff5d95518a5c79.css 6.01 kB
|
|
56
|
-
├ └ css/
|
|
56
|
+
├ └ css/d92839440872e246.css 15.6 kB
|
|
57
57
|
├ ○ /404 1.46 kB 120 kB
|
|
58
58
|
├ ● /500 1.46 kB 120 kB
|
|
59
|
-
├ ● /account
|
|
59
|
+
├ ● /account 714 B 120 kB
|
|
60
60
|
├ λ /api/graphql 0 B 91.9 kB
|
|
61
61
|
├ λ /api/health/live 0 B 91.9 kB
|
|
62
62
|
├ λ /api/health/ready 0 B 91.9 kB
|
|
63
63
|
├ λ /api/preview 0 B 91.9 kB
|
|
64
|
-
├ ● /checkout
|
|
65
|
-
├ ● /login 1.57 kB
|
|
64
|
+
├ ● /checkout 695 B 120 kB
|
|
65
|
+
├ ● /login 1.57 kB 121 kB
|
|
66
66
|
└ ● /s 2.74 kB 131 kB
|
|
67
67
|
+ First Load JS shared by all 95 kB
|
|
68
68
|
├ chunks/framework-12a146e94cfcf7c4.js 45.4 kB
|
|
69
69
|
├ chunks/main-209ac4974b020af1.js 33.1 kB
|
|
70
70
|
├ chunks/pages/_app-9d791333b87e7c18.js 9.9 kB
|
|
71
|
-
├ chunks/webpack-
|
|
71
|
+
├ chunks/webpack-bd90055e2ebc407d.js 3.57 kB
|
|
72
72
|
└ css/ee0556daedda6306.css 3.07 kB
|
|
73
73
|
|
|
74
74
|
λ (Server) server-side renders at runtime (uses getInitialProps or getServerSideProps)
|
|
75
75
|
○ (Static) automatically rendered as static HTML (uses no initial props)
|
|
76
76
|
● (SSG) automatically generated as static HTML + JSON (uses getStaticProps)
|
|
77
77
|
|
|
78
|
-
Done in
|
|
78
|
+
Done in 71.72s.
|
package/.turbo/turbo-lint.log
CHANGED
package/.turbo/turbo-test.log
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
yarn run v1.22.22
|
|
2
2
|
$ jest
|
|
3
|
-
PASS test/
|
|
4
|
-
PASS test/
|
|
5
|
-
PASS test/server/index.test.ts (
|
|
3
|
+
PASS test/utils/multipleTemplates.test.ts (37.973 s)
|
|
4
|
+
PASS test/server/cms/index.test.ts (38.451 s)
|
|
5
|
+
PASS test/server/index.test.ts (41.51 s)
|
|
6
6
|
|
|
7
7
|
Test Suites: 3 passed, 3 total
|
|
8
8
|
Tests: 19 passed, 19 total
|
|
9
9
|
Snapshots: 0 total
|
|
10
|
-
Time:
|
|
10
|
+
Time: 42.722 s
|
|
11
11
|
Ran all test suites.
|
|
12
|
-
Done in
|
|
12
|
+
Done in 44.62s.
|
package/@generated/gql.ts
CHANGED
|
@@ -16,8 +16,10 @@ const documents = {
|
|
|
16
16
|
types.ProductSummary_ProductFragmentDoc,
|
|
17
17
|
'\n fragment Filter_facets on StoreFacet {\n ... on StoreFacetRange {\n key\n label\n\n min {\n selected\n absolute\n }\n\n max {\n selected\n absolute\n }\n\n __typename\n }\n ... on StoreFacetBoolean {\n key\n label\n values {\n label\n value\n selected\n quantity\n }\n\n __typename\n }\n }\n':
|
|
18
18
|
types.Filter_FacetsFragmentDoc,
|
|
19
|
-
'\n fragment ProductDetailsFragment_product on StoreProduct {\n id: productID\n sku\n name\n gtin\n description\n unitMultiplier\n isVariantOf {\n name\n productGroupID\n
|
|
19
|
+
'\n fragment ProductDetailsFragment_product on StoreProduct {\n id: productID\n sku\n name\n gtin\n description\n unitMultiplier\n isVariantOf {\n name\n productGroupID\n\t\t\tskuVariants {\n activeVariations\n slugsMap\n availableVariations\n }\n }\n\n image {\n url\n alternateName\n }\n\n brand {\n name\n }\n\n offers {\n lowPrice\n lowPriceWithTaxes\n offers {\n availability\n price\n priceWithTaxes\n listPrice\n listPriceWithTaxes\n seller {\n identifier\n }\n }\n }\n\n additionalProperty {\n propertyID\n name\n value\n valueReference\n }\n\n # Contains necessary info to add this item to cart\n ...CartProductItem\n }\n':
|
|
20
20
|
types.ProductDetailsFragment_ProductFragmentDoc,
|
|
21
|
+
'\n fragment ProductSKUMatrixSidebarFragment_product on StoreProduct {\n id: productID\n isVariantOf {\n name\n productGroupID\n skuVariants {\n activeVariations\n slugsMap\n availableVariations\n allVariantProducts {\n\t\t\t\t\tsku\n name\n image {\n url\n alternateName\n }\n offers {\n highPrice\n lowPrice\n lowPriceWithTaxes\n offerCount\n priceCurrency\n offers {\n listPrice\n listPriceWithTaxes\n sellingPrice\n priceCurrency\n price\n priceWithTaxes\n priceValidUntil\n itemCondition\n availability\n quantity\n }\n }\n additionalProperty {\n propertyID\n value\n name\n valueReference\n }\n }\n }\n }\n }\n':
|
|
22
|
+
types.ProductSkuMatrixSidebarFragment_ProductFragmentDoc,
|
|
21
23
|
'\n fragment ClientManyProducts on Query {\n search(\n first: $first\n after: $after\n sort: $sort\n term: $term\n selectedFacets: $selectedFacets\n sponsoredCount: $sponsoredCount\n\n ) {\n products {\n pageInfo {\n totalCount\n }\n }\n }\n }\n':
|
|
22
24
|
types.ClientManyProductsFragmentDoc,
|
|
23
25
|
'\n fragment ClientProduct on Query {\n product(locator: $locator) {\n id: productID\n }\n }\n':
|
|
@@ -42,6 +44,8 @@ const documents = {
|
|
|
42
44
|
types.ValidateCartMutationDocument,
|
|
43
45
|
'\n mutation SubscribeToNewsletter($data: IPersonNewsletter!) {\n subscribeToNewsletter(data: $data) {\n id\n }\n }\n':
|
|
44
46
|
types.SubscribeToNewsletterDocument,
|
|
47
|
+
'\n query ClientAllVariantProductsQuery($locator: [IStoreSelectedFacet!]!) {\n product(locator: $locator) {\n ...ProductSKUMatrixSidebarFragment_product\n }\n }\n':
|
|
48
|
+
types.ClientAllVariantProductsQueryDocument,
|
|
45
49
|
'\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':
|
|
46
50
|
types.ClientManyProductsQueryDocument,
|
|
47
51
|
'\n query ClientProductGalleryQuery(\n $first: Int!\n $after: String!\n $sort: StoreSort!\n $term: String!\n $selectedFacets: [IStoreSelectedFacet!]!\n ) {\n ...ClientProductGallery\n redirect(term: $term, selectedFacets: $selectedFacets) {\n url\n }\n search(\n first: $first\n after: $after\n sort: $sort\n term: $term\n selectedFacets: $selectedFacets\n ) {\n products {\n pageInfo {\n totalCount\n }\n }\n facets {\n ...Filter_facets\n }\n metadata {\n ...SearchEvent_metadata\n }\n }\n }\n\n fragment SearchEvent_metadata on SearchMetadata {\n isTermMisspelled\n logicalOperator\n fuzzy\n }\n':
|
|
@@ -74,8 +78,14 @@ export function gql(
|
|
|
74
78
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
75
79
|
*/
|
|
76
80
|
export function gql(
|
|
77
|
-
source: '\n fragment ProductDetailsFragment_product on StoreProduct {\n id: productID\n sku\n name\n gtin\n description\n unitMultiplier\n isVariantOf {\n name\n productGroupID\n
|
|
81
|
+
source: '\n fragment ProductDetailsFragment_product on StoreProduct {\n id: productID\n sku\n name\n gtin\n description\n unitMultiplier\n isVariantOf {\n name\n productGroupID\n\t\t\tskuVariants {\n activeVariations\n slugsMap\n availableVariations\n }\n }\n\n image {\n url\n alternateName\n }\n\n brand {\n name\n }\n\n offers {\n lowPrice\n lowPriceWithTaxes\n offers {\n availability\n price\n priceWithTaxes\n listPrice\n listPriceWithTaxes\n seller {\n identifier\n }\n }\n }\n\n additionalProperty {\n propertyID\n name\n value\n valueReference\n }\n\n # Contains necessary info to add this item to cart\n ...CartProductItem\n }\n'
|
|
78
82
|
): typeof import('./graphql').ProductDetailsFragment_ProductFragmentDoc
|
|
83
|
+
/**
|
|
84
|
+
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
85
|
+
*/
|
|
86
|
+
export function gql(
|
|
87
|
+
source: '\n fragment ProductSKUMatrixSidebarFragment_product on StoreProduct {\n id: productID\n isVariantOf {\n name\n productGroupID\n skuVariants {\n activeVariations\n slugsMap\n availableVariations\n allVariantProducts {\n\t\t\t\t\tsku\n name\n image {\n url\n alternateName\n }\n offers {\n highPrice\n lowPrice\n lowPriceWithTaxes\n offerCount\n priceCurrency\n offers {\n listPrice\n listPriceWithTaxes\n sellingPrice\n priceCurrency\n price\n priceWithTaxes\n priceValidUntil\n itemCondition\n availability\n quantity\n }\n }\n additionalProperty {\n propertyID\n value\n name\n valueReference\n }\n }\n }\n }\n }\n'
|
|
88
|
+
): typeof import('./graphql').ProductSkuMatrixSidebarFragment_ProductFragmentDoc
|
|
79
89
|
/**
|
|
80
90
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
81
91
|
*/
|
|
@@ -148,6 +158,12 @@ export function gql(
|
|
|
148
158
|
export function gql(
|
|
149
159
|
source: '\n mutation SubscribeToNewsletter($data: IPersonNewsletter!) {\n subscribeToNewsletter(data: $data) {\n id\n }\n }\n'
|
|
150
160
|
): typeof import('./graphql').SubscribeToNewsletterDocument
|
|
161
|
+
/**
|
|
162
|
+
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
163
|
+
*/
|
|
164
|
+
export function gql(
|
|
165
|
+
source: '\n query ClientAllVariantProductsQuery($locator: [IStoreSelectedFacet!]!) {\n product(locator: $locator) {\n ...ProductSKUMatrixSidebarFragment_product\n }\n }\n'
|
|
166
|
+
): typeof import('./graphql').ClientAllVariantProductsQueryDocument
|
|
151
167
|
/**
|
|
152
168
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
153
169
|
*/
|
package/@generated/graphql.ts
CHANGED
|
@@ -599,6 +599,8 @@ export type ShippingSla = {
|
|
|
599
599
|
export type SkuVariants = {
|
|
600
600
|
/** SKU property values for the current SKU. */
|
|
601
601
|
activeVariations: Maybe<Scalars['ActiveVariations']['output']>
|
|
602
|
+
/** All possible variant combinations of the current product. It also includes the data for each variant. */
|
|
603
|
+
allVariantProducts: Maybe<Array<StoreProduct>>
|
|
602
604
|
/** All available options for each SKU variant property, indexed by their name. */
|
|
603
605
|
allVariantsByName: Maybe<Scalars['VariantsByName']['output']>
|
|
604
606
|
/**
|
|
@@ -1221,6 +1223,49 @@ export type ProductDetailsFragment_ProductFragment = {
|
|
|
1221
1223
|
}>
|
|
1222
1224
|
}
|
|
1223
1225
|
|
|
1226
|
+
export type ProductSkuMatrixSidebarFragment_ProductFragment = {
|
|
1227
|
+
id: string
|
|
1228
|
+
isVariantOf: {
|
|
1229
|
+
name: string
|
|
1230
|
+
productGroupID: string
|
|
1231
|
+
skuVariants: {
|
|
1232
|
+
activeVariations: any | null
|
|
1233
|
+
slugsMap: any | null
|
|
1234
|
+
availableVariations: any | null
|
|
1235
|
+
allVariantProducts: Array<{
|
|
1236
|
+
sku: string
|
|
1237
|
+
name: string
|
|
1238
|
+
image: Array<{ url: string; alternateName: string }>
|
|
1239
|
+
offers: {
|
|
1240
|
+
highPrice: number
|
|
1241
|
+
lowPrice: number
|
|
1242
|
+
lowPriceWithTaxes: number
|
|
1243
|
+
offerCount: number
|
|
1244
|
+
priceCurrency: string
|
|
1245
|
+
offers: Array<{
|
|
1246
|
+
listPrice: number
|
|
1247
|
+
listPriceWithTaxes: number
|
|
1248
|
+
sellingPrice: number
|
|
1249
|
+
priceCurrency: string
|
|
1250
|
+
price: number
|
|
1251
|
+
priceWithTaxes: number
|
|
1252
|
+
priceValidUntil: string
|
|
1253
|
+
itemCondition: string
|
|
1254
|
+
availability: string
|
|
1255
|
+
quantity: number
|
|
1256
|
+
}>
|
|
1257
|
+
}
|
|
1258
|
+
additionalProperty: Array<{
|
|
1259
|
+
propertyID: string
|
|
1260
|
+
value: any
|
|
1261
|
+
name: string
|
|
1262
|
+
valueReference: any
|
|
1263
|
+
}>
|
|
1264
|
+
}> | null
|
|
1265
|
+
} | null
|
|
1266
|
+
}
|
|
1267
|
+
}
|
|
1268
|
+
|
|
1224
1269
|
export type ClientManyProductsFragment = {
|
|
1225
1270
|
search: { products: { pageInfo: { totalCount: number } } }
|
|
1226
1271
|
}
|
|
@@ -1428,6 +1473,55 @@ export type SubscribeToNewsletterMutation = {
|
|
|
1428
1473
|
subscribeToNewsletter: { id: string } | null
|
|
1429
1474
|
}
|
|
1430
1475
|
|
|
1476
|
+
export type ClientAllVariantProductsQueryQueryVariables = Exact<{
|
|
1477
|
+
locator: Array<IStoreSelectedFacet> | IStoreSelectedFacet
|
|
1478
|
+
}>
|
|
1479
|
+
|
|
1480
|
+
export type ClientAllVariantProductsQueryQuery = {
|
|
1481
|
+
product: {
|
|
1482
|
+
id: string
|
|
1483
|
+
isVariantOf: {
|
|
1484
|
+
name: string
|
|
1485
|
+
productGroupID: string
|
|
1486
|
+
skuVariants: {
|
|
1487
|
+
activeVariations: any | null
|
|
1488
|
+
slugsMap: any | null
|
|
1489
|
+
availableVariations: any | null
|
|
1490
|
+
allVariantProducts: Array<{
|
|
1491
|
+
sku: string
|
|
1492
|
+
name: string
|
|
1493
|
+
image: Array<{ url: string; alternateName: string }>
|
|
1494
|
+
offers: {
|
|
1495
|
+
highPrice: number
|
|
1496
|
+
lowPrice: number
|
|
1497
|
+
lowPriceWithTaxes: number
|
|
1498
|
+
offerCount: number
|
|
1499
|
+
priceCurrency: string
|
|
1500
|
+
offers: Array<{
|
|
1501
|
+
listPrice: number
|
|
1502
|
+
listPriceWithTaxes: number
|
|
1503
|
+
sellingPrice: number
|
|
1504
|
+
priceCurrency: string
|
|
1505
|
+
price: number
|
|
1506
|
+
priceWithTaxes: number
|
|
1507
|
+
priceValidUntil: string
|
|
1508
|
+
itemCondition: string
|
|
1509
|
+
availability: string
|
|
1510
|
+
quantity: number
|
|
1511
|
+
}>
|
|
1512
|
+
}
|
|
1513
|
+
additionalProperty: Array<{
|
|
1514
|
+
propertyID: string
|
|
1515
|
+
value: any
|
|
1516
|
+
name: string
|
|
1517
|
+
valueReference: any
|
|
1518
|
+
}>
|
|
1519
|
+
}> | null
|
|
1520
|
+
} | null
|
|
1521
|
+
}
|
|
1522
|
+
}
|
|
1523
|
+
}
|
|
1524
|
+
|
|
1431
1525
|
export type ClientManyProductsQueryQueryVariables = Exact<{
|
|
1432
1526
|
first: Scalars['Int']['input']
|
|
1433
1527
|
after: InputMaybe<Scalars['String']['input']>
|
|
@@ -1891,6 +1985,60 @@ export const ProductDetailsFragment_ProductFragmentDoc =
|
|
|
1891
1985
|
ProductDetailsFragment_ProductFragment,
|
|
1892
1986
|
unknown
|
|
1893
1987
|
>
|
|
1988
|
+
export const ProductSkuMatrixSidebarFragment_ProductFragmentDoc =
|
|
1989
|
+
new TypedDocumentString(
|
|
1990
|
+
`
|
|
1991
|
+
fragment ProductSKUMatrixSidebarFragment_product on StoreProduct {
|
|
1992
|
+
id: productID
|
|
1993
|
+
isVariantOf {
|
|
1994
|
+
name
|
|
1995
|
+
productGroupID
|
|
1996
|
+
skuVariants {
|
|
1997
|
+
activeVariations
|
|
1998
|
+
slugsMap
|
|
1999
|
+
availableVariations
|
|
2000
|
+
allVariantProducts {
|
|
2001
|
+
sku
|
|
2002
|
+
name
|
|
2003
|
+
image {
|
|
2004
|
+
url
|
|
2005
|
+
alternateName
|
|
2006
|
+
}
|
|
2007
|
+
offers {
|
|
2008
|
+
highPrice
|
|
2009
|
+
lowPrice
|
|
2010
|
+
lowPriceWithTaxes
|
|
2011
|
+
offerCount
|
|
2012
|
+
priceCurrency
|
|
2013
|
+
offers {
|
|
2014
|
+
listPrice
|
|
2015
|
+
listPriceWithTaxes
|
|
2016
|
+
sellingPrice
|
|
2017
|
+
priceCurrency
|
|
2018
|
+
price
|
|
2019
|
+
priceWithTaxes
|
|
2020
|
+
priceValidUntil
|
|
2021
|
+
itemCondition
|
|
2022
|
+
availability
|
|
2023
|
+
quantity
|
|
2024
|
+
}
|
|
2025
|
+
}
|
|
2026
|
+
additionalProperty {
|
|
2027
|
+
propertyID
|
|
2028
|
+
value
|
|
2029
|
+
name
|
|
2030
|
+
valueReference
|
|
2031
|
+
}
|
|
2032
|
+
}
|
|
2033
|
+
}
|
|
2034
|
+
}
|
|
2035
|
+
}
|
|
2036
|
+
`,
|
|
2037
|
+
{ fragmentName: 'ProductSKUMatrixSidebarFragment_product' }
|
|
2038
|
+
) as unknown as TypedDocumentString<
|
|
2039
|
+
ProductSkuMatrixSidebarFragment_ProductFragment,
|
|
2040
|
+
unknown
|
|
2041
|
+
>
|
|
1894
2042
|
export const ClientManyProductsFragmentDoc = new TypedDocumentString(
|
|
1895
2043
|
`
|
|
1896
2044
|
fragment ClientManyProducts on Query {
|
|
@@ -2102,6 +2250,15 @@ export const SubscribeToNewsletterDocument = {
|
|
|
2102
2250
|
SubscribeToNewsletterMutation,
|
|
2103
2251
|
SubscribeToNewsletterMutationVariables
|
|
2104
2252
|
>
|
|
2253
|
+
export const ClientAllVariantProductsQueryDocument = {
|
|
2254
|
+
__meta__: {
|
|
2255
|
+
operationName: 'ClientAllVariantProductsQuery',
|
|
2256
|
+
operationHash: '4039e05f01a2fe449e20e8b82170d0ba94b1fbe9',
|
|
2257
|
+
},
|
|
2258
|
+
} as unknown as TypedDocumentString<
|
|
2259
|
+
ClientAllVariantProductsQueryQuery,
|
|
2260
|
+
ClientAllVariantProductsQueryQueryVariables
|
|
2261
|
+
>
|
|
2105
2262
|
export const ClientManyProductsQueryDocument = {
|
|
2106
2263
|
__meta__: {
|
|
2107
2264
|
operationName: 'ClientManyProductsQuery',
|
|
@@ -3,6 +3,7 @@
|
|
|
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
|
+
"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 } }",
|
|
6
7
|
"14148671fbf53498fad5c600ee87765920145019": "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 } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price quantity seller { identifier } } } id: productID sku slug } 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 }",
|
|
7
8
|
"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 }",
|
|
8
9
|
"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 }",
|
|
@@ -1019,6 +1019,8 @@ type SkuVariants {
|
|
|
1019
1019
|
considered the dominant one.
|
|
1020
1020
|
"""
|
|
1021
1021
|
availableVariations(dominantVariantName: String): FormattedVariants
|
|
1022
|
+
"""All possible variant combinations of the current product. It also includes the data for each variant."""
|
|
1023
|
+
allVariantProducts: [StoreProduct!]
|
|
1022
1024
|
}
|
|
1023
1025
|
|
|
1024
1026
|
"""
|
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.8.0](https://github.com/vtex/faststore/compare/v3.7.0...v3.8.0) (2025-01-15)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- load out of viewport sections after TTI ([#2604](https://github.com/vtex/faststore/issues/2604)) ([98f8109](https://github.com/vtex/faststore/commit/98f8109d406150edf8172a4b8f8e3d4f39f28362))
|
|
11
|
+
|
|
12
|
+
# [3.7.0](https://github.com/vtex/faststore/compare/v3.6.0...v3.7.0) (2025-01-15)
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
- adds SKUMatrix component ([#2588](https://github.com/vtex/faststore/issues/2588)) ([0d7db56](https://github.com/vtex/faststore/commit/0d7db567be1e7b9b9375580b0a8cf665ee69d1c0))
|
|
17
|
+
|
|
6
18
|
# [3.6.0](https://github.com/vtex/faststore/compare/v3.5.1...v3.6.0) (2025-01-13)
|
|
7
19
|
|
|
8
20
|
**Note:** Version bump only for package @faststore/core
|