ci: add script to prune package.json for release

This commit is contained in:
Eric Liu 2024-11-09 14:30:27 -08:00
commit 37c8100d52
2 changed files with 38 additions and 8 deletions

26
scripts/build-package.js Normal file
View file

@ -0,0 +1,26 @@
const fs = require("node:fs");
const path = require("node:path");
const packagePath = path.join(process.cwd(), "package.json");
const package = JSON.parse(fs.readFileSync(packagePath, "utf8"));
const keys_to_remove = ["prettier", "standard-version", "devDependencies"];
const scripts_to_keep = ["postinstall"];
for (const key of keys_to_remove) {
delete package[key];
}
if (package.scripts) {
const preserved_scripts = {};
for (const script of scripts_to_keep) {
if (package.scripts[script]) {
preserved_scripts[script] = package.scripts[script];
}
}
package.scripts = preserved_scripts;
}
fs.writeFileSync(packagePath, JSON.stringify(package, null, 2) + "\n");