Files
MosaicIQ/scripts/rebuild-better-sqlite3.mjs

32 lines
995 B
JavaScript

import { spawnSync } from "node:child_process";
import { rmSync } from "node:fs";
import { dirname } from "node:path";
import { createRequire } from "node:module";
const target = process.argv[2];
if (target !== "node" && target !== "electron") {
console.error("Usage: node scripts/rebuild-better-sqlite3.mjs <node|electron>");
process.exit(1);
}
if (target === "electron") {
const result = spawnSync("pnpm", ["exec", "electron-rebuild", "-f", "-w", "better-sqlite3"], {
stdio: "inherit",
});
process.exit(result.status ?? 1);
}
const requireFromShared = createRequire(new URL("../packages/shared/package.json", import.meta.url));
const packageJsonPath = requireFromShared.resolve("better-sqlite3/package.json");
const packageDir = dirname(packageJsonPath);
rmSync(new URL("build", `file://${packageDir}/`), { recursive: true, force: true });
const result = spawnSync("pnpm", ["run", "install"], {
cwd: packageDir,
stdio: "inherit",
});
process.exit(result.status ?? 1);