@faststore/core 2.1.90 → 2.2.0-alpha.1

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.
Files changed (149) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +31 -31
  3. package/.next/cache/.tsbuildinfo +1 -1
  4. package/.next/cache/config.json +3 -3
  5. package/.next/cache/eslint/.cache_1gneedd +1 -1
  6. package/.next/cache/next-server.js.nft.json +1 -1
  7. package/.next/cache/webpack/client-production/0.pack +0 -0
  8. package/.next/cache/webpack/client-production/index.pack +0 -0
  9. package/.next/cache/webpack/server-production/0.pack +0 -0
  10. package/.next/cache/webpack/server-production/index.pack +0 -0
  11. package/.next/next-server.js.nft.json +1 -1
  12. package/.next/prerender-manifest.json +1 -1
  13. package/.next/react-loadable-manifest.json +1 -1
  14. package/.next/routes-manifest.json +1 -1
  15. package/.next/server/chunks/{907.js → 112.js} +422 -278
  16. package/.next/server/chunks/177.js +3 -3
  17. package/.next/server/chunks/183.js +1 -1
  18. package/.next/server/chunks/184.js +4 -4
  19. package/.next/server/chunks/186.js +7 -7
  20. package/.next/server/chunks/289.js +32 -29
  21. package/.next/server/chunks/312.js +67 -67
  22. package/.next/server/chunks/350.js +98 -41
  23. package/.next/server/chunks/483.js +43 -42
  24. package/.next/server/chunks/52.js +4007 -0
  25. package/.next/server/chunks/53.js +6 -6
  26. package/.next/server/chunks/530.js +22 -22
  27. package/.next/server/chunks/574.js +2 -2
  28. package/.next/server/chunks/576.js +1 -1
  29. package/.next/server/chunks/{933.js → 647.js} +33 -117
  30. package/.next/server/chunks/676.js +2 -2
  31. package/.next/server/chunks/693.js +3 -3
  32. package/.next/server/chunks/71.js +103 -61
  33. package/.next/server/chunks/74.js +268 -271
  34. package/.next/server/chunks/753.js +73 -28
  35. package/.next/server/chunks/779.js +8 -8
  36. package/.next/server/chunks/817.js +4007 -0
  37. package/.next/server/chunks/825.js +89 -89
  38. package/.next/server/chunks/854.js +4 -4
  39. package/.next/server/chunks/859.js +12 -12
  40. package/.next/server/chunks/98.js +4 -4
  41. package/.next/server/chunks/988.js +10 -10
  42. package/.next/server/middleware-build-manifest.js +1 -1
  43. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  44. package/.next/server/pages/404.js +42 -42
  45. package/.next/server/pages/404.js.nft.json +1 -1
  46. package/.next/server/pages/500.js +42 -42
  47. package/.next/server/pages/500.js.nft.json +1 -1
  48. package/.next/server/pages/[...slug].js +293 -171
  49. package/.next/server/pages/[...slug].js.nft.json +1 -1
  50. package/.next/server/pages/[slug]/p.js +645 -663
  51. package/.next/server/pages/[slug]/p.js.nft.json +1 -1
  52. package/.next/server/pages/_app.js +18 -18
  53. package/.next/server/pages/_app.js.nft.json +1 -1
  54. package/.next/server/pages/_document.js +30 -30
  55. package/.next/server/pages/_document.js.nft.json +1 -1
  56. package/.next/server/pages/_error.js +8 -8
  57. package/.next/server/pages/account.js +42 -42
  58. package/.next/server/pages/account.js.nft.json +1 -1
  59. package/.next/server/pages/api/graphql.js +146 -61
  60. package/.next/server/pages/api/graphql.js.nft.json +1 -1
  61. package/.next/server/pages/api/health/live.js +2 -2
  62. package/.next/server/pages/api/health/ready.js +2 -2
  63. package/.next/server/pages/api/preview.js +3 -3
  64. package/.next/server/pages/checkout.js +40 -40
  65. package/.next/server/pages/checkout.js.nft.json +1 -1
  66. package/.next/server/pages/en-US/404.html +2 -2
  67. package/.next/server/pages/en-US/500.html +2 -2
  68. package/.next/server/pages/en-US/account.html +2 -2
  69. package/.next/server/pages/en-US/checkout.html +2 -2
  70. package/.next/server/pages/en-US/login.html +2 -2
  71. package/.next/server/pages/en-US/s.html +2 -2
  72. package/.next/server/pages/en-US.html +2 -2
  73. package/.next/server/pages/index.js +53 -53
  74. package/.next/server/pages/index.js.nft.json +1 -1
  75. package/.next/server/pages/login.js +44 -44
  76. package/.next/server/pages/login.js.nft.json +1 -1
  77. package/.next/server/pages/s.js +183 -101
  78. package/.next/server/pages/s.js.nft.json +1 -1
  79. package/.next/server/pages-manifest.json +2 -2
  80. package/.next/static/chunks/{238-e5e4b2094f0e1df8.js → 238-86838f629f3d0aa4.js} +1 -1
  81. package/.next/static/chunks/{243-df6d1b248f7b4d3c.js → 243-ef9e49ef3df579c0.js} +1 -1
  82. package/.next/static/chunks/{709.7bc5a25ce30abda6.js → 709.daf1eddebf1e7952.js} +1 -1
  83. package/.next/static/chunks/932-33f45603c7d12a4b.js +1 -0
  84. package/.next/static/chunks/pages/[...slug]-362204c7e0b533cf.js +1 -0
  85. package/.next/static/chunks/pages/[slug]/p-885042c4b2b4f8ed.js +1 -0
  86. package/.next/static/chunks/pages/{index-d521ce4f4e2b89a6.js → index-79b05b0071c02fff.js} +1 -1
  87. package/.next/static/chunks/pages/s-e1bb00f8de6a386e.js +1 -0
  88. package/.next/static/chunks/{webpack-352e624909554726.js → webpack-88d120cefa1c4c09.js} +1 -1
  89. package/.next/static/wPqgZ8bYrPY473PZzuIX_/_buildManifest.js +1 -0
  90. package/.next/trace +80 -80
  91. package/.turbo/turbo-build.log +8 -6
  92. package/.turbo/turbo-test.log +25 -0
  93. package/@generated/graphql/index.ts +183 -79
  94. package/@generated/graphql/persisted.json +5 -5
  95. package/@generated/graphql/schema.graphql +1053 -0
  96. package/api/index.ts +15 -0
  97. package/codegen.yml +2 -1
  98. package/generate.sh +71 -0
  99. package/index.ts +15 -0
  100. package/jest.config.js +6 -0
  101. package/package.json +33 -18
  102. package/src/components/cms/RenderSections.tsx +4 -5
  103. package/src/components/product/ProductGrid/ProductGrid.tsx +4 -3
  104. package/src/components/sections/Breadcrumb/Breadcrumb.tsx +17 -22
  105. package/src/components/sections/CrossSellingShelf/CrossSellingShelf.tsx +8 -6
  106. package/src/components/sections/ProductDetails/ProductDetails.tsx +23 -33
  107. package/src/components/sections/ProductGallery/ProductGallery.tsx +15 -26
  108. package/src/components/sections/ProductShelf/ProductShelf.tsx +1 -1
  109. package/src/components/sections/ProductTiles/ProductTiles.tsx +4 -3
  110. package/src/components/templates/ProductListingPage/ProductListing.tsx +95 -0
  111. package/src/components/templates/ProductListingPage/ProductListingPage.tsx +34 -68
  112. package/src/components/templates/SearchPage/SearchPage.tsx +81 -0
  113. package/src/components/templates/SearchPage/index.ts +2 -0
  114. package/src/components/ui/ProductGallery/ProductGallery.tsx +24 -16
  115. package/src/components/ui/ProductGallery/ProductGalleryPage.tsx +8 -7
  116. package/src/components/ui/ProductGallery/useDelayedFacets.ts +3 -3
  117. package/src/components/ui/ProductShelf/ProductShelf.tsx +3 -2
  118. package/src/customizations/fragments/ClientProduct.ts +9 -0
  119. package/src/customizations/fragments/ClientProductGallery.ts +19 -0
  120. package/src/customizations/fragments/ClientProducts.ts +19 -0
  121. package/src/customizations/fragments/ServerCollectionPage.ts +9 -0
  122. package/src/customizations/fragments/ServerProductPage.ts +9 -0
  123. package/src/customizations/graphql/thirdParty/resolvers/index.ts +3 -0
  124. package/src/customizations/graphql/vtex/resolvers/index.ts +3 -0
  125. package/src/pages/[...slug].tsx +5 -3
  126. package/src/pages/[slug]/p.tsx +38 -18
  127. package/src/pages/s.tsx +22 -34
  128. package/src/sdk/graphql/useQuery.ts +17 -13
  129. package/src/sdk/overrides/PageProvider.tsx +78 -0
  130. package/src/sdk/product/useLocalizedVariables.ts +33 -0
  131. package/src/sdk/product/usePageProductsQuery.ts +139 -0
  132. package/src/{components/sections/ProductGallery/useGalleryQuery.ts → sdk/product/useProductGalleryQuery.ts} +12 -13
  133. package/src/sdk/product/{useProduct.ts → useProductQuery.ts} +10 -7
  134. package/src/sdk/product/useProductsPrefetch.ts +72 -0
  135. package/src/sdk/product/useProductsQuery.ts +17 -63
  136. package/src/server/generator/generateGraphQLSchemaFile.ts +3 -0
  137. package/src/server/generator/schema.ts +82 -0
  138. package/src/server/index.ts +34 -21
  139. package/src/server/options.ts +16 -0
  140. package/test/server/index.test.ts +146 -0
  141. package/.next/server/chunks/487.js +0 -9142
  142. package/.next/server/chunks/650.js +0 -9142
  143. package/.next/static/7SuqEgCuf5UtY9Gx-CYYB/_buildManifest.js +0 -1
  144. package/.next/static/chunks/603-d1c069aa8a349c86.js +0 -1
  145. package/.next/static/chunks/pages/[...slug]-ca533c74c22cb787.js +0 -1
  146. package/.next/static/chunks/pages/[slug]/p-7bb760bb3fcfc0bb.js +0 -1
  147. package/.next/static/chunks/pages/s-0e516ab36bb49c99.js +0 -1
  148. package/src/components/ui/ProductGallery/usePageProducts.ts +0 -48
  149. /package/.next/static/{7SuqEgCuf5UtY9Gx-CYYB → wPqgZ8bYrPY473PZzuIX_}/_ssgManifest.js +0 -0
