UNPKG

react-native-builder-bob

Version:

CLI to build JavaScript files for React Native libraries

41 lines 1.33 kB
import crossSpawn from 'cross-spawn'; export const spawn = async (...args) => { return new Promise((resolve, reject) => { const child = crossSpawn(...args); let stdout = ''; let stderr = ''; child.stdout?.setEncoding('utf8'); child.stdout?.on('data', (data) => { stdout += data; }); child.stderr?.setEncoding('utf8'); child.stderr?.on('data', (data) => { stderr += data; }); child.once('error', reject); child.once('close', (code) => { if (code === 0) { resolve(stdout.trim()); } else { const error = new Error(stderr.trim() || `Command exited with code ${String(code)}`); Object.defineProperties(error, { stdout: { enumerable: false, value: stdout, }, stderr: { enumerable: false, value: stderr, }, code: { enumerable: false, value: code, }, }); reject(error); } }); }); }; //# sourceMappingURL=spawn.js.map