From 0809c9ee0c075459ee362bd1f7bb5a0cb547ccaf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tr=C3=A8sAbhi?= <43380238+tresabhi@users.noreply.github.com>
Date: Wed, 22 Oct 2025 17:52:01 -0500
Subject: [PATCH] fix: some locale props
---
packages/website/astro.config.ts | 2 +-
packages/website/package.json | 2 +-
.../website/src/components/Favicons.astro | 2 +-
packages/website/src/components/Footer.astro | 7 +++-
.../website/src/components/HomeHero.astro | 2 +-
packages/website/src/components/Navbar.astro | 2 +-
.../website/src/components/ToolCard.astro | 4 +-
.../src/components/ToolOpenGraph.astro | 4 +-
packages/website/src/layouts/BaseLayout.astro | 2 +-
.../website/src/layouts/LegacyRedirect.astro | 29 +++++++-------
packages/website/src/pages/404.astro | 14 +++----
.../[...locale]/auth/[provider]/index.astro | 24 +++++-------
.../src/pages/[...locale]/compare/index.astro | 6 +--
.../docs/[directory]/[document]/index.astro | 36 +++++++++---------
.../[...locale]/docs/patches/index.astro | 38 ++++++++++---------
.../embed/[embed]/host/index.astro | 10 ++---
.../[...locale]/embed/[embed]/index.astro | 24 ++++++------
.../src/pages/[...locale]/embed/index.astro | 4 +-
.../src/pages/[...locale]/gallery/index.astro | 4 +-
.../src/pages/[...locale]/guess/index.astro | 4 +-
.../website/src/pages/[...locale]/index.astro | 10 ++---
.../src/pages/[...locale]/mixer/index.astro | 6 +--
.../pages/[...locale]/performance/index.astro | 2 +-
.../pages/[...locale]/playlist/index.astro | 2 +-
.../src/pages/[...locale]/session/index.astro | 4 +-
.../pages/[...locale]/settings/index.astro | 4 +-
.../[...locale]/tanks/[slug]/index.astro | 7 ++--
.../src/pages/[...locale]/tanks/index.astro | 4 +-
.../pages/[...locale]/tier-list/index.astro | 6 +--
packages/website/src/pages/api/index.astro | 3 +-
30 files changed, 134 insertions(+), 134 deletions(-)
diff --git a/packages/website/astro.config.ts b/packages/website/astro.config.ts
index aaf08b1d2..07c0b288d 100644
--- a/packages/website/astro.config.ts
+++ b/packages/website/astro.config.ts
@@ -12,7 +12,7 @@ import { tools } from "./src/constants/tools";
const POSSIBLE_TARGETS = ["app", "web"];
-const target = process.env.PUBLIC_TARGET;
+const target = process.env.PUBLIC_TARGET ;
if (!target || !POSSIBLE_TARGETS.includes(target)) {
throw new Error("Invalid target");
diff --git a/packages/website/package.json b/packages/website/package.json
index 9376122df..c1428c077 100644
--- a/packages/website/package.json
+++ b/packages/website/package.json
@@ -5,7 +5,7 @@
"dev": "PUBLIC_TARGET=web astro dev",
"build": "PUBLIC_TARGET=web astro build",
"preview": "PUBLIC_TARGET=web astro preview",
- "lint": "astro check",
+ "lint": "PUBLIC_TARGET=web astro check",
"astro": "astro"
},
"dependencies": {
diff --git a/packages/website/src/components/Favicons.astro b/packages/website/src/components/Favicons.astro
index b2d7b176b..caf3a1824 100644
--- a/packages/website/src/components/Favicons.astro
+++ b/packages/website/src/components/Favicons.astro
@@ -1,7 +1,7 @@
---
import { localizedHTML as favicons } from "astro-favicons/middleware";
-const { locale } = Astro.params;
+const { locale } = Astro.props;
---
diff --git a/packages/website/src/components/Footer.astro b/packages/website/src/components/Footer.astro
index 7af82f8f4..196f62f34 100644
--- a/packages/website/src/components/Footer.astro
+++ b/packages/website/src/components/Footer.astro
@@ -1,15 +1,18 @@
---
import { assertSecret, fetchGameDefinitions } from "@blitzkit/core";
-import locales from "@blitzkit/i18n/locales.json";
import { Box, Code, Flex, Heading, Link, Text } from "@radix-ui/themes";
import packageJson from "../../../../package.json";
import { getStrings } from "../core/i18n/getStrings";
import { LinkI18n } from "./LinkI18n";
import { LocaleSwitcherThemeWrapper } from "./LocaleSwitcher";
+export interface Props {
+ locale: string;
+}
+
const gameDefinitions = await fetchGameDefinitions();
const PUBLIC_ASSET_BRANCH = assertSecret(import.meta.env.PUBLIC_BRANCH);
-const locale = Astro.params.locale ?? locales.default;
+const { locale } = Astro.props;
const strings = getStrings(locale);
---
diff --git a/packages/website/src/components/HomeHero.astro b/packages/website/src/components/HomeHero.astro
index 56aabdf0c..723201006 100644
--- a/packages/website/src/components/HomeHero.astro
+++ b/packages/website/src/components/HomeHero.astro
@@ -4,7 +4,7 @@ import { resolveBranchName } from "../core/blitzkit/branches";
import { getStrings } from "../core/i18n/getStrings";
import { literals } from "@blitzkit/i18n/src/literals";
-const { locale } = Astro.params;
+const { locale } = Astro.props;
const branchName = resolveBranchName(locale);
const isBranchNamed = branchName !== undefined;
const strings = getStrings(locale);
diff --git a/packages/website/src/components/Navbar.astro b/packages/website/src/components/Navbar.astro
index 10cbee300..69ebb1b8a 100644
--- a/packages/website/src/components/Navbar.astro
+++ b/packages/website/src/components/Navbar.astro
@@ -21,7 +21,7 @@ const { integrated = false } = Astro.props;
const toolsFiltered = Object.values(tools).filter(
(tool) => !tool.href && !tool.disabled
);
-const { locale } = Astro.params;
+const { locale } = Astro.props;
const branchName = resolveBranchName(locale);
const isBranchNamed = branchName !== undefined;
const strings = getStrings(locale);
diff --git a/packages/website/src/components/ToolCard.astro b/packages/website/src/components/ToolCard.astro
index 9ef884d09..6d54d7f52 100644
--- a/packages/website/src/components/ToolCard.astro
+++ b/packages/website/src/components/ToolCard.astro
@@ -14,10 +14,10 @@ import { LinkI18n } from "./LinkI18n";
interface Props {
tool: Tool;
+ locale: string;
}
-const { tool } = Astro.props;
-const { locale } = Astro.params;
+const { locale, tool } = Astro.props;
const strings = getStrings(locale);
const toolStrings =
strings.website.tools[
diff --git a/packages/website/src/components/ToolOpenGraph.astro b/packages/website/src/components/ToolOpenGraph.astro
index 28f941a52..6e025cbf7 100644
--- a/packages/website/src/components/ToolOpenGraph.astro
+++ b/packages/website/src/components/ToolOpenGraph.astro
@@ -5,10 +5,10 @@ import { getStrings } from "../core/i18n/getStrings";
interface Props {
tool: Tool;
+ locale: string;
}
-const { tool } = Astro.props;
-const { locale } = Astro.params;
+const { locale, tool } = Astro.props;
const strings = getStrings(locale);
const toolStrings =
strings.website.tools[
diff --git a/packages/website/src/layouts/BaseLayout.astro b/packages/website/src/layouts/BaseLayout.astro
index d09bee92f..af41aff6c 100644
--- a/packages/website/src/layouts/BaseLayout.astro
+++ b/packages/website/src/layouts/BaseLayout.astro
@@ -45,7 +45,7 @@ const { noFooter, noNavbar, integrated, locale } = Astro.props;
{servicing ? : }
- {!noFooter && }
+ {!noFooter && }
{strings.website.redirect.title}
diff --git a/packages/website/src/pages/404.astro b/packages/website/src/pages/404.astro
index 4252fca60..05529036f 100644
--- a/packages/website/src/pages/404.astro
+++ b/packages/website/src/pages/404.astro
@@ -1,14 +1,14 @@
---
-import { DiscordLogoIcon, HomeIcon } from '@radix-ui/react-icons';
-import { Button, Flex, Heading, Link, Text } from '@radix-ui/themes';
-import { LinkI18n } from '../components/LinkI18n';
-import { PageWrapper } from '../components/PageWrapper';
-import BaseLayout from '../layouts/BaseLayout.astro';
+import { DiscordLogoIcon, HomeIcon } from "@radix-ui/react-icons";
+import { Button, Flex, Heading, Link, Text } from "@radix-ui/themes";
+import { LinkI18n } from "../components/LinkI18n";
+import { PageWrapper } from "../components/PageWrapper";
+import BaseLayout from "../layouts/BaseLayout.astro";
-const { locale } = Astro.params;
+const { locale } = Astro.props;
---
-
+
404: page not found
Where would you like to go?
diff --git a/packages/website/src/pages/[...locale]/auth/[provider]/index.astro b/packages/website/src/pages/[...locale]/auth/[provider]/index.astro
index 30976df58..b38157251 100644
--- a/packages/website/src/pages/[...locale]/auth/[provider]/index.astro
+++ b/packages/website/src/pages/[...locale]/auth/[provider]/index.astro
@@ -1,28 +1,24 @@
---
-import { Flex, Heading, Text } from '@radix-ui/themes';
-import type { GetStaticPaths } from 'astro';
-import { PageWrapper } from '../../../../components/PageWrapper';
-import BaseLayout from '../../../../layouts/BaseLayout.astro';
-import { getStaticPaths as parentGetStaticPaths } from '../../index.astro';
-import {
- AUTH_PROVIDER_NAMES,
- AUTH_PROVIDERS,
- Authorize,
- type AuthProvider,
-} from './_index';
+import { Flex, Heading, Text } from "@radix-ui/themes";
+import type { GetStaticPaths } from "astro";
+import { PageWrapper } from "../../../../components/PageWrapper";
+import BaseLayout from "../../../../layouts/BaseLayout.astro";
+import { getStaticPaths as parentGetStaticPaths } from "../../index.astro";
+import { AUTH_PROVIDER_NAMES, AUTH_PROVIDERS, Authorize } from "./_index";
export const getStaticPaths = (() => {
const parentPaths = parentGetStaticPaths();
return AUTH_PROVIDERS.map((provider) =>
- parentPaths.map((parent) => ({ params: { ...parent.params, provider } })),
+ parentPaths.map((parent) => ({ params: { ...parent.params, provider } }))
).flat();
}) satisfies GetStaticPaths;
-const provider = Astro.params.provider as AuthProvider;
+const { provider } = Astro.params;
+const { locale } = Astro.props;
---
-
+
+
-
+
diff --git a/packages/website/src/pages/[...locale]/docs/[directory]/[document]/index.astro b/packages/website/src/pages/[...locale]/docs/[directory]/[document]/index.astro
index 47457dbc4..d3811142b 100644
--- a/packages/website/src/pages/[...locale]/docs/[directory]/[document]/index.astro
+++ b/packages/website/src/pages/[...locale]/docs/[directory]/[document]/index.astro
@@ -1,25 +1,25 @@
---
-import { AstroSeo } from '@astrolib/seo';
-import type { GetStaticPaths } from 'astro';
-import { readFile } from 'fs/promises';
-import BaseLayout from '../../../../../layouts/BaseLayout.astro';
-import { getStaticPaths as parentGetStaticPaths } from '../../../index.astro';
-import { Page } from './_index';
+import { AstroSeo } from "@astrolib/seo";
+import type { GetStaticPaths } from "astro";
+import { readFile } from "fs/promises";
+import BaseLayout from "../../../../../layouts/BaseLayout.astro";
+import { getStaticPaths as parentGetStaticPaths } from "../../../index.astro";
+import { Page } from "./_index";
export const getStaticPaths = (async () => {
const parentPaths = parentGetStaticPaths();
- const ROOT = '../../../../../../../../docs/';
- const files = import.meta.glob('../../../../../../../../docs/**/*.md', {
+ const ROOT = "../../../../../../../../docs/";
+ const files = import.meta.glob("../../../../../../../../docs/**/*.md", {
eager: true,
});
return (
await Promise.all(
Object.keys(files).map(async (file) => {
- const couple = file.replace(ROOT, '').split('/');
- couple[1] = couple[1].replace('.md', '');
+ const couple = file.replace(ROOT, "").split("/");
+ couple[1] = couple[1].replace(".md", "");
const content = await readFile(
- `../../docs/${couple[0]}/${couple[1]}.md`,
+ `../../docs/${couple[0]}/${couple[1]}.md`
).then((buffer) => buffer.toString());
return parentPaths.map((parent) => ({
@@ -28,16 +28,16 @@ export const getStaticPaths = (async () => {
directory: couple[0],
document: couple[1],
},
- props: { content },
+ props: { ...parent.props, content },
}));
- }),
+ })
)
).flat();
}) satisfies GetStaticPaths;
-const { content } = Astro.props;
+const { content, locale } = Astro.props;
-const title = content.split('\n')[0].replace('# ', '');
+const title = content.split("\n")[0].replace("# ", "");
---
-
+
diff --git a/packages/website/src/pages/[...locale]/docs/patches/index.astro b/packages/website/src/pages/[...locale]/docs/patches/index.astro
index 02fc24d7c..5fd4da06b 100644
--- a/packages/website/src/pages/[...locale]/docs/patches/index.astro
+++ b/packages/website/src/pages/[...locale]/docs/patches/index.astro
@@ -1,23 +1,25 @@
---
-import { AstroSeo } from '@astrolib/seo';
-import { MagicWandIcon, StarFilledIcon } from '@radix-ui/react-icons';
-import { Flex, Heading, Link } from '@radix-ui/themes';
-import { compareVersions } from 'compare-versions';
-import { PageWrapper } from '../../../../components/PageWrapper';
-import { getStrings } from '../../../../core/i18n/getStrings';
-import BaseLayout from '../../../../layouts/BaseLayout.astro';
+import { AstroSeo } from "@astrolib/seo";
+import { MagicWandIcon, StarFilledIcon } from "@radix-ui/react-icons";
+import { Flex, Heading, Link } from "@radix-ui/themes";
+import { compareVersions } from "compare-versions";
+import { PageWrapper } from "../../../../components/PageWrapper";
+import { getStrings } from "../../../../core/i18n/getStrings";
+import BaseLayout from "../../../../layouts/BaseLayout.astro";
-export { getStaticPaths } from '../../index.astro';
+export { getStaticPaths } from "../../index.astro";
// this can't be used in template literal :(
-const ROOT = '../../../../../../../docs/changelogs/';
-const strings = getStrings(Astro.params.locale);
+const ROOT = "../../../../../../../docs/changelogs/";
+
+const { locale } = Astro.props;
+const strings = getStrings(locale);
const versions = Object.keys(
- import.meta.glob('../../../../../../../docs/changelogs/*.md', {
+ import.meta.glob("../../../../../../../docs/changelogs/*.md", {
eager: true,
- }),
+ })
)
- .map((file) => file.replace(ROOT, '').replace('.md', ''))
+ .map((file) => file.replace(ROOT, "").replace(".md", ""))
.sort(compareVersions)
.reverse();
---
@@ -30,26 +32,26 @@ const versions = Object.keys(
url: Astro.url.href,
title: strings.website.docs.patches.name,
description: strings.website.docs.patches.seo_description,
- site_name: 'BlitzKit',
+ site_name: "BlitzKit",
}}
- twitter={{ cardType: 'summary_large_image' }}
+ twitter={{ cardType: "summary_large_image" }}
/>
-
+
BlitzKit patches
{
versions.map((version) => {
- const split = version.split('.').map(Number);
+ const split = version.split(".").map(Number);
const isMajor = split[2] === 0;
return (
{!isMajor && }
diff --git a/packages/website/src/pages/[...locale]/embed/[embed]/host/index.astro b/packages/website/src/pages/[...locale]/embed/[embed]/host/index.astro
index a3e79ec72..00fb8f464 100644
--- a/packages/website/src/pages/[...locale]/embed/[embed]/host/index.astro
+++ b/packages/website/src/pages/[...locale]/embed/[embed]/host/index.astro
@@ -1,11 +1,11 @@
---
-import EmbedLayout from '../../../../../layouts/EmbedLayout.astro';
-import type { getStaticPaths } from '../index.astro';
-import { Page } from './_index';
+import EmbedLayout from "../../../../../layouts/EmbedLayout.astro";
+import type { getStaticPaths } from "../index.astro";
+import { Page } from "./_index";
-export { getStaticPaths } from '../index.astro';
+export { getStaticPaths } from "../index.astro";
-const { locale } = Astro.params;
+const { locale } = Astro.props;
---
diff --git a/packages/website/src/pages/[...locale]/embed/[embed]/index.astro b/packages/website/src/pages/[...locale]/embed/[embed]/index.astro
index f1b8d7da6..85c9e5c26 100644
--- a/packages/website/src/pages/[...locale]/embed/[embed]/index.astro
+++ b/packages/website/src/pages/[...locale]/embed/[embed]/index.astro
@@ -1,11 +1,11 @@
---
-import { AstroSeo } from '@astrolib/seo';
-import type { GetStaticPaths } from 'astro';
-import { capitalize } from 'lodash-es';
-import { embedConfigurations } from '../../../../constants/embeds';
-import BaseLayout from '../../../../layouts/BaseLayout.astro';
-import { getStaticPaths as parentGetStaticPaths } from '../index.astro';
-import { Page } from './_index';
+import { AstroSeo } from "@astrolib/seo";
+import type { GetStaticPaths } from "astro";
+import { capitalize } from "lodash-es";
+import { embedConfigurations } from "../../../../constants/embeds";
+import BaseLayout from "../../../../layouts/BaseLayout.astro";
+import { getStaticPaths as parentGetStaticPaths } from "../index.astro";
+import { Page } from "./_index";
export const getStaticPaths = (() => {
const parentPaths = parentGetStaticPaths();
@@ -17,7 +17,7 @@ export const getStaticPaths = (() => {
...parent.params,
embed: embed as keyof typeof embedConfigurations,
},
- })),
+ }))
)
.flat();
}) satisfies GetStaticPaths;
@@ -25,7 +25,7 @@ export const getStaticPaths = (() => {
const name = capitalize(Astro.params.embed);
const title = `BlitzKit - ${name} embed`;
const description = `BlitzKit ${name} embeds for streaming World of Tanks Blitz with extreme customization`;
-const { locale } = Astro.params;
+const { locale } = Astro.props;
---
-
+
diff --git a/packages/website/src/pages/[...locale]/embed/index.astro b/packages/website/src/pages/[...locale]/embed/index.astro
index 640d6e6a5..13ff94238 100644
--- a/packages/website/src/pages/[...locale]/embed/index.astro
+++ b/packages/website/src/pages/[...locale]/embed/index.astro
@@ -5,9 +5,9 @@ import { Page } from "./_index";
export { getStaticPaths } from "../index.astro";
-const { locale } = Astro.params;
+const { locale } = Astro.props;
---
-
+
diff --git a/packages/website/src/pages/[...locale]/gallery/index.astro b/packages/website/src/pages/[...locale]/gallery/index.astro
index 06a7c5bac..b0ccfcfd1 100644
--- a/packages/website/src/pages/[...locale]/gallery/index.astro
+++ b/packages/website/src/pages/[...locale]/gallery/index.astro
@@ -6,10 +6,10 @@ import { Page } from "./_index";
export { getStaticPaths } from "../index.astro";
-const { locale } = Astro.params;
+const { locale } = Astro.props;
---
-
+
diff --git a/packages/website/src/pages/[...locale]/guess/index.astro b/packages/website/src/pages/[...locale]/guess/index.astro
index 3708bf7fc..6e79b61d5 100644
--- a/packages/website/src/pages/[...locale]/guess/index.astro
+++ b/packages/website/src/pages/[...locale]/guess/index.astro
@@ -4,10 +4,10 @@ import { Page } from "./_index";
export { getStaticPaths } from "../index.astro";
-const { locale } = Astro.params;
+const { locale } = Astro.props;
---
-
+
diff --git a/packages/website/src/pages/[...locale]/index.astro b/packages/website/src/pages/[...locale]/index.astro
index 2052067c1..8fe4eb0f3 100644
--- a/packages/website/src/pages/[...locale]/index.astro
+++ b/packages/website/src/pages/[...locale]/index.astro
@@ -16,8 +16,8 @@ import BaseLayout from "../../layouts/BaseLayout.astro";
const MAX_TOOLS_PER_ROW = 2;
const PUBLIC_ASSET_BRANCH = assertSecret(import.meta.env.PUBLIC_BRANCH);
-const locale = Astro.params.locale ?? locales.default;
-const strings = getStrings(Astro.params.locale);
+const { locale } = Astro.props;
+const strings = getStrings(locale);
const rows: Tool[][] = [];
for (const id in tools) {
@@ -42,8 +42,8 @@ export const getStaticPaths = (() => {
return [
...locales.supported
.filter(({ locale }) => locale !== locales.default)
- .map(({ locale }) => ({ params: { locale } })),
- { params: { locale: undefined } },
+ .map(({ locale }) => ({ params: { locale }, props: { locale } })),
+ { params: { locale: undefined }, props: { locale: locales.default } },
];
}) satisfies GetStaticPaths;
---
@@ -61,7 +61,7 @@ export const getStaticPaths = (() => {
twitter={{ cardType: "summary_large_image" }}
/>
-
+
diff --git a/packages/website/src/layouts/LegacyRedirect.astro b/packages/website/src/layouts/LegacyRedirect.astro
index a72a9dac4..d9fb5f038 100644
--- a/packages/website/src/layouts/LegacyRedirect.astro
+++ b/packages/website/src/layouts/LegacyRedirect.astro
@@ -1,18 +1,19 @@
---
-import { getStrings } from '../core/i18n/getStrings';
+import locales from "@blitzkit/i18n/locales.json";
+import { getStrings } from "../core/i18n/getStrings";
export interface Props {
path: string;
+ locale: string;
}
-const { path } = Astro.props;
-const { locale } = Astro.params;
+const { path, locale } = Astro.props;
const strings = getStrings(locale);
-const resolvedPath = `/${locale === undefined ? '' : `${locale}/`}${path}`;
+const resolvedPath = `/${locale === locales.default ? "" : `${locale}/`}${path}`;
---
-
+
@@ -22,15 +23,15 @@ const resolvedPath = `/${locale === undefined ? '' : `${locale}/`}${path}`;