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