@xyo-network/react-footer 2.64.8 → 2.64.10

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 (122) hide show
  1. package/dist/docs.json +18337 -8581
  2. package/package.json +6 -6
  3. package/dist/browser/AlwaysLinks.cjs +0 -64
  4. package/dist/browser/AlwaysLinks.cjs.map +0 -1
  5. package/dist/browser/AlwaysLinks.js +0 -43
  6. package/dist/browser/AlwaysLinks.js.map +0 -1
  7. package/dist/browser/Footer.cjs +0 -94
  8. package/dist/browser/Footer.cjs.map +0 -1
  9. package/dist/browser/Footer.js +0 -73
  10. package/dist/browser/Footer.js.map +0 -1
  11. package/dist/browser/Link.cjs +0 -53
  12. package/dist/browser/Link.cjs.map +0 -1
  13. package/dist/browser/Link.js +0 -32
  14. package/dist/browser/Link.js.map +0 -1
  15. package/dist/browser/Links.cjs +0 -35
  16. package/dist/browser/Links.cjs.map +0 -1
  17. package/dist/browser/Links.js +0 -14
  18. package/dist/browser/Links.js.map +0 -1
  19. package/dist/browser/Xyo/AlwaysLinks.cjs +0 -104
  20. package/dist/browser/Xyo/AlwaysLinks.cjs.map +0 -1
  21. package/dist/browser/Xyo/AlwaysLinks.js +0 -81
  22. package/dist/browser/Xyo/AlwaysLinks.js.map +0 -1
  23. package/dist/browser/Xyo/DeveloperLinks.cjs +0 -76
  24. package/dist/browser/Xyo/DeveloperLinks.cjs.map +0 -1
  25. package/dist/browser/Xyo/DeveloperLinks.js +0 -53
  26. package/dist/browser/Xyo/DeveloperLinks.js.map +0 -1
  27. package/dist/browser/Xyo/Footer.cjs +0 -213
  28. package/dist/browser/Xyo/Footer.cjs.map +0 -1
  29. package/dist/browser/Xyo/Footer.js +0 -192
  30. package/dist/browser/Xyo/Footer.js.map +0 -1
  31. package/dist/browser/Xyo/MoreLinks.cjs +0 -74
  32. package/dist/browser/Xyo/MoreLinks.cjs.map +0 -1
  33. package/dist/browser/Xyo/MoreLinks.js +0 -51
  34. package/dist/browser/Xyo/MoreLinks.js.map +0 -1
  35. package/dist/browser/Xyo/NetworkLinks.cjs +0 -75
  36. package/dist/browser/Xyo/NetworkLinks.cjs.map +0 -1
  37. package/dist/browser/Xyo/NetworkLinks.js +0 -52
  38. package/dist/browser/Xyo/NetworkLinks.js.map +0 -1
  39. package/dist/browser/Xyo/SocialLinks.cjs +0 -84
  40. package/dist/browser/Xyo/SocialLinks.cjs.map +0 -1
  41. package/dist/browser/Xyo/SocialLinks.js +0 -63
  42. package/dist/browser/Xyo/SocialLinks.js.map +0 -1
  43. package/dist/browser/Xyo/SupportLinks.cjs +0 -73
  44. package/dist/browser/Xyo/SupportLinks.cjs.map +0 -1
  45. package/dist/browser/Xyo/SupportLinks.js +0 -50
  46. package/dist/browser/Xyo/SupportLinks.js.map +0 -1
  47. package/dist/browser/Xyo/TokenLinks.cjs +0 -76
  48. package/dist/browser/Xyo/TokenLinks.cjs.map +0 -1
  49. package/dist/browser/Xyo/TokenLinks.js +0 -53
  50. package/dist/browser/Xyo/TokenLinks.js.map +0 -1
  51. package/dist/browser/Xyo/index.cjs +0 -253
  52. package/dist/browser/Xyo/index.cjs.map +0 -1
  53. package/dist/browser/Xyo/index.js +0 -230
  54. package/dist/browser/Xyo/index.js.map +0 -1
  55. package/dist/browser/lib/copyrightLinkTitle.cjs +0 -29
  56. package/dist/browser/lib/copyrightLinkTitle.cjs.map +0 -1
  57. package/dist/browser/lib/copyrightLinkTitle.js +0 -8
  58. package/dist/browser/lib/copyrightLinkTitle.js.map +0 -1
  59. package/dist/browser/lib/index.cjs +0 -31
  60. package/dist/browser/lib/index.cjs.map +0 -1
  61. package/dist/browser/lib/index.js +0 -8
  62. package/dist/browser/lib/index.js.map +0 -1
  63. package/dist/node/AlwaysLinks.cjs +0 -68
  64. package/dist/node/AlwaysLinks.cjs.map +0 -1
  65. package/dist/node/AlwaysLinks.js +0 -43
  66. package/dist/node/AlwaysLinks.js.map +0 -1
  67. package/dist/node/Footer.cjs +0 -98
  68. package/dist/node/Footer.cjs.map +0 -1
  69. package/dist/node/Footer.js +0 -73
  70. package/dist/node/Footer.js.map +0 -1
  71. package/dist/node/Link.cjs +0 -57
  72. package/dist/node/Link.cjs.map +0 -1
  73. package/dist/node/Link.js +0 -32
  74. package/dist/node/Link.js.map +0 -1
  75. package/dist/node/Links.cjs +0 -39
  76. package/dist/node/Links.cjs.map +0 -1
  77. package/dist/node/Links.js +0 -14
  78. package/dist/node/Links.js.map +0 -1
  79. package/dist/node/Xyo/AlwaysLinks.cjs +0 -109
  80. package/dist/node/Xyo/AlwaysLinks.cjs.map +0 -1
  81. package/dist/node/Xyo/AlwaysLinks.js +0 -81
  82. package/dist/node/Xyo/AlwaysLinks.js.map +0 -1
  83. package/dist/node/Xyo/DeveloperLinks.cjs +0 -80
  84. package/dist/node/Xyo/DeveloperLinks.cjs.map +0 -1
  85. package/dist/node/Xyo/DeveloperLinks.js +0 -53
  86. package/dist/node/Xyo/DeveloperLinks.js.map +0 -1
  87. package/dist/node/Xyo/Footer.cjs +0 -217
  88. package/dist/node/Xyo/Footer.cjs.map +0 -1
  89. package/dist/node/Xyo/Footer.js +0 -192
  90. package/dist/node/Xyo/Footer.js.map +0 -1
  91. package/dist/node/Xyo/MoreLinks.cjs +0 -78
  92. package/dist/node/Xyo/MoreLinks.cjs.map +0 -1
  93. package/dist/node/Xyo/MoreLinks.js +0 -51
  94. package/dist/node/Xyo/MoreLinks.js.map +0 -1
  95. package/dist/node/Xyo/NetworkLinks.cjs +0 -79
  96. package/dist/node/Xyo/NetworkLinks.cjs.map +0 -1
  97. package/dist/node/Xyo/NetworkLinks.js +0 -52
  98. package/dist/node/Xyo/NetworkLinks.js.map +0 -1
  99. package/dist/node/Xyo/SocialLinks.cjs +0 -88
  100. package/dist/node/Xyo/SocialLinks.cjs.map +0 -1
  101. package/dist/node/Xyo/SocialLinks.js +0 -63
  102. package/dist/node/Xyo/SocialLinks.js.map +0 -1
  103. package/dist/node/Xyo/SupportLinks.cjs +0 -77
  104. package/dist/node/Xyo/SupportLinks.cjs.map +0 -1
  105. package/dist/node/Xyo/SupportLinks.js +0 -50
  106. package/dist/node/Xyo/SupportLinks.js.map +0 -1
  107. package/dist/node/Xyo/TokenLinks.cjs +0 -80
  108. package/dist/node/Xyo/TokenLinks.cjs.map +0 -1
  109. package/dist/node/Xyo/TokenLinks.js +0 -53
  110. package/dist/node/Xyo/TokenLinks.js.map +0 -1
  111. package/dist/node/Xyo/index.cjs +0 -265
  112. package/dist/node/Xyo/index.cjs.map +0 -1
  113. package/dist/node/Xyo/index.js +0 -230
  114. package/dist/node/Xyo/index.js.map +0 -1
  115. package/dist/node/lib/copyrightLinkTitle.cjs +0 -33
  116. package/dist/node/lib/copyrightLinkTitle.cjs.map +0 -1
  117. package/dist/node/lib/copyrightLinkTitle.js +0 -8
  118. package/dist/node/lib/copyrightLinkTitle.js.map +0 -1
  119. package/dist/node/lib/index.cjs +0 -35
  120. package/dist/node/lib/index.cjs.map +0 -1
  121. package/dist/node/lib/index.js +0 -8
  122. package/dist/node/lib/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Xyo/Footer.tsx","../../../src/Footer.tsx","../../../src/AlwaysLinks.tsx","../../../src/Link.tsx","../../../src/lib/copyrightLinkTitle.ts","../../../src/Links.tsx","../../../src/Xyo/DeveloperLinks.tsx","../../../src/Xyo/MoreLinks.tsx","../../../src/Xyo/NetworkLinks.tsx","../../../src/Xyo/SocialLinks.tsx","../../../src/Xyo/SupportLinks.tsx","../../../src/Xyo/TokenLinks.tsx"],"sourcesContent":["import { Grid } from '@mui/material'\n\nimport { Footer, FooterProps } from '../Footer'\nimport { copyrightLinkTitle } from '../lib'\nimport { DeveloperLinks } from './DeveloperLinks'\nimport { MoreLinks } from './MoreLinks'\nimport { NetworkLinks } from './NetworkLinks'\nimport { SocialLinks } from './SocialLinks'\nimport { SupportLinks } from './SupportLinks'\nimport { TokenLinks } from './TokenLinks'\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 = { footerLinks },\n\n ...props\n}) => {\n return (\n <Footer alwaysFooterLinksProps={alwaysFooterLinksProps} {...props}>\n <Grid container>\n <Grid item xs={12} md={2}>\n <SocialLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid item xs={6} md={2}>\n <NetworkLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid item xs={6} md={2}>\n <TokenLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid item xs={6} md={2}>\n <DeveloperLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid item xs={6} md={2}>\n <MoreLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid item xs={6} md={2}>\n <SupportLinks alignItems=\"flex-start\" />\n </Grid>\n </Grid>\n </Footer>\n )\n}\n","import { Container, ContainerProps, useTheme } from '@mui/material'\nimport { FlexBoxProps, FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport { useState } from 'react'\n\nimport { FooterAlwaysLinks, FooterAlwaysLinksProps } from './AlwaysLinks'\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> = ({ alwaysFooterLinksProps, children, container, dynamicHeight = false, ...props }) => {\n const [more, setMore] = useState(false)\n const onMore = () => {\n setMore(!more)\n }\n\n const theme = useTheme()\n\n return (\n <FlexCol\n alignItems=\"stretch\"\n onMouseLeave={() => {\n setMore(false)\n }}\n {...props}\n >\n {more && dynamicHeight ? (\n <FlexCol alignItems=\"stretch\">\n <FlexRow bottom={-1} position=\"absolute\" width=\"100%\" bgcolor={theme.palette.background.default}>\n {container && container !== 'none' ? <Container>{children}</Container> : children}\n </FlexRow>\n </FlexCol>\n ) : null}\n {!dynamicHeight ? (\n <FlexCol alignItems=\"stretch\">{container && container !== 'none' ? <Container>{children}</Container> : children}</FlexCol>\n ) : null}\n <FlexRow>\n {container && container !== 'none' ? (\n <Container>\n <FooterAlwaysLinks {...alwaysFooterLinksProps} onMore={dynamicHeight ? onMore : undefined} />\n </Container>\n ) : (\n <FooterAlwaysLinks {...alwaysFooterLinksProps} onMore={dynamicHeight ? onMore : undefined} />\n )}\n </FlexRow>\n </FlexCol>\n )\n}\n","import { MoreHoriz as MoreHorizIcon } from '@mui/icons-material'\nimport { FlexBoxProps, FlexRow } from '@xylabs/react-flexbox'\nimport { LinkExProps } from '@xylabs/react-link'\n\nimport { FooterLink } from './Link'\n\nexport interface FooterAlwaysLinksProps extends FlexBoxProps {\n footerLinks?: LinkExProps[]\n onMore?: () => void\n}\n\nexport const FooterAlwaysLinks: React.FC<FooterAlwaysLinksProps> = ({ style, footerLinks, onMore, ...props }) => (\n <FlexRow flexWrap=\"wrap\" textTransform=\"uppercase\" style={{ opacity: 0.6, ...style }} {...props}>\n {footerLinks?.map((footerLink, index) => (\n <FooterLink noWrap key={index} paddingX={1} margin={0} {...footerLink}>\n <small>{footerLink.title}</small>\n </FooterLink>\n ))}\n {onMore ? (\n <FlexRow style={{ cursor: 'pointer' }} paddingX={0.5} onClick={onMore}>\n <MoreHorizIcon color=\"primary\" fontSize=\"small\" />\n </FlexRow>\n ) : null}\n </FlexRow>\n)\n","import { assertEx } from '@xylabs/assert'\nimport { LinkEx, LinkExProps } from '@xylabs/react-link'\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> = ({ target, href, margin = 0.5, variant = 'body2', ...props }) => {\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} target={target} variant={variant} {...props} />\n } else {\n return <LinkEx margin={margin} href={href} target={target ?? '_blank'} variant={variant} {...props} />\n }\n}\n","export const copyrightLinkTitle = (entity: string) => {\n return `Copyright © ${new Date().getFullYear()} ${entity}`\n}\n","import { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\n\nexport const FooterLinks: React.FC<FlexBoxProps> = ({ children, title, ...props }) => {\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 { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { Facebook, Instagram, LinkedIn, Reddit, Telegram, Twitter, YouTube } from '@mui/icons-material'\nimport { FlexBoxProps, FlexRow } from '@xylabs/react-flexbox'\n// eslint-disable-next-line import/no-internal-modules\nimport { FaDiscord } from 'react-icons/fa/index.js'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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":["import_material","import_react_flexbox","import_jsx_runtime","footerLinks","MoreHorizIcon","import_jsx_runtime","import_material","import_react_flexbox","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","import_icons_material","import_react_flexbox","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime"]}
@@ -1,192 +0,0 @@
1
- // src/Xyo/Footer.tsx
2
- import { Grid } from "@mui/material";
3
-
4
- // src/Footer.tsx
5
- import { Container, useTheme } from "@mui/material";
6
- import { FlexCol, FlexRow as FlexRow2 } from "@xylabs/react-flexbox";
7
- import { useState } from "react";
8
-
9
- // src/AlwaysLinks.tsx
10
- import { MoreHoriz as MoreHorizIcon } from "@mui/icons-material";
11
- import { FlexRow } from "@xylabs/react-flexbox";
12
-
13
- // src/Link.tsx
14
- import { assertEx } from "@xylabs/assert";
15
- import { LinkEx } from "@xylabs/react-link";
16
- import { jsx } from "react/jsx-runtime";
17
- var convertToBetaIfNeeded = (url, currentUrl = new URL(document.location.href)) => {
18
- const urlObj = typeof url === "string" ? new URL(url) : url;
19
- const currentUrlObj = typeof currentUrl === "string" ? new URL(currentUrl) : currentUrl;
20
- const currentHostnameParts = currentUrlObj.hostname.split(".");
21
- const beta = currentHostnameParts.shift() === "beta";
22
- if (beta) {
23
- const currentHostnameWithoutBeta = currentHostnameParts.join(".");
24
- if (currentHostnameWithoutBeta === urlObj.hostname) {
25
- urlObj.hostname = currentUrlObj.hostname;
26
- }
27
- }
28
- return urlObj;
29
- };
30
- var FooterLink = ({ target, href, margin = 0.5, variant = "body2", ...props }) => {
31
- const url = new URL(assertEx(href, "href not set"));
32
- assertEx(url.hostname, "Hostname is required in href");
33
- const convertedUrl = convertToBetaIfNeeded(url);
34
- if (document.location.hostname === convertedUrl.hostname) {
35
- const to = url.search.length > 0 ? `${convertedUrl.pathname}${convertedUrl.search}` : url.pathname;
36
- return /* @__PURE__ */ jsx(LinkEx, { margin, to, target, variant, ...props });
37
- } else {
38
- return /* @__PURE__ */ jsx(LinkEx, { margin, href, target: target ?? "_blank", variant, ...props });
39
- }
40
- };
41
-
42
- // src/AlwaysLinks.tsx
43
- import { jsx as jsx2, jsxs } from "react/jsx-runtime";
44
- var FooterAlwaysLinks = ({ style, footerLinks: footerLinks2, onMore, ...props }) => /* @__PURE__ */ jsxs(FlexRow, { flexWrap: "wrap", textTransform: "uppercase", style: { opacity: 0.6, ...style }, ...props, children: [
45
- footerLinks2?.map((footerLink, index) => /* @__PURE__ */ jsx2(FooterLink, { noWrap: true, paddingX: 1, margin: 0, ...footerLink, children: /* @__PURE__ */ jsx2("small", { children: footerLink.title }) }, index)),
46
- onMore ? /* @__PURE__ */ jsx2(FlexRow, { style: { cursor: "pointer" }, paddingX: 0.5, onClick: onMore, children: /* @__PURE__ */ jsx2(MoreHorizIcon, { color: "primary", fontSize: "small" }) }) : null
47
- ] });
48
-
49
- // src/Footer.tsx
50
- import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
51
- var Footer = ({ alwaysFooterLinksProps, children, container, dynamicHeight = false, ...props }) => {
52
- const [more, setMore] = useState(false);
53
- const onMore = () => {
54
- setMore(!more);
55
- };
56
- const theme = useTheme();
57
- return /* @__PURE__ */ jsxs2(
58
- FlexCol,
59
- {
60
- alignItems: "stretch",
61
- onMouseLeave: () => {
62
- setMore(false);
63
- },
64
- ...props,
65
- children: [
66
- more && dynamicHeight ? /* @__PURE__ */ jsx3(FlexCol, { alignItems: "stretch", children: /* @__PURE__ */ jsx3(FlexRow2, { bottom: -1, position: "absolute", width: "100%", bgcolor: theme.palette.background.default, children: container && container !== "none" ? /* @__PURE__ */ jsx3(Container, { children }) : children }) }) : null,
67
- !dynamicHeight ? /* @__PURE__ */ jsx3(FlexCol, { alignItems: "stretch", children: container && container !== "none" ? /* @__PURE__ */ jsx3(Container, { children }) : children }) : null,
68
- /* @__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 }) })
69
- ]
70
- }
71
- );
72
- };
73
-
74
- // src/lib/copyrightLinkTitle.ts
75
- var copyrightLinkTitle = (entity) => {
76
- return `Copyright \xA9 ${(/* @__PURE__ */ new Date()).getFullYear()} ${entity}`;
77
- };
78
-
79
- // src/Links.tsx
80
- import { Typography } from "@mui/material";
81
- import { FlexCol as FlexCol2 } from "@xylabs/react-flexbox";
82
- import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
83
- var FooterLinks = ({ children, title, ...props }) => {
84
- return /* @__PURE__ */ jsxs3(FlexCol2, { margin: 1, justifyContent: "flex-start", title, ...props, children: [
85
- /* @__PURE__ */ jsx4(Typography, { margin: 0.5, variant: "h6", noWrap: true, children: title }),
86
- children
87
- ] });
88
- };
89
-
90
- // src/Xyo/DeveloperLinks.tsx
91
- import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
92
- var DeveloperLinks = (props) => /* @__PURE__ */ jsxs4(FooterLinks, { title: "Developer", ...props, children: [
93
- /* @__PURE__ */ jsx5(FooterLink, { href: "https://xyo.network/developer", children: "Overview" }),
94
- /* @__PURE__ */ jsx5(FooterLink, { href: "https://xyo.network/developer/get-started", children: "Get Started" }),
95
- /* @__PURE__ */ jsx5(FooterLink, { href: "https://xyo.network/developer", children: "SDKs" }),
96
- /* @__PURE__ */ jsx5(FooterLink, { href: "https://github.com/xyoraclenetwork", children: "Open Source Github" }),
97
- /* @__PURE__ */ jsx5(FooterLink, { href: "https://xyo.network/docs/sdk/js", children: "Documentation" })
98
- ] });
99
-
100
- // src/Xyo/MoreLinks.tsx
101
- import { jsx as jsx6, jsxs as jsxs5 } from "react/jsx-runtime";
102
- var MoreLinks = (props) => /* @__PURE__ */ jsxs5(FooterLinks, { title: "More", ...props, children: [
103
- /* @__PURE__ */ jsx6(FooterLink, { href: "https://xyo.network/partners", children: "Partners" }),
104
- /* @__PURE__ */ jsx6(FooterLink, { href: "https://xyo.network/fhr", children: "FHR" }),
105
- /* @__PURE__ */ jsx6(FooterLink, { href: "https://xyo.network/brand", children: "Brand" })
106
- ] });
107
-
108
- // src/Xyo/NetworkLinks.tsx
109
- import { jsx as jsx7, jsxs as jsxs6 } from "react/jsx-runtime";
110
- var NetworkLinks = (props) => /* @__PURE__ */ jsxs6(FooterLinks, { title: "Network", ...props, children: [
111
- /* @__PURE__ */ jsx7(FooterLink, { href: "https://xyo.network/network", children: "Overview" }),
112
- /* @__PURE__ */ jsx7(FooterLink, { href: "https://xyo.network/network/bound-witness", children: "Bound Witness" }),
113
- /* @__PURE__ */ jsx7(FooterLink, { href: "https://xyo.network/network/proof-of-origin", children: "Proof Of Origin" }),
114
- /* @__PURE__ */ jsx7(FooterLink, { href: "https://xyo.network/papers", children: "White Paper" })
115
- ] });
116
-
117
- // src/Xyo/SocialLinks.tsx
118
- import { Facebook, Instagram, LinkedIn, Reddit, Telegram, Twitter, YouTube } from "@mui/icons-material";
119
- import { FlexRow as FlexRow3 } from "@xylabs/react-flexbox";
120
- import { FaDiscord } from "react-icons/fa/index.js";
121
- import { jsx as jsx8, jsxs as jsxs7 } from "react/jsx-runtime";
122
- var SocialLinks = (props) => {
123
- return /* @__PURE__ */ jsx8(FooterLinks, { title: "XYO Socials", ...props, children: /* @__PURE__ */ jsxs7(FlexRow3, { flexWrap: "wrap", justifyContent: "flex-start", children: [
124
- /* @__PURE__ */ jsx8(FooterLink, { href: "https://business.facebook.com/OfficialXYO/", children: /* @__PURE__ */ jsx8(Facebook, {}) }),
125
- /* @__PURE__ */ jsx8(FooterLink, { href: "https://twitter.com/OfficialXYO", children: /* @__PURE__ */ jsx8(Twitter, {}) }),
126
- /* @__PURE__ */ jsx8(FooterLink, { href: "https://www.instagram.com/officialxyo/", children: /* @__PURE__ */ jsx8(Instagram, {}) }),
127
- /* @__PURE__ */ jsx8(FooterLink, { href: "https://t.me/xyonetwork", children: /* @__PURE__ */ jsx8(Telegram, {}) }),
128
- /* @__PURE__ */ jsx8(FooterLink, { href: "https://www.reddit.com/r/XYONetwork/", children: /* @__PURE__ */ jsx8(Reddit, {}) }),
129
- /* @__PURE__ */ jsx8(FooterLink, { href: "https://www.youtube.com/channel/UCyZDqb9pgntVHJVt1pxXtsw", children: /* @__PURE__ */ jsx8(YouTube, {}) }),
130
- /* @__PURE__ */ jsx8(FooterLink, { href: "https://www.linkedin.com/company/officialxyo/", children: /* @__PURE__ */ jsx8(LinkedIn, {}) }),
131
- /* @__PURE__ */ jsx8(FooterLink, { href: "https://discord.gg/officialxyo", children: /* @__PURE__ */ jsx8(FaDiscord, {}) })
132
- ] }) });
133
- };
134
-
135
- // src/Xyo/SupportLinks.tsx
136
- import { jsx as jsx9, jsxs as jsxs8 } from "react/jsx-runtime";
137
- var SupportLinks = (props) => /* @__PURE__ */ jsxs8(FooterLinks, { title: "Support", ...props, children: [
138
- /* @__PURE__ */ jsx9(FooterLink, { href: "https://support.xy.company/hc/en-us/categories/360001417734", children: "Help Center" }),
139
- /* @__PURE__ */ jsx9(FooterLink, { href: "https://support.xy.company/hc/en-us/requests/new", children: "Contact Support" })
140
- ] });
141
-
142
- // src/Xyo/TokenLinks.tsx
143
- import { jsx as jsx10, jsxs as jsxs9 } from "react/jsx-runtime";
144
- var TokenLinks = (props) => /* @__PURE__ */ jsxs9(FooterLinks, { title: "XYO Tokens", ...props, children: [
145
- /* @__PURE__ */ jsx10(FooterLink, { href: "https://xyo.network/token", children: "About" }),
146
- /* @__PURE__ */ jsx10(FooterLink, { href: "https://xyo.network/token/exchange", children: "Exchanges" }),
147
- /* @__PURE__ */ jsx10(FooterLink, { href: "https://xyo.network/token/price", children: "Prices" }),
148
- /* @__PURE__ */ jsx10(FooterLink, { href: "https://xyo.network/token/wallet", children: "Wallets" }),
149
- /* @__PURE__ */ jsx10(FooterLink, { href: "https://etherscan.io/address/0x55296f69f40ea6d20e478533c15a6b08b654e758", children: "Contract" })
150
- ] });
151
-
152
- // src/Xyo/Footer.tsx
153
- import { jsx as jsx11, jsxs as jsxs10 } from "react/jsx-runtime";
154
- var footerLinks = [
155
- {
156
- href: "https://xylabs.com/",
157
- title: copyrightLinkTitle("XY Labs, Inc.")
158
- },
159
- {
160
- href: "https://xyo.network/",
161
- title: "XYO Foundation"
162
- },
163
- {
164
- href: "https://xylabs.com/privacy/",
165
- title: "Privacy"
166
- },
167
- {
168
- href: "https://xylabs.com/terms/",
169
- title: "Terms"
170
- },
171
- {
172
- href: "https://xylabs.com/jobs",
173
- title: "Careers"
174
- }
175
- ];
176
- var XyoFooter = ({
177
- alwaysFooterLinksProps = { footerLinks },
178
- ...props
179
- }) => {
180
- return /* @__PURE__ */ jsx11(Footer, { alwaysFooterLinksProps, ...props, children: /* @__PURE__ */ jsxs10(Grid, { container: true, children: [
181
- /* @__PURE__ */ jsx11(Grid, { item: true, xs: 12, md: 2, children: /* @__PURE__ */ jsx11(SocialLinks, { alignItems: "flex-start" }) }),
182
- /* @__PURE__ */ jsx11(Grid, { item: true, xs: 6, md: 2, children: /* @__PURE__ */ jsx11(NetworkLinks, { alignItems: "flex-start" }) }),
183
- /* @__PURE__ */ jsx11(Grid, { item: true, xs: 6, md: 2, children: /* @__PURE__ */ jsx11(TokenLinks, { alignItems: "flex-start" }) }),
184
- /* @__PURE__ */ jsx11(Grid, { item: true, xs: 6, md: 2, children: /* @__PURE__ */ jsx11(DeveloperLinks, { alignItems: "flex-start" }) }),
185
- /* @__PURE__ */ jsx11(Grid, { item: true, xs: 6, md: 2, children: /* @__PURE__ */ jsx11(MoreLinks, { alignItems: "flex-start" }) }),
186
- /* @__PURE__ */ jsx11(Grid, { item: true, xs: 6, md: 2, children: /* @__PURE__ */ jsx11(SupportLinks, { alignItems: "flex-start" }) })
187
- ] }) });
188
- };
189
- export {
190
- XyoFooter
191
- };
192
- //# sourceMappingURL=Footer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Xyo/Footer.tsx","../../../src/Footer.tsx","../../../src/AlwaysLinks.tsx","../../../src/Link.tsx","../../../src/lib/copyrightLinkTitle.ts","../../../src/Links.tsx","../../../src/Xyo/DeveloperLinks.tsx","../../../src/Xyo/MoreLinks.tsx","../../../src/Xyo/NetworkLinks.tsx","../../../src/Xyo/SocialLinks.tsx","../../../src/Xyo/SupportLinks.tsx","../../../src/Xyo/TokenLinks.tsx"],"sourcesContent":["import { Grid } from '@mui/material'\n\nimport { Footer, FooterProps } from '../Footer'\nimport { copyrightLinkTitle } from '../lib'\nimport { DeveloperLinks } from './DeveloperLinks'\nimport { MoreLinks } from './MoreLinks'\nimport { NetworkLinks } from './NetworkLinks'\nimport { SocialLinks } from './SocialLinks'\nimport { SupportLinks } from './SupportLinks'\nimport { TokenLinks } from './TokenLinks'\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 = { footerLinks },\n\n ...props\n}) => {\n return (\n <Footer alwaysFooterLinksProps={alwaysFooterLinksProps} {...props}>\n <Grid container>\n <Grid item xs={12} md={2}>\n <SocialLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid item xs={6} md={2}>\n <NetworkLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid item xs={6} md={2}>\n <TokenLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid item xs={6} md={2}>\n <DeveloperLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid item xs={6} md={2}>\n <MoreLinks alignItems=\"flex-start\" />\n </Grid>\n <Grid item xs={6} md={2}>\n <SupportLinks alignItems=\"flex-start\" />\n </Grid>\n </Grid>\n </Footer>\n )\n}\n","import { Container, ContainerProps, useTheme } from '@mui/material'\nimport { FlexBoxProps, FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport { useState } from 'react'\n\nimport { FooterAlwaysLinks, FooterAlwaysLinksProps } from './AlwaysLinks'\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> = ({ alwaysFooterLinksProps, children, container, dynamicHeight = false, ...props }) => {\n const [more, setMore] = useState(false)\n const onMore = () => {\n setMore(!more)\n }\n\n const theme = useTheme()\n\n return (\n <FlexCol\n alignItems=\"stretch\"\n onMouseLeave={() => {\n setMore(false)\n }}\n {...props}\n >\n {more && dynamicHeight ? (\n <FlexCol alignItems=\"stretch\">\n <FlexRow bottom={-1} position=\"absolute\" width=\"100%\" bgcolor={theme.palette.background.default}>\n {container && container !== 'none' ? <Container>{children}</Container> : children}\n </FlexRow>\n </FlexCol>\n ) : null}\n {!dynamicHeight ? (\n <FlexCol alignItems=\"stretch\">{container && container !== 'none' ? <Container>{children}</Container> : children}</FlexCol>\n ) : null}\n <FlexRow>\n {container && container !== 'none' ? (\n <Container>\n <FooterAlwaysLinks {...alwaysFooterLinksProps} onMore={dynamicHeight ? onMore : undefined} />\n </Container>\n ) : (\n <FooterAlwaysLinks {...alwaysFooterLinksProps} onMore={dynamicHeight ? onMore : undefined} />\n )}\n </FlexRow>\n </FlexCol>\n )\n}\n","import { MoreHoriz as MoreHorizIcon } from '@mui/icons-material'\nimport { FlexBoxProps, FlexRow } from '@xylabs/react-flexbox'\nimport { LinkExProps } from '@xylabs/react-link'\n\nimport { FooterLink } from './Link'\n\nexport interface FooterAlwaysLinksProps extends FlexBoxProps {\n footerLinks?: LinkExProps[]\n onMore?: () => void\n}\n\nexport const FooterAlwaysLinks: React.FC<FooterAlwaysLinksProps> = ({ style, footerLinks, onMore, ...props }) => (\n <FlexRow flexWrap=\"wrap\" textTransform=\"uppercase\" style={{ opacity: 0.6, ...style }} {...props}>\n {footerLinks?.map((footerLink, index) => (\n <FooterLink noWrap key={index} paddingX={1} margin={0} {...footerLink}>\n <small>{footerLink.title}</small>\n </FooterLink>\n ))}\n {onMore ? (\n <FlexRow style={{ cursor: 'pointer' }} paddingX={0.5} onClick={onMore}>\n <MoreHorizIcon color=\"primary\" fontSize=\"small\" />\n </FlexRow>\n ) : null}\n </FlexRow>\n)\n","import { assertEx } from '@xylabs/assert'\nimport { LinkEx, LinkExProps } from '@xylabs/react-link'\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> = ({ target, href, margin = 0.5, variant = 'body2', ...props }) => {\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} target={target} variant={variant} {...props} />\n } else {\n return <LinkEx margin={margin} href={href} target={target ?? '_blank'} variant={variant} {...props} />\n }\n}\n","export const copyrightLinkTitle = (entity: string) => {\n return `Copyright © ${new Date().getFullYear()} ${entity}`\n}\n","import { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\n\nexport const FooterLinks: React.FC<FlexBoxProps> = ({ children, title, ...props }) => {\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 { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { Facebook, Instagram, LinkedIn, Reddit, Telegram, Twitter, YouTube } from '@mui/icons-material'\nimport { FlexBoxProps, FlexRow } from '@xylabs/react-flexbox'\n// eslint-disable-next-line import/no-internal-modules\nimport { FaDiscord } from 'react-icons/fa/index.js'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { FlexBoxProps } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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":["FlexRow","jsx","footerLinks","jsx","jsxs","FlexRow","FlexCol","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","FlexRow","jsx","jsxs","FlexRow","jsx","jsxs","jsx","jsxs","jsx","jsxs"]}
@@ -1,74 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/Xyo/MoreLinks.tsx
21
- var MoreLinks_exports = {};
22
- __export(MoreLinks_exports, {
23
- MoreLinks: () => MoreLinks
24
- });
25
- module.exports = __toCommonJS(MoreLinks_exports);
26
-
27
- // src/Link.tsx
28
- var import_assert = require("@xylabs/assert");
29
- var import_react_link = require("@xylabs/react-link");
30
- var import_jsx_runtime = require("react/jsx-runtime");
31
- var convertToBetaIfNeeded = (url, currentUrl = new URL(document.location.href)) => {
32
- const urlObj = typeof url === "string" ? new URL(url) : url;
33
- const currentUrlObj = typeof currentUrl === "string" ? new URL(currentUrl) : currentUrl;
34
- const currentHostnameParts = currentUrlObj.hostname.split(".");
35
- const beta = currentHostnameParts.shift() === "beta";
36
- if (beta) {
37
- const currentHostnameWithoutBeta = currentHostnameParts.join(".");
38
- if (currentHostnameWithoutBeta === urlObj.hostname) {
39
- urlObj.hostname = currentUrlObj.hostname;
40
- }
41
- }
42
- return urlObj;
43
- };
44
- var FooterLink = ({ target, href, margin = 0.5, variant = "body2", ...props }) => {
45
- const url = new URL((0, import_assert.assertEx)(href, "href not set"));
46
- (0, import_assert.assertEx)(url.hostname, "Hostname is required in href");
47
- const convertedUrl = convertToBetaIfNeeded(url);
48
- if (document.location.hostname === convertedUrl.hostname) {
49
- const to = url.search.length > 0 ? `${convertedUrl.pathname}${convertedUrl.search}` : url.pathname;
50
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_link.LinkEx, { margin, to, target, variant, ...props });
51
- } else {
52
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_link.LinkEx, { margin, href, target: target ?? "_blank", variant, ...props });
53
- }
54
- };
55
-
56
- // src/Links.tsx
57
- var import_material = require("@mui/material");
58
- var import_react_flexbox = require("@xylabs/react-flexbox");
59
- var import_jsx_runtime2 = require("react/jsx-runtime");
60
- var FooterLinks = ({ children, title, ...props }) => {
61
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_react_flexbox.FlexCol, { margin: 1, justifyContent: "flex-start", title, ...props, children: [
62
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material.Typography, { margin: 0.5, variant: "h6", noWrap: true, children: title }),
63
- children
64
- ] });
65
- };
66
-
67
- // src/Xyo/MoreLinks.tsx
68
- var import_jsx_runtime3 = require("react/jsx-runtime");
69
- var MoreLinks = (props) => /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(FooterLinks, { title: "More", ...props, children: [
70
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(FooterLink, { href: "https://xyo.network/partners", children: "Partners" }),
71
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(FooterLink, { href: "https://xyo.network/fhr", children: "FHR" }),
72
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(FooterLink, { href: "https://xyo.network/brand", children: "Brand" })
73
- ] });
74
- //# sourceMappingURL=MoreLinks.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Xyo/MoreLinks.tsx","../../../src/Link.tsx","../../../src/Links.tsx"],"sourcesContent":["import { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { assertEx } from '@xylabs/assert'\nimport { LinkEx, LinkExProps } from '@xylabs/react-link'\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> = ({ target, href, margin = 0.5, variant = 'body2', ...props }) => {\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} target={target} variant={variant} {...props} />\n } else {\n return <LinkEx margin={margin} href={href} target={target ?? '_blank'} variant={variant} {...props} />\n }\n}\n","import { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\n\nexport const FooterLinks: React.FC<FlexBoxProps> = ({ children, title, ...props }) => {\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"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,oBAAyB;AACzB,wBAAoC;AA6BzB;AApBX,IAAM,wBAAwB,CAAC,KAAmB,aAAa,IAAI,IAAI,SAAS,SAAS,IAAI,MAAM;AACjG,QAAM,SAAS,OAAO,QAAQ,WAAW,IAAI,IAAI,GAAG,IAAI;AACxD,QAAM,gBAAgB,OAAO,eAAe,WAAW,IAAI,IAAI,UAAU,IAAI;AAC7E,QAAM,uBAAuB,cAAc,SAAS,MAAM,GAAG;AAC7D,QAAM,OAAO,qBAAqB,MAAM,MAAM;AAC9C,MAAI,MAAM;AACR,UAAM,6BAA6B,qBAAqB,KAAK,GAAG;AAChE,QAAI,+BAA+B,OAAO,UAAU;AAClD,aAAO,WAAW,cAAc;AAAA,IAClC;AAAA,EACF;AACA,SAAO;AACT;AAEO,IAAM,aAAoC,CAAC,EAAE,QAAQ,MAAM,SAAS,KAAK,UAAU,SAAS,GAAG,MAAM,MAAM;AAChH,QAAM,MAAM,IAAI,QAAI,wBAAS,MAAM,cAAc,CAAC;AAClD,8BAAS,IAAI,UAAU,8BAA8B;AACrD,QAAM,eAAe,sBAAsB,GAAG;AAC9C,MAAI,SAAS,SAAS,aAAa,aAAa,UAAU;AACxD,UAAM,KAAK,IAAI,OAAO,SAAS,IAAI,GAAG,aAAa,QAAQ,GAAG,aAAa,MAAM,KAAK,IAAI;AAC1F,WAAO,4CAAC,4BAAO,QAAgB,IAAQ,QAAgB,SAAmB,GAAG,OAAO;AAAA,EACtF,OAAO;AACL,WAAO,4CAAC,4BAAO,QAAgB,MAAY,QAAQ,UAAU,UAAU,SAAmB,GAAG,OAAO;AAAA,EACtG;AACF;;;AClCA,sBAA2B;AAC3B,2BAAsC;AAIlC,IAAAA,sBAAA;AAFG,IAAM,cAAsC,CAAC,EAAE,UAAU,OAAO,GAAG,MAAM,MAAM;AACpF,SACE,8CAAC,gCAAQ,QAAQ,GAAG,gBAAe,cAAa,OAAe,GAAG,OAChE;AAAA,iDAAC,8BAAW,QAAQ,KAAK,SAAQ,MAAK,QAAM,MACzC,iBACH;AAAA,IACC;AAAA,KACH;AAEJ;;;AFNE,IAAAC,sBAAA;AADK,IAAM,YAAoC,CAAC,UAChD,8CAAC,eAAY,OAAM,QAAQ,GAAG,OAC5B;AAAA,+CAAC,cAAW,MAAK,gCAA+B,sBAAQ;AAAA,EACxD,6CAAC,cAAW,MAAK,2BAA0B,iBAAG;AAAA,EAC9C,6CAAC,cAAW,MAAK,6BAA4B,mBAAK;AAAA,GACpD;","names":["import_jsx_runtime","import_jsx_runtime"]}
@@ -1,51 +0,0 @@
1
- // src/Link.tsx
2
- import { assertEx } from "@xylabs/assert";
3
- import { LinkEx } from "@xylabs/react-link";
4
- import { jsx } from "react/jsx-runtime";
5
- var convertToBetaIfNeeded = (url, currentUrl = new URL(document.location.href)) => {
6
- const urlObj = typeof url === "string" ? new URL(url) : url;
7
- const currentUrlObj = typeof currentUrl === "string" ? new URL(currentUrl) : currentUrl;
8
- const currentHostnameParts = currentUrlObj.hostname.split(".");
9
- const beta = currentHostnameParts.shift() === "beta";
10
- if (beta) {
11
- const currentHostnameWithoutBeta = currentHostnameParts.join(".");
12
- if (currentHostnameWithoutBeta === urlObj.hostname) {
13
- urlObj.hostname = currentUrlObj.hostname;
14
- }
15
- }
16
- return urlObj;
17
- };
18
- var FooterLink = ({ target, href, margin = 0.5, variant = "body2", ...props }) => {
19
- const url = new URL(assertEx(href, "href not set"));
20
- assertEx(url.hostname, "Hostname is required in href");
21
- const convertedUrl = convertToBetaIfNeeded(url);
22
- if (document.location.hostname === convertedUrl.hostname) {
23
- const to = url.search.length > 0 ? `${convertedUrl.pathname}${convertedUrl.search}` : url.pathname;
24
- return /* @__PURE__ */ jsx(LinkEx, { margin, to, target, variant, ...props });
25
- } else {
26
- return /* @__PURE__ */ jsx(LinkEx, { margin, href, target: target ?? "_blank", variant, ...props });
27
- }
28
- };
29
-
30
- // src/Links.tsx
31
- import { Typography } from "@mui/material";
32
- import { FlexCol } from "@xylabs/react-flexbox";
33
- import { jsx as jsx2, jsxs } from "react/jsx-runtime";
34
- var FooterLinks = ({ children, title, ...props }) => {
35
- return /* @__PURE__ */ jsxs(FlexCol, { margin: 1, justifyContent: "flex-start", title, ...props, children: [
36
- /* @__PURE__ */ jsx2(Typography, { margin: 0.5, variant: "h6", noWrap: true, children: title }),
37
- children
38
- ] });
39
- };
40
-
41
- // src/Xyo/MoreLinks.tsx
42
- import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
43
- var MoreLinks = (props) => /* @__PURE__ */ jsxs2(FooterLinks, { title: "More", ...props, children: [
44
- /* @__PURE__ */ jsx3(FooterLink, { href: "https://xyo.network/partners", children: "Partners" }),
45
- /* @__PURE__ */ jsx3(FooterLink, { href: "https://xyo.network/fhr", children: "FHR" }),
46
- /* @__PURE__ */ jsx3(FooterLink, { href: "https://xyo.network/brand", children: "Brand" })
47
- ] });
48
- export {
49
- MoreLinks
50
- };
51
- //# sourceMappingURL=MoreLinks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Link.tsx","../../../src/Links.tsx","../../../src/Xyo/MoreLinks.tsx"],"sourcesContent":["import { assertEx } from '@xylabs/assert'\nimport { LinkEx, LinkExProps } from '@xylabs/react-link'\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> = ({ target, href, margin = 0.5, variant = 'body2', ...props }) => {\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} target={target} variant={variant} {...props} />\n } else {\n return <LinkEx margin={margin} href={href} target={target ?? '_blank'} variant={variant} {...props} />\n }\n}\n","import { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\n\nexport const FooterLinks: React.FC<FlexBoxProps> = ({ children, title, ...props }) => {\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 { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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"],"mappings":";AAAA,SAAS,gBAAgB;AACzB,SAAS,cAA2B;AA6BzB;AApBX,IAAM,wBAAwB,CAAC,KAAmB,aAAa,IAAI,IAAI,SAAS,SAAS,IAAI,MAAM;AACjG,QAAM,SAAS,OAAO,QAAQ,WAAW,IAAI,IAAI,GAAG,IAAI;AACxD,QAAM,gBAAgB,OAAO,eAAe,WAAW,IAAI,IAAI,UAAU,IAAI;AAC7E,QAAM,uBAAuB,cAAc,SAAS,MAAM,GAAG;AAC7D,QAAM,OAAO,qBAAqB,MAAM,MAAM;AAC9C,MAAI,MAAM;AACR,UAAM,6BAA6B,qBAAqB,KAAK,GAAG;AAChE,QAAI,+BAA+B,OAAO,UAAU;AAClD,aAAO,WAAW,cAAc;AAAA,IAClC;AAAA,EACF;AACA,SAAO;AACT;AAEO,IAAM,aAAoC,CAAC,EAAE,QAAQ,MAAM,SAAS,KAAK,UAAU,SAAS,GAAG,MAAM,MAAM;AAChH,QAAM,MAAM,IAAI,IAAI,SAAS,MAAM,cAAc,CAAC;AAClD,WAAS,IAAI,UAAU,8BAA8B;AACrD,QAAM,eAAe,sBAAsB,GAAG;AAC9C,MAAI,SAAS,SAAS,aAAa,aAAa,UAAU;AACxD,UAAM,KAAK,IAAI,OAAO,SAAS,IAAI,GAAG,aAAa,QAAQ,GAAG,aAAa,MAAM,KAAK,IAAI;AAC1F,WAAO,oBAAC,UAAO,QAAgB,IAAQ,QAAgB,SAAmB,GAAG,OAAO;AAAA,EACtF,OAAO;AACL,WAAO,oBAAC,UAAO,QAAgB,MAAY,QAAQ,UAAU,UAAU,SAAmB,GAAG,OAAO;AAAA,EACtG;AACF;;;AClCA,SAAS,kBAAkB;AAC3B,SAAuB,eAAe;AAIlC,SACE,OAAAA,MADF;AAFG,IAAM,cAAsC,CAAC,EAAE,UAAU,OAAO,GAAG,MAAM,MAAM;AACpF,SACE,qBAAC,WAAQ,QAAQ,GAAG,gBAAe,cAAa,OAAe,GAAG,OAChE;AAAA,oBAAAA,KAAC,cAAW,QAAQ,KAAK,SAAQ,MAAK,QAAM,MACzC,iBACH;AAAA,IACC;AAAA,KACH;AAEJ;;;ACNE,SACE,OAAAC,MADF,QAAAC,aAAA;AADK,IAAM,YAAoC,CAAC,UAChD,gBAAAA,MAAC,eAAY,OAAM,QAAQ,GAAG,OAC5B;AAAA,kBAAAD,KAAC,cAAW,MAAK,gCAA+B,sBAAQ;AAAA,EACxD,gBAAAA,KAAC,cAAW,MAAK,2BAA0B,iBAAG;AAAA,EAC9C,gBAAAA,KAAC,cAAW,MAAK,6BAA4B,mBAAK;AAAA,GACpD;","names":["jsx","jsx","jsxs"]}
@@ -1,75 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/Xyo/NetworkLinks.tsx
21
- var NetworkLinks_exports = {};
22
- __export(NetworkLinks_exports, {
23
- NetworkLinks: () => NetworkLinks
24
- });
25
- module.exports = __toCommonJS(NetworkLinks_exports);
26
-
27
- // src/Link.tsx
28
- var import_assert = require("@xylabs/assert");
29
- var import_react_link = require("@xylabs/react-link");
30
- var import_jsx_runtime = require("react/jsx-runtime");
31
- var convertToBetaIfNeeded = (url, currentUrl = new URL(document.location.href)) => {
32
- const urlObj = typeof url === "string" ? new URL(url) : url;
33
- const currentUrlObj = typeof currentUrl === "string" ? new URL(currentUrl) : currentUrl;
34
- const currentHostnameParts = currentUrlObj.hostname.split(".");
35
- const beta = currentHostnameParts.shift() === "beta";
36
- if (beta) {
37
- const currentHostnameWithoutBeta = currentHostnameParts.join(".");
38
- if (currentHostnameWithoutBeta === urlObj.hostname) {
39
- urlObj.hostname = currentUrlObj.hostname;
40
- }
41
- }
42
- return urlObj;
43
- };
44
- var FooterLink = ({ target, href, margin = 0.5, variant = "body2", ...props }) => {
45
- const url = new URL((0, import_assert.assertEx)(href, "href not set"));
46
- (0, import_assert.assertEx)(url.hostname, "Hostname is required in href");
47
- const convertedUrl = convertToBetaIfNeeded(url);
48
- if (document.location.hostname === convertedUrl.hostname) {
49
- const to = url.search.length > 0 ? `${convertedUrl.pathname}${convertedUrl.search}` : url.pathname;
50
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_link.LinkEx, { margin, to, target, variant, ...props });
51
- } else {
52
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_link.LinkEx, { margin, href, target: target ?? "_blank", variant, ...props });
53
- }
54
- };
55
-
56
- // src/Links.tsx
57
- var import_material = require("@mui/material");
58
- var import_react_flexbox = require("@xylabs/react-flexbox");
59
- var import_jsx_runtime2 = require("react/jsx-runtime");
60
- var FooterLinks = ({ children, title, ...props }) => {
61
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_react_flexbox.FlexCol, { margin: 1, justifyContent: "flex-start", title, ...props, children: [
62
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material.Typography, { margin: 0.5, variant: "h6", noWrap: true, children: title }),
63
- children
64
- ] });
65
- };
66
-
67
- // src/Xyo/NetworkLinks.tsx
68
- var import_jsx_runtime3 = require("react/jsx-runtime");
69
- var NetworkLinks = (props) => /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(FooterLinks, { title: "Network", ...props, children: [
70
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(FooterLink, { href: "https://xyo.network/network", children: "Overview" }),
71
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(FooterLink, { href: "https://xyo.network/network/bound-witness", children: "Bound Witness" }),
72
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(FooterLink, { href: "https://xyo.network/network/proof-of-origin", children: "Proof Of Origin" }),
73
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(FooterLink, { href: "https://xyo.network/papers", children: "White Paper" })
74
- ] });
75
- //# sourceMappingURL=NetworkLinks.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Xyo/NetworkLinks.tsx","../../../src/Link.tsx","../../../src/Links.tsx"],"sourcesContent":["import { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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 { assertEx } from '@xylabs/assert'\nimport { LinkEx, LinkExProps } from '@xylabs/react-link'\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> = ({ target, href, margin = 0.5, variant = 'body2', ...props }) => {\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} target={target} variant={variant} {...props} />\n } else {\n return <LinkEx margin={margin} href={href} target={target ?? '_blank'} variant={variant} {...props} />\n }\n}\n","import { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\n\nexport const FooterLinks: React.FC<FlexBoxProps> = ({ children, title, ...props }) => {\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"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,oBAAyB;AACzB,wBAAoC;AA6BzB;AApBX,IAAM,wBAAwB,CAAC,KAAmB,aAAa,IAAI,IAAI,SAAS,SAAS,IAAI,MAAM;AACjG,QAAM,SAAS,OAAO,QAAQ,WAAW,IAAI,IAAI,GAAG,IAAI;AACxD,QAAM,gBAAgB,OAAO,eAAe,WAAW,IAAI,IAAI,UAAU,IAAI;AAC7E,QAAM,uBAAuB,cAAc,SAAS,MAAM,GAAG;AAC7D,QAAM,OAAO,qBAAqB,MAAM,MAAM;AAC9C,MAAI,MAAM;AACR,UAAM,6BAA6B,qBAAqB,KAAK,GAAG;AAChE,QAAI,+BAA+B,OAAO,UAAU;AAClD,aAAO,WAAW,cAAc;AAAA,IAClC;AAAA,EACF;AACA,SAAO;AACT;AAEO,IAAM,aAAoC,CAAC,EAAE,QAAQ,MAAM,SAAS,KAAK,UAAU,SAAS,GAAG,MAAM,MAAM;AAChH,QAAM,MAAM,IAAI,QAAI,wBAAS,MAAM,cAAc,CAAC;AAClD,8BAAS,IAAI,UAAU,8BAA8B;AACrD,QAAM,eAAe,sBAAsB,GAAG;AAC9C,MAAI,SAAS,SAAS,aAAa,aAAa,UAAU;AACxD,UAAM,KAAK,IAAI,OAAO,SAAS,IAAI,GAAG,aAAa,QAAQ,GAAG,aAAa,MAAM,KAAK,IAAI;AAC1F,WAAO,4CAAC,4BAAO,QAAgB,IAAQ,QAAgB,SAAmB,GAAG,OAAO;AAAA,EACtF,OAAO;AACL,WAAO,4CAAC,4BAAO,QAAgB,MAAY,QAAQ,UAAU,UAAU,SAAmB,GAAG,OAAO;AAAA,EACtG;AACF;;;AClCA,sBAA2B;AAC3B,2BAAsC;AAIlC,IAAAA,sBAAA;AAFG,IAAM,cAAsC,CAAC,EAAE,UAAU,OAAO,GAAG,MAAM,MAAM;AACpF,SACE,8CAAC,gCAAQ,QAAQ,GAAG,gBAAe,cAAa,OAAe,GAAG,OAChE;AAAA,iDAAC,8BAAW,QAAQ,KAAK,SAAQ,MAAK,QAAM,MACzC,iBACH;AAAA,IACC;AAAA,KACH;AAEJ;;;AFNE,IAAAC,sBAAA;AADK,IAAM,eAAuC,CAAC,UACnD,8CAAC,eAAY,OAAM,WAAW,GAAG,OAC/B;AAAA,+CAAC,cAAW,MAAK,+BAA8B,sBAAQ;AAAA,EACvD,6CAAC,cAAW,MAAK,6CAA4C,2BAAa;AAAA,EAC1E,6CAAC,cAAW,MAAK,+CAA8C,6BAAe;AAAA,EAC9E,6CAAC,cAAW,MAAK,8BAA6B,yBAAW;AAAA,GAC3D;","names":["import_jsx_runtime","import_jsx_runtime"]}
@@ -1,52 +0,0 @@
1
- // src/Link.tsx
2
- import { assertEx } from "@xylabs/assert";
3
- import { LinkEx } from "@xylabs/react-link";
4
- import { jsx } from "react/jsx-runtime";
5
- var convertToBetaIfNeeded = (url, currentUrl = new URL(document.location.href)) => {
6
- const urlObj = typeof url === "string" ? new URL(url) : url;
7
- const currentUrlObj = typeof currentUrl === "string" ? new URL(currentUrl) : currentUrl;
8
- const currentHostnameParts = currentUrlObj.hostname.split(".");
9
- const beta = currentHostnameParts.shift() === "beta";
10
- if (beta) {
11
- const currentHostnameWithoutBeta = currentHostnameParts.join(".");
12
- if (currentHostnameWithoutBeta === urlObj.hostname) {
13
- urlObj.hostname = currentUrlObj.hostname;
14
- }
15
- }
16
- return urlObj;
17
- };
18
- var FooterLink = ({ target, href, margin = 0.5, variant = "body2", ...props }) => {
19
- const url = new URL(assertEx(href, "href not set"));
20
- assertEx(url.hostname, "Hostname is required in href");
21
- const convertedUrl = convertToBetaIfNeeded(url);
22
- if (document.location.hostname === convertedUrl.hostname) {
23
- const to = url.search.length > 0 ? `${convertedUrl.pathname}${convertedUrl.search}` : url.pathname;
24
- return /* @__PURE__ */ jsx(LinkEx, { margin, to, target, variant, ...props });
25
- } else {
26
- return /* @__PURE__ */ jsx(LinkEx, { margin, href, target: target ?? "_blank", variant, ...props });
27
- }
28
- };
29
-
30
- // src/Links.tsx
31
- import { Typography } from "@mui/material";
32
- import { FlexCol } from "@xylabs/react-flexbox";
33
- import { jsx as jsx2, jsxs } from "react/jsx-runtime";
34
- var FooterLinks = ({ children, title, ...props }) => {
35
- return /* @__PURE__ */ jsxs(FlexCol, { margin: 1, justifyContent: "flex-start", title, ...props, children: [
36
- /* @__PURE__ */ jsx2(Typography, { margin: 0.5, variant: "h6", noWrap: true, children: title }),
37
- children
38
- ] });
39
- };
40
-
41
- // src/Xyo/NetworkLinks.tsx
42
- import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
43
- var NetworkLinks = (props) => /* @__PURE__ */ jsxs2(FooterLinks, { title: "Network", ...props, children: [
44
- /* @__PURE__ */ jsx3(FooterLink, { href: "https://xyo.network/network", children: "Overview" }),
45
- /* @__PURE__ */ jsx3(FooterLink, { href: "https://xyo.network/network/bound-witness", children: "Bound Witness" }),
46
- /* @__PURE__ */ jsx3(FooterLink, { href: "https://xyo.network/network/proof-of-origin", children: "Proof Of Origin" }),
47
- /* @__PURE__ */ jsx3(FooterLink, { href: "https://xyo.network/papers", children: "White Paper" })
48
- ] });
49
- export {
50
- NetworkLinks
51
- };
52
- //# sourceMappingURL=NetworkLinks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Link.tsx","../../../src/Links.tsx","../../../src/Xyo/NetworkLinks.tsx"],"sourcesContent":["import { assertEx } from '@xylabs/assert'\nimport { LinkEx, LinkExProps } from '@xylabs/react-link'\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> = ({ target, href, margin = 0.5, variant = 'body2', ...props }) => {\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} target={target} variant={variant} {...props} />\n } else {\n return <LinkEx margin={margin} href={href} target={target ?? '_blank'} variant={variant} {...props} />\n }\n}\n","import { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\n\nexport const FooterLinks: React.FC<FlexBoxProps> = ({ children, title, ...props }) => {\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 { FlexBoxProps } from '@xylabs/react-flexbox'\n\nimport { FooterLink } from '../Link'\nimport { FooterLinks } from '../Links'\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"],"mappings":";AAAA,SAAS,gBAAgB;AACzB,SAAS,cAA2B;AA6BzB;AApBX,IAAM,wBAAwB,CAAC,KAAmB,aAAa,IAAI,IAAI,SAAS,SAAS,IAAI,MAAM;AACjG,QAAM,SAAS,OAAO,QAAQ,WAAW,IAAI,IAAI,GAAG,IAAI;AACxD,QAAM,gBAAgB,OAAO,eAAe,WAAW,IAAI,IAAI,UAAU,IAAI;AAC7E,QAAM,uBAAuB,cAAc,SAAS,MAAM,GAAG;AAC7D,QAAM,OAAO,qBAAqB,MAAM,MAAM;AAC9C,MAAI,MAAM;AACR,UAAM,6BAA6B,qBAAqB,KAAK,GAAG;AAChE,QAAI,+BAA+B,OAAO,UAAU;AAClD,aAAO,WAAW,cAAc;AAAA,IAClC;AAAA,EACF;AACA,SAAO;AACT;AAEO,IAAM,aAAoC,CAAC,EAAE,QAAQ,MAAM,SAAS,KAAK,UAAU,SAAS,GAAG,MAAM,MAAM;AAChH,QAAM,MAAM,IAAI,IAAI,SAAS,MAAM,cAAc,CAAC;AAClD,WAAS,IAAI,UAAU,8BAA8B;AACrD,QAAM,eAAe,sBAAsB,GAAG;AAC9C,MAAI,SAAS,SAAS,aAAa,aAAa,UAAU;AACxD,UAAM,KAAK,IAAI,OAAO,SAAS,IAAI,GAAG,aAAa,QAAQ,GAAG,aAAa,MAAM,KAAK,IAAI;AAC1F,WAAO,oBAAC,UAAO,QAAgB,IAAQ,QAAgB,SAAmB,GAAG,OAAO;AAAA,EACtF,OAAO;AACL,WAAO,oBAAC,UAAO,QAAgB,MAAY,QAAQ,UAAU,UAAU,SAAmB,GAAG,OAAO;AAAA,EACtG;AACF;;;AClCA,SAAS,kBAAkB;AAC3B,SAAuB,eAAe;AAIlC,SACE,OAAAA,MADF;AAFG,IAAM,cAAsC,CAAC,EAAE,UAAU,OAAO,GAAG,MAAM,MAAM;AACpF,SACE,qBAAC,WAAQ,QAAQ,GAAG,gBAAe,cAAa,OAAe,GAAG,OAChE;AAAA,oBAAAA,KAAC,cAAW,QAAQ,KAAK,SAAQ,MAAK,QAAM,MACzC,iBACH;AAAA,IACC;AAAA,KACH;AAEJ;;;ACNE,SACE,OAAAC,MADF,QAAAC,aAAA;AADK,IAAM,eAAuC,CAAC,UACnD,gBAAAA,MAAC,eAAY,OAAM,WAAW,GAAG,OAC/B;AAAA,kBAAAD,KAAC,cAAW,MAAK,+BAA8B,sBAAQ;AAAA,EACvD,gBAAAA,KAAC,cAAW,MAAK,6CAA4C,2BAAa;AAAA,EAC1E,gBAAAA,KAAC,cAAW,MAAK,+CAA8C,6BAAe;AAAA,EAC9E,gBAAAA,KAAC,cAAW,MAAK,8BAA6B,yBAAW;AAAA,GAC3D;","names":["jsx","jsx","jsxs"]}