UNPKG

@freik/node-utils

Version:

My personal set of utilities for NodeJS

2 lines (1 loc) 1.51 kB
var l=Object.create;var c=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,O=Object.prototype.hasOwnProperty;var R=(s,t)=>{for(var n in t)c(s,n,{get:t[n],enumerable:!0})},d=(s,t,n,p)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of y(t))!O.call(s,r)&&r!==n&&c(s,r,{get:()=>t[r],enumerable:!(p=f(t,r))||p.enumerable});return s};var h=(s,t,n)=>(n=s!=null?l(g(s)):{},d(t||!s||!s.__esModule?c(n,"default",{value:s,enumerable:!0}):n,s)),m=s=>d(c({},"__esModule",{value:!0}),s);var W={};R(W,{spawnAsync:()=>S,spawnRes:()=>b,spawnResAsync:()=>P});module.exports=m(W);var u=h(require("child_process"));async function S(s,t,n){return new Promise((r,w)=>{const e={output:[],stdout:"",stderr:"",signal:null,status:null},i=t?u.spawn(s,t,n):u.spawn(s,n);if(!i.stdout)return{error:"no stdout"};if(i.stdout.on("data",o=>{e.stdout=e.stdout.toString()+o.toString()}),!i.stderr)return{error:"no stderr"};i.stderr.on("data",o=>{e.stderr=e.stderr.toString()+o.toString()}),i.on("close",(o,a)=>{a?w(a):(e.status=o,e.signal=a,e.output=["",e.stdout.toString(),e.stderr.toString()],r(e))}),i.on("error",o=>{w(o)})})}function b(s,t,n){t||(t=[]);let p=n;p?p.cwd||(p.cwd=process.cwd()):p={cwd:process.cwd()};const r=t?u.spawnSync(s,t,p):u.spawnSync(s,p);return!r.error&&!r.status}async function P(s,t,n){t||(t=[]);let p=n;p?p.cwd||(p.cwd=process.cwd()):p={cwd:process.cwd(),stdio:["pipe","pipe","pipe"]};const r=await S(s,t,n);return!r.error&&!r.status}