feat(media): add enrichment metadata fields across admin and public
This commit is contained in:
@@ -12,10 +12,14 @@ describe("media schemas", () => {
|
||||
const parsed = createMediaAssetInputSchema.parse({
|
||||
type: "artwork",
|
||||
title: "Artwork",
|
||||
licenseType: "CC BY",
|
||||
usageContext: "homepage hero",
|
||||
capturedAt: new Date("2026-01-02T10:30:00.000Z"),
|
||||
tags: ["tag-a"],
|
||||
})
|
||||
|
||||
expect(parsed.type).toBe("artwork")
|
||||
expect(parsed.licenseType).toBe("CC BY")
|
||||
expect(parsed.tags).toEqual(["tag-a"])
|
||||
})
|
||||
|
||||
|
||||
@@ -20,6 +20,11 @@ export const createMediaAssetInputSchema = z.object({
|
||||
source: z.string().max(500).optional(),
|
||||
copyright: z.string().max(500).optional(),
|
||||
author: z.string().max(180).optional(),
|
||||
licenseType: z.string().max(120).optional(),
|
||||
licenseUrl: z.string().max(500).optional(),
|
||||
usageContext: z.string().max(300).optional(),
|
||||
location: z.string().max(180).optional(),
|
||||
capturedAt: z.date().optional(),
|
||||
tags: z.array(z.string().min(1).max(100)).default([]),
|
||||
storageKey: z.string().max(500).optional(),
|
||||
mimeType: z.string().max(180).optional(),
|
||||
@@ -38,6 +43,11 @@ export const updateMediaAssetInputSchema = z.object({
|
||||
source: z.string().max(500).nullable().optional(),
|
||||
copyright: z.string().max(500).nullable().optional(),
|
||||
author: z.string().max(180).nullable().optional(),
|
||||
licenseType: z.string().max(120).nullable().optional(),
|
||||
licenseUrl: z.string().max(500).nullable().optional(),
|
||||
usageContext: z.string().max(300).nullable().optional(),
|
||||
location: z.string().max(180).nullable().optional(),
|
||||
capturedAt: z.date().nullable().optional(),
|
||||
tags: z.array(z.string().min(1).max(100)).optional(),
|
||||
mimeType: z.string().max(180).nullable().optional(),
|
||||
width: z.number().int().positive().nullable().optional(),
|
||||
|
||||
Reference in New Issue
Block a user