@faststore/core 2.0.98-alpha.0 → 2.0.100-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 (175) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/build-manifest.json +99 -0
  3. package/.next/cache/.tsbuildinfo +1 -0
  4. package/.next/cache/config.json +7 -0
  5. package/.next/cache/eslint/.cache_1gneedd +1 -0
  6. package/.next/cache/next-server.js.nft.json +1 -0
  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/export-marker.json +1 -0
  12. package/.next/images-manifest.json +1 -0
  13. package/.next/next-server.js.nft.json +1 -0
  14. package/.next/package.json +1 -0
  15. package/.next/prerender-manifest.json +1 -0
  16. package/.next/react-loadable-manifest.json +44 -0
  17. package/.next/required-server-files.json +1 -0
  18. package/.next/routes-manifest.json +1 -0
  19. package/.next/server/chunks/120.js +435 -0
  20. package/.next/server/chunks/123.js +58 -0
  21. package/.next/server/chunks/1394.js +3801 -0
  22. package/.next/server/chunks/1608.js +515 -0
  23. package/.next/server/chunks/2154.js +206 -0
  24. package/.next/server/chunks/247.js +61 -0
  25. package/.next/server/chunks/2914.js +95 -0
  26. package/.next/server/chunks/2922.js +7293 -0
  27. package/.next/server/chunks/3264.js +67 -0
  28. package/.next/server/chunks/3431.js +7241 -0
  29. package/.next/server/chunks/350.js +142 -0
  30. package/.next/server/chunks/3746.js +237 -0
  31. package/.next/server/chunks/3898.js +240 -0
  32. package/.next/server/chunks/4312.js +674 -0
  33. package/.next/server/chunks/4371.js +1473 -0
  34. package/.next/server/chunks/5098.js +124 -0
  35. package/.next/server/chunks/5576.js +72 -0
  36. package/.next/server/chunks/6280.js +322 -0
  37. package/.next/server/chunks/6465.js +91 -0
  38. package/.next/server/chunks/676.js +32 -0
  39. package/.next/server/chunks/6859.js +959 -0
  40. package/.next/server/chunks/6881.js +320 -0
  41. package/.next/server/chunks/6898.js +149 -0
  42. package/.next/server/chunks/7104.js +196 -0
  43. package/.next/server/chunks/7181.js +658 -0
  44. package/.next/server/chunks/7183.js +72 -0
  45. package/.next/server/chunks/7992.js +570 -0
  46. package/.next/server/chunks/8098.js +246 -0
  47. package/.next/server/chunks/810.js +432 -0
  48. package/.next/server/chunks/8287.js +58 -0
  49. package/.next/server/chunks/9143.js +106 -0
  50. package/.next/server/chunks/9152.js +213 -0
  51. package/.next/server/chunks/953.js +646 -0
  52. package/.next/server/chunks/9557.js +117 -0
  53. package/.next/server/chunks/9854.js +72 -0
  54. package/.next/server/chunks/font-manifest.json +1 -0
  55. package/.next/server/font-manifest.json +1 -0
  56. package/.next/server/middleware-build-manifest.js +1 -0
  57. package/.next/server/middleware-manifest.json +6 -0
  58. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  59. package/.next/server/pages/404.js.nft.json +1 -0
  60. package/.next/server/pages/500.js.nft.json +1 -0
  61. package/.next/server/pages/[...slug].js +671 -0
  62. package/.next/server/pages/[...slug].js.nft.json +1 -0
  63. package/.next/server/pages/[slug]/p.js +2393 -0
  64. package/.next/server/pages/[slug]/p.js.nft.json +1 -0
  65. package/.next/server/pages/_app.js +2369 -0
  66. package/.next/server/pages/_app.js.nft.json +1 -0
  67. package/.next/server/pages/_document.js +304 -0
  68. package/.next/server/pages/_document.js.nft.json +1 -0
  69. package/.next/server/pages/_error.js +164 -0
  70. package/.next/server/pages/_error.js.nft.json +1 -0
  71. package/.next/server/pages/account.js.nft.json +1 -0
  72. package/.next/server/pages/api/graphql.js +315 -0
  73. package/.next/server/pages/api/graphql.js.nft.json +1 -0
  74. package/.next/server/pages/api/preview.js +118 -0
  75. package/.next/server/pages/api/preview.js.nft.json +1 -0
  76. package/.next/server/pages/checkout.js.nft.json +1 -0
  77. package/.next/server/pages/en-US/404.html +81 -0
  78. package/.next/server/pages/en-US/500.html +81 -0
  79. package/.next/server/pages/en-US/account.html +81 -0
  80. package/.next/server/pages/en-US/checkout.html +81 -0
  81. package/.next/server/pages/en-US/login.html +81 -0
  82. package/.next/server/pages/en-US/s.html +81 -0
  83. package/.next/server/pages/en-US.html +81 -0
  84. package/.next/server/pages/en-US.json +1 -0
  85. package/.next/server/pages/index.js +428 -0
  86. package/.next/server/pages/index.js.nft.json +1 -0
  87. package/.next/server/pages/login.js.nft.json +1 -0
  88. package/.next/server/pages/s.js.nft.json +1 -0
  89. package/.next/server/pages-manifest.json +16 -0
  90. package/.next/server/webpack-api-runtime.js +229 -0
  91. package/.next/server/webpack-runtime.js +229 -0
  92. package/.next/static/_W6shnELbnMsH_iBfBVBe/_buildManifest.js +1 -0
  93. package/.next/static/_W6shnELbnMsH_iBfBVBe/_ssgManifest.js +1 -0
  94. package/.next/static/chunks/143.dd8a556e6957baa1.js +1 -0
  95. package/.next/static/chunks/152.57849458d8337a92.js +1 -0
  96. package/.next/static/chunks/264-25ec99bbaf5d02b4.js +1 -0
  97. package/.next/static/chunks/351-a4e28d64f48c5269.js +1 -0
  98. package/.next/static/chunks/608.59e69b83f35d9c44.js +1 -0
  99. package/.next/static/chunks/651.7142f31ce1e052b3.js +1 -0
  100. package/.next/static/chunks/686.6c345856d484363b.js +1 -0
  101. package/.next/static/chunks/741.52f7fb873418346f.js +1 -0
  102. package/.next/static/chunks/781-7df372b5b56e3f96.js +1 -0
  103. package/.next/static/chunks/843.e1d0f9260a52f32c.js +1 -0
  104. package/.next/static/chunks/98.97381d2021f86cd9.js +1 -0
  105. package/.next/static/chunks/996.64460309250b214c.js +1 -0
  106. package/.next/static/chunks/framework-dfd14d7ce6600b03.js +1 -0
  107. package/.next/static/chunks/main-9746772201fe3ac1.js +1 -0
  108. package/.next/static/chunks/pages/404-ba608a2a9f0c420a.js +1 -0
  109. package/.next/static/chunks/pages/500-910883c20541d9ce.js +1 -0
  110. package/.next/static/chunks/pages/[...slug]-417e3b51bda1f5f3.js +1 -0
  111. package/.next/static/chunks/pages/[slug]/p-cbb4ca8d57bafa9f.js +1 -0
  112. package/.next/static/chunks/pages/_app-d757170e632a6003.js +1 -0
  113. package/.next/static/chunks/pages/_error-a7a0c1d9bfbb4f38.js +1 -0
  114. package/.next/static/chunks/pages/account-b8fc5222ffe89b60.js +1 -0
  115. package/.next/static/chunks/pages/checkout-f8cb7cb22225ef9d.js +1 -0
  116. package/.next/static/chunks/pages/index-9ea3f7868f5ed138.js +1 -0
  117. package/.next/static/chunks/pages/login-33954810b200eca8.js +1 -0
  118. package/.next/static/chunks/pages/s-ba2868e14fedb65b.js +1 -0
  119. package/.next/static/chunks/polyfills-c67a75d1b6f99dc8.js +1 -0
  120. package/.next/static/chunks/webpack-65b155971f3eac57.js +1 -0
  121. package/.next/static/css/10db3bc7ecdf0556.css +1 -0
  122. package/.next/static/css/43d61b402f41569b.css +1 -0
  123. package/.next/static/css/4899c3cc356704f9.css +1 -0
  124. package/.next/static/css/6507cb48401e73a4.css +1 -0
  125. package/.next/static/css/8ea129ea90e49e98.css +1 -0
  126. package/.next/static/css/b2f16bd4b93e0aca.css +1 -0
  127. package/.next/static/css/db63ea05e98cb7e8.css +1 -0
  128. package/.next/static/css/ea60a7e6c07ee644.css +1 -0
  129. package/.next/static/media/brandless-neutral.76ddf63a.png +0 -0
  130. package/.next/trace +65 -0
  131. package/.storybook/components/SectionItem.tsx +1 -3
  132. package/.turbo/turbo-build.log +16 -16
  133. package/CHANGELOG.md +10 -0
  134. package/cms/sections.json +843 -40
  135. package/package.json +4 -4
  136. package/public/icons.svg +60 -56
  137. package/public/~partytown/debug/partytown-atomics.js +556 -0
  138. package/public/~partytown/debug/partytown-media.js +374 -0
  139. package/public/~partytown/debug/partytown-sandbox-sw.js +543 -0
  140. package/public/~partytown/debug/partytown-sw.js +59 -0
  141. package/public/~partytown/debug/partytown-ww-atomics.js +1789 -0
  142. package/public/~partytown/debug/partytown-ww-sw.js +1781 -0
  143. package/public/~partytown/debug/partytown.js +72 -0
  144. package/public/~partytown/partytown-atomics.js +2 -0
  145. package/public/~partytown/partytown-media.js +2 -0
  146. package/public/~partytown/partytown-sw.js +2 -0
  147. package/public/~partytown/partytown.js +2 -0
  148. package/src/Layout.tsx +1 -2
  149. package/src/components/cart/CartSidebar/CartSidebar.tsx +6 -8
  150. package/src/components/cart/CartToggle/CartToggle.tsx +5 -2
  151. package/src/components/cart/EmptyCart/EmptyCart.tsx +1 -2
  152. package/src/components/common/Alert/Alert.tsx +1 -2
  153. package/src/components/common/Footer/Footer.tsx +3 -3
  154. package/src/components/common/Footer/FooterFlags.tsx +21 -18
  155. package/src/components/common/Navbar/Navbar.tsx +2 -4
  156. package/src/components/product/OutOfStock/OutOfStock.tsx +2 -3
  157. package/src/components/region/RegionButton/RegionButton.tsx +1 -2
  158. package/src/components/region/RegionModal/RegionalizationModalContent.tsx +1 -1
  159. package/src/components/search/SearchInput/SearchInput.tsx +17 -17
  160. package/src/components/sections/BannerText/BannerText.tsx +1 -0
  161. package/src/components/sections/Incentives/Incentives.tsx +1 -3
  162. package/src/components/sections/Newsletter/Newsletter.tsx +1 -2
  163. package/src/components/sections/ProducDetailsContent/ProductDetailsContent.tsx +24 -18
  164. package/src/components/sections/ProductGallery/EmptyGallery.tsx +1 -2
  165. package/src/components/sections/ProductGallery/ProductGallery.tsx +4 -5
  166. package/src/components/sections/ScrollToTopButton/ScrollToTopButton.tsx +1 -3
  167. package/src/components/ui/Breadcrumb/Breadcrumb.tsx +1 -2
  168. package/src/components/ui/Button/ButtonSignIn/ButtonSignIn.tsx +1 -2
  169. package/src/components/ui/Button/ButtonSignIn/ButtonSignInFallback/ButtonSignInFallback.tsx +1 -3
  170. package/src/components/ui/Carousel/Carousel.tsx +2 -4
  171. package/src/components/ui/Gift/Gift.tsx +6 -3
  172. package/src/components/ui/ImageGallery/ImageGallerySelector.tsx +5 -2
  173. package/src/pages/[...slug].tsx +1 -1
  174. package/src/components/ui/Icon/Icon.tsx +0 -35
  175. package/src/components/ui/Icon/index.ts +0 -1
