snyk-nodejs-lockfile-parser
Version:
Generate a dep tree given a lockfile
32 lines • 1.46 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.rewriteAliases = exports.rewriteAliasesPkgJson = void 0;
const util_1 = require("../dep-graph-builders/util");
const rewriteAliasesPkgJson = (packageJsonContent) => {
const pkgJsonPreprocessed = (0, util_1.parsePkgJson)(packageJsonContent);
pkgJsonPreprocessed.dependencies = (0, exports.rewriteAliases)(pkgJsonPreprocessed.dependencies);
pkgJsonPreprocessed.devDependencies = (0, exports.rewriteAliases)(pkgJsonPreprocessed.devDependencies);
pkgJsonPreprocessed.optionalDependencies = (0, exports.rewriteAliases)(pkgJsonPreprocessed.optionalDependencies);
pkgJsonPreprocessed.peerDependencies = (0, exports.rewriteAliases)(pkgJsonPreprocessed.peerDependencies);
return JSON.stringify(pkgJsonPreprocessed);
};
exports.rewriteAliasesPkgJson = rewriteAliasesPkgJson;
const rewriteAliases = (dependencies) => {
if (!dependencies) {
return undefined;
}
const newDependencies = {};
for (const key in dependencies) {
const value = dependencies[key];
if (value.startsWith('npm:')) {
newDependencies[value.substring(4, value.lastIndexOf('@'))] =
value.substring(value.lastIndexOf('@') + 1, value.length);
}
else {
newDependencies[key] = value;
}
}
return newDependencies;
};
exports.rewriteAliases = rewriteAliases;
//# sourceMappingURL=pkgJson.js.map
;