--- import { AstroSeo } from "@astrolib/seo"; import { assertSecret } from "@blitzkit/core"; import locales from "@blitzkit/i18n/locales.json"; import { literals } from "@blitzkit/i18n/src/literals"; import { Box, Flex, Link } from "@radix-ui/themes"; import type { GetStaticPaths } from "astro"; import { AesonPlug } from "../../components/AesonPlug"; import HomeHero from "../../components/HomeHero.astro"; import { Plugs } from "../../components/Plugs"; import ToolCard from "../../components/ToolCard.astro"; import { tools, type Tool } from "../../constants/tools"; import { getStrings } from "../../core/i18n/getStrings"; 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.props; const strings = getStrings(locale); const rows: Tool[][] = []; for (const id in tools) { const tool = tools[id]; if ("disabled" in tool && tool.disabled) continue; const compatibleRow = rows.find( (row) => row.length < MAX_TOOLS_PER_ROW && !("significant" in row[0] && row[0].significant) ); if (compatibleRow) { compatibleRow.push(tool); } else { rows.push([tool]); } } export const getStaticPaths = (() => { return [ ...locales.supported .filter(({ locale }) => locale !== locales.default) .map(({ locale }) => ({ params: { locale }, props: { locale } })), { params: { locale: undefined }, props: { locale: locales.default } }, ]; }) satisfies GetStaticPaths; --- { locale !== locales.default && ( {literals(strings.website.home.help_translate, { name: "BlitzKit", language: strings.common.locales[ locale as keyof typeof strings.common.locales ], })} ) } { PUBLIC_ASSET_BRANCH === "preview" && ( ) } { rows.map((row) => ( {row.map((tool) => ( ))} {row.length < MAX_TOOLS_PER_ROW && !("significant" in row[0] && row[0].significant) && ( )} )) }