package-preview
Version:
Creates a production preview of a package
33 lines • 1.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const spawn = require("cross-spawn");
function npmPack(dependencyPath) {
return new Promise((resolve, reject) => {
const proc = spawn('npm', ['pack', '--ignore-scripts'], {
cwd: dependencyPath,
});
let stdout = '';
let stderr = '';
proc.stdout.on('data', (data) => {
stdout += data.toString();
});
proc.stderr.on('data', (data) => {
stderr += data.toString();
});
proc.on('error', reject);
proc.on('close', (code) => {
if (code > 0) {
console.log(stdout);
console.log(stderr);
return reject(new Error('Exit code ' + code));
}
// The last line contains the generated tgz filename
stdout = stdout.trim();
const parts = stdout.split('\n');
const tgzFilename = parts[parts.length - 1];
return resolve(tgzFilename);
});
});
}
exports.default = npmPack;
//# sourceMappingURL=npmPack.js.map