From 53cf41d0fd473731f06347d8b0016b046eaf8338 Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Sat, 18 Apr 2026 23:26:11 +0000 Subject: [PATCH 1/4] Changes Co-authored-by: renee-png <262607627+renee-png@users.noreply.github.com> --- src/lib/forms-shared.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/lib/forms-shared.ts b/src/lib/forms-shared.ts index 2749753..6c7400b 100644 --- a/src/lib/forms-shared.ts +++ b/src/lib/forms-shared.ts @@ -331,12 +331,13 @@ export interface CaseLite { id: string; case_number: string; title: string; + client_id: string | null; } export async function fetchAccessibleCases(): Promise { const { data } = await supabase .from("cases") - .select("id,case_number,title") + .select("id,case_number,title,client_id") .is("archived_at", null) .order("opened_at", { ascending: false }) .limit(500); From 46285fc47499db15f69000d1b8f9191181f4dd80 Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Sat, 18 Apr 2026 23:26:26 +0000 Subject: [PATCH 2/4] Changes Co-authored-by: renee-png <262607627+renee-png@users.noreply.github.com> --- src/components/forms/client-case-picker.tsx | 98 +++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 src/components/forms/client-case-picker.tsx diff --git a/src/components/forms/client-case-picker.tsx b/src/components/forms/client-case-picker.tsx new file mode 100644 index 0000000..1ca4bbe --- /dev/null +++ b/src/components/forms/client-case-picker.tsx @@ -0,0 +1,98 @@ +import { useEffect, useMemo, useState } from "react"; +import { + Select, + SelectContent, + SelectItem, + SelectTrigger, + SelectValue, +} from "@/components/ui/select"; +import { Label } from "@/components/ui/label"; +import { + fetchClients, + fetchAccessibleCases, + type ClientLite, + type CaseLite, +} from "@/lib/forms-shared"; + +export function ClientCasePicker({ + clientId, + caseId, + onClientChange, + onCaseChange, +}: { + clientId: string; + caseId: string; + onClientChange: (id: string, client: ClientLite | null) => void; + onCaseChange: (id: string, kase: CaseLite | null) => void; +}) { + const [clients, setClients] = useState([]); + const [cases, setCases] = useState([]); + + useEffect(() => { + fetchClients().then(setClients); + fetchAccessibleCases().then(setCases); + }, []); + + const filteredCases = useMemo(() => { + if (!clientId) return []; + return cases.filter((c) => c.client_id === clientId); + }, [cases, clientId]); + + return ( +
+
+ + +
+
+ + +
+
+ ); +} From 61e48c766872701d2c05a39fc55f26d0ef54053c Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Sat, 18 Apr 2026 23:26:39 +0000 Subject: [PATCH 3/4] Changes Co-authored-by: renee-png <262607627+renee-png@users.noreply.github.com> --- src/components/forms/custom-form-builder.tsx | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/components/forms/custom-form-builder.tsx b/src/components/forms/custom-form-builder.tsx index e53229a..103bc2c 100644 --- a/src/components/forms/custom-form-builder.tsx +++ b/src/components/forms/custom-form-builder.tsx @@ -54,7 +54,7 @@ import { Square, ImagePlus, } from "lucide-react"; -import { ClientHomeownerPicker } from "./form-pickers"; +import { ClientCasePicker } from "./client-case-picker"; import { FormFieldDefsDialog } from "./form-field-defs-dialog"; import { FormFieldsFillPanel } from "./form-fields-fill-panel"; import { @@ -1417,18 +1417,23 @@ export function CustomFormBuilder() { - { setClientId(id); setClient(c); + setSelectedCaseId(""); + setHomeownerId(""); + setHomeowner(null); }} - onHomeownerChange={(id, h) => { - setHomeownerId(id); - setHomeowner(h); + onCaseChange={(id) => { + setSelectedCaseId(id); }} /> + {cases.length === 0 && clientId && ( +

Loading cases…

+ )}
From af5a7c3e34fb669ec22976e82eed2a98d191fa53 Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Sat, 18 Apr 2026 23:26:47 +0000 Subject: [PATCH 4/4] Changes Co-authored-by: renee-png <262607627+renee-png@users.noreply.github.com> --- src/components/forms/custom-form-builder.tsx | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/components/forms/custom-form-builder.tsx b/src/components/forms/custom-form-builder.tsx index 103bc2c..d534700 100644 --- a/src/components/forms/custom-form-builder.tsx +++ b/src/components/forms/custom-form-builder.tsx @@ -1431,9 +1431,6 @@ export function CustomFormBuilder() { setSelectedCaseId(id); }} /> - {cases.length === 0 && clientId && ( -

Loading cases…

- )}