@@ -1,5 +1,5 @@
1
- exports.id = 907;
2
- exports.ids = [907];
1
+ exports.id = 112;
2
+ exports.ids = [112];
3
3
  exports.modules = {
4
4
 
5
5
  /***/ 6133:
@@ -9,7 +9,7 @@ exports.modules = {
9
9
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
10
10
  /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
11
11
  /* harmony export */ });
12
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
12
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
13
13
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
14
14
 
15
15
  function EmptyState({ testId = 'fs-empty-state', title, titleIcon, variant = 'default', bkgColor = 'default', children, ...otherProps }) {
@@ -24,16 +24,16 @@ function EmptyState({ testId = 'fs-empty-state', title, titleIcon, variant = 'de
24
24
 
25
25
  /***/ }),
26
26
 
27
- /***/ 15699:
27
+ /***/ 5699:
28
28
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
29
29
 
30
30
  "use strict";
31
31
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
32
32
  /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
33
33
  /* harmony export */ });
34
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
34
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
35
35
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
36
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71516);
36
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1516);
37
37
 
38
38
 
39
39
  function Filter({ testId, title, indicesExpanded, onAccordionChange, children, }) {
@@ -46,16 +46,16 @@ function Filter({ testId, title, indicesExpanded, onAccordionChange, children, }
46
46
 
47
47
  /***/ }),
48
48
 
49
- /***/ 52815:
49
+ /***/ 2815:
50
50
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
51
51
 
52
52
  "use strict";
53
53
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
54
54
  /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
55
55
  /* harmony export */ });
56
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
56
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
57
57
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
58
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(94564);
58
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4564);
59
59
 
60
60
 
61
61
  function FilterFacetBoolean({ children }) {
@@ -66,7 +66,7 @@ function FilterFacetBoolean({ children }) {
66
66
 
67
67
  /***/ }),
68
68
 
69
- /***/ 11305:
69
+ /***/ 1305:
70
70
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
71
71
 
72
72
  "use strict";
@@ -77,7 +77,7 @@ __webpack_require__.d(__webpack_exports__, {
77
77
  });
78
78
 
79
79
  // EXTERNAL MODULE: external "react"
80
- var external_react_ = __webpack_require__(16689);
80
+ var external_react_ = __webpack_require__(6689);
81
81
  var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
82
82
  ;// CONCATENATED MODULE: ../components/dist/esm/atoms/Checkbox/Checkbox.js
83
83
 
@@ -87,9 +87,9 @@ const Checkbox = (0,external_react_.forwardRef)(function Checkbox({ testId = 'fs
87
87
  /* harmony default export */ const Checkbox_Checkbox = (Checkbox);
88
88
  //# sourceMappingURL=Checkbox.js.map
89
89
  // EXTERNAL MODULE: ../components/dist/esm/atoms/Label/Label.js
90
- var Label = __webpack_require__(31953);
90
+ var Label = __webpack_require__(1953);
91
91
  // EXTERNAL MODULE: ../components/dist/esm/atoms/Badge/Badge.js
92
- var Badge = __webpack_require__(40276);
92
+ var Badge = __webpack_require__(276);
93
93
  ;// CONCATENATED MODULE: ../components/dist/esm/organisms/Filter/FilterFacetBooleanItem.js
94
94
 
95
95
 
@@ -106,7 +106,7 @@ function FilterFacetBooleanItem({ testId, id, selected, value, quantity, facetKe
106
106
 
107
107
  /***/ }),
108
108
 
109
- /***/ 71355:
109
+ /***/ 1355:
110
110
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
111
111
 
112
112
  "use strict";
@@ -117,7 +117,7 @@ __webpack_require__.d(__webpack_exports__, {
117
117
  });
118
118
 
119
119
  // EXTERNAL MODULE: external "react"
120
- var external_react_ = __webpack_require__(16689);
120
+ var external_react_ = __webpack_require__(6689);
121
121
  var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
122
122
  ;// CONCATENATED MODULE: ../components/dist/esm/atoms/Slider/Slider.js
123
123
  /**
@@ -178,9 +178,9 @@ const Slider = (0,external_react_.forwardRef)(function Slider({ min, max, absolu
178
178
  /* harmony default export */ const Slider_Slider = (Slider);
179
179
  //# sourceMappingURL=Slider.js.map
180
180
  // EXTERNAL MODULE: ../components/dist/esm/atoms/Price/Price.js
181
- var Price = __webpack_require__(99767);
181
+ var Price = __webpack_require__(9767);
182
182
  // EXTERNAL MODULE: ../components/dist/esm/molecules/InputField/InputField.js
183
- var InputField = __webpack_require__(93779);
183
+ var InputField = __webpack_require__(3779);
184
184
  ;// CONCATENATED MODULE: ../components/dist/esm/organisms/PriceRange/PriceRange.js
185
185
 
186
186
 
@@ -272,18 +272,18 @@ function FilterFacetRange({ min, max, formatter, facetKey, onFacetChange, }) {
272
272
 
273
273
  /***/ }),
274
274
 
275
- /***/ 64199:
275
+ /***/ 4199:
276
276
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
277
277
 
278
278
  "use strict";
279
279
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
280
280
  /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
281
281
  /* harmony export */ });
282
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
282
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
283
283
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
284
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(40783);
285
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(67734);
286
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(27583);
284
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(783);
285
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7734);
286
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2837);
287
287
 
288
288
 
289
289
  function FilterFacets({ testId, label, index, children, type, }) {
@@ -296,7 +296,7 @@ function FilterFacets({ testId, label, index, children, type, }) {
296
296
 
297
297
  /***/ }),
298
298
 
299
- /***/ 21386:
299
+ /***/ 1386:
300
300
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
301
301
 
302
302
  "use strict";
@@ -309,20 +309,20 @@ __webpack_require__.d(__webpack_exports__, {
309
309
  });
310
310
 
311
311
  // EXTERNAL MODULE: ../sdk/dist/search/useSearch.js + 1 modules
312
- var useSearch = __webpack_require__(73221);
312
+ var useSearch = __webpack_require__(3221);
313
313
  // EXTERNAL MODULE: external "react"
314
- var external_react_ = __webpack_require__(16689);
314
+ var external_react_ = __webpack_require__(6689);
315
315
  var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
316
316
  // EXTERNAL MODULE: ../components/dist/esm/hooks/useFadeEffect.js
317
- var useFadeEffect = __webpack_require__(13666);
317
+ var useFadeEffect = __webpack_require__(3666);
318
318
  // EXTERNAL MODULE: ../components/dist/esm/hooks/UIProvider.js
319
- var UIProvider = __webpack_require__(16652);
319
+ var UIProvider = __webpack_require__(6652);
320
320
  // EXTERNAL MODULE: ../components/dist/esm/organisms/SlideOver/SlideOver.js
321
- var SlideOver = __webpack_require__(77215);
321
+ var SlideOver = __webpack_require__(7215);
322
322
  // EXTERNAL MODULE: ../components/dist/esm/organisms/SlideOver/SlideOverHeader.js
323
- var SlideOverHeader = __webpack_require__(45049);
323
+ var SlideOverHeader = __webpack_require__(5049);
324
324
  // EXTERNAL MODULE: ../components/dist/esm/atoms/Button/Button.js
325
- var Button = __webpack_require__(83339);
325
+ var Button = __webpack_require__(3339);
326
326
  ;// CONCATENATED MODULE: ../components/dist/esm/organisms/Filter/FilterSlider.js
327
327
 
328
328
 
