Initial commit
This commit is contained in:
20
node_modules/execa/lib/pipe/abort.js
generated
vendored
Normal file
20
node_modules/execa/lib/pipe/abort.js
generated
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
import {aborted} from 'node:util';
|
||||
import {createNonCommandError} from './throw.js';
|
||||
|
||||
// When passing an `unpipeSignal` option, abort piping when the signal is aborted.
|
||||
// However, do not terminate the subprocesses.
|
||||
export const unpipeOnAbort = (unpipeSignal, unpipeContext) => unpipeSignal === undefined
|
||||
? []
|
||||
: [unpipeOnSignalAbort(unpipeSignal, unpipeContext)];
|
||||
|
||||
const unpipeOnSignalAbort = async (unpipeSignal, {sourceStream, mergedStream, fileDescriptors, sourceOptions, startTime}) => {
|
||||
await aborted(unpipeSignal, sourceStream);
|
||||
await mergedStream.remove(sourceStream);
|
||||
const error = new Error('Pipe canceled by `unpipeSignal` option.');
|
||||
throw createNonCommandError({
|
||||
error,
|
||||
fileDescriptors,
|
||||
sourceOptions,
|
||||
startTime,
|
||||
});
|
||||
};
|
||||
Reference in New Issue
Block a user