gear-orders/flask/vite/src/SubOrderSets.tsx

36 lines
893 B
TypeScript
Raw Normal View History

2026-01-29 22:23:20 +00:00
import { Container, Title } from "@mantine/core";
2026-01-29 21:30:51 +00:00
import React from "react";
import { Link, Params, useLoaderData, useParams } from "react-router";
export const subOrderSetsLoader = async ({
params: { username },
}: {
params: Params<string>;
}) => fetch(`/api/subs/${username}/sets`).then((response) => response.json());
export const SubOrderSets: React.FC = () => {
const { username: sub_username } = useParams();
const orders = useLoaderData<
{
id: number;
name: string;
orders: Pick<OrderSet, "id" | "name">[];
}[]
>();
return (
<Container>
2026-01-29 22:23:20 +00:00
<Title order={1} mb="lg">
Orders for {sub_username}
</Title>
{orders
? orders.map(({ id, name }) => (
<Link key={id} to={`/dashboard/subs/${sub_username}/${id}`}>
{name}
</Link>
))
: null}
2026-01-29 21:30:51 +00:00
</Container>
);
};