@@ -347,22 +347,22 @@ function FilterSlider({ title, size, direction, children, applyBtnProps, clearBt
347
347
  /* harmony default export */ const Filter_FilterSlider = (FilterSlider);
348
348
  //# sourceMappingURL=FilterSlider.js.map
349
349
  // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/Filter.js
350
- var Filter = __webpack_require__(15699);
350
+ var Filter = __webpack_require__(5699);
351
351
  // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacets.js
352
- var FilterFacets = __webpack_require__(64199);
352
+ var FilterFacets = __webpack_require__(4199);
353
353
  // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacetBoolean.js
354
- var FilterFacetBoolean = __webpack_require__(52815);
354
+ var FilterFacetBoolean = __webpack_require__(2815);
355
355
  // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacetBooleanItem.js + 1 modules
356
- var FilterFacetBooleanItem = __webpack_require__(11305);
356
+ var FilterFacetBooleanItem = __webpack_require__(1305);
357
357
  // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacetRange.js + 2 modules
358
- var FilterFacetRange = __webpack_require__(71355);
358
+ var FilterFacetRange = __webpack_require__(1355);
359
359
  // EXTERNAL MODULE: ./src/sdk/product/useFormattedPrice.ts
360
- var useFormattedPrice = __webpack_require__(95346);
360
+ var useFormattedPrice = __webpack_require__(5346);
361
361
  // EXTERNAL MODULE: ./src/components/search/Filter/section.module.scss
362
- var section_module = __webpack_require__(65813);
362
+ var section_module = __webpack_require__(5813);
363
363
  var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
364
364
  // EXTERNAL MODULE: external "react/jsx-runtime"
365
- var jsx_runtime_ = __webpack_require__(20997);
365
+ var jsx_runtime_ = __webpack_require__(997);
366
366
  ;// CONCATENATED MODULE: ./src/components/search/Filter/FilterSlider.tsx
367
367
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
368
368
 
@@ -479,7 +479,7 @@ function FilterSlider_FilterSlider({
479
479
 
480
480
  /***/ }),
481
481
 
482
- /***/ 36171:
482
+ /***/ 6171:
483
483
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
484
484
 
485
485
  "use strict";
@@ -492,13 +492,13 @@ __webpack_require__.d(__webpack_exports__, {
492
492
  // UNUSED EXPORTS: FilterSlider
493
493
 
494
494
  // EXTERNAL MODULE: ../components/dist/esm/hooks/UIProvider.js
495
- var UIProvider = __webpack_require__(16652);
495
+ var UIProvider = __webpack_require__(6652);
496
496
  // EXTERNAL MODULE: external "react"
497
- var external_react_ = __webpack_require__(16689);
497
+ var external_react_ = __webpack_require__(6689);
498
498
  // EXTERNAL MODULE: ../sdk/dist/search/facets.js
499
- var facets = __webpack_require__(9664);
499
+ var facets = __webpack_require__(8492);
500
500
  // EXTERNAL MODULE: ../sdk/dist/search/useSearch.js + 1 modules
501
- var useSearch = __webpack_require__(73221);
501
+ var useSearch = __webpack_require__(3221);
502
502
  ;// CONCATENATED MODULE: ./src/components/search/Filter/useFilter.ts
503
503
  const _excluded = ["value"];
504
504
 
@@ -628,9 +628,9 @@ const useFilter = allFacets => {
628
628
  };
629
629
  };
630
630
  // EXTERNAL MODULE: ./src/components/sections/ProductGallery/Overrides.tsx + 2 modules
631
- var Overrides = __webpack_require__(90217);
631
+ var Overrides = __webpack_require__(217);
632
632
  // EXTERNAL MODULE: external "react/jsx-runtime"
633
- var jsx_runtime_ = __webpack_require__(20997);
633
+ var jsx_runtime_ = __webpack_require__(997);
634
634
  ;// CONCATENATED MODULE: ./src/components/search/Filter/Filter.tsx
635
635
  function Filter_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
636
636
 
@@ -677,14 +677,14 @@ function Filter({
677
677
  const fragment = "unknown";
678
678
  /* harmony default export */ const Filter_Filter = (Filter);
679
679
  // EXTERNAL MODULE: ./src/components/search/Filter/FilterSlider.tsx + 1 modules
680
- var FilterSlider = __webpack_require__(21386);
680
+ var FilterSlider = __webpack_require__(1386);
681
681
  ;// CONCATENATED MODULE: ./src/components/search/Filter/index.ts
682
682
 
683
683
 
684
684
 
685
685
  /***/ }),
686
686
 
687
- /***/ 53142:
687
+ /***/ 3142:
688
688
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
689
689
 
690
690
  "use strict";
@@ -695,12 +695,12 @@ __webpack_require__.d(__webpack_exports__, {
695
695
  });
696
696
 
697
697
  // EXTERNAL MODULE: ../sdk/dist/search/useSearch.js + 1 modules
698
- var useSearch = __webpack_require__(73221);
698
+ var useSearch = __webpack_require__(3221);
699
699
  // EXTERNAL MODULE: external "react"
700
- var external_react_ = __webpack_require__(16689);
700
+ var external_react_ = __webpack_require__(6689);
701
701
  var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
702
702
  // EXTERNAL MODULE: ../components/dist/esm/atoms/Label/Label.js
703
- var Label = __webpack_require__(31953);
703
+ var Label = __webpack_require__(1953);
704
704
  // EXTERNAL MODULE: ../components/dist/esm/atoms/Icon/Icon.js
705
705
  var Icon = __webpack_require__(2614);
706
706
  ;// CONCATENATED MODULE: ../components/dist/esm/atoms/Select/Select.js
@@ -724,7 +724,7 @@ const SelectField = (0,external_react_.forwardRef)(function SelectField({ id, la
724
724
  /* harmony default export */ const SelectField_SelectField = (SelectField);
725
725
  //# sourceMappingURL=SelectField.js.map
726
726
  // EXTERNAL MODULE: external "react/jsx-runtime"
727
- var jsx_runtime_ = __webpack_require__(20997);
727
+ var jsx_runtime_ = __webpack_require__(997);
728
728
  ;// CONCATENATED MODULE: ./src/components/search/Sort/Sort.tsx
729
729
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
730
730
 
@@ -782,7 +782,7 @@ function Sort({
782
782
 
783
783
  /***/ }),
784
784
 
785
- /***/ 95878:
785
+ /***/ 5878:
786
786
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
787
787
 
788
788
  "use strict";
@@ -791,8 +791,8 @@ function Sort({
791
791
  /* harmony export */ });
792
792
  /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6133);
793
793
  /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2614);
794
- /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(13922);
795
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
794
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3922);
795
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(997);
796
796
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
797
797
 
798
798
 
@@ -838,7 +838,7 @@ function EmptyGallery() {
838
838
 
839
839
  /***/ }),
840
840
 
841
- /***/ 90217:
841
+ /***/ 217:
842
842
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
843
843
 
844
844
  "use strict";
@@ -859,35 +859,35 @@ __webpack_require__.d(__webpack_exports__, {
859
859
  });
860
860
 
861
861
  // EXTERNAL MODULE: external "react"
862
- var external_react_ = __webpack_require__(16689);
862
+ var external_react_ = __webpack_require__(6689);
863
863
  // EXTERNAL MODULE: ../components/dist/esm/atoms/Button/Button.js
864
- var Button = __webpack_require__(83339);
864
+ var Button = __webpack_require__(3339);
865
865
  // EXTERNAL MODULE: ../components/dist/esm/atoms/Icon/Icon.js
866
866
  var Icon = __webpack_require__(2614);
867
867
  // EXTERNAL MODULE: ../components/dist/esm/atoms/Skeleton/Skeleton.js
868
- var Skeleton = __webpack_require__(10792);
868
+ var Skeleton = __webpack_require__(792);
869
869
  // EXTERNAL MODULE: ../components/dist/esm/molecules/LinkButton/LinkButton.js
870
- var LinkButton = __webpack_require__(13922);
870
+ var LinkButton = __webpack_require__(3922);
871
871
  // EXTERNAL MODULE: ./src/components/product/ProductCard/index.ts + 4 modules
872
872
  var ProductCard = __webpack_require__(8091);
873
873
  // EXTERNAL MODULE: ../sdk/dist/search/useSearch.js + 1 modules
874
- var useSearch = __webpack_require__(73221);
874
+ var useSearch = __webpack_require__(3221);
875
875
  // EXTERNAL MODULE: ../sdk/dist/search/facets.js
876
- var search_facets = __webpack_require__(9664);
876
+ var search_facets = __webpack_require__(8492);
877
877
  // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/Filter.js
878
- var Filter = __webpack_require__(15699);
878
+ var Filter = __webpack_require__(5699);
879
879
  // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacets.js
880
- var FilterFacets = __webpack_require__(64199);
880
+ var FilterFacets = __webpack_require__(4199);
881
881
  // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacetBoolean.js
882
- var FilterFacetBoolean = __webpack_require__(52815);
882
+ var FilterFacetBoolean = __webpack_require__(2815);
883
883
  // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacetBooleanItem.js + 1 modules
884
- var FilterFacetBooleanItem = __webpack_require__(11305);
884
+ var FilterFacetBooleanItem = __webpack_require__(1305);
885
885
  // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacetRange.js + 2 modules
886
- var FilterFacetRange = __webpack_require__(71355);
886
+ var FilterFacetRange = __webpack_require__(1355);
887
887
  // EXTERNAL MODULE: ./src/sdk/product/useFormattedPrice.ts
888
- var useFormattedPrice = __webpack_require__(95346);
888
+ var useFormattedPrice = __webpack_require__(5346);
889
889
  // EXTERNAL MODULE: external "react/jsx-runtime"
890
- var jsx_runtime_ = __webpack_require__(20997);
890
+ var jsx_runtime_ = __webpack_require__(997);
891
891
  ;// CONCATENATED MODULE: ./src/components/search/Filter/FilterDesktop.tsx
892
892
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
893
893
 
@@ -969,7 +969,7 @@ function FilterDesktop({
969
969
 
970
970
  /* harmony default export */ const Filter_FilterDesktop = (FilterDesktop);
971
971
  // EXTERNAL MODULE: ./src/utils/overrides.ts
972
- var overrides = __webpack_require__(59104);
972
+ var overrides = __webpack_require__(9104);
973
973
  ;// CONCATENATED MODULE: ./src/customizations/components/overrides/ProductGallery.tsx
974
974
  // This is an example of how it can be used on the starter.
975
975
  const SECTION = 'ProductGallery';
@@ -982,7 +982,7 @@ const override = {
982
982
 
983
983
 
984
984
 
985
- const FilterSlider = /*#__PURE__*/(0,external_react_.lazy)(() => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 21386)));
985
+ const FilterSlider = /*#__PURE__*/(0,external_react_.lazy)(() => Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 1386)));
986
986
 
987
987
 
988
988
  const {
@@ -1014,7 +1014,7 @@ const {
1014
1014
 
1015
1015
  /***/ }),
1016
1016
 
1017
- /***/ 58273:
1017
+ /***/ 8273:
1018
1018
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
1019
1019
 
1020
1020
  "use strict";
@@ -1022,30 +1022,23 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
1022
1022
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1023
1023
  /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1024
1024
  /* harmony export */ });
