mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2025-08-04 02:05:06 +02:00
Remove archiver-utils dependency
This commit is contained in:
parent
bca2cfda13
commit
3c5bf376b5
86 changed files with 17236 additions and 210 deletions
|
@ -0,0 +1,43 @@
|
|||
'use strict'
|
||||
|
||||
const { ArrayPrototypePop, Promise } = require('../ours/primordials')
|
||||
|
||||
const { isIterable, isNodeStream } = require('../internal/streams/utils')
|
||||
|
||||
const { pipelineImpl: pl } = require('../internal/streams/pipeline')
|
||||
|
||||
const { finished } = require('../internal/streams/end-of-stream')
|
||||
|
||||
function pipeline(...streams) {
|
||||
return new Promise((resolve, reject) => {
|
||||
let signal
|
||||
let end
|
||||
const lastArg = streams[streams.length - 1]
|
||||
|
||||
if (lastArg && typeof lastArg === 'object' && !isNodeStream(lastArg) && !isIterable(lastArg)) {
|
||||
const options = ArrayPrototypePop(streams)
|
||||
signal = options.signal
|
||||
end = options.end
|
||||
}
|
||||
|
||||
pl(
|
||||
streams,
|
||||
(err, value) => {
|
||||
if (err) {
|
||||
reject(err)
|
||||
} else {
|
||||
resolve(value)
|
||||
}
|
||||
},
|
||||
{
|
||||
signal,
|
||||
end
|
||||
}
|
||||
)
|
||||
})
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
finished,
|
||||
pipeline
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue