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