@@ -0,0 +1,2369 @@
1
+ (() => {
2
+ var exports = {};
3
+ exports.id = 2888;
4
+ exports.ids = [2888];
5
+ exports.modules = {
6
+
7
+ /***/ 6970:
8
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9
+
10
+ "use strict";
11
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
12
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
13
+ /* harmony export */ });
14
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
15
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
16
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7865);
17
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4842);
18
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5045);
19
+
20
+
21
+ const Alert = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Alert({ testId = 'fs-alert', children, icon, dismissible, link, onClose, ...otherProps }, ref) {
22
+ const handleClose = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((event) => {
23
+ if (event.defaultPrevented) {
24
+ return;
25
+ }
26
+ onClose?.(event);
27
+ }, [onClose]);
28
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", { ref: ref, role: "alert", "data-fs-alert": true, "data-testid": testId, "data-fs-alert-dismissible": dismissible, ...otherProps },
29
+ react__WEBPACK_IMPORTED_MODULE_0___default().isValidElement(icon) && icon,
30
+ react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", { "data-fs-alert-content": true }, children),
31
+ link && react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { "data-fs-alert-link": true, variant: "inline", ...link }),
32
+ dismissible && (react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, { "data-fs-alert-button": true, "aria-label": "Close", onClick: handleClose },
33
+ react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", null,
34
+ react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, { name: "X" }))))));
35
+ });
36
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Alert);
37
+ //# sourceMappingURL=Alert.js.map
38
+
39
+ /***/ }),
40
+
41
+ /***/ 447:
42
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
43
+
44
+ "use strict";
45
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
46
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
47
+ /* harmony export */ });
48
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
49
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
50
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(875);
51
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2765);
52
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5045);
53
+
54
+
55
+ const SearchInputField = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function SearchInputField({ onSubmit, buttonIcon, 'aria-label': ariaLabel = 'search', testId = 'fs-search-input', buttonProps, ...otherProps }, ref) {
56
+ const inputRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
57
+ const formRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
58
+ const handleSubmit = (event) => {
59
+ event.preventDefault();
60
+ if (inputRef.current?.value !== '') {
61
+ onSubmit(inputRef.current.value);
62
+ }
63
+ };
64
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useImperativeHandle)(ref, () => ({
65
+ inputRef: inputRef.current,
66
+ formRef: formRef.current,
67
+ }));
68
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("form", { ref: formRef, "data-fs-search-input-field": true, "data-testid": testId, onSubmit: handleSubmit, role: "search" },
69
+ react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { ref: inputRef, "aria-label": ariaLabel, "data-fs-search-input-field-input": true, ...otherProps }),
70
+ react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, { type: "submit", "aria-label": "Submit Search", icon: buttonIcon ?? react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, { name: "MagnifyingGlass" }), ...buttonProps })));
71
+ });
72
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchInputField);
73
+ //# sourceMappingURL=SearchInputField.js.map
74
+
75
+ /***/ }),
76
+
77
+ /***/ 8907:
78
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
79
+
80
+ "use strict";
81
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
82
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__),
83
+ /* harmony export */ "c": () => (/* binding */ SearchContext)
84
+ /* harmony export */ });
85
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
86
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
87
+
88
+
89
+ const SearchContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);
90
+ function SearchProvider({ onSearchSelection, children, term, terms, products, isLoading, }) {
91
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement(SearchContext.Provider, { value: { onSearchSelection, term, terms, products, isLoading } }, children));
92
+ }
93
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchProvider);
94
+ //# sourceMappingURL=SearchProvider.js.map
95
+
96
+ /***/ }),
97
+
98
+ /***/ 6399:
99
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
100
+
101
+ "use strict";
102
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
103
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
104
+ /* harmony export */ });
105
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
106
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
107
+ /* harmony import */ var _molecules_SearchProvider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8907);
108
+
109
+
110
+ const SearchInput = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function SearchInput({ children, visibleDropdown = false, testId = 'fs-search-input', isLoading, products, term, terms, onSearchSelection, ...otherProps }, ref) {
111
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", { ref: ref, "data-fs-search-input": true, "data-fs-search-input-dropdown-visible": visibleDropdown, "data-testid": testId, ...otherProps },
112
+ react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_molecules_SearchProvider__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { onSearchSelection: onSearchSelection, isLoading: isLoading, term: term, products: products, terms: terms }, children)));
113
+ });
114
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchInput);
115
+ //# sourceMappingURL=SearchInput.js.map
116
+
117
+ /***/ }),
118
+
119
+ /***/ 1015:
120
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
121
+
122
+ "use strict";
123
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
124
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
125
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
126
+ /* harmony export */ });
127
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
128
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
129
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(395);
130
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(5045);
131
+ /* harmony import */ var src_components_common_Alert__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(915);
132
+ /* harmony import */ var src_components_common_Footer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(1091);
133
+ /* harmony import */ var src_components_common_Navbar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(7783);
134
+ /* harmony import */ var src_components_common_Toast__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(7568);
135
+ /* harmony import */ var src_components_region_RegionBar__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(3921);
136
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(997);
137
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__);
138
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_components_common_Navbar__WEBPACK_IMPORTED_MODULE_3__]);
139
+ src_components_common_Navbar__WEBPACK_IMPORTED_MODULE_3__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
140
+
141
+
142
+
143
+
144
+
145
+
146
+
147
+
148
+
149
+
150
+ const CartSidebar = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.lazy)(() => Promise.all(/* import() */[__webpack_require__.e(1608), __webpack_require__.e(2154), __webpack_require__.e(247), __webpack_require__.e(123), __webpack_require__.e(953)]).then(__webpack_require__.bind(__webpack_require__, 953)));
151
+ const RegionModal = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.lazy)(() => Promise.all(/* import() */[__webpack_require__.e(8287), __webpack_require__.e(9152)]).then(__webpack_require__.bind(__webpack_require__, 9152)));
152
+
153
+ function Layout({
154
+ children
155
+ }) {
156
+ const {
157
+ cart: displayCart,
158
+ modal: displayModal
159
+ } = (0,_faststore_ui__WEBPACK_IMPORTED_MODULE_7__/* .useUI */ .l)();
160
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.Fragment, {
161
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)(src_components_common_Alert__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, {
162
+ icon: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
163
+ name: "Bell"
164
+ }),
165
+ link: {
166
+ children: 'Buy now',
167
+ href: '/office',
168
+ target: '_self'
169
+ },
170
+ dismissible: true,
171
+ children: ["Get 10% off today:\xA0", /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx("span", {
172
+ children: "NEW10"
173
+ })]
174
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(src_components_common_Navbar__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP, {}), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(src_components_common_Toast__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)("main", {
175
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(src_components_region_RegionBar__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
176
+ className: "display-mobile"
177
+ }), children]
178
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(src_components_common_Footer__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .ZP, {}), displayCart && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(react__WEBPACK_IMPORTED_MODULE_0__.Suspense, {
179
+ fallback: null,
180
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(CartSidebar, {})
181
+ }), displayModal && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(react__WEBPACK_IMPORTED_MODULE_0__.Suspense, {
182
+ fallback: null,
183
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(RegionModal, {})
184
+ })]
185
+ });
186
+ }
187
+
188
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Layout);
189
+ __webpack_async_result__();
190
+ } catch(e) { __webpack_async_result__(e); } });
191
+
192
+ /***/ }),
193
+
194
+ /***/ 1419:
195
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
196
+
197
+ "use strict";
198
+
199
+ // EXPORTS
200
+ __webpack_require__.d(__webpack_exports__, {
201
+ "Z": () => (/* reexport */ CartToggle_CartToggle)
202
+ });
203
+
204
+ // EXTERNAL MODULE: ../components/dist/molecules/IconButton/IconButton.js
205
+ var IconButton = __webpack_require__(2765);
206
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
207
+ var Icon = __webpack_require__(5045);
208
+ // EXTERNAL MODULE: ../components/dist/atoms/Badge/Badge.js
209
+ var Badge = __webpack_require__(44);
210
+ // EXTERNAL MODULE: external "react"
211
+ var external_react_ = __webpack_require__(6689);
212
+ // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
213
+ var UIProvider = __webpack_require__(395);
214
+ // EXTERNAL MODULE: ./src/sdk/cart/index.ts
215
+ var cart = __webpack_require__(7566);
216
+ ;// CONCATENATED MODULE: ./src/sdk/cart/useCartToggleButton.ts
217
+
218
+
219
+
220
+ const useCartToggleButton = () => {
221
+ const {
222
+ totalItems
223
+ } = (0,cart/* useCart */.jD)();
224
+ const {
225
+ cart: displayCart,
226
+ openCart,
227
+ closeCart
228
+ } = (0,UIProvider/* useUI */.l)();
229
+ const onClick = (0,external_react_.useCallback)(() => {
230
+ if (displayCart) {
231
+ closeCart();
232
+ } else {
233
+ openCart();
234
+ }
235
+ }, [closeCart, displayCart, openCart]);
236
+ return {
237
+ onClick,
238
+ 'data-testid': 'cart-toggle',
239
+ 'data-items': totalItems
240
+ };
241
+ };
242
+ // EXTERNAL MODULE: external "react/jsx-runtime"
243
+ var jsx_runtime_ = __webpack_require__(997);
244
+ ;// CONCATENATED MODULE: ./src/components/cart/CartToggle/CartToggle.tsx
245
+ 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; }
246
+
247
+ 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; }
248
+
249
+ 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; }
250
+
251
+
252
+
253
+
254
+
255
+ function CartToggle() {
256
+ const btnProps = useCartToggleButton();
257
+ const totalItems = btnProps['data-items'];
258
+ return /*#__PURE__*/jsx_runtime_.jsx(IconButton/* default */.Z, _objectSpread(_objectSpread({
259
+ "data-fs-cart-toggle": true,
260
+ "aria-label": `Cart with ${totalItems} items`,
261
+ icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
262
+ name: "ShoppingCart",
263
+ width: 32,
264
+ height: 32
265
+ })
266
+ }, btnProps), {}, {
267
+ children: /*#__PURE__*/jsx_runtime_.jsx(Badge/* default */.Z, {
268
+ counter: true,
269
+ children: totalItems
270
+ })
271
+ }));
272
+ }
273
+
274
+ /* harmony default export */ const CartToggle_CartToggle = (CartToggle);
275
+ ;// CONCATENATED MODULE: ./src/components/cart/CartToggle/index.ts
276
+
277
+
278
+ /***/ }),
279
+
280
+ /***/ 915:
281
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
282
+
283
+ "use strict";
284
+
285
+ // EXPORTS
286
+ __webpack_require__.d(__webpack_exports__, {
287
+ "Z": () => (/* reexport */ common_Alert_Alert)
288
+ });
289
+
290
+ // EXTERNAL MODULE: external "react"
291
+ var external_react_ = __webpack_require__(6689);
292
+ // EXTERNAL MODULE: ../components/dist/molecules/Alert/Alert.js
293
+ var Alert = __webpack_require__(6970);
294
+ // EXTERNAL MODULE: ./src/sdk/tests/mark.tsx
295
+ var mark = __webpack_require__(2541);
296
+ // EXTERNAL MODULE: external "react/jsx-runtime"
297
+ var jsx_runtime_ = __webpack_require__(997);
298
+ ;// CONCATENATED MODULE: ./src/components/common/Alert/Alert.tsx
299
+ const _excluded = ["content", "children"];
300
+
301
+ 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; }
302
+
303
+ 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; }
304
+
305
+ 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; }
306
+
307
+ 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; }
308
+
309
+ 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; }
310
+
311
+
312
+
313
+
314
+
315
+
316
+ function Alert_Alert(args) {
317
+ const {
318
+ 0: displayAlert,
319
+ 1: setDisplayAlert
320
+ } = (0,external_react_.useState)(true);
321
+ const onAlertClose = (0,external_react_.useCallback)(() => setDisplayAlert(false), [setDisplayAlert]);
322
+
323
+ if (displayAlert === false) {
324
+ return null;
325
+ }
326
+
327
+ const {
328
+ content,
329
+ children
330
+ } = args,
331
+ otherProps = _objectWithoutProperties(args, _excluded);
332
+
333
+ return /*#__PURE__*/jsx_runtime_.jsx(Alert/* default */.Z, _objectSpread(_objectSpread({
334
+ onClose: onAlertClose
335
+ }, otherProps), {}, {
336
+ children: content ?? children
337
+ }));
338
+ }
339
+
340
+ Alert_Alert.displayName = 'Alert';
341
+ /* harmony default export */ const common_Alert_Alert = ((0,mark/* mark */.B)(Alert_Alert));
342
+ ;// CONCATENATED MODULE: ./src/components/common/Alert/index.ts
343
+
344
+
345
+ /***/ }),
346
+
347
+ /***/ 1091:
348
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
349
+
350
+ "use strict";
351
+
352
+ // EXPORTS
353
+ __webpack_require__.d(__webpack_exports__, {
354
+ "ZP": () => (/* reexport */ Footer_Footer)
355
+ });
356
+
357
+ // UNUSED EXPORTS: FooterFlags, FooterLinks
358
+
359
+ // EXTERNAL MODULE: ../components/dist/atoms/List/List.js
360
+ var List = __webpack_require__(1329);
361
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
362
+ var Icon = __webpack_require__(5045);
363
+ // EXTERNAL MODULE: external "react"
364
+ var external_react_ = __webpack_require__(6689);
365
+ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
366
+ // EXTERNAL MODULE: ../components/dist/atoms/SROnly/SROnly.js
367
+ var SROnly = __webpack_require__(2691);
368
+ ;// CONCATENATED MODULE: ../components/dist/organisms/PaymentMethods/PaymentMethods.js
369
+
370
+
371
+ const PaymentMethods = (0,external_react_.forwardRef)(function PaymentMethods({ testId = 'fs-payment-methods', title, 'aria-label': ariaLabel = 'Payment Methods', flagList, ...otherProps }, ref) {
372
+ return (external_react_default().createElement("div", { ref: ref, "data-fs-payment-methods": true, "data-testid": testId, ...otherProps },
373
+ !!title && external_react_default().createElement("div", { "data-fs-payment-methods-title": true }, title),
374
+ external_react_default().createElement(List/* default */.Z, { "data-fs-payment-methods-flags": true, "aria-label": title ? undefined : ariaLabel }, flagList.map((item, index) => (external_react_default().createElement("li", { "data-fs-payment-methods-flag": true, key: `fs-payment-method-${index}-${item.text}` },
375
+ item.image,
376
+ item.text && external_react_default().createElement(SROnly/* default */.Z, { text: item.text })))))));
377
+ });
378
+ /* harmony default export */ const PaymentMethods_PaymentMethods = (PaymentMethods);
379
+ //# sourceMappingURL=PaymentMethods.js.map
380
+ // EXTERNAL MODULE: ./src/components/sections/Incentives/Incentives.tsx + 1 modules
381
+ var Incentives = __webpack_require__(2914);
382
+ ;// CONCATENATED MODULE: ./src/components/sections/Incentives/incentivesMock.ts
383
+ const incentivesMockHeader = [{
384
+ icon: 'Truck',
385
+ title: 'Buy online',
386
+ firstLineText: 'Get Free Shipping'
387
+ }, {
388
+ icon: 'Calendar',
389
+ title: 'Free return',
390
+ firstLineText: '30 days to return'
391
+ }, {
392
+ icon: 'Gift',
393
+ title: 'Gift cards',
394
+ firstLineText: '$20 / $30 / $50'
395
+ }, {
396
+ icon: 'Storefront',
397
+ title: 'Physical Stores',
398
+ firstLineText: '+40 Stores in Brazil'
399
+ }, {
400
+ icon: 'ShieldCheck',
401
+ title: 'Buy online',
402
+ firstLineText: 'Get Free Shipping'
403
+ }];
404
+ const incentivesMockFooter = [{
405
+ icon: 'ShieldCheck',
406
+ firstLineText: 'Trusted',
407
+ secondLineText: 'by Safecon'
408
+ }, {
409
+ icon: 'Medal',
410
+ firstLineText: 'Quality',
411
+ secondLineText: 'Products'
412
+ }, {
413
+ icon: 'CircleWavyCheck',
414
+ firstLineText: '3-year',
415
+ secondLineText: 'Guarantee'
416
+ }, {
417
+ icon: 'Storefront',
418
+ firstLineText: 'Pickup',
419
+ secondLineText: 'Options'
420
+ }, {
421
+ icon: 'Truck',
422
+ firstLineText: 'Free',
423
+ secondLineText: 'Shippping'
424
+ }];
425
+ // EXTERNAL MODULE: external "react/jsx-runtime"
426
+ var jsx_runtime_ = __webpack_require__(997);
427
+ ;// CONCATENATED MODULE: ./src/components/sections/Incentives/IncentivesFooter.tsx
428
+
429
+
430
+
431
+
432
+ function IncentivesFooter() {
433
+ return /*#__PURE__*/jsx_runtime_.jsx(Incentives/* default */.Z, {
434
+ incentives: incentivesMockFooter
435
+ });
436
+ }
437
+
438
+ /* harmony default export */ const Incentives_IncentivesFooter = (IncentivesFooter);
439
+ // EXTERNAL MODULE: ./src/components/ui/Link/index.ts + 1 modules
440
+ var Link = __webpack_require__(1093);
441
+ // EXTERNAL MODULE: ./src/components/ui/Logo/index.ts + 1 modules
442
+ var Logo = __webpack_require__(5811);
443
+ // EXTERNAL MODULE: ./src/sdk/tests/mark.tsx
444
+ var mark = __webpack_require__(2541);
445
+ // EXTERNAL MODULE: ./src/components/common/Footer/footer.module.scss
446
+ var footer_module = __webpack_require__(1893);
447
+ var footer_module_default = /*#__PURE__*/__webpack_require__.n(footer_module);
448
+ ;// CONCATENATED MODULE: ./src/components/common/Footer/FooterFlags.tsx
449
+
450
+
451
+ const FooterFlags = [{
452
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
453
+ width: 32,
454
+ height: 22.5,
455
+ name: "Visa"
456
+ }),
457
+ text: 'Visa'
458
+ }, {
459
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
460
+ width: 32,
461
+ height: 22.5,
462
+ name: "Diners"
463
+ }),
464
+ text: 'Diners Club'
465
+ }, {
466
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
467
+ width: 32,
468
+ height: 22.5,
469
+ name: "Mastercard"
470
+ }),
471
+ text: 'Mastercard'
472
+ }, {
473
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
474
+ width: 32,
475
+ height: 22.5,
476
+ name: "EloCard"
477
+ }),
478
+ text: 'Elo Card'
479
+ }, {
480
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
481
+ width: 32,
482
+ height: 22.5,
483
+ name: "PayPal"
484
+ }),
485
+ text: 'PayPal'
486
+ }, {
487
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
488
+ width: 32,
489
+ height: 22.5,
490
+ name: "Stripe"
491
+ }),
492
+ text: 'Stripe'
493
+ }, {
494
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
495
+ width: 32,
496
+ height: 22.5,
497
+ name: "GooglePay"
498
+ }),
499
+ text: 'GooglePay'
500
+ }, {
501
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
502
+ width: 32,
503
+ height: 22.5,
504
+ name: "ApplePay"
505
+ }),
506
+ text: 'ApplePay'
507
+ }];
508
+ /* harmony default export */ const Footer_FooterFlags = (FooterFlags);
509
+ // EXTERNAL MODULE: ../components/dist/molecules/Accordion/Accordion.js
510
+ var Accordion = __webpack_require__(9739);
511
+ // EXTERNAL MODULE: ../components/dist/molecules/Accordion/AccordionItem.js
512
+ var AccordionItem = __webpack_require__(5705);
513
+ // EXTERNAL MODULE: ../components/dist/molecules/Accordion/AccordionButton.js
514
+ var AccordionButton = __webpack_require__(7743);
515
+ // EXTERNAL MODULE: ../components/dist/molecules/Accordion/AccordionPanel.js
516
+ var AccordionPanel = __webpack_require__(331);
517
+ ;// CONCATENATED MODULE: ./src/components/common/Footer/FooterLinks.tsx
518
+
519
+
520
+
521
+
522
+
523
+
524
+ const links = [{
525
+ title: 'Our company',
526
+ items: [{
527
+ href: '/',
528
+ name: 'About Us'
529
+ }, {
530
+ href: '/',
531
+ name: 'Our Blog'
532
+ }, {
533
+ href: '/',
534
+ name: 'Stores'
535
+ }, {
536
+ href: '/',
537
+ name: 'Work With Us'
538
+ }]
539
+ }, {
540
+ title: 'Orders & Purchases',
541
+ items: [{
542
+ href: '/',
543
+ name: 'Check Order Status'
544
+ }, {
545
+ href: '/',
546
+ name: 'Returns and Exchanges'
547
+ }, {
548
+ href: '/',
549
+ name: 'Product Recall'
550
+ }, {
551
+ href: '/',
552
+ name: 'Gift Cards'
553
+ }]
554
+ }, {
555
+ title: 'Support & Services',
556
+ items: [{
557
+ href: '/',
558
+ name: 'Support Center'
559
+ }, {
560
+ href: '/',
561
+ name: 'Schedule a Service'
562
+ }, {
563
+ href: '/',
564
+ name: 'Contact Us'
565
+ }]
566
+ }, {
567
+ title: 'Partnerships',
568
+ items: [{
569
+ href: '/',
570
+ name: 'Affiliate Program'
571
+ }, {
572
+ href: '/',
573
+ name: 'Advertise with US'
574
+ }, {
575
+ href: '/',
576
+ name: 'Market Place'
577
+ }]
578
+ }];
579
+
580
+ function LinksList({
581
+ items
582
+ }) {
583
+ return /*#__PURE__*/jsx_runtime_.jsx(List/* default */.Z, {
584
+ children: items.map(item => /*#__PURE__*/jsx_runtime_.jsx("li", {
585
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
586
+ variant: "display",
587
+ size: "small",
588
+ href: item.href,
589
+ children: item.name
590
+ })
591
+ }, item.name))
592
+ });
593
+ }
594
+
595
+ function FooterLinks() {
596
+ const {
597
+ 0: indicesExpanded,
598
+ 1: setIndicesExpanded
599
+ } = (0,external_react_.useState)(new Set([]));
600
+
601
+ const onChange = index => {
602
+ if (indicesExpanded.has(index)) {
603
+ indicesExpanded.delete(index);
604
+ setIndicesExpanded(new Set(indicesExpanded));
605
+ } else {
606
+ setIndicesExpanded(new Set(indicesExpanded.add(index)));
607
+ }
608
+ };
609
+
610
+ return /*#__PURE__*/(0,jsx_runtime_.jsxs)("section", {
611
+ className: (footer_module_default()).fsFooter,
612
+ "data-fs-footer-links": true,
613
+ children: [/*#__PURE__*/jsx_runtime_.jsx("div", {
614
+ className: "display-mobile",
615
+ children: /*#__PURE__*/jsx_runtime_.jsx(Accordion/* default */.Z, {
616
+ indices: indicesExpanded,
617
+ onChange: onChange,
618
+ children: links.map(section => /*#__PURE__*/(0,jsx_runtime_.jsxs)(AccordionItem/* default */.Z, {
619
+ children: [/*#__PURE__*/jsx_runtime_.jsx(AccordionButton/* default */.Z, {
620
+ children: section.title
621
+ }), /*#__PURE__*/jsx_runtime_.jsx(AccordionPanel/* default */.Z, {
622
+ children: /*#__PURE__*/jsx_runtime_.jsx(LinksList, {
623
+ items: section.items
624
+ })
625
+ })]
626
+ }, section.title))
627
+ })
628
+ }), /*#__PURE__*/jsx_runtime_.jsx("div", {
629
+ className: "hidden-mobile",
630
+ children: /*#__PURE__*/jsx_runtime_.jsx("nav", {
631
+ "data-fs-footer-links-columns": true,
632
+ children: links.map(section => /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
633
+ children: [/*#__PURE__*/jsx_runtime_.jsx("p", {
634
+ "data-fs-footer-title": true,
635
+ children: section.title
636
+ }), /*#__PURE__*/jsx_runtime_.jsx(LinksList, {
637
+ items: section.items
638
+ })]
639
+ }, section.title))
640
+ })
641
+ })]
642
+ });
643
+ }
644
+
645
+ /* harmony default export */ const Footer_FooterLinks = (FooterLinks);
646
+ ;// CONCATENATED MODULE: ./src/components/common/Footer/Footer.tsx
647
+
648
+
649
+
650
+
651
+
652
+
653
+
654
+
655
+
656
+
657
+ function Footer({
658
+ sectionIncentives = true,
659
+ sectionSocial = true,
660
+ sectionPaymentMethods = true
661
+ }) {
662
+ return /*#__PURE__*/(0,jsx_runtime_.jsxs)("footer", {
663
+ "data-fs-footer": true,
664
+ "data-fs-footer-incentives": sectionIncentives,
665
+ "data-fs-footer-social": sectionSocial,
666
+ "data-fs-footer-payment-methods": sectionPaymentMethods,
667
+ className: `${(footer_module_default()).fsFooter} layout__content-full`,
668
+ children: [sectionIncentives && /*#__PURE__*/jsx_runtime_.jsx(Incentives_IncentivesFooter, {}), /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
669
+ "data-fs-footer-nav": true,
670
+ className: "layout__content",
671
+ children: [/*#__PURE__*/jsx_runtime_.jsx(Footer_FooterLinks, {}), sectionSocial && /*#__PURE__*/(0,jsx_runtime_.jsxs)("section", {
672
+ "data-fs-footer-social": true,
673
+ children: [/*#__PURE__*/jsx_runtime_.jsx("p", {
674
+ "data-fs-footer-title": true,
675
+ children: "Follow us"
676
+ }), /*#__PURE__*/(0,jsx_runtime_.jsxs)(List/* default */.Z, {
677
+ children: [/*#__PURE__*/jsx_runtime_.jsx("li", {
678
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
679
+ variant: "display",
680
+ size: "small",
681
+ href: "https://www.facebook.com/",
682
+ title: "Facebook",
683
+ target: "_blank",
684
+ rel: "noopener noreferrer",
685
+ children: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
686
+ width: "24px",
687
+ height: "24px",
688
+ name: "Facebook"
689
+ })
690
+ })
691
+ }), /*#__PURE__*/jsx_runtime_.jsx("li", {
692
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
693
+ variant: "display",
694
+ size: "small",
695
+ href: "https://www.instagram.com/",
696
+ title: "Instagram",
697
+ target: "_blank",
698
+ rel: "noopener noreferrer",
699
+ children: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
700
+ width: "24px",
701
+ height: "24px",
702
+ name: "Instagram"
703
+ })
704
+ })
705
+ }), /*#__PURE__*/jsx_runtime_.jsx("li", {
706
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
707
+ variant: "display",
708
+ size: "small",
709
+ href: "https://www.pinterest.com/",
710
+ title: "Pinterest",
711
+ target: "_blank",
712
+ rel: "noopener noreferrer",
713
+ children: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
714
+ width: "24px",
715
+ height: "24px",
716
+ name: "Pinterest"
717
+ })
718
+ })
719
+ }), /*#__PURE__*/jsx_runtime_.jsx("li", {
720
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
721
+ variant: "display",
722
+ size: "small",
723
+ href: "https://twitter.com/",
724
+ title: "Twitter",
725
+ target: "_blank",
726
+ rel: "noopener noreferrer",
727
+ children: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
728
+ width: "24px",
729
+ height: "24px",
730
+ name: "Twitter"
731
+ })
732
+ })
733
+ })]
734
+ })]
735
+ })]
736
+ }), /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
737
+ "data-fs-footer-note": true,
738
+ className: "layout__content",
739
+ children: [/*#__PURE__*/jsx_runtime_.jsx(Logo/* default */.Z, {}), sectionPaymentMethods && /*#__PURE__*/jsx_runtime_.jsx(PaymentMethods_PaymentMethods, {
740
+ title: /*#__PURE__*/jsx_runtime_.jsx("p", {
741
+ children: "Payment Methods"
742
+ }),
743
+ flagList: Footer_FooterFlags
744
+ }), /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
745
+ "data-fs-footer-copyright": true,
746
+ className: "text__legend",
747
+ children: [/*#__PURE__*/jsx_runtime_.jsx("p", {
748
+ children: "This website uses VTEX technology"
749
+ }), /*#__PURE__*/jsx_runtime_.jsx("p", {
750
+ children: "In-store price may vary. Prices and offers are subject to change. 2021 Store name. All rights reserved. Store is a trademark of Store and its affiliated companies."
751
+ }), /*#__PURE__*/jsx_runtime_.jsx("address", {
752
+ children: "Mount St, 000, New York / NY - 00000."
753
+ })]
754
+ })]
755
+ })]
756
+ });
757
+ }
758
+ Footer.displayName = 'Footer';
759
+ /* harmony default export */ const Footer_Footer = ((0,mark/* mark */.B)(Footer));
760
+ ;// CONCATENATED MODULE: ./src/components/common/Footer/index.ts
761
+
762
+
763
+
764
+
765
+ /***/ }),
766
+
767
+ /***/ 3565:
768
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
769
+
770
+ "use strict";
771
+
772
+ // EXPORTS
773
+ __webpack_require__.d(__webpack_exports__, {
774
+ "Z": () => (/* binding */ Navbar_NavLinks)
775
+ });
776
+
777
+ // EXTERNAL MODULE: ../components/dist/atoms/List/List.js
778
+ var List = __webpack_require__(1329);
779
+ // EXTERNAL MODULE: ../components/dist/atoms/Button/Button.js + 1 modules
780
+ var Button = __webpack_require__(4842);
781
+ // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
782
+ var UIProvider = __webpack_require__(395);
783
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
784
+ var Icon = __webpack_require__(5045);
785
+ // EXTERNAL MODULE: ./src/sdk/session/index.ts
786
+ var session = __webpack_require__(5971);
787
+ // EXTERNAL MODULE: external "react/jsx-runtime"
788
+ var jsx_runtime_ = __webpack_require__(997);
789
+ ;// CONCATENATED MODULE: ./src/components/region/RegionButton/RegionButton.tsx
790
+
791
+
792
+
793
+
794
+
795
+ function RegionButton() {
796
+ const {
797
+ openModal
798
+ } = (0,UIProvider/* useUI */.l)();
799
+ const {
800
+ postalCode
801
+ } = (0,session/* useSession */.kP)();
802
+ return /*#__PURE__*/jsx_runtime_.jsx(Button/* default */.Z, {
803
+ "data-fs-regionalization-button": true,
804
+ variant: "tertiary",
805
+ size: "small",
806
+ icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
807
+ name: "MapPin",
808
+ width: 24,
809
+ height: 24
810
+ }),
811
+ iconPosition: "left",
812
+ onClick: openModal,
813
+ children: /*#__PURE__*/jsx_runtime_.jsx("span", {
814
+ children: postalCode ?? 'Set your location'
815
+ })
816
+ });
817
+ }
818
+
819
+ /* harmony default export */ const RegionButton_RegionButton = (RegionButton);
820
+ ;// CONCATENATED MODULE: ./src/components/region/RegionButton/index.ts
821
+
822
+ // EXTERNAL MODULE: ./src/components/ui/Link/index.ts + 1 modules
823
+ var Link = __webpack_require__(1093);
824
+ // EXTERNAL MODULE: ./src/sdk/tests/mark.tsx
825
+ var mark = __webpack_require__(2541);
826
+ // EXTERNAL MODULE: ./src/components/common/Navbar/navlinks.module.scss
827
+ var navlinks_module = __webpack_require__(844);
828
+ var navlinks_module_default = /*#__PURE__*/__webpack_require__.n(navlinks_module);
829
+ ;// CONCATENATED MODULE: ./src/components/common/Navbar/NavLinks.tsx
830
+
831
+
832
+
833
+
834
+
835
+
836
+
837
+ const collections = [{
838
+ name: 'Office',
839
+ href: '/office'
840
+ }, {
841
+ name: 'Home Appliances',
842
+ href: '/kitchen---home-appliances'
843
+ }, {
844
+ name: 'Computer and Software',
845
+ href: '/computer---software'
846
+ }, {
847
+ name: 'Technology',
848
+ href: '/technology'
849
+ }];
850
+
851
+ function NavLinks({
852
+ onClickLink,
853
+ classes = ''
854
+ }) {
855
+ return /*#__PURE__*/jsx_runtime_.jsx("nav", {
856
+ className: `${(navlinks_module_default()).fsNavlinks} ${classes}`,
857
+ children: /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
858
+ className: "layout__content",
859
+ children: [/*#__PURE__*/jsx_runtime_.jsx(RegionButton_RegionButton, {}), /*#__PURE__*/jsx_runtime_.jsx(List/* default */.Z, {
860
+ "data-fs-navlinks-list": true,
861
+ children: collections.map(({
862
+ href,
863
+ name
864
+ }) => /*#__PURE__*/jsx_runtime_.jsx("li", {
865
+ "data-fs-navlinks-list-item": true,
866
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
867
+ "data-fs-navlinks-link": true,
868
+ variant: "display",
869
+ href: href,
870
+ onClick: onClickLink,
871
+ children: name
872
+ })
873
+ }, name))
874
+ })]
875
+ })
876
+ });
877
+ }
878
+
879
+ /* harmony default export */ const Navbar_NavLinks = ((0,mark/* mark */.B)(NavLinks));
880
+
881
+ /***/ }),
882
+
883
+ /***/ 6259:
884
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
885
+
886
+ "use strict";
887
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
888
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
889
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
890
+ /* harmony export */ });
891
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
892
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
893
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(395);
894
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(2765);
895
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(5045);
896
+ /* harmony import */ var src_components_cart_CartToggle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1419);
897
+ /* harmony import */ var src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(475);
898
+ /* harmony import */ var src_components_ui_Button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(7758);
899
+ /* harmony import */ var src_components_ui_Link__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(1093);
900
+ /* harmony import */ var src_components_ui_Logo__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(5811);
901
+ /* harmony import */ var src_sdk_tests_mark__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(2541);
902
+ /* harmony import */ var src_sdk_ui_useScrollDirection__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(3428);
903
+ /* harmony import */ var _navbar_module_scss__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(3460);
904
+ /* harmony import */ var _navbar_module_scss__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_navbar_module_scss__WEBPACK_IMPORTED_MODULE_12__);
905
+ /* harmony import */ var _NavbarSlider__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(781);
906
+ /* harmony import */ var _NavLinks__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(3565);
907
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(997);
908
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__);
909
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__]);
910
+ src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
911
+
912
+
913
+
914
+
915
+
916
+
917
+
918
+
919
+
920
+
921
+
922
+
923
+
924
+
925
+
926
+
927
+ function Navbar() {
928
+ const scrollDirection = (0,src_sdk_ui_useScrollDirection__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z)();
929
+ const {
930
+ openNavbar,
931
+ navbar: displayNavbar
932
+ } = (0,_faststore_ui__WEBPACK_IMPORTED_MODULE_11__/* .useUI */ .l)();
933
+ const searchMobileRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
934
+ const {
935
+ 0: searchExpanded,
936
+ 1: setSearchExpanded
937
+ } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
938
+
939
+ const handlerExpandSearch = () => {
940
+ setSearchExpanded(true);
941
+ searchMobileRef.current?.inputRef?.focus();
942
+ };
943
+
944
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("header", {
945
+ "data-fs-navbar": true,
946
+ "data-fs-navbar-scroll": scrollDirection,
947
+ className: `${(_navbar_module_scss__WEBPACK_IMPORTED_MODULE_12___default().fsNavbar)} layout__content-full`,
948
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx("section", {
949
+ "data-fs-navbar-header": true,
950
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("div", {
951
+ className: "layout__content",
952
+ "data-fs-navbar-row": true,
953
+ children: [!searchExpanded && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.Fragment, {
954
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
955
+ "data-fs-navbar-button-menu": true,
956
+ "aria-label": "Open Menu",
957
+ icon: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z, {
958
+ name: "List",
959
+ width: 32,
960
+ height: 32
961
+ }),
962
+ onClick: openNavbar
963
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_ui_Link__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
964
+ href: "/",
965
+ "aria-label": "Go to Faststore home",
966
+ title: "Go to Faststore home",
967
+ "data-fs-navbar-logo": true,
968
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_ui_Logo__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {})
969
+ })]
970
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("div", {
971
+ "data-fs-navbar-buttons": true,
972
+ "data-fs-navbar-search-expanded": searchExpanded,
973
+ children: [searchExpanded && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
974
+ "data-fs-button-collapse": true,
975
+ "aria-label": "Collapse search bar",
976
+ icon: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z, {
977
+ name: "CaretLeft",
978
+ width: 32,
979
+ height: 32
980
+ }),
981
+ onClick: () => {
982
+ setSearchExpanded(false);
983
+ searchMobileRef.current?.resetSearchInput();
984
+ }
985
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
986
+ placeholder: "",
987
+ ref: searchMobileRef,
988
+ testId: "store-input-mobile",
989
+ buttonTestId: "store-input-mobile-button",
990
+ onSearchClick: handlerExpandSearch
991
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(react__WEBPACK_IMPORTED_MODULE_0__.Suspense, {
992
+ fallback: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_ui_Button__WEBPACK_IMPORTED_MODULE_3__/* .ButtonSignInFallback */ .A, {}),
993
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_ui_Button__WEBPACK_IMPORTED_MODULE_3__/* .ButtonSignIn */ .p, {})
994
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_cart_CartToggle__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, {})]
995
+ })]
996
+ })
997
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(_NavLinks__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {
998
+ classes: "hidden-mobile"
999
+ }), displayNavbar && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(_NavbarSlider__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {})]
1000
+ });
1001
+ }
1002
+
1003
+ Navbar.displayName = 'Navbar';
1004
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,src_sdk_tests_mark__WEBPACK_IMPORTED_MODULE_6__/* .mark */ .B)(Navbar));
1005
+ __webpack_async_result__();
1006
+ } catch(e) { __webpack_async_result__(e); } });
1007
+
1008
+ /***/ }),
1009
+
1010
+ /***/ 781:
1011
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1012
+
1013
+ "use strict";
1014
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1015
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1016
+ /* harmony export */ });
1017
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
1018
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1019
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(1021);
1020
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(9648);
1021
+ /* harmony import */ var src_components_ui_Button__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7758);
1022
+ /* harmony import */ var src_components_ui_Link__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(1093);
1023
+ /* harmony import */ var src_components_ui_Logo__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5811);
1024
+ /* harmony import */ var src_sdk_tests_mark__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(2541);
1025
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(395);
1026
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(6074);
1027
+ /* harmony import */ var _navbar_slider_module_scss__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(4325);
1028
+ /* harmony import */ var _navbar_slider_module_scss__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_navbar_slider_module_scss__WEBPACK_IMPORTED_MODULE_10__);
1029
+ /* harmony import */ var _NavLinks__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(3565);
1030
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(997);
1031
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__);
1032
+
1033
+
1034
+
1035
+
1036
+
1037
+
1038
+
1039
+
1040
+
1041
+
1042
+
1043
+
1044
+
1045
+ function NavbarSlider() {
1046
+ const {
1047
+ closeNavbar
1048
+ } = (0,_faststore_ui__WEBPACK_IMPORTED_MODULE_7__/* .useUI */ .l)();
1049
+ const {
1050
+ fade,
1051
+ fadeOut
1052
+ } = (0,_faststore_ui__WEBPACK_IMPORTED_MODULE_8__/* .useFadeEffect */ .b)();
1053
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)(_faststore_ui__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {
1054
+ isOpen: true,
1055
+ fade: fade,
1056
+ onDismiss: fadeOut,
1057
+ size: "full",
1058
+ direction: "leftSide",
1059
+ className: (_navbar_slider_module_scss__WEBPACK_IMPORTED_MODULE_10___default().fsNavbarSlider),
1060
+ onTransitionEnd: () => fade === 'out' && closeNavbar(),
1061
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {
1062
+ "data-fs-navbar-slider-header": true,
1063
+ onClose: fadeOut,
1064
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(src_components_ui_Link__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
1065
+ href: "/",
1066
+ onClick: fadeOut,
1067
+ "aria-label": "Go to FastStore home",
1068
+ title: "Go to FastStore home",
1069
+ "data-fs-navbar-slider-logo": true,
1070
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(src_components_ui_Logo__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {})
1071
+ })
1072
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx("div", {
1073
+ "data-fs-navbar-slider-content": true,
1074
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(_NavLinks__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
1075
+ onClickLink: fadeOut
1076
+ })
1077
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx("footer", {
1078
+ "data-fs-navbar-slider-footer": true,
1079
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(react__WEBPACK_IMPORTED_MODULE_0__.Suspense, {
1080
+ fallback: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(src_components_ui_Button__WEBPACK_IMPORTED_MODULE_1__/* .ButtonSignInFallback */ .A, {}),
1081
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx(src_components_ui_Button__WEBPACK_IMPORTED_MODULE_1__/* .ButtonSignIn */ .p, {})
1082
+ })
1083
+ })]
1084
+ });
1085
+ }
1086
+
1087
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,src_sdk_tests_mark__WEBPACK_IMPORTED_MODULE_4__/* .mark */ .B)(NavbarSlider));
1088
+
1089
+ /***/ }),
1090
+
1091
+ /***/ 7783:
1092
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1093
+
1094
+ "use strict";
1095
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1096
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1097
+ /* harmony export */ "ZP": () => (/* reexport safe */ _Navbar__WEBPACK_IMPORTED_MODULE_0__.Z)
1098
+ /* harmony export */ });
1099
+ /* harmony import */ var _Navbar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6259);
1100
+ /* harmony import */ var _NavbarSlider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(781);
1101
+ /* harmony import */ var _NavLinks__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3565);
1102
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Navbar__WEBPACK_IMPORTED_MODULE_0__]);
1103
+ _Navbar__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1104
+
1105
+
1106
+
1107
+ __webpack_async_result__();
1108
+ } catch(e) { __webpack_async_result__(e); } });
1109
+
1110
+ /***/ }),
1111
+
1112
+ /***/ 7568:
1113
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1114
+
1115
+ "use strict";
1116
+
1117
+ // EXPORTS
1118
+ __webpack_require__.d(__webpack_exports__, {
1119
+ "Z": () => (/* reexport */ common_Toast_Toast)
1120
+ });
1121
+
1122
+ // EXTERNAL MODULE: external "react"
1123
+ var external_react_ = __webpack_require__(6689);
1124
+ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
1125
+ // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
1126
+ var UIProvider = __webpack_require__(395);
1127
+ ;// CONCATENATED MODULE: ../components/dist/molecules/Toast/Toast.js
1128
+
1129
+
1130
+ function Toast() {
1131
+ const { toasts, popToast } = (0,UIProvider/* useUI */.l)();
1132
+ const toast = toasts[toasts.length - 1];
1133
+ const timeoutRef = (0,external_react_.useRef)();
1134
+ const [visible, setVisible] = (0,external_react_.useState)(false);
1135
+ (0,external_react_.useEffect)(() => {
1136
+ if (!toast) {
1137
+ return undefined;
1138
+ }
1139
+ const timeout = setTimeout(() => setVisible(true), 10);
1140
+ return () => clearTimeout(timeout);
1141
+ }, [toast]);
1142
+ (0,external_react_.useEffect)(() => {
1143
+ timeoutRef.current = setTimeout(() => setVisible(false), 6e3);
1144
+ return () => timeoutRef.current && clearTimeout(timeoutRef.current);
1145
+ }, [toast]);
1146
+ if (toast === undefined) {
1147
+ return null;
1148
+ }
1149
+ return (external_react_default().createElement("div", { role: "status", "data-fs-toast": true, "data-fs-toast-visible": visible, onTransitionEnd: () => !visible && popToast() },
1150
+ toast.icon && (external_react_default().createElement("div", { "data-fs-toast-icon-container": true }, external_react_default().isValidElement(toast.icon) && toast.icon)),
1151
+ external_react_default().createElement("div", { "data-fs-toast-content": true },
1152
+ toast.title && external_react_default().createElement("p", { "data-fs-toast-title": true }, toast.title),
1153
+ external_react_default().createElement("p", { "data-fs-toast-message": true }, toast.message))));
1154
+ }
1155
+ /* harmony default export */ const Toast_Toast = (Toast);
1156
+ //# sourceMappingURL=Toast.js.map
1157
+ // EXTERNAL MODULE: ./src/sdk/cart/index.ts
1158
+ var cart = __webpack_require__(7566);
1159
+ // EXTERNAL MODULE: external "react/jsx-runtime"
1160
+ var jsx_runtime_ = __webpack_require__(997);
1161
+ ;// CONCATENATED MODULE: ./src/components/common/Toast/Toast.tsx
1162
+
1163
+
1164
+
1165
+
1166
+
1167
+
1168
+ function Toast_Toast_Toast() {
1169
+ const {
1170
+ toasts,
1171
+ pushToast
1172
+ } = (0,UIProvider/* useUI */.l)();
1173
+ const {
1174
+ messages
1175
+ } = (0,cart/* useCart */.jD)();
1176
+ /**
1177
+ * Send cart notifications to toast in case the cart
1178
+ * returns warnings
1179
+ */
1180
+
1181
+ (0,external_react_.useEffect)(() => {
1182
+ if (!messages) {
1183
+ return;
1184
+ }
1185
+
1186
+ messages.forEach(message => pushToast({
1187
+ message: message.text,
1188
+ status: message.status
1189
+ }));
1190
+ }, [messages, pushToast]);
1191
+ return /*#__PURE__*/jsx_runtime_.jsx(jsx_runtime_.Fragment, {
1192
+ children: toasts.length > 0 && /*#__PURE__*/jsx_runtime_.jsx(external_react_.Suspense, {
1193
+ fallback: null,
1194
+ children: /*#__PURE__*/jsx_runtime_.jsx(Toast_Toast, {})
1195
+ })
1196
+ });
1197
+ }
1198
+
1199
+ /* harmony default export */ const common_Toast_Toast = (Toast_Toast_Toast);
1200
+ ;// CONCATENATED MODULE: ./src/components/common/Toast/index.ts
1201
+
1202
+
1203
+ /***/ }),
1204
+
1205
+ /***/ 3921:
1206
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1207
+
1208
+ "use strict";
1209
+
1210
+ // EXPORTS
1211
+ __webpack_require__.d(__webpack_exports__, {
1212
+ "Z": () => (/* reexport */ region_RegionBar_RegionBar)
1213
+ });
1214
+
1215
+ // EXTERNAL MODULE: external "react"
1216
+ var external_react_ = __webpack_require__(6689);
1217
+ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
1218
+ // EXTERNAL MODULE: ../components/dist/atoms/Button/Button.js + 1 modules
1219
+ var Button = __webpack_require__(4842);
1220
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
1221
+ var Icon = __webpack_require__(5045);
1222
+ ;// CONCATENATED MODULE: ../components/dist/molecules/RegionBar/RegionBar.js
1223
+
1224
+
1225
+ const RegionBar = (0,external_react_.forwardRef)(function RegionBar({ postalCode, onButtonClick, ...otherProps }, ref) {
1226
+ return (external_react_default().createElement("div", { ref: ref, "data-fs-region-bar": true, ...otherProps },
1227
+ external_react_default().createElement(Button/* default */.Z, { onClick: onButtonClick },
1228
+ external_react_default().createElement(Icon/* default */.Z, { name: "MapPin" }),
1229
+ postalCode ? (external_react_default().createElement((external_react_default()).Fragment, null,
1230
+ external_react_default().createElement("span", { "data-fs-region-bar-postal-code": true }, postalCode),
1231
+ external_react_default().createElement("span", { "data-fs-region-bar-cta": true }, "Edit"))) : (external_react_default().createElement("span", { "data-fs-region-bar-message": true }, "Set your location")),
1232
+ external_react_default().createElement(Icon/* default */.Z, { name: "CaretRight" }))));
1233
+ });
1234
+ /* harmony default export */ const RegionBar_RegionBar = (RegionBar);
1235
+ //# sourceMappingURL=RegionBar.js.map
1236
+ // EXTERNAL MODULE: ./src/sdk/session/index.ts
1237
+ var session = __webpack_require__(5971);
1238
+ // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
1239
+ var UIProvider = __webpack_require__(395);
1240
+ // EXTERNAL MODULE: external "react/jsx-runtime"
1241
+ var jsx_runtime_ = __webpack_require__(997);
1242
+ ;// CONCATENATED MODULE: ./src/components/region/RegionBar/RegionBar.tsx
1243
+ 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; }
1244
+
1245
+ 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; }
1246
+
1247
+ 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; }
1248
+
1249
+
1250
+
1251
+
1252
+
1253
+
1254
+ function RegionBar_RegionBar_RegionBar(_ref) {
1255
+ let otherProps = Object.assign({}, _ref);
1256
+ const {
1257
+ openModal
1258
+ } = (0,UIProvider/* useUI */.l)();
1259
+ const {
1260
+ postalCode
1261
+ } = (0,session/* useSession */.kP)();
1262
+ return /*#__PURE__*/jsx_runtime_.jsx(RegionBar_RegionBar, _objectSpread({
1263
+ onButtonClick: openModal,
1264
+ postalCode: postalCode
1265
+ }, otherProps));
1266
+ }
1267
+
1268
+ /* harmony default export */ const region_RegionBar_RegionBar = (RegionBar_RegionBar_RegionBar);
1269
+ ;// CONCATENATED MODULE: ./src/components/region/RegionBar/index.ts
1270
+
1271
+
1272
+ /***/ }),
1273
+
1274
+ /***/ 9471:
1275
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1276
+
1277
+ "use strict";
1278
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1279
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1280
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1281
+ /* harmony export */ });
1282
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(8460);
1283
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(6399);
1284
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(447);
1285
+ /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1853);
1286
+ /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_router__WEBPACK_IMPORTED_MODULE_0__);
1287
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6689);
1288
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
1289
+ /* harmony import */ var src_sdk_search_formatSearchPath__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(5882);
1290
+ /* harmony import */ var src_sdk_search_useSearchHistory__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5098);
1291
+ /* harmony import */ var src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6344);
1292
+ /* harmony import */ var src_sdk_ui_useOnClickOutside__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3669);
1293
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(997);
1294
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__);
1295
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__]);
1296
+ src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1297
+ const _excluded = ["onSearchClick", "buttonTestId", "containerStyle"];
1298
+
1299
+ 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; }
1300
+
1301
+ 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; }
1302
+
1303
+ 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; }
1304
+
1305
+ 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; }
1306
+
1307
+ 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; }
1308
+
1309
+
1310
+
1311
+
1312
+
1313
+
1314
+
1315
+
1316
+
1317
+
1318
+
1319
+ const SearchDropdown = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.lazy)(() => Promise.all(/* import() */[__webpack_require__.e(1608), __webpack_require__.e(2154), __webpack_require__.e(247), __webpack_require__.e(9854), __webpack_require__.e(4312)]).then(__webpack_require__.bind(__webpack_require__, 4312)));
1320
+
1321
+ const sendAnalytics = async term => {
1322
+ (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_6__/* .sendAnalyticsEvent */ ._)({
1323
+ name: 'search',
1324
+ params: {
1325
+ search_term: term
1326
+ }
1327
+ });
1328
+ };
1329
+
1330
+ const SearchInput = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)(function SearchInput(_ref, ref) {
1331
+ let {
1332
+ onSearchClick,
1333
+ buttonTestId = 'fs-search-button',
1334
+ containerStyle
1335
+ } = _ref,
1336
+ otherProps = _objectWithoutProperties(_ref, _excluded);
1337
+
1338
+ const {
1339
+ 0: searchQuery,
1340
+ 1: setSearchQuery
1341
+ } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)('');
1342
+ const searchQueryDeferred = (0,react__WEBPACK_IMPORTED_MODULE_1__.useDeferredValue)(searchQuery);
1343
+ const {
1344
+ 0: searchDropdownVisible,
1345
+ 1: setSearchDropdownVisible
1346
+ } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);
1347
+ const searchRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);
1348
+ const {
1349
+ addToSearchHistory
1350
+ } = (0,src_sdk_search_useSearchHistory__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)();
1351
+ const router = (0,next_router__WEBPACK_IMPORTED_MODULE_0__.useRouter)();
1352
+ (0,react__WEBPACK_IMPORTED_MODULE_1__.useImperativeHandle)(ref, () => ({
1353
+ resetSearchInput: () => setSearchQuery('')
1354
+ }));
1355
+
1356
+ const onSearchSelection = (term, path) => {
1357
+ addToSearchHistory({
1358
+ term,
1359
+ path
1360
+ });
1361
+ sendAnalytics(term);
1362
+ setSearchDropdownVisible(false);
1363
+ setSearchQuery(term);
1364
+ };
1365
+
1366
+ (0,src_sdk_ui_useOnClickOutside__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(searchRef, () => setSearchDropdownVisible(false));
1367
+ const {
1368
+ terms,
1369
+ products,
1370
+ isLoading
1371
+ } = (0,src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)(searchQueryDeferred);
1372
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_faststore_ui__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
1373
+ ref: searchRef,
1374
+ visibleDropdown: searchDropdownVisible,
1375
+ onSearchSelection: onSearchSelection,
1376
+ term: searchQueryDeferred,
1377
+ terms: terms,
1378
+ products: products,
1379
+ isLoading: isLoading,
1380
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, _objectSpread({
1381
+ ref: ref,
1382
+ buttonProps: {
1383
+ onClick: onSearchClick,
1384
+ testId: buttonTestId
1385
+ },
1386
+ placeholder: "Search everything at the store",
1387
+ onChange: e => setSearchQuery(e.target.value),
1388
+ onSubmit: term => {
1389
+ const path = (0,src_sdk_search_formatSearchPath__WEBPACK_IMPORTED_MODULE_9__/* .formatSearchPath */ .u)(term);
1390
+ onSearchSelection(term, path);
1391
+ router.push(path);
1392
+ },
1393
+ onFocus: () => setSearchDropdownVisible(true),
1394
+ value: searchQuery
1395
+ }, otherProps)), searchDropdownVisible && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx(react__WEBPACK_IMPORTED_MODULE_1__.Suspense, {
1396
+ fallback: null,
1397
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx(SearchDropdown, {})
1398
+ })]
1399
+ });
1400
+ });
1401
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchInput);
1402
+ __webpack_async_result__();
1403
+ } catch(e) { __webpack_async_result__(e); } });
1404
+
1405
+ /***/ }),
1406
+
1407
+ /***/ 475:
1408
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1409
+
1410
+ "use strict";
1411
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1412
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1413
+ /* harmony export */ "Z": () => (/* reexport safe */ _SearchInput__WEBPACK_IMPORTED_MODULE_0__.Z)
1414
+ /* harmony export */ });
1415
+ /* harmony import */ var _SearchInput__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9471);
1416
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_SearchInput__WEBPACK_IMPORTED_MODULE_0__]);
1417
+ _SearchInput__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1418
+
1419
+ __webpack_async_result__();
1420
+ } catch(e) { __webpack_async_result__(e); } });
1421
+
1422
+ /***/ }),
1423
+
1424
+ /***/ 7758:
1425
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1426
+
1427
+ "use strict";
1428
+
1429
+ // EXPORTS
1430
+ __webpack_require__.d(__webpack_exports__, {
1431
+ "p": () => (/* reexport */ ButtonSignIn_ButtonSignIn),
1432
+ "A": () => (/* reexport */ ButtonSignInFallback_ButtonSignInFallback)
1433
+ });
1434
+
1435
+ // EXTERNAL MODULE: ../components/dist/molecules/LinkButton/LinkButton.js
1436
+ var LinkButton = __webpack_require__(7703);
1437
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
1438
+ var Icon = __webpack_require__(5045);
1439
+ // EXTERNAL MODULE: ./src/components/ui/Button/button.module.scss
1440
+ var button_module = __webpack_require__(4635);
1441
+ var button_module_default = /*#__PURE__*/__webpack_require__.n(button_module);
1442
+ // EXTERNAL MODULE: ./src/sdk/session/index.ts
1443
+ var session = __webpack_require__(5971);
1444
+ // EXTERNAL MODULE: ./src/sdk/cart/index.ts
1445
+ var cart = __webpack_require__(7566);
1446
+ // EXTERNAL MODULE: external "react/jsx-runtime"
1447
+ var jsx_runtime_ = __webpack_require__(997);
1448
+ ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/ButtonSignIn.tsx
1449
+
1450
+
1451
+
1452
+
1453
+
1454
+
1455
+ const ButtonSignIn = () => {
1456
+ const {
1457
+ id
1458
+ } = (0,cart/* useCart */.jD)();
1459
+ const {
1460
+ person
1461
+ } = (0,session/* useSession */.kP)();
1462
+ return /*#__PURE__*/jsx_runtime_.jsx(LinkButton/* default */.Z, {
1463
+ "data-fs-button-signin-link": true,
1464
+ href: person?.id ? `/account?orderFormId=${id}` : `/login?orderFormId=${id}`,
1465
+ className: `${(button_module_default()).fsButton} text__title-mini`,
1466
+ variant: "tertiary",
1467
+ icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
1468
+ name: "User",
1469
+ width: 18,
1470
+ height: 18,
1471
+ weight: "bold"
1472
+ }),
1473
+ iconPosition: "left",
1474
+ children: /*#__PURE__*/jsx_runtime_.jsx("span", {
1475
+ children: person?.id ? 'My Account' : 'Sign In'
1476
+ })
1477
+ });
1478
+ };
1479
+
1480
+ /* harmony default export */ const ButtonSignIn_ButtonSignIn = (ButtonSignIn);
1481
+ ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/index.ts
1482
+
1483
+ ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/ButtonSignInFallback/ButtonSignInFallback.tsx
1484
+
1485
+
1486
+
1487
+ function ButtonSignInFallback() {
1488
+ return /*#__PURE__*/jsx_runtime_.jsx(LinkButton/* default */.Z, {
1489
+ "data-fs-button-signin-link": true,
1490
+ href: "/login",
1491
+ className: "text__title-mini",
1492
+ variant: "tertiary",
1493
+ icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
1494
+ name: "User",
1495
+ width: 18,
1496
+ height: 18,
1497
+ weight: "bold"
1498
+ }),
1499
+ iconPosition: "left",
1500
+ children: /*#__PURE__*/jsx_runtime_.jsx("span", {
1501
+ children: 'Sign In'
1502
+ })
1503
+ });
1504
+ }
1505
+
1506
+ /* harmony default export */ const ButtonSignInFallback_ButtonSignInFallback = (ButtonSignInFallback);
1507
+ ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/ButtonSignInFallback/index.ts
1508
+
1509
+ ;// CONCATENATED MODULE: ./src/components/ui/Button/index.ts
1510
+
1511
+
1512
+
1513
+ /***/ }),
1514
+
1515
+ /***/ 5811:
1516
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1517
+
1518
+ "use strict";
1519
+
1520
+ // EXPORTS
1521
+ __webpack_require__.d(__webpack_exports__, {
1522
+ "Z": () => (/* reexport */ Logo_Logo)
1523
+ });
1524
+
1525
+ // EXTERNAL MODULE: ./src/components/ui/Logo/logo.module.scss
1526
+ var logo_module = __webpack_require__(4374);
1527
+ var logo_module_default = /*#__PURE__*/__webpack_require__.n(logo_module);
1528
+ // EXTERNAL MODULE: external "react/jsx-runtime"
1529
+ var jsx_runtime_ = __webpack_require__(997);
1530
+ ;// CONCATENATED MODULE: ./src/components/ui/Logo/Logo.tsx
1531
+
1532
+
1533
+
1534
+ function Logo() {
1535
+ return /*#__PURE__*/jsx_runtime_.jsx("span", {
1536
+ className: (logo_module_default()).fsLogo,
1537
+ "data-fs-logo": true,
1538
+ role: "img",
1539
+ "aria-label": "BaseStore logo"
1540
+ });
1541
+ }
1542
+
1543
+ /* harmony default export */ const Logo_Logo = (Logo);
1544
+ ;// CONCATENATED MODULE: ./src/components/ui/Logo/index.ts
1545
+
1546
+
1547
+ /***/ }),
1548
+
1549
+ /***/ 7600:
1550
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1551
+
1552
+ "use strict";
1553
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1554
+ __webpack_require__.r(__webpack_exports__);
1555
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1556
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
1557
+ /* harmony export */ });
1558
+ /* harmony import */ var nextjs_progressbar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8890);
1559
+ /* harmony import */ var nextjs_progressbar__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(nextjs_progressbar__WEBPACK_IMPORTED_MODULE_0__);
1560
+ /* harmony import */ var src_Layout__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1015);
1561
+ /* harmony import */ var src_sdk_analytics__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(8475);
1562
+ /* harmony import */ var src_sdk_error_ErrorBoundary__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(4638);
1563
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(395);
1564
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(997);
1565
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__);
1566
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_Layout__WEBPACK_IMPORTED_MODULE_1__]);
1567
+ src_Layout__WEBPACK_IMPORTED_MODULE_1__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1568
+ 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; }
1569
+
1570
+ 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; }
1571
+
1572
+ 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; }
1573
+
1574
+ // FastStore UI's base styles
1575
+
1576
+
1577
+
1578
+
1579
+
1580
+
1581
+
1582
+
1583
+
1584
+
1585
+
1586
+ function App({
1587
+ Component,
1588
+ pageProps
1589
+ }) {
1590
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)(src_sdk_error_ErrorBoundary__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
1591
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx((nextjs_progressbar__WEBPACK_IMPORTED_MODULE_0___default()), {
1592
+ color: "var(--fs-color-primary-bkg);",
1593
+ showOnShallow: false,
1594
+ options: {
1595
+ showSpinner: false
1596
+ }
1597
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx(src_sdk_analytics__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {}), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
1598
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx(src_Layout__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, {
1599
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx(Component, _objectSpread({}, pageProps))
1600
+ })
1601
+ })]
1602
+ });
1603
+ }
1604
+
1605
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (App);
1606
+ __webpack_async_result__();
1607
+ } catch(e) { __webpack_async_result__(e); } });
1608
+
1609
+ /***/ }),
1610
+
1611
+ /***/ 8475:
1612
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1613
+
1614
+ "use strict";
1615
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1616
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1617
+ /* harmony export */ });
1618
+ /* unused harmony export AnalyticsHandler */
1619
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6751);
1620
+ /* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7183);
1621
+ /* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_faststore_config__WEBPACK_IMPORTED_MODULE_0__);
1622
+
1623
+
1624
+
1625
+ if (false) {}
1626
+
1627
+ const AnalyticsHandler = () => {
1628
+ (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_1__/* .useAnalyticsEvent */ .W)(event => {
1629
+ // Cleans the ecommerce object before pushing a new one
1630
+ // This prevents the new data from getting merged with the previous one
1631
+ // which could lead do inaccurate and old data being sent with events
1632
+ //
1633
+ // source: https://developers.google.com/tag-manager/ecommerce-ga4?hl=pt-br#clearing_the_ecommerce_object
1634
+ window.dataLayer.push({
1635
+ ecommerce: null
1636
+ });
1637
+ window.dataLayer.push({
1638
+ event: event.name,
1639
+ ecommerce: event.params
1640
+ });
1641
+ __webpack_require__(3982)(`./${(_faststore_config__WEBPACK_IMPORTED_MODULE_0___default().platform)}`).then(({
1642
+ default: sendEvent
1643
+ }) => {
1644
+ sendEvent(event);
1645
+ });
1646
+ });
1647
+ return null;
1648
+ };
1649
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AnalyticsHandler);
1650
+
1651
+ /***/ }),
1652
+
1653
+ /***/ 4638:
1654
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1655
+
1656
+ "use strict";
1657
+
1658
+ // EXPORTS
1659
+ __webpack_require__.d(__webpack_exports__, {
1660
+ "Z": () => (/* reexport */ ErrorBoundary_ErrorBoundary)
1661
+ });
1662
+
1663
+ // EXTERNAL MODULE: external "react"
1664
+ var external_react_ = __webpack_require__(6689);
1665
+ ;// CONCATENATED MODULE: ./src/sdk/error/ErrorBoundary/ErrorBoundary.tsx
1666
+ 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; }
1667
+
1668
+
1669
+
1670
+ const getReloads = () => Number(window.sessionStorage.getItem('store:reloads') ?? '0');
1671
+
1672
+ const setReloads = reloads => window.sessionStorage.setItem('store:reloads', `${reloads}`);
1673
+
1674
+ const canRecover = () => getReloads() < 2;
1675
+
1676
+ const isFrameworkLevelError = error => error?.name === 'ChunkLoadError';
1677
+
1678
+ if (false) {}
1679
+
1680
+ class ErrorBoundary extends external_react_.Component {
1681
+ constructor(...args) {
1682
+ super(...args);
1683
+
1684
+ _defineProperty(this, "state", {
1685
+ hasError: false,
1686
+ error: null
1687
+ });
1688
+ }
1689
+
1690
+ static getDerivedStateFromError(error) {
1691
+ return {
1692
+ hasError: true,
1693
+ error
1694
+ };
1695
+ } // We can't accurately type the error here, since it could vary depending on
1696
+ // what caused it. This is not standardized.
1697
+
1698
+
1699
+ componentDidCatch(error, errorInfo) {
1700
+ console.error(`React Error: ${error.message} ${errorInfo.componentStack}`);
1701
+ const errorId = 'unknown'; // prevent infinite loop
1702
+
1703
+ if (window.location.pathname.startsWith('/404') || window.location.pathname.startsWith('/500')) {
1704
+ return;
1705
+ }
1706
+
1707
+ const from = encodeURIComponent(window.location.pathname);
1708
+ const is404 = error?.extensions?.exception?.status === 404;
1709
+
1710
+ if (isFrameworkLevelError(error) && canRecover()) {
1711
+ setReloads(getReloads() + 1);
1712
+ window.location.reload();
1713
+ } else if (is404) {
1714
+ window.location.href = `/404?from=${from}`;
1715
+ } else {
1716
+ window.location.href = `/500?from=${from}&errorId=${errorId}`;
1717
+ }
1718
+ }
1719
+
1720
+ render() {
1721
+ if (this.state.hasError && true) {
1722
+ return null;
1723
+ }
1724
+
1725
+ return this.props.children;
1726
+ }
1727
+
1728
+ }
1729
+
1730
+ /* harmony default export */ const ErrorBoundary_ErrorBoundary = (ErrorBoundary);
1731
+ ;// CONCATENATED MODULE: ./src/sdk/error/ErrorBoundary/index.ts
1732
+
1733
+
1734
+ /***/ }),
1735
+
1736
+ /***/ 5882:
1737
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1738
+
1739
+ "use strict";
1740
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1741
+ /* harmony export */ "u": () => (/* binding */ formatSearchPath)
1742
+ /* harmony export */ });
1743
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3364);
1744
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3264);
1745
+
1746
+ const formatSearchPath = term => {
1747
+ const {
1748
+ pathname,
1749
+ search
1750
+ } = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)((0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_1__/* .initialize */ .j)({
1751
+ term,
1752
+ base: '/s'
1753
+ }));
1754
+ return `${pathname}${search}`;
1755
+ };
1756
+
1757
+ /***/ }),
1758
+
1759
+ /***/ 5098:
1760
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1761
+
1762
+ "use strict";
1763
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1764
+ /* harmony export */ "Z": () => (/* binding */ useSearchHistory)
1765
+ /* harmony export */ });
1766
+ /* unused harmony export searchHistoryStore */
1767
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7244);
1768
+ /* harmony import */ var _useStore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3818);
1769
+
1770
+
1771
+ const searchHistoryStore = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_1__/* .createStore */ .M)([], `fs::searchHistory`);
1772
+ const MAX_HISTORY_SIZE = 4;
1773
+ function useSearchHistory(maxHistorySize = MAX_HISTORY_SIZE) {
1774
+ const searchHistory = (0,_useStore__WEBPACK_IMPORTED_MODULE_0__/* .useStore */ .o)(searchHistoryStore);
1775
+
1776
+ function addToSearchHistory(newHistory) {
1777
+ const set = new Set();
1778
+ const newHistoryArray = [newHistory, ...searchHistory].slice(0, maxHistorySize).filter(item => !set.has(item.term) && set.add(item.term), set);
1779
+ searchHistoryStore.set(newHistoryArray);
1780
+ }
1781
+
1782
+ function clearSearchHistory() {
1783
+ searchHistoryStore.set([]);
1784
+ }
1785
+
1786
+ return {
1787
+ searchHistory,
1788
+ addToSearchHistory,
1789
+ clearSearchHistory
1790
+ };
1791
+ }
1792
+
1793
+ /***/ }),
1794
+
1795
+ /***/ 6344:
1796
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1797
+
1798
+ "use strict";
1799
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1800
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1801
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1802
+ /* harmony export */ });
1803
+ /* harmony import */ var src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7732);
1804
+ /* harmony import */ var _session__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5971);
1805
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__]);
1806
+ src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1807
+
1808
+
1809
+ const MAX_SUGGESTIONS = 5;
1810
+ const query = "SearchSuggestionsQuery";
1811
+
1812
+ function useSuggestions(term, limit = MAX_SUGGESTIONS) {
1813
+ const {
1814
+ channel,
1815
+ locale
1816
+ } = (0,_session__WEBPACK_IMPORTED_MODULE_1__/* .useSession */ .kP)();
1817
+ const {
1818
+ data,
1819
+ error
1820
+ } = (0,src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__/* .useQuery */ .aM)(query, {
1821
+ term,
1822
+ selectedFacets: [{
1823
+ key: 'channel',
1824
+ value: channel ?? ''
1825
+ }, {
1826
+ key: 'locale',
1827
+ value: locale
1828
+ }]
1829
+ });
1830
+ return {
1831
+ terms: (data?.search.suggestions.terms ?? []).slice(0, limit),
1832
+ products: (data?.search.suggestions.products ?? []).slice(0, limit),
1833
+ isLoading: !error && !data
1834
+ };
1835
+ }
1836
+
1837
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useSuggestions);
1838
+ __webpack_async_result__();
1839
+ } catch(e) { __webpack_async_result__(e); } });
1840
+
1841
+ /***/ }),
1842
+
1843
+ /***/ 3669:
1844
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1845
+
1846
+ "use strict";
1847
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1848
+ /* harmony export */ "Z": () => (/* binding */ useOnClickOutside)
1849
+ /* harmony export */ });
1850
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
1851
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1852
+
1853
+ function useOnClickOutside(ref, handler) {
1854
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
1855
+ const listener = event => {
1856
+ if (!ref.current || ref.current.contains(event.target)) {
1857
+ return;
1858
+ }
1859
+
1860
+ handler(event);
1861
+ };
1862
+
1863
+ document.addEventListener('mousedown', listener);
1864
+ document.addEventListener('touchstart', listener);
1865
+ return () => {
1866
+ document.removeEventListener('mousedown', listener);
1867
+ document.removeEventListener('touchstart', listener);
1868
+ };
1869
+ },
1870
+ /**
1871
+ * Add ref and handler to effect dependencies.
1872
+ * It's worth noting that because passed in handler is a new
1873
+ * function on every render that will cause this effect
1874
+ * callback/cleanup to run every render. It's not a big deal
1875
+ * but to optimize you can wrap handler in useCallback before
1876
+ * passing it into this hook.
1877
+ */
1878
+ [ref, handler]);
1879
+ }
1880
+
1881
+ /***/ }),
1882
+
1883
+ /***/ 3428:
1884
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1885
+
1886
+ "use strict";
1887
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1888
+ /* harmony export */ "Z": () => (/* binding */ useScrollDirection)
1889
+ /* harmony export */ });
1890
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
1891
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1892
+
1893
+ function useScrollDirection() {
1894
+ const {
1895
+ 0: scrollDirection,
1896
+ 1: setScrollDirection
1897
+ } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('');
1898
+ const {
1899
+ 0: isPending,
1900
+ 1: startTransition
1901
+ } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useTransition)();
1902
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
1903
+ let lastScrollY = window.scrollY;
1904
+
1905
+ const updateScrollDirection = () => {
1906
+ const {
1907
+ scrollY
1908
+ } = window;
1909
+ const direction = scrollY > lastScrollY ? 'down' : 'up';
1910
+
1911
+ if (!isPending && direction !== scrollDirection && (scrollY - lastScrollY > 10 || scrollY - lastScrollY < -10)) {
1912
+ startTransition(() => setScrollDirection(direction));
1913
+ }
1914
+
1915
+ lastScrollY = scrollY > 0 ? scrollY : 0;
1916
+ };
1917
+
1918
+ window.addEventListener('scroll', updateScrollDirection);
1919
+ return () => window.removeEventListener('scroll', updateScrollDirection);
1920
+ }, [isPending, scrollDirection]);
1921
+ return scrollDirection;
1922
+ }
1923
+
1924
+ /***/ }),
1925
+
1926
+ /***/ 1893:
1927
+ /***/ ((module) => {
1928
+
1929
+ // Exports
1930
+ module.exports = {
1931
+ "fs-footer": "footer_fs-footer__ivJqk",
1932
+ "fsFooter": "footer_fs-footer__ivJqk"
1933
+ };
1934
+
1935
+
1936
+ /***/ }),
1937
+
1938
+ /***/ 4325:
1939
+ /***/ ((module) => {
1940
+
1941
+ // Exports
1942
+ module.exports = {
1943
+ "fs-navbar-slider": "navbar-slider_fs-navbar-slider__bAYHh",
1944
+ "fsNavbarSlider": "navbar-slider_fs-navbar-slider__bAYHh"
1945
+ };
1946
+
1947
+
1948
+ /***/ }),
1949
+
1950
+ /***/ 3460:
1951
+ /***/ ((module) => {
1952
+
1953
+ // Exports
1954
+ module.exports = {
1955
+ "fs-navbar": "navbar_fs-navbar__JA7gD",
1956
+ "fsNavbar": "navbar_fs-navbar__JA7gD"
1957
+ };
1958
+
1959
+
1960
+ /***/ }),
1961
+
1962
+ /***/ 844:
1963
+ /***/ ((module) => {
1964
+
1965
+ // Exports
1966
+ module.exports = {
1967
+ "fs-navlinks": "navlinks_fs-navlinks__nbR4q",
1968
+ "fsNavlinks": "navlinks_fs-navlinks__nbR4q"
1969
+ };
1970
+
1971
+
1972
+ /***/ }),
1973
+
1974
+ /***/ 4635:
1975
+ /***/ ((module) => {
1976
+
1977
+ // Exports
1978
+ module.exports = {
1979
+ "fs-button": "button_fs-button__inf6p",
1980
+ "fsButton": "button_fs-button__inf6p"
1981
+ };
1982
+
1983
+
1984
+ /***/ }),
1985
+
1986
+ /***/ 4374:
1987
+ /***/ ((module) => {
1988
+
1989
+ // Exports
1990
+ module.exports = {
1991
+ "fs-logo": "logo_fs-logo__4mmCZ",
1992
+ "fsLogo": "logo_fs-logo__4mmCZ"
1993
+ };
1994
+
1995
+
1996
+ /***/ }),
1997
+
1998
+ /***/ 3982:
1999
+ /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2000
+
2001
+ var map = {
2002
+ "./vtex": [
2003
+ 3664,
2004
+ 5098
2005
+ ],
2006
+ "./vtex/": [
2007
+ 3664,
2008
+ 5098
2009
+ ],
2010
+ "./vtex/index": [
2011
+ 3664,
2012
+ 5098
2013
+ ],
2014
+ "./vtex/index.ts": [
2015
+ 3664,
2016
+ 5098
2017
+ ],
2018
+ "./vtex/search": [
2019
+ 9143,
2020
+ 9143
2021
+ ],
2022
+ "./vtex/search.ts": [
2023
+ 9143,
2024
+ 9143
2025
+ ]
2026
+ };
2027
+ function webpackAsyncContext(req) {
2028
+ if(!__webpack_require__.o(map, req)) {
2029
+ return Promise.resolve().then(() => {
2030
+ var e = new Error("Cannot find module '" + req + "'");
2031
+ e.code = 'MODULE_NOT_FOUND';
2032
+ throw e;
2033
+ });
2034
+ }
2035
+
2036
+ var ids = map[req], id = ids[0];
2037
+ return __webpack_require__.e(ids[1]).then(() => {
2038
+ return __webpack_require__(id);
2039
+ });
2040
+ }
2041
+ webpackAsyncContext.keys = () => (Object.keys(map));
2042
+ webpackAsyncContext.id = 3982;
2043
+ module.exports = webpackAsyncContext;
2044
+
2045
+ /***/ }),
2046
+
2047
+ /***/ 5490:
2048
+ /***/ ((module) => {
2049
+
2050
+ "use strict";
2051
+ module.exports = require("@faststore/graphql-utils");
2052
+
2053
+ /***/ }),
2054
+
2055
+ /***/ 3430:
2056
+ /***/ ((module) => {
2057
+
2058
+ "use strict";
2059
+ module.exports = require("idb-keyval");
2060
+
2061
+ /***/ }),
2062
+
2063
+ /***/ 3280:
2064
+ /***/ ((module) => {
2065
+
2066
+ "use strict";
2067
+ module.exports = require("next/dist/shared/lib/app-router-context.js");
2068
+
2069
+ /***/ }),
2070
+
2071
+ /***/ 2796:
2072
+ /***/ ((module) => {
2073
+
2074
+ "use strict";
2075
+ module.exports = require("next/dist/shared/lib/head-manager-context.js");
2076
+
2077
+ /***/ }),
2078
+
2079
+ /***/ 5429:
2080
+ /***/ ((module) => {
2081
+
2082
+ "use strict";
2083
+ module.exports = require("next/dist/shared/lib/head.js");
2084
+
2085
+ /***/ }),
2086
+
2087
+ /***/ 3539:
2088
+ /***/ ((module) => {
2089
+
2090
+ "use strict";
2091
+ module.exports = require("next/dist/shared/lib/i18n/detect-domain-locale.js");
2092
+
2093
+ /***/ }),
2094
+
2095
+ /***/ 4014:
2096
+ /***/ ((module) => {
2097
+
2098
+ "use strict";
2099
+ module.exports = require("next/dist/shared/lib/i18n/normalize-locale-path.js");
2100
+
2101
+ /***/ }),
2102
+
2103
+ /***/ 4486:
2104
+ /***/ ((module) => {
2105
+
2106
+ "use strict";
2107
+ module.exports = require("next/dist/shared/lib/image-blur-svg.js");
2108
+
2109
+ /***/ }),
2110
+
2111
+ /***/ 744:
2112
+ /***/ ((module) => {
2113
+
2114
+ "use strict";
2115
+ module.exports = require("next/dist/shared/lib/image-config-context.js");
2116
+
2117
+ /***/ }),
2118
+
2119
+ /***/ 5843:
2120
+ /***/ ((module) => {
2121
+
2122
+ "use strict";
2123
+ module.exports = require("next/dist/shared/lib/image-config.js");
2124
+
2125
+ /***/ }),
2126
+
2127
+ /***/ 8524:
2128
+ /***/ ((module) => {
2129
+
2130
+ "use strict";
2131
+ module.exports = require("next/dist/shared/lib/is-plain-object.js");
2132
+
2133
+ /***/ }),
2134
+
2135
+ /***/ 8020:
2136
+ /***/ ((module) => {
2137
+
2138
+ "use strict";
2139
+ module.exports = require("next/dist/shared/lib/mitt.js");
2140
+
2141
+ /***/ }),
2142
+
2143
+ /***/ 4406:
2144
+ /***/ ((module) => {
2145
+
2146
+ "use strict";
2147
+ module.exports = require("next/dist/shared/lib/page-path/denormalize-page-path.js");
2148
+
2149
+ /***/ }),
2150
+
2151
+ /***/ 4964:
2152
+ /***/ ((module) => {
2153
+
2154
+ "use strict";
2155
+ module.exports = require("next/dist/shared/lib/router-context.js");
2156
+
2157
+ /***/ }),
2158
+
2159
+ /***/ 3431:
2160
+ /***/ ((module) => {
2161
+
2162
+ "use strict";
2163
+ module.exports = require("next/dist/shared/lib/router/utils/add-locale.js");
2164
+
2165
+ /***/ }),
2166
+
2167
+ /***/ 1751:
2168
+ /***/ ((module) => {
2169
+
2170
+ "use strict";
2171
+ module.exports = require("next/dist/shared/lib/router/utils/add-path-prefix.js");
2172
+
2173
+ /***/ }),
2174
+
2175
+ /***/ 6220:
2176
+ /***/ ((module) => {
2177
+
2178
+ "use strict";
2179
+ module.exports = require("next/dist/shared/lib/router/utils/compare-states.js");
2180
+
2181
+ /***/ }),
2182
+
2183
+ /***/ 299:
2184
+ /***/ ((module) => {
2185
+
2186
+ "use strict";
2187
+ module.exports = require("next/dist/shared/lib/router/utils/format-next-pathname-info.js");
2188
+
2189
+ /***/ }),
2190
+
2191
+ /***/ 3938:
2192
+ /***/ ((module) => {
2193
+
2194
+ "use strict";
2195
+ module.exports = require("next/dist/shared/lib/router/utils/format-url.js");
2196
+
2197
+ /***/ }),
2198
+
2199
+ /***/ 9565:
2200
+ /***/ ((module) => {
2201
+
2202
+ "use strict";
2203
+ module.exports = require("next/dist/shared/lib/router/utils/get-asset-path-from-route.js");
2204
+
2205
+ /***/ }),
2206
+
2207
+ /***/ 5789:
2208
+ /***/ ((module) => {
2209
+
2210
+ "use strict";
2211
+ module.exports = require("next/dist/shared/lib/router/utils/get-next-pathname-info.js");
2212
+
2213
+ /***/ }),
2214
+
2215
+ /***/ 1897:
2216
+ /***/ ((module) => {
2217
+
2218
+ "use strict";
2219
+ module.exports = require("next/dist/shared/lib/router/utils/is-bot.js");
2220
+
2221
+ /***/ }),
2222
+
2223
+ /***/ 1428:
2224
+ /***/ ((module) => {
2225
+
2226
+ "use strict";
2227
+ module.exports = require("next/dist/shared/lib/router/utils/is-dynamic.js");
2228
+
2229
+ /***/ }),
2230
+
2231
+ /***/ 8854:
2232
+ /***/ ((module) => {
2233
+
2234
+ "use strict";
2235
+ module.exports = require("next/dist/shared/lib/router/utils/parse-path.js");
2236
+
2237
+ /***/ }),
2238
+
2239
+ /***/ 1292:
2240
+ /***/ ((module) => {
2241
+
2242
+ "use strict";
2243
+ module.exports = require("next/dist/shared/lib/router/utils/parse-relative-url.js");
2244
+
2245
+ /***/ }),
2246
+
2247
+ /***/ 4567:
2248
+ /***/ ((module) => {
2249
+
2250
+ "use strict";
2251
+ module.exports = require("next/dist/shared/lib/router/utils/path-has-prefix.js");
2252
+
2253
+ /***/ }),
2254
+
2255
+ /***/ 979:
2256
+ /***/ ((module) => {
2257
+
2258
+ "use strict";
2259
+ module.exports = require("next/dist/shared/lib/router/utils/querystring.js");
2260
+
2261
+ /***/ }),
2262
+
2263
+ /***/ 3297:
2264
+ /***/ ((module) => {
2265
+
2266
+ "use strict";
2267
+ module.exports = require("next/dist/shared/lib/router/utils/remove-trailing-slash.js");
2268
+
2269
+ /***/ }),
2270
+
2271
+ /***/ 6052:
2272
+ /***/ ((module) => {
2273
+
2274
+ "use strict";
2275
+ module.exports = require("next/dist/shared/lib/router/utils/resolve-rewrites.js");
2276
+
2277
+ /***/ }),
2278
+
2279
+ /***/ 4226:
2280
+ /***/ ((module) => {
2281
+
2282
+ "use strict";
2283
+ module.exports = require("next/dist/shared/lib/router/utils/route-matcher.js");
2284
+
2285
+ /***/ }),
2286
+
2287
+ /***/ 5052:
2288
+ /***/ ((module) => {
2289
+
2290
+ "use strict";
2291
+ module.exports = require("next/dist/shared/lib/router/utils/route-regex.js");
2292
+
2293
+ /***/ }),
2294
+
2295
+ /***/ 9232:
2296
+ /***/ ((module) => {
2297
+
2298
+ "use strict";
2299
+ module.exports = require("next/dist/shared/lib/utils.js");
2300
+
2301
+ /***/ }),
2302
+
2303
+ /***/ 1853:
2304
+ /***/ ((module) => {
2305
+
2306
+ "use strict";
2307
+ module.exports = require("next/router");
2308
+
2309
+ /***/ }),
2310
+
2311
+ /***/ 8890:
2312
+ /***/ ((module) => {
2313
+
2314
+ "use strict";
2315
+ module.exports = require("nextjs-progressbar");
2316
+
2317
+ /***/ }),
2318
+
2319
+ /***/ 6689:
2320
+ /***/ ((module) => {
2321
+
2322
+ "use strict";
2323
+ module.exports = require("react");
2324
+
2325
+ /***/ }),
2326
+
2327
+ /***/ 6405:
2328
+ /***/ ((module) => {
2329
+
2330
+ "use strict";
2331
+ module.exports = require("react-dom");
2332
+
2333
+ /***/ }),
2334
+
2335
+ /***/ 997:
2336
+ /***/ ((module) => {
2337
+
2338
+ "use strict";
2339
+ module.exports = require("react/jsx-runtime");
2340
+
2341
+ /***/ }),
2342
+
2343
+ /***/ 3823:
2344
+ /***/ ((module) => {
2345
+
2346
+ "use strict";
2347
+ module.exports = require("tabbable");
2348
+
2349
+ /***/ }),
2350
+
2351
+ /***/ 5941:
2352
+ /***/ ((module) => {
2353
+
2354
+ "use strict";
2355
+ module.exports = import("swr");;
2356
+
2357
+ /***/ })
2358
+
2359
+ };
2360
+ ;
2361
+
2362
+ // load runtime
2363
+ var __webpack_require__ = require("../webpack-runtime.js");
2364
+ __webpack_require__.C(exports);
2365
+ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
2366
+ var __webpack_exports__ = __webpack_require__.X(0, [676,1394,3264,6465,7183,7181,6898,8098,2914], () => (__webpack_exec__(7600)));
2367
+ module.exports = __webpack_exports__;
2368
+
2369
+ })();