Files
blitzkit/packages/website/src/components/Performance/PlayerCountControl.tsx
T

37 lines
1.2 KiB
TypeScript
Raw Normal View History

2024-07-12 13:53:11 -05:00
import { Flex, Select, Text } from '@radix-ui/themes';
2024-10-21 21:03:49 -05:00
import {
TankPerformanceEphemeral,
2024-10-22 15:08:23 -05:00
type PlayerCountPeriod,
2024-10-21 21:03:49 -05:00
} from '../../stores/tankPerformanceEphemeral';
2024-07-12 13:53:11 -05:00
export function PlayerCountControl() {
2024-10-21 21:03:49 -05:00
const playerCountPeriod = TankPerformanceEphemeral.use(
2024-07-12 13:53:11 -05:00
(state) => state.playerCountPeriod,
);
2024-10-21 21:03:49 -05:00
const mutateTankPerformanceSort = TankPerformanceEphemeral.useMutation();
2024-07-12 13:53:11 -05:00
return (
<Flex justify="center" align="center" gap="2">
<Text>Player count</Text>
<Select.Root
value={playerCountPeriod}
onValueChange={(period) => {
mutateTankPerformanceSort((draft) => {
draft.playerCountPeriod = period as PlayerCountPeriod;
});
}}
>
<Select.Trigger />
<Select.Content>
2024-10-22 15:08:23 -05:00
<Select.Item value="total">Total</Select.Item>
<Select.Item value="d_120">Past 120 days</Select.Item>
<Select.Item value="d_90">Past 90 days</Select.Item>
<Select.Item value="d_60">Past 60 days</Select.Item>
<Select.Item value="d_30">This month</Select.Item>
<Select.Item value="d_7">This week</Select.Item>
<Select.Item value="d_1">Yesterday</Select.Item>
2024-07-12 13:53:11 -05:00
</Select.Content>
</Select.Root>
</Flex>
);
}