mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-23 19:49:50 +02:00
feat: more groups
This commit is contained in:
1 parent
4a9fc65e71
commit
821bd363ad
11 files changed
+160
-18
No files matched your search
@@ -75,13 +75,22 @@
|
|||||||
"name": "Guesser",
|
"name": "Guesser",
|
||||||
"slogan": "Silhouette mini-game",
|
"slogan": "Silhouette mini-game",
|
||||||
"action": "Play"
|
"action": "Play"
|
||||||
|
},
|
||||||
|
"changelogs": {
|
||||||
|
"name": "Changelogs",
|
||||||
|
"slogan": "BlitzKit patch notes",
|
||||||
|
"action": "Read up"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
"home": {
|
"home": {
|
||||||
"search": "Search tanks, players, avatars...",
|
"search": "Search tanks, players, avatars...",
|
||||||
"credit": "by TrèsAbhi",
|
"credit": "by TrèsAbhi",
|
||||||
"tanks": "Tanks"
|
"tanks": "Tanks",
|
||||||
|
"players": "Players",
|
||||||
|
"cosmetics": "Cosmetics",
|
||||||
|
"games": "Games",
|
||||||
|
"technical": "Technical"
|
||||||
},
|
},
|
||||||
|
|
||||||
"avatars": {
|
"avatars": {
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 187 KiB |
@@ -19,6 +19,8 @@ export const LIGHT_TEXT_COLORS = new Set<Color>([
|
|||||||
"brown",
|
"brown",
|
||||||
"crimson",
|
"crimson",
|
||||||
"jade",
|
"jade",
|
||||||
|
"blue",
|
||||||
|
"tomato",
|
||||||
]);
|
]);
|
||||||
|
|
||||||
export function Button({
|
export function Button({
|
||||||
@@ -33,7 +35,7 @@ export function Button({
|
|||||||
className={classNames(styles.button, className)}
|
className={classNames(styles.button, className)}
|
||||||
data-color={color}
|
data-color={color}
|
||||||
data-variant={variant}
|
data-variant={variant}
|
||||||
data-light-text={color ? LIGHT_TEXT_COLORS.has(color) : undefined}
|
data-light-text={variant === "solid"}
|
||||||
style={{
|
style={{
|
||||||
backgroundColor: color ? `var(--${color}-9)` : undefined,
|
backgroundColor: color ? `var(--${color}-9)` : undefined,
|
||||||
...style,
|
...style,
|
||||||
|
|||||||
@@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
import { api } from "../core/api/dynamic";
|
||||||
|
import { tools } from "../core/tools/tools";
|
||||||
|
import { Heading } from "./Heading";
|
||||||
|
import { Section } from "./Section";
|
||||||
|
import ToolCard from "./ToolCard.astro";
|
||||||
|
import ToolsWrapper from "./ToolsWrapper.astro";
|
||||||
|
|
||||||
|
interface Props {
|
||||||
|
locale: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
const { locale } = Astro.props;
|
||||||
|
|
||||||
|
const strings = await api.strings(locale);
|
||||||
|
---
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.title {
|
||||||
|
margin-bottom: var(--space-3);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<Section>
|
||||||
|
<Heading size="2" className="title">{strings.home.cosmetics}</Heading>
|
||||||
|
|
||||||
|
<ToolsWrapper>
|
||||||
|
<ToolCard {locale} tool={tools.avatars} />
|
||||||
|
<ToolCard {locale} tool={tools.backgrounds} />
|
||||||
|
</ToolsWrapper>
|
||||||
|
</Section>
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
import { api } from "../core/api/dynamic";
|
||||||
|
import { tools } from "../core/tools/tools";
|
||||||
|
import { Heading } from "./Heading";
|
||||||
|
import { Section } from "./Section";
|
||||||
|
import ToolCard from "./ToolCard.astro";
|
||||||
|
import ToolsWrapper from "./ToolsWrapper.astro";
|
||||||
|
|
||||||
|
interface Props {
|
||||||
|
locale: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
const { locale } = Astro.props;
|
||||||
|
|
||||||
|
const strings = await api.strings(locale);
|
||||||
|
---
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.title {
|
||||||
|
margin-bottom: var(--space-3);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<Section>
|
||||||
|
<Heading size="2" className="title">{strings.home.games}</Heading>
|
||||||
|
|
||||||
|
<ToolsWrapper>
|
||||||
|
<ToolCard {locale} tool={tools.mixer} />
|
||||||
|
<ToolCard {locale} tool={tools.guesser} />
|
||||||
|
</ToolsWrapper>
|
||||||
|
</Section>
|
||||||
@@ -79,6 +79,10 @@ const strings = await api.strings(locale);
|
|||||||
letter-spacing: -0.15em;
|
letter-spacing: -0.15em;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.name {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.search {
|
.search {
|
||||||
@@ -100,7 +104,7 @@ const strings = await api.strings(locale);
|
|||||||
<Code className="version">2.0</Code>
|
<Code className="version">2.0</Code>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<Text lowContrast>
|
<Text className="name" lowContrast>
|
||||||
{strings.home.credit}
|
{strings.home.credit}
|
||||||
</Text>
|
</Text>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -0,0 +1,32 @@
|
|||||||
|
---
|
||||||
|
import { api } from "../core/api/dynamic";
|
||||||
|
import { tools } from "../core/tools/tools";
|
||||||
|
import { Heading } from "./Heading";
|
||||||
|
import { Section } from "./Section";
|
||||||
|
import ToolCard from "./ToolCard.astro";
|
||||||
|
import ToolsWrapper from "./ToolsWrapper.astro";
|
||||||
|
|
||||||
|
interface Props {
|
||||||
|
locale: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
const { locale } = Astro.props;
|
||||||
|
|
||||||
|
const strings = await api.strings(locale);
|
||||||
|
---
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.title {
|
||||||
|
margin-bottom: var(--space-3);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<Section>
|
||||||
|
<Heading size="2" className="title">{strings.home.players}</Heading>
|
||||||
|
|
||||||
|
<ToolsWrapper>
|
||||||
|
<ToolCard {locale} tool={tools.players} />
|
||||||
|
<ToolCard {locale} tool={tools.session} />
|
||||||
|
<ToolCard {locale} tool={tools.playlist} />
|
||||||
|
</ToolsWrapper>
|
||||||
|
</Section>
|
||||||
File renamed without changes.
@@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
import { api } from "../core/api/dynamic";
|
||||||
|
import { tools } from "../core/tools/tools";
|
||||||
|
import { Heading } from "./Heading";
|
||||||
|
import { Section } from "./Section";
|
||||||
|
import ToolCard from "./ToolCard.astro";
|
||||||
|
import ToolsWrapper from "./ToolsWrapper.astro";
|
||||||
|
|
||||||
|
interface Props {
|
||||||
|
locale: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
const { locale } = Astro.props;
|
||||||
|
|
||||||
|
const strings = await api.strings(locale);
|
||||||
|
---
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.title {
|
||||||
|
margin-bottom: var(--space-3);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<Section>
|
||||||
|
<Heading size="2" className="title">{strings.home.technical}</Heading>
|
||||||
|
|
||||||
|
<ToolsWrapper>
|
||||||
|
<ToolCard {locale} tool={tools.api} />
|
||||||
|
<ToolCard {locale} tool={tools.changelogs} />
|
||||||
|
</ToolsWrapper>
|
||||||
|
</Section>
|
||||||
@@ -84,4 +84,11 @@ export const tools: Record<string, Tool> = {
|
|||||||
accent: "brown",
|
accent: "brown",
|
||||||
banner_background_position: "bottom",
|
banner_background_position: "bottom",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
changelogs: {
|
||||||
|
id: "changelogs",
|
||||||
|
|
||||||
|
accent: "gray",
|
||||||
|
banner_background_position: "bottom",
|
||||||
|
},
|
||||||
};
|
};
|
||||||
@@ -2,11 +2,12 @@
|
|||||||
import locales from "@blitzkit/i18n/locales.json";
|
import locales from "@blitzkit/i18n/locales.json";
|
||||||
import type { GetStaticPaths } from "astro";
|
import type { GetStaticPaths } from "astro";
|
||||||
import ColorScale from "../../components/ColorScale.astro";
|
import ColorScale from "../../components/ColorScale.astro";
|
||||||
|
import HomeCosmetics from "../../components/HomeCosmetics.astro";
|
||||||
|
import HomeGames from "../../components/HomeGames.astro";
|
||||||
import HomeHero from "../../components/HomeHero.astro";
|
import HomeHero from "../../components/HomeHero.astro";
|
||||||
import { Section } from "../../components/Section";
|
import HomePlayers from "../../components/HomePlayers.astro";
|
||||||
import TanksCard from "../../components/TanksCard.astro";
|
import HomeTanks from "../../components/HomeTanks.astro";
|
||||||
import ToolCard from "../../components/ToolCard.astro";
|
import HomeTechnical from "../../components/HomeTechnical.astro";
|
||||||
import ToolsWrapper from "../../components/ToolsWrapper.astro";
|
|
||||||
import { tools } from "../../core/tools/tools";
|
import { tools } from "../../core/tools/tools";
|
||||||
import BaseLayout from "../../layouts/BaseLayout.astro";
|
import BaseLayout from "../../layouts/BaseLayout.astro";
|
||||||
|
|
||||||
@@ -27,15 +28,9 @@ const { locale } = Astro.props;
|
|||||||
|
|
||||||
{Object.values(tools).map((tool) => <ColorScale color={tool.accent} />)}
|
{Object.values(tools).map((tool) => <ColorScale color={tool.accent} />)}
|
||||||
|
|
||||||
<!-- <RecentItems {locale} client:only="react">
|
<HomeTanks {locale} />
|
||||||
<RecentItems {locale} skeleton slot="fallback" />
|
<HomePlayers {locale} />
|
||||||
</RecentItems> -->
|
<HomeGames {locale} />
|
||||||
|
<HomeCosmetics {locale} />
|
||||||
<TanksCard {locale} />
|
<HomeTechnical {locale} />
|
||||||
|
|
||||||
<Section>
|
|
||||||
<ToolsWrapper>
|
|
||||||
{Object.values(tools).map((tool) => <ToolCard {locale} {tool} />)}
|
|
||||||
</ToolsWrapper>
|
|
||||||
</Section>
|
|
||||||
</BaseLayout>
|
</BaseLayout>
|
||||||
Reference in new issue
Block a user