import { z } from "zod/v4"; import { WorkProfileInputSchema } from "../api/domain/work-profile-values"; export type { WorkProfileInput } from "../api/domain/work-profile-values"; export { WorkProfileInputSchema }; export const ProfileParamsSchema = z.strictObject({ companyId: z.uuid() }); export const ProfileItemParamsSchema = ProfileParamsSchema.extend({ id: z.uuid() }); export const SaveWorkProfileRequestSchema = z.strictObject({ values: WorkProfileInputSchema }); export const WorkProfileSchema = z.strictObject({ id: z.uuid(), companyId: z.uuid(), values: WorkProfileInputSchema, needsReview: z.boolean(), history: z .array( z.strictObject({ id: z.uuid(), values: WorkProfileInputSchema, actorId: z.uuid(), actorName: z.string().min(1), recordedAt: z.iso.datetime(), }) ) .min(1), }); export const WorkProfilesResponseSchema = z.strictObject({ profiles: z.array(WorkProfileSchema) }); export const WorkProfileResponseSchema = z.strictObject({ profile: WorkProfileSchema }); export type WorkProfileDTO = z.infer;