1025
- /* harmony import */ var src_sdk_tests_mark__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82541);
1026
- /* harmony import */ var src_components_ui_ProductGallery_ProductGallery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(25333);
1027
- /* harmony import */ var _Section__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(57067);
1028
- /* harmony import */ var _EmptyGallery__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(95878);
1029
- /* harmony import */ var _section_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(44614);
1025
+ /* harmony import */ var src_sdk_tests_mark__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2541);
1026
+ /* harmony import */ var src_components_ui_ProductGallery_ProductGallery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4061);
1027
+ /* harmony import */ var _Section__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7067);
1028
+ /* harmony import */ var _EmptyGallery__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5878);
1029
+ /* harmony import */ var _section_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(4614);
1030
1030
  /* harmony import */ var _section_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_section_module_scss__WEBPACK_IMPORTED_MODULE_6__);
1031
- /* harmony import */ var _useGalleryQuery__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(93840);
1032
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20997);
1031
+ /* harmony import */ var src_sdk_overrides_PageProvider__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(5953);
1032
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(997);
1033
1033
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__);
1034
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_components_ui_ProductGallery_ProductGallery__WEBPACK_IMPORTED_MODULE_1__, _useGalleryQuery__WEBPACK_IMPORTED_MODULE_4__]);
1035
- ([src_components_ui_ProductGallery_ProductGallery__WEBPACK_IMPORTED_MODULE_1__, _useGalleryQuery__WEBPACK_IMPORTED_MODULE_4__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
1036
- const _excluded = ["context"];
1037
-
1034
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_components_ui_ProductGallery_ProductGallery__WEBPACK_IMPORTED_MODULE_1__]);
1035
+ src_components_ui_ProductGallery_ProductGallery__WEBPACK_IMPORTED_MODULE_1__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1038
1036
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
1039
1037
 
1040
1038
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1041
1039
 
1042
1040
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
1043
1041
 
1044
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
1045
-
1046
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
1047
-
1048
-
1049
1042
 
1050
1043
 
1051
1044
 
@@ -1053,23 +1046,14 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
1053
1046
 
1054
1047
 
1055
1048
 
1056
- const isSearch = x => x === undefined || x?.title != undefined || x?.searchTerm != undefined;
1057
-
1058
- const isCollection = x => x?.seo != undefined && x?.seo != null && x?.sku == undefined;
1059
1049
 
1060
1050
  function ProductGallerySection(_ref) {
1061
- let {
1062
- context
1063
- } = _ref,
1064
- otherProps = _objectWithoutProperties(_ref, _excluded);
1065
-
1066
- const [title, searchTerm] = isSearch(context) ? [context?.title, context?.searchTerm] : isCollection(context) ? [context?.seo?.title] : [''];
1067
- const {
1068
- data: productGalleryData
1069
- } = (0,_useGalleryQuery__WEBPACK_IMPORTED_MODULE_4__/* .useGalleryQuery */ .r)();
1070
- const totalCount = productGalleryData?.search.products.pageInfo.totalCount ?? 0;
1051
+ let otherProps = Object.assign({}, _ref);
1052
+ const context = (0,src_sdk_overrides_PageProvider__WEBPACK_IMPORTED_MODULE_4__/* .usePage */ .qt)();
1053
+ const [title, searchTerm] = (0,src_sdk_overrides_PageProvider__WEBPACK_IMPORTED_MODULE_4__/* .isSearchPage */ .En)(context) ? [context?.data?.title, context?.data?.searchTerm] : (0,src_sdk_overrides_PageProvider__WEBPACK_IMPORTED_MODULE_4__/* .isPLP */ .OJ)(context) ? [context?.data?.collection?.seo?.title] : [''];
1054
+ const totalCount = context?.data?.search?.products?.pageInfo?.totalCount ?? 0;
1071
1055
 
1072
- if (productGalleryData && totalCount === 0) {
1056
+ if (context?.data?.search?.products && totalCount === 0) {
1073
1057
  return /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx(_Section__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
1074
1058
  className: `${(_section_module_scss__WEBPACK_IMPORTED_MODULE_6___default().section)} section-product-gallery`,
1075
1059
  children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx("section", {
@@ -1085,7 +1069,6 @@ function ProductGallerySection(_ref) {
1085
1069
  children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx(src_components_ui_ProductGallery_ProductGallery__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, _objectSpread({
1086
1070
  title: title,
1087
1071
  searchTerm: searchTerm,
1088
- productGalleryData: productGalleryData,
1089
1072
  totalCount: totalCount
1090
1073
  }, otherProps))
1091
1074
  });
@@ -1098,7 +1081,7 @@ __webpack_async_result__();
1098
1081
 
1099
1082
  /***/ }),
1100
1083
 
1101
- /***/ 82618:
1084
+ /***/ 2618:
1102
1085
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
1103
1086
 
1104
1087
  "use strict";
@@ -1106,7 +1089,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
1106
1089
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1107
1090
  /* harmony export */ "Z": () => (/* reexport safe */ _ProductGallery__WEBPACK_IMPORTED_MODULE_0__.Z)
1108
1091
  /* harmony export */ });
1109
- /* harmony import */ var _ProductGallery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(58273);
1092
+ /* harmony import */ var _ProductGallery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8273);
1110
1093
  var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_ProductGallery__WEBPACK_IMPORTED_MODULE_0__]);
1111
1094
  _ProductGallery__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1112
1095
 
@@ -1115,53 +1098,7 @@ __webpack_async_result__();
1115
1098
 
1116
1099
  /***/ }),
1117
1100
 
1118
- /***/ 93840:
1119
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
1120
-
1121
- "use strict";
1122
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1123
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1124
- /* harmony export */ "r": () => (/* binding */ useGalleryQuery)
1125
- /* harmony export */ });
1126
- /* unused harmony export query */
1127
- /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(73221);
1128
- /* harmony import */ var src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(77732);
1129
- /* harmony import */ var _sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(24867);
1130
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__, _sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_1__]);
1131
- ([src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__, _sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_1__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
1132
-
1133
-
1134
-
1135
- /**
1136
- * This query is run on the browser and contains
1137
- * the current search state of the user
1138
- */
1139
-
1140
- const query = "ProductGalleryQuery";
1141
- const useGalleryQuery = () => {
1142
- const {
1143
- state: {
1144
- term,
1145
- sort,
1146
- selectedFacets
1147
- },
1148
- itemsPerPage
1149
- } = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_2__/* .useSearch */ .R)();
1150
- const localizedVariables = (0,_sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_1__/* .useLocalizedVariables */ .yb)({
1151
- first: itemsPerPage,
1152
- after: '0',
1153
- sort,
1154
- term: term ?? '',
1155
- selectedFacets
1156
- });
1157
- return (0,src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__/* .useQuery */ .aM)(query, localizedVariables);
1158
- };
1159
- __webpack_async_result__();
1160
- } catch(e) { __webpack_async_result__(e); } });
1161
-
1162
- /***/ }),
1163
-
1164
- /***/ 25473:
1101
+ /***/ 5473:
1165
1102
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1166
1103
 
1167
1104
  "use strict";
@@ -1172,9 +1109,9 @@ __webpack_require__.d(__webpack_exports__, {
1172
1109
  });
1173
1110
 
1174
1111
  // EXTERNAL MODULE: ../components/dist/esm/atoms/Skeleton/Skeleton.js
1175
- var Skeleton = __webpack_require__(10792);
1112
+ var Skeleton = __webpack_require__(792);
1176
1113
  // EXTERNAL MODULE: external "react/jsx-runtime"
1177
- var jsx_runtime_ = __webpack_require__(20997);
1114
+ var jsx_runtime_ = __webpack_require__(997);
1178
1115
  ;// CONCATENATED MODULE: ./src/components/skeletons/FilterSkeleton/FilterSkeleton.tsx
