dotfiles/vscode/.vscode/extensions/ms-python.python-2024.10.0-darwin-arm64/out/client/node_modules/node-stream-zip.js
Errol Sancaktar 5f8db31398 alacritty
2024-07-15 17:06:13 -06:00

3 lines
14 KiB
JavaScript

/*! For license information please see node-stream-zip.js.LICENSE.txt */
(()=>{var t={1020:(t,e,r)=>{let i=r(7147);const s=r(3837),n=r(1017),o=r(2361),a=r(9796),h=r(2781),c=101010256,f=117853008,l=101075792,d=4294967295,u=65535,m=function(t){let e,r,s,h,m,p;const v=this,x=!1!==t.storeEntries?{}:null,k=t.file,S=t.nameEncoding?new TextDecoder(t.nameEncoding):null;function B(){i.fstat(e,((i,n)=>{if(i)return v.emit("error",i);r=n.size,s=t.chunkSize||Math.round(r/1e3),s=Math.max(Math.min(s,Math.min(131072,r)),Math.min(1024,r)),function(){const t=Math.min(65557,r);h={win:new I(e),totalReadLength:t,minPos:r-t,lastPos:r,chunkSize:Math.min(1024,s),firstByte:80,sig:c,complete:O},h.win.read(r-h.chunkSize,h.chunkSize,P)}()}))}function P(t,e){if(t||!e)return v.emit("error",t||new Error("Archive read error"));let r=h.lastPos,i=r-h.win.position;const s=h.win.buffer,n=h.minPos;for(;--r>=n&&--i>=0;)if(s.length-i>=4&&s[i]===h.firstByte&&s.readUInt32LE(i)===h.sig)return h.lastBufferPosition=i,h.lastBytesRead=e,void h.complete();if(r===n)return v.emit("error",new Error("Bad archive"));if(h.lastPos=r+1,h.chunkSize*=2,r<=n)return v.emit("error",new Error("Bad archive"));const o=Math.min(h.chunkSize,r-n);h.win.expandLeft(o,P)}function O(){const t=h.win.buffer,e=h.lastBufferPosition;try{m=new E,m.read(t.slice(e,e+22)),m.headerOffset=h.win.position+e,m.commentLength?v.comment=t.slice(e+22,e+22+m.commentLength).toString():v.comment=null,v.entriesCount=m.volumeEntries,v.centralDirectory=m,m.volumeEntries===u&&m.totalEntries===u||m.size===d||m.offset===d?h.lastBufferPosition>20?(h.lastBufferPosition-=20,R()):(h={win:h.win,totalReadLength:20,minPos:h.win.position-20,lastPos:h.win.position,chunkSize:h.chunkSize,firstByte:80,sig:f,complete:R},h.win.read(h.lastPos-h.chunkSize,h.chunkSize,P)):(h={},j())}catch(t){v.emit("error",t)}}function R(){const t=h.win.buffer,e=new w;e.read(t.slice(h.lastBufferPosition,h.lastBufferPosition+20));const i=r-e.headerOffset;h={win:h.win,totalReadLength:i,minPos:e.headerOffset,lastPos:h.lastPos,chunkSize:h.chunkSize,firstByte:80,sig:l,complete:D},h.win.read(r-h.chunkSize,h.chunkSize,P)}function D(){const t=h.win.buffer,e=new y;e.read(t.slice(h.lastBufferPosition,h.lastBufferPosition+56)),v.centralDirectory.volumeEntries=e.volumeEntries,v.centralDirectory.totalEntries=e.totalEntries,v.centralDirectory.size=e.size,v.centralDirectory.offset=e.offset,v.entriesCount=e.volumeEntries,h={},j()}function j(){h={win:new I(e),pos:m.offset,chunkSize:s,entriesLeft:m.volumeEntries},h.win.read(h.pos,Math.min(s,r-h.pos),C)}function C(e,r){if(e||!r)return v.emit("error",e||new Error("Entries read error"));let i=h.pos-h.win.position,n=h.entry;const o=h.win.buffer,a=o.length;try{for(;h.entriesLeft>0;){n||(n=new g,n.readHeader(o,i),n.headerOffset=h.win.position+i,h.entry=n,h.pos+=46,i+=46);const e=n.fnameLen+n.extraLen+n.comLen;if(a-i<e+(h.entriesLeft>1?46:0))return h.win.moveRight(s,C,i),void(h.move=!0);n.read(o,i,S),t.skipEntryNameValidation||n.validateName(),x&&(x[n.name]=n),v.emit("entry",n),h.entry=n=null,h.entriesLeft--,h.pos+=e,i+=e}v.emit("ready")}catch(e){v.emit("error",e)}}function M(){if(!x)throw new Error("storeEntries disabled")}function T(t){return t.offset+30+t.fnameLen+t.extraLen}function q(t){return 8!=(8&t.flags)}function A(t,r,s){v.stream(t,((n,o)=>{if(n)s(n);else{let n,a;o.on("error",(t=>{a=t,n&&(o.unpipe(n),n.close((()=>{s(t)})))})),i.open(r,"w",((h,c)=>{if(h)return s(h);a?i.close(e,(()=>{s(a)})):(n=i.createWriteStream(r,{fd:c}),n.on("finish",(()=>{v.emit("extract",t,r),a||s()})),o.pipe(n))}))}}))}function F(t,e,r){if(!e.length)return r();let s=e.shift();s=n.join(t,n.join(...s)),i.mkdir(s,{recursive:!0},(i=>{if(i&&"EEXIST"!==i.code)return r(i);F(t,e,r)}))}function H(t,e,r,i,s){if(!r.length)return i(null,s);const o=r.shift(),a=n.join(t,o.name.replace(e,""));A(o,a,(n=>{if(n)return i(n,s);H(t,e,r,i,s+1)}))}t.fd?(e=t.fd,B()):i.open(k,"r",((t,r)=>{if(t)return v.emit("error",t);e=r,B()})),Object.defineProperty(this,"ready",{get:()=>!1}),this.entry=function(t){return M(),x[t]},this.entries=function(){return M(),x},this.stream=function(t,r){return this.openEntry(t,((t,i)=>{if(t)return r(t);const s=T(i);let n=new b(e,s,i.compressedSize);if(0===i.method);else{if(8!==i.method)return r(new Error("Unknown compression method: "+i.method));n=n.pipe(a.createInflateRaw())}q(i)&&(n=n.pipe(new z(n,i.crc,i.size))),r(null,n)}),!1)},this.entryDataSync=function(t){let r=null;if(this.openEntry(t,((e,i)=>{r=e,t=i}),!0),r)throw r;let i=Buffer.alloc(t.compressedSize);if(new L(e,i,0,t.compressedSize,T(t),(t=>{r=t})).read(!0),r)throw r;if(0===t.method);else{if(8!==t.method&&9!==t.method)throw new Error("Unknown compression method: "+t.method);i=a.inflateRawSync(i)}if(i.length!==t.size)throw new Error("Invalid size");return q(t)&&new U(t.crc,t.size).data(i),i},this.openEntry=function(t,r,i){if("string"==typeof t&&(M(),!(t=x[t])))return r(new Error("Entry not found"));if(!t.isFile)return r(new Error("Entry is not file"));if(!e)return r(new Error("Archive closed"));const s=Buffer.alloc(30);new L(e,s,0,s.length,t.offset,(e=>{if(e)return r(e);let i;try{t.readDataHeader(s),t.encrypted&&(i=new Error("Entry encrypted"))}catch(t){i=t}r(i,t)})).read(i)},this.extract=function(t,e,r){let s=t||"";if("string"==typeof t&&((t=this.entry(t))?s=t.name:s.length&&"/"!==s[s.length-1]&&(s+="/")),!t||t.isDirectory){const t=[],i=[],o={};for(const e in x)if(Object.prototype.hasOwnProperty.call(x,e)&&0===e.lastIndexOf(s,0)){let r=e.replace(s,"");const a=x[e];if(a.isFile&&(t.push(a),r=n.dirname(r)),r&&!o[r]&&"."!==r){o[r]=!0;let t=r.split("/").filter((t=>t));for(t.length&&i.push(t);t.length>1;){t=t.slice(0,t.length-1);const e=t.join("/");if(o[e]||"."===e)break;o[e]=!0,i.push(t)}}}i.sort(((t,e)=>t.length-e.length)),i.length?F(e,i,(i=>{i?r(i):H(e,s,t,r,0)})):H(e,s,t,r,0)}else i.stat(e,((i,s)=>{s&&s.isDirectory()?A(t,n.join(e,n.basename(t.name)),r):A(t,e,r)}))},this.close=function(t){p||!e?(p=!0,t&&t()):(p=!0,i.close(e,(r=>{e=null,t&&t(r)})))};const N=o.EventEmitter.prototype.emit;this.emit=function(...t){if(!p)return N.call(this,...t)}};m.setFs=function(t){i=t},m.debugLog=(...t)=>{m.debug&&console.log(...t)},s.inherits(m,o.EventEmitter);const p=Symbol("zip");m.async=class extends o.EventEmitter{constructor(t){super();const e=new m(t);e.on("entry",(t=>this.emit("entry",t))),e.on("extract",((t,e)=>this.emit("extract",t,e))),this[p]=new Promise(((t,r)=>{e.on("ready",(()=>{e.removeListener("error",r),t(e)})),e.on("error",r)}))}get entriesCount(){return this[p].then((t=>t.entriesCount))}get comment(){return this[p].then((t=>t.comment))}async entry(t){return(await this[p]).entry(t)}async entries(){return(await this[p]).entries()}async stream(t){const e=await this[p];return new Promise(((r,i)=>{e.stream(t,((t,e)=>{t?i(t):r(e)}))}))}async entryData(t){const e=await this.stream(t);return new Promise(((t,r)=>{const i=[];e.on("data",(t=>i.push(t))),e.on("end",(()=>{t(Buffer.concat(i))})),e.on("error",(t=>{e.removeAllListeners("end"),r(t)}))}))}async extract(t,e){const r=await this[p];return new Promise(((i,s)=>{r.extract(t,e,((t,e)=>{t?s(t):i(e)}))}))}async close(){const t=await this[p];return new Promise(((e,r)=>{t.close((t=>{t?r(t):e()}))}))}};class E{read(t){if(22!==t.length||t.readUInt32LE(0)!==c)throw new Error("Invalid central directory");this.volumeEntries=t.readUInt16LE(8),this.totalEntries=t.readUInt16LE(10),this.size=t.readUInt32LE(12),this.offset=t.readUInt32LE(16),this.commentLength=t.readUInt16LE(20)}}class w{read(t){if(20!==t.length||t.readUInt32LE(0)!==f)throw new Error("Invalid zip64 central directory locator");this.headerOffset=k(t,8)}}class y{read(t){if(56!==t.length||t.readUInt32LE(0)!==l)throw new Error("Invalid central directory");this.volumeEntries=k(t,24),this.totalEntries=k(t,32),this.size=k(t,40),this.offset=k(t,48)}}class g{readHeader(t,e){if(t.length<e+46||33639248!==t.readUInt32LE(e))throw new Error("Invalid entry header");this.verMade=t.readUInt16LE(e+4),this.version=t.readUInt16LE(e+6),this.flags=t.readUInt16LE(e+8),this.method=t.readUInt16LE(e+10);const r=t.readUInt16LE(e+12),i=t.readUInt16LE(e+12+2);this.time=v(r,i),this.crc=t.readUInt32LE(e+16),this.compressedSize=t.readUInt32LE(e+20),this.size=t.readUInt32LE(e+24),this.fnameLen=t.readUInt16LE(e+28),this.extraLen=t.readUInt16LE(e+30),this.comLen=t.readUInt16LE(e+32),this.diskStart=t.readUInt16LE(e+34),this.inattr=t.readUInt16LE(e+36),this.attr=t.readUInt32LE(e+38),this.offset=t.readUInt32LE(e+42)}readDataHeader(t){if(67324752!==t.readUInt32LE(0))throw new Error("Invalid local header");this.version=t.readUInt16LE(4),this.flags=t.readUInt16LE(6),this.method=t.readUInt16LE(8);const e=t.readUInt16LE(10),r=t.readUInt16LE(12);this.time=v(e,r),this.crc=t.readUInt32LE(14)||this.crc;const i=t.readUInt32LE(18);i&&i!==d&&(this.compressedSize=i);const s=t.readUInt32LE(22);s&&s!==d&&(this.size=s),this.fnameLen=t.readUInt16LE(26),this.extraLen=t.readUInt16LE(28)}read(t,e,r){const i=t.slice(e,e+=this.fnameLen);this.name=r?r.decode(new Uint8Array(i)):i.toString("utf8");const s=t[e-1];this.isDirectory=47===s||92===s,this.extraLen&&(this.readExtra(t,e),e+=this.extraLen),this.comment=this.comLen?t.slice(e,e+this.comLen).toString():null}validateName(){if(/\\|^\w+:|^\/|(^|\/)\.\.(\/|$)/.test(this.name))throw new Error("Malicious entry: "+this.name)}readExtra(t,e){let r,i;const s=e+this.extraLen;for(;e<s;)r=t.readUInt16LE(e),e+=2,i=t.readUInt16LE(e),e+=2,1===r&&this.parseZip64Extra(t,e,i),e+=i}parseZip64Extra(t,e,r){r>=8&&this.size===d&&(this.size=k(t,e),e+=8,r-=8),r>=8&&this.compressedSize===d&&(this.compressedSize=k(t,e),e+=8,r-=8),r>=8&&this.offset===d&&(this.offset=k(t,e),e+=8,r-=8),r>=4&&this.diskStart===u&&(this.diskStart=t.readUInt32LE(e))}get encrypted(){return 1==(1&this.flags)}get isFile(){return!this.isDirectory}}class L{constructor(t,e,r,i,s,n){this.fd=t,this.buffer=e,this.offset=r,this.length=i,this.position=s,this.callback=n,this.bytesRead=0,this.waiting=!1}read(t){let e;if(m.debugLog("read",this.position,this.bytesRead,this.length,this.offset),this.waiting=!0,t){let r=0;try{r=i.readSync(this.fd,this.buffer,this.offset+this.bytesRead,this.length-this.bytesRead,this.position+this.bytesRead)}catch(t){e=t}this.readCallback(t,e,e?r:null)}else i.read(this.fd,this.buffer,this.offset+this.bytesRead,this.length-this.bytesRead,this.position+this.bytesRead,this.readCallback.bind(this,t))}readCallback(t,e,r){if("number"==typeof r&&(this.bytesRead+=r),e||!r||this.bytesRead===this.length)return this.waiting=!1,this.callback(e,this.bytesRead);this.read(t)}}class I{constructor(t){this.position=0,this.buffer=Buffer.alloc(0),this.fd=t,this.fsOp=null}checkOp(){if(this.fsOp&&this.fsOp.waiting)throw new Error("Operation in progress")}read(t,e,r){this.checkOp(),this.buffer.length<e&&(this.buffer=Buffer.alloc(e)),this.position=t,this.fsOp=new L(this.fd,this.buffer,0,e,this.position,r).read()}expandLeft(t,e){this.checkOp(),this.buffer=Buffer.concat([Buffer.alloc(t),this.buffer]),this.position-=t,this.position<0&&(this.position=0),this.fsOp=new L(this.fd,this.buffer,0,t,this.position,e).read()}expandRight(t,e){this.checkOp();const r=this.buffer.length;this.buffer=Buffer.concat([this.buffer,Buffer.alloc(t)]),this.fsOp=new L(this.fd,this.buffer,r,t,this.position+r,e).read()}moveRight(t,e,r){this.checkOp(),r?this.buffer.copy(this.buffer,0,r):r=0,this.position+=r,this.fsOp=new L(this.fd,this.buffer,this.buffer.length-r,r,this.position+this.buffer.length-r,e).read()}}class b extends h.Readable{constructor(t,e,r){super(),this.fd=t,this.offset=e,this.length=r,this.pos=0,this.readCallback=this.readCallback.bind(this)}_read(t){const e=Buffer.alloc(Math.min(t,this.length-this.pos));e.length?i.read(this.fd,e,0,e.length,this.offset+this.pos,this.readCallback):this.push(null)}readCallback(t,e,r){this.pos+=e,t?(this.emit("error",t),this.push(null)):e?(e!==r.length&&(r=r.slice(0,e)),this.push(r)):this.push(null)}}class z extends h.Transform{constructor(t,e,r){super(),this.verify=new U(e,r),t.on("error",(t=>{this.emit("error",t)}))}_transform(t,e,r){let i;try{this.verify.data(t)}catch(t){i=t}r(i,t)}}class U{constructor(t,e){this.crc=t,this.size=e,this.state={crc:-1,size:0}}data(t){const e=U.getCrcTable();let r=this.state.crc,i=0,s=t.length;for(;--s>=0;)r=e[255&(r^t[i++])]^r>>>8;if(this.state.crc=r,this.state.size+=t.length,this.state.size>=this.size){const t=Buffer.alloc(4);if(t.writeInt32LE(4294967295&~this.state.crc,0),r=t.readUInt32LE(0),r!==this.crc)throw new Error("Invalid CRC");if(this.state.size!==this.size)throw new Error("Invalid size")}}static getCrcTable(){let t=U.crcTable;if(!t){U.crcTable=t=[];const e=Buffer.alloc(4);for(let r=0;r<256;r++){let i=r;for(let t=8;--t>=0;)0!=(1&i)?i=3988292384^i>>>1:i>>>=1;i<0&&(e.writeInt32LE(i,0),i=e.readUInt32LE(0)),t[r]=i}}return t}}function v(t,e){const r=x(t,16),i=x(e,16),s={h:parseInt(r.slice(0,5).join(""),2),m:parseInt(r.slice(5,11).join(""),2),s:2*parseInt(r.slice(11,16).join(""),2),Y:parseInt(i.slice(0,7).join(""),2)+1980,M:parseInt(i.slice(7,11).join(""),2),D:parseInt(i.slice(11,16).join(""),2)},n=[s.Y,s.M,s.D].join("-")+" "+[s.h,s.m,s.s].join(":")+" GMT+0";return new Date(n).getTime()}function x(t,e){let r=(t>>>0).toString(2);for(;r.length<e;)r="0"+r;return r.split("")}function k(t,e){return 4294967296*t.readUInt32LE(e+4)+t.readUInt32LE(e)}t.exports=m},2361:t=>{"use strict";t.exports=require("events")},7147:t=>{"use strict";t.exports=require("fs")},1017:t=>{"use strict";t.exports=require("path")},2781:t=>{"use strict";t.exports=require("stream")},3837:t=>{"use strict";t.exports=require("util")},9796:t=>{"use strict";t.exports=require("zlib")}},e={},r=function r(i){var s=e[i];if(void 0!==s)return s.exports;var n=e[i]={exports:{}};return t[i](n,n.exports,r),n.exports}(1020);module.exports=r})();
//# sourceMappingURL=node-stream-zip.js.map