@anywayseo/tools 5.5.0 → 5.7.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 (156) hide show
  1. package/dist/components/action-button/index.d.ts +5 -0
  2. package/dist/components/article-card/index.d.ts +7 -0
  3. package/dist/components/article-card-grid/index.d.ts +7 -0
  4. package/dist/components/article-info-card/index.d.ts +5 -0
  5. package/dist/components/base/article-meta/index.d.ts +7 -0
  6. package/dist/components/base/article-meta/item/index.d.ts +7 -0
  7. package/dist/components/base/copy-text/index.d.ts +6 -0
  8. package/dist/components/base/grid/index.d.ts +2 -4
  9. package/dist/components/base/h1/index.d.ts +4 -0
  10. package/dist/components/base/h2/index.d.ts +4 -0
  11. package/dist/components/base/h3/index.d.ts +4 -0
  12. package/dist/components/base/index.d.ts +11 -0
  13. package/dist/components/base/link/index.d.ts +5 -1
  14. package/dist/components/base/link/utils.d.ts +1 -0
  15. package/dist/components/base/ol/index.d.ts +4 -0
  16. package/dist/components/base/p/index.d.ts +4 -0
  17. package/dist/components/base/rating/index.d.ts +10 -0
  18. package/dist/components/base/ul/index.d.ts +4 -0
  19. package/dist/components/bonus-card-grid/index.d.ts +2 -4
  20. package/dist/components/casino-table/index.d.ts +8 -0
  21. package/dist/components/casino-table/row/casino-actions/index.d.ts +8 -0
  22. package/dist/components/casino-table/row/casino-bonus/index.d.ts +8 -0
  23. package/dist/components/casino-table/row/casino-info/index.d.ts +7 -0
  24. package/dist/components/casino-table/row/casino-info/item/index.d.ts +7 -0
  25. package/dist/components/casino-table/row/casino-info/utils.d.ts +2 -0
  26. package/dist/components/casino-table/row/casino-license/index.d.ts +5 -0
  27. package/dist/components/casino-table/row/casino-logo/index.d.ts +9 -0
  28. package/dist/components/casino-table/row/casino-name/index.d.ts +8 -0
  29. package/dist/components/casino-table/row/cell/index.d.ts +7 -0
  30. package/dist/components/casino-table/row/index.d.ts +7 -0
  31. package/dist/components/feature-card-grid/index.d.ts +2 -4
  32. package/dist/components/game-card-grid/index.d.ts +2 -4
  33. package/dist/components/game-demo/content/index.d.ts +1 -1
  34. package/dist/components/game-demo/index.d.ts +2 -2
  35. package/dist/components/game-demo/preview/alert/index.d.ts +3 -0
  36. package/dist/components/game-demo/preview/index.d.ts +2 -1
  37. package/dist/components/index.cjs +30 -9
  38. package/dist/components/index.d.ts +7 -3
  39. package/dist/components/index.mjs +44 -23
  40. package/dist/components/informer/index.d.ts +9 -0
  41. package/dist/components/informer/utils.d.ts +5 -0
  42. package/dist/components/{contact-form → pages/contacts/contact-form}/index.d.ts +1 -1
  43. package/dist/components/pages/contacts/index.d.ts +3 -0
  44. package/dist/components/pages/cookie-policy/index.d.ts +3 -0
  45. package/dist/components/pages/index.d.ts +5 -0
  46. package/dist/components/pages/privacy-policy/index.d.ts +6 -0
  47. package/dist/components/pages/terms-and-conditions/index.d.ts +6 -0
  48. package/dist/components/tip/index.d.ts +3 -0
  49. package/dist/hooks/index.cjs +2 -2
  50. package/dist/hooks/index.mjs +2 -2
  51. package/dist/i18n/index.cjs +10 -5
  52. package/dist/i18n/index.mjs +10 -5
  53. package/dist/i18n/resources/bg/index.d.ts +331 -0
  54. package/dist/i18n/resources/da/index.d.ts +331 -0
  55. package/dist/i18n/resources/de/index.d.ts +219 -0
  56. package/dist/i18n/resources/en/index.d.ts +219 -0
  57. package/dist/i18n/resources/fi/index.d.ts +331 -0
  58. package/dist/i18n/resources/fr/index.d.ts +219 -0
  59. package/dist/i18n/resources/it/index.d.ts +219 -0
  60. package/dist/i18n/resources/ka/index.d.ts +331 -0
  61. package/dist/i18n/resources/pt/index.d.ts +331 -0
  62. package/dist/i18n/resources/ru/index.d.ts +219 -0
  63. package/dist/index-B-k9oWE7.js +3552 -0
  64. package/dist/{index-D86anUPd.js → index-B71VkIfX.js} +426 -726
  65. package/dist/index-BEjKnOZA.mjs +28 -0
  66. package/dist/index-BTpEZIok.js +401 -0
  67. package/dist/index-BeJTy4iY.mjs +26 -0
  68. package/dist/index-BfITsKAr.js +25 -0
  69. package/dist/{index-BmaWfWLV.mjs → index-Bph7a3PR.mjs} +4 -0
  70. package/dist/{index-BCK4kr6V.mjs → index-C7z5qqm_.mjs} +3 -26
  71. package/dist/{index-tj12BA6U.mjs → index-CB0JfZMx.mjs} +1 -1
  72. package/dist/{index-cEaX-HbN.mjs → index-CEqTLcAR.mjs} +427 -727
  73. package/dist/index-CVN8I7r9.mjs +3553 -0
  74. package/dist/{index-CAfBnNV6.js → index-D15SAjJc.js} +1 -1
  75. package/dist/index-DDg_PkD2.js +27 -0
  76. package/dist/{index-BzbpMLDD.mjs → index-DHURrUMW.mjs} +1 -1
  77. package/dist/{index-At00w6EN.js → index-DgrIJs-a.js} +4 -0
  78. package/dist/index-FfZIjQy3.mjs +45 -0
  79. package/dist/index-Lln67Kfn.mjs +402 -0
  80. package/dist/{index-DZBLiQFh.js → index-QPgJfbrC.js} +52 -36
  81. package/dist/{index-BcFDxh8P.js → index-TxqSZvgf.js} +15 -27
  82. package/dist/{index-8_-KtKsW.mjs → index-ksqN4RPm.mjs} +50 -34
  83. package/dist/{index-WFgDSB1A.js → index-ma-iV7GU.js} +1 -1
  84. package/dist/{index-BICcOaT7.js → index-qR3kVjjs.js} +0 -23
  85. package/dist/index.cjs +73 -45
  86. package/dist/index.d.ts +1 -0
  87. package/dist/index.mjs +75 -47
  88. package/dist/{components/layout → layout}/footer/navigation/index.d.ts +1 -1
  89. package/dist/layout/header/locale-switcher/icons/brazil/index.d.ts +2 -0
  90. package/dist/layout/header/locale-switcher/icons/bulgaria/index.d.ts +2 -0
  91. package/dist/layout/header/locale-switcher/icons/denmark/index.d.ts +2 -0
  92. package/dist/layout/header/locale-switcher/icons/finland/index.d.ts +2 -0
  93. package/dist/layout/header/locale-switcher/icons/france/index.d.ts +2 -0
  94. package/dist/layout/header/locale-switcher/icons/georgia/index.d.ts +2 -0
  95. package/dist/layout/header/locale-switcher/icons/germany/index.d.ts +2 -0
  96. package/dist/layout/header/locale-switcher/icons/globe/index.d.ts +2 -0
  97. package/dist/layout/header/locale-switcher/icons/index.d.ts +10 -0
  98. package/dist/layout/header/locale-switcher/icons/italy/index.d.ts +2 -0
  99. package/dist/layout/header/locale-switcher/icons/russia/index.d.ts +2 -0
  100. package/dist/{components/layout → layout}/header/locale-switcher/index.d.ts +1 -1
  101. package/dist/{components/layout → layout}/header/locale-switcher/utils.d.ts +1 -1
  102. package/dist/{components/layout → layout}/header/navigation/desktop/index.d.ts +1 -1
  103. package/dist/{components/layout → layout}/header/navigation/desktop/nav-list/index.d.ts +1 -1
  104. package/dist/{components/layout → layout}/header/navigation/index.d.ts +1 -1
  105. package/dist/{components/layout → layout}/header/navigation/mobile/index.d.ts +1 -1
  106. package/dist/{components/layout → layout}/header/navigation/mobile/nav-list/index.d.ts +1 -1
  107. package/dist/{components/layout → layout}/header/navigation/nav-link/index.d.ts +1 -1
  108. package/dist/{components/layout → layout}/hero/index.d.ts +1 -1
  109. package/dist/layout/index.cjs +597 -0
  110. package/dist/layout/index.mjs +598 -0
  111. package/dist/providers/index.cjs +2 -2
  112. package/dist/providers/index.mjs +2 -2
  113. package/dist/providers/mdx-provider/types.d.ts +3 -1
  114. package/dist/providers/mdx-provider/utils.d.ts +1 -2
  115. package/dist/types/components/article-card/index.d.ts +9 -0
  116. package/dist/types/components/button/index.d.ts +1 -1
  117. package/dist/types/components/casino/index.d.ts +32 -0
  118. package/dist/types/components/casino-info/index.d.ts +12 -0
  119. package/dist/types/components/common/index.d.ts +1 -1
  120. package/dist/types/components/game-info/index.d.ts +4 -8
  121. package/dist/types/components/grid/index.d.ts +4 -0
  122. package/dist/types/components/index.d.ts +4 -0
  123. package/dist/types/components/informer/index.d.ts +5 -0
  124. package/dist/types/components/strapi-component/index.d.ts +1 -1
  125. package/dist/types/content/article/index.d.ts +12 -0
  126. package/dist/types/content/index.d.ts +1 -0
  127. package/dist/types/i18n/index.d.ts +2 -2
  128. package/dist/utils/index.cjs +15 -13
  129. package/dist/utils/index.mjs +10 -8
  130. package/dist/utils/navigation/index.d.ts +1 -0
  131. package/package.json +7 -1
  132. package/dist/components/layout/header/locale-switcher/icons/earth/index.d.ts +0 -2
  133. package/dist/components/layout/header/locale-switcher/icons/france/index.d.ts +0 -2
  134. package/dist/components/layout/header/locale-switcher/icons/germany/index.d.ts +0 -2
  135. package/dist/components/layout/header/locale-switcher/icons/globe/index.d.ts +0 -2
  136. package/dist/components/layout/header/locale-switcher/icons/index.d.ts +0 -6
  137. package/dist/components/layout/header/locale-switcher/icons/italy/index.d.ts +0 -2
  138. package/dist/components/layout/header/locale-switcher/icons/russia/index.d.ts +0 -2
  139. package/dist/index-Bts2DBYS.mjs +0 -637
  140. package/dist/index-CJVr79Z2.js +0 -636
  141. package/dist/index-C_FekfFC.mjs +0 -57
  142. /package/dist/components/{layout → base}/container/index.d.ts +0 -0
  143. /package/dist/components/{layout → base}/logo/index.d.ts +0 -0
  144. /package/dist/components/{not-found → pages/not-found}/index.d.ts +0 -0
  145. /package/dist/{components/layout → layout}/content/index.d.ts +0 -0
  146. /package/dist/{components/layout → layout}/footer/brand/index.d.ts +0 -0
  147. /package/dist/{components/layout → layout}/footer/copyright/index.d.ts +0 -0
  148. /package/dist/{components/layout → layout}/footer/disclaimer/index.d.ts +0 -0
  149. /package/dist/{components/layout → layout}/footer/extra/index.d.ts +0 -0
  150. /package/dist/{components/layout → layout}/footer/index.d.ts +0 -0
  151. /package/dist/{components/layout → layout}/header/brand/index.d.ts +0 -0
  152. /package/dist/{components/layout → layout}/header/index.d.ts +0 -0
  153. /package/dist/{components/layout → layout}/header/theme-toggler/index.d.ts +0 -0
  154. /package/dist/{components/layout → layout}/index.d.ts +0 -0
  155. /package/dist/{components/layout → layout}/main/index.d.ts +0 -0
  156. /package/dist/{components/layout → layout}/scroll-to-top/index.d.ts +0 -0
