Skip to content

Commit 9488f51

Browse files
committed
feat: update url based on table
1 parent 37ba292 commit 9488f51

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

Diff for: ui/src/routes/tables.lazy.tsx

+12-3
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,11 @@ import {
66
TableProperties,
77
Table as TableIcon,
88
} from "lucide-react";
9+
import { z } from "zod";
910
import DataGrid from "react-data-grid";
1011
import { CodeBlock } from "react-code-blocks";
1112
import { useInfiniteQuery, useQuery } from "@tanstack/react-query";
12-
import { createFileRoute } from "@tanstack/react-router";
13+
import { Link, createFileRoute } from "@tanstack/react-router";
1314

1415
import { fetchTable, fetchTables, fetchTableData } from "@/api";
1516

@@ -21,17 +22,25 @@ export const Route = createFileRoute("/tables")({
2122
component: Tables,
2223
loader: () => fetchTables(),
2324
pendingComponent: TablesSkeleton,
25+
validateSearch: z.object({ table: z.string().optional() }),
2426
});
2527

2628
function Tables() {
2729
const data = Route.useLoaderData();
30+
const { table } = Route.useSearch();
31+
32+
const tab = table
33+
? data.tables.findIndex(({ name }) => name === table).toString()
34+
: "0";
2835

2936
return (
30-
<Tabs defaultValue="0">
37+
<Tabs defaultValue={tab}>
3138
<TabsList>
3239
{data.tables.map((n, i) => (
3340
<TabsTrigger key={i} value={i.toString()}>
34-
{n.name} ({n.count.toLocaleString()})
41+
<Link search={{ table: n.name }}>
42+
{n.name} ({n.count.toLocaleString()})
43+
</Link>
3544
</TabsTrigger>
3645
))}
3746
</TabsList>

0 commit comments

Comments
 (0)