From 980627b6757b8bcfd70c67cd235d0e725fb470e1 Mon Sep 17 00:00:00 2001 From: Tyler Date: Sun, 21 Jun 2026 15:09:31 -0600 Subject: [PATCH] =?UTF-8?q?feat(providers):=20directory=20cards=20drillabl?= =?UTF-8?q?e=20=E2=80=94=20opens=20ProviderDrawer?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/Providers.tsx | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/pages/Providers.tsx b/src/pages/Providers.tsx index 5d2477f..e3af419 100644 --- a/src/pages/Providers.tsx +++ b/src/pages/Providers.tsx @@ -3,12 +3,15 @@ import { Skeleton } from "@/components/ui/skeleton"; import { EmptyState } from "@/components/ui/empty-state"; import { ErrorState } from "@/components/ui/error-state"; import { PageHeader } from "@/components/PageHeader"; +import { ProviderDrawer } from "@/components/ProviderDrawer"; +import { useProviderDrawerUrlState } from "@/hooks/useProviderDrawerUrlState"; import { useProviders } from "@/hooks/useProviders"; import { fmt } from "@/lib/format"; export function Providers() { const { data, isLoading, isError, error, refetch } = useProviders(); const items = data?.items ?? []; + const { providerNpi, open, close } = useProviderDrawerUrlState(); return (
@@ -44,7 +47,14 @@ export function Providers() { {items.map((p) => (
open(p.npi)} + onKeyDown={(e) => { + if (e.key === "Enter") open(p.npi); + }} + role="button" + tabIndex={0} + aria-label={`View provider ${p.name}`} + className="group drillable surface-2 rounded-xl p-5 flex flex-col gap-4 transition-colors hover:bg-muted/20 cursor-pointer" >
@@ -91,6 +101,8 @@ export function Providers() { ))}
)} + +
); }