diff --git a/packages/i18n/strings/en.json b/packages/i18n/strings/en.json index 0d10dc4a1..5bed66678 100644 --- a/packages/i18n/strings/en.json +++ b/packages/i18n/strings/en.json @@ -38,7 +38,7 @@ "branches": { "beta": "Beta", - "development": "Development", + "development": "Post Malone Edition", "opentest": "OpenTest", "preview": "Preview", "production": "Production" @@ -993,7 +993,7 @@ "footer": { "motto": "Everything World of Tanks Blitz", - "copyright": "Unaffiliated with Wargaming or any service", + "association": "An Open Collective Project", "about": { "title": "About", diff --git a/packages/website/src/components/Beg/index.module.css b/packages/website/src/components/Beg/index.module.css new file mode 100644 index 000000000..5bcfacd77 --- /dev/null +++ b/packages/website/src/components/Beg/index.module.css @@ -0,0 +1,36 @@ +.outer { + padding: 0 var(--space-4); + margin-top: var(--space-3); + + img { + width: 1.25em; + height: 1.25em; + + border-radius: 50%; + } + + .center { + position: relative; + + background: linear-gradient(var(--pink-3), var(--purple-2)); + box-shadow: var(--shadow-3); + + max-width: 40rem; + + padding: var(--space-5); + border-radius: var(--radius-4); + + .important { + position: absolute; + + top: 0; + left: 50%; + + transform: translate(-50%, -50%); + + background-color: inherit; + + padding: var(--space-3); + } + } +} diff --git a/packages/website/src/components/Beg/index.tsx b/packages/website/src/components/Beg/index.tsx new file mode 100644 index 000000000..7f905c616 --- /dev/null +++ b/packages/website/src/components/Beg/index.tsx @@ -0,0 +1,48 @@ +import { HeartFilledIcon } from "@radix-ui/react-icons"; +import { Button, Em, Flex, Strong, Text } from "@radix-ui/themes"; +import { donationTiers } from "../../config/donations"; +import styles from "./index.module.css"; + +export function Beg() { + return ( + + + + + We need your attention + + + + + + + We can no longer keep BlitzKit sustainable for free + . + + + + We want to add tank modules, player statistics, rebalancing patch + notes, bring back the Discord bot, and more. + + + + But paying out of pocket makes that impossible. We are an earnest + non-profit, so consider donating to make the above possible. 100% of + your money goes back into BlitzKit. + + + + + {donationTiers.map(({ name, value, link }) => ( + + + + ))} + + + + ); +} diff --git a/packages/website/src/components/Footer.astro b/packages/website/src/components/Footer.astro index 4478dbb28..fb8d1d170 100644 --- a/packages/website/src/components/Footer.astro +++ b/packages/website/src/components/Footer.astro @@ -43,9 +43,9 @@ const strings = getStrings(locale); }} > BlitzKit - {strings.website.footer.motto} - - {strings.website.footer.copyright} + {strings.website.footer.motto} + + {strings.website.footer.association} diff --git a/packages/website/src/config/donations.ts b/packages/website/src/config/donations.ts new file mode 100644 index 000000000..8b0d9c63d --- /dev/null +++ b/packages/website/src/config/donations.ts @@ -0,0 +1,23 @@ +// TODO: source this from the open collective api, if even possible +export const donationTiers = [ + { + name: "The Backer", + value: 5, + link: "https://opencollective.com/blitzkit/contribute/backers-106312/checkout", + }, + { + name: "The Engineer", + value: 10, + link: "https://opencollective.com/blitzkit/contribute/the-engineer-107057/checkout", + }, + { + name: "The Patron", + value: 25, + link: "https://opencollective.com/blitzkit/contribute/the-patron-107056/checkout", + }, + { + name: "The Sponsor", + value: null, + link: "https://opencollective.com/blitzkit/donate", + }, +]; diff --git a/packages/website/src/pages/[...chunk_default]/[...locale]/index.astro b/packages/website/src/pages/[...chunk_default]/[...locale]/index.astro index 48e147252..1610cfc08 100644 --- a/packages/website/src/pages/[...chunk_default]/[...locale]/index.astro +++ b/packages/website/src/pages/[...chunk_default]/[...locale]/index.astro @@ -5,7 +5,7 @@ import locales from "@blitzkit/i18n/locales.json"; import { literals } from "@blitzkit/i18n/src/literals"; import { Box, Flex, Link } from "@radix-ui/themes"; import { AesonPlug } from "../../../components/AesonPlug"; -import { Countdown } from "../../../components/Countdown"; +import { Beg } from "../../../components/Beg"; import HomeHero from "../../../components/HomeHero.astro"; import { Plugs } from "../../../components/Plugs"; import ToolCard from "../../../components/ToolCard.astro"; @@ -66,7 +66,7 @@ export const getStaticPaths = mixStaticPaths(_getStaticPaths, () => { - + { locale !== locales.default && (