@@ -0,0 +1,598 @@
1
+ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
+ import { Box, Divider, AbsoluteCenter, useColorModeValue, Text, SimpleGrid, Flex, Menu, MenuButton, Button, HStack, Icon, MenuList, MenuItem, Popover, PopoverTrigger, PopoverContent, List, ListItem, Stack, Collapse, useDisclosure, IconButton, Heading } from "@chakra-ui/react";
3
+ import { useTranslation } from "react-i18next";
4
+ import "@mdx-js/react";
5
+ import { L as Link, a as useSiteContext, u as usePageContext } from "../index-ksqN4RPm.mjs";
6
+ import "../index-BJRvnR8Q.mjs";
7
+ import "../index-CVN8I7r9.mjs";
8
+ import "react-medium-image-zoom";
9
+ import { useMemo, forwardRef, useState, useEffect } from "react";
10
+ import { a as Container, c as Logo, d as SocialNetworks, L as LinkButton } from "../index-Lln67Kfn.mjs";
11
+ import { ChevronDownIcon, ChevronRightIcon, CloseIcon, HamburgerIcon, ChevronUpIcon } from "@chakra-ui/icons";
12
+ import "i18next";
13
+ import "react-markdown";
14
+ import { g as getCurrentYear } from "../index-C7z5qqm_.mjs";
15
+ import { b as buildPath } from "../index-Bph7a3PR.mjs";
16
+ const Content = ({ children }) => {
17
+ return /* @__PURE__ */ jsx(Box, { as: "section", py: 4, children: /* @__PURE__ */ jsx(Container, { children }) });
18
+ };
19
+ const Brand$1 = ({ brand }) => {
20
+ return /* @__PURE__ */ jsxs(Box, { position: "relative", my: 2, py: 8, children: [
21
+ /* @__PURE__ */ jsx(Divider, {}),
22
+ /* @__PURE__ */ jsx(AbsoluteCenter, { display: "flex", bgColor: useColorModeValue("gray.50", "gray.900"), children: /* @__PURE__ */ jsx(Link, { to: "/", children: brand }) })
23
+ ] });
24
+ };
25
+ const Copyright = () => {
26
+ const { metadata } = useSiteContext();
27
+ const { t } = useTranslation("footer");
28
+ const siteName = metadata.name;
29
+ const lang = metadata.lang;
30
+ return /* @__PURE__ */ jsx(Text, { as: "small", colorScheme: "gray", display: "flex", align: "center", justifyContent: "center", children: t("copyright", { year: getCurrentYear(lang), siteName }) });
31
+ };
32
+ const Disclaimer = () => {
33
+ const { metadata } = useSiteContext();
34
+ const { t } = useTranslation("footer");
35
+ const siteName = metadata.name;
36
+ return /* @__PURE__ */ jsxs(Text, { as: "small", colorScheme: "gray", fontSize: "sm", children: [
37
+ /* @__PURE__ */ jsx(Text, { as: "span", fontWeight: "bold", color: "red.600", children: t("disclaimer.title") }),
38
+ t("disclaimer.description", { siteName })
39
+ ] });
40
+ };
41
+ const Extra = ({ children }) => {
42
+ return /* @__PURE__ */ jsx(Box, { as: "section", my: 2, children });
43
+ };
44
+ const Navigation$1 = ({ menu }) => {
45
+ return /* @__PURE__ */ jsx(
46
+ SimpleGrid,
47
+ {
48
+ as: "ul",
49
+ columns: { base: 1, sm: 2, md: 4 },
50
+ mt: 4,
51
+ mb: 6,
52
+ p: 0,
53
+ spacing: 4,
54
+ justifyItems: { base: "flex-start", md: "center" },
55
+ justifyContent: "space-between",
56
+ children: menu.map(({ slug, label }, index) => /* @__PURE__ */ jsx(Flex, { as: "li", children: /* @__PURE__ */ jsx(
57
+ Text,
58
+ {
59
+ as: Link,
60
+ to: slug,
61
+ fontSize: "md",
62
+ fontWeight: "semibold",
63
+ colorScheme: "gray",
64
+ _hover: { textDecoration: "none", color: "brand.400" },
65
+ children: label
66
+ }
67
+ ) }, index))
68
+ }
69
+ );
70
+ };
71
+ const Footer = () => {
72
+ const { metadata, navigation, config } = useSiteContext();
73
+ const { currentLocale } = usePageContext();
74
+ const menu = navigation.footer[currentLocale.code] ?? [];
75
+ const socialNetworks = metadata.socialNetworks ?? [];
76
+ const { extra, showDisclaimer = true } = (config == null ? void 0 : config.footer) ?? {};
77
+ const hasNavigation = !!menu.length;
78
+ const hasSocialNetworks = !!socialNetworks.length;
79
+ const hasExtra = !!extra;
80
+ return /* @__PURE__ */ jsx(
81
+ Box,
82
+ {
83
+ as: "footer",
84
+ bg: useColorModeValue("gray.50", "gray.900"),
85
+ color: useColorModeValue("gray.700", "gray.200"),
86
+ py: 4,
87
+ children: /* @__PURE__ */ jsxs(Container, { children: [
88
+ hasNavigation && /* @__PURE__ */ jsx(Navigation$1, { menu }),
89
+ hasExtra && /* @__PURE__ */ jsx(Extra, { children: extra }),
90
+ showDisclaimer && /* @__PURE__ */ jsx(Disclaimer, {}),
91
+ /* @__PURE__ */ jsx(Brand$1, { brand: /* @__PURE__ */ jsx(Logo, {}) }),
92
+ hasSocialNetworks && /* @__PURE__ */ jsx(SocialNetworks, { socialNetworks, justify: "center", my: 2 }),
93
+ /* @__PURE__ */ jsx(Copyright, {})
94
+ ] })
95
+ }
96
+ );
97
+ };
98
+ const Brand = ({ brand }) => {
99
+ return /* @__PURE__ */ jsx(Link, { to: "/", children: brand });
100
+ };
101
+ const BrazilIcon = (props) => {
102
+ return /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", width: "1em", height: "1em", ...props, children: [
103
+ /* @__PURE__ */ jsx("mask", { id: "circleFlagsBr0", children: /* @__PURE__ */ jsx("circle", { cx: "256", cy: "256", r: "256", fill: "#fff" }) }),
104
+ /* @__PURE__ */ jsxs("g", { mask: "url(#circleFlagsBr0)", children: [
105
+ /* @__PURE__ */ jsx("path", { fill: "#6da544", d: "M0 0h512v512H0z" }),
106
+ /* @__PURE__ */ jsx("path", { fill: "#ffda44", d: "M256 100.2L467.5 256L256 411.8L44.5 256z" }),
107
+ /* @__PURE__ */ jsx(
108
+ "path",
109
+ {
110
+ fill: "#eee",
111
+ d: "M174.2 221a87 87 0 0 0-7.2 36.3l162 49.8a88.5 88.5 0 0 0 14.4-34c-40.6-65.3-119.7-80.3-169.1-52z"
112
+ }
113
+ ),
114
+ /* @__PURE__ */ jsx(
115
+ "path",
116
+ {
117
+ fill: "#0052b4",
118
+ d: "M255.7 167a89 89 0 0 0-41.9 10.6a89 89 0 0 0-39.6 43.4a181.7 181.7 0 0 1 169.1 52.2a89 89 0 0 0-9-59.4a89 89 0 0 0-78.6-46.8M212 250.5a149 149 0 0 0-45 6.8a89 89 0 0 0 10.5 40.9a89 89 0 0 0 120.6 36.2a89 89 0 0 0 30.7-27.3A151 151 0 0 0 212 250.5"
119
+ }
120
+ )
121
+ ] })
122
+ ] });
123
+ };
124
+ const BulgariaIcon = (props) => {
125
+ return /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", width: "1em", height: "1em", ...props, children: [
126
+ /* @__PURE__ */ jsx("mask", { id: "circleFlagsBg0", children: /* @__PURE__ */ jsx("circle", { cx: "256", cy: "256", r: "256", fill: "#fff" }) }),
127
+ /* @__PURE__ */ jsxs("g", { mask: "url(#circleFlagsBg0)", children: [
128
+ /* @__PURE__ */ jsx("path", { fill: "#496e2d", d: "m0 166.9l258-31.7l254 31.7v178l-251.4 41.3L0 344.9z" }),
129
+ /* @__PURE__ */ jsx("path", { fill: "#eee", d: "M0 0h512v166.9H0z" }),
130
+ /* @__PURE__ */ jsx("path", { fill: "#d80027", d: "M0 344.9h512V512H0z" })
131
+ ] })
132
+ ] });
133
+ };
134
+ const DenmarkIcon = (props) => {
135
+ return /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", width: "1em", height: "1em", ...props, children: [
136
+ /* @__PURE__ */ jsx("mask", { id: "circleFlagsDk0", children: /* @__PURE__ */ jsx("circle", { cx: "256", cy: "256", r: "256", fill: "#fff" }) }),
137
+ /* @__PURE__ */ jsxs("g", { mask: "url(#circleFlagsDk0)", children: [
138
+ /* @__PURE__ */ jsx(
139
+ "path",
140
+ {
141
+ fill: "#d80027",
142
+ d: "M0 0h133.6l32.7 20.3l34-20.3H512v222.6L491.4 256l20.6 33.4V512H200.3l-31.7-20.4l-35 20.4H0V289.4l29.4-33L0 222.7z"
143
+ }
144
+ ),
145
+ /* @__PURE__ */ jsx("path", { fill: "#eee", d: "M133.6 0v222.6H0v66.8h133.6V512h66.7V289.4H512v-66.8H200.3V0z" })
146
+ ] })
147
+ ] });
148
+ };
149
+ const FinlandIcon = (props) => {
150
+ return /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", width: "1em", height: "1em", ...props, children: [
151
+ /* @__PURE__ */ jsx("mask", { id: "circleFlagsFi0", children: /* @__PURE__ */ jsx("circle", { cx: "256", cy: "256", r: "256", fill: "#fff" }) }),
152
+ /* @__PURE__ */ jsxs("g", { mask: "url(#circleFlagsFi0)", children: [
153
+ /* @__PURE__ */ jsx(
154
+ "path",
155
+ {
156
+ fill: "#eee",
157
+ d: "M0 0h133.6l35.3 16.7L200.3 0H512v222.6l-22.6 31.7l22.6 35.1V512H200.3l-32-19.8l-34.7 19.8H0V289.4l22.1-33.3L0 222.6z"
158
+ }
159
+ ),
160
+ /* @__PURE__ */ jsx("path", { fill: "#0052b4", d: "M133.6 0v222.6H0v66.8h133.6V512h66.7V289.4H512v-66.8H200.3V0z" })
161
+ ] })
162
+ ] });
163
+ };
164
+ const FranceIcon = (props) => {
165
+ return /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", width: "1em", height: "1em", ...props, children: [
166
+ /* @__PURE__ */ jsx("mask", { id: "circleFlagsFr0", children: /* @__PURE__ */ jsx("circle", { cx: "256", cy: "256", r: "256", fill: "#fff" }) }),
167
+ /* @__PURE__ */ jsxs("g", { mask: "url(#circleFlagsFr0)", children: [
168
+ /* @__PURE__ */ jsx("path", { fill: "#eee", d: "M167 0h178l25.9 252.3L345 512H167l-29.8-253.4z" }),
169
+ /* @__PURE__ */ jsx("path", { fill: "#0052b4", d: "M0 0h167v512H0z" }),
170
+ /* @__PURE__ */ jsx("path", { fill: "#d80027", d: "M345 0h167v512H345z" })
171
+ ] })
172
+ ] });
173
+ };
174
+ const GeorgiaIcon = (props) => {
175
+ return /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", width: "1em", height: "1em", ...props, children: [
176
+ /* @__PURE__ */ jsx("mask", { id: "circleFlagsGe0", children: /* @__PURE__ */ jsx("circle", { cx: "256", cy: "256", r: "256", fill: "#fff" }) }),
177
+ /* @__PURE__ */ jsxs("g", { mask: "url(#circleFlagsGe0)", children: [
178
+ /* @__PURE__ */ jsx(
179
+ "path",
180
+ {
181
+ fill: "#eee",
182
+ d: "M0 0h224l32 32l32-32h224v224l-32 32l32 32v224H288l-32-32l-32 32H0V288l32-32l-32-32Z"
183
+ }
184
+ ),
185
+ /* @__PURE__ */ jsx(
186
+ "path",
187
+ {
188
+ fill: "#d80027",
189
+ d: "M224 0v224H0v64h224v224h64V288h224v-64H288V0zm-96 96v32H96v32h32v32h32v-32h32v-32h-32V96zm224 0v32h-32v32h32v32h32v-32h32v-32h-32V96zM128 320v32H96v32h32v32h32v-32h32v-32h-32v-32zm224 0v32h-32v32h32v32h32v-32h32v-32h-32v-32z"
190
+ }
191
+ )
192
+ ] })
193
+ ] });
194
+ };
195
+ const GermanyIcon = (props) => {
196
+ return /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", width: "1em", height: "1em", ...props, children: [
197
+ /* @__PURE__ */ jsx("mask", { id: "circleFlagsDe0", children: /* @__PURE__ */ jsx("circle", { cx: "256", cy: "256", r: "256", fill: "#fff" }) }),
198
+ /* @__PURE__ */ jsxs("g", { mask: "url(#circleFlagsDe0)", children: [
199
+ /* @__PURE__ */ jsx("path", { fill: "#ffda44", d: "m0 345l256.7-25.5L512 345v167H0z" }),
200
+ /* @__PURE__ */ jsx("path", { fill: "#d80027", d: "m0 167l255-23l257 23v178H0z" }),
201
+ /* @__PURE__ */ jsx("path", { fill: "#333", d: "M0 0h512v167H0z" })
202
+ ] })
203
+ ] });
204
+ };
205
+ const GlobeIcon = (props) => {
206
+ return /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 496", width: "1em", height: "1em", ...props, children: /* @__PURE__ */ jsx(
207
+ "path",
208
+ {
209
+ fill: "currentColor",
210
+ d: "M336.5 160C322 70.7 287.8 8 248 8s-74 62.7-88.5 152zM152 256c0 22.2 1.2 43.5 3.3 64h185.3c2.1-20.5 3.3-41.8 3.3-64s-1.2-43.5-3.3-64H155.3c-2.1 20.5-3.3 41.8-3.3 64m324.7-96c-28.6-67.9-86.5-120.4-158-141.6c24.4 33.8 41.2 84.7 50 141.6zM177.2 18.4C105.8 39.6 47.8 92.1 19.3 160h108c8.7-56.9 25.5-107.8 49.9-141.6M487.4 192H372.7c2.1 21 3.3 42.5 3.3 64s-1.2 43-3.3 64h114.6c5.5-20.5 8.6-41.8 8.6-64s-3.1-43.5-8.5-64M120 256c0-21.5 1.2-43 3.3-64H8.6C3.2 212.5 0 233.8 0 256s3.2 43.5 8.6 64h114.6c-2-21-3.2-42.5-3.2-64m39.5 96c14.5 89.3 48.7 152 88.5 152s74-62.7 88.5-152zm159.3 141.6c71.4-21.2 129.4-73.7 158-141.6h-108c-8.8 56.9-25.6 107.8-50 141.6M19.3 352c28.6 67.9 86.5 120.4 158 141.6c-24.4-33.8-41.2-84.7-50-141.6z"
211
+ }
212
+ ) });
213
+ };
214
+ const ItalyIcon = (props) => {
215
+ return /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", width: "1em", height: "1em", ...props, children: [
216
+ /* @__PURE__ */ jsx("mask", { id: "circleFlagsIt0", children: /* @__PURE__ */ jsx("circle", { cx: "256", cy: "256", r: "256", fill: "#fff" }) }),
217
+ /* @__PURE__ */ jsxs("g", { mask: "url(#circleFlagsIt0)", children: [
218
+ /* @__PURE__ */ jsx("path", { fill: "#eee", d: "M167 0h178l25.9 252.3L345 512H167l-29.8-253.4z" }),
219
+ /* @__PURE__ */ jsx("path", { fill: "#6da544", d: "M0 0h167v512H0z" }),
220
+ /* @__PURE__ */ jsx("path", { fill: "#d80027", d: "M345 0h167v512H345z" })
221
+ ] })
222
+ ] });
223
+ };
224
+ const RussiaIcon = (props) => {
225
+ return /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", width: "1em", height: "1em", ...props, children: [
226
+ /* @__PURE__ */ jsx("mask", { id: "circleFlagsRu0", children: /* @__PURE__ */ jsx("circle", { cx: "256", cy: "256", r: "256", fill: "#fff" }) }),
227
+ /* @__PURE__ */ jsxs("g", { mask: "url(#circleFlagsRu0)", children: [
228
+ /* @__PURE__ */ jsx("path", { fill: "#0052b4", d: "M512 170v172l-256 32L0 342V170l256-32z" }),
229
+ /* @__PURE__ */ jsx("path", { fill: "#eee", d: "M512 0v170H0V0Z" }),
230
+ /* @__PURE__ */ jsx("path", { fill: "#d80027", d: "M512 342v170H0V342Z" })
231
+ ] })
232
+ ] });
233
+ };
234
+ function getMappedIcon(code) {
235
+ let icon = GlobeIcon;
236
+ switch (code) {
237
+ case "pt-BR":
238
+ icon = BrazilIcon;
239
+ break;
240
+ case "bg":
241
+ case "bg-BG":
242
+ icon = BulgariaIcon;
243
+ break;
244
+ case "da":
245
+ case "da-DK":
246
+ case "en-DK":
247
+ icon = DenmarkIcon;
248
+ break;
249
+ case "fi":
250
+ case "fi-FI":
251
+ case "sv-FI":
252
+ case "en-FI":
253
+ icon = FinlandIcon;
254
+ break;
255
+ case "fr":
256
+ case "fr-FR":
257
+ icon = FranceIcon;
258
+ break;
259
+ case "ka":
260
+ case "ka-GE":
261
+ icon = GeorgiaIcon;
262
+ break;
263
+ case "de":
264
+ case "de-DE":
265
+ case "en-DE":
266
+ icon = GermanyIcon;
267
+ break;
268
+ case "it":
269
+ case "it-IT":
270
+ icon = ItalyIcon;
271
+ break;
272
+ case "ru":
273
+ case "ru-RU":
274
+ icon = RussiaIcon;
275
+ break;
276
+ case "en":
277
+ default:
278
+ icon = GlobeIcon;
279
+ break;
280
+ }
281
+ return icon;
282
+ }
283
+ const LocaleSwitcher = ({ currentLocale, locales }) => {
284
+ const localeCode = currentLocale.code;
285
+ const localeIcon = getMappedIcon(localeCode);
286
+ const localeLabel = localeCode.split("-")[0].toUpperCase();
287
+ const localeMenuItems = useMemo(
288
+ () => locales.map((locale) => ({ ...locale, code: locale.code.toLowerCase(), icon: getMappedIcon(locale.code) })),
289
+ [locales]
290
+ );
291
+ return /* @__PURE__ */ jsxs(Menu, { placement: "bottom-end", children: [
292
+ /* @__PURE__ */ jsx(
293
+ MenuButton,
294
+ {
295
+ as: Button,
296
+ rightIcon: /* @__PURE__ */ jsx(ChevronDownIcon, {}),
297
+ w: { base: 20, md: 24 },
298
+ px: { base: 1, md: 3 },
299
+ size: { base: "sm", md: "lg" },
300
+ children: /* @__PURE__ */ jsxs(HStack, { children: [
301
+ /* @__PURE__ */ jsx(Icon, { as: localeIcon }),
302
+ /* @__PURE__ */ jsx("span", { children: localeLabel })
303
+ ] })
304
+ }
305
+ ),
306
+ /* @__PURE__ */ jsx(MenuList, { minW: "fit-content", children: localeMenuItems.map(({ code, name, icon }) => /* @__PURE__ */ jsx(MenuItem, { as: Link, to: `/${code}`, icon: /* @__PURE__ */ jsx(Icon, { as: icon, w: 4, h: 4 }), children: name }, code)) })
307
+ ] });
308
+ };
309
+ const NavLink = forwardRef(({ slug, label }, ref) => {
310
+ return /* @__PURE__ */ jsx(
311
+ Text,
312
+ {
313
+ ref,
314
+ as: Link,
315
+ to: slug,
316
+ p: 2,
317
+ fontWeight: "semibold",
318
+ _hover: { textDecoration: "none", color: "brand.400" },
319
+ children: label
320
+ }
321
+ );
322
+ });
323
+ NavLink.displayName = "NavLink";
324
+ const NavList$1 = ({ slug, label, children }) => {
325
+ const background = useColorModeValue("white", "gray.800");
326
+ const backgroundHover = useColorModeValue("brand.50", "gray.900");
327
+ return /* @__PURE__ */ jsxs(Popover, { trigger: "hover", placement: "bottom-start", children: [
328
+ /* @__PURE__ */ jsx(PopoverTrigger, { children: /* @__PURE__ */ jsx(
329
+ Text,
330
+ {
331
+ p: 2,
332
+ fontWeight: "semibold",
333
+ cursor: "pointer",
334
+ tabIndex: 0,
335
+ _hover: { textDecoration: "none", color: "brand.400" },
336
+ children: label
337
+ }
338
+ ) }),
339
+ /* @__PURE__ */ jsx(
340
+ PopoverContent,
341
+ {
342
+ p: 2,
343
+ border: 0,
344
+ minW: "sm",
345
+ maxH: 300,
346
+ overflowY: "auto",
347
+ rounded: "xl",
348
+ boxShadow: "xl",
349
+ bg: background,
350
+ children: /* @__PURE__ */ jsx(List, { spacing: 2, p: 0, children: children == null ? void 0 : children.map((child, index) => {
351
+ return /* @__PURE__ */ jsx(ListItem, { rounded: "md", _hover: { bg: backgroundHover }, children: /* @__PURE__ */ jsxs(Flex, { as: Link, to: buildPath(child.slug, slug), p: 2, role: "group", textDecoration: "none", children: [
352
+ /* @__PURE__ */ jsx(Text, { fontWeight: 500, transition: "all .3s ease", _groupHover: { color: "brand.400" }, children: child.label }),
353
+ /* @__PURE__ */ jsx(
354
+ Flex,
355
+ {
356
+ flex: 1,
357
+ justify: "flex-end",
358
+ align: "center",
359
+ opacity: 0,
360
+ transition: "all .3s ease",
361
+ transform: "translateX(-10px)",
362
+ _groupHover: { opacity: 1, transform: "translateX(0)" },
363
+ children: /* @__PURE__ */ jsx(Icon, { as: ChevronRightIcon, color: "brand.400", w: 5, h: 5 })
364
+ }
365
+ )
366
+ ] }) }, index);
367
+ }) })
368
+ }
369
+ )
370
+ ] });
371
+ };
372
+ const DesktopNavigation = ({ menu }) => {
373
+ return /* @__PURE__ */ jsx(Flex, { as: "ul", role: "list", gap: 2, p: 0, display: { base: "none", md: "flex" }, children: menu.map((item, index) => {
374
+ var _a;
375
+ return /* @__PURE__ */ jsx(Flex, { as: "li", role: "listitem", children: ((_a = item.children) == null ? void 0 : _a.length) ? /* @__PURE__ */ jsx(NavList$1, { ...item }) : /* @__PURE__ */ jsx(NavLink, { ...item }) }, index);
376
+ }) });
377
+ };
378
+ const CHEVRON_DOWN_ICON_SIZE = "1.5rem";
379
+ const NavList = ({ slug, label, children, isExpanded, onExpand }) => {
380
+ return /* @__PURE__ */ jsxs(Stack, { flex: 1, children: [
381
+ /* @__PURE__ */ jsxs(
382
+ Flex,
383
+ {
384
+ as: "button",
385
+ p: 2,
386
+ pr: "3px",
387
+ align: "center",
388
+ justifyContent: "space-between",
389
+ _hover: { textDecoration: "none", color: "brand.400" },
390
+ onClick: onExpand,
391
+ children: [
392
+ /* @__PURE__ */ jsx(Text, { isTruncated: true, fontWeight: 600, children: label }),
393
+ /* @__PURE__ */ jsx(
394
+ ChevronDownIcon,
395
+ {
396
+ w: CHEVRON_DOWN_ICON_SIZE,
397
+ h: CHEVRON_DOWN_ICON_SIZE,
398
+ transform: isExpanded ? "rotate(180deg)" : "",
399
+ transition: "all .25s ease-in-out"
400
+ }
401
+ )
402
+ ]
403
+ }
404
+ ),
405
+ /* @__PURE__ */ jsx(Collapse, { in: isExpanded, transition: { enter: { ease: "easeIn" }, exit: { duration: 0.2 } }, children: /* @__PURE__ */ jsx(
406
+ List,
407
+ {
408
+ ml: 2,
409
+ pl: 0,
410
+ maxH: 300,
411
+ overflowY: "auto",
412
+ borderLeft: 1,
413
+ borderStyle: "solid",
414
+ borderColor: useColorModeValue("gray.200", "gray.700"),
415
+ children: children == null ? void 0 : children.map((child, index) => /* @__PURE__ */ jsx(Flex, { as: "li", role: "listitem", children: /* @__PURE__ */ jsx(Text, { as: Link, to: buildPath(child.slug, slug), p: 2, fontSize: "sm", textDecoration: "none", children: child.label }) }, index))
416
+ }
417
+ ) })
418
+ ] });
419
+ };
420
+ const CLOSE_ICON_SIZE = "0.75rem";
421
+ const HAMBURGER_ICON_SIZE = "1rem";
422
+ const MobileNavigation = ({ menu }) => {
423
+ const [expanded, setExpanded] = useState(null);
424
+ const { isOpen, onToggle } = useDisclosure();
425
+ const background = useColorModeValue("gray.50", "gray.900");
426
+ function handleExpand(index) {
427
+ return () => {
428
+ setExpanded((prev) => prev === index ? null : index);
429
+ };
430
+ }
431
+ function handleClick() {
432
+ setExpanded(null);
433
+ onToggle();
434
+ }
435
+ return /* @__PURE__ */ jsxs(Box, { display: { base: "block", md: "none" }, children: [
436
+ /* @__PURE__ */ jsx(
437
+ IconButton,
438
+ {
439
+ icon: isOpen ? /* @__PURE__ */ jsx(CloseIcon, { w: CLOSE_ICON_SIZE, h: CLOSE_ICON_SIZE }) : /* @__PURE__ */ jsx(HamburgerIcon, { w: HAMBURGER_ICON_SIZE, h: HAMBURGER_ICON_SIZE }),
440
+ size: "sm",
441
+ variant: "ghost",
442
+ "aria-label": `${isOpen ? "Close" : "Open"} navigation menu`,
443
+ "aria-expanded": isOpen,
444
+ onClick: handleClick
445
+ }
446
+ ),
447
+ /* @__PURE__ */ jsx(Collapse, { in: isOpen, animateOpacity: true, children: /* @__PURE__ */ jsx(Box, { position: "absolute", top: 16, left: 0, right: 0, w: "100vw", px: 2, children: /* @__PURE__ */ jsx(
448
+ List,
449
+ {
450
+ spacing: 2,
451
+ p: 2,
452
+ boxShadow: "md",
453
+ borderWidth: "1px",
454
+ borderColor: useColorModeValue("gray.200", "gray.700"),
455
+ borderRadius: "md",
456
+ bg: background,
457
+ children: menu.map((item, index) => {
458
+ var _a;
459
+ return /* @__PURE__ */ jsx(Flex, { as: "li", role: "listitem", children: ((_a = item.children) == null ? void 0 : _a.length) ? /* @__PURE__ */ jsx(NavList, { ...item, isExpanded: index === expanded, onExpand: handleExpand(index) }) : /* @__PURE__ */ jsx(NavLink, { ...item }) }, index);
460
+ })
461
+ }
462
+ ) }) })
463
+ ] });
464
+ };
465
+ const Navigation = ({ menu }) => {
466
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
467
+ /* @__PURE__ */ jsx(DesktopNavigation, { menu }),
468
+ /* @__PURE__ */ jsx(MobileNavigation, { menu })
469
+ ] });
470
+ };
471
+ const Header = () => {
472
+ var _a;
473
+ const { navigation, localization, config } = useSiteContext();
474
+ const { currentLocale } = usePageContext();
475
+ const locales = localization.locales;
476
+ const menu = navigation.header[currentLocale.code] ?? [];
477
+ const toolbar = (_a = config == null ? void 0 : config.header) == null ? void 0 : _a.toolbar;
478
+ const isMultiLanguage = locales.length > 1;
479
+ const hasNavigation = !!menu.length;
480
+ const hasToolbar = !!toolbar || isMultiLanguage;
481
+ return /* @__PURE__ */ jsx(
482
+ Box,
483
+ {
484
+ as: "header",
485
+ position: "sticky",
486
+ top: 0,
487
+ bg: useColorModeValue("white", "gray.900"),
488
+ color: useColorModeValue("gray.700", "gray.200"),
489
+ boxShadow: "sm",
490
+ zIndex: 100,
491
+ children: /* @__PURE__ */ jsx(Container, { children: /* @__PURE__ */ jsxs(Flex, { as: "nav", gap: 2, py: 2, children: [
492
+ /* @__PURE__ */ jsx(Brand, { brand: /* @__PURE__ */ jsx(Logo, {}) }),
493
+ (hasNavigation || hasToolbar) && /* @__PURE__ */ jsxs(
494
+ Flex,
495
+ {
496
+ as: "section",
497
+ flex: 1,
498
+ flexDir: { base: "row-reverse", md: "row" },
499
+ justifyContent: "end",
500
+ align: "center",
501
+ gap: 2,
502
+ children: [
503
+ hasNavigation && /* @__PURE__ */ jsx(Flex, { flex: { base: 0, md: 1 }, children: /* @__PURE__ */ jsx(Navigation, { menu }) }),
504
+ hasToolbar && /* @__PURE__ */ jsxs(Flex, { gap: 2, flex: { base: 1, md: 0 }, justifyContent: "flex-end", children: [
505
+ !!toolbar && toolbar,
506
+ isMultiLanguage && /* @__PURE__ */ jsx(LocaleSwitcher, { currentLocale, locales })
507
+ ] })
508
+ ]
509
+ }
510
+ )
511
+ ] }) })
512
+ }
513
+ );
514
+ };
515
+ const Hero = ({ title, subtitle, content, link, image }) => {
516
+ return /* @__PURE__ */ jsx(Box, { as: "section", bg: "gray.900", children: /* @__PURE__ */ jsx(Container, { children: /* @__PURE__ */ jsxs(Flex, { direction: { base: "column", md: "row" }, children: [
517
+ /* @__PURE__ */ jsx(Flex, { align: "center", justify: { base: "center", md: "flex-start" }, flex: 1, py: 8, pe: 8, children: /* @__PURE__ */ jsxs(Stack, { spacing: 6, w: "full", maxW: "lg", children: [
518
+ /* @__PURE__ */ jsxs(Heading, { as: "h1", fontSize: { base: "3xl", md: "4xl", lg: "5xl" }, children: [
519
+ /* @__PURE__ */ jsxs(Text, { as: "span", display: "block", children: [
520
+ title,
521
+ " —"
522
+ ] }),
523
+ /* @__PURE__ */ jsx(Text, { as: "span", display: "block", color: "brand.400", children: subtitle })
524
+ ] }),
525
+ /* @__PURE__ */ jsx(Text, { fontSize: { base: "md", lg: "lg" }, color: "gray.500", children: content }),
526
+ !!link && /* @__PURE__ */ jsx(Flex, { direction: { base: "column", md: "row" }, children: /* @__PURE__ */ jsx(LinkButton, { ...link, size: "md", textDecoration: "none" }) })
527
+ ] }) }),
528
+ image && /* @__PURE__ */ jsx(Flex, { display: { base: "none", md: "flex" }, flex: 1, children: image })
529
+ ] }) }) });
530
+ };
531
+ const Main = ({ children }) => {
532
+ return /* @__PURE__ */ jsx(
533
+ Flex,
534
+ {
535
+ as: "main",
536
+ direction: "column",
537
+ flexGrow: 1,
538
+ bg: useColorModeValue("white", "gray.800"),
539
+ color: useColorModeValue("gray.700", "gray.200"),
540
+ children
541
+ }
542
+ );
543
+ };
544
+ const ScrollToTop = () => {
545
+ const [isVisible, setIsVisible] = useState(false);
546
+ useEffect(() => {
547
+ const toggleVisibility = () => {
548
+ setIsVisible(window.scrollY > 300);
549
+ };
550
+ window.addEventListener("scroll", toggleVisibility);
551
+ return () => {
552
+ window.removeEventListener("scroll", toggleVisibility);
553
+ };
554
+ }, []);
555
+ function handleClick() {
556
+ window.scrollTo({
557
+ top: 0,
558
+ behavior: "smooth"
559
+ });
560
+ }
561
+ return /* @__PURE__ */ jsx(
562
+ Box,
563
+ {
564
+ position: "fixed",
565
+ bottom: { base: 4, md: 8, lg: 16 },
566
+ right: { base: 4, md: 8, lg: 16 },
567
+ zIndex: "1000",
568
+ opacity: isVisible ? 1 : 0,
569
+ transform: isVisible ? "translateY(0)" : "translateY(0.5rem)",
570
+ transition: "opacity 0.4s ease, transform 0.4s ease",
571
+ pointerEvents: isVisible ? "auto" : "none",
572
+ children: /* @__PURE__ */ jsx(
573
+ IconButton,
574
+ {
575
+ "aria-label": "Scroll to top",
576
+ icon: /* @__PURE__ */ jsx(ChevronUpIcon, { w: 6, h: 6 }),
577
+ size: "lg",
578
+ shadow: "lg",
579
+ colorScheme: "brand",
580
+ isRound: true,
581
+ onClick: handleClick
582
+ }
583
+ )
584
+ }
585
+ );
586
+ };
587
+ const Layout = ({ children }) => {
588
+ const content = typeof children === "function" ? children({ Hero, Content }) : /* @__PURE__ */ jsx(Content, { children });
589
+ return /* @__PURE__ */ jsxs(Stack, { spacing: 0, position: "relative", w: "100%", minH: "100dvh", children: [
590
+ /* @__PURE__ */ jsx(Header, {}),
591
+ /* @__PURE__ */ jsx(Main, { children: content }),
592
+ /* @__PURE__ */ jsx(Footer, {}),
593
+ /* @__PURE__ */ jsx(ScrollToTop, {})
594
+ ] });
595
+ };
596
+ export {
597
+ Layout as default
598
+ };
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const index = require("../index-BcFDxh8P.js");
4
- const index$1 = require("../index-DZBLiQFh.js");
3
+ const index = require("../index-TxqSZvgf.js");
4
+ const index$1 = require("../index-QPgJfbrC.js");
5
5
  exports.MdxProvider = index.MdxProvider;