1179
1116
 
1180
1117
 
@@ -1229,7 +1166,7 @@ function FilterSkeleton({
1229
1166
 
1230
1167
  /***/ }),
1231
1168
 
1232
- /***/ 89913:
1169
+ /***/ 9913:
1233
1170
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1234
1171
 
1235
1172
  "use strict";
@@ -1240,11 +1177,11 @@ __webpack_require__.d(__webpack_exports__, {
1240
1177
  });
1241
1178
 
1242
1179
  // EXTERNAL MODULE: ./src/constants.ts
1243
- var constants = __webpack_require__(18459);
1180
+ var constants = __webpack_require__(8459);
1244
1181
  // EXTERNAL MODULE: ./src/components/skeletons/ProductCardSkeleton/index.ts + 1 modules
1245
- var ProductCardSkeleton = __webpack_require__(73288);
1182
+ var ProductCardSkeleton = __webpack_require__(3288);
1246
1183
  // EXTERNAL MODULE: external "react/jsx-runtime"
1247
- var jsx_runtime_ = __webpack_require__(20997);
1184
+ var jsx_runtime_ = __webpack_require__(997);
1248
1185
  ;// CONCATENATED MODULE: ./src/components/skeletons/ProductGridSkeleton/ProductGridSkeleton.tsx
1249
1186
 
1250
1187
 
@@ -1277,7 +1214,7 @@ function ProductGridSkeleton({
1277
1214
 
1278
1215
  /***/ }),
1279
1216
 
1280
- /***/ 25333:
1217
+ /***/ 4061:
1281
1218
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
1282
1219
 
1283
1220
  "use strict";
@@ -1285,24 +1222,25 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
1285
1222
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1286
1223
  /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1287
1224
  /* harmony export */ });
1288
- /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(73221);
1289
- /* harmony import */ var next_seo__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16641);
1225
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(3221);
1226
+ /* harmony import */ var next_seo__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6641);
1290
1227
  /* harmony import */ var next_seo__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_seo__WEBPACK_IMPORTED_MODULE_0__);
1291
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
1228
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6689);
1292
1229
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
1293
- /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(16652);
1294
- /* harmony import */ var src_components_search_Filter__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(36171);
1295
- /* harmony import */ var src_components_search_Sort__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(53142);
1296
- /* harmony import */ var src_components_skeletons_FilterSkeleton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(25473);
1297
- /* harmony import */ var src_components_skeletons_ProductGridSkeleton__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(89913);
1298
- /* harmony import */ var _useDelayedFacets__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(6341);
1299
- /* harmony import */ var _useDelayedPagination__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(77184);
1300
- /* harmony import */ var _usePageProducts__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(49521);
1301
- /* harmony import */ var src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(90217);
1302
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(20997);
1303
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__);
1304
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_usePageProducts__WEBPACK_IMPORTED_MODULE_8__]);
1305
- _usePageProducts__WEBPACK_IMPORTED_MODULE_8__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1230
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(6652);
1231
+ /* harmony import */ var src_components_search_Filter__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6171);
1232
+ /* harmony import */ var src_components_search_Sort__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3142);
1233
+ /* harmony import */ var src_components_skeletons_FilterSkeleton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(5473);
1234
+ /* harmony import */ var src_components_skeletons_ProductGridSkeleton__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(9913);
1235
+ /* harmony import */ var src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(217);
1236
+ /* harmony import */ var _useDelayedFacets__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(6341);
1237
+ /* harmony import */ var _useDelayedPagination__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(7184);
1238
+ /* harmony import */ var src_sdk_overrides_PageProvider__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(5953);
1239
+ /* harmony import */ var src_sdk_product_useProductsPrefetch__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(4923);
1240
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(997);
1241
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__);
1242
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_product_useProductsPrefetch__WEBPACK_IMPORTED_MODULE_10__]);
1243
+ src_sdk_product_useProductsPrefetch__WEBPACK_IMPORTED_MODULE_10__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1306
1244
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
1307
1245
 
1308
1246
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
@@ -1323,16 +1261,16 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
1323
1261
 
1324
1262
 
1325
1263
 
1326
- const GalleryPage = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.lazy)(() => Promise.all(/* import() */[__webpack_require__.e(184), __webpack_require__.e(289)]).then(__webpack_require__.bind(__webpack_require__, 75289)));
1327
1264
 
1328
- const GalleryPageSkeleton = /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_skeletons_ProductGridSkeleton__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
1265
+ const ProductGalleryPage = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.lazy)(() => Promise.all(/* import() */[__webpack_require__.e(184), __webpack_require__.e(289)]).then(__webpack_require__.bind(__webpack_require__, 5289)));
1266
+
1267
+ const GalleryPageSkeleton = /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_skeletons_ProductGridSkeleton__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
1329
1268
  loading: true
1330
1269
  });
1331
1270
 
