@ddunigma/node
Version:
1 lines • 3.47 kB
JavaScript
;var chunkA3OZJS5G_cjs=require('./chunk-A3OZJS5G.cjs'),chunkZTGECGM2_cjs=require('./chunk-ZTGECGM2.cjs'),chunkBCUBYE76_cjs=require('./chunk-BCUBYE76.cjs');var I=64*1024*1024,O=64*1024*1024;function _(r,e){chunkA3OZJS5G_cjs.h(e,"stream");let n=r.getCharSetInfo(),u=e?.compress??n.defaultCompress,l=n.hasEncryptionKey,S=e?.checksum??n.defaultChecksum,A=u?e?.compressionAlgorithm??n.defaultCompressionAlgorithm:void 0,t=n.paddingChar,p=chunkA3OZJS5G_cjs.c(e?.maxBufferedBytes,I,true,"maxBufferedBytes"),f=T(n,{compressed:u,encrypted:l,checksum:S}),m=false,d=[],i=0,a=null;return new TransformStream({async transform(s,o){if(f){if(!m){let k=chunkA3OZJS5G_cjs.e(t,{compressionAlgorithm:void 0,encrypted:false});o.enqueue(k),m=true;}let c;a&&a.length>0?(c=new Uint8Array(a.length+s.length),c.set(a,0),c.set(s,a.length)):c=s;let C=n.bitLength,g=q(C,8)/8,h=Math.floor(c.length/g)*g;if(h>0){let k=c.subarray(0,h),x=await r.encodeAsync(k,{compress:false,encrypt:false,checksum:false,chunkSize:0,chunkSeparator:void 0,omitFooter:true});o.enqueue(x);}h<c.length?a=c.slice(h):a=null;}else {if(i+s.length>p){o.error(new chunkZTGECGM2_cjs.l(`[WebStreams encode] Buffered input exceeds limit. Limit: ${p} bytes`,"stream"));return}d.push(s),i+=s.length;}},async flush(s){try{if(f){if(!m){let o=chunkA3OZJS5G_cjs.e(t,{compressionAlgorithm:void 0,encrypted:!1});s.enqueue(o);}if(a&&a.length>0){let o=await r.encodeAsync(a,{compress:!1,encrypt:!1,checksum:!1,chunkSize:0,chunkSeparator:void 0});s.enqueue(o);}a=null;}else {let o=chunkA3OZJS5G_cjs.e(t,{compressionAlgorithm:A,encrypted:l});s.enqueue(o);let c=new Uint8Array(i),C=0;for(let h of d)c.set(h,C),C+=h.length;let g=await r.encodeAsync(c,{...e,compress:u,encrypt:l,checksum:S,chunkSize:0,chunkSeparator:void 0});g.length>0&&s.enqueue(g),d=[],i=0;}}catch(o){s.error(chunkZTGECGM2_cjs.r(o,"stream"));}}})}chunkBCUBYE76_cjs.a(_,"createReadableEncodeStream");function z(r,e){chunkA3OZJS5G_cjs.h(e,"stream");let n=r.getCharSetInfo(),u=n.paddingChar,l=chunkA3OZJS5G_cjs.d(u),S=e?.checksum??n.defaultChecksum,A=chunkA3OZJS5G_cjs.c(e?.maxBufferedChars,O,true,"maxBufferedChars"),t="",p=false,f=null;return new TransformStream({async transform(m,d){try{if(t+=m,t.length>A)throw new chunkZTGECGM2_cjs.l(`[WebStreams decode] Buffered encoded input exceeds limit. Limit: ${A} characters`,"stream");if(!p&&t.length>=l){if(!t.startsWith(u))throw new Error("[WebStreams decode] Invalid or missing stream header");if(f=chunkA3OZJS5G_cjs.f(t,u),f===null)throw new Error("[WebStreams decode] Invalid or missing stream header");if(f.encrypted&&!n.hasEncryptionKey)throw new Error("[WebStreams decode] Encrypted stream requires an encryptionKey");p=!0,t=t.slice(l);}}catch(i){d.error(chunkZTGECGM2_cjs.r(i,"stream"));}},async flush(m){try{if(!p){if(t.length===0)return;throw new Error("[WebStreams decode] Incomplete stream header")}let d=f.compressionAlgorithm,i=await r.decodeToUint8ArrayAsync(t,{...e,compress:e?.compress,compressionAlgorithm:d,checksum:S,chunkSize:void 0,chunkSeparator:void 0});i.length>0&&m.enqueue(i),t="";}catch(d){m.error(chunkZTGECGM2_cjs.r(d,"stream"));}}})}chunkBCUBYE76_cjs.a(z,"createReadableDecodeStream");function T(r,e){return r.usePowerOfTwo&&!e.compressed&&!e.encrypted&&!e.checksum}chunkBCUBYE76_cjs.a(T,"canUseChunkStreaming");function q(r,e){return r*e/F(r,e)}chunkBCUBYE76_cjs.a(q,"lcm");function F(r,e){for(;e!==0;){let n=e;e=r%e,r=n;}return r}chunkBCUBYE76_cjs.a(F,"gcd");exports.a=_;exports.b=z;