diff --git a/.taskmaster/tasks/tasks.json b/.taskmaster/tasks/tasks.json index f190bf1..16dc144 100644 --- a/.taskmaster/tasks/tasks.json +++ b/.taskmaster/tasks/tasks.json @@ -834,13 +834,13 @@ "description": "Port new case wizard, bulk upload, inline forms on case detail. Use react-hook-form + zod with schemas in lib/schemas/.ts. Build shared from shadcn Card + Progress + Tabs. Build (react-dropzone + shadcn). Integrate SSE for upload progress via lib/sse.ts. Plan: ~/.claude/plans/joyful-marinating-sutton.md.", "details": "See full plan at ~/.claude/plans/joyful-marinating-sutton.md for architecture, critical files, risks, and open questions. This task is phase 4 of 7 in the legal-ai UI rewrite from vanilla HTML to Next.js 15 + shadcn/ui.", "testStrategy": "Users can create a new case via the multi-step wizard (case appears in Gitea + Paperclip), upload documents with live SSE progress, and edit case fields inline.", - "status": "in-progress", + "status": "done", "dependencies": [ "85" ], "priority": "medium", "subtasks": [], - "updatedAt": "2026-04-11T16:18:28.714Z" + "updatedAt": "2026-04-11T16:25:55.569Z" }, { "id": "87", @@ -884,9 +884,9 @@ ], "metadata": { "version": "1.0.0", - "lastModified": "2026-04-11T16:18:28.714Z", + "lastModified": "2026-04-11T16:25:55.570Z", "taskCount": 58, - "completedCount": 52, + "completedCount": 53, "tags": [ "master" ] diff --git a/web-ui/src/components/cases/case-header.tsx b/web-ui/src/components/cases/case-header.tsx index 8966990..2a9c137 100644 --- a/web-ui/src/components/cases/case-header.tsx +++ b/web-ui/src/components/cases/case-header.tsx @@ -55,10 +55,6 @@ export function CaseHeader({ data }: { data?: CaseDetail }) { עודכן
{formatDate(data?.updated_at)}
-
- ועדה -
-
{data?.committee_type ?? "—"}
diff --git a/web-ui/src/components/wizard/case-wizard.tsx b/web-ui/src/components/wizard/case-wizard.tsx index 30b89fe..88700d6 100644 --- a/web-ui/src/components/wizard/case-wizard.tsx +++ b/web-ui/src/components/wizard/case-wizard.tsx @@ -16,7 +16,7 @@ import { import { PartiesField } from "@/components/wizard/parties-field"; import { useCreateCase } from "@/lib/api/cases"; import { - caseCreateSchema, committeeTypes, expectedOutcomes, + caseCreateSchema, expectedOutcomes, type CaseCreateInput, } from "@/lib/schemas/case"; @@ -31,7 +31,7 @@ type StepKey = (typeof STEPS)[number]["key"]; /* Fields validated at each step — lets the user fix just what's on screen * before moving forward, instead of surfacing all errors from page 1. */ const STEP_FIELDS: Record = { - basics: ["case_number", "title", "committee_type"], + basics: ["case_number", "title"], parties: ["appellants", "respondents"], details: ["subject", "hearing_date", "expected_outcome", "notes", "property_address", "permit_number"], }; @@ -57,7 +57,6 @@ export function CaseWizard() { subject: "", property_address: "", permit_number: "", - committee_type: "ועדה מקומית", hearing_date: "", notes: "", expected_outcome: "", @@ -137,25 +136,6 @@ export function CaseWizard() { -
- - ( - - )} - /> -
)} diff --git a/web-ui/src/lib/schemas/case.ts b/web-ui/src/lib/schemas/case.ts index 022342c..d5d2386 100644 --- a/web-ui/src/lib/schemas/case.ts +++ b/web-ui/src/lib/schemas/case.ts @@ -24,12 +24,6 @@ const dateString = z message: "תאריך חייב להיות בפורמט YYYY-MM-DD", }); -export const committeeTypes = [ - "ועדה מקומית", - "ועדה מחוזית", - "ועדת ערר", -] as const; - export const expectedOutcomes = [ { value: "", label: "— לא נקבע —" }, { value: "rejection", label: "דחייה" }, @@ -54,7 +48,6 @@ export const caseCreateSchema = z.object({ subject: z.string().trim().max(500), property_address: z.string().trim().max(200), permit_number: z.string().trim().max(100), - committee_type: z.enum(committeeTypes), hearing_date: dateString, notes: z.string().trim().max(2000), expected_outcome: z.enum(