@anywayseo/tools 5.5.0 → 5.6.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 (114) hide show
  1. package/dist/components/base/h1/index.d.ts +4 -0
  2. package/dist/components/base/h2/index.d.ts +4 -0
  3. package/dist/components/base/h3/index.d.ts +4 -0
  4. package/dist/components/base/index.d.ts +8 -0
  5. package/dist/components/base/link/index.d.ts +5 -1
  6. package/dist/components/base/link/utils.d.ts +1 -0
  7. package/dist/components/base/ol/index.d.ts +4 -0
  8. package/dist/components/base/p/index.d.ts +4 -0
  9. package/dist/components/base/ul/index.d.ts +4 -0
  10. package/dist/components/index.cjs +21 -9
  11. package/dist/components/index.d.ts +1 -3
  12. package/dist/components/index.mjs +27 -15
  13. package/dist/components/{contact-form → pages/contacts/contact-form}/index.d.ts +1 -1
  14. package/dist/components/pages/contacts/index.d.ts +3 -0
  15. package/dist/components/pages/cookie-policy/index.d.ts +3 -0
  16. package/dist/components/pages/index.d.ts +5 -0
  17. package/dist/components/pages/privacy-policy/index.d.ts +6 -0
  18. package/dist/components/pages/terms-and-conditions/index.d.ts +6 -0
  19. package/dist/hooks/index.cjs +1 -1
  20. package/dist/hooks/index.mjs +1 -1
  21. package/dist/i18n/index.cjs +10 -5
  22. package/dist/i18n/index.mjs +10 -5
  23. package/dist/i18n/resources/bg/index.d.ts +280 -0
  24. package/dist/i18n/resources/da/index.d.ts +280 -0
  25. package/dist/i18n/resources/de/index.d.ts +168 -0
  26. package/dist/i18n/resources/en/index.d.ts +168 -0
  27. package/dist/i18n/resources/fi/index.d.ts +280 -0
  28. package/dist/i18n/resources/fr/index.d.ts +168 -0
  29. package/dist/i18n/resources/it/index.d.ts +168 -0
  30. package/dist/i18n/resources/ka/index.d.ts +280 -0
  31. package/dist/i18n/resources/pt/index.d.ts +280 -0
  32. package/dist/i18n/resources/ru/index.d.ts +168 -0
  33. package/dist/{index-CAfBnNV6.js → index-5J1CqqcW.js} +1 -1
  34. package/dist/index-B1PwYYQt.mjs +24 -0
  35. package/dist/index-B6wz_B9_.js +145 -0
  36. package/dist/index-BEjKnOZA.mjs +28 -0
  37. package/dist/{index-BmaWfWLV.mjs → index-Bph7a3PR.mjs} +4 -0
  38. package/dist/index-C-ri0Fgy.js +23 -0
  39. package/dist/index-C2T70CMa.mjs +44 -0
  40. package/dist/index-COv56GyV.mjs +146 -0
  41. package/dist/{index-DZBLiQFh.js → index-CR5rM7at.js} +21 -6
  42. package/dist/index-CWMHJGbL.mjs +2957 -0
  43. package/dist/{index-BICcOaT7.js → index-CkRY_NXp.js} +0 -21
  44. package/dist/index-CyuHme_p.js +1059 -0
  45. package/dist/{index-BcFDxh8P.js → index-D4zJ5RBA.js} +13 -26
  46. package/dist/index-DDg_PkD2.js +27 -0
  47. package/dist/index-DMR4Ptkt.js +2956 -0
  48. package/dist/{index-tj12BA6U.mjs → index-DYS7zQW4.mjs} +1 -1
  49. package/dist/{index-At00w6EN.js → index-DgrIJs-a.js} +4 -0
  50. package/dist/{index-BCK4kr6V.mjs → index-Drz_7u2p.mjs} +3 -24
  51. package/dist/{index-8_-KtKsW.mjs → index-HLGPI9-S.mjs} +23 -8
  52. package/dist/{index-cEaX-HbN.mjs → index-JUwyHkmj.mjs} +222 -691
  53. package/dist/index.cjs +61 -45
  54. package/dist/index.d.ts +1 -0
  55. package/dist/index.mjs +52 -36
  56. package/dist/{components/layout → layout}/footer/navigation/index.d.ts +1 -1
  57. package/dist/layout/header/locale-switcher/icons/brazil/index.d.ts +2 -0
  58. package/dist/layout/header/locale-switcher/icons/bulgaria/index.d.ts +2 -0
  59. package/dist/layout/header/locale-switcher/icons/denmark/index.d.ts +2 -0
  60. package/dist/layout/header/locale-switcher/icons/finland/index.d.ts +2 -0
  61. package/dist/layout/header/locale-switcher/icons/france/index.d.ts +2 -0
  62. package/dist/layout/header/locale-switcher/icons/georgia/index.d.ts +2 -0
  63. package/dist/layout/header/locale-switcher/icons/germany/index.d.ts +2 -0
  64. package/dist/layout/header/locale-switcher/icons/globe/index.d.ts +2 -0
  65. package/dist/layout/header/locale-switcher/icons/index.d.ts +10 -0
  66. package/dist/layout/header/locale-switcher/icons/italy/index.d.ts +2 -0
  67. package/dist/layout/header/locale-switcher/icons/russia/index.d.ts +2 -0
  68. package/dist/{components/layout → layout}/header/locale-switcher/index.d.ts +1 -1
  69. package/dist/{components/layout → layout}/header/locale-switcher/utils.d.ts +1 -1
  70. package/dist/{components/layout → layout}/header/navigation/desktop/index.d.ts +1 -1
  71. package/dist/{components/layout → layout}/header/navigation/desktop/nav-list/index.d.ts +1 -1
  72. package/dist/{components/layout → layout}/header/navigation/index.d.ts +1 -1
  73. package/dist/{components/layout → layout}/header/navigation/mobile/index.d.ts +1 -1
  74. package/dist/{components/layout → layout}/header/navigation/mobile/nav-list/index.d.ts +1 -1
  75. package/dist/{components/layout → layout}/header/navigation/nav-link/index.d.ts +1 -1
  76. package/dist/{components/layout → layout}/hero/index.d.ts +1 -1
  77. package/dist/layout/index.cjs +596 -0
  78. package/dist/layout/index.mjs +597 -0
  79. package/dist/providers/index.cjs +2 -2
  80. package/dist/providers/index.mjs +2 -2
  81. package/dist/providers/mdx-provider/types.d.ts +3 -1
  82. package/dist/providers/mdx-provider/utils.d.ts +1 -2
  83. package/dist/types/components/strapi-component/index.d.ts +1 -1
  84. package/dist/types/i18n/index.d.ts +1 -1
  85. package/dist/utils/index.cjs +12 -10
  86. package/dist/utils/index.mjs +10 -8
  87. package/dist/utils/navigation/index.d.ts +1 -0
  88. package/package.json +7 -1
  89. package/dist/components/layout/header/locale-switcher/icons/earth/index.d.ts +0 -2
  90. package/dist/components/layout/header/locale-switcher/icons/france/index.d.ts +0 -2
  91. package/dist/components/layout/header/locale-switcher/icons/germany/index.d.ts +0 -2
  92. package/dist/components/layout/header/locale-switcher/icons/globe/index.d.ts +0 -2
  93. package/dist/components/layout/header/locale-switcher/icons/index.d.ts +0 -6
  94. package/dist/components/layout/header/locale-switcher/icons/italy/index.d.ts +0 -2
  95. package/dist/components/layout/header/locale-switcher/icons/russia/index.d.ts +0 -2
  96. package/dist/index-Bts2DBYS.mjs +0 -637
  97. package/dist/index-CJVr79Z2.js +0 -636
  98. package/dist/index-C_FekfFC.mjs +0 -57
  99. package/dist/index-D86anUPd.js +0 -1528
  100. /package/dist/components/{layout → base}/container/index.d.ts +0 -0
  101. /package/dist/components/{layout → base}/logo/index.d.ts +0 -0
  102. /package/dist/components/{not-found → pages/not-found}/index.d.ts +0 -0
  103. /package/dist/{components/layout → layout}/content/index.d.ts +0 -0
  104. /package/dist/{components/layout → layout}/footer/brand/index.d.ts +0 -0
  105. /package/dist/{components/layout → layout}/footer/copyright/index.d.ts +0 -0
  106. /package/dist/{components/layout → layout}/footer/disclaimer/index.d.ts +0 -0
  107. /package/dist/{components/layout → layout}/footer/extra/index.d.ts +0 -0
  108. /package/dist/{components/layout → layout}/footer/index.d.ts +0 -0
  109. /package/dist/{components/layout → layout}/header/brand/index.d.ts +0 -0
  110. /package/dist/{components/layout → layout}/header/index.d.ts +0 -0
  111. /package/dist/{components/layout → layout}/header/theme-toggler/index.d.ts +0 -0
  112. /package/dist/{components/layout → layout}/index.d.ts +0 -0
  113. /package/dist/{components/layout → layout}/main/index.d.ts +0 -0
  114. /package/dist/{components/layout → layout}/scroll-to-top/index.d.ts +0 -0
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const react = require("@chakra-ui/react");
3
3
  require("./index-C6MG_f24.js");
