fast-extract
Version:
Extract contents from various archive types (tar, tar.bz2, tar.gz, tar.xz, tgz, zip)
1 lines • 2.61 kB
Source Map (JSON)
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/iterators/fast-extract/src/streams/transforms/Zip.mjs"],"sourcesContent":["import { Transform } from 'stream';\n\nimport ZipIterator from 'zip-iterator';\n\nexport default class ZipTransform extends Transform {\n constructor(options) {\n options = options ? { ...options, objectMode: true } : { objectMode: true };\n super(options);\n }\n\n _transform(chunk, _encoding, callback) {\n const fullPath = typeof chunk === 'string' ? chunk : chunk.toString();\n this._iterator = new ZipIterator(fullPath);\n this._iterator.forEach(\n (entry) => {\n this.push(entry);\n },\n { concurrency: 1 },\n (err) => {\n if (!this._iterator) return;\n err || this.push(null);\n this._iterator.destroy();\n this._iterator = null;\n this._callback ? this._callback(err) : this.end(err);\n this._callback = null;\n callback(err);\n }\n );\n }\n\n _flush(callback) {\n if (!this._iterator) return callback();\n this._callback = callback;\n this._iterator.end();\n }\n\n destroy(err) {\n if (this._iterator) {\n const iterator = this._iterator;\n this._iterator = null;\n iterator.destroy(err);\n this.end(err);\n }\n }\n}\n"],"names":["Transform","ZipIterator","ZipTransform","_transform","chunk","_encoding","callback","fullPath","toString","_iterator","forEach","entry","push","concurrency","err","destroy","_callback","end","_flush","iterator","constructor","options","objectMode"],"mappings":"AAAA,SAASA,SAAS,QAAQ,SAAS;AAEnC,OAAOC,iBAAiB,eAAe;AAExB,IAAA,AAAMC,eAAN,MAAMA,qBAAqBF;IAMxCG,WAAWC,KAAK,EAAEC,SAAS,EAAEC,QAAQ,EAAE;QACrC,MAAMC,WAAW,OAAOH,UAAU,WAAWA,QAAQA,MAAMI,QAAQ;QACnE,IAAI,CAACC,SAAS,GAAG,IAAIR,YAAYM;QACjC,IAAI,CAACE,SAAS,CAACC,OAAO,CACpB,CAACC;YACC,IAAI,CAACC,IAAI,CAACD;QACZ,GACA;YAAEE,aAAa;QAAE,GACjB,CAACC;YACC,IAAI,CAAC,IAAI,CAACL,SAAS,EAAE;YACrBK,OAAO,IAAI,CAACF,IAAI,CAAC;YACjB,IAAI,CAACH,SAAS,CAACM,OAAO;YACtB,IAAI,CAACN,SAAS,GAAG;YACjB,IAAI,CAACO,SAAS,GAAG,IAAI,CAACA,SAAS,CAACF,OAAO,IAAI,CAACG,GAAG,CAACH;YAChD,IAAI,CAACE,SAAS,GAAG;YACjBV,SAASQ;QACX;IAEJ;IAEAI,OAAOZ,QAAQ,EAAE;QACf,IAAI,CAAC,IAAI,CAACG,SAAS,EAAE,OAAOH;QAC5B,IAAI,CAACU,SAAS,GAAGV;QACjB,IAAI,CAACG,SAAS,CAACQ,GAAG;IACpB;IAEAF,QAAQD,GAAG,EAAE;QACX,IAAI,IAAI,CAACL,SAAS,EAAE;YAClB,MAAMU,WAAW,IAAI,CAACV,SAAS;YAC/B,IAAI,CAACA,SAAS,GAAG;YACjBU,SAASJ,OAAO,CAACD;YACjB,IAAI,CAACG,GAAG,CAACH;QACX;IACF;IAtCAM,YAAYC,OAAO,CAAE;QACnBA,UAAUA,UAAU;YAAE,GAAGA,OAAO;YAAEC,YAAY;QAAK,IAAI;YAAEA,YAAY;QAAK;QAC1E,KAAK,CAACD;IACR;AAoCF;AAxCA,SAAqBnB,0BAwCpB"}