import { z, defineCollection } from 'astro:content' // Una notizia ha una data di pubblicazione ma non ha un autore in quanto sono // notizie generiche sul PHC e non sono scritte da un autore specifico const newsCollection = defineCollection({ type: 'content', schema: z.object({ title: z.string(), description: z.string(), publishDate: z.date(), image: z .object({ url: z.string(), alt: z.string(), }) .optional(), }), }) // Una guida ha un autore ma non ha una data di pubblicazione in quanto è un // contenuto statico e non è importante sapere quando è stata pubblicata const guidesCollection = defineCollection({ type: 'content', schema: z.object({ id: z.string(), title: z.string(), description: z.string(), series: z.string().optional(), tags: z.array(z.string()), }), }) // Per ora sono su un sito a parte ma prima o poi verranno migrati qui const seminariettiCollection = defineCollection({ type: 'content', schema: z.object({ title: z.string(), description: z.string(), author: z.string(), publishDate: z.date(), eventDate: z.date(), tags: z.array(z.string()), }), }) // Export a single `collections` object to register your collection(s) export const collections = { news: newsCollection, guides: guidesCollection, seminarietti: seminariettiCollection, }