@faststore/core 2.0.123-alpha.0 → 2.0.125-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 (167) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/build-manifest.json +120 -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 +52 -0
  17. package/.next/required-server-files.json +1 -0
  18. package/.next/routes-manifest.json +1 -0
  19. package/.next/server/chunks/104.js +295 -0
  20. package/.next/server/chunks/120.js +435 -0
  21. package/.next/server/chunks/123.js +58 -0
  22. package/.next/server/chunks/143.js +106 -0
  23. package/.next/server/chunks/154.js +206 -0
  24. package/.next/server/chunks/183.js +80 -0
  25. package/.next/server/chunks/247.js +61 -0
  26. package/.next/server/chunks/254.js +159 -0
  27. package/.next/server/chunks/256.js +1787 -0
  28. package/.next/server/chunks/280.js +322 -0
  29. package/.next/server/chunks/287.js +58 -0
  30. package/.next/server/chunks/312.js +674 -0
  31. package/.next/server/chunks/336.js +820 -0
  32. package/.next/server/chunks/350.js +142 -0
  33. package/.next/server/chunks/398.js +132 -0
  34. package/.next/server/chunks/401.js +7241 -0
  35. package/.next/server/chunks/431.js +7241 -0
  36. package/.next/server/chunks/502.js +603 -0
  37. package/.next/server/chunks/554.js +264 -0
  38. package/.next/server/chunks/557.js +135 -0
  39. package/.next/server/chunks/576.js +80 -0
  40. package/.next/server/chunks/597.js +169 -0
  41. package/.next/server/chunks/608.js +515 -0
  42. package/.next/server/chunks/664.js +3401 -0
  43. package/.next/server/chunks/676.js +32 -0
  44. package/.next/server/chunks/74.js +2598 -0
  45. package/.next/server/chunks/746.js +249 -0
  46. package/.next/server/chunks/82.js +371 -0
  47. package/.next/server/chunks/854.js +72 -0
  48. package/.next/server/chunks/859.js +959 -0
  49. package/.next/server/chunks/872.js +358 -0
  50. package/.next/server/chunks/886.js +120 -0
  51. package/.next/server/chunks/98.js +124 -0
  52. package/.next/server/chunks/font-manifest.json +1 -0
  53. package/.next/server/font-manifest.json +1 -0
  54. package/.next/server/middleware-build-manifest.js +1 -0
  55. package/.next/server/middleware-manifest.json +6 -0
  56. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  57. package/.next/server/pages/404.js +414 -0
  58. package/.next/server/pages/404.js.nft.json +1 -0
  59. package/.next/server/pages/500.js +384 -0
  60. package/.next/server/pages/500.js.nft.json +1 -0
  61. package/.next/server/pages/[...slug].js +700 -0
  62. package/.next/server/pages/[...slug].js.nft.json +1 -0
  63. package/.next/server/pages/[slug]/p.js +2382 -0
  64. package/.next/server/pages/[slug]/p.js.nft.json +1 -0
  65. package/.next/server/pages/_app.js +368 -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 +370 -0
  72. package/.next/server/pages/account.js.nft.json +1 -0
  73. package/.next/server/pages/api/graphql.js +315 -0
  74. package/.next/server/pages/api/graphql.js.nft.json +1 -0
  75. package/.next/server/pages/api/preview.js +118 -0
  76. package/.next/server/pages/api/preview.js.nft.json +1 -0
  77. package/.next/server/pages/checkout.js +370 -0
  78. package/.next/server/pages/checkout.js.nft.json +1 -0
  79. package/.next/server/pages/en-US/404.html +81 -0
  80. package/.next/server/pages/en-US/404.json +1 -0
  81. package/.next/server/pages/en-US/500.html +81 -0
  82. package/.next/server/pages/en-US/500.json +1 -0
  83. package/.next/server/pages/en-US/account.html +81 -0
  84. package/.next/server/pages/en-US/account.json +1 -0
  85. package/.next/server/pages/en-US/checkout.html +81 -0
  86. package/.next/server/pages/en-US/checkout.json +1 -0
  87. package/.next/server/pages/en-US/login.html +81 -0
  88. package/.next/server/pages/en-US/login.json +1 -0
  89. package/.next/server/pages/en-US/s.html +81 -0
  90. package/.next/server/pages/en-US/s.json +1 -0
  91. package/.next/server/pages/en-US.html +81 -0
  92. package/.next/server/pages/en-US.json +1 -0
  93. package/.next/server/pages/index.js +580 -0
  94. package/.next/server/pages/index.js.nft.json +1 -0
  95. package/.next/server/pages/login.js +396 -0
  96. package/.next/server/pages/login.js.nft.json +1 -0
  97. package/.next/server/pages/s.js +438 -0
  98. package/.next/server/pages/s.js.nft.json +1 -0
  99. package/.next/server/pages-manifest.json +16 -0
  100. package/.next/server/webpack-api-runtime.js +229 -0
  101. package/.next/server/webpack-runtime.js +229 -0
  102. package/.next/static/E3svUtP3jVTE--NFE5Ka5/_buildManifest.js +1 -0
  103. package/.next/static/E3svUtP3jVTE--NFE5Ka5/_ssgManifest.js +1 -0
  104. package/.next/static/chunks/143.dd8a556e6957baa1.js +1 -0
  105. package/.next/static/chunks/170.b45293edb4f089c8.js +1 -0
  106. package/.next/static/chunks/226.b57e10ad9932f88c.js +1 -0
  107. package/.next/static/chunks/336.84e96cd7aa2412bc.js +1 -0
  108. package/.next/static/chunks/495.e6b60941cc3e82e4.js +1 -0
  109. package/.next/static/chunks/533-7ddbc43c0305df0c.js +1 -0
  110. package/.next/static/chunks/54.1d3e6cb43b5b1626.js +1 -0
  111. package/.next/static/chunks/597.d0da2018cc312352.js +1 -0
  112. package/.next/static/chunks/608.59e69b83f35d9c44.js +1 -0
  113. package/.next/static/chunks/651.7142f31ce1e052b3.js +1 -0
  114. package/.next/static/chunks/706-abfba2e18f084aed.js +1 -0
  115. package/.next/static/chunks/741.52f7fb873418346f.js +1 -0
  116. package/.next/static/chunks/832-5460e7c4690723c9.js +1 -0
  117. package/.next/static/chunks/861-d1a326525092ab9c.js +1 -0
  118. package/.next/static/chunks/98.97381d2021f86cd9.js +1 -0
  119. package/.next/static/chunks/framework-dfd14d7ce6600b03.js +1 -0
  120. package/.next/static/chunks/main-9746772201fe3ac1.js +1 -0
  121. package/.next/static/chunks/pages/404-ac22e12eb22b9c50.js +1 -0
  122. package/.next/static/chunks/pages/500-7b708e8b89389d0e.js +1 -0
  123. package/.next/static/chunks/pages/[...slug]-53c0858024f06998.js +1 -0
  124. package/.next/static/chunks/pages/[slug]/p-fdc9d52c82f44e5d.js +1 -0
  125. package/.next/static/chunks/pages/_app-b601536188b9a919.js +1 -0
  126. package/.next/static/chunks/pages/_error-a7a0c1d9bfbb4f38.js +1 -0
  127. package/.next/static/chunks/pages/account-04a0a6c07709c50e.js +1 -0
  128. package/.next/static/chunks/pages/checkout-2ed6b828bb6ed7e6.js +1 -0
  129. package/.next/static/chunks/pages/index-dc845df360bc3a28.js +1 -0
  130. package/.next/static/chunks/pages/login-3bb40d77e6ee120a.js +1 -0
  131. package/.next/static/chunks/pages/s-8fec20c40a2bd7da.js +1 -0
  132. package/.next/static/chunks/polyfills-c67a75d1b6f99dc8.js +1 -0
  133. package/.next/static/chunks/webpack-aff0e2e4ba699b8a.js +1 -0
  134. package/.next/static/css/025f924b9633ecd3.css +1 -0
  135. package/.next/static/css/2253644409b99b98.css +1 -0
  136. package/.next/static/css/364c439adafef5c8.css +1 -0
  137. package/.next/static/css/4b7b7b64ae6afe67.css +1 -0
  138. package/.next/static/css/4e0fc649e912b30f.css +1 -0
  139. package/.next/static/css/501cb58eaa378545.css +1 -0
  140. package/.next/static/css/587c27bbda64e700.css +1 -0
  141. package/.next/static/css/5f1b35b69b2ba1f7.css +1 -0
  142. package/.next/static/css/7a8417de90d11c60.css +1 -0
  143. package/.next/static/css/7df2581c69fe96b4.css +1 -0
  144. package/.next/static/media/brandless-neutral.76ddf63a.png +0 -0
  145. package/.next/trace +66 -0
  146. package/.turbo/turbo-build.log +3 -3
  147. package/CHANGELOG.md +4 -0
  148. package/package.json +2 -2
  149. package/public/~partytown/debug/partytown-atomics.js +556 -0
  150. package/public/~partytown/debug/partytown-media.js +374 -0
  151. package/public/~partytown/debug/partytown-sandbox-sw.js +543 -0
  152. package/public/~partytown/debug/partytown-sw.js +59 -0
  153. package/public/~partytown/debug/partytown-ww-atomics.js +1789 -0
  154. package/public/~partytown/debug/partytown-ww-sw.js +1781 -0
  155. package/public/~partytown/debug/partytown.js +72 -0
  156. package/public/~partytown/partytown-atomics.js +2 -0
  157. package/public/~partytown/partytown-media.js +2 -0
  158. package/public/~partytown/partytown-sw.js +2 -0
  159. package/public/~partytown/partytown.js +2 -0
  160. package/src/components/sections/ProductDetails/Overrides.tsx +11 -0
  161. package/src/components/sections/ProductDetails/ProductDetails.tsx +7 -6
  162. package/src/components/sections/ProductShelf/Overrides.tsx +10 -0
  163. package/src/components/sections/ProductShelf/ProductShelf.tsx +2 -1
  164. package/src/customizations/components/overrides/ProductDetails.tsx +10 -0
  165. package/src/customizations/components/overrides/ProductShelf.tsx +10 -0
  166. package/src/typings/overrides.d.ts +18 -0
  167. /package/src/customizations/components/{index.ts → index.tsx} +0 -0
