@faststore/core 2.2.78 → 3.0.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 (252) hide show
  1. package/.babelrc.js +12 -0
  2. package/.next/BUILD_ID +1 -1
  3. package/.next/build-manifest.json +89 -89
  4. package/.next/cache/.tsbuildinfo +1 -1
  5. package/.next/cache/config.json +3 -3
  6. package/.next/cache/eslint/.cache_1gneedd +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/images-manifest.json +1 -1
  12. package/.next/next-minimal-server.js.nft.json +1 -0
  13. package/.next/next-server.js.nft.json +1 -1
  14. package/.next/prerender-manifest.js +1 -0
  15. package/.next/prerender-manifest.json +1 -1
  16. package/.next/react-loadable-manifest.json +17 -17
  17. package/.next/required-server-files.json +1 -1
  18. package/.next/routes-manifest.json +1 -1
  19. package/.next/server/chunks/119.js +1 -0
  20. package/.next/server/chunks/12.js +1 -0
  21. package/.next/server/chunks/187.js +1 -0
  22. package/.next/server/chunks/202.js +1 -0
  23. package/.next/server/chunks/24.js +1 -0
  24. package/.next/server/chunks/242.js +1 -0
  25. package/.next/server/chunks/247.js +1 -0
  26. package/.next/server/chunks/344.js +1 -0
  27. package/.next/server/chunks/404.js +1 -434
  28. package/.next/server/chunks/414.js +1 -0
  29. package/.next/server/chunks/484.js +1 -0
  30. package/.next/server/chunks/493.js +1 -0
  31. package/.next/server/chunks/498.js +1 -0
  32. package/.next/server/chunks/540.js +1 -0
  33. package/.next/server/chunks/57.js +1 -434
  34. package/.next/server/chunks/624.js +1 -0
  35. package/.next/server/chunks/640.js +6 -0
  36. package/.next/server/chunks/646.js +279 -0
  37. package/.next/server/chunks/659.js +9 -0
  38. package/.next/server/chunks/679.js +1 -0
  39. package/.next/server/chunks/693.js +1 -58
  40. package/.next/server/chunks/694.js +1 -0
  41. package/.next/server/chunks/779.js +1 -58
  42. package/.next/server/chunks/82.js +8 -0
  43. package/.next/server/chunks/857.js +1 -0
  44. package/.next/server/chunks/859.js +4 -957
  45. package/.next/server/chunks/881.js +1 -0
  46. package/.next/server/chunks/917.js +1 -0
  47. package/.next/server/chunks/936.js +1 -0
  48. package/.next/server/chunks/96.js +1 -0
  49. package/.next/server/chunks/997.js +1 -0
  50. package/.next/server/functions-config-manifest.json +1 -0
  51. package/.next/server/middleware-build-manifest.js +1 -1
  52. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  53. package/.next/server/next-font-manifest.js +1 -0
  54. package/.next/server/next-font-manifest.json +1 -0
  55. package/.next/server/pages/404.js +1 -391
  56. package/.next/server/pages/404.js.nft.json +1 -1
  57. package/.next/server/pages/500.js +1 -395
  58. package/.next/server/pages/500.js.nft.json +1 -1
  59. package/.next/server/pages/[...slug].js +1 -1071
  60. package/.next/server/pages/[...slug].js.nft.json +1 -1
  61. package/.next/server/pages/[slug]/p.js +1 -2315
  62. package/.next/server/pages/[slug]/p.js.nft.json +1 -1
  63. package/.next/server/pages/_app.js +1 -301
  64. package/.next/server/pages/_app.js.nft.json +1 -1
  65. package/.next/server/pages/_document.js +1 -363
  66. package/.next/server/pages/_document.js.nft.json +1 -1
  67. package/.next/server/pages/_error.js +1 -164
  68. package/.next/server/pages/_error.js.nft.json +1 -1
  69. package/.next/server/pages/account.js +1 -370
  70. package/.next/server/pages/account.js.nft.json +1 -1
  71. package/.next/server/pages/api/graphql.js +1 -3085
  72. package/.next/server/pages/api/graphql.js.nft.json +1 -1
  73. package/.next/server/pages/api/health/live.js +1 -31
  74. package/.next/server/pages/api/health/live.js.nft.json +1 -1
  75. package/.next/server/pages/api/health/ready.js +1 -31
  76. package/.next/server/pages/api/health/ready.js.nft.json +1 -1
  77. package/.next/server/pages/api/preview.js +1 -137
  78. package/.next/server/pages/api/preview.js.nft.json +1 -1
  79. package/.next/server/pages/checkout.js +1 -370
  80. package/.next/server/pages/checkout.js.nft.json +1 -1
  81. package/.next/server/pages/en-US/404.html +2 -2
  82. package/.next/server/pages/en-US/404.json +1 -1
  83. package/.next/server/pages/en-US/500.html +2 -2
  84. package/.next/server/pages/en-US/500.json +1 -1
  85. package/.next/server/pages/en-US/account.html +2 -2
  86. package/.next/server/pages/en-US/checkout.html +2 -2
  87. package/.next/server/pages/en-US/login.html +2 -2
  88. package/.next/server/pages/en-US/login.json +1 -1
  89. package/.next/server/pages/en-US/s.html +2 -2
  90. package/.next/server/pages/en-US.html +4 -4
  91. package/.next/server/pages/en-US.json +1 -1
  92. package/.next/server/pages/index.js +1 -439
  93. package/.next/server/pages/index.js.nft.json +1 -1
  94. package/.next/server/pages/login.js +1 -382
  95. package/.next/server/pages/login.js.nft.json +1 -1
  96. package/.next/server/pages/s.js +1 -554
  97. package/.next/server/pages/s.js.nft.json +1 -1
  98. package/.next/server/pages-manifest.json +1 -18
  99. package/.next/server/webpack-api-runtime.js +1 -229
  100. package/.next/server/webpack-runtime.js +1 -229
  101. package/.next/static/Xf_-r26LvSZnfqjpm_a71/_buildManifest.js +1 -0
  102. package/.next/static/chunks/104-d42a7ff6c8b8dd89.js +1 -0
  103. package/.next/static/chunks/161-b39fe2f79ff7bc85.js +1 -0
  104. package/.next/static/chunks/202.c7d8a71173edecfb.js +1 -0
  105. package/.next/static/chunks/217.01bc0ad07edd6f1b.js +1 -0
  106. package/.next/static/chunks/247.52b3924429a474c6.js +1 -0
  107. package/.next/static/chunks/484.b82b73b1d8c37e02.js +1 -0
  108. package/.next/static/chunks/540.6c62d2536d42a1e0.js +1 -0
  109. package/.next/static/chunks/575-853fb8b1ba4ce8c4.js +14 -0
  110. package/.next/static/chunks/624.d3de62b4562a33f3.js +1 -0
  111. package/.next/static/chunks/629-b7b5ef6f15ecba9d.js +1 -0
  112. package/.next/static/chunks/65.da22595d53beae76.js +1 -0
  113. package/.next/static/chunks/758.b53ee01b506973e0.js +1 -0
  114. package/.next/static/chunks/857.d2299cfe995af21d.js +1 -0
  115. package/.next/static/chunks/framework-8e279965036b6169.js +33 -0
  116. package/.next/static/chunks/main-6f63f6746cc029db.js +1 -0
  117. package/.next/static/chunks/pages/404-1334d11ab8467b3d.js +1 -0
  118. package/.next/static/chunks/pages/500-449c5bd51f98423f.js +1 -0
  119. package/.next/static/chunks/pages/[...slug]-7c8ec664c28eca52.js +1 -0
  120. package/.next/static/chunks/pages/[slug]/p-a4f7d7c00fdf4157.js +1 -0
  121. package/.next/static/chunks/pages/_app-6516d0c2c7e0e686.js +68 -0
  122. package/.next/static/chunks/pages/_error-fbf331a03642b495.js +1 -0
  123. package/.next/static/chunks/pages/account-dbc5c028225cd1ac.js +1 -0
  124. package/.next/static/chunks/pages/checkout-29ae2c37eaf172e1.js +1 -0
  125. package/.next/static/chunks/pages/index-00798cca3b47590d.js +1 -0
  126. package/.next/static/chunks/pages/login-c4d2c856008df5ac.js +1 -0
  127. package/.next/static/chunks/pages/s-dacaed02ad104d73.js +1 -0
  128. package/.next/static/chunks/webpack-1c08d77cfe1b8585.js +1 -0
  129. package/.next/static/css/{021de9c7b050d301.css → 0d45c82d8887a269.css} +1 -1
  130. package/.next/static/css/{e772e7786bb4dee9.css → 211c7542af66d8b4.css} +1 -1
  131. package/.next/static/css/{df588bb98c0b0ca6.css → 2980acad3f8e1028.css} +1 -1
  132. package/.next/static/css/{510895065f32ed2f.css → 4c4d90eb8cb1d2b7.css} +1 -1
  133. package/.next/static/css/{938781cdc945862e.css → 821a5219786be653.css} +1 -1
  134. package/.next/static/css/{def381bf7c69fa2e.css → 96e3fddf695d6aa9.css} +1 -1
  135. package/.next/static/css/{6a7fdc5a21fbead5.css → b9d9ba1b04f3160d.css} +1 -1
  136. package/.next/static/css/{9558da13053ac066.css → cff9aafa16fccc9c.css} +1 -1
  137. package/.next/static/css/{7e897ebb936fac09.css → d586715f4f707df4.css} +1 -1
  138. package/.next/static/css/{cb7d1fcea42fab9c.css → e32410b31c666cb2.css} +1 -1
  139. package/.next/trace +91 -82
  140. package/.turbo/turbo-build.log +37 -42
  141. package/.turbo/turbo-lint.log +0 -3
  142. package/.turbo/turbo-test.log +9 -9
  143. package/@generated/gql.ts +196 -0
  144. package/@generated/{graphql/index.ts → graphql.ts} +718 -252
  145. package/@generated/index.ts +1 -0
  146. package/@generated/persisted-documents.json +13 -0
  147. package/api/index.ts +1 -1
  148. package/cms/faststore/content-types.json +18 -0
  149. package/cms/faststore/sections.json +73 -0
  150. package/codegen.ts +61 -0
  151. package/index.ts +1 -0
  152. package/jest.config.js +9 -1
  153. package/next.config.js +2 -0
  154. package/package.json +14 -10
  155. package/src/components/product/ProductCard/ProductCard.tsx +4 -4
  156. package/src/components/search/Filter/Filter.tsx +4 -3
  157. package/src/components/sections/EmptyState/DefaultComponents.ts +5 -0
  158. package/src/components/sections/EmptyState/EmptyState.tsx +91 -8
  159. package/src/components/sections/EmptyState/OverriddenDefaultEmptyState.ts +15 -0
  160. package/src/components/sections/ProductDetails/ProductDetails.tsx +6 -6
  161. package/src/components/ui/Image/Image.tsx +1 -1
  162. package/src/customizations/src/fragments/ClientManyProducts.ts +3 -3
  163. package/src/customizations/src/fragments/ClientProduct.ts +3 -3
  164. package/src/customizations/src/fragments/ClientProductGallery.ts +3 -3
  165. package/src/customizations/src/fragments/ClientSearchSuggestions.ts +3 -3
  166. package/src/customizations/src/fragments/ClientShippingSimulation.ts +3 -3
  167. package/src/customizations/src/fragments/ClientTopSearchSuggestions.ts +3 -3
  168. package/src/customizations/src/fragments/ServerCollectionPage.ts +3 -3
  169. package/src/customizations/src/fragments/ServerProduct.ts +3 -3
  170. package/src/pages/404.tsx +32 -30
  171. package/src/pages/500.tsx +32 -34
  172. package/src/pages/[...slug].tsx +4 -4
  173. package/src/pages/[slug]/p.tsx +7 -7
  174. package/src/pages/api/graphql.ts +10 -4
  175. package/src/pages/login.tsx +31 -8
  176. package/src/sdk/cart/index.ts +3 -3
  177. package/src/sdk/graphql/prefetchQuery.ts +4 -3
  178. package/src/sdk/graphql/request.ts +67 -8
  179. package/src/sdk/graphql/useLazyQuery.ts +4 -3
  180. package/src/sdk/graphql/useQuery.ts +7 -3
  181. package/src/sdk/newsletter/useNewsletter.ts +4 -4
  182. package/src/sdk/product/usePageProductsQuery.ts +3 -3
  183. package/src/sdk/product/useProductGalleryQuery.ts +10 -8
  184. package/src/sdk/product/useProductQuery.ts +3 -3
  185. package/src/sdk/product/useProductsPrefetch.ts +5 -3
  186. package/src/sdk/product/useProductsQuery.ts +3 -4
  187. package/src/sdk/search/useSuggestions.ts +3 -3
  188. package/src/sdk/search/useTopSearch.ts +3 -4
  189. package/src/sdk/session/index.ts +4 -4
  190. package/src/sdk/shipping/index.ts +3 -3
  191. package/src/server/generator/schema.ts +1 -1
  192. package/src/server/index.ts +11 -6
  193. package/src/typings/overrides.ts +3 -2
  194. package/test/server/index.test.ts +6 -1
  195. package/.babelrc +0 -4
  196. package/.next/cache/next-server.js.nft.json +0 -1
  197. package/.next/server/chunks/117.js +0 -427
  198. package/.next/server/chunks/177.js +0 -125
  199. package/.next/server/chunks/183.js +0 -122
  200. package/.next/server/chunks/184.js +0 -61
  201. package/.next/server/chunks/289.js +0 -243
  202. package/.next/server/chunks/312.js +0 -676
  203. package/.next/server/chunks/350.js +0 -2898
  204. package/.next/server/chunks/386.js +0 -200
  205. package/.next/server/chunks/574.js +0 -145
  206. package/.next/server/chunks/576.js +0 -122
  207. package/.next/server/chunks/585.js +0 -639
  208. package/.next/server/chunks/632.js +0 -514
  209. package/.next/server/chunks/661.js +0 -1451
  210. package/.next/server/chunks/676.js +0 -32
  211. package/.next/server/chunks/719.js +0 -84
  212. package/.next/server/chunks/74.js +0 -4152
  213. package/.next/server/chunks/825.js +0 -4074
  214. package/.next/server/chunks/854.js +0 -72
  215. package/.next/server/chunks/863.js +0 -111
  216. package/.next/server/chunks/898.js +0 -711
  217. package/.next/server/chunks/903.js +0 -1926
  218. package/.next/server/chunks/98.js +0 -163
  219. package/.next/server/chunks/988.js +0 -211
  220. package/.next/static/JJRI44e-3F3WVhD-DxmO2/_buildManifest.js +0 -1
  221. package/.next/static/chunks/223-cb77217cce52d45c.js +0 -1
  222. package/.next/static/chunks/251.11f5198fc8bef3a4.js +0 -1
  223. package/.next/static/chunks/386.d01e0db26c523f0f.js +0 -1
  224. package/.next/static/chunks/397-0d3aada1012cd78b.js +0 -1
  225. package/.next/static/chunks/574.70612be06fd1365f.js +0 -1
  226. package/.next/static/chunks/585.6561778b7763b79e.js +0 -1
  227. package/.next/static/chunks/651.7142f31ce1e052b3.js +0 -1
  228. package/.next/static/chunks/675-479a97aecebead97.js +0 -1
  229. package/.next/static/chunks/741.52f7fb873418346f.js +0 -1
  230. package/.next/static/chunks/800.5d92de2974baf641.js +0 -1
  231. package/.next/static/chunks/881-57643fb90f59e576.js +0 -1
  232. package/.next/static/chunks/98.40c7e17d9de4eb8f.js +0 -1
  233. package/.next/static/chunks/988.afda042dd9ba11d1.js +0 -1
  234. package/.next/static/chunks/framework-dfd14d7ce6600b03.js +0 -1
  235. package/.next/static/chunks/main-e4e873ee741162eb.js +0 -1
  236. package/.next/static/chunks/pages/404-e106cb9a78182f5f.js +0 -1
  237. package/.next/static/chunks/pages/500-d28aa4a8ce88bddd.js +0 -1
  238. package/.next/static/chunks/pages/[...slug]-c4abcc133f85d9d0.js +0 -1
  239. package/.next/static/chunks/pages/[slug]/p-4a75b11857b82b5c.js +0 -1
  240. package/.next/static/chunks/pages/_app-30b9666307e4b3b1.js +0 -1
  241. package/.next/static/chunks/pages/_error-319451dea77827a6.js +0 -1
  242. package/.next/static/chunks/pages/account-bf9c88a9cac80d8a.js +0 -1
  243. package/.next/static/chunks/pages/checkout-6ca76c1e88a28ac4.js +0 -1
  244. package/.next/static/chunks/pages/index-629ba146ae5f0ecf.js +0 -1
  245. package/.next/static/chunks/pages/login-d2af0de13ea75848.js +0 -1
  246. package/.next/static/chunks/pages/s-d729254b91430d1c.js +0 -1
  247. package/.next/static/chunks/webpack-54ce04ec11860b0b.js +0 -1
  248. package/@generated/graphql/persisted.json +0 -13
  249. package/codegen.yml +0 -23
  250. package/src/components/sections/EmptyState/Overrides.tsx +0 -14
  251. package/.next/static/{JJRI44e-3F3WVhD-DxmO2 → Xf_-r26LvSZnfqjpm_a71}/_ssgManifest.js +0 -0
  252. package/@generated/{graphql/schema.graphql → schema.graphql} +508 -508
@@ -1,200 +0,0 @@
1
- exports.id = 386;
2
- exports.ids = [386];
3
- exports.modules = {
4
-
5
- /***/ 1386:
6
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7
-
8
- "use strict";
9
- // ESM COMPAT FLAG
10
- __webpack_require__.r(__webpack_exports__);
11
-
12
- // EXPORTS
13
- __webpack_require__.d(__webpack_exports__, {
14
- "default": () => (/* binding */ search_Filter_FilterSlider)
15
- });
16
-
17
- // EXTERNAL MODULE: ../sdk/dist/search/useSearch.js + 1 modules
18
- var useSearch = __webpack_require__(3221);
19
- // EXTERNAL MODULE: external "react"
20
- var external_react_ = __webpack_require__(6689);
21
- var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
22
- // EXTERNAL MODULE: ../components/dist/esm/hooks/useFadeEffect.js
23
- var useFadeEffect = __webpack_require__(3666);
24
- // EXTERNAL MODULE: ../components/dist/esm/hooks/UIProvider.js
25
- var UIProvider = __webpack_require__(6652);
26
- // EXTERNAL MODULE: ../components/dist/esm/organisms/SlideOver/SlideOver.js
27
- var SlideOver = __webpack_require__(7215);
28
- // EXTERNAL MODULE: ../components/dist/esm/organisms/SlideOver/SlideOverHeader.js
29
- var SlideOverHeader = __webpack_require__(5049);
30
- // EXTERNAL MODULE: ../components/dist/esm/atoms/Button/Button.js
31
- var Button = __webpack_require__(3339);
32
- ;// CONCATENATED MODULE: ../components/dist/esm/organisms/Filter/FilterSlider.js
33
-
34
-
35
- function FilterSlider({ title, size, direction, children, applyBtnProps, clearBtnProps, overlayProps, onClose, ...otherProps }) {
36
- const { fade, fadeOut } = (0,useFadeEffect/* useFadeEffect */.b)();
37
- const { closeFilter } = (0,UIProvider/* useUI */.l)();
38
- return (external_react_default().createElement(SlideOver/* default */.Z, { "data-fs-filter-slider": true, isOpen: true, fade: fade, onDismiss: fadeOut, size: size, direction: direction, onTransitionEnd: () => fade === 'out' && closeFilter(), overlayProps: overlayProps, ...otherProps },
39
- external_react_default().createElement("div", { "data-fs-filter-slider-content": true },
40
- external_react_default().createElement(SlideOverHeader/* default */.Z, { onClose: () => {
41
- onClose();
42
- fadeOut();
43
- } },
44
- external_react_default().createElement("h2", { "data-fs-filter-slider-title": true }, title)),
45
- children),
46
- external_react_default().createElement("footer", { "data-fs-filter-slider-footer": true },
47
- external_react_default().createElement(Button/* default */.Z, { "data-fs-filter-slider-footer-button-clear": true, ...clearBtnProps }),
48
- external_react_default().createElement(Button/* default */.Z, { "data-fs-filter-slider-footer-button-apply": true, "data-testid": "filter-slider-button-apply", ...applyBtnProps, onClick: (e) => {
49
- applyBtnProps?.onClick?.(e);
50
- fadeOut();
51
- } }))));
52
- }
53
- /* harmony default export */ const Filter_FilterSlider = (FilterSlider);
54
- //# sourceMappingURL=FilterSlider.js.map
55
- // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/Filter.js
56
- var Filter = __webpack_require__(5699);
57
- // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacets.js
58
- var FilterFacets = __webpack_require__(4199);
59
- // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacetBoolean.js
60
- var FilterFacetBoolean = __webpack_require__(2815);
61
- // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacetBooleanItem.js + 1 modules
62
- var FilterFacetBooleanItem = __webpack_require__(1305);
63
- // EXTERNAL MODULE: ../components/dist/esm/organisms/Filter/FilterFacetRange.js + 2 modules
64
- var FilterFacetRange = __webpack_require__(1355);
65
- // EXTERNAL MODULE: ./src/sdk/product/useFormattedPrice.ts
66
- var useFormattedPrice = __webpack_require__(5346);
67
- // EXTERNAL MODULE: ./src/components/search/Filter/section.module.scss
68
- var section_module = __webpack_require__(5813);
69
- var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
70
- // EXTERNAL MODULE: external "react/jsx-runtime"
71
- var jsx_runtime_ = __webpack_require__(997);
72
- ;// CONCATENATED MODULE: ./src/components/search/Filter/FilterSlider.tsx
73
- 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; }
74
-
75
- 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; }
76
-
77
- 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; }
78
-
79
-
80
-
81
-
82
-
83
-
84
-
85
-
86
- function FilterSlider_FilterSlider({
87
- facets,
88
- testId,
89
- dispatch,
90
- expanded,
91
- selected,
92
- title,
93
- clearButtonLabel,
94
- applyButtonLabel
95
- }) {
96
- const {
97
- resetInfiniteScroll,
98
- setState,
99
- state
100
- } = (0,useSearch/* useSearch */.R)();
101
- return /*#__PURE__*/jsx_runtime_.jsx(Filter_FilterSlider, {
102
- overlayProps: {
103
- className: `section ${(section_module_default()).section} section-filter-slider`
104
- },
105
- title: title,
106
- size: "partial",
107
- direction: "rightSide",
108
- clearBtnProps: {
109
- variant: 'secondary',
110
- onClick: () => dispatch({
111
- type: 'selectFacets',
112
- payload: []
113
- }),
114
- children: clearButtonLabel ?? 'Clear All'
115
- },
116
- applyBtnProps: {
117
- variant: 'primary',
118
- onClick: () => {
119
- resetInfiniteScroll(0);
120
- setState(_objectSpread(_objectSpread({}, state), {}, {
121
- selectedFacets: selected,
122
- page: 0
123
- }));
124
- },
125
- children: applyButtonLabel ?? 'Apply'
126
- },
127
- onClose: () => {
128
- dispatch({
129
- type: 'selectFacets',
130
- payload: state.selectedFacets
131
- });
132
- },
133
- children: /*#__PURE__*/jsx_runtime_.jsx(Filter/* default */.Z, {
134
- testId: `mobile-${testId}`,
135
- indicesExpanded: expanded,
136
- onAccordionChange: index => dispatch({
137
- type: 'toggleExpanded',
138
- payload: index
139
- }),
140
- children: facets.map((facet, index) => {
141
- const {
142
- __typename: type,
143
- label
144
- } = facet;
145
- const isExpanded = expanded.has(index);
146
- return /*#__PURE__*/(0,jsx_runtime_.jsxs)(FilterFacets/* default */.Z, {
147
- testId: `mobile-${testId}`,
148
- index: index,
149
- type: type,
150
- label: label,
151
- children: [type === 'StoreFacetBoolean' && isExpanded && /*#__PURE__*/jsx_runtime_.jsx(FilterFacetBoolean/* default */.Z, {
152
- children: facet.values.map(item => /*#__PURE__*/jsx_runtime_.jsx(FilterFacetBooleanItem/* default */.Z, {
153
- id: `${testId}-${facet.label}-${item.label}`,
154
- testId: `mobile-${testId}`,
155
- onFacetChange: facet => dispatch({
156
- type: 'toggleFacet',
157
- payload: facet
158
- }),
159
- selected: item.selected,
160
- value: item.value,
161
- quantity: item.quantity,
162
- facetKey: facet.key,
163
- label: item.label
164
- }, `${testId}-${facet.label}-${item.label}`))
165
- }), type === 'StoreFacetRange' && isExpanded && /*#__PURE__*/jsx_runtime_.jsx(FilterFacetRange/* default */.Z, {
166
- facetKey: facet.key,
167
- min: facet.min,
168
- max: facet.max,
169
- formatter: useFormattedPrice/* useFormattedPrice */.P,
170
- onFacetChange: facet => dispatch({
171
- type: 'setFacet',
172
- payload: {
173
- facet,
174
- unique: true
175
- }
176
- })
177
- })]
178
- }, `${testId}-${label}-${index}`);
179
- })
180
- })
181
- });
182
- }
183
-
184
- /* harmony default export */ const search_Filter_FilterSlider = (FilterSlider_FilterSlider);
185
-
186
- /***/ }),
187
-
188
- /***/ 5813:
189
- /***/ ((module) => {
190
-
191
- // Exports
192
- module.exports = {
193
- "section": "section_section__QVEy3"
194
- };
195
-
196
-
197
- /***/ })
198
-
199
- };
200
- ;
@@ -1,145 +0,0 @@
1
- "use strict";
2
- exports.id = 574;
3
- exports.ids = [574];
4
- exports.modules = {
5
-
6
- /***/ 3574:
7
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
8
-
9
- // ESM COMPAT FLAG
10
- __webpack_require__.r(__webpack_exports__);
11
-
12
- // EXPORTS
13
- __webpack_require__.d(__webpack_exports__, {
14
- "default": () => (/* binding */ search)
15
- });
16
-
17
- // EXTERNAL MODULE: ./faststore.config.js
18
- var faststore_config = __webpack_require__(7183);
19
- var faststore_config_default = /*#__PURE__*/__webpack_require__.n(faststore_config);
20
- ;// CONCATENATED MODULE: ./src/utils/getCookie.ts
21
- function getCookie(name) {
22
- const cookieString = decodeURIComponent(document.cookie);
23
- const cookies = cookieString.split(';');
24
-
25
- for (const cookie of cookies) {
26
- const [cookieName, cookieValue] = cookie.trim().split('=');
27
-
28
- if (cookieName === name) {
29
- return cookieValue;
30
- }
31
- }
32
-
33
- return undefined; // Cookie not found
34
- }
35
- ;// CONCATENATED MODULE: ./src/sdk/analytics/platform/vtex/search.ts
36
- 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; }
37
-
38
- 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; }
39
-
40
- 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; }
41
-
42
- /**
43
- * More info at: https://www.notion.so/vtexhandbook/Event-API-Documentation-48eee26730cf4d7f80f8fd7262231f84
44
- */
45
-
46
-
47
- const THIRTY_MINUTES_S = 30 * 60;
48
- const ONE_YEAR_S = 365 * 24 * 3600;
49
-
50
- const randomUUID = () => typeof crypto.randomUUID === 'function' ? crypto.randomUUID() : (Math.random() * 1e6).toFixed(0);
51
-
52
- const createCookie = (key, expiresSecond) => {
53
- // Setting the domain attribute specifies which host can receive it; we need it to make the cookies available on the `secure` subdomain.
54
- // Although https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie mentioned leading dot (.) is not needed and ignored. I couldn't set the cookies without it.
55
- const urlDomain = `.${new URL((faststore_config_default()).storeUrl).hostname}`;
56
- return () => {
57
- const isExpired = getCookie(key) === undefined;
58
-
59
- if (isExpired) {
60
- const value = randomUUID();
61
- document.cookie = `${key}=${value}; max-age=${expiresSecond}; domain=${urlDomain}; path=/;`; // Setting the `path=/` makes the cookie accessible on any path of the domain/subdomain
62
-
63
- return value;
64
- }
65
-
66
- return getCookie(key);
67
- };
68
- };
69
-
70
- const user = {
71
- anonymous: createCookie('vtex-faststore-anonymous', ONE_YEAR_S),
72
- session: createCookie('vtex-faststore-session', THIRTY_MINUTES_S)
73
- };
74
-
75
- const sendEvent = options => fetch(`https://sp.vtex.com/event-api/v1/${(faststore_config_default()).api.storeId}/event`, {
76
- method: 'POST',
77
- body: JSON.stringify(_objectSpread(_objectSpread({}, options), {}, {
78
- userAgent: navigator.userAgent,
79
- anonymous: user.anonymous(),
80
- session: user.session()
81
- })),
82
- headers: {
83
- 'content-type': 'application/json'
84
- }
85
- });
86
-
87
- const isFullTextSearch = url => typeof url.searchParams.get('q') === 'string' && /^\/s(\/)?$/g.test(url.pathname);
88
-
89
- const handleEvent = event => {
90
- switch (event.name) {
91
- case 'search_select_item':
92
- {
93
- const url = new URL(event.params.url);
94
-
95
- if (!isFullTextSearch(url)) {
96
- return;
97
- }
98
-
99
- for (const item of event.params.items ?? []) {
100
- const productId = item.item_id ?? item.item_variant;
101
- const position = item.index;
102
-
103
- if (productId && position) {
104
- sendEvent({
105
- type: 'search.click',
106
- productId,
107
- position,
108
- url: url.href,
109
- text: url.searchParams.get('q') ?? '<empty>'
110
- });
111
- }
112
- }
113
-
114
- break;
115
- }
116
-
117
- case 'intelligent_search_query':
118
- {
119
- sendEvent({
120
- type: 'search.query',
121
- url: event.params.url,
122
- text: event.params.term,
123
- misspelled: event.params.isTermMisspelled,
124
- match: event.params.totalCount,
125
- operator: event.params.logicalOperator,
126
- locale: event.params.locale
127
- });
128
- break;
129
- }
130
-
131
- default:
132
- }
133
- };
134
-
135
- setInterval(() => sendEvent({
136
- type: 'session.ping'
137
- }), 60 * 1e3
138
- /* One minute */
139
- );
140
- /* harmony default export */ const search = (handleEvent);
141
-
142
- /***/ })
143
-
144
- };
145
- ;
@@ -1,122 +0,0 @@
1
- exports.id = 576;
2
- exports.ids = [576];
3
- exports.modules = {
4
-
5
- /***/ 4918:
6
- /***/ ((module) => {
7
-
8
- module.exports = {
9
- seo: {
10
- title: 'FastStore Starter',
11
- description: 'Fast Demo Store',
12
- titleTemplate: '%s | FastStore',
13
- author: 'Store Framework'
14
- },
15
- // Theming
16
- theme: 'custom-theme',
17
- // Ecommerce Platform
18
- platform: 'vtex',
19
- // Platform specific configs for API
20
- api: {
21
- storeId: 'storeframework',
22
- workspace: 'master',
23
- environment: 'vtexcommercestable',
24
- hideUnavailableItems: false,
25
- incrementAddress: true
26
- },
27
- // Default session
28
- session: {
29
- currency: {
30
- code: 'USD',
31
- symbol: '$'
32
- },
33
- locale: 'en-US',
34
- channel: '{"salesChannel":"1","regionId":""}',
35
- country: 'USA',
36
- deliveryMode: null,
37
- addressType: null,
38
- postalCode: null,
39
- geoCoordinates: null,
40
- person: null
41
- },
42
- // Default cart
43
- cart: {
44
- id: '',
45
- items: [],
46
- messages: [],
47
- shouldSplitItem: true
48
- },
49
- // Production URLs
50
- storeUrl: 'https://vtexfaststore.com',
51
- secureSubdomain: 'https://secure.vtexfaststore.com',
52
- checkoutUrl: 'https://secure.vtexfaststore.com/checkout',
53
- loginUrl: 'https://secure.vtexfaststore.com/api/io/login',
54
- accountUrl: 'https://secure.vtexfaststore.com/api/io/account',
55
- // Preview redirects
56
- previewRedirects: {
57
- home: '/',
58
- plp: '/office',
59
- search: '/s?q=headphone',
60
- pdp: '/apple-magic-mouse/p'
61
- },
62
- // Lighthouse CI
63
- lighthouse: {
64
- server: process.env.BASE_SITE_URL || 'http://localhost:3000',
65
- pages: {
66
- home: '/',
67
- pdp: '/apple-magic-mouse/p',
68
- collection: '/office'
69
- }
70
- },
71
- // E2E CI
72
- cypress: {
73
- pages: {
74
- home: '/',
75
- pdp: '/apple-magic-mouse/p',
76
- collection: '/office',
77
- collection_2: '/technology',
78
- collection_filtered: '/office/?category-1=office&marca=acer&facets=category-1%2Cmarca',
79
- search: '/s?q=orange'
80
- }
81
- },
82
- analytics: {
83
- // https://developers.google.com/tag-platform/tag-manager/web#standard_web_page_installation,
84
- gtmContainerId: 'GTM-PGHZ95N'
85
- },
86
- experimental: {
87
- cypressVersion: 12,
88
- enableCypressExtension: false,
89
- noRobots: false
90
- }
91
- };
92
-
93
- /***/ }),
94
-
95
- /***/ 5576:
96
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
97
-
98
- const defaultConfig = __webpack_require__(4918);
99
-
100
- const starterConfig = __webpack_require__(141);
101
-
102
- const deepmerge = __webpack_require__(6330);
103
- /**
104
- * @type {typeof defaultConfig & Record<string, any>}
105
- * */
106
-
107
-
108
- const finalConfig = deepmerge(defaultConfig, starterConfig);
109
- module.exports = finalConfig;
110
-
111
- /***/ }),
112
-
113
- /***/ 141:
114
- /***/ ((module) => {
115
-
116
- // This is a placeholder file for when starter files are copied here
117
- module.exports = {};
118
-
119
- /***/ })
120
-
121
- };
122
- ;