@xyo-network/react-footer 7.6.3 → 8.0.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.
@@ -1 +1 @@
1
- {"version":3,"file":"AlwaysLinks.d.ts","sourceRoot":"","sources":["../../src/AlwaysLinks.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,MAAM,WAAW,sBAAuB,SAAQ,YAAY;IAC1D,WAAW,CAAC,EAAE,WAAW,EAAE,CAAA;IAC3B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAsB9D,CAAA"}
1
+ {"version":3,"file":"AlwaysLinks.d.ts","sourceRoot":"","sources":["../../src/AlwaysLinks.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,MAAM,WAAW,sBAAuB,SAAQ,YAAY;IAC1D,WAAW,CAAC,EAAE,WAAW,EAAE,CAAA;IAC3B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAyC9D,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.d.ts","sourceRoot":"","sources":["../../src/Footer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAGzD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAG/D,MAAM,WAAW,WAAY,SAAQ,YAAY;IAC/C,sBAAsB,CAAC,EAAE,sBAAsB,CAAA;IAC/C,SAAS,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,MAAM,CAAA;IAC/C,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAkDxC,CAAA"}
1
+ {"version":3,"file":"Footer.d.ts","sourceRoot":"","sources":["../../src/Footer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAGzD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAG/D,MAAM,WAAW,WAAY,SAAQ,YAAY;IAC/C,sBAAsB,CAAC,EAAE,sBAAsB,CAAA;IAC/C,SAAS,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,MAAM,CAAA;IAC/C,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAyDxC,CAAA"}
@@ -1,4 +1,6 @@
1
1
  import type { LinkExProps } from '@xylabs/react-link';
2
2
  import React from 'react';
3
- export declare const FooterLink: React.FC<LinkExProps>;
3
+ export declare const FooterLink: React.FC<LinkExProps & {
4
+ margin?: number | string;
5
+ }>;
4
6
  //# sourceMappingURL=Link.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../src/Link.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAGrD,OAAO,KAAK,MAAM,OAAO,CAAA;AAuBzB,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAgB5C,CAAA"}
1
+ {"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../src/Link.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAGrD,OAAO,KAAK,MAAM,OAAO,CAAA;AAuBzB,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CA0C3E,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Links.d.ts","sourceRoot":"","sources":["../../src/Links.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEzD,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAW9C,CAAA"}
1
+ {"version":3,"file":"Links.d.ts","sourceRoot":"","sources":["../../src/Links.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEzD,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAsB9C,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"SocialLinks.d.ts","sourceRoot":"","sources":["../../../src/Xyo/SocialLinks.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEzD,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA+B9C,CAAA"}
1
+ {"version":3,"file":"SocialLinks.d.ts","sourceRoot":"","sources":["../../../src/Xyo/SocialLinks.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEzD,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAoC9C,CAAA"}
@@ -34,12 +34,41 @@ var FooterLink = ({
34
34
  const convertedUrl = convertToBetaIfNeeded(url);
35
35
  if (document.location.hostname === convertedUrl.hostname) {
36
36
  const to2 = url.search.length > 0 ? `${convertedUrl.pathname}${convertedUrl.search}` : url.pathname;
37
- return /* @__PURE__ */ jsx(LinkEx, { margin, to: to2, toOptions, target, variant, ...props });
37
+ return /* @__PURE__ */ jsx(
38
+ LinkEx,
39
+ {
40
+ to: to2,
41
+ toOptions,
42
+ target,
43
+ variant,
44
+ ...props,
45
+ sx: [{ margin }, ...Array.isArray(props.sx) ? props.sx : [props.sx]]
46
+ }
47
+ );
38
48
  } else {
39
- return /* @__PURE__ */ jsx(LinkEx, { margin, href, target: target ?? "_blank", variant, ...props });
49
+ return /* @__PURE__ */ jsx(
50
+ LinkEx,
51
+ {
52
+ href,
53
+ target: target ?? "_blank",
54
+ variant,
55
+ ...props,
56
+ sx: [{ margin }, ...Array.isArray(props.sx) ? props.sx : [props.sx]]
57
+ }
58
+ );
40
59
  }
41
60
  } else {
42
- return /* @__PURE__ */ jsx(LinkEx, { margin, to, toOptions, target, variant, ...props });
61
+ return /* @__PURE__ */ jsx(
62
+ LinkEx,
63
+ {
64
+ to,
65
+ toOptions,
66
+ target,
67
+ variant,
68
+ ...props,
69
+ sx: [{ margin }, ...Array.isArray(props.sx) ? props.sx : [props.sx]]
70
+ }
71
+ );
43
72
  }
44
73
  };
45
74
 
@@ -53,13 +82,43 @@ var FooterAlwaysLinks = ({
53
82
  }) => /* @__PURE__ */ jsxs(
54
83
  FlexRow,
55
84
  {
56
- flexWrap: "wrap",
57
- textTransform: "uppercase",
58
85
  style: { opacity: 0.6, ...style },
59
86
  ...props,
87
+ sx: [{
88
+ flexWrap: "wrap",
89
+ textTransform: "uppercase"
90
+ }, ...Array.isArray(props.sx) ? props.sx : [props.sx]],
60
91
  children: [
61
- footerLinks2?.map((footerLink) => /* @__PURE__ */ jsx2(FooterLink, { noWrap: true, paddingX: 1, margin: 0, ...footerLink, children: /* @__PURE__ */ jsx2("small", { children: footerLink.title }) }, footerLink.title)),
62
- onMore ? /* @__PURE__ */ jsx2(FlexRow, { style: { cursor: "pointer" }, paddingX: 0.5, onClick: onMore, children: /* @__PURE__ */ jsx2(MoreHorizIcon, { color: "primary", fontSize: "small" }) }) : null
92
+ footerLinks2?.map((footerLink) => /* @__PURE__ */ jsx2(
93
+ FooterLink,
94
+ {
95
+ noWrap: true,
96
+ ...footerLink,
97
+ sx: [{
98
+ paddingX: 1,
99
+ margin: 0
100
+ }, ...Array.isArray(footerLink.sx) ? footerLink.sx : [footerLink.sx]],
101
+ children: /* @__PURE__ */ jsx2("small", { children: footerLink.title })
102
+ },
103
+ footerLink.title
104
+ )),
105
+ onMore ? /* @__PURE__ */ jsx2(
106
+ FlexRow,
107
+ {
108
+ style: { cursor: "pointer" },
109
+ onClick: onMore,
110
+ sx: { paddingX: 0.5 },
111
+ children: /* @__PURE__ */ jsx2(
112
+ MoreHorizIcon,
113
+ {
114
+ sx: {
115
+ color: "primary",
116
+ fontSize: "small"
117
+ }
118
+ }
119
+ )
120
+ }
121
+ ) : null
63
122
  ]
64
123
  }
65
124
  );
@@ -86,14 +145,25 @@ var Footer = ({
86
145
  return /* @__PURE__ */ jsxs2(
87
146
  FlexCol,
88
147
  {
89
- alignItems: "stretch",
90
148
  onMouseLeave: () => {
91
149
  setMore(false);
92
150
  },
93
151
  ...props,
152
+ sx: [{ alignItems: "stretch" }, ...Array.isArray(props.sx) ? props.sx : [props.sx]],
94
153
  children: [
95
- more && dynamicHeight ? /* @__PURE__ */ jsx3(FlexCol, { alignItems: "stretch", children: /* @__PURE__ */ jsx3(FlexRow2, { paper: true, bottom: -1, position: "absolute", width: "100%", children: container && container !== "none" ? /* @__PURE__ */ jsx3(Container, { children }) : children }) }) : null,
96
- dynamicHeight ? null : /* @__PURE__ */ jsx3(FlexCol, { alignItems: "stretch", children: container && container !== "none" ? /* @__PURE__ */ jsx3(Container, { children }) : children }),
154
+ more && dynamicHeight ? /* @__PURE__ */ jsx3(FlexCol, { sx: { alignItems: "stretch" }, children: /* @__PURE__ */ jsx3(
155
+ FlexRow2,
156
+ {
157
+ paper: true,
158
+ sx: {
159
+ bottom: -1,
160
+ position: "absolute",
161
+ width: "100%"
162
+ },
163
+ children: container && container !== "none" ? /* @__PURE__ */ jsx3(Container, { children }) : children
164
+ }
165
+ ) }) : null,
166
+ dynamicHeight ? null : /* @__PURE__ */ jsx3(FlexCol, { sx: { alignItems: "stretch" }, children: container && container !== "none" ? /* @__PURE__ */ jsx3(Container, { children }) : children }),
97
167
  /* @__PURE__ */ jsx3(FlexRow2, { children: container && container !== "none" ? /* @__PURE__ */ jsx3(Container, { children: /* @__PURE__ */ jsx3(FooterAlwaysLinks, { ...alwaysFooterLinksProps, onMore: dynamicHeight ? onMore : void 0 }) }) : /* @__PURE__ */ jsx3(FooterAlwaysLinks, { ...alwaysFooterLinksProps, onMore: dynamicHeight ? onMore : void 0 }) })
98
168
  ]
99
169
  }
@@ -114,10 +184,29 @@ var FooterLinks = ({
114
184
  title,
115
185
  ...props
116
186
  }) => {
117
- return /* @__PURE__ */ jsxs3(FlexCol2, { margin: 1, justifyContent: "flex-start", title, ...props, children: [
118
- /* @__PURE__ */ jsx4(Typography, { margin: 0.5, variant: "h6", noWrap: true, children: title }),
119
- children
120
- ] });
187
+ return /* @__PURE__ */ jsxs3(
188
+ FlexCol2,
189
+ {
190
+ title,
191
+ ...props,
192
+ sx: [{
193
+ margin: 1,
194
+ justifyContent: "flex-start"
195
+ }, ...Array.isArray(props.sx) ? props.sx : [props.sx]],
196
+ children: [
197
+ /* @__PURE__ */ jsx4(
198
+ Typography,
199
+ {
200
+ variant: "h6",
201
+ noWrap: true,
202
+ sx: { margin: 0.5 },
203
+ children: title
204
+ }
205
+ ),
206
+ children
207
+ ]
208
+ }
209
+ );
121
210
  };
122
211
 
123
212
  // src/Xyo/AlwaysLinks.tsx
@@ -195,16 +284,25 @@ import { FlexRow as FlexRow3 } from "@xylabs/react-flexbox";
195
284
  import { FaDiscord } from "react-icons/fa";
196
285
  import { jsx as jsx9, jsxs as jsxs7 } from "react/jsx-runtime";
197
286
  var SocialLinks = (props) => {
198
- return /* @__PURE__ */ jsx9(FooterLinks, { title: "XYO Socials", ...props, children: /* @__PURE__ */ jsxs7(FlexRow3, { flexWrap: "wrap", justifyContent: "flex-start", children: [
199
- /* @__PURE__ */ jsx9(FooterLink, { href: "https://business.facebook.com/OfficialXYO/", children: /* @__PURE__ */ jsx9(Facebook, {}) }),
200
- /* @__PURE__ */ jsx9(FooterLink, { href: "https://twitter.com/OfficialXYO", children: /* @__PURE__ */ jsx9(Twitter, {}) }),
201
- /* @__PURE__ */ jsx9(FooterLink, { href: "https://www.instagram.com/officialxyo/", children: /* @__PURE__ */ jsx9(Instagram, {}) }),
202
- /* @__PURE__ */ jsx9(FooterLink, { href: "https://t.me/xyonetwork", children: /* @__PURE__ */ jsx9(Telegram, {}) }),
203
- /* @__PURE__ */ jsx9(FooterLink, { href: "https://www.reddit.com/r/XYONetwork/", children: /* @__PURE__ */ jsx9(Reddit, {}) }),
204
- /* @__PURE__ */ jsx9(FooterLink, { href: "https://www.youtube.com/channel/UCyZDqb9pgntVHJVt1pxXtsw", children: /* @__PURE__ */ jsx9(YouTube, {}) }),
205
- /* @__PURE__ */ jsx9(FooterLink, { href: "https://www.linkedin.com/company/officialxyo/", children: /* @__PURE__ */ jsx9(LinkedIn, {}) }),
206
- /* @__PURE__ */ jsx9(FooterLink, { href: "https://discord.gg/officialxyo", children: /* @__PURE__ */ jsx9(FaDiscord, {}) })
207
- ] }) });
287
+ return /* @__PURE__ */ jsx9(FooterLinks, { title: "XYO Socials", ...props, children: /* @__PURE__ */ jsxs7(
288
+ FlexRow3,
289
+ {
290
+ sx: {
291
+ flexWrap: "wrap",
292
+ justifyContent: "flex-start"
293
+ },
294
+ children: [
295
+ /* @__PURE__ */ jsx9(FooterLink, { href: "https://business.facebook.com/OfficialXYO/", children: /* @__PURE__ */ jsx9(Facebook, {}) }),
296
+ /* @__PURE__ */ jsx9(FooterLink, { href: "https://twitter.com/OfficialXYO", children: /* @__PURE__ */ jsx9(Twitter, {}) }),
297
+ /* @__PURE__ */ jsx9(FooterLink, { href: "https://www.instagram.com/officialxyo/", children: /* @__PURE__ */ jsx9(Instagram, {}) }),
298
+ /* @__PURE__ */ jsx9(FooterLink, { href: "https://t.me/xyonetwork", children: /* @__PURE__ */ jsx9(Telegram, {}) }),
299
+ /* @__PURE__ */ jsx9(FooterLink, { href: "https://www.reddit.com/r/XYONetwork/", children: /* @__PURE__ */ jsx9(Reddit, {}) }),
300
+ /* @__PURE__ */ jsx9(FooterLink, { href: "https://www.youtube.com/channel/UCyZDqb9pgntVHJVt1pxXtsw", children: /* @__PURE__ */ jsx9(YouTube, {}) }),
301
+ /* @__PURE__ */ jsx9(FooterLink, { href: "https://www.linkedin.com/company/officialxyo/", children: /* @__PURE__ */ jsx9(LinkedIn, {}) }),
302
+ /* @__PURE__ */ jsx9(FooterLink, { href: "https://discord.gg/officialxyo", children: /* @__PURE__ */ jsx9(FaDiscord, {}) })
303
+ ]
304
+ }
305
+ ) });
208
306
  };
209
307
 
210
308
  // src/Xyo/SupportLinks.tsx
@@ -253,12 +351,12 @@ var XyoFooter = ({
253
351
  ...props
254
352
  }) => {
255
353
  return /* @__PURE__ */ jsx12(Footer, { alwaysFooterLinksProps: alwaysFooterLinksProps ?? { footerLinks }, ...props, children: /* @__PURE__ */ jsxs10(Grid, { container: true, children: [
256
- /* @__PURE__ */ jsx12(Grid, { size: { xs: 12, md: 2 }, children: /* @__PURE__ */ jsx12(SocialLinks, { alignItems: "flex-start" }) }),
257
- /* @__PURE__ */ jsx12(Grid, { size: { xs: 6, md: 2 }, children: /* @__PURE__ */ jsx12(NetworkLinks, { alignItems: "flex-start" }) }),
258
- /* @__PURE__ */ jsx12(Grid, { size: { xs: 6, md: 2 }, children: /* @__PURE__ */ jsx12(TokenLinks, { alignItems: "flex-start" }) }),
259
- /* @__PURE__ */ jsx12(Grid, { size: { xs: 6, md: 2 }, children: /* @__PURE__ */ jsx12(DeveloperLinks, { alignItems: "flex-start" }) }),
260
- /* @__PURE__ */ jsx12(Grid, { size: { xs: 6, md: 2 }, children: /* @__PURE__ */ jsx12(MoreLinks, { alignItems: "flex-start" }) }),
261
- /* @__PURE__ */ jsx12(Grid, { size: { xs: 6, md: 2 }, children: /* @__PURE__ */ jsx12(SupportLinks, { alignItems: "flex-start" }) })
354
+ /* @__PURE__ */ jsx12(Grid, { size: { xs: 12, md: 2 }, children: /* @__PURE__ */ jsx12(SocialLinks, { sx: { alignItems: "flex-start" } }) }),
355
+ /* @__PURE__ */ jsx12(Grid, { size: { xs: 6, md: 2 }, children: /* @__PURE__ */ jsx12(NetworkLinks, { sx: { alignItems: "flex-start" } }) }),
356
+ /* @__PURE__ */ jsx12(Grid, { size: { xs: 6, md: 2 }, children: /* @__PURE__ */ jsx12(TokenLinks, { sx: { alignItems: "flex-start" } }) }),
357
+ /* @__PURE__ */ jsx12(Grid, { size: { xs: 6, md: 2 }, children: /* @__PURE__ */ jsx12(DeveloperLinks, { sx: { alignItems: "flex-start" } }) }),
358
+ /* @__PURE__ */ jsx12(Grid, { size: { xs: 6, md: 2 }, children: /* @__PURE__ */ jsx12(MoreLinks, { sx: { alignItems: "flex-start" } }) }),
359
+ /* @__PURE__ */ jsx12(Grid, { size: { xs: 6, md: 2 }, children: /* @__PURE__ */ jsx12(SupportLinks, { sx: { alignItems: "flex-start" } }) })
262
360
  ] }) });
263
361
  };
264
362
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/AlwaysLinks.tsx","../../src/Link.tsx","../../src/Footer.tsx","../../src/lib/copyrightLinkTitle.ts","../../src/Links.tsx","../../src/Xyo/AlwaysLinks.tsx","../../src/Xyo/DeveloperLinks.tsx","../../src/Xyo/Footer.tsx","../../src/Xyo/MoreLinks.tsx","../../src/Xyo/NetworkLinks.tsx","../../src/Xyo/SocialLinks.tsx","../../src/Xyo/SupportLinks.tsx","../../src/Xyo/TokenLinks.tsx"],"sourcesContent":["import { MoreHoriz as MoreHorizIcon } from '@mui/icons-material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport type { LinkExProps } from '@xylabs/react-link'\nimport React from 'react'\n\nimport { FooterLink } from './Link.tsx'\n\nexport interface FooterAlwaysLinksProps extends FlexBoxProps {\n footerLinks?: LinkExProps[]\n onMore?: () => void\n}\n\nexport const FooterAlwaysLinks: React.FC<FooterAlwaysLinksProps> = ({\n style, footerLinks, onMore, ...props\n}) => (\n <FlexRow\n flexWrap=\"wrap\"\n textTransform=\"uppercase\"\n style={{ opacity: 0.6, ...style }}\n {...props}\n >\n {footerLinks?.map(footerLink => (\n <FooterLink noWrap key={footerLink.title} paddingX={1} margin={0} {...footerLink}>\n <small>{footerLink.title}</small>\n </FooterLink>\n ))}\n {onMore\n ? (\n <FlexRow style={{ cursor: 'pointer' }} paddingX={0.5} onClick={onMore}>\n <MoreHorizIcon color=\"primary\" fontSize=\"small\" />\n </FlexRow>\n )\n : null}\n </FlexRow>\n)\n","import type { LinkExProps } from '@xylabs/react-link'\nimport { LinkEx } from '@xylabs/react-link'\nimport { assertEx } from '@xylabs/sdk-js'\nimport React from 'react'\n\n/**\n * @description\n * FooterLink automatically uses a local To if the link is to the current domain\n * If the link is not local, it defaults to target being _blank\n * In the case of 'beta' domains, it navigates correctly\n */\n\nconst convertToBetaIfNeeded = (url: string | URL, currentUrl = new URL(document.location.href)) => {\n const urlObj = typeof url === 'string' ? new URL(url) : url\n const currentUrlObj = typeof currentUrl === 'string' ? new URL(currentUrl) : currentUrl\n const currentHostnameParts = currentUrlObj.hostname.split('.')\n const beta = currentHostnameParts.shift() === 'beta'\n if (beta) {\n const currentHostnameWithoutBeta = currentHostnameParts.join('.')\n if (currentHostnameWithoutBeta === urlObj.hostname) {\n urlObj.hostname = currentUrlObj.hostname\n }\n }\n return urlObj\n}\n\nexport const FooterLink: React.FC<LinkExProps> = ({\n target, to, toOptions, href, margin = 0.5, variant = 'body2', ...props\n}) => {\n if (href) {\n const url = new URL(assertEx(href, () => 'href not set'))\n assertEx(url.hostname, () => 'Hostname is required in href')\n const convertedUrl = convertToBetaIfNeeded(url)\n if (document.location.hostname === convertedUrl.hostname) {\n const to = url.search.length > 0 ? `${convertedUrl.pathname}${convertedUrl.search}` : url.pathname\n return <LinkEx margin={margin} to={to} toOptions={toOptions} target={target} variant={variant} {...props} />\n } else {\n return <LinkEx margin={margin} href={href} target={target ?? '_blank'} variant={variant} {...props} />\n }\n } else {\n return <LinkEx margin={margin} to={to} toOptions={toOptions} target={target} variant={variant} {...props} />\n }\n}\n","import type { ContainerProps } from '@mui/material'\nimport { Container } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport { useIsDark } from '@xylabs/react-theme'\nimport React, { useState } from 'react'\n\nimport type { FooterAlwaysLinksProps } from './AlwaysLinks.tsx'\nimport { FooterAlwaysLinks } from './AlwaysLinks.tsx'\n\nexport interface FooterProps extends FlexBoxProps {\n alwaysFooterLinksProps?: FooterAlwaysLinksProps\n container?: ContainerProps['maxWidth'] | 'none'\n dynamicHeight?: boolean\n}\n\nexport const Footer: React.FC<FooterProps> = ({\n alwaysFooterLinksProps, children, container, dynamicHeight = false, ...props\n}) => {\n const [more, setMore] = useState(false)\n const onMore = () => {\n setMore(!more)\n }\n\n const darkMode = useIsDark()\n console.log('darkMode', darkMode)\n\n return (\n <FlexCol\n alignItems=\"stretch\"\n onMouseLeave={() => {\n setMore(false)\n }}\n {...props}\n >\n {more && dynamicHeight\n ? (\n <FlexCol alignItems=\"stretch\">\n <FlexRow paper bottom={-1} position=\"absolute\" width=\"100%\">\n {container && container !== 'none'\n ? <Container>{children}</Container>\n : children}\n </FlexRow>\n </FlexCol>\n )\n : null}\n {dynamicHeight\n ? null\n : (\n <FlexCol alignItems=\"stretch\">\n {container && container !== 'none'\n ? <Container>{children}</Container>\n : children}\n </FlexCol>\n )}\n <FlexRow>\n {container && container !== 'none'\n ? (\n <Container>\n <FooterAlwaysLinks {...alwaysFooterLinksProps} onMore={dynamicHeight ? onMore : undefined} />\n </Container>\n )\n : <FooterAlwaysLinks {...alwaysFooterLinksProps} onMore={dynamicHeight ? onMore : undefined} />}\n </FlexRow>\n </FlexCol>\n )\n}\n","export const copyrightLinkTitle = (entity: string) => {\n return `Copyright © ${new Date().getFullYear()} ${entity}`\n}\n","import { Typography } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nexport const FooterLinks: React.FC<FlexBoxProps> = ({\n children, title, ...props\n}) => {\n return (\n <FlexCol margin={1} justifyContent=\"flex-start\" title={title} {...props}>\n <Typography margin={0.5} variant=\"h6\" noWrap>\n {title}\n </Typography>\n {children}\n </FlexCol>\n )\n}\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterAlwaysLinks } from '../AlwaysLinks.tsx'\nimport { copyrightLinkTitle } from '../lib/index.ts'\n\nexport interface XyoFooterAlwaysLinksProps extends FlexBoxProps {\n onMore?: () => void\n}\n\nexport const XyoFooterAlwaysLinks: React.FC<XyoFooterAlwaysLinksProps> = props => (\n <FooterAlwaysLinks\n footerLinks={[\n {\n href: 'https://xylabs.com/',\n title: copyrightLinkTitle('XY Labs, Inc.'),\n },\n {\n href: 'https://xyo.network/',\n title: 'XYO Foundation',\n },\n {\n href: 'https://xylabs.com/privacy/',\n title: 'Privacy',\n },\n {\n href: 'https://xylabs.com/terms/',\n title: 'Terms',\n },\n {\n href: 'https://xylabs.com/jobs',\n title: 'Careers',\n },\n ]}\n {...props}\n />\n)\n\n/** @deprecated use FooterAlwaysLinksProps */\nexport type CopyrightProps = XyoFooterAlwaysLinksProps\n\n/** @deprecated use FooterAlwaysLinks */\n\nexport { FooterAlwaysLinks as Copyright } from '../AlwaysLinks.tsx'\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const DeveloperLinks: React.FC<FlexBoxProps> = props => (\n <FooterLinks title=\"Developer\" {...props}>\n <FooterLink href=\"https://xyo.network/developer\">Overview</FooterLink>\n <FooterLink href=\"https://xyo.network/developer/get-started\">Get Started</FooterLink>\n <FooterLink href=\"https://xyo.network/developer\">SDKs</FooterLink>\n <FooterLink href=\"https://github.com/xyoraclenetwork\">Open Source Github</FooterLink>\n <FooterLink href=\"https://xyo.network/docs/sdk/js\">Documentation</FooterLink>\n </FooterLinks>\n)\n","import { Grid } from '@mui/material'\nimport React from 'react'\n\nimport type { FooterProps } from '../Footer.tsx'\nimport { Footer } from '../Footer.tsx'\nimport { copyrightLinkTitle } from '../lib/index.ts'\nimport { DeveloperLinks } from './DeveloperLinks.tsx'\nimport { MoreLinks } from './MoreLinks.tsx'\nimport { NetworkLinks } from './NetworkLinks.tsx'\nimport { SocialLinks } from './SocialLinks.tsx'\nimport { SupportLinks } from './SupportLinks.tsx'\nimport { TokenLinks } from './TokenLinks.tsx'\n\nconst footerLinks = [\n {\n href: 'https://xylabs.com/',\n title: copyrightLinkTitle('XY Labs, Inc.'),\n },\n {\n href: 'https://xyo.network/',\n title: 'XYO Foundation',\n },\n {\n href: 'https://xylabs.com/privacy/',\n title: 'Privacy',\n },\n {\n href: 'https://xylabs.com/terms/',\n title: 'Terms',\n },\n {\n href: 'https://xylabs.com/jobs',\n title: 'Careers',\n },\n]\n\nexport const XyoFooter: React.FC<FooterProps> = ({\n alwaysFooterLinksProps,\n ...props\n}) => {\n return (\n <Footer alwaysFooterLinksProps={alwaysFooterLinksProps ?? { footerLinks }} {...props}>\n <Grid container>\n <Grid size={{ xs: 12, md: 2 }}>\n <SocialLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid size={{ xs: 6, md: 2 }}>\n <NetworkLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid size={{ xs: 6, md: 2 }}>\n <TokenLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid size={{ xs: 6, md: 2 }}>\n <DeveloperLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid size={{ xs: 6, md: 2 }}>\n <MoreLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid size={{ xs: 6, md: 2 }}>\n <SupportLinks alignItems=\"flex-start\" />\n </Grid>\n </Grid>\n </Footer>\n )\n}\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const MoreLinks: React.FC<FlexBoxProps> = props => (\n <FooterLinks title=\"More\" {...props}>\n <FooterLink href=\"https://xyo.network/partners\">Partners</FooterLink>\n <FooterLink href=\"https://xyo.network/fhr\">FHR</FooterLink>\n <FooterLink href=\"https://xyo.network/brand\">Brand</FooterLink>\n </FooterLinks>\n)\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const NetworkLinks: React.FC<FlexBoxProps> = props => (\n <FooterLinks title=\"Network\" {...props}>\n <FooterLink href=\"https://xyo.network/network\">Overview</FooterLink>\n <FooterLink href=\"https://xyo.network/network/bound-witness\">Bound Witness</FooterLink>\n <FooterLink href=\"https://xyo.network/network/proof-of-origin\">Proof Of Origin</FooterLink>\n <FooterLink href=\"https://xyo.network/papers\">White Paper</FooterLink>\n </FooterLinks>\n)\n","import {\n Facebook, Instagram, LinkedIn, Reddit, Telegram, Twitter, YouTube,\n} from '@mui/icons-material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\nimport { FaDiscord } from 'react-icons/fa'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const SocialLinks: React.FC<FlexBoxProps> = (props) => {\n return (\n <FooterLinks title=\"XYO Socials\" {...props}>\n <FlexRow flexWrap=\"wrap\" justifyContent=\"flex-start\">\n <FooterLink href=\"https://business.facebook.com/OfficialXYO/\">\n <Facebook />\n </FooterLink>\n <FooterLink href=\"https://twitter.com/OfficialXYO\">\n <Twitter />\n </FooterLink>\n <FooterLink href=\"https://www.instagram.com/officialxyo/\">\n <Instagram />\n </FooterLink>\n <FooterLink href=\"https://t.me/xyonetwork\">\n <Telegram />\n </FooterLink>\n <FooterLink href=\"https://www.reddit.com/r/XYONetwork/\">\n <Reddit />\n </FooterLink>\n <FooterLink href=\"https://www.youtube.com/channel/UCyZDqb9pgntVHJVt1pxXtsw\">\n <YouTube />\n </FooterLink>\n <FooterLink href=\"https://www.linkedin.com/company/officialxyo/\">\n <LinkedIn />\n </FooterLink>\n <FooterLink href=\"https://discord.gg/officialxyo\">\n <FaDiscord />\n </FooterLink>\n </FlexRow>\n </FooterLinks>\n )\n}\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const SupportLinks: React.FC<FlexBoxProps> = props => (\n <FooterLinks title=\"Support\" {...props}>\n <FooterLink href=\"https://support.xy.company/hc/en-us/categories/360001417734\">Help Center</FooterLink>\n <FooterLink href=\"https://support.xy.company/hc/en-us/requests/new\">Contact Support</FooterLink>\n </FooterLinks>\n)\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const TokenLinks: React.FC<FlexBoxProps> = props => (\n <FooterLinks title=\"XYO Tokens\" {...props}>\n <FooterLink href=\"https://xyo.network/token\">About</FooterLink>\n <FooterLink href=\"https://xyo.network/token/exchange\">Exchanges</FooterLink>\n <FooterLink href=\"https://xyo.network/token/price\">Prices</FooterLink>\n <FooterLink href=\"https://xyo.network/token/wallet\">Wallets</FooterLink>\n <FooterLink href=\"https://etherscan.io/address/0x55296f69f40ea6d20e478533c15a6b08b654e758\">Contract</FooterLink>\n </FooterLinks>\n)\n"],"mappings":"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","names":["to","jsx","footerLinks","FlexRow","jsx","jsxs","FlexRow","FlexCol","jsx","jsxs","jsx","jsx","jsxs","jsx","jsxs","jsx","jsxs","FlexRow","jsx","jsxs","FlexRow","jsx","jsxs","jsx","jsxs","jsx","jsxs"]}
1
+ {"version":3,"sources":["../../src/AlwaysLinks.tsx","../../src/Link.tsx","../../src/Footer.tsx","../../src/lib/copyrightLinkTitle.ts","../../src/Links.tsx","../../src/Xyo/AlwaysLinks.tsx","../../src/Xyo/DeveloperLinks.tsx","../../src/Xyo/Footer.tsx","../../src/Xyo/MoreLinks.tsx","../../src/Xyo/NetworkLinks.tsx","../../src/Xyo/SocialLinks.tsx","../../src/Xyo/SupportLinks.tsx","../../src/Xyo/TokenLinks.tsx"],"sourcesContent":["import { MoreHoriz as MoreHorizIcon } from '@mui/icons-material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport type { LinkExProps } from '@xylabs/react-link'\nimport React from 'react'\n\nimport { FooterLink } from './Link.tsx'\n\nexport interface FooterAlwaysLinksProps extends FlexBoxProps {\n footerLinks?: LinkExProps[]\n onMore?: () => void\n}\n\nexport const FooterAlwaysLinks: React.FC<FooterAlwaysLinksProps> = ({\n style, footerLinks, onMore, ...props\n}) => (\n <FlexRow\n style={{ opacity: 0.6, ...style }}\n {...props}\n sx={[{\n flexWrap: 'wrap',\n textTransform: 'uppercase',\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n {footerLinks?.map(footerLink => (\n <FooterLink\n noWrap\n key={footerLink.title}\n {...footerLink}\n sx={[{\n paddingX: 1,\n margin: 0,\n }, ...(Array.isArray(footerLink.sx) ? footerLink.sx : [footerLink.sx])]}\n >\n <small>{footerLink.title}</small>\n </FooterLink>\n ))}\n {onMore\n ? (\n <FlexRow\n style={{ cursor: 'pointer' }}\n onClick={onMore}\n sx={{ paddingX: 0.5 }}\n >\n <MoreHorizIcon\n sx={{\n color: 'primary',\n fontSize: 'small',\n }}\n />\n </FlexRow>\n )\n : null}\n </FlexRow>\n)\n","import type { LinkExProps } from '@xylabs/react-link'\nimport { LinkEx } from '@xylabs/react-link'\nimport { assertEx } from '@xylabs/sdk-js'\nimport React from 'react'\n\n/**\n * @description\n * FooterLink automatically uses a local To if the link is to the current domain\n * If the link is not local, it defaults to target being _blank\n * In the case of 'beta' domains, it navigates correctly\n */\n\nconst convertToBetaIfNeeded = (url: string | URL, currentUrl = new URL(document.location.href)) => {\n const urlObj = typeof url === 'string' ? new URL(url) : url\n const currentUrlObj = typeof currentUrl === 'string' ? new URL(currentUrl) : currentUrl\n const currentHostnameParts = currentUrlObj.hostname.split('.')\n const beta = currentHostnameParts.shift() === 'beta'\n if (beta) {\n const currentHostnameWithoutBeta = currentHostnameParts.join('.')\n if (currentHostnameWithoutBeta === urlObj.hostname) {\n urlObj.hostname = currentUrlObj.hostname\n }\n }\n return urlObj\n}\n\nexport const FooterLink: React.FC<LinkExProps & { margin?: number | string }> = ({\n target, to, toOptions, href, margin = 0.5, variant = 'body2', ...props\n}) => {\n if (href) {\n const url = new URL(assertEx(href, () => 'href not set'))\n assertEx(url.hostname, () => 'Hostname is required in href')\n const convertedUrl = convertToBetaIfNeeded(url)\n if (document.location.hostname === convertedUrl.hostname) {\n const to = url.search.length > 0 ? `${convertedUrl.pathname}${convertedUrl.search}` : url.pathname\n return (\n <LinkEx\n to={to}\n toOptions={toOptions}\n target={target}\n variant={variant}\n {...props}\n sx={[{ margin: margin }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n />\n )\n } else {\n return (\n <LinkEx\n href={href}\n target={target ?? '_blank'}\n variant={variant}\n {...props}\n sx={[{ margin: margin }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n />\n )\n }\n } else {\n return (\n <LinkEx\n to={to}\n toOptions={toOptions}\n target={target}\n variant={variant}\n {...props}\n sx={[{ margin: margin }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n />\n )\n }\n}\n","import type { ContainerProps } from '@mui/material'\nimport { Container } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport { useIsDark } from '@xylabs/react-theme'\nimport React, { useState } from 'react'\n\nimport type { FooterAlwaysLinksProps } from './AlwaysLinks.tsx'\nimport { FooterAlwaysLinks } from './AlwaysLinks.tsx'\n\nexport interface FooterProps extends FlexBoxProps {\n alwaysFooterLinksProps?: FooterAlwaysLinksProps\n container?: ContainerProps['maxWidth'] | 'none'\n dynamicHeight?: boolean\n}\n\nexport const Footer: React.FC<FooterProps> = ({\n alwaysFooterLinksProps, children, container, dynamicHeight = false, ...props\n}) => {\n const [more, setMore] = useState(false)\n const onMore = () => {\n setMore(!more)\n }\n\n const darkMode = useIsDark()\n console.log('darkMode', darkMode)\n\n return (\n <FlexCol\n onMouseLeave={() => {\n setMore(false)\n }}\n {...props}\n sx={[{ alignItems: 'stretch' }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n {more && dynamicHeight\n ? (\n <FlexCol sx={{ alignItems: 'stretch' }}>\n <FlexRow\n paper\n sx={{\n bottom: -1,\n position: 'absolute',\n width: '100%',\n }}\n >\n {container && container !== 'none'\n ? <Container>{children}</Container>\n : children}\n </FlexRow>\n </FlexCol>\n )\n : null}\n {dynamicHeight\n ? null\n : (\n <FlexCol sx={{ alignItems: 'stretch' }}>\n {container && container !== 'none'\n ? <Container>{children}</Container>\n : children}\n </FlexCol>\n )}\n <FlexRow>\n {container && container !== 'none'\n ? (\n <Container>\n <FooterAlwaysLinks {...alwaysFooterLinksProps} onMore={dynamicHeight ? onMore : undefined} />\n </Container>\n )\n : <FooterAlwaysLinks {...alwaysFooterLinksProps} onMore={dynamicHeight ? onMore : undefined} />}\n </FlexRow>\n </FlexCol>\n )\n}\n","export const copyrightLinkTitle = (entity: string) => {\n return `Copyright © ${new Date().getFullYear()} ${entity}`\n}\n","import { Typography } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nexport const FooterLinks: React.FC<FlexBoxProps> = ({\n children, title, ...props\n}) => {\n return (\n <FlexCol\n title={title}\n {...props}\n sx={[{\n margin: 1,\n justifyContent: 'flex-start',\n }, ...(Array.isArray(props.sx) ? props.sx : [props.sx])]}\n >\n <Typography\n variant=\"h6\"\n noWrap\n sx={{ margin: 0.5 }}\n >\n {title}\n </Typography>\n {children}\n </FlexCol>\n )\n}\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterAlwaysLinks } from '../AlwaysLinks.tsx'\nimport { copyrightLinkTitle } from '../lib/index.ts'\n\nexport interface XyoFooterAlwaysLinksProps extends FlexBoxProps {\n onMore?: () => void\n}\n\nexport const XyoFooterAlwaysLinks: React.FC<XyoFooterAlwaysLinksProps> = props => (\n <FooterAlwaysLinks\n footerLinks={[\n {\n href: 'https://xylabs.com/',\n title: copyrightLinkTitle('XY Labs, Inc.'),\n },\n {\n href: 'https://xyo.network/',\n title: 'XYO Foundation',\n },\n {\n href: 'https://xylabs.com/privacy/',\n title: 'Privacy',\n },\n {\n href: 'https://xylabs.com/terms/',\n title: 'Terms',\n },\n {\n href: 'https://xylabs.com/jobs',\n title: 'Careers',\n },\n ]}\n {...props}\n />\n)\n\n/** @deprecated use FooterAlwaysLinksProps */\nexport type CopyrightProps = XyoFooterAlwaysLinksProps\n\n/** @deprecated use FooterAlwaysLinks */\n\nexport { FooterAlwaysLinks as Copyright } from '../AlwaysLinks.tsx'\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const DeveloperLinks: React.FC<FlexBoxProps> = props => (\n <FooterLinks title=\"Developer\" {...props}>\n <FooterLink href=\"https://xyo.network/developer\">Overview</FooterLink>\n <FooterLink href=\"https://xyo.network/developer/get-started\">Get Started</FooterLink>\n <FooterLink href=\"https://xyo.network/developer\">SDKs</FooterLink>\n <FooterLink href=\"https://github.com/xyoraclenetwork\">Open Source Github</FooterLink>\n <FooterLink href=\"https://xyo.network/docs/sdk/js\">Documentation</FooterLink>\n </FooterLinks>\n)\n","import { Grid } from '@mui/material'\nimport React from 'react'\n\nimport type { FooterProps } from '../Footer.tsx'\nimport { Footer } from '../Footer.tsx'\nimport { copyrightLinkTitle } from '../lib/index.ts'\nimport { DeveloperLinks } from './DeveloperLinks.tsx'\nimport { MoreLinks } from './MoreLinks.tsx'\nimport { NetworkLinks } from './NetworkLinks.tsx'\nimport { SocialLinks } from './SocialLinks.tsx'\nimport { SupportLinks } from './SupportLinks.tsx'\nimport { TokenLinks } from './TokenLinks.tsx'\n\nconst footerLinks = [\n {\n href: 'https://xylabs.com/',\n title: copyrightLinkTitle('XY Labs, Inc.'),\n },\n {\n href: 'https://xyo.network/',\n title: 'XYO Foundation',\n },\n {\n href: 'https://xylabs.com/privacy/',\n title: 'Privacy',\n },\n {\n href: 'https://xylabs.com/terms/',\n title: 'Terms',\n },\n {\n href: 'https://xylabs.com/jobs',\n title: 'Careers',\n },\n]\n\nexport const XyoFooter: React.FC<FooterProps> = ({\n alwaysFooterLinksProps,\n ...props\n}) => {\n return (\n <Footer alwaysFooterLinksProps={alwaysFooterLinksProps ?? { footerLinks }} {...props}>\n <Grid container>\n <Grid size={{ xs: 12, md: 2 }}>\n <SocialLinks sx={{ alignItems: 'flex-start' }} />\n </Grid>\n <Grid size={{ xs: 6, md: 2 }}>\n <NetworkLinks sx={{ alignItems: 'flex-start' }} />\n </Grid>\n <Grid size={{ xs: 6, md: 2 }}>\n <TokenLinks sx={{ alignItems: 'flex-start' }} />\n </Grid>\n <Grid size={{ xs: 6, md: 2 }}>\n <DeveloperLinks sx={{ alignItems: 'flex-start' }} />\n </Grid>\n <Grid size={{ xs: 6, md: 2 }}>\n <MoreLinks sx={{ alignItems: 'flex-start' }} />\n </Grid>\n <Grid size={{ xs: 6, md: 2 }}>\n <SupportLinks sx={{ alignItems: 'flex-start' }} />\n </Grid>\n </Grid>\n </Footer>\n )\n}\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const MoreLinks: React.FC<FlexBoxProps> = props => (\n <FooterLinks title=\"More\" {...props}>\n <FooterLink href=\"https://xyo.network/partners\">Partners</FooterLink>\n <FooterLink href=\"https://xyo.network/fhr\">FHR</FooterLink>\n <FooterLink href=\"https://xyo.network/brand\">Brand</FooterLink>\n </FooterLinks>\n)\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const NetworkLinks: React.FC<FlexBoxProps> = props => (\n <FooterLinks title=\"Network\" {...props}>\n <FooterLink href=\"https://xyo.network/network\">Overview</FooterLink>\n <FooterLink href=\"https://xyo.network/network/bound-witness\">Bound Witness</FooterLink>\n <FooterLink href=\"https://xyo.network/network/proof-of-origin\">Proof Of Origin</FooterLink>\n <FooterLink href=\"https://xyo.network/papers\">White Paper</FooterLink>\n </FooterLinks>\n)\n","import {\n Facebook, Instagram, LinkedIn, Reddit, Telegram, Twitter, YouTube,\n} from '@mui/icons-material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\nimport { FaDiscord } from 'react-icons/fa'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const SocialLinks: React.FC<FlexBoxProps> = (props) => {\n return (\n <FooterLinks title=\"XYO Socials\" {...props}>\n <FlexRow\n sx={{\n flexWrap: 'wrap',\n justifyContent: 'flex-start',\n }}\n >\n <FooterLink href=\"https://business.facebook.com/OfficialXYO/\">\n <Facebook />\n </FooterLink>\n <FooterLink href=\"https://twitter.com/OfficialXYO\">\n <Twitter />\n </FooterLink>\n <FooterLink href=\"https://www.instagram.com/officialxyo/\">\n <Instagram />\n </FooterLink>\n <FooterLink href=\"https://t.me/xyonetwork\">\n <Telegram />\n </FooterLink>\n <FooterLink href=\"https://www.reddit.com/r/XYONetwork/\">\n <Reddit />\n </FooterLink>\n <FooterLink href=\"https://www.youtube.com/channel/UCyZDqb9pgntVHJVt1pxXtsw\">\n <YouTube />\n </FooterLink>\n <FooterLink href=\"https://www.linkedin.com/company/officialxyo/\">\n <LinkedIn />\n </FooterLink>\n <FooterLink href=\"https://discord.gg/officialxyo\">\n <FaDiscord />\n </FooterLink>\n </FlexRow>\n </FooterLinks>\n )\n}\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const SupportLinks: React.FC<FlexBoxProps> = props => (\n <FooterLinks title=\"Support\" {...props}>\n <FooterLink href=\"https://support.xy.company/hc/en-us/categories/360001417734\">Help Center</FooterLink>\n <FooterLink href=\"https://support.xy.company/hc/en-us/requests/new\">Contact Support</FooterLink>\n </FooterLinks>\n)\n","import type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link.tsx'\nimport { FooterLinks } from '../Links.tsx'\n\nexport const TokenLinks: React.FC<FlexBoxProps> = props => (\n <FooterLinks title=\"XYO Tokens\" {...props}>\n <FooterLink href=\"https://xyo.network/token\">About</FooterLink>\n <FooterLink href=\"https://xyo.network/token/exchange\">Exchanges</FooterLink>\n <FooterLink href=\"https://xyo.network/token/price\">Prices</FooterLink>\n <FooterLink href=\"https://xyo.network/token/wallet\">Wallets</FooterLink>\n <FooterLink href=\"https://etherscan.io/address/0x55296f69f40ea6d20e478533c15a6b08b654e758\">Contract</FooterLink>\n </FooterLinks>\n)\n"],"mappings":"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","names":["to","jsx","footerLinks","FlexRow","jsx","jsxs","FlexRow","FlexCol","jsx","jsxs","jsx","jsx","jsxs","jsx","jsxs","jsx","jsxs","FlexRow","jsx","jsxs","FlexRow","jsx","jsxs","jsx","jsxs","jsx","jsxs"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/react-footer",
3
- "version": "7.6.3",
3
+ "version": "8.0.0",
4
4
  "description": "Common React library for all XYO projects that use React",
5
5
  "keywords": [
6
6
  "xyo",
@@ -41,22 +41,22 @@
41
41
  "README.md"
42
42
  ],
43
43
  "devDependencies": {
44
- "@mui/icons-material": "^7.3.11",
45
- "@mui/material": "^7.3.11",
44
+ "@mui/icons-material": "~9.0",
45
+ "@mui/material": "~9.0",
46
46
  "@opentelemetry/api": "^1.9.1",
47
47
  "@opentelemetry/sdk-trace-base": "^2.7.1",
48
48
  "@react-spring/web": "~10.0.3",
49
49
  "@storybook/react-vite": "~10.3.6",
50
50
  "@types/react": "^19.2.14",
51
51
  "@xylabs/pixel": "~5.1.2",
52
- "@xylabs/react-flexbox": "~7.2.4",
53
- "@xylabs/react-link": "~7.2.4",
54
- "@xylabs/react-theme": "~7.2.4",
52
+ "@xylabs/react-flexbox": "~8.0",
53
+ "@xylabs/react-link": "~8.0",
54
+ "@xylabs/react-theme": "~8.0",
55
55
  "@xylabs/sdk-js": "^5.1.2",
56
- "@xylabs/toolchain": "~7.13.15",
57
- "@xylabs/tsconfig": "^7.13.15",
58
- "@xylabs/tsconfig-dom": "^7.13.15",
59
- "@xylabs/tsconfig-react": "~7.13.15",
56
+ "@xylabs/toolchain": "~7.13.22",
57
+ "@xylabs/tsconfig": "^7.13.22",
58
+ "@xylabs/tsconfig-dom": "^7.13.22",
59
+ "@xylabs/tsconfig-react": "~7.13.22",
60
60
  "async-mutex": "^0.5.0",
61
61
  "bn.js": "^5.2.3",
62
62
  "bowser": "^2.14.1",
@@ -78,19 +78,19 @@
78
78
  "spark-md5": "~3.0.2",
79
79
  "storybook": "^10.3.6",
80
80
  "typescript": "^5.9.3",
81
- "vite": "^8.0.10",
81
+ "vite": "^8.0.11",
82
82
  "zod": "^4.4.3"
83
83
  },
84
84
  "peerDependencies": {
85
- "@mui/icons-material": "^7.3",
86
- "@mui/material": "^7.3",
85
+ "@mui/icons-material": "~9.0",
86
+ "@mui/material": "~9.0",
87
87
  "@opentelemetry/api": "^1.9",
88
88
  "@opentelemetry/sdk-trace-base": "^2.7",
89
89
  "@react-spring/web": "~10.0",
90
90
  "@xylabs/pixel": "~5.1",
91
- "@xylabs/react-flexbox": "~7.2",
92
- "@xylabs/react-link": "~7.2",
93
- "@xylabs/react-theme": "~7.2",
91
+ "@xylabs/react-flexbox": "~8.0",
92
+ "@xylabs/react-link": "~8.0",
93
+ "@xylabs/react-theme": "~8.0",
94
94
  "@xylabs/sdk-js": "^5.1",
95
95
  "async-mutex": "^0.5",
96
96
  "bn.js": "^5.2",