@@ -0,0 +1,2598 @@
1
+ exports.id = 74;
2
+ exports.ids = [74];
3
+ exports.modules = {
4
+
5
+ /***/ 4933:
6
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7
+
8
+ "use strict";
9
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
10
+ /* harmony export */ "C": () => (/* binding */ useScrollDirection)
11
+ /* harmony export */ });
12
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
13
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
14
+
15
+ const useScrollDirection = () => {
16
+ const [scrollDirection, setScrollDirection] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('');
17
+ const [isPending, startTransition] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useTransition)();
18
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
19
+ let lastScrollY = window.scrollY;
20
+ const updateScrollDirection = () => {
21
+ const { scrollY } = window;
22
+ const direction = scrollY > lastScrollY ? 'down' : 'up';
23
+ if (!isPending &&
24
+ direction !== scrollDirection &&
25
+ (scrollY - lastScrollY > 10 || scrollY - lastScrollY < -10)) {
26
+ startTransition(() => setScrollDirection(direction));
27
+ }
28
+ lastScrollY = scrollY > 0 ? scrollY : 0;
29
+ };
30
+ window.addEventListener('scroll', updateScrollDirection);
31
+ return () => window.removeEventListener('scroll', updateScrollDirection);
32
+ }, [isPending, scrollDirection]);
33
+ return scrollDirection;
34
+ };
35
+ //# sourceMappingURL=useScrollDirection.js.map
36
+
37
+ /***/ }),
38
+
39
+ /***/ 9739:
40
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
41
+
42
+ "use strict";
43
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
44
+ /* harmony export */ "A": () => (/* binding */ useAccordion),
45
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
46
+ /* harmony export */ });
47
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
48
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
49
+
50
+ const AccordionContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
51
+ const Accordion = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Accordion({ testId = 'fs-accordion', indices, onChange, children, ...otherProps }, ref) {
52
+ const childrenWithIndex = react__WEBPACK_IMPORTED_MODULE_0___default().Children.map(children, (child, index) => (0,react__WEBPACK_IMPORTED_MODULE_0__.cloneElement)(child, { index: child.props.index ?? index }));
53
+ const context = {
54
+ indices: new Set(indices),
55
+ onChange,
56
+ numberOfItems: childrenWithIndex.length,
57
+ };
58
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement(AccordionContext.Provider, { value: context },
59
+ react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", { ref: ref, "data-fs-accordion": true, role: "region", "data-testid": testId, ...otherProps }, childrenWithIndex)));
60
+ });
61
+ function useAccordion() {
62
+ const context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(AccordionContext);
63
+ if (context === undefined) {
64
+ throw new Error('Do not use Accordion components outside the Accordion context.');
65
+ }
66
+ return context;
67
+ }
68
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Accordion);
69
+ //# sourceMappingURL=Accordion.js.map
70
+
71
+ /***/ }),
72
+
73
+ /***/ 7743:
74
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
75
+
76
+ "use strict";
77
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
78
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
79
+ /* harmony export */ });
80
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
81
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
82
+ /* harmony import */ var _Accordion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(9739);
83
+ /* harmony import */ var _AccordionItem__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5705);
84
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5045);
85
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(7578);
86
+
87
+
88
+
89
+
90
+ const AccordionButton = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function AccordionButton({ testId = 'fs-accordion-button', expandedIcon = react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { name: "MinusCircle", "data-icon": "expanded" }), collapsedIcon = react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { name: "PlusCircle", "data-icon": "collapsed" }), children, ...otherProps }, ref) {
91
+ const { indices, onChange, numberOfItems } = (0,_Accordion__WEBPACK_IMPORTED_MODULE_2__/* .useAccordion */ .A)();
92
+ const { index, panel, button, prefixId } = (0,_AccordionItem__WEBPACK_IMPORTED_MODULE_3__/* .useAccordionItem */ .D)();
93
+ const onKeyDown = (event) => {
94
+ if (!['ArrowDown', 'ArrowUp'].includes(event.key)) {
95
+ return;
96
+ }
97
+ const getNext = () => {
98
+ const next = Number(index) + 1 === numberOfItems ? 0 : Number(index) + 1;
99
+ return document.getElementById(`${prefixId && `${prefixId}-`}button--${next}`);
100
+ };
101
+ const getPrevious = () => {
102
+ const previous = Number(index) - 1 < 0 ? numberOfItems - 1 : Number(index) - 1;
103
+ return document.getElementById(`${prefixId && `${prefixId}-`}button--${previous}`);
104
+ };
105
+ switch (event.key) {
106
+ case 'ArrowDown':
107
+ event.preventDefault();
108
+ getNext()?.focus();
109
+ break;
110
+ case 'ArrowUp':
111
+ event.preventDefault();
112
+ getPrevious()?.focus();
113
+ break;
114
+ default:
115
+ }
116
+ };
117
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, { ref: ref, id: button, "data-fs-accordion-button": true, "aria-expanded": indices.has(index), icon: indices.has(index) ? expandedIcon : collapsedIcon, iconPosition: "right", "aria-controls": panel, onKeyDown: onKeyDown, onClick: () => {
118
+ onChange(index);
119
+ }, "data-testid": testId, ...otherProps }, children));
120
+ });
121
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AccordionButton);
122
+ //# sourceMappingURL=AccordionButton.js.map
123
+
124
+ /***/ }),
125
+
126
+ /***/ 5705:
127
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
128
+
129
+ "use strict";
130
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
131
+ /* harmony export */ "D": () => (/* binding */ useAccordionItem),
132
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
133
+ /* harmony export */ });
134
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
135
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
136
+
137
+ const AccordionItemContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
138
+ const AccordionItem = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function AccordionItem({ prefixId = '', index = 0, as: MaybeComponent, children, testId = 'fs-accordion-item', ...otherProps }, ref) {
139
+ const Component = MaybeComponent ?? 'div';
140
+ const context = {
141
+ index,
142
+ prefixId,
143
+ panel: `${prefixId && `${prefixId}-`}panel--${index}`,
144
+ button: `${prefixId && `${prefixId}-`}button--${index}`,
145
+ };
146
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement(AccordionItemContext.Provider, { value: context },
147
+ react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Component, { ref: ref, "data-fs-accordion-item": true, "data-testid": testId, ...otherProps }, children)));
148
+ });
149
+ function useAccordionItem() {
150
+ const context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(AccordionItemContext);
151
+ if (context === undefined) {
152
+ throw new Error('Do not use AccordionItem components outside the AccordionItem context.');
153
+ }
154
+ return context;
155
+ }
156
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AccordionItem);
157
+ //# sourceMappingURL=AccordionItem.js.map
158
+
159
+ /***/ }),
160
+
161
+ /***/ 331:
162
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
163
+
164
+ "use strict";
165
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
166
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
167
+ /* harmony export */ });
168
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
169
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
170
+ /* harmony import */ var _Accordion__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9739);
171
+ /* harmony import */ var _AccordionItem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5705);
172
+
173
+
174
+
175
+ const AccordionPanel = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function AccordionPanel({ testId = 'fs-accordion-panel', children, ...otherProps }, ref) {
176
+ const { indices } = (0,_Accordion__WEBPACK_IMPORTED_MODULE_1__/* .useAccordion */ .A)();
177
+ const { index, button, panel } = (0,_AccordionItem__WEBPACK_IMPORTED_MODULE_2__/* .useAccordionItem */ .D)();
178
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", { ref: ref, id: panel, "data-fs-accordion-panel": true, "aria-labelledby": button, role: "region", hidden: !indices.has(index), "data-testid": testId, ...otherProps }, children));
179
+ });
180
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AccordionPanel);
181
+ //# sourceMappingURL=AccordionPanel.js.map
182
+
183
+ /***/ }),
184
+
185
+ /***/ 7703:
186
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
187
+
188
+ "use strict";
189
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
190
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
191
+ /* harmony export */ });
192
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
193
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
194
+
195
+ function LinkButton({ icon, inverse, children, disabled, iconPosition, size = 'regular', variant = 'primary', testId = 'fs-link-button', ...otherProps }) {
196
+ const linkRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
197
+ function onFocus(e) {
198
+ e.preventDefault();
199
+ if (disabled) {
200
+ linkRef.current?.blur();
201
+ }
202
+ }
203
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", { ref: linkRef, "data-fs-button": true, "data-fs-link-button": true, "data-fs-button-size": size, "data-fs-button-variant": variant, "data-fs-button-inverse": inverse, "data-fs-button-disabled": disabled, onFocus: onFocus, "data-testid": testId, ...otherProps },
204
+ react__WEBPACK_IMPORTED_MODULE_0___default().isValidElement(icon) && iconPosition === 'left' && icon,
205
+ children,
206
+ react__WEBPACK_IMPORTED_MODULE_0___default().isValidElement(icon) && iconPosition === 'right' && icon));
207
+ }
208
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LinkButton);
209
+ //# sourceMappingURL=LinkButton.js.map
210
+
211
+ /***/ }),
212
+
213
+ /***/ 447:
214
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
215
+
216
+ "use strict";
217
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
218
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
219
+ /* harmony export */ });
220
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
221
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
222
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(875);
223
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2765);
224
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5045);
225
+
226
+
227
+ const SearchInputField = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function SearchInputField({ onSubmit, buttonIcon, 'aria-label': ariaLabel = 'search', testId = 'fs-search-input', buttonProps, ...otherProps }, ref) {
228
+ const inputRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
229
+ const formRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
230
+ const handleSubmit = (event) => {
231
+ event.preventDefault();
232
+ if (inputRef.current?.value !== '') {
233
+ onSubmit(inputRef.current.value);
234
+ }
235
+ };
236
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useImperativeHandle)(ref, () => ({
237
+ inputRef: inputRef.current,
238
+ formRef: formRef.current,
239
+ }));
240
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("form", { ref: formRef, "data-fs-search-input-field": true, "data-testid": testId, onSubmit: handleSubmit, role: "search" },
241
+ 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 }),
242
+ react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, { "data-fs-icon-button": "null", type: "submit", "aria-label": "Submit Search", icon: buttonIcon ?? react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, { name: "MagnifyingGlass" }), ...buttonProps })));
243
+ });
244
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchInputField);
245
+ //# sourceMappingURL=SearchInputField.js.map
246
+
247
+ /***/ }),
248
+
249
+ /***/ 8907:
250
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
251
+
252
+ "use strict";
253
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
254
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__),
255
+ /* harmony export */ "c": () => (/* binding */ SearchContext)
256
+ /* harmony export */ });
257
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
258
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
259
+
260
+
261
+ const SearchContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);
262
+ function SearchProvider({ onSearchSelection, children, term, terms, products, isLoading, }) {
263
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement(SearchContext.Provider, { value: { onSearchSelection, term, terms, products, isLoading } }, children));
264
+ }
265
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchProvider);
266
+ //# sourceMappingURL=SearchProvider.js.map
267
+
268
+ /***/ }),
269
+
270
+ /***/ 1852:
271
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
272
+
273
+ "use strict";
274
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
275
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
276
+ /* harmony export */ });
277
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
278
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
279
+
280
+ const Navbar = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Navbar({ children, scrollDirection, testId = 'fs-navbar', ...otherProps }, ref) {
281
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", { "data-fs-navbar": true, ref: ref, "data-testid": testId, "data-fs-navbar-scroll": scrollDirection, ...otherProps }, children));
282
+ });
283
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Navbar);
284
+ //# sourceMappingURL=Navbar.js.map
285
+
286
+ /***/ }),
287
+
288
+ /***/ 3563:
289
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
290
+
291
+ "use strict";
292
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
293
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
294
+ /* harmony export */ });
295
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
296
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
297
+
298
+ const NavbarButtons = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function NavbarButtons({ children, searchExpanded, testId = 'fs-navbar-buttons', ...otherProps }, ref) {
299
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", { "data-fs-navbar-buttons": true, ref: ref, "data-testid": testId, "data-fs-navbar-search-expanded": searchExpanded, ...otherProps }, children));
300
+ });
301
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NavbarButtons);
302
+ //# sourceMappingURL=NavbarButtons.js.map
303
+
304
+ /***/ }),
305
+
306
+ /***/ 4360:
307
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
308
+
309
+ "use strict";
310
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
311
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
312
+ /* harmony export */ });
313
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
314
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
315
+
316
+ const NavbarHeader = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function NavbarHeader({ children, testId = 'fs-navbar-header', ...otherProps }, ref) {
317
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", { "data-fs-navbar-header": true, ref: ref, "data-testid": testId, ...otherProps }, children));
318
+ });
319
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NavbarHeader);
320
+ //# sourceMappingURL=NavbarHeader.js.map
321
+
322
+ /***/ }),
323
+
324
+ /***/ 8204:
325
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
326
+
327
+ "use strict";
328
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
329
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
330
+ /* harmony export */ });
331
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
332
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
333
+
334
+ const NavbarRow = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function NavbarRow({ children, testId = 'fs-navbar-row', ...otherProps }, ref) {
335
+ return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", { "data-fs-navbar-row": true, ref: ref, "data-testid": testId, ...otherProps }, children));
336
+ });
337
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NavbarRow);
338
+ //# sourceMappingURL=NavbarRow.js.map
339
+
340
+ /***/ }),
341
+
342
+ /***/ 6399:
343
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
344
+
345
+ "use strict";
346
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
347
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
348
+ /* harmony export */ });
349
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
350
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
351
+ /* harmony import */ var _molecules_SearchProvider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8907);
352
+
353
+
354
+ 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) {
355
+ 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 },
356
+ 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)));
357
+ });
358
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchInput);
359
+ //# sourceMappingURL=SearchInput.js.map
360
+
361
+ /***/ }),
362
+
363
+ /***/ 1419:
364
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
365
+
366
+ "use strict";
367
+
368
+ // EXPORTS
369
+ __webpack_require__.d(__webpack_exports__, {
370
+ "Z": () => (/* reexport */ CartToggle_CartToggle)
371
+ });
372
+
373
+ // EXTERNAL MODULE: ../components/dist/molecules/IconButton/IconButton.js
374
+ var IconButton = __webpack_require__(2765);
375
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
376
+ var Icon = __webpack_require__(5045);
377
+ // EXTERNAL MODULE: ../components/dist/atoms/Badge/Badge.js
378
+ var Badge = __webpack_require__(44);
379
+ // EXTERNAL MODULE: external "react"
380
+ var external_react_ = __webpack_require__(6689);
381
+ // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
382
+ var UIProvider = __webpack_require__(395);
383
+ // EXTERNAL MODULE: ./src/sdk/cart/index.ts + 1 modules
384
+ var cart = __webpack_require__(6073);
385
+ ;// CONCATENATED MODULE: ./src/sdk/cart/useCartToggleButton.ts
386
+
387
+
388
+
389
+ const useCartToggleButton = () => {
390
+ const {
391
+ totalItems
392
+ } = (0,cart/* useCart */.jD)();
393
+ const {
394
+ cart: displayCart,
395
+ openCart,
396
+ closeCart
397
+ } = (0,UIProvider/* useUI */.l)();
398
+ const onClick = (0,external_react_.useCallback)(() => {
399
+ if (displayCart) {
400
+ closeCart();
401
+ } else {
402
+ openCart();
403
+ }
404
+ }, [closeCart, displayCart, openCart]);
405
+ return {
406
+ onClick,
407
+ 'data-testid': 'cart-toggle',
408
+ 'data-items': totalItems
409
+ };
410
+ };
411
+ // EXTERNAL MODULE: external "react/jsx-runtime"
412
+ var jsx_runtime_ = __webpack_require__(997);
413
+ ;// CONCATENATED MODULE: ./src/components/cart/CartToggle/CartToggle.tsx
414
+ 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; }
415
+
416
+ 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; }
417
+
418
+ 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; }
419
+
420
+
421
+
422
+
423
+
424
+ function CartToggle() {
425
+ const btnProps = useCartToggleButton();
426
+ const totalItems = btnProps['data-items'];
427
+ return /*#__PURE__*/jsx_runtime_.jsx(IconButton/* default */.Z, _objectSpread(_objectSpread({
428
+ "data-fs-cart-toggle": true,
429
+ "aria-label": `Cart with ${totalItems} items`,
430
+ icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
431
+ name: "ShoppingCart",
432
+ width: 32,
433
+ height: 32
434
+ })
435
+ }, btnProps), {}, {
436
+ children: /*#__PURE__*/jsx_runtime_.jsx(Badge/* default */.Z, {
437
+ counter: true,
438
+ children: totalItems
439
+ })
440
+ }));
441
+ }
442
+
443
+ /* harmony default export */ const CartToggle_CartToggle = (CartToggle);
444
+ ;// CONCATENATED MODULE: ./src/components/cart/CartToggle/index.ts
445
+
446
+
447
+ /***/ }),
448
+
449
+ /***/ 4074:
450
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
451
+
452
+ "use strict";
453
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
454
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
455
+ /* harmony export */ "Tc": () => (/* binding */ getGlobalSectionsData),
456
+ /* harmony export */ "ZP": () => (__WEBPACK_DEFAULT_EXPORT__)
457
+ /* harmony export */ });
458
+ /* unused harmony export GLOBAL_SECTIONS_CONTENT_TYPE */
459
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
460
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
461
+ /* harmony import */ var src_customizations_components__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(859);
462
+ /* harmony import */ var src_server_cms__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5764);
463
+ /* harmony import */ var src_components_common_Footer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9631);
464
+ /* harmony import */ var src_components_common_RegionBar__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(4126);
465
+ /* harmony import */ var src_components_common_Toast__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(7568);
466
+ /* harmony import */ var src_components_navigation_Navbar__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(3583);
467
+ /* harmony import */ var src_components_sections_Alert_Alert__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(9759);
468
+ /* harmony import */ var _RenderSections__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(2224);
469
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(997);
470
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__);
471
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_components_navigation_Navbar__WEBPACK_IMPORTED_MODULE_6__, _RenderSections__WEBPACK_IMPORTED_MODULE_8__]);
472
+ ([src_components_navigation_Navbar__WEBPACK_IMPORTED_MODULE_6__, _RenderSections__WEBPACK_IMPORTED_MODULE_8__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
473
+ 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; }
474
+
475
+ 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; }
476
+
477
+ 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; }
478
+
479
+
480
+
481
+
482
+
483
+
484
+
485
+
486
+
487
+ // TODO: When the CMS is finished, switch to using 'globalSections'.
488
+
489
+
490
+
491
+
492
+ const GLOBAL_SECTIONS_CONTENT_TYPE = 'globalAlert';
493
+
494
+ /* A list of components that can be used in the CMS. */
495
+ const COMPONENTS = _objectSpread({
496
+ Alert: src_components_sections_Alert_Alert__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z
497
+ }, src_customizations_components__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z);
498
+
499
+ const useDividedSections = sections => {
500
+ return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => {
501
+ const indexChildren = sections.findIndex(({
502
+ name
503
+ }) => name === 'Children');
504
+ const hasChildren = indexChildren > -1;
505
+ return _objectSpread({
506
+ hasChildren,
507
+ firstSections: hasChildren ? sections.slice(0, indexChildren) : sections
508
+ }, hasChildren && {
509
+ lastSections: sections.slice(indexChildren + 1)
510
+ });
511
+ }, [sections]);
512
+ };
513
+
514
+ function GlobalSections({
515
+ children,
516
+ sections
517
+ }) {
518
+ const {
519
+ hasChildren,
520
+ firstSections,
521
+ lastSections
522
+ } = useDividedSections(sections);
523
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.Fragment, {
524
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(_RenderSections__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
525
+ sections: firstSections,
526
+ components: COMPONENTS
527
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_navigation_Navbar__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {}), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_common_Toast__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsxs)("main", {
528
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_common_RegionBar__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
529
+ className: "display-mobile"
530
+ }), children]
531
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_common_Footer__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP, {}), hasChildren && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(_RenderSections__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
532
+ sections: lastSections,
533
+ components: COMPONENTS
534
+ })]
535
+ });
536
+ }
537
+
538
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (GlobalSections);
539
+ const getGlobalSectionsData = async previewData => {
540
+ const {
541
+ sections
542
+ } = await (0,src_server_cms__WEBPACK_IMPORTED_MODULE_2__/* .getPage */ .f)(_objectSpread(_objectSpread({}, previewData?.contentType === GLOBAL_SECTIONS_CONTENT_TYPE ? previewData : {
543
+ filters: {
544
+ 'settings.seo.slug': '/'
545
+ }
546
+ }), {}, {
547
+ contentType: GLOBAL_SECTIONS_CONTENT_TYPE
548
+ }));
549
+ return {
550
+ sections
551
+ };
552
+ };
553
+ __webpack_async_result__();
554
+ } catch(e) { __webpack_async_result__(e); } });
555
+
556
+ /***/ }),
557
+
558
+ /***/ 2224:
559
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
560
+
561
+ "use strict";
562
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
563
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
564
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
565
+ /* harmony export */ });
566
+ /* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7564);
567
+ /* harmony import */ var _SectionBoundary__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7429);
568
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(997);
569
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__);
570
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([chalk__WEBPACK_IMPORTED_MODULE_0__]);
571
+ chalk__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
572
+ 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; }
573
+
574
+ 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; }
575
+
576
+ 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; }
577
+
578
+
579
+
580
+
581
+
582
+
583
+ const RenderSections = ({
584
+ sections = [],
585
+ context,
586
+ components
587
+ }) => {
588
+ return /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.Fragment, {
589
+ children: sections.map(({
590
+ name,
591
+ data
592
+ }, index) => {
593
+ const Component = components[name];
594
+
595
+ if (!Component) {
596
+ // TODO: add a documentation link to help to do this
597
+ console.info(`${chalk__WEBPACK_IMPORTED_MODULE_0__["default"].yellow('warn')} - ${name} not found. Add a new component for this section or remove it from the CMS`);
598
+ return null;
599
+ }
600
+
601
+ return /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx(_SectionBoundary__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, {
602
+ name: name,
603
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx(Component, _objectSpread(_objectSpread({}, data), {}, {
604
+ context: context
605
+ }))
606
+ }, `cms-section-${index}`);
607
+ })
608
+ });
609
+ };
610
+
611
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RenderSections);
612
+ __webpack_async_result__();
613
+ } catch(e) { __webpack_async_result__(e); } });
614
+
615
+ /***/ }),
616
+
617
+ /***/ 7429:
618
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
619
+
620
+ "use strict";
621
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
622
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
623
+ /* harmony export */ });
624
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
625
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
626
+ 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; }
627
+
628
+
629
+
630
+ class SectionBoundary extends react__WEBPACK_IMPORTED_MODULE_0__.Component {
631
+ constructor(...args) {
632
+ super(...args);
633
+
634
+ _defineProperty(this, "state", {
635
+ hasError: false,
636
+ error: null
637
+ });
638
+ }
639
+
640
+ static getDerivedStateFromError(error) {
641
+ return {
642
+ hasError: true,
643
+ error
644
+ };
645
+ }
646
+
647
+ componentDidCatch(error, errorInfo) {
648
+ console.error(`Error while rendering section ${this.props.name} with:\n${error.message} ${errorInfo.componentStack}`); // TODO: Add fetch in here so we can know which sections are failing on our dashboard
649
+ }
650
+
651
+ render() {
652
+ if (this.state.hasError && true) {
653
+ return null;
654
+ }
655
+
656
+ return this.props.children;
657
+ }
658
+
659
+ }
660
+
661
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SectionBoundary);
662
+
663
+ /***/ }),
664
+
665
+ /***/ 9631:
666
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
667
+
668
+ "use strict";
669
+
670
+ // EXPORTS
671
+ __webpack_require__.d(__webpack_exports__, {
672
+ "ZP": () => (/* reexport */ Footer_Footer)
673
+ });
674
+
675
+ // UNUSED EXPORTS: FooterFlags, FooterLinks
676
+
677
+ // EXTERNAL MODULE: ../components/dist/atoms/List/List.js
678
+ var List = __webpack_require__(1329);
679
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
680
+ var Icon = __webpack_require__(5045);
681
+ // EXTERNAL MODULE: external "react"
682
+ var external_react_ = __webpack_require__(6689);
683
+ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
684
+ // EXTERNAL MODULE: ../components/dist/atoms/SROnly/SROnly.js
685
+ var SROnly = __webpack_require__(2691);
686
+ ;// CONCATENATED MODULE: ../components/dist/organisms/PaymentMethods/PaymentMethods.js
687
+
688
+
689
+ const PaymentMethods = (0,external_react_.forwardRef)(function PaymentMethods({ testId = 'fs-payment-methods', title, 'aria-label': ariaLabel = 'Payment Methods', flagList, ...otherProps }, ref) {
690
+ return (external_react_default().createElement("div", { ref: ref, "data-fs-payment-methods": true, "data-testid": testId, ...otherProps },
691
+ !!title && external_react_default().createElement("div", { "data-fs-payment-methods-title": true }, title),
692
+ 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}` },
693
+ item.image,
694
+ item.text && external_react_default().createElement(SROnly/* default */.Z, { text: item.text })))))));
695
+ });
696
+ /* harmony default export */ const PaymentMethods_PaymentMethods = (PaymentMethods);
697
+ //# sourceMappingURL=PaymentMethods.js.map
698
+ // EXTERNAL MODULE: ./src/components/ui/Link/index.ts + 1 modules
699
+ var Link = __webpack_require__(1093);
700
+ // EXTERNAL MODULE: ./src/components/ui/Logo/index.ts + 1 modules
701
+ var Logo = __webpack_require__(5811);
702
+ // EXTERNAL MODULE: ./src/sdk/tests/mark.tsx
703
+ var mark = __webpack_require__(2541);
704
+ // EXTERNAL MODULE: ./src/components/ui/Incentives/Incentives.tsx + 1 modules
705
+ var Incentives = __webpack_require__(3477);
706
+ ;// CONCATENATED MODULE: ./src/components/ui/Incentives/incentivesMock.ts
707
+ const incentivesMockFooter = [{
708
+ icon: 'ShieldCheck',
709
+ firstLineText: 'Trusted',
710
+ secondLineText: 'by Safecon'
711
+ }, {
712
+ icon: 'Medal',
713
+ firstLineText: 'Quality',
714
+ secondLineText: 'Products'
715
+ }, {
716
+ icon: 'CircleWavyCheck',
717
+ firstLineText: '3-year',
718
+ secondLineText: 'Guarantee'
719
+ }, {
720
+ icon: 'Storefront',
721
+ firstLineText: 'Pickup',
722
+ secondLineText: 'Options'
723
+ }, {
724
+ icon: 'Truck',
725
+ firstLineText: 'Free',
726
+ secondLineText: 'Shippping'
727
+ }];
728
+ // EXTERNAL MODULE: external "react/jsx-runtime"
729
+ var jsx_runtime_ = __webpack_require__(997);
730
+ ;// CONCATENATED MODULE: ./src/components/common/Footer/FooterFlags.tsx
731
+
732
+
733
+ const FooterFlags = [{
734
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
735
+ width: 32,
736
+ height: 22.5,
737
+ name: "Visa"
738
+ }),
739
+ text: 'Visa'
740
+ }, {
741
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
742
+ width: 32,
743
+ height: 22.5,
744
+ name: "Diners"
745
+ }),
746
+ text: 'Diners Club'
747
+ }, {
748
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
749
+ width: 32,
750
+ height: 22.5,
751
+ name: "Mastercard"
752
+ }),
753
+ text: 'Mastercard'
754
+ }, {
755
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
756
+ width: 32,
757
+ height: 22.5,
758
+ name: "EloCard"
759
+ }),
760
+ text: 'Elo Card'
761
+ }, {
762
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
763
+ width: 32,
764
+ height: 22.5,
765
+ name: "PayPal"
766
+ }),
767
+ text: 'PayPal'
768
+ }, {
769
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
770
+ width: 32,
771
+ height: 22.5,
772
+ name: "Stripe"
773
+ }),
774
+ text: 'Stripe'
775
+ }, {
776
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
777
+ width: 32,
778
+ height: 22.5,
779
+ name: "GooglePay"
780
+ }),
781
+ text: 'GooglePay'
782
+ }, {
783
+ image: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
784
+ width: 32,
785
+ height: 22.5,
786
+ name: "ApplePay"
787
+ }),
788
+ text: 'ApplePay'
789
+ }];
790
+ /* harmony default export */ const Footer_FooterFlags = (FooterFlags);
791
+ // EXTERNAL MODULE: ../components/dist/molecules/Accordion/Accordion.js
792
+ var Accordion = __webpack_require__(9739);
793
+ // EXTERNAL MODULE: ../components/dist/molecules/Accordion/AccordionItem.js
794
+ var AccordionItem = __webpack_require__(5705);
795
+ // EXTERNAL MODULE: ../components/dist/molecules/Accordion/AccordionButton.js
796
+ var AccordionButton = __webpack_require__(7743);
797
+ // EXTERNAL MODULE: ../components/dist/molecules/Accordion/AccordionPanel.js
798
+ var AccordionPanel = __webpack_require__(331);
799
+ ;// CONCATENATED MODULE: ./src/components/common/Footer/FooterLinks.tsx
800
+
801
+
802
+
803
+
804
+
805
+ const links = [{
806
+ title: 'Our company',
807
+ items: [{
808
+ href: '/',
809
+ name: 'About Us'
810
+ }, {
811
+ href: '/',
812
+ name: 'Our Blog'
813
+ }, {
814
+ href: '/',
815
+ name: 'Stores'
816
+ }, {
817
+ href: '/',
818
+ name: 'Work With Us'
819
+ }]
820
+ }, {
821
+ title: 'Orders & Purchases',
822
+ items: [{
823
+ href: '/',
824
+ name: 'Check Order Status'
825
+ }, {
826
+ href: '/',
827
+ name: 'Returns and Exchanges'
828
+ }, {
829
+ href: '/',
830
+ name: 'Product Recall'
831
+ }, {
832
+ href: '/',
833
+ name: 'Gift Cards'
834
+ }]
835
+ }, {
836
+ title: 'Support & Services',
837
+ items: [{
838
+ href: '/',
839
+ name: 'Support Center'
840
+ }, {
841
+ href: '/',
842
+ name: 'Schedule a Service'
843
+ }, {
844
+ href: '/',
845
+ name: 'Contact Us'
846
+ }]
847
+ }, {
848
+ title: 'Partnerships',
849
+ items: [{
850
+ href: '/',
851
+ name: 'Affiliate Program'
852
+ }, {
853
+ href: '/',
854
+ name: 'Advertise with US'
855
+ }, {
856
+ href: '/',
857
+ name: 'Market Place'
858
+ }]
859
+ }];
860
+
861
+ function LinksList({
862
+ items
863
+ }) {
864
+ return /*#__PURE__*/jsx_runtime_.jsx(List/* default */.Z, {
865
+ children: items.map(item => /*#__PURE__*/jsx_runtime_.jsx("li", {
866
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
867
+ variant: "display",
868
+ size: "small",
869
+ href: item.href,
870
+ children: item.name
871
+ })
872
+ }, item.name))
873
+ });
874
+ }
875
+
876
+ function FooterLinks() {
877
+ const {
878
+ 0: indicesExpanded,
879
+ 1: setIndicesExpanded
880
+ } = (0,external_react_.useState)(new Set([]));
881
+
882
+ const onChange = index => {
883
+ if (indicesExpanded.has(index)) {
884
+ indicesExpanded.delete(index);
885
+ setIndicesExpanded(new Set(indicesExpanded));
886
+ } else {
887
+ setIndicesExpanded(new Set(indicesExpanded.add(index)));
888
+ }
889
+ };
890
+
891
+ return /*#__PURE__*/(0,jsx_runtime_.jsxs)("section", {
892
+ "data-fs-footer": true,
893
+ "data-fs-footer-links": true,
894
+ children: [/*#__PURE__*/jsx_runtime_.jsx("div", {
895
+ className: "display-mobile",
896
+ children: /*#__PURE__*/jsx_runtime_.jsx(Accordion/* default */.Z, {
897
+ indices: indicesExpanded,
898
+ onChange: onChange,
899
+ children: links.map(section => /*#__PURE__*/(0,jsx_runtime_.jsxs)(AccordionItem/* default */.Z, {
900
+ children: [/*#__PURE__*/jsx_runtime_.jsx(AccordionButton/* default */.Z, {
901
+ children: section.title
902
+ }), /*#__PURE__*/jsx_runtime_.jsx(AccordionPanel/* default */.Z, {
903
+ children: /*#__PURE__*/jsx_runtime_.jsx(LinksList, {
904
+ items: section.items
905
+ })
906
+ })]
907
+ }, section.title))
908
+ })
909
+ }), /*#__PURE__*/jsx_runtime_.jsx("div", {
910
+ className: "hidden-mobile",
911
+ children: /*#__PURE__*/jsx_runtime_.jsx("nav", {
912
+ "data-fs-footer-links-columns": true,
913
+ children: links.map(section => /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
914
+ children: [/*#__PURE__*/jsx_runtime_.jsx("p", {
915
+ "data-fs-footer-title": true,
916
+ children: section.title
917
+ }), /*#__PURE__*/jsx_runtime_.jsx(LinksList, {
918
+ items: section.items
919
+ })]
920
+ }, section.title))
921
+ })
922
+ })]
923
+ });
924
+ }
925
+
926
+ /* harmony default export */ const Footer_FooterLinks = (FooterLinks);
927
+ // EXTERNAL MODULE: ./src/components/common/Footer/section.module.scss
928
+ var section_module = __webpack_require__(3026);
929
+ var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
930
+ ;// CONCATENATED MODULE: ./src/components/common/Footer/Footer.tsx
931
+
932
+
933
+
934
+
935
+
936
+
937
+
938
+
939
+
940
+
941
+
942
+ function Footer({
943
+ sectionIncentives = true,
944
+ sectionSocial = true,
945
+ sectionPaymentMethods = true
946
+ }) {
947
+ return /*#__PURE__*/jsx_runtime_.jsx("footer", {
948
+ className: `section ${(section_module_default()).section} section-footer`,
949
+ children: /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
950
+ "data-fs-footer": true,
951
+ "data-fs-footer-incentives": sectionIncentives,
952
+ "data-fs-footer-social": sectionSocial,
953
+ "data-fs-footer-payment-methods": sectionPaymentMethods,
954
+ className: "layout__content-full",
955
+ children: [sectionIncentives && /*#__PURE__*/jsx_runtime_.jsx(Incentives/* default */.Z, {
956
+ incentives: incentivesMockFooter
957
+ }), /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
958
+ "data-fs-footer-nav": true,
959
+ className: "layout__content",
960
+ children: [/*#__PURE__*/jsx_runtime_.jsx(Footer_FooterLinks, {}), sectionSocial && /*#__PURE__*/(0,jsx_runtime_.jsxs)("section", {
961
+ "data-fs-footer-social": true,
962
+ children: [/*#__PURE__*/jsx_runtime_.jsx("p", {
963
+ "data-fs-footer-title": true,
964
+ children: "Follow us"
965
+ }), /*#__PURE__*/(0,jsx_runtime_.jsxs)(List/* default */.Z, {
966
+ children: [/*#__PURE__*/jsx_runtime_.jsx("li", {
967
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
968
+ variant: "display",
969
+ size: "small",
970
+ href: "https://www.facebook.com/",
971
+ title: "Facebook",
972
+ target: "_blank",
973
+ rel: "noopener noreferrer",
974
+ children: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
975
+ name: "Facebook"
976
+ })
977
+ })
978
+ }), /*#__PURE__*/jsx_runtime_.jsx("li", {
979
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
980
+ variant: "display",
981
+ size: "small",
982
+ href: "https://www.instagram.com/",
983
+ title: "Instagram",
984
+ target: "_blank",
985
+ rel: "noopener noreferrer",
986
+ children: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
987
+ name: "Instagram"
988
+ })
989
+ })
990
+ }), /*#__PURE__*/jsx_runtime_.jsx("li", {
991
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
992
+ variant: "display",
993
+ size: "small",
994
+ href: "https://www.pinterest.com/",
995
+ title: "Pinterest",
996
+ target: "_blank",
997
+ rel: "noopener noreferrer",
998
+ children: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
999
+ name: "Pinterest"
1000
+ })
1001
+ })
1002
+ }), /*#__PURE__*/jsx_runtime_.jsx("li", {
1003
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
1004
+ variant: "display",
1005
+ size: "small",
1006
+ href: "https://twitter.com/",
1007
+ title: "Twitter",
1008
+ target: "_blank",
1009
+ rel: "noopener noreferrer",
1010
+ children: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
1011
+ name: "Twitter"
1012
+ })
1013
+ })
1014
+ })]
1015
+ })]
1016
+ })]
1017
+ }), /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
1018
+ "data-fs-footer-note": true,
1019
+ className: "layout__content",
1020
+ children: [/*#__PURE__*/jsx_runtime_.jsx(Logo/* default */.Z, {}), sectionPaymentMethods && /*#__PURE__*/jsx_runtime_.jsx(PaymentMethods_PaymentMethods, {
1021
+ title: /*#__PURE__*/jsx_runtime_.jsx("p", {
1022
+ children: "Payment Methods"
1023
+ }),
1024
+ flagList: Footer_FooterFlags
1025
+ }), /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
1026
+ "data-fs-footer-copyright": true,
1027
+ className: "text__legend",
1028
+ children: [/*#__PURE__*/jsx_runtime_.jsx("p", {
1029
+ children: "This website uses VTEX technology"
1030
+ }), /*#__PURE__*/jsx_runtime_.jsx("p", {
1031
+ 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."
1032
+ }), /*#__PURE__*/jsx_runtime_.jsx("address", {
1033
+ children: "Mount St, 000, New York / NY - 00000."
1034
+ })]
1035
+ })]
1036
+ })]
1037
+ })
1038
+ });
1039
+ }
1040
+ Footer.displayName = 'Footer';
1041
+ /* harmony default export */ const Footer_Footer = ((0,mark/* mark */.B)(Footer));
1042
+ ;// CONCATENATED MODULE: ./src/components/common/Footer/index.ts
1043
+
1044
+
1045
+
1046
+
1047
+ /***/ }),
1048
+
1049
+ /***/ 4126:
1050
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1051
+
1052
+ "use strict";
1053
+
1054
+ // EXPORTS
1055
+ __webpack_require__.d(__webpack_exports__, {
1056
+ "Z": () => (/* reexport */ common_RegionBar_RegionBar)
1057
+ });
1058
+
1059
+ // EXTERNAL MODULE: external "react"
1060
+ var external_react_ = __webpack_require__(6689);
1061
+ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
1062
+ // EXTERNAL MODULE: ../components/dist/atoms/Button/Button.js
1063
+ var Button = __webpack_require__(7578);
1064
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
1065
+ var Icon = __webpack_require__(5045);
1066
+ ;// CONCATENATED MODULE: ../components/dist/molecules/RegionBar/RegionBar.js
1067
+
1068
+
1069
+ const RegionBar = (0,external_react_.forwardRef)(function RegionBar({ postalCode, onButtonClick, ...otherProps }, ref) {
1070
+ return (external_react_default().createElement("div", { ref: ref, "data-fs-region-bar": true, ...otherProps },
1071
+ external_react_default().createElement(Button/* default */.Z, { onClick: onButtonClick },
1072
+ external_react_default().createElement(Icon/* default */.Z, { name: "MapPin" }),
1073
+ postalCode ? (external_react_default().createElement((external_react_default()).Fragment, null,
1074
+ external_react_default().createElement("span", { "data-fs-region-bar-postal-code": true }, postalCode),
1075
+ 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")),
1076
+ external_react_default().createElement(Icon/* default */.Z, { name: "CaretRight" }))));
1077
+ });
1078
+ /* harmony default export */ const RegionBar_RegionBar = (RegionBar);
1079
+ //# sourceMappingURL=RegionBar.js.map
1080
+ // EXTERNAL MODULE: ./src/sdk/session/index.ts + 1 modules
1081
+ var session = __webpack_require__(7295);
1082
+ // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
1083
+ var UIProvider = __webpack_require__(395);
1084
+ // EXTERNAL MODULE: external "react/jsx-runtime"
1085
+ var jsx_runtime_ = __webpack_require__(997);
1086
+ ;// CONCATENATED MODULE: ./src/components/region/RegionBar/RegionBar.tsx
1087
+ 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; }
1088
+
1089
+ 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; }
1090
+
1091
+ 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; }
1092
+
1093
+
1094
+
1095
+
1096
+
1097
+
1098
+ function RegionBar_RegionBar_RegionBar(_ref) {
1099
+ let otherProps = Object.assign({}, _ref);
1100
+ const {
1101
+ openModal
1102
+ } = (0,UIProvider/* useUI */.l)();
1103
+ const {
1104
+ postalCode
1105
+ } = (0,session/* useSession */.kP)();
1106
+ return /*#__PURE__*/jsx_runtime_.jsx(RegionBar_RegionBar, _objectSpread({
1107
+ onButtonClick: openModal,
1108
+ postalCode: postalCode
1109
+ }, otherProps));
1110
+ }
1111
+
1112
+ /* harmony default export */ const region_RegionBar_RegionBar = (RegionBar_RegionBar_RegionBar);
1113
+ // EXTERNAL MODULE: ./src/components/sections/Section/Section.tsx
1114
+ var Section = __webpack_require__(3271);
1115
+ // EXTERNAL MODULE: ./src/components/common/RegionBar/section.module.scss
1116
+ var section_module = __webpack_require__(4035);
1117
+ var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
1118
+ ;// CONCATENATED MODULE: ./src/components/common/RegionBar/RegionBar.tsx
1119
+
1120
+
1121
+
1122
+
1123
+
1124
+ function common_RegionBar_RegionBar_RegionBar({
1125
+ className = ''
1126
+ }) {
1127
+ return /*#__PURE__*/jsx_runtime_.jsx(Section/* default */.Z, {
1128
+ className: `${(section_module_default()).section} section-region-bar`,
1129
+ children: /*#__PURE__*/jsx_runtime_.jsx(region_RegionBar_RegionBar, {
1130
+ className: className
1131
+ })
1132
+ });
1133
+ }
1134
+
1135
+ /* harmony default export */ const common_RegionBar_RegionBar = (common_RegionBar_RegionBar_RegionBar);
1136
+ ;// CONCATENATED MODULE: ./src/components/common/RegionBar/index.ts
1137
+
1138
+
1139
+ /***/ }),
1140
+
1141
+ /***/ 7568:
1142
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1143
+
1144
+ "use strict";
1145
+
1146
+ // EXPORTS
1147
+ __webpack_require__.d(__webpack_exports__, {
1148
+ "Z": () => (/* reexport */ common_Toast_Toast)
1149
+ });
1150
+
1151
+ // EXTERNAL MODULE: external "react"
1152
+ var external_react_ = __webpack_require__(6689);
1153
+ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
1154
+ // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
1155
+ var UIProvider = __webpack_require__(395);
1156
+ ;// CONCATENATED MODULE: ../components/dist/molecules/Toast/Toast.js
1157
+
1158
+
1159
+ function Toast() {
1160
+ const { toasts, popToast } = (0,UIProvider/* useUI */.l)();
1161
+ const toast = toasts[toasts.length - 1];
1162
+ const timeoutRef = (0,external_react_.useRef)();
1163
+ const [visible, setVisible] = (0,external_react_.useState)(false);
1164
+ (0,external_react_.useEffect)(() => {
1165
+ if (!toast) {
1166
+ return undefined;
1167
+ }
1168
+ const timeout = setTimeout(() => setVisible(true), 10);
1169
+ return () => clearTimeout(timeout);
1170
+ }, [toast]);
1171
+ (0,external_react_.useEffect)(() => {
1172
+ timeoutRef.current = setTimeout(() => setVisible(false), 6e3);
1173
+ return () => timeoutRef.current && clearTimeout(timeoutRef.current);
1174
+ }, [toast]);
1175
+ if (toast === undefined) {
1176
+ return null;
1177
+ }
1178
+ return (external_react_default().createElement("div", { role: "status", "data-fs-toast": true, "data-fs-toast-visible": visible, onTransitionEnd: () => !visible && popToast() },
1179
+ toast.icon && (external_react_default().createElement("div", { "data-fs-toast-icon-container": true }, external_react_default().isValidElement(toast.icon) && toast.icon)),
1180
+ external_react_default().createElement("div", { "data-fs-toast-content": true },
1181
+ toast.title && external_react_default().createElement("p", { "data-fs-toast-title": true }, toast.title),
1182
+ external_react_default().createElement("p", { "data-fs-toast-message": true }, toast.message))));
1183
+ }
1184
+ /* harmony default export */ const Toast_Toast = (Toast);
1185
+ //# sourceMappingURL=Toast.js.map
1186
+ // EXTERNAL MODULE: ./src/sdk/cart/index.ts + 1 modules
1187
+ var cart = __webpack_require__(6073);
1188
+ // EXTERNAL MODULE: external "react/jsx-runtime"
1189
+ var jsx_runtime_ = __webpack_require__(997);
1190
+ ;// CONCATENATED MODULE: ./src/components/common/Toast/Toast.tsx
1191
+
1192
+
1193
+
1194
+
1195
+
1196
+
1197
+ function Toast_Toast_Toast() {
1198
+ const {
1199
+ toasts,
1200
+ pushToast
1201
+ } = (0,UIProvider/* useUI */.l)();
1202
+ const {
1203
+ messages
1204
+ } = (0,cart/* useCart */.jD)();
1205
+ /**
1206
+ * Send cart notifications to toast in case the cart
1207
+ * returns warnings
1208
+ */
1209
+
1210
+ (0,external_react_.useEffect)(() => {
1211
+ if (!messages) {
1212
+ return;
1213
+ }
1214
+
1215
+ messages.forEach(message => pushToast({
1216
+ message: message.text,
1217
+ status: message.status
1218
+ }));
1219
+ }, [messages, pushToast]);
1220
+ return /*#__PURE__*/jsx_runtime_.jsx(jsx_runtime_.Fragment, {
1221
+ children: toasts.length > 0 && /*#__PURE__*/jsx_runtime_.jsx(external_react_.Suspense, {
1222
+ fallback: null,
1223
+ children: /*#__PURE__*/jsx_runtime_.jsx(Toast_Toast, {})
1224
+ })
1225
+ });
1226
+ }
1227
+
1228
+ /* harmony default export */ const common_Toast_Toast = (Toast_Toast_Toast);
1229
+ ;// CONCATENATED MODULE: ./src/components/common/Toast/index.ts
1230
+
1231
+
1232
+ /***/ }),
1233
+
1234
+ /***/ 2024:
1235
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1236
+
1237
+ "use strict";
1238
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1239
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1240
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1241
+ /* harmony export */ });
1242
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
1243
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1244
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(4933);
1245
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(395);
1246
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(1852);
1247
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(4360);
1248
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(8204);
1249
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(2765);
1250
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(5045);
1251
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(3563);
1252
+ /* harmony import */ var src_components_cart_CartToggle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1419);
1253
+ /* harmony import */ var src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(475);
1254
+ /* harmony import */ var src_components_ui_Button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(7758);
1255
+ /* harmony import */ var src_components_ui_Link__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(1093);
1256
+ /* harmony import */ var src_components_ui_Logo__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(5811);
1257
+ /* harmony import */ var src_sdk_tests_mark__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(2541);
1258
+ /* harmony import */ var _NavbarLinks__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(6769);
1259
+ /* harmony import */ var _NavbarSlider__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(793);
1260
+ /* harmony import */ var _section_module_scss__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(6872);
1261
+ /* harmony import */ var _section_module_scss__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_section_module_scss__WEBPACK_IMPORTED_MODULE_12__);
1262
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(997);
1263
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__);
1264
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__]);
1265
+ src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1266
+
1267
+
1268
+
1269
+
1270
+
1271
+
1272
+
1273
+
1274
+
1275
+
1276
+
1277
+
1278
+
1279
+
1280
+
1281
+ function Navbar() {
1282
+ const scrollDirection = (0,_faststore_ui__WEBPACK_IMPORTED_MODULE_10__/* .useScrollDirection */ .C)();
1283
+ const {
1284
+ openNavbar,
1285
+ navbar: displayNavbar
1286
+ } = (0,_faststore_ui__WEBPACK_IMPORTED_MODULE_11__/* .useUI */ .l)();
1287
+ const searchMobileRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
1288
+ const {
1289
+ 0: searchExpanded,
1290
+ 1: setSearchExpanded
1291
+ } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
1292
+
1293
+ const handlerExpandSearch = () => {
1294
+ setSearchExpanded(true);
1295
+ searchMobileRef.current?.inputRef?.focus();
1296
+ };
1297
+
1298
+ return /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx("header", {
1299
+ className: `section ${(_section_module_scss__WEBPACK_IMPORTED_MODULE_12___default().section)} section-navbar`,
1300
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsxs)(_faststore_ui__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
1301
+ scrollDirection: scrollDirection,
1302
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z, {
1303
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsxs)(_faststore_ui__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z, {
1304
+ className: "layout__content",
1305
+ children: [!searchExpanded && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.Fragment, {
1306
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z, {
1307
+ "data-fs-navbar-button-menu": true,
1308
+ "aria-label": "Open Menu",
1309
+ icon: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .Z, {
1310
+ name: "List",
1311
+ width: 32,
1312
+ height: 32
1313
+ }),
1314
+ onClick: openNavbar
1315
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_ui_Link__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
1316
+ href: "/",
1317
+ "aria-label": "Go to Faststore home",
1318
+ title: "Go to Faststore home",
1319
+ "data-fs-navbar-logo": true,
1320
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_ui_Logo__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {})
1321
+ })]
1322
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsxs)(_faststore_ui__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .Z, {
1323
+ searchExpanded: searchExpanded,
1324
+ children: [searchExpanded && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z, {
1325
+ "data-fs-button-collapse": true,
1326
+ "aria-label": "Collapse search bar",
1327
+ icon: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .Z, {
1328
+ name: "CaretLeft",
1329
+ width: 32,
1330
+ height: 32
1331
+ }),
1332
+ onClick: () => {
1333
+ setSearchExpanded(false);
1334
+ searchMobileRef.current?.resetSearchInput();
1335
+ }
1336
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
1337
+ placeholder: "",
1338
+ ref: searchMobileRef,
1339
+ testId: "store-input-mobile",
1340
+ buttonTestId: "store-input-mobile-button",
1341
+ onSearchClick: handlerExpandSearch
1342
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(react__WEBPACK_IMPORTED_MODULE_0__.Suspense, {
1343
+ fallback: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_ui_Button__WEBPACK_IMPORTED_MODULE_3__/* .ButtonSignInFallback */ .A, {}),
1344
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_ui_Button__WEBPACK_IMPORTED_MODULE_3__/* .ButtonSignIn */ .p, {})
1345
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_cart_CartToggle__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, {})]
1346
+ })]
1347
+ })
1348
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(_NavbarLinks__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
1349
+ className: "hidden-mobile"
1350
+ }), displayNavbar && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(_NavbarSlider__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {})]
1351
+ })
1352
+ });
1353
+ }
1354
+
1355
+ Navbar.displayName = 'Navbar';
1356
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,src_sdk_tests_mark__WEBPACK_IMPORTED_MODULE_6__/* .mark */ .B)(Navbar));
1357
+ __webpack_async_result__();
1358
+ } catch(e) { __webpack_async_result__(e); } });
1359
+
1360
+ /***/ }),
1361
+
1362
+ /***/ 3583:
1363
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1364
+
1365
+ "use strict";
1366
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1367
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1368
+ /* harmony export */ "Z": () => (/* reexport safe */ _Navbar__WEBPACK_IMPORTED_MODULE_0__.Z)
1369
+ /* harmony export */ });
1370
+ /* harmony import */ var _Navbar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2024);
1371
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Navbar__WEBPACK_IMPORTED_MODULE_0__]);
1372
+ _Navbar__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1373
+
1374
+ __webpack_async_result__();
1375
+ } catch(e) { __webpack_async_result__(e); } });
1376
+
1377
+ /***/ }),
1378
+
1379
+ /***/ 6769:
1380
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1381
+
1382
+ "use strict";
1383
+
1384
+ // EXPORTS
1385
+ __webpack_require__.d(__webpack_exports__, {
1386
+ "Z": () => (/* reexport */ navigation_NavbarLinks_NavbarLinks)
1387
+ });
1388
+
1389
+ // EXTERNAL MODULE: external "react"
1390
+ var external_react_ = __webpack_require__(6689);
1391
+ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
1392
+ ;// CONCATENATED MODULE: ../components/dist/molecules/NavbarLinks/NavbarLinks.js
1393
+
1394
+ const NavbarLinks = (0,external_react_.forwardRef)(function NavbarLinks({ children, testId = 'fs-navbar-links', ...otherProps }, ref) {
1395
+ return (external_react_default().createElement("nav", { "data-fs-navbar-links": true, ref: ref, "data-testid": testId, ...otherProps }, children));
1396
+ });
1397
+ /* harmony default export */ const NavbarLinks_NavbarLinks = (NavbarLinks);
1398
+ //# sourceMappingURL=NavbarLinks.js.map
1399
+ // EXTERNAL MODULE: ../components/dist/atoms/List/List.js
1400
+ var List = __webpack_require__(1329);
1401
+ ;// CONCATENATED MODULE: ../components/dist/molecules/NavbarLinks/NavbarLinksList.js
1402
+
1403
+
1404
+ const NavbarLinksList = (0,external_react_.forwardRef)(function NavbarLinksList({ children, testId = 'fs-navbar-links-list', ...otherProps }, ref) {
1405
+ return (external_react_default().createElement(List/* default */.Z, { "data-fs-navbar-links-list": true, ref: ref, "data-testid": testId, ...otherProps }, children));
1406
+ });
1407
+ /* harmony default export */ const NavbarLinks_NavbarLinksList = (NavbarLinksList);
1408
+ //# sourceMappingURL=NavbarLinksList.js.map
1409
+ ;// CONCATENATED MODULE: ../components/dist/molecules/NavbarLinks/NavbarLinksListItem.js
1410
+
1411
+ const NavbarLinksListItem = (0,external_react_.forwardRef)(function NavbarLinksListItem({ children, testId = 'fs-navbar-links-list-item', ...otherProps }, ref) {
1412
+ return (external_react_default().createElement("li", { "data-fs-navbar-links-list-item": true, ref: ref, "data-testid": testId, ...otherProps }, children));
1413
+ });
1414
+ /* harmony default export */ const NavbarLinks_NavbarLinksListItem = (NavbarLinksListItem);
1415
+ //# sourceMappingURL=NavbarLinksListItem.js.map
1416
+ // EXTERNAL MODULE: ../components/dist/atoms/Button/Button.js
1417
+ var Button = __webpack_require__(7578);
1418
+ // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
1419
+ var UIProvider = __webpack_require__(395);
1420
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
1421
+ var Icon = __webpack_require__(5045);
1422
+ // EXTERNAL MODULE: ./src/sdk/session/index.ts + 1 modules
1423
+ var session = __webpack_require__(7295);
1424
+ // EXTERNAL MODULE: external "react/jsx-runtime"
1425
+ var jsx_runtime_ = __webpack_require__(997);
1426
+ ;// CONCATENATED MODULE: ./src/components/region/RegionButton/RegionButton.tsx
1427
+
1428
+
1429
+
1430
+
1431
+
1432
+ function RegionButton() {
1433
+ const {
1434
+ openModal
1435
+ } = (0,UIProvider/* useUI */.l)();
1436
+ const {
1437
+ postalCode
1438
+ } = (0,session/* useSession */.kP)();
1439
+ return /*#__PURE__*/jsx_runtime_.jsx(Button/* default */.Z, {
1440
+ variant: "tertiary",
1441
+ size: "small",
1442
+ icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
1443
+ name: "MapPin",
1444
+ width: 24,
1445
+ height: 24
1446
+ }),
1447
+ iconPosition: "left",
1448
+ onClick: openModal,
1449
+ children: /*#__PURE__*/jsx_runtime_.jsx("span", {
1450
+ children: postalCode ?? 'Set your location'
1451
+ })
1452
+ });
1453
+ }
1454
+
1455
+ /* harmony default export */ const RegionButton_RegionButton = (RegionButton);
1456
+ ;// CONCATENATED MODULE: ./src/components/region/RegionButton/index.ts
1457
+
1458
+ // EXTERNAL MODULE: ./src/components/ui/Link/index.ts + 1 modules
1459
+ var Link = __webpack_require__(1093);
1460
+ // EXTERNAL MODULE: ./src/sdk/tests/mark.tsx
1461
+ var mark = __webpack_require__(2541);
1462
+ ;// CONCATENATED MODULE: ./src/components/navigation/NavbarLinks/NavbarLinks.tsx
1463
+ const _excluded = ["onClickLink"];
1464
+
1465
+ 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; }
1466
+
1467
+ 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; }
1468
+
1469
+ 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; }
1470
+
1471
+ 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; }
1472
+
1473
+ 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; }
1474
+
1475
+
1476
+
1477
+
1478
+
1479
+
1480
+
1481
+ const collections = [{
1482
+ name: 'Office',
1483
+ href: '/office'
1484
+ }, {
1485
+ name: 'Home Appliances',
1486
+ href: '/kitchen---home-appliances'
1487
+ }, {
1488
+ name: 'Computer and Software',
1489
+ href: '/computer---software'
1490
+ }, {
1491
+ name: 'Technology',
1492
+ href: '/technology'
1493
+ }];
1494
+
1495
+ function NavbarLinks_NavbarLinks_NavbarLinks(_ref) {
1496
+ let {
1497
+ onClickLink
1498
+ } = _ref,
1499
+ otherProps = _objectWithoutProperties(_ref, _excluded);
1500
+
1501
+ return /*#__PURE__*/jsx_runtime_.jsx(NavbarLinks_NavbarLinks, _objectSpread(_objectSpread({}, otherProps), {}, {
1502
+ children: /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
1503
+ className: "layout__content",
1504
+ children: [/*#__PURE__*/jsx_runtime_.jsx(RegionButton_RegionButton, {}), /*#__PURE__*/jsx_runtime_.jsx(NavbarLinks_NavbarLinksList, {
1505
+ children: collections.map(({
1506
+ href,
1507
+ name
1508
+ }) => /*#__PURE__*/jsx_runtime_.jsx(NavbarLinks_NavbarLinksListItem, {
1509
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
1510
+ variant: "display",
1511
+ href: href,
1512
+ onClick: onClickLink,
1513
+ children: name
1514
+ })
1515
+ }, name))
1516
+ })]
1517
+ })
1518
+ }));
1519
+ }
1520
+
1521
+ /* harmony default export */ const navigation_NavbarLinks_NavbarLinks = ((0,mark/* mark */.B)(NavbarLinks_NavbarLinks_NavbarLinks));
1522
+ ;// CONCATENATED MODULE: ./src/components/navigation/NavbarLinks/index.ts
1523
+
1524
+
1525
+ /***/ }),
1526
+
1527
+ /***/ 793:
1528
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1529
+
1530
+ "use strict";
1531
+
1532
+ // EXPORTS
1533
+ __webpack_require__.d(__webpack_exports__, {
1534
+ "Z": () => (/* reexport */ navigation_NavbarSlider_NavbarSlider)
1535
+ });
1536
+
1537
+ // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
1538
+ var UIProvider = __webpack_require__(395);
1539
+ // EXTERNAL MODULE: ../components/dist/hooks/useFadeEffect.js
1540
+ var useFadeEffect = __webpack_require__(6074);
1541
+ // EXTERNAL MODULE: external "react"
1542
+ var external_react_ = __webpack_require__(6689);
1543
+ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
1544
+ // EXTERNAL MODULE: ../components/dist/organisms/SlideOver/SlideOver.js
1545
+ var SlideOver = __webpack_require__(1021);
1546
+ ;// CONCATENATED MODULE: ../components/dist/organisms/NavbarSlider/NavbarSlider.js
1547
+
1548
+
1549
+ function NavbarSlider({ children, size = 'full', isOpen = true, direction = 'leftSide', testId = 'fs-navbar-slider', ...otherProps }) {
1550
+ return (external_react_default().createElement(SlideOver/* default */.Z, { "data-fs-navbar-slider": true, size: "full", isOpen: isOpen, direction: "leftSide", "data-testid": testId, ...otherProps }, children));
1551
+ }
1552
+ /* harmony default export */ const NavbarSlider_NavbarSlider = (NavbarSlider);
1553
+ //# sourceMappingURL=NavbarSlider.js.map
1554
+ // EXTERNAL MODULE: ../components/dist/organisms/SlideOver/SlideOverHeader.js
1555
+ var SlideOverHeader = __webpack_require__(9648);
1556
+ ;// CONCATENATED MODULE: ../components/dist/organisms/NavbarSlider/NavbarSliderHeader.js
1557
+
1558
+
1559
+ function NavbarSliderHeader({ children, testId = 'fs-navbar-slider-header', ...otherProps }) {
1560
+ return (external_react_default().createElement(SlideOverHeader/* default */.Z, { "data-fs-navbar-slider-header": true, "data-testid": testId, ...otherProps }, children));
1561
+ }
1562
+ /* harmony default export */ const NavbarSlider_NavbarSliderHeader = (NavbarSliderHeader);
1563
+ //# sourceMappingURL=NavbarSliderHeader.js.map
1564
+ ;// CONCATENATED MODULE: ../components/dist/organisms/NavbarSlider/NavbarSliderContent.js
1565
+
1566
+ const NavbarSliderContent = (0,external_react_.forwardRef)(function NavbarSliderContent({ children, testId = 'fs-navbar-slider-content', ...otherProps }, ref) {
1567
+ return (external_react_default().createElement("div", { "data-fs-navbar-slider-content": true, ref: ref, "data-testid": testId, ...otherProps }, children));
1568
+ });
1569
+ /* harmony default export */ const NavbarSlider_NavbarSliderContent = (NavbarSliderContent);
1570
+ //# sourceMappingURL=NavbarSliderContent.js.map
1571
+ ;// CONCATENATED MODULE: ../components/dist/organisms/NavbarSlider/NavbarSliderFooter.js
1572
+
1573
+ const NavbarSliderFooter = (0,external_react_.forwardRef)(function NavbarSliderFooter({ children, testId = 'fs-navbar-slider-footer', ...otherProps }, ref) {
1574
+ return (external_react_default().createElement("footer", { "data-fs-navbar-slider-footer": true, ref: ref, "data-testid": testId, ...otherProps }, children));
1575
+ });
1576
+ /* harmony default export */ const NavbarSlider_NavbarSliderFooter = (NavbarSliderFooter);
1577
+ //# sourceMappingURL=NavbarSliderFooter.js.map
1578
+ // EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 4 modules
1579
+ var Button = __webpack_require__(7758);
1580
+ // EXTERNAL MODULE: ./src/components/ui/Link/index.ts + 1 modules
1581
+ var Link = __webpack_require__(1093);
1582
+ // EXTERNAL MODULE: ./src/components/ui/Logo/index.ts + 1 modules
1583
+ var Logo = __webpack_require__(5811);
1584
+ // EXTERNAL MODULE: ./src/sdk/tests/mark.tsx
1585
+ var mark = __webpack_require__(2541);
1586
+ // EXTERNAL MODULE: ./src/components/navigation/NavbarLinks/index.ts + 6 modules
1587
+ var NavbarLinks = __webpack_require__(6769);
1588
+ // EXTERNAL MODULE: ./src/components/navigation/NavbarSlider/section.module.scss
1589
+ var section_module = __webpack_require__(261);
1590
+ var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
1591
+ // EXTERNAL MODULE: external "react/jsx-runtime"
1592
+ var jsx_runtime_ = __webpack_require__(997);
1593
+ ;// CONCATENATED MODULE: ./src/components/navigation/NavbarSlider/NavbarSlider.tsx
1594
+
1595
+
1596
+
1597
+
1598
+
1599
+
1600
+
1601
+
1602
+
1603
+
1604
+
1605
+ function NavbarSlider_NavbarSlider_NavbarSlider() {
1606
+ const {
1607
+ closeNavbar
1608
+ } = (0,UIProvider/* useUI */.l)();
1609
+ const {
1610
+ fade,
1611
+ fadeOut
1612
+ } = (0,useFadeEffect/* useFadeEffect */.b)();
1613
+ return /*#__PURE__*/(0,jsx_runtime_.jsxs)(NavbarSlider_NavbarSlider, {
1614
+ fade: fade,
1615
+ onDismiss: fadeOut,
1616
+ overlayProps: {
1617
+ className: `section ${(section_module_default()).section} section-navbar-slider`
1618
+ },
1619
+ onTransitionEnd: () => fade === 'out' && closeNavbar(),
1620
+ children: [/*#__PURE__*/jsx_runtime_.jsx(NavbarSlider_NavbarSliderHeader, {
1621
+ onClose: fadeOut,
1622
+ children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
1623
+ href: "/",
1624
+ onClick: fadeOut,
1625
+ "aria-label": "Go to FastStore home",
1626
+ title: "Go to FastStore home",
1627
+ "data-fs-navbar-slider-logo": true,
1628
+ children: /*#__PURE__*/jsx_runtime_.jsx(Logo/* default */.Z, {})
1629
+ })
1630
+ }), /*#__PURE__*/jsx_runtime_.jsx(NavbarSlider_NavbarSliderContent, {
1631
+ children: /*#__PURE__*/jsx_runtime_.jsx(NavbarLinks/* default */.Z, {
1632
+ onClickLink: fadeOut
1633
+ })
1634
+ }), /*#__PURE__*/jsx_runtime_.jsx(NavbarSlider_NavbarSliderFooter, {
1635
+ children: /*#__PURE__*/jsx_runtime_.jsx(external_react_.Suspense, {
1636
+ fallback: /*#__PURE__*/jsx_runtime_.jsx(Button/* ButtonSignInFallback */.A, {}),
1637
+ children: /*#__PURE__*/jsx_runtime_.jsx(Button/* ButtonSignIn */.p, {})
1638
+ })
1639
+ })]
1640
+ });
1641
+ }
1642
+
1643
+ /* harmony default export */ const navigation_NavbarSlider_NavbarSlider = ((0,mark/* mark */.B)(NavbarSlider_NavbarSlider_NavbarSlider));
1644
+ ;// CONCATENATED MODULE: ./src/components/navigation/NavbarSlider/index.ts
1645
+
1646
+
1647
+ /***/ }),
1648
+
1649
+ /***/ 9471:
1650
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1651
+
1652
+ "use strict";
1653
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1654
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1655
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1656
+ /* harmony export */ });
1657
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(1072);
1658
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(6399);
1659
+ /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(447);
1660
+ /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1853);
1661
+ /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_router__WEBPACK_IMPORTED_MODULE_0__);
1662
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6689);
1663
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
1664
+ /* harmony import */ var src_sdk_search_formatSearchPath__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(5882);
1665
+ /* harmony import */ var src_sdk_search_useSearchHistory__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5098);
1666
+ /* harmony import */ var src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6344);
1667
+ /* harmony import */ var src_sdk_ui_useOnClickOutside__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3669);
1668
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(997);
1669
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__);
1670
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__]);
1671
+ src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1672
+ const _excluded = ["onSearchClick", "buttonTestId", "containerStyle"];
1673
+
1674
+ 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; }
1675
+
1676
+ 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; }
1677
+
1678
+ 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; }
1679
+
1680
+ 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; }
1681
+
1682
+ 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; }
1683
+
1684
+
1685
+
1686
+
1687
+
1688
+
1689
+
1690
+
1691
+
1692
+
1693
+
1694
+ const SearchDropdown = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.lazy)(() => Promise.all(/* import() */[__webpack_require__.e(608), __webpack_require__.e(154), __webpack_require__.e(247), __webpack_require__.e(854), __webpack_require__.e(312)]).then(__webpack_require__.bind(__webpack_require__, 4312)));
1695
+
1696
+ const sendAnalytics = async term => {
1697
+ (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_6__/* .sendAnalyticsEvent */ ._)({
1698
+ name: 'search',
1699
+ params: {
1700
+ search_term: term
1701
+ }
1702
+ });
1703
+ };
1704
+
1705
+ const SearchInput = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)(function SearchInput(_ref, ref) {
1706
+ let {
1707
+ onSearchClick,
1708
+ buttonTestId = 'fs-search-button',
1709
+ containerStyle
1710
+ } = _ref,
1711
+ otherProps = _objectWithoutProperties(_ref, _excluded);
1712
+
1713
+ const {
1714
+ 0: searchQuery,
1715
+ 1: setSearchQuery
1716
+ } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)('');
1717
+ const searchQueryDeferred = (0,react__WEBPACK_IMPORTED_MODULE_1__.useDeferredValue)(searchQuery);
1718
+ const {
1719
+ 0: searchDropdownVisible,
1720
+ 1: setSearchDropdownVisible
1721
+ } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);
1722
+ const searchRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);
1723
+ const {
1724
+ addToSearchHistory
1725
+ } = (0,src_sdk_search_useSearchHistory__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)();
1726
+ const router = (0,next_router__WEBPACK_IMPORTED_MODULE_0__.useRouter)();
1727
+ (0,react__WEBPACK_IMPORTED_MODULE_1__.useImperativeHandle)(ref, () => ({
1728
+ resetSearchInput: () => setSearchQuery('')
1729
+ }));
1730
+
1731
+ const onSearchSelection = (term, path) => {
1732
+ addToSearchHistory({
1733
+ term,
1734
+ path
1735
+ });
1736
+ sendAnalytics(term);
1737
+ setSearchDropdownVisible(false);
1738
+ setSearchQuery(term);
1739
+ };
1740
+
1741
+ (0,src_sdk_ui_useOnClickOutside__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(searchRef, () => setSearchDropdownVisible(false));
1742
+ const {
1743
+ terms,
1744
+ products,
1745
+ isLoading
1746
+ } = (0,src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)(searchQueryDeferred);
1747
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_faststore_ui__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
1748
+ ref: searchRef,
1749
+ visibleDropdown: searchDropdownVisible,
1750
+ onSearchSelection: onSearchSelection,
1751
+ term: searchQueryDeferred,
1752
+ terms: terms,
1753
+ products: products,
1754
+ isLoading: isLoading,
1755
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, _objectSpread({
1756
+ ref: ref,
1757
+ buttonProps: {
1758
+ onClick: onSearchClick,
1759
+ testId: buttonTestId
1760
+ },
1761
+ placeholder: "Search everything at the store",
1762
+ onChange: e => setSearchQuery(e.target.value),
1763
+ onSubmit: term => {
1764
+ const path = (0,src_sdk_search_formatSearchPath__WEBPACK_IMPORTED_MODULE_9__/* .formatSearchPath */ .u)(term);
1765
+ onSearchSelection(term, path);
1766
+ router.push(path);
1767
+ },
1768
+ onFocus: () => setSearchDropdownVisible(true),
1769
+ value: searchQuery
1770
+ }, otherProps)), searchDropdownVisible && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx(react__WEBPACK_IMPORTED_MODULE_1__.Suspense, {
1771
+ fallback: null,
1772
+ children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx(SearchDropdown, {})
1773
+ })]
1774
+ });
1775
+ });
1776
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchInput);
1777
+ __webpack_async_result__();
1778
+ } catch(e) { __webpack_async_result__(e); } });
1779
+
1780
+ /***/ }),
1781
+
1782
+ /***/ 475:
1783
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1784
+
1785
+ "use strict";
1786
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1787
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1788
+ /* harmony export */ "Z": () => (/* reexport safe */ _SearchInput__WEBPACK_IMPORTED_MODULE_0__.Z)
1789
+ /* harmony export */ });
1790
+ /* harmony import */ var _SearchInput__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9471);
1791
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_SearchInput__WEBPACK_IMPORTED_MODULE_0__]);
1792
+ _SearchInput__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1793
+
1794
+ __webpack_async_result__();
1795
+ } catch(e) { __webpack_async_result__(e); } });
1796
+
1797
+ /***/ }),
1798
+
1799
+ /***/ 9759:
1800
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1801
+
1802
+ "use strict";
1803
+
1804
+ // EXPORTS
1805
+ __webpack_require__.d(__webpack_exports__, {
1806
+ "Z": () => (/* binding */ sections_Alert_Alert)
1807
+ });
1808
+
1809
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
1810
+ var Icon = __webpack_require__(5045);
1811
+ // EXTERNAL MODULE: external "react"
1812
+ var external_react_ = __webpack_require__(6689);
1813
+ // EXTERNAL MODULE: ../components/dist/molecules/Alert/Alert.js
1814
+ var Alert = __webpack_require__(6970);
1815
+ // EXTERNAL MODULE: ./src/sdk/tests/mark.tsx
1816
+ var mark = __webpack_require__(2541);
1817
+ // EXTERNAL MODULE: ./src/components/sections/Section/Section.tsx
1818
+ var Section = __webpack_require__(3271);
1819
+ // EXTERNAL MODULE: ./src/components/common/Alert/section.module.scss
1820
+ var section_module = __webpack_require__(7651);
1821
+ var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
1822
+ // EXTERNAL MODULE: external "react/jsx-runtime"
1823
+ var jsx_runtime_ = __webpack_require__(997);
1824
+ ;// CONCATENATED MODULE: ./src/components/common/Alert/Alert.tsx
1825
+ const _excluded = ["content", "children"];
1826
+
1827
+ 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; }
1828
+
1829
+ 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; }
1830
+
1831
+ 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; }
1832
+
1833
+ 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; }
1834
+
1835
+ 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; }
1836
+
1837
+
1838
+
1839
+
1840
+
1841
+
1842
+
1843
+
1844
+ function Alert_Alert(_ref) {
1845
+ let {
1846
+ content,
1847
+ children
1848
+ } = _ref,
1849
+ otherProps = _objectWithoutProperties(_ref, _excluded);
1850
+
1851
+ const {
1852
+ 0: displayAlert,
1853
+ 1: setDisplayAlert
1854
+ } = (0,external_react_.useState)(true);
1855
+ const onAlertClose = (0,external_react_.useCallback)(() => setDisplayAlert(false), [setDisplayAlert]);
1856
+
1857
+ if (displayAlert === false) {
1858
+ return null;
1859
+ }
1860
+
1861
+ return /*#__PURE__*/jsx_runtime_.jsx(Section/* default */.Z, {
1862
+ className: `${(section_module_default()).section} section-alert`,
1863
+ children: /*#__PURE__*/jsx_runtime_.jsx(Alert/* default */.Z, _objectSpread(_objectSpread({
1864
+ onClose: onAlertClose
1865
+ }, otherProps), {}, {
1866
+ children: content ?? children
1867
+ }))
1868
+ });
1869
+ }
1870
+
1871
+ Alert_Alert.displayName = 'Alert';
1872
+ /* harmony default export */ const common_Alert_Alert = ((0,mark/* mark */.B)(Alert_Alert));
1873
+ ;// CONCATENATED MODULE: ./src/components/common/Alert/index.ts
1874
+
1875
+ ;// CONCATENATED MODULE: ./src/components/sections/Alert/Alert.tsx
1876
+
1877
+
1878
+
1879
+
1880
+ // TODO: Change actionPath and actionLabel with Link
1881
+ function Alert_Alert_Alert({
1882
+ icon,
1883
+ content,
1884
+ link,
1885
+ dismissible
1886
+ }) {
1887
+ return /*#__PURE__*/jsx_runtime_.jsx(common_Alert_Alert, {
1888
+ icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
1889
+ name: icon
1890
+ }),
1891
+ link: {
1892
+ children: link?.text,
1893
+ href: link?.to,
1894
+ target: '_self'
1895
+ },
1896
+ dismissible: dismissible,
1897
+ children: content
1898
+ });
1899
+ }
1900
+
1901
+ /* harmony default export */ const sections_Alert_Alert = (Alert_Alert_Alert);
1902
+
1903
+ /***/ }),
1904
+
1905
+ /***/ 3271:
1906
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1907
+
1908
+ "use strict";
1909
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1910
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1911
+ /* harmony export */ });
1912
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
1913
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1914
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(997);
1915
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__);
1916
+ const _excluded = ["className"];
1917
+
1918
+ 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; }
1919
+
1920
+ 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; }
1921
+
1922
+ 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; }
1923
+
1924
+ 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; }
1925
+
1926
+ 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; }
1927
+
1928
+
1929
+
1930
+ const Section = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Section(_ref, ref) {
1931
+ let {
1932
+ className = ''
1933
+ } = _ref,
1934
+ otherProps = _objectWithoutProperties(_ref, _excluded);
1935
+
1936
+ return /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx("section", _objectSpread({
1937
+ ref: ref,
1938
+ className: `section ${className}`
1939
+ }, otherProps));
1940
+ });
1941
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Section);
1942
+
1943
+ /***/ }),
1944
+
1945
+ /***/ 7758:
1946
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1947
+
1948
+ "use strict";
1949
+
1950
+ // EXPORTS
1951
+ __webpack_require__.d(__webpack_exports__, {
1952
+ "p": () => (/* reexport */ ButtonSignIn_ButtonSignIn),
1953
+ "A": () => (/* reexport */ ButtonSignInFallback_ButtonSignInFallback)
1954
+ });
1955
+
1956
+ // EXTERNAL MODULE: ../components/dist/molecules/LinkButton/LinkButton.js
1957
+ var LinkButton = __webpack_require__(7703);
1958
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
1959
+ var Icon = __webpack_require__(5045);
1960
+ // EXTERNAL MODULE: ./src/sdk/session/index.ts + 1 modules
1961
+ var session = __webpack_require__(7295);
1962
+ // EXTERNAL MODULE: ./src/sdk/cart/index.ts + 1 modules
1963
+ var cart = __webpack_require__(6073);
1964
+ // EXTERNAL MODULE: external "react/jsx-runtime"
1965
+ var jsx_runtime_ = __webpack_require__(997);
1966
+ ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/ButtonSignIn.tsx
1967
+
1968
+
1969
+
1970
+
1971
+
1972
+ const ButtonSignIn = () => {
1973
+ const {
1974
+ id
1975
+ } = (0,cart/* useCart */.jD)();
1976
+ const {
1977
+ person
1978
+ } = (0,session/* useSession */.kP)();
1979
+ return /*#__PURE__*/jsx_runtime_.jsx(LinkButton/* default */.Z, {
1980
+ "data-fs-button-signin-link": true,
1981
+ href: person?.id ? `/account?orderFormId=${id}` : `/login?orderFormId=${id}`,
1982
+ className: "text__title-mini",
1983
+ variant: "tertiary",
1984
+ icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
1985
+ name: "User",
1986
+ width: 18,
1987
+ height: 18,
1988
+ weight: "bold"
1989
+ }),
1990
+ iconPosition: "left",
1991
+ children: /*#__PURE__*/jsx_runtime_.jsx("span", {
1992
+ children: person?.id ? 'My Account' : 'Sign In'
1993
+ })
1994
+ });
1995
+ };
1996
+
1997
+ /* harmony default export */ const ButtonSignIn_ButtonSignIn = (ButtonSignIn);
1998
+ ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/index.ts
1999
+
2000
+ ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/ButtonSignInFallback/ButtonSignInFallback.tsx
2001
+
2002
+
2003
+
2004
+ function ButtonSignInFallback() {
2005
+ return /*#__PURE__*/jsx_runtime_.jsx(LinkButton/* default */.Z, {
2006
+ "data-fs-button-signin-link": true,
2007
+ href: "/login",
2008
+ className: "text__title-mini",
2009
+ variant: "tertiary",
2010
+ icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
2011
+ name: "User",
2012
+ width: 18,
2013
+ height: 18,
2014
+ weight: "bold"
2015
+ }),
2016
+ iconPosition: "left",
2017
+ children: /*#__PURE__*/jsx_runtime_.jsx("span", {
2018
+ children: 'Sign In'
2019
+ })
2020
+ });
2021
+ }
2022
+
2023
+ /* harmony default export */ const ButtonSignInFallback_ButtonSignInFallback = (ButtonSignInFallback);
2024
+ ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/ButtonSignInFallback/index.ts
2025
+
2026
+ ;// CONCATENATED MODULE: ./src/components/ui/Button/index.ts
2027
+
2028
+
2029
+
2030
+ /***/ }),
2031
+
2032
+ /***/ 3477:
2033
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2034
+
2035
+ "use strict";
2036
+
2037
+ // EXPORTS
2038
+ __webpack_require__.d(__webpack_exports__, {
2039
+ "Z": () => (/* binding */ Incentives_Incentives)
2040
+ });
2041
+
2042
+ // EXTERNAL MODULE: ../components/dist/atoms/List/List.js
2043
+ var List = __webpack_require__(1329);
2044
+ // EXTERNAL MODULE: external "react"
2045
+ var external_react_ = __webpack_require__(6689);
2046
+ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
2047
+ ;// CONCATENATED MODULE: ../ui/dist/components/atoms/Incentive/Incentive.js
2048
+
2049
+ const Incentive = (0,external_react_.forwardRef)(function Incentive({ testId = 'store-incentive', children, ...otherProps }, ref) {
2050
+ return (external_react_default().createElement("div", { ref: ref, "data-fs-incentive": true, "data-testid": testId, ...otherProps }, children));
2051
+ });
2052
+ /* harmony default export */ const Incentive_Incentive = (Incentive);
2053
+ //# sourceMappingURL=Incentive.js.map
2054
+ // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
2055
+ var Icon = __webpack_require__(5045);
2056
+ // EXTERNAL MODULE: external "react/jsx-runtime"
2057
+ var jsx_runtime_ = __webpack_require__(997);
2058
+ ;// CONCATENATED MODULE: ./src/components/ui/Incentives/Incentives.tsx
2059
+
2060
+
2061
+
2062
+
2063
+ function Incentives({
2064
+ incentives,
2065
+ variant = 'horizontal',
2066
+ colored = false
2067
+ }) {
2068
+ return /*#__PURE__*/jsx_runtime_.jsx("div", {
2069
+ "data-fs-incentives": true,
2070
+ "data-fs-incentives-colored": colored,
2071
+ "data-fs-incentives-variant": variant,
2072
+ children: /*#__PURE__*/jsx_runtime_.jsx(List/* default */.Z, {
2073
+ className: "layout__content",
2074
+ children: incentives.map((incentive, index) => /*#__PURE__*/jsx_runtime_.jsx("li", {
2075
+ children: /*#__PURE__*/(0,jsx_runtime_.jsxs)(Incentive_Incentive, {
2076
+ children: [/*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
2077
+ "data-fs-incentive-icon": true,
2078
+ name: incentive.icon,
2079
+ width: 32,
2080
+ height: 32
2081
+ }), /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
2082
+ "data-fs-incentive-content": true,
2083
+ children: [incentive.title && /*#__PURE__*/jsx_runtime_.jsx("p", {
2084
+ "data-fs-incentive-title": true,
2085
+ children: incentive.title
2086
+ }), /*#__PURE__*/jsx_runtime_.jsx("span", {
2087
+ "data-fs-incentive-description": true,
2088
+ children: incentive.firstLineText
2089
+ }), incentive.secondLineText && /*#__PURE__*/jsx_runtime_.jsx("span", {
2090
+ "data-fs-incentive-description": true,
2091
+ children: incentive.secondLineText
2092
+ })]
2093
+ })]
2094
+ })
2095
+ }, String(index)))
2096
+ })
2097
+ });
2098
+ }
2099
+
2100
+ /* harmony default export */ const Incentives_Incentives = (Incentives);
2101
+
2102
+ /***/ }),
2103
+
2104
+ /***/ 1093:
2105
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2106
+
2107
+ "use strict";
2108
+
2109
+ // EXPORTS
2110
+ __webpack_require__.d(__webpack_exports__, {
2111
+ "Z": () => (/* reexport */ ui_Link_Link)
2112
+ });
2113
+
2114
+ // EXTERNAL MODULE: external "react"
2115
+ var external_react_ = __webpack_require__(6689);
2116
+ // EXTERNAL MODULE: ./node_modules/next/link.js
2117
+ var next_link = __webpack_require__(1664);
2118
+ var link_default = /*#__PURE__*/__webpack_require__.n(next_link);
2119
+ // EXTERNAL MODULE: ../components/dist/atoms/Link/Link.js
2120
+ var Link_Link = __webpack_require__(7865);
2121
+ // EXTERNAL MODULE: external "react/jsx-runtime"
2122
+ var jsx_runtime_ = __webpack_require__(997);
2123
+ ;// CONCATENATED MODULE: ./src/components/ui/Link/Link.tsx
2124
+ const _excluded = ["href", "inverse", "children", "variant"];
2125
+
2126
+ 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; }
2127
+
2128
+ 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; }
2129
+
2130
+ 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; }
2131
+
2132
+ 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; }
2133
+
2134
+ 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; }
2135
+
2136
+
2137
+
2138
+
2139
+
2140
+
2141
+ const Link = /*#__PURE__*/(0,external_react_.forwardRef)(function Link(_ref, ref) {
2142
+ let {
2143
+ href,
2144
+ inverse,
2145
+ children,
2146
+ variant = 'default'
2147
+ } = _ref,
2148
+ otherProps = _objectWithoutProperties(_ref, _excluded);
2149
+
2150
+ const isInternalLink = (0,external_react_.useMemo)(() => href[0] === '/' && href[1] !== '/', [href]);
2151
+
2152
+ if (isInternalLink) {
2153
+ return /*#__PURE__*/jsx_runtime_.jsx(Link_Link/* default */.Z, _objectSpread(_objectSpread({
2154
+ as: (link_default()),
2155
+ ref: ref,
2156
+ variant: variant,
2157
+ inverse: inverse,
2158
+ passHref: true,
2159
+ href: href,
2160
+ legacyBehavior: false
2161
+ }, otherProps), {}, {
2162
+ children: /*#__PURE__*/jsx_runtime_.jsx(jsx_runtime_.Fragment, {
2163
+ children: children
2164
+ })
2165
+ }));
2166
+ }
2167
+
2168
+ return /*#__PURE__*/jsx_runtime_.jsx(Link_Link/* default */.Z, _objectSpread(_objectSpread({
2169
+ ref: ref,
2170
+ href: href,
2171
+ variant: variant,
2172
+ inverse: inverse
2173
+ }, otherProps), {}, {
2174
+ children: children
2175
+ }));
2176
+ });
2177
+ /* harmony default export */ const ui_Link_Link = (Link);
2178
+ ;// CONCATENATED MODULE: ./src/components/ui/Link/index.ts
2179
+
2180
+
2181
+ /***/ }),
2182
+
2183
+ /***/ 5811:
2184
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2185
+
2186
+ "use strict";
2187
+
2188
+ // EXPORTS
2189
+ __webpack_require__.d(__webpack_exports__, {
2190
+ "Z": () => (/* reexport */ Logo_Logo)
2191
+ });
2192
+
2193
+ // EXTERNAL MODULE: external "react/jsx-runtime"
2194
+ var jsx_runtime_ = __webpack_require__(997);
2195
+ ;// CONCATENATED MODULE: ./src/components/ui/Logo/Logo.tsx
2196
+
2197
+
2198
+ function Logo() {
2199
+ return /*#__PURE__*/jsx_runtime_.jsx("span", {
2200
+ "data-fs-logo": true,
2201
+ role: "img",
2202
+ "aria-label": "BaseStore logo"
2203
+ });
2204
+ }
2205
+
2206
+ /* harmony default export */ const Logo_Logo = (Logo);
2207
+ ;// CONCATENATED MODULE: ./src/components/ui/Logo/index.ts
2208
+
2209
+
2210
+ /***/ }),
2211
+
2212
+ /***/ 859:
2213
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2214
+
2215
+ "use strict";
2216
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2217
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2218
+ /* harmony export */ });
2219
+ // eslint-disable-next-line import/no-anonymous-default-export
2220
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({});
2221
+
2222
+ /***/ }),
2223
+
2224
+ /***/ 7732:
2225
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2226
+
2227
+ "use strict";
2228
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2229
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2230
+ /* harmony export */ "WN": () => (/* binding */ DEFAULT_OPTIONS),
2231
+ /* harmony export */ "aM": () => (/* binding */ useQuery),
2232
+ /* harmony export */ "km": () => (/* binding */ getKey)
2233
+ /* harmony export */ });
2234
+ /* harmony import */ var swr__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5941);
2235
+ /* harmony import */ var _request__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(180);
2236
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([swr__WEBPACK_IMPORTED_MODULE_0__]);
2237
+ swr__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2238
+ 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; }
2239
+
2240
+ 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; }
2241
+
2242
+ 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; }
2243
+
2244
+
2245
+
2246
+ const getKey = (operationName, variables) => `${operationName}::${JSON.stringify(variables)}`;
2247
+ const DEFAULT_OPTIONS = {
2248
+ errorRetryCount: 3,
2249
+ refreshWhenHidden: false,
2250
+ refreshWhenOffline: false,
2251
+ revalidateOnFocus: false,
2252
+ revalidateOnReconnect: false,
2253
+ shouldRetryOnError: true
2254
+ };
2255
+ const useQuery = (operationName, variables, options) => (0,swr__WEBPACK_IMPORTED_MODULE_0__["default"])(getKey(operationName, variables), _objectSpread(_objectSpread({
2256
+ fetcher: () => {
2257
+ return new Promise(resolve => {
2258
+ setTimeout(async () => {
2259
+ resolve(await (0,_request__WEBPACK_IMPORTED_MODULE_1__/* .request */ .W)(operationName, variables, options));
2260
+ });
2261
+ });
2262
+ }
2263
+ }, DEFAULT_OPTIONS), options));
2264
+ __webpack_async_result__();
2265
+ } catch(e) { __webpack_async_result__(e); } });
2266
+
2267
+ /***/ }),
2268
+
2269
+ /***/ 5882:
2270
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2271
+
2272
+ "use strict";
2273
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2274
+ /* harmony export */ "u": () => (/* binding */ formatSearchPath)
2275
+ /* harmony export */ });
2276
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2339);
2277
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2524);
2278
+
2279
+ const formatSearchPath = term => {
2280
+ const {
2281
+ pathname,
2282
+ search
2283
+ } = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)((0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_1__/* .initialize */ .j)({
2284
+ term,
2285
+ base: '/s'
2286
+ }));
2287
+ return `${pathname}${search}`;
2288
+ };
2289
+
2290
+ /***/ }),
2291
+
2292
+ /***/ 5098:
2293
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2294
+
2295
+ "use strict";
2296
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2297
+ /* harmony export */ "Z": () => (/* binding */ useSearchHistory)
2298
+ /* harmony export */ });
2299
+ /* unused harmony export searchHistoryStore */
2300
+ /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8283);
2301
+ /* harmony import */ var _useStore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3818);
2302
+
2303
+
2304
+ const searchHistoryStore = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_1__/* .createStore */ .M)([], `fs::searchHistory`);
2305
+ const MAX_HISTORY_SIZE = 4;
2306
+ function useSearchHistory(maxHistorySize = MAX_HISTORY_SIZE) {
2307
+ const searchHistory = (0,_useStore__WEBPACK_IMPORTED_MODULE_0__/* .useStore */ .o)(searchHistoryStore);
2308
+
2309
+ function addToSearchHistory(newHistory) {
2310
+ const set = new Set();
2311
+ const newHistoryArray = [newHistory, ...searchHistory].slice(0, maxHistorySize).filter(item => !set.has(item.term) && set.add(item.term), set);
2312
+ searchHistoryStore.set(newHistoryArray);
2313
+ }
2314
+
2315
+ function clearSearchHistory() {
2316
+ searchHistoryStore.set([]);
2317
+ }
2318
+
2319
+ return {
2320
+ searchHistory,
2321
+ addToSearchHistory,
2322
+ clearSearchHistory
2323
+ };
2324
+ }
2325
+
2326
+ /***/ }),
2327
+
2328
+ /***/ 6344:
2329
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2330
+
2331
+ "use strict";
2332
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2333
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2334
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2335
+ /* harmony export */ });
2336
+ /* harmony import */ var src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7732);
2337
+ /* harmony import */ var _session__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7295);
2338
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__]);
2339
+ src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2340
+
2341
+
2342
+ const MAX_SUGGESTIONS = 5;
2343
+ const query = "SearchSuggestionsQuery";
2344
+
2345
+ function useSuggestions(term, limit = MAX_SUGGESTIONS) {
2346
+ const {
2347
+ channel,
2348
+ locale
2349
+ } = (0,_session__WEBPACK_IMPORTED_MODULE_1__/* .useSession */ .kP)();
2350
+ const {
2351
+ data,
2352
+ error
2353
+ } = (0,src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__/* .useQuery */ .aM)(query, {
2354
+ term,
2355
+ selectedFacets: [{
2356
+ key: 'channel',
2357
+ value: channel ?? ''
2358
+ }, {
2359
+ key: 'locale',
2360
+ value: locale
2361
+ }]
2362
+ });
2363
+ return {
2364
+ terms: (data?.search.suggestions.terms ?? []).slice(0, limit),
2365
+ products: (data?.search.suggestions.products ?? []).slice(0, limit),
2366
+ isLoading: !error && !data
2367
+ };
2368
+ }
2369
+
2370
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useSuggestions);
2371
+ __webpack_async_result__();
2372
+ } catch(e) { __webpack_async_result__(e); } });
2373
+
2374
+ /***/ }),
2375
+
2376
+ /***/ 2541:
2377
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2378
+
2379
+ "use strict";
2380
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2381
+ /* harmony export */ "B": () => (/* binding */ mark)
2382
+ /* harmony export */ });
2383
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(997);
2384
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
2385
+ 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; }
2386
+
2387
+ 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; }
2388
+
2389
+ 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; }
2390
+
2391
+
2392
+ const mark = Component => function marked(props) {
2393
+ if (false) {}
2394
+
2395
+ return /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(Component, _objectSpread({}, props));
2396
+ };
2397
+
2398
+ /***/ }),
2399
+
2400
+ /***/ 3669:
2401
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2402
+
2403
+ "use strict";
2404
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2405
+ /* harmony export */ "Z": () => (/* binding */ useOnClickOutside)
2406
+ /* harmony export */ });
2407
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
2408
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
2409
+
2410
+ function useOnClickOutside(ref, handler) {
2411
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
2412
+ const listener = event => {
2413
+ if (!ref.current || ref.current.contains(event.target)) {
2414
+ return;
2415
+ }
2416
+
2417
+ handler(event);
2418
+ };
2419
+
2420
+ document.addEventListener('mousedown', listener);
2421
+ document.addEventListener('touchstart', listener);
2422
+ return () => {
2423
+ document.removeEventListener('mousedown', listener);
2424
+ document.removeEventListener('touchstart', listener);
2425
+ };
2426
+ },
2427
+ /**
2428
+ * Add ref and handler to effect dependencies.
2429
+ * It's worth noting that because passed in handler is a new
2430
+ * function on every render that will cause this effect
2431
+ * callback/cleanup to run every render. It's not a big deal
2432
+ * but to optimize you can wrap handler in useCallback before
2433
+ * passing it into this hook.
2434
+ */
2435
+ [ref, handler]);
2436
+ }
2437
+
2438
+ /***/ }),
2439
+
2440
+ /***/ 5764:
2441
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2442
+
2443
+ "use strict";
2444
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2445
+ /* harmony export */ "f": () => (/* binding */ getPage)
2446
+ /* harmony export */ });
2447
+ /* unused harmony export clientCMS */
2448
+ /* harmony import */ var _vtex_client_cms__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6676);
2449
+ /* harmony import */ var _vtex_client_cms__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_vtex_client_cms__WEBPACK_IMPORTED_MODULE_0__);
2450
+ /* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7183);
2451
+ /* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_faststore_config__WEBPACK_IMPORTED_MODULE_1__);
2452
+
2453
+
2454
+ const clientCMS = new (_vtex_client_cms__WEBPACK_IMPORTED_MODULE_0___default())({
2455
+ workspace: (_faststore_config__WEBPACK_IMPORTED_MODULE_1___default().api.workspace),
2456
+ tenant: (_faststore_config__WEBPACK_IMPORTED_MODULE_1___default().api.storeId)
2457
+ });
2458
+
2459
+ const isLocator = x => typeof x.contentType === 'string' && (typeof x.releaseId === 'string' || typeof x.documentId === 'string');
2460
+
2461
+ const getPage = async options => {
2462
+ const result = await (isLocator(options) ? clientCMS.getCMSPage(options).then(page => ({
2463
+ data: [page]
2464
+ })) : clientCMS.getCMSPagesByContentType(options.contentType, options.filters));
2465
+ const pages = result.data;
2466
+
2467
+ if (!pages[0]) {
2468
+ throw new Error(`Missing content on the CMS for content type ${options.contentType}. Add content before proceeding. Context: ${JSON.stringify(options, null, 2)}`);
2469
+ }
2470
+
2471
+ if (pages.length !== 1) {
2472
+ throw new Error(`Multiple content defined on the CMS for content type ${options.contentType}. Remove duplicated content before proceeding. Context: ${JSON.stringify(options, null, 2)}`);
2473
+ }
2474
+
2475
+ return pages[0];
2476
+ };
2477
+
2478
+ /***/ }),
2479
+
2480
+ /***/ 7651:
2481
+ /***/ ((module) => {
2482
+
2483
+ // Exports
2484
+ module.exports = {
2485
+ "section": "section_section__YiggP"
2486
+ };
2487
+
2488
+
2489
+ /***/ }),
2490
+
2491
+ /***/ 3026:
2492
+ /***/ ((module) => {
2493
+
2494
+ // Exports
2495
+ module.exports = {
2496
+ "section": "section_section__71Nrw"
2497
+ };
2498
+
2499
+
2500
+ /***/ }),
2501
+
2502
+ /***/ 4035:
2503
+ /***/ ((module) => {
2504
+
2505
+ // Exports
2506
+ module.exports = {
2507
+ "section": "section_section__qqZcd"
2508
+ };
2509
+
2510
+
2511
+ /***/ }),
2512
+
2513
+ /***/ 6872:
2514
+ /***/ ((module) => {
2515
+
2516
+ // Exports
2517
+ module.exports = {
2518
+ "section": "section_section___itif"
2519
+ };
2520
+
2521
+
2522
+ /***/ }),
2523
+
2524
+ /***/ 261:
2525
+ /***/ ((module) => {
2526
+
2527
+ // Exports
2528
+ module.exports = {
2529
+ "section": "section_section__bLR5s"
2530
+ };
2531
+
2532
+
2533
+ /***/ }),
2534
+
2535
+ /***/ 2524:
2536
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2537
+
2538
+ "use strict";
2539
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2540
+ /* harmony export */ "X": () => (/* binding */ useSearchState),
2541
+ /* harmony export */ "j": () => (/* binding */ initialize)
2542
+ /* harmony export */ });
2543
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
2544
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
2545
+ /* harmony import */ var _utils_format__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2339);
2546
+
2547
+
2548
+ const initialize = ({ sort = 'score_desc', selectedFacets = [], term = null, base = '/', page = 0, } = {}) => ({
2549
+ sort,
2550
+ selectedFacets,
2551
+ term,
2552
+ base: base.endsWith('/') ? base : `${base}/`,
2553
+ page,
2554
+ });
2555
+ const equals = (s1, s2) => (0,_utils_format__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z)(s1).href === (0,_utils_format__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z)(s2).href;
2556
+ const useSearchState = (initialState, onChange) => {
2557
+ const state = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => initialize(initialState), [initialState]);
2558
+ return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => ({
2559
+ state,
2560
+ setState: (newState) => !equals(newState, state) && onChange((0,_utils_format__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z)(newState)),
2561
+ }), [onChange, state]);
2562
+ };
2563
+ //# sourceMappingURL=useSearchState.js.map
2564
+
2565
+ /***/ }),
2566
+
2567
+ /***/ 2339:
2568
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2569
+
2570
+ "use strict";
2571
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2572
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2573
+ /* harmony export */ });
2574
+ const format = (params) => {
2575
+ const url = new URL(params.base, 'http://localhost');
2576
+ const { page, selectedFacets, sort, term } = params;
2577
+ if (term !== null) {
2578
+ url.searchParams.set('q', term);
2579
+ }
2580
+ const facets = new Set();
2581
+ for (const facet of selectedFacets) {
2582
+ url.searchParams.append(facet.key, facet.value);
2583
+ facets.add(facet.key);
2584
+ }
2585
+ if (selectedFacets.length > 0) {
2586
+ url.searchParams.set('facets', Array.from(facets).join(','));
2587
+ }
2588
+ url.searchParams.set('sort', sort);
2589
+ url.searchParams.set('page', page.toString());
2590
+ return url;
2591
+ };
2592
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (format);
2593
+ //# sourceMappingURL=format.js.map
2594
+
2595
+ /***/ })
2596
+
2597
+ };
2598
+ ;