{"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"}