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

189 lines
4.7 KiB
Plaintext
Raw Normal View History

2024-09-14 19:43:14 -05:00
---
2026-07-31 20:48:33 -05:00
import { assertSecret } from "@blitzkit/core";
2025-09-27 16:07:45 -05:00
import { Box, Code, Flex, Heading, Link, Text } from "@radix-ui/themes";
import packageJson from "../../../../package.json";
2026-07-31 20:48:33 -05:00
import { api } from "../core/blitzkit/api";
2025-09-27 16:07:45 -05:00
import { getStrings } from "../core/i18n/getStrings";
import { LinkI18n } from "./LinkI18n";
import { LocaleSwitcherThemeWrapper } from "./LocaleSwitcher";
2024-09-14 19:43:14 -05:00
2025-10-22 17:52:01 -05:00
export interface Props {
locale: string;
}
2026-08-01 14:32:25 -05:00
const gameDefinitions = await api.gameDefinitions();
2026-10-04 14:36:18 +13:00
const gameVersion = gameDefinitions.version.split("_")[0];
2026-08-08 20:56:45 -05:00
const environment = assertSecret(import.meta.env.PUBLIC_ENVIRONMENT);
2025-10-22 17:52:01 -05:00
const { locale } = Astro.props;
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"
2025-09-27 16:07:45 -05:00
direction={{ initial: "column", sm: "row" }}
2024-09-14 19:43:14 -05:00
>
<Flex
direction="column"
align={{
2025-09-27 16:07:45 -05:00
initial: "center",
sm: "start",
2024-09-14 19:43:14 -05:00
}}
>
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={{
2025-09-27 16:07:45 -05:00
initial: "100%",
sm: "auto",
2024-09-14 19:43:14 -05:00
}}
>
<Flex
direction="column"
gap="1"
align={{
2025-09-27 16:07:45 -05:00
initial: "end",
sm: "start",
2024-09-14 19:43:14 -05:00
}}
flexGrow={{
2025-09-27 16:07:45 -05:00
initial: "1",
sm: "0",
2024-09-14 19:43:14 -05:00
}}
flexBasis={{
2025-09-27 16:07:45 -05:00
initial: "0",
sm: "auto",
2024-09-14 19:43:14 -05:00
}}
>
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={{
2025-09-27 16:07:45 -05:00
initial: "end",
sm: "start",
2024-09-14 19:43:14 -05:00
}}
>
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={{
2025-09-27 16:07:45 -05:00
initial: "1",
sm: "0",
2024-09-14 19:43:14 -05:00
}}
flexBasis={{
2025-09-27 16:07:45 -05:00
initial: "0",
sm: "auto",
2024-09-14 19:43:14 -05:00
}}
>
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-09-27 16:07:45 -05:00
<Flex gap="5" display={{ initial: "flex", sm: "none" }} width="100%">
2025-08-04 20:15:16 -05:00
<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>
{
2026-08-08 20:56:45 -05:00
environment !== "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>
)
}
2026-10-04 14:36:18 +13:00
<Text size="2" color="gray">Branch</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
{
2026-08-08 20:56:45 -05:00
environment !== "preview" && (
2025-01-10 11:56:00 -06:00
<Code size="2" color="gray">
2026-10-04 14:36:18 +13:00
{gameVersion}
2025-01-10 11:56:00 -06:00
</Code>
)
}
2024-09-14 19:43:14 -05:00
<Code size="2" color="gray">
2026-08-08 20:56:45 -05:00
{environment}
2024-09-14 19:43:14 -05:00
</Code>
</Flex>
</Flex>
2025-09-27 16:07:45 -05:00
<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
{
2026-08-08 20:56:45 -05:00
environment !== "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">
2026-10-04 14:36:18 +13:00
{gameVersion}
2025-01-10 12:06:20 -06:00
</Code>
</>
2025-01-10 11:56:00 -06:00
)
}
2025-01-10 12:06:20 -06:00
2026-10-04 14:36:18 +13:00
<Text size="2" color="gray">Branch</Text>
2024-09-14 19:43:14 -05:00
<Code size="2" color="gray">
2026-08-08 20:56:45 -05:00
{environment}
2024-09-14 19:43:14 -05:00
</Code>
</Flex>
</Flex>