@faststore/core 2.1.55 → 2.1.57

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 (150) hide show
  1. package/.turbo/turbo-build.log +6 -6
  2. package/faststore.config.js +4 -0
  3. package/package.json +4 -4
  4. package/.next/BUILD_ID +0 -1
  5. package/.next/build-manifest.json +0 -129
  6. package/.next/cache/.tsbuildinfo +0 -1
  7. package/.next/cache/config.json +0 -7
  8. package/.next/cache/eslint/.cache_1gneedd +0 -1
  9. package/.next/cache/next-server.js.nft.json +0 -1
  10. package/.next/cache/webpack/client-production/0.pack +0 -0
  11. package/.next/cache/webpack/client-production/index.pack +0 -0
  12. package/.next/cache/webpack/server-production/0.pack +0 -0
  13. package/.next/cache/webpack/server-production/index.pack +0 -0
  14. package/.next/export-marker.json +0 -1
  15. package/.next/images-manifest.json +0 -1
  16. package/.next/next-server.js.nft.json +0 -1
  17. package/.next/package.json +0 -1
  18. package/.next/prerender-manifest.json +0 -1
  19. package/.next/react-loadable-manifest.json +0 -44
  20. package/.next/required-server-files.json +0 -1
  21. package/.next/routes-manifest.json +0 -1
  22. package/.next/server/chunks/107.js +0 -56
  23. package/.next/server/chunks/143.js +0 -106
  24. package/.next/server/chunks/183.js +0 -91
  25. package/.next/server/chunks/184.js +0 -61
  26. package/.next/server/chunks/186.js +0 -112
  27. package/.next/server/chunks/188.js +0 -119
  28. package/.next/server/chunks/289.js +0 -238
  29. package/.next/server/chunks/309.js +0 -624
  30. package/.next/server/chunks/312.js +0 -688
  31. package/.next/server/chunks/350.js +0 -143
  32. package/.next/server/chunks/430.js +0 -648
  33. package/.next/server/chunks/487.js +0 -9142
  34. package/.next/server/chunks/576.js +0 -91
  35. package/.next/server/chunks/581.js +0 -513
  36. package/.next/server/chunks/650.js +0 -9142
  37. package/.next/server/chunks/676.js +0 -32
  38. package/.next/server/chunks/74.js +0 -4022
  39. package/.next/server/chunks/744.js +0 -60
  40. package/.next/server/chunks/751.js +0 -210
  41. package/.next/server/chunks/825.js +0 -4039
  42. package/.next/server/chunks/854.js +0 -72
  43. package/.next/server/chunks/859.js +0 -959
  44. package/.next/server/chunks/90.js +0 -57
  45. package/.next/server/chunks/907.js +0 -1903
  46. package/.next/server/chunks/934.js +0 -508
  47. package/.next/server/chunks/953.js +0 -1250
  48. package/.next/server/chunks/98.js +0 -124
  49. package/.next/server/chunks/font-manifest.json +0 -1
  50. package/.next/server/font-manifest.json +0 -1
  51. package/.next/server/middleware-build-manifest.js +0 -1
  52. package/.next/server/middleware-manifest.json +0 -6
  53. package/.next/server/middleware-react-loadable-manifest.js +0 -1
  54. package/.next/server/pages/404.js +0 -386
  55. package/.next/server/pages/404.js.nft.json +0 -1
  56. package/.next/server/pages/500.js +0 -388
  57. package/.next/server/pages/500.js.nft.json +0 -1
  58. package/.next/server/pages/[...slug].js +0 -1005
  59. package/.next/server/pages/[...slug].js.nft.json +0 -1
  60. package/.next/server/pages/[slug]/p.js +0 -2364
  61. package/.next/server/pages/[slug]/p.js.nft.json +0 -1
  62. package/.next/server/pages/_app.js +0 -281
  63. package/.next/server/pages/_app.js.nft.json +0 -1
  64. package/.next/server/pages/_document.js +0 -352
  65. package/.next/server/pages/_document.js.nft.json +0 -1
  66. package/.next/server/pages/_error.js +0 -164
  67. package/.next/server/pages/_error.js.nft.json +0 -1
  68. package/.next/server/pages/account.js +0 -363
  69. package/.next/server/pages/account.js.nft.json +0 -1
  70. package/.next/server/pages/api/graphql.js +0 -365
  71. package/.next/server/pages/api/graphql.js.nft.json +0 -1
  72. package/.next/server/pages/api/preview.js +0 -148
  73. package/.next/server/pages/api/preview.js.nft.json +0 -1
  74. package/.next/server/pages/checkout.js +0 -363
  75. package/.next/server/pages/checkout.js.nft.json +0 -1
  76. package/.next/server/pages/en-US/404.html +0 -81
  77. package/.next/server/pages/en-US/404.json +0 -1
  78. package/.next/server/pages/en-US/500.html +0 -81
  79. package/.next/server/pages/en-US/500.json +0 -1
  80. package/.next/server/pages/en-US/account.html +0 -81
  81. package/.next/server/pages/en-US/account.json +0 -1
  82. package/.next/server/pages/en-US/checkout.html +0 -81
  83. package/.next/server/pages/en-US/checkout.json +0 -1
  84. package/.next/server/pages/en-US/login.html +0 -81
  85. package/.next/server/pages/en-US/login.json +0 -1
  86. package/.next/server/pages/en-US/s.html +0 -81
  87. package/.next/server/pages/en-US/s.json +0 -1
  88. package/.next/server/pages/en-US.html +0 -81
  89. package/.next/server/pages/en-US.json +0 -1
  90. package/.next/server/pages/index.js +0 -439
  91. package/.next/server/pages/index.js.nft.json +0 -1
  92. package/.next/server/pages/login.js +0 -368
  93. package/.next/server/pages/login.js.nft.json +0 -1
  94. package/.next/server/pages/s.js +0 -466
  95. package/.next/server/pages/s.js.nft.json +0 -1
  96. package/.next/server/pages-manifest.json +0 -16
  97. package/.next/server/webpack-api-runtime.js +0 -229
  98. package/.next/server/webpack-runtime.js +0 -229
  99. package/.next/static/chunks/143.dd8a556e6957baa1.js +0 -1
  100. package/.next/static/chunks/27.37e4942c9236a071.js +0 -1
  101. package/.next/static/chunks/309.548249b3b3588d3b.js +0 -1
  102. package/.next/static/chunks/33-7f26ec3a5ae7a227.js +0 -1
  103. package/.next/static/chunks/548-ab84e9e8b49413ab.js +0 -1
  104. package/.next/static/chunks/651.7142f31ce1e052b3.js +0 -1
  105. package/.next/static/chunks/676.b7bc42f3e37ff88f.js +0 -1
  106. package/.next/static/chunks/686-78f207384adb0d83.js +0 -1
  107. package/.next/static/chunks/738-67a288ca3569cdbb.js +0 -1
  108. package/.next/static/chunks/741.52f7fb873418346f.js +0 -1
  109. package/.next/static/chunks/751.f9415d15cb5be269.js +0 -1
  110. package/.next/static/chunks/917-bf452887bdb70e03.js +0 -1
  111. package/.next/static/chunks/98.97381d2021f86cd9.js +0 -1
  112. package/.next/static/chunks/framework-dfd14d7ce6600b03.js +0 -1
  113. package/.next/static/chunks/main-fd466221927468fd.js +0 -1
  114. package/.next/static/chunks/pages/404-7812758b206af5cc.js +0 -1
  115. package/.next/static/chunks/pages/500-0c1b954316d40621.js +0 -1
  116. package/.next/static/chunks/pages/[...slug]-fd9cc16734d8f161.js +0 -1
  117. package/.next/static/chunks/pages/[slug]/p-5a83993d8ff855a6.js +0 -1
  118. package/.next/static/chunks/pages/_app-73e1a1982ec17ff6.js +0 -1
  119. package/.next/static/chunks/pages/_error-a7a0c1d9bfbb4f38.js +0 -1
  120. package/.next/static/chunks/pages/account-ac4fa43a2d996db5.js +0 -1
  121. package/.next/static/chunks/pages/checkout-fa13dc49318df859.js +0 -1
  122. package/.next/static/chunks/pages/index-e8b556e0a22cf818.js +0 -1
  123. package/.next/static/chunks/pages/login-5759fba9bb7ae351.js +0 -1
  124. package/.next/static/chunks/pages/s-a63dd94090d398be.js +0 -1
  125. package/.next/static/chunks/polyfills-c67a75d1b6f99dc8.js +0 -1
  126. package/.next/static/chunks/webpack-1d498edbf92d70ad.js +0 -1
  127. package/.next/static/css/527e334fa69cf40a.css +0 -1
  128. package/.next/static/css/6e1a7434f061d0ef.css +0 -1
  129. package/.next/static/css/a2eefb25a4608343.css +0 -1
  130. package/.next/static/css/a4effc58a718c27a.css +0 -1
  131. package/.next/static/css/b3f8dd61e5d35ef6.css +0 -1
  132. package/.next/static/css/cb7d1fcea42fab9c.css +0 -1
  133. package/.next/static/css/dcc281598933766a.css +0 -1
  134. package/.next/static/css/df588bb98c0b0ca6.css +0 -1
  135. package/.next/static/css/e3d648c53f88c1b9.css +0 -1
  136. package/.next/static/css/ebc1e9d3e686bad3.css +0 -1
  137. package/.next/static/eyFnbBbCBoWbp9h5XhZVV/_buildManifest.js +0 -1
  138. package/.next/static/eyFnbBbCBoWbp9h5XhZVV/_ssgManifest.js +0 -1
  139. package/.next/trace +0 -80
  140. package/public/~partytown/debug/partytown-atomics.js +0 -556
  141. package/public/~partytown/debug/partytown-media.js +0 -374
  142. package/public/~partytown/debug/partytown-sandbox-sw.js +0 -543
  143. package/public/~partytown/debug/partytown-sw.js +0 -59
  144. package/public/~partytown/debug/partytown-ww-atomics.js +0 -1789
  145. package/public/~partytown/debug/partytown-ww-sw.js +0 -1781
  146. package/public/~partytown/debug/partytown.js +0 -72
  147. package/public/~partytown/partytown-atomics.js +0 -2
  148. package/public/~partytown/partytown-media.js +0 -2
  149. package/public/~partytown/partytown-sw.js +0 -2
  150. package/public/~partytown/partytown.js +0 -2
