@anywayseo/tools 5.2.0 → 5.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/dist/components/base/image/index.d.ts +10 -0
  2. package/dist/components/base/index.d.ts +3 -0
  3. package/dist/components/base/social-network/icons/facebook/index.d.ts +2 -0
  4. package/dist/components/base/social-network/icons/index.d.ts +5 -0
  5. package/dist/components/base/social-network/icons/instagram/index.d.ts +2 -0
  6. package/dist/components/base/social-network/icons/pinterest/index.d.ts +2 -0
  7. package/dist/components/base/social-network/icons/x/index.d.ts +2 -0
  8. package/dist/components/base/social-network/icons/youtube/index.d.ts +2 -0
  9. package/dist/components/base/social-network/index.d.ts +5 -0
  10. package/dist/components/base/social-networks/index.d.ts +8 -0
  11. package/dist/components/game-demo/preview/index.d.ts +2 -2
  12. package/dist/components/index.cjs +5 -2
  13. package/dist/components/index.mjs +5 -2
  14. package/dist/{index-bNvgXBvA.js → index-4Zb1neOM.js} +306 -231
  15. package/dist/{index-CtmxlomQ.mjs → index-BM-_Lr_j.mjs} +115 -40
  16. package/dist/{index-BFhrFJqB.js → index-BbxOP7UY.js} +8 -4
  17. package/dist/{index-Cn8RI_2O.js → index-BltrZp3R.js} +32 -9
  18. package/dist/{index-DA6TBpuE.mjs → index-Bwlxdh5F.mjs} +24 -1
  19. package/dist/{index-BJQgELmZ.mjs → index-C4sJXfkN.mjs} +6 -2
  20. package/dist/index.cjs +6 -3
  21. package/dist/index.mjs +6 -3
  22. package/dist/providers/index.cjs +2 -2
  23. package/dist/providers/index.mjs +2 -2
  24. package/dist/types/components/how-to/index.d.ts +2 -2
  25. package/dist/types/components/image/index.d.ts +4 -2
  26. package/dist/types/components/index.d.ts +1 -0
  27. package/dist/types/components/social-network/index.d.ts +6 -0
  28. package/dist/types/content/author/index.d.ts +3 -8
  29. package/dist/types/site/index.d.ts +4 -3
  30. package/package.json +3 -2
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  const jsxRuntime = require("react/jsx-runtime");
3
- const react$1 = require("@chakra-ui/react");
3
+ const react = require("@chakra-ui/react");
4
4
  const reactI18next = require("react-i18next");
5
- const index = require("./index-Cn8RI_2O.js");
6
- const react = require("react");
5
+ require("react-medium-image-zoom");
6
+ const index = require("./index-BltrZp3R.js");
7
+ const react$1 = require("react");
7
8
  const index$3 = require("./index-C6MG_f24.js");
8
9
  const index$5 = require("./index-CJVr79Z2.js");
9
10
  const react$2 = require("@mdx-js/react");
@@ -13,13 +14,96 @@ const index$2 = require("./index-At00w6EN.js");
13
14
  const index$1 = require("./index-CAfBnNV6.js");
14
15
  const i18next = require("i18next");
15
16
  const Markdown = require("react-markdown");
17
+ const FacebookIcon = (props) => {
18
+ return /* @__PURE__ */ jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", "aria-label": "Facebook", ...props, children: [
19
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "1", y: "1", width: "22", height: "22", rx: "5", fill: "none", stroke: "currentColor", strokeWidth: "2" }),
20
+ /* @__PURE__ */ jsxRuntime.jsx(
21
+ "path",
22
+ {
23
+ d: "M13.5 8h2V6h-2c-2.2 0-3.5 1.3-3.5 3.5V11H8v2h2v5h2v-5h2l.5-2h-2v-1.3c0-.5.2-.7 1-.7Z",
24
+ fill: "currentColor"
25
+ }
26
+ )
27
+ ] });
28
+ };
29
+ const InstagramIcon = (props) => {
30
+ return /* @__PURE__ */ jsxRuntime.jsxs(
31
+ "svg",
32
+ {
33
+ xmlns: "http://www.w3.org/2000/svg",
34
+ width: "24",
35
+ height: "24",
36
+ viewBox: "0 0 24 24",
37
+ "aria-label": "Instagram",
38
+ ...props,
39
+ children: [
40
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "1", y: "1", width: "22", height: "22", rx: "5", fill: "none", stroke: "currentColor", strokeWidth: "2" }),
41
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "4", fill: "none", stroke: "currentColor", "stroke-width": "2" }),
42
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "17", cy: "7", r: "1.25", fill: "currentColor" })
43
+ ]
44
+ }
45
+ );
46
+ };
47
+ const PinterestIcon = (props) => {
48
+ return /* @__PURE__ */ jsxRuntime.jsx(
49
+ "svg",
50
+ {
51
+ xmlns: "http://www.w3.org/2000/svg",
52
+ width: "24",
53
+ height: "24",
54
+ viewBox: "0 0 24 24",
55
+ "aria-label": "Pinterest",
56
+ ...props,
57
+ children: /* @__PURE__ */ jsxRuntime.jsx(
58
+ "path",
59
+ {
60
+ fill: "currentColor",
61
+ d: "M12 0C5.373 0 0 5.373 0 12c0 4.99 3.657 9.128 8.438 10.122-.117-.858-.222-2.178.047-3.116.242-.83 1.557-5.288 1.557-5.288s-.396-.792-.396-1.963c0-1.84 1.067-3.215 2.395-3.215 1.13 0 1.675.848 1.675 1.866 0 1.138-.724 2.842-1.097 4.421-.312 1.319.663 2.395 1.965 2.395 2.358 0 3.947-3.032 3.947-6.617 0-2.727-1.84-4.769-5.178-4.769-3.774 0-6.134 2.822-6.134 5.97 0 1.086.322 1.852.827 2.443.232.274.264.384.18.698-.06.23-.197.786-.256 1.007-.084.322-.34.437-.628.318-1.75-.714-2.564-2.63-2.564-4.785 0-3.555 2.998-7.817 8.946-7.817 4.782 0 7.923 3.454 7.923 7.168 0 4.924-2.74 8.6-6.781 8.6-1.356 0-2.63-.73-3.066-1.565l-.833 3.173c-.301 1.147-1.118 2.582-1.667 3.455C9.708 23.812 10.828 24 12 24c6.627 0 12-5.373 12-12S18.627 0 12 0z"
62
+ }
63
+ )
64
+ }
65
+ );
66
+ };
67
+ const XcomIcon = (props) => {
68
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", "aria-label": "X", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
69
+ "path",
70
+ {
71
+ fill: "currentColor",
72
+ d: "M18.244 2H21l-6.57 7.498L22 22h-5.657l-4.403-5.808L6.06 22H3.302l7.02-8.006L2 2h5.822l3.983 5.293L18.244 2zM16.97 20h1.9L8.153 4h-1.9L16.97 20z"
73
+ }
74
+ ) });
75
+ };
76
+ const YoutubeIcon = (props) => {
77
+ return /* @__PURE__ */ jsxRuntime.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", "aria-label": "YouTube", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
78
+ "path",
79
+ {
80
+ fill: "currentColor",
81
+ d: "M23.498 6.186a2.974 2.974 0 0 0-2.095-2.107C19.505 3.5 12 3.5 12 3.5s-7.505 0-9.403.579A2.974 2.974 0 0 0 .502 6.186C0 8.09 0 12 0 12s0 3.91.502 5.814a2.974 2.974 0 0 0 2.095 2.107C4.495 20.5 12 20.5 12 20.5s7.505 0 9.403-.579a2.974 2.974 0 0 0 2.095-2.107C24 15.91 24 12 24 12s0-3.91-.502-5.814zM9.75 15.02V8.98L15.5 12l-5.75 3.02z"
82
+ }
83
+ ) });
84
+ };
85
+ const SocialNetworkMap = {
86
+ facebook: FacebookIcon,
87
+ instagram: InstagramIcon,
88
+ pinterest: PinterestIcon,
89
+ x: XcomIcon,
90
+ youtube: YoutubeIcon
91
+ };
92
+ const SocialNetwork = ({ kind, url }) => {
93
+ const Icon = SocialNetworkMap[kind];
94
+ return /* @__PURE__ */ jsxRuntime.jsx(index.Link, { to: url, children: /* @__PURE__ */ jsxRuntime.jsx(Icon, {}) });
95
+ };
96
+ const SocialNetworks = ({ socialNetworks, ...flexProps }) => {
97
+ const uniqueSocialNetworks = [...new Map(socialNetworks.map((item) => [item.kind, item])).values()];
98
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { gap: 2, ...flexProps, children: uniqueSocialNetworks.map((socialNetwork) => /* @__PURE__ */ jsxRuntime.jsx(SocialNetwork, { ...socialNetwork }, socialNetwork.kind)) });
99
+ };
16
100
  const ONE_LINE_HEIGHT = 24;
