monkeytype/frontend/vite-plugins/version-file.ts
2025-11-12 16:54:56 +01:00

20 lines
632 B
TypeScript

import { Plugin } from "vite";
import path from "node:path";
import { existsSync, mkdirSync, writeFileSync } from "node:fs";
export function versionFile(options: { clientVersion: string }): Plugin {
return {
name: "generate-version-json",
apply: "build",
closeBundle() {
const distPath = path.resolve("./dist");
if (!existsSync(distPath)) {
mkdirSync(distPath, { recursive: true });
}
const versionJson = JSON.stringify({ version: options.clientVersion });
const versionPath = path.resolve(distPath, "version.json");
writeFileSync(versionPath, versionJson);
},
};
}