1332
1271
  function ProductGallery({
1333
1272
  title,
1334
1273
  searchTerm,
1335
- productGalleryData,
1336
1274
  totalCount,
1337
1275
  searchTermLabel,
1338
1276
  totalCountLabel,
@@ -1344,126 +1282,130 @@ function ProductGallery({
1344
1282
  }) {
1345
1283
  const {
1346
1284
  openFilter
1347
- } = (0,_faststore_ui__WEBPACK_IMPORTED_MODULE_11__/* .useUI */ .l)();
1285
+ } = (0,_faststore_ui__WEBPACK_IMPORTED_MODULE_12__/* .useUI */ .l)();
1348
1286
  const {
1349
1287
  pages,
1350
1288
  addNextPage,
1351
- addPrevPage
1352
- } = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_12__/* .useSearch */ .R)();
1353
- const facets = (0,_useDelayedFacets__WEBPACK_IMPORTED_MODULE_6__/* .useDelayedFacets */ .u)(productGalleryData);
1289
+ addPrevPage,
1290
+ itemsPerPage
1291
+ } = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_13__/* .useSearch */ .R)();
1292
+ const context = (0,src_sdk_overrides_PageProvider__WEBPACK_IMPORTED_MODULE_9__/* .usePage */ .qt)();
1293
+ const data = context?.data;
1294
+ const facets = (0,_useDelayedFacets__WEBPACK_IMPORTED_MODULE_7__/* .useDelayedFacets */ .u)(data) ?? [];
1354
1295
  const {
1355
1296
  next,
1356
1297
  prev
1357
- } = (0,_useDelayedPagination__WEBPACK_IMPORTED_MODULE_7__/* .useDelayedPagination */ .g)(totalCount);
1358
- (0,_usePageProducts__WEBPACK_IMPORTED_MODULE_8__/* .useProductsPrefetch */ .F)(prev ? prev.cursor : null);
1359
- (0,_usePageProducts__WEBPACK_IMPORTED_MODULE_8__/* .useProductsPrefetch */ .F)(next ? next.cursor : null);
1360
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("section", {
1298
+ } = (0,_useDelayedPagination__WEBPACK_IMPORTED_MODULE_8__/* .useDelayedPagination */ .g)(totalCount);
1299
+ (0,src_sdk_product_useProductsPrefetch__WEBPACK_IMPORTED_MODULE_10__/* .useProductsPrefetch */ .Fl)(prev ? prev.cursor : null);
1300
+ (0,src_sdk_product_useProductsPrefetch__WEBPACK_IMPORTED_MODULE_10__/* .useProductsPrefetch */ .Fl)(next ? next.cursor : null);
1301
+ const hasFacets = Boolean(data?.search?.facets) && data.search.facets.length > 0;
1302
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsxs)("section", {
1361
1303
  "data-testid": "product-gallery",
1362
1304
  "data-fs-product-listing": true,
1363
- children: [searchTerm && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx("header", {
1305
+ children: [searchTerm && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx("header", {
1364
1306
  "data-fs-product-listing-search-term": true,
1365
1307
  "data-fs-content": "product-gallery",
1366
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("h1", {
1367
- children: [searchTermLabel, " ", /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx("span", {
1308
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsxs)("h1", {
1309
+ children: [searchTermLabel, " ", /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx("span", {
1368
1310
  children: searchTerm
1369
1311
  })]
1370
1312
  })
1371
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("div", {
1313
+ }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsxs)("div", {
1372
1314
  "data-fs-product-listing-content-grid": true,
1373
1315
  "data-fs-content": "product-gallery",
1374
- children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx("div", {
1316
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx("div", {
1375
1317
  "data-fs-product-listing-filters": true,
1376
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_skeletons_FilterSkeleton__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
1318
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_skeletons_FilterSkeleton__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
1377
1319
  loading: facets?.length === 0,
1378
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_search_Filter__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .C, {
1320
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_search_Filter__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .C, {
1379
1321
  facets: facets,
1380
1322
  filter: filter
1381
1323
  })
1382
1324
  })
1383
- }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx("div", {
1325
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx("div", {
1384
1326
  "data-fs-product-listing-results-count": true,
1385
1327
  "data-count": totalCount,
1386
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .ResultsCountSkeleton.Component */ .k.Component, _objectSpread(_objectSpread({
1328
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .ResultsCountSkeleton.Component */ .k.Component, _objectSpread(_objectSpread({
1387
1329
  "data-fs-product-listing-results-count-skeleton": true,
1388
1330
  size: {
1389
1331
  width: '100%',
1390
1332
  height: '1.5rem'
1391
1333
  }
1392
- }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .ResultsCountSkeleton.props */ .k.props), {}, {
1334
+ }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .ResultsCountSkeleton.props */ .k.props), {}, {
1393
1335
  // Dynamic props shouldn't be overridable
1394
1336
  // This decision can be reviewed later if needed
1395
- loading: !productGalleryData,
1396
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("h2", {
1337
+ loading: !data?.search,
1338
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsxs)("h2", {
1397
1339
  "data-testid": "total-product-count",
1398
1340
  children: [totalCount, " ", totalCountLabel]
1399
1341
  })
1400
1342
  }))
1401
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("div", {
1343
+ }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsxs)("div", {
1402
1344
  "data-fs-product-listing-sort": true,
1403
- children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .SortSkeleton.Component */ .SZ.Component, _objectSpread(_objectSpread({
1345
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .SortSkeleton.Component */ .SZ.Component, _objectSpread(_objectSpread({
1404
1346
  "data-fs-product-listing-sort-skeleton": true,
1405
1347
  size: {
1406
1348
  width: 'auto',
1407
1349
  height: '1.5rem'
1408
1350
  }
1409
- }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .SortSkeleton.props */ .SZ.props), {}, {
1351
+ }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .SortSkeleton.props */ .SZ.props), {}, {
1410
1352
  // Dynamic props shouldn't be overridable
1411
1353
  // This decision can be reviewed later if needed
1412
1354
  loading: facets?.length === 0,
1413
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_search_Sort__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
1355
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_search_Sort__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
1414
1356
  label: sortBySelector?.label,
1415
1357
  options: sortBySelector?.options
1416
1358
  })
1417
- })), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .FilterButtonSkeleton.Component */ .hZ.Component, _objectSpread(_objectSpread({
1359
+ })), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .FilterButtonSkeleton.Component */ .hZ.Component, _objectSpread(_objectSpread({
1418
1360
  "data-fs-product-listing-filter-button-skeleton": true,
1419
1361
  size: {
1420
1362
  width: '6rem',
1421
1363
  height: '1.5rem'
1422
1364
  }
1423
- }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .FilterButtonSkeleton.props */ .hZ.props), {}, {
1365
+ }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .FilterButtonSkeleton.props */ .hZ.props), {}, {
1424
1366
  // Dynamic props shouldn't be overridable
1425
1367
  // This decision can be reviewed later if needed
1426
1368
  loading: facets?.length === 0,
1427
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .MobileFilterButton.Component */ .$B.Component, _objectSpread(_objectSpread({
1369
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .MobileFilterButton.Component */ .$B.Component, _objectSpread(_objectSpread({
1428
1370
  variant: "tertiary",
1429
1371
  "data-testid": "open-filter-button",
1430
- icon: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .FilterIcon.Component */ .k1.Component, _objectSpread(_objectSpread({
1372
+ icon: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .FilterIcon.Component */ .k1.Component, _objectSpread(_objectSpread({
1431
1373
  width: 16,
1432
1374
  height: 16
1433
- }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .FilterIcon.props */ .k1.props), {}, {
1434
- name: filter?.mobileOnly?.filterButton?.icon?.icon ?? src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .FilterIcon.props.name */ .k1.props.name,
1435
- "aria-label": filter?.mobileOnly?.filterButton?.icon?.alt ?? src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .FilterIcon.props["aria-label"] */ .k1.props["aria-label"]
1375
+ }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .FilterIcon.props */ .k1.props), {}, {
1376
+ name: filter?.mobileOnly?.filterButton?.icon?.icon ?? src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .FilterIcon.props.name */ .k1.props.name,
1377
+ "aria-label": filter?.mobileOnly?.filterButton?.icon?.alt ?? src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .FilterIcon.props["aria-label"] */ .k1.props["aria-label"]
1436
1378
  })),
1437
1379
  iconPosition: "left"
1438
- }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .MobileFilterButton.props */ .$B.props), {}, {
1380
+ }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .MobileFilterButton.props */ .$B.props), {}, {
1439
1381
  // Dynamic props shouldn't be overridable
1440
1382
  // This decision can be reviewed later if needed
1441
1383
  onClick: openFilter,
1442
1384
  children: filter?.mobileOnly?.filterButton?.label
1443
1385
  }))
1444
1386
  }))]
1445
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("div", {
1387
+ }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsxs)("div", {
1446
1388
  "data-fs-product-listing-results": true,
1447
- children: [prev !== false && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("div", {
1389
+ children: [prev !== false && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsxs)("div", {
1448
1390
  "data-fs-product-listing-pagination": "top",
1449
- children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(next_seo__WEBPACK_IMPORTED_MODULE_0__.NextSeo, {
1391
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(next_seo__WEBPACK_IMPORTED_MODULE_0__.NextSeo, {
1450
1392
  additionalLinkTags: [{
1451
1393
  rel: 'prev',
1452
1394
  href: prev.link
1453
1395
  }]
1454
- }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .LinkButtonPrev.Component */ .Rm.Component, _objectSpread(_objectSpread({
1396
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .LinkButtonPrev.Component */ .Rm.Component, _objectSpread(_objectSpread({
1455
1397
  rel: "prev",
1456
1398
  variant: "secondary",
1457
1399
  iconPosition: "left",
1458
- icon: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .PrevIcon.Component */ .gY.Component, _objectSpread(_objectSpread({
1400
+ icon: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .PrevIcon.Component */ .gY.Component, _objectSpread(_objectSpread({
1459
1401
  width: 16,
1460
1402
  height: 16,
1461
1403
  weight: "bold"
1462
- }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .PrevIcon.props */ .gY.props), {}, {
1463
- name: previousPageButton?.icon?.icon ?? src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .PrevIcon.props.name */ .gY.props.name,
1464
- "aria-label": previousPageButton?.icon?.alt ?? previousPageButton?.label ?? src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .PrevIcon.props["aria-label"] */ .gY.props["aria-label"]
1404
+ }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .PrevIcon.props */ .gY.props), {}, {
1405
+ name: previousPageButton?.icon?.icon ?? src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .PrevIcon.props.name */ .gY.props.name,
1406
+ "aria-label": previousPageButton?.icon?.alt ?? previousPageButton?.label ?? src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .PrevIcon.props["aria-label"] */ .gY.props["aria-label"]
1465
1407
  }))
1466
- }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .LinkButtonPrev.props */ .Rm.props), {}, {
1408
+ }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .LinkButtonPrev.props */ .Rm.props), {}, {
1467
1409
  // Dynamic props shouldn't be overridable
1468
1410
  // This decision can be reviewed later if needed
1469
1411
  onClick: e => {
@@ -1474,25 +1416,26 @@ function ProductGallery({
1474
1416
  href: prev.link,
1475
1417
  children: previousPageButton?.label
1476
1418
  }))]
1477
- }), productGalleryData ? /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(react__WEBPACK_IMPORTED_MODULE_1__.Suspense, {
1419
+ }), hasFacets ? /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(react__WEBPACK_IMPORTED_MODULE_1__.Suspense, {
1478
1420
  fallback: GalleryPageSkeleton,
1479
- children: pages.map(page => /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(GalleryPage, {
1421
+ children: pages.map(page => /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(ProductGalleryPage, {
1480
1422
  page: page,
1481
1423
  title: title,
1482
- productCard: productCard
1424
+ productCard: productCard,
1425
+ itemsPerPage: itemsPerPage
1483
1426
  }, `gallery-page-${page}`))
1484
- }) : GalleryPageSkeleton, next !== false && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("div", {
1427
+ }) : GalleryPageSkeleton, next !== false && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsxs)("div", {
1485
1428
  "data-fs-product-listing-pagination": "bottom",
1486
- children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(next_seo__WEBPACK_IMPORTED_MODULE_0__.NextSeo, {
1429
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(next_seo__WEBPACK_IMPORTED_MODULE_0__.NextSeo, {
1487
1430
  additionalLinkTags: [{
1488
1431
  rel: 'next',
1489
1432
  href: next.link
1490
1433
  }]
1491
- }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .LinkButtonNext.Component */ .tu.Component, _objectSpread(_objectSpread({
1434
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx(src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .LinkButtonNext.Component */ .tu.Component, _objectSpread(_objectSpread({
1492
1435
  testId: "show-more",
1493
1436
  rel: "next",
1494
1437
  variant: "secondary"
1495
- }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .LinkButtonNext.props */ .tu.props), {}, {
1438
+ }, src_components_sections_ProductGallery_Overrides__WEBPACK_IMPORTED_MODULE_6__/* .LinkButtonNext.props */ .tu.props), {}, {
1496
1439
  // Dynamic props shouldn't be overridable
1497
1440
  // This decision can be reviewed later if needed
1498
1441
  onClick: e => {
@@ -1522,14 +1465,14 @@ __webpack_async_result__();
1522
1465
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1523
1466
  /* harmony export */ "u": () => (/* binding */ useDelayedFacets)
1524
1467
  /* harmony export */ });
1525
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
1468
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
1526
1469
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1527
1470
 
1528
1471
  const useDelayedFacets = data => {
1529
1472
  const facets = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)([]);
1530
1473
  return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => {
1531
1474
  if (data) {
1532
- facets.current = data.search.facets;
1475
+ facets.current = data.search?.facets;
1533
1476
  }
1534
1477
 
1535
1478
  return facets.current;
@@ -1538,7 +1481,7 @@ const useDelayedFacets = data => {
1538
1481
 
1539
1482
  /***/ }),
1540
1483
 
1541
- /***/ 77184:
1484
+ /***/ 7184:
1542
1485
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1543
1486
 
1544
1487
  "use strict";
@@ -1549,11 +1492,11 @@ __webpack_require__.d(__webpack_exports__, {
1549
1492
  });
1550
1493
 
1551
1494
  // EXTERNAL MODULE: external "react"
1552
- var external_react_ = __webpack_require__(16689);
1495
+ var external_react_ = __webpack_require__(6689);
1553
1496
  // EXTERNAL MODULE: ../sdk/dist/utils/format.js
1554
- var format = __webpack_require__(72339);
1497
+ var format = __webpack_require__(2339);
1555
1498
  // EXTERNAL MODULE: ../sdk/dist/search/useSearch.js + 1 modules
1556
- var useSearch = __webpack_require__(73221);
1499
+ var useSearch = __webpack_require__(3221);
1557
1500
  ;// CONCATENATED MODULE: ../sdk/dist/search/usePagination.js
1558
1501
 
1559
1502
 
@@ -1599,47 +1542,246 @@ const useDelayedPagination = totalCount => {
1599
1542
 
1600
1543
  /***/ }),
1601
1544
 
1602
- /***/ 49521:
1545
+ /***/ 2953:
1603
1546
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
1604
1547
 
1605
1548
  "use strict";
1606
1549
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1607
1550
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1608
- /* harmony export */ "F": () => (/* binding */ useProductsPrefetch),
1609
- /* harmony export */ "r": () => (/* binding */ useProducts)
1551
+ /* harmony export */ "p": () => (/* binding */ prefetchQuery)
1610
1552
  /* harmony export */ });
1611
- /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(73221);
1612
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
1553
+ /* harmony import */ var swr__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5941);
1554
+ /* harmony import */ var _request__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(180);
1555
+ /* harmony import */ var _useQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7732);
1556
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([swr__WEBPACK_IMPORTED_MODULE_0__, _useQuery__WEBPACK_IMPORTED_MODULE_1__]);
1557
+ ([swr__WEBPACK_IMPORTED_MODULE_0__, _useQuery__WEBPACK_IMPORTED_MODULE_1__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
1558
+ const _excluded = ["cache"];
1559
+
1560
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
1561
+
1562
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
1563
+
1564
+
1565
+
1566
+
1567
+ const prefetchQuery = (operationName, variables, _ref) => {
1568
+ let {
1569
+ cache
1570
+ } = _ref,
1571
+ options = _objectWithoutProperties(_ref, _excluded);
1572
+
1573
+ const key = (0,_useQuery__WEBPACK_IMPORTED_MODULE_1__/* .getKey */ .km)(operationName, variables);
1574
+
1575
+ if (cache.get(key)) {
1576
+ return;
1577
+ }
1578
+
1579
+ (0,swr__WEBPACK_IMPORTED_MODULE_0__.mutate)(key, (0,_request__WEBPACK_IMPORTED_MODULE_2__/* .request */ .W)(operationName, variables, options));
1580
+ };
1581
+ __webpack_async_result__();
1582
+ } catch(e) { __webpack_async_result__(e); } });
1583
+
1584
+ /***/ }),
1585
+
1586
+ /***/ 8934:
1587
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1588
+
1589
+ "use strict";
1590
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1591
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1592
+ /* harmony export */ "Bj": () => (/* binding */ UseGalleryPageContext),
1593
+ /* harmony export */ "Y_": () => (/* binding */ useCreateUseGalleryPage),
1594
+ /* harmony export */ "__": () => (/* binding */ useGalleryPage)
1595
+ /* harmony export */ });
1596
+ /* unused harmony export query */
1597
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3221);
1598
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
1613
1599
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1614
- /* harmony import */ var src_sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(24867);
1615
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_1__]);
1616
- src_sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_1__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1600
+ /* harmony import */ var src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7732);
1601
+ /* harmony import */ var _useLocalizedVariables__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2523);
1602
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_1__]);
1603
+ src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_1__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1617
1604
 
1618
1605
 
1619
1606
 
1620
- const useProductsPrefetch = page => {
1607
+
1608
+ const UseGalleryPageContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(_ => {
1609
+ return {
1610
+ data: null
1611
+ };
1612
+ });
1613
+ const useGalleryPage = page => {
1614
+ const useGalleryPageCallback = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(UseGalleryPageContext);
1615
+
1616
+ if (!useGalleryPageCallback) {
1617
+ throw new Error('Missing UseGalleryPageContext on React tree');
1618
+ }
1619
+
1620
+ return useGalleryPageCallback(page);
1621
+ };
1622
+ const query = "ClientProductsQuery";
1623
+
1624
+ const getKey = object => JSON.stringify(object);
1625
+ /**
1626
+ * Use this hook for managed pages state and creating useGalleryPage hook that will be used for fetching a list of products per pages in PLP or Search
1627
+ */
1628
+
1629
+
1630
+ const useCreateUseGalleryPage = () => {
1621
1631
  const {
1622
- itemsPerPage,
1623
- state: {
1632
+ 0: pages,
1633
+ 1: setPages
1634
+ } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]); // We create pagesRef as a mirror of the pages state so we don't have to add pages as a dependency of the useGalleryPage hook
1635
+
1636
+ const pagesRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)([]);
1637
+ const pagesCache = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)([]);
1638
+ const useGalleryPage = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function useGalleryPage(page) {
1639
+ const {
1640
+ state: {
1641
+ sort,
1642
+ term,
1643
+ selectedFacets
1644
+ },
1645
+ itemsPerPage
1646
+ } = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_3__/* .useSearch */ .R)();
1647
+ const localizedVariables = (0,_useLocalizedVariables__WEBPACK_IMPORTED_MODULE_2__/* .useLocalizedVariables */ .y)({
1648
+ first: itemsPerPage,
1649
+ after: (itemsPerPage * page).toString(),
1624
1650
  sort,
1625
- term,
1651
+ term: term ?? '',
1626
1652
  selectedFacets
1627
- }
1628
- } = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_2__/* .useSearch */ .R)();
1629
- const prefetch = (0,src_sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_1__/* .useProductsQueryPrefetch */ .BG)({
1653
+ });
1654
+ const hasSameVariables = pagesCache.current[page] === getKey(localizedVariables);
1655
+ const {
1656
+ data
1657
+ } = (0,src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_1__/* .useQuery */ .aM)(query, localizedVariables, {
1658
+ fallbackData: null,
1659
+ suspense: true,
1660
+ doNotRun: hasSameVariables
1661
+ });
1662
+ const shouldUpdatePages = !hasSameVariables && data !== null;
1663
+
1664
+ if (shouldUpdatePages) {
1665
+ pagesCache.current[page] = getKey(localizedVariables); // Update refs
1666
+
1667
+ const newPages = [...pagesRef.current];
1668
+ newPages[page] = data;
1669
+ pagesRef.current = newPages;
1670
+ } // Prevents error: Cannot update a component (`ProductListing`) while rendering a different component (`ProductGalleryPage`).
1671
+
1672
+
1673
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
1674
+ if (shouldUpdatePages) {
1675
+ // Update state
1676
+ setPages(oldPages => {
1677
+ const newPages = [...oldPages];
1678
+ newPages[page] = data;
1679
+ return newPages;
1680
+ });
1681
+ }
1682
+ }, [data, page, shouldUpdatePages]);
1683
+ return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => {
1684
+ if (hasSameVariables) {
1685
+ return {
1686
+ data: pagesRef.current[page]
1687
+ };
1688
+ }
1689
+
1690
+ return {
1691
+ data
1692
+ };
1693
+ }, [hasSameVariables, data, page]);
1694
+ }, []);
1695
+ return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => ({
1696
+ pages,
1697
+ useGalleryPage
1698
+ }), [pages, useGalleryPage]);
1699
+ };
1700
+ __webpack_async_result__();
1701
+ } catch(e) { __webpack_async_result__(e); } });
1702
+
1703
+ /***/ }),
1704
+
1705
+ /***/ 7433:
1706
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1707
+
1708
+ "use strict";
1709
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1710
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1711
+ /* harmony export */ "U": () => (/* binding */ useProductGalleryQuery)
1712
+ /* harmony export */ });
1713
+ /* unused harmony export query */
1714
+ /* harmony import */ var src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7732);
1715
+ /* harmony import */ var _useLocalizedVariables__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2523);
1716
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__]);
1717
+ src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1718
+
1719
+
1720
+ /**
1721
+ * This query is run on the browser and contains
1722
+ * the current search state of the user
1723
+ */
1724
+
1725
+ const query = "ClientProductGalleryQuery";
1726
+ const useProductGalleryQuery = ({
1727
+ term,
1728
+ sort,
1729
+ selectedFacets,
1730
+ itemsPerPage
1731
+ }) => {
1732
+ const localizedVariables = (0,_useLocalizedVariables__WEBPACK_IMPORTED_MODULE_1__/* .useLocalizedVariables */ .y)({
1630
1733
  first: itemsPerPage,
1631
- after: (itemsPerPage * (page ?? 0)).toString(),
1734
+ after: '0',
1632
1735
  sort,
1633
1736
  term: term ?? '',
1634
1737
  selectedFacets
1635
1738
  });
1636
- (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
1637
- if (page !== null) {
1638
- prefetch();
1639
- }
1640
- }, [page, prefetch]);
1739
+ return (0,src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__/* .useQuery */ .aM)(query, localizedVariables);
1641
1740
  };
1642
- const useProducts = page => {
1741
+ __webpack_async_result__();
1742
+ } catch(e) { __webpack_async_result__(e); } });
1743
+
1744
+ /***/ }),
1745
+
1746
+ /***/ 4923:
1747
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1748
+
1749
+ "use strict";
1750
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1751
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1752
+ /* harmony export */ "Fl": () => (/* binding */ useProductsPrefetch)
1753
+ /* harmony export */ });
1754
+ /* unused harmony exports query, useProductsQueryPrefetch */
1755
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3221);
1756
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
1757
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1758
+ /* harmony import */ var swr__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5941);
1759
+ /* harmony import */ var _graphql_prefetchQuery__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2953);
1760
+ /* harmony import */ var _useLocalizedVariables__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2523);
1761
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([swr__WEBPACK_IMPORTED_MODULE_1__, _graphql_prefetchQuery__WEBPACK_IMPORTED_MODULE_2__]);
1762
+ ([swr__WEBPACK_IMPORTED_MODULE_1__, _graphql_prefetchQuery__WEBPACK_IMPORTED_MODULE_2__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
1763
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
1764
+
1765
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1766
+
1767
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
1768
+
1769
+
1770
+
1771
+
1772
+
1773
+
1774
+ const query = "ClientProductsQuery";
1775
+ const useProductsQueryPrefetch = (variables, options) => {
1776
+ const localizedVariables = (0,_useLocalizedVariables__WEBPACK_IMPORTED_MODULE_3__/* .useLocalizedVariables */ .y)(variables);
1777
+ const {
1778
+ cache
1779
+ } = (0,swr__WEBPACK_IMPORTED_MODULE_1__.useSWRConfig)();
1780
+ return (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => (0,_graphql_prefetchQuery__WEBPACK_IMPORTED_MODULE_2__/* .prefetchQuery */ .p)(query, localizedVariables, _objectSpread({
1781
+ cache
1782
+ }, options)), [localizedVariables, cache, options]);
1783
+ };
1784
+ const useProductsPrefetch = page => {
1643
1785
  const {
1644
1786
  itemsPerPage,
1645
1787
  state: {
@@ -1647,33 +1789,35 @@ const useProducts = page => {
1647
1789
  term,
1648
1790
  selectedFacets
1649
1791
  }
1650
- } = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_2__/* .useSearch */ .R)();
1651
- const productList = (0,src_sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_1__/* .useProductsQuery */ .kN)({
1792
+ } = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_4__/* .useSearch */ .R)();
1793
+ const prefetch = useProductsQueryPrefetch({
1652
1794
  first: itemsPerPage,
1653
- after: (itemsPerPage * page).toString(),
1795
+ after: (itemsPerPage * (page ?? 0)).toString(),
1654
1796
  sort,
1655
1797
  term: term ?? '',
1656
1798
  selectedFacets
1657
- }, {
1658
- suspense: true
1659
1799
  });
1660
- return productList?.edges;
1800
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
1801
+ if (page !== null) {
1802
+ prefetch();
1803
+ }
1804
+ }, [page, prefetch]);
1661
1805
  };
