feat: separate armors

This commit is contained in:
tresabhi committed 2025-03-20 11:59:24 -05:00
1 parent 30b18f60be
commit e60bbc03d2
31 files changed
+1387 -690

No files matched your search

@@ -0,0 +1,38 @@
import { PageWrapper } from '../../../../components/PageWrapper';
import { PerformanceInfo } from '../../../../components/Performance/PerformanceInfo';
import { PlayerCountControl } from '../../../../components/Performance/PlayerCountControl';
import { TankTable } from '../../../../components/Performance/Table';
import { FilterControl } from '../../../../components/TankSearch/components/FilterControl';
import {
LocaleProvider,
type LocaleAcceptorProps,
} from '../../../../hooks/useLocale';
import { TankPerformanceEphemeral } from '../../../../stores/tankPerformanceEphemeral';
import { TankPerformanceSort } from '../../../../stores/tankPerformanceSort';
import type { MaybeSkeletonComponentProps } from '../../../../types/maybeSkeletonComponentProps';
type PageProps = MaybeSkeletonComponentProps & LocaleAcceptorProps;
export function Page({ skeleton, locale }: PageProps) {
return (
<LocaleProvider locale={locale}>
<TankPerformanceSort.Provider>
<TankPerformanceEphemeral.Provider>
<Content skeleton={skeleton} />
</TankPerformanceEphemeral.Provider>
</TankPerformanceSort.Provider>
</LocaleProvider>
);
}
function Content({ skeleton }: MaybeSkeletonComponentProps) {
return (
<PageWrapper color="jade" maxWidth="100%">
<PerformanceInfo skeleton={skeleton} />
<FilterControl />
<PlayerCountControl />
<TankTable skeleton={skeleton} />
</PageWrapper>
);
}
@@ -0,0 +1,18 @@
---
import ToolOpenGraph from '../../../../components/ToolOpenGraph.astro';
import { performanceTool } from '../../../../constants/tools';
import BaseLayout from '../../../../layouts/BaseLayout.astro';
import { Page } from './_index';
export { getStaticPaths } from '../../index.astro';
const { locale } = Astro.params;
---
<ToolOpenGraph tool={performanceTool} />
<BaseLayout noFooter>
<Page client:only="react" {locale}>
<Page skeleton slot="fallback" {locale} />
</Page>
</BaseLayout>