cross-spawn-cb 2.1.25 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.d.cts +3 -3
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/{index.cjs → index.js} +2 -2
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/lib/crossSpawn.d.cts +2 -0
- package/dist/cjs/lib/crossSpawnCompat.d.cts +9 -0
- package/dist/cjs/lib/spawnSyncPolyfill.cjs +1 -1
- package/dist/cjs/lib/spawnSyncPolyfill.cjs.map +1 -1
- package/dist/cjs/lib/spawnSyncPolyfill.d.cts +2 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/spawn.d.cts +2 -2
- package/dist/{esm/spawn.d.mts → cjs/spawn.d.ts} +2 -2
- package/dist/cjs/{spawn.cjs → spawn.js} +2 -2
- package/dist/cjs/spawn.js.map +1 -0
- package/dist/cjs/spawnSync.d.cts +1 -1
- package/dist/{esm/spawnSync.d.mts → cjs/spawnSync.d.ts} +1 -1
- package/dist/cjs/{spawnSync.cjs → spawnSync.js} +1 -1
- package/dist/cjs/spawnSync.js.map +1 -0
- package/dist/cjs/workers/async.d.cts +1 -1
- package/dist/{esm/workers/async.d.mts → cjs/workers/async.d.ts} +1 -1
- package/dist/cjs/workers/{async.cjs → async.js} +1 -1
- package/dist/cjs/workers/async.js.map +1 -0
- package/dist/cjs/workers/sync.d.cts +1 -1
- package/dist/{esm/workers/sync.d.mts → cjs/workers/sync.d.ts} +1 -1
- package/dist/cjs/workers/{sync.cjs → sync.js} +1 -1
- package/dist/cjs/workers/sync.js.map +1 -0
- package/dist/esm/constants.d.ts +1 -0
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/lib/crossSpawn.d.cts +2 -0
- package/dist/esm/lib/crossSpawnCompat.d.cts +9 -0
- package/dist/esm/lib/spawnSyncPolyfill.cjs +1 -1
- package/dist/esm/lib/spawnSyncPolyfill.cjs.map +1 -1
- package/dist/esm/lib/spawnSyncPolyfill.d.cts +2 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/spawn.d.ts +9 -0
- package/dist/esm/{spawn.mjs → spawn.js} +2 -2
- package/dist/esm/spawn.js.map +1 -0
- package/dist/esm/spawnSync.d.ts +6 -0
- package/dist/esm/{spawnSync.mjs → spawnSync.js} +1 -1
- package/dist/esm/spawnSync.js.map +1 -0
- package/dist/esm/types.d.ts +12 -0
- package/dist/esm/workers/async.d.ts +2 -0
- package/dist/esm/workers/{async.mjs → async.js} +1 -1
- package/dist/esm/workers/async.js.map +1 -0
- package/dist/esm/workers/sync.d.ts +2 -0
- package/dist/esm/workers/{sync.mjs → sync.js} +1 -1
- package/dist/esm/workers/sync.js.map +1 -0
- package/package.json +4 -4
- package/dist/cjs/index.cjs.map +0 -1
- package/dist/cjs/spawn.cjs.map +0 -1
- package/dist/cjs/spawnSync.cjs.map +0 -1
- package/dist/cjs/workers/async.cjs.map +0 -1
- package/dist/cjs/workers/sync.cjs.map +0 -1
- package/dist/esm/index.d.mts +0 -4
- package/dist/esm/index.mjs +0 -3
- package/dist/esm/index.mjs.map +0 -1
- package/dist/esm/spawn.mjs.map +0 -1
- package/dist/esm/spawnSync.mjs.map +0 -1
- package/dist/esm/workers/async.mjs.map +0 -1
- package/dist/esm/workers/sync.mjs.map +0 -1
- /package/dist/{esm/constants.d.mts → cjs/constants.d.ts} +0 -0
- /package/dist/cjs/{constants.cjs → constants.js} +0 -0
- /package/dist/cjs/{constants.cjs.map → constants.js.map} +0 -0
- /package/dist/{esm/types.d.mts → cjs/types.d.ts} +0 -0
- /package/dist/cjs/{types.cjs → types.js} +0 -0
- /package/dist/cjs/{types.cjs.map → types.js.map} +0 -0
- /package/dist/esm/{constants.mjs → constants.js} +0 -0
- /package/dist/esm/{constants.mjs.map → constants.js.map} +0 -0
- /package/dist/esm/{types.mjs → types.js} +0 -0
- /package/dist/esm/{types.mjs.map → types.js.map} +0 -0
package/dist/cjs/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type * from './types';
|
|
2
|
-
export { default } from './spawn';
|
|
3
|
-
export { default as sync } from './spawnSync';
|
|
1
|
+
export type * from './types.js';
|
|
2
|
+
export { default } from './spawn.js';
|
|
3
|
+
export { default as sync } from './spawnSync.js';
|
|
4
4
|
export { default as crossSpawn } from './lib/crossSpawn.cjs';
|
|
@@ -19,8 +19,8 @@ _export(exports, {
|
|
|
19
19
|
return _spawnSync.default;
|
|
20
20
|
}
|
|
21
21
|
});
|
|
22
|
-
var _spawn = /*#__PURE__*/ _interop_require_default(require("./spawn.
|
|
23
|
-
var _spawnSync = /*#__PURE__*/ _interop_require_default(require("./spawnSync.
|
|
22
|
+
var _spawn = /*#__PURE__*/ _interop_require_default(require("./spawn.js"));
|
|
23
|
+
var _spawnSync = /*#__PURE__*/ _interop_require_default(require("./spawnSync.js"));
|
|
24
24
|
var _crossSpawncjs = /*#__PURE__*/ _interop_require_default(require("./lib/crossSpawn.cjs"));
|
|
25
25
|
function _interop_require_default(obj) {
|
|
26
26
|
return obj && obj.__esModule ? obj : {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/index.ts"],"sourcesContent":["export type * from './types.js';\nexport { default } from './spawn.js';\nexport { default as sync } from './spawnSync.js';\nexport { default as crossSpawn } from './lib/crossSpawn.cjs';\n"],"names":["crossSpawn","default","sync"],"mappings":";;;;;;;;;;;IAGoBA,UAAU;eAAVA,sBAAU;;IAFrBC,OAAO;eAAPA,cAAO;;IACIC,IAAI;eAAJA,kBAAI;;;4DADA;gEACQ;oEACM"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export = spawn;
|
|
2
|
+
declare function spawn(command: any, args: any, options: any): cp.ChildProcessWithoutNullStreams;
|
|
3
|
+
declare namespace spawn {
|
|
4
|
+
export { spawn, spawnSync as sync, parse as _parse, enoent as _enoent };
|
|
5
|
+
}
|
|
6
|
+
import cp = require("child_process");
|
|
7
|
+
declare function spawnSync(command: any, args: any, options: any): any;
|
|
8
|
+
declare function parse(command: any, args: any, options: any): any;
|
|
9
|
+
declare const enoent: any;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var path = require('path');
|
|
3
|
-
var workerPath = path.join(__dirname, '..', '..', 'cjs', 'spawn.
|
|
3
|
+
var workerPath = path.join(__dirname, '..', '..', 'cjs', 'spawn.js');
|
|
4
4
|
var functionExec = null; // break dependencies
|
|
5
5
|
module.exports = function spawnSyncPolyfill(cmd, args, options) {
|
|
6
6
|
if (!functionExec) functionExec = require('function-exec-sync');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/lib/spawnSyncPolyfill.cjs"],"sourcesContent":["const path = require('path');\n\nconst workerPath = path.join(__dirname, '..', '..', 'cjs', 'spawn.
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/lib/spawnSyncPolyfill.cjs"],"sourcesContent":["const path = require('path');\n\nconst workerPath = path.join(__dirname, '..', '..', 'cjs', 'spawn.js');\n\nlet functionExec = null; // break dependencies\nmodule.exports = function spawnSyncPolyfill(cmd, args, options) {\n if (!functionExec) functionExec = require('function-exec-sync');\n return functionExec({ callbacks: true }, workerPath, cmd, args, options || {});\n};\n"],"names":["path","require","workerPath","join","__dirname","functionExec","module","exports","spawnSyncPolyfill","cmd","args","options","callbacks"],"mappings":";AAAA,IAAMA,OAAOC,QAAQ;AAErB,IAAMC,aAAaF,KAAKG,IAAI,CAACC,WAAW,MAAM,MAAM,OAAO;AAE3D,IAAIC,eAAe,MAAM,qBAAqB;AAC9CC,OAAOC,OAAO,GAAG,SAASC,kBAAkBC,GAAG,EAAEC,IAAI,EAAEC,OAAO;IAC5D,IAAI,CAACN,cAAcA,eAAeJ,QAAQ;IAC1C,OAAOI,aAAa;QAAEO,WAAW;IAAK,GAAGV,YAAYO,KAAKC,MAAMC,WAAW,CAAC;AAC9E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "type": "commonjs" }
|
package/dist/cjs/spawn.d.cts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import spawnSync from './spawnSync';
|
|
1
|
+
import spawnSync from './spawnSync.js';
|
|
2
2
|
import type { SpawnCallback, SpawnOptions, SpawnResult } from './types';
|
|
3
3
|
declare function spawn(command: string, args: string[], options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback): undefined | Promise<SpawnResult>;
|
|
4
4
|
declare namespace spawn {
|
|
5
|
-
var worker: typeof import("./workers/async").default;
|
|
5
|
+
var worker: typeof import("./workers/async.js").default;
|
|
6
6
|
var sync: typeof spawnSync;
|
|
7
7
|
var crossSpawn: any;
|
|
8
8
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import spawnSync from './spawnSync';
|
|
1
|
+
import spawnSync from './spawnSync.js';
|
|
2
2
|
import type { SpawnCallback, SpawnOptions, SpawnResult } from './types';
|
|
3
3
|
declare function spawn(command: string, args: string[], options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback): undefined | Promise<SpawnResult>;
|
|
4
4
|
declare namespace spawn {
|
|
5
|
-
var worker: typeof import("./workers/async").default;
|
|
5
|
+
var worker: typeof import("./workers/async.js").default;
|
|
6
6
|
var sync: typeof spawnSync;
|
|
7
7
|
var crossSpawn: any;
|
|
8
8
|
}
|
|
@@ -9,8 +9,8 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _crossSpawncjs = /*#__PURE__*/ _interop_require_default(require("./lib/crossSpawn.cjs"));
|
|
12
|
-
var _spawnSync = /*#__PURE__*/ _interop_require_default(require("./spawnSync.
|
|
13
|
-
var _async = /*#__PURE__*/ _interop_require_default(require("./workers/async.
|
|
12
|
+
var _spawnSync = /*#__PURE__*/ _interop_require_default(require("./spawnSync.js"));
|
|
13
|
+
var _async = /*#__PURE__*/ _interop_require_default(require("./workers/async.js"));
|
|
14
14
|
function _interop_require_default(obj) {
|
|
15
15
|
return obj && obj.__esModule ? obj : {
|
|
16
16
|
default: obj
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/spawn.ts"],"sourcesContent":["import crossSpawn from './lib/crossSpawn.cjs';\nimport spawnSync from './spawnSync.js';\nimport worker from './workers/async.js';\n\nimport type { SpawnCallback, SpawnOptions, SpawnResult } from './types';\nexport default function spawn(command: string, args: string[], options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback): undefined | Promise<SpawnResult> {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n options = options || {};\n const cp = crossSpawn(command, args, options);\n\n if (typeof callback === 'function') return worker(cp, options, callback) as undefined;\n return new Promise((resolve, reject) => worker(cp, options, (err, res) => (err ? reject(err) : resolve(res))));\n}\nspawn.worker = worker;\nspawn.sync = spawnSync;\nspawn.crossSpawn = crossSpawn;\n"],"names":["spawn","command","args","options","callback","cp","crossSpawn","worker","Promise","resolve","reject","err","res","sync","spawnSync"],"mappings":";;;;+BAKA;;;eAAwBA;;;oEALD;gEACD;4DACH;;;;;;AAGJ,SAASA,MAAMC,OAAe,EAAEC,IAAc,EAAEC,OAAsC,EAAEC,QAAwB;IAC7H,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU,CAAC;IACb;IACAA,UAAUA,WAAW,CAAC;IACtB,IAAME,KAAKC,IAAAA,sBAAU,EAACL,SAASC,MAAMC;IAErC,IAAI,OAAOC,aAAa,YAAY,OAAOG,IAAAA,cAAM,EAACF,IAAIF,SAASC;IAC/D,OAAO,IAAII,QAAQ,SAACC,SAASC;eAAWH,IAAAA,cAAM,EAACF,IAAIF,SAAS,SAACQ,KAAKC;mBAASD,MAAMD,OAAOC,OAAOF,QAAQG;;;AACzG;AACAZ,MAAMO,MAAM,GAAGA,cAAM;AACrBP,MAAMa,IAAI,GAAGC,kBAAS;AACtBd,MAAMM,UAAU,GAAGA,sBAAU"}
|
package/dist/cjs/spawnSync.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { SpawnOptions, SpawnResult } from './types';
|
|
2
2
|
declare function spawnSync(command: string, args: string[], options?: SpawnOptions): SpawnResult;
|
|
3
3
|
declare namespace spawnSync {
|
|
4
|
-
var worker: typeof import("./workers/sync").default;
|
|
4
|
+
var worker: typeof import("./workers/sync.js").default;
|
|
5
5
|
}
|
|
6
6
|
export default spawnSync;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { SpawnOptions, SpawnResult } from './types';
|
|
2
2
|
declare function spawnSync(command: string, args: string[], options?: SpawnOptions): SpawnResult;
|
|
3
3
|
declare namespace spawnSync {
|
|
4
|
-
var worker: typeof import("./workers/sync").default;
|
|
4
|
+
var worker: typeof import("./workers/sync.js").default;
|
|
5
5
|
}
|
|
6
6
|
export default spawnSync;
|
|
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _crossSpawncjs = /*#__PURE__*/ _interop_require_default(require("./lib/crossSpawn.cjs"));
|
|
12
|
-
var _sync = /*#__PURE__*/ _interop_require_default(require("./workers/sync.
|
|
12
|
+
var _sync = /*#__PURE__*/ _interop_require_default(require("./workers/sync.js"));
|
|
13
13
|
function _define_property(obj, key, value) {
|
|
14
14
|
if (key in obj) {
|
|
15
15
|
Object.defineProperty(obj, key, {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/spawnSync.ts"],"sourcesContent":["import crossSpawn from './lib/crossSpawn.cjs';\nimport worker from './workers/sync.js';\n\nimport type { SpawnOptions, SpawnResult } from './types';\n\nexport default function spawnSync(command: string, args: string[], options?: SpawnOptions): SpawnResult {\n options = options || {};\n const syncOptions = { ...options, env: options.env || process.env, stdio: 'pipe', encoding: options.encoding || 'utf8' };\n const res = crossSpawn.sync(command, args, syncOptions);\n return worker(res, options as SpawnOptions);\n}\nspawnSync.worker = worker;\n"],"names":["spawnSync","command","args","options","syncOptions","env","process","stdio","encoding","res","crossSpawn","sync","worker"],"mappings":";;;;+BAKA;;;eAAwBA;;;oEALD;2DACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIJ,SAASA,UAAUC,OAAe,EAAEC,IAAc,EAAEC,OAAsB;IACvFA,UAAUA,WAAW,CAAC;IACtB,IAAMC,cAAc,wCAAKD;QAASE,KAAKF,QAAQE,GAAG,IAAIC,QAAQD,GAAG;QAAEE,OAAO;QAAQC,UAAUL,QAAQK,QAAQ,IAAI;;IAChH,IAAMC,MAAMC,sBAAU,CAACC,IAAI,CAACV,SAASC,MAAME;IAC3C,OAAOQ,IAAAA,aAAM,EAACH,KAAKN;AACrB;AACAH,UAAUY,MAAM,GAAGA,aAAM"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { ChildProcess, SpawnCallback, SpawnOptions } from '../types';
|
|
1
|
+
import type { ChildProcess, SpawnCallback, SpawnOptions } from '../types.js';
|
|
2
2
|
export default function worker(cp: ChildProcess, options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback): void;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { ChildProcess, SpawnCallback, SpawnOptions } from '../types';
|
|
1
|
+
import type { ChildProcess, SpawnCallback, SpawnOptions } from '../types.js';
|
|
2
2
|
export default function worker(cp: ChildProcess, options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback): void;
|
|
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _onone = /*#__PURE__*/ _interop_require_default(require("on-one"));
|
|
12
|
-
var _constants = require("../constants.
|
|
12
|
+
var _constants = require("../constants.js");
|
|
13
13
|
function _interop_require_default(obj) {
|
|
14
14
|
return obj && obj.__esModule ? obj : {
|
|
15
15
|
default: obj
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/workers/async.ts"],"sourcesContent":["import oo from 'on-one';\nimport { spawnKeys } from '../constants.js';\n\nimport type { ChildProcess, SpawnCallback, SpawnError, SpawnOptions, SpawnResult } from '../types.js';\n\nfunction isError(obj) {\n return Object.prototype.toString.call(obj) === '[object Error]';\n}\n\nexport default function worker(cp: ChildProcess, options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback) {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n options = options || {};\n\n // collect output\n const res = { pid: 0, output: [], stdout: null, stderr: null, status: null, signal: null } as SpawnResult;\n const stdout: Buffer[] = [];\n const stderr: Buffer[] = [];\n if (options.encoding && cp.stdout) cp.stdout.on('data', stdout.push.bind(stdout));\n if (options.encoding && cp.stderr) cp.stderr.on('data', stderr.push.bind(stderr));\n\n // some versions of node emit both an error and close\n oo(cp, ['error', 'close'], (status, signal) => {\n if (isError(status)) {\n const err = status as SpawnError;\n if (err.code === 'OK') return; // ignore\n return callback(err);\n }\n\n // prepare result\n res.pid = cp.pid;\n res.status = status;\n res.signal = signal;\n if (options.encoding && cp.stdout) {\n res.stdout = Buffer.concat(stdout);\n if (options.encoding !== 'binary') res.stdout = res.stdout.toString(options.encoding);\n }\n if (options.encoding && cp.stderr) {\n res.stderr = Buffer.concat(stderr);\n if (options.encoding !== 'binary') res.stderr = res.stderr.toString(options.encoding);\n }\n res.output = [null, res.stdout, res.stderr];\n if (res.status === null) res.status = 0; // patch: early node on windows could return null\n\n // process errors\n const err = res.status !== 0 ? new Error(`Non-zero exit code: ${res.status}`) : null;\n if (err) {\n for (const key in res) {\n if (spawnKeys.indexOf(key) < 0) continue;\n err[key] = Buffer.isBuffer(res[key]) ? res[key].toString(options.encoding || 'utf8') : res[key];\n }\n }\n err ? callback(err as SpawnError) : callback(null, res);\n });\n\n // pipe input\n if (options.input && (typeof options.input === 'string' || Buffer.isBuffer(options.input))) {\n cp.stdin.end(options.input);\n }\n}\n"],"names":["worker","isError","obj","Object","prototype","toString","call","cp","options","callback","res","pid","output","stdout","stderr","status","signal","encoding","on","push","bind","oo","err","code","Buffer","concat","Error","key","spawnKeys","indexOf","isBuffer","input","stdin","end"],"mappings":";;;;+BASA;;;eAAwBA;;;4DATT;yBACW;;;;;;AAI1B,SAASC,QAAQC,GAAG;IAClB,OAAOC,OAAOC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACJ,SAAS;AACjD;AAEe,SAASF,OAAOO,EAAgB,EAAEC,OAAsC,EAAEC,QAAwB;IAC/G,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU,CAAC;IACb;IACAA,UAAUA,WAAW,CAAC;IAEtB,iBAAiB;IACjB,IAAME,MAAM;QAAEC,KAAK;QAAGC,QAAQ,EAAE;QAAEC,QAAQ;QAAMC,QAAQ;QAAMC,QAAQ;QAAMC,QAAQ;IAAK;IACzF,IAAMH,SAAmB,EAAE;IAC3B,IAAMC,SAAmB,EAAE;IAC3B,IAAIN,QAAQS,QAAQ,IAAIV,GAAGM,MAAM,EAAEN,GAAGM,MAAM,CAACK,EAAE,CAAC,QAAQL,OAAOM,IAAI,CAACC,IAAI,CAACP;IACzE,IAAIL,QAAQS,QAAQ,IAAIV,GAAGO,MAAM,EAAEP,GAAGO,MAAM,CAACI,EAAE,CAAC,QAAQJ,OAAOK,IAAI,CAACC,IAAI,CAACN;IAEzE,qDAAqD;IACrDO,IAAAA,cAAE,EAACd,IAAI;QAAC;QAAS;KAAQ,EAAE,SAACQ,QAAQC;QAClC,IAAIf,QAAQc,SAAS;YACnB,IAAMO,MAAMP;YACZ,IAAIO,IAAIC,IAAI,KAAK,MAAM,QAAQ,SAAS;YACxC,OAAOd,SAASa;QAClB;QAEA,iBAAiB;QACjBZ,IAAIC,GAAG,GAAGJ,GAAGI,GAAG;QAChBD,IAAIK,MAAM,GAAGA;QACbL,IAAIM,MAAM,GAAGA;QACb,IAAIR,QAAQS,QAAQ,IAAIV,GAAGM,MAAM,EAAE;YACjCH,IAAIG,MAAM,GAAGW,OAAOC,MAAM,CAACZ;YAC3B,IAAIL,QAAQS,QAAQ,KAAK,UAAUP,IAAIG,MAAM,GAAGH,IAAIG,MAAM,CAACR,QAAQ,CAACG,QAAQS,QAAQ;QACtF;QACA,IAAIT,QAAQS,QAAQ,IAAIV,GAAGO,MAAM,EAAE;YACjCJ,IAAII,MAAM,GAAGU,OAAOC,MAAM,CAACX;YAC3B,IAAIN,QAAQS,QAAQ,KAAK,UAAUP,IAAII,MAAM,GAAGJ,IAAII,MAAM,CAACT,QAAQ,CAACG,QAAQS,QAAQ;QACtF;QACAP,IAAIE,MAAM,GAAG;YAAC;YAAMF,IAAIG,MAAM;YAAEH,IAAII,MAAM;SAAC;QAC3C,IAAIJ,IAAIK,MAAM,KAAK,MAAML,IAAIK,MAAM,GAAG,GAAG,iDAAiD;QAE1F,iBAAiB;QACjB,IAAMO,OAAMZ,IAAIK,MAAM,KAAK,IAAI,IAAIW,MAAM,AAAC,uBAAiC,OAAXhB,IAAIK,MAAM,KAAM;QAChF,IAAIO,MAAK;YACP,IAAK,IAAMK,OAAOjB,IAAK;gBACrB,IAAIkB,oBAAS,CAACC,OAAO,CAACF,OAAO,GAAG;gBAChCL,IAAG,CAACK,IAAI,GAAGH,OAAOM,QAAQ,CAACpB,GAAG,CAACiB,IAAI,IAAIjB,GAAG,CAACiB,IAAI,CAACtB,QAAQ,CAACG,QAAQS,QAAQ,IAAI,UAAUP,GAAG,CAACiB,IAAI;YACjG;QACF;QACAL,OAAMb,SAASa,QAAqBb,SAAS,MAAMC;IACrD;IAEA,aAAa;IACb,IAAIF,QAAQuB,KAAK,IAAK,CAAA,OAAOvB,QAAQuB,KAAK,KAAK,YAAYP,OAAOM,QAAQ,CAACtB,QAAQuB,KAAK,CAAA,GAAI;QAC1FxB,GAAGyB,KAAK,CAACC,GAAG,CAACzB,QAAQuB,KAAK;IAC5B;AACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { SpawnOptions, SpawnResult } from '../types';
|
|
1
|
+
import type { SpawnOptions, SpawnResult } from '../types.js';
|
|
2
2
|
export default function worker(res: SpawnResult, options?: SpawnOptions): SpawnResult;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { SpawnOptions, SpawnResult } from '../types';
|
|
1
|
+
import type { SpawnOptions, SpawnResult } from '../types.js';
|
|
2
2
|
export default function worker(res: SpawnResult, options?: SpawnOptions): SpawnResult;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/workers/sync.ts"],"sourcesContent":["import { spawnKeys } from '../constants.js';\n\nimport type { SpawnOptions, SpawnResult } from '../types.js';\n\nexport default function worker(res: SpawnResult, options?: SpawnOptions): SpawnResult {\n options = options || {};\n\n // pipe if inherited\n if (res.stdout && options.stdio === 'inherit') {\n process.stdout.write(res.stdout);\n res.stdout = null;\n }\n if (res.stderr && options.stdio === 'inherit') {\n process.stderr.write(res.stderr);\n res.stderr = null;\n }\n if (res.status === null) res.status = 0; // patch: early node on windows could return null\n\n // process errors\n const err = res.status !== 0 ? new Error(`Non-zero exit code: ${res.status}`) : null;\n if (err) {\n for (const key in res) {\n if (spawnKeys.indexOf(key) < 0) continue;\n err[key] = Buffer.isBuffer(res[key]) ? res[key].toString(options.encoding || 'utf8') : res[key];\n }\n throw err;\n }\n return res;\n}\n"],"names":["worker","res","options","stdout","stdio","process","write","stderr","status","err","Error","key","spawnKeys","indexOf","Buffer","isBuffer","toString","encoding"],"mappings":";;;;+BAIA;;;eAAwBA;;;yBAJE;AAIX,SAASA,OAAOC,GAAgB,EAAEC,OAAsB;IACrEA,UAAUA,WAAW,CAAC;IAEtB,oBAAoB;IACpB,IAAID,IAAIE,MAAM,IAAID,QAAQE,KAAK,KAAK,WAAW;QAC7CC,QAAQF,MAAM,CAACG,KAAK,CAACL,IAAIE,MAAM;QAC/BF,IAAIE,MAAM,GAAG;IACf;IACA,IAAIF,IAAIM,MAAM,IAAIL,QAAQE,KAAK,KAAK,WAAW;QAC7CC,QAAQE,MAAM,CAACD,KAAK,CAACL,IAAIM,MAAM;QAC/BN,IAAIM,MAAM,GAAG;IACf;IACA,IAAIN,IAAIO,MAAM,KAAK,MAAMP,IAAIO,MAAM,GAAG,GAAG,iDAAiD;IAE1F,iBAAiB;IACjB,IAAMC,MAAMR,IAAIO,MAAM,KAAK,IAAI,IAAIE,MAAM,AAAC,uBAAiC,OAAXT,IAAIO,MAAM,KAAM;IAChF,IAAIC,KAAK;QACP,IAAK,IAAME,OAAOV,IAAK;YACrB,IAAIW,oBAAS,CAACC,OAAO,CAACF,OAAO,GAAG;YAChCF,GAAG,CAACE,IAAI,GAAGG,OAAOC,QAAQ,CAACd,GAAG,CAACU,IAAI,IAAIV,GAAG,CAACU,IAAI,CAACK,QAAQ,CAACd,QAAQe,QAAQ,IAAI,UAAUhB,GAAG,CAACU,IAAI;QACjG;QACA,MAAMF;IACR;IACA,OAAOR;AACT"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const spawnKeys: string[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/index.ts"],"sourcesContent":["export type * from './types.js';\nexport { default } from './spawn.js';\nexport { default as sync } from './spawnSync.js';\nexport { default as crossSpawn } from './lib/crossSpawn.cjs';\n"],"names":["default","sync","crossSpawn"],"mappings":"AACA,SAASA,OAAO,QAAQ,aAAa;AACrC,SAASA,WAAWC,IAAI,QAAQ,iBAAiB;AACjD,SAASD,WAAWE,UAAU,QAAQ,uBAAuB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export = spawn;
|
|
2
|
+
declare function spawn(command: any, args: any, options: any): cp.ChildProcessWithoutNullStreams;
|
|
3
|
+
declare namespace spawn {
|
|
4
|
+
export { spawn, spawnSync as sync, parse as _parse, enoent as _enoent };
|
|
5
|
+
}
|
|
6
|
+
import cp = require("child_process");
|
|
7
|
+
declare function spawnSync(command: any, args: any, options: any): any;
|
|
8
|
+
declare function parse(command: any, args: any, options: any): any;
|
|
9
|
+
declare const enoent: any;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const path = require('path');
|
|
2
|
-
const workerPath = path.join(__dirname, '..', '..', 'cjs', 'spawn.
|
|
2
|
+
const workerPath = path.join(__dirname, '..', '..', 'cjs', 'spawn.js');
|
|
3
3
|
let functionExec = null; // break dependencies
|
|
4
4
|
module.exports = function spawnSyncPolyfill(cmd, args, options) {
|
|
5
5
|
if (!functionExec) functionExec = require('function-exec-sync');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/lib/spawnSyncPolyfill.cjs"],"sourcesContent":["const path = require('path');\n\nconst workerPath = path.join(__dirname, '..', '..', 'cjs', 'spawn.
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/lib/spawnSyncPolyfill.cjs"],"sourcesContent":["const path = require('path');\n\nconst workerPath = path.join(__dirname, '..', '..', 'cjs', 'spawn.js');\n\nlet functionExec = null; // break dependencies\nmodule.exports = function spawnSyncPolyfill(cmd, args, options) {\n if (!functionExec) functionExec = require('function-exec-sync');\n return functionExec({ callbacks: true }, workerPath, cmd, args, options || {});\n};\n"],"names":["path","require","workerPath","join","__dirname","functionExec","module","exports","spawnSyncPolyfill","cmd","args","options","callbacks"],"mappings":"AAAA,MAAMA,OAAOC,QAAQ;AAErB,MAAMC,aAAaF,KAAKG,IAAI,CAACC,WAAW,MAAM,MAAM,OAAO;AAE3D,IAAIC,eAAe,MAAM,qBAAqB;AAC9CC,OAAOC,OAAO,GAAG,SAASC,kBAAkBC,GAAG,EAAEC,IAAI,EAAEC,OAAO;IAC5D,IAAI,CAACN,cAAcA,eAAeJ,QAAQ;IAC1C,OAAOI,aAAa;QAAEO,WAAW;IAAK,GAAGV,YAAYO,KAAKC,MAAMC,WAAW,CAAC;AAC9E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "type": "module" }
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import spawnSync from './spawnSync.js';
|
|
2
|
+
import type { SpawnCallback, SpawnOptions, SpawnResult } from './types';
|
|
3
|
+
declare function spawn(command: string, args: string[], options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback): undefined | Promise<SpawnResult>;
|
|
4
|
+
declare namespace spawn {
|
|
5
|
+
var worker: typeof import("./workers/async.js").default;
|
|
6
|
+
var sync: typeof spawnSync;
|
|
7
|
+
var crossSpawn: any;
|
|
8
|
+
}
|
|
9
|
+
export default spawn;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import crossSpawn from './lib/crossSpawn.cjs';
|
|
2
|
-
import spawnSync from './spawnSync.
|
|
3
|
-
import worker from './workers/async.
|
|
2
|
+
import spawnSync from './spawnSync.js';
|
|
3
|
+
import worker from './workers/async.js';
|
|
4
4
|
export default function spawn(command, args, options, callback) {
|
|
5
5
|
if (typeof options === 'function') {
|
|
6
6
|
callback = options;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/spawn.ts"],"sourcesContent":["import crossSpawn from './lib/crossSpawn.cjs';\nimport spawnSync from './spawnSync.js';\nimport worker from './workers/async.js';\n\nimport type { SpawnCallback, SpawnOptions, SpawnResult } from './types';\nexport default function spawn(command: string, args: string[], options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback): undefined | Promise<SpawnResult> {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n options = options || {};\n const cp = crossSpawn(command, args, options);\n\n if (typeof callback === 'function') return worker(cp, options, callback) as undefined;\n return new Promise((resolve, reject) => worker(cp, options, (err, res) => (err ? reject(err) : resolve(res))));\n}\nspawn.worker = worker;\nspawn.sync = spawnSync;\nspawn.crossSpawn = crossSpawn;\n"],"names":["crossSpawn","spawnSync","worker","spawn","command","args","options","callback","cp","Promise","resolve","reject","err","res","sync"],"mappings":"AAAA,OAAOA,gBAAgB,uBAAuB;AAC9C,OAAOC,eAAe,iBAAiB;AACvC,OAAOC,YAAY,qBAAqB;AAGxC,eAAe,SAASC,MAAMC,OAAe,EAAEC,IAAc,EAAEC,OAAsC,EAAEC,QAAwB;IAC7H,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU,CAAC;IACb;IACAA,UAAUA,WAAW,CAAC;IACtB,MAAME,KAAKR,WAAWI,SAASC,MAAMC;IAErC,IAAI,OAAOC,aAAa,YAAY,OAAOL,OAAOM,IAAIF,SAASC;IAC/D,OAAO,IAAIE,QAAQ,CAACC,SAASC,SAAWT,OAAOM,IAAIF,SAAS,CAACM,KAAKC,MAASD,MAAMD,OAAOC,OAAOF,QAAQG;AACzG;AACAV,MAAMD,MAAM,GAAGA;AACfC,MAAMW,IAAI,GAAGb;AACbE,MAAMH,UAAU,GAAGA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { SpawnOptions, SpawnResult } from './types';
|
|
2
|
+
declare function spawnSync(command: string, args: string[], options?: SpawnOptions): SpawnResult;
|
|
3
|
+
declare namespace spawnSync {
|
|
4
|
+
var worker: typeof import("./workers/sync.js").default;
|
|
5
|
+
}
|
|
6
|
+
export default spawnSync;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/spawnSync.ts"],"sourcesContent":["import crossSpawn from './lib/crossSpawn.cjs';\nimport worker from './workers/sync.js';\n\nimport type { SpawnOptions, SpawnResult } from './types';\n\nexport default function spawnSync(command: string, args: string[], options?: SpawnOptions): SpawnResult {\n options = options || {};\n const syncOptions = { ...options, env: options.env || process.env, stdio: 'pipe', encoding: options.encoding || 'utf8' };\n const res = crossSpawn.sync(command, args, syncOptions);\n return worker(res, options as SpawnOptions);\n}\nspawnSync.worker = worker;\n"],"names":["crossSpawn","worker","spawnSync","command","args","options","syncOptions","env","process","stdio","encoding","res","sync"],"mappings":"AAAA,OAAOA,gBAAgB,uBAAuB;AAC9C,OAAOC,YAAY,oBAAoB;AAIvC,eAAe,SAASC,UAAUC,OAAe,EAAEC,IAAc,EAAEC,OAAsB;IACvFA,UAAUA,WAAW,CAAC;IACtB,MAAMC,cAAc;QAAE,GAAGD,OAAO;QAAEE,KAAKF,QAAQE,GAAG,IAAIC,QAAQD,GAAG;QAAEE,OAAO;QAAQC,UAAUL,QAAQK,QAAQ,IAAI;IAAO;IACvH,MAAMC,MAAMX,WAAWY,IAAI,CAACT,SAASC,MAAME;IAC3C,OAAOL,OAAOU,KAAKN;AACrB;AACAH,UAAUD,MAAM,GAAGA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type * as child_process from 'child_process';
|
|
2
|
+
export type ChildProcess = child_process.ChildProcess;
|
|
3
|
+
export interface SpawnOptions extends child_process.SpawnOptions {
|
|
4
|
+
encoding?: BufferEncoding;
|
|
5
|
+
env?: NodeJS.ProcessEnv;
|
|
6
|
+
input?: string | Buffer;
|
|
7
|
+
}
|
|
8
|
+
export type SpawnResult = child_process.SpawnSyncReturns<string | Buffer>;
|
|
9
|
+
export interface SpawnError extends Error, SpawnResult {
|
|
10
|
+
code?: string;
|
|
11
|
+
}
|
|
12
|
+
export type SpawnCallback = (err?: SpawnError, res?: SpawnResult) => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/workers/async.ts"],"sourcesContent":["import oo from 'on-one';\nimport { spawnKeys } from '../constants.js';\n\nimport type { ChildProcess, SpawnCallback, SpawnError, SpawnOptions, SpawnResult } from '../types.js';\n\nfunction isError(obj) {\n return Object.prototype.toString.call(obj) === '[object Error]';\n}\n\nexport default function worker(cp: ChildProcess, options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback) {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n options = options || {};\n\n // collect output\n const res = { pid: 0, output: [], stdout: null, stderr: null, status: null, signal: null } as SpawnResult;\n const stdout: Buffer[] = [];\n const stderr: Buffer[] = [];\n if (options.encoding && cp.stdout) cp.stdout.on('data', stdout.push.bind(stdout));\n if (options.encoding && cp.stderr) cp.stderr.on('data', stderr.push.bind(stderr));\n\n // some versions of node emit both an error and close\n oo(cp, ['error', 'close'], (status, signal) => {\n if (isError(status)) {\n const err = status as SpawnError;\n if (err.code === 'OK') return; // ignore\n return callback(err);\n }\n\n // prepare result\n res.pid = cp.pid;\n res.status = status;\n res.signal = signal;\n if (options.encoding && cp.stdout) {\n res.stdout = Buffer.concat(stdout);\n if (options.encoding !== 'binary') res.stdout = res.stdout.toString(options.encoding);\n }\n if (options.encoding && cp.stderr) {\n res.stderr = Buffer.concat(stderr);\n if (options.encoding !== 'binary') res.stderr = res.stderr.toString(options.encoding);\n }\n res.output = [null, res.stdout, res.stderr];\n if (res.status === null) res.status = 0; // patch: early node on windows could return null\n\n // process errors\n const err = res.status !== 0 ? new Error(`Non-zero exit code: ${res.status}`) : null;\n if (err) {\n for (const key in res) {\n if (spawnKeys.indexOf(key) < 0) continue;\n err[key] = Buffer.isBuffer(res[key]) ? res[key].toString(options.encoding || 'utf8') : res[key];\n }\n }\n err ? callback(err as SpawnError) : callback(null, res);\n });\n\n // pipe input\n if (options.input && (typeof options.input === 'string' || Buffer.isBuffer(options.input))) {\n cp.stdin.end(options.input);\n }\n}\n"],"names":["oo","spawnKeys","isError","obj","Object","prototype","toString","call","worker","cp","options","callback","res","pid","output","stdout","stderr","status","signal","encoding","on","push","bind","err","code","Buffer","concat","Error","key","indexOf","isBuffer","input","stdin","end"],"mappings":"AAAA,OAAOA,QAAQ,SAAS;AACxB,SAASC,SAAS,QAAQ,kBAAkB;AAI5C,SAASC,QAAQC,GAAG;IAClB,OAAOC,OAAOC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACJ,SAAS;AACjD;AAEA,eAAe,SAASK,OAAOC,EAAgB,EAAEC,OAAsC,EAAEC,QAAwB;IAC/G,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU,CAAC;IACb;IACAA,UAAUA,WAAW,CAAC;IAEtB,iBAAiB;IACjB,MAAME,MAAM;QAAEC,KAAK;QAAGC,QAAQ,EAAE;QAAEC,QAAQ;QAAMC,QAAQ;QAAMC,QAAQ;QAAMC,QAAQ;IAAK;IACzF,MAAMH,SAAmB,EAAE;IAC3B,MAAMC,SAAmB,EAAE;IAC3B,IAAIN,QAAQS,QAAQ,IAAIV,GAAGM,MAAM,EAAEN,GAAGM,MAAM,CAACK,EAAE,CAAC,QAAQL,OAAOM,IAAI,CAACC,IAAI,CAACP;IACzE,IAAIL,QAAQS,QAAQ,IAAIV,GAAGO,MAAM,EAAEP,GAAGO,MAAM,CAACI,EAAE,CAAC,QAAQJ,OAAOK,IAAI,CAACC,IAAI,CAACN;IAEzE,qDAAqD;IACrDhB,GAAGS,IAAI;QAAC;QAAS;KAAQ,EAAE,CAACQ,QAAQC;QAClC,IAAIhB,QAAQe,SAAS;YACnB,MAAMM,MAAMN;YACZ,IAAIM,IAAIC,IAAI,KAAK,MAAM,QAAQ,SAAS;YACxC,OAAOb,SAASY;QAClB;QAEA,iBAAiB;QACjBX,IAAIC,GAAG,GAAGJ,GAAGI,GAAG;QAChBD,IAAIK,MAAM,GAAGA;QACbL,IAAIM,MAAM,GAAGA;QACb,IAAIR,QAAQS,QAAQ,IAAIV,GAAGM,MAAM,EAAE;YACjCH,IAAIG,MAAM,GAAGU,OAAOC,MAAM,CAACX;YAC3B,IAAIL,QAAQS,QAAQ,KAAK,UAAUP,IAAIG,MAAM,GAAGH,IAAIG,MAAM,CAACT,QAAQ,CAACI,QAAQS,QAAQ;QACtF;QACA,IAAIT,QAAQS,QAAQ,IAAIV,GAAGO,MAAM,EAAE;YACjCJ,IAAII,MAAM,GAAGS,OAAOC,MAAM,CAACV;YAC3B,IAAIN,QAAQS,QAAQ,KAAK,UAAUP,IAAII,MAAM,GAAGJ,IAAII,MAAM,CAACV,QAAQ,CAACI,QAAQS,QAAQ;QACtF;QACAP,IAAIE,MAAM,GAAG;YAAC;YAAMF,IAAIG,MAAM;YAAEH,IAAII,MAAM;SAAC;QAC3C,IAAIJ,IAAIK,MAAM,KAAK,MAAML,IAAIK,MAAM,GAAG,GAAG,iDAAiD;QAE1F,iBAAiB;QACjB,MAAMM,MAAMX,IAAIK,MAAM,KAAK,IAAI,IAAIU,MAAM,CAAC,oBAAoB,EAAEf,IAAIK,MAAM,EAAE,IAAI;QAChF,IAAIM,KAAK;YACP,IAAK,MAAMK,OAAOhB,IAAK;gBACrB,IAAIX,UAAU4B,OAAO,CAACD,OAAO,GAAG;gBAChCL,GAAG,CAACK,IAAI,GAAGH,OAAOK,QAAQ,CAAClB,GAAG,CAACgB,IAAI,IAAIhB,GAAG,CAACgB,IAAI,CAACtB,QAAQ,CAACI,QAAQS,QAAQ,IAAI,UAAUP,GAAG,CAACgB,IAAI;YACjG;QACF;QACAL,MAAMZ,SAASY,OAAqBZ,SAAS,MAAMC;IACrD;IAEA,aAAa;IACb,IAAIF,QAAQqB,KAAK,IAAK,CAAA,OAAOrB,QAAQqB,KAAK,KAAK,YAAYN,OAAOK,QAAQ,CAACpB,QAAQqB,KAAK,CAAA,GAAI;QAC1FtB,GAAGuB,KAAK,CAACC,GAAG,CAACvB,QAAQqB,KAAK;IAC5B;AACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/workers/sync.ts"],"sourcesContent":["import { spawnKeys } from '../constants.js';\n\nimport type { SpawnOptions, SpawnResult } from '../types.js';\n\nexport default function worker(res: SpawnResult, options?: SpawnOptions): SpawnResult {\n options = options || {};\n\n // pipe if inherited\n if (res.stdout && options.stdio === 'inherit') {\n process.stdout.write(res.stdout);\n res.stdout = null;\n }\n if (res.stderr && options.stdio === 'inherit') {\n process.stderr.write(res.stderr);\n res.stderr = null;\n }\n if (res.status === null) res.status = 0; // patch: early node on windows could return null\n\n // process errors\n const err = res.status !== 0 ? new Error(`Non-zero exit code: ${res.status}`) : null;\n if (err) {\n for (const key in res) {\n if (spawnKeys.indexOf(key) < 0) continue;\n err[key] = Buffer.isBuffer(res[key]) ? res[key].toString(options.encoding || 'utf8') : res[key];\n }\n throw err;\n }\n return res;\n}\n"],"names":["spawnKeys","worker","res","options","stdout","stdio","process","write","stderr","status","err","Error","key","indexOf","Buffer","isBuffer","toString","encoding"],"mappings":"AAAA,SAASA,SAAS,QAAQ,kBAAkB;AAI5C,eAAe,SAASC,OAAOC,GAAgB,EAAEC,OAAsB;IACrEA,UAAUA,WAAW,CAAC;IAEtB,oBAAoB;IACpB,IAAID,IAAIE,MAAM,IAAID,QAAQE,KAAK,KAAK,WAAW;QAC7CC,QAAQF,MAAM,CAACG,KAAK,CAACL,IAAIE,MAAM;QAC/BF,IAAIE,MAAM,GAAG;IACf;IACA,IAAIF,IAAIM,MAAM,IAAIL,QAAQE,KAAK,KAAK,WAAW;QAC7CC,QAAQE,MAAM,CAACD,KAAK,CAACL,IAAIM,MAAM;QAC/BN,IAAIM,MAAM,GAAG;IACf;IACA,IAAIN,IAAIO,MAAM,KAAK,MAAMP,IAAIO,MAAM,GAAG,GAAG,iDAAiD;IAE1F,iBAAiB;IACjB,MAAMC,MAAMR,IAAIO,MAAM,KAAK,IAAI,IAAIE,MAAM,CAAC,oBAAoB,EAAET,IAAIO,MAAM,EAAE,IAAI;IAChF,IAAIC,KAAK;QACP,IAAK,MAAME,OAAOV,IAAK;YACrB,IAAIF,UAAUa,OAAO,CAACD,OAAO,GAAG;YAChCF,GAAG,CAACE,IAAI,GAAGE,OAAOC,QAAQ,CAACb,GAAG,CAACU,IAAI,IAAIV,GAAG,CAACU,IAAI,CAACI,QAAQ,CAACb,QAAQc,QAAQ,IAAI,UAAUf,GAAG,CAACU,IAAI;QACjG;QACA,MAAMF;IACR;IACA,OAAOR;AACT"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cross-spawn-cb",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.2.0",
|
|
4
4
|
"description": "Cross spawn with a completion callback",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cross-spawn",
|
|
@@ -15,12 +15,12 @@
|
|
|
15
15
|
"type": "module",
|
|
16
16
|
"exports": {
|
|
17
17
|
".": {
|
|
18
|
-
"import": "./dist/esm/index.
|
|
19
|
-
"require": "./dist/cjs/index.
|
|
18
|
+
"import": "./dist/esm/index.js",
|
|
19
|
+
"require": "./dist/cjs/index.js"
|
|
20
20
|
},
|
|
21
21
|
"./package.json": "./package.json"
|
|
22
22
|
},
|
|
23
|
-
"main": "dist/cjs/index.
|
|
23
|
+
"main": "dist/cjs/index.js",
|
|
24
24
|
"types": "dist/cjs/index.d.cts",
|
|
25
25
|
"files": [
|
|
26
26
|
"dist",
|
package/dist/cjs/index.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/index.ts"],"sourcesContent":["export type * from './types';\nexport { default } from './spawn';\nexport { default as sync } from './spawnSync';\nexport { default as crossSpawn } from './lib/crossSpawn.cjs';\n"],"names":["crossSpawn","default","sync"],"mappings":";;;;;;;;;;;IAGoBA,UAAU;eAAVA,sBAAU;;IAFrBC,OAAO;eAAPA,cAAO;;IACIC,IAAI;eAAJA,kBAAI;;;4DADA;gEACQ;oEACM"}
|
package/dist/cjs/spawn.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/spawn.ts"],"sourcesContent":["import crossSpawn from './lib/crossSpawn.cjs';\nimport spawnSync from './spawnSync';\nimport worker from './workers/async';\n\nimport type { SpawnCallback, SpawnOptions, SpawnResult } from './types';\nexport default function spawn(command: string, args: string[], options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback): undefined | Promise<SpawnResult> {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n options = options || {};\n const cp = crossSpawn(command, args, options);\n\n if (typeof callback === 'function') return worker(cp, options, callback) as undefined;\n return new Promise((resolve, reject) => worker(cp, options, (err, res) => (err ? reject(err) : resolve(res))));\n}\nspawn.worker = worker;\nspawn.sync = spawnSync;\nspawn.crossSpawn = crossSpawn;\n"],"names":["spawn","command","args","options","callback","cp","crossSpawn","worker","Promise","resolve","reject","err","res","sync","spawnSync"],"mappings":";;;;+BAKA;;;eAAwBA;;;oEALD;gEACD;4DACH;;;;;;AAGJ,SAASA,MAAMC,OAAe,EAAEC,IAAc,EAAEC,OAAsC,EAAEC,QAAwB;IAC7H,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU,CAAC;IACb;IACAA,UAAUA,WAAW,CAAC;IACtB,IAAME,KAAKC,IAAAA,sBAAU,EAACL,SAASC,MAAMC;IAErC,IAAI,OAAOC,aAAa,YAAY,OAAOG,IAAAA,cAAM,EAACF,IAAIF,SAASC;IAC/D,OAAO,IAAII,QAAQ,SAACC,SAASC;eAAWH,IAAAA,cAAM,EAACF,IAAIF,SAAS,SAACQ,KAAKC;mBAASD,MAAMD,OAAOC,OAAOF,QAAQG;;;AACzG;AACAZ,MAAMO,MAAM,GAAGA,cAAM;AACrBP,MAAMa,IAAI,GAAGC,kBAAS;AACtBd,MAAMM,UAAU,GAAGA,sBAAU"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/spawnSync.ts"],"sourcesContent":["import crossSpawn from './lib/crossSpawn.cjs';\nimport worker from './workers/sync';\n\nimport type { SpawnOptions, SpawnResult } from './types';\n\nexport default function spawnSync(command: string, args: string[], options?: SpawnOptions): SpawnResult {\n options = options || {};\n const syncOptions = { ...options, env: options.env || process.env, stdio: 'pipe', encoding: options.encoding || 'utf8' };\n const res = crossSpawn.sync(command, args, syncOptions);\n return worker(res, options as SpawnOptions);\n}\nspawnSync.worker = worker;\n"],"names":["spawnSync","command","args","options","syncOptions","env","process","stdio","encoding","res","crossSpawn","sync","worker"],"mappings":";;;;+BAKA;;;eAAwBA;;;oEALD;2DACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIJ,SAASA,UAAUC,OAAe,EAAEC,IAAc,EAAEC,OAAsB;IACvFA,UAAUA,WAAW,CAAC;IACtB,IAAMC,cAAc,wCAAKD;QAASE,KAAKF,QAAQE,GAAG,IAAIC,QAAQD,GAAG;QAAEE,OAAO;QAAQC,UAAUL,QAAQK,QAAQ,IAAI;;IAChH,IAAMC,MAAMC,sBAAU,CAACC,IAAI,CAACV,SAASC,MAAME;IAC3C,OAAOQ,IAAAA,aAAM,EAACH,KAAKN;AACrB;AACAH,UAAUY,MAAM,GAAGA,aAAM"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/workers/async.ts"],"sourcesContent":["import oo from 'on-one';\nimport { spawnKeys } from '../constants';\n\nimport type { ChildProcess, SpawnCallback, SpawnError, SpawnOptions, SpawnResult } from '../types';\n\nfunction isError(obj) {\n return Object.prototype.toString.call(obj) === '[object Error]';\n}\n\nexport default function worker(cp: ChildProcess, options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback) {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n options = options || {};\n\n // collect output\n const res = { pid: 0, output: [], stdout: null, stderr: null, status: null, signal: null } as SpawnResult;\n const stdout: Buffer[] = [];\n const stderr: Buffer[] = [];\n if (options.encoding && cp.stdout) cp.stdout.on('data', stdout.push.bind(stdout));\n if (options.encoding && cp.stderr) cp.stderr.on('data', stderr.push.bind(stderr));\n\n // some versions of node emit both an error and close\n oo(cp, ['error', 'close'], (status, signal) => {\n if (isError(status)) {\n const err = status as SpawnError;\n if (err.code === 'OK') return; // ignore\n return callback(err);\n }\n\n // prepare result\n res.pid = cp.pid;\n res.status = status;\n res.signal = signal;\n if (options.encoding && cp.stdout) {\n res.stdout = Buffer.concat(stdout);\n if (options.encoding !== 'binary') res.stdout = res.stdout.toString(options.encoding);\n }\n if (options.encoding && cp.stderr) {\n res.stderr = Buffer.concat(stderr);\n if (options.encoding !== 'binary') res.stderr = res.stderr.toString(options.encoding);\n }\n res.output = [null, res.stdout, res.stderr];\n if (res.status === null) res.status = 0; // patch: early node on windows could return null\n\n // process errors\n const err = res.status !== 0 ? new Error(`Non-zero exit code: ${res.status}`) : null;\n if (err) {\n for (const key in res) {\n if (spawnKeys.indexOf(key) < 0) continue;\n err[key] = Buffer.isBuffer(res[key]) ? res[key].toString(options.encoding || 'utf8') : res[key];\n }\n }\n err ? callback(err as SpawnError) : callback(null, res);\n });\n\n // pipe input\n if (options.input && (typeof options.input === 'string' || Buffer.isBuffer(options.input))) {\n cp.stdin.end(options.input);\n }\n}\n"],"names":["worker","isError","obj","Object","prototype","toString","call","cp","options","callback","res","pid","output","stdout","stderr","status","signal","encoding","on","push","bind","oo","err","code","Buffer","concat","Error","key","spawnKeys","indexOf","isBuffer","input","stdin","end"],"mappings":";;;;+BASA;;;eAAwBA;;;4DATT;yBACW;;;;;;AAI1B,SAASC,QAAQC,GAAG;IAClB,OAAOC,OAAOC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACJ,SAAS;AACjD;AAEe,SAASF,OAAOO,EAAgB,EAAEC,OAAsC,EAAEC,QAAwB;IAC/G,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU,CAAC;IACb;IACAA,UAAUA,WAAW,CAAC;IAEtB,iBAAiB;IACjB,IAAME,MAAM;QAAEC,KAAK;QAAGC,QAAQ,EAAE;QAAEC,QAAQ;QAAMC,QAAQ;QAAMC,QAAQ;QAAMC,QAAQ;IAAK;IACzF,IAAMH,SAAmB,EAAE;IAC3B,IAAMC,SAAmB,EAAE;IAC3B,IAAIN,QAAQS,QAAQ,IAAIV,GAAGM,MAAM,EAAEN,GAAGM,MAAM,CAACK,EAAE,CAAC,QAAQL,OAAOM,IAAI,CAACC,IAAI,CAACP;IACzE,IAAIL,QAAQS,QAAQ,IAAIV,GAAGO,MAAM,EAAEP,GAAGO,MAAM,CAACI,EAAE,CAAC,QAAQJ,OAAOK,IAAI,CAACC,IAAI,CAACN;IAEzE,qDAAqD;IACrDO,IAAAA,cAAE,EAACd,IAAI;QAAC;QAAS;KAAQ,EAAE,SAACQ,QAAQC;QAClC,IAAIf,QAAQc,SAAS;YACnB,IAAMO,MAAMP;YACZ,IAAIO,IAAIC,IAAI,KAAK,MAAM,QAAQ,SAAS;YACxC,OAAOd,SAASa;QAClB;QAEA,iBAAiB;QACjBZ,IAAIC,GAAG,GAAGJ,GAAGI,GAAG;QAChBD,IAAIK,MAAM,GAAGA;QACbL,IAAIM,MAAM,GAAGA;QACb,IAAIR,QAAQS,QAAQ,IAAIV,GAAGM,MAAM,EAAE;YACjCH,IAAIG,MAAM,GAAGW,OAAOC,MAAM,CAACZ;YAC3B,IAAIL,QAAQS,QAAQ,KAAK,UAAUP,IAAIG,MAAM,GAAGH,IAAIG,MAAM,CAACR,QAAQ,CAACG,QAAQS,QAAQ;QACtF;QACA,IAAIT,QAAQS,QAAQ,IAAIV,GAAGO,MAAM,EAAE;YACjCJ,IAAII,MAAM,GAAGU,OAAOC,MAAM,CAACX;YAC3B,IAAIN,QAAQS,QAAQ,KAAK,UAAUP,IAAII,MAAM,GAAGJ,IAAII,MAAM,CAACT,QAAQ,CAACG,QAAQS,QAAQ;QACtF;QACAP,IAAIE,MAAM,GAAG;YAAC;YAAMF,IAAIG,MAAM;YAAEH,IAAII,MAAM;SAAC;QAC3C,IAAIJ,IAAIK,MAAM,KAAK,MAAML,IAAIK,MAAM,GAAG,GAAG,iDAAiD;QAE1F,iBAAiB;QACjB,IAAMO,OAAMZ,IAAIK,MAAM,KAAK,IAAI,IAAIW,MAAM,AAAC,uBAAiC,OAAXhB,IAAIK,MAAM,KAAM;QAChF,IAAIO,MAAK;YACP,IAAK,IAAMK,OAAOjB,IAAK;gBACrB,IAAIkB,oBAAS,CAACC,OAAO,CAACF,OAAO,GAAG;gBAChCL,IAAG,CAACK,IAAI,GAAGH,OAAOM,QAAQ,CAACpB,GAAG,CAACiB,IAAI,IAAIjB,GAAG,CAACiB,IAAI,CAACtB,QAAQ,CAACG,QAAQS,QAAQ,IAAI,UAAUP,GAAG,CAACiB,IAAI;YACjG;QACF;QACAL,OAAMb,SAASa,QAAqBb,SAAS,MAAMC;IACrD;IAEA,aAAa;IACb,IAAIF,QAAQuB,KAAK,IAAK,CAAA,OAAOvB,QAAQuB,KAAK,KAAK,YAAYP,OAAOM,QAAQ,CAACtB,QAAQuB,KAAK,CAAA,GAAI;QAC1FxB,GAAGyB,KAAK,CAACC,GAAG,CAACzB,QAAQuB,KAAK;IAC5B;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/workers/sync.ts"],"sourcesContent":["import { spawnKeys } from '../constants';\n\nimport type { SpawnOptions, SpawnResult } from '../types';\n\nexport default function worker(res: SpawnResult, options?: SpawnOptions): SpawnResult {\n options = options || {};\n\n // pipe if inherited\n if (res.stdout && options.stdio === 'inherit') {\n process.stdout.write(res.stdout);\n res.stdout = null;\n }\n if (res.stderr && options.stdio === 'inherit') {\n process.stderr.write(res.stderr);\n res.stderr = null;\n }\n if (res.status === null) res.status = 0; // patch: early node on windows could return null\n\n // process errors\n const err = res.status !== 0 ? new Error(`Non-zero exit code: ${res.status}`) : null;\n if (err) {\n for (const key in res) {\n if (spawnKeys.indexOf(key) < 0) continue;\n err[key] = Buffer.isBuffer(res[key]) ? res[key].toString(options.encoding || 'utf8') : res[key];\n }\n throw err;\n }\n return res;\n}\n"],"names":["worker","res","options","stdout","stdio","process","write","stderr","status","err","Error","key","spawnKeys","indexOf","Buffer","isBuffer","toString","encoding"],"mappings":";;;;+BAIA;;;eAAwBA;;;yBAJE;AAIX,SAASA,OAAOC,GAAgB,EAAEC,OAAsB;IACrEA,UAAUA,WAAW,CAAC;IAEtB,oBAAoB;IACpB,IAAID,IAAIE,MAAM,IAAID,QAAQE,KAAK,KAAK,WAAW;QAC7CC,QAAQF,MAAM,CAACG,KAAK,CAACL,IAAIE,MAAM;QAC/BF,IAAIE,MAAM,GAAG;IACf;IACA,IAAIF,IAAIM,MAAM,IAAIL,QAAQE,KAAK,KAAK,WAAW;QAC7CC,QAAQE,MAAM,CAACD,KAAK,CAACL,IAAIM,MAAM;QAC/BN,IAAIM,MAAM,GAAG;IACf;IACA,IAAIN,IAAIO,MAAM,KAAK,MAAMP,IAAIO,MAAM,GAAG,GAAG,iDAAiD;IAE1F,iBAAiB;IACjB,IAAMC,MAAMR,IAAIO,MAAM,KAAK,IAAI,IAAIE,MAAM,AAAC,uBAAiC,OAAXT,IAAIO,MAAM,KAAM;IAChF,IAAIC,KAAK;QACP,IAAK,IAAME,OAAOV,IAAK;YACrB,IAAIW,oBAAS,CAACC,OAAO,CAACF,OAAO,GAAG;YAChCF,GAAG,CAACE,IAAI,GAAGG,OAAOC,QAAQ,CAACd,GAAG,CAACU,IAAI,IAAIV,GAAG,CAACU,IAAI,CAACK,QAAQ,CAACd,QAAQe,QAAQ,IAAI,UAAUhB,GAAG,CAACU,IAAI;QACjG;QACA,MAAMF;IACR;IACA,OAAOR;AACT"}
|
package/dist/esm/index.d.mts
DELETED
package/dist/esm/index.mjs
DELETED
package/dist/esm/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/index.ts"],"sourcesContent":["export type * from './types';\nexport { default } from './spawn';\nexport { default as sync } from './spawnSync';\nexport { default as crossSpawn } from './lib/crossSpawn.cjs';\n"],"names":["default","sync","crossSpawn"],"mappings":"AACA,SAASA,OAAO,QAAQ,UAAU;AAClC,SAASA,WAAWC,IAAI,QAAQ,cAAc;AAC9C,SAASD,WAAWE,UAAU,QAAQ,uBAAuB"}
|
package/dist/esm/spawn.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/spawn.ts"],"sourcesContent":["import crossSpawn from './lib/crossSpawn.cjs';\nimport spawnSync from './spawnSync';\nimport worker from './workers/async';\n\nimport type { SpawnCallback, SpawnOptions, SpawnResult } from './types';\nexport default function spawn(command: string, args: string[], options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback): undefined | Promise<SpawnResult> {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n options = options || {};\n const cp = crossSpawn(command, args, options);\n\n if (typeof callback === 'function') return worker(cp, options, callback) as undefined;\n return new Promise((resolve, reject) => worker(cp, options, (err, res) => (err ? reject(err) : resolve(res))));\n}\nspawn.worker = worker;\nspawn.sync = spawnSync;\nspawn.crossSpawn = crossSpawn;\n"],"names":["crossSpawn","spawnSync","worker","spawn","command","args","options","callback","cp","Promise","resolve","reject","err","res","sync"],"mappings":"AAAA,OAAOA,gBAAgB,uBAAuB;AAC9C,OAAOC,eAAe,cAAc;AACpC,OAAOC,YAAY,kBAAkB;AAGrC,eAAe,SAASC,MAAMC,OAAe,EAAEC,IAAc,EAAEC,OAAsC,EAAEC,QAAwB;IAC7H,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU,CAAC;IACb;IACAA,UAAUA,WAAW,CAAC;IACtB,MAAME,KAAKR,WAAWI,SAASC,MAAMC;IAErC,IAAI,OAAOC,aAAa,YAAY,OAAOL,OAAOM,IAAIF,SAASC;IAC/D,OAAO,IAAIE,QAAQ,CAACC,SAASC,SAAWT,OAAOM,IAAIF,SAAS,CAACM,KAAKC,MAASD,MAAMD,OAAOC,OAAOF,QAAQG;AACzG;AACAV,MAAMD,MAAM,GAAGA;AACfC,MAAMW,IAAI,GAAGb;AACbE,MAAMH,UAAU,GAAGA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/spawnSync.ts"],"sourcesContent":["import crossSpawn from './lib/crossSpawn.cjs';\nimport worker from './workers/sync';\n\nimport type { SpawnOptions, SpawnResult } from './types';\n\nexport default function spawnSync(command: string, args: string[], options?: SpawnOptions): SpawnResult {\n options = options || {};\n const syncOptions = { ...options, env: options.env || process.env, stdio: 'pipe', encoding: options.encoding || 'utf8' };\n const res = crossSpawn.sync(command, args, syncOptions);\n return worker(res, options as SpawnOptions);\n}\nspawnSync.worker = worker;\n"],"names":["crossSpawn","worker","spawnSync","command","args","options","syncOptions","env","process","stdio","encoding","res","sync"],"mappings":"AAAA,OAAOA,gBAAgB,uBAAuB;AAC9C,OAAOC,YAAY,iBAAiB;AAIpC,eAAe,SAASC,UAAUC,OAAe,EAAEC,IAAc,EAAEC,OAAsB;IACvFA,UAAUA,WAAW,CAAC;IACtB,MAAMC,cAAc;QAAE,GAAGD,OAAO;QAAEE,KAAKF,QAAQE,GAAG,IAAIC,QAAQD,GAAG;QAAEE,OAAO;QAAQC,UAAUL,QAAQK,QAAQ,IAAI;IAAO;IACvH,MAAMC,MAAMX,WAAWY,IAAI,CAACT,SAASC,MAAME;IAC3C,OAAOL,OAAOU,KAAKN;AACrB;AACAH,UAAUD,MAAM,GAAGA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/workers/async.ts"],"sourcesContent":["import oo from 'on-one';\nimport { spawnKeys } from '../constants';\n\nimport type { ChildProcess, SpawnCallback, SpawnError, SpawnOptions, SpawnResult } from '../types';\n\nfunction isError(obj) {\n return Object.prototype.toString.call(obj) === '[object Error]';\n}\n\nexport default function worker(cp: ChildProcess, options?: SpawnOptions | SpawnCallback, callback?: SpawnCallback) {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n options = options || {};\n\n // collect output\n const res = { pid: 0, output: [], stdout: null, stderr: null, status: null, signal: null } as SpawnResult;\n const stdout: Buffer[] = [];\n const stderr: Buffer[] = [];\n if (options.encoding && cp.stdout) cp.stdout.on('data', stdout.push.bind(stdout));\n if (options.encoding && cp.stderr) cp.stderr.on('data', stderr.push.bind(stderr));\n\n // some versions of node emit both an error and close\n oo(cp, ['error', 'close'], (status, signal) => {\n if (isError(status)) {\n const err = status as SpawnError;\n if (err.code === 'OK') return; // ignore\n return callback(err);\n }\n\n // prepare result\n res.pid = cp.pid;\n res.status = status;\n res.signal = signal;\n if (options.encoding && cp.stdout) {\n res.stdout = Buffer.concat(stdout);\n if (options.encoding !== 'binary') res.stdout = res.stdout.toString(options.encoding);\n }\n if (options.encoding && cp.stderr) {\n res.stderr = Buffer.concat(stderr);\n if (options.encoding !== 'binary') res.stderr = res.stderr.toString(options.encoding);\n }\n res.output = [null, res.stdout, res.stderr];\n if (res.status === null) res.status = 0; // patch: early node on windows could return null\n\n // process errors\n const err = res.status !== 0 ? new Error(`Non-zero exit code: ${res.status}`) : null;\n if (err) {\n for (const key in res) {\n if (spawnKeys.indexOf(key) < 0) continue;\n err[key] = Buffer.isBuffer(res[key]) ? res[key].toString(options.encoding || 'utf8') : res[key];\n }\n }\n err ? callback(err as SpawnError) : callback(null, res);\n });\n\n // pipe input\n if (options.input && (typeof options.input === 'string' || Buffer.isBuffer(options.input))) {\n cp.stdin.end(options.input);\n }\n}\n"],"names":["oo","spawnKeys","isError","obj","Object","prototype","toString","call","worker","cp","options","callback","res","pid","output","stdout","stderr","status","signal","encoding","on","push","bind","err","code","Buffer","concat","Error","key","indexOf","isBuffer","input","stdin","end"],"mappings":"AAAA,OAAOA,QAAQ,SAAS;AACxB,SAASC,SAAS,QAAQ,eAAe;AAIzC,SAASC,QAAQC,GAAG;IAClB,OAAOC,OAAOC,SAAS,CAACC,QAAQ,CAACC,IAAI,CAACJ,SAAS;AACjD;AAEA,eAAe,SAASK,OAAOC,EAAgB,EAAEC,OAAsC,EAAEC,QAAwB;IAC/G,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU,CAAC;IACb;IACAA,UAAUA,WAAW,CAAC;IAEtB,iBAAiB;IACjB,MAAME,MAAM;QAAEC,KAAK;QAAGC,QAAQ,EAAE;QAAEC,QAAQ;QAAMC,QAAQ;QAAMC,QAAQ;QAAMC,QAAQ;IAAK;IACzF,MAAMH,SAAmB,EAAE;IAC3B,MAAMC,SAAmB,EAAE;IAC3B,IAAIN,QAAQS,QAAQ,IAAIV,GAAGM,MAAM,EAAEN,GAAGM,MAAM,CAACK,EAAE,CAAC,QAAQL,OAAOM,IAAI,CAACC,IAAI,CAACP;IACzE,IAAIL,QAAQS,QAAQ,IAAIV,GAAGO,MAAM,EAAEP,GAAGO,MAAM,CAACI,EAAE,CAAC,QAAQJ,OAAOK,IAAI,CAACC,IAAI,CAACN;IAEzE,qDAAqD;IACrDhB,GAAGS,IAAI;QAAC;QAAS;KAAQ,EAAE,CAACQ,QAAQC;QAClC,IAAIhB,QAAQe,SAAS;YACnB,MAAMM,MAAMN;YACZ,IAAIM,IAAIC,IAAI,KAAK,MAAM,QAAQ,SAAS;YACxC,OAAOb,SAASY;QAClB;QAEA,iBAAiB;QACjBX,IAAIC,GAAG,GAAGJ,GAAGI,GAAG;QAChBD,IAAIK,MAAM,GAAGA;QACbL,IAAIM,MAAM,GAAGA;QACb,IAAIR,QAAQS,QAAQ,IAAIV,GAAGM,MAAM,EAAE;YACjCH,IAAIG,MAAM,GAAGU,OAAOC,MAAM,CAACX;YAC3B,IAAIL,QAAQS,QAAQ,KAAK,UAAUP,IAAIG,MAAM,GAAGH,IAAIG,MAAM,CAACT,QAAQ,CAACI,QAAQS,QAAQ;QACtF;QACA,IAAIT,QAAQS,QAAQ,IAAIV,GAAGO,MAAM,EAAE;YACjCJ,IAAII,MAAM,GAAGS,OAAOC,MAAM,CAACV;YAC3B,IAAIN,QAAQS,QAAQ,KAAK,UAAUP,IAAII,MAAM,GAAGJ,IAAII,MAAM,CAACV,QAAQ,CAACI,QAAQS,QAAQ;QACtF;QACAP,IAAIE,MAAM,GAAG;YAAC;YAAMF,IAAIG,MAAM;YAAEH,IAAII,MAAM;SAAC;QAC3C,IAAIJ,IAAIK,MAAM,KAAK,MAAML,IAAIK,MAAM,GAAG,GAAG,iDAAiD;QAE1F,iBAAiB;QACjB,MAAMM,MAAMX,IAAIK,MAAM,KAAK,IAAI,IAAIU,MAAM,CAAC,oBAAoB,EAAEf,IAAIK,MAAM,EAAE,IAAI;QAChF,IAAIM,KAAK;YACP,IAAK,MAAMK,OAAOhB,IAAK;gBACrB,IAAIX,UAAU4B,OAAO,CAACD,OAAO,GAAG;gBAChCL,GAAG,CAACK,IAAI,GAAGH,OAAOK,QAAQ,CAAClB,GAAG,CAACgB,IAAI,IAAIhB,GAAG,CAACgB,IAAI,CAACtB,QAAQ,CAACI,QAAQS,QAAQ,IAAI,UAAUP,GAAG,CAACgB,IAAI;YACjG;QACF;QACAL,MAAMZ,SAASY,OAAqBZ,SAAS,MAAMC;IACrD;IAEA,aAAa;IACb,IAAIF,QAAQqB,KAAK,IAAK,CAAA,OAAOrB,QAAQqB,KAAK,KAAK,YAAYN,OAAOK,QAAQ,CAACpB,QAAQqB,KAAK,CAAA,GAAI;QAC1FtB,GAAGuB,KAAK,CAACC,GAAG,CAACvB,QAAQqB,KAAK;IAC5B;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/compat/cross-spawn-cb/src/workers/sync.ts"],"sourcesContent":["import { spawnKeys } from '../constants';\n\nimport type { SpawnOptions, SpawnResult } from '../types';\n\nexport default function worker(res: SpawnResult, options?: SpawnOptions): SpawnResult {\n options = options || {};\n\n // pipe if inherited\n if (res.stdout && options.stdio === 'inherit') {\n process.stdout.write(res.stdout);\n res.stdout = null;\n }\n if (res.stderr && options.stdio === 'inherit') {\n process.stderr.write(res.stderr);\n res.stderr = null;\n }\n if (res.status === null) res.status = 0; // patch: early node on windows could return null\n\n // process errors\n const err = res.status !== 0 ? new Error(`Non-zero exit code: ${res.status}`) : null;\n if (err) {\n for (const key in res) {\n if (spawnKeys.indexOf(key) < 0) continue;\n err[key] = Buffer.isBuffer(res[key]) ? res[key].toString(options.encoding || 'utf8') : res[key];\n }\n throw err;\n }\n return res;\n}\n"],"names":["spawnKeys","worker","res","options","stdout","stdio","process","write","stderr","status","err","Error","key","indexOf","Buffer","isBuffer","toString","encoding"],"mappings":"AAAA,SAASA,SAAS,QAAQ,eAAe;AAIzC,eAAe,SAASC,OAAOC,GAAgB,EAAEC,OAAsB;IACrEA,UAAUA,WAAW,CAAC;IAEtB,oBAAoB;IACpB,IAAID,IAAIE,MAAM,IAAID,QAAQE,KAAK,KAAK,WAAW;QAC7CC,QAAQF,MAAM,CAACG,KAAK,CAACL,IAAIE,MAAM;QAC/BF,IAAIE,MAAM,GAAG;IACf;IACA,IAAIF,IAAIM,MAAM,IAAIL,QAAQE,KAAK,KAAK,WAAW;QAC7CC,QAAQE,MAAM,CAACD,KAAK,CAACL,IAAIM,MAAM;QAC/BN,IAAIM,MAAM,GAAG;IACf;IACA,IAAIN,IAAIO,MAAM,KAAK,MAAMP,IAAIO,MAAM,GAAG,GAAG,iDAAiD;IAE1F,iBAAiB;IACjB,MAAMC,MAAMR,IAAIO,MAAM,KAAK,IAAI,IAAIE,MAAM,CAAC,oBAAoB,EAAET,IAAIO,MAAM,EAAE,IAAI;IAChF,IAAIC,KAAK;QACP,IAAK,MAAME,OAAOV,IAAK;YACrB,IAAIF,UAAUa,OAAO,CAACD,OAAO,GAAG;YAChCF,GAAG,CAACE,IAAI,GAAGE,OAAOC,QAAQ,CAACb,GAAG,CAACU,IAAI,IAAIV,GAAG,CAACU,IAAI,CAACI,QAAQ,CAACb,QAAQc,QAAQ,IAAI,UAAUf,GAAG,CAACU,IAAI;QACjG;QACA,MAAMF;IACR;IACA,OAAOR;AACT"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|