@jspm/generator
Version:
Package Import Map Generation Tool
22 lines (20 loc) • 710 B
JavaScript
import * as json from "../common/json.js";
// @ts-ignore
import { readFileSync, writeFileSync } from "fs";
export async function updatePjson(resolver, pjsonBase, updateFn) {
const pjsonUrl = new URL("package.json", pjsonBase);
let input;
try {
input = readFileSync(pjsonUrl).toString();
} catch (e) {
input = "{}\n";
}
let { json: pjson, style } = json.parseStyled(input);
pjson = await updateFn(pjson) || pjson;
const output = json.stringifyStyled(pjson, style);
if (output === input) return false;
writeFileSync(pjsonUrl, json.stringifyStyled(pjson, style));
resolver.pcfgs[pjsonBase] = pjson;
return true;
}
//# sourceMappingURL=pjson.js.map