UNPKG

@paroicms/cli

Version:
61 lines 2.3 kB
import { rename, writeFile } from "node:fs/promises"; import { join } from "node:path"; export async function migrateFrom6To7(directory, oldSchema) { const newSchema = { ...oldSchema, }; newSchema.version = "7"; if (oldSchema.nodeTypes) { newSchema.nodeTypes = oldSchema.nodeTypes.map((nodeType) => { if (nodeType.kind === "site") return nodeType; if (nodeType.kind === "document") { let { typeName, kind, documentKind, route, redirectTo, ogType, disableFeaturedImage, fields, ...rest } = nodeType; fields = fields?.map((field) => { if (typeof field === "string") return field; const { name, storedOn, ...rest } = field; return { name, localized: storedOn === "nodel", ...rest, }; }); return { typeName, kind, documentKind, route, redirectTo, ogType, withFeaturedImage: !disableFeaturedImage, fields, ...rest, }; } if (nodeType.kind === "part") { let { typeName, kind, fields, ...rest } = nodeType; fields = fields?.map((field) => { if (typeof field === "string") return field; const { name, storedOn, ...rest } = field; return { name, localized: storedOn === "nodel", ...rest, }; }); return { typeName, kind, fields, ...rest, }; } }); } await rename(join(directory, "site-schema.json"), join(directory, "site-schema-v6.json")); await writeFile(join(directory, "site-schema.json"), JSON.stringify(newSchema, undefined, 2)); return newSchema; } //# sourceMappingURL=site-schema-migration-6-to-7.js.map