import { z } from "zod" import { defineVersion } from "verzod" import { V0_SCHEMA } from "./0" export const V1_SCHEMA = z.object({ v: z.literal(1), id: z.string(), name: z.string(), variables: z.array( z.union([ z.object({ key: z.string(), secret: z.literal(true), }), z.object({ key: z.string(), value: z.string(), secret: z.literal(false).catch(false), }), ]) ), }) export default defineVersion({ initial: false, schema: V1_SCHEMA, up(old: z.infer) { const result: z.infer = { ...old, v: 1, id: old.id ?? "", variables: old.variables.map((variable) => { return { ...variable, secret: false, } }), } return result }, })