import { z, defineCollection } from 'astro:content' // Individual TA entries const entry = z.object({ title: z.string(), link: z.string().url(), date: z.string().transform((str) => new Date(str)), servant: z.string(), turns: z.string(), runner: z.string(), }) // Individual quest info block const quest = z.object({ questTitle: z.string(), description: z.string(), data: z.array(entry) }) // Basic info block for page const info = z.object({ title: z.string(), releaseDate: z.string().transform((str) => new Date(str)), shortdescription: z.string(), releaseNumber: z.number().default(1), }) // Combined ta data collection schema const taData = defineCollection({ type: 'data', schema: z.object({ info: info, quests: z.array(quest), }), }) export const collections = { taInfoData: taData, }