feat: sort

This commit is contained in:
tresabhi committed 2024-11-25 14:11:53 -06:00
1 parent 62d4ec07f0
commit bae1e944b7
5 files changed
+50 -32

No files matched your search

@@ -1,23 +1,35 @@
import { fetchTankDefinitions } from '@blitzkit/core';
import {
fetchGameDefinitions,
fetchTankDefinitions,
metaSortTank,
} from '@blitzkit/core';
import { useStore } from '@nanostores/react';
import { useMemo } from 'react';
import { filterTank } from '../../core/blitzkit/filterTank';
import { $tankFilters } from '../../stores/tankFilters';
import { TankCardWrapper } from '../TankSearch/components/TankCardWrapper';
import { TierListTile } from './Tile';
const tankDefinitions = await fetchTankDefinitions();
const gameDefinitions = await fetchGameDefinitions();
const tanks = Object.values(tankDefinitions.tanks);
export function TierListTiles() {
const filters = useStore($tankFilters);
const sorted = useMemo(
() =>
metaSortTank(
tanks.filter((tank) => filterTank(filters, tank)),
gameDefinitions,
).reverse(),
[filters],
);
return (
<TankCardWrapper>
{tanks
.filter((tank) => filterTank(filters, tank))
.map((tank, tileIndex) => (
<TierListTile key={tank.id} tank={tank} />
))}
{sorted.map((tank) => (
<TierListTile key={tank.id} tank={tank} />
))}
</TankCardWrapper>
);
}