Files
client/www/js/vendor/client-zip.esm.js
T

8 lines
6.5 KiB
JavaScript

/**
* Bundled by jsDelivr using Rollup v2.79.2 and Terser v5.39.0.
* Original file: /npm/client-zip@2.4.5/index.js
*
* Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
*/
"stream"in Blob.prototype||Object.defineProperty(Blob.prototype,"stream",{value(){return new Response(this).body}}),"setBigUint64"in DataView.prototype||Object.defineProperty(DataView.prototype,"setBigUint64",{value(t,e,n){const i=Number(0xffffffffn&e),r=Number(e>>32n);this.setUint32(t+(n?0:4),i,n),this.setUint32(t+(n?4:0),r,n)}});var t=t=>new DataView(new ArrayBuffer(t)),e=t=>new Uint8Array(t.buffer||t),n=t=>(new TextEncoder).encode(String(t)),i=t=>Math.min(4294967295,Number(t)),r=t=>Math.min(65535,Number(t));function o(t,i){if(void 0===i||i instanceof Date||(i=new Date(i)),t instanceof File)return{isFile:1,t:i||new Date(t.lastModified),i:t.stream()};if(t instanceof Response)return{isFile:1,t:i||new Date(t.headers.get("Last-Modified")||Date.now()),i:t.body};if(void 0===i)i=new Date;else if(isNaN(i))throw new Error("Invalid modification date.");if(void 0===t)return{isFile:0,t:i};if("string"==typeof t)return{isFile:1,t:i,i:n(t)};if(t instanceof Blob)return{isFile:1,t:i,i:t.stream()};if(t instanceof Uint8Array||t instanceof ReadableStream)return{isFile:1,t:i,i:t};if(t instanceof ArrayBuffer||ArrayBuffer.isView(t))return{isFile:1,t:i,i:e(t)};if(Symbol.asyncIterator in t)return{isFile:1,t:i,i:s(t[Symbol.asyncIterator]())};throw new TypeError("Unsupported input format.")}function s(t,e=t){return new ReadableStream({async pull(e){let n=0;for(;e.desiredSize>n;){const i=await t.next();if(!i.value){e.close();break}{const t=f(i.value);e.enqueue(t),n+=t.byteLength}}},cancel(t){e.throw?.(t)}})}function f(t){return"string"==typeof t?n(t):t instanceof Uint8Array?t:e(t)}function a(t,i,r){let[o,s]=function(t){return t?t instanceof Uint8Array?[t,1]:ArrayBuffer.isView(t)||t instanceof ArrayBuffer?[e(t),1]:[n(t),0]:[void 0,0]}(i);if(t instanceof File)return{o:l(o||n(t.name)),u:BigInt(t.size),l:s};if(t instanceof Response){const e=t.headers.get("content-disposition"),i=e&&e.match(/;\s*filename\*?=["']?(.*?)["']?$/i),f=i&&i[1]||t.url&&new URL(t.url).pathname.split("/").findLast(Boolean),a=f&&decodeURIComponent(f),u=r||+t.headers.get("content-length");return{o:l(o||n(a)),u:BigInt(u),l:s}}return o=l(o,void 0!==t||void 0!==r),"string"==typeof t?{o:o,u:BigInt(n(t).length),l:s}:t instanceof Blob?{o:o,u:BigInt(t.size),l:s}:t instanceof ArrayBuffer||ArrayBuffer.isView(t)?{o:o,u:BigInt(t.byteLength),l:s}:{o:o,u:u(t,r),l:s}}function u(t,e){return e>-1?BigInt(e):t?void 0:0n}function l(t,e=1){if(!t||t.every((t=>47===t)))throw new Error("The file must have a name.");if(e)for(;47===t[t.length-1];)t=t.subarray(0,-1);else 47!==t[t.length-1]&&(t=new Uint8Array([...t,47]));return t}var c=new Uint32Array(256);for(let t=0;t<256;++t){let e=t;for(let t=0;t<8;++t)e=e>>>1^(1&e&&3988292384);c[t]=e}function g(t,e=0){e^=-1;for(var n=0,i=t.length;n<i;n++)e=e>>>8^c[255&e^t[n]];return~e>>>0}function d(t,e,n=0){const i=t.getSeconds()>>1|t.getMinutes()<<5|t.getHours()<<11,r=t.getDate()|t.getMonth()+1<<5|t.getFullYear()-1980<<9;e.setUint16(n,i,1),e.setUint16(n+2,r,1)}function y({o:t,l:e},n){return 8*(!e||(n??function(t){try{U.decode(t)}catch{return 0}return 1}(t)))}var U=new TextDecoder("utf8",{fatal:1});function h(n,i=0){const r=t(30);return r.setUint32(0,1347093252),r.setUint32(4,754976768|i),d(n.t,r,10),r.setUint16(26,n.o.length,1),e(r)}async function*p(t){let{i:e}=t;if("then"in e&&(e=await e),e instanceof Uint8Array)yield e,t.m=g(e,0),t.u=BigInt(e.length);else{t.u=0n;const n=e.getReader();for(;;){const{value:e,done:i}=await n.read();if(i)break;t.m=g(e,t.m),t.u+=BigInt(e.length),yield e}}}function w(n,r){const o=t(16+(r?8:0));return o.setUint32(0,1347094280),o.setUint32(4,n.isFile?n.m:0,1),r?(o.setBigUint64(8,n.u,1),o.setBigUint64(16,n.u,1)):(o.setUint32(8,i(n.u),1),o.setUint32(12,i(n.u),1)),e(o)}function m(n,r,o=0,s=0){const f=t(46);return f.setUint32(0,1347092738),f.setUint32(4,755182848),f.setUint16(8,2048|o),d(n.t,f,12),f.setUint32(16,n.isFile?n.m:0,1),f.setUint32(20,i(n.u),1),f.setUint32(24,i(n.u),1),f.setUint16(28,n.o.length,1),f.setUint16(30,s,1),f.setUint16(40,n.isFile?33204:16893,1),f.setUint32(42,i(r),1),e(f)}function B(n,i,r){const o=t(r);return o.setUint16(0,1,1),o.setUint16(2,r-4,1),16&r&&(o.setBigUint64(4,n.u,1),o.setBigUint64(12,n.u,1)),o.setBigUint64(r-8,i,1),e(o)}function b(t){return t instanceof File||t instanceof Response?[[t],[t]]:[[t.input,t.name,t.size],[t.input,t.lastModified]]}var v=t=>function(t){let e=BigInt(22),n=0n,i=0;for(const r of t){if(!r.o)throw new Error("Every file must have a non-empty name.");if(void 0===r.u)throw new Error(`Missing size for file "${(new TextDecoder).decode(r.o)}".`);const t=r.u>=0xffffffffn,o=n>=0xffffffffn;n+=BigInt(46+r.o.length+(t&&8))+r.u,e+=BigInt(r.o.length+46+(12*o|28*t)),i||(i=t)}return(i||n>=0xffffffffn)&&(e+=BigInt(76)),e+n}(function*(t){for(const e of t)yield a(...b(e)[0])}(t));function I(t,e={}){const n={"Content-Type":"application/zip","Content-Disposition":"attachment"};return("bigint"==typeof e.length||Number.isInteger(e.length))&&e.length>0&&(n["Content-Length"]=String(e.length)),e.metadata&&(n["Content-Length"]=String(v(e.metadata))),new Response(F(t,e),{headers:n})}function F(n,f={}){const u=function(t){const e=t[Symbol.iterator in t?Symbol.iterator:Symbol.asyncIterator]();return{async next(){const t=await e.next();if(t.done)return t;const[n,i]=b(t.value);return{done:0,value:Object.assign(o(...i),a(...n))}},throw:e.throw?.bind(e),[Symbol.asyncIterator](){return this}}}(n);return s(async function*(n,o){const s=[];let f=0n,a=0n,u=0;for await(const t of n){const e=y(t,o.buffersAreUTF8);yield h(t,e),yield new Uint8Array(t.o),t.isFile&&(yield*p(t));const n=t.u>=0xffffffffn,i=12*(f>=0xffffffffn)|28*n;yield w(t,n),s.push(m(t,f,e,i)),s.push(t.o),i&&s.push(B(t,f,i)),n&&(f+=8n),a++,f+=BigInt(46+t.o.length)+t.u,u||(u=n)}let l=0n;for(const t of s)yield t,l+=BigInt(t.length);if(u||f>=0xffffffffn){const n=t(76);n.setUint32(0,1347094022),n.setBigUint64(4,BigInt(44),1),n.setUint32(12,755182848),n.setBigUint64(24,a,1),n.setBigUint64(32,a,1),n.setBigUint64(40,l,1),n.setBigUint64(48,f,1),n.setUint32(56,1347094023),n.setBigUint64(64,f+l,1),n.setUint32(72,1,1),yield e(n)}const c=t(22);c.setUint32(0,1347093766),c.setUint16(8,r(a),1),c.setUint16(10,r(a),1),c.setUint32(12,i(l),1),c.setUint32(16,i(f),1),yield e(c)}(u,f),u)}export{I as downloadZip,F as makeZip,v as predictLength};export default null;
//# sourceMappingURL=/sm/15af8734bcc404e54a50636fb40064419f06090c407a8ee9f9c9be78647a66b6.map