fast-extract
Version:
Extract contents from various archive types (tar, tar.bz2, tar.gz, tar.xz, tgz, zip)
19 lines (18 loc) • 530 B
JavaScript
import fs from 'graceful-fs';
import oo from 'on-one';
import createWriteStream from './createWriteStream.js';
export default function extract(source, dest, options_, callback) {
const options = {
source,
...options_
};
const res = createWriteStream(dest, options);
const inputStream = typeof source === 'string' ? fs.createReadStream(source) : source;
const stream = inputStream.pipe(res);
oo(stream, [
'error',
'end',
'close',
'finish'
], callback);
}