@faststore/core 2.0.83-alpha.0 → 2.0.87-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/.turbo/turbo-build.log +6 -7
  2. package/CHANGELOG.md +12 -0
  3. package/package.json +4 -4
  4. package/src/Layout.tsx +2 -2
  5. package/src/components/common/Toast/Toast.tsx +2 -4
  6. package/src/components/sections/Newsletter/Newsletter.tsx +5 -5
  7. package/src/components/sections/ProductDetails/ProductDetails.tsx +7 -5
  8. package/src/components/sections/ProductDetails/product-details.module.scss +0 -5
  9. package/src/components/ui/SkuSelector/Selectors.stories.mdx +5 -1
  10. package/src/components/ui/SkuSelector/Selectors.tsx +40 -54
  11. package/src/components/ui/SkuSelector/index.ts +0 -2
  12. package/src/sdk/cart/index.ts +2 -2
  13. package/.next/BUILD_ID +0 -1
  14. package/.next/build-manifest.json +0 -103
  15. package/.next/cache/.tsbuildinfo +0 -1
  16. package/.next/cache/config.json +0 -7
  17. package/.next/cache/eslint/.cache_1gneedd +0 -1
  18. package/.next/cache/next-server.js.nft.json +0 -1
  19. package/.next/cache/webpack/client-production/0.pack +0 -0
  20. package/.next/cache/webpack/client-production/index.pack +0 -0
  21. package/.next/cache/webpack/server-production/0.pack +0 -0
  22. package/.next/cache/webpack/server-production/index.pack +0 -0
  23. package/.next/export-marker.json +0 -1
  24. package/.next/images-manifest.json +0 -1
  25. package/.next/next-server.js.nft.json +0 -1
  26. package/.next/package.json +0 -1
  27. package/.next/prerender-manifest.json +0 -1
  28. package/.next/react-loadable-manifest.json +0 -52
  29. package/.next/required-server-files.json +0 -1
  30. package/.next/routes-manifest.json +0 -1
  31. package/.next/server/chunks/1317.js +0 -125
  32. package/.next/server/chunks/1394.js +0 -3801
  33. package/.next/server/chunks/1444.js +0 -464
  34. package/.next/server/chunks/1608.js +0 -515
  35. package/.next/server/chunks/2154.js +0 -206
  36. package/.next/server/chunks/2439.js +0 -175
  37. package/.next/server/chunks/247.js +0 -61
  38. package/.next/server/chunks/2914.js +0 -96
  39. package/.next/server/chunks/3264.js +0 -67
  40. package/.next/server/chunks/350.js +0 -120
  41. package/.next/server/chunks/3746.js +0 -237
  42. package/.next/server/chunks/3898.js +0 -240
  43. package/.next/server/chunks/4312.js +0 -712
  44. package/.next/server/chunks/4371.js +0 -1467
  45. package/.next/server/chunks/4849.js +0 -664
  46. package/.next/server/chunks/5098.js +0 -124
  47. package/.next/server/chunks/5576.js +0 -72
  48. package/.next/server/chunks/6280.js +0 -417
  49. package/.next/server/chunks/6307.js +0 -109
  50. package/.next/server/chunks/6465.js +0 -91
  51. package/.next/server/chunks/650.js +0 -216
  52. package/.next/server/chunks/676.js +0 -32
  53. package/.next/server/chunks/6859.js +0 -959
  54. package/.next/server/chunks/6881.js +0 -320
  55. package/.next/server/chunks/7104.js +0 -196
  56. package/.next/server/chunks/7183.js +0 -72
  57. package/.next/server/chunks/7377.js +0 -82
  58. package/.next/server/chunks/7732.js +0 -51
  59. package/.next/server/chunks/7992.js +0 -562
  60. package/.next/server/chunks/8098.js +0 -266
  61. package/.next/server/chunks/8287.js +0 -79
  62. package/.next/server/chunks/8872.js +0 -378
  63. package/.next/server/chunks/9143.js +0 -106
  64. package/.next/server/chunks/953.js +0 -674
  65. package/.next/server/chunks/9854.js +0 -72
  66. package/.next/server/chunks/font-manifest.json +0 -1
  67. package/.next/server/font-manifest.json +0 -1
  68. package/.next/server/middleware-build-manifest.js +0 -1
  69. package/.next/server/middleware-manifest.json +0 -6
  70. package/.next/server/middleware-react-loadable-manifest.js +0 -1
  71. package/.next/server/pages/404.js.nft.json +0 -1
  72. package/.next/server/pages/500.js.nft.json +0 -1
  73. package/.next/server/pages/[...slug].js +0 -633
  74. package/.next/server/pages/[...slug].js.nft.json +0 -1
  75. package/.next/server/pages/[slug]/p.js +0 -2586
  76. package/.next/server/pages/[slug]/p.js.nft.json +0 -1
  77. package/.next/server/pages/_app.js +0 -2082
  78. package/.next/server/pages/_app.js.nft.json +0 -1
  79. package/.next/server/pages/_document.js +0 -304
  80. package/.next/server/pages/_document.js.nft.json +0 -1
  81. package/.next/server/pages/_error.js +0 -164
  82. package/.next/server/pages/_error.js.nft.json +0 -1
  83. package/.next/server/pages/account.js.nft.json +0 -1
  84. package/.next/server/pages/api/graphql.js +0 -259
  85. package/.next/server/pages/api/graphql.js.nft.json +0 -1
  86. package/.next/server/pages/api/preview.js +0 -118
  87. package/.next/server/pages/api/preview.js.nft.json +0 -1
  88. package/.next/server/pages/checkout.js.nft.json +0 -1
  89. package/.next/server/pages/en-US/404.html +0 -81
  90. package/.next/server/pages/en-US/500.html +0 -81
  91. package/.next/server/pages/en-US/account.html +0 -81
  92. package/.next/server/pages/en-US/checkout.html +0 -81
  93. package/.next/server/pages/en-US/login.html +0 -81
  94. package/.next/server/pages/en-US/s.html +0 -81
  95. package/.next/server/pages/en-US.html +0 -81
  96. package/.next/server/pages/en-US.json +0 -1
  97. package/.next/server/pages/index.js +0 -428
  98. package/.next/server/pages/index.js.nft.json +0 -1
  99. package/.next/server/pages/login.js.nft.json +0 -1
  100. package/.next/server/pages/s.js.nft.json +0 -1
  101. package/.next/server/pages-manifest.json +0 -16
  102. package/.next/server/webpack-api-runtime.js +0 -229
  103. package/.next/server/webpack-runtime.js +0 -229
  104. package/.next/static/chunks/143.dd8a556e6957baa1.js +0 -1
  105. package/.next/static/chunks/153-a20e3f2da180607e.js +0 -1
  106. package/.next/static/chunks/29.8b3dad75b915d222.js +0 -1
  107. package/.next/static/chunks/307.10facde65af3066a.js +0 -1
  108. package/.next/static/chunks/337-cf283e91e431869b.js +0 -1
  109. package/.next/static/chunks/351-a4e28d64f48c5269.js +0 -1
  110. package/.next/static/chunks/380-efd3541ef85300d5.js +0 -1
  111. package/.next/static/chunks/608.59e69b83f35d9c44.js +0 -1
  112. package/.next/static/chunks/650.807852d1c36bfe44.js +0 -1
  113. package/.next/static/chunks/651.7142f31ce1e052b3.js +0 -1
  114. package/.next/static/chunks/686.41582b9e75eaba89.js +0 -1
  115. package/.next/static/chunks/741.52f7fb873418346f.js +0 -1
  116. package/.next/static/chunks/817-f2821b9a40663949.js +0 -1
  117. package/.next/static/chunks/843.fab5a00e170b4f11.js +0 -1
  118. package/.next/static/chunks/909.787de82e0ed9eea3.js +0 -1
  119. package/.next/static/chunks/98.97381d2021f86cd9.js +0 -1
  120. package/.next/static/chunks/framework-dfd14d7ce6600b03.js +0 -1
  121. package/.next/static/chunks/main-9746772201fe3ac1.js +0 -1
  122. package/.next/static/chunks/pages/404-ba608a2a9f0c420a.js +0 -1
  123. package/.next/static/chunks/pages/500-910883c20541d9ce.js +0 -1
  124. package/.next/static/chunks/pages/[...slug]-51896262f6760bf1.js +0 -1
  125. package/.next/static/chunks/pages/[slug]/p-08c1f443f7d84d0d.js +0 -1
  126. package/.next/static/chunks/pages/_app-81a4a14c7f15c641.js +0 -1
  127. package/.next/static/chunks/pages/_error-a7a0c1d9bfbb4f38.js +0 -1
  128. package/.next/static/chunks/pages/account-f19102933e6fd84c.js +0 -1
  129. package/.next/static/chunks/pages/checkout-f8cb7cb22225ef9d.js +0 -1
  130. package/.next/static/chunks/pages/index-912d65fde37706bb.js +0 -1
  131. package/.next/static/chunks/pages/login-0b9ea80d9fa0f91b.js +0 -1
  132. package/.next/static/chunks/pages/s-86fe1e3303388123.js +0 -1
  133. package/.next/static/chunks/polyfills-c67a75d1b6f99dc8.js +0 -1
  134. package/.next/static/chunks/webpack-1352532ac51c6a2d.js +0 -1
  135. package/.next/static/css/430b8cafbf7c23c1.css +0 -1
  136. package/.next/static/css/43d61b402f41569b.css +0 -1
  137. package/.next/static/css/4d7e7f156483493d.css +0 -1
  138. package/.next/static/css/6507cb48401e73a4.css +0 -1
  139. package/.next/static/css/9dd1d1084d254c66.css +0 -1
  140. package/.next/static/css/9e7c9877b9f78c63.css +0 -1
  141. package/.next/static/css/9e8d9784094a047f.css +0 -1
  142. package/.next/static/css/b2f16bd4b93e0aca.css +0 -1
  143. package/.next/static/css/bd743407c8049677.css +0 -1
  144. package/.next/static/dh7cD3fiozdMG3HhpxK6m/_buildManifest.js +0 -1
  145. package/.next/static/dh7cD3fiozdMG3HhpxK6m/_ssgManifest.js +0 -1
  146. package/.next/static/media/brandless-neutral.76ddf63a.png +0 -0
  147. package/.next/trace +0 -65
  148. package/public/~partytown/debug/partytown-atomics.js +0 -556
  149. package/public/~partytown/debug/partytown-media.js +0 -374
  150. package/public/~partytown/debug/partytown-sandbox-sw.js +0 -543
  151. package/public/~partytown/debug/partytown-sw.js +0 -59
  152. package/public/~partytown/debug/partytown-ww-atomics.js +0 -1789
  153. package/public/~partytown/debug/partytown-ww-sw.js +0 -1781
  154. package/public/~partytown/debug/partytown.js +0 -72
  155. package/public/~partytown/partytown-atomics.js +0 -2
  156. package/public/~partytown/partytown-media.js +0 -2
  157. package/public/~partytown/partytown-sw.js +0 -2
  158. package/public/~partytown/partytown.js +0 -2
  159. package/src/components/ui/SkuSelector/SkuSelector.stories.mdx +0 -345
  160. package/src/components/ui/SkuSelector/SkuSelector.tsx +0 -46
  161. package/src/components/ui/SkuSelector/sku-selector.module.scss +0 -172
  162. package/src/components/ui/SkuSelector/skuVariants.ts +0 -59
  163. package/src/components/ui/Toast/Toast.stories.mdx +0 -158
  164. package/src/components/ui/Toast/Toast.tsx +0 -56
  165. package/src/components/ui/Toast/index.ts +0 -1
  166. package/src/components/ui/Toast/toast.module.scss +0 -112
@@ -1,378 +0,0 @@
1
- exports.id = 8872;
2
- exports.ids = [8872];
3
- exports.modules = {
4
-
5
- /***/ 2834:
6
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
7
-
8
- "use strict";
9
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
10
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
12
- /* harmony export */ });
13
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
14
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
15
- /* harmony import */ var react_intersection_observer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9785);
16
- /* harmony import */ var react_intersection_observer__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_intersection_observer__WEBPACK_IMPORTED_MODULE_1__);
17
- /* harmony import */ var src_sdk_analytics_hooks_useViewItemListEvent__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5184);
18
- /* harmony import */ var src_components_ui_Tiles__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5534);
19
- /* harmony import */ var src_components_product_ProductCard__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(6475);
20
- /* harmony import */ var src_components_skeletons_ProductTilesSkeleton__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(638);
21
- /* harmony import */ var src_sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(4867);
22
- /* harmony import */ var _Section__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(8879);
23
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(997);
24
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__);
25
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_6__]);
26
- src_sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_6__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
27
- const _excluded = ["title"];
28
-
29
- 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; }
30
-
31
- 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; }
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39
-
40
-
41
-
42
-
43
- const NUMBER_ITEMS_TO_EXPAND_FIRST = 3;
44
- const NUMBER_ITEMS_TO_EXPAND_FIRST_TWO = 2;
45
-
46
- const getRatio = (products, idx) => {
47
- const expandsFirstTile = products === NUMBER_ITEMS_TO_EXPAND_FIRST && idx === 0;
48
- const expandsFirstTwoTile = products === NUMBER_ITEMS_TO_EXPAND_FIRST_TWO && (idx === 0 || idx === 1);
49
-
50
- if (expandsFirstTile || expandsFirstTwoTile) {
51
- return 5 / 3;
52
- }
53
-
54
- return 3 / 4;
55
- };
56
-
57
- const ProductTiles = _ref => {
58
- let {
59
- title
60
- } = _ref,
61
- variables = _objectWithoutProperties(_ref, _excluded);
62
-
63
- const viewedOnce = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(false);
64
- const {
65
- ref,
66
- inView
67
- } = (0,react_intersection_observer__WEBPACK_IMPORTED_MODULE_1__.useInView)();
68
- const products = (0,src_sdk_product_useProductsQuery__WEBPACK_IMPORTED_MODULE_6__/* .useProductsQuery */ .kN)(variables);
69
- const productEdges = products?.edges ?? [];
70
- const {
71
- sendViewItemListEvent
72
- } = (0,src_sdk_analytics_hooks_useViewItemListEvent__WEBPACK_IMPORTED_MODULE_2__/* .useViewItemListEvent */ .m)({
73
- products: productEdges,
74
- title,
75
- page: 0,
76
- pageSize: 0
77
- });
78
- (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
79
- if (inView && !viewedOnce.current && productEdges.length) {
80
- sendViewItemListEvent();
81
- viewedOnce.current = true;
82
- }
83
- }, [inView, productEdges.length, sendViewItemListEvent]);
84
-
85
- if (products?.edges.length === 0) {
86
- return null;
87
- }
88
-
89
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsxs)(_Section__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
90
- className: "layout__section layout__content",
91
- ref: ref,
92
- children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx("h2", {
93
- className: "text__title-section",
94
- children: title
95
- }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx("div", {
96
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx(src_components_skeletons_ProductTilesSkeleton__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
97
- loading: !products,
98
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx(src_components_ui_Tiles__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
99
- children: productEdges.map((product, idx) => /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx(src_components_ui_Tiles__WEBPACK_IMPORTED_MODULE_3__/* .Tile */ .n, {
100
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx(src_components_product_ProductCard__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
101
- "data-testid": "tile-card",
102
- product: product.node,
103
- index: idx + 1,
104
- variant: "wide",
105
- aspectRatio: getRatio(productEdges.length, idx)
106
- })
107
- }, product.node.id))
108
- })
109
- })
110
- })]
111
- });
112
- };
113
-
114
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ProductTiles);
115
- __webpack_async_result__();
116
- } catch(e) { __webpack_async_result__(e); } });
117
-
118
- /***/ }),
119
-
120
- /***/ 8872:
121
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
122
-
123
- "use strict";
124
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
125
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
126
- /* harmony export */ "Z": () => (/* reexport safe */ _ProductTiles__WEBPACK_IMPORTED_MODULE_0__.Z)
127
- /* harmony export */ });
128
- /* harmony import */ var _ProductTiles__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2834);
129
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_ProductTiles__WEBPACK_IMPORTED_MODULE_0__]);
130
- _ProductTiles__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
131
-
132
- __webpack_async_result__();
133
- } catch(e) { __webpack_async_result__(e); } });
134
-
135
- /***/ }),
136
-
137
- /***/ 638:
138
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
139
-
140
- "use strict";
141
-
142
- // EXPORTS
143
- __webpack_require__.d(__webpack_exports__, {
144
- "s": () => (/* reexport */ ProductTileSkeleton_ProductTileSkeleton),
145
- "Z": () => (/* reexport */ ProductTilesSkeleton_ProductTilesSkeleton)
146
- });
147
-
148
- // EXTERNAL MODULE: ./src/components/ui/Tiles/index.ts + 3 modules
149
- var Tiles = __webpack_require__(5534);
150
- // EXTERNAL MODULE: external "react/jsx-runtime"
151
- var jsx_runtime_ = __webpack_require__(997);
152
- ;// CONCATENATED MODULE: ./src/components/skeletons/ProductTilesSkeleton/ProductTilesSkeleton.tsx
153
-
154
- // TODO: // Replace it when items number become dynamically defined
155
-
156
-
157
-
158
- const DEFAULT_ITEMS_NUMBER = 3;
159
- const DEFAULT_ITEMS_NUMBER_TWO = 2;
160
-
161
- const getRatio = (products, idx) => {
162
- const expandsFirstTile = products === DEFAULT_ITEMS_NUMBER && idx === 0;
163
- const expandsFirstTwoTile = products === DEFAULT_ITEMS_NUMBER_TWO && (idx === 0 || idx === 1);
164
-
165
- if (expandsFirstTile || expandsFirstTwoTile) {
166
- return 5 / 3;
167
- }
168
-
169
- return 3 / 4;
170
- };
171
-
172
- function ProductTilesSkeleton({
173
- children,
174
- loading = true
175
- }) {
176
- return loading ? /*#__PURE__*/jsx_runtime_.jsx(Tiles/* default */.Z, {
177
- children: Array.from({
178
- length: DEFAULT_ITEMS_NUMBER
179
- }, (_, index) => /*#__PURE__*/jsx_runtime_.jsx(Tiles/* Tile */.n, {
180
- children: /*#__PURE__*/jsx_runtime_.jsx(ProductTileSkeleton_ProductTileSkeleton, {
181
- index: index + 1,
182
- aspectRatio: getRatio(DEFAULT_ITEMS_NUMBER, index)
183
- })
184
- }, String(index)))
185
- }) : /*#__PURE__*/jsx_runtime_.jsx(jsx_runtime_.Fragment, {
186
- children: children
187
- });
188
- }
189
-
190
- /* harmony default export */ const ProductTilesSkeleton_ProductTilesSkeleton = (ProductTilesSkeleton);
191
- // EXTERNAL MODULE: ../components/dist/atoms/Skeleton/Skeleton.js
192
- var Skeleton = __webpack_require__(2928);
193
- // EXTERNAL MODULE: ./src/components/skeletons/ProductTilesSkeleton/ProductTileSkeleton/product-tile-skeleton.module.scss
194
- var product_tile_skeleton_module = __webpack_require__(2731);
195
- var product_tile_skeleton_module_default = /*#__PURE__*/__webpack_require__.n(product_tile_skeleton_module);
196
- ;// CONCATENATED MODULE: ./src/components/skeletons/ProductTilesSkeleton/ProductTileSkeleton/ProductTileSkeleton.tsx
197
-
198
-
199
-
200
-
201
-
202
- function ProductTileSkeleton({
203
- index,
204
- aspectRatio = 1
205
- }) {
206
- return /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
207
- "data-fs-product-tile-skeleton": true,
208
- className: (product_tile_skeleton_module_default()).fsProductTileSkeleton,
209
- "data-fs-product-tile-skeleton-index": index,
210
- children: [/*#__PURE__*/jsx_runtime_.jsx("div", {
211
- "data-fs-product-tile-skeleton-image": true,
212
- "data-fs-product-tile-skeleton-index": index,
213
- style: {
214
- '--fs-product-tile-skeleton-image-aspect-ratio': aspectRatio
215
- },
216
- children: /*#__PURE__*/jsx_runtime_.jsx(Skeleton/* default */.Z, {
217
- size: {
218
- width: 'auto',
219
- height: '100%'
220
- },
221
- loading: true
222
- })
223
- }), /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
224
- "data-fs-product-tile-skeleton-content": true,
225
- "data-fs-product-tile-skeleton-index": index,
226
- children: [/*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
227
- "data-fs-product-tile-skeleton-heading": true,
228
- children: [/*#__PURE__*/jsx_runtime_.jsx("div", {
229
- "data-fs-product-tile-skeleton-text": true,
230
- "data-fs-product-tile-skeleton-index": index,
231
- children: /*#__PURE__*/jsx_runtime_.jsx(Skeleton/* default */.Z, {
232
- size: {
233
- width: '70%',
234
- height: '1.5rem'
235
- }
236
- })
237
- }), /*#__PURE__*/jsx_runtime_.jsx("div", {
238
- "data-fs-product-tile-skeleton-price": true,
239
- children: /*#__PURE__*/jsx_runtime_.jsx(Skeleton/* default */.Z, {
240
- size: {
241
- width: '60%',
242
- height: '1.5rem'
243
- }
244
- })
245
- })]
246
- }), /*#__PURE__*/jsx_runtime_.jsx("div", {
247
- "data-fs-product-tile-skeleton-badge": true,
248
- "data-fs-product-tile-skeleton-index": index,
249
- children: /*#__PURE__*/jsx_runtime_.jsx(Skeleton/* default */.Z, {
250
- size: {
251
- width: '6rem',
252
- height: '2rem'
253
- },
254
- border: "pill"
255
- })
256
- })]
257
- })]
258
- });
259
- }
260
-
261
- /* harmony default export */ const ProductTileSkeleton_ProductTileSkeleton = (ProductTileSkeleton);
262
- ;// CONCATENATED MODULE: ./src/components/skeletons/ProductTilesSkeleton/ProductTileSkeleton/index.ts
263
-
264
- ;// CONCATENATED MODULE: ./src/components/skeletons/ProductTilesSkeleton/index.ts
265
-
266
-
267
-
268
- /***/ }),
269
-
270
- /***/ 5534:
271
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
272
-
273
- "use strict";
274
-
275
- // EXPORTS
276
- __webpack_require__.d(__webpack_exports__, {
277
- "n": () => (/* reexport */ Tiles_Tile),
278
- "Z": () => (/* reexport */ ui_Tiles_Tiles)
279
- });
280
-
281
- // EXTERNAL MODULE: external "react"
282
- var external_react_ = __webpack_require__(6689);
283
- var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
284
- ;// CONCATENATED MODULE: ../ui/dist/components/organisms/Tiles/Tiles.js
285
-
286
-
287
- const MIN_CHILDREN = 2;
288
- const MAX_CHILDREN = 4;
289
- const NUMBER_ITEMS_TO_EXPAND_FIRST_TWO = 2;
290
- const NUMBER_ITEMS_TO_EXPAND_FIRST = 3;
291
- const Tiles = (0,external_react_.forwardRef)(function Tiles({ testId = 'store-tiles', children, ...otherProps }, ref) {
292
- const childrenCount = external_react_.Children.count(children);
293
- if (false) {}
294
- if (false) {}
295
- const expandedClass = childrenCount === NUMBER_ITEMS_TO_EXPAND_FIRST
296
- ? 'expanded-first'
297
- : childrenCount === NUMBER_ITEMS_TO_EXPAND_FIRST_TWO
298
- ? 'expanded-first-two'
299
- : '';
300
- return (external_react_default().createElement("ul", { ref: ref, "data-fs-tiles": true, "data-fs-tiles-variant": expandedClass, "data-testid": testId, ...otherProps }, children));
301
- });
302
- /* harmony default export */ const Tiles_Tiles = (Tiles);
303
- //# sourceMappingURL=Tiles.js.map
304
- // EXTERNAL MODULE: ./src/components/ui/Tiles/tiles.module.scss
305
- var tiles_module = __webpack_require__(9728);
306
- var tiles_module_default = /*#__PURE__*/__webpack_require__.n(tiles_module);
307
- // EXTERNAL MODULE: external "react/jsx-runtime"
308
- var jsx_runtime_ = __webpack_require__(997);
309
- ;// CONCATENATED MODULE: ./src/components/ui/Tiles/Tiles.tsx
310
- const _excluded = ["children"];
311
-
312
- 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; }
313
-
314
- 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; }
315
-
316
- 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; }
317
-
318
- 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; }
319
-
320
- 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; }
321
-
322
-
323
-
324
-
325
-
326
- const Tiles_Tiles_Tiles = _ref => {
327
- let {
328
- children
329
- } = _ref,
330
- otherProps = _objectWithoutProperties(_ref, _excluded);
331
-
332
- return /*#__PURE__*/jsx_runtime_.jsx(Tiles_Tiles, _objectSpread(_objectSpread({
333
- className: (tiles_module_default()).fsTiles
334
- }, otherProps), {}, {
335
- children: children
336
- }));
337
- };
338
-
339
- /* harmony default export */ const ui_Tiles_Tiles = (Tiles_Tiles_Tiles);
340
- ;// CONCATENATED MODULE: ../ui/dist/components/organisms/Tiles/Tile.js
341
-
342
- const Tile = (0,external_react_.forwardRef)(function Tile({ testId = 'store-tile', children, ...otherProps }, ref) {
343
- return (external_react_default().createElement("li", { ref: ref, "data-fs-tile": true, "data-testid": testId, ...otherProps }, children));
344
- });
345
- /* harmony default export */ const Tiles_Tile = (Tile);
346
- //# sourceMappingURL=Tile.js.map
347
- ;// CONCATENATED MODULE: ./src/components/ui/Tiles/index.ts
348
-
349
-
350
-
351
- /***/ }),
352
-
353
- /***/ 2731:
354
- /***/ ((module) => {
355
-
356
- // Exports
357
- module.exports = {
358
- "fs-product-tile-skeleton": "product-tile-skeleton_fs-product-tile-skeleton___HloN",
359
- "fsProductTileSkeleton": "product-tile-skeleton_fs-product-tile-skeleton___HloN"
360
- };
361
-
362
-
363
- /***/ }),
364
-
365
- /***/ 9728:
366
- /***/ ((module) => {
367
-
368
- // Exports
369
- module.exports = {
370
- "fs-tiles": "tiles_fs-tiles__N15Au",
371
- "fsTiles": "tiles_fs-tiles__N15Au"
372
- };
373
-
374
-
375
- /***/ })
376
-
377
- };
378
- ;
@@ -1,106 +0,0 @@
1
- "use strict";
2
- exports.id = 9143;
3
- exports.ids = [9143];
4
- exports.modules = {
5
-
6
- /***/ 9143:
7
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
8
-
9
- __webpack_require__.r(__webpack_exports__);
10
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
12
- /* harmony export */ });
13
- /* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7183);
14
- /* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_faststore_config__WEBPACK_IMPORTED_MODULE_0__);
15
- 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; }
16
-
17
- 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; }
18
-
19
- 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; }
20
-
21
- /**
22
- * More info at: https://www.notion.so/vtexhandbook/Event-API-Documentation-48eee26730cf4d7f80f8fd7262231f84
23
- */
24
-
25
- const THIRTY_MINUTES_S = 30 * 60;
26
- const ONE_YEAR_S = 365 * 24 * 3600;
27
-
28
- const randomUUID = () => typeof crypto.randomUUID === 'function' ? crypto.randomUUID() : (Math.random() * 1e6).toFixed(0);
29
-
30
- const createStorage = (key, expiresSecond) => {
31
- const timelapsed = past => (Date.now() - past) / 1e3;
32
-
33
- return () => {
34
- const item = JSON.parse(localStorage.getItem(key) ?? 'null');
35
- const isExpired = !item || timelapsed(item.createdAt) > expiresSecond;
36
- const payload = isExpired ? randomUUID() : item.payload;
37
-
38
- if (isExpired) {
39
- const data = {
40
- payload,
41
- createdAt: Date.now()
42
- };
43
- localStorage.setItem(key, JSON.stringify(data));
44
- }
45
-
46
- return payload;
47
- };
48
- };
49
-
50
- const user = {
51
- anonymous: createStorage('vtex.search.anonymous', ONE_YEAR_S),
52
- session: createStorage('vtex.search.session', THIRTY_MINUTES_S)
53
- };
54
-
55
- const sendEvent = options => fetch(`https://sp.vtex.com/event-api/v1/${(_faststore_config__WEBPACK_IMPORTED_MODULE_0___default().api.storeId)}/event`, {
56
- method: 'POST',
57
- body: JSON.stringify(_objectSpread(_objectSpread({}, options), {}, {
58
- userAgent: navigator.userAgent,
59
- anonymous: user.anonymous(),
60
- session: user.session()
61
- })),
62
- headers: {
63
- 'content-type': 'application/json'
64
- }
65
- });
66
-
67
- const isFullTextSearch = url => typeof url.searchParams.get('q') === 'string' && /^\/s(\/)?$/g.test(url.pathname);
68
-
69
- const handleEvent = event => {
70
- if (event.name !== 'search_select_item') {
71
- return;
72
- }
73
-
74
- const url = new URL(event.params.url);
75
-
76
- if (!isFullTextSearch(url)) {
77
- return;
78
- }
79
-
80
- for (const item of event.params.items ?? []) {
81
- const productId = item.item_id ?? item.item_variant;
82
- const position = item.index;
83
-
84
- if (productId && position) {
85
- sendEvent({
86
- type: 'search.click',
87
- productId,
88
- position,
89
- url: url.href,
90
- text: url.searchParams.get('q') ?? '<empty>'
91
- });
92
- }
93
- }
94
- };
95
-
96
- setInterval(() => sendEvent({
97
- type: 'session.ping'
98
- }), 60 * 1e3
99
- /* One minute */
100
- );
101
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (handleEvent);
102
-
103
- /***/ })
104
-
105
- };
106
- ;