@faststore/core 2.1.24 → 2.1.27

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 (158) hide show
  1. package/.turbo/turbo-build.log +2 -2
  2. package/package.json +4 -4
  3. package/src/components/ThirdPartyScripts/ThirdPartyScripts.tsx +5 -4
  4. package/src/components/ThirdPartyScripts/vtex.tsx +7 -0
  5. package/src/components/sections/BannerNewsletter/BannerNewsletter.tsx +1 -1
  6. package/src/components/sections/BannerNewsletter/section.module.scss +1 -1
  7. package/src/components/sections/BannerText/BannerText.tsx +24 -24
  8. package/src/components/sections/BannerText/Overrides.tsx +4 -4
  9. package/src/components/sections/BannerText/section.module.scss +1 -1
  10. package/src/customizations/components/overrides/BannerText.tsx +2 -2
  11. package/src/typings/overrides.d.ts +1 -1
  12. package/.next/BUILD_ID +0 -1
  13. package/.next/build-manifest.json +0 -129
  14. package/.next/cache/.tsbuildinfo +0 -1
  15. package/.next/cache/config.json +0 -7
  16. package/.next/cache/eslint/.cache_1gneedd +0 -1
  17. package/.next/cache/next-server.js.nft.json +0 -1
  18. package/.next/cache/webpack/client-production/0.pack +0 -0
  19. package/.next/cache/webpack/client-production/index.pack +0 -0
  20. package/.next/cache/webpack/server-production/0.pack +0 -0
  21. package/.next/cache/webpack/server-production/index.pack +0 -0
  22. package/.next/export-marker.json +0 -1
  23. package/.next/images-manifest.json +0 -1
  24. package/.next/next-server.js.nft.json +0 -1
  25. package/.next/package.json +0 -1
  26. package/.next/prerender-manifest.json +0 -1
  27. package/.next/react-loadable-manifest.json +0 -44
  28. package/.next/required-server-files.json +0 -1
  29. package/.next/routes-manifest.json +0 -1
  30. package/.next/server/chunks/123.js +0 -58
  31. package/.next/server/chunks/143.js +0 -106
  32. package/.next/server/chunks/144.js +0 -1338
  33. package/.next/server/chunks/183.js +0 -90
  34. package/.next/server/chunks/184.js +0 -61
  35. package/.next/server/chunks/186.js +0 -136
  36. package/.next/server/chunks/247.js +0 -61
  37. package/.next/server/chunks/253.js +0 -535
  38. package/.next/server/chunks/269.js +0 -517
  39. package/.next/server/chunks/287.js +0 -58
  40. package/.next/server/chunks/289.js +0 -242
  41. package/.next/server/chunks/312.js +0 -697
  42. package/.next/server/chunks/350.js +0 -143
  43. package/.next/server/chunks/487.js +0 -9142
  44. package/.next/server/chunks/502.js +0 -626
  45. package/.next/server/chunks/576.js +0 -90
  46. package/.next/server/chunks/597.js +0 -211
  47. package/.next/server/chunks/650.js +0 -9142
  48. package/.next/server/chunks/676.js +0 -32
  49. package/.next/server/chunks/721.js +0 -679
  50. package/.next/server/chunks/74.js +0 -4100
  51. package/.next/server/chunks/825.js +0 -4039
  52. package/.next/server/chunks/854.js +0 -72
  53. package/.next/server/chunks/859.js +0 -959
  54. package/.next/server/chunks/886.js +0 -120
  55. package/.next/server/chunks/907.js +0 -1956
  56. package/.next/server/chunks/98.js +0 -124
  57. package/.next/server/chunks/font-manifest.json +0 -1
  58. package/.next/server/font-manifest.json +0 -1
  59. package/.next/server/middleware-build-manifest.js +0 -1
  60. package/.next/server/middleware-manifest.json +0 -6
  61. package/.next/server/middleware-react-loadable-manifest.js +0 -1
  62. package/.next/server/pages/404.js +0 -386
  63. package/.next/server/pages/404.js.nft.json +0 -1
  64. package/.next/server/pages/500.js +0 -388
  65. package/.next/server/pages/500.js.nft.json +0 -1
  66. package/.next/server/pages/[...slug].js +0 -1005
  67. package/.next/server/pages/[...slug].js.nft.json +0 -1
  68. package/.next/server/pages/[slug]/p.js +0 -2390
  69. package/.next/server/pages/[slug]/p.js.nft.json +0 -1
  70. package/.next/server/pages/_app.js +0 -281
  71. package/.next/server/pages/_app.js.nft.json +0 -1
  72. package/.next/server/pages/_document.js +0 -344
  73. package/.next/server/pages/_document.js.nft.json +0 -1
  74. package/.next/server/pages/_error.js +0 -164
  75. package/.next/server/pages/_error.js.nft.json +0 -1
  76. package/.next/server/pages/account.js +0 -363
  77. package/.next/server/pages/account.js.nft.json +0 -1
  78. package/.next/server/pages/api/graphql.js +0 -365
  79. package/.next/server/pages/api/graphql.js.nft.json +0 -1
  80. package/.next/server/pages/api/preview.js +0 -148
  81. package/.next/server/pages/api/preview.js.nft.json +0 -1
  82. package/.next/server/pages/checkout.js +0 -363
  83. package/.next/server/pages/checkout.js.nft.json +0 -1
  84. package/.next/server/pages/en-US/404.html +0 -81
  85. package/.next/server/pages/en-US/404.json +0 -1
  86. package/.next/server/pages/en-US/500.html +0 -81
  87. package/.next/server/pages/en-US/500.json +0 -1
  88. package/.next/server/pages/en-US/account.html +0 -81
  89. package/.next/server/pages/en-US/account.json +0 -1
  90. package/.next/server/pages/en-US/checkout.html +0 -81
  91. package/.next/server/pages/en-US/checkout.json +0 -1
  92. package/.next/server/pages/en-US/login.html +0 -81
  93. package/.next/server/pages/en-US/login.json +0 -1
  94. package/.next/server/pages/en-US/s.html +0 -81
  95. package/.next/server/pages/en-US/s.json +0 -1
  96. package/.next/server/pages/en-US.html +0 -81
  97. package/.next/server/pages/en-US.json +0 -1
  98. package/.next/server/pages/index.js +0 -439
  99. package/.next/server/pages/index.js.nft.json +0 -1
  100. package/.next/server/pages/login.js +0 -368
  101. package/.next/server/pages/login.js.nft.json +0 -1
  102. package/.next/server/pages/s.js +0 -466
  103. package/.next/server/pages/s.js.nft.json +0 -1
  104. package/.next/server/pages-manifest.json +0 -16
  105. package/.next/server/webpack-api-runtime.js +0 -229
  106. package/.next/server/webpack-runtime.js +0 -229
  107. package/.next/static/chunks/130-15325805e3c8d5f4.js +0 -1
  108. package/.next/static/chunks/143.dd8a556e6957baa1.js +0 -1
  109. package/.next/static/chunks/495.0ecd099878b2a36d.js +0 -1
  110. package/.next/static/chunks/502.b14533723651e5a1.js +0 -1
  111. package/.next/static/chunks/548-ab84e9e8b49413ab.js +0 -1
  112. package/.next/static/chunks/597.f8d0595b113c70af.js +0 -1
  113. package/.next/static/chunks/64.7ea3677ac3a10e00.js +0 -1
  114. package/.next/static/chunks/651.7142f31ce1e052b3.js +0 -1
  115. package/.next/static/chunks/706-5aea41dd07970d2d.js +0 -1
  116. package/.next/static/chunks/738-67a288ca3569cdbb.js +0 -1
  117. package/.next/static/chunks/741.52f7fb873418346f.js +0 -1
  118. package/.next/static/chunks/791-63b1ccf9964b6517.js +0 -1
  119. package/.next/static/chunks/98.97381d2021f86cd9.js +0 -1
  120. package/.next/static/chunks/framework-dfd14d7ce6600b03.js +0 -1
  121. package/.next/static/chunks/main-fd466221927468fd.js +0 -1
  122. package/.next/static/chunks/pages/404-d5f20744ecd83121.js +0 -1
  123. package/.next/static/chunks/pages/500-3911549ab88d0378.js +0 -1
  124. package/.next/static/chunks/pages/[...slug]-3a37fd4d13cb2ba8.js +0 -1
  125. package/.next/static/chunks/pages/[slug]/p-bf47c90571846f86.js +0 -1
  126. package/.next/static/chunks/pages/_app-79d333aa6001a806.js +0 -1
  127. package/.next/static/chunks/pages/_error-a7a0c1d9bfbb4f38.js +0 -1
  128. package/.next/static/chunks/pages/account-d248acc931146694.js +0 -1
  129. package/.next/static/chunks/pages/checkout-97f6d6f36f041a6f.js +0 -1
  130. package/.next/static/chunks/pages/index-e9727cb06d9ae961.js +0 -1
  131. package/.next/static/chunks/pages/login-4cc4b8e52608f076.js +0 -1
  132. package/.next/static/chunks/pages/s-aabfa5c08338974a.js +0 -1
  133. package/.next/static/chunks/polyfills-c67a75d1b6f99dc8.js +0 -1
  134. package/.next/static/chunks/webpack-2926b308630c5ea8.js +0 -1
  135. package/.next/static/css/08e3fc80f9bad95d.css +0 -1
  136. package/.next/static/css/0e00026896a2ee3e.css +0 -1
  137. package/.next/static/css/1b23beb5af203ffb.css +0 -1
  138. package/.next/static/css/584640ffee46aa49.css +0 -1
  139. package/.next/static/css/6f33907361436e6c.css +0 -1
  140. package/.next/static/css/7486a2a5fcda5283.css +0 -1
  141. package/.next/static/css/7d822a137c54a781.css +0 -1
  142. package/.next/static/css/a49f71ae6bb528e0.css +0 -1
  143. package/.next/static/css/e02cdad8fc000339.css +0 -1
  144. package/.next/static/css/f9d59f597a4d8f82.css +0 -1
  145. package/.next/static/lF6HThNgw-5o0MZu-nxZC/_buildManifest.js +0 -1
  146. package/.next/static/lF6HThNgw-5o0MZu-nxZC/_ssgManifest.js +0 -1
  147. package/.next/trace +0 -80
  148. package/public/~partytown/debug/partytown-atomics.js +0 -556
  149. package/public/~partytown/debug/partytown-media.js +0 -374
  150. package/public/~partytown/debug/partytown-sandbox-sw.js +0 -543
  151. package/public/~partytown/debug/partytown-sw.js +0 -59
  152. package/public/~partytown/debug/partytown-ww-atomics.js +0 -1789
  153. package/public/~partytown/debug/partytown-ww-sw.js +0 -1781
  154. package/public/~partytown/debug/partytown.js +0 -72
  155. package/public/~partytown/partytown-atomics.js +0 -2
  156. package/public/~partytown/partytown-media.js +0 -2
  157. package/public/~partytown/partytown-sw.js +0 -2
  158. package/public/~partytown/partytown.js +0 -2
