fix(garden): accept relative urls for plant image uploads

Zod v4 changed .url() to use the WHATWG URL spec, which rejects relative
paths like /api/uploads/... that our upload API returns. Relax image URL
validators to z.string().min(1) since these are internal paths.
This commit is contained in:
ginnoir
2026-06-02 18:15:12 -05:00
parent 272d3cbbe6
commit 4049a73c6b
+3 -3
View File
@@ -118,8 +118,8 @@ const plantInput = z.object({
fertilizingNotes: z.string().trim().max(2000).nullable().optional(),
notes: z.string().trim().max(2000).nullable().optional(),
acquisitionDate: z.string().nullable().optional(),
images: z.array(z.string().url()).max(10).default([]),
primaryImageUrl: z.string().url().nullable().optional(),
images: z.array(z.string().min(1)).max(10).default([]),
primaryImageUrl: z.string().min(1).nullable().optional(),
});
export async function createPlant(input: z.input<typeof plantInput>) {
@@ -230,7 +230,7 @@ export async function deletePlant(input: { id: string }) {
}
export async function addPlantImage(input: { id: string; url: string }) {
const parsed = z.object({ id: z.string().uuid(), url: z.string().url() }).parse(input);
const parsed = z.object({ id: z.string().uuid(), url: z.string().min(1) }).parse(input);
const { household } = await getCurrentSession();
await assertCanAccessPlant(parsed.id, household.id);