Files
blitzkit/packages/website/src/components/Footer.astro
T

184 lines
4.7 KiB
Plaintext
Raw Normal View History

2024-09-14 19:43:14 -05:00
---
2024-10-21 18:32:52 -05:00
import { assertSecret, fetchGameDefinitions } from '@blitzkit/core';
2025-01-15 13:10:57 -06:00
import { DEFAULT_LOCALE } from '@blitzkit/i18n';
import { Box, Code, Flex, Heading, Link, Text } from '@radix-ui/themes';
2025-01-10 11:56:00 -06:00
import packageJson from '../../../../package.json';
2025-01-06 20:09:11 -06:00
import { getStrings } from '../core/i18n/getStrings';
2025-01-16 20:34:28 -06:00
import { LinkI18n } from './LinkI18n';
2025-01-15 13:10:57 -06:00
import { LocaleSwitcherThemeWrapper } from './LocaleSwitcher';
2024-09-14 19:43:14 -05:00
2024-10-06 00:02:50 -05:00
const gameDefinitions = await fetchGameDefinitions();
2025-06-08 17:32:13 +00:00
const PUBLIC_ASSET_BRANCH = assertSecret(import.meta.env.PUBLIC_BRANCH);
2025-01-15 13:10:57 -06:00
const locale = Astro.params.locale ?? DEFAULT_LOCALE;
2025-01-06 20:09:11 -06:00
const strings = getStrings(locale);
2024-09-14 19:43:14 -05:00
---
2024-11-02 18:52:50 -05:00
<style>
.footer {
2024-11-04 10:28:49 -06:00
background-color: var(--color-panel);
2024-11-02 18:52:50 -05:00
}
</style>
<Flex className="footer" gap="6" p="6" direction="column" align="center">
2024-09-14 19:43:14 -05:00
<Flex
align="center"
justify="between"
maxWidth="40rem"
width="100%"
flexGrow="1"
gap="5"
position="relative"
direction={{ initial: 'column', sm: 'row' }}
>
<Flex
direction="column"
align={{
initial: 'center',
sm: 'start',
}}
>
2024-09-15 14:51:01 -05:00
<Heading>BlitzKit</Heading>
2025-01-06 20:09:11 -06:00
<Text color="gray">{strings.website.footer.motto}</Text>
2024-09-14 19:43:14 -05:00
<Text size="1" color="gray">
2025-01-06 20:09:11 -06:00
{strings.website.footer.copyright}
2024-09-14 19:43:14 -05:00
</Text>
2025-01-15 13:10:57 -06:00
<Box mt="2">
<LocaleSwitcherThemeWrapper {locale} client:load />
</Box>
2024-09-14 19:43:14 -05:00
</Flex>
<Flex
gap="6"
width={{
initial: '100%',
sm: 'auto',
}}
>
<Flex
direction="column"
gap="1"
align={{
initial: 'end',
sm: 'start',
}}
flexGrow={{
initial: '1',
sm: '0',
}}
flexBasis={{
initial: '0',
sm: 'auto',
}}
>
2025-01-06 20:09:11 -06:00
<Heading size="3">{strings.website.footer.about.title}</Heading>
2024-09-14 19:43:14 -05:00
<Flex
direction="column"
align={{
initial: 'end',
sm: 'start',
}}
>
2025-01-16 20:34:28 -06:00
<LinkI18n {locale} href="/docs/about/credits" color="gray">
2025-01-06 20:09:11 -06:00
{strings.website.footer.about.credits}
2025-01-16 20:34:28 -06:00
</LinkI18n>
2024-09-14 19:43:14 -05:00
<Link
href="https://discord.gg/nDt7AjGJQH"
target="_blank"
color="gray"
>
2025-01-06 20:09:11 -06:00
{strings.website.footer.about.discord}
2024-09-14 19:43:14 -05:00
</Link>
<Link
href="https://github.com/tresabhi/blitzkit"
target="_blank"
color="gray"
>
2025-01-06 20:09:11 -06:00
{strings.website.footer.about.github}
2024-09-14 19:43:14 -05:00
</Link>
2025-01-16 20:34:28 -06:00
<LinkI18n {locale} href="/docs/patches" color="gray">
2025-01-06 20:09:11 -06:00
{strings.website.footer.about.patches}
2025-01-16 20:34:28 -06:00
</LinkI18n>
2024-09-14 19:43:14 -05:00
</Flex>
</Flex>
<Flex
direction="column"
gap="1"
flexGrow={{
initial: '1',
sm: '0',
}}
flexBasis={{
initial: '0',
sm: 'auto',
}}
>
2025-01-06 20:09:11 -06:00
<Heading size="3">{strings.website.footer.legal.title}</Heading>
2024-09-14 19:43:14 -05:00
<Flex direction="column">
2025-01-16 20:34:28 -06:00
<LinkI18n {locale} href="/docs/legal/privacy-policy" color="gray">
2025-01-06 20:09:11 -06:00
{strings.website.footer.legal.privacy}
2025-01-16 20:34:28 -06:00
</LinkI18n>
<LinkI18n {locale} href="/docs/legal/terms-of-service" color="gray">
2025-01-06 20:09:11 -06:00
{strings.website.footer.legal.terms}
2025-01-16 20:34:28 -06:00
</LinkI18n>
2024-09-14 19:43:14 -05:00
</Flex>
</Flex>
</Flex>
</Flex>
2025-08-04 20:15:16 -05:00
<Flex gap="5" display={{ initial: 'flex', sm: 'none' }} width="100%">
<Flex direction="column" gap="1" flexGrow="1" flexBasis="0" align="end">
2025-01-10 12:06:20 -06:00
<Text size="2" color="gray">BlitzKit</Text>
{
PUBLIC_ASSET_BRANCH !== 'preview' && (
<Text size="2" color="gray">
2025-01-10 14:04:42 -06:00
WoTB
2025-01-10 12:06:20 -06:00
</Text>
)
}
<Text size="2" color="gray">CDN</Text>
2024-09-14 19:43:14 -05:00
</Flex>
2025-08-04 20:15:16 -05:00
<Flex direction="column" gap="1" flexGrow="1" flexBasis="0" align="start">
2025-01-10 12:06:20 -06:00
<Code size="2" color="gray">
{packageJson.version}
</Code>
2025-01-10 11:56:00 -06:00
{
PUBLIC_ASSET_BRANCH !== 'preview' && (
<Code size="2" color="gray">
2025-01-10 12:06:20 -06:00
{gameDefinitions.version}
2025-01-10 11:56:00 -06:00
</Code>
)
}
2024-09-14 19:43:14 -05:00
<Code size="2" color="gray">
2025-01-10 11:56:00 -06:00
{PUBLIC_ASSET_BRANCH}
2024-09-14 19:43:14 -05:00
</Code>
</Flex>
</Flex>
<Flex gap="2" align="center" display={{ initial: 'none', sm: 'flex' }}>
2025-01-06 20:14:33 -06:00
<Text size="2" color="gray">BlitzKit</Text>
2025-01-10 12:06:20 -06:00
<Code size="2" color="gray">
{packageJson.version}
</Code>
2025-01-10 11:56:00 -06:00
{
PUBLIC_ASSET_BRANCH !== 'preview' && (
2025-01-10 12:06:20 -06:00
<>
<Text size="2" color="gray">
2025-01-10 14:04:42 -06:00
WoTB
2025-01-10 12:06:20 -06:00
</Text>
<Code size="2" color="gray">
{gameDefinitions.version}
</Code>
</>
2025-01-10 11:56:00 -06:00
)
}
2025-01-10 12:06:20 -06:00
2025-01-06 20:14:33 -06:00
<Text size="2" color="gray">CDN</Text>
2024-09-14 19:43:14 -05:00
<Code size="2" color="gray">
2025-01-10 11:56:00 -06:00
{PUBLIC_ASSET_BRANCH}
2024-09-14 19:43:14 -05:00
</Code>
</Flex>
</Flex>