6
6
  exports.PageProvider = index$1.PageProvider;
7
7
  exports.SiteProvider = index$1.SiteProvider;
@@ -1,5 +1,5 @@
1
- import { M } from "../index-C_FekfFC.mjs";
2
- import { P, S, u, a } from "../index-8_-KtKsW.mjs";
1
+ import { M } from "../index-FfZIjQy3.mjs";
2
+ import { P, S, u, a } from "../index-ksqN4RPm.mjs";
3
3
  export {
4
4
  M as MdxProvider,
5
5
  P as PageProvider,
@@ -1,3 +1,5 @@
1
- import { DetailedHTMLProps, HTMLAttributes, ReactElement } from 'react';
1
+ import { AnchorHTMLAttributes, DetailedHTMLProps, HTMLAttributes, ImgHTMLAttributes, ReactElement } from 'react';
2
2
  export type Props<E extends HTMLElement, A extends HTMLAttributes<E> = HTMLAttributes<E>> = DetailedHTMLProps<A, E>;
3
3
  export type ComponentCallback<T extends HTMLElement> = (props: Props<T>) => ReactElement;
4
+ export type LinkProps = Props<HTMLAnchorElement, AnchorHTMLAttributes<HTMLAnchorElement>>;
5
+ export type ImageProps = Props<HTMLImageElement, ImgHTMLAttributes<HTMLImageElement>>;
@@ -1,3 +1,2 @@
1
- import { ComponentCallback, Props } from './types';
2
- export declare function omitProps<T extends HTMLElement>(props: Props<T>, omittedKeys: string[]): Props<T>;
1
+ import { ComponentCallback } from './types';
3
2
  export declare function preprocessProps<T extends HTMLElement>(callback: ComponentCallback<T>): ComponentCallback<T>;
@@ -0,0 +1,9 @@
1
+ import { IArticleMeta } from '../../content';
2
+ import { ImageType } from '../image';
3
+ import { ILink } from '../link';
4
+ export interface IArticlePreviewCard {
5
+ title: string;
6
+ url: ILink['href'];
7
+ image?: ImageType;
8
+ meta?: IArticleMeta;
9
+ }
@@ -1,6 +1,6 @@
1
1
  import { ButtonProps } from '@chakra-ui/react';
2
2
  import { BaseSize, IAnimation } from '../common';
3
3
  export type BaseButtonProps = Pick<ButtonProps, 'width' | 'textTransform' | 'textDecoration' | 'onClick'> & {
4
- size?: 'xs' | BaseSize | 'auto';
4
+ size?: 'xs' | BaseSize | 'auto' | ButtonProps['size'];
5
5
  animation?: IAnimation;
6
6
  };