import { mkdir, writeFile } from "node:fs/promises"; import path from "node:path"; import { fileURLToPath } from "node:url"; import { createManifest } from "./manifest.mjs"; const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); const projectRoot = path.resolve(__dirname, ".."); const releaseDir = path.join(projectRoot, "release"); const releaseManifest = createManifest({ target: "release" }); const latestVersion = process.env.LATEST_VERSION ?? releaseManifest.version; const publicBaseUrl = process.env.UPDATE_PUBLIC_BASE_URL ?? `https://example.com/star-chart-search-enhancer/releases/${latestVersion}`; const latestManifest = { guideUrl: `${publicBaseUrl}/星图增强插件-超简单安装使用指南.pdf`, latestVersion, minSupportedVersion: releaseManifest.version, publishedAt: new Date().toISOString().slice(0, 10), releaseNotes: [ "支持在插件弹窗中检查新版本", "支持一键下载最新版插件压缩包和使用说明" ], zipUrl: `${publicBaseUrl}/star-chart-search-enhancer-internal.zip` }; await mkdir(releaseDir, { recursive: true }); await writeFile( path.join(releaseDir, "latest.json"), `${JSON.stringify(latestManifest, null, 2)}\n`, "utf8" ); console.log(`Update manifest written to ${path.join(releaseDir, "latest.json")}`);