17
101
  const Bio = ({ content, maxLines = 1 }) => {
18
- const ref = react.useRef(null);
19
- const [showToggle, setShowToggle] = react.useState(false);
20
- const [isExpanded, setIsExpanded] = react.useState(false);
102
+ const ref = react$1.useRef(null);
103
+ const [showToggle, setShowToggle] = react$1.useState(false);
104
+ const [isExpanded, setIsExpanded] = react$1.useState(false);
21
105
  const { t } = reactI18next.useTranslation("author");
22
- react.useLayoutEffect(() => {
106
+ react$1.useLayoutEffect(() => {
23
107
  if (ref.current) {
24
108
  const { scrollWidth, clientWidth, scrollHeight, clientHeight } = ref.current;
25
109
  const isClamped = scrollWidth > clientWidth || scrollHeight > clientHeight;
@@ -32,41 +116,40 @@ const Bio = ({ content, maxLines = 1 }) => {
32
116
  function handleClick() {
33
117
  setIsExpanded((prev) => !prev);
34
118
  }
35
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Box, { children: [
36
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Collapse, { in: isExpanded, startingHeight: ONE_LINE_HEIGHT * maxLines, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { ref, fontSize: "md", noOfLines: isExpanded ? void 0 : maxLines, children: content }) }),
37
- showToggle && /* @__PURE__ */ jsxRuntime.jsx(react$1.Button, { size: "sm", variant: "link", colorScheme: "blue", onClick: handleClick, children: isExpanded ? t("action.collapse") : t("action.expand") })
119
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { children: [
120
+ /* @__PURE__ */ jsxRuntime.jsx(react.Collapse, { in: isExpanded, startingHeight: ONE_LINE_HEIGHT * maxLines, children: /* @__PURE__ */ jsxRuntime.jsx(react.Text, { ref, fontSize: "md", noOfLines: isExpanded ? void 0 : maxLines, children: content }) }),
121
+ showToggle && /* @__PURE__ */ jsxRuntime.jsx(react.Button, { size: "sm", variant: "link", colorScheme: "blue", onClick: handleClick, children: isExpanded ? t("action.collapse") : t("action.expand") })
38
122
  ] });
39
123
  };
40
124
  const Author = ({ author, variant }) => {
41
- const { name, role, bio, avatar } = author;
42
- const imageComponent = typeof avatar === "string" ? /* @__PURE__ */ jsxRuntime.jsx(react$1.Image, { src: avatar, alt: name, rounded: "full" }) : avatar;
125
+ const { name, role, bio, avatar, socialNetworks } = author;
43
126
  if (variant === "short") {
44
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Flex, { as: "article", align: "center", gap: 4, children: [
45
- !!imageComponent && /* @__PURE__ */ jsxRuntime.jsx(react$1.Box, { w: 12, h: 12, children: imageComponent }),
46
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.Box, { fontWeight: "semibold", children: [
47
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { children: name }),
48
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { color: "gray.500", children: role })
127
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Flex, { align: "center", gap: 4, children: [
128
+ /* @__PURE__ */ jsxRuntime.jsx(react.Box, { w: 12, h: 12, children: /* @__PURE__ */ jsxRuntime.jsx(index.Image, { src: avatar, alt: name, rounded: "full" }) }),
129
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { fontWeight: "semibold", children: [
130
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { children: name }),
131
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { color: "gray.500", children: role })
49
132
  ] })
50
133
  ] });
51
134
  }
52
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
53
- !!imageComponent && /* @__PURE__ */ jsxRuntime.jsx(react$1.Flex, { grow: 1, maxW: { base: 48, sm: 32 }, children: imageComponent }),
54
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Flex, { w: "100%", children: /* @__PURE__ */ jsxRuntime.jsxs(react$1.Stack, { children: [
55
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.Text, { fontSize: "lg", fontWeight: 600, children: [
56
- name,
57
- ", ",
58
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { as: "span", color: "gray.500", children: role })
135
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Flex, { direction: { base: "column", sm: "row" }, align: { base: "center", sm: "flex-start" }, gap: 4, children: [
136
+ /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { flex: 1, maxW: { base: 48, sm: 32 }, children: /* @__PURE__ */ jsxRuntime.jsx(index.Image, { src: avatar, alt: name, rounded: "full" }) }),
137
+ /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { flex: 1, children: /* @__PURE__ */ jsxRuntime.jsxs(react.Stack, { children: [
138
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Text, { fontSize: "lg", fontWeight: 600, children: [
139
+ `${name}, `,
140
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { as: "span", display: "inline-block", color: "gray.500", children: role })
59
141
  ] }),
142
+ (socialNetworks == null ? void 0 : socialNetworks.length) && /* @__PURE__ */ jsxRuntime.jsx(SocialNetworks, { socialNetworks }),
60
143
  /* @__PURE__ */ jsxRuntime.jsx(Bio, { content: bio })
61
144
  ] }) })
62
145
  ] });
63
146
  };
64
147
  const Center = ({ children, ...boxProps }) => {
65
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Center, { ...boxProps, children });
148
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Center, { ...boxProps, children });
66
149
  };
67
150
  const defaultColumns = { base: 1, sm: 2, md: 3, lg: 4, xl: 5 };
68
151
  const Grid = ({ items, columns = defaultColumns, gap, render, getKey, ...boxProps }) => {
69
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.SimpleGrid, { as: "ul", columns, spacing: gap, p: 0, m: 0, listStyleType: "none", ...boxProps, children: items.map((item, index2) => /* @__PURE__ */ jsxRuntime.jsx(react$1.Box, { as: "li", children: render(item) }, getKey ? getKey(item) : index2)) });
152
+ return /* @__PURE__ */ jsxRuntime.jsx(react.SimpleGrid, { as: "ul", columns, spacing: gap, p: 0, m: 0, listStyleType: "none", ...boxProps, children: items.map((item, index2) => /* @__PURE__ */ jsxRuntime.jsx(react.Box, { as: "li", children: render(item) }, getKey ? getKey(item) : index2)) });
70
153
  };
71
154
  const LinkButton = ({
72
155
  label,
@@ -86,11 +169,11 @@ const LinkButton = ({
86
169
  const isInvertedColor = (_a = config == null ? void 0 : config.theme) == null ? void 0 : _a.isInvertedColor;
87
170
  const isRedirectLink = linkType === "redirect";
88
171
  const isInternalLink = index$2.isRelativePath(href);
89
- const LinkComponent = isInternalLink ? index.Link : react$1.Link;
172
+ const LinkComponent = isInternalLink ? index.Link : react.Link;
90
173
  const hrefKey = isInternalLink ? "to" : "href";
91
174
  const hrefValue = isRedirectLink ? `/follow?to=${href}` : href;
92
175
  return /* @__PURE__ */ jsxRuntime.jsx(
93
- react$1.Button,
176
+ react.Button,
94
177
  {
95
178
  w: width,
96
179
  size: size === "auto" ? { base: "sm", md: "lg" } : size,
@@ -114,30 +197,21 @@ const LinkButton = ({
114
197
  };
115
198
  const AuthorCard = ({ author, ...boxProps }) => {
116
199
  const { t } = reactI18next.useTranslation("author");
117
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Card, { as: "article", variant: "filled", ...boxProps, children: [
118
- /* @__PURE__ */ jsxRuntime.jsx(react$1.CardHeader, { pb: 0, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Heading, { size: "md", children: t("title") }) }),
119
- /* @__PURE__ */ jsxRuntime.jsx(
120
- react$1.CardBody,
121
- {
122
- display: "flex",
123
- flexDirection: { base: "column", sm: "row" },
124
- alignItems: { base: "center", sm: "flex-start" },
125
- gap: 4,
126
- children: /* @__PURE__ */ jsxRuntime.jsx(Author, { author, variant: "full" })
127
- }
128
- )
200
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Card, { as: "article", variant: "filled", ...boxProps, children: [
201
+ /* @__PURE__ */ jsxRuntime.jsx(react.CardHeader, { pb: 0, children: /* @__PURE__ */ jsxRuntime.jsx(react.Heading, { size: "md", children: t("title") }) }),
202
+ /* @__PURE__ */ jsxRuntime.jsx(react.CardBody, { children: /* @__PURE__ */ jsxRuntime.jsx(Author, { author, variant: "full" }) })
129
203
  ] });
130
204
  };
131
205
  const BonusCardContent = ({ content, buttonColor }) => {
132
206
  const { t } = reactI18next.useTranslation("author");
133
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Popover, { autoFocus: false, isLazy: true, lazyBehavior: "keepMounted", children: ({ isOpen }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
134
- /* @__PURE__ */ jsxRuntime.jsx(react$1.PopoverTrigger, { children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Button, { size: "sm", variant: "link", color: buttonColor, children: isOpen ? t("action.collapse") : t("action.expand") }) }),
135
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(react$1.PopoverContent, { children: /* @__PURE__ */ jsxRuntime.jsx(react$1.PopoverBody, { children: Array.isArray(content) ? /* @__PURE__ */ jsxRuntime.jsx(react$1.Stack, { children: content.map((paragraph, index2) => /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { as: "span", children: paragraph }, index2)) }) : /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { children: content }) }) }) })
207
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Popover, { autoFocus: false, isLazy: true, lazyBehavior: "keepMounted", children: ({ isOpen }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
208
+ /* @__PURE__ */ jsxRuntime.jsx(react.PopoverTrigger, { children: /* @__PURE__ */ jsxRuntime.jsx(react.Button, { size: "sm", variant: "link", color: buttonColor, children: isOpen ? t("action.collapse") : t("action.expand") }) }),
209
+ /* @__PURE__ */ jsxRuntime.jsx(react.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(react.PopoverContent, { children: /* @__PURE__ */ jsxRuntime.jsx(react.PopoverBody, { children: Array.isArray(content) ? /* @__PURE__ */ jsxRuntime.jsx(react.Stack, { children: content.map((paragraph, index2) => /* @__PURE__ */ jsxRuntime.jsx(react.Text, { as: "span", children: paragraph }, index2)) }) : /* @__PURE__ */ jsxRuntime.jsx(react.Text, { children: content }) }) }) })
136
210
  ] }) });
137
211
  };
