import { z } from 'zod'

export const productSchema = z.object({
  name: z.string().trim().min(1, 'Naam is verplicht').max(200, 'Maximaal 200 tekens'),
  code: z.string().trim().max(20, 'Maximaal 20 tekens').optional(),
  description: z.string().max(4000, 'Maximaal 4000 tekens').optional(),
  repo_url: z
    .string()
    .url('Voer een geldige URL in (inclusief https://)')
    .regex(/^https:\/\/github\.com\//, 'Alleen GitHub-URLs worden ondersteund')
    .optional()
    .nullable()
    .or(z.literal('')),
  definition_of_done: z.string().max(4000, 'Maximaal 4000 tekens').optional(),
  auto_pr: z.boolean(),
})

export type ProductInput = z.infer<typeof productSchema>