@@ -1,4022 +0,0 @@
1
- exports.id = 74;
2
- exports.ids = [74];
3
- exports.modules = {
4
-
5
- /***/ 91419:
6
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7
-
8
- "use strict";
9
-
10
- // EXPORTS
11
- __webpack_require__.d(__webpack_exports__, {
12
- "Z": () => (/* reexport */ CartToggle_CartToggle)
13
- });
14
-
15
- // EXTERNAL MODULE: ../components/dist/molecules/IconButton/IconButton.js
16
- var IconButton = __webpack_require__(90518);
17
- // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
18
- var Icon = __webpack_require__(82185);
19
- // EXTERNAL MODULE: ../components/dist/atoms/Badge/Badge.js
20
- var Badge = __webpack_require__(87197);
21
- // EXTERNAL MODULE: external "react"
22
- var external_react_ = __webpack_require__(16689);
23
- // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
24
- var UIProvider = __webpack_require__(35728);
25
- // EXTERNAL MODULE: ./src/sdk/cart/index.ts + 1 modules
26
- var cart = __webpack_require__(46073);
27
- ;// CONCATENATED MODULE: ./src/sdk/cart/useCartToggleButton.ts
28
-
29
-
30
-
31
- const useCartToggleButton = () => {
32
- const {
33
- totalItems
34
- } = (0,cart/* useCart */.jD)();
35
- const {
36
- cart: displayCart,
37
- openCart,
38
- closeCart
39
- } = (0,UIProvider/* useUI */.l)();
40
- const onClick = (0,external_react_.useCallback)(() => {
41
- if (displayCart) {
42
- closeCart();
43
- } else {
44
- openCart();
45
- }
46
- }, [closeCart, displayCart, openCart]);
47
- return {
48
- onClick,
49
- 'data-testid': 'cart-toggle',
50
- 'data-items': totalItems
51
- };
52
- };
53
- // EXTERNAL MODULE: external "react/jsx-runtime"
54
- var jsx_runtime_ = __webpack_require__(20997);
55
- ;// CONCATENATED MODULE: ./src/components/cart/CartToggle/CartToggle.tsx
56
- 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; }
57
-
58
- 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; }
59
-
60
- 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; }
61
-
62
-
63
-
64
-
65
-
66
- function CartToggle({
67
- alt,
68
- icon
69
- }) {
70
- const btnProps = useCartToggleButton();
71
- const totalItems = btnProps['data-items'];
72
- return /*#__PURE__*/jsx_runtime_.jsx(IconButton/* default */.Z, _objectSpread(_objectSpread({
73
- "data-fs-cart-toggle": true,
74
- "aria-label": alt,
75
- icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
76
- name: icon,
77
- width: 32,
78
- height: 32
79
- })
80
- }, btnProps), {}, {
81
- children: /*#__PURE__*/jsx_runtime_.jsx(Badge/* default */.Z, {
82
- counter: true,
83
- children: totalItems
84
- })
85
- }));
86
- }
87
-
88
- /* harmony default export */ const CartToggle_CartToggle = (CartToggle);
89
- ;// CONCATENATED MODULE: ./src/components/cart/CartToggle/index.ts
90
-
91
-
92
- /***/ }),
93
-
94
- /***/ 4074:
95
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
96
-
97
- "use strict";
98
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
99
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
100
- /* harmony export */ "Tc": () => (/* binding */ getGlobalSectionsData),
101
- /* harmony export */ "ZP": () => (__WEBPACK_DEFAULT_EXPORT__)
102
- /* harmony export */ });
103
- /* unused harmony export GLOBAL_SECTIONS_CONTENT_TYPE */
104
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
105
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
106
- /* harmony import */ var src_customizations_components__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(20859);
107
- /* harmony import */ var src_server_cms__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(42430);
108
- /* harmony import */ var src_components_common_Toast__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(56476);
109
- /* harmony import */ var _RenderSections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(82224);
110
- /* harmony import */ var src_components_sections_Alert__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(2865);
111
- /* harmony import */ var src_components_sections_Footer__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(46752);
112
- /* harmony import */ var src_components_sections_Navbar__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(81868);
113
- /* harmony import */ var src_components_sections_RegionBar__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(26687);
114
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(20997);
115
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__);
116
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_RenderSections__WEBPACK_IMPORTED_MODULE_4__, src_components_sections_Navbar__WEBPACK_IMPORTED_MODULE_7__]);
117
- ([_RenderSections__WEBPACK_IMPORTED_MODULE_4__, src_components_sections_Navbar__WEBPACK_IMPORTED_MODULE_7__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
118
- const _excluded = ["children"];
119
-
120
- 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; }
121
-
122
- 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; }
123
-
124
- 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; }
125
-
126
- 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; }
127
-
128
- 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; }
129
-
130
-
131
-
132
-
133
-
134
-
135
-
136
-
137
-
138
-
139
-
140
-
141
- const RegionModal = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.lazy)(() => Promise.all(/* import() */[__webpack_require__.e(107), __webpack_require__.e(751)]).then(__webpack_require__.bind(__webpack_require__, 16751)));
142
- const CartSidebar = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.lazy)(() => Promise.all(/* import() */[__webpack_require__.e(744), __webpack_require__.e(90), __webpack_require__.e(309)]).then(__webpack_require__.bind(__webpack_require__, 10309)));
143
- const GLOBAL_SECTIONS_CONTENT_TYPE = 'globalSections';
144
-
145
- /* A list of components that can be used in the CMS. */
146
- const COMPONENTS = _objectSpread({
147
- Alert: src_components_sections_Alert__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z,
148
- Navbar: src_components_sections_Navbar__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z,
149
- RegionBar: src_components_sections_RegionBar__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z,
150
- RegionModal,
151
- CartSidebar,
152
- Footer: src_components_sections_Footer__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z
153
- }, src_customizations_components__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z);
154
-
155
- function GlobalSections(_ref) {
156
- let {
157
- children
158
- } = _ref,
159
- otherProps = _objectWithoutProperties(_ref, _excluded);
160
-
161
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsxs)(_RenderSections__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, _objectSpread(_objectSpread({
162
- components: COMPONENTS
163
- }, otherProps), {}, {
164
- children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx(src_components_common_Toast__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {}), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx("main", {
165
- children: children
166
- })]
167
- }));
168
- }
169
-
170
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (GlobalSections);
171
- const getGlobalSectionsData = async previewData => {
172
- const {
173
- sections
174
- } = await (0,src_server_cms__WEBPACK_IMPORTED_MODULE_2__/* .getPage */ .f)(_objectSpread(_objectSpread({}, previewData?.contentType === GLOBAL_SECTIONS_CONTENT_TYPE && previewData), {}, {
175
- contentType: GLOBAL_SECTIONS_CONTENT_TYPE
176
- }));
177
- return {
178
- sections
179
- };
180
- };
181
- __webpack_async_result__();
182
- } catch(e) { __webpack_async_result__(e); } });
183
-
184
- /***/ }),
185
-
186
- /***/ 82224:
187
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
188
-
189
- "use strict";
190
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
191
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
192
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
193
- /* harmony export */ });
194
- /* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(97564);
195
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
196
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
197
- /* harmony import */ var _SectionBoundary__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(47429);
198
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(20997);
199
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__);
200
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([chalk__WEBPACK_IMPORTED_MODULE_0__]);
201
- chalk__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
202
- const _excluded = ["children", "sections"];
203
-
204
- 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; }
205
-
206
- 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; }
207
-
208
- 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; }
209
-
210
- 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; }
211
-
212
- 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; }
213
-
214
-
215
-
216
-
217
-
218
-
219
-
220
-
221
- const useDividedSections = sections => {
222
- return (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(() => {
223
- const indexChildren = sections.findIndex(({
224
- name
225
- }) => name === 'Children');
226
- const hasChildren = indexChildren > -1;
227
- return _objectSpread({
228
- hasChildren,
229
- firstSections: hasChildren ? sections.slice(0, indexChildren) : sections
230
- }, hasChildren && {
231
- lastSections: sections.slice(indexChildren + 1)
232
- });
233
- }, [sections]);
234
- };
235
-
236
- const RenderSectionsBase = ({
237
- sections = [],
238
- context,
239
- components
240
- }) => {
241
- return /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.Fragment, {
242
- children: sections.map(({
243
- name,
244
- data
245
- }, index) => {
246
- const Component = components[name];
247
-
248
- if (!Component) {
249
- // TODO: add a documentation link to help to do this
250
- 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`);
251
- return null;
252
- }
253
-
254
- return /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx(_SectionBoundary__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
255
- name: name,
256
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx(Component, _objectSpread(_objectSpread({}, data), {}, {
257
- context: context
258
- }))
259
- }, `cms-section-${index}`);
260
- })
261
- });
262
- };
263
-
264
- function RenderSections(_ref) {
265
- let {
266
- children,
267
- sections
268
- } = _ref,
269
- otherProps = _objectWithoutProperties(_ref, _excluded);
270
-
271
- const {
272
- hasChildren,
273
- firstSections,
274
- lastSections
275
- } = useDividedSections(sections);
276
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.Fragment, {
277
- children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx(RenderSectionsBase, _objectSpread({
278
- sections: firstSections
279
- }, otherProps)), children, hasChildren && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx(RenderSectionsBase, _objectSpread({
280
- sections: lastSections
281
- }, otherProps))]
282
- });
283
- }
284
-
285
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RenderSections);
286
- __webpack_async_result__();
287
- } catch(e) { __webpack_async_result__(e); } });
288
-
289
- /***/ }),
290
-
291
- /***/ 47429:
292
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
293
-
294
- "use strict";
295
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
296
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
297
- /* harmony export */ });
298
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
299
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
300
- 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; }
301
-
302
-
303
-
304
- class SectionBoundary extends react__WEBPACK_IMPORTED_MODULE_0__.Component {
305
- constructor(...args) {
306
- super(...args);
307
-
308
- _defineProperty(this, "state", {
309
- hasError: false,
310
- error: null
311
- });
312
- }
313
-
314
- static getDerivedStateFromError(error) {
315
- return {
316
- hasError: true,
317
- error
318
- };
319
- }
320
-
321
- componentDidCatch(error, errorInfo) {
322
- 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
323
- }
324
-
325
- render() {
326
- if (this.state.hasError && true) {
327
- return null;
328
- }
329
-
330
- return this.props.children;
331
- }
332
-
333
- }
334
-
335
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SectionBoundary);
336
-
337
- /***/ }),
338
-
339
- /***/ 56476:
340
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
341
-
342
- "use strict";
343
-
344
- // EXPORTS
345
- __webpack_require__.d(__webpack_exports__, {
346
- "Z": () => (/* reexport */ common_Toast_Toast)
347
- });
348
-
349
- // EXTERNAL MODULE: external "react"
350
- var external_react_ = __webpack_require__(16689);
351
- // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
352
- var UIProvider = __webpack_require__(35728);
353
- ;// CONCATENATED MODULE: ../components/dist/molecules/Toast/Toast.js
354
-
355
-
356
- function Toast() {
357
- const { toasts, popToast } = (0,UIProvider/* useUI */.l)();
358
- const toast = toasts[toasts.length - 1];
359
- const timeoutRef = (0,external_react_.useRef)();
360
- const [visible, setVisible] = (0,external_react_.useState)(false);
361
- (0,external_react_.useEffect)(() => {
362
- if (!toast) {
363
- return undefined;
364
- }
365
- const timeout = setTimeout(() => setVisible(true), 10);
366
- return () => clearTimeout(timeout);
367
- }, [toast]);
368
- (0,external_react_.useEffect)(() => {
369
- timeoutRef.current = setTimeout(() => setVisible(false), 6e3);
370
- return () => timeoutRef.current && clearTimeout(timeoutRef.current);
371
- }, [toast]);
372
- if (toast === undefined) {
373
- return null;
374
- }
375
- return (external_react_.createElement("div", { role: "status", "data-fs-toast": true, "data-fs-toast-visible": visible, onTransitionEnd: () => !visible && popToast() },
376
- toast.icon && (external_react_.createElement("div", { "data-fs-toast-icon-container": true }, !!toast.icon && toast.icon)),
377
- external_react_.createElement("div", { "data-fs-toast-content": true },
378
- toast.title && external_react_.createElement("p", { "data-fs-toast-title": true }, toast.title),
379
- external_react_.createElement("p", { "data-fs-toast-message": true }, toast.message))));
380
- }
381
- /* harmony default export */ const Toast_Toast = (Toast);
382
- //# sourceMappingURL=Toast.js.map
383
- // EXTERNAL MODULE: ./src/components/sections/Section/Section.tsx
384
- var Section = __webpack_require__(13271);
385
- // EXTERNAL MODULE: ./src/sdk/cart/index.ts + 1 modules
386
- var cart = __webpack_require__(46073);
387
- // EXTERNAL MODULE: ./src/components/common/Toast/section.module.scss
388
- var section_module = __webpack_require__(91276);
389
- var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
390
- // EXTERNAL MODULE: external "react/jsx-runtime"
391
- var jsx_runtime_ = __webpack_require__(20997);
392
- ;// CONCATENATED MODULE: ./src/components/common/Toast/Toast.tsx
393
-
394
-
395
-
396
-
397
-
398
-
399
-
400
-
401
- function Toast_Toast_Toast() {
402
- const {
403
- toasts,
404
- pushToast
405
- } = (0,UIProvider/* useUI */.l)();
406
- const {
407
- messages
408
- } = (0,cart/* useCart */.jD)();
409
- /**
410
- * Send cart notifications to toast in case the cart
411
- * returns warnings
412
- */
413
-
414
- (0,external_react_.useEffect)(() => {
415
- if (!messages) {
416
- return;
417
- }
418
-
419
- messages.forEach(message => pushToast({
420
- message: message.text,
421
- status: message.status
422
- }));
423
- }, [messages, pushToast]);
424
- return /*#__PURE__*/jsx_runtime_.jsx(jsx_runtime_.Fragment, {
425
- children: toasts.length > 0 && /*#__PURE__*/jsx_runtime_.jsx(Section/* default */.Z, {
426
- className: `${(section_module_default()).section} section-toast`,
427
- children: /*#__PURE__*/jsx_runtime_.jsx(Toast_Toast, {})
428
- })
429
- });
430
- }
431
-
432
- /* harmony default export */ const common_Toast_Toast = (Toast_Toast_Toast);
433
- ;// CONCATENATED MODULE: ./src/components/common/Toast/index.ts
434
-
435
-
436
- /***/ }),
437
-
438
- /***/ 42024:
439
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
440
-
441
- "use strict";
442
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
443
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
444
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
445
- /* harmony export */ });
446
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
447
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
448
- /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(12335);
449
- /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(35728);
450
- /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(82185);
451
- /* harmony import */ var src_sdk_tests_mark__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(82541);
452
- /* harmony import */ var src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(60475);
453
- /* harmony import */ var src_components_navigation_NavbarLinks__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(10782);
454
- /* harmony import */ var src_components_navigation_NavbarSlider__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(8622);
455
- /* harmony import */ var src_components_cart_CartToggle__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(91419);
456
- /* harmony import */ var src_components_ui_Logo__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(25811);
457
- /* harmony import */ var src_components_ui_Link__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(51093);
458
- /* harmony import */ var src_components_ui_Button__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(57758);
459
- /* harmony import */ var src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(75831);
460
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(20997);
461
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__);
462
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__]);
463
- src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
464
- 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; }
465
-
466
- 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; }
467
-
468
- 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; }
469
-
470
-
471
-
472
-
473
-
474
-
475
-
476
-
477
-
478
-
479
-
480
-
481
-
482
-
483
-
484
-
485
- function Navbar({
486
- cart,
487
- logo,
488
- searchInput,
489
- home,
490
- links,
491
- signIn,
492
- region,
493
- home: {
494
- label: homeLabel
495
- },
496
- signIn: {
497
- button: signInButton
498
- },
499
- menu: {
500
- icon: {
501
- icon: menuIcon,
502
- alt: menuIconAlt = src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .IconButton.props["aria-label"] */ .hU.props["aria-label"]
503
- }
504
- }
505
- }) {
506
- const scrollDirection = (0,_faststore_ui__WEBPACK_IMPORTED_MODULE_11__/* .useScrollDirection */ .C)();
507
- const {
508
- openNavbar,
509
- navbar: displayNavbar
510
- } = (0,_faststore_ui__WEBPACK_IMPORTED_MODULE_12__/* .useUI */ .l)();
511
- const searchMobileRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
512
- const {
513
- 0: searchExpanded,
514
- 1: setSearchExpanded
515
- } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
516
- const handlerExpandSearch = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
517
- setSearchExpanded(true);
518
- searchMobileRef.current?.inputRef?.focus();
519
- }, []);
520
- const handleCollapseSearch = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
521
- setSearchExpanded(false);
522
- searchMobileRef.current?.resetSearchInput();
523
- }, []);
524
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)(src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .Navbar.Component */ .wp.Component, _objectSpread(_objectSpread({
525
- scrollDirection: scrollDirection
526
- }, src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .Navbar.props */ .wp.props), {}, {
527
- children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .NavbarHeader.Component */ .fs.Component, _objectSpread(_objectSpread({}, src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .NavbarHeader.props */ .fs.props), {}, {
528
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)(src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .NavbarRow.Component */ .JA.Component, _objectSpread(_objectSpread({}, src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .NavbarRow.props */ .JA.props), {}, {
529
- children: [!searchExpanded && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.Fragment, {
530
- children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .IconButton.Component */ .hU.Component, _objectSpread(_objectSpread({
531
- "data-fs-navbar-button-menu": true,
532
- onClick: openNavbar,
533
- icon: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
534
- name: menuIcon,
535
- width: 32,
536
- height: 32
537
- })
538
- }, src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .IconButton.props */ .hU.props), {}, {
539
- "aria-label": menuIconAlt
540
- })), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_ui_Link__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
541
- href: "/",
542
- "data-fs-navbar-logo": true,
543
- prefetch: false,
544
- title: homeLabel,
545
- "aria-label": homeLabel,
546
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_ui_Logo__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, _objectSpread({}, logo))
547
- })]
548
- }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
549
- sort: searchInput?.sort
550
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)(src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .NavbarButtons.Component */ .Dh.Component, _objectSpread(_objectSpread({
551
- searchExpanded: searchExpanded
552
- }, src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .NavbarButtons.props */ .Dh.props), {}, {
553
- children: [searchExpanded && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .IconButton.Component */ .hU.Component, _objectSpread(_objectSpread({
554
- "data-fs-button-collapse": true,
555
- "aria-label": "Collapse search bar",
556
- icon: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
557
- name: "CaretLeft",
558
- width: 32,
559
- height: 32
560
- })
561
- }, src_components_sections_Navbar_Overrides__WEBPACK_IMPORTED_MODULE_9__/* .IconButton.props */ .hU.props), {}, {
562
- // Dynamic props, shouldn't be overridable
563
- // This decision can be reviewed later if needed
564
- onClick: handleCollapseSearch
565
- })), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_search_SearchInput__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
566
- placeholder: "",
567
- ref: searchMobileRef,
568
- testId: "store-input-mobile",
569
- buttonTestId: "store-input-mobile-button",
570
- onSearchClick: handlerExpandSearch,
571
- sort: searchInput?.sort,
572
- hidden: !searchExpanded,
573
- "aria-hidden": !searchExpanded
574
- }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_ui_Button__WEBPACK_IMPORTED_MODULE_8__/* .ButtonSignIn */ .p, _objectSpread({}, signInButton)), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_cart_CartToggle__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, _objectSpread({}, cart))]
575
- }))]
576
- }))
577
- })), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_navigation_NavbarLinks__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
578
- links: links,
579
- region: region,
580
- className: "hidden-mobile"
581
- }), displayNavbar && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx(src_components_navigation_NavbarSlider__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
582
- home: home,
583
- logo: logo,
584
- links: links,
585
- signIn: signIn,
586
- region: region
587
- })]
588
- }));
589
- }
590
-
591
- Navbar.displayName = 'Navbar';
592
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,src_sdk_tests_mark__WEBPACK_IMPORTED_MODULE_1__/* .mark */ .B)(Navbar));
593
- __webpack_async_result__();
594
- } catch(e) { __webpack_async_result__(e); } });
595
-
596
- /***/ }),
597
-
598
- /***/ 3583:
599
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
600
-
601
- "use strict";
602
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
603
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
604
- /* harmony export */ "Z": () => (/* reexport safe */ _Navbar__WEBPACK_IMPORTED_MODULE_0__.Z)
605
- /* harmony export */ });
606
- /* harmony import */ var _Navbar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(42024);
607
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Navbar__WEBPACK_IMPORTED_MODULE_0__]);
608
- _Navbar__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
609
-
610
- __webpack_async_result__();
611
- } catch(e) { __webpack_async_result__(e); } });
612
-
613
- /***/ }),
614
-
615
- /***/ 10782:
616
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
617
-
618
- "use strict";
619
-
620
- // EXPORTS
621
- __webpack_require__.d(__webpack_exports__, {
622
- "Z": () => (/* reexport */ NavbarLinks_NavbarLinks)
623
- });
624
-
625
- // EXTERNAL MODULE: external "react"
626
- var external_react_ = __webpack_require__(16689);
627
- ;// CONCATENATED MODULE: ../components/dist/molecules/NavbarLinks/NavbarLinksListItem.js
628
-
629
- const NavbarLinksListItem = (0,external_react_.forwardRef)(function NavbarLinksListItem({ children, testId = 'fs-navbar-links-list-item', ...otherProps }, ref) {
630
- return (external_react_.createElement("li", { "data-fs-navbar-links-list-item": true, ref: ref, "data-testid": testId, ...otherProps }, children));
631
- });
632
- /* harmony default export */ const NavbarLinks_NavbarLinksListItem = (NavbarLinksListItem);
633
- //# sourceMappingURL=NavbarLinksListItem.js.map
634
- // EXTERNAL MODULE: ./src/components/ui/Link/index.ts + 1 modules
635
- var Link = __webpack_require__(51093);
636
- // EXTERNAL MODULE: ../components/dist/atoms/Button/Button.js
637
- var Button = __webpack_require__(33815);
638
- // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
639
- var UIProvider = __webpack_require__(35728);
640
- // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
641
- var Icon = __webpack_require__(82185);
642
- // EXTERNAL MODULE: ./src/sdk/session/index.ts + 1 modules
643
- var session = __webpack_require__(97295);
644
- // EXTERNAL MODULE: external "react/jsx-runtime"
645
- var jsx_runtime_ = __webpack_require__(20997);
646
- ;// CONCATENATED MODULE: ./src/components/region/RegionButton/RegionButton.tsx
647
-
648
-
649
-
650
-
651
-
652
- function RegionButton({
653
- icon,
654
- label
655
- }) {
656
- const {
657
- openModal
658
- } = (0,UIProvider/* useUI */.l)();
659
- const {
660
- postalCode
661
- } = (0,session/* useSession */.kP)();
662
- return /*#__PURE__*/jsx_runtime_.jsx(Button/* default */.Z, {
663
- variant: "tertiary",
664
- size: "small",
665
- icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
666
- name: icon,
667
- width: 18,
668
- height: 18,
669
- weight: "bold"
670
- }),
671
- iconPosition: "left",
672
- onClick: openModal,
673
- children: postalCode ?? label
674
- });
675
- }
676
-
677
- /* harmony default export */ const RegionButton_RegionButton = (RegionButton);
678
- ;// CONCATENATED MODULE: ./src/components/region/RegionButton/index.ts
679
-
680
- // EXTERNAL MODULE: ./src/sdk/tests/mark.tsx
681
- var mark = __webpack_require__(82541);
682
- // EXTERNAL MODULE: ./src/components/sections/Navbar/Overrides.tsx + 11 modules
683
- var Overrides = __webpack_require__(75831);
684
- ;// CONCATENATED MODULE: ./src/components/navigation/NavbarLinks/NavbarLinks.tsx
685
- const _excluded = ["links", "onClickLink", "region"];
686
-
687
- 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; }
688
-
689
- 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; }
690
-
691
- 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; }
692
-
693
- 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; }
694
-
695
- 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; }
696
-
697
-
698
-
699
-
700
-
701
-
702
-
703
-
704
-
705
- function NavbarLinks(_ref) {
706
- let {
707
- links,
708
- onClickLink,
709
- region: {
710
- icon: regionIcon,
711
- label: regionLabel,
712
- shouldDisplayRegion
713
- }
714
- } = _ref,
715
- otherProps = _objectWithoutProperties(_ref, _excluded);
716
-
717
- return /*#__PURE__*/jsx_runtime_.jsx(Overrides/* NavbarLinks.Component */.re.Component, _objectSpread(_objectSpread(_objectSpread({}, otherProps), Overrides/* NavbarLinks.props */.re.props), {}, {
718
- children: /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
719
- "data-fs-navbar-links-wrapper": true,
720
- "data-fs-content": "navbar",
721
- children: [shouldDisplayRegion && /*#__PURE__*/jsx_runtime_.jsx(RegionButton_RegionButton, {
722
- icon: regionIcon,
723
- label: regionLabel
724
- }), /*#__PURE__*/jsx_runtime_.jsx(Overrides/* NavbarLinksList.Component */.iy.Component, _objectSpread(_objectSpread({}, Overrides/* NavbarLinksList.props */.iy.props), {}, {
725
- children: links.map(({
726
- url,
727
- text
728
- }) => /*#__PURE__*/jsx_runtime_.jsx(NavbarLinks_NavbarLinksListItem, {
729
- children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
730
- variant: "display",
731
- href: url,
732
- prefetch: false,
733
- onClick: onClickLink,
734
- children: text
735
- })
736
- }, text))
737
- }))]
738
- })
739
- }));
740
- }
741
-
742
- /* harmony default export */ const NavbarLinks_NavbarLinks = ((0,mark/* mark */.B)(NavbarLinks));
743
- ;// CONCATENATED MODULE: ./src/components/navigation/NavbarLinks/index.ts
744
-
745
-
746
- /***/ }),
747
-
748
- /***/ 8622:
749
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
750
-
751
- "use strict";
752
-
753
- // EXPORTS
754
- __webpack_require__.d(__webpack_exports__, {
755
- "Z": () => (/* reexport */ NavbarSlider_NavbarSlider)
756
- });
757
-
758
- // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
759
- var UIProvider = __webpack_require__(35728);
760
- // EXTERNAL MODULE: ../components/dist/hooks/useFadeEffect.js
761
- var useFadeEffect = __webpack_require__(2127);
762
- // EXTERNAL MODULE: external "react"
763
- var external_react_ = __webpack_require__(16689);
764
- // EXTERNAL MODULE: ./src/components/ui/Button/index.ts + 4 modules
765
- var Button = __webpack_require__(57758);
766
- // EXTERNAL MODULE: ./src/components/ui/Link/index.ts + 1 modules
767
- var Link = __webpack_require__(51093);
768
- // EXTERNAL MODULE: ./src/components/navigation/NavbarLinks/index.ts + 4 modules
769
- var NavbarLinks = __webpack_require__(10782);
770
- // EXTERNAL MODULE: ./src/components/ui/Logo/index.ts + 1 modules
771
- var Logo = __webpack_require__(25811);
772
- // EXTERNAL MODULE: ./src/sdk/tests/mark.tsx
773
- var mark = __webpack_require__(82541);
774
- // EXTERNAL MODULE: ./src/components/navigation/NavbarSlider/section.module.scss
775
- var section_module = __webpack_require__(40261);
776
- var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
777
- // EXTERNAL MODULE: ./src/components/sections/Navbar/Overrides.tsx + 11 modules
778
- var Overrides = __webpack_require__(75831);
779
- // EXTERNAL MODULE: external "react/jsx-runtime"
780
- var jsx_runtime_ = __webpack_require__(20997);
781
- ;// CONCATENATED MODULE: ./src/components/navigation/NavbarSlider/NavbarSlider.tsx
782
- 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; }
783
-
784
- 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; }
785
-
786
- 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; }
787
-
788
-
789
-
790
-
791
-
792
-
793
-
794
-
795
-
796
-
797
-
798
-
799
-
800
- function NavbarSlider({
801
- logo,
802
- links,
803
- region,
804
- home: {
805
- label: homeLabel
806
- },
807
- signIn: {
808
- button: signInButton
809
- }
810
- }) {
811
- const {
812
- closeNavbar
813
- } = (0,UIProvider/* useUI */.l)();
814
- const {
815
- fade,
816
- fadeOut
817
- } = (0,useFadeEffect/* useFadeEffect */.b)();
818
- return /*#__PURE__*/(0,jsx_runtime_.jsxs)(Overrides/* NavbarSlider.Component */.XF.Component, _objectSpread(_objectSpread({
819
- fade: fade,
820
- onDismiss: fadeOut,
821
- overlayProps: {
822
- className: `section ${(section_module_default()).section} section-navbar-slider`
823
- },
824
- onTransitionEnd: () => fade === 'out' && closeNavbar()
825
- }, Overrides/* NavbarSlider.props */.XF.props), {}, {
826
- children: [/*#__PURE__*/jsx_runtime_.jsx(Overrides/* NavbarSliderHeader.Component */.Bl.Component, _objectSpread(_objectSpread({
827
- onClose: fadeOut
828
- }, Overrides/* NavbarSlider.props */.XF.props), {}, {
829
- children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
830
- href: "/",
831
- onClick: fadeOut,
832
- title: homeLabel,
833
- "aria-label": homeLabel,
834
- "data-fs-navbar-slider-logo": true,
835
- children: /*#__PURE__*/jsx_runtime_.jsx(Logo/* default */.Z, _objectSpread({}, logo))
836
- })
837
- })), /*#__PURE__*/jsx_runtime_.jsx(Overrides/* NavbarSliderContent.Component */.Ko.Component, _objectSpread(_objectSpread({}, Overrides/* NavbarSliderContent.props */.Ko.props), {}, {
838
- children: /*#__PURE__*/jsx_runtime_.jsx(NavbarLinks/* default */.Z, {
839
- onClickLink: fadeOut,
840
- links: links,
841
- region: region
842
- })
843
- })), /*#__PURE__*/jsx_runtime_.jsx(Overrides/* NavbarSliderFooter.Component */.$6.Component, _objectSpread(_objectSpread({}, Overrides/* NavbarSliderFooter.props */.$6.props), {}, {
844
- children: /*#__PURE__*/jsx_runtime_.jsx(external_react_.Suspense, {
845
- fallback: /*#__PURE__*/jsx_runtime_.jsx(Button/* ButtonSignInFallback */.A, {}),
846
- children: /*#__PURE__*/jsx_runtime_.jsx(Button/* ButtonSignIn */.p, _objectSpread({}, signInButton))
847
- })
848
- }))]
849
- }));
850
- }
851
-
852
- /* harmony default export */ const NavbarSlider_NavbarSlider = ((0,mark/* mark */.B)(NavbarSlider));
853
- ;// CONCATENATED MODULE: ./src/components/navigation/NavbarSlider/index.ts
854
-
855
-
856
- /***/ }),
857
-
858
- /***/ 79471:
859
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
860
-
861
- "use strict";
862
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
863
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
864
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
865
- /* harmony export */ });
866
- /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(71072);
867
- /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(55429);
868
- /* harmony import */ var _faststore_ui__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(87149);
869
- /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71853);
870
- /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_router__WEBPACK_IMPORTED_MODULE_0__);
871
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
872
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
873
- /* harmony import */ var src_sdk_search_formatSearchPath__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(25882);
874
- /* harmony import */ var src_sdk_search_useSearchHistory__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(75098);
875
- /* harmony import */ var src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(86344);
876
- /* harmony import */ var src_sdk_ui_useOnClickOutside__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(13669);
877
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20997);
878
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__);
879
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__]);
880
- src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
881
- const _excluded = ["onSearchClick", "buttonTestId", "containerStyle", "sort"];
882
-
883
- 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; }
884
-
885
- 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; }
886
-
887
- 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; }
888
-
889
- 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; }
890
-
891
- 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; }
892
-
893
-
894
-
895
-
896
-
897
-
898
-
899
-
900
-
901
-
902
-
903
- const SearchDropdown = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.lazy)(() => Promise.all(/* import() */[__webpack_require__.e(744), __webpack_require__.e(854), __webpack_require__.e(312)]).then(__webpack_require__.bind(__webpack_require__, 14312)));
904
-
905
- const sendAnalytics = async term => {
906
- (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_6__/* .sendAnalyticsEvent */ ._)({
907
- name: 'search',
908
- params: {
909
- search_term: term
910
- }
911
- });
912
- };
913
-
914
- const SearchInput = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)(function SearchInput(_ref, ref) {
915
- let {
916
- onSearchClick,
917
- buttonTestId = 'fs-search-button',
918
- containerStyle,
919
- sort
920
- } = _ref,
921
- otherProps = _objectWithoutProperties(_ref, _excluded);
922
-
923
- const {
924
- 0: searchQuery,
925
- 1: setSearchQuery
926
- } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)('');
927
- const searchQueryDeferred = (0,react__WEBPACK_IMPORTED_MODULE_1__.useDeferredValue)(searchQuery);
928
- const {
929
- 0: searchDropdownVisible,
930
- 1: setSearchDropdownVisible
931
- } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);
932
- const searchRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);
933
- const {
934
- addToSearchHistory
935
- } = (0,src_sdk_search_useSearchHistory__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)();
936
- const router = (0,next_router__WEBPACK_IMPORTED_MODULE_0__.useRouter)();
937
- (0,react__WEBPACK_IMPORTED_MODULE_1__.useImperativeHandle)(ref, () => ({
938
- resetSearchInput: () => setSearchQuery('')
939
- }));
940
-
941
- const onSearchSelection = (term, path) => {
942
- addToSearchHistory({
943
- term,
944
- path
945
- });
946
- sendAnalytics(term);
947
- setSearchDropdownVisible(false);
948
- setSearchQuery(term);
949
- };
950
-
951
- (0,src_sdk_ui_useOnClickOutside__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(searchRef, () => setSearchDropdownVisible(false));
952
- const {
953
- terms,
954
- products,
955
- isLoading
956
- } = (0,src_sdk_search_useSuggestions__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)(searchQueryDeferred);
957
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)(_faststore_ui__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
958
- ref: searchRef,
959
- visibleDropdown: searchDropdownVisible,
960
- onSearchSelection: onSearchSelection,
961
- term: searchQueryDeferred,
962
- terms: terms,
963
- products: products,
964
- isLoading: isLoading,
965
- children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx(_faststore_ui__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, _objectSpread({
966
- ref: ref,
967
- buttonProps: {
968
- onClick: onSearchClick,
969
- testId: buttonTestId
970
- },
971
- placeholder: "Search everything at the store",
972
- onChange: e => setSearchQuery(e.target.value),
973
- onSubmit: term => {
974
- const path = (0,src_sdk_search_formatSearchPath__WEBPACK_IMPORTED_MODULE_9__/* .formatSearchPath */ .u)({
975
- term,
976
- sort: sort
977
- });
978
- onSearchSelection(term, path);
979
- router.push(path);
980
- },
981
- onFocus: () => setSearchDropdownVisible(true),
982
- value: searchQuery
983
- }, otherProps)), searchDropdownVisible && /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx(react__WEBPACK_IMPORTED_MODULE_1__.Suspense, {
984
- fallback: null,
985
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx(SearchDropdown, {
986
- sort: sort
987
- })
988
- })]
989
- });
990
- });
991
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchInput);
992
- __webpack_async_result__();
993
- } catch(e) { __webpack_async_result__(e); } });
994
-
995
- /***/ }),
996
-
997
- /***/ 60475:
998
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
999
-
1000
- "use strict";
1001
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1002
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1003
- /* harmony export */ "Z": () => (/* reexport safe */ _SearchInput__WEBPACK_IMPORTED_MODULE_0__.Z)
1004
- /* harmony export */ });
1005
- /* harmony import */ var _SearchInput__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(79471);
1006
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_SearchInput__WEBPACK_IMPORTED_MODULE_0__]);
1007
- _SearchInput__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1008
-
1009
- __webpack_async_result__();
1010
- } catch(e) { __webpack_async_result__(e); } });
1011
-
1012
- /***/ }),
1013
-
1014
- /***/ 2865:
1015
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1016
-
1017
- "use strict";
1018
-
1019
- // EXPORTS
1020
- __webpack_require__.d(__webpack_exports__, {
1021
- "Z": () => (/* reexport */ sections_Alert_Alert)
1022
- });
1023
-
1024
- // EXTERNAL MODULE: external "react"
1025
- var external_react_ = __webpack_require__(16689);
1026
- // EXTERNAL MODULE: ./src/sdk/tests/mark.tsx
1027
- var mark = __webpack_require__(82541);
1028
- // EXTERNAL MODULE: ./src/components/sections/Section/Section.tsx
1029
- var Section = __webpack_require__(13271);
1030
- // EXTERNAL MODULE: ./src/components/common/Alert/section.module.scss
1031
- var section_module = __webpack_require__(77651);
1032
- var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
1033
- // EXTERNAL MODULE: ../components/dist/molecules/Alert/Alert.js
1034
- var Alert = __webpack_require__(11584);
1035
- // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
1036
- var Icon = __webpack_require__(82185);
1037
- // EXTERNAL MODULE: ./src/utils/overrides.ts
1038
- var overrides = __webpack_require__(59104);
1039
- ;// CONCATENATED MODULE: ./src/customizations/components/overrides/Alert.tsx
1040
- // This is an example of how it can be used on the starter.
1041
- const SECTION = 'Alert';
1042
- const override = {
1043
- section: SECTION
1044
- };
1045
-
1046
- ;// CONCATENATED MODULE: ./src/components/sections/Alert/Overrides.tsx
1047
-
1048
-
1049
-
1050
- const {
1051
- Alert: Overrides_Alert,
1052
- Icon: Overrides_Icon
1053
- } = (0,overrides/* getSectionOverrides */.f)({
1054
- Alert: Alert/* default */.Z,
1055
- Icon: Icon/* default */.Z
1056
- }, override);
1057
-
1058
- // EXTERNAL MODULE: external "react/jsx-runtime"
1059
- var jsx_runtime_ = __webpack_require__(20997);
1060
- ;// CONCATENATED MODULE: ./src/components/common/Alert/Alert.tsx
1061
- const _excluded = ["content", "children"];
1062
-
1063
- 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; }
1064
-
1065
- 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; }
1066
-
1067
- 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; }
1068
-
1069
- 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; }
1070
-
1071
- 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; }
1072
-
1073
-
1074
-
1075
-
1076
-
1077
-
1078
-
1079
-
1080
- function Alert_Alert(_ref) {
1081
- let {
1082
- content,
1083
- children
1084
- } = _ref,
1085
- otherProps = _objectWithoutProperties(_ref, _excluded);
1086
-
1087
- const {
1088
- 0: displayAlert,
1089
- 1: setDisplayAlert
1090
- } = (0,external_react_.useState)(true);
1091
- const onAlertClose = (0,external_react_.useCallback)(() => setDisplayAlert(false), [setDisplayAlert]);
1092
-
1093
- if (displayAlert === false) {
1094
- return null;
1095
- }
1096
-
1097
- return /*#__PURE__*/jsx_runtime_.jsx(Section/* default */.Z, {
1098
- className: `${(section_module_default()).section} section-alert`,
1099
- children: /*#__PURE__*/jsx_runtime_.jsx(Overrides_Alert.Component, _objectSpread(_objectSpread({}, otherProps), {}, {
1100
- // Dynamic props, shouldn't be overridable
1101
- // This decision can be reviewed later if needed
1102
- onClose: onAlertClose,
1103
- children: content ?? children
1104
- }))
1105
- });
1106
- }
1107
-
1108
- Alert_Alert.displayName = 'Alert';
1109
- /* harmony default export */ const common_Alert_Alert = ((0,mark/* mark */.B)(Alert_Alert));
1110
- ;// CONCATENATED MODULE: ./src/components/common/Alert/index.ts
1111
-
1112
- ;// CONCATENATED MODULE: ./src/components/sections/Alert/Alert.tsx
1113
- function Alert_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; }
1114
-
1115
- function Alert_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? Alert_ownKeys(Object(source), !0).forEach(function (key) { Alert_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : Alert_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1116
-
1117
- function Alert_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; }
1118
-
1119
-
1120
-
1121
-
1122
-
1123
- // TODO: Change actionPath and actionLabel with Link
1124
- function Alert_Alert_Alert({
1125
- icon = Overrides_Icon.props.name,
1126
- content,
1127
- link: {
1128
- text = Overrides_Alert.props.link?.children,
1129
- to = Overrides_Alert.props.link?.href
1130
- },
1131
- dismissible = Overrides_Alert.props.dismissible
1132
- }) {
1133
- return /*#__PURE__*/jsx_runtime_.jsx(common_Alert_Alert, Alert_objectSpread(Alert_objectSpread({
1134
- icon: /*#__PURE__*/jsx_runtime_.jsx(Overrides_Icon.Component, Alert_objectSpread(Alert_objectSpread({}, Overrides_Icon.props), {}, {
1135
- name: icon
1136
- }))
1137
- }, Overrides_Alert.props), {}, {
1138
- link: Alert_objectSpread(Alert_objectSpread({}, Overrides_Alert.props.link ?? {}), {}, {
1139
- children: text,
1140
- href: to,
1141
- target: Overrides_Alert.props.link?.target ?? '_self'
1142
- }),
1143
- dismissible: dismissible,
1144
- children: content
1145
- }));
1146
- }
1147
-
1148
- /* harmony default export */ const sections_Alert_Alert = (Alert_Alert_Alert);
1149
- ;// CONCATENATED MODULE: ./src/components/sections/Alert/index.ts
1150
-
1151
-
1152
- /***/ }),
1153
-
1154
- /***/ 46752:
1155
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1156
-
1157
- "use strict";
1158
-
1159
- // EXPORTS
1160
- __webpack_require__.d(__webpack_exports__, {
1161
- "Z": () => (/* reexport */ sections_Footer_Footer)
1162
- });
1163
-
1164
- // EXTERNAL MODULE: external "react"
1165
- var external_react_ = __webpack_require__(16689);
1166
- // EXTERNAL MODULE: ../components/dist/atoms/List/List.js
1167
- var List = __webpack_require__(58823);
1168
- // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
1169
- var Icon = __webpack_require__(82185);
1170
- // EXTERNAL MODULE: ../components/dist/atoms/SROnly/SROnly.js
1171
- var SROnly = __webpack_require__(16672);
1172
- ;// CONCATENATED MODULE: ../components/dist/organisms/PaymentMethods/PaymentMethods.js
1173
-
1174
-
1175
- const PaymentMethods = (0,external_react_.forwardRef)(function PaymentMethods({ testId = 'fs-payment-methods', title, 'aria-label': ariaLabel = 'Payment Methods', flagList, ...otherProps }, ref) {
1176
- return (external_react_.createElement("div", { ref: ref, "data-fs-payment-methods": true, "data-testid": testId, ...otherProps },
1177
- !!title && external_react_.createElement("div", { "data-fs-payment-methods-title": true }, title),
1178
- external_react_.createElement(List/* default */.Z, { "data-fs-payment-methods-flags": true, "aria-label": title ? undefined : ariaLabel }, flagList.map(({ alt: text, icon: { icon } }, index) => (external_react_.createElement("li", { "data-fs-payment-methods-flag": true, key: `fs-payment-method-${index}-${text}` },
1179
- external_react_.createElement(Icon/* default */.Z, { width: 32, height: 22.5, name: icon }),
1180
- text && external_react_.createElement(SROnly/* default */.Z, { text: text })))))));
1181
- });
1182
- /* harmony default export */ const PaymentMethods_PaymentMethods = (PaymentMethods);
1183
- //# sourceMappingURL=PaymentMethods.js.map
1184
- // EXTERNAL MODULE: ./src/sdk/tests/mark.tsx
1185
- var mark = __webpack_require__(82541);
1186
- // EXTERNAL MODULE: external "react/jsx-runtime"
1187
- var jsx_runtime_ = __webpack_require__(20997);
1188
- ;// CONCATENATED MODULE: ./src/components/common/Footer/Footer.tsx
1189
-
1190
-
1191
- function FooterInfo({
1192
- children
1193
- }) {
1194
- return /*#__PURE__*/jsx_runtime_.jsx("div", {
1195
- "data-fs-footer-info": true,
1196
- children: children
1197
- });
1198
- }
1199
- function FooterNavigation({
1200
- children
1201
- }) {
1202
- return /*#__PURE__*/jsx_runtime_.jsx("div", {
1203
- "data-fs-footer-navigation": true,
1204
- children: children
1205
- });
1206
- }
1207
- function Footer({
1208
- children
1209
- }) {
1210
- return /*#__PURE__*/jsx_runtime_.jsx("footer", {
1211
- "data-fs-footer": true,
1212
- "data-fs-footer-social": true,
1213
- "data-fs-footer-incentives": true,
1214
- "data-fs-footer-payment-methods": true,
1215
- children: /*#__PURE__*/jsx_runtime_.jsx("div", {
1216
- "data-fs-content": "footer",
1217
- children: children
1218
- })
1219
- });
1220
- }
1221
- Footer.displayName = 'Footer';
1222
- /* harmony default export */ const Footer_Footer = ((0,mark/* mark */.B)(Footer));
1223
- // EXTERNAL MODULE: ../components/dist/molecules/Accordion/Accordion.js
1224
- var Accordion = __webpack_require__(93872);
1225
- // EXTERNAL MODULE: ../components/dist/molecules/Accordion/AccordionItem.js
1226
- var AccordionItem = __webpack_require__(96833);
1227
- // EXTERNAL MODULE: ../components/dist/molecules/Accordion/AccordionButton.js
1228
- var AccordionButton = __webpack_require__(81945);
1229
- // EXTERNAL MODULE: ../components/dist/molecules/Accordion/AccordionPanel.js
1230
- var AccordionPanel = __webpack_require__(5853);
1231
- // EXTERNAL MODULE: ./src/components/ui/Link/index.ts + 1 modules
1232
- var Link = __webpack_require__(51093);
1233
- ;// CONCATENATED MODULE: ./src/components/common/Footer/FooterLinks.tsx
1234
-
1235
-
1236
-
1237
-
1238
-
1239
-
1240
- function Links({
1241
- items
1242
- }) {
1243
- return /*#__PURE__*/jsx_runtime_.jsx(List/* default */.Z, {
1244
- children: items.map(item => /*#__PURE__*/jsx_runtime_.jsx("li", {
1245
- children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
1246
- variant: "display",
1247
- size: "small",
1248
- href: item.url,
1249
- children: item.text
1250
- })
1251
- }, item.text))
1252
- });
1253
- }
1254
-
1255
- function FooterLinks({
1256
- links
1257
- }) {
1258
- const {
1259
- 0: indicesExpanded,
1260
- 1: setIndicesExpanded
1261
- } = (0,external_react_.useState)(new Set([]));
1262
-
1263
- const onChange = index => {
1264
- if (indicesExpanded.has(index)) {
1265
- indicesExpanded.delete(index);
1266
- setIndicesExpanded(new Set(indicesExpanded));
1267
- } else {
1268
- setIndicesExpanded(new Set(indicesExpanded.add(index)));
1269
- }
1270
- };
1271
-
1272
- return /*#__PURE__*/(0,jsx_runtime_.jsxs)("section", {
1273
- "data-fs-footer": true,
1274
- "data-fs-footer-links": true,
1275
- children: [/*#__PURE__*/jsx_runtime_.jsx("div", {
1276
- className: "display-mobile",
1277
- children: /*#__PURE__*/jsx_runtime_.jsx(Accordion/* default */.Z, {
1278
- indices: indicesExpanded,
1279
- onChange: onChange,
1280
- children: links.map(({
1281
- sectionTitle,
1282
- items
1283
- }) => /*#__PURE__*/(0,jsx_runtime_.jsxs)(AccordionItem/* default */.Z, {
1284
- children: [/*#__PURE__*/jsx_runtime_.jsx(AccordionButton/* default */.Z, {
1285
- children: sectionTitle
1286
- }), /*#__PURE__*/jsx_runtime_.jsx(AccordionPanel/* default */.Z, {
1287
- children: /*#__PURE__*/jsx_runtime_.jsx(Links, {
1288
- items: items
1289
- })
1290
- })]
1291
- }, sectionTitle))
1292
- })
1293
- }), /*#__PURE__*/jsx_runtime_.jsx("div", {
1294
- className: "hidden-mobile",
1295
- children: /*#__PURE__*/jsx_runtime_.jsx("nav", {
1296
- "data-fs-footer-links-columns": true,
1297
- children: links.map(({
1298
- sectionTitle,
1299
- items
1300
- }) => /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
1301
- children: [/*#__PURE__*/jsx_runtime_.jsx("p", {
1302
- "data-fs-footer-links-title": true,
1303
- children: sectionTitle
1304
- }), /*#__PURE__*/jsx_runtime_.jsx(Links, {
1305
- items: items
1306
- })]
1307
- }, sectionTitle))
1308
- })
1309
- })]
1310
- });
1311
- }
1312
-
1313
- /* harmony default export */ const Footer_FooterLinks = (FooterLinks);
1314
- ;// CONCATENATED MODULE: ./src/components/common/Footer/FooterSocial.tsx
1315
-
1316
-
1317
-
1318
-
1319
-
1320
- function FooterSocial({
1321
- title,
1322
- links
1323
- }) {
1324
- return /*#__PURE__*/(0,jsx_runtime_.jsxs)("section", {
1325
- "data-fs-footer-social": true,
1326
- children: [/*#__PURE__*/jsx_runtime_.jsx("p", {
1327
- "data-fs-footer-social-title": true,
1328
- children: title
1329
- }), /*#__PURE__*/jsx_runtime_.jsx(List/* default */.Z, {
1330
- children: links.map(({
1331
- icon: {
1332
- icon
1333
- },
1334
- url
1335
- }) => /*#__PURE__*/jsx_runtime_.jsx("li", {
1336
- children: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
1337
- href: url,
1338
- title: icon,
1339
- size: "small",
1340
- target: "_blank",
1341
- variant: "display",
1342
- rel: "noopener noreferrer",
1343
- children: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
1344
- name: icon
1345
- })
1346
- })
1347
- }, icon))
1348
- })]
1349
- });
1350
- }
1351
-
1352
- /* harmony default export */ const Footer_FooterSocial = (FooterSocial);
1353
- ;// CONCATENATED MODULE: ./src/components/common/Footer/index.ts
1354
-
1355
-
1356
-
1357
-
1358
- // EXTERNAL MODULE: ./src/components/ui/Logo/index.ts + 1 modules
1359
- var Logo = __webpack_require__(25811);
1360
- // EXTERNAL MODULE: ./src/components/ui/Incentives/Incentives.tsx + 1 modules
1361
- var Incentives = __webpack_require__(33571);
1362
- ;// CONCATENATED MODULE: ./src/components/ui/Incentives/index.ts
1363
-
1364
- // EXTERNAL MODULE: ./src/components/sections/Footer/section.module.scss
1365
- var section_module = __webpack_require__(75977);
1366
- var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
1367
- ;// CONCATENATED MODULE: ./src/components/sections/Footer/Footer.tsx
1368
-
1369
-
1370
-
1371
-
1372
-
1373
-
1374
-
1375
-
1376
- const Footer_Footer_Footer = ({
1377
- incentives,
1378
- footerLinks,
1379
- footerSocial,
1380
- footerSocial: {
1381
- title: footerSocialTitle
1382
- },
1383
- logo: {
1384
- src: logoSrc,
1385
- alt: logoAlt
1386
- },
1387
- copyrightInfo,
1388
- acceptedPaymentMethods: {
1389
- showPaymentMethods,
1390
- title: acceptedPaymentMethodsTitle,
1391
- paymentMethods
1392
- }
1393
- }) => {
1394
- return /*#__PURE__*/jsx_runtime_.jsx("footer", {
1395
- className: `section ${(section_module_default()).section} section-footer`,
1396
- children: /*#__PURE__*/(0,jsx_runtime_.jsxs)(Footer_Footer, {
1397
- children: [/*#__PURE__*/jsx_runtime_.jsx(Incentives/* default */.Z, {
1398
- incentives: incentives
1399
- }), /*#__PURE__*/(0,jsx_runtime_.jsxs)(FooterNavigation, {
1400
- children: [/*#__PURE__*/jsx_runtime_.jsx(Footer_FooterLinks, {
1401
- links: footerLinks
1402
- }), /*#__PURE__*/jsx_runtime_.jsx(Footer_FooterSocial, {
1403
- title: footerSocialTitle,
1404
- links: footerSocial.socialLinks
1405
- })]
1406
- }), /*#__PURE__*/(0,jsx_runtime_.jsxs)(FooterInfo, {
1407
- children: [/*#__PURE__*/jsx_runtime_.jsx(Logo/* default */.Z, {
1408
- alt: logoAlt,
1409
- src: logoSrc
1410
- }), showPaymentMethods && /*#__PURE__*/jsx_runtime_.jsx(PaymentMethods_PaymentMethods, {
1411
- flagList: paymentMethods,
1412
- title: /*#__PURE__*/jsx_runtime_.jsx("p", {
1413
- children: acceptedPaymentMethodsTitle
1414
- })
1415
- }), /*#__PURE__*/jsx_runtime_.jsx("div", {
1416
- "data-fs-footer-copyright": true,
1417
- className: "text__legend",
1418
- children: /*#__PURE__*/jsx_runtime_.jsx("p", {
1419
- children: copyrightInfo
1420
- })
1421
- })]
1422
- })]
1423
- })
1424
- });
1425
- };
1426
-
1427
- /* harmony default export */ const sections_Footer_Footer = (Footer_Footer_Footer);
1428
- ;// CONCATENATED MODULE: ./src/components/sections/Footer/index.ts
1429
-
1430
-
1431
- /***/ }),
1432
-
1433
- /***/ 46696:
1434
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
1435
-
1436
- "use strict";
1437
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1438
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1439
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1440
- /* harmony export */ });
1441
- /* harmony import */ var _Section__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(57067);
1442
- /* harmony import */ var _section_module_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(96837);
1443
- /* harmony import */ var _section_module_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_section_module_scss__WEBPACK_IMPORTED_MODULE_3__);
1444
- /* harmony import */ var src_components_navigation_Navbar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3583);
1445
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(20997);
1446
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__);
1447
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_components_navigation_Navbar__WEBPACK_IMPORTED_MODULE_1__]);
1448
- src_components_navigation_Navbar__WEBPACK_IMPORTED_MODULE_1__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1449
-
1450
-
1451
-
1452
-
1453
-
1454
- function NavbarSection({
1455
- logo,
1456
- searchInput,
1457
- cartIcon,
1458
- signInButton,
1459
- navigation: {
1460
- menu,
1461
- home,
1462
- pageLinks,
1463
- regionalization: {
1464
- label: regionLabel,
1465
- icon: {
1466
- icon: regionIcon
1467
- },
1468
- enabled: shouldDisplayRegion
1469
- }
1470
- }
1471
- }) {
1472
- return /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx(_Section__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z, {
1473
- className: `${(_section_module_scss__WEBPACK_IMPORTED_MODULE_3___default().section)} section-navbar`,
1474
- children: /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx(src_components_navigation_Navbar__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, {
1475
- home: home,
1476
- menu: menu,
1477
- logo: logo,
1478
- searchInput: searchInput,
1479
- cart: cartIcon,
1480
- links: pageLinks,
1481
- signIn: {
1482
- button: signInButton
1483
- },
1484
- region: {
1485
- icon: regionIcon,
1486
- label: regionLabel,
1487
- shouldDisplayRegion
1488
- }
1489
- })
1490
- });
1491
- }
1492
-
1493
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NavbarSection);
1494
- __webpack_async_result__();
1495
- } catch(e) { __webpack_async_result__(e); } });
1496
-
1497
- /***/ }),
1498
-
1499
- /***/ 75831:
1500
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1501
-
1502
- "use strict";
1503
-
1504
- // EXPORTS
1505
- __webpack_require__.d(__webpack_exports__, {
1506
- "hU": () => (/* binding */ Overrides_IconButton),
1507
- "wp": () => (/* binding */ Overrides_Navbar),
1508
- "Dh": () => (/* binding */ Overrides_NavbarButtons),
1509
- "fs": () => (/* binding */ Overrides_NavbarHeader),
1510
- "re": () => (/* binding */ Overrides_NavbarLinks),
1511
- "iy": () => (/* binding */ Overrides_NavbarLinksList),
1512
- "JA": () => (/* binding */ Overrides_NavbarRow),
1513
- "XF": () => (/* binding */ Overrides_NavbarSlider),
1514
- "Ko": () => (/* binding */ Overrides_NavbarSliderContent),
1515
- "$6": () => (/* binding */ Overrides_NavbarSliderFooter),
1516
- "Bl": () => (/* binding */ Overrides_NavbarSliderHeader)
1517
- });
1518
-
1519
- // EXTERNAL MODULE: external "react"
1520
- var external_react_ = __webpack_require__(16689);
1521
- ;// CONCATENATED MODULE: ../components/dist/organisms/Navbar/Navbar.js
1522
-
1523
- const Navbar = (0,external_react_.forwardRef)(function Navbar({ children, scrollDirection, testId = 'fs-navbar', ...otherProps }, ref) {
1524
- return (external_react_.createElement("header", { "data-fs-navbar": true, role: "banner", "data-fs-navbar-scroll": scrollDirection, ref: ref, "data-testid": testId, ...otherProps }, children));
1525
- });
1526
- /* harmony default export */ const Navbar_Navbar = (Navbar);
1527
- //# sourceMappingURL=Navbar.js.map
1528
- ;// CONCATENATED MODULE: ../components/dist/molecules/NavbarLinks/NavbarLinks.js
1529
-
1530
- const NavbarLinks = (0,external_react_.forwardRef)(function NavbarLinks({ children, testId = 'fs-navbar-links', ...otherProps }, ref) {
1531
- return (external_react_.createElement("nav", { "data-fs-navbar-links": true, ref: ref, "data-testid": testId, ...otherProps }, children));
1532
- });
1533
- /* harmony default export */ const NavbarLinks_NavbarLinks = (NavbarLinks);
1534
- //# sourceMappingURL=NavbarLinks.js.map
1535
- // EXTERNAL MODULE: ../components/dist/atoms/List/List.js
1536
- var List = __webpack_require__(58823);
1537
- ;// CONCATENATED MODULE: ../components/dist/molecules/NavbarLinks/NavbarLinksList.js
1538
-
1539
-
1540
- const NavbarLinksList = (0,external_react_.forwardRef)(function NavbarLinksList({ children, testId = 'fs-navbar-links-list', ...otherProps }, ref) {
1541
- return (external_react_.createElement(List/* default */.Z, { "data-fs-navbar-links-list": true, ref: ref, "data-testid": testId, ...otherProps }, children));
1542
- });
1543
- /* harmony default export */ const NavbarLinks_NavbarLinksList = (NavbarLinksList);
1544
- //# sourceMappingURL=NavbarLinksList.js.map
1545
- // EXTERNAL MODULE: ../components/dist/organisms/SlideOver/SlideOver.js
1546
- var SlideOver = __webpack_require__(95631);
1547
- ;// CONCATENATED MODULE: ../components/dist/organisms/NavbarSlider/NavbarSlider.js
1548
-
1549
-
1550
- function NavbarSlider({ children, size = 'full', isOpen = true, direction = 'leftSide', testId = 'fs-navbar-slider', ...otherProps }) {
1551
- return (external_react_.createElement(SlideOver/* default */.Z, { "data-fs-navbar-slider": true, size: size, isOpen: isOpen, direction: direction, "data-testid": testId, ...otherProps }, children));
1552
- }
1553
- /* harmony default export */ const NavbarSlider_NavbarSlider = (NavbarSlider);
1554
- //# sourceMappingURL=NavbarSlider.js.map
1555
- // EXTERNAL MODULE: ../components/dist/organisms/SlideOver/SlideOverHeader.js
1556
- var SlideOverHeader = __webpack_require__(53925);
1557
- ;// CONCATENATED MODULE: ../components/dist/organisms/NavbarSlider/NavbarSliderHeader.js
1558
-
1559
-
1560
- function NavbarSliderHeader({ children, testId = 'fs-navbar-slider-header', ...otherProps }) {
1561
- return (external_react_.createElement(SlideOverHeader/* default */.Z, { "data-fs-navbar-slider-header": true, "data-testid": testId, ...otherProps }, children));
1562
- }
1563
- /* harmony default export */ const NavbarSlider_NavbarSliderHeader = (NavbarSliderHeader);
1564
- //# sourceMappingURL=NavbarSliderHeader.js.map
1565
- ;// CONCATENATED MODULE: ../components/dist/organisms/NavbarSlider/NavbarSliderContent.js
1566
-
1567
- const NavbarSliderContent = (0,external_react_.forwardRef)(function NavbarSliderContent({ children, testId = 'fs-navbar-slider-content', ...otherProps }, ref) {
1568
- return (external_react_.createElement("div", { "data-fs-navbar-slider-content": true, ref: ref, "data-testid": testId, ...otherProps }, children));
1569
- });
1570
- /* harmony default export */ const NavbarSlider_NavbarSliderContent = (NavbarSliderContent);
1571
- //# sourceMappingURL=NavbarSliderContent.js.map
1572
- ;// CONCATENATED MODULE: ../components/dist/organisms/NavbarSlider/NavbarSliderFooter.js
1573
-
1574
- const NavbarSliderFooter = (0,external_react_.forwardRef)(function NavbarSliderFooter({ children, testId = 'fs-navbar-slider-footer', ...otherProps }, ref) {
1575
- return (external_react_.createElement("footer", { "data-fs-navbar-slider-footer": true, ref: ref, "data-testid": testId, ...otherProps }, children));
1576
- });
1577
- /* harmony default export */ const NavbarSlider_NavbarSliderFooter = (NavbarSliderFooter);
1578
- //# sourceMappingURL=NavbarSliderFooter.js.map
1579
- ;// CONCATENATED MODULE: ../components/dist/organisms/Navbar/NavbarHeader.js
1580
-
1581
- const NavbarHeader = (0,external_react_.forwardRef)(function NavbarHeader({ children, testId = 'fs-navbar-header', ...otherProps }, ref) {
1582
- return (external_react_.createElement("section", { "data-fs-navbar-header": true, ref: ref, "data-testid": testId, ...otherProps }, children));
1583
- });
1584
- /* harmony default export */ const Navbar_NavbarHeader = (NavbarHeader);
1585
- //# sourceMappingURL=NavbarHeader.js.map
1586
- ;// CONCATENATED MODULE: ../components/dist/organisms/Navbar/NavbarRow.js
1587
-
1588
- const NavbarRow = (0,external_react_.forwardRef)(function NavbarRow({ children, testId = 'fs-navbar-row', ...otherProps }, ref) {
1589
- return (external_react_.createElement("div", { "data-fs-navbar-row": true, "data-fs-content": "navbar", ref: ref, "data-testid": testId, ...otherProps }, children));
1590
- });
1591
- /* harmony default export */ const Navbar_NavbarRow = (NavbarRow);
1592
- //# sourceMappingURL=NavbarRow.js.map
1593
- ;// CONCATENATED MODULE: ../components/dist/organisms/Navbar/NavbarButtons.js
1594
-
1595
- const NavbarButtons = (0,external_react_.forwardRef)(function NavbarButtons({ children, searchExpanded, testId = 'fs-navbar-buttons', ...otherProps }, ref) {
1596
- return (external_react_.createElement("div", { "data-fs-navbar-buttons": true, ref: ref, "data-testid": testId, "data-fs-navbar-search-expanded": searchExpanded, ...otherProps }, children));
1597
- });
1598
- /* harmony default export */ const Navbar_NavbarButtons = (NavbarButtons);
1599
- //# sourceMappingURL=NavbarButtons.js.map
1600
- // EXTERNAL MODULE: ../components/dist/molecules/IconButton/IconButton.js
1601
- var IconButton = __webpack_require__(90518);
1602
- // EXTERNAL MODULE: ./src/utils/overrides.ts
1603
- var overrides = __webpack_require__(59104);
1604
- ;// CONCATENATED MODULE: ./src/customizations/components/overrides/Navbar.tsx
1605
- // This is an example of how it can be used on the starter.
1606
- const SECTION = 'Navbar';
1607
- const override = {
1608
- section: SECTION
1609
- };
1610
-
1611
- ;// CONCATENATED MODULE: ./src/components/sections/Navbar/Overrides.tsx
1612
-
1613
-
1614
-
1615
- const {
1616
- Navbar: Overrides_Navbar,
1617
- NavbarLinks: Overrides_NavbarLinks,
1618
- NavbarLinksList: Overrides_NavbarLinksList,
1619
- NavbarSlider: Overrides_NavbarSlider,
1620
- NavbarSliderHeader: Overrides_NavbarSliderHeader,
1621
- NavbarSliderContent: Overrides_NavbarSliderContent,
1622
- NavbarSliderFooter: Overrides_NavbarSliderFooter,
1623
- NavbarHeader: Overrides_NavbarHeader,
1624
- NavbarRow: Overrides_NavbarRow,
1625
- NavbarButtons: Overrides_NavbarButtons,
1626
- IconButton: Overrides_IconButton
1627
- } = (0,overrides/* getSectionOverrides */.f)({
1628
- Navbar: Navbar_Navbar,
1629
- NavbarLinks: NavbarLinks_NavbarLinks,
1630
- NavbarLinksList: NavbarLinks_NavbarLinksList,
1631
- NavbarSlider: NavbarSlider_NavbarSlider,
1632
- NavbarSliderHeader: NavbarSlider_NavbarSliderHeader,
1633
- NavbarSliderContent: NavbarSlider_NavbarSliderContent,
1634
- NavbarSliderFooter: NavbarSlider_NavbarSliderFooter,
1635
- NavbarHeader: Navbar_NavbarHeader,
1636
- NavbarRow: Navbar_NavbarRow,
1637
- NavbarButtons: Navbar_NavbarButtons,
1638
- IconButton: IconButton/* default */.Z
1639
- }, override);
1640
-
1641
-
1642
- /***/ }),
1643
-
1644
- /***/ 81868:
1645
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
1646
-
1647
- "use strict";
1648
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1649
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1650
- /* harmony export */ "Z": () => (/* reexport safe */ _Navbar__WEBPACK_IMPORTED_MODULE_0__.Z)
1651
- /* harmony export */ });
1652
- /* harmony import */ var _Navbar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(46696);
1653
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Navbar__WEBPACK_IMPORTED_MODULE_0__]);
1654
- _Navbar__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1655
-
1656
- __webpack_async_result__();
1657
- } catch(e) { __webpack_async_result__(e); } });
1658
-
1659
- /***/ }),
1660
-
1661
- /***/ 26687:
1662
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1663
-
1664
- "use strict";
1665
-
1666
- // EXPORTS
1667
- __webpack_require__.d(__webpack_exports__, {
1668
- "Z": () => (/* reexport */ sections_RegionBar_RegionBar)
1669
- });
1670
-
1671
- // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
1672
- var UIProvider = __webpack_require__(35728);
1673
- // EXTERNAL MODULE: ./src/sdk/session/index.ts + 1 modules
1674
- var session = __webpack_require__(97295);
1675
- // EXTERNAL MODULE: external "react"
1676
- var external_react_ = __webpack_require__(16689);
1677
- // EXTERNAL MODULE: ../components/dist/atoms/Button/Button.js
1678
- var Button = __webpack_require__(33815);
1679
- ;// CONCATENATED MODULE: ../components/dist/molecules/RegionBar/RegionBar.js
1680
-
1681
-
1682
- const RegionBar = (0,external_react_.forwardRef)(function RegionBar({ postalCode, icon, label, editLabel, buttonIcon, onButtonClick, ...otherProps }, ref) {
1683
- return (external_react_.createElement("div", { ref: ref, "data-fs-region-bar": true, ...otherProps },
1684
- external_react_.createElement(Button/* default */.Z, { variant: "tertiary", iconPosition: "right", onClick: onButtonClick, icon: buttonIcon },
1685
- !!icon && icon,
1686
- postalCode ? (external_react_.createElement(external_react_.Fragment, null,
1687
- external_react_.createElement("span", { "data-fs-region-bar-postal-code": true }, postalCode),
1688
- !!editLabel && external_react_.createElement("span", { "data-fs-region-bar-cta": true }, editLabel))) : (external_react_.createElement("span", { "data-fs-region-bar-message": true }, label)))));
1689
- });
1690
- /* harmony default export */ const RegionBar_RegionBar = (RegionBar);
1691
- //# sourceMappingURL=RegionBar.js.map
1692
- // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
1693
- var Icon = __webpack_require__(82185);
1694
- // EXTERNAL MODULE: ./src/utils/overrides.ts
1695
- var overrides = __webpack_require__(59104);
1696
- ;// CONCATENATED MODULE: ./src/customizations/components/overrides/RegionBar.tsx
1697
- // This is an example of how it can be used on the starter.
1698
- const SECTION = 'RegionBar';
1699
- const override = {
1700
- section: SECTION
1701
- };
1702
-
1703
- ;// CONCATENATED MODULE: ./src/components/sections/RegionBar/Overrides.tsx
1704
-
1705
-
1706
-
1707
- const {
1708
- RegionBar: Overrides_RegionBar,
1709
- LocationIcon,
1710
- ButtonIcon
1711
- } = (0,overrides/* getSectionOverrides */.f)({
1712
- RegionBar: RegionBar_RegionBar,
1713
- LocationIcon: Icon/* default */.Z,
1714
- ButtonIcon: Icon/* default */.Z
1715
- }, override);
1716
-
1717
- // EXTERNAL MODULE: external "react/jsx-runtime"
1718
- var jsx_runtime_ = __webpack_require__(20997);
1719
- ;// CONCATENATED MODULE: ./src/components/region/RegionBar/RegionBar.tsx
1720
- const _excluded = ["icon", "buttonIcon", "label", "editLabel"];
1721
-
1722
- 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; }
1723
-
1724
- 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; }
1725
-
1726
- 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; }
1727
-
1728
- 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; }
1729
-
1730
- 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; }
1731
-
1732
-
1733
-
1734
-
1735
-
1736
-
1737
- function RegionBar_RegionBar_RegionBar(_ref) {
1738
- let {
1739
- icon: {
1740
- icon: locationIcon = LocationIcon.props.name,
1741
- alt: locationIconAlt = LocationIcon.props["aria-label"]
1742
- },
1743
- buttonIcon: {
1744
- icon: buttonIcon = ButtonIcon.props.name,
1745
- alt: buttonIconAlt = ButtonIcon.props["aria-label"]
1746
- },
1747
- label = Overrides_RegionBar.props.label,
1748
- editLabel = Overrides_RegionBar.props.editLabel
1749
- } = _ref,
1750
- otherProps = _objectWithoutProperties(_ref, _excluded);
1751
-
1752
- const {
1753
- openModal
1754
- } = (0,UIProvider/* useUI */.l)();
1755
- const {
1756
- postalCode
1757
- } = (0,session/* useSession */.kP)();
1758
- return /*#__PURE__*/jsx_runtime_.jsx(Overrides_RegionBar.Component, _objectSpread(_objectSpread({
1759
- icon: /*#__PURE__*/jsx_runtime_.jsx(LocationIcon.Component, _objectSpread(_objectSpread({}, LocationIcon.props), {}, {
1760
- name: locationIcon,
1761
- "aria-label": locationIconAlt
1762
- })),
1763
- buttonIcon: /*#__PURE__*/jsx_runtime_.jsx(ButtonIcon.Component, _objectSpread(_objectSpread({}, ButtonIcon.props), {}, {
1764
- name: buttonIcon,
1765
- "aria-label": buttonIconAlt
1766
- }))
1767
- }, Overrides_RegionBar.props), {}, {
1768
- label: label,
1769
- editLabel: editLabel // Dynamic props shouldn't be overridable
1770
- // This decision can be reviewed later if needed
1771
- ,
1772
- onButtonClick: openModal,
1773
- postalCode: postalCode
1774
- }, otherProps));
1775
- }
1776
-
1777
- /* harmony default export */ const region_RegionBar_RegionBar = (RegionBar_RegionBar_RegionBar);
1778
- // EXTERNAL MODULE: ./src/components/sections/Section/Section.tsx
1779
- var Section = __webpack_require__(13271);
1780
- // EXTERNAL MODULE: ./src/components/sections/RegionBar/section.module.scss
1781
- var section_module = __webpack_require__(53472);
1782
- var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
1783
- ;// CONCATENATED MODULE: ./src/components/sections/RegionBar/RegionBar.tsx
1784
- const RegionBar_excluded = ["className"];
1785
-
1786
- function RegionBar_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; }
1787
-
1788
- function RegionBar_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? RegionBar_ownKeys(Object(source), !0).forEach(function (key) { RegionBar_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : RegionBar_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1789
-
1790
- function RegionBar_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; }
1791
-
1792
- function RegionBar_objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = RegionBar_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; }
1793
-
1794
- function RegionBar_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; }
1795
-
1796
-
1797
-
1798
-
1799
-
1800
-
1801
- function RegionBarSection(_ref) {
1802
- let {
1803
- className = 'display-mobile'
1804
- } = _ref,
1805
- otherProps = RegionBar_objectWithoutProperties(_ref, RegionBar_excluded);
1806
-
1807
- return /*#__PURE__*/jsx_runtime_.jsx(Section/* default */.Z, {
1808
- className: `${(section_module_default()).section} section-region-bar ${className}`,
1809
- children: /*#__PURE__*/jsx_runtime_.jsx(region_RegionBar_RegionBar, RegionBar_objectSpread({}, otherProps))
1810
- });
1811
- }
1812
-
1813
- /* harmony default export */ const sections_RegionBar_RegionBar = (RegionBarSection);
1814
- ;// CONCATENATED MODULE: ./src/components/sections/RegionBar/index.ts
1815
-
1816
-
1817
- /***/ }),
1818
-
1819
- /***/ 13271:
1820
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1821
-
1822
- "use strict";
1823
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1824
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1825
- /* harmony export */ });
1826
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
1827
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1828
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(20997);
1829
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__);
1830
- const _excluded = ["as", "className"];
1831
-
1832
- 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; }
1833
-
1834
- 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; }
1835
-
1836
- 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; }
1837
-
1838
- 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; }
1839
-
1840
- 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; }
1841
-
1842
-
1843
-
1844
- const Section = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Section(_ref, ref) {
1845
- let {
1846
- as,
1847
- className = ''
1848
- } = _ref,
1849
- otherProps = _objectWithoutProperties(_ref, _excluded);
1850
-
1851
- const Component = as ?? 'section';
1852
- return /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx(Component, _objectSpread({
1853
- ref: ref,
1854
- className: `section ${className}`
1855
- }, otherProps));
1856
- });
1857
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Section);
1858
-
1859
- /***/ }),
1860
-
1861
- /***/ 57067:
1862
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1863
-
1864
- "use strict";
1865
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1866
- /* harmony export */ "Z": () => (/* reexport safe */ _Section__WEBPACK_IMPORTED_MODULE_0__.Z)
1867
- /* harmony export */ });
1868
- /* harmony import */ var _Section__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13271);
1869
-
1870
-
1871
- /***/ }),
1872
-
1873
- /***/ 57758:
1874
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1875
-
1876
- "use strict";
1877
-
1878
- // EXPORTS
1879
- __webpack_require__.d(__webpack_exports__, {
1880
- "p": () => (/* reexport */ ButtonSignIn_ButtonSignIn),
1881
- "A": () => (/* reexport */ ButtonSignInFallback_ButtonSignInFallback)
1882
- });
1883
-
1884
- // EXTERNAL MODULE: ../components/dist/molecules/LinkButton/LinkButton.js
1885
- var LinkButton = __webpack_require__(46481);
1886
- // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
1887
- var Icon = __webpack_require__(82185);
1888
- // EXTERNAL MODULE: ./src/sdk/session/index.ts + 1 modules
1889
- var session = __webpack_require__(97295);
1890
- // EXTERNAL MODULE: ./src/sdk/cart/index.ts + 1 modules
1891
- var cart = __webpack_require__(46073);
1892
- // EXTERNAL MODULE: external "react/jsx-runtime"
1893
- var jsx_runtime_ = __webpack_require__(20997);
1894
- ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/ButtonSignIn.tsx
1895
-
1896
-
1897
-
1898
-
1899
-
1900
- const ButtonSignIn = ({
1901
- label,
1902
- myAccountLabel,
1903
- icon: {
1904
- alt,
1905
- icon
1906
- }
1907
- }) => {
1908
- const {
1909
- id
1910
- } = (0,cart/* useCart */.jD)();
1911
- const {
1912
- person
1913
- } = (0,session/* useSession */.kP)();
1914
- return /*#__PURE__*/jsx_runtime_.jsx(LinkButton/* default */.Z, {
1915
- "data-fs-button-signin-link": true,
1916
- href: person?.id ? `/account?orderFormId=${id}` : `/login?orderFormId=${id}`,
1917
- className: "text__title-mini",
1918
- "aria-label": alt,
1919
- variant: "tertiary",
1920
- icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
1921
- name: icon,
1922
- width: 18,
1923
- height: 18,
1924
- weight: "bold"
1925
- }),
1926
- iconPosition: "left",
1927
- children: person?.id ? myAccountLabel : label
1928
- });
1929
- };
1930
-
1931
- /* harmony default export */ const ButtonSignIn_ButtonSignIn = (ButtonSignIn);
1932
- ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/index.ts
1933
-
1934
- ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/ButtonSignInFallback/ButtonSignInFallback.tsx
1935
-
1936
-
1937
-
1938
- function ButtonSignInFallback() {
1939
- return /*#__PURE__*/jsx_runtime_.jsx(LinkButton/* default */.Z, {
1940
- "data-fs-button-signin-link": true,
1941
- href: "/login",
1942
- className: "text__title-mini",
1943
- variant: "tertiary",
1944
- icon: /*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
1945
- name: "User",
1946
- width: 18,
1947
- height: 18,
1948
- weight: "bold"
1949
- }),
1950
- iconPosition: "left",
1951
- children: /*#__PURE__*/jsx_runtime_.jsx("span", {
1952
- children: 'Sign In'
1953
- })
1954
- });
1955
- }
1956
-
1957
- /* harmony default export */ const ButtonSignInFallback_ButtonSignInFallback = (ButtonSignInFallback);
1958
- ;// CONCATENATED MODULE: ./src/components/ui/Button/ButtonSignIn/ButtonSignInFallback/index.ts
1959
-
1960
- ;// CONCATENATED MODULE: ./src/components/ui/Button/index.ts
1961
-
1962
-
1963
-
1964
- /***/ }),
1965
-
1966
- /***/ 79266:
1967
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1968
-
1969
- "use strict";
1970
-
1971
- // EXPORTS
1972
- __webpack_require__.d(__webpack_exports__, {
1973
- "E": () => (/* reexport */ Image_Image)
1974
- });
1975
-
1976
- // EXTERNAL MODULE: external "react"
1977
- var external_react_ = __webpack_require__(16689);
1978
- // EXTERNAL MODULE: ./node_modules/next/future/image.js
1979
- var future_image = __webpack_require__(61608);
1980
- var image_default = /*#__PURE__*/__webpack_require__.n(future_image);
1981
- // EXTERNAL MODULE: ./faststore.config.js
1982
- var faststore_config = __webpack_require__(97183);
1983
- var faststore_config_default = /*#__PURE__*/__webpack_require__.n(faststore_config);
1984
- ;// CONCATENATED MODULE: ./src/components/ui/Image/loader.ts
1985
-
1986
- const THUMBOR_SERVER = `https://${(faststore_config_default()).api.storeId}.vtexassets.com`;
1987
- function customImageLoader({
1988
- src,
1989
- width,
1990
- quality
1991
- }) {
1992
- const preSizeComponents = [THUMBOR_SERVER, 'unsafe']; // proportional to the width, enter a height of 0,
1993
-
1994
- const height = 0;
1995
- const finalSize = `${width}x${height}`;
1996
- const postSizeComponents = ['center', 'middle'];
1997
- quality && postSizeComponents.push(`filters:quality(${quality || 80})`);
1998
- postSizeComponents.push(encodeURIComponent(src));
1999
- return [...preSizeComponents, finalSize, ...postSizeComponents].join('/');
2000
- }
2001
- // EXTERNAL MODULE: external "react/jsx-runtime"
2002
- var jsx_runtime_ = __webpack_require__(20997);
2003
- ;// CONCATENATED MODULE: ./src/components/ui/Image/Image.tsx
2004
- const _excluded = ["loading"];
2005
-
2006
- 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; }
2007
-
2008
- 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; }
2009
-
2010
- 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; }
2011
-
2012
- 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; }
2013
-
2014
- 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; }
2015
-
2016
-
2017
-
2018
-
2019
-
2020
-
2021
- // Next loader function does not handle all props as height and options
2022
- // so we use a custom loader to handle images using thumbor server with VTEX CDN
2023
- // https://nextjs.org/docs/api-reference/next/image#loader
2024
- function Image(_ref) {
2025
- let {
2026
- loading = 'lazy'
2027
- } = _ref,
2028
- otherProps = _objectWithoutProperties(_ref, _excluded);
2029
-
2030
- return /*#__PURE__*/jsx_runtime_.jsx((image_default()), _objectSpread({
2031
- "data-fs-image": true,
2032
- loader: customImageLoader,
2033
- loading: loading,
2034
- priority: loading === 'eager'
2035
- }, otherProps));
2036
- }
2037
-
2038
- Image.displayName = 'Image';
2039
- /* harmony default export */ const Image_Image = (/*#__PURE__*/(0,external_react_.memo)(Image));
2040
- ;// CONCATENATED MODULE: ./src/components/ui/Image/index.ts
2041
-
2042
-
2043
- /***/ }),
2044
-
2045
- /***/ 33571:
2046
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2047
-
2048
- "use strict";
2049
-
2050
- // EXPORTS
2051
- __webpack_require__.d(__webpack_exports__, {
2052
- "Z": () => (/* binding */ Incentives_Incentives)
2053
- });
2054
-
2055
- // EXTERNAL MODULE: ../components/dist/atoms/List/List.js
2056
- var List = __webpack_require__(58823);
2057
- // EXTERNAL MODULE: external "react"
2058
- var external_react_ = __webpack_require__(16689);
2059
- ;// CONCATENATED MODULE: ../ui/dist/components/atoms/Incentive/Incentive.js
2060
-
2061
- const Incentive = (0,external_react_.forwardRef)(function Incentive({ testId = 'store-incentive', children, ...otherProps }, ref) {
2062
- return (external_react_.createElement("div", { ref: ref, "data-fs-incentive": true, "data-testid": testId, ...otherProps }, children));
2063
- });
2064
- /* harmony default export */ const Incentive_Incentive = (Incentive);
2065
- //# sourceMappingURL=Incentive.js.map
2066
- // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
2067
- var Icon = __webpack_require__(82185);
2068
- // EXTERNAL MODULE: external "react/jsx-runtime"
2069
- var jsx_runtime_ = __webpack_require__(20997);
2070
- ;// CONCATENATED MODULE: ./src/components/ui/Incentives/Incentives.tsx
2071
-
2072
-
2073
-
2074
-
2075
- function Incentives({
2076
- incentives,
2077
- variant = 'horizontal',
2078
- colored = false
2079
- }) {
2080
- return /*#__PURE__*/jsx_runtime_.jsx("div", {
2081
- "data-fs-incentives": true,
2082
- "data-fs-incentives-colored": colored,
2083
- "data-fs-incentives-variant": variant,
2084
- children: /*#__PURE__*/jsx_runtime_.jsx(List/* default */.Z, {
2085
- "data-fs-content": "incentives",
2086
- children: incentives.map((incentive, index) => /*#__PURE__*/jsx_runtime_.jsx("li", {
2087
- role: "listitem",
2088
- children: /*#__PURE__*/(0,jsx_runtime_.jsxs)(Incentive_Incentive, {
2089
- tabIndex: 0,
2090
- children: [/*#__PURE__*/jsx_runtime_.jsx(Icon/* default */.Z, {
2091
- "data-fs-incentive-icon": true,
2092
- "aria-label": incentive.alt,
2093
- name: incentive.icon,
2094
- width: 32,
2095
- height: 32
2096
- }), /*#__PURE__*/(0,jsx_runtime_.jsxs)("div", {
2097
- "data-fs-incentive-content": true,
2098
- children: [/*#__PURE__*/jsx_runtime_.jsx("p", {
2099
- "data-fs-incentive-title": true,
2100
- children: incentive.title
2101
- }), /*#__PURE__*/jsx_runtime_.jsx("span", {
2102
- "data-fs-incentive-description": true,
2103
- children: incentive.firstLineText
2104
- }), incentive.secondLineText && /*#__PURE__*/jsx_runtime_.jsx("span", {
2105
- "data-fs-incentive-description": true,
2106
- children: incentive.secondLineText
2107
- })]
2108
- })]
2109
- })
2110
- }, String(index)))
2111
- })
2112
- });
2113
- }
2114
-
2115
- /* harmony default export */ const Incentives_Incentives = (Incentives);
2116
-
2117
- /***/ }),
2118
-
2119
- /***/ 51093:
2120
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2121
-
2122
- "use strict";
2123
-
2124
- // EXPORTS
2125
- __webpack_require__.d(__webpack_exports__, {
2126
- "Z": () => (/* reexport */ ui_Link_Link)
2127
- });
2128
-
2129
- // EXTERNAL MODULE: external "react"
2130
- var external_react_ = __webpack_require__(16689);
2131
- // EXTERNAL MODULE: ./node_modules/next/link.js
2132
- var next_link = __webpack_require__(41664);
2133
- var link_default = /*#__PURE__*/__webpack_require__.n(next_link);
2134
- // EXTERNAL MODULE: ../components/dist/atoms/Link/Link.js
2135
- var Link_Link = __webpack_require__(18595);
2136
- // EXTERNAL MODULE: external "react/jsx-runtime"
2137
- var jsx_runtime_ = __webpack_require__(20997);
2138
- ;// CONCATENATED MODULE: ./src/components/ui/Link/Link.tsx
2139
- const _excluded = ["href", "inverse", "children", "variant"];
2140
-
2141
- 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; }
2142
-
2143
- 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; }
2144
-
2145
- 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; }
2146
-
2147
- 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; }
2148
-
2149
- 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; }
2150
-
2151
-
2152
-
2153
-
2154
-
2155
- const Link = /*#__PURE__*/(0,external_react_.forwardRef)(function Link(_ref, ref) {
2156
- let {
2157
- href,
2158
- inverse,
2159
- children,
2160
- variant = 'default'
2161
- } = _ref,
2162
- otherProps = _objectWithoutProperties(_ref, _excluded);
2163
-
2164
- const isInternalLink = (0,external_react_.useMemo)(() => href[0] === '/' && href[1] !== '/', [href]);
2165
-
2166
- if (isInternalLink) {
2167
- return /*#__PURE__*/jsx_runtime_.jsx(Link_Link/* default */.Z, _objectSpread(_objectSpread({
2168
- as: (link_default()),
2169
- ref: ref,
2170
- variant: variant,
2171
- inverse: inverse,
2172
- passHref: true,
2173
- href: href,
2174
- legacyBehavior: false
2175
- }, otherProps), {}, {
2176
- children: children
2177
- }));
2178
- }
2179
-
2180
- return /*#__PURE__*/jsx_runtime_.jsx(Link_Link/* default */.Z, _objectSpread(_objectSpread({
2181
- ref: ref,
2182
- href: href,
2183
- variant: variant,
2184
- inverse: inverse
2185
- }, otherProps), {}, {
2186
- children: children
2187
- }));
2188
- });
2189
- /* harmony default export */ const ui_Link_Link = (Link);
2190
- ;// CONCATENATED MODULE: ./src/components/ui/Link/index.ts
2191
-
2192
-
2193
- /***/ }),
2194
-
2195
- /***/ 25811:
2196
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2197
-
2198
- "use strict";
2199
-
2200
- // EXPORTS
2201
- __webpack_require__.d(__webpack_exports__, {
2202
- "Z": () => (/* reexport */ Logo_Logo)
2203
- });
2204
-
2205
- // EXTERNAL MODULE: ./src/components/ui/Image/index.ts + 2 modules
2206
- var Image = __webpack_require__(79266);
2207
- // EXTERNAL MODULE: external "react/jsx-runtime"
2208
- var jsx_runtime_ = __webpack_require__(20997);
2209
- ;// CONCATENATED MODULE: ./src/components/ui/Logo/Logo.tsx
2210
-
2211
-
2212
-
2213
- function Logo({
2214
- alt,
2215
- src,
2216
- loading = 'lazy'
2217
- }) {
2218
- return /*#__PURE__*/jsx_runtime_.jsx("div", {
2219
- "data-fs-logo": true,
2220
- children: /*#__PURE__*/jsx_runtime_.jsx(Image/* Image */.E, {
2221
- alt: alt,
2222
- src: src,
2223
- width: 0,
2224
- height: 0,
2225
- sizes: "15vw",
2226
- loading: loading,
2227
- style: {
2228
- width: '100%',
2229
- height: 'auto'
2230
- }
2231
- })
2232
- });
2233
- }
2234
-
2235
- /* harmony default export */ const Logo_Logo = (Logo);
2236
- ;// CONCATENATED MODULE: ./src/components/ui/Logo/index.ts
2237
-
2238
-
2239
- /***/ }),
2240
-
2241
- /***/ 20859:
2242
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2243
-
2244
- "use strict";
2245
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2246
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2247
- /* harmony export */ });
2248
- // eslint-disable-next-line import/no-anonymous-default-export
2249
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({});
2250
-
2251
- /***/ }),
2252
-
2253
- /***/ 46073:
2254
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2255
-
2256
- "use strict";
2257
-
2258
- // EXPORTS
2259
- __webpack_require__.d(__webpack_exports__, {
2260
- "i8": () => (/* binding */ cartStore),
2261
- "jD": () => (/* binding */ useCart)
2262
- });
2263
-
2264
- // UNUSED EXPORTS: ValidateCartMutation
2265
-
2266
- // EXTERNAL MODULE: ../sdk/dist/utils/error.js
2267
- var error = __webpack_require__(12254);
2268
- // EXTERNAL MODULE: ../sdk/dist/store/composed.js + 4 modules
2269
- var composed = __webpack_require__(38283);
2270
- ;// CONCATENATED MODULE: ../sdk/dist/cart/index.js
2271
-
2272
-
2273
- const createCartStore = (defaultCart, onValidate, namespace = "fs::cart") => {
2274
- const store = (0,composed/* createStore */.M)(defaultCart, namespace, onValidate);
2275
- const addItem = (item) => {
2276
- if (!item.id) {
2277
- throw new error/* SDKError */.q("You must provide an `id` for items");
2278
- }
2279
- if (item.quantity < 0) {
2280
- throw new error/* SDKError */.q("Item quantity needs to be higher than zero");
2281
- }
2282
- const cart = store.read();
2283
- const currentItem = getItem(item.id);
2284
- const newItem = currentItem
2285
- ? {
2286
- ...item,
2287
- quantity: currentItem.quantity + item.quantity,
2288
- }
2289
- : item;
2290
- store.set({
2291
- ...cart,
2292
- items: currentItem
2293
- ? cart.items.map((item) => item === currentItem ? newItem : item)
2294
- : [...cart.items, newItem],
2295
- });
2296
- };
2297
- const updateItemQuantity = (id, quantity) => {
2298
- const cart = store.read();
2299
- const currentItem = getItem(id);
2300
- if (!currentItem) {
2301
- throw new error/* SDKError */.q(`Item with id not found: ${id}`);
2302
- }
2303
- const newItem = {
2304
- ...currentItem,
2305
- quantity,
2306
- };
2307
- store.set({
2308
- ...cart,
2309
- items: cart.items
2310
- .map((item) => item === currentItem ? newItem : item) // update item quantity
2311
- .filter((item) => item.quantity > 0), // remove items if quantity is <= 0
2312
- });
2313
- };
2314
- const removeItem = (id) => {
2315
- const cart = store.read();
2316
- const removed = getItem(id);
2317
- store.set({
2318
- ...cart,
2319
- items: cart.items.filter((item) => item !== removed),
2320
- });
2321
- };
2322
- const emptyCart = () => store.set({ ...store.read(), items: [] });
2323
- const getItem = (id) => store.read().items.find((item) => item.id === id);
2324
- const inCart = (id) => Boolean(getItem(id));
2325
- const isEmpty = () => store.read().items.length === 0;
2326
- return {
2327
- ...store,
2328
- getItem,
2329
- addItem,
2330
- updateItemQuantity,
2331
- removeItem,
2332
- emptyCart,
2333
- inCart,
2334
- isEmpty,
2335
- };
2336
- };
2337
- //# sourceMappingURL=index.js.map
2338
- // EXTERNAL MODULE: external "react"
2339
- var external_react_ = __webpack_require__(16689);
2340
- // EXTERNAL MODULE: ./faststore.config.js
2341
- var faststore_config = __webpack_require__(97183);
2342
- var faststore_config_default = /*#__PURE__*/__webpack_require__.n(faststore_config);
2343
- // EXTERNAL MODULE: ./src/sdk/graphql/request.ts
2344
- var request = __webpack_require__(180);
2345
- // EXTERNAL MODULE: ./src/sdk/session/index.ts + 1 modules
2346
- var session = __webpack_require__(97295);
2347
- // EXTERNAL MODULE: ./src/sdk/useStore.ts
2348
- var useStore = __webpack_require__(33818);
2349
- ;// CONCATENATED MODULE: ./src/sdk/cart/index.ts
2350
- 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; }
2351
-
2352
- 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; }
2353
-
2354
- 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; }
2355
-
2356
-
2357
-
2358
-
2359
-
2360
-
2361
-
2362
- const ValidateCartMutation = "ValidateCartMutation";
2363
-
2364
- const isGift = item => item.price === 0;
2365
-
2366
- const getItemId = item => [item.itemOffered.sku, item.seller.identifier, item.itemOffered.additionalProperty?.map(({
2367
- propertyID
2368
- }) => propertyID).join('-')].filter(Boolean).join('::');
2369
-
2370
- const validateCart = async cart => {
2371
- const {
2372
- validateCart: validated = null
2373
- } = await (0,request/* request */.W)(ValidateCartMutation, {
2374
- session: session/* sessionStore.read */.Qf.read(),
2375
- cart: {
2376
- order: {
2377
- orderNumber: cart.id,
2378
- shouldSplitItem: cart.shouldSplitItem,
2379
- acceptedOffer: cart.items.map(({
2380
- price,
2381
- listPrice,
2382
- seller,
2383
- quantity,
2384
- itemOffered
2385
- }) => ({
2386
- price,
2387
- listPrice,
2388
- seller,
2389
- quantity,
2390
- itemOffered: {
2391
- sku: itemOffered.sku,
2392
- image: itemOffered.image,
2393
- name: itemOffered.name,
2394
- additionalProperty: itemOffered.additionalProperty
2395
- }
2396
- }))
2397
- }
2398
- }
2399
- });
2400
- return validated && {
2401
- id: validated.order.orderNumber,
2402
- items: validated.order.acceptedOffer.map(item => _objectSpread(_objectSpread({}, item), {}, {
2403
- id: getItemId(item)
2404
- })),
2405
- messages: validated.messages
2406
- };
2407
- };
2408
-
2409
- const [validationStore, onValidate] = (0,useStore/* createValidationStore */.d)(validateCart);
2410
- const defaultCartStore = createCartStore((faststore_config_default()).cart, onValidate);
2411
- const cartStore = _objectSpread(_objectSpread({}, defaultCartStore), {}, {
2412
- addItem: item => {
2413
- const cartItem = _objectSpread(_objectSpread({}, item), {}, {
2414
- id: getItemId(item)
2415
- });
2416
-
2417
- defaultCartStore.addItem(cartItem);
2418
- }
2419
- });
2420
- const useCart = () => {
2421
- const cart = (0,useStore/* useStore */.o)(cartStore);
2422
- const isValidating = (0,useStore/* useStore */.o)(validationStore);
2423
- return (0,external_react_.useMemo)(() => _objectSpread(_objectSpread({}, cart), {}, {
2424
- isValidating,
2425
- messages: cart.messages,
2426
- gifts: cart.items.filter(item => isGift(item)),
2427
- items: cart.items.filter(item => !isGift(item)),
2428
- totalUniqueItems: cart.items.length,
2429
- totalItems: cart.items.reduce((acc, curr) => acc + (isGift(curr) ? 0 : curr.quantity), 0),
2430
- total: cart.items.reduce((acc, curr) => acc + curr.price * curr.quantity, 0),
2431
- subTotal: cart.items.reduce((acc, curr) => acc + curr.listPrice * curr.quantity, 0)
2432
- }), [cart, isValidating]);
2433
- };
2434
-
2435
- /***/ }),
2436
-
2437
- /***/ 43025:
2438
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2439
-
2440
- "use strict";
2441
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2442
- /* harmony export */ "Z": () => (/* binding */ MissingContentError)
2443
- /* harmony export */ });
2444
- class MissingContentError extends Error {
2445
- constructor(options) {
2446
- super(`Missing content on the CMS for content type ${options.contentType}. Add content before proceeding. Context: ${JSON.stringify(options, null, 2)}`);
2447
- }
2448
-
2449
- }
2450
-
2451
- /***/ }),
2452
-
2453
- /***/ 180:
2454
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2455
-
2456
- "use strict";
2457
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2458
- /* harmony export */ "W": () => (/* binding */ request)
2459
- /* harmony export */ });
2460
- /* harmony import */ var _faststore_graphql_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5307);
2461
- 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; }
2462
-
2463
- 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; }
2464
-
2465
- 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; }
2466
-
2467
-
2468
- const request = async (operationName, variables, options) => {
2469
- const {
2470
- data,
2471
- errors
2472
- } = await (0,_faststore_graphql_utils__WEBPACK_IMPORTED_MODULE_0__/* .request */ .WY)('/api/graphql', _objectSpread(_objectSpread({}, options), {}, {
2473
- variables,
2474
- operationName
2475
- }));
2476
-
2477
- if (errors?.length) {
2478
- throw errors[0];
2479
- }
2480
-
2481
- return data;
2482
- };
2483
-
2484
- /***/ }),
2485
-
2486
- /***/ 77732:
2487
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
2488
-
2489
- "use strict";
2490
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2491
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2492
- /* harmony export */ "WN": () => (/* binding */ DEFAULT_OPTIONS),
2493
- /* harmony export */ "aM": () => (/* binding */ useQuery),
2494
- /* harmony export */ "km": () => (/* binding */ getKey)
2495
- /* harmony export */ });
2496
- /* harmony import */ var swr__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(15941);
2497
- /* harmony import */ var _request__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(180);
2498
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([swr__WEBPACK_IMPORTED_MODULE_0__]);
2499
- swr__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2500
- 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; }
2501
-
2502
- 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; }
2503
-
2504
- 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; }
2505
-
2506
-
2507
-
2508
- const getKey = (operationName, variables) => `${operationName}::${JSON.stringify(variables)}`;
2509
- const DEFAULT_OPTIONS = {
2510
- errorRetryCount: 3,
2511
- refreshWhenHidden: false,
2512
- refreshWhenOffline: false,
2513
- revalidateOnFocus: false,
2514
- revalidateOnReconnect: false,
2515
- shouldRetryOnError: true
2516
- };
2517
- const useQuery = (operationName, variables, options) => (0,swr__WEBPACK_IMPORTED_MODULE_0__["default"])(getKey(operationName, variables), _objectSpread(_objectSpread({
2518
- fetcher: () => {
2519
- return new Promise(resolve => {
2520
- setTimeout(async () => {
2521
- resolve(await (0,_request__WEBPACK_IMPORTED_MODULE_1__/* .request */ .W)(operationName, variables, options));
2522
- });
2523
- });
2524
- }
2525
- }, DEFAULT_OPTIONS), options));
2526
- __webpack_async_result__();
2527
- } catch(e) { __webpack_async_result__(e); } });
2528
-
2529
- /***/ }),
2530
-
2531
- /***/ 25882:
2532
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2533
-
2534
- "use strict";
2535
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2536
- /* harmony export */ "u": () => (/* binding */ formatSearchPath)
2537
- /* harmony export */ });
2538
- /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(72339);
2539
- /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(12524);
2540
-
2541
- const formatSearchPath = ({
2542
- term,
2543
- sort
2544
- }) => {
2545
- const {
2546
- pathname,
2547
- search
2548
- } = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)((0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_1__/* .initialize */ .j)({
2549
- term,
2550
- sort,
2551
- base: '/s'
2552
- }));
2553
- return `${pathname}${search}`;
2554
- };
2555
-
2556
- /***/ }),
2557
-
2558
- /***/ 75098:
2559
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2560
-
2561
- "use strict";
2562
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2563
- /* harmony export */ "Z": () => (/* binding */ useSearchHistory)
2564
- /* harmony export */ });
2565
- /* unused harmony export searchHistoryStore */
2566
- /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(38283);
2567
- /* harmony import */ var _useStore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(33818);
2568
-
2569
-
2570
- const searchHistoryStore = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_1__/* .createStore */ .M)([], `fs::searchHistory`);
2571
- const MAX_HISTORY_SIZE = 4;
2572
- function useSearchHistory(maxHistorySize = MAX_HISTORY_SIZE) {
2573
- const searchHistory = (0,_useStore__WEBPACK_IMPORTED_MODULE_0__/* .useStore */ .o)(searchHistoryStore);
2574
-
2575
- function addToSearchHistory(newHistory) {
2576
- const set = new Set();
2577
- const newHistoryArray = [newHistory, ...searchHistory].slice(0, maxHistorySize).filter(item => !set.has(item.term) && set.add(item.term), set);
2578
- searchHistoryStore.set(newHistoryArray);
2579
- }
2580
-
2581
- function clearSearchHistory() {
2582
- searchHistoryStore.set([]);
2583
- }
2584
-
2585
- return {
2586
- searchHistory,
2587
- addToSearchHistory,
2588
- clearSearchHistory
2589
- };
2590
- }
2591
-
2592
- /***/ }),
2593
-
2594
- /***/ 86344:
2595
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
2596
-
2597
- "use strict";
2598
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2599
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2600
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2601
- /* harmony export */ });
2602
- /* harmony import */ var src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(77732);
2603
- /* harmony import */ var _session__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(97295);
2604
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__]);
2605
- src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2606
-
2607
-
2608
- const MAX_SUGGESTIONS = 5;
2609
- const query = "SearchSuggestionsQuery";
2610
-
2611
- function useSuggestions(term, limit = MAX_SUGGESTIONS) {
2612
- const {
2613
- channel,
2614
- locale
2615
- } = (0,_session__WEBPACK_IMPORTED_MODULE_1__/* .useSession */ .kP)();
2616
- const {
2617
- data,
2618
- error
2619
- } = (0,src_sdk_graphql_useQuery__WEBPACK_IMPORTED_MODULE_0__/* .useQuery */ .aM)(query, {
2620
- term,
2621
- selectedFacets: [{
2622
- key: 'channel',
2623
- value: channel ?? ''
2624
- }, {
2625
- key: 'locale',
2626
- value: locale
2627
- }]
2628
- });
2629
- return {
2630
- terms: (data?.search.suggestions.terms ?? []).slice(0, limit),
2631
- products: (data?.search.suggestions.products ?? []).slice(0, limit),
2632
- isLoading: !error && !data
2633
- };
2634
- }
2635
-
2636
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useSuggestions);
2637
- __webpack_async_result__();
2638
- } catch(e) { __webpack_async_result__(e); } });
2639
-
2640
- /***/ }),
2641
-
2642
- /***/ 97295:
2643
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2644
-
2645
- "use strict";
2646
-
2647
- // EXPORTS
2648
- __webpack_require__.d(__webpack_exports__, {
2649
- "Qf": () => (/* binding */ sessionStore),
2650
- "kP": () => (/* binding */ useSession),
2651
- "je": () => (/* binding */ validateSession)
2652
- });
2653
-
2654
- // UNUSED EXPORTS: mutation
2655
-
2656
- // EXTERNAL MODULE: ../sdk/dist/store/composed.js + 4 modules
2657
- var composed = __webpack_require__(38283);
2658
- ;// CONCATENATED MODULE: ../sdk/dist/session/index.js
2659
-
2660
- const createSessionStore = (defaultSession, onValidate, namespace = 'fs::session') => (0,composed/* createStore */.M)(defaultSession, namespace, onValidate);
2661
- //# sourceMappingURL=index.js.map
2662
- // EXTERNAL MODULE: external "react"
2663
- var external_react_ = __webpack_require__(16689);
2664
- // EXTERNAL MODULE: ./faststore.config.js
2665
- var faststore_config = __webpack_require__(97183);
2666
- var faststore_config_default = /*#__PURE__*/__webpack_require__.n(faststore_config);
2667
- // EXTERNAL MODULE: ./src/sdk/cart/index.ts + 1 modules
2668
- var cart = __webpack_require__(46073);
2669
- // EXTERNAL MODULE: ./src/sdk/graphql/request.ts
2670
- var request = __webpack_require__(180);
2671
- // EXTERNAL MODULE: ./src/sdk/useStore.ts
2672
- var useStore = __webpack_require__(33818);
2673
- ;// CONCATENATED MODULE: ./src/sdk/session/index.ts
2674
- 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; }
2675
-
2676
- 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; }
2677
-
2678
- 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; }
2679
-
2680
-
2681
-
2682
-
2683
-
2684
-
2685
-
2686
- const mutation = "ValidateSession";
2687
- const validateSession = async session => {
2688
- const data = await (0,request/* request */.W)(mutation, {
2689
- session,
2690
- search: window.location.search
2691
- });
2692
- return data.validateSession;
2693
- };
2694
- const [validationStore, onValidate] = (0,useStore/* createValidationStore */.d)(validateSession);
2695
- const defaultStore = createSessionStore((faststore_config_default()).session, onValidate);
2696
- const sessionStore = _objectSpread(_objectSpread({}, defaultStore), {}, {
2697
- set: val => {
2698
- defaultStore.set(val); // Trigger cart revalidation when session changes
2699
-
2700
- cart/* cartStore.set */.i8.set(cart/* cartStore.read */.i8.read());
2701
- }
2702
- });
2703
- const useSession = () => {
2704
- const session = (0,useStore/* useStore */.o)(sessionStore);
2705
- const isValidating = (0,useStore/* useStore */.o)(validationStore);
2706
- return (0,external_react_.useMemo)(() => _objectSpread(_objectSpread({}, session), {}, {
2707
- isValidating
2708
- }), [isValidating, session]);
2709
- };
2710
-
2711
- /***/ }),
2712
-
2713
- /***/ 82541:
2714
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2715
-
2716
- "use strict";
2717
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2718
- /* harmony export */ "B": () => (/* binding */ mark)
2719
- /* harmony export */ });
2720
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
2721
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
2722
- 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; }
2723
-
2724
- 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; }
2725
-
2726
- 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; }
2727
-
2728
-
2729
- const mark = Component => function marked(props) {
2730
- if (false) {}
2731
-
2732
- return /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(Component, _objectSpread({}, props));
2733
- };
2734
-
2735
- /***/ }),
2736
-
2737
- /***/ 13669:
2738
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2739
-
2740
- "use strict";
2741
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2742
- /* harmony export */ "Z": () => (/* binding */ useOnClickOutside)
2743
- /* harmony export */ });
2744
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
2745
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
2746
-
2747
- function useOnClickOutside(ref, handler) {
2748
- (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
2749
- const listener = event => {
2750
- if (!ref.current || ref.current.contains(event.target)) {
2751
- return;
2752
- }
2753
-
2754
- handler(event);
2755
- };
2756
-
2757
- document.addEventListener('mousedown', listener);
2758
- document.addEventListener('touchstart', listener);
2759
- return () => {
2760
- document.removeEventListener('mousedown', listener);
2761
- document.removeEventListener('touchstart', listener);
2762
- };
2763
- },
2764
- /**
2765
- * Add ref and handler to effect dependencies.
2766
- * It's worth noting that because passed in handler is a new
2767
- * function on every render that will cause this effect
2768
- * callback/cleanup to run every render. It's not a big deal
2769
- * but to optimize you can wrap handler in useCallback before
2770
- * passing it into this hook.
2771
- */
2772
- [ref, handler]);
2773
- }
2774
-
2775
- /***/ }),
2776
-
2777
- /***/ 33818:
2778
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2779
-
2780
- "use strict";
2781
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2782
- /* harmony export */ "d": () => (/* binding */ createValidationStore),
2783
- /* harmony export */ "o": () => (/* binding */ useStore)
2784
- /* harmony export */ });
2785
- /* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(73365);
2786
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
2787
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
2788
-
2789
-
2790
- const useStore = store => (0,react__WEBPACK_IMPORTED_MODULE_0__.useSyncExternalStore)(store.subscribe, store.read, store.readInitial);
2791
- const createValidationStore = cb => {
2792
- const store = (0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_1__/* .createStore */ .M)(false);
2793
-
2794
- const onValidate = async val => {
2795
- try {
2796
- store.set(true);
2797
- return await cb(val);
2798
- } finally {
2799
- store.set(false);
2800
- }
2801
- };
2802
-
2803
- return [store, onValidate];
2804
- };
2805
-
2806
- /***/ }),
2807
-
2808
- /***/ 42430:
2809
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2810
-
2811
- "use strict";
2812
-
2813
- // EXPORTS
2814
- __webpack_require__.d(__webpack_exports__, {
2815
- "f": () => (/* binding */ getPage)
2816
- });
2817
-
2818
- // UNUSED EXPORTS: clientCMS
2819
-
2820
- // EXTERNAL MODULE: external "@vtex/client-cms"
2821
- var client_cms_ = __webpack_require__(16676);
2822
- var client_cms_default = /*#__PURE__*/__webpack_require__.n(client_cms_);
2823
- // EXTERNAL MODULE: ./faststore.config.js
2824
- var faststore_config = __webpack_require__(97183);
2825
- var faststore_config_default = /*#__PURE__*/__webpack_require__.n(faststore_config);
2826
- ;// CONCATENATED MODULE: ./src/sdk/error/MultipleContentError/MultipleContentError.ts
2827
- class MultipleContentError extends Error {
2828
- constructor(options) {
2829
- super(`Multiple content defined on the CMS for content type ${options.contentType}. Remove duplicated content before proceeding. Context: ${JSON.stringify(options, null, 2)}`);
2830
- }
2831
-
2832
- }
2833
- ;// CONCATENATED MODULE: ./src/sdk/error/MultipleContentError/index.ts
2834
-
2835
- // EXTERNAL MODULE: ./src/sdk/error/MissingContentError/MissingContentError.ts
2836
- var MissingContentError = __webpack_require__(43025);
2837
- ;// CONCATENATED MODULE: ./src/sdk/error/MissingContentError/index.ts
2838
-
2839
- ;// CONCATENATED MODULE: ./src/server/cms.ts
2840
-
2841
-
2842
-
2843
-
2844
- const clientCMS = new (client_cms_default())({
2845
- workspace: (faststore_config_default()).api.workspace,
2846
- tenant: (faststore_config_default()).api.storeId
2847
- });
2848
-
2849
- const isLocator = x => typeof x.contentType === 'string' && (typeof x.releaseId === 'string' || typeof x.documentId === 'string');
2850
-
2851
- const getPage = async options => {
2852
- const result = await (isLocator(options) ? clientCMS.getCMSPage(options).then(page => ({
2853
- data: [page]
2854
- })) : clientCMS.getCMSPagesByContentType(options.contentType, options.filters));
2855
- const pages = result.data;
2856
-
2857
- if (!pages[0]) {
2858
- throw new MissingContentError/* default */.Z(options);
2859
- }
2860
-
2861
- if (pages.length !== 1) {
2862
- throw new MultipleContentError(options);
2863
- }
2864
-
2865
- return pages[0];
2866
- };
2867
-
2868
- /***/ }),
2869
-
2870
- /***/ 59104:
2871
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2872
-
2873
- "use strict";
2874
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2875
- /* harmony export */ "f": () => (/* binding */ getSectionOverrides)
2876
- /* harmony export */ });
2877
- function getSectionOverrides(defaultComponents, override) {
2878
- const overriddenComponents = {};
2879
- Object.entries(defaultComponents).forEach(([key, value]) => {
2880
- const componentOverride = override.components?.[key];
2881
-
2882
- if (!componentOverride) {
2883
- overriddenComponents[key] = {
2884
- Component: value,
2885
- props: {}
2886
- };
2887
- return;
2888
- }
2889
-
2890
- if (componentOverride.Component && componentOverride.props) {
2891
- console.warn(`Mixed use of Component and props overrides detected. Defaulting to Component override: component ${key} in the ${override.section} section.`);
2892
- }
2893
-
2894
- if (componentOverride.Component) {
2895
- overriddenComponents[key] = {
2896
- Component: componentOverride.Component,
2897
- props: {}
2898
- };
2899
- } else {
2900
- overriddenComponents[key] = {
2901
- Component: value,
2902
- props: componentOverride.props ?? {}
2903
- };
2904
- }
2905
- });
2906
- return overriddenComponents;
2907
- }
2908
-
2909
- /***/ }),
2910
-
2911
- /***/ 77651:
2912
- /***/ ((module) => {
2913
-
2914
- // Exports
2915
- module.exports = {
2916
- "section": "section_section__YiggP"
2917
- };
2918
-
2919
-
2920
- /***/ }),
2921
-
2922
- /***/ 91276:
2923
- /***/ ((module) => {
2924
-
2925
- // Exports
2926
- module.exports = {
2927
- "section": "section_section__Qi4Hq"
2928
- };
2929
-
2930
-
2931
- /***/ }),
2932
-
2933
- /***/ 40261:
2934
- /***/ ((module) => {
2935
-
2936
- // Exports
2937
- module.exports = {
2938
- "section": "section_section__bLR5s"
2939
- };
2940
-
2941
-
2942
- /***/ }),
2943
-
2944
- /***/ 75977:
2945
- /***/ ((module) => {
2946
-
2947
- // Exports
2948
- module.exports = {
2949
- "section": "section_section__Ox_hX"
2950
- };
2951
-
2952
-
2953
- /***/ }),
2954
-
2955
- /***/ 96837:
2956
- /***/ ((module) => {
2957
-
2958
- // Exports
2959
- module.exports = {
2960
- "section": "section_section__dPVmH"
2961
- };
2962
-
2963
-
2964
- /***/ }),
2965
-
2966
- /***/ 53472:
2967
- /***/ ((module) => {
2968
-
2969
- // Exports
2970
- module.exports = {
2971
- "section": "section_section__RNxUN"
2972
- };
2973
-
2974
-
2975
- /***/ }),
2976
-
2977
- /***/ 5307:
2978
- /***/ ((__unused_webpack_module, exports) => {
2979
-
2980
- "use strict";
2981
- var __webpack_unused_export__;
2982
-
2983
- __webpack_unused_export__ = ({ value: true });
2984
- exports.WY = __webpack_unused_export__ = void 0;
2985
- const gql = (_) => {
2986
- throw new Error(`[graphql-utils]: This should have been removed by the babel plugin. Please make sure the babel plugin is configured correctly`);
2987
- };
2988
- __webpack_unused_export__ = gql;
2989
- const DEFAULT_HEADERS_BY_VERB = {
2990
- POST: {
2991
- 'Content-Type': 'application/json',
2992
- },
2993
- };
2994
- const request = async (endpoint, { operationName, variables, fetchOptions }) => {
2995
- // Uses method from fetchOptions.
2996
- // If no one is passed, figure out with via heuristic
2997
- const method = fetchOptions?.method !== undefined
2998
- ? fetchOptions.method.toUpperCase()
2999
- : operationName.endsWith('Query')
3000
- ? 'GET'
3001
- : 'POST';
3002
- const params = new URLSearchParams({
3003
- operationName,
3004
- ...(method === 'GET' && { variables: JSON.stringify(variables) }),
3005
- });
3006
- const body = method === 'POST'
3007
- ? JSON.stringify({
3008
- operationName,
3009
- variables,
3010
- })
3011
- : undefined;
3012
- const url = `${endpoint}?${params.toString()}`;
3013
- const response = await fetch(url, {
3014
- method,
3015
- body,
3016
- ...fetchOptions,
3017
- headers: {
3018
- ...DEFAULT_HEADERS_BY_VERB[method],
3019
- ...fetchOptions?.headers,
3020
- },
3021
- });
3022
- return response.json();
3023
- };
3024
- exports.WY = request;
3025
- //# sourceMappingURL=index.js.map
3026
-
3027
- /***/ }),
3028
-
3029
- /***/ 71072:
3030
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3031
-
3032
- "use strict";
3033
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3034
- /* harmony export */ "_": () => (/* binding */ sendAnalyticsEvent)
3035
- /* harmony export */ });
3036
- /* harmony import */ var _wrap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(14950);
3037
-
3038
- const sendAnalyticsEvent = (event) => {
3039
- try {
3040
- window.postMessage((0,_wrap__WEBPACK_IMPORTED_MODULE_0__/* .wrap */ .re)(event), window.origin);
3041
- }
3042
- catch (e) {
3043
- // IE and Edge have a bug on postMessage inside promises.
3044
- // Ignoring for now, will try to find a workaround that
3045
- // makes postMessage work on those browsers.
3046
- // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/14719328/
3047
- console.error(e);
3048
- }
3049
- };
3050
- //# sourceMappingURL=sendAnalyticsEvent.js.map
3051
-
3052
- /***/ }),
3053
-
3054
- /***/ 12524:
3055
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3056
-
3057
- "use strict";
3058
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3059
- /* harmony export */ "X": () => (/* binding */ useSearchState),
3060
- /* harmony export */ "j": () => (/* binding */ initialize)
3061
- /* harmony export */ });
3062
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3063
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
3064
- /* harmony import */ var _utils_format__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(72339);
3065
-
3066
-
3067
- const initialize = ({ sort = 'score_desc', selectedFacets = [], term = null, base = '/', page = 0, } = {}) => ({
3068
- sort,
3069
- selectedFacets,
3070
- term,
3071
- base: base.endsWith('/') ? base : `${base}/`,
3072
- page,
3073
- });
3074
- 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;
3075
- const useSearchState = (initialState, onChange) => {
3076
- const state = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => initialize(initialState), [initialState]);
3077
- return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => ({
3078
- state,
3079
- setState: (newState) => !equals(newState, state) && onChange((0,_utils_format__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z)(newState)),
3080
- }), [onChange, state]);
3081
- };
3082
- //# sourceMappingURL=useSearchState.js.map
3083
-
3084
- /***/ }),
3085
-
3086
- /***/ 73365:
3087
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3088
-
3089
- "use strict";
3090
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3091
- /* harmony export */ "M": () => (/* binding */ createStore)
3092
- /* harmony export */ });
3093
- /**
3094
- * Creates a new Suspense ready Store
3095
- */
3096
- const createStore = (initialValue) => {
3097
- const subscribers = new Set();
3098
- const cancelations = new Set();
3099
- let value = initialValue;
3100
- const read = () => value;
3101
- const readInitial = () => initialValue;
3102
- const set = (val) => {
3103
- value = val;
3104
- // Cancel previous, dangling operations
3105
- cancelations.forEach((cancel) => cancel());
3106
- cancelations.clear();
3107
- // Broadcast subscribers
3108
- subscribers.forEach((sub) => {
3109
- const cancel = sub(val);
3110
- if (typeof cancel === "function") {
3111
- cancelations.add(cancel);
3112
- }
3113
- });
3114
- };
3115
- const subscribe = (sub) => {
3116
- subscribers.add(sub);
3117
- return () => {
3118
- subscribers.delete(sub);
3119
- };
3120
- };
3121
- return {
3122
- set,
3123
- read,
3124
- readInitial,
3125
- subscribe,
3126
- };
3127
- };
3128
- //# sourceMappingURL=base.js.map
3129
-
3130
- /***/ }),
3131
-
3132
- /***/ 38283:
3133
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3134
-
3135
- "use strict";
3136
-
3137
- // EXPORTS
3138
- __webpack_require__.d(__webpack_exports__, {
3139
- "M": () => (/* binding */ createStore)
3140
- });
3141
-
3142
- // EXTERNAL MODULE: external "idb-keyval"
3143
- var external_idb_keyval_ = __webpack_require__(83430);
3144
- ;// CONCATENATED MODULE: ../sdk/dist/store/persisted.js
3145
- /**
3146
- * Safe IDB storage interface. These try..catch are useful because
3147
- * some browsers may block access to these APIs due to security policies
3148
- *
3149
- * Also, the stored value is lazy-loaded to avoid hydration mismatch
3150
- * between server/browser. When state is 'hydrated', the value in the heap
3151
- * is the same as the value in IDB
3152
- */
3153
-
3154
- const getIDB = async (key) => {
3155
- try {
3156
- return await (0,external_idb_keyval_.get)(key);
3157
- }
3158
- catch (err) {
3159
- return;
3160
- }
3161
- };
3162
- const setIDB = async (key, value) => {
3163
- try {
3164
- await (0,external_idb_keyval_.set)(key, value);
3165
- }
3166
- catch (err) {
3167
- /** noop */
3168
- }
3169
- };
3170
- const persisted = (key) => (store) => {
3171
- const handler = async () => {
3172
- const payload = await getIDB(key);
3173
- if (typeof document !== 'undefined') {
3174
- store.set(payload ?? store.readInitial());
3175
- }
3176
- };
3177
- handler();
3178
- globalThis.addEventListener?.("focus", () => handler());
3179
- globalThis.document?.addEventListener("visibilitychange", () => document.visibilityState === "visible" && handler());
3180
- store.subscribe((value) => {
3181
- setIDB(key, value);
3182
- });
3183
- return store;
3184
- };
3185
- //# sourceMappingURL=persisted.js.map
3186
- ;// CONCATENATED MODULE: ../sdk/dist/store/optimistic.js
3187
- const trivial = async () => null;
3188
- const optimistic = (onValidate = trivial) => {
3189
- let queue = Promise.resolve();
3190
- return (store) => {
3191
- store.subscribe((value) => {
3192
- let cancel = false;
3193
- const handler = async () => {
3194
- if (cancel) {
3195
- return;
3196
- }
3197
- const validated = await onValidate(value);
3198
- if (!cancel && validated !== null) {
3199
- store.set(validated);
3200
- }
3201
- };
3202
- queue = queue.then(handler);
3203
- return () => {
3204
- cancel = true;
3205
- };
3206
- });
3207
- return store;
3208
- };
3209
- };
3210
- //# sourceMappingURL=optimistic.js.map
3211
- ;// CONCATENATED MODULE: ../sdk/dist/store/singleton.js
3212
- /**
3213
- * Some stores, like cart/session states require to be singletons
3214
- * for their correct behavior. This creator helps on this
3215
- */
3216
- globalThis.faststore_sdk_stores = globalThis.faststore_sdk_stores ?? new Map();
3217
- const singleton = (key) => (store) => {
3218
- const stores = globalThis.faststore_sdk_stores;
3219
- if (!stores.has(key)) {
3220
- stores.set(key, store);
3221
- }
3222
- return stores.get(key);
3223
- };
3224
- //# sourceMappingURL=singleton.js.map
3225
- ;// CONCATENATED MODULE: ../sdk/dist/utils/compose.js
3226
- const compose = (pipeline, value) => pipeline.reduce((acc, curr) => curr(acc), value);
3227
- //# sourceMappingURL=compose.js.map
3228
- // EXTERNAL MODULE: ../sdk/dist/store/base.js
3229
- var base = __webpack_require__(73365);
3230
- ;// CONCATENATED MODULE: ../sdk/dist/store/composed.js
3231
-
3232
-
3233
-
3234
-
3235
-
3236
- const identity = (x) => x;
3237
- const createStore = (initialValue, namespace, onValidate) => {
3238
- return compose([
3239
- namespace ? singleton(namespace) : identity,
3240
- namespace ? persisted(namespace) : identity,
3241
- onValidate ? optimistic(onValidate) : identity,
3242
- ], (0,base/* createStore */.M)(initialValue));
3243
- };
3244
- //# sourceMappingURL=composed.js.map
3245
-
3246
- /***/ }),
3247
-
3248
- /***/ 12254:
3249
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3250
-
3251
- "use strict";
3252
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3253
- /* harmony export */ "q": () => (/* binding */ SDKError)
3254
- /* harmony export */ });
3255
- class SDKError extends Error {
3256
- constructor(message) {
3257
- super(`[sdk]: ${message}`);
3258
- }
3259
- }
3260
- //# sourceMappingURL=error.js.map
3261
-
3262
- /***/ }),
3263
-
3264
- /***/ 72339:
3265
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3266
-
3267
- "use strict";
3268
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3269
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3270
- /* harmony export */ });
3271
- const format = (params) => {
3272
- const url = new URL(params.base, 'http://localhost');
3273
- const { page, selectedFacets, sort, term } = params;
3274
- if (term !== null) {
3275
- url.searchParams.set('q', term);
3276
- }
3277
- const facets = new Set();
3278
- for (const facet of selectedFacets) {
3279
- url.searchParams.append(facet.key, facet.value);
3280
- facets.add(facet.key);
3281
- }
3282
- if (selectedFacets.length > 0) {
3283
- url.searchParams.set('facets', Array.from(facets).join(','));
3284
- }
3285
- url.searchParams.set('sort', sort);
3286
- url.searchParams.set('page', page.toString());
3287
- return url;
3288
- };
3289
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (format);
3290
- //# sourceMappingURL=format.js.map
3291
-
3292
- /***/ }),
3293
-
3294
- /***/ 87197:
3295
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3296
-
3297
- "use strict";
3298
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3299
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3300
- /* harmony export */ });
3301
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3302
-
3303
- const Badge = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Badge({ testId = 'fs-badge', size = 'small', variant = 'neutral', counter = false, 'aria-label': ariaLabel, children, ...otherProps }, ref) {
3304
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { ref: ref, "data-fs-badge": true, "aria-label": ariaLabel, "data-fs-badge-variant": counter ? null : variant, "data-fs-badge-size": size, "data-fs-badge-counter": counter, "data-testid": testId, ...otherProps },
3305
- react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { "data-fs-badge-wrapper": true }, children)));
3306
- });
3307
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Badge);
3308
- //# sourceMappingURL=Badge.js.map
3309
-
3310
- /***/ }),
3311
-
3312
- /***/ 33815:
3313
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3314
-
3315
- "use strict";
3316
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3317
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3318
- /* harmony export */ });
3319
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3320
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(29975);
3321
-
3322
-
3323
- const Button = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Button({ children, variant, inverse, size = 'regular', testId = 'fs-button', loading, loadingLabel, icon, iconPosition = 'left', disabled, ...otherProps }, ref) {
3324
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement("button", { ref: ref, "data-fs-button": true, "data-fs-button-inverse": inverse, "data-fs-button-size": size, "data-fs-button-loading": loading, "data-fs-button-variant": variant, disabled: disabled, "data-testid": testId, ...otherProps },
3325
- react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { "data-fs-button-wrapper": true },
3326
- loading && (react__WEBPACK_IMPORTED_MODULE_0__.createElement("p", { "data-fs-button-loading-label": true },
3327
- loadingLabel,
3328
- react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { variant: variant === 'primary' && !inverse ? 'light' : 'dark' }))),
3329
- !!icon && iconPosition === 'left' && (react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", { "data-fs-button-icon": true }, icon)),
3330
- children && react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", null, children),
3331
- !!icon && iconPosition === 'right' && (react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", { "data-fs-button-icon": true }, icon)))));
3332
- });
3333
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Button);
3334
- //# sourceMappingURL=Button.js.map
3335
-
3336
- /***/ }),
3337
-
3338
- /***/ 82185:
3339
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3340
-
3341
- "use strict";
3342
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3343
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3344
- /* harmony export */ });
3345
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3346
-
3347
- const mapWeightToValue = {
3348
- bold: 24,
3349
- regular: 16,
3350
- light: 12,
3351
- thin: 8,
3352
- };
3353
- const Icon = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Icon({ testId = 'fs-icon', name, weight = 'regular', ...otherProps }, ref) {
3354
- const { width, height } = otherProps;
3355
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", { ref: ref, "data-fs-icon": true, "data-testid": testId, width: width ?? 24, height: height ?? 24, strokeWidth: mapWeightToValue[weight], ...otherProps },
3356
- react__WEBPACK_IMPORTED_MODULE_0__.createElement("use", { href: `/icons.svg#${name}` })));
3357
- });
3358
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Icon);
3359
- //# sourceMappingURL=Icon.js.map
3360
-
3361
- /***/ }),
3362
-
3363
- /***/ 72644:
3364
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3365
-
3366
- "use strict";
3367
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3368
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3369
- /* harmony export */ });
3370
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3371
-
3372
- const Input = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Input({ testId = 'fs-input', ...otherProps }, ref) {
3373
- return react__WEBPACK_IMPORTED_MODULE_0__.createElement("input", { ref: ref, "data-fs-input": true, "data-testid": testId, ...otherProps });
3374
- });
3375
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Input);
3376
- //# sourceMappingURL=Input.js.map
3377
-
3378
- /***/ }),
3379
-
3380
- /***/ 18595:
3381
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3382
-
3383
- "use strict";
3384
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3385
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3386
- /* harmony export */ });
3387
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3388
-
3389
- const Link = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Link({ as, children, variant = 'default', size = 'regular', inverse, testId = 'fs-link', ...otherProps }, ref) {
3390
- const Component = as ?? 'a';
3391
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, { ref: ref, "data-fs-link": true, "data-fs-link-variant": variant, "data-fs-link-inverse": inverse, "data-fs-link-size": size, "data-testid": testId, ...otherProps }, children));
3392
- });
3393
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Link);
3394
- //# sourceMappingURL=Link.js.map
3395
-
3396
- /***/ }),
3397
-
3398
- /***/ 58823:
3399
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3400
-
3401
- "use strict";
3402
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3403
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3404
- /* harmony export */ });
3405
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3406
-
3407
- const List = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function List({ as, marker, testId = 'fs-list', ...otherProps }, ref) {
3408
- const Component = as ?? 'ul';
3409
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, { ref: ref, role: "list", "data-fs-list": true, "data-fs-list-marker": marker, "data-testid": testId, ...otherProps }));
3410
- });
3411
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (List);
3412
- //# sourceMappingURL=List.js.map
3413
-
3414
- /***/ }),
3415
-
3416
- /***/ 29975:
3417
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3418
-
3419
- "use strict";
3420
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3421
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3422
- /* harmony export */ });
3423
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3424
-
3425
- const Loader = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Loader({ testId = 'fs-loader', variant = 'dark', ...otherProps }, ref) {
3426
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", { ref: ref, "data-fs-loader": true, "data-fs-loader-variant": variant, "data-testid": testId, ...otherProps },
3427
- react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", { "data-fs-loader-item": true }),
3428
- react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", { "data-fs-loader-item": true }),
3429
- react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", { "data-fs-loader-item": true })));
3430
- });
3431
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Loader);
3432
- //# sourceMappingURL=Loader.js.map
3433
-
3434
- /***/ }),
3435
-
3436
- /***/ 16672:
3437
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3438
-
3439
- "use strict";
3440
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3441
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3442
- /* harmony export */ });
3443
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3444
-
3445
- function SROnly({ text, as }) {
3446
- const Component = as ?? 'span';
3447
- return react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, { "data-fs-sr-only": true }, text);
3448
- }
3449
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SROnly);
3450
- //# sourceMappingURL=SROnly.js.map
3451
-
3452
- /***/ }),
3453
-
3454
- /***/ 2127:
3455
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3456
-
3457
- "use strict";
3458
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3459
- /* harmony export */ "b": () => (/* binding */ useFadeEffect)
3460
- /* harmony export */ });
3461
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3462
-
3463
- const useFadeEffect = () => {
3464
- const [fade, setFade] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('out');
3465
- const fadeOut = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => setFade('out'), []);
3466
- const fadeIn = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => setFade('in'), []);
3467
- (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
3468
- fadeIn();
3469
- return () => {
3470
- fadeOut();
3471
- };
3472
- }, [fadeIn, fadeOut]);
3473
- return {
3474
- fade,
3475
- fadeIn,
3476
- fadeOut,
3477
- };
3478
- };
3479
- //# sourceMappingURL=useFadeEffect.js.map
3480
-
3481
- /***/ }),
3482
-
3483
- /***/ 12335:
3484
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3485
-
3486
- "use strict";
3487
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3488
- /* harmony export */ "C": () => (/* binding */ useScrollDirection)
3489
- /* harmony export */ });
3490
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3491
-
3492
- const useScrollDirection = () => {
3493
- const [scrollDirection, setScrollDirection] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('');
3494
- const [isPending, startTransition] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useTransition)();
3495
- (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
3496
- let lastScrollY = window.scrollY;
3497
- const updateScrollDirection = () => {
3498
- const { scrollY } = window;
3499
- const direction = scrollY > lastScrollY ? 'down' : 'up';
3500
- if (!isPending &&
3501
- direction !== scrollDirection &&
3502
- (scrollY - lastScrollY > 10 || scrollY - lastScrollY < -10)) {
3503
- startTransition(() => setScrollDirection(direction));
3504
- }
3505
- lastScrollY = scrollY > 0 ? scrollY : 0;
3506
- };
3507
- window.addEventListener('scroll', updateScrollDirection);
3508
- return () => window.removeEventListener('scroll', updateScrollDirection);
3509
- }, [isPending, scrollDirection]);
3510
- return scrollDirection;
3511
- };
3512
- //# sourceMappingURL=useScrollDirection.js.map
3513
-
3514
- /***/ }),
3515
-
3516
- /***/ 93872:
3517
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3518
-
3519
- "use strict";
3520
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3521
- /* harmony export */ "A": () => (/* binding */ useAccordion),
3522
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3523
- /* harmony export */ });
3524
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3525
-
3526
- const AccordionContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
3527
- const Accordion = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Accordion({ testId = 'fs-accordion', indices, onChange, children, ...otherProps }, ref) {
3528
- const childrenWithIndex = react__WEBPACK_IMPORTED_MODULE_0__.Children.map(children, (child, index) => (0,react__WEBPACK_IMPORTED_MODULE_0__.cloneElement)(child, { index: child.props.index ?? index }));
3529
- const context = {
3530
- indices: new Set(indices),
3531
- onChange,
3532
- numberOfItems: childrenWithIndex.length,
3533
- };
3534
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(AccordionContext.Provider, { value: context },
3535
- react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { ref: ref, "data-fs-accordion": true, role: "region", "data-testid": testId, ...otherProps }, childrenWithIndex)));
3536
- });
3537
- function useAccordion() {
3538
- const context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(AccordionContext);
3539
- if (context === undefined) {
3540
- throw new Error('Do not use Accordion components outside the Accordion context.');
3541
- }
3542
- return context;
3543
- }
3544
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Accordion);
3545
- //# sourceMappingURL=Accordion.js.map
3546
-
3547
- /***/ }),
3548
-
3549
- /***/ 81945:
3550
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3551
-
3552
- "use strict";
3553
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3554
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3555
- /* harmony export */ });
3556
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3557
- /* harmony import */ var _Accordion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(93872);
3558
- /* harmony import */ var _AccordionItem__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(96833);
3559
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(82185);
3560
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(33815);
3561
-
3562
-
3563
-
3564
-
3565
- const AccordionButton = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function AccordionButton({ testId = 'fs-accordion-button', expandedIcon = react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { name: "MinusCircle", "data-icon": "expanded" }), collapsedIcon = react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { name: "PlusCircle", "data-icon": "collapsed" }), children, ...otherProps }, ref) {
3566
- const { indices, onChange, numberOfItems } = (0,_Accordion__WEBPACK_IMPORTED_MODULE_2__/* .useAccordion */ .A)();
3567
- const { index, panel, button, prefixId } = (0,_AccordionItem__WEBPACK_IMPORTED_MODULE_3__/* .useAccordionItem */ .D)();
3568
- const onKeyDown = (event) => {
3569
- if (!['ArrowDown', 'ArrowUp'].includes(event.key)) {
3570
- return;
3571
- }
3572
- const getNext = () => {
3573
- const next = Number(index) + 1 === numberOfItems ? 0 : Number(index) + 1;
3574
- return document.getElementById(`${prefixId && `${prefixId}-`}button--${next}`);
3575
- };
3576
- const getPrevious = () => {
3577
- const previous = Number(index) - 1 < 0 ? numberOfItems - 1 : Number(index) - 1;
3578
- return document.getElementById(`${prefixId && `${prefixId}-`}button--${previous}`);
3579
- };
3580
- switch (event.key) {
3581
- case 'ArrowDown':
3582
- event.preventDefault();
3583
- getNext()?.focus();
3584
- break;
3585
- case 'ArrowUp':
3586
- event.preventDefault();
3587
- getPrevious()?.focus();
3588
- break;
3589
- default:
3590
- }
3591
- };
3592
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, { ref: ref, id: button, variant: "tertiary", "data-fs-accordion-button": true, "aria-expanded": indices.has(index), icon: indices.has(index) ? expandedIcon : collapsedIcon, iconPosition: "right", "aria-controls": panel, onKeyDown: onKeyDown, onClick: () => {
3593
- onChange(index);
3594
- }, "data-testid": testId, ...otherProps }, children));
3595
- });
3596
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AccordionButton);
3597
- //# sourceMappingURL=AccordionButton.js.map
3598
-
3599
- /***/ }),
3600
-
3601
- /***/ 96833:
3602
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3603
-
3604
- "use strict";
3605
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3606
- /* harmony export */ "D": () => (/* binding */ useAccordionItem),
3607
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3608
- /* harmony export */ });
3609
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3610
-
3611
- const AccordionItemContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
3612
- const AccordionItem = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function AccordionItem({ prefixId = '', index = 0, as: MaybeComponent, children, testId = 'fs-accordion-item', ...otherProps }, ref) {
3613
- const Component = MaybeComponent ?? 'div';
3614
- const context = {
3615
- index,
3616
- prefixId,
3617
- panel: `${prefixId && `${prefixId}-`}panel--${index}`,
3618
- button: `${prefixId && `${prefixId}-`}button--${index}`,
3619
- };
3620
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(AccordionItemContext.Provider, { value: context },
3621
- react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, { ref: ref, "data-fs-accordion-item": true, "data-testid": testId, ...otherProps }, children)));
3622
- });
3623
- function useAccordionItem() {
3624
- const context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(AccordionItemContext);
3625
- if (context === undefined) {
3626
- throw new Error('Do not use AccordionItem components outside the AccordionItem context.');
3627
- }
3628
- return context;
3629
- }
3630
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AccordionItem);
3631
- //# sourceMappingURL=AccordionItem.js.map
3632
-
3633
- /***/ }),
3634
-
3635
- /***/ 5853:
3636
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3637
-
3638
- "use strict";
3639
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3640
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3641
- /* harmony export */ });
3642
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3643
- /* harmony import */ var _Accordion__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(93872);
3644
- /* harmony import */ var _AccordionItem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(96833);
3645
-
3646
-
3647
-
3648
- const AccordionPanel = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function AccordionPanel({ testId = 'fs-accordion-panel', children, ...otherProps }, ref) {
3649
- const { indices } = (0,_Accordion__WEBPACK_IMPORTED_MODULE_1__/* .useAccordion */ .A)();
3650
- const { index, button, panel } = (0,_AccordionItem__WEBPACK_IMPORTED_MODULE_2__/* .useAccordionItem */ .D)();
3651
- return (react__WEBPACK_IMPORTED_MODULE_0__.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));
3652
- });
3653
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AccordionPanel);
3654
- //# sourceMappingURL=AccordionPanel.js.map
3655
-
3656
- /***/ }),
3657
-
3658
- /***/ 11584:
3659
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3660
-
3661
- "use strict";
3662
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3663
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3664
- /* harmony export */ });
3665
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3666
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18595);
3667
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(90518);
3668
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(82185);
3669
-
3670
-
3671
- const Alert = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Alert({ testId = 'fs-alert', children, icon, dismissible, link, onClose, ...otherProps }, ref) {
3672
- const handleClose = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((event) => {
3673
- if (event.defaultPrevented) {
3674
- return;
3675
- }
3676
- onClose?.(event);
3677
- }, [onClose]);
3678
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { ref: ref, role: "alert", "data-fs-alert": true, "data-fs-alert-dismissible": dismissible, "data-fs-content": "alert", "data-testid": testId, ...otherProps },
3679
- !!icon && icon,
3680
- react__WEBPACK_IMPORTED_MODULE_0__.createElement("p", { "data-fs-alert-content": true }, children),
3681
- link && react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { "data-fs-alert-link": true, variant: "inline", ...link }),
3682
- dismissible && (react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, { "data-fs-alert-button": true, size: "small", "aria-label": "Close", icon: react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, { name: "X" }), onClick: handleClose }))));
3683
- });
3684
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Alert);
3685
- //# sourceMappingURL=Alert.js.map
3686
-
3687
- /***/ }),
3688
-
3689
- /***/ 90518:
3690
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3691
-
3692
- "use strict";
3693
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3694
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3695
- /* harmony export */ });
3696
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3697
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(33815);
3698
-
3699
-
3700
- const IconButton = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function IconButton({ icon, children, testId = 'fs-icon-button', 'aria-label': ariaLabel, size = 'regular', variant, ...otherProps }, ref) {
3701
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { ref: ref, "data-fs-button": true, "data-fs-icon-button": true, variant: variant ?? 'tertiary', icon: icon, "aria-label": ariaLabel, testId: testId, size: size, ...otherProps }, children));
3702
- });
3703
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (IconButton);
3704
- //# sourceMappingURL=IconButton.js.map
3705
-
3706
- /***/ }),
3707
-
3708
- /***/ 46481:
3709
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3710
-
3711
- "use strict";
3712
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3713
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3714
- /* harmony export */ });
3715
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3716
-
3717
- function LinkButton({ icon, inverse, children, disabled, iconPosition, size = 'regular', variant = 'primary', testId = 'fs-link-button', ...otherProps }) {
3718
- const linkRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
3719
- function onFocus(e) {
3720
- e.preventDefault();
3721
- if (disabled) {
3722
- linkRef.current?.blur();
3723
- }
3724
- }
3725
- return (react__WEBPACK_IMPORTED_MODULE_0__.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 },
3726
- react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { "data-fs-button-wrapper": true },
3727
- !!icon && iconPosition === 'left' && (react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", { "data-fs-button-icon": true }, icon)),
3728
- children && react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", null, children),
3729
- !!icon && iconPosition === 'right' && (react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", { "data-fs-button-icon": true }, icon)))));
3730
- }
3731
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LinkButton);
3732
- //# sourceMappingURL=LinkButton.js.map
3733
-
3734
- /***/ }),
3735
-
3736
- /***/ 40962:
3737
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3738
-
3739
- "use strict";
3740
-
3741
- // EXPORTS
3742
- __webpack_require__.d(__webpack_exports__, {
3743
- "Z": () => (/* binding */ Modal_Modal)
3744
- });
3745
-
3746
- // EXTERNAL MODULE: external "react"
3747
- var external_react_ = __webpack_require__(16689);
3748
- // EXTERNAL MODULE: external "react-dom"
3749
- var external_react_dom_ = __webpack_require__(66405);
3750
- ;// CONCATENATED MODULE: ../components/dist/atoms/Overlay/Overlay.js
3751
-
3752
- const Overlay = (0,external_react_.forwardRef)(function Overlay({ testId = 'fs-overlay', ...otherProps }, ref) {
3753
- return (external_react_.createElement("div", { ref: ref, "data-fs-overlay": true, role: "presentation", "data-testid": testId, ...otherProps }));
3754
- });
3755
- /* harmony default export */ const Overlay_Overlay = (Overlay);
3756
- //# sourceMappingURL=Overlay.js.map
3757
- // EXTERNAL MODULE: ../components/dist/hooks/UIProvider.js
3758
- var UIProvider = __webpack_require__(35728);
3759
- // EXTERNAL MODULE: ../components/dist/hooks/useFadeEffect.js
3760
- var useFadeEffect = __webpack_require__(2127);
3761
- // EXTERNAL MODULE: external "tabbable"
3762
- var external_tabbable_ = __webpack_require__(73823);
3763
- ;// CONCATENATED MODULE: ../components/dist/hooks/useTrapFocus.js
3764
-
3765
-
3766
- /*
3767
- * Element that will maintain the focus inside trapFocusRef, focus the first element,
3768
- * and focus back on the element that was in focus when useTrapFocus was triggered.
3769
- *
3770
- * Inspired by Reakit useTrapFocus https://github.com/reakit/reakit/blob/a211d94da9f3b683182568a56479b91afb1b85ae/packages/reakit/src/Dialog/__utils/useFocusTrap.ts
3771
- */
3772
- const useTrapFocus = ({ trapFocusRef, beforeElementRef, afterElementRef, }) => {
3773
- const tabbableNodesRef = (0,external_react_.useRef)();
3774
- const nodeToRestoreRef = (0,external_react_.useRef)(document.hasFocus() ? document.activeElement : null);
3775
- // Focus back on the element that was focused when useTrapFocus is triggered.
3776
- (0,external_react_.useEffect)(() => {
3777
- const nodeToRestore = nodeToRestoreRef.current;
3778
- return () => {
3779
- nodeToRestore?.focus();
3780
- };
3781
- }, [nodeToRestoreRef]);
3782
- // Set focus on first tabbable element
3783
- (0,external_react_.useEffect)(() => {
3784
- if (!trapFocusRef.current) {
3785
- return;
3786
- }
3787
- if (!tabbableNodesRef.current) {
3788
- tabbableNodesRef.current = (0,external_tabbable_.tabbable)(trapFocusRef.current);
3789
- }
3790
- const [firstTabbable] = tabbableNodesRef.current;
3791
- if (!firstTabbable) {
3792
- trapFocusRef.current.focus();
3793
- return;
3794
- }
3795
- firstTabbable.focus();
3796
- }, [trapFocusRef]);
3797
- // Handle loop focus. Set keydown and focusin event listeners
3798
- (0,external_react_.useEffect)(() => {
3799
- if (!trapFocusRef.current ||
3800
- !beforeElementRef.current ||
3801
- !afterElementRef.current) {
3802
- return;
3803
- }
3804
- const beforeElement = beforeElementRef.current;
3805
- const afterElement = afterElementRef.current;
3806
- const trapFocus = trapFocusRef.current;
3807
- const handleLoopFocus = (nativeEvent) => {
3808
- if (!document.hasFocus()) {
3809
- return;
3810
- }
3811
- tabbableNodesRef.current = (0,external_tabbable_.tabbable)(trapFocusRef.current);
3812
- if (!tabbableNodesRef.current.length) {
3813
- trapFocus.focus();
3814
- }
3815
- /*
3816
- * Handle loop focus from beforeElementRef. This node can only be focused if the user press shift tab.
3817
- * It will focus the last element of the trapFocusRef.
3818
- */
3819
- if (nativeEvent.target === beforeElement) {
3820
- tabbableNodesRef.current[tabbableNodesRef.current.length - 1]?.focus();
3821
- }
3822
- /*
3823
- * Handle loop focus from afterElementRef. This node can only be focused if the user press tab.
3824
- * It will focus the first element of the trapFocusRef.
3825
- */
3826
- if (nativeEvent.target === afterElement) {
3827
- tabbableNodesRef.current[0]?.focus();
3828
- }
3829
- };
3830
- beforeElement?.addEventListener('focusin', handleLoopFocus);
3831
- afterElement?.addEventListener('focusin', handleLoopFocus);
3832
- return () => {
3833
- beforeElement?.removeEventListener('focusin', handleLoopFocus);
3834
- afterElement?.removeEventListener('focusin', handleLoopFocus);
3835
- };
3836
- }, [tabbableNodesRef, afterElementRef, beforeElementRef, trapFocusRef]);
3837
- };
3838
- //# sourceMappingURL=useTrapFocus.js.map
3839
- ;// CONCATENATED MODULE: ../components/dist/molecules/Modal/ModalContent.js
3840
-
3841
-
3842
- const ModalContentPure = ({ beforeElementRef, trapFocusRef, afterElementRef, testId = 'store-modal-content', children, ...otherProps }) => {
3843
- return (external_react_.createElement(external_react_.Fragment, null,
3844
- external_react_.createElement("div", { ref: beforeElementRef, "data-testid": "beforeElement", tabIndex: 0, "aria-hidden": "true" }),
3845
- external_react_.createElement("div", { "data-fs-modal-content": true, "data-testid": testId, ref: trapFocusRef, "aria-modal": "true", role: "dialog", tabIndex: -1, ...otherProps }, children),
3846
- external_react_.createElement("div", { ref: afterElementRef, "data-testid": "afterElement", tabIndex: 0, "aria-hidden": "true" })));
3847
- };
3848
- const ModalContent = ({ children, ...otherProps }) => {
3849
- const trapFocusRef = (0,external_react_.useRef)(null);
3850
- const beforeElementRef = (0,external_react_.useRef)(null);
3851
- const afterElementRef = (0,external_react_.useRef)(null);
3852
- useTrapFocus({
3853
- beforeElementRef,
3854
- trapFocusRef,
3855
- afterElementRef,
3856
- });
3857
- return (external_react_.createElement(ModalContentPure, { ...otherProps, trapFocusRef: trapFocusRef, beforeElementRef: beforeElementRef, afterElementRef: afterElementRef, onClick: (event) => {
3858
- event.stopPropagation();
3859
- } }, children));
3860
- };
3861
- /* harmony default export */ const Modal_ModalContent = (ModalContent);
3862
- //# sourceMappingURL=ModalContent.js.map
3863
- ;// CONCATENATED MODULE: ../components/dist/molecules/Modal/Modal.js
3864
-
3865
-
3866
-
3867
-
3868
-
3869
- /*
3870
- * This component is based on @reach/dialog.
3871
- * https://github.com/reach/reach-ui/blob/main/packages/dialog/src/index.tsx
3872
- * https://reach.tech/dialog
3873
- */
3874
- const Modal = ({ children, testId = 'fs-modal', isOpen = true, onDismiss, overlayProps, ...otherProps }) => {
3875
- const { closeModal } = (0,UIProvider/* useUI */.l)();
3876
- const { fade, fadeOut, fadeIn } = (0,useFadeEffect/* useFadeEffect */.b)();
3877
- const handleBackdropClick = (event) => {
3878
- if (event.defaultPrevented) {
3879
- return;
3880
- }
3881
- event.stopPropagation();
3882
- fadeOut?.();
3883
- onDismiss?.();
3884
- };
3885
- const handleBackdropKeyDown = (event) => {
3886
- if (event.key !== 'Escape' || event.defaultPrevented) {
3887
- return;
3888
- }
3889
- event.stopPropagation();
3890
- fadeOut?.();
3891
- onDismiss?.();
3892
- };
3893
- return isOpen
3894
- ? (0,external_react_dom_.createPortal)(external_react_.createElement(Overlay_Overlay, { onClick: handleBackdropClick, onKeyDown: handleBackdropKeyDown, ...overlayProps },
3895
- external_react_.createElement(Modal_ModalContent, { onTransitionEnd: () => fade === 'out' && closeModal(), "data-fs-modal": true, "data-fs-modal-state": fade, testId: testId, ...otherProps }, typeof children === 'function'
3896
- ? children({ fade, fadeOut, fadeIn })
3897
- : children)), document.body)
3898
- : null;
3899
- };
3900
- /* harmony default export */ const Modal_Modal = (Modal);
3901
- //# sourceMappingURL=Modal.js.map
3902
-
3903
- /***/ }),
3904
-
3905
- /***/ 87149:
3906
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3907
-
3908
- "use strict";
3909
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3910
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3911
- /* harmony export */ });
3912
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3913
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(72644);
3914
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(90518);
3915
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(82185);
3916
-
3917
-
3918
- const SearchInputField = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function SearchInputField({ onSubmit, buttonIcon, 'aria-label': ariaLabel = 'search', testId = 'fs-search-input', buttonProps, ...otherProps }, ref) {
3919
- const inputRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
3920
- const formRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
3921
- const handleSubmit = (event) => {
3922
- event.preventDefault();
3923
- if (inputRef.current?.value !== '') {
3924
- onSubmit(inputRef.current.value);
3925
- }
3926
- };
3927
- (0,react__WEBPACK_IMPORTED_MODULE_0__.useImperativeHandle)(ref, () => ({
3928
- inputRef: inputRef.current,
3929
- formRef: formRef.current,
3930
- }));
3931
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement("form", { ref: formRef, "data-fs-search-input-field": true, "data-testid": testId, onSubmit: handleSubmit, role: "search" },
3932
- react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { ref: inputRef, "aria-label": ariaLabel, "data-fs-search-input-field-input": true, ...otherProps }),
3933
- react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, { type: "submit", "aria-label": "Submit Search", icon: buttonIcon ?? react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, { name: "MagnifyingGlass" }), size: "small", ...buttonProps })));
3934
- });
3935
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchInputField);
3936
- //# sourceMappingURL=SearchInputField.js.map
3937
-
3938
- /***/ }),
3939
-
3940
- /***/ 10187:
3941
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3942
-
3943
- "use strict";
3944
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3945
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__),
3946
- /* harmony export */ "c": () => (/* binding */ SearchContext)
3947
- /* harmony export */ });
3948
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3949
-
3950
-
3951
- const SearchContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);
3952
- function SearchProvider({ onSearchSelection, children, term, terms, products, isLoading, }) {
3953
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(SearchContext.Provider, { value: { onSearchSelection, term, terms, products, isLoading } }, children));
3954
- }
3955
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchProvider);
3956
- //# sourceMappingURL=SearchProvider.js.map
3957
-
3958
- /***/ }),
3959
-
3960
- /***/ 55429:
3961
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3962
-
3963
- "use strict";
3964
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3965
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3966
- /* harmony export */ });
3967
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3968
- /* harmony import */ var _molecules_SearchProvider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(10187);
3969
-
3970
-
3971
- 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) {
3972
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { ref: ref, "data-fs-search-input": true, "data-fs-search-input-dropdown-visible": visibleDropdown, "data-testid": testId, ...otherProps },
3973
- react__WEBPACK_IMPORTED_MODULE_0__.createElement(_molecules_SearchProvider__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { onSearchSelection: onSearchSelection, isLoading: isLoading, term: term, products: products, terms: terms }, children)));
3974
- });
3975
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchInput);
3976
- //# sourceMappingURL=SearchInput.js.map
3977
-
3978
- /***/ }),
3979
-
3980
- /***/ 95631:
3981
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3982
-
3983
- "use strict";
3984
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3985
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3986
- /* harmony export */ });
3987
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
3988
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(40962);
3989
-
3990
-
3991
- function SlideOver({ testId = 'fs-slide-over', isOpen, direction = 'leftSide', size = 'full', fade = 'out', children, overlayProps, onDismiss, ...otherProps }) {
3992
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { "data-fs-modal": null, "data-fs-slide-over": true, "data-fs-slide-over-direction": direction, "data-fs-slide-over-size": size, "data-fs-slide-over-state": fade, isOpen: isOpen, onDismiss: onDismiss, testId: testId, overlayProps: overlayProps, ...otherProps }, children));
3993
- }
3994
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SlideOver);
3995
- //# sourceMappingURL=SlideOver.js.map
3996
-
3997
- /***/ }),
3998
-
3999
- /***/ 53925:
4000
- /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4001
-
4002
- "use strict";
4003
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4004
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
4005
- /* harmony export */ });
4006
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
4007
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(90518);
4008
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(82185);
4009
-
4010
-
4011
- const SlideOverHeader = ({ children, closeBtnProps = {}, onClose, ...otherProps }) => {
4012
- return (react__WEBPACK_IMPORTED_MODULE_0__.createElement("header", { "data-fs-slide-over-header": true, ...otherProps },
4013
- children,
4014
- react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { "data-fs-slide-over-header-icon": true, "aria-label": "Close", icon: react__WEBPACK_IMPORTED_MODULE_0__.createElement(___WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, { name: "X" }), onClick: onClose, ...closeBtnProps })));
4015
- };
4016
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SlideOverHeader);
4017
- //# sourceMappingURL=SlideOverHeader.js.map
4018
-
4019
- /***/ })
4020
-
4021
- };
4022
- ;