138
212
  const BonusCardTitle = ({ content, color, textColor }) => {
139
213
  return /* @__PURE__ */ jsxRuntime.jsx(
140
- react$1.Text,
214
+ react.Text,
141
215
  {
142
216
  as: "h3",
143
217
  display: "inline-block",
@@ -165,7 +239,7 @@ const BonusCard = ({
165
239
  className
166
240
  }) => {
167
241
  return /* @__PURE__ */ jsxRuntime.jsxs(
168
- react$1.Card,
242
+ react.Card,
169
243
  {
170
244
  as: "article",
171
245
  h: "full",
@@ -186,12 +260,12 @@ const BonusCard = ({
186
260
  } : void 0,
187
261
  className,
188
262
  children: [
189
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.CardBody, { as: "section", pb: 0, flex: 1, children: [
263
+ /* @__PURE__ */ jsxRuntime.jsxs(react.CardBody, { as: "section", pb: 0, flex: 1, children: [
190
264
  /* @__PURE__ */ jsxRuntime.jsx(BonusCardTitle, { content: title, color: titleColor, textColor: titleTextColor }),
191
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { fontSize: "2xl", fontWeight: "bold", my: 2, children: subtitle }),
265
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "2xl", fontWeight: "bold", my: 2, children: subtitle }),
192
266
  /* @__PURE__ */ jsxRuntime.jsx(BonusCardContent, { content, buttonColor: textColor })
193
267
  ] }),
194
- /* @__PURE__ */ jsxRuntime.jsx(react$1.CardFooter, { as: "footer", p: 4, children: /* @__PURE__ */ jsxRuntime.jsx(LinkButton, { ...link, width: "full", size: "md", textDecoration: "none" }) })
268
+ /* @__PURE__ */ jsxRuntime.jsx(react.CardFooter, { as: "footer", p: 4, children: /* @__PURE__ */ jsxRuntime.jsx(LinkButton, { ...link, width: "full", size: "md", textDecoration: "none" }) })
195
269
  ]
196
270
  }
197
271
  );
@@ -215,7 +289,7 @@ const BonusCardGrid = ({
215
289
  );
216
290
  };
217
291
  const ContactForm = ({ ...boxProps }) => {
218
- const toast = react$1.useToast();
292
+ const toast = react.useToast();
219
293
  const { t } = reactI18next.useTranslation("contactForm");
220
294
  function handleSubmit(event) {
221
295
  event.preventDefault();
@@ -239,21 +313,21 @@ const ContactForm = ({ ...boxProps }) => {
239
313
  }
240
314
  }
241
315
  return /* @__PURE__ */ jsxRuntime.jsx(
242
- react$1.Box,
316
+ react.Box,
243
317
  {
244
318
  as: "form",
245
319
  borderRadius: "lg",
246
320
  p: 8,
247
- color: react$1.useColorModeValue("gray.700", "whiteAlpha.900"),
248
- bg: react$1.useColorModeValue("white", "gray.700"),
321
+ color: react.useColorModeValue("gray.700", "whiteAlpha.900"),
322
+ bg: react.useColorModeValue("white", "gray.700"),
249
323
  shadow: "base",
250
324
  onSubmit: handleSubmit,
251
325
  ...boxProps,
252
- children: /* @__PURE__ */ jsxRuntime.jsxs(react$1.VStack, { spacing: 4, children: [
253
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.FormControl, { isRequired: true, children: [
254
- /* @__PURE__ */ jsxRuntime.jsx(react$1.FormLabel, { children: t("field.name.label") }),
255
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.InputGroup, { children: [
256
- /* @__PURE__ */ jsxRuntime.jsx(react$1.InputLeftElement, { children: /* @__PURE__ */ jsxRuntime.jsx(
326
+ children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 4, children: [
327
+ /* @__PURE__ */ jsxRuntime.jsxs(react.FormControl, { isRequired: true, children: [
328
+ /* @__PURE__ */ jsxRuntime.jsx(react.FormLabel, { children: t("field.name.label") }),
329
+ /* @__PURE__ */ jsxRuntime.jsxs(react.InputGroup, { children: [
330
+ /* @__PURE__ */ jsxRuntime.jsx(react.InputLeftElement, { children: /* @__PURE__ */ jsxRuntime.jsx(
257
331
  "svg",
258
332
  {
259
333
  xmlns: "http://www.w3.org/2000/svg",
@@ -265,45 +339,45 @@ const ContactForm = ({ ...boxProps }) => {
265
339
  children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6" })
266
340
  }
267
341
  ) }),
268
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Input, { type: "text", name: "name", placeholder: t("field.name.placeholder") })
342
+ /* @__PURE__ */ jsxRuntime.jsx(react.Input, { type: "text", name: "name", placeholder: t("field.name.placeholder") })
269
343
  ] })
270
344
  ] }),
271
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.FormControl, { isRequired: true, children: [
272
- /* @__PURE__ */ jsxRuntime.jsx(react$1.FormLabel, { children: t("field.email.label") }),
273
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.InputGroup, { children: [
274
- /* @__PURE__ */ jsxRuntime.jsx(react$1.InputLeftElement, { children: /* @__PURE__ */ jsxRuntime.jsx(icons.EmailIcon, {}) }),
275
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Input, { type: "email", name: "email", placeholder: t("field.email.placeholder") })
345
+ /* @__PURE__ */ jsxRuntime.jsxs(react.FormControl, { isRequired: true, children: [
346
+ /* @__PURE__ */ jsxRuntime.jsx(react.FormLabel, { children: t("field.email.label") }),
347
+ /* @__PURE__ */ jsxRuntime.jsxs(react.InputGroup, { children: [
348
+ /* @__PURE__ */ jsxRuntime.jsx(react.InputLeftElement, { children: /* @__PURE__ */ jsxRuntime.jsx(icons.EmailIcon, {}) }),
349
+ /* @__PURE__ */ jsxRuntime.jsx(react.Input, { type: "email", name: "email", placeholder: t("field.email.placeholder") })
276
350
  ] })
277
351
  ] }),
278
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.FormControl, { isRequired: true, children: [
279
- /* @__PURE__ */ jsxRuntime.jsx(react$1.FormLabel, { children: t("field.message.label") }),
280
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Textarea, { name: "message", placeholder: t("field.message.placeholder"), rows: 6, resize: "none" })
352
+ /* @__PURE__ */ jsxRuntime.jsxs(react.FormControl, { isRequired: true, children: [
353
+ /* @__PURE__ */ jsxRuntime.jsx(react.FormLabel, { children: t("field.message.label") }),
354
+ /* @__PURE__ */ jsxRuntime.jsx(react.Textarea, { name: "message", placeholder: t("field.message.placeholder"), rows: 6, resize: "none" })
281
355
  ] }),
282
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Button, { type: "submit", colorScheme: "brand", width: "full", children: t("action.send") })
356
+ /* @__PURE__ */ jsxRuntime.jsx(react.Button, { type: "submit", colorScheme: "brand", width: "full", children: t("action.send") })
283
357
  ] })
284
358
  }
285
359
  );
286
360
  };
287
361
  const Faq = ({ items, ...boxProps }) => {
288
362
  const { bgColor, invertedColor } = index$1.usePrimaryColors();
289
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Accordion, { allowToggle: true, ...boxProps, children: items.map(({ question, answer }) => {
290
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.AccordionItem, { border: 0, children: [
291
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Box, { as: "h3", children: /* @__PURE__ */ jsxRuntime.jsxs(react$1.AccordionButton, { _hover: { color: invertedColor, bgColor }, children: [
292
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Box, { as: "span", flex: "1", textAlign: "left", fontWeight: "bold", children: question }),
293
- /* @__PURE__ */ jsxRuntime.jsx(react$1.AccordionIcon, {})
363
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Accordion, { allowToggle: true, ...boxProps, children: items.map(({ question, answer }) => {
364
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.AccordionItem, { border: 0, children: [
365
+ /* @__PURE__ */ jsxRuntime.jsx(react.Box, { as: "h3", children: /* @__PURE__ */ jsxRuntime.jsxs(react.AccordionButton, { _hover: { color: invertedColor, bgColor }, children: [
366
+ /* @__PURE__ */ jsxRuntime.jsx(react.Box, { as: "span", flex: "1", textAlign: "left", fontWeight: "bold", children: question }),
367
+ /* @__PURE__ */ jsxRuntime.jsx(react.AccordionIcon, {})
294
368
  ] }) }),
295
- /* @__PURE__ */ jsxRuntime.jsx(react$1.AccordionPanel, { children: answer })
369
+ /* @__PURE__ */ jsxRuntime.jsx(react.AccordionPanel, { children: answer })
296
370
  ] }, question);
297
371
  }) });
298
372
  };
299
373
  const FeatureCard = ({ title, description }) => {
300
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Card, { as: "article", variant: "outline", textAlign: "center", h: "100%", children: [
301
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.CardHeader, { as: "header", display: "flex", alignItems: "center", justifyContent: "center", gap: 2, pb: 2, children: [
374
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Card, { as: "article", variant: "outline", textAlign: "center", h: "100%", children: [
375
+ /* @__PURE__ */ jsxRuntime.jsxs(react.CardHeader, { as: "header", display: "flex", alignItems: "center", justifyContent: "center", gap: 2, pb: 2, children: [
302
376
  /* @__PURE__ */ jsxRuntime.jsx(icons.StarIcon, { w: 8, h: 8, color: "yellow.400" }),
303
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { fontWeight: 600, children: title }),
377
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: 600, children: title }),
304
378
  /* @__PURE__ */ jsxRuntime.jsx(icons.StarIcon, { w: 8, h: 8, color: "yellow.400" })
305
379
  ] }),
306
- /* @__PURE__ */ jsxRuntime.jsx(react$1.CardBody, { as: "section", pt: 0, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { color: "gray.500", children: description }) })
380
+ /* @__PURE__ */ jsxRuntime.jsx(react.CardBody, { as: "section", pt: 0, children: /* @__PURE__ */ jsxRuntime.jsx(react.Text, { color: "gray.500", children: description }) })
307
381
  ] });
308
382
  };
309
383
  const FeatureCardGrid = ({
@@ -326,7 +400,7 @@ const FeatureCardGrid = ({
326
400
  };
327
401
  const GameCard = ({ name, description, image, href, height = "auto" }) => {
328
402
  return /* @__PURE__ */ jsxRuntime.jsxs(
329
- react$1.LinkBox,
403
+ react.LinkBox,
330
404
  {
331
405
  as: "article",
332
406
  rounded: "md",
@@ -338,10 +412,10 @@ const GameCard = ({ name, description, image, href, height = "auto" }) => {
338
412
  height,
339
413
  _hover: { transform: "scale(1.05)" },
340
414
  children: [
341
- typeof image === "string" ? /* @__PURE__ */ jsxRuntime.jsx(react$1.Image, { src: image, alt: name, w: "100%", aspectRatio: "16/9", objectFit: "cover", objectPosition: "center" }) : !!image && /* @__PURE__ */ jsxRuntime.jsx(react$1.Box, { w: "100%", aspectRatio: "16/9", children: image }),
342
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.Box, { as: "section", rounded: "md", p: 4, children: [
343
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { as: "span", children: href ? /* @__PURE__ */ jsxRuntime.jsx(react$1.LinkOverlay, { href, children: name }) : name }),
344
- !!description && /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { fontSize: "sm", color: "gray.600", children: description })
415
+ /* @__PURE__ */ jsxRuntime.jsx(index.Image, { src: image, alt: name, mode: "thumbnail" }),
416
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { as: "section", rounded: "md", p: 4, children: [
417
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { as: "span", children: href ? /* @__PURE__ */ jsxRuntime.jsx(react.LinkOverlay, { href, children: name }) : name }),
418
+ !!description && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", color: "gray.600", children: description })
345
419
  ] })
346
420
  ]
347
421
  }
@@ -382,7 +456,7 @@ const GameDemoContent = ({
382
456
  const { t } = reactI18next.useTranslation("gameDemo");
383
457
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
384
458
  /* @__PURE__ */ jsxRuntime.jsx(
385
- react$1.Box,
459
+ react.Box,
386
460
  {
387
461
  as: "iframe",
388
462
  src,
@@ -395,9 +469,9 @@ const GameDemoContent = ({
395
469
  children: /* @__PURE__ */ jsxRuntime.jsx("p", { children: t("warning") })
396
470
  }
397
471
  ),
398
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.Flex, { position: "absolute", top: 2, left: 2, gap: 2, children: [
472
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Flex, { position: "absolute", top: 2, left: 2, gap: 2, children: [
399
473
  /* @__PURE__ */ jsxRuntime.jsx(
400
- react$1.IconButton,
474
+ react.IconButton,
401
475
  {
402
476
  icon: /* @__PURE__ */ jsxRuntime.jsx(icons.CloseIcon, { w: 3, h: 3 }),
403
477
  title: t("action.exit"),
@@ -411,7 +485,7 @@ const GameDemoContent = ({
411
485
  }
412
486
  ),
413
487
  /* @__PURE__ */ jsxRuntime.jsx(
414
- react$1.IconButton,
488
+ react.IconButton,
415
489
  {
416
490
  icon: isFullscreen ? /* @__PURE__ */ jsxRuntime.jsx(icons.ViewOffIcon, { w: 3, h: 3 }) : /* @__PURE__ */ jsxRuntime.jsx(icons.ViewIcon, { w: 4, h: 4 }),
417
491
  title: t(isFullscreen ? "action.deactivateFullscreen" : "action.activateFullscreen"),
@@ -425,15 +499,14 @@ const GameDemoContent = ({
425
499
  }
426
500
  )
427
501
  ] }),
428
- /* @__PURE__ */ jsxRuntime.jsx(react$1.AbsoluteCenter, { children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Spinner, { size: "xl", thickness: "0.6rem", display: isLoaded ? "none" : "block", color: "brand.100" }) })
502
+ /* @__PURE__ */ jsxRuntime.jsx(react.AbsoluteCenter, { children: /* @__PURE__ */ jsxRuntime.jsx(react.Spinner, { size: "xl", thickness: "0.6rem", display: isLoaded ? "none" : "block", color: "brand.100" }) })
429
503
  ] });
430
504
  };
431
505
  const GameDemoPreview = ({ image, alt, href, imageFit = "contain", onPlayDemo }) => {
432
506
  const { t } = reactI18next.useTranslation("gameDemo");
433
- const imageComponent = typeof image === "string" ? /* @__PURE__ */ jsxRuntime.jsx(react$1.Image, { src: image, alt, objectFit: imageFit, w: "100%", h: "100%" }) : image;
434
507
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
435
- imageComponent,
436
- /* @__PURE__ */ jsxRuntime.jsx(react$1.AbsoluteCenter, { children: /* @__PURE__ */ jsxRuntime.jsxs(react$1.Stack, { spacing: 4, children: [
508
+ /* @__PURE__ */ jsxRuntime.jsx(index.Image, { src: image, alt, objectFit: imageFit, w: "100%", h: "100%" }),
509
+ /* @__PURE__ */ jsxRuntime.jsx(react.AbsoluteCenter, { children: /* @__PURE__ */ jsxRuntime.jsxs(react.Stack, { spacing: 4, children: [
437
510
  /* @__PURE__ */ jsxRuntime.jsx(
438
511
  LinkButton,
439
512
  {
@@ -442,7 +515,7 @@ const GameDemoPreview = ({ image, alt, href, imageFit = "contain", onPlayDemo })
442
515
  }
443
516
  ),
444
517
  !!href && /* @__PURE__ */ jsxRuntime.jsx(
445
- react$1.Button,
518
+ react.Button,
446
519
  {
447
520
  variant: "solid",
448
521
  colorScheme: "brand",
@@ -456,9 +529,9 @@ const GameDemoPreview = ({ image, alt, href, imageFit = "contain", onPlayDemo })
456
529
  ] });
457
530
  };
458
531
  const GameDemo = ({ name, src, href, previewImage, previewImageFit, ...boxProps }) => {
459
- const [isRunning, setIsRunning] = react.useState(false);
460
- const [isLoaded, setIsLoaded] = react.useState(false);
461
- const { isOpen: isFullscreen, onToggle, onClose } = react$1.useDisclosure({ defaultIsOpen: false });
532
+ const [isRunning, setIsRunning] = react$1.useState(false);
533
+ const [isLoaded, setIsLoaded] = react$1.useState(false);
534
+ const { isOpen: isFullscreen, onToggle, onClose } = react.useDisclosure({ defaultIsOpen: false });
462
535
  function handleLoad() {
463
536
  setIsLoaded(true);
464
537
  }
@@ -475,7 +548,7 @@ const GameDemo = ({ name, src, href, previewImage, previewImageFit, ...boxProps
475
548
  setIsRunning(true);
476
549
  }
477
550
  return /* @__PURE__ */ jsxRuntime.jsx(
478
- react$1.Box,
551
+ react.Box,
479
552
  {
480
553
  as: "article",
481
554
  display: "grid",
@@ -507,12 +580,12 @@ const GameDemo = ({ name, src, href, previewImage, previewImageFit, ...boxProps
507
580
  );
508
581
  };
509
582
  const GameInfoItem = ({ title, value }) => {
510
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Flex, { gap: 2, children: [
511
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.Text, { w: "50%", color: "gray.500", textTransform: "capitalize", children: [
583
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Flex, { gap: 2, children: [
584
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Text, { w: "50%", color: "gray.500", textTransform: "capitalize", children: [
512
585
  title,
513
586
  ":"
514
587
  ] }),
515
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { w: "50%", textTransform: "capitalize", children: value })
588
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { w: "50%", textTransform: "capitalize", children: value })
516
589
  ] });
517
590
  };
518
591
  const MAX_VISIBLE_LANGUAGE = 5;
@@ -569,18 +642,18 @@ const GameInfo = ({ info, currencies }) => {
569
642
  const { currentLocale } = index.usePageContext();
570
643
  const currency = (currencies == null ? void 0 : currencies.length) ? getGameInfoCurrency(currencies, currentLocale.code) : DEFAULT_CURRENCY;
571
644
  return /* @__PURE__ */ jsxRuntime.jsx(
572
- react$1.Box,
645
+ react.Box,
573
646
  {
574
647
  as: "aside",
575
648
  float: { base: "none", lg: "right" },
576
649
  w: { base: "100%", lg: "xs" },
577
650
  ml: { base: 0, lg: 4 },
578
651
  mb: { base: 0, lg: 4 },
579
- children: /* @__PURE__ */ jsxRuntime.jsxs(react$1.Card, { as: "article", variant: "outline", h: "100%", p: 2, children: [
580
- /* @__PURE__ */ jsxRuntime.jsx(react$1.CardHeader, { as: "header", p: 0, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Heading, { as: "h2", fontSize: "xl", children: t("title") }) }),
581
- /* @__PURE__ */ jsxRuntime.jsx(react$1.CardBody, { as: "section", p: 0, children: Object.entries(info).map(([group, items]) => /* @__PURE__ */ jsxRuntime.jsxs(react.Fragment, { children: [
582
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Divider, { my: 2 }),
583
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { fontWeight: "semibold", mb: 2, children: t(`group.${group}`) }),
652
+ children: /* @__PURE__ */ jsxRuntime.jsxs(react.Card, { as: "article", variant: "outline", h: "100%", p: 2, children: [
653
+ /* @__PURE__ */ jsxRuntime.jsx(react.CardHeader, { as: "header", p: 0, children: /* @__PURE__ */ jsxRuntime.jsx(react.Heading, { as: "h2", fontSize: "xl", children: t("title") }) }),
654
+ /* @__PURE__ */ jsxRuntime.jsx(react.CardBody, { as: "section", p: 0, children: Object.entries(info).map(([group, items]) => /* @__PURE__ */ jsxRuntime.jsxs(react$1.Fragment, { children: [
655
+ /* @__PURE__ */ jsxRuntime.jsx(react.Divider, { my: 2 }),
656
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: "semibold", mb: 2, children: t(`group.${group}`) }),
584
657
  Object.entries(items).map(([itemKey, itemValue]) => {
585
658
  if (!itemValue) {
586
659
  return null;
@@ -596,30 +669,30 @@ const GameInfo = ({ info, currencies }) => {
596
669
  };
597
670
  const HowTo = ({ steps, ...boxProps }) => {
598
671
  const { bgColor, invertedColor } = index$1.usePrimaryColors();
599
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.SimpleGrid, { as: "ol", columns: { base: 1, md: 2, lg: 3 }, gap: 4, p: 0, ...boxProps, children: steps.map(({ title, description, thumbnail }, index2) => /* @__PURE__ */ jsxRuntime.jsxs(react$1.Flex, { as: "li", alignItems: "flex-start", gap: 4, children: [
600
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Circle, { size: 12, bgColor, color: invertedColor, fontSize: "lg", fontWeight: "bold", children: String(index2 + 1) }),
601
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.Stack, { flex: 1, children: [
602
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { fontSize: "lg", fontWeight: "bold", children: title }),
603
- typeof thumbnail === "string" ? /* @__PURE__ */ jsxRuntime.jsx(react$1.Image, { src: thumbnail, alt: title, aspectRatio: "16/9", objectFit: "cover" }) : thumbnail,
604
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { children: description })
672
+ return /* @__PURE__ */ jsxRuntime.jsx(react.SimpleGrid, { as: "ol", columns: { base: 1, md: 2, lg: 3 }, gap: 4, p: 0, ...boxProps, children: steps.map(({ title, description, thumbnail }, index$12) => /* @__PURE__ */ jsxRuntime.jsxs(react.Flex, { as: "li", alignItems: "flex-start", gap: 4, children: [
673
+ /* @__PURE__ */ jsxRuntime.jsx(react.Circle, { size: 12, bgColor, color: invertedColor, fontSize: "lg", fontWeight: "bold", children: String(index$12 + 1) }),
674
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Stack, { flex: 1, children: [
675
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "lg", fontWeight: "bold", children: title }),
676
+ /* @__PURE__ */ jsxRuntime.jsx(index.Image, { src: thumbnail, alt: title, mode: "thumbnail", hasZoom: true }),
677
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { children: description })
605
678
  ] })
606
- ] }, index2)) });
679
+ ] }, index$12)) });
607
680
  };
608
681
  const Container = ({ children }) => {
609
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Container, { maxW: "container.xl", children });
682
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Container, { maxW: "container.xl", children });
610
683
  };
611
684
  const Content = ({ children }) => {
612
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Box, { as: "section", py: 4, children: /* @__PURE__ */ jsxRuntime.jsx(Container, { children }) });
685
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Box, { as: "section", py: 4, children: /* @__PURE__ */ jsxRuntime.jsx(Container, { children }) });
613
686
  };
614
687
  const Logo = () => {
615
688
  const { metadata } = index.useSiteContext();
616
689
  const { logo } = metadata;
617
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Box, { display: "flex", h: { base: 10, md: 14 }, overflow: "hidden", children: typeof logo === "string" ? /* @__PURE__ */ jsxRuntime.jsx(react$1.Image, { src: logo, alt: "Logo", objectFit: "contain" }) : logo });
690
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Box, { display: "flex", h: { base: 10, md: 14 }, overflow: "hidden", children: /* @__PURE__ */ jsxRuntime.jsx(index.Image, { src: logo, alt: "Logo", objectFit: "contain" }) });
618
691
  };
619
692
  const Brand$1 = ({ brand }) => {
620
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Box, { position: "relative", my: 2, py: 8, children: [
621
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Divider, {}),
622
- /* @__PURE__ */ jsxRuntime.jsx(react$1.AbsoluteCenter, { display: "flex", bgColor: react$1.useColorModeValue("gray.50", "gray.900"), children: /* @__PURE__ */ jsxRuntime.jsx(index.Link, { to: "/", children: brand }) })
693
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { position: "relative", my: 2, py: 8, children: [
694
+ /* @__PURE__ */ jsxRuntime.jsx(react.Divider, {}),
695
+ /* @__PURE__ */ jsxRuntime.jsx(react.AbsoluteCenter, { display: "flex", bgColor: react.useColorModeValue("gray.50", "gray.900"), children: /* @__PURE__ */ jsxRuntime.jsx(index.Link, { to: "/", children: brand }) })
623
696
  ] });
624
697
  };
625
698
  const Copyright = () => {
@@ -627,23 +700,23 @@ const Copyright = () => {
627
700
  const { t } = reactI18next.useTranslation("footer");
628
701
  const siteName = metadata.name;
629
702
  const lang = metadata.lang;
630
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { as: "small", colorScheme: "gray", display: "flex", align: "center", justifyContent: "center", children: t("copyright", { year: index$4.getCurrentYear(lang), siteName }) });
703
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Text, { as: "small", colorScheme: "gray", display: "flex", align: "center", justifyContent: "center", children: t("copyright", { year: index$4.getCurrentYear(lang), siteName }) });
631
704
  };
632
705
  const Disclaimer = () => {
633
706
  const { metadata } = index.useSiteContext();
634
707
  const { t } = reactI18next.useTranslation("footer");
635
708
  const siteName = metadata.name;
636
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Text, { as: "small", colorScheme: "gray", fontSize: "sm", children: [
637
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { as: "span", fontWeight: "bold", color: "red.600", children: t("disclaimer.title") }),
709
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Text, { as: "small", colorScheme: "gray", fontSize: "sm", children: [
710
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { as: "span", fontWeight: "bold", color: "red.600", children: t("disclaimer.title") }),
638
711
  t("disclaimer.description", { siteName })
639
712
  ] });
640
713
  };
641
714
  const Extra = ({ children }) => {
642
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Box, { as: "section", my: 2, children });
715
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Box, { as: "section", my: 2, children });
643
716
  };
644
717
  const Navigation$1 = ({ menu }) => {
645
718
  return /* @__PURE__ */ jsxRuntime.jsx(
646
- react$1.SimpleGrid,
719
+ react.SimpleGrid,
647
720
  {
648
721
  as: "ul",
649
722
  columns: { base: 1, sm: 2, md: 4 },
@@ -653,8 +726,8 @@ const Navigation$1 = ({ menu }) => {
653
726
  spacing: 4,
654
727
  justifyItems: { base: "flex-start", md: "center" },
655
728
  justifyContent: "space-between",
656
- children: menu.map(({ slug, label }, index$12) => /* @__PURE__ */ jsxRuntime.jsx(react$1.Flex, { as: "li", children: /* @__PURE__ */ jsxRuntime.jsx(
657
- react$1.Text,
729
+ children: menu.map(({ slug, label }, index$12) => /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { as: "li", children: /* @__PURE__ */ jsxRuntime.jsx(
730
+ react.Text,
658
731
  {
659
732
  as: index.Link,
660
733
  to: slug,
@@ -669,26 +742,27 @@ const Navigation$1 = ({ menu }) => {
669
742
  );
670
743
  };
671
744
  const Footer = () => {
672
- var _a, _b;
673
- const { navigation, config } = index.useSiteContext();
745
+ const { metadata, navigation, config } = index.useSiteContext();
674
746
  const { currentLocale } = index.usePageContext();
675
747
  const menu = navigation.footer[currentLocale.code] ?? [];
676
- const extra = (_a = config == null ? void 0 : config.footer) == null ? void 0 : _a.extra;
677
- const showDisclaimer = ((_b = config == null ? void 0 : config.footer) == null ? void 0 : _b.showDisclaimer) ?? true;
748
+ const socialNetworks = metadata.socialNetworks ?? [];
749
+ const { extra, showDisclaimer = true } = (config == null ? void 0 : config.footer) ?? {};
678
750
  const hasNavigation = !!menu.length;
751
+ const hasSocialNetworks = !!socialNetworks.length;
679
752
  const hasExtra = !!extra;
680
753
  return /* @__PURE__ */ jsxRuntime.jsx(
681
- react$1.Box,
754
+ react.Box,
682
755
  {
683
756
  as: "footer",
684
- bg: react$1.useColorModeValue("gray.50", "gray.900"),
685
- color: react$1.useColorModeValue("gray.700", "gray.200"),
757
+ bg: react.useColorModeValue("gray.50", "gray.900"),
758
+ color: react.useColorModeValue("gray.700", "gray.200"),
686
759
  py: 4,
687
760
  children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { children: [
688
761
  hasNavigation && /* @__PURE__ */ jsxRuntime.jsx(Navigation$1, { menu }),
689
762
  hasExtra && /* @__PURE__ */ jsxRuntime.jsx(Extra, { children: extra }),
690
763
  showDisclaimer && /* @__PURE__ */ jsxRuntime.jsx(Disclaimer, {}),
691
764
  /* @__PURE__ */ jsxRuntime.jsx(Brand$1, { brand: /* @__PURE__ */ jsxRuntime.jsx(Logo, {}) }),
765
+ hasSocialNetworks && /* @__PURE__ */ jsxRuntime.jsx(SocialNetworks, { socialNetworks, justify: "center", my: 2 }),
692
766
  /* @__PURE__ */ jsxRuntime.jsx(Copyright, {})
693
767
  ] })
694
768
  }
@@ -771,31 +845,31 @@ function getMappedIcon(code) {
771
845
  const LocaleSwitcher = ({ currentLocale, locales }) => {
772
846
  const localeCode = currentLocale.code;
773
847
  const localeIcon = getMappedIcon(localeCode);
774
- const localeMenuItems = react.useMemo(
848
+ const localeMenuItems = react$1.useMemo(
775
849
  () => locales.map((locale) => ({ ...locale, icon: getMappedIcon(locale.code) })),
776
850
  [locales]
777
851
  );
778
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Menu, { placement: "bottom-end", children: [
852
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Menu, { placement: "bottom-end", children: [
779
853
  /* @__PURE__ */ jsxRuntime.jsx(
780
- react$1.MenuButton,
854
+ react.MenuButton,
781
855
  {
782
- as: react$1.Button,
856
+ as: react.Button,
783
857
  rightIcon: /* @__PURE__ */ jsxRuntime.jsx(icons.ChevronDownIcon, {}),
784
858
  w: { base: 20, md: "28" },
785
859
  px: { base: 1, md: 4 },
786
860
  size: { base: "sm", md: "lg" },
787
- children: /* @__PURE__ */ jsxRuntime.jsxs(react$1.HStack, { children: [
788
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Icon, { as: localeIcon }),
861
+ children: /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { children: [
862
+ /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: localeIcon }),
789
863
  /* @__PURE__ */ jsxRuntime.jsx("span", { children: localeCode.toUpperCase() })
790
864
  ] })
791
865
  }
792
866
  ),
793
- /* @__PURE__ */ jsxRuntime.jsx(react$1.MenuList, { minW: "fit-content", children: localeMenuItems.map(({ code, name, icon }) => /* @__PURE__ */ jsxRuntime.jsx(react$1.MenuItem, { as: index.Link, to: `/${code}`, icon: /* @__PURE__ */ jsxRuntime.jsx(react$1.Icon, { as: icon, w: 4, h: 4 }), children: name }, code)) })
867
+ /* @__PURE__ */ jsxRuntime.jsx(react.MenuList, { minW: "fit-content", children: localeMenuItems.map(({ code, name, icon }) => /* @__PURE__ */ jsxRuntime.jsx(react.MenuItem, { as: index.Link, to: `/${code}`, icon: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: icon, w: 4, h: 4 }), children: name }, code)) })
794
868
  ] });
795
869
  };
796
- const NavLink = react.forwardRef(({ slug, label }, ref) => {
870
+ const NavLink = react$1.forwardRef(({ slug, label }, ref) => {
797
871
  return /* @__PURE__ */ jsxRuntime.jsx(
798
- react$1.Text,
872
+ react.Text,
799
873
  {
800
874
  ref,
801
875
  as: index.Link,
@@ -809,11 +883,11 @@ const NavLink = react.forwardRef(({ slug, label }, ref) => {
809
883
  });
810
884
  NavLink.displayName = "NavLink";
811
885
  const NavList$1 = ({ slug, label, children }) => {
812
- const background = react$1.useColorModeValue("white", "gray.800");
813
- const backgroundHover = react$1.useColorModeValue("brand.50", "gray.900");
814
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Popover, { trigger: "hover", placement: "bottom-start", children: [
815
- /* @__PURE__ */ jsxRuntime.jsx(react$1.PopoverTrigger, { children: /* @__PURE__ */ jsxRuntime.jsx(
816
- react$1.Text,
886
+ const background = react.useColorModeValue("white", "gray.800");
887
+ const backgroundHover = react.useColorModeValue("brand.50", "gray.900");
888
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Popover, { trigger: "hover", placement: "bottom-start", children: [
889
+ /* @__PURE__ */ jsxRuntime.jsx(react.PopoverTrigger, { children: /* @__PURE__ */ jsxRuntime.jsx(
890
+ react.Text,
817
891
  {
818
892
  p: 2,
819
893
  fontWeight: "semibold",
@@ -824,7 +898,7 @@ const NavList$1 = ({ slug, label, children }) => {
824
898
  }
825
899
  ) }),
826
900
  /* @__PURE__ */ jsxRuntime.jsx(
827
- react$1.PopoverContent,
901
+ react.PopoverContent,
828
902
  {
829
903
  p: 2,
830
904
  border: 0,
@@ -834,11 +908,11 @@ const NavList$1 = ({ slug, label, children }) => {
834
908
  rounded: "xl",
835
909
  boxShadow: "xl",
836
910
  bg: background,
837
- children: /* @__PURE__ */ jsxRuntime.jsx(react$1.List, { spacing: 2, p: 0, children: children == null ? void 0 : children.map((child, index$12) => {
838
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.ListItem, { rounded: "md", _hover: { bg: backgroundHover }, children: /* @__PURE__ */ jsxRuntime.jsxs(react$1.Flex, { as: index.Link, to: index$2.buildPath(child.slug, slug), p: 2, role: "group", children: [
839
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { fontWeight: 500, transition: "all .3s ease", _groupHover: { color: "brand.400" }, children: child.label }),
911
+ children: /* @__PURE__ */ jsxRuntime.jsx(react.List, { spacing: 2, p: 0, children: children == null ? void 0 : children.map((child, index$12) => {
912
+ return /* @__PURE__ */ jsxRuntime.jsx(react.ListItem, { rounded: "md", _hover: { bg: backgroundHover }, children: /* @__PURE__ */ jsxRuntime.jsxs(react.Flex, { as: index.Link, to: index$2.buildPath(child.slug, slug), p: 2, role: "group", children: [
913
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: 500, transition: "all .3s ease", _groupHover: { color: "brand.400" }, children: child.label }),
840
914
  /* @__PURE__ */ jsxRuntime.jsx(
841
- react$1.Flex,
915
+ react.Flex,
842
916
  {
843
917
  flex: 1,
844
918
  justify: "flex-end",
@@ -847,7 +921,7 @@ const NavList$1 = ({ slug, label, children }) => {
847
921
  transition: "all .3s ease",
848
922
  transform: "translateX(-10px)",
849
923
  _groupHover: { opacity: 1, transform: "translateX(0)" },
850
- children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Icon, { as: icons.ChevronRightIcon, color: "brand.400", w: 5, h: 5 })
924
+ children: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: icons.ChevronRightIcon, color: "brand.400", w: 5, h: 5 })
851
925
  }
852
926
  )
853
927
  ] }) }, index$12);
@@ -857,16 +931,16 @@ const NavList$1 = ({ slug, label, children }) => {
857
931
  ] });
858
932
  };
859
933
  const DesktopNavigation = ({ menu }) => {
860
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Flex, { as: "ul", role: "list", gap: 2, p: 0, display: { base: "none", md: "flex" }, children: menu.map((item, index2) => {
934
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { as: "ul", role: "list", gap: 2, p: 0, display: { base: "none", md: "flex" }, children: menu.map((item, index2) => {
861
935
  var _a;
862
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Flex, { as: "li", role: "listitem", children: ((_a = item.children) == null ? void 0 : _a.length) ? /* @__PURE__ */ jsxRuntime.jsx(NavList$1, { ...item }) : /* @__PURE__ */ jsxRuntime.jsx(NavLink, { ...item }) }, index2);
936
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { as: "li", role: "listitem", children: ((_a = item.children) == null ? void 0 : _a.length) ? /* @__PURE__ */ jsxRuntime.jsx(NavList$1, { ...item }) : /* @__PURE__ */ jsxRuntime.jsx(NavLink, { ...item }) }, index2);
863
937
  }) });
864
938
  };
865
939
  const CHEVRON_DOWN_ICON_SIZE = "1.5rem";
866
940
  const NavList = ({ slug, label, children, isExpanded, onExpand }) => {
867
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Stack, { flex: 1, children: [
941
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Stack, { flex: 1, children: [
868
942
  /* @__PURE__ */ jsxRuntime.jsxs(
869
- react$1.Flex,
943
+ react.Flex,
870
944
  {
871
945
  as: "button",
872
946
  p: 2,
@@ -876,7 +950,7 @@ const NavList = ({ slug, label, children, isExpanded, onExpand }) => {
876
950
  _hover: { textDecoration: "none", color: "brand.400" },
877
951
  onClick: onExpand,
878
952
  children: [
879
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { isTruncated: true, fontWeight: 600, children: label }),
953
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { isTruncated: true, fontWeight: 600, children: label }),
880
954
  /* @__PURE__ */ jsxRuntime.jsx(
881
955
  icons.ChevronDownIcon,
882
956
  {
@@ -889,8 +963,8 @@ const NavList = ({ slug, label, children, isExpanded, onExpand }) => {
889
963
  ]
890
964
  }
891
965
  ),
892
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Collapse, { in: isExpanded, transition: { enter: { ease: "easeIn" }, exit: { duration: 0.2 } }, children: /* @__PURE__ */ jsxRuntime.jsx(
893
- react$1.List,
966
+ /* @__PURE__ */ jsxRuntime.jsx(react.Collapse, { in: isExpanded, transition: { enter: { ease: "easeIn" }, exit: { duration: 0.2 } }, children: /* @__PURE__ */ jsxRuntime.jsx(
967
+ react.List,
894
968
  {
895
969
  ml: 2,
896
970
  pl: 0,
@@ -898,8 +972,8 @@ const NavList = ({ slug, label, children, isExpanded, onExpand }) => {
898
972
  overflowY: "auto",
899
973
  borderLeft: 1,
900
974
  borderStyle: "solid",
901
- borderColor: react$1.useColorModeValue("gray.200", "gray.700"),
902
- children: children == null ? void 0 : children.map((child, index$12) => /* @__PURE__ */ jsxRuntime.jsx(react$1.Flex, { as: "li", role: "listitem", children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { as: index.Link, to: index$2.buildPath(child.slug, slug), p: 2, fontSize: "sm", children: child.label }) }, index$12))
975
+ borderColor: react.useColorModeValue("gray.200", "gray.700"),
976
+ children: children == null ? void 0 : children.map((child, index$12) => /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { as: "li", role: "listitem", children: /* @__PURE__ */ jsxRuntime.jsx(react.Text, { as: index.Link, to: index$2.buildPath(child.slug, slug), p: 2, fontSize: "sm", children: child.label }) }, index$12))
903
977
  }
904
978
  ) })
905
979
  ] });
@@ -907,9 +981,9 @@ const NavList = ({ slug, label, children, isExpanded, onExpand }) => {
907
981
  const CLOSE_ICON_SIZE = "0.75rem";
908
982
  const HAMBURGER_ICON_SIZE = "1rem";
909
983
  const MobileNavigation = ({ menu }) => {
910
- const [expanded, setExpanded] = react.useState(null);
911
- const { isOpen, onToggle } = react$1.useDisclosure();
912
- const background = react$1.useColorModeValue("gray.50", "gray.900");
984
+ const [expanded, setExpanded] = react$1.useState(null);
985
+ const { isOpen, onToggle } = react.useDisclosure();
986
+ const background = react.useColorModeValue("gray.50", "gray.900");
913
987
  function handleExpand(index2) {
914
988
  return () => {
915
989
  setExpanded((prev) => prev === index2 ? null : index2);
@@ -919,9 +993,9 @@ const MobileNavigation = ({ menu }) => {
919
993
  setExpanded(null);
920
994
  onToggle();
921
995
  }
922
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Box, { display: { base: "block", md: "none" }, children: [
996
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { display: { base: "block", md: "none" }, children: [
923
997
  /* @__PURE__ */ jsxRuntime.jsx(
924
- react$1.IconButton,
998
+ react.IconButton,
925
999
  {
926
1000
  icon: isOpen ? /* @__PURE__ */ jsxRuntime.jsx(icons.CloseIcon, { w: CLOSE_ICON_SIZE, h: CLOSE_ICON_SIZE }) : /* @__PURE__ */ jsxRuntime.jsx(icons.HamburgerIcon, { w: HAMBURGER_ICON_SIZE, h: HAMBURGER_ICON_SIZE }),
927
1001
  size: "sm",
@@ -931,19 +1005,19 @@ const MobileNavigation = ({ menu }) => {
931
1005
  onClick: handleClick
932
1006
  }
933
1007
  ),
934
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Collapse, { in: isOpen, animateOpacity: true, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Box, { position: "absolute", top: 16, left: 0, right: 0, w: "100vw", px: 2, children: /* @__PURE__ */ jsxRuntime.jsx(
935
- react$1.List,
1008
+ /* @__PURE__ */ jsxRuntime.jsx(react.Collapse, { in: isOpen, animateOpacity: true, children: /* @__PURE__ */ jsxRuntime.jsx(react.Box, { position: "absolute", top: 16, left: 0, right: 0, w: "100vw", px: 2, children: /* @__PURE__ */ jsxRuntime.jsx(
1009
+ react.List,
936
1010
  {
937
1011
  spacing: 2,
938
1012
  p: 2,
939
1013
  boxShadow: "md",
940
1014
  borderWidth: "1px",
941
- borderColor: react$1.useColorModeValue("gray.200", "gray.700"),
1015
+ borderColor: react.useColorModeValue("gray.200", "gray.700"),
942
1016
  borderRadius: "md",
943
1017
  bg: background,
944
1018
  children: menu.map((item, index2) => {
945
1019
  var _a;
946
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Flex, { as: "li", role: "listitem", children: ((_a = item.children) == null ? void 0 : _a.length) ? /* @__PURE__ */ jsxRuntime.jsx(NavList, { ...item, isExpanded: index2 === expanded, onExpand: handleExpand(index2) }) : /* @__PURE__ */ jsxRuntime.jsx(NavLink, { ...item }) }, index2);
1020
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { as: "li", role: "listitem", children: ((_a = item.children) == null ? void 0 : _a.length) ? /* @__PURE__ */ jsxRuntime.jsx(NavList, { ...item, isExpanded: index2 === expanded, onExpand: handleExpand(index2) }) : /* @__PURE__ */ jsxRuntime.jsx(NavLink, { ...item }) }, index2);
947
1021
  })
948
1022
  }
949
1023
  ) }) })
@@ -966,19 +1040,19 @@ const Header = () => {
966
1040
  const hasNavigation = !!menu.length;
967
1041
  const hasToolbar = !!toolbar || isMultiLanguage;
968
1042
  return /* @__PURE__ */ jsxRuntime.jsx(
969
- react$1.Box,
1043
+ react.Box,
970
1044
  {
971
1045
  as: "header",
972
1046
  position: "sticky",
973
1047
  top: 0,
974
- bg: react$1.useColorModeValue("white", "gray.900"),
975
- color: react$1.useColorModeValue("gray.700", "gray.200"),
1048
+ bg: react.useColorModeValue("white", "gray.900"),
1049
+ color: react.useColorModeValue("gray.700", "gray.200"),
976
1050
  boxShadow: "sm",
977
1051
  zIndex: 100,
978
- children: /* @__PURE__ */ jsxRuntime.jsx(Container, { children: /* @__PURE__ */ jsxRuntime.jsxs(react$1.Flex, { as: "nav", gap: 2, py: 2, children: [
1052
+ children: /* @__PURE__ */ jsxRuntime.jsx(Container, { children: /* @__PURE__ */ jsxRuntime.jsxs(react.Flex, { as: "nav", gap: 2, py: 2, children: [
979
1053
  /* @__PURE__ */ jsxRuntime.jsx(Brand, { brand: /* @__PURE__ */ jsxRuntime.jsx(Logo, {}) }),
980
1054
  (hasNavigation || hasToolbar) && /* @__PURE__ */ jsxRuntime.jsxs(
981
- react$1.Flex,
1055
+ react.Flex,
982
1056
  {
983
1057
  as: "section",
984
1058
  flex: 1,
@@ -987,8 +1061,8 @@ const Header = () => {
987
1061
  align: "center",
988
1062
  gap: 2,
989
1063
  children: [
990
- hasNavigation && /* @__PURE__ */ jsxRuntime.jsx(react$1.Flex, { flex: { base: 0, md: 1 }, children: /* @__PURE__ */ jsxRuntime.jsx(Navigation, { menu }) }),
991
- hasToolbar && /* @__PURE__ */ jsxRuntime.jsxs(react$1.Flex, { gap: 2, flex: { base: 1, md: 0 }, justifyContent: "flex-end", children: [
1064
+ hasNavigation && /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { flex: { base: 0, md: 1 }, children: /* @__PURE__ */ jsxRuntime.jsx(Navigation, { menu }) }),
1065
+ hasToolbar && /* @__PURE__ */ jsxRuntime.jsxs(react.Flex, { gap: 2, flex: { base: 1, md: 0 }, justifyContent: "flex-end", children: [
992
1066
  !!toolbar && toolbar,
993
1067
  isMultiLanguage && /* @__PURE__ */ jsxRuntime.jsx(LocaleSwitcher, { currentLocale, locales })
994
1068
  ] })
@@ -1000,37 +1074,37 @@ const Header = () => {
1000
1074
  );
1001
1075
  };
1002
1076
  const Hero = ({ title, subtitle, content, link, image }) => {
1003
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.Box, { as: "section", bg: "gray.900", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { children: /* @__PURE__ */ jsxRuntime.jsxs(react$1.Flex, { direction: { base: "column", md: "row" }, children: [
1004
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Flex, { align: "center", justify: { base: "center", md: "flex-start" }, flex: 1, py: 8, pe: 8, children: /* @__PURE__ */ jsxRuntime.jsxs(react$1.Stack, { spacing: 6, w: "full", maxW: "lg", children: [
1005
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.Heading, { as: "h1", fontSize: { base: "3xl", md: "4xl", lg: "5xl" }, children: [
1006
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.Text, { as: "span", display: "block", children: [
1077
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Box, { as: "section", bg: "gray.900", children: /* @__PURE__ */ jsxRuntime.jsx(Container, { children: /* @__PURE__ */ jsxRuntime.jsxs(react.Flex, { direction: { base: "column", md: "row" }, children: [
1078
+ /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { align: "center", justify: { base: "center", md: "flex-start" }, flex: 1, py: 8, pe: 8, children: /* @__PURE__ */ jsxRuntime.jsxs(react.Stack, { spacing: 6, w: "full", maxW: "lg", children: [
1079
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Heading, { as: "h1", fontSize: { base: "3xl", md: "4xl", lg: "5xl" }, children: [
1080
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Text, { as: "span", display: "block", children: [
1007
1081
  title,
1008
1082
  " —"
1009
1083
  ] }),
1010
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { as: "span", display: "block", color: "brand.400", children: subtitle })
1084
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { as: "span", display: "block", color: "brand.400", children: subtitle })
1011
1085
  ] }),
1012
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { fontSize: { base: "md", lg: "lg" }, color: "gray.500", children: content }),
1013
- !!link && /* @__PURE__ */ jsxRuntime.jsx(react$1.Flex, { direction: { base: "column", md: "row" }, children: /* @__PURE__ */ jsxRuntime.jsx(LinkButton, { ...link, size: "md", textDecoration: "none" }) })
1086
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: { base: "md", lg: "lg" }, color: "gray.500", children: content }),
1087
+ !!link && /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { direction: { base: "column", md: "row" }, children: /* @__PURE__ */ jsxRuntime.jsx(LinkButton, { ...link, size: "md", textDecoration: "none" }) })
1014
1088
  ] }) }),
1015
- image && /* @__PURE__ */ jsxRuntime.jsx(react$1.Flex, { display: { base: "none", md: "flex" }, flex: 1, children: image })
1089
+ image && /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { display: { base: "none", md: "flex" }, flex: 1, children: image })
1016
1090
  ] }) }) });
1017
1091
  };
1018
1092
  const Main = ({ children }) => {
1019
1093
  return /* @__PURE__ */ jsxRuntime.jsx(
1020
- react$1.Flex,
1094
+ react.Flex,
1021
1095
  {
1022
1096
  as: "main",
1023
1097
  direction: "column",
1024
1098
  flexGrow: 1,
1025
- bg: react$1.useColorModeValue("white", "gray.800"),
1026
- color: react$1.useColorModeValue("gray.700", "gray.200"),
1099
+ bg: react.useColorModeValue("white", "gray.800"),
1100
+ color: react.useColorModeValue("gray.700", "gray.200"),
1027
1101
  children
1028
1102
  }
1029
1103
  );
1030
1104
  };
1031
1105
  const ScrollToTop = () => {
1032
- const [isVisible, setIsVisible] = react.useState(false);
1033
- react.useEffect(() => {
1106
+ const [isVisible, setIsVisible] = react$1.useState(false);
1107
+ react$1.useEffect(() => {
1034
1108
  const toggleVisibility = () => {
1035
1109
  setIsVisible(window.scrollY > 300);
1036
1110
  };
@@ -1046,7 +1120,7 @@ const ScrollToTop = () => {
1046
1120
  });
1047
1121
  }
1048
1122
  return /* @__PURE__ */ jsxRuntime.jsx(
1049
- react$1.Box,
1123
+ react.Box,
1050
1124
  {
1051
1125
  position: "fixed",
1052
1126
  bottom: { base: 4, md: 8, lg: 16 },
@@ -1057,7 +1131,7 @@ const ScrollToTop = () => {
1057
1131
  transition: "opacity 0.4s ease, transform 0.4s ease",
1058
1132
  pointerEvents: isVisible ? "auto" : "none",
1059
1133
  children: /* @__PURE__ */ jsxRuntime.jsx(
1060
- react$1.IconButton,
1134
+ react.IconButton,
1061
1135
  {
1062
1136
  "aria-label": "Scroll to top",
1063
1137
  icon: /* @__PURE__ */ jsxRuntime.jsx(icons.ChevronUpIcon, { w: 6, h: 6 }),
@@ -1073,7 +1147,7 @@ const ScrollToTop = () => {
1073
1147
  };
1074
1148
  const Layout = ({ children }) => {
1075
1149
  const content = typeof children === "function" ? children({ Hero, Content }) : /* @__PURE__ */ jsxRuntime.jsx(Content, { children });
1076
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Stack, { spacing: 0, position: "relative", w: "100%", minH: "100dvh", children: [
1150
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Stack, { spacing: 0, position: "relative", w: "100%", minH: "100dvh", children: [
1077
1151
  /* @__PURE__ */ jsxRuntime.jsx(Header, {}),
1078
1152
  /* @__PURE__ */ jsxRuntime.jsx(Main, { children: content }),
1079
1153
  /* @__PURE__ */ jsxRuntime.jsx(Footer, {}),
@@ -1081,19 +1155,19 @@ const Layout = ({ children }) => {
1081
1155
  ] });
1082
1156
  };
1083
1157
  const List = ({ items, bullet = "—", render, ...boxProps }) => {
1084
- return /* @__PURE__ */ jsxRuntime.jsx(react$1.List, { pl: 0, ml: 2, mb: 4, ...boxProps, children: items.map((item, index2) => /* @__PURE__ */ jsxRuntime.jsxs(react$1.ListItem, { display: "flex", gap: 1, children: [
1085
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Box, { children: bullet }),
1158
+ return /* @__PURE__ */ jsxRuntime.jsx(react.List, { pl: 0, ml: 2, ...boxProps, children: items.map((item, index2) => /* @__PURE__ */ jsxRuntime.jsxs(react.ListItem, { display: "flex", gap: 1, children: [
1159
+ /* @__PURE__ */ jsxRuntime.jsx(react.Box, { children: bullet }),
1086
1160
  render ? render(item) : item
1087
1161
  ] }, index2)) });
1088
1162
  };
1089
1163
  const NotFound = () => {
1090
1164
  const { t } = reactI18next.useTranslation("pageNotFound");
1091
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Stack, { gap: 4, children: [
1092
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Heading, { as: "h1", children: t("title") }),
1093
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.Text, { fontSize: "xl", children: [
1165
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Stack, { gap: 4, children: [
1166
+ /* @__PURE__ */ jsxRuntime.jsx(react.Heading, { as: "h1", children: t("title") }),
1167
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Text, { fontSize: "xl", children: [
1094
1168
  t("description"),
1095
1169
  " ",
1096
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Button, { as: index.Link, to: "/", variant: "link", colorScheme: "brand", fontSize: "xl", children: t("action") })
1170
+ /* @__PURE__ */ jsxRuntime.jsx(react.Button, { as: index.Link, to: "/", variant: "link", colorScheme: "brand", fontSize: "xl", children: t("action") })
1097
1171
  ] })
1098
1172
  ] });
1099
1173
  };
@@ -1116,35 +1190,35 @@ const BgColorMap = {
1116
1190
  const ProsConsCard = ({ itemType, items }) => {
1117
1191
  const { t } = reactI18next.useTranslation("prosCons");
1118
1192
  return /* @__PURE__ */ jsxRuntime.jsxs(
1119
- react$1.Card,
1193
+ react.Card,
1120
1194
  {
1121
1195
  as: "article",
1122
1196
  flex: 1,
1123
1197
  p: 2,
1124
- bgColor: react$1.useColorModeValue(`${BgColorMap[itemType]}.100`, `${BgColorMap[itemType]}.800`),
1198
+ bgColor: react.useColorModeValue(`${BgColorMap[itemType]}.100`, `${BgColorMap[itemType]}.800`),
1125
1199
  children: [
1126
1200
  /* @__PURE__ */ jsxRuntime.jsx(
1127
- react$1.CardHeader,
1201
+ react.CardHeader,
1128
1202
  {
1129
1203
  as: "header",
1130
1204
  p: 2,
1131
1205
  borderTopRadius: "md",
1132
- bgColor: react$1.useColorModeValue("whiteAlpha.800", "blackAlpha.800"),
1133
- children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Heading, { as: "h3", textTransform: "uppercase", fontSize: "xl", children: t(TitleMap[itemType]) })
1206
+ bgColor: react.useColorModeValue("whiteAlpha.800", "blackAlpha.800"),
1207
+ children: /* @__PURE__ */ jsxRuntime.jsx(react.Heading, { as: "h3", textTransform: "uppercase", fontSize: "xl", children: t(TitleMap[itemType]) })
1134
1208
  }
1135
1209
  ),
1136
1210
  /* @__PURE__ */ jsxRuntime.jsx(
1137
- react$1.CardBody,
1211
+ react.CardBody,
1138
1212
  {
1139
1213
  as: "section",
1140
1214
  p: 2,
1141
1215
  borderBottomRadius: "md",
1142
- bgColor: react$1.useColorModeValue("whiteAlpha.800", "blackAlpha.800"),
1143
- children: /* @__PURE__ */ jsxRuntime.jsx(react$1.List, { spacing: 4, p: 0, children: items.map(({ title, description }) => /* @__PURE__ */ jsxRuntime.jsxs(react$1.ListItem, { display: "flex", children: [
1144
- /* @__PURE__ */ jsxRuntime.jsx(react$1.ListIcon, { as: IconMap[itemType], w: 6, h: 6, color: IconColorMap[itemType] }),
1145
- /* @__PURE__ */ jsxRuntime.jsxs(react$1.Text, { fontWeight: "semibold", fontSize: "md", children: [
1216
+ bgColor: react.useColorModeValue("whiteAlpha.800", "blackAlpha.800"),
1217
+ children: /* @__PURE__ */ jsxRuntime.jsx(react.List, { spacing: 4, p: 0, children: items.map(({ title, description }) => /* @__PURE__ */ jsxRuntime.jsxs(react.ListItem, { display: "flex", children: [
1218
+ /* @__PURE__ */ jsxRuntime.jsx(react.ListIcon, { as: IconMap[itemType], w: 6, h: 6, color: IconColorMap[itemType] }),
1219
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Text, { fontWeight: "semibold", fontSize: "md", children: [
1146
1220
  title,
1147
- !!description && /* @__PURE__ */ jsxRuntime.jsxs(react$1.Text, { as: "span", fontWeight: "normal", children: [
1221
+ !!description && /* @__PURE__ */ jsxRuntime.jsxs(react.Text, { as: "span", fontWeight: "normal", children: [
1148
1222
  ": ",
1149
1223
  description
1150
1224
  ] })
@@ -1158,7 +1232,7 @@ const ProsConsCard = ({ itemType, items }) => {
1158
1232
  };
1159
1233
  const ProsCons = ({ items, ...boxProps }) => {
1160
1234
  const { pros, cons } = items;
1161
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Flex, { as: "section", direction: { base: "column", md: "row" }, gap: 4, ...boxProps, children: [
1235
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Flex, { as: "section", direction: { base: "column", md: "row" }, gap: 4, ...boxProps, children: [
1162
1236
  /* @__PURE__ */ jsxRuntime.jsx(ProsConsCard, { itemType: "pros", items: pros }),
1163
1237
  /* @__PURE__ */ jsxRuntime.jsx(ProsConsCard, { itemType: "cons", items: cons })
1164
1238
  ] });
@@ -1175,7 +1249,7 @@ const Seo = ({ children, title, description, lang }) => {
1175
1249
  const { name: siteName, lang: defaultLang, seo } = metadata;
1176
1250
  const { title: defaultTitle, description: defaultDescription } = seo;
1177
1251
  const siteLang = lang || defaultLang;
1178
- const placeholders = react.useMemo(
1252
+ const placeholders = react$1.useMemo(
1179
1253
  () => ({
1180
1254
  siteName,
1181
1255
  currentYear: index$4.getCurrentYear(siteLang),
@@ -1208,22 +1282,22 @@ const Table = ({
1208
1282
  const headerItems = items.slice(0, columnNumber);
1209
1283
  const bodyItems = items.slice(columnNumber);
1210
1284
  return /* @__PURE__ */ jsxRuntime.jsx(
1211
- react$1.TableContainer,
1285
+ react.TableContainer,
1212
1286
  {
1213
1287
  border: bordered ? void 0 : "none",
1214
1288
  ...scrollable ? { maxH: "50vh", overflowY: "auto" } : {},
1215
1289
  ...boxProps,
1216
- children: /* @__PURE__ */ jsxRuntime.jsxs(react$1.Table, { variant: striped ? "striped" : "simple", children: [
1217
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Thead, { ...scrollable ? { position: "sticky", top: 0, zIndex: 1, bg: "gray.800" } : {}, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Tr, { children: headerItems.map((item, index2) => /* @__PURE__ */ jsxRuntime.jsx(react$1.Th, { children: item }, index2)) }) }),
1218
- /* @__PURE__ */ jsxRuntime.jsx(react$1.Tbody, { children: Array.from({ length: Math.ceil(bodyItems.length / columnNumber) }, (_, rowIndex) => /* @__PURE__ */ jsxRuntime.jsx(react$1.Tr, { children: Array.from({ length: columnNumber }, (_2, colIndex) => /* @__PURE__ */ jsxRuntime.jsx(react$1.Td, { children: bodyItems[rowIndex * columnNumber + colIndex] || "" }, colIndex)) }, rowIndex)) }),
1219
- !!caption && /* @__PURE__ */ jsxRuntime.jsx(react$1.TableCaption, { children: caption })
1290
+ children: /* @__PURE__ */ jsxRuntime.jsxs(react.Table, { variant: striped ? "striped" : "simple", children: [
1291
+ /* @__PURE__ */ jsxRuntime.jsx(react.Thead, { ...scrollable ? { position: "sticky", top: 0, zIndex: 1, bg: "gray.800" } : {}, children: /* @__PURE__ */ jsxRuntime.jsx(react.Tr, { children: headerItems.map((item, index2) => /* @__PURE__ */ jsxRuntime.jsx(react.Th, { children: item }, index2)) }) }),
1292
+ /* @__PURE__ */ jsxRuntime.jsx(react.Tbody, { children: Array.from({ length: Math.ceil(bodyItems.length / columnNumber) }, (_, rowIndex) => /* @__PURE__ */ jsxRuntime.jsx(react.Tr, { children: Array.from({ length: columnNumber }, (_2, colIndex) => /* @__PURE__ */ jsxRuntime.jsx(react.Td, { children: bodyItems[rowIndex * columnNumber + colIndex] || "" }, colIndex)) }, rowIndex)) }),
1293
+ !!caption && /* @__PURE__ */ jsxRuntime.jsx(react.TableCaption, { children: caption })
1220
1294
  ] })
1221
1295
  }
1222
1296
  );
1223
1297
  };
1224
1298
  const Tip = ({ tip, author = null, ...boxProps }) => {
1225
1299
  return /* @__PURE__ */ jsxRuntime.jsxs(
1226
- react$1.Card,
1300
+ react.Card,
1227
1301
  {
1228
1302
  variant: "filled",
1229
1303
  p: 4,
@@ -1236,12 +1310,12 @@ const Tip = ({ tip, author = null, ...boxProps }) => {
1236
1310
  left: -2,
1237
1311
  fontSize: "6rem",
1238
1312
  fontStyle: "italic",
1239
- color: react$1.useColorModeValue("blackAlpha.300", "whiteAlpha.300")
1313
+ color: react.useColorModeValue("blackAlpha.300", "whiteAlpha.300")
1240
1314
  },
1241
1315
  ...boxProps,
1242
1316
  children: [
1243
- /* @__PURE__ */ jsxRuntime.jsx(react$1.CardBody, { as: "blockquote", p: 0, fontStyle: "italic", children: tip }),
1244
- !!author && /* @__PURE__ */ jsxRuntime.jsx(react$1.CardFooter, { alignItems: "center", justify: "flex-end", p: 0, children: /* @__PURE__ */ jsxRuntime.jsx(Author, { author, variant: "short" }) })
1317
+ /* @__PURE__ */ jsxRuntime.jsx(react.CardBody, { as: "blockquote", p: 0, fontStyle: "italic", children: tip }),
1318
+ !!author && /* @__PURE__ */ jsxRuntime.jsx(react.CardFooter, { alignItems: "center", justify: "flex-end", p: 0, children: /* @__PURE__ */ jsxRuntime.jsx(Author, { author, variant: "short" }) })
1245
1319
  ]
1246
1320
  }
1247
1321
  );
@@ -1249,7 +1323,7 @@ const Tip = ({ tip, author = null, ...boxProps }) => {
1249
1323
  const ExternalImage = ({ image, component: ImageComponent, alt = "", ...imageProps }) => {
1250
1324
  var _a, _b;
1251
1325
  const imageData = (_b = (_a = image == null ? void 0 : image.localFile) == null ? void 0 : _a.childImageSharp) == null ? void 0 : _b.gatsbyImageData;
1252
- return imageData ? /* @__PURE__ */ jsxRuntime.jsx(ImageComponent, { image: imageData, alt, ...imageProps }) : /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, {});
1326
+ return imageData ? /* @__PURE__ */ jsxRuntime.jsx(ImageComponent, { image: imageData, alt, ...imageProps }) : null;
1253
1327
  };
1254
1328
  const RichText = ({ content }) => {
1255
1329
  const components = react$2.useMDXComponents();
@@ -1303,15 +1377,14 @@ const StrapiComponent = ({ type, props, imageComponent }) => {
1303
1377
  }
1304
1378
  );
1305
1379
  case "STRAPI__COMPONENT_CONTENT_LIST":
1306
- return /* @__PURE__ */ jsxRuntime.jsx(List, { bullet: props.bullet, items: extractItemsFromJson(props.content) });
1380
+ return /* @__PURE__ */ jsxRuntime.jsx(List, { bullet: props.bullet, items: extractItemsFromJson(props.content), mb: 4 });
1307
1381
  case "STRAPI__COMPONENT_CONTENT_MEDIA":
1308
1382
  return /* @__PURE__ */ jsxRuntime.jsx(
1309
- ExternalImage,
1383
+ index.Image,
1310
1384
  {
1311
- component: imageComponent,
1312
- image: props.file,
1313
- alt: props.alternativeText,
1314
- style: { display: "inline-block", marginBottom: 16 }
1385
+ src: /* @__PURE__ */ jsxRuntime.jsx(ExternalImage, { component: imageComponent, image: props.file, alt: props.alternativeText }),
1386
+ mb: 4,
1387
+ hasZoom: true
1315
1388
  }
1316
1389
  );
1317
1390
  case "STRAPI__COMPONENT_CONTENT_PROS_CONS":
@@ -1367,7 +1440,7 @@ const StrapiContentRenderer = ({ content, imageComponent }) => {
1367
1440
  return content.map(({ __typename: type, ...props }, index2) => /* @__PURE__ */ jsxRuntime.jsx(StrapiComponent, { type, props, imageComponent }, index2));
1368
1441
  };
1369
1442
  const Tabs = ({ items, render, ...boxProps }) => {
1370
- const { tabs, panels } = react.useMemo(() => {
1443
+ const { tabs, panels } = react$1.useMemo(() => {
1371
1444
  const tabs2 = [];
1372
1445
  const panels2 = [];
1373
1446
  items.forEach(({ content, ...tab }) => {
@@ -1376,9 +1449,9 @@ const Tabs = ({ items, render, ...boxProps }) => {
1376
1449
  });
1377
1450
  return { tabs: tabs2, panels: panels2 };
1378
1451
  }, []);
1379
- return /* @__PURE__ */ jsxRuntime.jsxs(react$1.Tabs, { overflow: "hidden", colorScheme: "brand", ...boxProps, children: [
1380
- /* @__PURE__ */ jsxRuntime.jsx(react$1.TabList, { overflow: "auto hidden", children: tabs.map(({ label, icon }, index2) => /* @__PURE__ */ jsxRuntime.jsx(react$1.Tab, { children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Text, { as: "h3", isTruncated: true, children: icon ? `${icon} ${label}` : label }) }, index2)) }),
1381
- /* @__PURE__ */ jsxRuntime.jsx(react$1.TabPanels, { children: panels.map((panel, index2) => /* @__PURE__ */ jsxRuntime.jsx(react$1.TabPanel, { children: render ? render(panel) : panel }, index2)) })
1452
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Tabs, { overflow: "hidden", colorScheme: "brand", ...boxProps, children: [
1453
+ /* @__PURE__ */ jsxRuntime.jsx(react.TabList, { overflow: "auto hidden", children: tabs.map(({ label, icon }, index2) => /* @__PURE__ */ jsxRuntime.jsx(react.Tab, { children: /* @__PURE__ */ jsxRuntime.jsx(react.Text, { as: "h3", isTruncated: true, children: icon ? `${icon} ${label}` : label }) }, index2)) }),
1454
+ /* @__PURE__ */ jsxRuntime.jsx(react.TabPanels, { children: panels.map((panel, index2) => /* @__PURE__ */ jsxRuntime.jsx(react.TabPanel, { children: render ? render(panel) : panel }, index2)) })
1382
1455
  ] });
1383
1456
  };
1384
1457
  exports.Author = Author;
@@ -1402,6 +1475,8 @@ exports.List = List;
1402
1475
  exports.NotFound = NotFound;
1403
1476
  exports.ProsCons = ProsCons;
1404
1477
  exports.Seo = Seo;
1478
+ exports.SocialNetwork = SocialNetwork;
1479
+ exports.SocialNetworks = SocialNetworks;
1405
1480
  exports.StrapiContentRenderer = StrapiContentRenderer;
1406
1481
  exports.Table = Table;
1407
1482
  exports.Tabs = Tabs;