import type PocketBase from "pocketbase"; /** Add the optional JSON field used by the collaborative project planner. */ export async function ensureProjectPlanDataField(pb: PocketBase): Promise { const projects = await pb.collections.getOne("projects"); if (projects.fields.some((field: { name: string }) => field.name === "plan_data")) { return false; } await pb.collections.update(projects.id, { fields: [ ...(projects.fields as unknown[]), { name: "plan_data", type: "json", required: false, maxSize: 400_000, presentable: false, hidden: false, system: false, }, ], }); return true; }