@@ -1,535 +0,0 @@
1
- exports.id = 253;
2
- exports.ids = [253];
3
- exports.modules = {
4
-
5
- /***/ 49253:
6
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7
-
8
- "use strict";
9
-
10
- // EXPORTS
11
- __webpack_require__.d(__webpack_exports__, {
12
- "Z": () => (/* reexport */ sections_Breadcrumb_Breadcrumb)
13
- });
14
-
15
- // EXTERNAL MODULE: external "react"
16
- var external_react_ = __webpack_require__(16689);
17
- var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
18
- // EXTERNAL MODULE: ./src/components/ui/Link/index.ts + 1 modules
19
- var Link = __webpack_require__(51093);
20
- // EXTERNAL MODULE: ../components/dist/atoms/Icon/Icon.js
21
- var Icon = __webpack_require__(25045);
22
- // EXTERNAL MODULE: ../components/dist/atoms/Link/Link.js
23
- var Link_Link = __webpack_require__(87865);
24
- ;// CONCATENATED MODULE: ../components/dist/molecules/Dropdown/contexts/DropdownContext.js
25
-
26
- const defaultState = {
27
- isOpen: false,
28
- dropdownButtonRef: null,
29
- selectedDropdownItemIndexRef: null,
30
- dropdownItemsRef: null,
31
- id: 'fs-dropdown',
32
- };
33
- const DropdownContext = (0,external_react_.createContext)(defaultState);
34
- /* harmony default export */ const contexts_DropdownContext = (DropdownContext);
35
- //# sourceMappingURL=DropdownContext.js.map
36
- ;// CONCATENATED MODULE: ../components/dist/molecules/Dropdown/Dropdown.js
37
-
38
-
39
- const Dropdown = ({ children, isOpen: isOpenDefault = false, onDismiss, id = 'fs-dropdown', }) => {
40
- const [isOpen, setIsOpen] = (0,external_react_.useState)(isOpenDefault);
41
- const dropdownItemsRef = (0,external_react_.useRef)([]);
42
- const selectedDropdownItemIndexRef = (0,external_react_.useRef)(0);
43
- const dropdownButtonRef = (0,external_react_.useRef)(null);
44
- const close = (0,external_react_.useCallback)(() => {
45
- setIsOpen(false);
46
- onDismiss?.();
47
- }, [onDismiss]);
48
- const open = () => {
49
- setIsOpen(true);
50
- };
51
- const toggle = (0,external_react_.useCallback)(() => {
52
- setIsOpen((old) => {
53
- if (old) {
54
- onDismiss?.();
55
- dropdownButtonRef.current?.focus();
56
- }
57
- return !old;
58
- });
59
- }, [onDismiss]);
60
- (0,external_react_.useEffect)(() => {
61
- setIsOpen(isOpenDefault);
62
- }, [isOpenDefault]);
63
- (0,external_react_.useEffect)(() => {
64
- isOpen && dropdownItemsRef?.current[0]?.focus();
65
- }, [isOpen]);
66
- (0,external_react_.useEffect)(() => {
67
- let firstClick = true;
68
- const event = (e) => {
69
- const someItemWasClicked = dropdownItemsRef?.current.some((item) => e.target === item);
70
- if (firstClick) {
71
- firstClick = false;
72
- return;
73
- }
74
- !someItemWasClicked && close();
75
- };
76
- if (isOpen) {
77
- document.addEventListener('click', event);
78
- }
79
- else {
80
- document.removeEventListener('click', event);
81
- }
82
- return () => {
83
- document.removeEventListener('click', event);
84
- };
85
- }, [close, isOpen]);
86
- const value = (0,external_react_.useMemo)(() => {
87
- return {
88
- isOpen,
89
- close,
90
- open,
91
- toggle,
92
- dropdownButtonRef,
93
- onDismiss,
94
- selectedDropdownItemIndexRef,
95
- dropdownItemsRef,
96
- id,
97
- };
98
- }, [close, id, isOpen, onDismiss, toggle]);
99
- return (external_react_default().createElement(contexts_DropdownContext.Provider, { value: value }, children));
100
- };
101
- /* harmony default export */ const Dropdown_Dropdown = (Dropdown);
102
- //# sourceMappingURL=Dropdown.js.map
103
- // EXTERNAL MODULE: ../components/dist/atoms/Button/Button.js
104
- var Button = __webpack_require__(57578);
105
- ;// CONCATENATED MODULE: ../components/dist/molecules/Dropdown/hooks/useDropdown.js
106
-
107
-
108
- /**
109
- * Hook to use the Dropdown context.
110
- * @returns Dropdown context.
111
- */
112
- const useDropdown = () => {
113
- const context = (0,external_react_.useContext)(contexts_DropdownContext);
114
- if (context === undefined) {
115
- throw new Error('Do not use useDropdown hook outside the Dropdown context.');
116
- }
117
- return context;
118
- };
119
- //# sourceMappingURL=useDropdown.js.map
120
- ;// CONCATENATED MODULE: ../components/dist/molecules/Dropdown/DropdownButton.js
121
-
122
-
123
-
124
- const DropdownButton = (0,external_react_.forwardRef)(function DropdownButton({ children, testId = 'fs-dropdown-button', ...otherProps }, ref) {
125
- const { toggle, dropdownButtonRef, isOpen, id } = useDropdown();
126
- (0,external_react_.useImperativeHandle)(ref, () => dropdownButtonRef.current, [
127
- dropdownButtonRef,
128
- ]);
129
- return (external_react_default().createElement(Button/* default */.Z, { "data-fs-dropdown-button": true, onClick: toggle, "data-testid": testId, ref: dropdownButtonRef, "aria-expanded": isOpen, "aria-haspopup": "menu", "aria-controls": id, variant: 'tertiary', ...otherProps }, children));
130
- });
131
- /* harmony default export */ const Dropdown_DropdownButton = (DropdownButton);
132
- //# sourceMappingURL=DropdownButton.js.map
133
- // EXTERNAL MODULE: external "react-dom"
134
- var external_react_dom_ = __webpack_require__(66405);
135
- ;// CONCATENATED MODULE: ../components/dist/molecules/Dropdown/hooks/useDropdownPosition.js
136
-
137
- /**
138
- * Hook used to find the DropdownMenu position in relation to DropdownButton
139
- * @returns Style with positions.
140
- */
141
- const useDropdownPosition = () => {
142
- const { dropdownButtonRef } = useDropdown();
143
- // Necessary to use this component in SSR
144
- const isBrowser = typeof window !== 'undefined';
145
- const buttonRect = dropdownButtonRef?.current?.getBoundingClientRect();
146
- const topLevel = buttonRect?.top ?? 0;
147
- const topOffset = buttonRect?.height ?? 0;
148
- const leftLevel = buttonRect?.left ?? 0;
149
- // The scroll properties fix the position of DropdownMenu when the scroll is activated.
150
- const scrollTop = isBrowser ? document?.documentElement?.scrollTop : 0;
151
- const scrollLeft = isBrowser ? document?.documentElement?.scrollLeft : 0;
152
- const topPosition = topLevel + topOffset + scrollTop;
153
- const leftPosition = leftLevel + scrollLeft;
154
- return {
155
- position: 'absolute',
156
- top: topPosition,
157
- left: leftPosition,
158
- };
159
- };
160
- //# sourceMappingURL=useDropdownPosition.js.map
161
- ;// CONCATENATED MODULE: ../components/dist/molecules/Dropdown/DropdownMenu.js
162
-
163
-
164
-
165
-
166
- /*
167
- * This component is based on @reach/dialog.
168
- * https://github.com/reach/reach-ui/blob/main/packages/dialog/src/index.tsx
169
- * https://reach.tech/dialog
170
- */
171
- const DropdownMenu = ({ children, testId = 'fs-dropdown-menu', size = 'regular', style, ...otherProps }) => {
172
- const { isOpen, close, dropdownItemsRef, selectedDropdownItemIndexRef, dropdownButtonRef, id } = useDropdown();
173
- const dropdownPosition = useDropdownPosition();
174
- const childrenLength = external_react_default().Children.toArray(children).length;
175
- const handleDownPress = () => {
176
- if (selectedDropdownItemIndexRef.current < childrenLength - 1) {
177
- selectedDropdownItemIndexRef.current++;
178
- }
179
- else {
180
- selectedDropdownItemIndexRef.current = 0;
181
- }
182
- dropdownItemsRef?.current[selectedDropdownItemIndexRef.current]?.focus();
183
- };
184
- const handleUpPress = () => {
185
- if (selectedDropdownItemIndexRef.current > 0) {
186
- selectedDropdownItemIndexRef.current--;
187
- }
188
- else {
189
- selectedDropdownItemIndexRef.current = childrenLength - 1;
190
- }
191
- dropdownItemsRef?.current[selectedDropdownItemIndexRef.current]?.focus();
192
- };
193
- const handleHomePress = () => {
194
- selectedDropdownItemIndexRef.current = 0;
195
- dropdownItemsRef?.current[selectedDropdownItemIndexRef.current]?.focus();
196
- };
197
- const handleEndPress = () => {
198
- selectedDropdownItemIndexRef.current = childrenLength - 1;
199
- dropdownItemsRef?.current[selectedDropdownItemIndexRef.current]?.focus();
200
- };
201
- const handleEscapePress = () => {
202
- close?.();
203
- dropdownButtonRef?.current?.focus();
204
- };
205
- const handleBackdropKeyDown = (event) => {
206
- if (event.defaultPrevented || event.key === 'Enter') {
207
- return;
208
- }
209
- event.preventDefault();
210
- event.key === 'Escape' && handleEscapePress();
211
- event.key === 'ArrowDown' && handleDownPress();
212
- event.key === 'ArrowUp' && handleUpPress();
213
- event.key === 'Home' && handleHomePress();
214
- event.key === 'End' && handleEndPress();
215
- event.stopPropagation();
216
- };
217
- const clearChildrenReferences = () => {
218
- dropdownItemsRef.current = [];
219
- return null;
220
- };
221
- return isOpen
222
- ? (0,external_react_dom_.createPortal)(external_react_default().createElement("div", { role: "presentation", "data-fs-dropdown-overlay": true, onKeyDown: handleBackdropKeyDown, "data-testid": `${testId}-overlay` },
223
- external_react_default().createElement("div", { role: "menu", "aria-orientation": "vertical", "data-fs-dropdown-menu": true, "data-fs-dropdown-menu-size": size, "data-testid": testId, style: { ...dropdownPosition, ...style }, id: id, ...otherProps }, children)), document.body)
224
- : clearChildrenReferences();
225
- };
226
- /* harmony default export */ const Dropdown_DropdownMenu = (DropdownMenu);
227
- //# sourceMappingURL=DropdownMenu.js.map
228
- ;// CONCATENATED MODULE: ../components/dist/molecules/Dropdown/DropdownItem.js
229
-
230
-
231
- const DropdownItem = (0,external_react_.forwardRef)(function Button({ children, icon, onClick, testId = 'fs-dropdown-item', ...otherProps }, ref) {
232
- const { dropdownItemsRef, selectedDropdownItemIndexRef, close } = useDropdown();
233
- const [dropdownItemIndex, setDropdownItemIndex] = (0,external_react_.useState)(0);
234
- const dropdownItemRef = (0,external_react_.useRef)();
235
- const addToRefs = (el) => {
236
- if (el && !dropdownItemsRef?.current.includes(el)) {
237
- dropdownItemsRef?.current.push(el);
238
- setDropdownItemIndex(dropdownItemsRef?.current.findIndex((element) => element === el) ?? 0);
239
- }
240
- dropdownItemRef.current = el;
241
- };
242
- const onFocusItem = () => {
243
- selectedDropdownItemIndexRef.current = dropdownItemIndex;
244
- dropdownItemsRef?.current[selectedDropdownItemIndexRef.current]?.focus();
245
- };
246
- const handleOnClickItem = (event) => {
247
- onClick?.(event);
248
- close?.();
249
- };
250
- (0,external_react_.useImperativeHandle)(ref, () => dropdownItemRef.current, []);
251
- return (external_react_default().createElement("button", { "data-fs-dropdown-item": true, "data-testid": testId, ref: addToRefs, onFocus: onFocusItem, onMouseEnter: onFocusItem, onClick: handleOnClickItem, role: "menuitem", tabIndex: -1, "data-index": dropdownItemIndex, ...otherProps },
252
- !!icon && icon,
253
- children));
254
- });
255
- /* harmony default export */ const Dropdown_DropdownItem = (DropdownItem);
256
- //# sourceMappingURL=DropdownItem.js.map
257
- // EXTERNAL MODULE: ../components/dist/atoms/List/List.js
258
- var List = __webpack_require__(41329);
259
- ;// CONCATENATED MODULE: ../components/dist/molecules/Breadcrumb/Divider.js
260
-
261
- const Divider = ({ divider, testId }) => {
262
- const props = {
263
- 'data-fs-breadcrumb-divider': true,
264
- 'aria-hidden': true,
265
- 'data-testid': `${testId}-divider`,
266
- };
267
- if (external_react_default().isValidElement(divider)) {
268
- return external_react_default().cloneElement(divider, props);
269
- }
270
- return external_react_default().createElement("span", { ...props }, divider ?? '/');
271
- };
272
- /* harmony default export */ const Breadcrumb_Divider = (Divider);
273
- //# sourceMappingURL=Divider.js.map
274
- ;// CONCATENATED MODULE: ../components/dist/molecules/Breadcrumb/ListItem.js
275
-
276
-
277
- const ListItem = ({ children, isLastItem, divider, testId }) => {
278
- const props = {
279
- 'data-testid': `${testId}-item`,
280
- 'data-fs-breadcrumb-item': isLastItem ? 'current' : true,
281
- 'aria-current': isLastItem ? 'page' : undefined,
282
- };
283
- if (!external_react_default().isValidElement(children)) {
284
- return (external_react_default().createElement("li", { "data-fs-breadcrumb-list-item": true },
285
- external_react_default().createElement("span", { ...props },
286
- children,
287
- isLastItem ? null : external_react_default().createElement(Breadcrumb_Divider, { divider: divider, testId: testId }))));
288
- }
289
- return (external_react_default().createElement("li", { "data-fs-breadcrumb-list-item": true },
290
- external_react_default().cloneElement(children, props),
291
- isLastItem ? null : external_react_default().createElement(Breadcrumb_Divider, { divider: divider, testId: testId })));
292
- };
293
- /* harmony default export */ const Breadcrumb_ListItem = (ListItem);
294
- //# sourceMappingURL=ListItem.js.map
295
- ;// CONCATENATED MODULE: ../components/dist/molecules/Breadcrumb/BreadcrumbPure.js
296
-
297
-
298
-
299
- const BreadcrumbPure = (0,external_react_.forwardRef)(function BreadcrumbPure({ children, divider: rawDivider = '', testId = 'fs-breadcrumb', ...otherProps }, ref) {
300
- return (external_react_default().createElement("nav", { "aria-label": "Breadcrumb", role: "navigation", ref: ref, "data-fs-breadcrumb": true, "data-testid": testId, ...otherProps },
301
- external_react_default().createElement(List/* default */.Z, { as: "ol", "data-fs-breadcrumb-list": true, "data-fs-content": "breadcrumb" }, external_react_default().Children.toArray(children).map((child, index, childrenArray) => {
302
- const isLastItem = index === childrenArray.length - 1;
303
- return (external_react_default().createElement(Breadcrumb_ListItem, { isLastItem: isLastItem, divider: rawDivider, key: `breadcrumb-${index}`, testId: testId }, child));
304
- }))));
305
- });
306
- /* harmony default export */ const Breadcrumb_BreadcrumbPure = (BreadcrumbPure);
307
- //# sourceMappingURL=BreadcrumbPure.js.map
308
- ;// CONCATENATED MODULE: ../components/dist/molecules/Breadcrumb/BreadcrumbBase.js
309
-
310
-
311
-
312
-
313
-
314
- const BreadcrumbBase = (0,external_react_.forwardRef)(function BreadcrumbBase({ children, divider: rawDivider = '', testId = 'fs-breadcrumb', breadcrumbList, isDesktop = false, renderLink, homeLink, dropdownButtonIcon = external_react_default().createElement(Icon/* default */.Z, { name: "DotsThree" }), collapsedItemsIcon = (external_react_default().createElement(Icon/* default */.Z, { "data-fs-dropdown-item-icon": true, name: "ArrowElbowDownRight" })), ...otherProps }, ref) {
315
- const firstItem = isDesktop ? breadcrumbList[0] : null;
316
- const mediumItems = isDesktop
317
- ? breadcrumbList.slice(1, -2)
318
- : breadcrumbList.slice(0, -2);
319
- const lastItems = breadcrumbList.slice(-2);
320
- const collapseBreadcrumb = breadcrumbList.length > 4;
321
- const breadcrumbLink = (0,external_react_.useCallback)((renderLinkProps) => {
322
- const breadcrumbItem = renderLink?.(renderLinkProps);
323
- const itemProps = renderLinkProps.collapsed
324
- ? {
325
- 'data-fs-breadcrumb-dropdown-link': true,
326
- }
327
- : {
328
- 'data-fs-breadcrumb-link': true,
329
- };
330
- return breadcrumbItem ? ((0,external_react_.cloneElement)(breadcrumbItem, {
331
- ...itemProps,
332
- key: renderLinkProps.itemProps.position,
333
- })) : (external_react_default().createElement(Link_Link/* default */.Z, { ...itemProps, href: renderLinkProps.itemProps.item, key: renderLinkProps.itemProps.position }, renderLinkProps.itemProps.name));
334
- }, [renderLink]);
335
- return (external_react_default().createElement(Breadcrumb_BreadcrumbPure, { ref: ref, "data-fs-breadcrumb-is-desktop": isDesktop, ...otherProps },
336
- homeLink,
337
- !collapseBreadcrumb &&
338
- breadcrumbList.map((item, index) => {
339
- return breadcrumbList.length === index + 1 ? (external_react_default().createElement("span", { key: String(item.position) }, item.name)) : (breadcrumbLink({ itemProps: item, collapsed: false }));
340
- }),
341
- collapseBreadcrumb &&
342
- firstItem &&
343
- breadcrumbLink({ itemProps: firstItem, collapsed: false }),
344
- collapseBreadcrumb && (external_react_default().createElement(Dropdown_Dropdown, null,
345
- external_react_default().createElement(Dropdown_DropdownButton, { "data-fs-breadcrumb-dropdown-button": true, size: "small" }, dropdownButtonIcon),
346
- external_react_default().createElement(Dropdown_DropdownMenu, { "data-fs-breadcrumb-dropdown-menu": true }, mediumItems.map((item) => (external_react_default().createElement(Dropdown_DropdownItem, { "data-fs-breadcrumb-dropdown-item": true, key: String(item.position), icon: collapsedItemsIcon }, breadcrumbLink({ itemProps: item, collapsed: true }))))))),
347
- collapseBreadcrumb &&
348
- lastItems.map((item, index) => {
349
- return lastItems.length === index + 1 ? (external_react_default().createElement("span", { key: String(item.position) }, item.name)) : (breadcrumbLink({ itemProps: item, collapsed: false }));
350
- })));
351
- });
352
- /* harmony default export */ const Breadcrumb_BreadcrumbBase = (BreadcrumbBase);
353
- //# sourceMappingURL=BreadcrumbBase.js.map
354
- ;// CONCATENATED MODULE: ../components/dist/molecules/Breadcrumb/Breadcrumb.js
355
-
356
-
357
- const Breadcrumb = ({ breadcrumbList, ...otherProps }) => (external_react_default().createElement((external_react_default()).Fragment, null,
358
- external_react_default().createElement(Breadcrumb_BreadcrumbBase, { breadcrumbList: breadcrumbList, ...otherProps }),
359
- external_react_default().createElement(Breadcrumb_BreadcrumbBase, { breadcrumbList: breadcrumbList, isDesktop: true, ...otherProps })));
360
- /* harmony default export */ const Breadcrumb_Breadcrumb = (Breadcrumb);
361
- //# sourceMappingURL=Breadcrumb.js.map
362
- ;// CONCATENATED MODULE: ./src/customizations/components/overrides/Breadcrumb.tsx
363
- // This is an example of how it can be used on the starter.
364
- const SECTION = 'Breadcrumb';
365
- const overrides = {
366
- name: SECTION,
367
- components: {
368
- Breadcrumb: {
369
- props: {}
370
- },
371
- Icon: {
372
- props: {}
373
- }
374
- }
375
- };
376
- /* harmony default export */ const overrides_Breadcrumb = (overrides);
377
- ;// CONCATENATED MODULE: ./src/components/sections/Breadcrumb/Overrides.tsx
378
- 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; }
379
-
380
- 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; }
381
-
382
- 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; }
383
-
384
-
385
-
386
- const breadcrumbComponentsCustomization = {};
387
- const breadcrumbPropsCustomization = {};
388
- Object.entries(overrides_Breadcrumb.components).forEach(([key, value]) => {
389
- if (value.Component) {
390
- breadcrumbComponentsCustomization[key] = value.Component;
391
- }
392
- });
393
- Object.entries(overrides_Breadcrumb.components).forEach(([key, value]) => {
394
- if (value.props) {
395
- breadcrumbPropsCustomization[key] = value.props;
396
- }
397
- });
398
-
399
- const Components = _objectSpread({
400
- Breadcrumb: Breadcrumb_Breadcrumb,
401
- Icon: Icon/* default */.Z
402
- }, breadcrumbComponentsCustomization);
403
-
404
-
405
- // EXTERNAL MODULE: external "react/jsx-runtime"
406
- var jsx_runtime_ = __webpack_require__(20997);
407
- ;// CONCATENATED MODULE: ./src/components/ui/Breadcrumb/Breadcrumb.tsx
408
- const _excluded = ["icon", "alt"];
409
-
410
- function Breadcrumb_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; }
411
-
412
- function Breadcrumb_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? Breadcrumb_ownKeys(Object(source), !0).forEach(function (key) { Breadcrumb_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : Breadcrumb_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
413
-
414
- function Breadcrumb_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; }
415
-
416
- 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; }
417
-
418
- 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; }
419
-
420
-
421
-
422
-
423
-
424
- const {
425
- Breadcrumb: BreadcrumbWrapper,
426
- Icon: Breadcrumb_Icon
427
- } = Components;
428
-
429
- const Breadcrumb_Breadcrumb_Breadcrumb = _ref => {
430
- let {
431
- icon = breadcrumbPropsCustomization.Icon.name ?? 'Home',
432
- alt = 'Go to homepage'
433
- } = _ref,
434
- otherProps = _objectWithoutProperties(_ref, _excluded);
435
-
436
- return /*#__PURE__*/jsx_runtime_.jsx(BreadcrumbWrapper, Breadcrumb_objectSpread(Breadcrumb_objectSpread({
437
- homeLink: /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
438
- "data-fs-breadcrumb-link": true,
439
- "data-fs-breadcrumb-link-home": true,
440
- "aria-label": alt,
441
- href: "/",
442
- prefetch: false,
443
- children: /*#__PURE__*/jsx_runtime_.jsx(Breadcrumb_Icon, Breadcrumb_objectSpread(Breadcrumb_objectSpread({
444
- width: 18,
445
- height: 18,
446
- weight: "bold"
447
- }, breadcrumbPropsCustomization.Icon), {}, {
448
- name: icon
449
- }))
450
- }),
451
- renderLink: ({
452
- itemProps: {
453
- item: link,
454
- name
455
- }
456
- }) => /*#__PURE__*/jsx_runtime_.jsx(Link/* default */.Z, {
457
- "data-fs-breadcrumb-link": true,
458
- href: link,
459
- prefetch: false,
460
- children: name
461
- })
462
- }, breadcrumbPropsCustomization.Breadcrumb), otherProps));
463
- };
464
-
465
- /* harmony default export */ const ui_Breadcrumb_Breadcrumb = (/*#__PURE__*/(0,external_react_.memo)(Breadcrumb_Breadcrumb_Breadcrumb));
466
- ;// CONCATENATED MODULE: ./src/components/ui/Breadcrumb/index.ts
467
-
468
- // EXTERNAL MODULE: ./src/components/sections/Section/index.ts
469
- var Section = __webpack_require__(57067);
470
- // EXTERNAL MODULE: ./src/components/sections/Breadcrumb/section.module.scss
471
- var section_module = __webpack_require__(25000);
472
- var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
473
- ;// CONCATENATED MODULE: ./src/components/sections/Breadcrumb/Breadcrumb.tsx
474
- const Breadcrumb_excluded = ["context"];
475
-
476
- function Breadcrumb_Breadcrumb_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; }
477
-
478
- function Breadcrumb_Breadcrumb_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? Breadcrumb_Breadcrumb_ownKeys(Object(source), !0).forEach(function (key) { Breadcrumb_Breadcrumb_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : Breadcrumb_Breadcrumb_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
479
-
480
- function Breadcrumb_Breadcrumb_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; }
481
-
482
- function Breadcrumb_objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = Breadcrumb_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; }
483
-
484
- function Breadcrumb_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; }
485
-
486
-
487
-
488
-
489
-
490
-
491
-
492
- const isProduct = x => x?.sku != undefined && x?.sku != null;
493
-
494
- const isCollection = x => x?.seo != undefined && x?.seo != null && x?.sku == undefined;
495
-
496
- function BreadcrumbSection(_ref) {
497
- let {
498
- context
499
- } = _ref,
500
- otherProps = Breadcrumb_objectWithoutProperties(_ref, Breadcrumb_excluded);
501
-
502
- const title = isCollection(context) ? context?.seo?.title : 'All Products';
503
- const fallback = [{
504
- item: '/',
505
- name: title,
506
- position: 1
507
- }];
508
- const breadcrumbList = isProduct(context) ? context?.breadcrumbList?.itemListElement : isCollection(context) ? context?.breadcrumbList?.itemListElement : fallback;
509
- return /*#__PURE__*/jsx_runtime_.jsx(Section/* default */.Z, {
510
- className: `${(section_module_default()).section} section-breadcrumb`,
511
- children: /*#__PURE__*/jsx_runtime_.jsx(ui_Breadcrumb_Breadcrumb, Breadcrumb_Breadcrumb_objectSpread({
512
- breadcrumbList: breadcrumbList
513
- }, otherProps))
514
- });
515
- }
516
-
517
- /* harmony default export */ const sections_Breadcrumb_Breadcrumb = (/*#__PURE__*/(0,external_react_.memo)(BreadcrumbSection));
518
- ;// CONCATENATED MODULE: ./src/components/sections/Breadcrumb/index.ts
519
-
520
-
521
- /***/ }),
522
-
523
- /***/ 25000:
524
- /***/ ((module) => {
525
-
526
- // Exports
527
- module.exports = {
528
- "section": "section_section__hRV9B"
529
- };
530
-
531
-
532
- /***/ })
533
-
534
- };
535
- ;