diff --git a/src/models/licenseSchema.ts b/src/models/licenseSchema.ts new file mode 100644 index 0000000000000000000000000000000000000000..54d6f478deaa1ceb00cf3e8665e9aa939798f59e --- /dev/null +++ b/src/models/licenseSchema.ts @@ -0,0 +1,7 @@ +import { z } from 'zod'; + +export const licenseSchema = z.object({ + id: z.number().int().positive(), + name: z.string(), + content: z.string(), +}); diff --git a/src/models/projectSchema.ts b/src/models/projectSchema.ts index ab00d3b824d4501f070c205e2756b54bb02fadf8..5bfb36349d73705bf5ea3a82536ed9154b2dc221 100644 --- a/src/models/projectSchema.ts +++ b/src/models/projectSchema.ts @@ -1,4 +1,5 @@ import { z } from 'zod'; +import { licenseSchema } from '@/models/licenseSchema'; import { disease } from './disease'; import { organism } from './organism'; import { overviewImageView } from './overviewImageView'; @@ -23,4 +24,7 @@ export const projectSchema = z.object({ creationDate: z.string(), overviewImageViews: z.array(overviewImageView), topOverviewImage: overviewImageView.nullable(), + license: z.optional(licenseSchema), + customLicenseName: z.string().nullable(), + customLicenseUrl: z.string().nullable(), });