@faststore/core 3.98.0-dev.1 → 3.98.0-dev.3
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 +41 -41
- 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 +17 -17
- package/.next/routes-manifest.json +1 -1
- package/.next/server/chunks/3890.js +2 -2
- package/.next/server/chunks/4803.js +1 -1
- package/.next/server/chunks/7371.js +1 -1
- package/.next/server/chunks/948.js +1 -1
- package/.next/server/chunks/9563.js +3 -3
- package/.next/server/chunks/9853.js +1 -1
- package/.next/server/functions-config-manifest.json +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/[...slug].js +1 -1
- package/.next/server/pages/[slug]/p.js +1 -1
- package/.next/server/pages/api/graphql.js +3 -3
- package/.next/server/pages/en-US/404.html +2 -2
- package/.next/server/pages/en-US/404.json +1 -1
- package/.next/server/pages/en-US/500.html +2 -2
- package/.next/server/pages/en-US/500.json +1 -1
- package/.next/server/pages/en-US/checkout.html +2 -2
- package/.next/server/pages/en-US/checkout.json +1 -1
- package/.next/server/pages/en-US/login.html +2 -2
- package/.next/server/pages/en-US/login.json +1 -1
- package/.next/server/pages/en-US/s.html +2 -2
- package/.next/server/pages/en-US/s.json +1 -1
- package/.next/server/pages/en-US.html +2 -2
- package/.next/server/pages/en-US.json +1 -1
- package/.next/server/pages/s.js +1 -1
- package/.next/server/pages-manifest.json +1 -1
- package/.next/static/chunks/2284.922fe939dafb3b2d.js +1 -0
- package/.next/static/chunks/{2927.23bae2c79f0ac0f3.js → 2927.5a79877943a6bf7c.js} +1 -1
- package/.next/static/chunks/3399.72d28af405858825.js +1 -0
- package/.next/static/chunks/{7191-5ede6e7ef625ea77.js → 7191-4bf7ddfc2bd0f3a9.js} +1 -1
- package/.next/static/chunks/9173-ddb551c7ca3de40b.js +1 -0
- package/.next/static/chunks/9465.a1858c778b1083b9.js +1 -0
- package/.next/static/chunks/{UIToast.de15325248043ce5.js → UIToast.19a8664c01a00d3a.js} +1 -1
- package/.next/static/chunks/pages/[...slug]-52db16871a86e9bd.js +1 -0
- package/.next/static/chunks/pages/[slug]/{p-7ac98274c47b0ff4.js → p-0901bccd311c7775.js} +1 -1
- package/.next/static/chunks/pages/_app-c7470c325e07d4ce.js +1 -0
- package/.next/static/chunks/{webpack-345c083b2f1f8bb9.js → webpack-1947faa4988b2d76.js} +1 -1
- package/.next/static/zYBmCmAclx4jsVX0yAK0w/_buildManifest.js +1 -0
- package/.next/trace +140 -140
- package/.turbo/turbo-build.log +13 -13
- package/.turbo/turbo-test.log +5 -5
- package/@generated/gql.ts +16 -8
- package/@generated/graphql.ts +92 -9
- package/@generated/persisted-documents.json +4 -3
- package/@generated/schema.graphql +4 -0
- package/CHANGELOG.md +12 -0
- package/package.json +4 -4
- package/src/components/product/ProductGrid/ProductGrid.tsx +26 -1
- package/src/components/search/SearchDropdown/SearchDropdown.tsx +11 -2
- package/src/components/search/SearchInput/SearchInput.tsx +2 -0
- package/src/components/templates/ProductListingPage/ProductListing.tsx +1 -1
- package/src/components/ui/ProductGallery/ProductGalleryPage.tsx +17 -0
- package/src/pages/[slug]/p.tsx +2 -0
- package/src/sdk/product/usePageProductsQuery.ts +11 -9
- package/src/sdk/search/useSuggestions.ts +1 -0
- package/.next/static/Q4xA-lP9ZZhP1GXzClxiR/_buildManifest.js +0 -1
- package/.next/static/chunks/2284.dffe7b0e5a5bfb4a.js +0 -1
- package/.next/static/chunks/3399.3e1f685c992c345b.js +0 -1
- package/.next/static/chunks/9173-ab3c4d9d8f978c4b.js +0 -1
- package/.next/static/chunks/9465.e09b81f7e6195587.js +0 -1
- package/.next/static/chunks/pages/[...slug]-3579b3b8b8309552.js +0 -1
- package/.next/static/chunks/pages/_app-1595678557980d65.js +0 -1
- /package/.next/static/{Q4xA-lP9ZZhP1GXzClxiR → zYBmCmAclx4jsVX0yAK0w}/_ssgManifest.js +0 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
|
|
2
|
-
> @faststore/core@3.98.0-dev.
|
|
2
|
+
> @faststore/core@3.98.0-dev.2 prebuild /home/runner/work/faststore/faststore/packages/core
|
|
3
3
|
> na run partytown && na run generate
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
> @faststore/core@3.98.0-dev.
|
|
6
|
+
> @faststore/core@3.98.0-dev.2 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.98.0-dev.
|
|
11
|
+
> @faststore/core@3.98.0-dev.2 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.98.0-dev.
|
|
15
|
+
> @faststore/core@3.98.0-dev.2 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.98.0-dev.
|
|
20
|
+
> @faststore/core@3.98.0-dev.2 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.98.0-dev.
|
|
40
|
+
> @faststore/core@3.98.0-dev.2 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.98.0-dev.
|
|
44
|
+
> @faststore/core@3.98.0-dev.2 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
|
|
@@ -58,7 +58,7 @@ Browserslist: caniuse-lite is outdated. Please run:
|
|
|
58
58
|
Creating an optimized production build ...
|
|
59
59
|
Disabled SWC as replacement for Babel because of custom Babel configuration ".babelrc.js" https://nextjs.org/docs/messages/swc-disabled
|
|
60
60
|
Using external babel configuration from /home/runner/work/faststore/faststore/packages/core/.babelrc.js
|
|
61
|
-
Browserslist: browsers data (caniuse-lite) is
|
|
61
|
+
Browserslist: browsers data (caniuse-lite) is 14 months old. Please run:
|
|
62
62
|
npx update-browserslist-db@latest
|
|
63
63
|
Why you should do it regularly: https://github.com/browserslist/update-db#readme
|
|
64
64
|
<w> [webpack.cache.PackFileCacheStrategy] Skipped not serializable cache item 'Compilation/modules|/home/runner/work/faststore/faststore/node_modules/.pnpm/next@13.5.11_@babel+core@7.26.7_@opentelemetry+api@1.4.1_react-dom@18.3.1_react@18.3.1__react@18.3.1_sass@1.83.4/node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[7].oneOf[9].use[1]!/home/runner/work/faststore/faststore/node_modules/.pnpm/next@13.5.11_@babel+core@7.26.7_@opentelemetry+api@1.4.1_react-dom@18.3.1_react@18.3.1__react@18.3.1_sass@1.83.4/node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[7].oneOf[9].use[2]!/home/runner/work/faststore/faststore/node_modules/.pnpm/next@13.5.11_@babel+core@7.26.7_@opentelemetry+api@1.4.1_react-dom@18.3.1_react@18.3.1__react@18.3.1_sass@1.83.4/node_modules/next/dist/build/webpack/loaders/resolve-url-loader/index.js??ruleSet[1].rules[7].oneOf[9].use[3]!/home/runner/work/faststore/faststore/node_modules/.pnpm/next@13.5.11_@babel+core@7.26.7_@opentelemetry+api@1.4.1_react-dom@18.3.1_react@18.3.1__react@18.3.1_sass@1.83.4/node_modules/next/dist/compiled/sass-loader/cjs.js??ruleSet[1].rules[7].oneOf[9].use[4]!/home/runner/work/faststore/faststore/packages/core/src/components/common/Toast/section.module.scss': No serializer registered for Warning
|
|
@@ -91,8 +91,8 @@ Route (pages) Size First Load JS
|
|
|
91
91
|
┌ ● / 7.39 kB 147 kB
|
|
92
92
|
├ └ css/02259c549b2179f2.css 3.1 kB
|
|
93
93
|
├ /_app 0 B 108 kB
|
|
94
|
-
├ ● /[...slug] 2.
|
|
95
|
-
├ ● /[slug]/p 98.2 kB
|
|
94
|
+
├ ● /[...slug] 2.56 kB 157 kB
|
|
95
|
+
├ ● /[slug]/p 98.2 kB 238 kB
|
|
96
96
|
├ └ css/a6a4ebbe01adbbad.css 22.2 kB
|
|
97
97
|
├ ○ /404 1.57 kB 141 kB
|
|
98
98
|
├ ● /500 1.57 kB 141 kB
|
|
@@ -107,7 +107,7 @@ Route (pages) Size First Load JS
|
|
|
107
107
|
├ ● /pvt/account/[...unknown] 287 B 108 kB
|
|
108
108
|
├ λ /pvt/account/403 2.98 kB 142 kB
|
|
109
109
|
├ └ css/0fae3d432331aae9.css 4.68 kB
|
|
110
|
-
├ λ /pvt/account/404 2.18 kB
|
|
110
|
+
├ λ /pvt/account/404 2.18 kB 142 kB
|
|
111
111
|
├ └ css/0fc6b2ff69142c6a.css 4.74 kB
|
|
112
112
|
├ λ /pvt/account/orders 9.78 kB 149 kB
|
|
113
113
|
├ └ css/40a294d0a24ad01d.css 14.1 kB
|
|
@@ -123,8 +123,8 @@ Route (pages) Size First Load JS
|
|
|
123
123
|
+ First Load JS shared by all 111 kB
|
|
124
124
|
├ chunks/framework-d514426edf885c68.js 45.4 kB
|
|
125
125
|
├ chunks/main-ec03882c4375091d.js 33.2 kB
|
|
126
|
-
├ chunks/pages/_app-
|
|
127
|
-
├ chunks/webpack-
|
|
126
|
+
├ chunks/pages/_app-c7470c325e07d4ce.js 25.1 kB
|
|
127
|
+
├ chunks/webpack-1947faa4988b2d76.js 3.85 kB
|
|
128
128
|
└ css/0f070d03aacd9cc5.css 3.57 kB
|
|
129
129
|
|
|
130
130
|
λ (Server) server-side renders at runtime (uses getInitialProps or getServerSideProps)
|
package/.turbo/turbo-test.log
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
|
|
2
|
-
> @faststore/core@3.98.0-dev.
|
|
2
|
+
> @faststore/core@3.98.0-dev.2 test /home/runner/work/faststore/faststore/packages/core
|
|
3
3
|
> jest
|
|
4
4
|
|
|
5
|
-
PASS test/utils/multipleTemplates.test.ts (27.
|
|
6
|
-
PASS test/utils/clearCookies.test.ts (
|
|
5
|
+
PASS test/utils/multipleTemplates.test.ts (27.896 s)
|
|
6
|
+
PASS test/utils/clearCookies.test.ts (27.577 s)
|
|
7
7
|
PASS test/utils/cookieCacheBusting.test.ts
|
|
8
8
|
PASS test/server/cms/global.test.ts
|
|
9
9
|
PASS test/server/cms/index.test.ts
|
|
10
|
-
PASS test/server/index.test.ts (
|
|
10
|
+
PASS test/server/index.test.ts (31.317 s)
|
|
11
11
|
|
|
12
12
|
Test Suites: 6 passed, 6 total
|
|
13
13
|
Tests: 47 passed, 47 total
|
|
14
14
|
Snapshots: 0 total
|
|
15
|
-
Time:
|
|
15
|
+
Time: 32.499 s
|
|
16
16
|
Ran all test suites.
|
package/@generated/gql.ts
CHANGED
|
@@ -42,7 +42,7 @@ const documents = {
|
|
|
42
42
|
types.ServerAccountPageQueryDocument,
|
|
43
43
|
'\n query ServerCollectionPageQuery($slug: String!) {\n ...ServerCollectionPage\n collection(slug: $slug) {\n seo {\n title\n description\n }\n breadcrumbList {\n itemListElement {\n item\n name\n position\n }\n }\n meta {\n selectedFacets {\n key\n value\n }\n }\n }\n }\n':
|
|
44
44
|
types.ServerCollectionPageQueryDocument,
|
|
45
|
-
'\n query ServerProductQuery($locator: [IStoreSelectedFacet!]!) {\n ...ServerProduct\n product(locator: $locator) {\n id: productID\n\n seo {\n title\n description\n canonical\n }\n\n brand {\n name\n }\n\n sku\n gtin\n name\n description\n releaseDate\n\n breadcrumbList {\n itemListElement {\n item\n name\n position\n }\n }\n\n image {\n url\n alternateName\n }\n\n offers {\n lowPrice\n highPrice\n lowPriceWithTaxes\n priceCurrency\n offers {\n availability\n price\n priceValidUntil\n priceCurrency\n itemCondition\n seller {\n identifier\n }\n }\n }\n\n isVariantOf {\n productGroupID\n }\n\n ...ProductDetailsFragment_product\n }\n }\n':
|
|
45
|
+
'\n query ServerProductQuery($locator: [IStoreSelectedFacet!]!) {\n ...ServerProduct\n product(locator: $locator) {\n id: productID\n\n seo {\n title\n description\n canonical\n }\n\n brand {\n name\n }\n\n sku\n gtin\n mpn\n name\n description\n releaseDate\n\n breadcrumbList {\n itemListElement {\n item\n name\n position\n }\n }\n\n image {\n url\n alternateName\n }\n\n offers {\n lowPrice\n highPrice\n lowPriceWithTaxes\n priceCurrency\n offers {\n availability\n price\n priceValidUntil\n priceCurrency\n itemCondition\n seller {\n identifier\n }\n }\n }\n\n isVariantOf {\n productGroupID\n }\n\n ...ProductDetailsFragment_product\n }\n }\n':
|
|
46
46
|
types.ServerProductQueryDocument,
|
|
47
47
|
'\n fragment UserOrderItemsFragment on UserOrderItems {\n id\n name\n quantity\n sellingPrice\n unitMultiplier\n measurementUnit\n imageUrl\n detailUrl\n refId\n rewardValue\n }\n':
|
|
48
48
|
types.UserOrderItemsFragmentFragmentDoc,
|
|
@@ -72,17 +72,19 @@ const documents = {
|
|
|
72
72
|
types.ClientProductCountQueryDocument,
|
|
73
73
|
'\n query ClientAllVariantProductsQuery($locator: [IStoreSelectedFacet!]!) {\n product(locator: $locator) {\n ...ProductSKUMatrixSidebarFragment_product\n }\n }\n':
|
|
74
74
|
types.ClientAllVariantProductsQueryDocument,
|
|
75
|
-
'\n query
|
|
76
|
-
types.
|
|
75
|
+
'\n query ClientManyProductsQueryWithSearchId(\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 searchId\n }\n }\n':
|
|
76
|
+
types.ClientManyProductsQueryWithSearchIdDocument,
|
|
77
77
|
'\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':
|
|
78
78
|
types.ClientProductGalleryQueryDocument,
|
|
79
79
|
'\n query ClientProductQuery($locator: [IStoreSelectedFacet!]!) {\n ...ClientProduct\n product(locator: $locator) {\n ...ProductDetailsFragment_product\n }\n }\n':
|
|
80
80
|
types.ClientProductQueryDocument,
|
|
81
|
+
'\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':
|
|
82
|
+
types.ClientManyProductsQueryDocument,
|
|
81
83
|
'\n query ClientManyProductsSelectedQuery(\n $productIds: [String!]!\n ) {\n products(productIds: $productIds) {\n ...ProductComparisonFragment_product\n }\n }\n':
|
|
82
84
|
types.ClientManyProductsSelectedQueryDocument,
|
|
83
85
|
'\n query ClientProfileQuery($id: String!) {\n profile(id: $id) {\n addresses {\n country\n postalCode\n geoCoordinate\n city\n }\n }\n }\n':
|
|
84
86
|
types.ClientProfileQueryDocument,
|
|
85
|
-
'\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':
|
|
87
|
+
'\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 searchId\n }\n }\n':
|
|
86
88
|
types.ClientSearchSuggestionsQueryDocument,
|
|
87
89
|
'\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':
|
|
88
90
|
types.ClientTopSearchSuggestionsQueryDocument,
|
|
@@ -188,7 +190,7 @@ export function gql(
|
|
|
188
190
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
189
191
|
*/
|
|
190
192
|
export function gql(
|
|
191
|
-
source: '\n query ServerProductQuery($locator: [IStoreSelectedFacet!]!) {\n ...ServerProduct\n product(locator: $locator) {\n id: productID\n\n seo {\n title\n description\n canonical\n }\n\n brand {\n name\n }\n\n sku\n gtin\n name\n description\n releaseDate\n\n breadcrumbList {\n itemListElement {\n item\n name\n position\n }\n }\n\n image {\n url\n alternateName\n }\n\n offers {\n lowPrice\n highPrice\n lowPriceWithTaxes\n priceCurrency\n offers {\n availability\n price\n priceValidUntil\n priceCurrency\n itemCondition\n seller {\n identifier\n }\n }\n }\n\n isVariantOf {\n productGroupID\n }\n\n ...ProductDetailsFragment_product\n }\n }\n'
|
|
193
|
+
source: '\n query ServerProductQuery($locator: [IStoreSelectedFacet!]!) {\n ...ServerProduct\n product(locator: $locator) {\n id: productID\n\n seo {\n title\n description\n canonical\n }\n\n brand {\n name\n }\n\n sku\n gtin\n mpn\n name\n description\n releaseDate\n\n breadcrumbList {\n itemListElement {\n item\n name\n position\n }\n }\n\n image {\n url\n alternateName\n }\n\n offers {\n lowPrice\n highPrice\n lowPriceWithTaxes\n priceCurrency\n offers {\n availability\n price\n priceValidUntil\n priceCurrency\n itemCondition\n seller {\n identifier\n }\n }\n }\n\n isVariantOf {\n productGroupID\n }\n\n ...ProductDetailsFragment_product\n }\n }\n'
|
|
192
194
|
): typeof import('./graphql').ServerProductQueryDocument
|
|
193
195
|
/**
|
|
194
196
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
@@ -278,8 +280,8 @@ export function gql(
|
|
|
278
280
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
279
281
|
*/
|
|
280
282
|
export function gql(
|
|
281
|
-
source: '\n query
|
|
282
|
-
): typeof import('./graphql').
|
|
283
|
+
source: '\n query ClientManyProductsQueryWithSearchId(\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 searchId\n }\n }\n'
|
|
284
|
+
): typeof import('./graphql').ClientManyProductsQueryWithSearchIdDocument
|
|
283
285
|
/**
|
|
284
286
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
285
287
|
*/
|
|
@@ -292,6 +294,12 @@ export function gql(
|
|
|
292
294
|
export function gql(
|
|
293
295
|
source: '\n query ClientProductQuery($locator: [IStoreSelectedFacet!]!) {\n ...ClientProduct\n product(locator: $locator) {\n ...ProductDetailsFragment_product\n }\n }\n'
|
|
294
296
|
): typeof import('./graphql').ClientProductQueryDocument
|
|
297
|
+
/**
|
|
298
|
+
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
299
|
+
*/
|
|
300
|
+
export function gql(
|
|
301
|
+
source: '\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'
|
|
302
|
+
): typeof import('./graphql').ClientManyProductsQueryDocument
|
|
295
303
|
/**
|
|
296
304
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
297
305
|
*/
|
|
@@ -308,7 +316,7 @@ export function gql(
|
|
|
308
316
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
|
309
317
|
*/
|
|
310
318
|
export function gql(
|
|
311
|
-
source: '\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'
|
|
319
|
+
source: '\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 searchId\n }\n }\n'
|
|
312
320
|
): typeof import('./graphql').ClientSearchSuggestionsQueryDocument
|
|
313
321
|
/**
|
|
314
322
|
* The gql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
package/@generated/graphql.ts
CHANGED
|
@@ -1438,6 +1438,8 @@ export type StoreProduct = {
|
|
|
1438
1438
|
image: Array<StoreImage>
|
|
1439
1439
|
/** Indicates product group related to this product. */
|
|
1440
1440
|
isVariantOf: StoreProductGroup
|
|
1441
|
+
/** Manufacturer Part Number. Identifies the product to its manufacturer. */
|
|
1442
|
+
mpn: Scalars['String']['output']
|
|
1441
1443
|
/** Product name. */
|
|
1442
1444
|
name: Scalars['String']['output']
|
|
1443
1445
|
/** Aggregate offer information. */
|
|
@@ -1547,6 +1549,8 @@ export type StoreSearchResult = {
|
|
|
1547
1549
|
metadata: Maybe<SearchMetadata>
|
|
1548
1550
|
/** Search result products. */
|
|
1549
1551
|
products: StoreProductConnection
|
|
1552
|
+
/** Search result searchId. Unique identifier for the search query can be used to correlate search analytics events. */
|
|
1553
|
+
searchId: Scalars['String']['output']
|
|
1550
1554
|
/** Search result suggestions. */
|
|
1551
1555
|
suggestions: StoreSuggestions
|
|
1552
1556
|
}
|
|
@@ -2723,6 +2727,7 @@ export type ServerProductQueryQuery = {
|
|
|
2723
2727
|
product: {
|
|
2724
2728
|
sku: string
|
|
2725
2729
|
gtin: string
|
|
2730
|
+
mpn: string
|
|
2726
2731
|
name: string
|
|
2727
2732
|
description: string
|
|
2728
2733
|
releaseDate: string
|
|
@@ -3311,7 +3316,7 @@ export type ClientAllVariantProductsQueryQuery = {
|
|
|
3311
3316
|
}
|
|
3312
3317
|
}
|
|
3313
3318
|
|
|
3314
|
-
export type
|
|
3319
|
+
export type ClientManyProductsQueryWithSearchIdQueryVariables = Exact<{
|
|
3315
3320
|
first: Scalars['Int']['input']
|
|
3316
3321
|
after: InputMaybe<Scalars['String']['input']>
|
|
3317
3322
|
sort: StoreSort
|
|
@@ -3320,8 +3325,9 @@ export type ClientManyProductsQueryQueryVariables = Exact<{
|
|
|
3320
3325
|
sponsoredCount: InputMaybe<Scalars['Int']['input']>
|
|
3321
3326
|
}>
|
|
3322
3327
|
|
|
3323
|
-
export type
|
|
3328
|
+
export type ClientManyProductsQueryWithSearchIdQuery = {
|
|
3324
3329
|
search: {
|
|
3330
|
+
searchId: string
|
|
3325
3331
|
products: {
|
|
3326
3332
|
pageInfo: { totalCount: number }
|
|
3327
3333
|
edges: Array<{
|
|
@@ -3469,6 +3475,73 @@ export type ClientProductQueryQuery = {
|
|
|
3469
3475
|
}
|
|
3470
3476
|
}
|
|
3471
3477
|
|
|
3478
|
+
export type ClientManyProductsQueryQueryVariables = Exact<{
|
|
3479
|
+
first: Scalars['Int']['input']
|
|
3480
|
+
after: InputMaybe<Scalars['String']['input']>
|
|
3481
|
+
sort: StoreSort
|
|
3482
|
+
term: Scalars['String']['input']
|
|
3483
|
+
selectedFacets: Array<IStoreSelectedFacet> | IStoreSelectedFacet
|
|
3484
|
+
sponsoredCount: InputMaybe<Scalars['Int']['input']>
|
|
3485
|
+
}>
|
|
3486
|
+
|
|
3487
|
+
export type ClientManyProductsQueryQuery = {
|
|
3488
|
+
search: {
|
|
3489
|
+
products: {
|
|
3490
|
+
pageInfo: { totalCount: number }
|
|
3491
|
+
edges: Array<{
|
|
3492
|
+
node: {
|
|
3493
|
+
slug: string
|
|
3494
|
+
sku: string
|
|
3495
|
+
name: string
|
|
3496
|
+
gtin: string
|
|
3497
|
+
unitMultiplier: number | null
|
|
3498
|
+
hasSpecifications: boolean | null
|
|
3499
|
+
id: string
|
|
3500
|
+
brand: { name: string; brandName: string }
|
|
3501
|
+
isVariantOf: {
|
|
3502
|
+
productGroupID: string
|
|
3503
|
+
name: string
|
|
3504
|
+
skuVariants: {
|
|
3505
|
+
allVariantsByName: any | null
|
|
3506
|
+
activeVariations: any | null
|
|
3507
|
+
slugsMap: any | null
|
|
3508
|
+
availableVariations: any | null
|
|
3509
|
+
allVariantProducts: Array<{
|
|
3510
|
+
name: string
|
|
3511
|
+
productID: string
|
|
3512
|
+
}> | null
|
|
3513
|
+
} | null
|
|
3514
|
+
}
|
|
3515
|
+
image: Array<{ url: string; alternateName: string }>
|
|
3516
|
+
offers: {
|
|
3517
|
+
lowPrice: number
|
|
3518
|
+
lowPriceWithTaxes: number
|
|
3519
|
+
offers: Array<{
|
|
3520
|
+
availability: string
|
|
3521
|
+
price: number
|
|
3522
|
+
listPrice: number
|
|
3523
|
+
listPriceWithTaxes: number
|
|
3524
|
+
priceWithTaxes: number
|
|
3525
|
+
quantity: number
|
|
3526
|
+
seller: { identifier: string }
|
|
3527
|
+
}>
|
|
3528
|
+
}
|
|
3529
|
+
additionalProperty: Array<{
|
|
3530
|
+
propertyID: string
|
|
3531
|
+
name: string
|
|
3532
|
+
value: any
|
|
3533
|
+
valueReference: any
|
|
3534
|
+
}>
|
|
3535
|
+
advertisement: { adId: string; adResponseId: string } | null
|
|
3536
|
+
deliveryPromiseBadges: Array<{
|
|
3537
|
+
typeName: string | null
|
|
3538
|
+
} | null> | null
|
|
3539
|
+
}
|
|
3540
|
+
}>
|
|
3541
|
+
}
|
|
3542
|
+
}
|
|
3543
|
+
}
|
|
3544
|
+
|
|
3472
3545
|
export type ClientManyProductsSelectedQueryQueryVariables = Exact<{
|
|
3473
3546
|
productIds: Array<Scalars['String']['input']> | Scalars['String']['input']
|
|
3474
3547
|
}>
|
|
@@ -3558,6 +3631,7 @@ export type ClientSearchSuggestionsQueryQueryVariables = Exact<{
|
|
|
3558
3631
|
|
|
3559
3632
|
export type ClientSearchSuggestionsQueryQuery = {
|
|
3560
3633
|
search: {
|
|
3634
|
+
searchId: string
|
|
3561
3635
|
suggestions: {
|
|
3562
3636
|
terms: Array<{ value: string }>
|
|
3563
3637
|
products: Array<{
|
|
@@ -4371,7 +4445,7 @@ export const ServerCollectionPageQueryDocument = {
|
|
|
4371
4445
|
export const ServerProductQueryDocument = {
|
|
4372
4446
|
__meta__: {
|
|
4373
4447
|
operationName: 'ServerProductQuery',
|
|
4374
|
-
operationHash: '
|
|
4448
|
+
operationHash: 'b0491eb0c42122063e67e607b07d0c2df363e8ed',
|
|
4375
4449
|
},
|
|
4376
4450
|
} as unknown as TypedDocumentString<
|
|
4377
4451
|
ServerProductQueryQuery,
|
|
@@ -4494,14 +4568,14 @@ export const ClientAllVariantProductsQueryDocument = {
|
|
|
4494
4568
|
ClientAllVariantProductsQueryQuery,
|
|
4495
4569
|
ClientAllVariantProductsQueryQueryVariables
|
|
4496
4570
|
>
|
|
4497
|
-
export const
|
|
4571
|
+
export const ClientManyProductsQueryWithSearchIdDocument = {
|
|
4498
4572
|
__meta__: {
|
|
4499
|
-
operationName: '
|
|
4500
|
-
operationHash: '
|
|
4573
|
+
operationName: 'ClientManyProductsQueryWithSearchId',
|
|
4574
|
+
operationHash: '23be1e1fcaf0bd2719a9324272c891c922045180',
|
|
4501
4575
|
},
|
|
4502
4576
|
} as unknown as TypedDocumentString<
|
|
4503
|
-
|
|
4504
|
-
|
|
4577
|
+
ClientManyProductsQueryWithSearchIdQuery,
|
|
4578
|
+
ClientManyProductsQueryWithSearchIdQueryVariables
|
|
4505
4579
|
>
|
|
4506
4580
|
export const ClientProductGalleryQueryDocument = {
|
|
4507
4581
|
__meta__: {
|
|
@@ -4521,6 +4595,15 @@ export const ClientProductQueryDocument = {
|
|
|
4521
4595
|
ClientProductQueryQuery,
|
|
4522
4596
|
ClientProductQueryQueryVariables
|
|
4523
4597
|
>
|
|
4598
|
+
export const ClientManyProductsQueryDocument = {
|
|
4599
|
+
__meta__: {
|
|
4600
|
+
operationName: 'ClientManyProductsQuery',
|
|
4601
|
+
operationHash: 'e49027bc29aa10cbf7bbb0ed62239af8de1653f0',
|
|
4602
|
+
},
|
|
4603
|
+
} as unknown as TypedDocumentString<
|
|
4604
|
+
ClientManyProductsQueryQuery,
|
|
4605
|
+
ClientManyProductsQueryQueryVariables
|
|
4606
|
+
>
|
|
4524
4607
|
export const ClientManyProductsSelectedQueryDocument = {
|
|
4525
4608
|
__meta__: {
|
|
4526
4609
|
operationName: 'ClientManyProductsSelectedQuery',
|
|
@@ -4542,7 +4625,7 @@ export const ClientProfileQueryDocument = {
|
|
|
4542
4625
|
export const ClientSearchSuggestionsQueryDocument = {
|
|
4543
4626
|
__meta__: {
|
|
4544
4627
|
operationName: 'ClientSearchSuggestionsQuery',
|
|
4545
|
-
operationHash: '
|
|
4628
|
+
operationHash: '1517112c3f6aa9e5031ed8cbad61d97973e0a5b7',
|
|
4546
4629
|
},
|
|
4547
4630
|
} as unknown as TypedDocumentString<
|
|
4548
4631
|
ClientSearchSuggestionsQueryQuery,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"9baae331b75848a310fecb457e8c971ae27897ff": "query ServerAccountPageQuery { accountProfile { name } }",
|
|
3
3
|
"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 }",
|
|
4
|
-
"
|
|
4
|
+
"b0491eb0c42122063e67e607b07d0c2df363e8ed": "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 allVariantProducts { name productID } 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 } mpn 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 }",
|
|
5
5
|
"bdf677bbccce12186a5ef15aebdce46585a99782": "query ServerOrderDetailsQuery($orderId: String!) { accountProfile { name } userOrder(orderId: $orderId) { allowCancellation budgetData { budgets { allocations { id linkedEntity { id } reservations } balance { remaining } id name } } canProcessOrderAuthorization clientProfileData { corporateName email firstName isCorporate lastName phone } creationDate customFields { fields { name refId value } id type } deliveryOptionsData { contact { email name phone } deliveryOptions { address { addressId addressType city complement country entityId geoCoordinates neighborhood number postalCode receiverName reference state street versionId } deliveryChannel deliveryCompany deliveryWindow { endDateUtc price startDateUtc } friendlyDeliveryOptionName friendlyShippingEstimate items { id imageUrl name price quantity sellingPrice tax taxPriceTagsTotal total uniqueId } pickupStoreInfo { additionalInfo address { addressId addressType city complement country entityId geoCoordinates neighborhood number postalCode receiverName reference state street versionId } dockId friendlyName isPickupStore } quantityOfDifferentItems selectedSla seller shippingEstimate shippingEstimateDate total } } orderId paymentData { transactions { isActive payments { bankIssuedInvoiceIdentificationNumber connectorResponses { authId } group id installments lastDigits paymentOrigin paymentSystemName redemptionCode referenceValue tid url value } } } ruleForAuthorization { dimensionId orderAuthorizationId rule { authorizationData { authorizers { authorizationDate email id type } requireAllApprovals } authorizedEmails doId id isUserAuthorized isUserNextAuthorizer name notification priority scoreInterval { accept deny } status timeout trigger { condition { conditionType description expression greatherThan lessThan } effect { description effectType funcPath } } } } shopper { email firstName lastName phone } status statusDescription storePreferencesData { currencyCode } totals { id name value } } }",
|
|
6
6
|
"70d06de1da9c11f10ebde31b66fd74eccd456af5": "query ServerListOrdersQuery($clientEmail: String, $dateFinal: String, $dateInitial: String, $page: Int, $pendingMyApproval: Boolean, $perPage: Int, $status: [String], $text: String) { accountProfile { name } listUserOrders( page: $page perPage: $perPage status: $status dateInitial: $dateInitial dateFinal: $dateFinal text: $text clientEmail: $clientEmail pendingMyApproval: $pendingMyApproval ) { list { ShippingEstimatedDate clientName creationDate currencyCode customFields { type value } items { description ean id price productId quantity refId seller sellingPrice } orderId status statusDescription totalValue } paging { currentPage pages perPage total } } }",
|
|
7
7
|
"672fe0f00b7b710b63fc6573c0a6b2ec54812b8f": "query ServerProfileQuery { accountProfile { email id name } }",
|
|
@@ -15,12 +15,13 @@
|
|
|
15
15
|
"feb7005103a859e2bc8cf2360d568806fd88deba": "mutation SubscribeToNewsletter($data: IPersonNewsletter!) { subscribeToNewsletter(data: $data) { id } }",
|
|
16
16
|
"dc912e7272e3d9f5ced206837df87f544d39d0a5": "query ClientProductCountQuery($term: String) { productCount(term: $term) { total } }",
|
|
17
17
|
"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 } }",
|
|
18
|
-
"
|
|
18
|
+
"23be1e1fcaf0bd2719a9324272c891c922045180": "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 } deliveryPromiseBadges { typeName } gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier unitMultiplier } query ClientManyProductsQueryWithSearchId($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 } } searchId } ...ClientManyProducts }",
|
|
19
19
|
"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 }",
|
|
20
20
|
"47aa22eb750cb2c529e5eeafb921bfeadb67db71": "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 allVariantProducts { name productID } 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 }",
|
|
21
|
+
"e49027bc29aa10cbf7bbb0ed62239af8de1653f0": "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 } deliveryPromiseBadges { typeName } gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier 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 }",
|
|
21
22
|
"b668777678c137b8c7004297df4d8b8f2b29ee06": "fragment ProductComparisonFragment_product on StoreProduct { additionalProperty { name propertyID value valueReference } advertisement { adId adResponseId } brand { name } description gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku skuSpecifications { field { id name originalName } values { fieldId id name originalName } } slug specificationGroups { name originalName specifications { name originalName values } } unitMultiplier } query ClientManyProductsSelectedQuery($productIds: [String!]!) { products(productIds: $productIds) { ...ProductComparisonFragment_product } }",
|
|
22
23
|
"34ea14c0d4a57ddf9bc11e4be0cd2b5a6506d3d4": "query ClientProfileQuery($id: String!) { profile(id: $id) { addresses { city country geoCoordinate postalCode } } }",
|
|
23
|
-
"
|
|
24
|
+
"1517112c3f6aa9e5031ed8cbad61d97973e0a5b7": "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 } deliveryPromiseBadges { typeName } gtin hasSpecifications image { alternateName url } isVariantOf { name productGroupID skuVariants { activeVariations allVariantsByName availableVariations slugsMap } } isVariantOf { name productGroupID skuVariants { activeVariations allVariantProducts { name productID } availableVariations slugsMap } } name offers { lowPrice lowPriceWithTaxes offers { availability listPrice listPriceWithTaxes price priceWithTaxes quantity seller { identifier } } } id: productID sku slug unitMultiplier 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 } } searchId suggestions { products { ...ProductSummary_product } terms { value } } } ...ClientSearchSuggestions }",
|
|
24
25
|
"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 }",
|
|
25
26
|
"8c3a5999496e227f167e9dc79697e6c478d48a9e": "mutation ValidateSession($search: String!, $session: IStoreSession!) { validateSession(session: $session, search: $search) { addressType b2b { contractName customerId firstName isRepresentative lastName organizationManager savedPostalCode unitId unitName userEmail userName } 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 refreshAfter } }",
|
|
26
27
|
"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 }",
|
|
@@ -686,6 +686,8 @@ type StoreProduct {
|
|
|
686
686
|
sku: String!
|
|
687
687
|
"""Global Trade Item Number."""
|
|
688
688
|
gtin: String!
|
|
689
|
+
"""Manufacturer Part Number. Identifies the product to its manufacturer."""
|
|
690
|
+
mpn: String!
|
|
689
691
|
"""Array with review information."""
|
|
690
692
|
review: [StoreReview!]!
|
|
691
693
|
"""Aggregate ratings data."""
|
|
@@ -931,6 +933,8 @@ type StoreSearchResult {
|
|
|
931
933
|
suggestions: StoreSuggestions!
|
|
932
934
|
"""Search result metadata. Additional data can be used to send analytics events."""
|
|
933
935
|
metadata: SearchMetadata
|
|
936
|
+
"""Search result searchId. Unique identifier for the search query can be used to correlate search analytics events."""
|
|
937
|
+
searchId: String!
|
|
934
938
|
}
|
|
935
939
|
|
|
936
940
|
input IGeoCoordinates {
|
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.98.0-dev.3](https://github.com/vtex/faststore/compare/v3.98.0-dev.2...v3.98.0-dev.3) (2026-03-12)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- Add ActivityFlow data parameters with search-related information ([#3105](https://github.com/vtex/faststore/issues/3105)) ([8f69ff8](https://github.com/vtex/faststore/commit/8f69ff855c31abedba66071132240c53a93ab56d))
|
|
11
|
+
|
|
12
|
+
# [3.98.0-dev.2](https://github.com/vtex/faststore/compare/v3.98.0-dev.1...v3.98.0-dev.2) (2026-03-03)
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
- add mpn (manufacturer code) to product's structured data ([#3234](https://github.com/vtex/faststore/issues/3234)) ([9597e39](https://github.com/vtex/faststore/commit/9597e39a8d63a651b815f90fe3b1ea5409258ca3))
|
|
17
|
+
|
|
6
18
|
# 3.98.0-dev.1 (2026-02-24)
|
|
7
19
|
|
|
8
20
|
**Note:** Version bump only for package @faststore/core
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@faststore/core",
|
|
3
|
-
"version": "3.98.0-dev.
|
|
3
|
+
"version": "3.98.0-dev.3",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -51,11 +51,11 @@
|
|
|
51
51
|
"@envelop/graphql-jit": "^8.0.3",
|
|
52
52
|
"@envelop/parser-cache": "^6.0.2",
|
|
53
53
|
"@envelop/validation-cache": "^6.0.2",
|
|
54
|
-
"@faststore/api": "3.98.0-dev.
|
|
54
|
+
"@faststore/api": "3.98.0-dev.3",
|
|
55
55
|
"@faststore/graphql-utils": "^3.98.0-dev.1",
|
|
56
56
|
"@faststore/lighthouse": "3.98.0-dev.1",
|
|
57
57
|
"@faststore/sdk": "3.98.0-dev.1",
|
|
58
|
-
"@faststore/ui": "3.98.0-dev.
|
|
58
|
+
"@faststore/ui": "3.98.0-dev.3",
|
|
59
59
|
"@graphql-codegen/cli": "5.0.2",
|
|
60
60
|
"@graphql-codegen/client-preset": "4.2.6",
|
|
61
61
|
"@graphql-codegen/typescript": "4.0.7",
|
|
@@ -123,5 +123,5 @@
|
|
|
123
123
|
"ts-jest": "29.1.1",
|
|
124
124
|
"typescript": "5.3.2"
|
|
125
125
|
},
|
|
126
|
-
"gitHead": "
|
|
126
|
+
"gitHead": "c6e0f65660673a92f9de733b7502551ef755e86c"
|
|
127
127
|
}
|
|
@@ -48,6 +48,22 @@ interface Props {
|
|
|
48
48
|
* Title for the `ProductGrid` component that will be send to GA events.
|
|
49
49
|
*/
|
|
50
50
|
title?: string
|
|
51
|
+
searchId?: string
|
|
52
|
+
/**
|
|
53
|
+
* Function that returns optional external porps for each product summary.
|
|
54
|
+
* The returned key/value pairs will be spread onto the corresponding section element.
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* buildExtraProductProps={(product, index, searchId) => ({
|
|
58
|
+
* 'data-af-category': product.category || 'unknown',
|
|
59
|
+
* 'data-af-index': String(index),
|
|
60
|
+
* })}
|
|
61
|
+
*/
|
|
62
|
+
buildExtraProductProps?: (
|
|
63
|
+
product: Record<string, any>,
|
|
64
|
+
index: number,
|
|
65
|
+
searchId: string
|
|
66
|
+
) => Record<string, string | number | boolean>
|
|
51
67
|
}
|
|
52
68
|
|
|
53
69
|
function ProductGrid({
|
|
@@ -64,6 +80,8 @@ function ProductGrid({
|
|
|
64
80
|
shouldShowComparison,
|
|
65
81
|
compareLabel,
|
|
66
82
|
title,
|
|
83
|
+
searchId,
|
|
84
|
+
buildExtraProductProps = () => ({}),
|
|
67
85
|
}: Props) {
|
|
68
86
|
const { isMobile } = useScreenResize()
|
|
69
87
|
const { __experimentalProductCard: ProductCard } =
|
|
@@ -77,7 +95,11 @@ function ProductGrid({
|
|
|
77
95
|
aspectRatio={aspectRatio}
|
|
78
96
|
loading={products.length === 0}
|
|
79
97
|
>
|
|
80
|
-
<UIProductGrid
|
|
98
|
+
<UIProductGrid
|
|
99
|
+
data-af-element={searchId && 'search-result'}
|
|
100
|
+
data-af-onimpression={!!searchId}
|
|
101
|
+
data-af-search-id={searchId}
|
|
102
|
+
>
|
|
81
103
|
{isGridWithViewportObserver ? (
|
|
82
104
|
// In mobile, the ProductGrid initially renders the first 2 items, the rest of the items are rendered when they come into the viewport.
|
|
83
105
|
<>
|
|
@@ -108,6 +130,7 @@ function ProductGrid({
|
|
|
108
130
|
index={pageSize * page + idx + 1}
|
|
109
131
|
taxesConfiguration={taxesConfiguration}
|
|
110
132
|
sponsoredLabel={sponsoredLabel}
|
|
133
|
+
{...buildExtraProductProps(product, idx, searchId)}
|
|
111
134
|
/>
|
|
112
135
|
</ProductSentinel>
|
|
113
136
|
</UIProductGridItem>
|
|
@@ -140,6 +163,7 @@ function ProductGrid({
|
|
|
140
163
|
index={pageSize * page + idx + 1}
|
|
141
164
|
taxesConfiguration={taxesConfiguration}
|
|
142
165
|
sponsoredLabel={sponsoredLabel}
|
|
166
|
+
{...buildExtraProductProps(product, idx, searchId)}
|
|
143
167
|
/>
|
|
144
168
|
</ProductSentinel>
|
|
145
169
|
</UIProductGridItem>
|
|
@@ -175,6 +199,7 @@ function ProductGrid({
|
|
|
175
199
|
index={pageSize * page + idx + 1}
|
|
176
200
|
taxesConfiguration={taxesConfiguration}
|
|
177
201
|
sponsoredLabel={sponsoredLabel}
|
|
202
|
+
{...buildExtraProductProps(product, idx, searchId)}
|
|
178
203
|
/>
|
|
179
204
|
</ProductSentinel>
|
|
180
205
|
</UIProductGridItem>
|
|
@@ -48,7 +48,7 @@ function SearchDropdown({
|
|
|
48
48
|
...otherProps
|
|
49
49
|
}: SearchDropdownProps) {
|
|
50
50
|
const {
|
|
51
|
-
values: { onSearchSelection, products, term, terms },
|
|
51
|
+
values: { onSearchSelection, products, term, terms, searchId },
|
|
52
52
|
} = useSearch()
|
|
53
53
|
|
|
54
54
|
return (
|
|
@@ -92,7 +92,11 @@ function SearchDropdown({
|
|
|
92
92
|
/>
|
|
93
93
|
))}
|
|
94
94
|
</UISearchAutoComplete>
|
|
95
|
-
<SearchProducts
|
|
95
|
+
<SearchProducts
|
|
96
|
+
data-af-element={searchId && 'search-autocomplete'}
|
|
97
|
+
data-af-onimpression={!!searchId}
|
|
98
|
+
data-af-search-id={searchId}
|
|
99
|
+
>
|
|
96
100
|
{products.map((product, index) => {
|
|
97
101
|
const productParsed = product as ProductSummary_ProductFragment
|
|
98
102
|
return (
|
|
@@ -104,6 +108,11 @@ function SearchDropdown({
|
|
|
104
108
|
onChangeCustomSearchDropdownVisible={
|
|
105
109
|
onChangeCustomSearchDropdownVisible
|
|
106
110
|
}
|
|
111
|
+
data-af-element={searchId && 'search-autocomplete'}
|
|
112
|
+
data-af-onclick={!!(searchId && productParsed.id)}
|
|
113
|
+
data-af-search-id={searchId}
|
|
114
|
+
data-af-product-position={searchId && index + 1} // Product position in Search Analytics starts with 1
|
|
115
|
+
data-af-product-id={searchId && productParsed.id}
|
|
107
116
|
/>
|
|
108
117
|
)
|
|
109
118
|
})}
|
|
@@ -122,6 +122,7 @@ const SearchInput = forwardRef<SearchInputRef, SearchInputProps>(
|
|
|
122
122
|
MAX_SUGGESTIONS
|
|
123
123
|
)
|
|
124
124
|
const isLoading = !error && !data
|
|
125
|
+
const searchId = data?.search.searchId
|
|
125
126
|
|
|
126
127
|
const buttonProps = {
|
|
127
128
|
onClick: onSearchClick,
|
|
@@ -147,6 +148,7 @@ const SearchInput = forwardRef<SearchInputRef, SearchInputProps>(
|
|
|
147
148
|
terms={terms}
|
|
148
149
|
products={products}
|
|
149
150
|
isLoading={isLoading}
|
|
151
|
+
searchId={searchId}
|
|
150
152
|
>
|
|
151
153
|
<UISearchInputField
|
|
152
154
|
ref={ref}
|
|
@@ -73,7 +73,7 @@ export default function ProductListing({
|
|
|
73
73
|
itemsPerPage,
|
|
74
74
|
})
|
|
75
75
|
|
|
76
|
-
const initialPages = { search: server?.search }
|
|
76
|
+
const initialPages = { search: { ...server?.search, searchId: '' } }
|
|
77
77
|
const { pages, useGalleryPage } = useCreateUseGalleryPage({
|
|
78
78
|
initialPages,
|
|
79
79
|
serverManyProductsVariables,
|