4
- require("./index-CJVr79Z2.js");
4
+ require("./index-DMR4Ptkt.js");
5
5
  const index = require("./index-CbuiYkSg.js");
6
6
  function usePrimaryColors() {
7
7
  const color = react.useColorModeValue(index.LIGHT_THEME_COLOR, index.DARK_THEME_COLOR);
@@ -0,0 +1,24 @@
1
+ import { DEFAULT_LANGUAGE } from "./i18n/index.mjs";
2
+ function getCurrentYear(locale = DEFAULT_LANGUAGE) {
3
+ const currentDate = /* @__PURE__ */ new Date();
4
+ const currentYear = new Intl.DateTimeFormat(locale, { year: "numeric" }).format(currentDate);
5
+ return currentYear;
6
+ }
7
+ function getCurrentMonth(locale = DEFAULT_LANGUAGE) {
8
+ const currentDate = /* @__PURE__ */ new Date();
9
+ const currentMonth = new Intl.DateTimeFormat(locale, { month: "long" }).format(currentDate);
10
+ return currentMonth;
11
+ }
12
+ function formatDate({ value, locale = DEFAULT_LANGUAGE, options }) {
13
+ const date = typeof value === "string" || typeof value === "number" ? new Date(value) : value;
14
+ if (isNaN(date.getTime())) {
15
+ throw new Error("Invalid date provided");
16
+ }
17
+ const formatter = new Intl.DateTimeFormat(locale, options);
18
+ return formatter.format(date);
19
+ }
20
+ export {
21
+ getCurrentMonth as a,
22
+ formatDate as f,
23
+ getCurrentYear as g
24
+ };
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ const jsxRuntime = require("react/jsx-runtime");
3
+ const react = require("@chakra-ui/react");
4
+ const index = require("./index-CR5rM7at.js");
5
+ require("@mdx-js/react");
6
+ require("react-medium-image-zoom");
7
+ require("react");
8
+ require("react-i18next");
9
+ const index$1 = require("./index-5J1CqqcW.js");
10
+ const index$2 = require("./index-C6MG_f24.js");
11
+ require("./index-DMR4Ptkt.js");
12
+ const FacebookIcon = (props) => {
13
+ 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: [
14
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "1", y: "1", width: "22", height: "22", rx: "5", fill: "none", stroke: "currentColor", strokeWidth: "2" }),
15
+ /* @__PURE__ */ jsxRuntime.jsx(
16
+ "path",
17
+ {
18
+ 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",
19
+ fill: "currentColor"
20
+ }
21
+ )
22
+ ] });
23
+ };
24
+ const InstagramIcon = (props) => {
25
+ return /* @__PURE__ */ jsxRuntime.jsxs(
26
+ "svg",
27
+ {
28
+ xmlns: "http://www.w3.org/2000/svg",
29
+ width: "24",
30
+ height: "24",
31
+ viewBox: "0 0 24 24",
32
+ "aria-label": "Instagram",
33
+ ...props,
34
+ children: [
35
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "1", y: "1", width: "22", height: "22", rx: "5", fill: "none", stroke: "currentColor", strokeWidth: "2" }),
36
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "4", fill: "none", stroke: "currentColor", strokeWidth: "2" }),
37
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "17", cy: "7", r: "1.25", fill: "currentColor" })
38
+ ]
39
+ }
40
+ );
41
+ };
42
+ const PinterestIcon = (props) => {
43
+ return /* @__PURE__ */ jsxRuntime.jsx(
44
+ "svg",
45
+ {
46
+ xmlns: "http://www.w3.org/2000/svg",
47
+ width: "24",
48
+ height: "24",
49
+ viewBox: "0 0 24 24",
50
+ "aria-label": "Pinterest",
51
+ ...props,
52
+ children: /* @__PURE__ */ jsxRuntime.jsx(
53
+ "path",
54
+ {
55
+ fill: "currentColor",
56
+ 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"
57
+ }
58
+ )
59
+ }
60
+ );
61
+ };
62
+ const XcomIcon = (props) => {
63
+ 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(
64
+ "path",
65
+ {
66
+ fill: "currentColor",
67
+ 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"
68
+ }
69
+ ) });
70
+ };
71
+ const YoutubeIcon = (props) => {
72
+ 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(
73
+ "path",
74
+ {
75
+ fill: "currentColor",
76
+ 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"
77
+ }
78
+ ) });
79
+ };
80
+ const SocialNetworkMap = {
81
+ facebook: FacebookIcon,
82
+ instagram: InstagramIcon,
83
+ pinterest: PinterestIcon,
84
+ x: XcomIcon,
85
+ youtube: YoutubeIcon
86
+ };
87
+ const SocialNetwork = ({ kind, url }) => {
88
+ const Icon = SocialNetworkMap[kind];
89
+ return /* @__PURE__ */ jsxRuntime.jsx(index.Link, { to: url, children: /* @__PURE__ */ jsxRuntime.jsx(Icon, {}) });
90
+ };
91
+ const SocialNetworks = ({ socialNetworks, ...flexProps }) => {
92
+ const uniqueSocialNetworks = [...new Map(socialNetworks.map((item) => [item.kind, item])).values()];
93
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Flex, { gap: 2, ...flexProps, children: uniqueSocialNetworks.map((socialNetwork) => /* @__PURE__ */ jsxRuntime.jsx(SocialNetwork, { ...socialNetwork }, socialNetwork.kind)) });
94
+ };
95
+ const Container = ({ children }) => {
96
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Container, { maxW: "container.xl", children });
97
+ };
98
+ const LinkButton = ({
99
+ label,
100
+ href,
101
+ linkType = "redirect",
102
+ size = "auto",
103
+ width = "auto",
104
+ textTransform,
105
+ textDecoration,
106
+ animation,
107
+ onClick,
108
+ ...boxProps
109
+ }) => {
110
+ var _a;
111
+ const { config } = index.useSiteContext();
112
+ const { color, invertedColor } = index$1.usePrimaryColors();
113
+ const isInvertedColor = (_a = config == null ? void 0 : config.theme) == null ? void 0 : _a.isInvertedColor;
114
+ return /* @__PURE__ */ jsxRuntime.jsx(
115
+ react.Button,
116
+ {
117
+ w: width,
118
+ size: size === "auto" ? { base: "sm", md: "lg" } : size,
119
+ bg: "brand.500",
120
+ color: isInvertedColor ? invertedColor : color,
121
+ animation: animation ? index$2.Animation[animation.type](animation.params) : void 0,
122
+ textTransform,
123
+ _hover: { textDecoration, bg: "brand.200" },
124
+ _active: { transform: "scale(0.95)" },
125
+ onClick,
126
+ ...boxProps,
127
+ ...href && {
128
+ as: index.Link,
129
+ to: href,
130
+ isRedirectLink: linkType === "redirect"
131
+ },
132
+ children: label
133
+ }
134
+ );
135
+ };
136
+ const Logo = () => {
137
+ const { metadata } = index.useSiteContext();
138
+ const { logo } = metadata;
139
+ 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" }) });
140
+ };
141
+ exports.Container = Container;
142
+ exports.LinkButton = LinkButton;
143
+ exports.Logo = Logo;
144
+ exports.SocialNetwork = SocialNetwork;
145
+ exports.SocialNetworks = SocialNetworks;
@@ -0,0 +1,28 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Heading, OrderedList, Text, UnorderedList } from "@chakra-ui/react";
3
+ const Heading1 = ({ children, ...props }) => {
4
+ return /* @__PURE__ */ jsx(Heading, { as: "h1", size: "xl", mb: 4, ...props, children });
5
+ };
6
+ const Heading2 = ({ children, ...props }) => {
7
+ return /* @__PURE__ */ jsx(Heading, { as: "h2", size: "lg", mt: 6, mb: 4, ...props, children });
8
+ };
9
+ const Heading3 = ({ children, ...props }) => {
10
+ return /* @__PURE__ */ jsx(Heading, { as: "h3", size: "md", mt: 4, mb: 4, ...props, children });
11
+ };
12
+ const Ordered = ({ children, ...props }) => {
13
+ return /* @__PURE__ */ jsx(OrderedList, { mb: 4, ...props, children });
14
+ };
15
+ const Paragraph = ({ children, ...props }) => {
16
+ return /* @__PURE__ */ jsx(Text, { mb: 4, ...props, children });
17
+ };
18
+ const Unordered = ({ children, ...props }) => {
19
+ return /* @__PURE__ */ jsx(UnorderedList, { mb: 4, ...props, children });
20
+ };
21
+ export {
22
+ Heading1 as H,
23
+ Ordered as O,
24
+ Paragraph as P,
25
+ Unordered as U,
26
+ Heading2 as a,
27
+ Heading3 as b
28
+ };
@@ -4,7 +4,11 @@ function buildPath(slug, parentSlug) {
4
4
  function isRelativePath(path = "") {
5
5
  return path.startsWith("/");
6
6
  }
7
+ function isAbsolutePath(path = "") {
8
+ return /^[a-zA-Z][a-zA-Z\d+\-.]*:/.test(path);
9
+ }
7
10
  export {
11
+ isAbsolutePath as a,
8
12
  buildPath as b,
9
13
  isRelativePath as i
10
14
  };
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ const i18n = require("./i18n/index.cjs");
3
+ function getCurrentYear(locale = i18n.DEFAULT_LANGUAGE) {
4
+ const currentDate = /* @__PURE__ */ new Date();
5
+ const currentYear = new Intl.DateTimeFormat(locale, { year: "numeric" }).format(currentDate);
6
+ return currentYear;
7
+ }
8
+ function getCurrentMonth(locale = i18n.DEFAULT_LANGUAGE) {
9
+ const currentDate = /* @__PURE__ */ new Date();
10
+ const currentMonth = new Intl.DateTimeFormat(locale, { month: "long" }).format(currentDate);
11
+ return currentMonth;
12
+ }
13
+ function formatDate({ value, locale = i18n.DEFAULT_LANGUAGE, options }) {
14
+ const date = typeof value === "string" || typeof value === "number" ? new Date(value) : value;
15
+ if (isNaN(date.getTime())) {
16
+ throw new Error("Invalid date provided");
17
+ }
18
+ const formatter = new Intl.DateTimeFormat(locale, options);
19
+ return formatter.format(date);
20
+ }
21
+ exports.formatDate = formatDate;
22
+ exports.getCurrentMonth = getCurrentMonth;
23
+ exports.getCurrentYear = getCurrentYear;
@@ -0,0 +1,44 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { MDXProvider } from "@mdx-js/react";
3
+ import "@chakra-ui/react";
4
+ import { I as Image, L as Link } from "./index-HLGPI9-S.mjs";
5
+ import "react";
6
+ import "react-i18next";
7
+ import { P as Paragraph, U as Unordered, O as Ordered, b as Heading3, a as Heading2, H as Heading1 } from "./index-BEjKnOZA.mjs";
8
+ import "./index-BJRvnR8Q.mjs";
9
+ import "./index-CWMHJGbL.mjs";
10
+ function omitProps(props, omittedKeys) {
11
+ const result = { ...props };
12
+ omittedKeys.forEach((key) => {
13
+ if (key in result) {
14
+ delete result[key];
15
+ }
16
+ });
17
+ return result;
18
+ }
19
+ function preprocessProps(callback) {
20
+ const omittedKeys = ["node"];
21
+ return (props) => callback(omitProps(props, omittedKeys));
22
+ }
23
+ function renderLink({ href, ...props }) {
24
+ return /* @__PURE__ */ jsx(Link, { to: href, color: "brand.400", ...props });
25
+ }
26
+ function renderImage(props) {
27
+ return /* @__PURE__ */ jsx(Image, { ...props, mt: 4, mb: 4, hasZoom: true });
28
+ }
29
+ const components = {
30
+ h1: preprocessProps((props) => /* @__PURE__ */ jsx(Heading1, { ...props })),
31
+ h2: preprocessProps((props) => /* @__PURE__ */ jsx(Heading2, { ...props })),
32
+ h3: preprocessProps((props) => /* @__PURE__ */ jsx(Heading3, { ...props })),
33
+ ol: preprocessProps((props) => /* @__PURE__ */ jsx(Ordered, { ...props })),
34
+ ul: preprocessProps((props) => /* @__PURE__ */ jsx(Unordered, { ...props })),
35
+ p: preprocessProps((props) => /* @__PURE__ */ jsx(Paragraph, { ...props })),
36
+ a: preprocessProps((props) => renderLink(props)),
37
+ img: preprocessProps((props) => renderImage(props))
38
+ };
39
+ const MdxProvider = ({ children }) => {
40
+ return /* @__PURE__ */ jsx(MDXProvider, { components, children });
41
+ };
42
+ export {
43
+ MdxProvider as M
44
+ };
@@ -0,0 +1,146 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Flex, Container as Container$1, Button, Box } from "@chakra-ui/react";
3
+ import { L as Link, a as useSiteContext, I as Image } from "./index-HLGPI9-S.mjs";
4
+ import "@mdx-js/react";
5
+ import "react-medium-image-zoom";
6
+ import "react";
7
+ import "react-i18next";
8
+ import { u as usePrimaryColors } from "./index-DYS7zQW4.mjs";
9
+ import { A as Animation } from "./index-BJRvnR8Q.mjs";
10
+ import "./index-CWMHJGbL.mjs";
11
+ const FacebookIcon = (props) => {
12
+ return /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", "aria-label": "Facebook", ...props, children: [
13
+ /* @__PURE__ */ jsx("rect", { x: "1", y: "1", width: "22", height: "22", rx: "5", fill: "none", stroke: "currentColor", strokeWidth: "2" }),
14
+ /* @__PURE__ */ jsx(
15
+ "path",
16
+ {
17
+ 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",
18
+ fill: "currentColor"
19
+ }
20
+ )
21
+ ] });
22
+ };
23
+ const InstagramIcon = (props) => {
24
+ return /* @__PURE__ */ jsxs(
25
+ "svg",
26
+ {
27
+ xmlns: "http://www.w3.org/2000/svg",
28
+ width: "24",
29
+ height: "24",
30
+ viewBox: "0 0 24 24",
31
+ "aria-label": "Instagram",
32
+ ...props,
33
+ children: [
34
+ /* @__PURE__ */ jsx("rect", { x: "1", y: "1", width: "22", height: "22", rx: "5", fill: "none", stroke: "currentColor", strokeWidth: "2" }),
35
+ /* @__PURE__ */ jsx("circle", { cx: "12", cy: "12", r: "4", fill: "none", stroke: "currentColor", strokeWidth: "2" }),
36
+ /* @__PURE__ */ jsx("circle", { cx: "17", cy: "7", r: "1.25", fill: "currentColor" })
37
+ ]
38
+ }
39
+ );
40
+ };
41
+ const PinterestIcon = (props) => {
42
+ return /* @__PURE__ */ jsx(
43
+ "svg",
44
+ {
45
+ xmlns: "http://www.w3.org/2000/svg",
46
+ width: "24",
47
+ height: "24",
48
+ viewBox: "0 0 24 24",
49
+ "aria-label": "Pinterest",
50
+ ...props,
51
+ children: /* @__PURE__ */ jsx(
52
+ "path",
53
+ {
54
+ fill: "currentColor",
55
+ 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"
56
+ }
57
+ )
58
+ }
59
+ );
60
+ };
61
+ const XcomIcon = (props) => {
62
+ return /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", "aria-label": "X", ...props, children: /* @__PURE__ */ jsx(
63
+ "path",
64
+ {
65
+ fill: "currentColor",
66
+ 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"
67
+ }
68
+ ) });
69
+ };
70
+ const YoutubeIcon = (props) => {
71
+ return /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", "aria-label": "YouTube", ...props, children: /* @__PURE__ */ jsx(
72
+ "path",
73
+ {
74
+ fill: "currentColor",
75
+ 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"
76
+ }
77
+ ) });
78
+ };
79
+ const SocialNetworkMap = {
80
+ facebook: FacebookIcon,
81
+ instagram: InstagramIcon,
82
+ pinterest: PinterestIcon,
83
+ x: XcomIcon,
84
+ youtube: YoutubeIcon
85
+ };
86
+ const SocialNetwork = ({ kind, url }) => {
87
+ const Icon = SocialNetworkMap[kind];
88
+ return /* @__PURE__ */ jsx(Link, { to: url, children: /* @__PURE__ */ jsx(Icon, {}) });
89
+ };
90
+ const SocialNetworks = ({ socialNetworks, ...flexProps }) => {
91
+ const uniqueSocialNetworks = [...new Map(socialNetworks.map((item) => [item.kind, item])).values()];
92
+ return /* @__PURE__ */ jsx(Flex, { gap: 2, ...flexProps, children: uniqueSocialNetworks.map((socialNetwork) => /* @__PURE__ */ jsx(SocialNetwork, { ...socialNetwork }, socialNetwork.kind)) });
93
+ };
94
+ const Container = ({ children }) => {
95
+ return /* @__PURE__ */ jsx(Container$1, { maxW: "container.xl", children });
96
+ };
97
+ const LinkButton = ({
98
+ label,
99
+ href,
100
+ linkType = "redirect",
101
+ size = "auto",
102
+ width = "auto",
103
+ textTransform,
104
+ textDecoration,
105
+ animation,
106
+ onClick,
107
+ ...boxProps
108
+ }) => {
109
+ var _a;
110
+ const { config } = useSiteContext();
111
+ const { color, invertedColor } = usePrimaryColors();
112
+ const isInvertedColor = (_a = config == null ? void 0 : config.theme) == null ? void 0 : _a.isInvertedColor;
113
+ return /* @__PURE__ */ jsx(
114
+ Button,
115
+ {
116
+ w: width,
117
+ size: size === "auto" ? { base: "sm", md: "lg" } : size,
118
+ bg: "brand.500",
119
+ color: isInvertedColor ? invertedColor : color,
120
+ animation: animation ? Animation[animation.type](animation.params) : void 0,
121
+ textTransform,
122
+ _hover: { textDecoration, bg: "brand.200" },
123
+ _active: { transform: "scale(0.95)" },
124
+ onClick,
125
+ ...boxProps,
126
+ ...href && {
127
+ as: Link,
128
+ to: href,
129
+ isRedirectLink: linkType === "redirect"
130
+ },
131
+ children: label
132
+ }
133
+ );
134
+ };
135
+ const Logo = () => {
136
+ const { metadata } = useSiteContext();
137
+ const { logo } = metadata;
138
+ return /* @__PURE__ */ jsx(Box, { display: "flex", h: { base: 10, md: 14 }, overflow: "hidden", children: /* @__PURE__ */ jsx(Image, { src: logo, alt: "Logo", objectFit: "contain" }) });
139
+ };
140
+ export {
141
+ Container as C,
142
+ LinkButton as L,
143
+ SocialNetwork as S,
144
+ Logo as a,
145
+ SocialNetworks as b
146
+ };
@@ -7,9 +7,9 @@ const gatsby = require("gatsby");
7
7
  require("@mdx-js/react");
