From 33d0d0f0c51d3bae443ce7884f660ede4aed0e72 Mon Sep 17 00:00:00 2001 From: Collin Barrett <6483057+collinbarrett@users.noreply.github.com> Date: Sun, 29 Jun 2025 19:50:36 -0500 Subject: [PATCH] feat(web): WIP add list details sheet --- web/package-lock.json | Bin 343298 -> 345296 bytes web/package.json | 1 + web/src/app/@sheet/(.)lists/[listId]/page.tsx | 17 +++ web/src/app/@sheet/default.tsx | 3 + web/src/app/layout.tsx | 3 + web/src/app/lists/[listId]/page.tsx | 26 ++++ .../components/filterlist-table/columns.tsx | 19 ++- web/src/components/sheet-content-renderer.tsx | 42 ++++++ web/src/components/ui/sheet.tsx | 139 ++++++++++++++++++ 9 files changed, 248 insertions(+), 2 deletions(-) create mode 100644 web/src/app/@sheet/(.)lists/[listId]/page.tsx create mode 100644 web/src/app/@sheet/default.tsx create mode 100644 web/src/app/lists/[listId]/page.tsx create mode 100644 web/src/components/sheet-content-renderer.tsx create mode 100644 web/src/components/ui/sheet.tsx diff --git a/web/package-lock.json b/web/package-lock.json index f43461d95c8a9bd59432614b8235b645da6eb893..770bede35adc285fe64ddf304ab3409b689e4773 100644 GIT binary patch delta 8809 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 delta 8335 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 diff --git a/web/package.json b/web/package.json index f496d8a56..ffbb140b9 100644 --- a/web/package.json +++ b/web/package.json @@ -11,6 +11,7 @@ "dependencies": { "@azure/monitor-opentelemetry": "^1.11.1", "@opentelemetry/exporter-jaeger": "^2.0.1", + "@radix-ui/react-dialog": "^1.1.14", "@radix-ui/react-dropdown-menu": "^2.1.15", "@radix-ui/react-slot": "^1.2.3", "@radix-ui/react-tooltip": "^1.2.7", diff --git a/web/src/app/@sheet/(.)lists/[listId]/page.tsx b/web/src/app/@sheet/(.)lists/[listId]/page.tsx new file mode 100644 index 000000000..9f505ccf1 --- /dev/null +++ b/web/src/app/@sheet/(.)lists/[listId]/page.tsx @@ -0,0 +1,17 @@ +import { + getFilterListDetails, + FilterListDetails, +} from "@/services/get-filterlist-details"; +import { SheetContentRenderer } from "@/components/sheet-content-renderer"; + +export default async function InterceptedListDetailsPage({ + params, +}: { + params: Promise<{ listId: string }>; +}) { + const { listId: rawListId } = await params; + const listId = parseInt(rawListId, 10); + const list: FilterListDetails = await getFilterListDetails(listId); + + return ; +} diff --git a/web/src/app/@sheet/default.tsx b/web/src/app/@sheet/default.tsx new file mode 100644 index 000000000..6ddf1b76f --- /dev/null +++ b/web/src/app/@sheet/default.tsx @@ -0,0 +1,3 @@ +export default function Default() { + return null; +} diff --git a/web/src/app/layout.tsx b/web/src/app/layout.tsx index b0eb9be14..dbb94f558 100644 --- a/web/src/app/layout.tsx +++ b/web/src/app/layout.tsx @@ -17,8 +17,10 @@ const geistMono = Geist_Mono({ export default function RootLayout({ children, + sheet, }: Readonly<{ children: React.ReactNode; + sheet: React.ReactNode; }>) { return ( @@ -37,6 +39,7 @@ export default function RootLayout({ >
{children}
+ {sheet}