1662
1806
  __webpack_async_result__();
1663
1807
  } catch(e) { __webpack_async_result__(e); } });
1664
1808
 
1665
1809
  /***/ }),
1666
1810
 
1667
- /***/ 41523:
1811
+ /***/ 1523:
1668
1812
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1669
1813
 
1670
1814
  "use strict";
1671
1815
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1672
1816
  /* harmony export */ "j": () => (/* binding */ useApplySearchState)
1673
1817
  /* harmony export */ });
1674
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
1818
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
1675
1819
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1676
- /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71853);
1820
+ /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1853);
1677
1821
  /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_router__WEBPACK_IMPORTED_MODULE_1__);
1678
1822
 
1679
1823
 
@@ -1684,7 +1828,7 @@ const useApplySearchState = () => {
1684
1828
 
1685
1829
  /***/ }),
1686
1830
 
1687
- /***/ 65813:
1831
+ /***/ 5813:
1688
1832
  /***/ ((module) => {
1689
1833
 
1690
1834
  // Exports
@@ -1695,7 +1839,7 @@ module.exports = {
1695
1839
 
1696
1840
  /***/ }),
1697
1841
 
1698
- /***/ 44614:
1842
+ /***/ 4614:
1699
1843
  /***/ ((module) => {
1700
1844
 
1701
1845
  // Exports
@@ -1707,7 +1851,7 @@ module.exports = {
1707
1851
 
1708
1852
  /***/ }),
1709
1853
 
1710
- /***/ 41197:
1854
+ /***/ 1197:
1711
1855
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1712
1856
 
1713
1857
  "use strict";
@@ -1719,10 +1863,10 @@ __webpack_require__.d(__webpack_exports__, {
1719
1863
  });
1720
1864
 
1721
1865
  // EXTERNAL MODULE: external "react"
1722
- var external_react_ = __webpack_require__(16689);
1866
+ var external_react_ = __webpack_require__(6689);
1723
1867
  var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
1724
1868
  // EXTERNAL MODULE: ../sdk/dist/utils/error.js
1725
- var error = __webpack_require__(12254);
1869
+ var error = __webpack_require__(2254);
1726
1870
  ;// CONCATENATED MODULE: ../sdk/dist/search/useInfiniteSearchState.js
1727
1871
 
1728
1872
 
@@ -1755,7 +1899,7 @@ const useSearchInfiniteState = (initialPage) => {
1755
1899
  };
1756
1900
  //# sourceMappingURL=useInfiniteSearchState.js.map
1757
1901
  // EXTERNAL MODULE: ../sdk/dist/search/useSearchState.js
1758
- var useSearchState = __webpack_require__(12524);
1902
+ var useSearchState = __webpack_require__(2524);
1759
1903
  ;// CONCATENATED MODULE: ../sdk/dist/search/Provider.js
1760
1904
 
1761
1905
 
@@ -1777,7 +1921,7 @@ const Provider = ({ children, itemsPerPage, onChange, ...rest }) => {
1777
1921
 
1778
1922
  /***/ }),
1779
1923
 
1780
- /***/ 9664:
1924
+ /***/ 8492:
1781
1925
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1782
1926
 
1783
1927
  "use strict";
@@ -1787,7 +1931,7 @@ const Provider = ({ children, itemsPerPage, onChange, ...rest }) => {
1787
1931
  /* harmony export */ "wb": () => (/* binding */ isSearchSort)
1788
1932
  /* harmony export */ });