8
8
  require("react-i18next");
9
9
  require("./index-C6MG_f24.js");
10
- require("./index-CJVr79Z2.js");
10
+ require("./index-DMR4Ptkt.js");
11
11
  const index = require("./index-WFgDSB1A.js");
12
- const index$1 = require("./index-At00w6EN.js");
12
+ const index$1 = require("./index-DgrIJs-a.js");
13
13
  function isImageUrl(image) {
14
14
  return Boolean(typeof image === "string" && image.trim() !== "");
15
15
  }
@@ -66,6 +66,9 @@ function usePageContext() {
66
66
  }
67
67
  return context;
68
68
  }
69
+ function isExternalLink(path) {
70
+ return index$1.isAbsolutePath(path);
71
+ }
69
72
  function normalizePath(path = "") {
70
73
  return path.replace(/^\/+|\/+$/g, "").replace(/\/+/g, "/");
71
74
  }
@@ -80,12 +83,24 @@ function getLocalizedPath(path, currentLocaleCode, defaultLocaleCode) {
80
83
  }
81
84
  return `${localePrefix}${normalizePath(path)}`;
82
85
  }
83
- const Link = react$1.forwardRef(({ to, ...props }, ref) => {
86
+ const Link = react$1.forwardRef(({ to = "", isRedirectLink, ...props }, ref) => {
84
87
  const { localization } = useSiteContext();
85
88
  const { currentLocale } = usePageContext();
86
- const defaultLocale = localization.defaultLocale;
87
- const path = getLocalizedPath(to, currentLocale.code, defaultLocale.code);
88
- return /* @__PURE__ */ jsxRuntime.jsx(gatsby.Link, { ref, to: path, ...props });
89
+ if (isExternalLink(to)) {
90
+ return /* @__PURE__ */ jsxRuntime.jsx(
91
+ react.Link,
92
+ {
93
+ ref,
94
+ href: isRedirectLink ? `/follow?to=${to}` : to,
95
+ target: "_blank",
96
+ rel: "noopener noreferrer nofollow",
97
+ referrerPolicy: "no-referrer",
98
+ ...props
99
+ }
100
+ );
101
+ }
102
+ const path = getLocalizedPath(to, currentLocale.code, localization.defaultLocale.code);
103
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Link, { ref, as: gatsby.Link, to: path, ...props });
89
104
  });
90
105
  exports.Image = Image;
91
106
  exports.Link = Link;