@zip.js/zip.js 2.11.3 → 2.11.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/deno.json +1 -1
- package/dist/zip-core-external.js +36 -23
- package/dist/zip-core-external.min.js +1 -1
- package/dist/zip-core.js +36 -23
- package/dist/zip-core.min.js +1 -1
- package/dist/zip-fs-core-external.js +36 -25
- package/dist/zip-fs-core-external.min.js +1 -1
- package/dist/zip-fs-core.js +36 -25
- package/dist/zip-fs-core.min.js +1 -1
- package/dist/zip-fs-external.js +36 -25
- package/dist/zip-fs-external.min.js +1 -1
- package/dist/zip-fs-native.js +36 -25
- package/dist/zip-fs-native.min.js +1 -1
- package/dist/zip-fs.js +36 -25
- package/dist/zip-fs.min.js +1 -1
- package/dist/zip-legacy.js +36 -23
- package/dist/zip-legacy.min.js +1 -1
- package/dist/zip-native.js +36 -23
- package/dist/zip-native.min.js +1 -1
- package/dist/zip.js +36 -23
- package/dist/zip.min.js +1 -1
- package/index-native.cjs +36 -25
- package/index-native.min.js +1 -1
- package/index.cjs +36 -25
- package/index.d.cts +12 -0
- package/index.d.ts +12 -0
- package/index.min.js +1 -1
- package/lib/core/io.js +7 -5
- package/lib/core/options.js +13 -0
- package/lib/core/version.js +1 -1
- package/lib/core/zip-fs.js +1 -3
- package/lib/core/zip-reader.js +20 -17
- package/lib/core/zip-writer.js +2 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=4294967295,e=65535,r=255,n=67324752,o=134695760,a=o,i=84233040,s=33639248,c=101010256,l=101075792,u=117853008,f=46,d=22,w=20,p=56,m=21589,h=2048,y=61440,E=16384,b=2048,S=1024,g="/",A=30,R=new Date(2107,11,31,23,59,58),D=new Date(1980,0,1),z=void 0,x=1/0,F="undefined",T="function",I="string",U=new Uint8Array,k="password",O="rawPassword",C="passThrough",N="signal",M="useWebWorkers",v="useCompressionStream",_="transferStreams",L="preventClose",B="dataDescriptor",P="offset",W="usdz",j="maxAppendedDataSize",V="filename",Z="comment",H="strict",G="balanced",K="tolerant",q="Invalid option (must be a function)",Y="Invalid signal (must be an AbortSignal instance)",X="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function J(t){if(t&&typeof t!=T)throw new Error(q);return t}function Q(t){if(t&&(typeof t.addEventListener!=T||"boolean"!=typeof t.aborted))throw new Error(Y);return t||z}function $(t,e){if(t&&typeof t!=I||e&&!(e instanceof Uint8Array))throw new Error(X)}function tt(t,e,r){if(!Number.isInteger(t)||t<0||t>e)throw new Error(r)}function et(t,e,r){t!==z&&tt(t,e,r)}function rt(t){return typeof t==I&&t.trim()?Number(t):t}const nt="Invalid maxWorkers (must be an integer greater than 0)";let ot=2;try{typeof navigator!=F&&navigator.hardwareConcurrency&&(ot=navigator.hardwareConcurrency)}catch{}const at={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:ot,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof CompressionStream!=F&&CompressionStream,DecompressionStream:typeof DecompressionStream!=F&&DecompressionStream},it="maxWorkers",st=["chunkSize",it,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],ct=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],lt=["baseURI","wasmURI","workerURI","useCompressionStream","useWebWorkers","transferStreams",...st,...ct],ut={...at};function ft(){return ut}function dt(t){return wt(t.chunkSize)}function wt(t){return t=rt(t),Number.isInteger(t)&&t>=1?Math.max(t,64):65536}function pt(t){Object.assign(ut,mt(yt(t)))}function mt(t){const e={};for(const r of lt){const n=t[r];n!==z&&(e[r]=ht(r,n))}return e}function ht(t,e){if(st.includes(t)){if(e=rt(e),t==it&&(!Number.isInteger(e)||e<1))throw new Error(nt)}else ct.includes(t)&&J(e);return e}function yt(t){t=t||{};const{CompressionStreamZlib:e,DecompressionStreamZlib:r}=t;if(e===z&&r===z)return t;const n=Object.assign({},t);return n.CompressionStreamFallback===z&&(n.CompressionStreamFallback=e),n.DecompressionStreamFallback===z&&(n.DecompressionStreamFallback=r),n}function Et(t){const e=mt(yt(t));Object.assign(at,e),Object.assign(ut,e)}function bt(){for(const t of lt)delete ut[t];Object.assign(ut,at)}function St(t,e){const r=new Uint8Array(t.length+e.length);return r.set(t),r.set(e,t.length),r}function gt(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new Uint8Array(t):t}function At(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}const Rt=[[],[],[],[],[],[],[],[]];for(let t=0;t<256;t++){let e=t;for(let t=0;t<8;t++)e=1&e?e>>>1^3988292384:e>>>1;Rt[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){const r=Rt[e-1][t];Rt[e][t]=r>>>8^Rt[0][255&r]}const[Dt,zt,xt,Ft,Tt,It,Ut,kt]=Rt;class Ot{constructor(t){this.o=t||-1}append(t){let e=0|this.o;const r=0|t.length;let n=0;if(r>=8&&t.buffer){const o=new DataView(t.buffer,t.byteOffset,r),a=r-8;for(;n<=a;n+=8){const t=e^o.getInt32(n,!0),r=o.getInt32(n+4,!0);e=kt[255&t]^Ut[t>>>8&255]^It[t>>>16&255]^Tt[t>>>24&255]^Ft[255&r]^xt[r>>>8&255]^zt[r>>>16&255]^Dt[r>>>24&255]}}for(;n<r;n++)e=e>>>8^Dt[255&(e^t[n])];this.o=e}get(){return~this.o}}class Ct extends TransformStream{constructor(){let t;const e=new Ot;super({transform(t,r){e.append(t),r.enqueue(t)},flush(){const r=new Uint8Array(4);new DataView(r.buffer).setUint32(0,e.get()),t.value=r}}),t=this}}function Nt(t){if(typeof TextEncoder==F){t=unescape(encodeURIComponent(t));const e=new Uint8Array(t.length);for(let r=0;r<e.length;r++)e[r]=t.charCodeAt(r);return e}return(new TextEncoder).encode(t)}const Mt={concat(t,e){if(0===t.length||0===e.length)return t.concat(e);const r=t[t.length-1],n=Mt.l(r);return 32===n?t.concat(e):Mt.m(e,n,0|r,t.slice(0,t.length-1))},bitLength(t){const e=t.length;if(0===e)return 0;const r=t[e-1];return 32*(e-1)+Mt.l(r)},h(t,e){if(32*t.length<e)return t;const r=(t=t.slice(0,Math.ceil(e/32))).length;return e&=31,r>0&&e&&(t[r-1]=Mt.S(e,t[r-1]&2147483648>>e-1,1)),t},S:(t,e,r)=>32===t?e:(r?0|e:e<<32-t)+1099511627776*t,l:t=>Math.round(t/1099511627776)||32,m(t,e,r,n){for(void 0===n&&(n=[]);e>=32;e-=32)n.push(r),r=0;if(0===e)return n.concat(t);for(let o=0;o<t.length;o++)n.push(r|t[o]>>>e),r=t[o]<<32-e;const o=t.length?t[t.length-1]:0,a=Mt.l(o);return n.push(Mt.S(e+a&31,e+a>32?r:n.pop(),1)),n}},vt={bytes:{A(t){const e=Mt.bitLength(t)/8,r=new Uint8Array(e);let n;for(let o=0;o<e;o++)3&o||(n=t[o/4]),r[o]=n>>>24,n<<=8;return r},R(t){const e=[];let r,n=0;for(r=0;r<t.length;r++)n=n<<8|t[r],3&~r||(e.push(n),n=0);return 3&r&&e.push(Mt.S(8*(3&r),n)),e}}},_t=class{constructor(t){const e=this;e.blockSize=512,e.D=[1732584193,4023233417,2562383102,271733878,3285377520],e.F=[1518500249,1859775393,2400959708,3395469782],t?(e.T=t.T.slice(0),e.I=t.I.slice(0),e.U=t.U):e.reset()}reset(){const t=this;return t.T=t.D.slice(0),t.I=[],t.U=0,t}update(t){const e=this;"string"==typeof t&&(t=vt.O.R(t));const r=e.I=Mt.concat(e.I,t),n=e.U,o=e.U=n+Mt.bitLength(t);if(o>9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");const a=new Uint32Array(r);let i=0;for(let t=e.blockSize+n-(e.blockSize+n&e.blockSize-1);t<=o;t+=e.blockSize)e.C(a.subarray(16*i,16*(i+1))),i+=1;return r.splice(0,16*i),e}N(){const t=this;let e=t.I;const r=t.T;e=Mt.concat(e,[Mt.S(1,1)]);for(let t=e.length+2;15&t;t++)e.push(0);for(e.push(Math.floor(t.U/4294967296)),e.push(0|t.U);e.length;)t.C(e.splice(0,16));return t.reset(),r}M(t,e,r,n){return t<=19?e&r|~e&n:t<=39?e^r^n:t<=59?e&r|e&n|r&n:t<=79?e^r^n:void 0}v(t,e){return e<<t|e>>>32-t}C(t){const e=this,r=e.T,n=Array(80);for(let e=0;e<16;e++)n[e]=t[e];let o=r[0],a=r[1],i=r[2],s=r[3],c=r[4];for(let t=0;t<=79;t++){t>=16&&(n[t]=e.v(1,n[t-3]^n[t-8]^n[t-14]^n[t-16]));const r=e.v(5,o)+e.M(t,a,i,s)+c+n[t]+e.F[Math.floor(t/20)]|0;c=s,s=i,i=e.v(30,a),a=o,o=r}r[0]=r[0]+o|0,r[1]=r[1]+a|0,r[2]=r[2]+i|0,r[3]=r[3]+s|0,r[4]=r[4]+c|0}},Lt={importKey:t=>new Lt._(vt.bytes.R(t)),L(t,e,r,n){if(r=r||1e4,n<0||r<0)throw new Error("invalid params to pbkdf2");const o=1+(n>>5)<<2;let a,i,s,c,l;const u=new ArrayBuffer(o),f=new DataView(u);let d=0;const w=Mt;for(e=vt.bytes.R(e),l=1;d<(o||1);l++){for(a=i=t.encrypt(w.concat(e,[l])),s=1;s<r;s++)for(i=t.encrypt(i),c=0;c<i.length;c++)a[c]^=i[c];for(s=0;d<(o||1)&&s<a.length;s++)f.setInt32(d,a[s]),d+=4}return u.slice(0,n/8)},_:class{constructor(t){const e=this,r=e.B=_t,n=[[],[]];e.P=[new r,new r];const o=e.P[0].blockSize/32;t.length>o&&(t=(new r).update(t).N());for(let e=0;e<o;e++)n[0][e]=909522486^t[e],n[1][e]=1549556828^t[e];e.P[0].update(n[0]),e.P[1].update(n[1]),e.W=new r(e.P[0])}reset(){const t=this;t.W=new t.B(t.P[0]),t.j=!1}update(t){this.j=!0,this.W.update(t)}digest(){const t=this,e=t.W.N(),r=new t.B(t.P[1]).update(e).N();return t.reset(),r}encrypt(t){if(this.j)throw new Error("encrypt on already updated hmac called!");return this.update(t),this.digest(t)}}},Bt=typeof crypto!=F&&typeof crypto.getRandomValues==T,Pt="Invalid password",Wt="Invalid authentication code",jt="zipjs-abort-check-password",Vt="Crypto API not supported";function Zt(t){if(Bt)return crypto.getRandomValues(t);throw new Error(Vt)}const Ht=16,Gt={name:"PBKDF2"},Kt=Object.assign({hash:{name:"HMAC"}},Gt),qt=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},Gt),Yt=["deriveBits"],Xt=[8,12,16],Jt=[16,24,32],Qt=10,$t=[0,0,0,0],te=typeof crypto!=F,ee=te&&crypto.subtle,re=te&&typeof ee!=F,ne=vt.bytes,oe=class{constructor(t){const e=this;e.V=[[[],[],[],[],[]],[[],[],[],[],[]]],e.V[0][0][0]||e.Z();const r=e.V[0][4],n=e.V[1],o=t.length;let a,i,s,c=1;if(4!==o&&6!==o&&8!==o)throw new Error("invalid aes key size");for(e.F=[i=t.slice(0),s=[]],a=o;a<4*o+28;a++){let t=i[a-1];(a%o===0||8===o&&a%o===4)&&(t=r[t>>>24]<<24^r[t>>16&255]<<16^r[t>>8&255]<<8^r[255&t],a%o===0&&(t=t<<8^t>>>24^c<<24,c=c<<1^283*(c>>7))),i[a]=i[a-o]^t}for(let t=0;a;t++,a--){const e=i[3&t?a:a-4];s[t]=a<=4||t<4?e:n[0][r[e>>>24]]^n[1][r[e>>16&255]]^n[2][r[e>>8&255]]^n[3][r[255&e]]}}encrypt(t){return this.H(t,0)}decrypt(t){return this.H(t,1)}Z(){const t=this.V[0],e=this.V[1],r=t[4],n=e[4],o=[],a=[];let i,s,c,l;for(let t=0;t<256;t++)a[(o[t]=t<<1^283*(t>>7))^t]=t;for(let u=i=0;!r[u];u^=s||1,i=a[i]||1){let a=i^i<<1^i<<2^i<<3^i<<4;a=a>>8^255&a^99,r[u]=a,n[a]=u,l=o[c=o[s=o[u]]];let f=16843009*l^65537*c^257*s^16843008*u,d=257*o[a]^16843008*a;for(let r=0;r<4;r++)t[r][u]=d=d<<24^d>>>8,e[r][a]=f=f<<24^f>>>8}for(let r=0;r<5;r++)t[r]=t[r].slice(0),e[r]=e[r].slice(0)}H(t,e){if(4!==t.length)throw new Error("invalid aes block size");const r=this.F[e],n=r.length/4-2,o=[0,0,0,0],a=this.V[e],i=a[0],s=a[1],c=a[2],l=a[3],u=a[4];let f,d,w,p=t[0]^r[0],m=t[e?3:1]^r[1],h=t[2]^r[2],y=t[e?1:3]^r[3],E=4;for(let t=0;t<n;t++)f=i[p>>>24]^s[m>>16&255]^c[h>>8&255]^l[255&y]^r[E],d=i[m>>>24]^s[h>>16&255]^c[y>>8&255]^l[255&p]^r[E+1],w=i[h>>>24]^s[y>>16&255]^c[p>>8&255]^l[255&m]^r[E+2],y=i[y>>>24]^s[p>>16&255]^c[m>>8&255]^l[255&h]^r[E+3],E+=4,p=f,m=d,h=w;for(let t=0;t<4;t++)o[e?3&-t:t]=u[p>>>24]<<24^u[m>>16&255]<<16^u[h>>8&255]<<8^u[255&y]^r[E++],f=p,p=m,m=h,h=y,y=f;return o}},ae=class{constructor(t,e){this.G=t,this.K=e,this.Y=e}reset(){this.Y=this.K}update(t){return this.X(this.G,t,this.Y)}J(t){if(255&~(t>>24))t+=1<<24;else{let e=t>>16&255,r=t>>8&255,n=255&t;255===e?(e=0,255===r?(r=0,255===n?n=0:++n):++r):++e,t=0,t+=e<<16,t+=r<<8,t+=n}return t}$(t){0===(t[0]=this.J(t[0]))&&(t[1]=this.J(t[1]))}X(t,e,r){let n;if(!(n=e.length))return[];const o=Mt.bitLength(e);for(let o=0;o<n;o+=4){this.$(r);const n=t.encrypt(r);e[o]^=n[0],e[o+1]^=n[1],e[o+2]^=n[2],e[o+3]^=n[3]}return Mt.h(e,o)}},ie=Lt._;let se=te&&re&&typeof ee.importKey==T,ce=te&&re&&typeof ee.deriveBits==T;class le extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r,checkPasswordOnly:n,checkAuthenticationCode:o=!0}){super({start(){fe(this,t,e,r)},async transform(t,e){const r=this,{password:o,strength:a,et:i,ready:s}=r;o?(await async function(t,e,r,n){const o=await we(t,e,r,me(n,0,Xt[e])),a=me(n,Xt[e]);if(o[0]!=a[0]||o[1]!=a[1])throw new Error(Pt)}(r,a,o,me(t,0,Xt[a]+2)),t=me(t,Xt[a]+2),n?e.error(new Error(jt)):i()):await s;const c=new Uint8Array(t.length-Qt-(t.length-Qt)%Ht);e.enqueue(de(r,t,c,0,Qt,!0))},async flush(t){const{nt:e,ot:r,it:n,ready:a}=this;if(r&&e){await a;const i=me(n,0,n.length-Qt),s=me(n,n.length-Qt);let c=U;if(i.length){const t=ye(ne,i);r.update(t);const n=e.update(t);c=he(ne,n)}const l=me(he(ne,r.digest()),0,Qt);let u=n.length<Qt?1:0;for(let t=0;t<Qt;t++)u|=l[t]^s[t];if(u&&o)throw new Error(Wt);t.enqueue(c)}}})}}class ue extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r}){super({start(){fe(this,t,e,r)},async transform(t,e){const r=this,{password:n,strength:o,et:a,ready:i}=r;let s=U;n?(s=await async function(t,e,r){const n=Zt(new Uint8Array(Xt[e]));return St(n,await we(t,e,r,n))}(r,o,n),a()):await i;const c=new Uint8Array(s.length+t.length-t.length%Ht);c.set(s,0),e.enqueue(de(r,t,c,s.length,0))},async flush(t){const{nt:e,ot:r,it:n,ready:o}=this;if(r&&e){await o;let a=U;if(n.length){const t=e.update(ye(ne,n));r.update(t),a=he(ne,t)}const i=he(ne,r.digest()).slice(0,Qt);t.enqueue(St(a,i))}}})}}function fe(t,e,r,n){Object.assign(t,{ready:new Promise(e=>t.et=e),password:pe(e,r),strength:n-1,it:U})}function de(t,e,r,n,o,a){const{nt:i,ot:s,it:c}=t;c.length&&(e=St(c,e));const l=e.length-o;let u;for(r=function(t,e){if(e&&e>t.length){const r=t;(t=new Uint8Array(e)).set(r,0)}return t}(r,n+(l-l%Ht)),u=0;u<=l-Ht;u+=Ht){const t=ye(ne,me(e,u,u+Ht));a&&s.update(t);const o=i.update(t);a||s.update(o),r.set(he(ne,o),u+n)}return t.it=me(e,u),r}async function we(t,e,r,n){t.password=null;const o=await async function(t,e,r,n,o){if(!se)return Lt.importKey(e);try{return await ee.importKey("raw",e,r,!1,o)}catch{return se=!1,Lt.importKey(e)}}(0,r,Kt,0,Yt),a=await async function(t,e,r){if(!ce)return Lt.L(e,t.salt,qt.iterations,r);try{return await ee.deriveBits(t,e,r)}catch{return ce=!1,Lt.L(e,t.salt,qt.iterations,r)}}(Object.assign({salt:n},qt),o,8*(2*Jt[e]+2)),i=new Uint8Array(a),s=ye(ne,me(i,0,Jt[e])),c=ye(ne,me(i,Jt[e],2*Jt[e])),l=me(i,2*Jt[e]);return Object.assign(t,{keys:{key:s,st:c,passwordVerification:l},nt:new ae(new oe(s),Array.from($t)),ot:new ie(c)}),l}function pe(t,e){return e===z?Nt(t):e}function me(t,e,r){return t.subarray(e,r)}function he(t,e){return t.A(e)}function ye(t,e){return t.R(e)}class Ee extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r,checkPasswordOnly:n}){super({start(){Se(this,t,e,r)},transform(t,e){const r=this;if(r.password||r.rawPassword){const e=ge(r,t.subarray(0,12));if(r.password=r.rawPassword=null,0!=(e[11]^r.passwordVerification))throw new Error(Pt);t=t.subarray(12)}n?e.error(new Error(jt)):e.enqueue(ge(r,t))}})}}class be extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r}){super({start(){Se(this,t,e,r)},transform(t,e){const r=this;let n,o;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const e=Zt(new Uint8Array(12));e[11]=r.passwordVerification,n=new Uint8Array(t.length+e.length),n.set(Ae(r,e),0),o=12}else n=new Uint8Array(t.length),o=0;n.set(Ae(r,t),o),e.enqueue(n)}})}}function Se(t,e,r,n){Object.assign(t,{password:e,rawPassword:r,passwordVerification:n}),function(t,e,r){const n=[305419896,591751049,878082192];if(Object.assign(t,{keys:n,ct:new Ot(n[0]),lt:new Ot(n[2])}),r)for(let e=0;e<r.length;e++)Re(t,r[e]);else for(let r=0;r<e.length;r++)Re(t,e.charCodeAt(r))}(t,e,r)}function ge(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=De(t)^e[n],Re(t,r[n]);return r}function Ae(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=De(t)^e[n],Re(t,e[n]);return r}function Re(t,e){let[,r]=t.keys;t.ct.append([e]);const n=~t.ct.get();r=xe(Math.imul(xe(r+ze(n)),134775813)+1),t.lt.append([r>>>24]);const o=~t.lt.get();t.keys=[n,r,o]}function De(t){const e=2|t.keys[2];return ze(Math.imul(e,1^e)>>>8)}function ze(t){return 255&t}function xe(t){return 4294967295&t}function Fe(t){if(t instanceof ReadableStream)return t;const e=t.getReader();return new ReadableStream({async pull(t){const{value:r,done:n}=await e.read();n?t.close():t.enqueue(r)},cancel:t=>e.cancel(t)})}function Te(t,e){t=Fe(t);const r=e?{type:e}:{};if(typeof Blob.prototype.stream!=T||new Blob([]).stream()instanceof ReadableStream)return new Response(t).blob().then(t=>e?new Blob([t],r):t);const n=[];return t.pipeTo(new WritableStream({write(t){n.push(t)}})).then(()=>new Blob(n,r))}function Ie(t){if(t instanceof WritableStream)return t;const e=t.getWriter();return new WritableStream({write:t=>e.write(t),close:()=>e.close(),abort:t=>e.abort(t)})}const Ue="Invalid codec definition",ke="Reserved compression method",Oe="Invalid codec module",Ce="Compression method not supported",Ne=[0,8,9,99],Me=new Map,ve=new Map;function _e(t={}){const{compressionMethod:r,format:n,codecURI:o,CompressionStream:a,DecompressionStream:i,versionNeeded:s}=t;if(!Number.isInteger(r)||r<0||r>e||typeof n!=I||!n.length)throw new Error(Ue);if(Ne.includes(r))throw new Error(ke);const c=typeof a==T||typeof i==T;if(!(c||typeof o==I&&o.length))throw new Error(Ue);Me.set(r,{compressionMethod:r,format:n,codecURI:o,versionNeeded:s}),c&&je(n,{CompressionStream:a,DecompressionStream:i})}function Le(t){const e=Me.get(t);if(e){let r;Me.delete(t),Me.forEach(t=>r=r||t.format==e.format),r||ve.delete(e.format)}}function Be(t){return Me.get(t)}function Pe(){return Array.from(Me.values(),t=>Object.assign({},t,ve.get(t.format)))}function We(t){return ve.get(t)}function je(t,e){const{CompressionStream:r,DecompressionStream:n}=e;if(typeof r!=T&&typeof n!=T)throw new Error(Oe);ve.set(t,{CompressionStream:r,DecompressionStream:n})}const Ve="Invalid uncompressed size",Ze="Invalid compressed data",He="Invalid CRC32",Ge="deflate-raw",Ke="deflate64-raw",qe="gzip",Ye=[31,139,8];class Xe extends TransformStream{constructor(t,{chunkSize:e,CompressionStreamFallback:r,CompressionStream:n}){super({});const{compressed:o,encrypted:a,useCompressionStream:i,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:d,inputSize:w}=t,p=this;let m,h,y,E=super.readable;const b=f&&We(f),S=c&&o&&!u&&!b&&(!a||s)&&Boolean(i&&n);if(a&&!s||!c||S||(m=new Ct,E=ar(E,m)),o)if(b)E=ir(E,nr(b.CompressionStream,f,{level:l,chunkSize:e,compressionMethod:d,uncompressedSize:w}));else if(S)y=new Je,E=ir(E,new n(qe)),E=ar(E,y);else try{E=or(E,i,{level:l,chunkSize:e},n,r)}catch(t){let e;try{e=new n(qe)}catch{throw t}E=ir(E,e),E=ar(E,new Je)}a&&(s?E=ar(E,new be(t)):(h=new ue(t),E=ar(E,h))),rr(p,E,()=>{a&&!s||!c||(p.crc32=S?y.crc32:new DataView(m.value.buffer).getUint32(0))})}}class Je extends TransformStream{constructor(){let t,e=10,r=new Uint8Array(0);super({transform(t,n){if(e){const r=Math.min(e,t.length);if(e-=r,!(t=t.subarray(r)).length)return}const o=r.length+t.length;if(o<=8)return void(r=St(r,t));const a=o-8,i=Math.min(a,r.length);n.enqueue(St(r.subarray(0,i),t.subarray(0,a-i))),r=St(r.subarray(i),t.subarray(a-i))},flush(){const e=At(r);t.crc32=e.getUint32(0,!0),t.uncompressedSize=e.getUint32(4,!0)}}),t=this}}class Qe extends TransformStream{constructor(t,{chunkSize:e,DecompressionStreamFallback:r,DecompressionStream:n}){super({});const{zipCrypto:o,encrypted:a,checkCrc32:i,crc32:s,compressed:c,useCompressionStream:l,deflate64:u,format:f,compressionMethod:d,rawBitFlag:w,outputSize:p}=t;let m,h,y=super.readable;if(a&&(o?y=ar(y,new Ee(t)):(h=new le(t),y=ar(y,h))),c){const t=f&&We(f);if(t)y=ir(y,nr(t.DecompressionStream,f,{chunkSize:e,compressionMethod:d,rawBitFlag:w,uncompressedSize:p}));else try{y=or(y,l,{chunkSize:e,deflate64:u},n,r)}catch(t){if(u||p===z)throw t;let e;try{e=new n(qe)}catch{throw t}y=function(t,e,r){const n=new Ot;let o,a,i,s=0,c=!1;const l=new Promise((t,e)=>{a=t,i=e});l.catch(()=>{}),r||a();const u=new TransformStream({start(t){const e=new Uint8Array(10);e.set(Ye),t.enqueue(e)},transform(t,e){e.enqueue(t)},async flush(t){c=!0,d();try{await l}finally{w()}const e=new Uint8Array(8),o=At(e);o.setUint32(0,n.get(),!0),o.setUint32(4,r,!0),t.enqueue(e)},cancel(t){i(t)}}),f=new TransformStream({transform(t,e){n.append(t),s+=t.length,s>=r?a():c&&d(),e.enqueue(t)},cancel(t){i(t)}});return t=ar(t,u),ar(t=ir(t,e),f);function d(){w(),o=setTimeout(()=>i(new Error(Ve)),5e3)}function w(){clearTimeout(o)}}(y,e,p)}y=function(t){const e=t.getReader();return new ReadableStream({async pull(t){let r;try{r=await e.read()}catch(t){if(t&&t.message)throw t;const e=new Error(Ze);throw e.cause=t,e}const{value:n,done:o}=r;o?t.close():t.enqueue(n)},cancel:t=>e.cancel(t)})}(y)}i&&(m=new Ct,y=ar(y,m)),rr(this,y,()=>{if(i){const t=new DataView(m.value.buffer);if(s!=t.getUint32(0,!1))throw new Error(He)}})}}const $e=new Map;function tr(t,e){if(!t)return!1;let r=$e.get(t);r||(r=new Map,$e.set(t,r));let n=r.get(e);if(n===z){try{new t(e),n=!0}catch{n=!1}r.set(e,n)}return n}function er(t){return tr(t,Ge)}function rr(t,e,r){e=ar(e,new TransformStream({flush:r})),Object.defineProperty(t,"readable",{get:()=>e})}function nr(t,e,r){if(!t)throw new Error(Ce);return new t(e,r)}function or(t,e,r,n,o){const a=e&&n?n:o||n,i=r.deflate64?Ke:Ge;let s;try{s=new a(i,r)}catch(t){if(!e||!o||a==o)throw t;s=new o(i,r)}return ir(t,s)}function ar(t,e){return Fe(t).pipeThrough(e)}function ir(t,e){const r=e.writable.getWriter(),n=t.getReader();return async function(){try{for(;;){await r.ready;const t=await n.read();if(t.done){await r.close();break}await r.write(t.value)}}catch(t){await async function(t,e){try{await t.abort(e)}catch{}}(r,t),await async function(t,e){try{await t.cancel(e)}catch{}}(n,t)}}(),e.readable}const sr="data",cr="deflate",lr="inflate";class ur extends TransformStream{constructor(t,e){super({});const r=this,{codecType:n}=t;let o;n.startsWith(cr)?o=Xe:n.startsWith(lr)&&(o=Qe),r.outputSize=0;let a=0;const i=new o(t,e),s=super.readable,c=new TransformStream({transform(t,e){t&&t.length&&(a+=t.length,e.enqueue(t))},flush(){Object.assign(r,{inputSize:a})}}),l=new TransformStream({transform(e,n){if(e&&e.length&&(n.enqueue(e),r.outputSize+=e.length,t.outputSize!==z&&r.outputSize>t.outputSize))throw new Error(Ve)},flush(){const{crc32:t}=i;Object.assign(r,{crc32:t,inputSize:a})}});Object.defineProperty(r,"readable",{get:()=>s.pipeThrough(c).pipeThrough(i).pipeThrough(l)})}}class fr extends TransformStream{constructor(t){const e=[];let r=0;function n(){const n=new Uint8Array(t);let o=0;for(;o<t;){const r=e[0],a=t-o;r.length<=a?(n.set(r,o),o+=r.length,e.shift()):(n.set(r.subarray(0,a),o),e[0]=r.subarray(a),o+=a)}return r-=t,n}(!Number.isFinite(t)||t<1)&&(t=65536),super({transform(o,a){for(e.push(o),r+=o.length;r>t;)a.enqueue(n())},flush(t){r&&t.enqueue(function(t,e){const r=new Uint8Array(e);let n=0;for(const e of t)r.set(e,n),n+=e.length;return r}(e,r))}})}}const dr="Worker startup timeout";let wr,pr,mr,hr=()=>{};function yr(t){t.createWorker?pr=!0:wr=!1}class Er{constructor(t,{readable:e,writable:r},{options:n,config:o,ut:a,useWebWorkers:i,transferStreams:s,workerURI:c,createWorker:l},u){const{signal:f}=a;return pr&&(l=z),Object.assign(t,{ft:!0,wt:(t.wt||0)+1,readable:e.pipeThrough(new fr(dt(o))).pipeThrough(new br(a),{signal:f}),writable:r,options:Object.assign({},n),workerURI:c,createWorker:l,transferStreams:s,terminate:()=>new Promise(e=>{const{ht:r,ft:n}=t;r?(n?t.yt=e:(r.terminate(),e()),t.Et=null):e()}),bt(){if(t.ft){const{yt:e}=t;e&&(t.yt=null,t.St=!0,t.ht.terminate(),e()),t.ft=!1,u(t)}}}),wr===z&&(wr=typeof Worker!=F),(i&&mr&&(wr&&c||l)?mr:gr)(t,o)}}class br extends TransformStream{constructor({onstart:t,onprogress:e,size:r,onend:n}){let o=0;super({async start(){t&&await Sr(t,r)},async transform(t,n){o+=t.length,e&&await Sr(e,o,r),n.enqueue(t)},async flush(){n&&await Sr(n,o)}})}}async function Sr(t,...e){try{await t(...e)}catch{}}function gr(t,e){return{run:()=>Ar(t,e)}}async function Ar({options:t,readable:e,writable:r,bt:n},o){let a;try{if(t.compressed&&!t.format){const e=t.codecType.startsWith(cr),r=e?o.CompressionStreamFallback:o.DecompressionStreamFallback,n=e?o.CompressionStream:o.DecompressionStream;if(t.useCompressionStream){if(r&&r.gt&&!er(n))try{await hr(o)}catch{}}else try{await hr(o)}catch{r&&!r.gt||(t.useCompressionStream=!0)}}a=new ur(t,o),await e.pipeThrough(a).pipeThrough(new fr(dt(o))).pipeTo(r,{preventClose:!0,preventAbort:!0});const{crc32:n,inputSize:i,outputSize:s}=a;return{crc32:n,inputSize:i,outputSize:s}}catch(t){throw a&&(t.outputSize=a.outputSize),t}finally{n()}}const Rr={type:"module"},Dr="error";let zr,xr,Fr,Tr=!0;try{Tr=typeof structuredClone==T&&structuredClone(new DOMException("","AbortError")).code!==z}catch{}var Ir;function Ur(t){const{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function kr(t){const{ht:e}=t;if(e)try{e.terminate()}catch{}t.Et=null}function Or(t,e,r,n,o=!0){const{createWorker:a}=r;let i,s,c;if(a)i=a();else if(xr===z||zr!==t){const a=typeof t==T;s=a?t(o):t;const l=s.startsWith("data:"),u=s.startsWith("blob:");if(l||u){n===z&&(n=!1),n&&(c=Rr);try{i=new Worker(s,c)}catch(o){if(u)try{URL.revokeObjectURL(s)}catch{}if(a&&u)return Or(t,e,r,n,!1);if(n)throw o;return Or(t,e,r,!0,!1)}}else{n===z&&(n=!0),n&&(c=Rr);try{s=new URL(s,e)}catch{}try{i=new Worker(s,c)}catch(a){if(n)return Or(t,e,r,!1,o);throw a}}zr=t,xr=s,Fr=c}else i=new Worker(xr,Fr);return i.addEventListener("message",t=>{r.At=!0,Cr(r),async function({data:t},e){const{type:r,value:n,messageId:o,result:a,error:i}=t,{reader:s,writer:c,Rt:l,Dt:u,bt:f,wt:d}=e,w=()=>e.wt!=d;try{if(i){const{message:t,stack:e,code:r,name:n,outputSize:o,cause:a,codecImportFailed:s}=i,c=new Error(t);Object.assign(c,{stack:e,code:r,name:n,outputSize:o}),a&&(c.cause=Object.assign(new Error(a.message),{name:a.name})),s&&(c.codecImportFailed=!0),p(c)}else{if("pull"==r){const{value:t,done:r}=await s.read();w()||Mr({type:sr,value:t,done:r,messageId:o},e)}r==sr&&(await c.ready,await c.write(new Uint8Array(n)),w()||Mr({type:"ack",messageId:o},e)),"close"==r&&p(null,a)}}catch(i){w()||(kr(e),p(i))}function p(t,e){w()||(t?u(t):l(e),c&&c.releaseLock(),t&&t.codecImportFailed||f())}}(t,r)}),i.addEventListener(Dr,t=>Nr(t,r)),i.addEventListener("messageerror",t=>Nr(t,r)),i}function Cr(t){const{zt:e}=t;e&&(clearTimeout(e),t.zt=null)}function Nr(t,e){t.preventDefault&&t.preventDefault(),Cr(e);const{At:r,Dt:n,writer:o,bt:a}=e;kr(e),r||(e.ht=null);let i=t.error||new Error(t.message||Dr);r||(i=Object.assign(new Error(i.message||Dr),{xt:!0}),e.Ft=i),n&&(n(i),o&&o.releaseLock(),r&&a())}function Mr(t,{ht:e,writer:r,transferStreams:n,At:o}){try{const{value:r,readable:a,writable:i}=t,s=[];if(r&&(t.value=gt(r),s.push(t.value.buffer)),n&&Tr&&o?(a&&s.push(a),i&&s.push(i)):t.readable=t.writable=null,s.length)try{return e.postMessage(t,s),!0}catch{Tr=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(t){throw r&&r.releaseLock(),t}}Ir=function(t,e){const{baseURI:r,chunkSize:n,workerStartupTimeout:o}=e;let{wasmURI:a}=e;if(!t.Et){let i;typeof a==T&&(a=a());try{i=Or(t.workerURI,r,t)}catch{return yr(t),gr(t,e)}Object.assign(t,{ht:i,At:!1,St:!1,Ft:null,Et:{run:async()=>{try{return await async function(t,e){if(!t.ht){const{Ft:e}=t;t.Ft=null;const r=e||new Error(dr);throw r.xt=!0,r}let r,n;const o=new Promise((t,e)=>{r=t,n=e});Object.assign(t,{reader:null,writer:null,Rt:r,Dt:n,result:o});const{readable:a,options:i}=t,{writable:s,closed:c,Tt:l}=function(t){const e=new AbortController,{writable:r,readable:n}=new TransformStream,o=n.pipeTo(t,{preventClose:!0,preventAbort:!0,signal:e.signal});return o.catch(()=>{}),{writable:r,closed:o,Tt:()=>e.abort()}}(t.writable);let u;try{u=Mr({type:"start",options:i,config:e,readable:a,writable:s},t)}catch(e){l();try{await c}catch{}throw t.bt(),e}u||Object.assign(t,{reader:a.getReader(),writer:s.getWriter()});const{workerStartupTimeout:f}=e;!t.At&&Number.isFinite(f)&&f>=0&&(t.zt=setTimeout(()=>function(t){if(t.zt=null,t.At)return;const{Dt:e,writer:r}=t;if(kr(t),t.ht=null,e){const t=new Error(dr);t.xt=!0,e(t),r&&r.releaseLock()}}(t),f));try{const t=await o;return await d(),await c,t}catch(t){await d(),l();try{await c}catch{}throw t}async function d(){if(!u&&!s.locked)try{await s.getWriter().close()}catch{}}}(t,{chunkSize:n,wasmURI:a,baseURI:r,workerStartupTimeout:o})}catch(r){if(r&&r.xt)return yr(t),Ur(t),Ar(t,e);if(r&&r.codecImportFailed){if(t.reader)return Ur(t),Ar(t,e);t.bt()}throw r}}}})}return t.Et},mr=Ir;let vr=[];const _r=[];let Lr,Br,Pr=0;async function Wr(t,e){const{options:r,config:n}=e,{transferStreams:o,useWebWorkers:a,useCompressionStream:i,compressed:s,checkCrc32:c,computeCrc32:l,encrypted:u,format:f,codecURI:d}=r,{workerURI:w,createWorker:p,maxWorkers:m}=n;f&&(d&&(r.codecURI=function(t,e){try{return new URL(t,e).toString()}catch{return t}}(d,n.baseURI)),await async function(t,e){!ve.has(t)&&e&&je(t,await(import(/* webpackIgnore: true */ /* @vite-ignore */e)))}(f,r.codecURI)),e.transferStreams=!f&&(o||o===z&&n.transferStreams);const h=!(s||c||l||u),y=f===z||Boolean(r.codecURI);return e.useWebWorkers=!h&&y&&(a||a===z&&n.useWebWorkers),e.workerURI=e.useWebWorkers&&w?w:z,e.createWorker=e.useWebWorkers&&p?p:z,r.useCompressionStream=i||i===z&&n.useCompressionStream,(await async function(){const r=vr.find(t=>!t.ft);if(r)return Gr(r),new Er(r,t,e,E);if(vr.length<m){const r={It:Pr};return Pr++,vr.push(r),new Er(r,t,e,E)}return new Promise(r=>{_r.push({resolve:r,stream:t,Ut:e}),Br=n.workerStarvationTimeout,jr()})}()).run();function E(t){if(Vr(),_r.length){const[{resolve:e,stream:r,Ut:n}]=_r.splice(0,1);e(new Er(t,r,n,E)),jr()}else t.ht?(Gr(t),function(t,e){const{config:r}=e,{terminateWorkerTimeout:n}=r;Number.isFinite(n)&&n>=0&&(t.St?t.St=!1:t.kt=setTimeout(async()=>{vr=vr.filter(e=>e!=t);try{await t.terminate()}catch{}},n))}(t,e)):vr=vr.filter(e=>e!=t)}}function jr(){!Lr&&_r.length&&Number.isFinite(Br)&&Br>=0&&(Lr=setTimeout(Zr,Br))}function Vr(){Lr&&(clearTimeout(Lr),Lr=null)}function Zr(){if(Lr=null,_r.length){const[{resolve:t,stream:e,Ut:r}]=_r.splice(0,1),n=Object.assign({},r,{useWebWorkers:!1,workerURI:z,createWorker:z});t(new Er({},e,n,Hr)),jr()}}function Hr(){Vr(),jr()}function Gr(t){const{kt:e}=t;e&&(clearTimeout(e),t.kt=null)}const Kr="\0\u263a\u263b\u2665\u2666\u2663\u2660\u2022\u25d8\u25cb\u25d9\u2642\u2640\u266a\u266b\u263c\u25ba\u25c4\u2195\u203c\xb6\xa7\u25ac\u21a8\u2191\u2193\u2192\u2190\u221f\u2194\u25b2\u25bc !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xa2\xa3\xa5\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0".split("");function qr(t,e){return Yr(t,e,!0)}function Yr(t,e,r){return e&&"cp437"==e.trim().toLowerCase()?function(t){let e="";for(let r=0;r<t.length;r++)e+=Kr[t[r]];return e}(t):new TextDecoder(e,{ignoreBOM:r}).decode(t)}const Xr="HTTP error ",Jr="HTTP Range not supported",Qr="HTTP resource changed",$r="Writer iterator completed too soon",tn="Writer not initialized",en="Content-Range",rn="Range",nn="GET",on="bytes",an=16777216,sn="writable",cn=Symbol();class ln{constructor(){this.size=0}init(){this.initialized=!0}}class un extends ln{get readable(){return this.createReadable()}createReadable({offset:t=0,size:e,chunkSize:r=dt(ft())}={}){const n=this;let o=0;return r=wt(r),new ReadableStream({async pull(a){const i=e===z?r:Math.min(r,e-o),s=await qn(n,t+o,i);s.length&&(a.enqueue(s),o+=s.length),(e!==z&&o>=e||!s.length&&i)&&a.close()}})}}class fn extends ln{constructor(){super();const t=this,e=new WritableStream({write(e){if(!t.initialized)throw new Error(tn);return t.writeUint8Array(gt(e))}});Object.defineProperty(t,sn,{get:()=>e})}writeUint8Array(){}}class dn extends un{constructor(t){super();let e=t.length;for(;"="==t.charAt(e-1);)e--;const r=t.indexOf(",")+1;Object.assign(this,{Ot:t,Ct:r,size:Math.floor(.75*(e-r))})}readUint8Array(t,e){const{Ct:r,Ot:n}=this,o=new Uint8Array(e),a=4*Math.floor(t/3),i=atob(n.substring(a+r,4*Math.ceil((t+e)/3)+r)),s=t-3*Math.floor(a/4);let c=0;for(let t=s;t<s+e&&t<i.length;t++)o[t-s]=i.charCodeAt(t),c++;return c<o.length?o.subarray(0,c):o}}class wn extends fn{constructor(t){super(),Object.assign(this,{contentType:t,data:"data:"+(t||"")+";base64,",Nt:""})}writeUint8Array(t){const e=this;let r,n=e.Nt;const o=e.Nt.length;for(e.Nt="",r=0;r<3*Math.floor((o+t.length)/3)-o;r++)n+=String.fromCharCode(t[r]);for(;r<t.length;r++)e.Nt+=String.fromCharCode(t[r]);n.length>2?e.data+=btoa(n):e.Nt=n+e.Nt}getData(){return this.data+btoa(this.Nt)}}let pn,mn;class hn extends un{constructor(t){super(),Object.assign(this,{Mt:t,size:t.size}),mn||(mn=(async()=>{try{const t=new Blob([new Uint8Array(3)]).slice(1,2).stream().getReader();let e=0,r=await t.read();for(;!r.done;)e+=r.value.length,r=await t.read();pn=1==e}catch{pn=!1}})())}createReadable(t){const{Mt:e,size:r}=this,{offset:n=0,size:o=r-n}=t||{};return!n&&o>=r?Fe(e.stream()):pn?Fe(e.slice(n,n+o).stream()):super.createReadable(t)}async readUint8Array(t,e){const r=this,n=t+e,o=!t&&n>=r.size?r.Mt:r.Mt.slice(t,n);let a=await o.arrayBuffer();return a.byteLength>e&&(a=a.slice(t,n)),new Uint8Array(a)}}class yn extends ln{constructor(t){super();const e=this,r=new TransformStream;Object.defineProperty(e,sn,{get:()=>r.writable}),e.contentType=t,e.vt=Te(r.readable,t),e.vt.catch(()=>{})}getData(){return this.vt}}class En extends hn{constructor(t){super(new Blob([t],{type:"text/plain"}))}}class bn extends yn{constructor(t){super(),Object.assign(this,{encoding:t,_t:!t||"utf-8"==t.toLowerCase()})}async getData(){const{encoding:t,_t:e}=this,r=await super.getData();return r.text&&e?r.text():function(t,e){return Yr(t,e,!1)}(new Uint8Array(await r.arrayBuffer()),t)}}class Sn extends un{constructor(t,e){super(),An(this,t,e)}async init(){await Rn(this,Mn,kn),super.init()}createReadable(t){const e=this,{useRangeHeader:r,forceRangeRequests:n,size:o}=e;if((r||n)&&o!==z){const{offset:r=0,size:n=o-r}=t||{};if(n>0&&r<o)return function(t,e,r){let n,o=e,a=0,i=r;return new ReadableStream({start:()=>s(),async pull(t){n||await s();const{value:e,done:r}=await n.read();if(r)throw new Error(Jr);const o=e.length>a?e.subarray(0,a):e;a-=o.length,i-=o.length,o.length&&t.enqueue(o),a||(await async function(){const t=n;n=z,await t.cancel()}(),i||t.close())},cancel:t=>n&&n.cancel(t)});async function s(){const e=Math.min(t.maximumRangeSize,i),r=await Mn(nn,t,In(t,o,e));if(206!=r.status)throw new Error(Jr);const s=r.headers.get(en);if(s){const t=Number(s.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(t)&&t!=o)throw new Error(Jr)}Tn(t,r),Fn(t,r),o+=e,a=e,n=r.body.getReader()}}(e,r,Math.min(n,o-r))}return super.createReadable(t)}readUint8Array(t,e){return Dn(this,t,e,Mn,kn)}}class gn extends un{constructor(t,e){super(),An(this,t,e)}async init(){await Rn(this,vn,On),super.init()}readUint8Array(t,e){return Dn(this,t,e,vn,On)}}function An(t,e,r){const{preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s=!0,maximumRangeSize:c=an,fetch:l}=r;delete(r=Object.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,Object.assign(t,{url:e,options:r,preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s,maximumRangeSize:c,fetch:l})}async function Rn(t,e,r){const{url:n,preventHeadRequest:o,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:s}=t;if(function(t){const{baseURI:e}=ft(),{protocol:r}=new URL(t,e);return"http:"==r||"https:"==r}(n)&&(a||i)&&(typeof o==F||o)){const n=await e(nn,t,In(t,s?-22:void 0)),o=n.headers.get("Accept-Ranges");if(!(i||o&&o.toLowerCase()==on))throw new Error(Jr);{if(s){const e=new Uint8Array(await n.arrayBuffer());206==n.status&&e.length==d&&(t.Lt=e)}Fn(t,n);const o=zn(n);o===z?await Nn(t,e,r):t.size=o}}else await Nn(t,e,r)}async function Dn(t,e,r,n,o){const{useRangeHeader:a,forceRangeRequests:i,Lt:s,size:c,options:l}=t;if(a||i){if(s&&e==c-d&&r==d)return s;if(e>=c||0===r)return U;{e+r>c&&(r=c-e);const o=await n(nn,t,In(t,e,r));if(206!=o.status)throw new Error(Jr);const a=o.headers.get(en);if(a){const t=Number(a.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(t)&&t!=e)throw new Error(Jr)}Tn(t,o),Fn(t,o);const i=new Uint8Array(await o.arrayBuffer());if(i.length!=r)throw new Error(Jr);return i}}{const{data:n}=t;return n||await o(t,l),t.data.subarray(e,e+r)}}function zn(t){const e=t.headers.get(en);if(e){const t=e.trim().split(/\s*\/\s*/)[1];if(t&&"*"!=t){const e=Number(t);if(!Number.isNaN(e))return e}}}function xn({headers:t}){return{Bt:t.get("Etag")||z,lastModified:t.get("Last-Modified")||z}}function Fn(t,e){const{checkResourceChanges:r,Pt:n}=t;r&&!n&&206==e.status&&(t.Pt=xn(e))}function Tn(t,e){const{checkResourceChanges:r,Pt:n,size:o}=t;if(r){const t=zn(e);if(t!==z&&o!==z&&t!=o)throw new Error(Qr);if(n){const t=xn(e);if(Object.entries(n).some(([e,r])=>r!==z&&t[e]!==z&&r!=t[e]))throw new Error(Qr)}}}function In(t,e=0,r=1){return Object.assign({},Un(t),{[rn]:on+"="+(e<0?e:e+"-"+(e+r-1))})}function Un({options:t}){const{headers:e}=t;if(e)return Symbol.iterator in e?Object.fromEntries(e):e}async function kn(t){await Cn(t,Mn)}async function On(t){await Cn(t,vn)}async function Cn(t,e){const r=await e(nn,t,Un(t));t.data=new Uint8Array(await r.arrayBuffer()),t.size=t.data.length}async function Nn(t,e,r){if(t.preventHeadRequest)await r(t,t.options);else{const n=await e("HEAD",t,Un(t)),o=n.headers.get("Content-Length");o&&!n.headers.get("Content-Encoding")?t.size=Number(o):await r(t,t.options)}}async function Mn(t,{fetch:e=fetch,options:r,url:n},o){const a=await e(n,Object.assign({},r,{method:t,headers:o}));if(a.status<400)return a;throw 416==a.status?new Error(Jr):new Error(Xr+(a.statusText||a.status))}function vn(t,{url:e},r){return new Promise((n,o)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status<400){const t=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(e=>{const r=e.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,t=>t.toUpperCase()),t.push(r)}),n({status:a.status,arrayBuffer:()=>a.response,headers:new Map(t)})}else o(416==a.status?new Error(Jr):new Error(Xr+(a.statusText||a.status)))},!1),a.addEventListener("error",t=>o(t.detail?t.detail.error:new Error("Network error")),!1),a.open(t,e),r)for(const t of Object.entries(r))a.setRequestHeader(t[0],t[1]);a.responseType="arraybuffer",a.send()})}class _n extends un{constructor(t,e={}){super(),Object.assign(this,{url:t,reader:e.useXHR&&!e.fetch?new gn(t,e):new Sn(t,e)})}set size(t){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(t){return this.reader.createReadable(t)}readUint8Array(t,e){return this.reader.readUint8Array(t,e)}}class Ln extends _n{constructor(t,e={}){super(t,Object.assign({},e,{useRangeHeader:!0}))}}class Bn extends un{constructor(t){super(),t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),Object.assign(this,{Wt:t,size:t.length})}readUint8Array(t,e){return this.Wt.slice(t,t+e)}}class Pn extends fn{constructor(t){super(),this.jt=t||262144}init(t=0){Object.assign(this,{offset:0,Wt:new Uint8Array(t>0?t:this.jt)}),super.init()}writeUint8Array(t){const e=this,r=e.offset+t.length;if(r>e.Wt.length){let t=e.Wt.length?2*e.Wt.length:e.jt;for(;t<r;)t*=2;const n=e.Wt;e.Wt=new Uint8Array(t),e.Wt.set(n)}e.Wt.set(t,e.offset),e.offset+=t.length}getData(){return this.offset===this.Wt.length?this.Wt:this.Wt.slice(0,this.offset)}}class Wn extends un{constructor(t){super(),this.Vt=t}async init(){const t=this;t.Zt=0;const e=t.Vt=await Promise.all(t.Vt.map(Kn));t.Ht=e.map(e=>{const r=t.size;return t.size+=e.size,r}),super.init()}Gt(t){const{Ht:e,size:r}=this,n=e[t];return n===z?r:n}async readUint8Array(t,e){const r=this,{Vt:n}=this;let o,a=0,i=t;for(;n[a]&&i>=n[a].size;)i-=n[a].size,a++;const s=n[a];if(s){const n=s.size;if(i+e<=n)o=await qn(s,i,e);else{const a=n-i;o=St(await qn(s,i,a),await r.readUint8Array(t+a,e-a))}}else o=U;return r.Zt=Math.max(a,r.Zt),o}}class jn extends ln{constructor(t,e=4294967295){super();const r=this;let n,o,a;Object.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});const i=new WritableStream({async write(e){if(e===cn)return void(a&&await c());const{availableSize:i}=r;if(a)e.length>=i?(await s(e.subarray(0,i)),await c(),e.length>i&&await this.write(e.subarray(i))):await s(e);else{const{value:i,done:s}=await t.next();if(s&&!i)throw new Error($r);n=i,n.size=0,n.maxSize&&(r.maxSize=n.maxSize),r.availableSize=r.maxSize,await Gn(n),o=i.writable,a=o.getWriter(),await this.write(e)}},async close(){a&&(await a.ready,await l())},async abort(t){a&&await a.abort(t)}});async function s(t){const e=t.length;e&&(await a.ready,await a.write(t),n.size+=e,r.availableSize-=e)}async function c(){await l(),r.diskOffset+=n.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function l(){await a.close()}Object.defineProperty(r,sn,{get:()=>i})}async closeDisk(){const t=this.writable.getWriter();try{await t.ready,await t.write(cn)}finally{t.releaseLock()}}}class Vn{constructor(t){return Array.isArray(t)&&(t=new Wn(t)),(t instanceof ReadableStream||typeof t.getReader==T)&&(t={readable:Fe(t)}),t}}class Zn{constructor(t){return t.writable===z&&typeof t.next==T&&(t=new jn(t)),(t instanceof WritableStream||typeof t.getWriter==T)&&(t={writable:Ie(t)}),t.size===z&&(t.size=0),t}}function Hn(t){return Boolean(t&&t.getData)}async function Gn(t,e){if(!t.init||t.initialized)return Promise.resolve();await t.init(e)}async function Kn(t){return t=new Vn(t),await Gn(t),t.size!==z&&t.readUint8Array||(t=new hn(await Te(t.readable)),await Gn(t)),t}function qn(t,e,r){return t.readUint8Array(e,r)}function Yn(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?un.prototype.createReadable.call(t,e):t.readable}const Xn="filename",Jn="rawFilename",Qn="comment",$n="rawComment",to="uncompressedSize",eo="compressedSize",ro="offset",no="diskNumberStart",oo="lastModDate",ao="rawLastModDate",io="lastAccessDate",so="rawLastAccessDate",co="creationDate",lo="rawCreationDate",uo="internalFileAttributes",fo="externalFileAttributes",wo="msdosAttributesRaw",po="msdosAttributes",mo="msDosCompatible",ho="zip64",yo="encrypted",Eo="version",bo="versionMadeBy",So="zipCrypto",go="directory",Ao="executable",Ro="compressionMethod",Do="signature",zo="extraField",xo="unixMode",Fo="setuid",To="setgid",Io="sticky",Uo=[Xn,Jn,to,eo,oo,ao,Qn,$n,io,so,co,lo,ro,no,uo,fo,wo,po,mo,ho,yo,Eo,bo,So,go,Ao,"symlink",Ro,Do,"crc32",zo,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",xo,"unixExternalUpper",Fo,To,Io,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class ko{constructor(t){Uo.forEach(e=>this[e]=t[e])}}const Oo="File format is not recognized",Co="End of central directory not found",No="End of Zip64 central directory locator not found",Mo="Central directory header not found",vo="Local file header not found",_o="Zip64 extra field not found",Lo="File contains encrypted entry",Bo="Encryption method not supported",Po="Split zip file",Wo="Overlapping entry found",jo="Entry data out of bounds",Vo="Ambiguous archive",Zo="Encrypted central directory is not supported",Ho="Unsafe filename",Go="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Ko="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",qo="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Yo="64-bit value exceeds Number.MAX_SAFE_INTEGER",Xo="unsorted central directory",Jo="unknown version needed to extract",Qo="compressed patched data",$o="malformed extra field",ta="unknown zip64 extensible data",ea="wrapped entries count",ra="appended data",na="prepended data",oa="prepended central directory",aa="trailing central directory data",ia="duplicate filename",sa="mismatched zip64 end of central directory record",ca="mismatched local file header (general purpose bit flag)",la="mismatched local file header (compression method)",ua="mismatched local file header (crc32 or sizes)",fa=/^[a-zA-Z]:/,da="utf-8",wa="cp437",pa=[[to,t],[eo,t],[ro,t],[no,e]],ma={[e]:{Kt:Qa,bytes:4},[t]:{Kt:$a,bytes:8}},ha=BigInt(Number.MAX_SAFE_INTEGER);class ya{constructor(t,e={}){Object.assign(this,{reader:new Vn(t),options:e,qt:new Map})}async*getEntriesGenerator(n={}){const a=this;let{reader:i}=a;if(await Gn(i),i.size!==z&&i.readUint8Array||(i=new hn(await Te(i.readable)),await Gn(i)),i.size<d)throw new Error(Oo);const c=a.warnings=[],m=Na(n,a.options),h=m==H,A=m!=K,R=_a(Ga(a,n,j),m),D=function(t,e){if(t===z)return e;if(!Ca(t))throw new Error(Ko);return t}(Ga(a,n,"filenameValidation"),m),x=Ga(a,n,"normalizeFilename"),{Yt:F,Xt:T}=await La(i,A,R);if(!F)throw await async function(t){return await Oa(t)==o}(i)?new Error(Po):new Error(Co);A&&T>1&&Ha("multiple end of central directory records");const I=At(F);let k=Qa(I,12),O=Qa(I,16);const C=F.offset,N=Ja(I,20),M=C+d+N,v=i.size-M;v>R&&Ha(ra),v>0&&Za(c,ra);let _=Ja(I,4);const L=i.Zt||0;let B,P,W,G,q,Y=Ja(I,6),X=Ja(I,10),J=0,Q=p;const $=O==t||k==t||X==e||Y==e;if(O!=t&&Y!=e&&(O+=ka(i,Y)),$){const r=F.offset>=w?await qn(i,F.offset-w,w):U,n=At(r);if(r.length==w&&Qa(n,0)==u){O=ka(i,Qa(n,4))+$a(n,8);let r=await qn(i,O,p),o=At(r);const a=F.offset-w-p;if((r.length<p||Qa(o,0)!=l)&&O!=a&&a>=0){const t=O;O=a,O>t&&(J=O-t),r=await qn(i,O,p),o=At(r)}if(r.length<p||Qa(o,0)!=l)throw new Error(No);if(W=!0,G=$a(o,4)>44,G){const t=Math.min($a(o,4)-44,i.size-O-p);t>0&&(Q+=t,q=function(t){const e={rawExtensibleData:t};if(t.length>=28){const r=At(t),n=Ja(r,26);Object.assign(e,{compressionMethod:Ja(r,0),compressedSize:$a(r,2),uncompressedSize:$a(r,10),encryptionAlgorithm:Ja(r,18),bitLength:Ja(r,20),flags:Ja(r,22),hashAlgorithm:Ja(r,24),hashData:t.subarray(28,28+n)})}return e}(await qn(i,O+p,t)))}_==e?_=Qa(o,16):_!=Qa(o,16)&&Va(h,c,sa),Y==e?Y=Qa(o,20):Y!=Qa(o,20)&&Va(h,c,sa),X==e?X=$a(o,32):X!=$a(o,32)&&Va(h,c,sa),k==t?k=$a(o,40):k!=$a(o,40)&&Va(h,c,sa),O=ka(i,Y)+$a(o,48)+J}}let tt=k;const et=F.offset-(W?Q+w:0);if(O>=i.size&&(J=i.size-O-k-d,O=i.size-k-d),L!=_)throw new Error(Po);if(O<0)throw new Error(Oo);let rt=0,nt=await qn(i,O,k),ot=At(nt);if(k){if(nt.length<4)throw new Error(Oo);const t=et-k;if(O!=t&&Y==_){const e=Qa(ot,rt)==s||Boolean(q&&q.compressedSize)||ga(ot);let r=!e;if(!r&&t>=0&&t+4<=i.size&&(r=Qa(At(await qn(i,t,4)),0)==s),r){const r=O;O=t,O>r&&(J+=O-r,B=e),nt=await qn(i,O,k),ot=At(nt)}}}const at=et-O;if(k!=at&&at>=0&&Y==_&&(k=at,nt=await qn(i,O,k),ot=At(nt)),O<0||O>=i.size)throw new Error(Oo);a.directoryOffset=O,a.directoryLength=tt;const it=Ka(a,n,"decryptCentralDirectory");let st,ct;if(it&&X&&nt.length>=4&&Qa(ot,0)!=s&&(G||ga(ot))){const t=function(t,e,r){const n=t&&t.compressedSize?t.compressedSize:e;return n>0&&n<=r?n:r}(q,tt,nt.length);ct=nt.subarray(t),nt=await it(nt.subarray(0,t),q),ot=At(nt),tt=nt.length,st=!0}q&&!st&&(nt.length<4||Qa(ot,0)==s)&&Za(c,ta),P=O;const lt=Ga(a,n,"filenameEncoding"),ut=Ga(a,n,"commentEncoding"),ft=new Set;let dt,wt=-1;const pt=!h&&!W;!X&&pt&&(X=Aa(ot,nt,rt),X&&Za(c,ea));for(let t=0;t<X;t++){const o=new Sa(i,a.options);if(rt+f>nt.length||Qa(ot,rt)!=s){if(0==t&&!st&&(G||ga(ot)))throw new Error(Zo);throw new Error(Mo)}Da(o,ot,rt+6);const l=Boolean(o.bitFlag.languageEncodingFlag),u=rt+f,d=u+o.filenameLength,w=d+o.extraFieldLength,p=Ja(ot,rt+4),m=!(p>>8),h=p>>8==3,A=nt.subarray(u,d),R=Ja(ot,rt+32),F=w+R,T=nt.subarray(w,F),I=l,U=l,k=Qa(ot,rt+38),O=k&r,C={readOnly:Boolean(1&O),hidden:Boolean(2&O),system:Boolean(4&O),directory:Boolean(16&O),archive:Boolean(32&O)},N=Qa(ot,rt+42),M=Ka(a,n,"decodeText")||qr,v=I?da:lt||wa,_=U?da:ut||wa;let L=M(A,v,V);if(L===z&&(L=qr(A,v)),x){const t=x(L);t!==z&&(L=t)}if(va(L,D)){const t=new Error(Ho);throw t.filename=L,t}let B=M(T,_,Z);B===z&&(B=qr(T,_)),Object.assign(o,{index:t,Jt:st,versionMadeBy:p,msDosCompatible:m,zip64:!1,compressedSize:0,uncompressedSize:0,Qt:R,offset:N,diskNumberStart:Ja(ot,rt+34),internalFileAttributes:Ja(ot,rt+36),externalFileAttributes:k,msdosAttributesRaw:O,msdosAttributes:C,rawFilename:A,filenameUTF8:I,commentUTF8:U,rawExtraField:nt.subarray(d,w),rawComment:T,filename:L,comment:B}),za(o,o,ot,rt+6)&&Za(c,$o,L),o.offset+=J;const W=ka(i,o.diskNumberStart)+o.offset;P=Math.min(W,P),W<wt&&Za(c,Xo,L),wt=W,(o.version&r)>63&&Za(c,Jo,L),32&~o.rawBitFlag||Za(c,Qo,L),ft.has(o.filename)&&(dt=!0),ft.add(o.filename);const j=o.externalFileAttributes>>16&e;o.unixMode===z&&16877&j&&(o.unixMode=j);const H=Boolean(o.unixMode&b),K=Boolean(o.unixMode&S),q=Boolean(512&o.unixMode),Y=40960==((o.unixMode===z?j:o.unixMode)&y),Q=!Y&&(o.unixMode!==z?!!(73&o.unixMode):h&&!!(73&j)),$=o.unixMode!==z&&(o.unixMode&y)==E,tt=(j&y)==E;Object.assign(o,{setuid:H,setgid:K,sticky:q,symlink:Y,unixExternalUpper:j,executable:Q,directory:$||tt||m&&C.directory||o.filename.endsWith(g),zipCrypto:o.encrypted&&!o.extraFieldAES});const et=new ko(o);if(et.getData=(t,e)=>o.getData(t,et,a.qt,e),et.arrayBuffer=async t=>{const e=new TransformStream,r=Te(e.readable).then(t=>t.arrayBuffer());return r.catch(()=>{}),await o.getData(e,et,a.qt,t),r},rt=F,t==X-1&&pt){const t=Aa(ot,nt,rt);t&&(X+=t,Za(c,ea))}const{onprogress:at}=n;if(at)try{await at(t+1,X,new ko(o))}catch{}yield et}let mt=rt,ht=Ra(nt.subarray(rt))||(st?Ra(ct):z);if(!ht&&!st){const t=O+rt,e=Math.min(et-t,65541);e>=6&&(ht=Ra(await qn(i,t,e)))}ht&&(a.digitalSignature=ht,mt=rt+6+ht.length),(rt!=tt&&mt!=tt||!st&&rt!=k&&mt!=k)&&Va(h,c,aa),dt&&Va(h,c,ia);const yt=Ga(a,n,"extractPrependedData"),Et=Ga(a,n,"extractAppendedData"),bt=(h||yt)&&X&&4==P&&await async function(t){const e=await Oa(t);return e==o||808471376==e}(i)?4:0;return h&&(J||X&&P>bt)&&Ha(na),(J||X&&P>4)&&Za(c,na),B&&Za(c,oa),yt&&(a.prependedData=P>bt?await qn(i,bt,P-bt):U),a.comment=N?await qn(i,C+d,N):U,Et&&(a.appendedData=M<i.size?await qn(i,M,i.size-M):U),!0}async getEntries(t={}){const e=[];for await(const r of this.getEntriesGenerator(t))e.push(r);return e}async close(){const{reader:t}=this;t.readUint8Array||!t.readable||t.readable.locked||await t.readable.cancel()}}class Ea{constructor(t={}){const{readable:e,writable:r}=new TransformStream,n=new ya(e,t).getEntriesGenerator();this.readable=new ReadableStream({async pull(t){const{done:e,value:r}=await n.next();if(e)return t.close();const o={...r,readable:function(){const{readable:t,writable:e}=new TransformStream;if(r.getData)return async function(){try{await r.getData(e)}catch(t){try{await e.abort(t)}catch{}}}(),t}()};delete o.getData,t.enqueue(o)}}),this.writable=r}}async function ba(t,e={}){if(t=new Vn(t),await Gn(t),t.size!==z&&t.readUint8Array||(t=new hn(await Te(t.readable)),await Gn(t)),t.size<d)return!1;const r=Na(e,{}),n=r!=K,o=_a(e[j],r),{Yt:a,Xt:i}=await La(t,n,o);if(!a||r==H&&i>1)return!1;const s=Ja(At(a),20),c=a.offset+d+s;return t.size-c<=o}class Sa{constructor(t,e){Object.assign(this,{reader:t,options:e})}async getData(t,e,o,i={}){const s=this,c=ft(),{reader:l,index:u,offset:f,diskNumberStart:d,extraFieldAES:w,extraFieldZip64:p,compressionMethod:m,bitFlag:h,rawBitFlag:y,crc32:E,rawLastModDate:b,uncompressedSize:S,compressedSize:g}=s,{dataDescriptor:R}=h,D=e.localDirectory={},x=e.warnings=[],F=ka(l,d)+f,T=await qn(l,F,A),I=At(T);let B=Ga(s,i,k),P=Ga(s,i,O);const W=Ga(s,i,C);if($(B,P),B=B&&B.length&&B,P=P&&P.length&&P,w&&99!=w.originalCompressionMethod)throw new Error(Ce);if(T.length<A||Qa(I,0)!=n)throw new Error(vo);Da(D,I,4);const{extraFieldLength:j,filenameLength:V}=D,Z=D.dataOffset=F+A+V+j,G=Ga(s,i,"checkLocalDirectory"),q=Na(i,s.options),Y=function(t,e){return t===z?e!=K:Boolean(t)}(G,q),X=function(t,e){return t===z?e==H:Boolean(t)}(G,q);let J=U;if(X&&(V||j)){const t=await qn(l,F+A,V+j);J=t.subarray(0,V),D.rawExtraField=t.subarray(V)}else D.rawExtraField=j?await qn(l,F+A+V,j):U;X&&(D.rawFilename=J),za(s,D,I,4,!0)&&Za(x,$o),function(t,e,r,n,o){const{rawFilename:a}=t,i=!o,s=t.Jt&&!(8192&~e.rawBitFlag);!n||s||r.length==a.length&&!r.some((t,e)=>t!=a[e])||Va(i,o,"mismatched local file header (filename)"),(2057&e.rawBitFlag)!=(2057&t.rawBitFlag)&&Va(i,o,ca),e.compressionMethod!=t.compressionMethod&&Va(i,o,la),e.bitFlag.dataDescriptor||s||!(e.crc32||e.compressedSize||e.uncompressedSize)||e.crc32==t.crc32&&e.compressedSize==t.compressedSize&&e.uncompressedSize==t.uncompressedSize||Va(i,o,ua)}(s,D,J,X,Y?z:x);const{lastAccessDate:tt,creationDate:et,uid:rt,gid:nt}=D;tt&&(e.lastAccessDate=tt),et&&(e.creationDate=et),rt!==z&&e.uid===z&&(e.uid=rt),nt!==z&&e.gid===z&&(e.gid=nt);const ot=s.encrypted&&D.encrypted&&!W,at=ot&&!w;if(W||(e.zipCrypto=at),ot&&!(64&~D.rawBitFlag))throw new Error(Bo);const it=W?z:Be(m);if(0!=m&&8!=m&&9!=m&&!it&&!W)throw new Error(Ce);if(ot){if(!at&&(w.strength<1||w.strength>3))throw new Error(Bo);if(!B&&!P)throw new Error(Lo)}if(Z+g>l.size)throw new Error(jo);const st=g,ct=Fe(l.createReadable({offset:Z,size:st})),lt=Q(Ga(s,i,N)),ut=Ga(s,i,"checkPasswordOnly");let dt=Ga(s,i,"checkOverlappingEntry");const wt=Ga(s,i,"checkOverlappingEntryOnly");wt&&(dt=!0);const{onstart:pt,onprogress:mt,onend:ht}=i,yt=0!=m&&!W,Et=W?g:S,bt=9==m;let St=Ga(s,i,v);bt&&(St=!1);const gt=Ga(s,i,"checkCrc32"),Rt=(gt===z?Ga(s,i,"checkSignature"):gt)&&!W&&(!ot||at||w&&1==w.vendorVersion),Dt={options:{codecType:lr,password:B,rawPassword:P,zipCrypto:at,encryptionStrength:w&&w.strength,checkCrc32:Rt,checkAuthenticationCode:Ga(s,i,"checkAuthenticationCode"),passwordVerification:at&&(R?b>>>8&r:E>>>24&r),outputSize:Et,crc32:E,compressed:yt,encrypted:ot,useWebWorkers:Ga(s,i,M),useCompressionStream:St,transferStreams:Ga(s,i,_),deflate64:bt,format:it?it.format:z,codecURI:it?it.codecURI:z,compressionMethod:m,rawBitFlag:y,checkPasswordOnly:ut},config:c,ut:{signal:lt,size:st,onstart:pt,onprogress:mt,onend:ht}};let zt,xt;dt&&await async function({reader:t,$t:e,index:r,offset:n,crc32:o,compressedSize:i,uncompressedSize:s,dataOffset:c,dataDescriptor:l,extraFieldZip64:u,qt:f}){let d=0;if(l&&(d=u?20:12),d){const r=await qn(t,c+i,d+4),n=At(r);let l=r.length==d+4&&Qa(n,0)==a;if(l){const t=Ua(n,4,u);(e.encrypted&&!e.zipCrypto||t.crc32==o)&&t.compressedSize==i&&t.uncompressedSize==s?d+=4:l=!1}if(r.length>=d){const t=Ua(n,l?4:0,u);t.signature=l,e.localDirectory.dataDescriptor=t}}const w={start:n,end:c+i+d,$t:e};for(const[t,e]of f)if(t!=r&&w.start<e.end&&e.start<w.end){const t=new Error(Wo);throw t.overlappingEntry=e.$t,t}f.set(r,w)}({reader:l,$t:e,index:u,offset:F,crc32:E,compressedSize:g,uncompressedSize:S,dataOffset:Z,dataDescriptor:R||D.bitFlag.dataDescriptor,extraFieldZip64:p||D.extraFieldZip64,qt:o});try{if(!wt){ut&&(t=new WritableStream),t=new Zn(t),await Gn(t,function(t,e,r){return Math.min(t,r?1032*e:e)}(Et,g,yt)),({writable:zt}=t);const{outputSize:e}=await Wr({readable:ct,writable:zt},Dt);if(t.size+=e,e!=Et)throw new Error(Ve)}}catch(e){if(e.outputSize!==z&&(t.size+=e.outputSize),!ut||e.message!=jt)throw xt=e,e}finally{if((Hn(t)||!Ga(s,i,L))&&zt&&!zt.locked){const t=zt.getWriter();if(xt)try{await t.abort(xt)}catch{}else await t.close()}}return ut||wt?z:t.getData?t.getData():zt}}function ga(t){const e=Math.min(t.byteLength,1024)-3;for(let r=0;r<e;r++)if(134630224==Qa(t,r))return!0;return!1}function Aa(t,e,r){let n=0;for(;r+f<=e.length&&Qa(t,r)==s;)r+=f+Ja(t,r+28)+Ja(t,r+30)+Ja(t,r+32),n++;return n%65536?0:n}function Ra(t){if(t.length>=6){const e=At(t);if(Qa(e,0)==i){const r=Ja(e,4);if(6+r<=t.length)return t.subarray(6,6+r)}}}function Da(t,e,r){const n=t.rawBitFlag=Ja(e,r+2),o=!(1&~n),a=Qa(e,r+6);Object.assign(t,{encrypted:o,version:Ja(e,r),bitFlag:{level:(6&n)>>1,dataDescriptor:!(8&~n),languageEncodingFlag:(n&h)==h},rawLastModDate:a,lastModDate:qa(a),filenameLength:Ja(e,r+22),extraFieldLength:Ja(e,r+24)})}function za(t,e,r,n,o){const{rawExtraField:a}=e,i=e.extraField=new Map,s=At(a);let c=0,l=!1;try{for(;c<a.length;){const t=Ja(s,c),e=Ja(s,c+2);i.set(t,{type:t,data:a.slice(c+4,c+4+e)}),c+=4+e}}catch{l=!0}c>a.length&&(l=!0);const u=Ja(r,n+4);Object.assign(e,{signature:Qa(r,n+10),crc32:Qa(r,n+10),compressedSize:Qa(r,n+14),uncompressedSize:Qa(r,n+18)});const f=i.get(1);f&&(function(t,e){e.zip64=!0;const r=At(t.data),n=pa.filter(([t,r])=>e[t]==r),o=n.reduce((t,[,e])=>t+ma[e].bytes,0);if(t.data.length<o)throw new Error(_o);for(let o=0,a=0;o<n.length;o++){const[i,s]=n[o],c=ma[s];e[i]=t[i]=c.Kt(r,a),a+=c.bytes}}(f,e),e.extraFieldZip64=f);const d=i.get(28789);d&&(xa(d,Xn,Jn,e,t),e.extraFieldUnicodePath=d);const w=i.get(25461);w&&(xa(w,Qn,$n,e,t),e.extraFieldUnicodeComment=w);const p=i.get(39169);p&&p.data.length>=7?(function(t,e,r){const n=At(t.data),o=Xa(n,4);Object.assign(t,{vendorVersion:Xa(n,0),vendorId:Xa(n,2),strength:o,originalCompressionMethod:r,compressionMethod:Ja(n,5)}),e.compressionMethod=t.compressionMethod,1!=t.vendorVersion&&(e.crc32=z)}(p,e,u),e.extraFieldAES=p):e.compressionMethod=u;const h=i.get(13);h&&(Fa(h,e),e.extraFieldPkwareUnix=h);const y=i.get(22613);y&&(Fa(y,e),e.extraFieldUnixType1=y);const E=i.get(10);E&&(function(t,e){const r=At(t.data);let n,o=4;try{for(;o<t.data.length&&!n;){const e=Ja(r,o),a=Ja(r,o+2);1==e&&(n=t.data.slice(o+4,o+4+a)),o+=4+a}}catch{}if(n&&24==n.length){const r=At(n),o=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),i=r.getBigUint64(16,!0);Object.assign(t,{rawLastModDate:o,rawLastAccessDate:a,rawCreationDate:i});const s={lastModDate:Ya(o),lastAccessDate:Ya(a),creationDate:Ya(i)};Object.assign(t,s),Object.assign(e,s,{rawLastAccessDate:a,rawCreationDate:i})}}(E,e),e.extraFieldNTFS=E);const b=i.get(30805);let S;if(b&&(S=Ta(b,e,!1),e.extraFieldUnix=b),!S){const t=i.get(30837);t&&(Ta(t,e,!0),e.extraFieldInfoZip=t)}const g=i.get(m);g&&(function(t,e,r){if(!t.data.length)return;const n=At(t.data),o=Xa(n,0),a=[],i=[];r?(1&~o||(a.push(oo),i.push(ao)),2&~o||(a.push(io),i.push(so)),4&~o||(a.push(co),i.push(lo))):t.data.length>=5&&(a.push(oo),i.push(ao));let s=1;a.forEach((r,o)=>{if(t.data.length>=s+4){const a=Qa(n,s);e[r]=t[r]=new Date(1e3*(0|a));const c=i[o];t[c]=a}s+=4})}(g,e,o),e.extraFieldExtendedTimestamp=g);const A=i.get(6534);return A&&(e.extraFieldUSDZ=A),l}function xa(t,e,r,n,o){if(t.data.length<5)return void(t.valid=!1);const a=At(t.data),i=new Ot;i.append(o[r]);const s=At(new Uint8Array(4));s.setUint32(0,i.get(),!0);const c=Qa(a,1),l=Xa(a,0);Object.assign(t,{version:l,[e]:qr(t.data.subarray(5)),valid:1==l&&!o.bitFlag.languageEncodingFlag&&c==Qa(s,0)}),t.valid&&(n[e]=t[e],n[e+"UTF8"]=!0)}function Fa(t,e){if(t.data.length<8)return;const r=At(t.data),n={lastAccessDate:new Date(1e3*(0|Qa(r,0))),lastModDate:new Date(1e3*(0|Qa(r,4)))};t.data.length>=12&&(n.uid=Ja(r,8),n.gid=Ja(r,10)),Object.assign(t,n),Object.assign(e,n)}function Ta(t,e,r){try{const n=At(t.data);let o,a;if(r){let e=0;const r=Xa(n,e++),i=Xa(n,e++);o=Ia(t.data.subarray(e,e+i)),e+=i;const s=Xa(n,e++);a=Ia(t.data.subarray(e,e+s)),Object.assign(t,{version:r,uid:o,gid:a})}else t.data.length>=4&&(o=Ja(n,0),a=Ja(n,2),Object.assign(t,{uid:o,gid:a}));return o!==z&&(e.uid=o),a!==z&&(e.gid=a),o!==z||a!==z}catch{}}function Ia(t){const e=new Uint8Array(4);return e.set(t,0),new DataView(e.buffer,e.byteOffset,4).getUint32(0,!0)}function Ua(t,e,r){const n=Qa(t,e);let o,a;return r?(o=$a(t,e+4),a=$a(t,e+12)):(o=Qa(t,e+4),a=Qa(t,e+8)),{crc32:n,compressedSize:o,uncompressedSize:a}}function ka(t,e){return t.Gt?t.Gt(e):0}async function Oa(t){return Qa(At(await qn(t,0,4)))}function Ca(t){return t===H||t===G||t===K}function Na(t,e){return Ma(t,Ma(e,G))}function Ma(t,e){const r=t.strictness;if(r!==z){if(!Ca(r))throw new Error(Go);return r}const n=t.checkAmbiguity;return n===z?e:n?H:e==K?K:G}function va(t,e){if(e==K)return!1;const r=t.split("/");return r.length>1&&""===r[r.length-1]&&r.pop(),!!(r.includes("..")||t.startsWith("/")||t.startsWith("\\\\")||fa.test(t))||e==H&&(r.includes(".")||r.includes(""))}function _a(t,r){if(t!==z){const e=rt(t);if("number"!=typeof e||Number.isNaN(e)||e<0)throw new Error(qo);return e}return r==H?0:r==K?1/0:e}async function La(t,e,r){const{size:n}=t,o=Math.min(n,65557),a={count:64};let i,s,c=0;for await(const[r,l,u,f,w]of Ba(t,o)){const o=Ja(r,f+20);if(w+d+o==n){const o=await Wa(t,r,l,f,w,n,a);if(2==o){if(i||(i=Pa(u,f,w)),c++,!e||c>1)break}else 1!=o||s||(s=Pa(u,f,w))}}return i||(i=s),i||(i=await async function(t,e,r){const{size:n}=t,o=Math.min(n,e==1/0?n:65557+e);let a,i;for await(const[e,s,c,l,u]of Ba(t,o)){const o=Pa(c,l,u);a||(a=o);const f=await Wa(t,e,s,l,u,n,r);if(2==f)return o;1!=f||i||(i=o)}return i||a}(t,r,a)),{Yt:i,Xt:c}}async function*Ba(t,e){const r=t.size-e,n=await qn(t,r,e),o=At(n);for(let t=n.length-d;t>=0;t--)Qa(o,t)==c&&(yield[o,r,n,t,r+t])}function Pa(t,e,r){return{offset:r,buffer:t.slice(e,e+d).buffer}}async function Wa(r,n,o,a,i,c,l){const f=Ja(n,a+10),d=Qa(n,a+12),p=Qa(n,a+16);if(f==e||d==t||p==t)return await ja(r,n,o,i-w,c,l)==u?2:0;if(!f&&!d)return 1;const m=Ja(n,a+6);for(const t of[i-d,ka(r,m)+p])if(await ja(r,n,o,t,c,l)==s)return 2;return 0}async function ja(t,e,r,n,o,a){return n<0||n+4>o?z:n>=r?Qa(e,n-r):a.count>0?(a.count--,Qa(At(await qn(t,n,4)),0)):z}function Va(t,e,r){t?Ha(r):Za(e,r)}function Za(t,e,r){if(!t.some(t=>t.reason==e)){const n={reason:e};r!==z&&(n.filename=r),t.push(n)}}function Ha(t){const e=new Error(Vo);throw e.reason=t,e}function Ga(t,e,r){return e[r]===z?t.options[r]:e[r]}function Ka(t,e,r){return J(Ga(t,e,r))}function qa(t){const r=(4294901760&t)>>16,n=t&e,o=new Date(1980+((65024&r)>>9),((480&r)>>5)-1,31&r,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return o<D?D:o}function Ya(t){return new Date(Number(t/BigInt(1e4)-BigInt(116444736e5)))}function Xa(t,e){return t.getUint8(e)}function Ja(t,e){return t.getUint16(e,!0)}function Qa(t,e){return t.getUint32(e,!0)}function $a(t,e){const r=t.getBigUint64(e,!0);if(r>ha)throw new Error(Yo);return Number(r)}var ti=Object.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Vo,ERR_BAD_FORMAT:Oo,ERR_CENTRAL_DIRECTORY_NOT_FOUND:Mo,ERR_ENCRYPTED:Lo,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Zo,ERR_ENTRY_DATA_OUT_OF_BOUNDS:jo,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:No,ERR_EOCDR_NOT_FOUND:Co,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:_o,ERR_INVALID_AUTHENTICATION_CODE:Wt,ERR_INVALID_COMPRESSED_DATA:Ze,ERR_INVALID_CRC32:He,ERR_INVALID_FILENAME_VALIDATION:Ko,ERR_INVALID_MAX_APPENDED_DATA_SIZE:qo,ERR_INVALID_PASSWORD:Pt,ERR_INVALID_STRICTNESS:Go,ERR_INVALID_UNCOMPRESSED_SIZE:Ve,ERR_LOCAL_FILE_HEADER_NOT_FOUND:vo,ERR_OVERLAPPING_ENTRY:Wo,ERR_SPLIT_ZIP_FILE:Po,ERR_UNSAFE_FILENAME:Ho,ERR_UNSUPPORTED_COMPRESSION:Ce,ERR_UNSUPPORTED_ENCRYPTION:Bo,ERR_UNSUPPORTED_UINT64:Yo,ERR_WORKER_STARTUP_TIMEOUT:dr,WARNING_APPENDED_DATA:ra,WARNING_COMPRESSED_PATCHED_DATA:Qo,WARNING_DUPLICATE_FILENAME:ia,WARNING_MALFORMED_EXTRA_FIELD:$o,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:ca,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:la,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:ua,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:sa,WARNING_PREPENDED_CENTRAL_DIRECTORY:oa,WARNING_PREPENDED_DATA:na,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:aa,WARNING_UNKNOWN_VERSION:Jo,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:ta,WARNING_UNSORTED_CENTRAL_DIRECTORY:Xo,WARNING_WRAPPED_ENTRIES_COUNT:ea,ZipReader:ya,ZipReaderStream:Ea,isZipFile:ba});const ei="File already exists",ri="Zip file comment exceeds 64KB",ni="Invalid zip file comment (must be a Uint8Array)",oi="File entry comment exceeds 64KB",ai="Invalid file entry comment (must be a string)",ii="Invalid date (must be a valid Date instance)",si="File entry name exceeds 64KB",ci="Version exceeds 65535",li="The strength must equal 1, 2, or 3",ui="Encryption is not supported in USDZ files",fi="Split zip files are not supported in USDZ files",di="Encryption is not supported when the 'passThrough' option is set",wi="Invalid extra field (must be a Map)",pi="Invalid extra field type (must be integer 0..65535)",mi="Invalid extra field data (must be a Uint8Array)",hi="Extra field data exceeds 64KB",yi=-2147483648,Ei=2147483647,bi=BigInt(0),Si=BigInt("0x7fffffffffffffff"),gi="Zip64 is not supported (set the 'zip64' option to 'true')",Ai="Undefined uncompressed size",Ri="Undefined compression method",Di="Undetermined size",zi="Undefined reader",xi="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",Fi="Zip file not empty",Ti="Invalid uid (must be integer 0..2^32-1)",Ii="Invalid gid (must be integer 0..2^32-1)",Ui="Invalid UNIX mode (must be integer 0..65535)",ki="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Oi="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",Ci="Invalid msdosAttributesRaw (must be integer 0..255)",Ni="Invalid msdosAttributes (must be an object with boolean flags)",Mi="Invalid level (must be integer 0..9)",vi="Signature data exceeds 64KB",_i=new Uint8Array([7,0,2,0,65,69,3,0,0]),Li="infozip",Bi="unix";let Pi=0;const Wi=[];class ji{constructor(t,e={}){t=new Zn(t);const{availableSize:r=x,maxSize:n=x}=t,o=r>0&&r!==x&&n>0&&n!==x;if(o&&e[W])throw new Error(fi);Object.assign(this,{writer:t,te:o,options:e,ee:new Map,re:new Set,offset:e[P]===z?t.size||t.writable.size||0:e[P],ne:e[P]===z?0:e[P]-(t.size||t.writable.size||0),oe:new Set,ae:[],ie:0,se:0,ce:z})}prependZip(t){return Hi(this,async function(t,e){if(t.re.size)throw new Error(Fi);await t.le(e)}(this,t))}appendZip(t){return Hi(this,this.le(t))}async le(t){const e=this,{oe:r,re:n,ee:a}=e;for(;r.size;)await Promise.allSettled(Array.from(r));let i;const s=new Promise(t=>i=t);r.add(s);const c=[];let l;try{t=new Vn(t),await Gn(t),t.size!==z&&t.readUint8Array||(t=new hn(await Te(t.readable)),await Gn(t));const{ZipReader:r}=await Promise.resolve().then(function(){return ti}),i=new r(t),s=await i.getEntries();await i.close(),await Gn(e.writer);const{directoryOffset:u}=i;s.forEach(({filename:t})=>{if(n.has(t))throw new Error(ei);n.add(t),c.push(t)}),e.ue=!0;const{fe:f}=e;e.fe=new Promise(t=>l=()=>{e.ue=!1,t()}),await f,e.te&&(delete e.te,await async function(t){return At(await qn(t,0,4)).getUint32(0,!0)==o}(t)||(await cs(e.writer,is()),e.offset+=4));const d=await async function(t,e,r,n){const{writer:o}=t,a=new Map;if(o.closeDisk){const i=Array.from(r).sort((t,r)=>as(e,t)-as(e,r));let s=0;for(const r of i){const n=as(e,r);await ns(t,e,s,n-s),ts(o,await os(e,n))&&await o.closeDisk(),a.set(r,{offset:es(t,o),diskNumberStart:Qi(o)}),s=n}await ns(t,e,s,n-s)}else{const o=t.offset;await ns(t,e,0,n),r.forEach(t=>a.set(t,{offset:o+as(e,t),diskNumberStart:0}))}return a}(e,t,s,u);s.forEach(t=>{const{version:e,rawLastModDate:r,rawFilename:n,bitFlag:o,encrypted:i,uncompressedSize:s,compressedSize:c,extraFieldZip64:l}=t;let{compressionMethod:u,rawExtraField:f}=t;const{level:w,languageEncodingFlag:p,dataDescriptor:m}=o;f=rs(f||U),t.extraFieldAES&&(u=99);const h=zs(f),y=Boolean(l)&&l.uncompressedSize!==z,E=Boolean(l)&&l.compressedSize!==z,b=-7&Fs(w,p,m,i,u)|w<<1,{de:S,we:g}=xs({version:e,bitFlag:b,compressionMethod:u,uncompressedSize:s,compressedSize:c,rawLastModDate:r,rawFilename:n,pe:E,me:y,extraFieldLength:h}),{crc32:A}=t;A!==z&&As(g,10,A);const{offset:R,diskNumberStart:D}=d.get(t);Object.assign(t,{he:!0,me:y,pe:E,offset:R,diskNumberStart:D,ye:!1,Ee:U,be:U,Se:U,ge:U,Ae:U,rawExtraField:f,Re:U,extendedTimestamp:!1,de:S,we:g}),a.set(t.filename,t)})}catch(t){throw c.forEach(t=>n.delete(t)),t}finally{i(),r.delete(s),l&&l()}}add(o="",i,s={}){const c=this,{oe:l}=c,u=async function(o,i,s,c){if(ps(o,c=Object.assign({},c),go)&&!i.endsWith(g)&&(i+=g),o.re.has(i))throw new Error(ei);o.re.add(i),Pi<ft().maxWorkers?Pi++:await new Promise(t=>Wi.push(t));try{return await async function(o,i,s,c){const l=function(n,o,a){let i=ps(n,a,mo),s=ps(n,a,bo,i?20:768);const c=ps(n,a,Ao),l=ys(n,a,"uid"),u=ys(n,a,"gid");let f=ys(n,a,xo),d=ps(n,a,"unixExtraFieldType"),w=ps(n,a,Fo),p=ps(n,a,To),m=ps(n,a,Io);if(et(l,t,Ti),et(u,t,Ii),et(f,e,Ui),d!==z&&d!==Li&&d!==Bi)throw new Error(ki);if(d===Bi&&(l!==z&&l>e||u!==z&&u>e))throw new Error(Oi);d!==z||l===z&&u===z||(d=Li);let h=ys(n,a,wo),A=ps(n,a,po);const R=h!==z||A!==z;if(l!==z||u!==z||f!==z||d||c?(i=!1,s=s&r|768):R&&(i=!0,s&=r),et(h,r,Ci),A&&("object"!=typeof A||Array.isArray(A)))throw new Error(Ni);if(s>e)throw new Error(ci);let D=ps(n,a,fo);const x=D!==z;x||(D=0),!a[go]&&o.endsWith(g)&&(a[go]=!0);const F=ps(n,a,go);if(F?(o.endsWith(g)||(o+=g),x||(D=16,i||(D|=16877<<16))):i||x||(D=c?493<<16:27525120),!i){const t=f!==z||Boolean(w||p||m);f=f===z?D>>16&e:f&e,w?f|=b:w=Boolean(f&b),p?f|=S:p=Boolean(f&S),m?f|=512:m=Boolean(512&f),x&&!t||(F?f=-61441&f|E:f&y||(f|=32768),D=(f&e)<<16|D&e)}({msdosAttributesRaw:h,msdosAttributes:A}=function(t,e){if(t!==z)t&=r;else if(e!==z){const{readOnly:n,hidden:o,system:a,directory:i,archive:s}=e;let c=0;n&&(c|=1),o&&(c|=2),a&&(c|=4),i&&(c|=16),s&&(c|=32),t=c&r}return e===z&&(e={readOnly:Boolean(1&t),hidden:Boolean(2&t),system:Boolean(4&t),directory:Boolean(16&t),archive:Boolean(32&t)}),{msdosAttributesRaw:t,msdosAttributes:e}}(h,A)),R&&(D=D&t|h&r);const T=D>>16&e,I=f!==z&&40960==(f&y);return{name:o,De:{versionMadeBy:s,msDosCompatible:Boolean(i),externalFileAttributes:D,unixExternalUpper:T,uid:l,gid:u,unixMode:f,unixExtraFieldType:d,symlink:I,setuid:w,setgid:p,sticky:m,msdosAttributesRaw:h,msdosAttributes:A}}}(o,i,c);({name:i}=l);const u=function(t,r,n){const o=hs(t,n,"encodeText")||Nt;let a=o(r,V);if(a===z&&(a=Nt(r)),zs(a)>e)throw new Error(si);const i=n[Qn]||"";if(typeof i!=I)throw new Error(ai);let s=o(i,Z);if(s===z&&(s=Nt(i)),zs(s)>e)throw new Error(oi);const c=ps(t,n,Eo);if(c!==z&&c>e)throw new Error(ci);const l=ms(t,n,oo,new Date),u=ps(t,n,ao),f=ms(t,n,io),d=ms(t,n,co),w=ps(t,n,uo,0),p=ps(t,n,C),m=ps(t,n,k),h=ps(t,n,O);$(m,h);const y=ys(t,n,"encryptionStrength",3),E=ps(t,n,So),b=ps(t,n,"extendedTimestamp",!0),S=ps(t,n,"ntfsTimestamp"),g=ps(t,n,"keepOrder",!0),A=ps(t,n,M),R=ps(t,n,_),D=ps(t,n,"bufferedWrite"),x=hs(t,n,"createTempStream"),F=ps(t,n,"dataDescriptorSignature",!0),T=Q(ps(t,n,N)),U=ps(t,n,"useUnicodeFileNames",!0),L=ps(t,n,Ro),P=p||L===z?z:Be(L);if(!p&&L!==z&&0!==L&&8!==L&&!P)throw new Error(Ce);let j=ys(t,n,"level");if(et(j,9,Mi),t.options[W]){if(m!==z||h!==z)throw new Error(ui);j===z&&L===z&&(j=0)}p&&(j=z);let H=ps(t,n,v),G=ps(t,n,B);D&&G===z&&(G=!1),(G===z||E&&!p)&&(G=!0),j!==z&&6!=j&&(H=!1);const K=ps(t,n,ho);if(!(E||m===z&&h===z||Number.isInteger(y)&&y>=1&&y<=3))throw new Error(li);const q=qi(n[zo]),Y=qi(n.localExtraField),X=qi(n.centralExtraField);return{comment:i,De:{rawFilename:a,rawComment:s,version:c,lastModDate:l,rawLastModDate:u,lastAccessDate:f,creationDate:d,internalFileAttributes:w,passThrough:p,password:m,rawPassword:h,encryptionStrength:y,zipCrypto:E,extendedTimestamp:b,ntfsTimestamp:S,keepOrder:g,useWebWorkers:A,transferStreams:R,bufferedWrite:D,createTempStream:x,dataDescriptorSignature:F,signal:T,useUnicodeFileNames:U,compressionMethod:L,format:P?P.format:z,codecURI:P?P.codecURI:z,ze:P?P.versionNeeded:z,level:j,useCompressionStream:H,dataDescriptor:G,zip64:K,rawExtraField:q,xe:Y,Re:X}}}(o,i,c),{comment:f}=u,d=c[zo];o.ee.set(i,z);const w=o.ce,p={};let h,F;u.De.keepOrder&&(p.Fe=new Promise(t=>h=t)),o.ce=p;try{const{De:f}=u;0==f.level||f.compressionMethod!==z||f.passThrough||await async function(t){const{CompressionStream:e,CompressionStreamFallback:r}=t;if(r&&!r.gt)return!0;if(er(e)||tr(e,qe))return!0;if(r)try{return await hr(t),!0}catch{return!1}return!1}(ft())||(f.level=0);const d=await async function(e,r,{De:n},o){if(n.passThrough&&!r&&!ps(e,o,go))throw new Error(zi);let a;if(r){if(r=new Vn(r),await Gn(r),!r.readable&&!r.readUint8Array)throw new Error(xi);({size:a}=r)}return Object.assign({reader:r},function(e,r,n,o,a){const{passThrough:i,zipCrypto:s,password:c,rawPassword:l,encryptionStrength:u}=o;let{dataDescriptor:f,zip64:d,level:w,compressionMethod:p}=o,m=0,h=0,y=!1;if(i&&r){if(h=a[to],h===z)throw new Error(Ai);if(p===z)throw new Error(Ri)}const E=!0===d,b=ps(e,a,yo);if(r&&i&&!b&&zs(c,l))throw new Error(di);const S=r&&(Boolean(c&&zs(c)||l&&zs(l))||i&&b);r||(w=0,p=0);const g=S?s?12:16+4*u:0;r&&(i?(a.uncompressedSize=h,m=n===z?Es(h)+g:n):n===z?(f=!0,(d||d===z)&&(d=y=!0,m=4294967296)):(a.uncompressedSize=h=n,m=(bs(p,w)?Es(h):h)+g));const A=!(S||r&&(0!==n||i)||bs(p,w));A&&!s&&ps(e,a,B)===z&&(f=!1);const R=E||y||h>=t,D=E||m>=t;if(R||D){if(!1===d)throw new Error(gi);d=!0}return d=d||!1,{Te:m,De:{dataDescriptor:f,Ie:A,zip64:d,he:E,Ue:y,me:R,pe:D,uncompressedSize:h,level:w,compressionMethod:p,encrypted:S}}}(e,Boolean(r),a,n,o))}(o,s,u,c);({reader:s}=d);const y=$i(o.writer),E=Qi(o.writer),b=function(t){const{rawFilename:r,lastModDate:o,rawLastModDate:a,lastAccessDate:i,creationDate:s,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:f,dataDescriptor:d,directory:w,rawExtraField:p,xe:h,encryptionStrength:y,extendedTimestamp:E,ntfsTimestamp:b,passThrough:S,encrypted:g,me:x,pe:F,uncompressedSize:T,Ue:I,crc32:k}=t;let{version:O,compressionMethod:C}=t;const N=!w&&bs(C,c);let M;const v=S||!N,_=l&&(t.bufferedWrite||!d||!x&&!F||v&&!I),L=_||l&&d&&(x||F);if(l&&(x||F)){const t=20,e=Ji(t);if(e.ke(1),e.ke(t-4),M=e.Wt,_&&(e.Oe(T),v)){const t=g?u?12:16+4*y:0;e.Oe(S?0:T+t)}}else M=U;let B,P,j,V,Z;if(g&&!u){const t=Ji(zs(_i)+2);t.ke(39169),t.Ce(_i),B=t.Wt,B[8]=y}else B=U;if(E){const t=fs(o),e=ds(t);if(e){const e=9+(i?4:0)+(s?4:0),r=Ji(e);V=1+(i?2:0)+(s?4:0),r.ke(m),r.ke(e-4),r.Ne(V),r.Me(t),i&&r.Me(ws(fs(i))),s&&r.Me(ws(fs(s))),j=r.Wt}else j=U;if(b===z?!e||Boolean(i||s):b)try{const t=us(o),e=Ji(36);e.ke(10),e.ke(32),e.ve(4),e.ke(1),e.ke(24),e.Oe(t),e.Oe(i?us(i):t),e.Oe(s?us(s):t),P=e.Wt}catch{P=U}else P=U}else P=j=U;try{const{uid:r,gid:n,unixExtraFieldType:o}=t;if(o!=Li||r===z&&n===z)if(o!=Bi||r===z&&n===z)Z=U;else{const t=Ji(8);t.ke(30805),t.ke(4),t.ke((r===z?0:r)&e),t.ke((n===z?0:n)&e),Z=t.Wt}else{const t=Xi(r===z?0:r),e=Xi(n===z?0:n),o=3+t.length+e.length,a=Ji(4+o);a.ke(30837),a.ke(o),a.Ne(1),a.Ne(t.length),a.Ce(t),a.Ne(e.length),a.Ce(e),Z=a.Wt}}catch{Z=U}C===z&&(C=N?8:0),O===z&&(O=0!=C||w||g?20:10);const{ze:H}=t;N&&H!==z&&(O=O>H?O:H),l&&(O=O>45?O:45),g&&!u&&(O=O>51?O:51,S&&k!==z&&(B[4]=1),gs(At(B),9,C),C=99);const G=L?zs(M):0,K=G+zs(B,j,P,Z,p,h);if(K+(t[W]?67:0)>e)throw new Error(hi);const q=new Date(2e3*Math.ceil(Math.floor(o.getTime()/1e3)/2)),Y=q<D?D:q>R?R:q,X=zs(j)?new Date(1e3*fs(o)):zs(P)?o:Y,{de:J,we:Q,rawLastModDate:$}=xs({version:O,bitFlag:Fs(c,f,d,g,C),compressionMethod:C,uncompressedSize:T,lastModDate:Y,rawLastModDate:a,rawFilename:r,pe:F,me:x,extraFieldLength:K}),tt=Ji(A+zs(r)+K),et=tt.Wt,rt=At(et);return tt.Me(n),tt.Ce(J),tt.Ce(r),L&&tt.Ce(M),tt.Ce(B),tt.Ce(j),tt.Ce(P),tt.Ce(Z),tt.Ce(p),tt.Ce(h),d&&(F||As(rt,18,0),x||As(rt,22,0)),{_e:et,Le:rt,de:J,we:Q,lastModDate:X,rawLastModDate:$,encrypted:g,compressed:N,version:O,compressionMethod:C,Be:V,Ee:U,Pe:G,Se:j,ge:P,Ae:Z,be:B,extraFieldLength:K}}(c=Object.assign({},c,l.De,u.De,d.De,{signature:c[Do],crc32:c.crc32===z?c[Do]:c.crc32,offset:o.offset-y,diskNumberStart:E,[W]:o.options[W]})),S=function({zip64:t,dataDescriptor:e,dataDescriptorSignature:r}){let n,o=U,i=0,s=t?20:12;return r&&(s+=4),e&&(o=new Uint8Array(s),n=At(o),r&&(i=4,As(n,0,a))),{We:o,je:n,Ve:i}}(c),g=zs(b._e,S.We);F=await async function(e,n,o,a,i){const{ee:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,Ie:f,signal:d}=i,{Ze:w,$t:p,He:m,Ge:h}=a,y=e.options[W];let E,b,S,g,R,D,F,T=p,I=0;const U=l&&m?m.Fe:z;s.set(n,T);try{i.bufferedWrite||!l||e.ue||e.ie||e.se||!u&&!f?(E=!0,e.ie++,F=i.createTempStream?await i.createTempStream():new TransformStream(z,z,{highWaterMark:x}),F.size=0,await Gn(c)):(b=!0,e.se++,F=c,await U,await k()),await Gn(F);const p=$i(c);e.te&&!E&&await ss(e,c),y&&!E&&Yi(a,e.offset-p);const{_e:m}=w;E||await O();const h=Qi(c),S=es(e,c);if(T.diskNumberStart=h,E||(R=!0,D=c.size,await cs(F,m)),T=await async function(e,n,{diskNumberStart:o,Fe:a},i,s,c){const{Ze:l,Ke:u,qe:f}=i,{de:d,we:w,lastModDate:p,rawLastModDate:m,encrypted:h,compressed:y,version:E,compressionMethod:b,Ee:S,Pe:g,Se:A,Be:R,ge:D,Ae:x,be:F}=l,{We:T}=u,{rawFilename:I,lastAccessDate:U,creationDate:k,password:O,rawPassword:C,level:N,zip64:M,he:v,me:_,pe:L,zipCrypto:B,dataDescriptor:P,directory:W,executable:j,versionMadeBy:V,rawComment:Z,rawExtraField:H,Re:G,useWebWorkers:K,transferStreams:q,onstart:Y,onprogress:X,onend:J,signal:Q,encryptionStrength:$,extendedTimestamp:tt,msDosCompatible:et,internalFileAttributes:rt,externalFileAttributes:nt,uid:ot,gid:at,unixMode:it,symlink:st,setuid:ct,setgid:lt,sticky:ut,unixExternalUpper:ft,msdosAttributesRaw:dt,msdosAttributes:wt,useCompressionStream:pt,passThrough:mt,format:ht,codecURI:yt}=c,Et={Fe:a,versionMadeBy:V,zip64:M,he:v,directory:Boolean(W),executable:Boolean(j),filenameUTF8:!0,rawFilename:I,commentUTF8:!0,rawComment:Z,Ee:S,Pe:g,Se:A,ge:D,Ae:x,be:F,rawExtraField:H,Re:G,extendedTimestamp:tt,msDosCompatible:et,internalFileAttributes:rt,externalFileAttributes:nt,diskNumberStart:o,uid:ot,gid:at,unixMode:it,symlink:Boolean(st),setuid:ct,setgid:lt,sticky:ut,unixExternalUpper:ft,msdosAttributesRaw:dt,msdosAttributes:wt};let{crc32:bt,uncompressedSize:St}=c,gt=0;mt||(St=0);const{writable:At}=n;if(e){const o=e.size,a=Fe(Yn(e,{size:o})),i={options:{codecType:cr,inputSize:o,level:N,rawPassword:C,password:O,encryptionStrength:$,zipCrypto:h&&B,passwordVerification:h&&B&&m>>8&r,computeCrc32:!mt,compressed:y&&!mt,encrypted:h&&!mt,useWebWorkers:K,useCompressionStream:pt,transferStreams:q,format:ht,codecURI:yt,compressionMethod:b},config:s,ut:{signal:Q,size:o,onstart:Y,onprogress:X,onend:J}};try{const e=await Wr({readable:a,writable:At},i);if(gt=e.outputSize,n.size+=gt,mt||(St=e.inputSize,h&&!B||(bt=e.crc32)),!L&>>=t||!_&&St>=t)throw new Error(gi)}catch(t){throw t.outputSize!==z&&(n.size+=t.outputSize),t}}return function({crc32:t,compressedSize:e,uncompressedSize:r,Ze:n,Ke:o},{zip64:a,zipCrypto:i,passThrough:s,dataDescriptor:c}){const{we:l,encrypted:u}=n,{je:f,Ve:d}=o;u&&!i&&!s||t===z||(As(l,10,t),c&&As(f,d,t)),a?c&&(Rs(f,d+4,BigInt(e)),Rs(f,d+12,BigInt(r))):(As(l,14,e),As(l,18,r),c&&(As(f,d+4,e),As(f,d+8,r)))}({crc32:bt,compressedSize:gt,uncompressedSize:St,Ze:l,Ke:u},c),P&&await cs(n,T),Object.assign(Et,{uncompressedSize:St,compressedSize:gt,lastModDate:p,rawLastModDate:m,creationDate:k,lastAccessDate:U,encrypted:Boolean(h),zipCrypto:Boolean(B),size:f+gt,compressionMethod:b,version:E,de:d,we:w,signature:bt,crc32:!h||B||mt?bt:z,Be:R,me:_,pe:L}),Et}(o,F,T,a,ft(),i),E||(R=!1),s.set(n,T),T.filename=n,E){if(await Promise.all([F.writable.getWriter().close(),U]),await k(),e.te&&await ss(e,c),g=!0,D=c.size,await O(),T.diskNumberStart=Qi(c),T.offset=es(e,c),y){const t=a.qe;Yi(a,e.offset-$i(c)),T.size+=a.qe-t}!function({rawFilename:t,encrypted:e,zip64:r,Pe:n,crc32:o,compressedSize:a,uncompressedSize:i,me:s,pe:c},l,{dataDescriptor:u,passThrough:f}){if(u||((!e||f&&o!==z)&&As(l,14,o),c||As(l,18,a),s||As(l,22,i)),r&&n){const e=A+zs(t)+4;Rs(l,e,BigInt(i)),Rs(l,e+8,BigInt(a))}}(T,w.Le,i),await cs(c,w._e),await ls(F.readable,c,d,t=>I+=t),c.size+=F.size,g=!1}else T.diskNumberStart=h,T.offset=S;return e.offset+=T.size,T}catch(t){if(g||R){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch{}e.offset+=c.size-D,E&&(e.offset+=I)}throw s.delete(n),t}finally{if(E&&e.ie--,b&&e.se--,h&&h(U),S&&S(),E&&F&&F.dispose)try{await F.dispose()}catch{}}async function k(){e.ue=!0;const{fe:t}=e;e.fe=new Promise(t=>S=()=>{e.ue=!1,t()}),await t}async function O(){ts(c,zs(w._e))&&await c.closeDisk()}}(o,i,s,{Ze:b,Ke:S,qe:g,$t:p,He:w,Ge:h},c)}catch(t){throw o.ee.delete(i),t}finally{h&&h(w&&w.Fe)}return Object.assign(F,{name:i,comment:f,extraField:d}),new ko(F)}(o,i,s,c)}catch(t){throw o.re.delete(i),t}finally{const t=Wi.shift();t?t():Pi--}}(c,o,i,s);l.add(u);const f=()=>l.delete(u);return Promise.prototype.then.call(u,f,f),Hi(c,u)}remove(t){const{re:e,ee:r}=this;if(typeof t==I&&(t=r.get(t)),t&&t.filename!==z){const{filename:n}=t;if(e.has(n)&&r.has(n))return e.delete(n),r.delete(n),!0}return!1}async close(r=U,n={}){const o=this,{oe:a,writer:w}=this,{writable:p}=w;if(!(r instanceof Uint8Array))throw new Error(ni);if(zs(r)>e)throw new Error(ri);for(;a.size;)await Promise.allSettled(Array.from(a));await Promise.allSettled(o.ae.map(t=>t.Ye));const h=o.ae.filter(t=>t.error&&!t.Xe);if(h.length){const t=h.map(t=>t.error);h.forEach(t=>t.Xe=!0);const[e]=t;try{e.entryErrors=t}catch{}throw e}return await async function(r,n,o){const{Je:a,Qe:w}=function(r){let n=0,o=!1;for(const[,a]of r){const{rawFilename:r,be:i,rawComment:s,ge:c,Ae:l,rawExtraField:u,Re:d,extendedTimestamp:w,Be:p,lastModDate:h,he:y,uncompressedSize:E,compressedSize:b}=a;let{me:S,pe:g}=a;y||(S&&E<t&&(S=a.me=!1),g&&b<t&&(g=a.pe=!1)),o=o||S||g;const A=a.offset>=t,R=a.diskNumberStart>=e;let D,z;if(A||R||S||g){const t=4+(S?8:0)+(g?8:0)+(A?8:0)+(R?4:0),e=Ji(t);e.ke(1),e.ke(t-4),S&&e.Oe(E),g&&e.Oe(b),A&&e.Oe(a.offset),R&&e.Me(a.diskNumberStart),D=e.Wt}else D=U;a.Ee=D,a.$e=A,a.ye=R;const x=fs(h);if(w&&ds(x)){const t=Ji(9);t.ke(m),t.ke(5),t.Ne(p),t.Me(x),z=t.Wt}else z=U;a.Se=z;const F=zs(D,i,c,l,z,u,d);if(F>e)throw new Error(hi);n+=f+zs(r,s)+F}return{Je:n,Qe:o}}(r.ee),{er:p,rr:h,nr:y}=await async function(r,n,o){const{ee:a,writer:i}=r,c=new Uint8Array(n);await Gn(i);let l=0,u=0,d=Qi(i),w=$i(i),p=0;for(const[r,n]of Array.from(a.values()).entries()){const{offset:m,rawFilename:h,Ee:y,be:E,Se:b,ge:S,Ae:g,rawExtraField:A,Re:R,rawComment:D,versionMadeBy:z,de:x,we:F,me:T,pe:I,ye:U,$e:k,internalFileAttributes:O,externalFileAttributes:C,diskNumberStart:N,uncompressedSize:M,compressedSize:v}=n,_=zs(y,E,b,S,g,A,R),L=f+zs(h,D)+_;ts(i,l+L-u)&&(await cs(i,c.slice(u,l)),u=l,p=0,await i.closeDisk()),0==r&&(d=Qi(i),w=$i(i)),T||As(F,18,M),I||As(F,14,v),(k||U)&&n.version<45&&gs(F,0,45);const B=Ji(L);if(B.Me(s),B.ke(z),B.Ce(x.subarray(0,24)),B.ke(_),B.ke(zs(D)),B.ke(U?e:N),B.ke(O),B.Me(C),B.Me(k?t:m),B.Ce(h),B.Ce(y),B.Ce(E),B.Ce(b),B.Ce(S),B.Ce(g),B.Ce(A),B.Ce(R),B.Ce(D),Ds(c,B.Wt,l),l+=L,p++,o.onprogress)try{await o.onprogress(r+1,a.size,new ko(n))}catch{}}return await cs(i,u?c.slice(u):c),{er:{diskNumber:d,diskOffset:w},rr:{diskNumber:Qi(i),ar:p},nr:c}}(r,a,o),E=await async function(t,r,n){const o=hs(t,n,"signCentralDirectory");if(o){const n=await o(r),a=zs(n);if(a>e)throw new Error(vi);const s=Ji(6+a);s.Me(i),s.ke(a),s.Ce(n);const{writer:c}=t;return ts(c,zs(s.Wt))&&await c.closeDisk(),await cs(c,s.Wt),6+a}return 0}(r,y,o);await async function(r,n,o,a){const{writer:i}=r,{er:s,rr:f,ir:w,Qe:p}=a;let{Je:m}=a,h=r.ee.size,y=s.diskNumber,E=es(r,s);const b=zs(n);if(b>e)throw new Error(ri);let S=ps(r,o,ho),g=Qi(i);if(ts(i,(S?98:d)+b)&&g++,E>=t||m>=t||h>=e||g>=e){if(!1===S)throw new Error(gi);S=!0}else S===z&&p&&(S=!0);const A=Ji(S?98:d);ts(i,zs(A.Wt)+b)&&await i.closeDisk(),g=Qi(i);let R=g==f.diskNumber?f.ar:0;S&&(A.Me(l),A.Oe(44),A.ke(45),A.ke(45),A.Me(g),A.Me(y),A.Oe(R),A.Oe(h),A.Oe(m),A.Oe(E),A.Me(u),A.Me(g),A.Oe(BigInt(es(r,i))+BigInt(m)+BigInt(w)),A.Me(g+1),ps(r,o,"supportZip64SplitFile",!0)&&(g=e,y=e),R=e,h=e,E=t,m=t),A.Me(c),A.ke(g),A.ke(y),A.ke(R),A.ke(h),A.Me(m),A.Me(E),A.ke(b),await cs(i,A.Wt),b&&await cs(i,n)}(r,n,o,{er:p,rr:h,Je:a,ir:E,Qe:w})}(o,r,n),!Hn(w)&&ps(o,n,L)||await p.getWriter().close(),w.getData?w.getData():p}}class Vi{constructor(t={}){const{readable:e,writable:r}=new TransformStream;this.readable=e,this.zipWriter=new ji(r,t),this.oe=new Set}transform(t){const e=this.zipWriter;let r;const{readable:n,writable:o}=new TransformStream({start(t){r=t},flush:()=>{!async function(){try{await e.close()}catch(t){await Gi(e,t)}}()}});return Ki(this,this.zipWriter.add(t,n),t=>r.error(t)),{readable:this.readable,writable:o}}writable(t){let e;const{readable:r,writable:n}=new TransformStream({start(t){e=t}});return Ki(this,this.zipWriter.add(t,r),t=>e.error(t)),n}async close(t,e={}){const{zipWriter:r}=this,n=(await Promise.allSettled(Array.from(this.oe))).filter(t=>"rejected"==t.status).map(t=>t.reason);if(n.length){const[t]=n;try{t.entryErrors=n}catch{}throw await Gi(r,t),t}try{return await r.close(t,e)}catch(t){throw await Gi(r,t),t}}}class Zi extends Promise{then(t,e){const{sr:r}=this;return r&&(r.Xe=!0),super.then(t,e)}}function Hi(t,e){const r=new Zi((t,r)=>Promise.prototype.then.call(e,t,r)),n={};return r.sr=n,n.Ye=Promise.prototype.then.call(r,z,t=>n.error=t),t.ae.push(n),r}async function Gi(t,e){try{await t.writer.writable.abort(e)}catch{}}function Ki(t,e,r){t.oe.add(e),e.catch(t=>{try{r(t)}catch{}})}function qi(t){if(!t)return U;if(!(t instanceof Map))throw new Error(wi);let r=0,n=0;t.forEach((t,n)=>{if(tt(n,e,pi),!(t instanceof Uint8Array))throw new Error(mi);if(zs(t)>e)throw new Error(hi);r+=4+zs(t)});const o=new Uint8Array(r),a=At(o);return t.forEach((t,e)=>{gs(a,n,e),gs(a,n+2,zs(t)),Ds(o,t,n+4),n+=4+zs(t)}),o}function Yi(t,e){const{Ze:r}=t;let{_e:n,extraFieldLength:o}=r,a=64-(e+zs(n))%64;a<4&&(a+=64);const i=new Uint8Array(a),s=At(i);gs(s,0,6534),gs(s,2,a-4);const c=n;r._e=n=new Uint8Array(zs(c)+a),Ds(n,c),Ds(n,i,zs(c));const l=At(n);gs(l,28,o+a),r.Le=l,t.qe+=a}function Xi(t){const e=new Uint8Array(4);At(e).setUint32(0,t,!0);let r=4;for(;r>1&&0===e[r-1];)r--;return e.subarray(0,r)}function Ji(t){const e=new Uint8Array(t),r=At(e);let n=0;return{Wt:e,Ne:t=>{!function(t,e,r){t.setUint8(e,r)}(r,n,t),n+=1},ke:t=>{gs(r,n,t),n+=2},Me:t=>{As(r,n,t),n+=4},Oe:t=>{Rs(r,n,BigInt(t)),n+=8},Ce:t=>{Ds(e,t,n),n+=zs(t)},ve:t=>n+=t}}function Qi(t){const{diskNumber:e=0}=t;return e}function $i(t){const{diskOffset:e=0}=t;return e}function ts(t,e){const{availableSize:r=x}=t;return e>r}function es(t,{diskNumber:e=0,diskOffset:r=0}){return t.offset-r-(e?t.ne:0)}function rs(t){const e=At(t);let r=0;for(;r+4<=zs(t);){const n=4+Ss(e,r+2);if(1==Ss(e,r))return rs(St(t.subarray(0,r),t.subarray(Math.min(r+n,zs(t)))));r+=n}return t}async function ns(t,e,r,n){if(n>0){const{writer:o}=t;let a=0;try{await ls(Yn(e,{offset:r,size:n}),o,z,t=>a+=t)}catch(e){t.hasCorruptedEntries=!0;try{e.corruptedEntry=!0}catch{}throw e}finally{o.size+=a,t.offset+=a}}}async function os(t,e){const r=await qn(t,e,A);if(zs(r)<A)return A;const n=At(r);return A+Ss(n,26)+Ss(n,28)}function as(t,{offset:e,diskNumberStart:r}){return e+(t.Gt?t.Gt(r):0)}function is(){const t=new Uint8Array(4);return As(At(t),0,o),t}async function ss(t,e){delete t.te,await cs(e,is()),t.offset+=4}async function cs(t,e){const{writable:r}=t,n=r.getWriter();try{await n.ready,t.size+=zs(e),await n.write(e)}finally{n.releaseLock()}}async function ls(t,e,r,n){const o=e.writable.getWriter();try{await t.pipeTo(new WritableStream({async write(t){await o.ready,await o.write(t),n(zs(t))}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{o.releaseLock()}}function us(t){if(t){const e=(BigInt(t.getTime())+BigInt(116444736e5))*BigInt(1e4);return e<bi?bi:e>Si?Si:e}}function fs(t){return Math.floor(t.getTime()/1e3)}function ds(t){return t>=yi&&t<=Ei}function ws(t){return Math.min(Ei,Math.max(yi,t))}function ps(t,e,r,n){const o=e[r]===z?t.options[r]:e[r];return o===z?n:o}function ms(t,e,r,n){const o=ps(t,e,r,n);if(null===o)return n;if(o!==z&&(typeof o.getTime!=T||Number.isNaN(o.getTime())))throw new Error(ii);return o}function hs(t,e,r){return J(ps(t,e,r))}function ys(t,e,r,n){return rt(ps(t,e,r,n))}function Es(t){return t+5*(Math.floor(t/16383)+1)}function bs(t,e){return t===z?e===z||e>0:0!==t}function Ss(t,e){return t.getUint16(e,!0)}function gs(t,e,r){t.setUint16(e,r,!0)}function As(t,e,r){t.setUint32(e,r,!0)}function Rs(t,e,r){t.setBigUint64(e,r,!0)}function Ds(t,e,r){t.set(e,r)}function zs(...t){let e=0;return t.forEach(t=>t&&(e+=t.length)),e}function xs({version:e,bitFlag:r,compressionMethod:n,uncompressedSize:o,compressedSize:a,lastModDate:i,rawLastModDate:s,rawFilename:c,pe:l,me:u,extraFieldLength:f}){const d=Ji(26),w=d.Wt,p=At(w);if(d.ke(e),d.ke(r),d.ke(n),s===z){const t=new Uint32Array(1),e=At(t);gs(e,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),gs(e,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=t[0]}return d.Me(s),d.ve(4),l||a!==z?d.Me(l?t:a):d.ve(4),u||o!==z?d.Me(u?t:o):d.ve(4),d.ke(zs(c)),d.ke(f),{de:w,we:p,rawLastModDate:s}}function Fs(t,e,r,n,o){let a=0;return e&&(a|=h),r&&(a|=8),8!=o&&9!=o||(t>=0&&t<=3&&(a|=6),t>3&&t<=5&&(a|=4),9==t&&(a|=2)),n&&(a|=1),a}function Ts(){return"application/octet-stream"}function Is(){const{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:r,DecompressionStreamFallback:n}=ft(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:Us(r,Ge)||Us(t,Ge)||Us(t,qe),decompression:Us(n,Ge)||Us(e,Ge)||Us(e,qe),registered:!1},{compressionMethod:9,compression:!1,decompression:Us(n,Ke)||Us(e,Ke),registered:!1}];for(const t of Pe()){const e=We(t.format);o.push({compressionMethod:t.compressionMethod,compression:e?typeof e.CompressionStream==T:z,decompression:e?typeof e.DecompressionStream==T:z,registered:!0})}return o}function Us(t,e){if(!t)return!1;const{cr:r}=t;return r?r.includes(e):tr(t,e)}const ks="2.11.3",Os=1048576,Cs=".zip.js-temp";function Ns(t={}){const{thresholdBytes:e=Os,directoryName:r=Cs,getDirectory:n=()=>navigator.storage.getDirectory()}=t;let o;function a(){return o||(o=Promise.resolve(n()).then(t=>t.getDirectoryHandle(r,{create:!0}))),o}return function(){const t=[];let r,n,o,i,s=0,c=!1;const l=new WritableStream({async write(i){c?await o.write(i):(t.push(i),s+=i.length,s>e&&await async function(){const e=await a();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join(""),n=await e.getFileHandle(r,{create:!0}),o=(await n.createWritable()).getWriter(),c=!0;for(const e of t)await o.write(e);t.length=0}())},async close(){o&&(await o.close(),o=null)}});let u=0;return{writable:l,readable:new ReadableStream({async pull(e){if(c){if(!i){const t=await n.getFile();i=t.stream().getReader()}const{value:t,done:r}=await i.read();r?e.close():e.enqueue(t)}else u<t.length?e.enqueue(t[u++]):e.close()},async cancel(t){i&&await i.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(o){try{await o.close()}catch{}o=null}if(r){try{const t=await a();await t.removeEntry(r)}catch{}n=r=null}t.length=0}}}}const Ms=1048576;function vs(t={}){const{thresholdBytes:e=Ms}=t;return function(){const t=[];let r,n,o,a=0,i=!1;const s=new WritableStream({async write(o){i?await r.write(o):(t.push(o),a+=o.length,a>e&&await async function(){const e=new TransformStream;n=Te(e.readable),r=e.writable.getWriter(),i=!0;for(const e of t)await r.write(e);t.length=0}())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:s,readable:new ReadableStream({async pull(e){if(i){if(!o){const t=await n;o=t.stream().getReader()}const{value:t,done:r}=await o.read();r?e.close():e.enqueue(t)}else c<t.length?e.enqueue(t[c++]):e.close()},async cancel(t){o&&await o.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),t.length=0}}}}const _s=1048576,Ls=".zip.js-temp",Bs="createSyncAccessHandle is only available in dedicated workers";function Ps(t={}){const{thresholdBytes:e=_s,directoryName:r=Ls,getDirectory:n}=t;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new Error(Bs);const o=n||(()=>navigator.storage.getDirectory());let a;function i(){return a||(a=Promise.resolve(o()).then(t=>t.getDirectoryHandle(r,{create:!0}))),a}return function(){const t=[];let r,n,o=0,a=!1,s=0,c=0;const l=new WritableStream({async write(c){a?(n.write(c,{at:s}),s+=c.length):(t.push(c),o+=c.length,o>e&&await async function(){const e=await i();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join("");const o=await e.getFileHandle(r,{create:!0});n=await o.createSyncAccessHandle(),a=!0;for(const e of t)n.write(e,{at:s}),s+=e.length;t.length=0}())},close(){n&&n.flush()}});let u=0;return{writable:l,readable:new ReadableStream({pull(e){if(a){const t=s-c;if(t<=0)return void e.close();const r=new Uint8Array(Math.min(524288,t)),o=n.read(r,{at:c});o?(c+=o,e.enqueue(r.subarray(0,o))):e.close()}else u<t.length?e.enqueue(t[u++]):e.close()}},{highWaterMark:0}),dispose:async function(){if(n){try{n.close()}catch{}n=null}if(r){try{const t=await i();await t.removeEntry(r)}catch{}r=null}t.length=0}}}}try{Et({baseURI:import.meta.url})}catch{}const Ws="deflate",js="deflate-raw",Vs="deflate64-raw",Zs="gzip";let Hs,Gs,Ks,qs,Ys;function Xs(t,e,r={}){if(!Hs){const t=new Error("WASM module not loaded");throw t.cause=Ys,t}const n="number"==typeof r.level?r.level:-1,o="number"==typeof r.outBuffer?r.outBuffer:65536,a="number"==typeof r.inBufferSize?r.inBufferSize:65536;return new TransformStream({start(){try{let r;if(this.lr=Gs(o),this.in=Gs(a),this.inBufferSize=a,!this.lr||!this.in)throw new Error("allocation failed");if(this.ur=new Uint8Array(o),t?(this.dr=Hs.deflate_process,this.wr=Hs.deflate_last_consumed,this.pr=Hs.deflate_end,this.mr=Hs.deflate_new(),r=e===Zs?Hs.deflate_init_gzip(this.mr,n):e===js?Hs.deflate_init_raw(this.mr,n):Hs.deflate_init(this.mr,n)):e===Vs?(this.dr=Hs.inflate9_process,this.wr=Hs.inflate9_last_consumed,this.pr=Hs.inflate9_end,this.mr=Hs.inflate9_new(),r=Hs.inflate9_init_raw(this.mr)):(this.dr=Hs.inflate_process,this.wr=Hs.inflate_last_consumed,this.pr=Hs.inflate_end,this.mr=Hs.inflate_new(),r=e===js?Hs.inflate_init_raw(this.mr):e===Zs?Hs.inflate_init_gzip(this.mr):Hs.inflate_init(this.mr)),0!==r)throw new Error("init failed:"+r)}catch(t){throw i(this),t}},transform(t,e){try{const r=t,n=new Uint8Array(qs.buffer),a=this.dr,i=this.wr,s=this.lr,c=this.ur;let l=0;for(;l<r.length;){const t=Math.min(r.length-l,32768);if((!this.in||this.inBufferSize<t)&&(this.in&&Ks&&(Ks(this.in),this.in=0),this.in=Gs(t),this.inBufferSize=t,!this.in))throw new Error("allocation failed");n.set(r.subarray(l,l+t),this.in);const u=a(this.mr,this.in,t,s,o,0),f=u>>24&255,d=128&f?f-256:f;if(d<0)throw new Error("process error:"+d);const w=16777215&u;w&&(c.set(n.subarray(s,s+w),0),e.enqueue(c.slice(0,w)));const p=i(this.mr);if(0===p&&0===w)break;l+=p}}catch(t){i(this),e.error(t)}},flush(t){try{const e=new Uint8Array(qs.buffer),r=this.dr,n=this.lr,a=this.ur;for(;;){const i=r(this.mr,0,0,n,o,4),s=i>>24&255,c=128&s?s-256:s;if(c<0)throw new Error("process error:"+c);const l=16777215&i;if(l&&(a.set(e.subarray(n,n+l),0),t.enqueue(a.slice(0,l))),1===s||0===l)break}}catch(e){t.error(e)}finally{const e=i(this);0!==e&&t.error(new Error("end error:"+e))}},cancel(){i(this)}});function i(t){let e=0;return t.mr&&t.pr&&(e=t.pr(t.mr)),t.mr=0,t.in&&Ks&&Ks(t.in),t.in=0,t.lr&&Ks&&Ks(t.lr),t.lr=0,e}}class Js{constructor(t=Ws,e){return Xs(!0,t,e)}}class Qs{constructor(t=Ws,e){return Xs(!1,t,e)}}Js.gt=!0,Qs.gt=!0,Js.cr=[Ws,js,Zs],Qs.cr=[Ws,js,Zs,Vs];let $s,tc=!1;function ec(){$s=null,async function(){await Promise.allSettled(vr.map(t=>(Gr(t),t.terminate()))),wr=z,pr=!1}(),tc=!1,Hs=Gs=Ks=qs=Ys=null}!function({yr:t}){hr=t}({yr:t=>{if(!$s){let{wasmURI:e}=t;typeof e==T&&(e=e()),$s=async function(t,{baseURI:e}){if(!tc)try{await async function(t,e){let r,n;try{try{n=new URL(t,e)}catch{}const o=await fetch(n);r=await o.arrayBuffer()}catch(e){if(!t.startsWith("data:application/wasm;base64,"))throw e;r=function(t){const e=t.split(",")[1],r=atob(e),n=r.length,o=new Uint8Array(n);for(let t=0;t<n;++t)o[t]=r.charCodeAt(t);return o.buffer}(t)}!function(t){if(Hs=t,({malloc:Gs,free:Ks,memory:qs}=Hs),"function"!=typeof Gs||"function"!=typeof Ks||!qs)throw Hs=Gs=Ks=qs=null,new Error("Invalid WASM module")}((await WebAssembly.instantiate(r)).instance.exports)}(t,e),tc=!0}catch(t){throw function(t){Ys=t}(t),t}}(e,t).catch(t=>{throw $s=null,t})}return $s}}),Et({CompressionStreamFallback:Js,DecompressionStreamFallback:Qs}),Et({workerURI:new URL("./zip-web-worker.js",import.meta.url).href,wasmURI:new URL("./zip-module.wasm",import.meta.url).href});export{hn as BlobReader,yn as BlobWriter,dn as Data64URIReader,wn as Data64URIWriter,Vo as ERR_AMBIGUOUS_ARCHIVE,Oo as ERR_BAD_FORMAT,Mo as ERR_CENTRAL_DIRECTORY_NOT_FOUND,ei as ERR_DUPLICATED_NAME,Lo as ERR_ENCRYPTED,Zo as ERR_ENCRYPTED_CENTRAL_DIRECTORY,jo as ERR_ENTRY_DATA_OUT_OF_BOUNDS,No as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,Co as ERR_EOCDR_NOT_FOUND,_o as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,Jr as ERR_HTTP_RANGE,Qr as ERR_HTTP_RESOURCE_CHANGED,Wt as ERR_INVALID_AUTHENTICATION_CODE,Ue as ERR_INVALID_CODEC_DEFINITION,Oe as ERR_INVALID_CODEC_MODULE,ri as ERR_INVALID_COMMENT,ni as ERR_INVALID_COMMENT_TYPE,Ze as ERR_INVALID_COMPRESSED_DATA,He as ERR_INVALID_CRC32,ii as ERR_INVALID_DATE,li as ERR_INVALID_ENCRYPTION_STRENGTH,oi as ERR_INVALID_ENTRY_COMMENT,ai as ERR_INVALID_ENTRY_COMMENT_TYPE,si as ERR_INVALID_ENTRY_NAME,wi as ERR_INVALID_EXTRAFIELD,hi as ERR_INVALID_EXTRAFIELD_DATA,mi as ERR_INVALID_EXTRAFIELD_DATA_TYPE,pi as ERR_INVALID_EXTRAFIELD_TYPE,Ko as ERR_INVALID_FILENAME_VALIDATION,q as ERR_INVALID_FUNCTION_OPTION,Ii as ERR_INVALID_GID,Mi as ERR_INVALID_LEVEL,qo as ERR_INVALID_MAX_APPENDED_DATA_SIZE,nt as ERR_INVALID_MAX_WORKERS,Ci as ERR_INVALID_MSDOS_ATTRIBUTES,Ni as ERR_INVALID_MSDOS_DATA,Pt as ERR_INVALID_PASSWORD,X as ERR_INVALID_PASSWORD_TYPE,xi as ERR_INVALID_READER,Y as ERR_INVALID_SIGNAL,vi as ERR_INVALID_SIGNATURE_DATA,Go as ERR_INVALID_STRICTNESS,Ti as ERR_INVALID_UID,Ve as ERR_INVALID_UNCOMPRESSED_SIZE,ki as ERR_INVALID_UNIX_EXTRA_FIELD_TYPE,Oi as ERR_INVALID_UNIX_ID_SIZE,Ui as ERR_INVALID_UNIX_MODE,ci as ERR_INVALID_VERSION,$r as ERR_ITERATOR_COMPLETED_TOO_SOON,vo as ERR_LOCAL_FILE_HEADER_NOT_FOUND,Wo as ERR_OVERLAPPING_ENTRY,ke as ERR_RESERVED_COMPRESSION_METHOD,Po as ERR_SPLIT_ZIP_FILE,Ri as ERR_UNDEFINED_COMPRESSION_METHOD,zi as ERR_UNDEFINED_READER,Ai as ERR_UNDEFINED_UNCOMPRESSED_SIZE,Di as ERR_UNDETERMINED_SIZE,Ho as ERR_UNSAFE_FILENAME,Ce as ERR_UNSUPPORTED_COMPRESSION,Bs as ERR_UNSUPPORTED_CONTEXT,Vt as ERR_UNSUPPORTED_CRYPTO_API,Bo as ERR_UNSUPPORTED_ENCRYPTION,di as ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH,ui as ERR_UNSUPPORTED_ENCRYPTION_USDZ,gi as ERR_UNSUPPORTED_FORMAT,fi as ERR_UNSUPPORTED_SPLIT_USDZ,Yo as ERR_UNSUPPORTED_UINT64,dr as ERR_WORKER_STARTUP_TIMEOUT,tn as ERR_WRITER_NOT_INITIALIZED,Fi as ERR_ZIP_NOT_EMPTY,Ln as HttpRangeReader,_n as HttpReader,un as Reader,Wn as SplitDataReader,jn as SplitDataWriter,En as TextReader,bn as TextWriter,Bn as Uint8ArrayReader,Pn as Uint8ArrayWriter,ks as VERSION,ra as WARNING_APPENDED_DATA,Qo as WARNING_COMPRESSED_PATCHED_DATA,ia as WARNING_DUPLICATE_FILENAME,$o as WARNING_MALFORMED_EXTRA_FIELD,ca as WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG,la as WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD,ua as WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES,sa as WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY,oa as WARNING_PREPENDED_CENTRAL_DIRECTORY,na as WARNING_PREPENDED_DATA,aa as WARNING_TRAILING_CENTRAL_DIRECTORY_DATA,Jo as WARNING_UNKNOWN_VERSION,ta as WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA,Xo as WARNING_UNSORTED_CENTRAL_DIRECTORY,ea as WARNING_WRAPPED_ENTRIES_COUNT,fn as Writer,ya as ZipReader,Ea as ZipReaderStream,ji as ZipWriter,Vi as ZipWriterStream,pt as configure,vs as createBlobTempStream,Ns as createOPFSTempStream,Ps as createSyncAccessHandleTempStream,Ts as getMimeType,Pe as getRegisteredCodecs,Is as getSupportedCompressionMethods,ba as isZipFile,_e as registerCodec,bt as resetConfiguration,ec as terminateWorkers,Le as unregisterCodec};
|
|
1
|
+
const t=4294967295,e=65535,r=255,n=67324752,o=134695760,a=o,i=84233040,s=33639248,c=101010256,l=101075792,u=117853008,f=46,w=22,d=20,p=56,m=21589,h=2048,y=61440,E=16384,b=2048,S=1024,g="/",A=30,R=new Date(2107,11,31,23,59,58),D=new Date(1980,0,1),z=void 0,x=1/0,F="undefined",T="function",I="string",U=new Uint8Array,k="password",O="rawPassword",C="passThrough",N="signal",M="useWebWorkers",v="useCompressionStream",_="transferStreams",L="preventClose",B="dataDescriptor",P="offset",W="usdz",j="maxAppendedDataSize",V="filename",Z="comment",H="strict",G="balanced",K="tolerant",q="Invalid option (must be a function)",Y="Invalid signal (must be an AbortSignal instance)",X="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function J(t){if(t&&typeof t!=T)throw new Error(q);return t}function Q(t){if(t&&(typeof t.addEventListener!=T||"boolean"!=typeof t.aborted))throw new Error(Y);return t||z}function $(t){if(t&&t.aborted)throw t.reason===z?new DOMException("The operation was aborted","AbortError"):t.reason}function tt(t,e){if(t&&typeof t!=I||e&&!(e instanceof Uint8Array))throw new Error(X)}function et(t,e,r){if(!Number.isInteger(t)||t<0||t>e)throw new Error(r)}function rt(t,e,r){t!==z&&et(t,e,r)}function nt(t){return typeof t==I&&t.trim()?Number(t):t}const ot="Invalid maxWorkers (must be an integer greater than 0)";let at=2;try{typeof navigator!=F&&navigator.hardwareConcurrency&&(at=navigator.hardwareConcurrency)}catch{}const it={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:at,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof CompressionStream!=F&&CompressionStream,DecompressionStream:typeof DecompressionStream!=F&&DecompressionStream},st="maxWorkers",ct=["chunkSize",st,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],lt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],ut=["baseURI","wasmURI","workerURI","useCompressionStream","useWebWorkers","transferStreams",...ct,...lt],ft={...it};function wt(){return ft}function dt(t){return pt(t.chunkSize)}function pt(t){return t=nt(t),Number.isInteger(t)&&t>=1?Math.max(t,64):65536}function mt(t){Object.assign(ft,ht(Et(t)))}function ht(t){const e={};for(const r of ut){const n=t[r];n!==z&&(e[r]=yt(r,n))}return e}function yt(t,e){if(ct.includes(t)){if(e=nt(e),t==st&&(!Number.isInteger(e)||e<1))throw new Error(ot)}else lt.includes(t)&&J(e);return e}function Et(t){t=t||{};const{CompressionStreamZlib:e,DecompressionStreamZlib:r}=t;if(e===z&&r===z)return t;const n=Object.assign({},t);return n.CompressionStreamFallback===z&&(n.CompressionStreamFallback=e),n.DecompressionStreamFallback===z&&(n.DecompressionStreamFallback=r),n}function bt(t){const e=ht(Et(t));Object.assign(it,e),Object.assign(ft,e)}function St(){for(const t of ut)delete ft[t];Object.assign(ft,it)}function gt(t,e){const r=new Uint8Array(t.length+e.length);return r.set(t),r.set(e,t.length),r}function At(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new Uint8Array(t):t}function Rt(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}const Dt=[[],[],[],[],[],[],[],[]];for(let t=0;t<256;t++){let e=t;for(let t=0;t<8;t++)e=1&e?e>>>1^3988292384:e>>>1;Dt[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){const r=Dt[e-1][t];Dt[e][t]=r>>>8^Dt[0][255&r]}const[zt,xt,Ft,Tt,It,Ut,kt,Ot]=Dt;class Ct{constructor(t){this.o=t||-1}append(t){let e=0|this.o;const r=0|t.length;let n=0;if(r>=8&&t.buffer){const o=new DataView(t.buffer,t.byteOffset,r),a=r-8;for(;n<=a;n+=8){const t=e^o.getInt32(n,!0),r=o.getInt32(n+4,!0);e=Ot[255&t]^kt[t>>>8&255]^Ut[t>>>16&255]^It[t>>>24&255]^Tt[255&r]^Ft[r>>>8&255]^xt[r>>>16&255]^zt[r>>>24&255]}}for(;n<r;n++)e=e>>>8^zt[255&(e^t[n])];this.o=e}get(){return~this.o}}class Nt extends TransformStream{constructor(){let t;const e=new Ct;super({transform(t,r){e.append(t),r.enqueue(t)},flush(){const r=new Uint8Array(4);new DataView(r.buffer).setUint32(0,e.get()),t.value=r}}),t=this}}function Mt(t){if(typeof TextEncoder==F){t=unescape(encodeURIComponent(t));const e=new Uint8Array(t.length);for(let r=0;r<e.length;r++)e[r]=t.charCodeAt(r);return e}return(new TextEncoder).encode(t)}const vt={concat(t,e){if(0===t.length||0===e.length)return t.concat(e);const r=t[t.length-1],n=vt.l(r);return 32===n?t.concat(e):vt.m(e,n,0|r,t.slice(0,t.length-1))},bitLength(t){const e=t.length;if(0===e)return 0;const r=t[e-1];return 32*(e-1)+vt.l(r)},h(t,e){if(32*t.length<e)return t;const r=(t=t.slice(0,Math.ceil(e/32))).length;return e&=31,r>0&&e&&(t[r-1]=vt.S(e,t[r-1]&2147483648>>e-1,1)),t},S:(t,e,r)=>32===t?e:(r?0|e:e<<32-t)+1099511627776*t,l:t=>Math.round(t/1099511627776)||32,m(t,e,r,n){for(void 0===n&&(n=[]);e>=32;e-=32)n.push(r),r=0;if(0===e)return n.concat(t);for(let o=0;o<t.length;o++)n.push(r|t[o]>>>e),r=t[o]<<32-e;const o=t.length?t[t.length-1]:0,a=vt.l(o);return n.push(vt.S(e+a&31,e+a>32?r:n.pop(),1)),n}},_t={bytes:{A(t){const e=vt.bitLength(t)/8,r=new Uint8Array(e);let n;for(let o=0;o<e;o++)3&o||(n=t[o/4]),r[o]=n>>>24,n<<=8;return r},R(t){const e=[];let r,n=0;for(r=0;r<t.length;r++)n=n<<8|t[r],3&~r||(e.push(n),n=0);return 3&r&&e.push(vt.S(8*(3&r),n)),e}}},Lt=class{constructor(t){const e=this;e.blockSize=512,e.D=[1732584193,4023233417,2562383102,271733878,3285377520],e.F=[1518500249,1859775393,2400959708,3395469782],t?(e.T=t.T.slice(0),e.I=t.I.slice(0),e.U=t.U):e.reset()}reset(){const t=this;return t.T=t.D.slice(0),t.I=[],t.U=0,t}update(t){const e=this;"string"==typeof t&&(t=_t.O.R(t));const r=e.I=vt.concat(e.I,t),n=e.U,o=e.U=n+vt.bitLength(t);if(o>9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");const a=new Uint32Array(r);let i=0;for(let t=e.blockSize+n-(e.blockSize+n&e.blockSize-1);t<=o;t+=e.blockSize)e.C(a.subarray(16*i,16*(i+1))),i+=1;return r.splice(0,16*i),e}N(){const t=this;let e=t.I;const r=t.T;e=vt.concat(e,[vt.S(1,1)]);for(let t=e.length+2;15&t;t++)e.push(0);for(e.push(Math.floor(t.U/4294967296)),e.push(0|t.U);e.length;)t.C(e.splice(0,16));return t.reset(),r}M(t,e,r,n){return t<=19?e&r|~e&n:t<=39?e^r^n:t<=59?e&r|e&n|r&n:t<=79?e^r^n:void 0}v(t,e){return e<<t|e>>>32-t}C(t){const e=this,r=e.T,n=Array(80);for(let e=0;e<16;e++)n[e]=t[e];let o=r[0],a=r[1],i=r[2],s=r[3],c=r[4];for(let t=0;t<=79;t++){t>=16&&(n[t]=e.v(1,n[t-3]^n[t-8]^n[t-14]^n[t-16]));const r=e.v(5,o)+e.M(t,a,i,s)+c+n[t]+e.F[Math.floor(t/20)]|0;c=s,s=i,i=e.v(30,a),a=o,o=r}r[0]=r[0]+o|0,r[1]=r[1]+a|0,r[2]=r[2]+i|0,r[3]=r[3]+s|0,r[4]=r[4]+c|0}},Bt={importKey:t=>new Bt._(_t.bytes.R(t)),L(t,e,r,n){if(r=r||1e4,n<0||r<0)throw new Error("invalid params to pbkdf2");const o=1+(n>>5)<<2;let a,i,s,c,l;const u=new ArrayBuffer(o),f=new DataView(u);let w=0;const d=vt;for(e=_t.bytes.R(e),l=1;w<(o||1);l++){for(a=i=t.encrypt(d.concat(e,[l])),s=1;s<r;s++)for(i=t.encrypt(i),c=0;c<i.length;c++)a[c]^=i[c];for(s=0;w<(o||1)&&s<a.length;s++)f.setInt32(w,a[s]),w+=4}return u.slice(0,n/8)},_:class{constructor(t){const e=this,r=e.B=Lt,n=[[],[]];e.P=[new r,new r];const o=e.P[0].blockSize/32;t.length>o&&(t=(new r).update(t).N());for(let e=0;e<o;e++)n[0][e]=909522486^t[e],n[1][e]=1549556828^t[e];e.P[0].update(n[0]),e.P[1].update(n[1]),e.W=new r(e.P[0])}reset(){const t=this;t.W=new t.B(t.P[0]),t.j=!1}update(t){this.j=!0,this.W.update(t)}digest(){const t=this,e=t.W.N(),r=new t.B(t.P[1]).update(e).N();return t.reset(),r}encrypt(t){if(this.j)throw new Error("encrypt on already updated hmac called!");return this.update(t),this.digest(t)}}},Pt=typeof crypto!=F&&typeof crypto.getRandomValues==T,Wt="Invalid password",jt="Invalid authentication code",Vt="zipjs-abort-check-password",Zt="Crypto API not supported";function Ht(t){if(Pt)return crypto.getRandomValues(t);throw new Error(Zt)}const Gt=16,Kt={name:"PBKDF2"},qt=Object.assign({hash:{name:"HMAC"}},Kt),Yt=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},Kt),Xt=["deriveBits"],Jt=[8,12,16],Qt=[16,24,32],$t=10,te=[0,0,0,0],ee=typeof crypto!=F,re=ee&&crypto.subtle,ne=ee&&typeof re!=F,oe=_t.bytes,ae=class{constructor(t){const e=this;e.V=[[[],[],[],[],[]],[[],[],[],[],[]]],e.V[0][0][0]||e.Z();const r=e.V[0][4],n=e.V[1],o=t.length;let a,i,s,c=1;if(4!==o&&6!==o&&8!==o)throw new Error("invalid aes key size");for(e.F=[i=t.slice(0),s=[]],a=o;a<4*o+28;a++){let t=i[a-1];(a%o===0||8===o&&a%o===4)&&(t=r[t>>>24]<<24^r[t>>16&255]<<16^r[t>>8&255]<<8^r[255&t],a%o===0&&(t=t<<8^t>>>24^c<<24,c=c<<1^283*(c>>7))),i[a]=i[a-o]^t}for(let t=0;a;t++,a--){const e=i[3&t?a:a-4];s[t]=a<=4||t<4?e:n[0][r[e>>>24]]^n[1][r[e>>16&255]]^n[2][r[e>>8&255]]^n[3][r[255&e]]}}encrypt(t){return this.H(t,0)}decrypt(t){return this.H(t,1)}Z(){const t=this.V[0],e=this.V[1],r=t[4],n=e[4],o=[],a=[];let i,s,c,l;for(let t=0;t<256;t++)a[(o[t]=t<<1^283*(t>>7))^t]=t;for(let u=i=0;!r[u];u^=s||1,i=a[i]||1){let a=i^i<<1^i<<2^i<<3^i<<4;a=a>>8^255&a^99,r[u]=a,n[a]=u,l=o[c=o[s=o[u]]];let f=16843009*l^65537*c^257*s^16843008*u,w=257*o[a]^16843008*a;for(let r=0;r<4;r++)t[r][u]=w=w<<24^w>>>8,e[r][a]=f=f<<24^f>>>8}for(let r=0;r<5;r++)t[r]=t[r].slice(0),e[r]=e[r].slice(0)}H(t,e){if(4!==t.length)throw new Error("invalid aes block size");const r=this.F[e],n=r.length/4-2,o=[0,0,0,0],a=this.V[e],i=a[0],s=a[1],c=a[2],l=a[3],u=a[4];let f,w,d,p=t[0]^r[0],m=t[e?3:1]^r[1],h=t[2]^r[2],y=t[e?1:3]^r[3],E=4;for(let t=0;t<n;t++)f=i[p>>>24]^s[m>>16&255]^c[h>>8&255]^l[255&y]^r[E],w=i[m>>>24]^s[h>>16&255]^c[y>>8&255]^l[255&p]^r[E+1],d=i[h>>>24]^s[y>>16&255]^c[p>>8&255]^l[255&m]^r[E+2],y=i[y>>>24]^s[p>>16&255]^c[m>>8&255]^l[255&h]^r[E+3],E+=4,p=f,m=w,h=d;for(let t=0;t<4;t++)o[e?3&-t:t]=u[p>>>24]<<24^u[m>>16&255]<<16^u[h>>8&255]<<8^u[255&y]^r[E++],f=p,p=m,m=h,h=y,y=f;return o}},ie=class{constructor(t,e){this.G=t,this.K=e,this.Y=e}reset(){this.Y=this.K}update(t){return this.X(this.G,t,this.Y)}J(t){if(255&~(t>>24))t+=1<<24;else{let e=t>>16&255,r=t>>8&255,n=255&t;255===e?(e=0,255===r?(r=0,255===n?n=0:++n):++r):++e,t=0,t+=e<<16,t+=r<<8,t+=n}return t}$(t){0===(t[0]=this.J(t[0]))&&(t[1]=this.J(t[1]))}X(t,e,r){let n;if(!(n=e.length))return[];const o=vt.bitLength(e);for(let o=0;o<n;o+=4){this.$(r);const n=t.encrypt(r);e[o]^=n[0],e[o+1]^=n[1],e[o+2]^=n[2],e[o+3]^=n[3]}return vt.h(e,o)}},se=Bt._;let ce=ee&&ne&&typeof re.importKey==T,le=ee&&ne&&typeof re.deriveBits==T;class ue extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r,checkPasswordOnly:n,checkAuthenticationCode:o=!0}){super({start(){we(this,t,e,r)},async transform(t,e){const r=this,{password:o,strength:a,et:i,ready:s}=r;o?(await async function(t,e,r,n){const o=await pe(t,e,r,he(n,0,Jt[e])),a=he(n,Jt[e]);if(o[0]!=a[0]||o[1]!=a[1])throw new Error(Wt)}(r,a,o,he(t,0,Jt[a]+2)),t=he(t,Jt[a]+2),n?e.error(new Error(Vt)):i()):await s;const c=new Uint8Array(t.length-$t-(t.length-$t)%Gt);e.enqueue(de(r,t,c,0,$t,!0))},async flush(t){const{nt:e,ot:r,it:n,ready:a}=this;if(r&&e){await a;const i=he(n,0,n.length-$t),s=he(n,n.length-$t);let c=U;if(i.length){const t=Ee(oe,i);r.update(t);const n=e.update(t);c=ye(oe,n)}const l=he(ye(oe,r.digest()),0,$t);let u=n.length<$t?1:0;for(let t=0;t<$t;t++)u|=l[t]^s[t];if(u&&o)throw new Error(jt);t.enqueue(c)}}})}}class fe extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r}){super({start(){we(this,t,e,r)},async transform(t,e){const r=this,{password:n,strength:o,et:a,ready:i}=r;let s=U;n?(s=await async function(t,e,r){const n=Ht(new Uint8Array(Jt[e]));return gt(n,await pe(t,e,r,n))}(r,o,n),a()):await i;const c=new Uint8Array(s.length+t.length-t.length%Gt);c.set(s,0),e.enqueue(de(r,t,c,s.length,0))},async flush(t){const{nt:e,ot:r,it:n,ready:o}=this;if(r&&e){await o;let a=U;if(n.length){const t=e.update(Ee(oe,n));r.update(t),a=ye(oe,t)}const i=ye(oe,r.digest()).slice(0,$t);t.enqueue(gt(a,i))}}})}}function we(t,e,r,n){Object.assign(t,{ready:new Promise(e=>t.et=e),password:me(e,r),strength:n-1,it:U})}function de(t,e,r,n,o,a){const{nt:i,ot:s,it:c}=t;c.length&&(e=gt(c,e));const l=e.length-o;let u;for(r=function(t,e){if(e&&e>t.length){const r=t;(t=new Uint8Array(e)).set(r,0)}return t}(r,n+(l-l%Gt)),u=0;u<=l-Gt;u+=Gt){const t=Ee(oe,he(e,u,u+Gt));a&&s.update(t);const o=i.update(t);a||s.update(o),r.set(ye(oe,o),u+n)}return t.it=he(e,u),r}async function pe(t,e,r,n){t.password=null;const o=await async function(t,e,r,n,o){if(!ce)return Bt.importKey(e);try{return await re.importKey("raw",e,r,!1,o)}catch{return ce=!1,Bt.importKey(e)}}(0,r,qt,0,Xt),a=await async function(t,e,r){if(!le)return Bt.L(e,t.salt,Yt.iterations,r);try{return await re.deriveBits(t,e,r)}catch{return le=!1,Bt.L(e,t.salt,Yt.iterations,r)}}(Object.assign({salt:n},Yt),o,8*(2*Qt[e]+2)),i=new Uint8Array(a),s=Ee(oe,he(i,0,Qt[e])),c=Ee(oe,he(i,Qt[e],2*Qt[e])),l=he(i,2*Qt[e]);return Object.assign(t,{keys:{key:s,st:c,passwordVerification:l},nt:new ie(new ae(s),Array.from(te)),ot:new se(c)}),l}function me(t,e){return e===z?Mt(t):e}function he(t,e,r){return t.subarray(e,r)}function ye(t,e){return t.A(e)}function Ee(t,e){return t.R(e)}class be extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r,checkPasswordOnly:n}){super({start(){ge(this,t,e,r)},transform(t,e){const r=this;if(r.password||r.rawPassword){const e=Ae(r,t.subarray(0,12));if(r.password=r.rawPassword=null,0!=(e[11]^r.passwordVerification))throw new Error(Wt);t=t.subarray(12)}n?e.error(new Error(Vt)):e.enqueue(Ae(r,t))}})}}class Se extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r}){super({start(){ge(this,t,e,r)},transform(t,e){const r=this;let n,o;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const e=Ht(new Uint8Array(12));e[11]=r.passwordVerification,n=new Uint8Array(t.length+e.length),n.set(Re(r,e),0),o=12}else n=new Uint8Array(t.length),o=0;n.set(Re(r,t),o),e.enqueue(n)}})}}function ge(t,e,r,n){Object.assign(t,{password:e,rawPassword:r,passwordVerification:n}),function(t,e,r){const n=[305419896,591751049,878082192];if(Object.assign(t,{keys:n,ct:new Ct(n[0]),lt:new Ct(n[2])}),r)for(let e=0;e<r.length;e++)De(t,r[e]);else for(let r=0;r<e.length;r++)De(t,e.charCodeAt(r))}(t,e,r)}function Ae(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=ze(t)^e[n],De(t,r[n]);return r}function Re(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=ze(t)^e[n],De(t,e[n]);return r}function De(t,e){let[,r]=t.keys;t.ct.append([e]);const n=~t.ct.get();r=Fe(Math.imul(Fe(r+xe(n)),134775813)+1),t.lt.append([r>>>24]);const o=~t.lt.get();t.keys=[n,r,o]}function ze(t){const e=2|t.keys[2];return xe(Math.imul(e,1^e)>>>8)}function xe(t){return 255&t}function Fe(t){return 4294967295&t}function Te(t){if(t instanceof ReadableStream)return t;const e=t.getReader();return new ReadableStream({async pull(t){const{value:r,done:n}=await e.read();n?t.close():t.enqueue(r)},cancel:t=>e.cancel(t)})}function Ie(t,e){t=Te(t);const r=e?{type:e}:{};if(typeof Blob.prototype.stream!=T||new Blob([]).stream()instanceof ReadableStream)return new Response(t).blob().then(t=>e?new Blob([t],r):t);const n=[];return t.pipeTo(new WritableStream({write(t){n.push(t)}})).then(()=>new Blob(n,r))}function Ue(t){if(t instanceof WritableStream)return t;const e=t.getWriter();return new WritableStream({write:t=>e.write(t),close:()=>e.close(),abort:t=>e.abort(t)})}const ke="Invalid codec definition",Oe="Reserved compression method",Ce="Invalid codec module",Ne="Compression method not supported",Me=[0,8,9,99],ve=new Map,_e=new Map;function Le(t={}){const{compressionMethod:r,format:n,codecURI:o,CompressionStream:a,DecompressionStream:i,versionNeeded:s}=t;if(!Number.isInteger(r)||r<0||r>e||typeof n!=I||!n.length)throw new Error(ke);if(Me.includes(r))throw new Error(Oe);const c=typeof a==T||typeof i==T;if(!(c||typeof o==I&&o.length))throw new Error(ke);ve.set(r,{compressionMethod:r,format:n,codecURI:o,versionNeeded:s}),c&&Ve(n,{CompressionStream:a,DecompressionStream:i})}function Be(t){const e=ve.get(t);if(e){let r;ve.delete(t),ve.forEach(t=>r=r||t.format==e.format),r||_e.delete(e.format)}}function Pe(t){return ve.get(t)}function We(){return Array.from(ve.values(),t=>Object.assign({},t,_e.get(t.format)))}function je(t){return _e.get(t)}function Ve(t,e){const{CompressionStream:r,DecompressionStream:n}=e;if(typeof r!=T&&typeof n!=T)throw new Error(Ce);_e.set(t,{CompressionStream:r,DecompressionStream:n})}const Ze="Invalid uncompressed size",He="Invalid compressed data",Ge="Invalid CRC32",Ke="deflate-raw",qe="deflate64-raw",Ye="gzip",Xe=[31,139,8];class Je extends TransformStream{constructor(t,{chunkSize:e,CompressionStreamFallback:r,CompressionStream:n}){super({});const{compressed:o,encrypted:a,useCompressionStream:i,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:w,inputSize:d}=t,p=this;let m,h,y,E=super.readable;const b=f&&je(f),S=c&&o&&!u&&!b&&(!a||s)&&Boolean(i&&n);if(a&&!s||!c||S||(m=new Nt,E=ir(E,m)),o)if(b)E=sr(E,or(b.CompressionStream,f,{level:l,chunkSize:e,compressionMethod:w,uncompressedSize:d}));else if(S)y=new Qe,E=sr(E,new n(Ye)),E=ir(E,y);else try{E=ar(E,i,{level:l,chunkSize:e},n,r)}catch(t){let e;try{e=new n(Ye)}catch{throw t}E=sr(E,e),E=ir(E,new Qe)}a&&(s?E=ir(E,new Se(t)):(h=new fe(t),E=ir(E,h))),nr(p,E,()=>{a&&!s||!c||(p.crc32=S?y.crc32:new DataView(m.value.buffer).getUint32(0))})}}class Qe extends TransformStream{constructor(){let t,e=10,r=new Uint8Array(0);super({transform(t,n){if(e){const r=Math.min(e,t.length);if(e-=r,!(t=t.subarray(r)).length)return}const o=r.length+t.length;if(o<=8)return void(r=gt(r,t));const a=o-8,i=Math.min(a,r.length);n.enqueue(gt(r.subarray(0,i),t.subarray(0,a-i))),r=gt(r.subarray(i),t.subarray(a-i))},flush(){const e=Rt(r);t.crc32=e.getUint32(0,!0),t.uncompressedSize=e.getUint32(4,!0)}}),t=this}}class $e extends TransformStream{constructor(t,{chunkSize:e,DecompressionStreamFallback:r,DecompressionStream:n}){super({});const{zipCrypto:o,encrypted:a,checkCrc32:i,crc32:s,compressed:c,useCompressionStream:l,deflate64:u,format:f,compressionMethod:w,rawBitFlag:d,outputSize:p}=t;let m,h,y=super.readable;if(a&&(o?y=ir(y,new be(t)):(h=new ue(t),y=ir(y,h))),c){const t=f&&je(f);if(t)y=sr(y,or(t.DecompressionStream,f,{chunkSize:e,compressionMethod:w,rawBitFlag:d,uncompressedSize:p}));else try{y=ar(y,l,{chunkSize:e,deflate64:u},n,r)}catch(t){if(u||p===z)throw t;let e;try{e=new n(Ye)}catch{throw t}y=function(t,e,r){const n=new Ct;let o,a,i,s=0,c=!1;const l=new Promise((t,e)=>{a=t,i=e});l.catch(()=>{}),r||a();const u=new TransformStream({start(t){const e=new Uint8Array(10);e.set(Xe),t.enqueue(e)},transform(t,e){e.enqueue(t)},async flush(t){c=!0,w();try{await l}finally{d()}const e=new Uint8Array(8),o=Rt(e);o.setUint32(0,n.get(),!0),o.setUint32(4,r,!0),t.enqueue(e)},cancel(t){i(t)}}),f=new TransformStream({transform(t,e){n.append(t),s+=t.length,s>=r?a():c&&w(),e.enqueue(t)},cancel(t){i(t)}});return t=ir(t,u),ir(t=sr(t,e),f);function w(){d(),o=setTimeout(()=>i(new Error(Ze)),5e3)}function d(){clearTimeout(o)}}(y,e,p)}y=function(t){const e=t.getReader();return new ReadableStream({async pull(t){let r;try{r=await e.read()}catch(t){if(t&&t.message)throw t;const e=new Error(He);throw e.cause=t,e}const{value:n,done:o}=r;o?t.close():t.enqueue(n)},cancel:t=>e.cancel(t)})}(y)}i&&(m=new Nt,y=ir(y,m)),nr(this,y,()=>{if(i){const t=new DataView(m.value.buffer);if(s!=t.getUint32(0,!1))throw new Error(Ge)}})}}const tr=new Map;function er(t,e){if(!t)return!1;let r=tr.get(t);r||(r=new Map,tr.set(t,r));let n=r.get(e);if(n===z){try{new t(e),n=!0}catch{n=!1}r.set(e,n)}return n}function rr(t){return er(t,Ke)}function nr(t,e,r){e=ir(e,new TransformStream({flush:r})),Object.defineProperty(t,"readable",{get:()=>e})}function or(t,e,r){if(!t)throw new Error(Ne);return new t(e,r)}function ar(t,e,r,n,o){const a=e&&n?n:o||n,i=r.deflate64?qe:Ke;let s;try{s=new a(i,r)}catch(t){if(!e||!o||a==o)throw t;s=new o(i,r)}return sr(t,s)}function ir(t,e){return Te(t).pipeThrough(e)}function sr(t,e){const r=e.writable.getWriter(),n=t.getReader();return async function(){try{for(;;){await r.ready;const t=await n.read();if(t.done){await r.close();break}await r.write(t.value)}}catch(t){await async function(t,e){try{await t.abort(e)}catch{}}(r,t),await async function(t,e){try{await t.cancel(e)}catch{}}(n,t)}}(),e.readable}const cr="data",lr="deflate",ur="inflate";class fr extends TransformStream{constructor(t,e){super({});const r=this,{codecType:n}=t;let o;n.startsWith(lr)?o=Je:n.startsWith(ur)&&(o=$e),r.outputSize=0;let a=0;const i=new o(t,e),s=super.readable,c=new TransformStream({transform(t,e){t&&t.length&&(a+=t.length,e.enqueue(t))},flush(){Object.assign(r,{inputSize:a})}}),l=new TransformStream({transform(e,n){if(e&&e.length&&(n.enqueue(e),r.outputSize+=e.length,t.outputSize!==z&&r.outputSize>t.outputSize))throw new Error(Ze)},flush(){const{crc32:t}=i;Object.assign(r,{crc32:t,inputSize:a})}});Object.defineProperty(r,"readable",{get:()=>s.pipeThrough(c).pipeThrough(i).pipeThrough(l)})}}class wr extends TransformStream{constructor(t){const e=[];let r=0;function n(){const n=new Uint8Array(t);let o=0;for(;o<t;){const r=e[0],a=t-o;r.length<=a?(n.set(r,o),o+=r.length,e.shift()):(n.set(r.subarray(0,a),o),e[0]=r.subarray(a),o+=a)}return r-=t,n}(!Number.isFinite(t)||t<1)&&(t=65536),super({transform(o,a){for(e.push(o),r+=o.length;r>t;)a.enqueue(n())},flush(t){r&&t.enqueue(function(t,e){const r=new Uint8Array(e);let n=0;for(const e of t)r.set(e,n),n+=e.length;return r}(e,r))}})}}const dr="Worker startup timeout";let pr,mr,hr,yr=()=>{};function Er(t){t.createWorker?mr=!0:pr=!1}class br{constructor(t,{readable:e,writable:r},{options:n,config:o,ut:a,useWebWorkers:i,transferStreams:s,workerURI:c,createWorker:l},u){const{signal:f}=a;return mr&&(l=z),Object.assign(t,{ft:!0,wt:(t.wt||0)+1,readable:e.pipeThrough(new wr(dt(o))).pipeThrough(new Sr(a),{signal:f}),writable:r,options:Object.assign({},n),workerURI:c,createWorker:l,transferStreams:s,terminate:()=>new Promise(e=>{const{ht:r,ft:n}=t;r?(n?t.yt=e:(r.terminate(),e()),t.Et=null):e()}),bt(){if(t.ft){const{yt:e}=t;e&&(t.yt=null,t.St=!0,t.ht.terminate(),e()),t.ft=!1,u(t)}}}),pr===z&&(pr=typeof Worker!=F),(i&&hr&&(pr&&c||l)?hr:Ar)(t,o)}}class Sr extends TransformStream{constructor({onstart:t,onprogress:e,size:r,onend:n}){let o=0;super({async start(){t&&await gr(t,r)},async transform(t,n){o+=t.length,e&&await gr(e,o,r),n.enqueue(t)},async flush(){n&&await gr(n,o)}})}}async function gr(t,...e){try{await t(...e)}catch{}}function Ar(t,e){return{run:()=>Rr(t,e)}}async function Rr({options:t,readable:e,writable:r,bt:n},o){let a;try{if(t.compressed&&!t.format){const e=t.codecType.startsWith(lr),r=e?o.CompressionStreamFallback:o.DecompressionStreamFallback,n=e?o.CompressionStream:o.DecompressionStream;if(t.useCompressionStream){if(r&&r.gt&&!rr(n))try{await yr(o)}catch{}}else try{await yr(o)}catch{r&&!r.gt||(t.useCompressionStream=!0)}}a=new fr(t,o),await e.pipeThrough(a).pipeThrough(new wr(dt(o))).pipeTo(r,{preventClose:!0,preventAbort:!0});const{crc32:n,inputSize:i,outputSize:s}=a;return{crc32:n,inputSize:i,outputSize:s}}catch(t){throw a&&(t.outputSize=a.outputSize),t}finally{n()}}const Dr={type:"module"},zr="error";let xr,Fr,Tr,Ir=!0;try{Ir=typeof structuredClone==T&&structuredClone(new DOMException("","AbortError")).code!==z}catch{}var Ur;function kr(t){const{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function Or(t){const{ht:e}=t;if(e)try{e.terminate()}catch{}t.Et=null}function Cr(t,e,r,n,o=!0){const{createWorker:a}=r;let i,s,c;if(a)i=a();else if(Fr===z||xr!==t){const a=typeof t==T;s=a?t(o):t;const l=s.startsWith("data:"),u=s.startsWith("blob:");if(l||u){n===z&&(n=!1),n&&(c=Dr);try{i=new Worker(s,c)}catch(o){if(u)try{URL.revokeObjectURL(s)}catch{}if(a&&u)return Cr(t,e,r,n,!1);if(n)throw o;return Cr(t,e,r,!0,!1)}}else{n===z&&(n=!0),n&&(c=Dr);try{s=new URL(s,e)}catch{}try{i=new Worker(s,c)}catch(a){if(n)return Cr(t,e,r,!1,o);throw a}}xr=t,Fr=s,Tr=c}else i=new Worker(Fr,Tr);return i.addEventListener("message",t=>{r.At=!0,Nr(r),async function({data:t},e){const{type:r,value:n,messageId:o,result:a,error:i}=t,{reader:s,writer:c,Rt:l,Dt:u,bt:f,wt:w}=e,d=()=>e.wt!=w;try{if(i){const{message:t,stack:e,code:r,name:n,outputSize:o,cause:a,codecImportFailed:s}=i,c=new Error(t);Object.assign(c,{stack:e,code:r,name:n,outputSize:o}),a&&(c.cause=Object.assign(new Error(a.message),{name:a.name})),s&&(c.codecImportFailed=!0),p(c)}else{if("pull"==r){const{value:t,done:r}=await s.read();d()||vr({type:cr,value:t,done:r,messageId:o},e)}r==cr&&(await c.ready,await c.write(new Uint8Array(n)),d()||vr({type:"ack",messageId:o},e)),"close"==r&&p(null,a)}}catch(i){d()||(Or(e),p(i))}function p(t,e){d()||(t?u(t):l(e),c&&c.releaseLock(),t&&t.codecImportFailed||f())}}(t,r)}),i.addEventListener(zr,t=>Mr(t,r)),i.addEventListener("messageerror",t=>Mr(t,r)),i}function Nr(t){const{zt:e}=t;e&&(clearTimeout(e),t.zt=null)}function Mr(t,e){t.preventDefault&&t.preventDefault(),Nr(e);const{At:r,Dt:n,writer:o,bt:a}=e;Or(e),r||(e.ht=null);let i=t.error||new Error(t.message||zr);r||(i=Object.assign(new Error(i.message||zr),{xt:!0}),e.Ft=i),n&&(n(i),o&&o.releaseLock(),r&&a())}function vr(t,{ht:e,writer:r,transferStreams:n,At:o}){try{const{value:r,readable:a,writable:i}=t,s=[];if(r&&(t.value=At(r),s.push(t.value.buffer)),n&&Ir&&o?(a&&s.push(a),i&&s.push(i)):t.readable=t.writable=null,s.length)try{return e.postMessage(t,s),!0}catch{Ir=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(t){throw r&&r.releaseLock(),t}}Ur=function(t,e){const{baseURI:r,chunkSize:n,workerStartupTimeout:o}=e;let{wasmURI:a}=e;if(!t.Et){let i;typeof a==T&&(a=a());try{i=Cr(t.workerURI,r,t)}catch{return Er(t),Ar(t,e)}Object.assign(t,{ht:i,At:!1,St:!1,Ft:null,Et:{run:async()=>{try{return await async function(t,e){if(!t.ht){const{Ft:e}=t;t.Ft=null;const r=e||new Error(dr);throw r.xt=!0,r}let r,n;const o=new Promise((t,e)=>{r=t,n=e});Object.assign(t,{reader:null,writer:null,Rt:r,Dt:n,result:o});const{readable:a,options:i}=t,{writable:s,closed:c,Tt:l}=function(t){const e=new AbortController,{writable:r,readable:n}=new TransformStream,o=n.pipeTo(t,{preventClose:!0,preventAbort:!0,signal:e.signal});return o.catch(()=>{}),{writable:r,closed:o,Tt:()=>e.abort()}}(t.writable);let u;try{u=vr({type:"start",options:i,config:e,readable:a,writable:s},t)}catch(e){l();try{await c}catch{}throw t.bt(),e}u||Object.assign(t,{reader:a.getReader(),writer:s.getWriter()});const{workerStartupTimeout:f}=e;!t.At&&Number.isFinite(f)&&f>=0&&(t.zt=setTimeout(()=>function(t){if(t.zt=null,t.At)return;const{Dt:e,writer:r}=t;if(Or(t),t.ht=null,e){const t=new Error(dr);t.xt=!0,e(t),r&&r.releaseLock()}}(t),f));try{const t=await o;return await w(),await c,t}catch(t){await w(),l();try{await c}catch{}throw t}async function w(){if(!u&&!s.locked)try{await s.getWriter().close()}catch{}}}(t,{chunkSize:n,wasmURI:a,baseURI:r,workerStartupTimeout:o})}catch(r){if(r&&r.xt)return Er(t),kr(t),Rr(t,e);if(r&&r.codecImportFailed){if(t.reader)return kr(t),Rr(t,e);t.bt()}throw r}}}})}return t.Et},hr=Ur;let _r=[];const Lr=[];let Br,Pr,Wr=0;async function jr(t,e){const{options:r,config:n}=e,{transferStreams:o,useWebWorkers:a,useCompressionStream:i,compressed:s,checkCrc32:c,computeCrc32:l,encrypted:u,format:f,codecURI:w}=r,{workerURI:d,createWorker:p,maxWorkers:m}=n;f&&(w&&(r.codecURI=function(t,e){try{return new URL(t,e).toString()}catch{return t}}(w,n.baseURI)),await async function(t,e){!_e.has(t)&&e&&Ve(t,await(import(/* webpackIgnore: true */ /* @vite-ignore */e)))}(f,r.codecURI)),e.transferStreams=!f&&(o||o===z&&n.transferStreams);const h=!(s||c||l||u),y=f===z||Boolean(r.codecURI);return e.useWebWorkers=!h&&y&&(a||a===z&&n.useWebWorkers),e.workerURI=e.useWebWorkers&&d?d:z,e.createWorker=e.useWebWorkers&&p?p:z,r.useCompressionStream=i||i===z&&n.useCompressionStream,(await async function(){const r=_r.find(t=>!t.ft);if(r)return Kr(r),new br(r,t,e,E);if(_r.length<m){const r={It:Wr};return Wr++,_r.push(r),new br(r,t,e,E)}return new Promise(r=>{Lr.push({resolve:r,stream:t,Ut:e}),Pr=n.workerStarvationTimeout,Vr()})}()).run();function E(t){if(Zr(),Lr.length){const[{resolve:e,stream:r,Ut:n}]=Lr.splice(0,1);e(new br(t,r,n,E)),Vr()}else t.ht?(Kr(t),function(t,e){const{config:r}=e,{terminateWorkerTimeout:n}=r;Number.isFinite(n)&&n>=0&&(t.St?t.St=!1:t.kt=setTimeout(async()=>{_r=_r.filter(e=>e!=t);try{await t.terminate()}catch{}},n))}(t,e)):_r=_r.filter(e=>e!=t)}}function Vr(){!Br&&Lr.length&&Number.isFinite(Pr)&&Pr>=0&&(Br=setTimeout(Hr,Pr))}function Zr(){Br&&(clearTimeout(Br),Br=null)}function Hr(){if(Br=null,Lr.length){const[{resolve:t,stream:e,Ut:r}]=Lr.splice(0,1),n=Object.assign({},r,{useWebWorkers:!1,workerURI:z,createWorker:z});t(new br({},e,n,Gr)),Vr()}}function Gr(){Zr(),Vr()}function Kr(t){const{kt:e}=t;e&&(clearTimeout(e),t.kt=null)}const qr="\0\u263a\u263b\u2665\u2666\u2663\u2660\u2022\u25d8\u25cb\u25d9\u2642\u2640\u266a\u266b\u263c\u25ba\u25c4\u2195\u203c\xb6\xa7\u25ac\u21a8\u2191\u2193\u2192\u2190\u221f\u2194\u25b2\u25bc !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xa2\xa3\xa5\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0".split("");function Yr(t,e){return Xr(t,e,!0)}function Xr(t,e,r){return e&&"cp437"==e.trim().toLowerCase()?function(t){let e="";for(let r=0;r<t.length;r++)e+=qr[t[r]];return e}(t):new TextDecoder(e,{ignoreBOM:r}).decode(t)}const Jr="HTTP error ",Qr="HTTP Range not supported",$r="HTTP resource changed",tn="Writer iterator completed too soon",en="Writer not initialized",rn="Content-Range",nn="Range",on="GET",an="bytes",sn=16777216,cn="writable",ln=Symbol();class un{constructor(){this.size=0}init(){this.initialized=!0}}class fn extends un{get readable(){return this.createReadable()}createReadable({offset:t=0,size:e,chunkSize:r=dt(wt())}={}){const n=this;let o=0;return r=pt(r),new ReadableStream({async pull(a){const i=e===z?r:Math.min(r,e-o),s=await Yn(n,t+o,i);s.length&&(a.enqueue(s),o+=s.length),(e!==z&&o>=e||!s.length&&i)&&a.close()}})}}class wn extends un{constructor(){super();const t=this,e=new WritableStream({write(e){if(!t.initialized)throw new Error(en);return t.writeUint8Array(At(e))}});Object.defineProperty(t,cn,{get:()=>e})}writeUint8Array(){}}class dn extends fn{constructor(t){super();let e=t.length;for(;"="==t.charAt(e-1);)e--;const r=t.indexOf(",")+1;Object.assign(this,{Ot:t,Ct:r,size:Math.floor(.75*(e-r))})}readUint8Array(t,e){const{Ct:r,Ot:n}=this,o=new Uint8Array(e),a=4*Math.floor(t/3),i=atob(n.substring(a+r,4*Math.ceil((t+e)/3)+r)),s=t-3*Math.floor(a/4);let c=0;for(let t=s;t<s+e&&t<i.length;t++)o[t-s]=i.charCodeAt(t),c++;return c<o.length?o.subarray(0,c):o}}class pn extends wn{constructor(t){super(),Object.assign(this,{contentType:t,data:"data:"+(t||"")+";base64,",Nt:""})}writeUint8Array(t){const e=this;let r,n=e.Nt;const o=e.Nt.length;for(e.Nt="",r=0;r<3*Math.floor((o+t.length)/3)-o;r++)n+=String.fromCharCode(t[r]);for(;r<t.length;r++)e.Nt+=String.fromCharCode(t[r]);n.length>2?e.data+=btoa(n):e.Nt=n+e.Nt}getData(){return this.data+btoa(this.Nt)}}let mn,hn;class yn extends fn{constructor(t){super(),Object.assign(this,{Mt:t,size:t.size}),hn||(hn=(async()=>{try{const t=new Blob([new Uint8Array(3)]).slice(1,2).stream().getReader();let e=0,r=await t.read();for(;!r.done;)e+=r.value.length,r=await t.read();mn=1==e}catch{mn=!1}})())}createReadable(t){const{Mt:e,size:r}=this,{offset:n=0,size:o=r-n}=t||{};if(typeof e.stream==T){if(!n&&o>=r)return Te(e.stream());if(mn)return Te(e.slice(n,n+o).stream())}return super.createReadable(t)}async readUint8Array(t,e){const r=this,n=t+e,o=!t&&n>=r.size?r.Mt:r.Mt.slice(t,n);let a=await o.arrayBuffer();return a.byteLength>e&&(a=a.slice(t,n)),new Uint8Array(a)}}class En extends un{constructor(t){super();const e=this,r=new TransformStream;Object.defineProperty(e,cn,{get:()=>r.writable}),e.contentType=t,e.vt=Ie(r.readable,t),e.vt.catch(()=>{})}getData(){return this.vt}}class bn extends yn{constructor(t){super(new Blob([t],{type:"text/plain"}))}}class Sn extends En{constructor(t){super(),Object.assign(this,{encoding:t,_t:!t||"utf-8"==t.toLowerCase()})}async getData(){const{encoding:t,_t:e}=this,r=await super.getData();return r.text&&e?r.text():function(t,e){return Xr(t,e,!1)}(new Uint8Array(await r.arrayBuffer()),t)}}class gn extends fn{constructor(t,e){super(),Rn(this,t,e)}async init(){await Dn(this,vn,On),super.init()}createReadable(t){const e=this,{useRangeHeader:r,forceRangeRequests:n,size:o}=e;if((r||n)&&o!==z){const{offset:r=0,size:n=o-r}=t||{};if(n>0&&r<o)return function(t,e,r){let n,o=e,a=0,i=r;return new ReadableStream({start:()=>s(),async pull(t){n||await s();const{value:e,done:r}=await n.read();if(r)throw new Error(Qr);const o=e.length>a?e.subarray(0,a):e;a-=o.length,i-=o.length,o.length&&t.enqueue(o),a||(await async function(){const t=n;n=z,await t.cancel()}(),i||t.close())},cancel:t=>n&&n.cancel(t)});async function s(){const e=Math.min(t.maximumRangeSize,i),r=await vn(on,t,Un(t,o,e));if(206!=r.status)throw new Error(Qr);const s=r.headers.get(rn);if(s){const t=Number(s.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(t)&&t!=o)throw new Error(Qr)}In(t,r),Tn(t,r),o+=e,a=e,n=r.body.getReader()}}(e,r,Math.min(n,o-r))}return super.createReadable(t)}readUint8Array(t,e){return zn(this,t,e,vn,On)}}class An extends fn{constructor(t,e){super(),Rn(this,t,e)}async init(){await Dn(this,_n,Cn),super.init()}readUint8Array(t,e){return zn(this,t,e,_n,Cn)}}function Rn(t,e,r){const{preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s=!0,maximumRangeSize:c=sn,fetch:l}=r;delete(r=Object.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,Object.assign(t,{url:e,options:r,preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s,maximumRangeSize:c,fetch:l})}async function Dn(t,e,r){const{url:n,preventHeadRequest:o,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:s}=t;if(function(t){const{baseURI:e}=wt(),{protocol:r}=new URL(t,e);return"http:"==r||"https:"==r}(n)&&(a||i)&&(typeof o==F||o)){const n=await e(on,t,Un(t,s?-22:void 0)),o=n.headers.get("Accept-Ranges");if(!(i||o&&o.toLowerCase()==an))throw new Error(Qr);{if(s){const e=new Uint8Array(await n.arrayBuffer());206==n.status&&e.length==w&&(t.Lt=e)}Tn(t,n);const o=xn(n);o===z?await Mn(t,e,r):t.size=o}}else await Mn(t,e,r)}async function zn(t,e,r,n,o){const{useRangeHeader:a,forceRangeRequests:i,Lt:s,size:c,options:l}=t;if(a||i){if(s&&e==c-w&&r==w)return s;if(e>=c||0===r)return U;{e+r>c&&(r=c-e);const o=await n(on,t,Un(t,e,r));if(206!=o.status)throw new Error(Qr);const a=o.headers.get(rn);if(a){const t=Number(a.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(t)&&t!=e)throw new Error(Qr)}In(t,o),Tn(t,o);const i=new Uint8Array(await o.arrayBuffer());if(i.length!=r)throw new Error(Qr);return i}}{const{data:n}=t;return n||await o(t,l),t.data.subarray(e,e+r)}}function xn(t){const e=t.headers.get(rn);if(e){const t=e.trim().split(/\s*\/\s*/)[1];if(t&&"*"!=t){const e=Number(t);if(!Number.isNaN(e))return e}}}function Fn({headers:t}){return{Bt:t.get("Etag")||z,lastModified:t.get("Last-Modified")||z}}function Tn(t,e){const{checkResourceChanges:r,Pt:n}=t;r&&!n&&206==e.status&&(t.Pt=Fn(e))}function In(t,e){const{checkResourceChanges:r,Pt:n,size:o}=t;if(r){const t=xn(e);if(t!==z&&o!==z&&t!=o)throw new Error($r);if(n){const t=Fn(e);if(Object.entries(n).some(([e,r])=>r!==z&&t[e]!==z&&r!=t[e]))throw new Error($r)}}}function Un(t,e=0,r=1){return Object.assign({},kn(t),{[nn]:an+"="+(e<0?e:e+"-"+(e+r-1))})}function kn({options:t}){const{headers:e}=t;if(e)return Symbol.iterator in e?Object.fromEntries(e):e}async function On(t){await Nn(t,vn)}async function Cn(t){await Nn(t,_n)}async function Nn(t,e){const r=await e(on,t,kn(t));t.data=new Uint8Array(await r.arrayBuffer()),t.size=t.data.length}async function Mn(t,e,r){if(t.preventHeadRequest)await r(t,t.options);else{const n=await e("HEAD",t,kn(t)),o=n.headers.get("Content-Length");o&&!n.headers.get("Content-Encoding")?t.size=Number(o):await r(t,t.options)}}async function vn(t,{fetch:e=fetch,options:r,url:n},o){const a=await e(n,Object.assign({},r,{method:t,headers:o}));if(a.status<400)return a;throw 416==a.status?new Error(Qr):new Error(Jr+(a.statusText||a.status))}function _n(t,{url:e},r){return new Promise((n,o)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status<400){const t=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(e=>{const r=e.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,t=>t.toUpperCase()),t.push(r)}),n({status:a.status,arrayBuffer:()=>a.response,headers:new Map(t)})}else o(416==a.status?new Error(Qr):new Error(Jr+(a.statusText||a.status)))},!1),a.addEventListener("error",t=>o(t.detail?t.detail.error:new Error("Network error")),!1),a.open(t,e),r)for(const t of Object.entries(r))a.setRequestHeader(t[0],t[1]);a.responseType="arraybuffer",a.send()})}class Ln extends fn{constructor(t,e={}){super(),Object.assign(this,{url:t,reader:e.useXHR&&!e.fetch?new An(t,e):new gn(t,e)})}set size(t){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(t){return this.reader.createReadable(t)}readUint8Array(t,e){return this.reader.readUint8Array(t,e)}}class Bn extends Ln{constructor(t,e={}){super(t,Object.assign({},e,{useRangeHeader:!0}))}}class Pn extends fn{constructor(t){super(),t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),Object.assign(this,{Wt:t,size:t.length})}readUint8Array(t,e){return this.Wt.slice(t,t+e)}}class Wn extends wn{constructor(t){super(),this.jt=t||262144}init(t=0){Object.assign(this,{offset:0,Wt:new Uint8Array(t>0?t:this.jt)}),super.init()}writeUint8Array(t){const e=this,r=e.offset+t.length;if(r>e.Wt.length){let t=e.Wt.length?2*e.Wt.length:e.jt;for(;t<r;)t*=2;const n=e.Wt;e.Wt=new Uint8Array(t),e.Wt.set(n)}e.Wt.set(t,e.offset),e.offset+=t.length}getData(){return this.offset===this.Wt.length?this.Wt:this.Wt.slice(0,this.offset)}}class jn extends fn{constructor(t){super(),this.Vt=t}async init(){const t=this;t.Zt=0;const e=t.Vt=await Promise.all(t.Vt.map(qn));t.Ht=e.map(e=>{const r=t.size;return t.size+=e.size,r}),super.init()}Gt(t){const{Ht:e,size:r}=this,n=e[t];return n===z?r:n}async readUint8Array(t,e){const r=this,{Vt:n}=this;let o,a=0,i=t;for(;n[a]&&i>=n[a].size;)i-=n[a].size,a++;const s=n[a];if(s){const n=s.size;if(i+e<=n)o=await Yn(s,i,e);else{const a=n-i;o=gt(await Yn(s,i,a),await r.readUint8Array(t+a,e-a))}}else o=U;return r.Zt=Math.max(a,r.Zt),o}}class Vn extends un{constructor(t,e=4294967295){super();const r=this;let n,o,a;Object.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});const i=new WritableStream({async write(e){if(e===ln)return void(a&&await c());const{availableSize:i}=r;if(a)e.length>=i?(await s(e.subarray(0,i)),await c(),e.length>i&&await this.write(e.subarray(i))):await s(e);else{const{value:i,done:s}=await t.next();if(s&&!i)throw new Error(tn);n=i,n.size=0,n.maxSize&&(r.maxSize=n.maxSize),r.availableSize=r.maxSize,await Kn(n),o=i.writable,a=o.getWriter(),await this.write(e)}},async close(){a&&(await a.ready,await l())},async abort(t){a&&await a.abort(t)}});async function s(t){const e=t.length;e&&(await a.ready,await a.write(t),n.size+=e,r.availableSize-=e)}async function c(){await l(),r.diskOffset+=n.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function l(){await a.close()}Object.defineProperty(r,cn,{get:()=>i})}async closeDisk(){const t=this.writable.getWriter();try{await t.ready,await t.write(ln)}finally{t.releaseLock()}}}class Zn{constructor(t){return Array.isArray(t)&&(t=new jn(t)),(t instanceof ReadableStream||typeof t.getReader==T)&&(t={readable:Te(t)}),t}}class Hn{constructor(t){return t.writable===z&&typeof t.next==T&&(t=new Vn(t)),(t instanceof WritableStream||typeof t.getWriter==T)&&(t={writable:Ue(t)}),t.size===z&&(t.size=0),t}}function Gn(t){return Boolean(t&&t.getData)}async function Kn(t,e){if(!t.init||t.initialized)return Promise.resolve();await t.init(e)}async function qn(t){return t=new Zn(t),await Kn(t),t.size!==z&&t.readUint8Array||(t=new yn(await Ie(t.readable)),await Kn(t)),t}function Yn(t,e,r){return t.readUint8Array(e,r)}function Xn(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?fn.prototype.createReadable.call(t,e):t.readable}const Jn="filename",Qn="rawFilename",$n="comment",to="rawComment",eo="uncompressedSize",ro="compressedSize",no="offset",oo="diskNumberStart",ao="lastModDate",io="rawLastModDate",so="lastAccessDate",co="rawLastAccessDate",lo="creationDate",uo="rawCreationDate",fo="internalFileAttributes",wo="externalFileAttributes",po="msdosAttributesRaw",mo="msdosAttributes",ho="msDosCompatible",yo="zip64",Eo="encrypted",bo="version",So="versionMadeBy",go="zipCrypto",Ao="directory",Ro="executable",Do="compressionMethod",zo="signature",xo="extraField",Fo="unixMode",To="setuid",Io="setgid",Uo="sticky",ko=[Jn,Qn,eo,ro,ao,io,$n,to,so,co,lo,uo,no,oo,fo,wo,po,mo,ho,yo,Eo,bo,So,go,Ao,Ro,"symlink",Do,zo,"crc32",xo,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",Fo,"unixExternalUpper",To,Io,Uo,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class Oo{constructor(t){ko.forEach(e=>this[e]=t[e])}}const Co="File format is not recognized",No="End of central directory not found",Mo="End of Zip64 central directory locator not found",vo="Central directory header not found",_o="Local file header not found",Lo="Zip64 extra field not found",Bo="File contains encrypted entry",Po="Encryption method not supported",Wo="Split zip file",jo="Overlapping entry found",Vo="Entry data out of bounds",Zo="Ambiguous archive",Ho="Encrypted central directory is not supported",Go="Unsafe filename",Ko="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",qo="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Yo="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Xo="64-bit value exceeds Number.MAX_SAFE_INTEGER",Jo="unsorted central directory",Qo="unknown version needed to extract",$o="compressed patched data",ta="malformed extra field",ea="unknown zip64 extensible data",ra="wrapped entries count",na="appended data",oa="prepended data",aa="prepended central directory",ia="trailing central directory data",sa="duplicate filename",ca="mismatched zip64 end of central directory record",la="mismatched local file header (general purpose bit flag)",ua="mismatched local file header (compression method)",fa="mismatched local file header (crc32 or sizes)",wa=/^[a-zA-Z]:/,da="utf-8",pa="cp437",ma=[[eo,t],[ro,t],[no,t],[oo,e]],ha={[e]:{Kt:$a,bytes:4},[t]:{Kt:ti,bytes:8}},ya=BigInt(Number.MAX_SAFE_INTEGER);class Ea{constructor(t,e={}){Object.assign(this,{reader:new Zn(t),options:e,qt:new Map})}async*getEntriesGenerator(n={}){const a=this;let{reader:i}=a;if(await Kn(i),i.size!==z&&i.readUint8Array||(i=new yn(await Ie(i.readable)),await Kn(i)),i.size<w)throw new Error(Co);const c=a.warnings=[],m=Ma(n,a.options),h=m==H,A=m!=K,R=La(Ka(a,n,j),m),D=function(t,e){if(t===z)return e;if(!Na(t))throw new Error(qo);return t}(Ka(a,n,"filenameValidation"),m),x=Ka(a,n,"normalizeFilename"),{Yt:F,Xt:T}=await Ba(i,A,R);if(!F)throw await async function(t){return await Ca(t)==o}(i)?new Error(Wo):new Error(No);A&&T>1&&Ga("multiple end of central directory records");const I=Rt(F);let k=$a(I,12),O=$a(I,16);const C=F.offset,N=Qa(I,20),M=C+w+N,v=i.size-M;v>R&&Ga(na),v>0&&Ha(c,na);let _=Qa(I,4);const L=i.Zt||0;let B,P,W,G,q,Y=Qa(I,6),X=Qa(I,10),J=0,Q=p;const $=O==t||k==t||X==e||Y==e;if(O!=t&&Y!=e&&(O+=Oa(i,Y)),$){const r=F.offset>=d?await Yn(i,F.offset-d,d):U,n=Rt(r);if(r.length==d&&$a(n,0)==u){O=Oa(i,$a(n,4))+ti(n,8);let r=await Yn(i,O,p),o=Rt(r);const a=F.offset-d-p;if((r.length<p||$a(o,0)!=l)&&O!=a&&a>=0){const t=O;O=a,O>t&&(J=O-t),r=await Yn(i,O,p),o=Rt(r)}if(r.length<p||$a(o,0)!=l)throw new Error(Mo);if(W=!0,G=ti(o,4)>44,G){const t=Math.min(ti(o,4)-44,i.size-O-p);t>0&&(Q+=t,q=function(t){const e={rawExtensibleData:t};if(t.length>=28){const r=Rt(t),n=Qa(r,26);Object.assign(e,{compressionMethod:Qa(r,0),compressedSize:ti(r,2),uncompressedSize:ti(r,10),encryptionAlgorithm:Qa(r,18),bitLength:Qa(r,20),flags:Qa(r,22),hashAlgorithm:Qa(r,24),hashData:t.subarray(28,28+n)})}return e}(await Yn(i,O+p,t)))}_==e?_=$a(o,16):_!=$a(o,16)&&Za(h,c,ca),Y==e?Y=$a(o,20):Y!=$a(o,20)&&Za(h,c,ca),X==e?X=ti(o,32):X!=ti(o,32)&&Za(h,c,ca),k==t?k=ti(o,40):k!=ti(o,40)&&Za(h,c,ca),O=Oa(i,Y)+ti(o,48)+J}}let tt=k;const et=F.offset-(W?Q+d:0);if(O>=i.size&&(J=i.size-O-k-w,O=i.size-k-w),L!=_)throw new Error(Wo);if(O<0)throw new Error(Co);let rt=0,nt=await Yn(i,O,k),ot=Rt(nt);if(k){if(nt.length<4)throw new Error(Co);const t=et-k;if(O!=t&&Y==_){const e=$a(ot,rt)==s||Boolean(q&&q.compressedSize)||Aa(ot);let r=!e;if(!r&&t>=0&&t+4<=i.size&&(r=$a(Rt(await Yn(i,t,4)),0)==s),r){const r=O;O=t,O>r&&(J+=O-r,B=e),nt=await Yn(i,O,k),ot=Rt(nt)}}}const at=et-O;if(k!=at&&at>=0&&Y==_&&(k=at,nt=await Yn(i,O,k),ot=Rt(nt)),O<0||O>=i.size)throw new Error(Co);a.directoryOffset=O,a.directoryLength=tt;const it=qa(a,n,"decryptCentralDirectory");let st,ct;if(it&&X&&nt.length>=4&&$a(ot,0)!=s&&(G||Aa(ot))){const t=function(t,e,r){const n=t&&t.compressedSize?t.compressedSize:e;return n>0&&n<=r?n:r}(q,tt,nt.length);ct=nt.subarray(t),nt=await it(nt.subarray(0,t),q),ot=Rt(nt),tt=nt.length,st=!0}q&&!st&&(nt.length<4||$a(ot,0)==s)&&Ha(c,ea),P=O;const lt=Ka(a,n,"filenameEncoding"),ut=Ka(a,n,"commentEncoding"),ft=new Set;let wt,dt=-1;const pt=!h&&!W;!X&&pt&&(X=Ra(ot,nt,rt),X&&Ha(c,ra));for(let t=0;t<X;t++){const o=new ga(i,a.options);if(rt+f>nt.length||$a(ot,rt)!=s){if(0==t&&!st&&(G||Aa(ot)))throw new Error(Ho);throw new Error(vo)}za(o,ot,rt+6);const l=Boolean(o.bitFlag.languageEncodingFlag),u=rt+f,w=u+o.filenameLength,d=w+o.extraFieldLength,p=Qa(ot,rt+4),m=!(p>>8),h=p>>8==3,A=nt.subarray(u,w),R=Qa(ot,rt+32),F=d+R,T=nt.subarray(d,F),I=l,U=l,k=$a(ot,rt+38),O=k&r,C={readOnly:Boolean(1&O),hidden:Boolean(2&O),system:Boolean(4&O),directory:Boolean(16&O),archive:Boolean(32&O)},N=$a(ot,rt+42),M=qa(a,n,"decodeText")||Yr,v=I?da:lt||pa,_=U?da:ut||pa;let L=M(A,v,V);if(L===z&&(L=Yr(A,v)),x){const t=x(L);t!==z&&(L=t)}if(_a(L,D)){const t=new Error(Go);throw t.filename=L,t}let B=M(T,_,Z);B===z&&(B=Yr(T,_)),Object.assign(o,{index:t,Jt:st,versionMadeBy:p,msDosCompatible:m,zip64:!1,compressedSize:0,uncompressedSize:0,Qt:R,offset:N,diskNumberStart:Qa(ot,rt+34),internalFileAttributes:Qa(ot,rt+36),externalFileAttributes:k,msdosAttributesRaw:O,msdosAttributes:C,rawFilename:A,filenameUTF8:I,commentUTF8:U,rawExtraField:nt.subarray(w,d),rawComment:T,filename:L,comment:B}),xa(o,o,ot,rt+6)&&Ha(c,ta,L),o.offset+=J;const W=Oa(i,o.diskNumberStart)+o.offset;P=Math.min(W,P),W<dt&&Ha(c,Jo,L),dt=W,(o.version&r)>63&&Ha(c,Qo,L),32&~o.rawBitFlag||Ha(c,$o,L),ft.has(o.filename)&&(wt=!0),ft.add(o.filename);const j=o.externalFileAttributes>>16&e;o.unixMode===z&&16877&j&&(o.unixMode=j);const H=Boolean(o.unixMode&b),K=Boolean(o.unixMode&S),q=Boolean(512&o.unixMode),Y=40960==((o.unixMode===z?j:o.unixMode)&y),Q=!Y&&(o.unixMode!==z?!!(73&o.unixMode):h&&!!(73&j)),$=o.unixMode!==z&&(o.unixMode&y)==E,tt=(j&y)==E;Object.assign(o,{setuid:H,setgid:K,sticky:q,symlink:Y,unixExternalUpper:j,executable:Q,directory:$||tt||m&&C.directory||o.filename.endsWith(g),zipCrypto:o.encrypted&&!o.extraFieldAES});const et=new Oo(o);if(et.getData=(t,e)=>o.getData(t,et,a.qt,e),et.arrayBuffer=async t=>{const e=new TransformStream,r=Ie(e.readable).then(t=>t.arrayBuffer());return r.catch(()=>{}),await o.getData(e,et,a.qt,t),r},rt=F,t==X-1&&pt){const t=Ra(ot,nt,rt);t&&(X+=t,Ha(c,ra))}const{onprogress:at}=n;if(at)try{await at(t+1,X,new Oo(o))}catch{}yield et}let mt=rt,ht=Da(nt.subarray(rt))||(st?Da(ct):z);if(!ht&&!st){const t=O+rt,e=Math.min(et-t,65541);e>=6&&(ht=Da(await Yn(i,t,e)))}ht&&(a.digitalSignature=ht,mt=rt+6+ht.length),(rt!=tt&&mt!=tt||!st&&rt!=k&&mt!=k)&&Za(h,c,ia),wt&&Za(h,c,sa);const yt=Ka(a,n,"extractPrependedData"),Et=Ka(a,n,"extractAppendedData"),bt=(h||yt)&&X&&4==P&&await async function(t){const e=await Ca(t);return e==o||808471376==e}(i)?4:0;return h&&(J||X&&P>bt)&&Ga(oa),(J||X&&P>4)&&Ha(c,oa),B&&Ha(c,aa),yt&&(a.prependedData=P>bt?await Yn(i,bt,P-bt):U),a.comment=N?await Yn(i,C+w,N):U,Et&&(a.appendedData=M<i.size?await Yn(i,M,i.size-M):U),!0}async getEntries(t={}){const e=[];for await(const r of this.getEntriesGenerator(t))e.push(r);return e}async close(){const{reader:t}=this;t.readUint8Array||!t.readable||t.readable.locked||await t.readable.cancel()}}class ba{constructor(t={}){const{readable:e,writable:r}=new TransformStream,n=new Ea(e,t).getEntriesGenerator();this.readable=new ReadableStream({async pull(t){const{done:e,value:r}=await n.next();if(e)return t.close();const o=function(){const{readable:t,writable:e}=new TransformStream;if(r.getData)return async function(){try{await r.getData(e)}catch(t){try{await e.abort(t)}catch{}}}(),t}(),a={...r,readable:o};delete a.getData,t.enqueue(a)}}),this.writable=r}}async function Sa(t,e={}){if(t=new Zn(t),await Kn(t),t.size!==z&&t.readUint8Array||(t=new yn(await Ie(t.readable)),await Kn(t)),t.size<w)return!1;const r=Ma(e,{}),n=r!=K,o=La(e[j],r),{Yt:a,Xt:i}=await Ba(t,n,o);if(!a||r==H&&i>1)return!1;const s=Qa(Rt(a),20),c=a.offset+w+s;return t.size-c<=o}class ga{constructor(t,e){Object.assign(this,{reader:t,options:e})}async getData(t,e,o,i={}){const s=this,c=wt(),{reader:l,index:u,offset:f,diskNumberStart:w,extraFieldAES:d,extraFieldZip64:p,compressionMethod:m,bitFlag:h,rawBitFlag:y,crc32:E,rawLastModDate:b,uncompressedSize:S,compressedSize:g}=s,{dataDescriptor:R}=h,D=e.localDirectory={},x=e.warnings=[],F=Oa(l,w)+f,T=await Yn(l,F,A),I=Rt(T);let B=Ka(s,i,k),P=Ka(s,i,O);const W=Ka(s,i,C);if(tt(B,P),B=B&&B.length&&B,P=P&&P.length&&P,d&&99!=d.originalCompressionMethod)throw new Error(Ne);if(T.length<A||$a(I,0)!=n)throw new Error(_o);za(D,I,4);const{extraFieldLength:j,filenameLength:V}=D,Z=D.dataOffset=F+A+V+j,G=Ka(s,i,"checkLocalDirectory"),q=Ma(i,s.options),Y=function(t,e){return t===z?e!=K:Boolean(t)}(G,q),X=function(t,e){return t===z?e==H:Boolean(t)}(G,q);let J=U;if(X&&(V||j)){const t=await Yn(l,F+A,V+j);J=t.subarray(0,V),D.rawExtraField=t.subarray(V)}else D.rawExtraField=j?await Yn(l,F+A+V,j):U;X&&(D.rawFilename=J),xa(s,D,I,4,!0)&&Ha(x,ta),function(t,e,r,n,o){const{rawFilename:a}=t,i=!o,s=t.Jt&&!(8192&~e.rawBitFlag);!n||s||r.length==a.length&&!r.some((t,e)=>t!=a[e])||Za(i,o,"mismatched local file header (filename)"),(2057&e.rawBitFlag)!=(2057&t.rawBitFlag)&&Za(i,o,la),e.compressionMethod!=t.compressionMethod&&Za(i,o,ua),e.bitFlag.dataDescriptor||s||!(e.crc32||e.compressedSize||e.uncompressedSize)||e.crc32==t.crc32&&e.compressedSize==t.compressedSize&&e.uncompressedSize==t.uncompressedSize||Za(i,o,fa)}(s,D,J,X,Y?z:x);const{lastAccessDate:et,creationDate:rt,uid:nt,gid:ot}=D;et&&(e.lastAccessDate=et),rt&&(e.creationDate=rt),nt!==z&&e.uid===z&&(e.uid=nt),ot!==z&&e.gid===z&&(e.gid=ot);const at=s.encrypted&&D.encrypted&&!W,it=at&&!d;if(W||(e.zipCrypto=it),at&&!(64&~D.rawBitFlag))throw new Error(Po);const st=W?z:Pe(m);if(0!=m&&8!=m&&9!=m&&!st&&!W)throw new Error(Ne);if(at){if(!it&&(d.strength<1||d.strength>3))throw new Error(Po);if(!B&&!P)throw new Error(Bo)}if(Z+g>l.size)throw new Error(Vo);const ct=g,lt=Te(l.createReadable({offset:Z,size:ct})),ut=Q(Ka(s,i,N));$(ut);const ft=Ka(s,i,"checkPasswordOnly");let dt=Ka(s,i,"checkOverlappingEntry");const pt=Ka(s,i,"checkOverlappingEntryOnly");pt&&(dt=!0);const{onstart:mt,onprogress:ht,onend:yt}=i,Et=0!=m&&!W,bt=W?g:S,St=9==m;let gt=Ka(s,i,v);St&&(gt=!1);const At=Ka(s,i,"checkCrc32"),Dt=(At===z?Ka(s,i,"checkSignature"):At)&&!W&&(!at||it||d&&1==d.vendorVersion),zt={options:{codecType:ur,password:B,rawPassword:P,zipCrypto:it,encryptionStrength:d&&d.strength,checkCrc32:Dt,checkAuthenticationCode:Ka(s,i,"checkAuthenticationCode"),passwordVerification:it&&(R?b>>>8&r:E>>>24&r),outputSize:bt,crc32:E,compressed:Et,encrypted:at,useWebWorkers:Ka(s,i,M),useCompressionStream:gt,transferStreams:Ka(s,i,_),deflate64:St,format:st?st.format:z,codecURI:st?st.codecURI:z,compressionMethod:m,rawBitFlag:y,checkPasswordOnly:ft},config:c,ut:{signal:ut,size:ct,onstart:mt,onprogress:ht,onend:yt}};let xt,Ft;dt&&await async function({reader:t,$t:e,index:r,offset:n,crc32:o,compressedSize:i,uncompressedSize:s,dataOffset:c,dataDescriptor:l,extraFieldZip64:u,qt:f}){let w=0;if(l&&(w=u?20:12),w){const r=await Yn(t,c+i,w+4),n=Rt(r);let l=r.length==w+4&&$a(n,0)==a;if(l){const t=ka(n,4,u);(e.encrypted&&!e.zipCrypto||t.crc32==o)&&t.compressedSize==i&&t.uncompressedSize==s?w+=4:l=!1}if(r.length>=w){const t=ka(n,l?4:0,u);t.signature=l,e.localDirectory.dataDescriptor=t}}const d={start:n,end:c+i+w,$t:e};for(const[t,e]of f)if(t!=r&&d.start<e.end&&e.start<d.end){const t=new Error(jo);throw t.overlappingEntry=e.$t,t}f.set(r,d)}({reader:l,$t:e,index:u,offset:F,crc32:E,compressedSize:g,uncompressedSize:S,dataOffset:Z,dataDescriptor:R||D.bitFlag.dataDescriptor,extraFieldZip64:p||D.extraFieldZip64,qt:o});try{if(!pt){ft&&(t=new WritableStream),t=new Hn(t),await Kn(t,function(t,e,r){return Math.min(t,r?1032*e:e)}(bt,g,Et)),({writable:xt}=t);const{outputSize:e}=await jr({readable:lt,writable:xt},zt);if(t.size+=e,e!=bt)throw new Error(Ze)}}catch(e){if(e.outputSize!==z&&(t.size+=e.outputSize),!ft||e.message!=Vt)throw Ft=e,e}finally{if((Gn(t)||!Ka(s,i,L))&&xt&&!xt.locked){const t=xt.getWriter();if(Ft)try{await t.abort(Ft)}catch{}else await t.close()}}return ft||pt?z:t.getData?t.getData():xt}}function Aa(t){const e=Math.min(t.byteLength,1024)-3;for(let r=0;r<e;r++)if(134630224==$a(t,r))return!0;return!1}function Ra(t,e,r){let n=0;for(;r+f<=e.length&&$a(t,r)==s;)r+=f+Qa(t,r+28)+Qa(t,r+30)+Qa(t,r+32),n++;return n%65536?0:n}function Da(t){if(t.length>=6){const e=Rt(t);if($a(e,0)==i){const r=Qa(e,4);if(6+r<=t.length)return t.subarray(6,6+r)}}}function za(t,e,r){const n=t.rawBitFlag=Qa(e,r+2),o=!(1&~n),a=$a(e,r+6);Object.assign(t,{encrypted:o,version:Qa(e,r),bitFlag:{level:(6&n)>>1,dataDescriptor:!(8&~n),languageEncodingFlag:(n&h)==h},rawLastModDate:a,lastModDate:Ya(a),filenameLength:Qa(e,r+22),extraFieldLength:Qa(e,r+24)})}function xa(t,e,r,n,o){const{rawExtraField:a}=e,i=e.extraField=new Map,s=Rt(a);let c=0,l=!1;try{for(;c<a.length;){const t=Qa(s,c),e=Qa(s,c+2);i.set(t,{type:t,data:a.slice(c+4,c+4+e)}),c+=4+e}}catch{l=!0}c>a.length&&(l=!0);const u=Qa(r,n+4);Object.assign(e,{signature:$a(r,n+10),crc32:$a(r,n+10),compressedSize:$a(r,n+14),uncompressedSize:$a(r,n+18)});const f=i.get(1);f&&(function(t,e){e.zip64=!0;const r=Rt(t.data),n=ma.filter(([t,r])=>e[t]==r),o=n.reduce((t,[,e])=>t+ha[e].bytes,0);if(t.data.length<o)throw new Error(Lo);for(let o=0,a=0;o<n.length;o++){const[i,s]=n[o],c=ha[s];e[i]=t[i]=c.Kt(r,a),a+=c.bytes}}(f,e),e.extraFieldZip64=f);const w=i.get(28789);w&&(Fa(w,Jn,Qn,e,t),e.extraFieldUnicodePath=w);const d=i.get(25461);d&&(Fa(d,$n,to,e,t),e.extraFieldUnicodeComment=d);const p=i.get(39169);p&&p.data.length>=7?(function(t,e,r){const n=Rt(t.data),o=Ja(n,4);Object.assign(t,{vendorVersion:Ja(n,0),vendorId:Ja(n,2),strength:o,originalCompressionMethod:r,compressionMethod:Qa(n,5)}),e.compressionMethod=t.compressionMethod,1!=t.vendorVersion&&(e.crc32=z)}(p,e,u),e.extraFieldAES=p):e.compressionMethod=u;const h=i.get(13);h&&(Ta(h,e),e.extraFieldPkwareUnix=h);const y=i.get(22613);y&&(Ta(y,e),e.extraFieldUnixType1=y);const E=i.get(10);E&&(function(t,e){const r=Rt(t.data);let n,o=4;try{for(;o<t.data.length&&!n;){const e=Qa(r,o),a=Qa(r,o+2);1==e&&(n=t.data.slice(o+4,o+4+a)),o+=4+a}}catch{}if(n&&24==n.length){const r=Rt(n),o=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),i=r.getBigUint64(16,!0);Object.assign(t,{rawLastModDate:o,rawLastAccessDate:a,rawCreationDate:i});const s={lastModDate:Xa(o),lastAccessDate:Xa(a),creationDate:Xa(i)};Object.assign(t,s),Object.assign(e,s,{rawLastAccessDate:a,rawCreationDate:i})}}(E,e),e.extraFieldNTFS=E);const b=i.get(30805);let S;if(b&&(S=Ia(b,e,!1),e.extraFieldUnix=b),!S){const t=i.get(30837);t&&(Ia(t,e,!0),e.extraFieldInfoZip=t)}const g=i.get(m);g&&(function(t,e,r){if(!t.data.length)return;const n=Rt(t.data),o=Ja(n,0),a=[],i=[];r?(1&~o||(a.push(ao),i.push(io)),2&~o||(a.push(so),i.push(co)),4&~o||(a.push(lo),i.push(uo))):t.data.length>=5&&(a.push(ao),i.push(io));let s=1;a.forEach((r,o)=>{if(t.data.length>=s+4){const a=$a(n,s);e[r]=t[r]=new Date(1e3*(0|a));const c=i[o];t[c]=a}s+=4})}(g,e,o),e.extraFieldExtendedTimestamp=g);const A=i.get(6534);return A&&(e.extraFieldUSDZ=A),l}function Fa(t,e,r,n,o){if(t.data.length<5)return void(t.valid=!1);const a=Rt(t.data),i=new Ct;i.append(o[r]);const s=Rt(new Uint8Array(4));s.setUint32(0,i.get(),!0);const c=$a(a,1),l=Ja(a,0);Object.assign(t,{version:l,[e]:Yr(t.data.subarray(5)),valid:1==l&&!o.bitFlag.languageEncodingFlag&&c==$a(s,0)}),t.valid&&(n[e]=t[e],n[e+"UTF8"]=!0)}function Ta(t,e){if(t.data.length<8)return;const r=Rt(t.data),n={lastAccessDate:new Date(1e3*(0|$a(r,0))),lastModDate:new Date(1e3*(0|$a(r,4)))};t.data.length>=12&&(n.uid=Qa(r,8),n.gid=Qa(r,10)),Object.assign(t,n),Object.assign(e,n)}function Ia(t,e,r){try{const n=Rt(t.data);let o,a;if(r){let e=0;const r=Ja(n,e++),i=Ja(n,e++);o=Ua(t.data.subarray(e,e+i)),e+=i;const s=Ja(n,e++);a=Ua(t.data.subarray(e,e+s)),Object.assign(t,{version:r,uid:o,gid:a})}else t.data.length>=4&&(o=Qa(n,0),a=Qa(n,2),Object.assign(t,{uid:o,gid:a}));return o!==z&&(e.uid=o),a!==z&&(e.gid=a),o!==z||a!==z}catch{}}function Ua(t){const e=new Uint8Array(4);return e.set(t,0),new DataView(e.buffer,e.byteOffset,4).getUint32(0,!0)}function ka(t,e,r){const n=$a(t,e);let o,a;return r?(o=ti(t,e+4),a=ti(t,e+12)):(o=$a(t,e+4),a=$a(t,e+8)),{crc32:n,compressedSize:o,uncompressedSize:a}}function Oa(t,e){return t.Gt?t.Gt(e):0}async function Ca(t){return $a(Rt(await Yn(t,0,4)))}function Na(t){return t===H||t===G||t===K}function Ma(t,e){return va(t,va(e,G))}function va(t,e){const r=t.strictness;if(r!==z){if(!Na(r))throw new Error(Ko);return r}const n=t.checkAmbiguity;return n===z?e:n?H:e==K?K:G}function _a(t,e){if(e==K)return!1;const r=t.split("/");return r.length>1&&""===r[r.length-1]&&r.pop(),!!(r.includes("..")||t.startsWith("/")||t.startsWith("\\\\")||wa.test(t))||e==H&&(r.includes(".")||r.includes(""))}function La(t,r){if(t!==z){const e=nt(t);if("number"!=typeof e||Number.isNaN(e)||e<0)throw new Error(Yo);return e}return r==H?0:r==K?1/0:e}async function Ba(t,e,r){const{size:n}=t,o=Math.min(n,65557),a={count:64};let i,s,c=0;for await(const[r,l,u,f,d]of Pa(t,o)){const o=Qa(r,f+20);if(d+w+o==n){const o=await ja(t,r,l,f,d,n,a);if(2==o){if(i||(i=Wa(u,f,d)),c++,!e||c>1)break}else 1!=o||s||(s=Wa(u,f,d))}}return i||(i=s),i||(i=await async function(t,e,r){const{size:n}=t,o=Math.min(n,e==1/0?n:65557+e);let a,i;for await(const[e,s,c,l,u]of Pa(t,o)){const o=Wa(c,l,u);a||(a=o);const f=await ja(t,e,s,l,u,n,r);if(2==f)return o;1!=f||i||(i=o)}return i||a}(t,r,a)),{Yt:i,Xt:c}}async function*Pa(t,e){const r=t.size-e,n=await Yn(t,r,e),o=Rt(n);for(let t=n.length-w;t>=0;t--)$a(o,t)==c&&(yield[o,r,n,t,r+t])}function Wa(t,e,r){return{offset:r,buffer:t.slice(e,e+w).buffer}}async function ja(r,n,o,a,i,c,l){const f=Qa(n,a+10),w=$a(n,a+12),p=$a(n,a+16);if(f==e||w==t||p==t)return await Va(r,n,o,i-d,c,l)==u?2:0;if(!f&&!w)return 1;const m=Qa(n,a+6);for(const t of[i-w,Oa(r,m)+p])if(await Va(r,n,o,t,c,l)==s)return 2;return 0}async function Va(t,e,r,n,o,a){return n<0||n+4>o?z:n>=r?$a(e,n-r):a.count>0?(a.count--,$a(Rt(await Yn(t,n,4)),0)):z}function Za(t,e,r){t?Ga(r):Ha(e,r)}function Ha(t,e,r){if(!t.some(t=>t.reason==e)){const n={reason:e};r!==z&&(n.filename=r),t.push(n)}}function Ga(t){const e=new Error(Zo);throw e.reason=t,e}function Ka(t,e,r){return e[r]===z?t.options[r]:e[r]}function qa(t,e,r){return J(Ka(t,e,r))}function Ya(t){const r=(4294901760&t)>>16,n=t&e,o=new Date(1980+((65024&r)>>9),((480&r)>>5)-1,31&r,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return o<D?D:o}function Xa(t){return new Date(Number(t/BigInt(1e4)-BigInt(116444736e5)))}function Ja(t,e){return t.getUint8(e)}function Qa(t,e){return t.getUint16(e,!0)}function $a(t,e){return t.getUint32(e,!0)}function ti(t,e){const r=t.getBigUint64(e,!0);if(r>ya)throw new Error(Xo);return Number(r)}var ei=Object.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Zo,ERR_BAD_FORMAT:Co,ERR_CENTRAL_DIRECTORY_NOT_FOUND:vo,ERR_ENCRYPTED:Bo,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Ho,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Vo,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Mo,ERR_EOCDR_NOT_FOUND:No,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Lo,ERR_INVALID_AUTHENTICATION_CODE:jt,ERR_INVALID_COMPRESSED_DATA:He,ERR_INVALID_CRC32:Ge,ERR_INVALID_FILENAME_VALIDATION:qo,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Yo,ERR_INVALID_PASSWORD:Wt,ERR_INVALID_STRICTNESS:Ko,ERR_INVALID_UNCOMPRESSED_SIZE:Ze,ERR_LOCAL_FILE_HEADER_NOT_FOUND:_o,ERR_OVERLAPPING_ENTRY:jo,ERR_SPLIT_ZIP_FILE:Wo,ERR_UNSAFE_FILENAME:Go,ERR_UNSUPPORTED_COMPRESSION:Ne,ERR_UNSUPPORTED_ENCRYPTION:Po,ERR_UNSUPPORTED_UINT64:Xo,ERR_WORKER_STARTUP_TIMEOUT:dr,WARNING_APPENDED_DATA:na,WARNING_COMPRESSED_PATCHED_DATA:$o,WARNING_DUPLICATE_FILENAME:sa,WARNING_MALFORMED_EXTRA_FIELD:ta,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:la,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:ua,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:fa,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:ca,WARNING_PREPENDED_CENTRAL_DIRECTORY:aa,WARNING_PREPENDED_DATA:oa,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:ia,WARNING_UNKNOWN_VERSION:Qo,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:ea,WARNING_UNSORTED_CENTRAL_DIRECTORY:Jo,WARNING_WRAPPED_ENTRIES_COUNT:ra,ZipReader:Ea,ZipReaderStream:ba,isZipFile:Sa});const ri="File already exists",ni="Zip file comment exceeds 64KB",oi="Invalid zip file comment (must be a Uint8Array)",ai="File entry comment exceeds 64KB",ii="Invalid file entry comment (must be a string)",si="Invalid date (must be a valid Date instance)",ci="File entry name exceeds 64KB",li="Version exceeds 65535",ui="The strength must equal 1, 2, or 3",fi="Encryption is not supported in USDZ files",wi="Split zip files are not supported in USDZ files",di="Encryption is not supported when the 'passThrough' option is set",pi="Invalid extra field (must be a Map)",mi="Invalid extra field type (must be integer 0..65535)",hi="Invalid extra field data (must be a Uint8Array)",yi="Extra field data exceeds 64KB",Ei=-2147483648,bi=2147483647,Si=BigInt(0),gi=BigInt("0x7fffffffffffffff"),Ai="Zip64 is not supported (set the 'zip64' option to 'true')",Ri="Undefined uncompressed size",Di="Undefined compression method",zi="Undetermined size",xi="Undefined reader",Fi="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",Ti="Zip file not empty",Ii="Invalid uid (must be integer 0..2^32-1)",Ui="Invalid gid (must be integer 0..2^32-1)",ki="Invalid UNIX mode (must be integer 0..65535)",Oi="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Ci="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",Ni="Invalid msdosAttributesRaw (must be integer 0..255)",Mi="Invalid msdosAttributes (must be an object with boolean flags)",vi="Invalid level (must be integer 0..9)",_i="Signature data exceeds 64KB",Li=new Uint8Array([7,0,2,0,65,69,3,0,0]),Bi="infozip",Pi="unix";let Wi=0;const ji=[];class Vi{constructor(t,e={}){t=new Hn(t);const{availableSize:r=x,maxSize:n=x}=t,o=r>0&&r!==x&&n>0&&n!==x;if(o&&e[W])throw new Error(wi);Object.assign(this,{writer:t,te:o,options:e,ee:new Map,re:new Set,offset:e[P]===z?t.size||t.writable.size||0:e[P],ne:e[P]===z?0:e[P]-(t.size||t.writable.size||0),oe:new Set,ae:[],ie:0,se:0,ce:z})}prependZip(t){return Gi(this,async function(t,e){if(t.re.size)throw new Error(Ti);await t.le(e)}(this,t))}appendZip(t){return Gi(this,this.le(t))}async le(t){const e=this,{oe:r,re:n,ee:a}=e;for(;r.size;)await Promise.allSettled(Array.from(r));let i;const s=new Promise(t=>i=t);r.add(s);const c=[];let l;try{t=new Zn(t),await Kn(t),t.size!==z&&t.readUint8Array||(t=new yn(await Ie(t.readable)),await Kn(t));const{ZipReader:r}=await Promise.resolve().then(function(){return ei}),i=new r(t),s=await i.getEntries();await i.close(),await Kn(e.writer);const{directoryOffset:u}=i;s.forEach(({filename:t})=>{if(n.has(t))throw new Error(ri);n.add(t),c.push(t)}),e.ue=!0;const{fe:f}=e;e.fe=new Promise(t=>l=()=>{e.ue=!1,t()}),await f,e.te&&(delete e.te,await async function(t){return Rt(await Yn(t,0,4)).getUint32(0,!0)==o}(t)||(await ls(e.writer,ss()),e.offset+=4));const w=await async function(t,e,r,n){const{writer:o}=t,a=new Map;if(o.closeDisk){const i=Array.from(r).sort((t,r)=>is(e,t)-is(e,r));let s=0;for(const r of i){const n=is(e,r);await os(t,e,s,n-s),es(o,await as(e,n))&&await o.closeDisk(),a.set(r,{offset:rs(t,o),diskNumberStart:$i(o)}),s=n}await os(t,e,s,n-s)}else{const o=t.offset;await os(t,e,0,n),r.forEach(t=>a.set(t,{offset:o+is(e,t),diskNumberStart:0}))}return a}(e,t,s,u);s.forEach(t=>{const{version:e,rawLastModDate:r,rawFilename:n,bitFlag:o,encrypted:i,uncompressedSize:s,compressedSize:c,extraFieldZip64:l}=t;let{compressionMethod:u,rawExtraField:f}=t;const{level:d,languageEncodingFlag:p,dataDescriptor:m}=o;f=ns(f||U),t.extraFieldAES&&(u=99);const h=xs(f),y=Boolean(l)&&l.uncompressedSize!==z,E=Boolean(l)&&l.compressedSize!==z,b=-7&Ts(d,p,m,i,u)|d<<1,{we:S,de:g}=Fs({version:e,bitFlag:b,compressionMethod:u,uncompressedSize:s,compressedSize:c,rawLastModDate:r,rawFilename:n,pe:E,me:y,extraFieldLength:h}),{crc32:A}=t;A!==z&&Rs(g,10,A);const{offset:R,diskNumberStart:D}=w.get(t);Object.assign(t,{he:!0,me:y,pe:E,offset:R,diskNumberStart:D,ye:!1,Ee:U,be:U,Se:U,ge:U,Ae:U,rawExtraField:f,Re:U,extendedTimestamp:!1,we:S,de:g}),a.set(t.filename,t)})}catch(t){throw c.forEach(t=>n.delete(t)),t}finally{i(),r.delete(s),l&&l()}}add(o="",i,s={}){const c=this,{oe:l}=c,u=async function(o,i,s,c){if(ms(o,c=Object.assign({},c),Ao)&&!i.endsWith(g)&&(i+=g),o.re.has(i))throw new Error(ri);o.re.add(i),Wi<wt().maxWorkers?Wi++:await new Promise(t=>ji.push(t));try{return await async function(o,i,s,c){const l=function(n,o,a){let i=ms(n,a,ho),s=ms(n,a,So,i?20:768);const c=ms(n,a,Ro),l=Es(n,a,"uid"),u=Es(n,a,"gid");let f=Es(n,a,Fo),w=ms(n,a,"unixExtraFieldType"),d=ms(n,a,To),p=ms(n,a,Io),m=ms(n,a,Uo);if(rt(l,t,Ii),rt(u,t,Ui),rt(f,e,ki),w!==z&&w!==Bi&&w!==Pi)throw new Error(Oi);if(w===Pi&&(l!==z&&l>e||u!==z&&u>e))throw new Error(Ci);w!==z||l===z&&u===z||(w=Bi);let h=Es(n,a,po),A=ms(n,a,mo);const R=h!==z||A!==z;if(l!==z||u!==z||f!==z||w||c?(i=!1,s=s&r|768):R&&(i=!0,s&=r),rt(h,r,Ni),A&&("object"!=typeof A||Array.isArray(A)))throw new Error(Mi);if(s>e)throw new Error(li);let D=ms(n,a,wo);const x=D!==z;x||(D=0),!a[Ao]&&o.endsWith(g)&&(a[Ao]=!0);const F=ms(n,a,Ao);if(F?(o.endsWith(g)||(o+=g),x||(D=16,i||(D|=16877<<16))):i||x||(D=c?493<<16:27525120),!i){const t=f!==z||Boolean(d||p||m);f=f===z?D>>16&e:f&e,d?f|=b:d=Boolean(f&b),p?f|=S:p=Boolean(f&S),m?f|=512:m=Boolean(512&f),x&&!t||(F?f=-61441&f|E:f&y||(f|=32768),D=(f&e)<<16|D&e)}({msdosAttributesRaw:h,msdosAttributes:A}=function(t,e){if(t!==z)t&=r;else if(e!==z){const{readOnly:n,hidden:o,system:a,directory:i,archive:s}=e;let c=0;n&&(c|=1),o&&(c|=2),a&&(c|=4),i&&(c|=16),s&&(c|=32),t=c&r}return e===z&&(e={readOnly:Boolean(1&t),hidden:Boolean(2&t),system:Boolean(4&t),directory:Boolean(16&t),archive:Boolean(32&t)}),{msdosAttributesRaw:t,msdosAttributes:e}}(h,A)),R&&(D=D&t|h&r);const T=D>>16&e,I=f!==z&&40960==(f&y);return{name:o,De:{versionMadeBy:s,msDosCompatible:Boolean(i),externalFileAttributes:D,unixExternalUpper:T,uid:l,gid:u,unixMode:f,unixExtraFieldType:w,symlink:I,setuid:d,setgid:p,sticky:m,msdosAttributesRaw:h,msdosAttributes:A}}}(o,i,c);({name:i}=l);const u=function(t,r,n){const o=ys(t,n,"encodeText")||Mt;let a=o(r,V);if(a===z&&(a=Mt(r)),xs(a)>e)throw new Error(ci);const i=n[$n]||"";if(typeof i!=I)throw new Error(ii);let s=o(i,Z);if(s===z&&(s=Mt(i)),xs(s)>e)throw new Error(ai);const c=ms(t,n,bo);if(c!==z&&c>e)throw new Error(li);const l=hs(t,n,ao,new Date),u=ms(t,n,io),f=hs(t,n,so),w=hs(t,n,lo),d=ms(t,n,fo,0),p=ms(t,n,C),m=ms(t,n,k),h=ms(t,n,O);tt(m,h);const y=Es(t,n,"encryptionStrength",3),E=ms(t,n,go),b=ms(t,n,"extendedTimestamp",!0),S=ms(t,n,"ntfsTimestamp"),g=ms(t,n,"keepOrder",!0),A=ms(t,n,M),R=ms(t,n,_),D=ms(t,n,"bufferedWrite"),x=ys(t,n,"createTempStream"),F=ms(t,n,"dataDescriptorSignature",!0),T=Q(ms(t,n,N));$(T);const U=ms(t,n,"useUnicodeFileNames",!0),L=ms(t,n,Do),P=p||L===z?z:Pe(L);if(!p&&L!==z&&0!==L&&8!==L&&!P)throw new Error(Ne);let j=Es(t,n,"level");if(rt(j,9,vi),t.options[W]){if(m!==z||h!==z)throw new Error(fi);j===z&&L===z&&(j=0)}p&&(j=z);let H=ms(t,n,v),G=ms(t,n,B);D&&G===z&&(G=!1),(G===z||E&&!p)&&(G=!0),j!==z&&6!=j&&(H=!1);const K=ms(t,n,yo);if(!(E||m===z&&h===z||Number.isInteger(y)&&y>=1&&y<=3))throw new Error(ui);const q=Yi(n[xo]),Y=Yi(n.localExtraField),X=Yi(n.centralExtraField);return{comment:i,De:{rawFilename:a,rawComment:s,version:c,lastModDate:l,rawLastModDate:u,lastAccessDate:f,creationDate:w,internalFileAttributes:d,passThrough:p,password:m,rawPassword:h,encryptionStrength:y,zipCrypto:E,extendedTimestamp:b,ntfsTimestamp:S,keepOrder:g,useWebWorkers:A,transferStreams:R,bufferedWrite:D,createTempStream:x,dataDescriptorSignature:F,signal:T,useUnicodeFileNames:U,compressionMethod:L,format:P?P.format:z,codecURI:P?P.codecURI:z,ze:P?P.versionNeeded:z,level:j,useCompressionStream:H,dataDescriptor:G,zip64:K,rawExtraField:q,xe:Y,Re:X}}}(o,i,c),{comment:f}=u,w=c[xo];o.ee.set(i,z);const d=o.ce,p={};let h,F;u.De.keepOrder&&(p.Fe=new Promise(t=>h=t)),o.ce=p;try{const{De:f}=u;0==f.level||f.compressionMethod!==z||f.passThrough||await async function(t){const{CompressionStream:e,CompressionStreamFallback:r}=t;if(r&&!r.gt)return!0;if(rr(e)||er(e,Ye))return!0;if(r)try{return await yr(t),!0}catch{return!1}return!1}(wt())||(f.level=0);const w=await async function(e,r,{De:n},o){if(n.passThrough&&!r&&!ms(e,o,Ao))throw new Error(xi);let a;if(r){if(r=new Zn(r),await Kn(r),!r.readable&&!r.readUint8Array)throw new Error(Fi);({size:a}=r)}return Object.assign({reader:r},function(e,r,n,o,a){const{passThrough:i,zipCrypto:s,password:c,rawPassword:l,encryptionStrength:u}=o;let{dataDescriptor:f,zip64:w,level:d,compressionMethod:p}=o,m=0,h=0,y=!1;if(i&&r){if(h=a[eo],h===z)throw new Error(Ri);if(p===z)throw new Error(Di)}const E=!0===w,b=ms(e,a,Eo);if(r&&i&&!b&&xs(c,l))throw new Error(di);const S=r&&(Boolean(c&&xs(c)||l&&xs(l))||i&&b);r||(d=0,p=0);const g=S?s?12:16+4*u:0;r&&(i?(a.uncompressedSize=h,m=n===z?bs(h)+g:n):n===z?(f=!0,(w||w===z)&&(w=y=!0,m=4294967296)):(a.uncompressedSize=h=n,m=(Ss(p,d)?bs(h):h)+g));const A=!(S||r&&(0!==n||i)||Ss(p,d));A&&!s&&ms(e,a,B)===z&&(f=!1);const R=E||y||h>=t,D=E||m>=t;if(R||D){if(!1===w)throw new Error(Ai);w=!0}return w=w||!1,{Te:m,De:{dataDescriptor:f,Ie:A,zip64:w,he:E,Ue:y,me:R,pe:D,uncompressedSize:h,level:d,compressionMethod:p,encrypted:S}}}(e,Boolean(r),a,n,o))}(o,s,u,c);({reader:s}=w);const y=ts(o.writer),E=$i(o.writer),b=function(t){const{rawFilename:r,lastModDate:o,rawLastModDate:a,lastAccessDate:i,creationDate:s,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:f,dataDescriptor:w,directory:d,rawExtraField:p,xe:h,encryptionStrength:y,extendedTimestamp:E,ntfsTimestamp:b,passThrough:S,encrypted:g,me:x,pe:F,uncompressedSize:T,Ue:I,crc32:k}=t;let{version:O,compressionMethod:C}=t;const N=!d&&Ss(C,c);let M;const v=S||!N,_=l&&(t.bufferedWrite||!w||!x&&!F||v&&!I),L=_||l&&w&&(x||F);if(l&&(x||F)){const t=20,e=Qi(t);if(e.ke(1),e.ke(t-4),M=e.Wt,_&&(e.Oe(T),v)){const t=g?u?12:16+4*y:0;e.Oe(S?0:T+t)}}else M=U;let B,P,j,V,Z;if(g&&!u){const t=Qi(xs(Li)+2);t.ke(39169),t.Ce(Li),B=t.Wt,B[8]=y}else B=U;if(E){const t=ws(o),e=ds(t);if(e){const e=9+(i?4:0)+(s?4:0),r=Qi(e);V=1+(i?2:0)+(s?4:0),r.ke(m),r.ke(e-4),r.Ne(V),r.Me(t),i&&r.Me(ps(ws(i))),s&&r.Me(ps(ws(s))),j=r.Wt}else j=U;if(b===z?!e||Boolean(i||s):b)try{const t=fs(o),e=Qi(36);e.ke(10),e.ke(32),e.ve(4),e.ke(1),e.ke(24),e.Oe(t),e.Oe(i?fs(i):t),e.Oe(s?fs(s):t),P=e.Wt}catch{P=U}else P=U}else P=j=U;try{const{uid:r,gid:n,unixExtraFieldType:o}=t;if(o!=Bi||r===z&&n===z)if(o!=Pi||r===z&&n===z)Z=U;else{const t=Qi(8);t.ke(30805),t.ke(4),t.ke((r===z?0:r)&e),t.ke((n===z?0:n)&e),Z=t.Wt}else{const t=Ji(r===z?0:r),e=Ji(n===z?0:n),o=3+t.length+e.length,a=Qi(4+o);a.ke(30837),a.ke(o),a.Ne(1),a.Ne(t.length),a.Ce(t),a.Ne(e.length),a.Ce(e),Z=a.Wt}}catch{Z=U}C===z&&(C=N?8:0),O===z&&(O=0!=C||d||g?20:10);const{ze:H}=t;N&&H!==z&&(O=O>H?O:H),l&&(O=O>45?O:45),g&&!u&&(O=O>51?O:51,S&&k!==z&&(B[4]=1),As(Rt(B),9,C),C=99);const G=L?xs(M):0,K=G+xs(B,j,P,Z,p,h);if(K+(t[W]?67:0)>e)throw new Error(yi);const q=new Date(2e3*Math.ceil(Math.floor(o.getTime()/1e3)/2)),Y=q<D?D:q>R?R:q,X=xs(j)?new Date(1e3*ws(o)):xs(P)?o:Y,{we:J,de:Q,rawLastModDate:$}=Fs({version:O,bitFlag:Ts(c,f,w,g,C),compressionMethod:C,uncompressedSize:T,lastModDate:Y,rawLastModDate:a,rawFilename:r,pe:F,me:x,extraFieldLength:K}),tt=Qi(A+xs(r)+K),et=tt.Wt,rt=Rt(et);return tt.Me(n),tt.Ce(J),tt.Ce(r),L&&tt.Ce(M),tt.Ce(B),tt.Ce(j),tt.Ce(P),tt.Ce(Z),tt.Ce(p),tt.Ce(h),w&&(F||Rs(rt,18,0),x||Rs(rt,22,0)),{_e:et,Le:rt,we:J,de:Q,lastModDate:X,rawLastModDate:$,encrypted:g,compressed:N,version:O,compressionMethod:C,Be:V,Ee:U,Pe:G,Se:j,ge:P,Ae:Z,be:B,extraFieldLength:K}}(c=Object.assign({},c,l.De,u.De,w.De,{signature:c[zo],crc32:c.crc32===z?c[zo]:c.crc32,offset:o.offset-y,diskNumberStart:E,[W]:o.options[W]})),S=function({zip64:t,dataDescriptor:e,dataDescriptorSignature:r}){let n,o=U,i=0,s=t?20:12;return r&&(s+=4),e&&(o=new Uint8Array(s),n=Rt(o),r&&(i=4,Rs(n,0,a))),{We:o,je:n,Ve:i}}(c),g=xs(b._e,S.We);F=await async function(e,n,o,a,i){const{ee:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,Ie:f,signal:w}=i,{Ze:d,$t:p,He:m,Ge:h}=a,y=e.options[W];let E,b,S,g,R,D,F,T=p,I=0;const U=l&&m?m.Fe:z;s.set(n,T);try{i.bufferedWrite||!l||e.ue||e.ie||e.se||!u&&!f?(E=!0,e.ie++,F=i.createTempStream?await i.createTempStream():new TransformStream(z,z,{highWaterMark:x}),F.size=0,await Kn(c)):(b=!0,e.se++,F=c,await U,await k()),await Kn(F);const p=ts(c);e.te&&!E&&await cs(e,c),y&&!E&&Xi(a,e.offset-p);const{_e:m}=d;E||await O();const h=$i(c),S=rs(e,c);if(T.diskNumberStart=h,E||(R=!0,D=c.size,await ls(F,m)),T=await async function(e,n,{diskNumberStart:o,Fe:a},i,s,c){const{Ze:l,Ke:u,qe:f}=i,{we:w,de:d,lastModDate:p,rawLastModDate:m,encrypted:h,compressed:y,version:E,compressionMethod:b,Ee:S,Pe:g,Se:A,Be:R,ge:D,Ae:x,be:F}=l,{We:T}=u,{rawFilename:I,lastAccessDate:U,creationDate:k,password:O,rawPassword:C,level:N,zip64:M,he:v,me:_,pe:L,zipCrypto:B,dataDescriptor:P,directory:W,executable:j,versionMadeBy:V,rawComment:Z,rawExtraField:H,Re:G,useWebWorkers:K,transferStreams:q,onstart:Y,onprogress:X,onend:J,signal:Q,encryptionStrength:$,extendedTimestamp:tt,msDosCompatible:et,internalFileAttributes:rt,externalFileAttributes:nt,uid:ot,gid:at,unixMode:it,symlink:st,setuid:ct,setgid:lt,sticky:ut,unixExternalUpper:ft,msdosAttributesRaw:wt,msdosAttributes:dt,useCompressionStream:pt,passThrough:mt,format:ht,codecURI:yt}=c,Et={Fe:a,versionMadeBy:V,zip64:M,he:v,directory:Boolean(W),executable:Boolean(j),filenameUTF8:!0,rawFilename:I,commentUTF8:!0,rawComment:Z,Ee:S,Pe:g,Se:A,ge:D,Ae:x,be:F,rawExtraField:H,Re:G,extendedTimestamp:tt,msDosCompatible:et,internalFileAttributes:rt,externalFileAttributes:nt,diskNumberStart:o,uid:ot,gid:at,unixMode:it,symlink:Boolean(st),setuid:ct,setgid:lt,sticky:ut,unixExternalUpper:ft,msdosAttributesRaw:wt,msdosAttributes:dt};let{crc32:bt,uncompressedSize:St}=c,gt=0;mt||(St=0);const{writable:At}=n;if(e){const o=e.size,a=Te(Xn(e,{size:o})),i={options:{codecType:lr,inputSize:o,level:N,rawPassword:C,password:O,encryptionStrength:$,zipCrypto:h&&B,passwordVerification:h&&B&&m>>8&r,computeCrc32:!mt,compressed:y&&!mt,encrypted:h&&!mt,useWebWorkers:K,useCompressionStream:pt,transferStreams:q,format:ht,codecURI:yt,compressionMethod:b},config:s,ut:{signal:Q,size:o,onstart:Y,onprogress:X,onend:J}};try{const e=await jr({readable:a,writable:At},i);if(gt=e.outputSize,n.size+=gt,mt||(St=e.inputSize,h&&!B||(bt=e.crc32)),!L&>>=t||!_&&St>=t)throw new Error(Ai)}catch(t){throw t.outputSize!==z&&(n.size+=t.outputSize),t}}return function({crc32:t,compressedSize:e,uncompressedSize:r,Ze:n,Ke:o},{zip64:a,zipCrypto:i,passThrough:s,dataDescriptor:c}){const{de:l,encrypted:u}=n,{je:f,Ve:w}=o;u&&!i&&!s||t===z||(Rs(l,10,t),c&&Rs(f,w,t)),a?c&&(Ds(f,w+4,BigInt(e)),Ds(f,w+12,BigInt(r))):(Rs(l,14,e),Rs(l,18,r),c&&(Rs(f,w+4,e),Rs(f,w+8,r)))}({crc32:bt,compressedSize:gt,uncompressedSize:St,Ze:l,Ke:u},c),P&&await ls(n,T),Object.assign(Et,{uncompressedSize:St,compressedSize:gt,lastModDate:p,rawLastModDate:m,creationDate:k,lastAccessDate:U,encrypted:Boolean(h),zipCrypto:Boolean(B),size:f+gt,compressionMethod:b,version:E,we:w,de:d,signature:bt,crc32:!h||B||mt?bt:z,Be:R,me:_,pe:L}),Et}(o,F,T,a,wt(),i),E||(R=!1),s.set(n,T),T.filename=n,E){if(await Promise.all([F.writable.getWriter().close(),U]),await k(),e.te&&await cs(e,c),g=!0,D=c.size,await O(),T.diskNumberStart=$i(c),T.offset=rs(e,c),y){const t=a.qe;Xi(a,e.offset-ts(c)),T.size+=a.qe-t}!function({rawFilename:t,encrypted:e,zip64:r,Pe:n,crc32:o,compressedSize:a,uncompressedSize:i,me:s,pe:c},l,{dataDescriptor:u,passThrough:f}){if(u||((!e||f&&o!==z)&&Rs(l,14,o),c||Rs(l,18,a),s||Rs(l,22,i)),r&&n){const e=A+xs(t)+4;Ds(l,e,BigInt(i)),Ds(l,e+8,BigInt(a))}}(T,d.Le,i),await ls(c,d._e),await us(F.readable,c,w,t=>I+=t),c.size+=F.size,g=!1}else T.diskNumberStart=h,T.offset=S;return e.offset+=T.size,T}catch(t){if(g||R){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch{}e.offset+=c.size-D,E&&(e.offset+=I)}throw s.delete(n),t}finally{if(E&&e.ie--,b&&e.se--,h&&h(U),S&&S(),E&&F&&F.dispose)try{await F.dispose()}catch{}}async function k(){e.ue=!0;const{fe:t}=e;e.fe=new Promise(t=>S=()=>{e.ue=!1,t()}),await t}async function O(){es(c,xs(d._e))&&await c.closeDisk()}}(o,i,s,{Ze:b,Ke:S,qe:g,$t:p,He:d,Ge:h},c)}catch(t){throw o.ee.delete(i),t}finally{h&&h(d&&d.Fe)}return Object.assign(F,{name:i,comment:f,extraField:w}),new Oo(F)}(o,i,s,c)}catch(t){throw o.re.delete(i),t}finally{const t=ji.shift();t?t():Wi--}}(c,o,i,s);l.add(u);const f=()=>l.delete(u);return Promise.prototype.then.call(u,f,f),Gi(c,u)}remove(t){const{re:e,ee:r}=this;if(typeof t==I&&(t=r.get(t)),t&&t.filename!==z){const{filename:n}=t;if(e.has(n)&&r.has(n))return e.delete(n),r.delete(n),!0}return!1}async close(r=U,n={}){const o=this,{oe:a,writer:d}=this,{writable:p}=d;if(!(r instanceof Uint8Array))throw new Error(oi);if(xs(r)>e)throw new Error(ni);for(;a.size;)await Promise.allSettled(Array.from(a));await Promise.allSettled(o.ae.map(t=>t.Ye));const h=o.ae.filter(t=>t.error&&!t.Xe);if(h.length){const t=h.map(t=>t.error);h.forEach(t=>t.Xe=!0);const[e]=t;try{e.entryErrors=t}catch{}throw e}return await async function(r,n,o){const{Je:a,Qe:d}=function(r){let n=0,o=!1;for(const[,a]of r){const{rawFilename:r,be:i,rawComment:s,ge:c,Ae:l,rawExtraField:u,Re:w,extendedTimestamp:d,Be:p,lastModDate:h,he:y,uncompressedSize:E,compressedSize:b}=a;let{me:S,pe:g}=a;y||(S&&E<t&&(S=a.me=!1),g&&b<t&&(g=a.pe=!1)),o=o||S||g;const A=a.offset>=t,R=a.diskNumberStart>=e;let D,z;if(A||R||S||g){const t=4+(S?8:0)+(g?8:0)+(A?8:0)+(R?4:0),e=Qi(t);e.ke(1),e.ke(t-4),S&&e.Oe(E),g&&e.Oe(b),A&&e.Oe(a.offset),R&&e.Me(a.diskNumberStart),D=e.Wt}else D=U;a.Ee=D,a.$e=A,a.ye=R;const x=ws(h);if(d&&ds(x)){const t=Qi(9);t.ke(m),t.ke(5),t.Ne(p),t.Me(x),z=t.Wt}else z=U;a.Se=z;const F=xs(D,i,c,l,z,u,w);if(F>e)throw new Error(yi);n+=f+xs(r,s)+F}return{Je:n,Qe:o}}(r.ee),{er:p,rr:h,nr:y}=await async function(r,n,o){const{ee:a,writer:i}=r,c=new Uint8Array(n);await Kn(i);let l=0,u=0,w=$i(i),d=ts(i),p=0;for(const[r,n]of Array.from(a.values()).entries()){const{offset:m,rawFilename:h,Ee:y,be:E,Se:b,ge:S,Ae:g,rawExtraField:A,Re:R,rawComment:D,versionMadeBy:z,we:x,de:F,me:T,pe:I,ye:U,$e:k,internalFileAttributes:O,externalFileAttributes:C,diskNumberStart:N,uncompressedSize:M,compressedSize:v}=n,_=xs(y,E,b,S,g,A,R),L=f+xs(h,D)+_;es(i,l+L-u)&&(await ls(i,c.slice(u,l)),u=l,p=0,await i.closeDisk()),0==r&&(w=$i(i),d=ts(i)),T||Rs(F,18,M),I||Rs(F,14,v),(k||U)&&n.version<45&&As(F,0,45);const B=Qi(L);if(B.Me(s),B.ke(z),B.Ce(x.subarray(0,24)),B.ke(_),B.ke(xs(D)),B.ke(U?e:N),B.ke(O),B.Me(C),B.Me(k?t:m),B.Ce(h),B.Ce(y),B.Ce(E),B.Ce(b),B.Ce(S),B.Ce(g),B.Ce(A),B.Ce(R),B.Ce(D),zs(c,B.Wt,l),l+=L,p++,o.onprogress)try{await o.onprogress(r+1,a.size,new Oo(n))}catch{}}return await ls(i,u?c.slice(u):c),{er:{diskNumber:w,diskOffset:d},rr:{diskNumber:$i(i),ar:p},nr:c}}(r,a,o),E=await async function(t,r,n){const o=ys(t,n,"signCentralDirectory");if(o){const n=await o(r),a=xs(n);if(a>e)throw new Error(_i);const s=Qi(6+a);s.Me(i),s.ke(a),s.Ce(n);const{writer:c}=t;return es(c,xs(s.Wt))&&await c.closeDisk(),await ls(c,s.Wt),6+a}return 0}(r,y,o);await async function(r,n,o,a){const{writer:i}=r,{er:s,rr:f,ir:d,Qe:p}=a;let{Je:m}=a,h=r.ee.size,y=s.diskNumber,E=rs(r,s);const b=xs(n);if(b>e)throw new Error(ni);let S=ms(r,o,yo),g=$i(i);if(es(i,(S?98:w)+b)&&g++,E>=t||m>=t||h>=e||g>=e){if(!1===S)throw new Error(Ai);S=!0}else S===z&&p&&(S=!0);const A=Qi(S?98:w);es(i,xs(A.Wt)+b)&&await i.closeDisk(),g=$i(i);let R=g==f.diskNumber?f.ar:0;S&&(A.Me(l),A.Oe(44),A.ke(45),A.ke(45),A.Me(g),A.Me(y),A.Oe(R),A.Oe(h),A.Oe(m),A.Oe(E),A.Me(u),A.Me(g),A.Oe(BigInt(rs(r,i))+BigInt(m)+BigInt(d)),A.Me(g+1),ms(r,o,"supportZip64SplitFile",!0)&&(g=e,y=e),R=e,h=e,E=t,m=t),A.Me(c),A.ke(g),A.ke(y),A.ke(R),A.ke(h),A.Me(m),A.Me(E),A.ke(b),await ls(i,A.Wt),b&&await ls(i,n)}(r,n,o,{er:p,rr:h,Je:a,ir:E,Qe:d})}(o,r,n),!Gn(d)&&ms(o,n,L)||await p.getWriter().close(),d.getData?d.getData():p}}class Zi{constructor(t={}){const{readable:e,writable:r}=new TransformStream;this.readable=e,this.zipWriter=new Vi(r,t),this.oe=new Set}transform(t){const e=this.zipWriter;let r;const{readable:n,writable:o}=new TransformStream({start(t){r=t},flush:()=>{!async function(){try{await e.close()}catch(t){await Ki(e,t)}}()}});return qi(this,this.zipWriter.add(t,n),t=>r.error(t)),{readable:this.readable,writable:o}}writable(t){let e;const{readable:r,writable:n}=new TransformStream({start(t){e=t}});return qi(this,this.zipWriter.add(t,r),t=>e.error(t)),n}async close(t,e={}){const{zipWriter:r}=this,n=(await Promise.allSettled(Array.from(this.oe))).filter(t=>"rejected"==t.status).map(t=>t.reason);if(n.length){const[t]=n;try{t.entryErrors=n}catch{}throw await Ki(r,t),t}try{return await r.close(t,e)}catch(t){throw await Ki(r,t),t}}}class Hi extends Promise{then(t,e){const{sr:r}=this;return r&&(r.Xe=!0),super.then(t,e)}}function Gi(t,e){const r=new Hi((t,r)=>Promise.prototype.then.call(e,t,r)),n={};return r.sr=n,n.Ye=Promise.prototype.then.call(r,z,t=>n.error=t),t.ae.push(n),r}async function Ki(t,e){try{await t.writer.writable.abort(e)}catch{}}function qi(t,e,r){t.oe.add(e),e.catch(t=>{try{r(t)}catch{}})}function Yi(t){if(!t)return U;if(!(t instanceof Map))throw new Error(pi);let r=0,n=0;t.forEach((t,n)=>{if(et(n,e,mi),!(t instanceof Uint8Array))throw new Error(hi);if(xs(t)>e)throw new Error(yi);r+=4+xs(t)});const o=new Uint8Array(r),a=Rt(o);return t.forEach((t,e)=>{As(a,n,e),As(a,n+2,xs(t)),zs(o,t,n+4),n+=4+xs(t)}),o}function Xi(t,e){const{Ze:r}=t;let{_e:n,extraFieldLength:o}=r,a=64-(e+xs(n))%64;a<4&&(a+=64);const i=new Uint8Array(a),s=Rt(i);As(s,0,6534),As(s,2,a-4);const c=n;r._e=n=new Uint8Array(xs(c)+a),zs(n,c),zs(n,i,xs(c));const l=Rt(n);As(l,28,o+a),r.Le=l,t.qe+=a}function Ji(t){const e=new Uint8Array(4);Rt(e).setUint32(0,t,!0);let r=4;for(;r>1&&0===e[r-1];)r--;return e.subarray(0,r)}function Qi(t){const e=new Uint8Array(t),r=Rt(e);let n=0;return{Wt:e,Ne:t=>{!function(t,e,r){t.setUint8(e,r)}(r,n,t),n+=1},ke:t=>{As(r,n,t),n+=2},Me:t=>{Rs(r,n,t),n+=4},Oe:t=>{Ds(r,n,BigInt(t)),n+=8},Ce:t=>{zs(e,t,n),n+=xs(t)},ve:t=>n+=t}}function $i(t){const{diskNumber:e=0}=t;return e}function ts(t){const{diskOffset:e=0}=t;return e}function es(t,e){const{availableSize:r=x}=t;return e>r}function rs(t,{diskNumber:e=0,diskOffset:r=0}){return t.offset-r-(e?t.ne:0)}function ns(t){const e=Rt(t);let r=0;for(;r+4<=xs(t);){const n=4+gs(e,r+2);if(1==gs(e,r))return ns(gt(t.subarray(0,r),t.subarray(Math.min(r+n,xs(t)))));r+=n}return t}async function os(t,e,r,n){if(n>0){const{writer:o}=t;let a=0;try{await us(Xn(e,{offset:r,size:n}),o,z,t=>a+=t)}catch(e){t.hasCorruptedEntries=!0;try{e.corruptedEntry=!0}catch{}throw e}finally{o.size+=a,t.offset+=a}}}async function as(t,e){const r=await Yn(t,e,A);if(xs(r)<A)return A;const n=Rt(r);return A+gs(n,26)+gs(n,28)}function is(t,{offset:e,diskNumberStart:r}){return e+(t.Gt?t.Gt(r):0)}function ss(){const t=new Uint8Array(4);return Rs(Rt(t),0,o),t}async function cs(t,e){delete t.te,await ls(e,ss()),t.offset+=4}async function ls(t,e){const{writable:r}=t,n=r.getWriter();try{await n.ready,t.size+=xs(e),await n.write(e)}finally{n.releaseLock()}}async function us(t,e,r,n){const o=e.writable.getWriter();try{await t.pipeTo(new WritableStream({async write(t){await o.ready,await o.write(t),n(xs(t))}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{o.releaseLock()}}function fs(t){if(t){const e=(BigInt(t.getTime())+BigInt(116444736e5))*BigInt(1e4);return e<Si?Si:e>gi?gi:e}}function ws(t){return Math.floor(t.getTime()/1e3)}function ds(t){return t>=Ei&&t<=bi}function ps(t){return Math.min(bi,Math.max(Ei,t))}function ms(t,e,r,n){const o=e[r]===z?t.options[r]:e[r];return o===z?n:o}function hs(t,e,r,n){const o=ms(t,e,r,n);if(null===o)return n;if(o!==z&&(typeof o.getTime!=T||Number.isNaN(o.getTime())))throw new Error(si);return o}function ys(t,e,r){return J(ms(t,e,r))}function Es(t,e,r,n){return nt(ms(t,e,r,n))}function bs(t){return t+5*(Math.floor(t/16383)+1)}function Ss(t,e){return t===z?e===z||e>0:0!==t}function gs(t,e){return t.getUint16(e,!0)}function As(t,e,r){t.setUint16(e,r,!0)}function Rs(t,e,r){t.setUint32(e,r,!0)}function Ds(t,e,r){t.setBigUint64(e,r,!0)}function zs(t,e,r){t.set(e,r)}function xs(...t){let e=0;return t.forEach(t=>t&&(e+=t.length)),e}function Fs({version:e,bitFlag:r,compressionMethod:n,uncompressedSize:o,compressedSize:a,lastModDate:i,rawLastModDate:s,rawFilename:c,pe:l,me:u,extraFieldLength:f}){const w=Qi(26),d=w.Wt,p=Rt(d);if(w.ke(e),w.ke(r),w.ke(n),s===z){const t=new Uint32Array(1),e=Rt(t);As(e,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),As(e,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=t[0]}return w.Me(s),w.ve(4),l||a!==z?w.Me(l?t:a):w.ve(4),u||o!==z?w.Me(u?t:o):w.ve(4),w.ke(xs(c)),w.ke(f),{we:d,de:p,rawLastModDate:s}}function Ts(t,e,r,n,o){let a=0;return e&&(a|=h),r&&(a|=8),8!=o&&9!=o||(t>=0&&t<=3&&(a|=6),t>3&&t<=5&&(a|=4),9==t&&(a|=2)),n&&(a|=1),a}function Is(){return"application/octet-stream"}function Us(){const{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:r,DecompressionStreamFallback:n}=wt(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:ks(r,Ke)||ks(t,Ke)||ks(t,Ye),decompression:ks(n,Ke)||ks(e,Ke)||ks(e,Ye),registered:!1},{compressionMethod:9,compression:!1,decompression:ks(n,qe)||ks(e,qe),registered:!1}];for(const t of We()){const e=je(t.format);o.push({compressionMethod:t.compressionMethod,compression:e?typeof e.CompressionStream==T:z,decompression:e?typeof e.DecompressionStream==T:z,registered:!0})}return o}function ks(t,e){if(!t)return!1;const{cr:r}=t;return r?r.includes(e):er(t,e)}const Os="2.11.4",Cs=1048576,Ns=".zip.js-temp";function Ms(t={}){const{thresholdBytes:e=Cs,directoryName:r=Ns,getDirectory:n=()=>navigator.storage.getDirectory()}=t;let o;function a(){return o||(o=Promise.resolve(n()).then(t=>t.getDirectoryHandle(r,{create:!0}))),o}return function(){const t=[];let r,n,o,i,s=0,c=!1;const l=new WritableStream({async write(i){c?await o.write(i):(t.push(i),s+=i.length,s>e&&await async function(){const e=await a();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join(""),n=await e.getFileHandle(r,{create:!0}),o=(await n.createWritable()).getWriter(),c=!0;for(const e of t)await o.write(e);t.length=0}())},async close(){o&&(await o.close(),o=null)}});let u=0;return{writable:l,readable:new ReadableStream({async pull(e){if(c){if(!i){const t=await n.getFile();i=t.stream().getReader()}const{value:t,done:r}=await i.read();r?e.close():e.enqueue(t)}else u<t.length?e.enqueue(t[u++]):e.close()},async cancel(t){i&&await i.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(o){try{await o.close()}catch{}o=null}if(r){try{const t=await a();await t.removeEntry(r)}catch{}n=r=null}t.length=0}}}}const vs=1048576;function _s(t={}){const{thresholdBytes:e=vs}=t;return function(){const t=[];let r,n,o,a=0,i=!1;const s=new WritableStream({async write(o){i?await r.write(o):(t.push(o),a+=o.length,a>e&&await async function(){const e=new TransformStream;n=Ie(e.readable),r=e.writable.getWriter(),i=!0;for(const e of t)await r.write(e);t.length=0}())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:s,readable:new ReadableStream({async pull(e){if(i){if(!o){const t=await n;o=t.stream().getReader()}const{value:t,done:r}=await o.read();r?e.close():e.enqueue(t)}else c<t.length?e.enqueue(t[c++]):e.close()},async cancel(t){o&&await o.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),t.length=0}}}}const Ls=1048576,Bs=".zip.js-temp",Ps="createSyncAccessHandle is only available in dedicated workers";function Ws(t={}){const{thresholdBytes:e=Ls,directoryName:r=Bs,getDirectory:n}=t;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new Error(Ps);const o=n||(()=>navigator.storage.getDirectory());let a;function i(){return a||(a=Promise.resolve(o()).then(t=>t.getDirectoryHandle(r,{create:!0}))),a}return function(){const t=[];let r,n,o=0,a=!1,s=0,c=0;const l=new WritableStream({async write(c){a?(n.write(c,{at:s}),s+=c.length):(t.push(c),o+=c.length,o>e&&await async function(){const e=await i();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join("");const o=await e.getFileHandle(r,{create:!0});n=await o.createSyncAccessHandle(),a=!0;for(const e of t)n.write(e,{at:s}),s+=e.length;t.length=0}())},close(){n&&n.flush()}});let u=0;return{writable:l,readable:new ReadableStream({pull(e){if(a){const t=s-c;if(t<=0)return void e.close();const r=new Uint8Array(Math.min(524288,t)),o=n.read(r,{at:c});o?(c+=o,e.enqueue(r.subarray(0,o))):e.close()}else u<t.length?e.enqueue(t[u++]):e.close()}},{highWaterMark:0}),dispose:async function(){if(n){try{n.close()}catch{}n=null}if(r){try{const t=await i();await t.removeEntry(r)}catch{}r=null}t.length=0}}}}try{bt({baseURI:import.meta.url})}catch{}const js="deflate",Vs="deflate-raw",Zs="deflate64-raw",Hs="gzip";let Gs,Ks,qs,Ys,Xs;function Js(t,e,r={}){if(!Gs){const t=new Error("WASM module not loaded");throw t.cause=Xs,t}const n="number"==typeof r.level?r.level:-1,o="number"==typeof r.outBuffer?r.outBuffer:65536,a="number"==typeof r.inBufferSize?r.inBufferSize:65536;return new TransformStream({start(){try{let r;if(this.lr=Ks(o),this.in=Ks(a),this.inBufferSize=a,!this.lr||!this.in)throw new Error("allocation failed");if(this.ur=new Uint8Array(o),t?(this.wr=Gs.deflate_process,this.dr=Gs.deflate_last_consumed,this.pr=Gs.deflate_end,this.mr=Gs.deflate_new(),r=e===Hs?Gs.deflate_init_gzip(this.mr,n):e===Vs?Gs.deflate_init_raw(this.mr,n):Gs.deflate_init(this.mr,n)):e===Zs?(this.wr=Gs.inflate9_process,this.dr=Gs.inflate9_last_consumed,this.pr=Gs.inflate9_end,this.mr=Gs.inflate9_new(),r=Gs.inflate9_init_raw(this.mr)):(this.wr=Gs.inflate_process,this.dr=Gs.inflate_last_consumed,this.pr=Gs.inflate_end,this.mr=Gs.inflate_new(),r=e===Vs?Gs.inflate_init_raw(this.mr):e===Hs?Gs.inflate_init_gzip(this.mr):Gs.inflate_init(this.mr)),0!==r)throw new Error("init failed:"+r)}catch(t){throw i(this),t}},transform(t,e){try{const r=t,n=new Uint8Array(Ys.buffer),a=this.wr,i=this.dr,s=this.lr,c=this.ur;let l=0;for(;l<r.length;){const t=Math.min(r.length-l,32768);if((!this.in||this.inBufferSize<t)&&(this.in&&qs&&(qs(this.in),this.in=0),this.in=Ks(t),this.inBufferSize=t,!this.in))throw new Error("allocation failed");n.set(r.subarray(l,l+t),this.in);const u=a(this.mr,this.in,t,s,o,0),f=u>>24&255,w=128&f?f-256:f;if(w<0)throw new Error("process error:"+w);const d=16777215&u;d&&(c.set(n.subarray(s,s+d),0),e.enqueue(c.slice(0,d)));const p=i(this.mr);if(0===p&&0===d)break;l+=p}}catch(t){i(this),e.error(t)}},flush(t){try{const e=new Uint8Array(Ys.buffer),r=this.wr,n=this.lr,a=this.ur;for(;;){const i=r(this.mr,0,0,n,o,4),s=i>>24&255,c=128&s?s-256:s;if(c<0)throw new Error("process error:"+c);const l=16777215&i;if(l&&(a.set(e.subarray(n,n+l),0),t.enqueue(a.slice(0,l))),1===s||0===l)break}}catch(e){t.error(e)}finally{const e=i(this);0!==e&&t.error(new Error("end error:"+e))}},cancel(){i(this)}});function i(t){let e=0;return t.mr&&t.pr&&(e=t.pr(t.mr)),t.mr=0,t.in&&qs&&qs(t.in),t.in=0,t.lr&&qs&&qs(t.lr),t.lr=0,e}}class Qs{constructor(t=js,e){return Js(!0,t,e)}}class $s{constructor(t=js,e){return Js(!1,t,e)}}Qs.gt=!0,$s.gt=!0,Qs.cr=[js,Vs,Hs],$s.cr=[js,Vs,Hs,Zs];let tc,ec=!1;function rc(){tc=null,async function(){await Promise.allSettled(_r.map(t=>(Kr(t),t.terminate()))),pr=z,mr=!1}(),ec=!1,Gs=Ks=qs=Ys=Xs=null}!function({yr:t}){yr=t}({yr:t=>{if(!tc){let{wasmURI:e}=t;typeof e==T&&(e=e()),tc=async function(t,{baseURI:e}){if(!ec)try{await async function(t,e){let r,n;try{try{n=new URL(t,e)}catch{}const o=await fetch(n);r=await o.arrayBuffer()}catch(e){if(!t.startsWith("data:application/wasm;base64,"))throw e;r=function(t){const e=t.split(",")[1],r=atob(e),n=r.length,o=new Uint8Array(n);for(let t=0;t<n;++t)o[t]=r.charCodeAt(t);return o.buffer}(t)}!function(t){if(Gs=t,({malloc:Ks,free:qs,memory:Ys}=Gs),"function"!=typeof Ks||"function"!=typeof qs||!Ys)throw Gs=Ks=qs=Ys=null,new Error("Invalid WASM module")}((await WebAssembly.instantiate(r)).instance.exports)}(t,e),ec=!0}catch(t){throw function(t){Xs=t}(t),t}}(e,t).catch(t=>{throw tc=null,t})}return tc}}),bt({CompressionStreamFallback:Qs,DecompressionStreamFallback:$s}),bt({workerURI:new URL("./zip-web-worker.js",import.meta.url).href,wasmURI:new URL("./zip-module.wasm",import.meta.url).href});export{yn as BlobReader,En as BlobWriter,dn as Data64URIReader,pn as Data64URIWriter,Zo as ERR_AMBIGUOUS_ARCHIVE,Co as ERR_BAD_FORMAT,vo as ERR_CENTRAL_DIRECTORY_NOT_FOUND,ri as ERR_DUPLICATED_NAME,Bo as ERR_ENCRYPTED,Ho as ERR_ENCRYPTED_CENTRAL_DIRECTORY,Vo as ERR_ENTRY_DATA_OUT_OF_BOUNDS,Mo as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,No as ERR_EOCDR_NOT_FOUND,Lo as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,Qr as ERR_HTTP_RANGE,$r as ERR_HTTP_RESOURCE_CHANGED,jt as ERR_INVALID_AUTHENTICATION_CODE,ke as ERR_INVALID_CODEC_DEFINITION,Ce as ERR_INVALID_CODEC_MODULE,ni as ERR_INVALID_COMMENT,oi as ERR_INVALID_COMMENT_TYPE,He as ERR_INVALID_COMPRESSED_DATA,Ge as ERR_INVALID_CRC32,si as ERR_INVALID_DATE,ui as ERR_INVALID_ENCRYPTION_STRENGTH,ai as ERR_INVALID_ENTRY_COMMENT,ii as ERR_INVALID_ENTRY_COMMENT_TYPE,ci as ERR_INVALID_ENTRY_NAME,pi as ERR_INVALID_EXTRAFIELD,yi as ERR_INVALID_EXTRAFIELD_DATA,hi as ERR_INVALID_EXTRAFIELD_DATA_TYPE,mi as ERR_INVALID_EXTRAFIELD_TYPE,qo as ERR_INVALID_FILENAME_VALIDATION,q as ERR_INVALID_FUNCTION_OPTION,Ui as ERR_INVALID_GID,vi as ERR_INVALID_LEVEL,Yo as ERR_INVALID_MAX_APPENDED_DATA_SIZE,ot as ERR_INVALID_MAX_WORKERS,Ni as ERR_INVALID_MSDOS_ATTRIBUTES,Mi as ERR_INVALID_MSDOS_DATA,Wt as ERR_INVALID_PASSWORD,X as ERR_INVALID_PASSWORD_TYPE,Fi as ERR_INVALID_READER,Y as ERR_INVALID_SIGNAL,_i as ERR_INVALID_SIGNATURE_DATA,Ko as ERR_INVALID_STRICTNESS,Ii as ERR_INVALID_UID,Ze as ERR_INVALID_UNCOMPRESSED_SIZE,Oi as ERR_INVALID_UNIX_EXTRA_FIELD_TYPE,Ci as ERR_INVALID_UNIX_ID_SIZE,ki as ERR_INVALID_UNIX_MODE,li as ERR_INVALID_VERSION,tn as ERR_ITERATOR_COMPLETED_TOO_SOON,_o as ERR_LOCAL_FILE_HEADER_NOT_FOUND,jo as ERR_OVERLAPPING_ENTRY,Oe as ERR_RESERVED_COMPRESSION_METHOD,Wo as ERR_SPLIT_ZIP_FILE,Di as ERR_UNDEFINED_COMPRESSION_METHOD,xi as ERR_UNDEFINED_READER,Ri as ERR_UNDEFINED_UNCOMPRESSED_SIZE,zi as ERR_UNDETERMINED_SIZE,Go as ERR_UNSAFE_FILENAME,Ne as ERR_UNSUPPORTED_COMPRESSION,Ps as ERR_UNSUPPORTED_CONTEXT,Zt as ERR_UNSUPPORTED_CRYPTO_API,Po as ERR_UNSUPPORTED_ENCRYPTION,di as ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH,fi as ERR_UNSUPPORTED_ENCRYPTION_USDZ,Ai as ERR_UNSUPPORTED_FORMAT,wi as ERR_UNSUPPORTED_SPLIT_USDZ,Xo as ERR_UNSUPPORTED_UINT64,dr as ERR_WORKER_STARTUP_TIMEOUT,en as ERR_WRITER_NOT_INITIALIZED,Ti as ERR_ZIP_NOT_EMPTY,Bn as HttpRangeReader,Ln as HttpReader,fn as Reader,jn as SplitDataReader,Vn as SplitDataWriter,bn as TextReader,Sn as TextWriter,Pn as Uint8ArrayReader,Wn as Uint8ArrayWriter,Os as VERSION,na as WARNING_APPENDED_DATA,$o as WARNING_COMPRESSED_PATCHED_DATA,sa as WARNING_DUPLICATE_FILENAME,ta as WARNING_MALFORMED_EXTRA_FIELD,la as WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG,ua as WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD,fa as WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES,ca as WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY,aa as WARNING_PREPENDED_CENTRAL_DIRECTORY,oa as WARNING_PREPENDED_DATA,ia as WARNING_TRAILING_CENTRAL_DIRECTORY_DATA,Qo as WARNING_UNKNOWN_VERSION,ea as WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA,Jo as WARNING_UNSORTED_CENTRAL_DIRECTORY,ra as WARNING_WRAPPED_ENTRIES_COUNT,wn as Writer,Ea as ZipReader,ba as ZipReaderStream,Vi as ZipWriter,Zi as ZipWriterStream,mt as configure,_s as createBlobTempStream,Ms as createOPFSTempStream,Ws as createSyncAccessHandleTempStream,Is as getMimeType,We as getRegisteredCodecs,Us as getSupportedCompressionMethods,Sa as isZipFile,Le as registerCodec,St as resetConfiguration,rc as terminateWorkers,Be as unregisterCodec};
|
package/dist/zip-core.js
CHANGED
|
@@ -217,6 +217,8 @@
|
|
|
217
217
|
const ERR_INVALID_FUNCTION_OPTION = "Invalid option (must be a function)";
|
|
218
218
|
const ERR_INVALID_SIGNAL = "Invalid signal (must be an AbortSignal instance)";
|
|
219
219
|
const ERR_INVALID_PASSWORD_TYPE = "Invalid password (password must be a string, rawPassword must be a Uint8Array)";
|
|
220
|
+
const ERR_ABORTED = "The operation was aborted";
|
|
221
|
+
const ABORT_ERROR_NAME = "AbortError";
|
|
220
222
|
|
|
221
223
|
function checkFunctionOption(value) {
|
|
222
224
|
if (value && typeof value != FUNCTION_TYPE) {
|
|
@@ -232,6 +234,12 @@
|
|
|
232
234
|
return signal || UNDEFINED_VALUE;
|
|
233
235
|
}
|
|
234
236
|
|
|
237
|
+
function throwIfAborted(signal) {
|
|
238
|
+
if (signal && signal.aborted) {
|
|
239
|
+
throw signal.reason === UNDEFINED_VALUE ? new DOMException(ERR_ABORTED, ABORT_ERROR_NAME) : signal.reason;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
|
|
235
243
|
function checkPasswordOption(password, rawPassword) {
|
|
236
244
|
if ((password && typeof password != STRING_TYPE) || (rawPassword && !(rawPassword instanceof Uint8Array))) {
|
|
237
245
|
throw new Error(ERR_INVALID_PASSWORD_TYPE);
|
|
@@ -3754,11 +3762,13 @@
|
|
|
3754
3762
|
const reader = this;
|
|
3755
3763
|
const { sourceBlob, size } = reader;
|
|
3756
3764
|
const { offset = 0, size: readSize = size - offset } = options || {};
|
|
3757
|
-
if (
|
|
3758
|
-
|
|
3759
|
-
|
|
3760
|
-
|
|
3761
|
-
|
|
3765
|
+
if (typeof sourceBlob.stream == FUNCTION_TYPE) {
|
|
3766
|
+
if (!offset && readSize >= size) {
|
|
3767
|
+
return toCompatibleReadable(sourceBlob.stream());
|
|
3768
|
+
}
|
|
3769
|
+
if (blobSliceReliable) {
|
|
3770
|
+
return toCompatibleReadable(sourceBlob.slice(offset, offset + readSize).stream());
|
|
3771
|
+
}
|
|
3762
3772
|
}
|
|
3763
3773
|
return super.createReadable(options);
|
|
3764
3774
|
}
|
|
@@ -5174,27 +5184,28 @@
|
|
|
5174
5184
|
const { done, value } = await gen.next();
|
|
5175
5185
|
if (done)
|
|
5176
5186
|
return controller.close();
|
|
5177
|
-
const
|
|
5178
|
-
|
|
5179
|
-
|
|
5180
|
-
|
|
5181
|
-
|
|
5182
|
-
|
|
5183
|
-
return readable;
|
|
5184
|
-
}
|
|
5187
|
+
const entryReadable = (function () {
|
|
5188
|
+
const { readable, writable } = new TransformStream();
|
|
5189
|
+
if (value.getData) {
|
|
5190
|
+
getData();
|
|
5191
|
+
return readable;
|
|
5192
|
+
}
|
|
5185
5193
|
|
|
5186
|
-
|
|
5194
|
+
async function getData() {
|
|
5195
|
+
try {
|
|
5196
|
+
await value.getData(writable);
|
|
5197
|
+
} catch (error) {
|
|
5187
5198
|
try {
|
|
5188
|
-
await
|
|
5189
|
-
} catch
|
|
5190
|
-
|
|
5191
|
-
await writable.abort(error);
|
|
5192
|
-
} catch {
|
|
5193
|
-
// ignored
|
|
5194
|
-
}
|
|
5199
|
+
await writable.abort(error);
|
|
5200
|
+
} catch {
|
|
5201
|
+
// ignored
|
|
5195
5202
|
}
|
|
5196
5203
|
}
|
|
5197
|
-
}
|
|
5204
|
+
}
|
|
5205
|
+
})();
|
|
5206
|
+
const chunk = {
|
|
5207
|
+
...value,
|
|
5208
|
+
readable: entryReadable
|
|
5198
5209
|
};
|
|
5199
5210
|
delete chunk.getData;
|
|
5200
5211
|
controller.enqueue(chunk);
|
|
@@ -5340,6 +5351,7 @@
|
|
|
5340
5351
|
const size = compressedSize;
|
|
5341
5352
|
const readable = toCompatibleReadable(reader.createReadable({ offset: dataOffset, size }));
|
|
5342
5353
|
const signal = checkSignalOption(getOptionValue$1(zipEntry, options, OPTION_SIGNAL));
|
|
5354
|
+
throwIfAborted(signal);
|
|
5343
5355
|
const checkPasswordOnly = getOptionValue$1(zipEntry, options, OPTION_CHECK_PASSWORD_ONLY);
|
|
5344
5356
|
let checkOverlappingEntry = getOptionValue$1(zipEntry, options, OPTION_CHECK_OVERLAPPING_ENTRY);
|
|
5345
5357
|
const checkOverlappingEntryOnly = getOptionValue$1(zipEntry, options, OPTION_CHECK_OVERLAPPING_ENTRY_ONLY);
|
|
@@ -6870,6 +6882,7 @@
|
|
|
6870
6882
|
const createTempStream = getFunctionOptionValue(zipWriter, options, OPTION_CREATE_TEMP_STREAM);
|
|
6871
6883
|
const dataDescriptorSignature = getOptionValue(zipWriter, options, OPTION_DATA_DESCRIPTOR_SIGNATURE, true);
|
|
6872
6884
|
const signal = checkSignalOption(getOptionValue(zipWriter, options, OPTION_SIGNAL));
|
|
6885
|
+
throwIfAborted(signal);
|
|
6873
6886
|
const useUnicodeFileNames = getOptionValue(zipWriter, options, OPTION_USE_UNICODE_FILE_NAMES, true);
|
|
6874
6887
|
const compressionMethod = getOptionValue(zipWriter, options, PROPERTY_NAME_COMPRESSION_METHOD);
|
|
6875
6888
|
const registeredCodec = passThrough || compressionMethod === UNDEFINED_VALUE ? UNDEFINED_VALUE : getRegisteredCodec(compressionMethod);
|
|
@@ -8537,7 +8550,7 @@
|
|
|
8537
8550
|
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
8538
8551
|
*/
|
|
8539
8552
|
|
|
8540
|
-
const VERSION = "2.11.
|
|
8553
|
+
const VERSION = "2.11.4";
|
|
8541
8554
|
|
|
8542
8555
|
/*
|
|
8543
8556
|
Copyright (c) 2025 Gildas Lormeau. All rights reserved.
|