1789
1933
  /* unused harmony exports removeFacet, toggleFacets */
1790
- /* harmony import */ var _utils_error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(12254);
1934
+ /* harmony import */ var _utils_error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2254);
1791
1935
 
1792
1936
  const sortKeys = new Set([
1793
1937
  'price_desc',
@@ -1829,16 +1973,16 @@ const toggleFacets = (facets, items) => items.reduce((acc, curr) => toggleFacet(
1829
1973
 
1830
1974
  /***/ }),
1831
1975
 
1832
- /***/ 26142:
1976
+ /***/ 6142:
1833
1977
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1834
1978
 
1835
1979
  "use strict";
1836
1980
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1837
1981
  /* harmony export */ "Q": () => (/* binding */ parse)
1838
1982
  /* harmony export */ });
1839
- /* harmony import */ var _utils_error__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12254);
1840
- /* harmony import */ var _facets__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9664);
1841
- /* harmony import */ var _useSearchState__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(12524);
1983
+ /* harmony import */ var _utils_error__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2254);
1984
+ /* harmony import */ var _facets__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8492);
1985
+ /* harmony import */ var _useSearchState__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2524);
1842
1986
 
1843
1987
 
1844
1988
 
@@ -1868,7 +2012,7 @@ const parse = ({ pathname, searchParams }) => {
1868
2012
 
1869
2013
  /***/ }),
1870
2014
 
1871
- /***/ 73221:
2015
+ /***/ 3221:
1872
2016
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1873
2017
 
1874
2018
  "use strict";
@@ -1879,11 +2023,11 @@ __webpack_require__.d(__webpack_exports__, {
1879
2023
  });
1880
2024
 
1881
2025
  // EXTERNAL MODULE: ../sdk/dist/search/Provider.js + 1 modules
1882
- var Provider = __webpack_require__(41197);
2026
+ var Provider = __webpack_require__(1197);
1883
2027
  // EXTERNAL MODULE: external "react"
1884
- var external_react_ = __webpack_require__(16689);
2028
+ var external_react_ = __webpack_require__(6689);
1885
2029
  // EXTERNAL MODULE: ../sdk/dist/utils/error.js
1886
- var error = __webpack_require__(12254);
2030
+ var error = __webpack_require__(2254);
1887
2031
  ;// CONCATENATED MODULE: ../sdk/dist/utils/useContext.js
1888
2032
 
1889
2033