@cj-tech-master/excelts 6.1.2 → 6.1.3
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/dist/browser/modules/excel/stream/workbook-writer.browser.js +1 -1
- package/dist/cjs/modules/excel/stream/workbook-writer.browser.js +1 -1
- package/dist/esm/modules/excel/stream/workbook-writer.browser.js +1 -1
- package/dist/iife/excelts.iife.js +2 -2
- package/dist/iife/excelts.iife.js.map +1 -1
- package/dist/iife/excelts.iife.min.js +2 -2
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* @cj-tech-master/excelts v6.1.
|
|
2
|
+
* @cj-tech-master/excelts v6.1.3
|
|
3
3
|
* TypeScript Excel Workbook Manager - Read and Write xlsx and csv Files.
|
|
4
4
|
* (c) 2026 cjnoname
|
|
5
5
|
* Released under the MIT License
|
|
@@ -317,7 +317,7 @@ self.onmessage = async function(event) {
|
|
|
317
317
|
};
|
|
318
318
|
`}let bl=null,xl=0;function Sl(){if(bl===null){let e=yl(),t=new Blob([e],{type:`text/javascript`});bl=URL.createObjectURL(t)}return xl++,bl}function Cl(){if(bl!==null&&--xl<=0){try{URL.revokeObjectURL(bl)}catch{}bl=null,xl=0}}let wl=new Uint8Array,Tl={onData:e=>{},onEnd:()=>{},onError:e=>{}};function El(e){return e.byteOffset===0&&e.byteLength===e.buffer.byteLength}function Dl(e){return El(e)?e:e.slice()}var Ol=class{_taskQueueSize(){return this._taskQueue.length-this._taskQueueHead}_compactTaskQueueIfNeeded(){this._taskQueueHead>32&&this._taskQueueHead*2>=this._taskQueue.length&&(this._taskQueue.splice(0,this._taskQueueHead),this._taskQueueHead=0)}_dequeueTask(){if(this._taskQueueHead>=this._taskQueue.length)return;let e=this._taskQueue[this._taskQueueHead++];return this._compactTaskQueueIfNeeded(),e}_compactPendingStreamRequestsIfNeeded(){this._pendingStreamRequestHead>32&&this._pendingStreamRequestHead*2>=this._pendingStreamRequests.length&&(this._pendingStreamRequests.splice(0,this._pendingStreamRequestHead),this._pendingStreamRequestHead=0)}_dequeuePendingStreamRequest(){if(this._pendingStreamRequestHead>=this._pendingStreamRequests.length)return;let e=this._pendingStreamRequests[this._pendingStreamRequestHead++];return this._compactPendingStreamRequestsIfNeeded(),e}_waitForStreamSlot(e){return e.slotWaitPromise||=new Promise(t=>{e.resolveSlotWait=()=>{e.slotWaitPromise=null,e.resolveSlotWait=null,t()}}),e.slotWaitPromise}_waitForStreamDrain(e){return e.drainWaitPromise||=new Promise(t=>{e.resolveDrainWait=()=>{e.drainWaitPromise=null,e.resolveDrainWait=null,t()}}),e.drainWaitPromise}_resolveSlotWaiter(e){e.resolveSlotWait?.()}_resolveDrainWaiter(e){e.resolveDrainWait?.()}constructor(e){this._workers=new Map,this._taskQueue=[],this._taskQueueHead=0,this._pendingTasks=new Map,this._nextTaskId=1,this._nextWorkerId=1,this._terminated=!1,this._completedTasks=0,this._failedTasks=0,this._pendingStreamRequests=[],this._pendingStreamRequestHead=0,this._options=hl(e),this._options.workerUrl?(this._workerUrl=this._options.workerUrl,this._useCustomUrl=!0):(this._workerUrl=Sl(),this._useCustomUrl=!1);for(let e=0;e<this._options.minWorkers;e++)this._createWorker()}async execute(e,t,n){if(this._terminated)throw Error(`Worker pool has been terminated`);if(!vl())throw Error(`Web Workers are not supported in this environment`);if(n?.signal?.aborted)throw r();let i=this._nextTaskId++,a=n?.priority??`normal`,o=_l(a);return new Promise((r,s)=>{let c={taskId:i,taskType:e,data:t,level:n?.level,priority:a,priorityValue:o,resolve:r,reject:s,signal:n?.signal,allowTransfer:n?.allowTransfer,startTime:performance.now()};n?.signal&&(c.abortHandler=()=>{this._cancelTask(i)},n.signal.addEventListener(`abort`,c.abortHandler,{once:!0})),this._pendingTasks.set(i,c),this._enqueueTask(c),this._processQueue()})}getStats(){let e=this._workers.size,t=0;for(let e of this._workers.values())e.busy&&t++;return{totalWorkers:e,activeWorkers:t,idleWorkers:e-t,pendingTasks:this._taskQueueSize(),completedTasks:this._completedTasks,failedTasks:this._failedTasks}}terminate(){if(this._terminated)return;this._terminated=!0;for(let e of this._workers.values())this._terminateWorker(e);this._workers.clear();let e=Error(`Worker pool terminated`);for(let t of this._pendingTasks.values())this._cleanupTask(t),t.reject(e);this._pendingTasks.clear(),this._taskQueue.length=0,this._taskQueueHead=0,this._pendingStreamRequests.length=0,this._pendingStreamRequestHead=0,this._useCustomUrl||Cl()}isTerminated(){return this._terminated}_createWorker(){if(this._terminated||this._workers.size>=this._options.maxWorkers)return null;let e=this._nextWorkerId++,t=new Worker(this._workerUrl),n={id:e,worker:t,busy:!1,currentTaskId:null,idleTimer:null,streamSession:null};return t.onmessage=e=>{this._handleWorkerMessage(n,e.data)},t.onerror=e=>{this._handleWorkerError(n,e)},this._workers.set(e,n),n}_terminateWorker(e){this._clearIdleTimer(e);try{e.worker.postMessage({type:`terminate`})}catch{}try{e.worker.terminate()}catch{}this._workers.delete(e.id)}_clearIdleTimer(e){e.idleTimer!==null&&(clearTimeout(e.idleTimer),e.idleTimer=null)}_findIdleWorker(){for(let e of this._workers.values())if(!e.busy)return e}_enqueueTask(e){let t=this._taskQueue,n=e.priorityValue;this._compactTaskQueueIfNeeded();let r=this._taskQueueHead,i=t.length;for(;r<i;){let e=r+i>>>1;t[e].priorityValue>=n?r=e+1:i=e}t.splice(r,0,e)}_processQueue(){for(;!this._terminated&&this._taskQueueSize()>0;){let e=this._findIdleWorker()??this._createWorker()??void 0;if(!e)return;for(;;){let t=this._dequeueTask();if(!t)return;if(t.signal?.aborted){this._pendingTasks.delete(t.taskId),this._cleanupTask(t),t.reject(r());continue}this._assignTask(e,t);break}}}_assignTask(e,t){this._clearIdleTimer(e),e.busy=!0,e.currentTaskId=t.taskId;let n=this._options.useTransferables&&t.allowTransfer===!0,r=n?Dl(t.data):t.data,i={type:`task`,taskId:t.taskId,taskType:t.taskType,data:r,level:t.level};n?e.worker.postMessage(i,[r.buffer]):e.worker.postMessage(i)}_handleWorkerMessage(e,t){if(t.type!==`ready`){if(e.streamSession){let n=e.streamSession;switch(t.type){case`started`:if(t.taskId!==n.taskId)return;n.startReady=!0,n.resolveStart?.(),n.resolveStart=null,n.rejectStart=null;return;case`out`:if(t.taskId!==n.taskId)return;n.onData(t.data);return;case`ack`:if(t.taskId!==n.taskId)return;n.inflightChunkCount>0&&n.inflightChunkCount--,this._resolveSlotWaiter(n),n.inflightChunkCount===0&&n.resolveDrainWait&&this._resolveDrainWaiter(n);return;case`done`:if(t.taskId!==n.taskId)return;n.ended=!0,n.inflightChunkCount=0,n.startReady=!0,n.resolveStart?.(),n.resolveStart=null,n.rejectStart=null,this._resolveSlotWaiter(n),this._resolveDrainWaiter(n),this._completedTasks++,t.duration??performance.now()-n.startTime,n.onEnd(),e.streamSession=null,this._workerBecameIdle(e);return;case`error`:{if(t.taskId!==n.taskId)return;let r=Error(t.error??`Unknown worker error`);n.ended=!0,n.inflightChunkCount=0,n.startReady=!0,n.rejectStart?.(r),n.resolveStart=null,n.rejectStart=null,this._resolveSlotWaiter(n),this._resolveDrainWaiter(n),this._failedTasks++,n.onError(r),e.streamSession=null,this._workerBecameIdle(e);return}default:break}}switch(t.type){case`result`:case`error`:{let n=t.taskId;if(typeof n!=`number`)return;let r=this._pendingTasks.get(n);if(!r){this._workerBecameIdle(e);return}if(this._pendingTasks.delete(n),this._cleanupTask(r),t.type===`result`){this._completedTasks++;let e=t.duration??performance.now()-r.startTime;r.resolve({data:t.data,duration:e})}else this._failedTasks++,r.reject(Error(t.error??`Unknown worker error`));this._workerBecameIdle(e);return}default:return}}}_handleWorkerError(e,t){let n=e.currentTaskId;if(this._terminateWorker(e),n!==null){let e=this._pendingTasks.get(n);e&&(this._pendingTasks.delete(n),this._cleanupTask(e),this._failedTasks++,e.reject(Error(t.message||`Worker error`)))}this._processQueue()}_workerBecameIdle(e){if(e.busy=!1,e.currentTaskId=null,this._pendingStreamRequestHead<this._pendingStreamRequests.length){let t=this._dequeuePendingStreamRequest();if(t){t(e);return}}this._taskQueueSize()>0?this._processQueue():this._workers.size>this._options.minWorkers&&this._options.idleTimeout>0&&(e.idleTimer=setTimeout(()=>{!e.busy&&this._workers.size>this._options.minWorkers&&!this._terminated&&this._terminateWorker(e)},this._options.idleTimeout))}openStream(e,t=Tl){if(this._terminated)throw Error(`Worker pool has been terminated`);if(!vl())throw Error(`Web Workers are not supported in this environment`);let n=this._nextTaskId++,r=t.allowTransfer===!0,i=this._options.useTransferables&&r,a=i?Dl:e=>e,o=i?(e,t,n)=>{e.postMessage(t,[n.buffer])}:(e,t,n)=>{e.postMessage(t)},s=null,c=null,l=async()=>{if(s)return s;if(c)return c;c=(async()=>{let r=this._findIdleWorker()??this._createWorker()??void 0;return r?(s=r,this._bindStreamSession(s,n,e,t.level,t),this._startStreamSession(s),s):(s=await new Promise(e=>{this._pendingStreamRequests.push(e)}),this._bindStreamSession(s,n,e,t.level,t),this._startStreamSession(s),s)})();try{return await c}finally{c=null}};l();let u=(e,t,n)=>{let r=a(n),i=t.chunkMessage;i.data=r,o(e.worker,i,r)},d=(e,t,n)=>{if(t.inflightChunkCount>=8)return this._waitForStreamSlot(t).then(()=>{t.ended||(t.inflightChunkCount++,u(e,t,n))});t.inflightChunkCount++,u(e,t,n)};return{write:async e=>{if(e.byteLength===0)return;let t=s??await l(),n=t.streamSession;if(!n||n.ended)throw Error(`Streaming session is not active`);n.writeChain=n.writeChain.then(()=>{if(!n.ended)return n.startReady?d(t,n,e):n.startPromise.then(()=>{if(!n.ended)return d(t,n,e)})}),await n.writeChain},end:async()=>{let e=await l(),t=e.streamSession;!t||t.ended||(t.startReady||await t.startPromise,await t.writeChain,t.inflightChunkCount>0&&await this._waitForStreamDrain(t),t.ended=!0,e.worker.postMessage(t.endMessage))},abort:e=>{l().then(t=>{let n=t.streamSession;if(!n)return;let r=n.abortMessage;r.error=e,t.worker.postMessage(r)})}}}_bindStreamSession(e,t,n,r,i){this._clearIdleTimer(e),e.busy=!0,e.currentTaskId=t;let a=null,o=null,s=new Promise((e,t)=>{a=e,o=t}),c=setTimeout(()=>{o?.(Error(`Worker stream start timeout`))},5e3);s.finally(()=>clearTimeout(c)),e.streamSession={taskId:t,taskType:n,startTime:performance.now(),started:!1,startReady:!1,startPromise:s,resolveStart:a,rejectStart:o,level:r,writeChain:Promise.resolve(),inflightChunkCount:0,slotWaitPromise:null,resolveSlotWait:null,drainWaitPromise:null,resolveDrainWait:null,chunkMessage:{type:`chunk`,taskId:t,data:wl},startMessage:{type:`start`,taskId:t,taskType:n,level:r},endMessage:{type:`end`,taskId:t},abortMessage:{type:`abort`,taskId:t,error:void 0},ended:!1,onData:i.onData,onEnd:i.onEnd,onError:i.onError}}_startStreamSession(e){let t=e.streamSession;!t||t.started||(t.started=!0,e.worker.postMessage(t.startMessage))}_cancelTask(e){let t=this._pendingTasks.get(e);if(!t)return;this._pendingTasks.delete(e),this._cleanupTask(t);let n=-1;for(let t=this._taskQueueHead;t<this._taskQueue.length;t++)if(this._taskQueue[t].taskId===e){n=t;break}n>=0&&this._taskQueue.splice(n,1),t.reject(r())}_cleanupTask(e){e.abortHandler&&e.signal&&e.signal.removeEventListener(`abort`,e.abortHandler)}async executeBatch(e){let t=Array(e.length);for(let n=0;n<e.length;n++){let r=e[n];t[n]=this.execute(r.taskType,r.data,r.options)}return Promise.all(t)}};let kl=null;function Al(e){return(!kl||kl.isTerminated())&&(kl=new Ol(e)),kl}async function jl(e,t){return(await Al().execute(`inflate`,e,t)).data}let Ml=`ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■\xA0`;function Nl(e){let t=!1;for(let n=0;n<e.length;n++)if(e[n]>=128){t=!0;break}if(!t)return Vl(e);let n=Array(e.length);for(let t=0;t<e.length;t++){let r=e[t];r<128?n[t]=String.fromCharCode(r):n[t]=Ml[r-128]}return n.join(``)}function Pl(e){if(e.length===0)return G;let t=new Uint8Array(e.length),n=0;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r),a=i;if(i>=55296&&i<=56319&&r+1<e.length){let t=e.charCodeAt(r+1);t>=56320&&t<=57343&&(a=(i-55296<<10)+(t-56320)+65536,r++)}if(a<128){t[n++]=a;continue}if(a>65535){t[n++]=63;continue}let o=Fl.get(String.fromCharCode(a));t[n++]=o??63}return n===t.length?t:t.subarray(0,n)}let Fl=(()=>{let e=new Map;for(let t=0;t<128;t++)e.set(Ml[t],128+t);return e})(),Il={name:`utf-8`,encode:en,decode:tn,useUtf8Flag:!0,useUnicodeExtraFields:!1},Ll={name:`cp437`,encode:Pl,decode:Nl,useUtf8Flag:!1,useUnicodeExtraFields:!0},Rl=new WeakMap;function zl(e){if(!e||e===`utf-8`)return Il;if(e===`cp437`)return Ll;let t=e,n=Rl.get(t);if(n)return n;let r=t.useUtf8Flag??t.name===`utf-8`,i={...t,useUtf8Flag:r,useUnicodeExtraFields:t.useUnicodeExtraFields??!r};return Rl.set(t,i),i}function Bl(e,t){return e?t.encode(e):G}function Vl(e){let t=``,n=32768;for(let r=0;r<e.length;r+=n){let i=e.subarray(r,Math.min(r+n,e.length));t+=String.fromCharCode(...i)}return t}function Hl(e,t,n,r){return e.length===0?``:(t??0)&2048?tn(e):n&&n.version===1&&n.originalCrc32===Cc(e)?n.unicodeValue:r?r.decode(e):Nl(e)}function Ul(e,t,n,r){return Hl(e,t,n?.unicodePath,r)}function Wl(e,t,n,r){return Hl(e,t,n?.unicodeComment,r)}function Gl(e){return e.byteOffset===0&&e.byteLength===e.buffer.byteLength&&e.buffer.constructor===ArrayBuffer?e.buffer:e.slice().buffer}function Kl(e){let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e>>>0,!0),t}function ql(e,t){return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint32(t,!0)}var Jl=class{constructor(e,t=0){this.data=e,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.offset=t}get position(){return this.offset}set position(e){this.offset=e}get remaining(){return this.data.length-this.offset}readUint8(){let e=this.view.getUint8(this.offset);return this.offset+=1,e}readUint16(){let e=this.view.getUint16(this.offset,!0);return this.offset+=2,e}readUint32(){let e=this.view.getUint32(this.offset,!0);return this.offset+=4,e}readBigUint64(){let e=this.view.getBigUint64(this.offset,!0);return this.offset+=8,e}readBytes(e){let t=this.data.subarray(this.offset,this.offset+e);return this.offset+=e,t}readString(e,t=!0){let n=this.readBytes(e);return t?tn(n):Nl(n)}skip(e){this.offset+=e}slice(e,t){return this.data.subarray(e,t)}peekUint32(e){return this.view.getUint32(e,!0)}};function Yl(e,t){let n={},r=new DataView(e.buffer,e.byteOffset,e.byteLength),i=0;for(let[a,o]of t){if(e.length>=i+o)switch(o){case 1:n[a]=r.getUint8(i);break;case 2:n[a]=r.getUint16(i,!0);break;case 4:n[a]=r.getUint32(i,!0);break;case 8:{let e=r.getUint32(i,!0);n[a]=r.getUint32(i+4,!0)*4294967296+e;break}default:throw Error(`Unsupported UInt LE size!`)}else n[a]=null;i+=o}return n}function Xl(e,t){return Yl(e,t)}function Zl(e,t){let n=vl();if(t.useWorker===!0)return n;if(t.useWorker===!1)return!1;let r=t.autoWorkerThreshold??1048576;return n&&e.length>=r}function Ql(e,t){if(t?.aborted||i(e))throw r(t?.reason??e)}let $l={hasNative:tl,native:al,worker:jl,jsFallback:Fc};async function eu(e,t,n){let r=e.hasNative(),i=vl(),a=n.useWorker;if(a===!0&&i)try{return await e.worker(t,{level:n.level,signal:n.signal,allowTransfer:n.allowTransfer})}catch(e){Ql(e,n.signal)}return r?e.native(t):a!==!0&&Zl(t,n)?e.worker(t,{level:n.level,signal:n.signal,allowTransfer:n.allowTransfer}):e.jsFallback(t)}async function tu(e,t={}){return eu($l,e,t)}function nu(e){return Fc(e)}let ru=`write after end`;function iu(e,t,n){let r=a(t);n?n(r):e.emit(`error`,r)}var au=class extends W{constructor(...e){super(...e),this.ended=!1,this.destroyed=!1,this.writeChain=Promise.resolve(),this._backend=null}setBackend(e){this._backend=e}write(e,t){if(this.ended)return iu(this,Error(ru),t),!1;if(e.byteLength===0)return t&&queueMicrotask(t),!0;let n=this._backend;if(!n)throw Error(`Backend not initialized`);let r=this.writeChain.then(()=>n.write(e));return this.writeChain=r,r.then(()=>{this.destroyed||t?.()}).catch(e=>{this.destroyed||iu(this,e,t)}),!0}end(e){if(this.ended){e?.();return}this.ended=!0;let t=this._backend;if(!t)throw Error(`Backend not initialized`);this.writeChain.then(()=>t.close()).then(()=>e?.()).catch(t=>iu(this,t,e))}destroy(e){this.ended=!0,this.destroyed=!0,this._backend?.abort(e),e&&this.emit(`error`,e)}};function ou(e,t){let n=t?new CompressionStream(e):new DecompressionStream(e),r=n.writable.getWriter(),i=n.readable.getReader(),o=new au,s=null,c=(async()=>{try{for(;;){let{value:e,done:t}=await i.read();if(t)break;e&&o.emit(`data`,e)}o.emit(`end`)}catch(e){let t=a(e);s=t,o.emit(`error`,t)}})();return o.setBackend({write:e=>r.write(e),close:async()=>{if(await r.close(),await c,s)throw s},abort:e=>{i.cancel(e).catch(()=>{}),r.abort(e).catch(()=>{})}}),o}function su(e,t,n,r){let i=t??Al(),a=null,o=null,s=new Promise((e,t)=>{a=e,o=t}),c=new au,l=i.openStream(e,{level:n,allowTransfer:r,onData:e=>c.emit(`data`,e),onEnd:()=>{c.emit(`end`),a?.()},onError:e=>{c.emit(`error`,e),o?.(e)}});return c.setBackend({write:e=>l.write(e),close:async()=>{await l.end(),await s},abort:e=>{a?.(),l.abort(e?.message)}}),c}var cu=class extends W{constructor(e){super(),this.process=e,this.chunks=[],this.ended=!1}write(e,t){return this.ended?(iu(this,Error(ru),t),!1):e.byteLength===0?(t&&queueMicrotask(t),!0):(this.chunks.push(e),t&&queueMicrotask(t),!0)}end(e){if(this.ended){e?.();return}this.ended=!0;let t=this.chunks.length,n=t===0?G:t===1?this.chunks[0]:k(this.chunks);this.chunks.length=0;try{let t=this.process(n);this.emit(`data`,t),this.emit(`end`),e?.()}catch(t){iu(this,t,e)}}destroy(e){this.ended=!0,this.chunks.length=0,e&&this.emit(`error`,e)}};function lu(e,t){let n=e===`deflate`?t.level??6:void 0;return t.useWorker&&vl()?su(e,t.workerPool,n,t.allowTransfer):nl()?ou(`deflate-raw`,e===`deflate`):new cu(e===`deflate`?Bc:Fc)}function uu(e={}){return lu(`deflate`,e)}function du(e){let t={key0:305419896,key1:591751049,key2:878082192},n=typeof e==`string`?en(e):e;for(let e=0;e<n.length;e++)fu(t,n[e]);return t}function fu(e,t){e.key0=wc(e.key0,t),e.key1=e.key1+(e.key0&255)>>>0,e.key1=(Math.imul(e.key1,134775813)>>>0)+1>>>0,e.key2=wc(e.key2,e.key1>>>24&255)}function pu(e){let t=(e.key2|2)>>>0;return Math.imul(t,t^1)>>>8&255}function mu(e,t){let n=(t^pu(e))&255;return fu(e,n),n}function hu(e,t){let n=(t^pu(e))&255;return fu(e,t),n}function gu(e,t,n,r){if(t.length!==12)return!1;let i=new Uint8Array(12);for(let n=0;n<12;n++)i[n]=mu(e,t[n]);let a=i[11];return a===(n>>>24&255)||r!==void 0&&a===(r>>>8&255)}function _u(e,t,n){let r=new Uint8Array(12),i=n(11);for(let t=0;t<11;t++)r[t]=hu(e,i[t]);return r[11]=hu(e,t>>>24&255),r}function vu(e,t,n,r){if(e.length<12)return null;let i=du(t);if(!gu(i,e.subarray(0,12),n,r))return null;let a=e.length-12,o=new Uint8Array(a);for(let t=0;t<a;t++)o[t]=mu(i,e[12+t]);return o}let yu={128:8,192:12,256:16},bu={128:16,192:24,256:32},xu={128:1,192:2,256:3},Su={1:128,2:192,3:256};function Cu(){if(globalThis.crypto?.subtle!==void 0)return globalThis.crypto.subtle;throw Error(`Web Crypto API not available`)}function wu(e){if(globalThis.crypto?.getRandomValues!==void 0)return globalThis.crypto.getRandomValues(e),e;throw Error(`crypto.getRandomValues not available`)}function Tu(e){return wu(new Uint8Array(e))}async function Eu(e,t,n){let r=Cu(),i=typeof e==`string`?en(e):e,a=bu[n],o=a+32+2,s=await r.importKey(`raw`,Gl(i),`PBKDF2`,!1,[`deriveBits`]),c=await r.deriveBits({name:`PBKDF2`,salt:Gl(t),iterations:1e3,hash:`SHA-1`},s,o*8),l=new Uint8Array(c);return{encryptionKey:l.subarray(0,a),hmacKey:l.subarray(a,a+32),passwordVerify:l.subarray(a+32,a+34)}}async function Du(e,t){let n=Cu(),r=await n.importKey(`raw`,Gl(e),{name:`HMAC`,hash:`SHA-1`},!1,[`sign`]),i=await n.sign(`HMAC`,r,Gl(t));return new Uint8Array(i,0,10)}function Ou(e){let t=new Uint8Array(16);return new DataView(t.buffer).setUint32(0,e,!0),t}async function ku(e,t,n=!0){let r=Cu(),i=await r.importKey(`raw`,Gl(e),{name:`AES-CTR`},!1,[`encrypt`,`decrypt`]),a=Ou(1),o=await r.encrypt({name:`AES-CTR`,counter:Gl(a),length:128},i,Gl(t));return new Uint8Array(o)}function Au(e,t,n){let r=new Uint8Array(11),i=new DataView(r.buffer);return i.setUint16(0,39169,!0),i.setUint16(2,7,!0),i.setUint16(4,e,!0),i.setUint16(6,17729,!0),r[8]=xu[t],i.setUint16(9,n,!0),r}function ju(e,t){let n=yu[t],r=n+2+10;return e.length<r?null:{salt:e.subarray(0,n),storedVerify:e.subarray(n,n+2),ciphertext:e.subarray(n+2,e.length-10),storedHmac:e.subarray(e.length-10)}}function Mu(e,t){return e[0]===t[0]&&e[1]===t[1]}function Nu(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return n===0}async function Pu(e,t,n){let r=ju(e,n);if(!r)throw Error(`Encrypted data too short`);let{salt:i,storedVerify:a,ciphertext:o,storedHmac:s}=r,c=await Eu(t,i,n);if(!Mu(c.passwordVerify,a))throw Error(`Password verification failed`);if(!Nu(await Du(c.hmacKey,o),s))throw Error(`HMAC verification failed`);return ku(c.encryptionKey,o,!1)}async function Fu(e,t,n){let r=yu[n],i=Tu(r),a=await Eu(t,i,n),o=await ku(a.encryptionKey,e,!0),s=await Du(a.hmacKey,o),c=new Uint8Array(r+2+o.length+10),l=0;return c.set(i,l),l+=r,c.set(a.passwordVerify,l),l+=2,c.set(o,l),l+=o.length,c.set(s,l),c}let Iu={"aes-128":128,"aes-192":192,"aes-256":256};function Lu(e){return e in Iu}function Ru(e){return Iu[e]}function zu(e){return!Number.isFinite(e)||e<=0?0:e>=4294967295?4294967295:e>>>0}function Bu(e){return zu(Math.floor(e.getTime()/1e3))}function Vu(e){if(typeof BigInt!=`function`)throw Error(`NTFS timestamps require BigInt support`);return BigInt(e.getTime())*10000n+116444736000000000n}function Hu(e,t){let n=t?.atime!==void 0,r=t?.ctime!==void 0,i=1;n&&(i|=2),r&&(i|=4);let a=5+(n?4:0)+(r?4:0),o=new Uint8Array(4+a),s=new DataView(o.buffer);s.setUint16(0,21589,!0),s.setUint16(2,a,!0),o[4]=i,s.setUint32(5,Bu(e),!0);let c=9;return n&&(s.setUint32(c,Bu(t.atime),!0),c+=4),r&&s.setUint32(c,Bu(t.ctime),!0),o}function Uu(e,t){if(typeof BigInt!=`function`)throw Error(`NTFS timestamps require BigInt support`);let n=t?.atime??e,r=t?.ctime??e,i=t?.birthTime??e,a=new Uint8Array(44),o=new DataView(a.buffer);o.setUint16(0,10,!0),o.setUint16(2,40,!0),o.setUint32(4,0,!0),o.setUint16(8,1,!0),o.setUint16(10,32,!0);let s=12;return o.setBigUint64(s,Vu(e),!0),s+=8,o.setBigUint64(s,Vu(n),!0),s+=8,o.setBigUint64(s,Vu(r),!0),s+=8,o.setBigUint64(s,Vu(i),!0),a}function Wu(e){return[(e.getHours()&31)<<11|(e.getMinutes()&63)<<5|e.getSeconds()>>1&31,(e.getFullYear()-1980&127)<<9|(e.getMonth()+1&15)<<5|e.getDate()&31]}function Gu(e,t){let n=e&31,r=e>>5&15,i=(e>>9&127)+1980,a=t?(t&31)*2:0,o=t?t>>5&63:0,s=t?t>>11:0;return new Date(Date.UTC(i,r-1,n,s,o,a))}function Ku(e,t,n){return n===void 0?Gu(e,t):new Date(n*1e3)}function qu(e,t,n){if(t===`dos`)return new Uint8Array;let r=[Hu(e,n)];return t===`dos+utc+ntfs`&&r.push(Uu(e,n)),k(r)}function Ju(e){let[t,n]=Wu(e);return{dosTime:t,dosDate:n}}let Yu=67324752,Xu=33639248,Zu=101010256,Qu=134695760,$u=101075792,ed=117853008,td=2048,nd=61440,rd=40960,id=16384;function ad(e){return e>>16&65535}function od(e){return(e&nd)===rd}function sd(e){return(e&nd)===id}let cd=4294967295;function ld(e,t,n,r){let i=r.versionNeeded??20;return t.setUint32(n+0,Yu,!0),t.setUint16(n+4,i,!0),t.setUint16(n+6,r.flags,!0),t.setUint16(n+8,r.compressionMethod,!0),t.setUint16(n+10,r.dosTime,!0),t.setUint16(n+12,r.dosDate,!0),t.setUint32(n+14,r.crc32,!0),t.setUint32(n+18,r.compressedSize,!0),t.setUint32(n+22,r.uncompressedSize,!0),t.setUint16(n+26,r.fileName.length,!0),t.setUint16(n+28,r.extraField.length,!0),e.set(r.fileName,n+30),r.extraField.length>0&&e.set(r.extraField,n+30+r.fileName.length),30+r.fileName.length+r.extraField.length}function ud(e){let t=new Uint8Array(30+e.fileName.length+e.extraField.length);return ld(t,new DataView(t.buffer,t.byteOffset,t.byteLength),0,e),t}function dd(e,t,n,r){let i=r.versionMadeBy??20,a=r.versionNeeded??20,o=r.externalAttributes??0;return t.setUint32(n+0,Xu,!0),t.setUint16(n+4,i,!0),t.setUint16(n+6,a,!0),t.setUint16(n+8,r.flags,!0),t.setUint16(n+10,r.compressionMethod,!0),t.setUint16(n+12,r.dosTime,!0),t.setUint16(n+14,r.dosDate,!0),t.setUint32(n+16,r.crc32,!0),t.setUint32(n+20,r.compressedSize,!0),t.setUint32(n+24,r.uncompressedSize,!0),t.setUint16(n+28,r.fileName.length,!0),t.setUint16(n+30,r.extraField.length,!0),t.setUint16(n+32,r.comment.length,!0),t.setUint16(n+34,0,!0),t.setUint16(n+36,0,!0),t.setUint32(n+38,o,!0),t.setUint32(n+42,r.localHeaderOffset,!0),e.set(r.fileName,n+46),r.extraField.length>0&&e.set(r.extraField,n+46+r.fileName.length),r.comment.length>0&&e.set(r.comment,n+46+r.fileName.length+r.extraField.length),46+r.fileName.length+r.extraField.length+r.comment.length}function fd(e,t,n,r){return t.setUint32(n+0,Zu,!0),t.setUint16(n+4,0,!0),t.setUint16(n+6,0,!0),t.setUint16(n+8,r.entryCount,!0),t.setUint16(n+10,r.entryCount,!0),t.setUint32(n+12,r.centralDirSize,!0),t.setUint32(n+16,r.centralDirOffset,!0),t.setUint16(n+20,r.comment.length,!0),r.comment.length>0&&e.set(r.comment,n+22),22+r.comment.length}function pd(e,t,n){let r=new Uint8Array(16),i=new DataView(r.buffer);return i.setUint32(0,Qu,!0),i.setUint32(4,e,!0),i.setUint32(8,t,!0),i.setUint32(12,n,!0),r}function md(e,t,n){let r=n>>>0,i=Math.floor(n/4294967296)>>>0;e.setUint32(t,r,!0),e.setUint32(t+4,i,!0)}function hd(e,t,n){let r=new Uint8Array(24),i=new DataView(r.buffer,r.byteOffset,r.byteLength);return i.setUint32(0,Qu,!0),i.setUint32(4,e,!0),md(i,8,t),md(i,16,n),r}function gd(e){let t=e.uncompressedSize!==void 0,n=e.compressedSize!==void 0,r=e.localHeaderOffset!==void 0,i=e.diskNumberStart!==void 0,a=0;if(t&&(a+=8),n&&(a+=8),r&&(a+=8),i&&(a+=4),a===0)return G;let o=new Uint8Array(4+a),s=new DataView(o.buffer,o.byteOffset,o.byteLength);s.setUint16(0,1,!0),s.setUint16(2,a,!0);let c=4;return t&&(md(s,c,e.uncompressedSize),c+=8),n&&(md(s,c,e.compressedSize),c+=8),r&&(md(s,c,e.localHeaderOffset),c+=8),i&&s.setUint32(c,e.diskNumberStart,!0),o}function _d(e,t){return k([e,t])}function vd(e,t,n,r){let i=r.versionMadeBy??20,a=r.versionNeeded??45,o=r.diskNumber??0,s=r.centralDirectoryDiskNumber??0;return t.setUint32(n+0,$u,!0),md(t,n+4,44),t.setUint16(n+12,i,!0),t.setUint16(n+14,a,!0),t.setUint32(n+16,o,!0),t.setUint32(n+20,s,!0),md(t,n+24,r.entryCountOnDisk),md(t,n+32,r.entryCountTotal),md(t,n+40,r.centralDirSize),md(t,n+48,r.centralDirOffset),56}function yd(e,t,n,r){let i=r.zip64EndOfCentralDirectoryDiskNumber??0,a=r.totalDisks??1;return t.setUint32(n+0,ed,!0),t.setUint32(n+4,i,!0),md(t,n+8,r.zip64EndOfCentralDirectoryOffset),t.setUint32(n+16,a,!0),20}function bd(e,t,n){let r=en(n),i=5+r.length,a=new Uint8Array(4+i),o=new DataView(a.buffer,a.byteOffset,a.byteLength);return o.setUint16(0,e,!0),o.setUint16(2,i,!0),a[4]=1,o.setUint32(5,Cc(t)>>>0,!0),a.set(r,9),a}function xd(e,t){return bd(28789,e,t)}function Sd(e,t){return bd(25461,e,t)}let Cd=BigInt(2**53-1);function wd(e,t){return e.getBigUint64(t,!0)}function Td(e){return typeof e.getBigUint64==`function`}function Ed(e){if(!(e>Cd))return Number(e)}function Dd(e,t){let n={};if(e.length<4)return n;let r=new DataView(e.buffer,e.byteOffset,e.byteLength),i=Td(r),a=0;for(;a+4<=e.length;){let o=r.getUint16(a,!0),s=r.getUint16(a+2,!0),c=a+4,l=c+s;if(l>e.length)break;if(o===1){let e=c;if(t.uncompressedSize===4294967295&&e+8<=l){let i=wd(r,e);n.uncompressedSize64=i,t.uncompressedSize64=i;let a=Ed(i);a!==void 0&&(n.uncompressedSize=a,t.uncompressedSize=a),e+=8}if(t.compressedSize===4294967295&&e+8<=l){let i=wd(r,e);n.compressedSize64=i,t.compressedSize64=i;let a=Ed(i);a!==void 0&&(n.compressedSize=a,t.compressedSize=a),e+=8}if(t.offsetToLocalFileHeader===4294967295&&e+8<=l){let i=wd(r,e);n.offsetToLocalFileHeader64=i,t.offsetToLocalFileHeader64=i;let a=Ed(i);a!==void 0&&(n.offsetToLocalFileHeader=a,t.offsetToLocalFileHeader=a)}}else if(o===21589){if(s>=1){let t=e[c],i=c+1;t&1&&i+4<=l&&(n.mtimeUnixSeconds=r.getUint32(i,!0)>>>0,i+=4),t&2&&i+4<=l&&(n.atimeUnixSeconds=r.getUint32(i,!0)>>>0,i+=4),t&4&&i+4<=l&&(n.ctimeUnixSeconds=r.getUint32(i,!0)>>>0)}}else if(o===10){if(i&&s>=8){let e=c+4;for(;e+4<=l;){let t=r.getUint16(e,!0),i=r.getUint16(e+2,!0),a=e+4,o=a+i;if(o>l)break;t===1&&i>=32&&a+32<=o&&(n.ntfsTimes={mtime:r.getBigUint64(a+0,!0),atime:r.getBigUint64(a+8,!0),ctime:r.getBigUint64(a+16,!0),birthTime:r.getBigUint64(a+24,!0)}),e=o}}}else if(o===39169){if(s>=7){let t=r.getUint16(c,!0),i=r.getUint16(c+2,!0),a=e[c+4],o=r.getUint16(c+5,!0);if(i===17729){let e=Su[a];e&&(t===1||t===2)&&(n.aesInfo={version:t,keyStrength:e,compressionMethod:o})}}}else o===28789?s>=5&&(n.unicodePath={version:e[c],originalCrc32:r.getUint32(c+1,!0),unicodeValue:tn(e.subarray(c+5,l))}):o===25461&&s>=5&&(n.unicodeComment={version:e[c],originalCrc32:r.getUint32(c+1,!0),unicodeValue:tn(e.subarray(c+5,l))});a=l}return n}function Od(e){return e?8:0}function kd(e,t=!0){let n=0;return t&&(n|=td),e&&(n|=8),n}function Ad(e){let t=zl(e.codec),n=t.encode(e.name),r=Bl(e.comment,t),{dosTime:i,dosDate:a}=Ju(e.modTime),o=e.atime||e.ctime||e.birthTime?{atime:e.atime,ctime:e.ctime,birthTime:e.birthTime}:void 0,s=qu(e.modTime,e.timestamps,o);return!t.useUtf8Flag&&t.useUnicodeExtraFields&&(e.name&&(s=_d(s,xd(n,e.name))),e.comment&&(s=_d(s,Sd(r,e.comment)))),{nameBytes:n,commentBytes:r,dosTime:i,dosDate:a,extraField:s,compressionMethod:Od(e.deflate),flags:kd(e.useDataDescriptor,t.useUtf8Flag)}}function jd(e,t=20){return(e&255)<<8|t&255}function Md(e){switch(e){case`directory`:return id;case`symlink`:return rd;default:return 32768}}function Nd(e){return e>>>0&65535}function Pd(e,t){let n=e.endsWith(`/`)||e.endsWith(`\\`);return t!==void 0&&od(t)?`symlink`:n?`directory`:`file`}function Fd(e){let t=e.kind,n=t===`directory`?16:32,r=(e.msDosAttributes??n)&255,i=e.mode;i!==void 0&&(i&61440||(i=i&4095|Md(t)),i=Nd(i));let a=((i??0)&65535)<<16|r,o=jd(i!==void 0||t===`symlink`?3:0);return{externalAttributes:a>>>0,versionMadeBy:o}}function Id(e){if(e.externalAttributes!==void 0)return{externalAttributes:e.externalAttributes,versionMadeBy:e.versionMadeBy};let t=Fd({kind:Pd(e.name,e.mode),mode:e.mode,msDosAttributes:e.msDosAttributes});return{externalAttributes:t.externalAttributes,versionMadeBy:e.versionMadeBy??t.versionMadeBy}}function Ld(e){return e.replace(/\\/g,`/`)}function Rd(e){return e.replace(/^\/+/,``)}function zd(e){return e.replace(/^[a-zA-Z]:\/?/,``)}function Bd(e){let t=e.split(`/`),n=[];for(let e of t)if(!(!e||e===`.`)){if(e===`..`){n.length>0?n.pop():n.push(`..`);continue}n.push(e)}return n.join(`/`)}function Vd(e){return e.startsWith(`/`)}function Hd(e){return/^[a-zA-Z]:/.test(e)}function Ud(e,t={}){let n=t.mode??`legacy`,r=e;r=Ld(r);let i=Hd(r);if(n===`legacy`)return r=Rd(r),t.prependSlash?`/`+r:r;let a=t.stripDrive??!0;if(n===`safe`&&i&&!a)throw Error(`Unsafe ZIP path (drive): ${e}`);a&&(r=zd(r));let o=Vd(r);if(r=Rd(r),r=Bd(r),n===`safe`){if(o)throw Error(`Unsafe ZIP path (absolute): ${e}`);if(r===`..`||r.startsWith(`../`))throw Error(`Unsafe ZIP path (traversal): ${e}`)}return t.prependSlash?`/`+r:r}function Wd(e){return Math.log(e)/Math.LN2}function Gd(e,t){let n=0;for(let r=0;r<256;r++){let i=e[r];if(i===0)continue;let a=i/t;n-=a*Wd(a)}return n}function Kd(e,t){let n=new Uint32Array(256),r=0,i=0;if(Array.isArray(e))for(let a=0;a<e.length&&!(r>=t);a++){let o=e[a],s=Math.min(o.length,t-r);for(let e=0;e<s;e++){let t=o[e];n[t]===0&&(i+=1),n[t]+=1}r+=s}else for(let a of e){if(r>=t)break;let e=Math.min(a.length,t-r);for(let t=0;t<e;t++){let e=a[t];n[e]===0&&(i+=1),n[e]+=1}r+=e}return{total:r,unique:i,counts:n}}function qd(e,t={}){let n=t.sampleBytes??65536,r=t.minDecisionBytes??16384,{total:i,unique:a,counts:o}=Kd(e,n);return i<r||a<200?!1:Gd(o,i)>=7.95}function Jd(e,t,n,r,i){if(!i)return 0;let a=0;return(e||t>4294967295)&&(a+=8),(e||n>4294967295)&&(a+=8),(e||r>4294967295)&&(a+=8),a>0?4+a:0}function Yd(e){let t=e[0];return t?.fileName===void 0?t?.compressedData===void 0?`central`:`processed`:`input`}function Xd(e,t){let n=t.zip64Mode===!0,r=t.zip64Mode===!1,i=Yd(e),a=0;for(let t=0;t<e.length;t++){let r=e[t],o=i===`input`?r.fileName:r.name,s=r.extraField,c=r.comment,l=i===`processed`?r.compressedData.length:r.compressedSize,u=r.uncompressedSize,d=i===`input`?r.localHeaderOffset:r.offset,f=i===`processed`?void 0:r.zip64,p=n||f===!0||d>4294967295||l>4294967295||u>4294967295;a+=46+o.length+s.length+Jd(n,u,l,d,p)+(c?.length??0)}let o=e.length>65535||t.centralDirOffset>4294967295,s=n||o||a>4294967295;if(r&&s)throw Error(`ZIP64 is required but zip64=false`);let c=s?98+t.zipComment.length:22+t.zipComment.length;return{centralDirSize:a,trailerSize:c,totalSize:a+c,usedZip64:s}}function Zd(e,t){let n=t.zip64Mode===!0,r=Xd(e,{zipComment:t.zipComment,zip64Mode:t.zip64Mode,centralDirOffset:t.centralDirOffset}),i=Yd(e),a=t.offset,o=new DataView(t.out.buffer,t.out.byteOffset,t.out.byteLength);for(let r=0;r<e.length;r++){let s=e[r],c=i===`input`?s.fileName:s.name,l=s.extraField,u=s.comment,d=s.flags,f=i===`input`?s.crc32:s.crc,p=i===`processed`?s.compressedData.length:s.compressedSize,m=s.uncompressedSize,h=s.compressionMethod,g=i===`processed`?s.modTime:s.dosTime,_=i===`processed`?s.modDate:s.dosDate,v=i===`input`?s.localHeaderOffset:s.offset,y=i===`processed`?void 0:s.zip64,b=s.externalAttributes,ee=s.versionMadeBy,x=n||y===!0||v>4294967295||p>4294967295||m>4294967295,te=x?gd({uncompressedSize:n||m>4294967295?m:void 0,compressedSize:n||p>4294967295?p:void 0,localHeaderOffset:n||v>4294967295?v:void 0}):G,ne=x&&te.length>0?_d(l,te):l;a+=dd(t.out,o,a,{fileName:c,extraField:ne,comment:u??G,flags:d,compressionMethod:h,dosTime:g,dosDate:_,crc32:f,compressedSize:x?cd:p,uncompressedSize:x?cd:m,localHeaderOffset:x?cd:v,versionMadeBy:ee??20,versionNeeded:x?45:20,externalAttributes:b})}if(r.usedZip64){let n=t.centralDirOffset+r.centralDirSize;a+=vd(t.out,o,a,{entryCountOnDisk:e.length,entryCountTotal:e.length,centralDirSize:r.centralDirSize,centralDirOffset:t.centralDirOffset}),a+=yd(t.out,o,a,{zip64EndOfCentralDirectoryOffset:n,totalDisks:1}),fd(t.out,o,a,{entryCount:65535,centralDirSize:cd,centralDirOffset:cd,comment:t.zipComment})}else fd(t.out,o,a,{entryCount:e.length,centralDirSize:r.centralDirSize,centralDirOffset:t.centralDirOffset,comment:t.zipComment});return{centralDirSize:r.centralDirSize,trailerSize:r.trailerSize,totalWritten:r.totalSize,usedZip64:r.usedZip64}}let Qd=16*1024;var $d=class{constructor(e,t){this._deflate=null,this._crc=4294967295,this._uncompressedSize=0,this._compressedSize=0,this._finalized=!1,this._headerEmitted=!1,this._ondata=null,this._onerror=null,this._centralDirEntryInfo=null,this._pendingEnd=!1,this._emittedDataDescriptor=!1,this._localHeader=null,this._zip64Mode=`auto`,this._zip64=!1,this._deflateWanted=null,this._pendingChunks=[],this._sampleLen=0,this._completeResolve=null,this._completeReject=null,this._completePromise=null,this._completeError=null,this._encryptionMethod=`none`,this._zipCryptoState=null,this._aesBuffer=[],this._aesBufferSize=0,this._originalCompressionMethod=0,this._aesExtraField=null,this._dataQueue=[],this._finalQueued=!1,this._pushChain=Promise.resolve(),this._syncDeflater=null,this._syncZlibReady=!1;let n=t?.path?Ud(e,t.path):e;this.name=n;let r=t?.modTime??new Date;if(this._modTime=r,this.level=t?.level??6,this._smartStore=t?.smartStore??!0,this._zip64Mode=t?.zip64??`auto`,this._zip64=this._zip64Mode===!0,this._encryptionMethod=t?.encryptionMethod??`none`,this._password=t?.password,this._encryptionMethod!==`none`&&!this._password)throw Error(`Password is required for encryption`);Lu(this._encryptionMethod)&&(this._aesKeyStrength=Ru(this._encryptionMethod)),this._stringCodec=zl(t?.encoding);let i=Ad({name:n,comment:t?.comment,modTime:r,atime:t?.atime,ctime:t?.ctime,birthTime:t?.birthTime,timestamps:t?.timestamps??`dos`,useDataDescriptor:!0,deflate:!1,codec:this._stringCodec});this.nameBytes=i.nameBytes,this.commentBytes=i.commentBytes,this.dosTime=i.dosTime,this.dosDate=i.dosDate,this.extraField=i.extraField,this._flags=i.flags,this._compressionMethod=i.compressionMethod;let a=Id({name:n,mode:t?.mode,msDosAttributes:t?.msDosAttributes,externalAttributes:t?.externalAttributes,versionMadeBy:t?.versionMadeBy});if(this._externalAttributes=a.externalAttributes,this._versionMadeBy=a.versionMadeBy,this._encryptionMethod!==`none`&&(this._flags|=1),!this._smartStore){let e=this.level>0;this._deflateWanted=e,this._compressionMethod=this._buildCompressionMethod(e),e&&this._initDeflateStream();return}this.level===0&&(this._deflateWanted=!1,this._compressionMethod=this._buildCompressionMethod(!1))}_buildCompressionMethod(e){return Od(e)}_getAesExtraField(){return this._aesKeyStrength?(this._aesExtraField||=Au(2,this._aesKeyStrength,this._originalCompressionMethod),this._aesExtraField):G}_initZipCryptoEncryption(){if(this._zipCryptoState||this._encryptionMethod!==`zipcrypto`)return;this._zipCryptoState=du(this._password);let e=this.dosTime<<16|this.dosDate,t=_u(this._zipCryptoState,e,Tu);this._compressedSize+=t.length,this._enqueueData(t,!1)}_zipCryptoEncryptChunk(e){if(!this._zipCryptoState)return e;let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=hu(this._zipCryptoState,e[n]);return t}_initDeflateStream(){this._deflate||(this._deflate=uu({level:this.level}),this._deflate.on(`error`,e=>{this._rejectComplete(e)}),this._deflate.on(`data`,e=>{if(this._aesKeyStrength){this._aesBuffer.push(e),this._aesBufferSize+=e.length;return}if(this._encryptionMethod===`zipcrypto`){this._initZipCryptoEncryption();let t=this._zipCryptoEncryptChunk(e);this._compressedSize+=t.length,this._enqueueData(t,!1);return}this._compressedSize+=e.length,this._enqueueData(e,!1)}),this._deflate.on(`end`,()=>{this._pendingEnd&&!this._emittedDataDescriptor&&(this._emittedDataDescriptor=!0,this._finalizeEncryptionAndEmitDescriptor())}))}_finalizeEncryptionAndEmitDescriptor(){if(this._aesKeyStrength&&this._aesBuffer.length>0){this._finalizeAesEncryption().then(()=>this._emitDataDescriptor()).catch(e=>this._rejectComplete(e));return}this._emitDataDescriptor()}async _finalizeAesEncryption(){if(!this._aesKeyStrength||this._aesBufferSize===0)return;let e;if(this._aesBuffer.length===1)e=this._aesBuffer[0];else{e=new Uint8Array(this._aesBufferSize);let t=0;for(let n=0;n<this._aesBuffer.length;n++){let r=this._aesBuffer[n];e.set(r,t),t+=r.length}}this._aesBuffer.length=0,this._aesBufferSize=0;let t=await Fu(e,this._password,this._aesKeyStrength);this._compressedSize=t.length,this._enqueueData(t,!1)}_buildLocalHeader(){let e=this.extraField,t=this._compressionMethod;return this._aesKeyStrength&&(this._originalCompressionMethod=this._compressionMethod,t=99,e=_d(this.extraField,this._getAesExtraField())),ud({fileName:this.nameBytes,extraField:e,flags:this._flags,compressionMethod:t,dosTime:this.dosTime,dosDate:this.dosDate,crc32:0,compressedSize:0,uncompressedSize:0,versionNeeded:this._zip64?45:20})}_accumulateSampleLen(e){if(this._deflateWanted!==null||e.length===0||this._sampleLen>=Qd)return;let t=Math.min(Qd-this._sampleLen,e.length);t<=0||(this._sampleLen+=t)}_shouldDecide(e){return this._deflateWanted===null?e||this._sampleLen>=Qd:!1}_decideCompressionIfNeeded(e,t,n=!1){if(this._deflateWanted===null){if(e&&this._sampleLen===0){this._deflateWanted=!1,this._sampleLen=0,this._compressionMethod=this._buildCompressionMethod(!1),this._localHeader=null;return}this._deflateWanted=!qd((function*(e,t){for(let t of e)t.length&&(yield t);t.length&&(yield t)})(this._pendingChunks,t),{sampleBytes:Qd,minDecisionBytes:Qd}),this._sampleLen=0,this._compressionMethod=this._buildCompressionMethod(this._deflateWanted),this._localHeader=null,this._deflateWanted&&(n||this._initDeflateStream())}}_emitHeaderIfNeeded(){this._headerEmitted||=(this._emitHeader(),!0)}async _flushPendingChunks(){if(this._pendingChunks.length!==0){for(let e of this._pendingChunks)await this._writeData(e);this._pendingChunks.length=0}}_enqueueData(e,t){this._ondata?this._ondata(e,t):(this._dataQueue.push(e),t&&(this._finalQueued=!0))}_flushQueue(){if(!this._ondata)return;let e=this._dataQueue.length,t=this._finalQueued?e-1:-1;for(let n=0;n<e;n++)this._ondata(this._dataQueue[n],n===t);this._dataQueue.length=0,this._finalQueued=!1}get ondata(){return this._ondata}set ondata(e){this._ondata=e,this._flushQueue()}get onerror(){return this._onerror}set onerror(e){this._onerror=e,this._completeError&&e(this._completeError)}_resolveComplete(){this._completeResolve&&this._completeResolve()}_rejectComplete(e){this._completeError||(this._completeError=e,this._onerror&&this._onerror(e),this._completeReject&&this._completeReject(e))}_ensureCompletePromise(){return this._completeError?Promise.reject(this._completeError):this._emittedDataDescriptor?Promise.resolve():(this._completePromise||=new Promise((e,t)=>{this._completeResolve=e,this._completeReject=t}),this._completePromise)}_tapCallback(e,t){t&&e.then(()=>t()).catch(e=>t(e))}_writeDataSync(e,t){if(!(e.length===0&&!t)){if(e.length>0&&(this._crc=xc(this._crc,e),this._uncompressedSize+=e.length),this._deflateWanted){if(this._syncDeflater||=new qc(this.level),e.length>0){let t=this._syncDeflater.write(e);t.length>0&&(this._compressedSize+=t.length,this._enqueueData(t,!1))}if(t){let e=this._syncDeflater.finish();e.length>0&&(this._compressedSize+=e.length,this._enqueueData(e,!1)),this._syncDeflater=null}return}if(this._aesKeyStrength){this._aesBuffer.push(e),this._aesBufferSize+=e.length;return}if(this._encryptionMethod===`zipcrypto`){this._initZipCryptoEncryption();let t=this._zipCryptoEncryptChunk(e);this._compressedSize+=t.length,this._enqueueData(t,!1);return}e.length>0&&(this._compressedSize+=e.length,this._enqueueData(e,!1))}}_writeData(e){if(e.length===0)return Promise.resolve();if(this._crc=xc(this._crc,e),this._uncompressedSize+=e.length,this._deflate)return new Promise((t,n)=>{this._deflate.write(e,e=>{e?n(e):t()})});if(this._aesKeyStrength)return this._aesBuffer.push(e),this._aesBufferSize+=e.length,Promise.resolve();if(this._encryptionMethod===`zipcrypto`){this._initZipCryptoEncryption();let t=this._zipCryptoEncryptChunk(e);return this._compressedSize+=t.length,this._enqueueData(t,!1),Promise.resolve()}return this._compressedSize+=e.length,this._enqueueData(e,!1),Promise.resolve()}_endDeflateAndWait(){return new Promise((e,t)=>{let n=this._deflate,r=e=>{a(),t(e)},i=()=>{a(),e()},a=()=>{n.off(`error`,r),n.off(`end`,i)};n.once(`error`,r),n.once(`end`,i),n.end()})}_finalizeAfterWrite(e){this._finalized=!0,this._pendingEnd=!0;let t=this._ensureCompletePromise();return this._deflate?e.then(()=>this._endDeflateAndWait()).then(()=>t):this._aesKeyStrength&&this._aesBufferSize>0?(this._emittedDataDescriptor=!0,this._finalizeAesEncryption().then(()=>this._emitDataDescriptor()).catch(e=>this._rejectComplete(e)),t):(this._emittedDataDescriptor=!0,this._emitDataDescriptor(),t)}_pushUnchained(e,t,n){if(this._finalized){let e=Promise.reject(Error(`Cannot push to finalized ZipDeflateFile`));return this._tapCallback(e,n),e}if(this._deflateWanted===null){if(this._accumulateSampleLen(e),!this._shouldDecide(t)){e.length>0&&this._pendingChunks.push(e);let t=Promise.resolve();return this._tapCallback(t,n),t}this._decideCompressionIfNeeded(t,e),this._emitHeaderIfNeeded();let r=this._pendingChunks.length>0,i=this._flushPendingChunks(),a=i;e.length>0&&(a=r?i.then(()=>this._writeData(e)):this._writeData(e));let o=t?this._finalizeAfterWrite(a):a;return this._tapCallback(o,n),o}this._emitHeaderIfNeeded();let r=this._writeData(e),i=t?this._finalizeAfterWrite(r):r;return this._tapCallback(i,n),i}push(e,t=!1,n){if(!this._deflate&&this._encryptionMethod===`none`){try{this._pushSyncPath(e,t),n?.()}catch(e){return n?.(e instanceof Error?e:Error(String(e))),Promise.reject(e)}return Promise.resolve()}let r=this._pushChain=this._pushChain.then(()=>this._pushUnchained(e,t,n));return r.catch(()=>{}),r}_pushSyncPath(e,t=!1){if(this._finalized)throw Error(`Cannot push to finalized ZipDeflateFile`);if(this._syncZlibReady||=!0,this._deflateWanted===null){if(this._accumulateSampleLen(e),!this._shouldDecide(t)){e.length>0&&this._pendingChunks.push(e);return}this._decideCompressionIfNeeded(t,e,!0),this._emitHeaderIfNeeded();for(let e of this._pendingChunks)this._writeDataSync(e,!1);this._pendingChunks.length=0,e.length>0&&this._writeDataSync(e,t),t&&this._finalizeSyncAfterWrite();return}this._emitHeaderIfNeeded(),this._writeDataSync(e,t),t&&this._finalizeSyncAfterWrite()}_finalizeSyncAfterWrite(){if(this._finalized=!0,this._pendingEnd=!1,this._emittedDataDescriptor=!0,this._aesKeyStrength&&this._aesBufferSize>0)throw Error(`AES encryption is not supported with synchronous push`);if(this._syncDeflater){let e=this._syncDeflater.finish();e.length>0&&(this._compressedSize+=e.length,this._enqueueData(e,!1)),this._syncDeflater=null}this._emitDataDescriptor()}_emitHeader(){this._localHeader||=this._buildLocalHeader(),this._enqueueData(this._localHeader,!1)}_emitDataDescriptor(){let e=Sc(this._crc),t=this._compressedSize>4294967295||this._uncompressedSize>4294967295;if(this._zip64Mode===!1&&t){this._rejectComplete(Error(`ZIP64 is required but zip64=false`));return}(this._zip64Mode===!0||t&&!this._zip64)&&(this._zip64=!0);let n=this._zip64?hd(e,this._compressedSize,this._uncompressedSize):pd(e,this._compressedSize,this._uncompressedSize),r=this._compressionMethod,i=this.extraField;this._aesKeyStrength&&(r=99,i=_d(this.extraField,this._getAesExtraField())),this._centralDirEntryInfo={name:this.nameBytes,extraField:i,comment:this.commentBytes,flags:this._flags,crc:e,compressedSize:this._compressedSize,uncompressedSize:this._uncompressedSize,compressionMethod:r,dosTime:this.dosTime,dosDate:this.dosDate,offset:-1,zip64:this._zip64,externalAttributes:this._externalAttributes,versionMadeBy:this._versionMadeBy},this._enqueueData(n,!0),this._resolveComplete()}complete(){return this._ensureCompletePromise()}getEntryInfo(){if(!this._centralDirEntryInfo)return null;let e=this.name,t=e.endsWith(`/`)||e.endsWith(`\\`),n=this._centralDirEntryInfo.externalAttributes,r=ad(n);return{path:e,type:od(r)?`symlink`:t?`directory`:`file`,compressedSize:this._centralDirEntryInfo.compressedSize,uncompressedSize:this._centralDirEntryInfo.uncompressedSize,compressionMethod:this._centralDirEntryInfo.compressionMethod,crc32:this._centralDirEntryInfo.crc,lastModified:this._modTime,localHeaderOffset:this._centralDirEntryInfo.offset,comment:this._stringCodec.decode(this._centralDirEntryInfo.comment),externalAttributes:n,mode:r,versionMadeBy:this._centralDirEntryInfo.versionMadeBy,extraField:this._centralDirEntryInfo.extraField,isEncrypted:this._encryptionMethod!==`none`,encryptionMethod:this._aesKeyStrength?`aes`:this._encryptionMethod===`zipcrypto`?`zipcrypto`:void 0,aesKeyStrength:this._aesKeyStrength,originalCompressionMethod:this._aesKeyStrength?this._originalCompressionMethod:void 0}}getCentralDirectoryEntryInfo(){return this._centralDirEntryInfo}isComplete(){return this._emittedDataDescriptor&&this._centralDirEntryInfo!==null}abort(e){if(this._completeError)return;let t=r(e);this._finalized=!0,this._pendingEnd=!0,this._rejectComplete(t);try{let e=this._deflate;e&&typeof e.destroy==`function`&&e.destroy(t)}catch{}}},ef=class{constructor(e,t){this.entries=[],this.currentOffset=0,this.ended=!1,this.endPending=!1,this.addedEntryCount=0,this.fileQueue=[],this.fileQueueIndex=0,this.activeFile=null,this.callback=e,this._stringCodec=t?.codec??zl(t?.encoding),this.zipComment=Bl(t?.comment,this._stringCodec),this.zip64Mode=t?.zip64??`auto`}add(e){if(this.ended)throw Error(`Cannot add files after calling end() `);if(this.zip64Mode===!1&&this.addedEntryCount>=65535)throw Error(`ZIP64 is required but zip64=false`);this.addedEntryCount++,this.fileQueue.push(e),this.activeFile||this._processNextFile()}_processNextFile(){if(this.fileQueueIndex>=this.fileQueue.length){this.activeFile=null,this.fileQueue=[],this.fileQueueIndex=0,this.endPending&&this._finalize();return}let e=this.fileQueue[this.fileQueueIndex++];this.activeFile=e;let t=this.currentOffset;if(e.onerror=e=>{this.ended||(this.ended=!0,this.callback(e,G,!0))},e.ondata=(n,r)=>{if(!this.ended&&(this.currentOffset+=n.length,this.callback(null,n,!1),r)){let n=e.getCentralDirectoryEntryInfo();n&&(n.offset=t,this.entries.push(n)),this._processNextFile()}},typeof e.start==`function`)try{e.start().catch(t=>{let n=a(t);try{e.onerror?.(n)}catch{}})}catch(t){let n=a(t);try{e.onerror?.(n)}catch{}}}_finalize(){if(this.ended)return;this.ended=!0;let e=this.currentOffset,t;try{let n=Xd(this.entries,{zipComment:this.zipComment,zip64Mode:this.zip64Mode,centralDirOffset:e});t=new Uint8Array(n.totalSize),Zd(this.entries,{zipComment:this.zipComment,zip64Mode:this.zip64Mode,centralDirOffset:e,out:t,offset:0})}catch(e){let t=a(e);this.callback(t,G,!0);return}this.callback(null,t,!0)}end(){this.endPending||this.ended||(this.endPending=!0,this.activeFile||this._finalize())}abort(e){if(this.ended)return;let t=r(e);this.ended=!0,this.endPending=!0;try{this.activeFile?.abort(t)}catch{}this.callback(t,G,!0)}};function tf(e){return e.encoding?zl(e.encoding):void 0}function nf(e,t=!1){for(let n=e.length-22;n>=0;n--)if(e[n]===80&&e[n+1]===75&&e[n+2]===5&&e[n+3]===6)if(t){let t=e[n+20]|e[n+21]<<8;if(n+22+t===e.length)return n}else return n;return-1}function rf(e,t){let n=t-20;return n<0?-1:e[n]===80&&e[n+1]===75&&e[n+2]===6&&e[n+3]===7?n:-1}function af(e,t,n=!0,r){let i=new Jl(e,t);i.skip(4);let a=i.readUint16(),o=i.readUint16(),s=i.readUint16(),c=i.readUint16(),l=i.readUint32(),u=i.readUint32(),d=i.readUint16(),f=``;if(d>0){let e=i.readBytes(d);n&&(f=r?r.decode(e):tn(e))}return{eocd:{diskNumber:a,centralDirDisk:o,entriesOnDisk:s,totalEntries:c,centralDirSize:l,centralDirOffset:u},comment:f}}function of(e,t){let n=new Jl(e,t);return n.readUint32()===117853008?(n.skip(4),Number(n.readBigUint64())):-1}function sf(e,t){let n=new Jl(e,t);return n.readUint32()===101075792?(n.skip(8),n.skip(2),n.skip(2),n.skip(4),n.skip(4),{entriesOnDisk:n.readBigUint64(),totalEntries:n.readBigUint64(),centralDirSize:n.readBigUint64(),centralDirOffset:n.readBigUint64()}):null}function cf(e,t){e.totalEntries===65535&&(e.totalEntries=Number(t.totalEntries)),e.entriesOnDisk===65535&&(e.entriesOnDisk=Number(t.entriesOnDisk)),e.centralDirSize===4294967295&&(e.centralDirSize=Number(t.centralDirSize)),e.centralDirOffset===4294967295&&(e.centralDirOffset=Number(t.centralDirOffset))}function lf(e,t,n){let r=e.readUint16();e.skip(2);let i=e.readUint16(),a=e.readUint16(),o=e.readUint16(),s=e.readUint16(),c=e.readUint32(),l=e.readUint32(),u=e.readUint32(),d=e.readUint16(),f=e.readUint16(),p=e.readUint16();e.skip(2),e.skip(2);let m=e.readUint32(),h=e.readUint32(),g=d>0?e.readBytes(d):new Uint8Array,_={},v=new Uint8Array;if(f>0){v=e.readBytes(f);let t={compressedSize:l,uncompressedSize:u,offsetToLocalFileHeader:h};_=Dd(v,t),l=t.compressedSize,u=t.uncompressedSize,h=t.offsetToLocalFileHeader??h}let y=p>0?e.readBytes(p):new Uint8Array,b=t?Ul(g,i,_,n):``,ee=t?Wl(y,i,_,n):``,x=ad(m),te=r>>8&255,ne=od(x),re=sd(x)||te===0&&(m&16)!=0||b.endsWith(`/`),ie=(i&1)!=0,S=ne?`symlink`:re?`directory`:`file`,C=_.mtimeUnixSeconds,ae=Ku(s,o,C),oe=`none`,se,ce,le;return ie&&(a===99&&_.aesInfo?(oe=`aes`,se=_.aesInfo.version,ce=_.aesInfo.keyStrength,le=_.aesInfo.compressionMethod):oe=`zipcrypto`),{path:b,type:S,compressedSize:l,compressedSize64:_.compressedSize64,uncompressedSize:u,uncompressedSize64:_.uncompressedSize64,compressionMethod:a,crc32:c,lastModified:ae,localHeaderOffset:h,localHeaderOffset64:_.offsetToLocalFileHeader64,comment:ee,externalAttributes:m,mode:x,versionMadeBy:r,extraField:v,isEncrypted:ie,encryptionMethod:oe,aesVersion:se,aesKeyStrength:ce,originalCompressionMethod:le,dosTime:o}}function uf(e,t,n,r={}){let i=r.decodeStrings??!0,a=tf(r);if(n===0)return[];let o=Array(n),s=new Jl(e,t);for(let e=0;e<n;e++){if(s.readUint32()!==33639248)throw Error(`Invalid Central Directory header signature at entry ${e}`);o[e]=lf(s,i,a)}return o}function df(e,t={}){let n=t.decodeStrings??!0,r=tf(t),i=nf(e);if(i===-1)throw Error(`Invalid ZIP file: End of Central Directory not found`);let{eocd:a,comment:o}=af(e,i,n,r),s=rf(e,i);if(s!==-1){let t=of(e,s);if(t>=0){let n=sf(e,t);n&&cf(a,n)}}return{entries:uf(e,a.centralDirOffset,a.totalEntries,t),comment:o}}function ff(e){return!!e&&typeof e==`object`&&typeof e.getReader==`function`}function pf(e){return!!e&&typeof e==`object`&&typeof e.getWriter==`function`}function mf(e){return!!e&&typeof e==`object`&&!!e.readable&&!!e.writable&&ff(e.readable)&&pf(e.writable)}async function hf(e,t,n,r=!1,i=!0){let a;if(e.isEncrypted){if(!n)throw new fl(e.path);if(e.encryptionMethod===`aes`&&e.aesKeyStrength){let r=await Pu(t,n,e.aesKeyStrength);if(!r)throw new dl(e.path);a=await _f(r,e.originalCompressionMethod??0,e.path)}else if(e.encryptionMethod===`zipcrypto`){let r=vu(t,n,e.crc32,e.dosTime);if(!r)throw new dl(e.path);a=await _f(r,e.compressionMethod,e.path)}else throw new dl(e.path,`Unsupported encryption method`)}else a=await _f(t,e.compressionMethod,e.path);if(i&&a.length!==e.uncompressedSize){let t=a.length>e.uncompressedSize?`too-many-bytes`:`too-few-bytes`;throw new ul(e.path,e.uncompressedSize,a.length,t)}if(e.encryptionMethod===`zipcrypto`||r&&e.encryptionMethod!==`aes`){let t=Cc(a);if(t!==e.crc32)throw new ll(e.path,e.crc32,t)}return a}function gf(e,t,n,r=!0){let i;if(e.isEncrypted){if(!n)throw new fl(e.path);if(e.encryptionMethod===`aes`)throw Error(`File "${e.path}" uses AES encryption. Use the async extract() method instead of extractSync().`);if(e.encryptionMethod===`zipcrypto`){let r=vu(t,n,e.crc32,e.dosTime);if(!r)throw new dl(e.path);i=vf(r,e.compressionMethod,e.path);let a=Cc(i);if(a!==e.crc32)throw new ll(e.path,e.crc32,a)}else throw new dl(e.path,`Unsupported encryption method`)}else i=vf(t,e.compressionMethod,e.path);if(r&&i.length!==e.uncompressedSize){let t=i.length>e.uncompressedSize?`too-many-bytes`:`too-few-bytes`;throw new ul(e.path,e.uncompressedSize,i.length,t)}return i}async function _f(e,t,n){if(t===0)return e;if(t===8)return tu(e);throw new pl(t)}function vf(e,t,n){if(t===0)return e;if(t===8)return nu(e);throw new pl(t)}function yf(e,t){if(e.readUint32()!==67324752)throw Error(`Invalid local file header signature at offset ${t}`);e.skip(2),e.skip(2),e.skip(2),e.skip(2),e.skip(2),e.skip(4),e.skip(4),e.skip(4);let n=e.readUint16(),r=e.readUint16();return e.skip(n),e.skip(r),e.position}function bf(e,t){let n=yf(new Jl(e,t.localHeaderOffset),t.localHeaderOffset);return e.subarray(n,n+t.compressedSize)}let xf=BigInt(2**53-1);function Sf(e){if(e.uncompressedSize64!==void 0&&e.uncompressedSize64>xf||e.compressedSize64!==void 0&&e.compressedSize64>xf)throw Error(`File "${e.path}" is too large to extract into memory (ZIP64 size > 2^53-1)`);if(e.localHeaderOffset64!==void 0&&e.localHeaderOffset64>xf)throw Error(`File "${e.path}" has a ZIP64 offset > 2^53-1 and cannot be extracted by the in-memory parser`)}function Cf(e,t={}){return df(e,{decodeStrings:t.decodeStrings,encoding:t.encoding})}async function wf(e,t,n={}){return t.type===`directory`?G:(Sf(t),hf(t,bf(e,t),n.password))}function Tf(e,t,n={}){return t.type===`directory`?G:(Sf(t),gf(t,bf(e,t),n.password))}var Ef=class{constructor(e,t={}){this.data=e instanceof ArrayBuffer?new Uint8Array(e):e;let n=Cf(this.data,t);this.entries=n.entries,this.archiveComment=n.comment,this.entryMap=new Map(this.entries.map(e=>[e.path,e])),this.password=t.password}setPassword(e){this.password=e}getEntries(){return this.entries}getEntry(e){return this.entryMap.get(e)}getRawCompressedData(e){let t=this.entryMap.get(e);return t?bf(this.data,t):null}getRawEntry(e){let t=this.entryMap.get(e);return t?{info:t,compressedData:bf(this.data,t)}:null}hasEntry(e){return this.entryMap.has(e)}childCount(e){let t=this.entryMap.get(e);if(t&&t.type!==`directory`)return 0;let n=e.endsWith(`/`)?e:e+`/`,r=t?.type===`directory`?t:this.entryMap.get(n),i=(r?.path??n).endsWith(`/`)?r?.path??n:(r?.path??n)+`/`,a=0;for(let e of this.entries)e.path.startsWith(i)&&e.path!==i&&a++;return a}getZipComment(){return this.archiveComment}hasEncryptedEntries(){return this.entries.some(e=>e.isEncrypted)}getEncryptedEntries(){return this.entries.filter(e=>e.isEncrypted)}listFiles(){return this.entries.map(e=>e.path)}async extract(e,t){let n=this.entryMap.get(e);return n?wf(this.data,n,{password:t??this.password}):null}extractSync(e,t){let n=this.entryMap.get(e);return n?Tf(this.data,n,{password:t??this.password}):null}async extractAll(e){let t=new Map,n=e??this.password;for(let e of this.entries){let r=await wf(this.data,e,{password:n});t.set(e.path,r)}return t}extractAllSync(e){let t={},n=e??this.password;for(let e of this.entries)t[e.path]=Tf(this.data,e,{password:n});return t}async forEach(e,t){let n=t??this.password;for(let t of this.entries){let r=null;if(await e(t,()=>(r||=wf(this.data,t,{password:n}),r))===!1)break}}};function Df(e){return e?16:65536}var Of=class extends t{constructor(e,t){super(e,t),this.name=`StreamError`}},kf=class extends Of{constructor(e,t,n){super(`Cannot ${e}: ${t}`,n),this.operation=e,this.state=t,this.name=`StreamStateError`}},Af=class extends Of{constructor(e,t,n){super(`Expected ${e}, got ${t}`,n),this.expectedType=e,this.actualType=t,this.name=`StreamTypeError`}};function jf(e,t){let n=(t??`utf-8`).trim().toLowerCase();switch(n){case``:case`utf8`:case`utf-8`:return Lt.encode(e);case`latin1`:case`binary`:{let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n)&255;return t}case`ascii`:{let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n)&127;return t}case`hex`:{let t=e.length>>>1,n=new Uint8Array(t);for(let r=0;r<t;r++)n[r]=parseInt(e.substring(r*2,r*2+2),16);return n}case`base64`:{let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}case`base64url`:{let t=e.replace(/-/g,`+`).replace(/_/g,`/`);for(;t.length%4!=0;)t+=`=`;let n=atob(t),r=new Uint8Array(n.length);for(let e=0;e<n.length;e++)r[e]=n.charCodeAt(e);return r}case`utf16le`:case`utf-16le`:case`ucs2`:case`ucs-2`:{let t=new Uint8Array(e.length*2);for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t[n*2]=r&255,t[n*2+1]=r>>>8&255}return t}default:throw Mf(n)}}function Mf(e){let t=TypeError(`Unknown encoding: ${e}`);return t.code=`ERR_UNKNOWN_ENCODING`,t}var Nf=class{constructor(e){this._items=[],this._index=0,this._front=[],this._byteSize=0,this._objectMode=e}_chunkSize(e){return e instanceof Uint8Array?e.byteLength:1}get length(){return this._front.length+(this._items.length-this._index)}get byteSize(){return this._byteSize}push(e){this._items.push(e),this._objectMode||(this._byteSize+=this._chunkSize(e))}shift(){let e;return this._front.length>0?e=this._front.pop():(e=this._items[this._index++],this._index===this._items.length?(this._items.length=0,this._index=0):this._index>1024&&this._index*2>this._items.length&&(this._items=this._items.slice(this._index),this._index=0)),this._objectMode||(this._byteSize-=this._chunkSize(e)),e}unshift(e){this._index===0?this._front.push(e):(this._index--,this._items[this._index]=e),this._objectMode||(this._byteSize+=this._chunkSize(e))}peek(){let e=this._front.length;return e>0?this._front[e-1]:this._index<this._items.length?this._items[this._index]:null}toArray(){let e=this._front.length,t=this._items.length-this._index,n=Array(e+t);for(let t=0;t<e;t++)n[t]=this._front[e-1-t];for(let r=0;r<t;r++)n[e+r]=this._items[this._index+r];return n}clear(){this._items.length=0,this._index=0,this._front.length=0,this._byteSize=0}consumeBytes(e){if(e===0)return new Uint8Array;let t=this.peek();if(t instanceof Uint8Array&&t.byteLength===e)return this.shift();if(t instanceof Uint8Array&&t.byteLength>e){this._shiftFrontChunk();let n=t.subarray(0,e),r=t.subarray(e);return this.unshift(r),n}let n=new Uint8Array(e),r=0;for(;r<e;){let t=this.shift();if(t instanceof Uint8Array){let i=e-r;t.byteLength<=i?(n.set(t,r),r+=t.byteLength):(n.set(t.subarray(0,i),r),this.unshift(t.subarray(i)),r+=i)}}return n}consumeAll(){let e=this._front.length,t=e+(this._items.length-this._index);if(t===0)return new Uint8Array;if(t===1)return this.shift();let n=this._byteSize,r=new Uint8Array(n),i=0;for(let t=e-1;t>=0;t--){let e=this._front[t];e instanceof Uint8Array&&(r.set(e,i),i+=e.byteLength)}for(let e=this._index;e<this._items.length;e++){let t=this._items[e];t instanceof Uint8Array&&(r.set(t,i),i+=t.byteLength)}return this.clear(),r}_shiftFrontChunk(){return this.shift()}};let Pf=(e,t,n)=>{typeof e.off==`function`?e.off(t,n):typeof e.removeListener==`function`&&e.removeListener(t,n)},Ff=(e,t,n,r)=>(r?.once?typeof e.once==`function`&&e.once(t,n):typeof e.on==`function`&&e.on(t,n),()=>Pf(e,t,n)),If=()=>{let e=[];return{add:(t,n,r)=>{e.push(Ff(t,n,r))},once:(t,n,r)=>{e.push(Ff(t,n,r,{once:!0}))},cleanup:()=>{for(let t=e.length-1;t>=0;t--)e[t]();e.length=0}}};var Lf=class{constructor(e){this._source=e,this._destinations=[],this._listeners=new Map,this._sourceOverride=null}setSource(e){this._sourceOverride=e}get _emitSource(){return this._sourceOverride??this._source}pipe(e,t){let n=e,r=n,i=typeof n?.write==`function`,a=typeof n?.end==`function`,o=typeof r?.on==`function`,s=typeof r?.once==`function`,c=typeof r?.off==`function`;if(!i||!a||!s&&!o||!c&&!r?.removeListener)throw new Af(`Writable`,typeof n);this._destinations.push(n);let l,u=()=>{l&&=(Pf(r,`drain`,l),void 0)},d=e=>{if(!n.write(e)&&(this._source.pause(),!l)){l=()=>{u(),this._source.resume()},r.on(`drain`,l);let e=this._listeners.get(n);e&&(e.drain=l)}},f=t?.end===!1?void 0:()=>{n.end()},p=()=>{this.unpipe(n)},m=typeof r.once==`function`?`once`:`on`;return r[m](`close`,p),r[m](`finish`,p),this._listeners.set(n,{data:d,end:f,destClose:p,destFinish:p,eventTarget:r}),this._source.on(`data`,d),f&&this._source.once(`end`,f),r.emit?.(`pipe`,this._emitSource),this._source.resume(),e}unpipe(e){if(e){let t=this._destinations.indexOf(e);t!==-1&&(this._destinations.splice(t,1),this._removeListeners(e),this._destinations.length===0&&this._source.pause())}else{let e=this._destinations.length>0;for(let e of this._destinations)this._removeListeners(e);this._destinations=[],e&&this._source.pause()}}_removeListeners(e){let t=this._listeners.get(e);t&&(this._source.off(`data`,t.data),t.end&&this._source.off(`end`,t.end),t.drain&&Pf(t.eventTarget,`drain`,t.drain),t.destClose&&Pf(t.eventTarget,`close`,t.destClose),t.destFinish&&Pf(t.eventTarget,`finish`,t.destFinish),t.eventTarget.emit?.(`unpipe`,this._emitSource),this._listeners.delete(e))}};let Rf=0;function K(e){queueMicrotask(()=>{Rf++;try{e()}finally{Rf--}})}function zf(){return Rf>0}let Bf=null;function Vf(){return Bf}function Hf(e){Bf=e}function Uf(e){return $t(this,e??`utf-8`)}var q=class e extends W{static[Symbol.hasInstance](t){return typeof t!=`object`||!t?!1:Object.prototype.isPrototypeOf.call(e.prototype,t)?!0:t.__excelts_stream===!0&&typeof t.read==`function`&&typeof t.pipe==`function`&&typeof t.on==`function`&&`readableFlowing`in t}constructor(e){super(),this._reader=null,this._reading=!1,this._ended=!1,this._endEmitted=!1,this._destroyed=!1,this._internalDestroy=!1,this._errored=null,this._closed=!1,this._flowing=!1,this._resumeScheduled=!1,this._hasFlowed=!1,this._encoding=null,this._decoder=null,this._didRead=!1,this._pushMode=!1,this._webStreamMode=!1,this._hasReadImpl=!1,this._constructed=!0,this._asyncIterState=null,this.__excelts_stream=!0,this._objectMode=e?.objectMode??!1,this._highWaterMark=e?.highWaterMark??Df(this._objectMode),this._buf=new Nf(this._objectMode),this._pipes=new Lf(this),this._autoDestroy=e?.autoDestroy??!0,this._emitClose=e?.emitClose??!0,e?.read?(this._read=e.read.bind(this),this._hasReadImpl=!0,this._pushMode=!0):this._hasSubclassRead()&&(this._hasReadImpl=!0,this._pushMode=!0),e?.destroy&&(this._destroy=e.destroy.bind(this)),e?.construct&&(this._constructFunc=e.construct.bind(this)),e?.stream?(this._stream=e.stream,this._webStreamMode=!0):this._stream=null,e?.encoding&&this.setEncoding(e.encoding),e?.signal&&this._setupAbortSignal(e.signal),this._maybeConstruct()}_maybeConstruct(){(this._constructFunc||this._hasSubclassConstruct())&&(this._constructed=!1,K(()=>{(this._constructFunc??this._construct.bind(this))(e=>{if(e){this.destroy(e);return}this._constructed=!0,this._hasReadImpl&&this._flowing&&!this._ended&&!this._destroyed&&this._callRead(this._highWaterMark)})}))}_hasSubclassConstruct(){let t=Object.getPrototypeOf(this);for(;t&&t!==e.prototype&&t!==Object.prototype;){if(Object.prototype.hasOwnProperty.call(t,`_construct`))return!0;t=Object.getPrototypeOf(t)}return!1}_hasSubclassRead(){let t=Object.getPrototypeOf(this);for(;t&&t!==e.prototype&&t!==Object.prototype;){if(Object.prototype.hasOwnProperty.call(t,`_read`))return!0;t=Object.getPrototypeOf(t)}return!1}_setupAbortSignal(e){if(e.aborted){this.destroy(r(e.reason));return}let t=()=>{i(),this.destroy(r(e.reason))},n=()=>{i()},i=()=>{e.removeEventListener(`abort`,t),this.off(`close`,n),this.off(`end`,n),this.off(`error`,n)};e.addEventListener(`abort`,t,{once:!0}),this.on(`close`,n),this.on(`end`,n),this.on(`error`,n)}static from(t,n){if(t&&typeof t.getReader==`function`)return e.fromWeb(t,n);if(typeof Blob<`u`&&t instanceof Blob)return e.fromWeb(t.stream(),n);if(t==null||typeof t!=`object`&&typeof t!=`string`){let e=TypeError(`The "iterable" argument must be an instance of Iterable. Received type ${typeof t} (${String(t)})`);throw e.code=`ERR_INVALID_ARG_TYPE`,e}let r=typeof t[Symbol.iterator]==`function`,i=typeof t[Symbol.asyncIterator]==`function`;if(!r&&!i&&typeof t!=`string`){let e=t?.constructor?.name??`Object`,n=TypeError(`The "iterable" argument must be an instance of Iterable. Received an instance of ${e}`);throw n.code=`ERR_INVALID_ARG_TYPE`,n}let a=new e({...n,objectMode:n?.objectMode??!0}),o=t;return Yf(a,Jf(typeof o==`string`?[o]:o)),a}static isDisturbed(e){return e._didRead||(e._destroyed||e._errored!==null)&&!e._endEmitted}static isReadable(e){if(typeof e!=`object`||!e)return null;let t=e;return typeof t.read==`function`?t.destroyed||t._destroyed||t.readableEnded||t._endEmitted?!1:t.readable!==!1:null}static fromWeb(t,n){return new e({...n,stream:t})}static toWeb(e){return e._webStream}static wrap(t,n){return new e({objectMode:t.readableObjectMode??t.objectMode??!0,...n,destroy(e,n){typeof t.destroy==`function`&&t.destroy(e??void 0),n(e)}}).wrap(t)}push(e,t){if(this._destroyed)return!1;if(this._pushMode=!0,e!==null&&typeof e==`string`&&!this._objectMode){let n=jf(e,t||`utf8`);n.toString=Uf,e=n}if(this._ended&&e!==null){let e=Error(`stream.push() after EOF`);return e.code=`ERR_STREAM_PUSH_AFTER_EOF`,K(()=>this.emit(`error`,e)),!1}if(e===null)return this._ended?!1:(this._ended=!0,this._buf.length===0&&K(()=>this._emitEndOnce()),!1);if(!this._objectMode&&(typeof e==`string`?e.length:e?.byteLength??e?.length??0)===0)return!0;if(this._flowing)return this._buf.length>0?(this._buf.push(e),this._objectMode?this._buf.length<this._highWaterMark:this._buf.byteSize<this._highWaterMark):(this._didRead=!0,this.emit(`data`,this._applyEncoding(e)),this._flowing?(this._hasReadImpl&&!this._ended&&K(()=>{this._flowing&&!this._ended&&!this._destroyed&&(this._callRead(this._highWaterMark),this._ended&&this._buf.length===0&&this._emitEndOnce())}),!0):!1);{let t=this._buf.length===0;return this._buf.push(e),t&&K(()=>this.emit(`readable`)),this._objectMode?this._buf.length<this._highWaterMark:this._buf.byteSize<this._highWaterMark}}_emitEndOnce(){if(this._endEmitted||this._destroyed||this._buf.length>0)return;let e=this._flushDecoder();e&&this.emit(`data`,e),this._endEmitted=!0,this.emit(`end`),this._autoDestroy&&this.destroy()}unshift(e,t){if(this._destroyed)return;if(e===null){this._ended||(this._ended=!0,this._buf.length===0&&K(()=>this._emitEndOnce()));return}if(this._endEmitted){let e=Error(`stream.unshift() after end event`);e.code=`ERR_STREAM_UNSHIFT_AFTER_END_EVENT`,K(()=>this.emit(`error`,e));return}if(typeof e==`string`&&!this._objectMode){let n=jf(e,t||`utf8`);n.toString=Uf,e=n}let n=this._buf.length===0;this._buf.unshift(e),this._flowing?K(()=>{for(;this._buf.length>0&&this._flowing;){let e=this._buf.shift();this._didRead=!0,this.emit(`data`,this._applyEncoding(e))}this._ended&&this._buf.length===0&&this._emitEndOnce()}):n&&K(()=>this.emit(`readable`))}_callRead(e){try{this._read(e)}catch(e){let t=e instanceof Error?e:Error(String(e));this._internalDestroy=!0,this.destroy(t)}}read(e){this._didRead=!0;let t;if(e!=null){if(t=parseInt(e,10),isNaN(t))t=void 0;else if(t<=0){if(t===0&&!this._ended&&!this._destroyed&&this._constructed){let e=this._objectMode?this._buf.length:this._buf.byteSize;(e<this._highWaterMark||e===0)&&this._callRead(this._highWaterMark)}return null}}if(this._buf.length===0)return!this._ended&&!this._destroyed&&this._constructed&&this._callRead(this._highWaterMark),null;if(this._objectMode){let e=this._buf.shift();return this._ended&&this._buf.length===0&&K(()=>this._emitEndOnce()),this._hasReadImpl&&!this._ended&&!this._destroyed&&this._constructed&&this._buf.length<this._highWaterMark&&K(()=>{!this._ended&&!this._destroyed&&this._callRead(this._highWaterMark)}),e}let n;if(t==null)n=this._applyEncoding(this._buf.consumeAll());else if(this._buf.byteSize<t)if(this._ended)n=this._applyEncoding(this._buf.consumeAll());else return this._hasReadImpl&&this._constructed&&this._callRead(Math.max(t,this._highWaterMark)),null;else n=this._applyEncoding(this._buf.consumeBytes(t));return this._hasReadImpl&&!this._ended&&!this._destroyed&&this._buf.byteSize<this._highWaterMark&&K(()=>{!this._ended&&!this._destroyed&&this._callRead(this._highWaterMark)}),this._ended&&this._buf.length===0&&K(()=>this._emitEndOnce()),!this._flowing&&this._buf.length>0&&K(()=>this.emit(`readable`)),n}_flushDecoder(){if(!this._decoder)return null;let e=this._decoder.decode(new Uint8Array,{stream:!1});return this._decoder=null,e||null}setEncoding(e){return this._encoding=e,this._decoder=Ut(e),this}_applyEncoding(e){return this._encoding&&e instanceof Uint8Array?(this._decoder||=Ut(this._encoding),this._decoder.decode(e,{stream:!0})):e}wrap(e){let t=!1;return e.on(`data`,n=>{this.push(n)||(e.pause(),t=!0)}),e.on(`end`,()=>this.push(null)),e.on(`error`,e=>this.destroy(e)),e.on(`close`,()=>this.destroy()),this._hasReadImpl=!0,this._read=()=>{t&&(t=!1,e.resume())},this}pause(){return this._flowing?(this._flowing=!1,this.emit(`pause`)):this._hasFlowed=!0,this}resume(){return this._flowing||(this._flowing=!0,this._hasFlowed=!0,this._resumeScheduled||(this._resumeScheduled=!0,K(()=>{this._resumeScheduled=!1,this.emit(`resume`)}))),this._buf.length>0?K(()=>{for(;this._buf.length>0&&this._flowing;){let e=this._buf.shift();this._didRead=!0,this.emit(`data`,this._applyEncoding(e))}if(this._ended&&this._buf.length===0&&this._emitEndOnce(),this._flowing&&this._buf.length===0&&this._webStreamMode&&!this._pushMode&&!this._ended&&!this._destroyed&&this._startReading(),this._hasReadImpl&&this._flowing&&!this._ended&&!this._destroyed&&this._constructed){let e=this._objectMode?this._buf.length:this._buf.byteSize;(e<this._highWaterMark||e===0)&&this._callRead(this._highWaterMark)}}):this._ended&&this._buf.length===0?K(()=>this._emitEndOnce()):this._webStreamMode&&!this._pushMode?this._startReading():this._hasReadImpl&&K(()=>{this._flowing&&!this._ended&&!this._destroyed&&this._constructed&&(this._callRead(this._highWaterMark),this._ended&&this._buf.length===0&&this._emitEndOnce())}),this}on(e,t){return super.on(e,t),e===`data`?this.resume():e===`readable`&&(this._hasFlowed=!0,this._flowing=!1,(this._buf.length>0||this._ended)&&K(()=>this.emit(`readable`))),this}isPaused(){return this.readableFlowing===!1}pipe(e,t){return this._pipes.pipe(e,t)}unpipe(e){return this._pipes.unpipe(e),this}destroy(e){if(this._destroyed)return this;if(this._destroyed=!0,this._readableOverride=void 0,this.unpipe(),this._reader){let e=this._reader;this._reader=null,e.cancel().catch(()=>{}).finally(()=>{try{e.releaseLock()}catch{}})}let t=e=>{let t=e||null;t&&(this._errored=t),this._closed=!0;let n=()=>{t&&this.emit(`error`,t),this._emitClose&&this.emit(`close`)},r=this._endEmitted||this._internalDestroy;this._internalDestroy=!1,zf()&&!this._hasDestroyHook()&&r?n():K(n)};if(this._hasDestroyHook())try{this._destroy(e??null,t)}catch(e){t(e instanceof Error?e:Error(String(e)))}else t(e);return this}_destroy(e,t){t(e)}_undestroy(){this._destroyed=!1,this._closed=!1,this._errored=null}_hasDestroyHook(){return Object.prototype.hasOwnProperty.call(this,`_destroy`)||Object.getPrototypeOf(this)._destroy!==e.prototype._destroy}get _webStream(){if(this._stream)return this._stream;let e=this,t=!1,n=new ReadableStream({pull(n){return new Promise((r,i)=>{if(t)return r();let a=()=>{if(e._destroyed){if(e._errored){t=!0;try{n.error(e._errored)}catch{}return i(e._errored)}t=!0;try{n.close()}catch{}return r()}let o=e.read();if(o!==null){try{n.enqueue(o)}catch{}return r()}if(e._endEmitted){t=!0;try{n.close()}catch{}return r()}let s=()=>{d(),a()},c=()=>{d(),t=!0;try{n.close()}catch{}r()},l=e=>{d(),t=!0;try{n.error(e)}catch{}i(e)},u=()=>{if(d(),!t){t=!0;try{n.close()}catch{}}r()},d=()=>{e.off(`readable`,s),e.off(`end`,c),e.off(`error`,l),e.off(`close`,u)};e.once(`readable`,s),e.once(`end`,c),e.once(`error`,l),e.once(`close`,u)};a()})},cancel(){e.destroy()}});return this._stream=n,n}get readable(){return this._readableOverride===void 0?!this._destroyed&&!this._endEmitted:this._readableOverride}set readable(e){this._readableOverride=e}get readableEnded(){return this._endEmitted}get readableLength(){return this._objectMode?this._buf.length:this._buf.byteSize}get destroyed(){return this._destroyed}set destroyed(e){this._destroyed=e}get errored(){return this._errored}get closed(){return this._closed}get readableFlowing(){return this._flowing?!0:this._hasFlowed?!1:null}set readableFlowing(e){e===!0?(this._flowing=!0,this._hasFlowed=!0):e===!1?(this._flowing=!1,this._hasFlowed=!0):(this._flowing=!1,this._hasFlowed=!1)}_setReadableFlowing(e){this.readableFlowing=e}get readableAborted(){return this._readableOverride===!1?!1:(this._destroyed||!!this._errored)&&!this._endEmitted}get readableDidRead(){return this._didRead}get readableEncoding(){return this._encoding}get readableObjectMode(){return this._objectMode}get readableHighWaterMark(){return this._highWaterMark}get readableBuffer(){return this._buf.toArray()}_releaseReader(){if(this._reader){let e=this._reader;this._reader=null;try{e.releaseLock()}catch{}}}async _startReading(){if(!(this._reading||this._destroyed||!this._flowing)){this._reading=!0;try{for(this._reader||=this._stream.getReader();this._flowing&&!this._destroyed&&!this._pushMode;){let{done:e,value:t}=await this._reader.read();if(this._pushMode){this._releaseReader();break}if(e){this._ended=!0,this._buf.length===0&&K(()=>this._emitEndOnce()),this._releaseReader();break}if(t!==void 0){let e=this._buf.length===0;for(this._buf.push(t),e&&K(()=>this.emit(`readable`));this._buf.length>0&&this._flowing;){let e=this._buf.shift();this._didRead=!0,this.emit(`data`,this._applyEncoding(e))}if(!this._flowing)break}}}catch(e){this.emit(`error`,e),this._releaseReader()}finally{this._reading=!1}}}async*[Symbol.asyncIterator](){this._asyncIterState||=this._initAsyncIterState();let e=this._asyncIterState;e.activeCount++;try{for(;;){if(e.streamError)throw e.streamError;if(e.dataQueueIndex<e.dataQueue.length){let t=e.dataQueue[e.dataQueueIndex];e.dataQueue[e.dataQueueIndex]=void 0,e.dataQueueIndex++,e.queuedSize-=this._chunkSizeForBackpressure(t),e.dataQueueIndex>=1024&&e.dataQueueIndex*2>=e.dataQueue.length&&(e.dataQueue.splice(0,e.dataQueueIndex),e.dataQueueIndex=0),this._maybeResumeIterState(e),yield t;continue}if(e.done)break;let t=await new Promise((t,n)=>{e.resolverQueue.push({resolve:t,reject:n})});if(t===null)break;yield t}}finally{e.activeCount--,e.activeCount===0&&this._teardownAsyncIterState(),this._destroyed||this.destroy()}}_chunkSizeForBackpressure(e){return this._objectMode?1:e instanceof Uint8Array?e.byteLength:typeof e==`string`?e.length:1}_maybeResumeIterState(e){e.pausedByIterator&&e.queuedSize<this._highWaterMark&&!e.done&&!this._destroyed&&(e.pausedByIterator=!1,this.resume())}_initAsyncIterState(){let e=this._highWaterMark,t={dataQueue:[],dataQueueIndex:0,queuedSize:0,resolverQueue:[],done:!1,streamError:null,activeCount:0,listenersAttached:!1,pausedByIterator:!1,dataHandler:null,doneHandler:null,errorHandler:null};for(t.dataHandler=n=>{if(t.resolverQueue.length>0){let{resolve:e}=t.resolverQueue.shift();e(n);return}t.dataQueue.push(n),t.queuedSize+=this._chunkSizeForBackpressure(n),!t.pausedByIterator&&t.queuedSize>=e&&(t.pausedByIterator=!0,this.pause())},t.doneHandler=()=>{t.done=!0;for(let{resolve:e}of t.resolverQueue)e(null);t.resolverQueue.length=0},t.errorHandler=e=>{t.done=!0,t.streamError=e;for(let{reject:n}of t.resolverQueue)n(e);t.resolverQueue.length=0};this._buf.length>0;){let e=this._applyEncoding(this._buf.shift());t.dataQueue.push(e),t.queuedSize+=this._chunkSizeForBackpressure(e)}if(this._ended){let e=this._flushDecoder();e&&(t.dataQueue.push(e),t.queuedSize+=this._chunkSizeForBackpressure(e)),t.done=!0}else this.on(`data`,t.dataHandler),this.on(`end`,t.doneHandler),this.on(`error`,t.errorHandler),this.on(`close`,t.doneHandler),t.listenersAttached=!0,this.resume();return t}_teardownAsyncIterState(){let e=this._asyncIterState;e&&(e.listenersAttached&&(this.off(`data`,e.dataHandler),this.off(`end`,e.doneHandler),this.off(`error`,e.errorHandler),this.off(`close`,e.doneHandler)),this._asyncIterState=null)}[Symbol.dispose](){this._destroyed||this.destroy()}async[Symbol.asyncDispose](){let e=!this._destroyed;return e&&this.destroy(),new Promise((t,n)=>{let r=()=>{e||this._endEmitted?t():n(Error(`Premature close`))};this._closed?r():this.once(`close`,r)})}iterator(e){if(e?.destroyOnReturn??!0)return this[Symbol.asyncIterator]();let t=this,n=null,r=null,i=!1,a=null,o=()=>{if(!n)return;let e=t.read();if(e!==null){let t=n;n=null,r=null,t({done:!1,value:e})}},s=()=>{o()},c=()=>{if(i=!0,n){let e=n;n=null,r=null,e({done:!0,value:void 0})}},l=e=>{if(i=!0,a=e,r){let t=r;n=null,r=null,t(e)}};t.on(`readable`,s),t.on(`end`,c),t.on(`error`,l);let u=()=>{t.off(`readable`,s),t.off(`end`,c),t.off(`error`,l)};return{next:async()=>{if(a)throw a;let e=t.read();return e===null?i?(u(),{done:!0,value:void 0}):new Promise((e,t)=>{n=e,r=t,o()}):{done:!1,value:e}},return:async e=>(u(),{done:!0,value:e}),throw:async e=>(u(),t.destroy(e),{done:!0,value:void 0}),[Symbol.asyncIterator](){return this}}}map(t,n){let i=n?.signal;Wf(i);let a=n?.concurrency??1,o=new AbortController,s=o.signal,c=new e({objectMode:!0});return Yf(c,(async function*(e){try{yield*qf(e,e=>t(e,{signal:s}),a,i)}finally{o.abort()}})(this)),c.once(`close`,()=>{this.destroyed||this.destroy()}),i&&i.addEventListener(`abort`,()=>{c.destroy(r())},{once:!0}),c}filter(t,n){let i=n?.signal;Wf(i);let a=n?.concurrency??1,o=new AbortController,s=o.signal,c=new e({objectMode:!0}),l=Symbol(`skip`);return Yf(c,(async function*(e){try{if(a<=1)for await(let n of e)J(i),await t(n,{signal:s})&&(yield n);else for await(let n of qf(e,async e=>await t(e,{signal:s})?e:l,a,i))n!==l&&(yield n)}finally{o.abort()}})(this)),c.once(`close`,()=>{this.destroyed||this.destroy()}),i&&i.addEventListener(`abort`,()=>{c.destroy(r())},{once:!0}),c}async forEach(e,t){let n=t?.signal;Wf(n);let r=t?.concurrency??1,i=new AbortController,a=i.signal;try{if(r<=1)for await(let t of this)J(n),await e(t,{signal:a});else for await(let t of qf(this,async t=>{await e(t,{signal:a})},r,n));}finally{i.abort()}}async toArray(e){let t=e?.signal;Wf(t);let n=[];for await(let e of this)J(t),n.push(e);return n}async some(e,t){let n=t?.signal;Wf(n);let r=t?.concurrency??1,i=new AbortController,a=i.signal;try{if(r<=1){for await(let t of this)if(J(n),await e(t,{signal:a}))return this.destroy(),!0}else for await(let t of qf(this,t=>e(t,{signal:a}),r,n))if(t)return this.destroy(),!0;return!1}finally{i.abort()}}async find(e,t){let n=t?.signal;Wf(n);let r=t?.concurrency??1,i=new AbortController,a=i.signal;try{if(r<=1){for await(let t of this)if(J(n),await e(t,{signal:a}))return this.destroy(),t}else for await(let t of qf(this,async t=>({chunk:t,match:await e(t,{signal:a})}),r,n))if(t.match)return this.destroy(),t.chunk;return}finally{i.abort()}}async every(e,t){let n=t?.signal;Wf(n);let r=t?.concurrency??1,i=new AbortController,a=i.signal;try{if(r<=1){for await(let t of this)if(J(n),!await e(t,{signal:a}))return this.destroy(),!1}else for await(let t of qf(this,t=>e(t,{signal:a}),r,n))if(!t)return this.destroy(),!1;return!0}finally{i.abort()}}flatMap(t,n){let i=n?.signal;Wf(i);let a=n?.concurrency??1,o=new AbortController,s=o.signal,c=new e({objectMode:!0});return Yf(c,(async function*(e){try{if(a<=1)for await(let n of e){J(i);let e=await t(n,{signal:s});if(e&&typeof e[Symbol.asyncIterator]==`function`)for await(let t of e)yield t;else if(e&&typeof e[Symbol.iterator]==`function`)for(let t of e)yield t}else for await(let n of qf(e,async e=>{let n=await t(e,{signal:s}),r=[];if(n&&typeof n[Symbol.asyncIterator]==`function`)for await(let e of n)r.push(e);else if(n&&typeof n[Symbol.iterator]==`function`)for(let e of n)r.push(e);return r},a,i))for(let e of n)yield e}finally{o.abort()}})(this)),c.once(`close`,()=>{this.destroyed||this.destroy()}),i&&i.addEventListener(`abort`,()=>{c.destroy(r())},{once:!0}),c}drop(t,n){let i=n?.signal;Wf(i),Gf(t,`limit`);let a=new e({objectMode:!0});return Yf(a,(async function*(e){let n=0;for await(let r of e)J(i),n>=t&&(yield r),n++})(this)),a.once(`close`,()=>{this.destroyed||this.destroy()}),i&&i.addEventListener(`abort`,()=>{a.destroy(r())},{once:!0}),a}take(t,n){let i=n?.signal;Wf(i),Gf(t,`limit`);let a=new e({objectMode:!0});return Yf(a,(async function*(e){let n=0;for await(let r of e){if(J(i),n>=t)break;yield r,n++}})(this)),a.once(`close`,()=>{this.destroyed||this.destroy()}),i&&i.addEventListener(`abort`,()=>{a.destroy(r())},{once:!0}),a}async reduce(e,t,n){let r=n?.signal;Wf(r);let i=new AbortController,a=i.signal,o,s=arguments.length>=2,c=!0;try{for await(let n of this){if(J(r),c&&!s){o=n,c=!1;continue}c&&=(o=t,!1),o=await e(o,n,{signal:a})}if(c&&!s)throw TypeError(`Reduce of an empty stream requires an initial value`);return c?t:o}finally{i.abort()}}asIndexedPairs(e){let t=0;return this.map(e=>[t++,e],e)}compose(t,n){if(typeof t==`function`){let n=new e({objectMode:!0});Yf(n,t(this)),n.once(`close`,()=>{this.destroyed||this.destroy()});let r=Vf();return r?r(n):n}let r=t;if(this.pipe(r),r._readable&&r._writable)return r;if(r._readable){let e=Vf();return e?e(r._readable):r._readable}let i=Vf();return i?i(r):r}};q.prototype.addListener=q.prototype.on,q.prototype._read=function(e){let t=Error(`The _read() method is not implemented`);throw t.code=`ERR_METHOD_NOT_IMPLEMENTED`,t};function Wf(e){if(e!==void 0&&!(e instanceof AbortSignal))throw TypeError(`options.signal must be an AbortSignal`)}function J(e){if(e?.aborted)throw r(e.reason)}function Gf(e,t){if(typeof e!=`number`||Number.isNaN(e)||e<0||Math.floor(e)!==e)throw RangeError(`The value of "${t}" must be a non-negative integer. Received ${e}`)}let Kf=Symbol(`EOF`);async function*qf(e,t,n,r){if(n<=1){for await(let n of e)J(r),yield await t(n);return}let i=[],a=null,o=!1,s=e[Symbol.asyncIterator]();async function c(){let e=await s.next();return e.done?(o=!0,Kf):(J(r),t(e.value))}function l(){i.push(c().catch(e=>{throw a=e,e}))}try{for(;i.length<n&&!o&&!a;)J(r),l();for(;i.length>0;){J(r);let e=await i.shift();if(a)throw a;e!==Kf&&(yield e,!o&&!a&&l())}}finally{o||await s.return?.()}}function Jf(e){return e&&typeof e[Symbol.asyncIterator]==`function`?e:(async function*(){for(let t of e)yield t})()}function Yf(e,t){let n=t[Symbol.asyncIterator](),r=!1,i=!1;e._hasReadImpl=!0,e._read=function(){r||i||(r=!0,(async()=>{try{if(e.destroyed){if(!i){i=!0;let e=n.return?.();e&&typeof e.then==`function`&&e.catch(()=>{})}return}let{value:t,done:r}=await n.next();if(r){i=!0,e.push(null);return}e.push(t)}catch(t){e.destroy(t)}finally{r=!1}})())},e._pushMode=!0}function Xf(e,t,n){return{chunk:typeof e==`function`?void 0:e,encoding:typeof t==`string`?t:void 0,cb:typeof e==`function`?e:typeof t==`function`?t:n}}function Zf(e){return $t(this,e??`utf-8`)}var Y=class e extends W{static[Symbol.hasInstance](t){return typeof t!=`object`||!t?!1:Object.prototype.isPrototypeOf.call(e.prototype,t)?!0:t.__excelts_stream===!0&&typeof t.write==`function`&&typeof t.end==`function`&&typeof t.on==`function`&&`writableFinished`in t}constructor(e){if(super(),this._stream=null,this._writer=null,this._ended=!1,this._finished=!1,this._syncFinish=!1,this._destroyed=!1,this._errored=null,this._errorEmitted=!1,this._closed=!1,this._writableLength=0,this._needDrain=!1,this._corked=0,this._corkedChunks=[],this._defaultEncoding=`utf8`,this._ownsStream=!1,this._directWrite=!1,this._writeQueue=[],this._writing=!1,this._pendingEnd=null,this._constructed=!0,this._resolvedWritev=null,this.__excelts_stream=!0,this._objectMode=e?.objectMode??!1,this._highWaterMark=e?.highWaterMark??Df(this._objectMode),this._autoDestroy=e?.autoDestroy??!0,this._emitClose=e?.emitClose??!0,this._decodeStrings=e?.decodeStrings??!0,this._defaultEncoding=e?.defaultEncoding??`utf8`,e?.stream)this._stream=e.stream,this._ownsStream=!1,this._directWrite=!1;else{if(e?.write&&(this._writeFunc=e.write.bind(this)),e?.final)this._finalFunc=e.final.bind(this);else{let e=this._getSubclassFinal();e&&(this._finalFunc=e)}if(e?.destroy&&(this._destroy=e.destroy.bind(this)),e?.construct&&(this._constructFunc=e.construct.bind(this)),e?.writev&&(this._writevFunc=e.writev.bind(this)),this._ownsStream=!0,this._writeFunc)this._directWrite=!0,this._stream=null;else{let t=e?.construct||this._hasSubclassConstruct(),n=this._getSubclassWrite();t&&n?(this._writeFunc=n,this._directWrite=!0,this._stream=null):(this._directWrite=!1,this._stream=new WritableStream({write:async e=>{this._write&&await new Promise((t,n)=>{this._write(e,`utf8`,e=>{e?n(e):t()})})},close:async()=>{if(this._finalFunc){let e=await new Promise(e=>{this._finalFunc(t=>{e(t??null)})});if(e){this._errored=e,this._errorEmitted=!0,this.emit(`error`,e),this._autoDestroy&&this.destroy(e);return}}this._finished=!0,this.emit(`finish`),this._autoDestroy&&this.destroy()},abort:e=>{this.emit(`error`,e)}}))}}e?.signal&&this._setupAbortSignal(e.signal),this._resolvedWritev=this._writevFunc??this._getWritevHook(),this._maybeConstruct()}_maybeConstruct(){(this._constructFunc||this._hasSubclassConstruct())&&(this._constructed=!1,K(()=>{(this._constructFunc??this._construct.bind(this))(e=>{if(e){this.destroy(e);return}if(this._constructed=!0,this._directWrite&&this._writeQueue.length>0&&!this._writing)this._writing=!0,this._drainWriteQueue();else if(this._pendingEnd&&!this._writing){let{cb:e}=this._pendingEnd;this._pendingEnd=null,this._doFinish(e)}})}))}_hasSubclassConstruct(){let t=Object.getPrototypeOf(this);for(;t&&t!==e.prototype&&t!==Object.prototype;){if(Object.prototype.hasOwnProperty.call(t,`_construct`))return!0;t=Object.getPrototypeOf(t)}return!1}_getSubclassWrite(){let t=Object.getPrototypeOf(this);for(;t&&t!==e.prototype&&t!==Object.prototype;){if(Object.prototype.hasOwnProperty.call(t,`_write`))return t._write.bind(this);t=Object.getPrototypeOf(t)}return null}_getSubclassFinal(){let t=Object.getPrototypeOf(this);for(;t&&t!==e.prototype&&t!==Object.prototype;){if(Object.prototype.hasOwnProperty.call(t,`_final`))return t._final.bind(this);t=Object.getPrototypeOf(t)}return null}_getWritevHook(){let t=Object.getPrototypeOf(this);return t._writev&&t._writev!==e.prototype._writev?t._writev.bind(this):null}_setupAbortSignal(e){if(e.aborted){this.destroy(r(e.reason));return}let t=()=>{i(),this.destroy(r(e.reason))},n=()=>{i()},i=()=>{e.removeEventListener(`abort`,t),this.off(`close`,n),this.off(`finish`,n),this.off(`error`,n)};e.addEventListener(`abort`,t,{once:!0}),this.on(`close`,n),this.on(`finish`,n),this.on(`error`,n)}setDefaultEncoding(e){return jf(``,e),this._defaultEncoding=e,this}cork(){this._corked++}uncork(){if(this._corked>0&&this._corked--,this._corked===0){let e=this._corkedChunks;if(this._corkedChunks=[],e.length===0)return;for(let{chunk:t}of e)this._writableLength-=this._getChunkSize(t);let t=this._resolvedWritev;if(t&&e.length>1){let n=e.map(({chunk:e,encoding:t})=>({chunk:e,encoding:t})),r=n.reduce((e,{chunk:t})=>e+this._getChunkSize(t),0);this._writableLength+=r,this._writing=!0;try{t(n,t=>{if(this._writableLength-=r,this._writing=!1,t){this._destroyed||(this._errored=t,this.emit(`error`,t),this._autoDestroy&&this.destroy(t));for(let{callback:n}of e)n?.(t);return}this._needDrain&&this._writableLength<this._highWaterMark&&(this._needDrain=!1,K(()=>this.emit(`drain`)));for(let{callback:t}of e)t?.(null);this._drainWriteQueue()})}catch(t){this._writableLength-=r,this._writing=!1;let n=t instanceof Error?t:Error(String(t));this._destroyed||(this._errored=n,this.emit(`error`,n),this._autoDestroy&&this.destroy(n));for(let{callback:t}of e)t?.(n)}}else for(let{chunk:t,encoding:n,callback:r}of e)this._doWrite(t,n,r)}}write(e,t,n){if(e===null){let e=TypeError(`May not write null values to stream`);throw e.code=`ERR_STREAM_NULL_VALUES`,e}if(this._destroyed||this._ended){let e=this._destroyed&&!this._ended,r=Error(e?`Cannot call write after a stream was destroyed`:`write after end`);r.code=e?`ERR_STREAM_DESTROYED`:`ERR_STREAM_WRITE_AFTER_END`;let i=typeof t==`function`?t:n;return this._errored||=r,i&&K(()=>i(r)),!this._destroyed&&!this._errorEmitted&&(this._errorEmitted=!0,K(()=>this.emit(`error`,r))),!1}let r=typeof t==`string`?t:this._defaultEncoding,i=typeof t==`function`?t:n;if(this._corked>0){let t=this._normalizeWriteChunk(e,r);this._corkedChunks.push({chunk:t.chunk,encoding:t.encoding,callback:i});let n=this._getChunkSize(t.chunk,t.encoding);this._writableLength+=n;let a=this._writableLength<this._highWaterMark;return a||(this._needDrain=!0),a}let a=this._normalizeWriteChunk(e,r),o=this._doWrite(a.chunk,a.encoding,i);return o||(this._needDrain=!0),o}_doWrite(e,t,n){let r=this._getChunkSize(e,t);return this._writableLength+=r,this._directWrite?this._writing||!this._constructed?this._writeQueue.push({chunk:e,chunkSize:r,encoding:t,callback:n}):(this._writing=!0,this._callWriteFunc(e,r,t,n)):this._getWriter().write(e).then(()=>{this._writableLength-=r,this._needDrain&&this._writableLength<this._highWaterMark&&(this._needDrain=!1,K(()=>this.emit(`drain`))),n?.(null)}).catch(e=>{this._writableLength-=r,this._destroyed||(this._errored=e,this._errorEmitted=!0,this.emit(`error`,e),this._autoDestroy&&this.destroy(e)),n?.(e)}),this._writableLength<this._highWaterMark}_callWriteFunc(e,t,n,r){try{let i=this._objectMode?void 0:n,a=!1,o=!0;this._writeFunc(e,i,e=>{if(a){let e=Error(`Callback called multiple times`);e.code=`ERR_MULTIPLE_CALLBACK`,this.destroy(e);return}if(a=!0,e){if(this._writableLength-=t,this._destroyed?r?.(e):(this._errored=e,this._errorEmitted=!0,o?K(()=>{r?.(e),this.emit(`error`,e),this._autoDestroy&&this.destroy(e)}):(r?.(e),this.emit(`error`,e),this._autoDestroy&&this.destroy(e))),this._writing=!1,this._flushWriteQueueOnError(e),this._pendingEnd){let{cb:t}=this._pendingEnd;this._pendingEnd=null,t?.(e)}return}this._writableLength-=t,this._needDrain&&this._writableLength<this._highWaterMark&&(this._needDrain=!1,K(()=>this.emit(`drain`))),r?.(null),this._drainWriteQueue()}),o=!1}catch(e){this._writableLength-=t;let n=e instanceof Error?e:Error(String(e));if(this._destroyed||(this._errored=n,this.emit(`error`,n),this._autoDestroy&&this.destroy(n)),r?.(n),this._writing=!1,this._flushWriteQueueOnError(n),this._pendingEnd){let{cb:e}=this._pendingEnd;this._pendingEnd=null,e?.(n)}}}_drainWriteQueue(){if(this._writeQueue.length===0){if(this._writing=!1,this._pendingEnd){let{cb:e}=this._pendingEnd;this._pendingEnd=null,this._doFinish(e)}return}let e=this._resolvedWritev;if(e&&this._writeQueue.length>1){let t=this._writeQueue;this._writeQueue=[];let n=0,r=Array(t.length);for(let e=0;e<t.length;e++){let i=t[e];r[e]={chunk:i.chunk,encoding:i.encoding},n+=i.chunkSize}try{e(r,e=>{if(e){this._writableLength-=n,this._destroyed||(this._errored=e,this._errorEmitted=!0,this.emit(`error`,e));for(let n of t)n.callback?.(e);this._writing=!1,this._flushWriteQueueOnError(e);return}this._writableLength-=n,this._needDrain&&this._writableLength<this._highWaterMark&&(this._needDrain=!1,K(()=>this.emit(`drain`)));for(let e of t)e.callback?.(null);this._drainWriteQueue()})}catch(e){this._writableLength-=n,this._writing=!1;let r=e instanceof Error?e:Error(String(e));this._destroyed||(this._errored=r,this.emit(`error`,r));for(let e of t)e.callback?.(r)}}else{let e=this._writeQueue.shift();this._callWriteFunc(e.chunk,e.chunkSize,e.encoding,e.callback)}}_flushWriteQueueOnError(e){let t=this._writeQueue;this._writeQueue=[];for(let n of t)this._writableLength-=n.chunkSize,n.callback?.(e)}_doFinish(e){if(this._finalFunc)this._finalFunc(t=>{if(t){this._errorEmitted=!0,this.emit(`error`,t),e&&(this._pendingEnd={cb:e}),this._autoDestroy&&!this._destroyed&&this.destroy(t);return}let n=()=>{if(this._destroyed){e?.();return}this._finished=!0,this.emit(`prefinish`),e?.(),this.emit(`finish`),this._autoDestroy&&this.destroy()};this._syncFinish?(this._syncFinish=!1,n()):K(n)});else{let t=()=>{if(this._destroyed){e?.();return}this._finished=!0,this.emit(`prefinish`),e?.(),this.emit(`finish`),this._autoDestroy&&this.destroy()};zf()?t():K(t)}}_getChunkSize(e,t){return this._objectMode?1:e instanceof Uint8Array?e.byteLength:typeof e==`string`?$f(e,t):0}_normalizeWriteChunk(e,t){if(this._objectMode||typeof e!=`string`||!this._decodeStrings)return{chunk:e,encoding:t};let n=jf(e,t);return n.toString=Zf,{chunk:n,encoding:`buffer`}}end(e,t,n){if(this._ended){let{chunk:r,encoding:i,cb:a}=Xf(e,t,n);if(r!==void 0)return this.write(r,i??this._defaultEncoding,e=>{a?.(e??null)}),this;if(this._finished&&a){let e=Error(`Cannot call end after a stream was finished`);e.code=`ERR_STREAM_ALREADY_FINISHED`,K(()=>a(e))}else K(()=>a?.(null));return this}this._ended=!0,this._writableOverride=void 0;let{chunk:r,encoding:i,cb:a}=Xf(e,t,n);if(this._corked>0&&(this._corked=1,this.uncork()),this._directWrite){if(r!==void 0){let e=this._normalizeWriteChunk(r,i??this._defaultEncoding);this._doWrite(e.chunk,e.encoding)}if(this._errored){let e=this._errored;return K(()=>a?.(e)),this}return this._writing||this._writeQueue.length>0?this._pendingEnd={cb:a}:this._doFinish(a),this}return(async()=>{try{let e=this._getWriter();if(r!==void 0){let{chunk:t}=this._normalizeWriteChunk(r,i??this._defaultEncoding);await e.write(t)}if(await e.close(),this._writer===e){this._writer=null;try{e.releaseLock()}catch{}}this._ownsStream||(this._finished=!0,this.emit(`finish`),this._autoDestroy&&this.destroy()),a&&a()}catch(e){this.emit(`error`,e)}})(),this}destroy(e){if(this._destroyed)return this;if(this._destroyed=!0,this._writableOverride=void 0,e&&!this._errored&&(this._errored=e),this._writeQueue.length>0&&this._flushWriteQueueOnError(e??Error(`Cannot call write after a stream was destroyed`)),this._corkedChunks.length>0){let t=e??Error(`Cannot call write after a stream was destroyed`);for(let e of this._corkedChunks)e.callback?.(t);this._corkedChunks=[]}let t=this._pendingEnd?.cb;if(this._pendingEnd=null,this._writing=!1,this._writer){let t=this._writer;this._writer=null,t.abort(e).catch(()=>{}).finally(()=>{try{t.releaseLock()}catch{}})}let n=e=>{let n=e||null;n&&(this._errored=n),this._closed=!0;let r=()=>{n&&!this._errorEmitted&&(this._errorEmitted=!0,this.emit(`error`,n)),this._emitClose&&this.emit(`close`),t?.(n)};zf()&&!this._hasDestroyHook()&&this._finished?r():K(r)};if(this._hasDestroyHook())try{this._destroy(e??null,n)}catch(e){n(e instanceof Error?e:Error(String(e)))}else n(e);return this}_destroy(e,t){t(e)}_undestroy(){this._destroyed=!1,this._closed=!1,this._errored=null,this._errorEmitted=!1}_hasDestroyHook(){return Object.prototype.hasOwnProperty.call(this,`_destroy`)||Object.getPrototypeOf(this)._destroy!==e.prototype._destroy}[Symbol.dispose](){this._destroyed||this.destroy()}async[Symbol.asyncDispose](){let e=!this._destroyed;return e&&this.destroy(),new Promise((t,n)=>{let r=()=>{e||this._finished?t():n(Error(`Premature close`))};this._closed?r():this.once(`close`,r)})}get _webStream(){return this._stream||=new WritableStream({write:e=>new Promise((t,n)=>{let r=this._objectMode?void 0:this._defaultEncoding;this._writeFunc(e,r,e=>{e?n(e):t()})}),close:async()=>{this._finalFunc&&await new Promise((e,t)=>{this._finalFunc(n=>{n?t(n):e()})})},abort:e=>{this.emit(`error`,e)}}),this._stream}get writable(){return this._writableOverride===void 0?!this._destroyed&&!this._ended:this._writableOverride}set writable(e){this._writableOverride=e}get writableEnded(){return this._ended}get writableFinished(){return this._finished}get writableLength(){return this._writableLength}get destroyed(){return this._destroyed}set destroyed(e){this._destroyed=e}get errored(){return this._errored}get closed(){return this._closed}get writableNeedDrain(){return this._needDrain}get writableCorked(){return this._corked}get writableAborted(){return this._writableOverride===!1?!1:(this._destroyed||!!this._errored)&&!this._finished}get writableObjectMode(){return this._objectMode}get writableHighWaterMark(){return this._highWaterMark}get writableBuffer(){let e=this._corkedChunks.map(e=>e.chunk);for(let t of this._writeQueue)e.push(t.chunk);return e}pipe(){let e=new kf(`pipe`,`not readable`);e.code=`ERR_STREAM_CANNOT_PIPE`,K(()=>this.emit(`error`,e))}_getWriter(){return this._writer||=this._webStream.getWriter(),this._writer}static isDisturbed(e){return e&&e._readable instanceof q?q.isDisturbed(e._readable):q.isDisturbed(e)}static fromWeb(t,n){return new e({...n,stream:t})}static toWeb(e){return e._webStream}};Y.prototype._writev=null,Y.prototype._write=function(e,t,n){let r=Error(`The _write() method is not implemented`);throw r.code=`ERR_METHOD_NOT_IMPLEMENTED`,r};function Qf(e){return e instanceof Y?e:e?.getWriter?new Y({stream:e}):e}function $f(e,t){let n=(t??`utf8`).toLowerCase();return n===`ascii`||n===`latin1`||n===`binary`?e.length:n===`utf16le`||n===`utf-16le`||n===`ucs2`?e.length*2:ep(e)}function ep(e){let t=0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);r<=127?t+=1:r<=2047?t+=2:r>=55296&&r<=56319?(t+=4,n++):t+=3}return t}var tp=class e extends W{static[Symbol.hasInstance](t){return typeof t!=`object`||!t?!1:Object.prototype.isPrototypeOf.call(e.prototype,t)?!0:t.__excelts_stream===!0&&typeof t.read==`function`&&typeof t.pipe==`function`&&typeof t.write==`function`&&typeof t.end==`function`&&typeof t.on==`function`&&`readableFlowing`in t&&`writableFinished`in t}static isDisturbed(e){return e&&e._readable instanceof q?q.isDisturbed(e._readable):q.isDisturbed(e)}static from(t){if(t instanceof e)return t;let n=(e,t)=>{let n=new Y({objectMode:t.readableObjectMode,write(e,n,r){t.push(e),r()},final(e){t.push(null),e()}}),r=Ff(e,`error`,e=>{t.emit(`error`,e)});Ff(e,`end`,r,{once:!0}),Ff(e,`close`,r,{once:!0}),Ff(n,`finish`,r,{once:!0}),e.pipe(n)};if(t instanceof Promise){let r=new e({objectMode:!0});return t.then(t=>{n(e.from(t),r)}).catch(e=>{r.destroy(e instanceof Error?e:Error(String(e)))}),r}if(typeof t==`string`){let r=q.from([t]),i=new e({objectMode:!0});return n(r,i),i}if(typeof Blob<`u`&&t instanceof Blob){let r=q.fromWeb(t.stream()),i=new e;return n(r,i),i}if(typeof t==`object`&&t&&`readable`in t&&`writable`in t){let r=t,i=new e({readableObjectMode:r.readable?.readableObjectMode,writableObjectMode:r.writable?.writableObjectMode,write:r.writable?(e,t,n)=>{r.writable.write(e,t,n)}:void 0,final:r.writable?e=>{r.writable.end(e)}:void 0,destroy:(e,t)=>{r.readable&&!r.readable.destroyed&&r.readable.destroy(e??void 0),r.writable&&!r.writable.destroyed&&r.writable.destroy(e??void 0),t(e)}});return r.readable&&n(r.readable,i),i}if(typeof t==`object`&&t&&typeof t.getReader==`function`&&typeof t.cancel==`function`){let r=q.fromWeb(t),i=new e({objectMode:r.readableObjectMode});return n(r,i),i}if(typeof t==`object`&&t&&typeof t.getWriter==`function`&&typeof t.close==`function`){let n=Y.fromWeb(t);return new e({objectMode:n.writableObjectMode,write(e,t,r){n.write(e,t,r)},final(e){n.end(e)},destroy(e,t){n.destroyed||n.destroy(e??void 0),t(e)}})}if(typeof t==`object`&&t&&(Symbol.asyncIterator in t||Symbol.iterator in t)){let r=q.from(t),i=new e({objectMode:r.readableObjectMode});return n(r,i),i}if(t instanceof q){let r=new e({objectMode:t.readableObjectMode});return n(t,r),r}if(t instanceof Y)return new e({objectMode:t.writableObjectMode,write(e,n,r){t.write(e,n,r)},final(e){t.end(e)}});throw new Af(`Duplex-compatible source`,typeof t)}static fromWeb(t,n){let r=new e(n),i=new q({stream:t.readable,objectMode:r.readableObjectMode}),a=new Y({stream:t.writable,objectMode:r.writableObjectMode});return r._sideForwardingCleanup&&=(r._sideForwardingCleanup(),null),r._readable=i,r._writable=a,r._setupSideForwarding(),r}static toWeb(e){return{readable:q.toWeb(e._readable),writable:Y.toWeb(e._writable)}}_getSubclassHook(t){let n=Object.getPrototypeOf(this);for(;n&&n!==e.prototype&&n!==Object.prototype;){if(Object.prototype.hasOwnProperty.call(n,t)){let e=this[t];return typeof e==`function`?e.bind(this):void 0}n=Object.getPrototypeOf(n)}}constructor(e){super(),this._dataForwardingSetup=!1,this._destroyed=!1,this._errored=null,this._closed=!1,this._sideForwardingCleanup=null,this._constructed=!0,this.__excelts_stream=!0,this.allowHalfOpen=e?.allowHalfOpen??!0,this._emitClose=e?.emitClose??!0,this._autoDestroy=e?.autoDestroy??!0;let t=e?.objectMode??!1,n=e?.readableObjectMode??t,r=e?.writableObjectMode??t,i=e!=null&&Object.prototype.hasOwnProperty.call(e,`highWaterMark`),a=i?e.highWaterMark:e?.readableHighWaterMark,o=i?e.highWaterMark:e?.writableHighWaterMark;e?.destroy&&(this._destroy=e.destroy.bind(this)),e?.construct&&(this._constructFunc=e.construct.bind(this));let s,c,l=this._hasConstructHook(),u=e?.read?e.read.bind(this):this._getSubclassHook(`_read`),d=e?.write?e.write.bind(this):this._getSubclassHook(`_write`),f=e?.writev?e.writev.bind(this):this._getSubclassHook(`_writev`),p=e?.final?e.final.bind(this):this._getSubclassHook(`_final`);this._readable=new q({highWaterMark:a,objectMode:n,read:u,encoding:e?.encoding,emitClose:!1,autoDestroy:!1,construct:l?e=>{s=e}:void 0}),this._writable=new Y({highWaterMark:o,objectMode:r,write:d,writev:f,final:p,decodeStrings:e?.decodeStrings,defaultEncoding:e?.defaultEncoding,emitClose:!1,autoDestroy:!1,construct:l?e=>{c=e}:void 0});let m=()=>{};this._readable.on(`error`,m),this._writable.on(`error`,m),this._setupSideForwarding(),e?.signal&&this._setupAbortSignal(e.signal),l&&(this._constructed=!1,K(()=>{(this._constructFunc??this._construct.bind(this))(e=>{if(e){s?.(e),c?.(e),this.destroy(e);return}this._constructed=!0,s?.(),c?.()})}))}_setupAbortSignal(e){if(e.aborted){this.destroy(r(e.reason));return}let t=()=>{this.destroy(r(e.reason))};e.addEventListener(`abort`,t,{once:!0}),this.once(`close`,()=>{e.removeEventListener(`abort`,t)})}_setupSideForwarding(){this._sideForwardingCleanup&&=(this._sideForwardingCleanup(),null),this._readable._pipes?.setSource(this);let e=If(),t=!1,n=e=>{t||(t=!0,this.emit(`error`,e))},r=!1,i=!1,a=()=>{this._autoDestroy&&r&&i&&!this._destroyed&&this.destroy()};e.once(this._readable,`end`,()=>{this.emit(`end`),r=!0,this.allowHalfOpen||this._writable.end(),a()}),e.add(this._readable,`error`,n);let o=()=>{this.emit(`readable`)};W.prototype.on.call(this._readable,`readable`,o),e.add(this._readable,`pause`,()=>this.emit(`pause`)),e.add(this._readable,`resume`,()=>this.emit(`resume`)),e.add(this._writable,`error`,n),e.once(this._writable,`prefinish`,()=>this.emit(`prefinish`)),e.once(this._writable,`finish`,()=>{this.emit(`finish`),i=!0,a()}),e.add(this._writable,`drain`,()=>this.emit(`drain`)),e.add(this._writable,`pipe`,e=>this.emit(`pipe`,e)),e.add(this._writable,`unpipe`,e=>this.emit(`unpipe`,e)),e.once(this._writable,`finish`,()=>{!this.allowHalfOpen&&!this._readable.readableEnded&&this._readable.push(null)});let s=this._readable.destroy.bind(this._readable);this._readable.destroy=e=>{let t=s(e);return this._destroyed||this.destroy(e),t},this._sideForwardingCleanup=()=>{e.cleanup(),this._readable.off(`readable`,o),this._readable.destroy=s}}on(e,t){return super.on(e,t),e===`data`&&!this._dataForwardingSetup?(this._dataForwardingSetup=!0,this._readable.on(`data`,e=>this.emit(`data`,e))):e===`readable`&&this._readable._setReadableFlowing(!1),this}push(e,t){return this._readable.push(e,t)}unshift(e,t){this._readable.unshift(e,t)}read(e){return this._readable.read(e)}write(e,t,n){let r=typeof t==`string`?t:void 0,i=typeof t==`function`?t:n;return r===void 0?this._writable.write(e,i):this._writable.write(e,r,i)}end(e,t,n){let{chunk:r,encoding:i,cb:a}=Xf(e,t,n);if(this._writable.writableEnded){if(r!==void 0)return this.write(r,i,e=>{a?.(e??null)}),this;if(this.writableFinished&&a){let e=Error(`Cannot call end after a stream was finished`);e.code=`ERR_STREAM_ALREADY_FINISHED`,K(()=>a(e))}else a&&K(()=>a(null));return this}if(a){let e=!1,t=()=>{e||(e=!0,a())};this.once(`finish`,t),this.once(`close`,t)}if(r!==void 0){let e=e=>{e&&!this.destroyed&&this.destroy(e)};i===void 0?this._writable.write(r,e):this._writable.write(r,i,e)}return this._writable.end(),this}cork(){this._writable.cork()}uncork(){this._writable.uncork()}setEncoding(e){return this._readable.setEncoding(e),this}setDefaultEncoding(e){return this._writable.setDefaultEncoding(e),this}pipe(e,t){return this._readable.pipe(e,t),e}unpipe(e){return this._readable.unpipe(e),this}pause(){return this._readable.pause(),this}resume(){return this._readable.resume(),this}isPaused(){return this._readable.isPaused()}destroy(e){if(this._destroyed)return this;this._destroyed=!0,this._sideForwardingCleanup&&=(this._sideForwardingCleanup(),null);let t=e=>{let t=e||null;t&&(this._errored=t),this._closed=!0,this._readable.destroy(),this._writable.destroy();let n=()=>{t&&this.emit(`error`,t),this._emitClose&&this.emit(`close`)};zf()&&!this._hasDestroyHook()&&this.readableEnded&&this.writableFinished?n():K(n)};if(this._hasDestroyHook())try{this._destroy(e??null,t)}catch(e){t(e instanceof Error?e:Error(String(e)))}else t(e);return this}_destroy(e,t){t(e)}_undestroy(){this._readable._undestroy(),this._writable._undestroy(),this._destroyed=!1,this._closed=!1,this._errored=null,this._setupSideForwarding()}_hasDestroyHook(){return Object.prototype.hasOwnProperty.call(this,`_destroy`)||Object.getPrototypeOf(this)._destroy!==e.prototype._destroy}_hasConstructHook(){if(this._constructFunc)return!0;let t=Object.getPrototypeOf(this);for(;t&&t!==e.prototype&&t!==Object.prototype;){if(Object.prototype.hasOwnProperty.call(t,`_construct`))return!0;t=Object.getPrototypeOf(t)}return!1}[Symbol.dispose](){this._destroyed||this.destroy()}async[Symbol.asyncDispose](){let e=!this._destroyed;return e&&this.destroy(),new Promise((t,n)=>{let r=()=>{e||this.writableFinished?t():n(Error(`Premature close`))};this._closed?r():this.once(`close`,r)})}get readable(){return this._readable.readable}set readable(e){this._readable.readable=e}get writable(){return this._writable.writable}set writable(e){this._writable.writable=e}get readableEnded(){return this._readable.readableEnded}get writableEnded(){return this._writable.writableEnded}get writableFinished(){return this._writable.writableFinished}get readableLength(){return this._readable.readableLength}get writableLength(){return this._writable.writableLength}get readableHighWaterMark(){return this._readable.readableHighWaterMark}get writableHighWaterMark(){return this._writable.writableHighWaterMark}get destroyed(){return this._destroyed}set destroyed(e){this._destroyed=e,this._readable.destroyed=e,this._writable.destroyed=e}get writableCorked(){return this._writable.writableCorked}get writableNeedDrain(){return this._writable.writableNeedDrain}get readableObjectMode(){return this._readable.readableObjectMode}get writableObjectMode(){return this._writable.writableObjectMode}get readableFlowing(){return this._readable.readableFlowing}get readableAborted(){return this._readable.readableAborted}get readableDidRead(){return this._readable.readableDidRead}get readableEncoding(){return this._readable.readableEncoding}get errored(){return this._errored??this._readable.errored??this._writable.errored}get closed(){return this._closed}get readableBuffer(){return this._readable.readableBuffer}get writableBuffer(){return this._writable.writableBuffer}wrap(e){return this._readable.wrap(e),this}iterator(e){return e?.destroyOnReturn===!1?this._readable.iterator(e):this._wrapAsyncIterator(this._readable[Symbol.asyncIterator]())}[Symbol.asyncIterator](){return this._wrapAsyncIterator(this._readable[Symbol.asyncIterator]())}_wrapAsyncIterator(e){let t=this;return{next(){return e.next()},async return(){let n=await e.return?.();return t.destroyed||t.destroy(),n??{value:void 0,done:!0}},async throw(n){let r=await e.throw?.(n);return t.destroyed||t.destroy(n instanceof Error?n:void 0),r??{value:void 0,done:!0}},[Symbol.asyncIterator](){return this}}}map(e,t){return this._readable.map(e,t)}filter(e,t){return this._readable.filter(e,t)}async forEach(e,t){return this._readable.forEach(e,t)}async toArray(e){return this._readable.toArray(e)}async some(e,t){return this._readable.some(e,t)}async find(e,t){return this._readable.find(e,t)}async every(e,t){return this._readable.every(e,t)}flatMap(e,t){return this._readable.flatMap(e,t)}drop(e,t){return this._readable.drop(e,t)}take(e,t){return this._readable.take(e,t)}async reduce(e,t,n){return arguments.length>=2?this._readable.reduce(e,t,n):this._readable.reduce(e)}compose(e,t){return this._readable.compose(e,t)}};tp.prototype.addListener=tp.prototype.on,tp.prototype._writev=null;var np=class e extends W{static[Symbol.hasInstance](t){return typeof t!=`object`||!t?!1:Object.prototype.isPrototypeOf.call(e.prototype,t)?!0:t.__excelts_stream===!0&&typeof t.read==`function`&&typeof t.pipe==`function`&&typeof t.write==`function`&&typeof t.end==`function`&&typeof t.on==`function`&&typeof t._transform==`function`&&`readableFlowing`in t&&`writableFinished`in t}push(e,t){return this._readable.push(e,t)}constructor(t){super(),this._destroyed=!1,this._closed=!1,this._ended=!1,this._errored=null,this._dataForwardingSetup=!1,this._syncFinal=!1,this._endCalledFromSync=!1,this._endGeneration=0,this._endCallback=null,this._webStream=null,this._sideForwardingCleanup=null,this._afterTransformCallback=null,this.__excelts_stream=!0;let n=t?.objectMode??!1,r=t?.readableObjectMode??n,i=t?.writableObjectMode??n;this.allowHalfOpen=t?.allowHalfOpen??!0,this._emitClose=t?.emitClose??!0,this._autoDestroy=t?.autoDestroy??!0,this._transformImpl=t?.transform,this._flushImpl=t?.flush;let a=t!=null&&Object.prototype.hasOwnProperty.call(t,`highWaterMark`),o=a?t.highWaterMark:t?.readableHighWaterMark,s=a?t.highWaterMark:t?.writableHighWaterMark;t?.destroy&&(this._destroy=t.destroy.bind(this)),t?.construct&&(this._constructFunc=t.construct.bind(this));let c,l,u=this._hasConstructHook();this._readable=new q({highWaterMark:o,objectMode:r,encoding:t?.encoding,emitClose:!1,autoDestroy:!1,construct:u?e=>{c=e}:void 0}),this._readable._hasReadImpl=!0,this._readable._read=()=>{if(this._afterTransformCallback){let e=this._afterTransformCallback;this._afterTransformCallback=null,e(null)}},this._readable._pipes.setSource(this);let d=t?.write?(e,n,r)=>{t.write.call(this,e,n,r)}:(e,t,n)=>{let r=this._readable.readableLength,i=()=>{let e=this._readable.readableLength,t=this._readable.readableHighWaterMark;this._writable.writableEnded||r===e||e<t?n(null):this._afterTransformCallback=n},a=this._runTransformSync(e,t);a===void 0?i():a.then(()=>i(),e=>n(e))},f=t?.final?e=>{t.final.call(this,t=>{if(t){e(t);return}this._readable.push(null),e(null)})}:t=>{typeof this._final==`function`&&this._final!==e.prototype._final?this._final.call(this,e=>{if(e){t(e);return}t(null)}):this._hasSubclassFlush()||this._flushImpl?this._runFlush().then(()=>{this._readable.push(null),t(null)}).catch(e=>t(e)):this._syncFinal?(this._readable.push(null),this._readable._emitEndOnce(),t(null)):K(()=>{this._readable.push(null),t(null)})};this._writable=new Y({highWaterMark:s,objectMode:i,emitClose:!1,autoDestroy:!1,write:d,writev:t?.writev?.bind(this),final:f,decodeStrings:t?.decodeStrings,defaultEncoding:t?.defaultEncoding,construct:u?e=>{l=e}:void 0});let p=()=>{};this._readable.on(`error`,p),this._writable.on(`error`,p),this._setupSideForwarding(),t?.signal&&this._setupAbortSignal(t.signal),u&&K(()=>{(this._constructFunc??this._construct.bind(this))(e=>{if(e){c?.(e),l?.(e),this.destroy(e);return}c?.(),l?.()})})}_setupAbortSignal(e){if(e.aborted){this.destroy(r(e.reason));return}let t=()=>{this.destroy(r(e.reason))};e.addEventListener(`abort`,t,{once:!0}),this.once(`close`,()=>{e.removeEventListener(`abort`,t)})}_setupSideForwarding(){this._sideForwardingCleanup&&=(this._sideForwardingCleanup(),null),this._readable._pipes?.setSource(this);let e=If(),t=!1,n=!1,r=()=>{this._autoDestroy&&t&&n&&!this._destroyed&&this.destroy()};e.once(this._readable,`end`,()=>{this.emit(`end`),t=!0,this.allowHalfOpen||this._writable.end(),r()}),e.add(this._readable,`error`,e=>this._emitErrorOnce(e));let i=()=>{this.emit(`readable`)};W.prototype.on.call(this._readable,`readable`,i),e.add(this._readable,`pause`,()=>this.emit(`pause`)),e.add(this._readable,`resume`,()=>this.emit(`resume`)),e.once(this._writable,`prefinish`,()=>this.emit(`prefinish`)),e.once(this._writable,`finish`,()=>{this.emit(`finish`),n=!0,r()}),e.add(this._writable,`drain`,()=>this.emit(`drain`)),e.add(this._writable,`error`,e=>this._emitErrorOnce(e)),e.once(this._writable,`finish`,()=>{!this.allowHalfOpen&&!this._readable.readableEnded&&this._readable.push(null)}),this._sideForwardingCleanup=()=>{e.cleanup(),this._readable.off(`readable`,i)}}_scheduleEnd(){if(this._destroyed||this._errored||this._writable.writableEnded)return;let t=++this._endGeneration;K(()=>{t===this._endGeneration&&(this._destroyed||this._errored||this._writable.writableEnded||(this._endCalledFromSync&&!this._hasSubclassFlush()&&!this._flushImpl&&!(typeof this._final==`function`&&this._final!==e.prototype._final)&&this._readable._pipes._destinations.length===0&&(this._syncFinal=!0,this._writable._syncFinish=!0),this._writable.end(),this._syncFinal=!1,this._writable._syncFinish=!1))})}_emitErrorOnce(e){if(this._errored)return;let t=e instanceof Error?e:Error(String(e));this._errored=t,this._destroyed||this.destroy(t)}_hasSubclassTransform(){return this._isSubclassTransform===void 0?this._transformImpl?(this._isSubclassTransform=!1,!1):(this._isSubclassTransform=Object.getPrototypeOf(this)._transform!==e.prototype._transform,this._isSubclassTransform):this._isSubclassTransform}_hasSubclassFlush(){if(this._flushImpl)return!1;let t=Object.getPrototypeOf(this);for(;t&&t!==e.prototype&&t!==Object.prototype;){if(Object.prototype.hasOwnProperty.call(t,`_flush`))return!0;t=Object.getPrototypeOf(t)}return!1}_runTransformSync(e,t){if(this._destroyed||this._errored)return;if(this._hasSubclassTransform()){let n=!0,r=!1,i=null,a,o=!1,s=null,c=null;if(this._transform(e,t,(e,t)=>{if(o){let e=Error(`Callback called multiple times`);e.code=`ERR_MULTIPLE_CALLBACK`,this.destroy(e);return}if(o=!0,n){r=!0,i=e??null,a=t;return}if(e){c?.(e);return}t!==void 0&&this.push(t),s?.()}),n=!1,r){if(i)throw i;a!==void 0&&this.push(a);return}return new Promise((e,t)=>{s=e,c=t})}let n=this._transformImpl;if(!n){let n=!0,r=!1,i=null,a,o=null,s=null;if(this._transform(e,t,(e,t)=>{if(n){r=!0,i=e??null,a=t;return}if(e){s?.(e);return}t!==void 0&&this.push(t),o?.()}),n=!1,r){if(i)throw i;a!==void 0&&this.push(a);return}return new Promise((e,t)=>{o=e,s=t})}let r=!0,i=!1,a=null,o,s=!1,c=null,l=null,u=new Promise((e,t)=>{c=e,l=t});if(n.call(this,e,t,(e,t)=>{if(s){let e=Error(`Callback called multiple times`);e.code=`ERR_MULTIPLE_CALLBACK`,this.destroy(e);return}if(s=!0,r){i=!0,a=e??null,o=t;return}if(e){l?.(e);return}t!==void 0&&this.push(t),c?.()}),r=!1,i){if(a)throw a;o!==void 0&&this.push(o);return}return u}async _runFlush(){if(this._destroyed||this._errored)return;if(this._hasSubclassFlush()){await new Promise((e,t)=>{this._flush((n,r)=>{if(n){t(n);return}r!==void 0&&this.push(r),e()})});return}let e=this._flushImpl;e&&await new Promise((t,n)=>{e.call(this,(e,r)=>{if(e){n(e);return}r!==void 0&&this.push(r),t()})})}on(e,t){return super.on(e,t),e===`data`&&!this._dataForwardingSetup?(this._dataForwardingSetup=!0,this._readable.on(`data`,e=>{this.emit(`data`,e)})):e===`readable`&&this._readable._setReadableFlowing(!1),this}write(e,t,n){let r=typeof t==`string`?t:void 0,i=typeof t==`function`?t:n;if(this._ended){let e=Error(`write after end`);return e.code=`ERR_STREAM_WRITE_AFTER_END`,K(()=>this.emit(`error`,e)),i&&K(()=>i(e)),!1}return r===void 0?this._writable.write(e,i):this._writable.write(e,r,i)}end(e,t,n){if(this._ended){let{chunk:r,encoding:i,cb:a}=Xf(e,t,n);if(r!==void 0)return this.write(r,i,e=>{a?.(e??null)}),this;if(this.writableFinished&&a){let e=Error(`Cannot call end after a stream was finished`);e.code=`ERR_STREAM_ALREADY_FINISHED`,K(()=>a(e))}else a&&K(()=>a(null));return this}let{chunk:r,encoding:i,cb:a}=Xf(e,t,n);if(a&&(this._endCallback=a,this.once(`finish`,()=>{let e=this._endCallback;e&&(this._endCallback=null,e())})),r!==void 0){let e=e=>{e&&!this._destroyed&&this.destroy(e)};i===void 0?this._writable.write(r,e):this._writable.write(r,i,e)}return this._ended=!0,this._endCalledFromSync=!zf(),this._scheduleEnd(),this}read(e){return this._readable.read(e)}pipe(e,t){return this._readable.pipe(e,t)}unpipe(e){return this._readable.unpipe(e),this}isPaused(){return this._readable.isPaused()}resume(){return this._readable.resume(),this}pause(){return this._readable.pause(),this}destroy(e){if(this._destroyed)return this;if(this._destroyed=!0,this._endGeneration++,this._afterTransformCallback){let t=this._afterTransformCallback;this._afterTransformCallback=null,t(e??null)}this._sideForwardingCleanup&&=(this._sideForwardingCleanup(),null);let t=e=>{let t=e||null;this._readable.destroy(),this._writable.destroy();let n=this._endCallback;this._endCallback=null,this._closed=!0;let r=()=>{n&&n(),t&&this.emit(`error`,t),this._emitClose&&this.emit(`close`)};zf()&&!this._hasDestroyHook()&&this.readableEnded&&this.writableFinished?r():K(r)};if(this._hasDestroyHook())try{this._destroy(e??null,t)}catch(e){t(e instanceof Error?e:Error(String(e)))}else t(e);return this}_destroy(e,t){t(e)}_undestroy(){this._readable._undestroy(),this._writable._undestroy(),this._destroyed=!1,this._closed=!1,this._errored=null,this._setupSideForwarding()}_hasDestroyHook(){return Object.prototype.hasOwnProperty.call(this,`_destroy`)||Object.getPrototypeOf(this)._destroy!==e.prototype._destroy}_hasConstructHook(){if(this._constructFunc)return!0;let t=Object.getPrototypeOf(this);for(;t&&t!==e.prototype&&t!==Object.prototype;){if(Object.prototype.hasOwnProperty.call(t,`_construct`))return!0;t=Object.getPrototypeOf(t)}return!1}[Symbol.dispose](){this._destroyed||this.destroy()}async[Symbol.asyncDispose](){let e=!this._destroyed;return e&&this.destroy(),new Promise((t,n)=>{let r=()=>{e||this.writableFinished?t():n(Error(`Premature close`))};this.closed?r():this.once(`close`,r)})}_getWebStream(){if(this._webStream)return this._webStream;let e=this[Symbol.asyncIterator]();return this._webStream={readable:new ReadableStream({pull:async t=>{let{done:n,value:r}=await e.next();if(n){t.close();return}t.enqueue(r)},cancel:e=>{this.destroy(e instanceof Error?e:Error(String(e)))}}),writable:new WritableStream({write:e=>new Promise((t,n)=>{this.write(e,e=>{e?n(e):t()})}),close:()=>new Promise(e=>{this.end(()=>e())}),abort:e=>{this.destroy(e instanceof Error?e:Error(String(e)))}})},this._webStream}get readable(){return this._readable.readable}set readable(e){this._readable.readable=e}get writable(){return this._writable.writable}set writable(e){this._writable.writable=e}get readableEnded(){return this._readable.readableEnded}get writableEnded(){return this._ended||this._writable.writableEnded}get writableFinished(){return this._writable.writableFinished}get readableLength(){return this._readable.readableLength}get writableLength(){return this._writable.writableLength}get readableHighWaterMark(){return this._readable.readableHighWaterMark}get writableHighWaterMark(){return this._writable.writableHighWaterMark}get readableObjectMode(){return this._readable.readableObjectMode}get readableFlowing(){return this._readable.readableFlowing}get destroyed(){return this._destroyed}set destroyed(e){this._destroyed=e,this._readable.destroyed=e,this._writable.destroyed=e}cork(){this._writable.cork()}uncork(){this._writable.uncork()}setEncoding(e){return this._readable.setEncoding(e),this}setDefaultEncoding(e){return this._writable.setDefaultEncoding(e),this}unshift(e,t){this._readable.unshift(e,t)}wrap(e){return this._readable.wrap(e),this}iterator(e){return this._readable.iterator(e)}get writableCorked(){return this._writable.writableCorked}get writableNeedDrain(){return this._writable.writableNeedDrain}get writableObjectMode(){return this._writable.writableObjectMode}get readableAborted(){return this._readable.readableAborted}get readableDidRead(){return this._readable.readableDidRead}get readableEncoding(){return this._readable.readableEncoding}get errored(){return this._errored??this._readable.errored??this._writable.errored}get closed(){return this._closed}get readableBuffer(){return this._readable.readableBuffer}get writableBuffer(){return this._writable.writableBuffer}async*[Symbol.asyncIterator](){yield*this._readable[Symbol.asyncIterator]()}map(e,t){return this._readable.map(e,t)}filter(e,t){return this._readable.filter(e,t)}async forEach(e,t){return this._readable.forEach(e,t)}async toArray(e){return this._readable.toArray(e)}async some(e,t){return this._readable.some(e,t)}async find(e,t){return this._readable.find(e,t)}async every(e,t){return this._readable.every(e,t)}flatMap(e,t){return this._readable.flatMap(e,t)}drop(e,t){return this._readable.drop(e,t)}take(e,t){return this._readable.take(e,t)}async reduce(e,t,n){return arguments.length>=2?this._readable.reduce(e,t,n):this._readable.reduce(e)}compose(e,t){return this._readable.compose(e,t)}static isDisturbed(e){return e&&e._readable instanceof q?q.isDisturbed(e._readable):q.isDisturbed(e)}static from(e){return tp.from(e)}static fromWeb(t,n){let r=new e(n);r._webStream=t;let i=q.fromWeb(t.readable,{objectMode:n?.objectMode}),a=Y.fromWeb(t.writable,{objectMode:n?.objectMode});return r._sideForwardingCleanup&&=(r._sideForwardingCleanup(),null),r._readable=i,r._writable=a,r._setupSideForwarding(),r}static toWeb(e){return e._getWebStream()}_transform(e,t,n){let r=Error(`The _transform() method is not implemented`);throw r.code=`ERR_METHOD_NOT_IMPLEMENTED`,r}_final(e){typeof this._flush==`function`&&!this.destroyed?this._flush((t,n)=>{if(t){e(t);return}n!=null&&this.push(n),this.push(null),e()}):(this.push(null),e())}};np.prototype.addListener=np.prototype.on,np.prototype._writev=null;var rp=class extends np{constructor(e){super(e)}_transform(e,t,n){n(null,e)}};let ip=e=>!e||typeof e!=`object`||typeof e.pipe==`function`||typeof e.write==`function`||typeof e.end==`function`||typeof e.getReader==`function`||typeof e.getWriter==`function`?!1:Object.prototype.hasOwnProperty.call(e,`signal`)||Object.prototype.hasOwnProperty.call(e,`end`),ap=e=>`readableEnded`in e||`readable`in e||typeof e.read==`function`,op=e=>`writableFinished`in e||`writable`in e||typeof e.write==`function`,sp=e=>{let t=!ap(e)||!!e.readableEnded,n=!op(e)||!!e.writableFinished;return t&&n},cp=()=>{let e=Error(`Premature close`);return e.code=`ERR_STREAM_PREMATURE_CLOSE`,e.name=`Error [ERR_STREAM_PREMATURE_CLOSE]`,e},lp=(e,t,n)=>{let r=e;if(r.closed||r._closed){t();return}`_emitClose`in r&&`_autoDestroy`in r&&r._emitClose!==!1&&r._autoDestroy!==!1?n.once(e,`close`,()=>t()):t()},up=e=>e instanceof q||e instanceof Y||e instanceof np||e instanceof tp?e:mf(e)?np.fromWeb(e):ff(e)?q.fromWeb(e):pf(e)?Y.fromWeb(e):e,dp=e=>typeof e==`function`&&!(e instanceof q)&&!(e instanceof Y),fp=(e,t)=>{let n=t(e);return q.from(n)};function pp(...e){let t,n={},i,a=e[e.length-1];if(typeof a==`function`){i=a;let r=e[e.length-2];ip(r)?(n=r,t=e.slice(0,-2)):t=e.slice(0,-1)}else ip(a)?(n=a,t=e.slice(0,-1)):t=e;let o=new Promise((e,i)=>{if(t.length<2){i(Error(`Pipeline requires at least 2 streams`));return}let a=t.map(up),o=[],s=[],c=a[0];o.push(c),s.push(c);for(let e=1;e<a.length;e++){let t=a[e];dp(t)?(c=fp(c,t),o.push(c),s[s.length-1]=c):(o.push(t),s.push(t),c=t)}let l=s[0],u=s[s.length-1],d=s.slice(1,-1);for(let e of o)if(e.destroyed&&!sp(e)){i(cp());return}let f=!1,p=If(),m,h=t=>{if(!f){if(f=!0,m&&n.signal&&n.signal.removeEventListener(`abort`,m),t){let e=()=>{};for(let n of o)typeof n.on==`function`&&n.on(`error`,e),typeof n.destroy==`function`&&!n.destroyed&&n.destroy(t)}p.cleanup(),t?i(t):e()}};if(n.signal){if(n.signal.aborted){h(r(n.signal.reason));return}m=()=>h(r(n.signal.reason)),n.signal.addEventListener(`abort`,m)}c=l;for(let e of d)c.pipe(e),c=e;if(n.end!==!1)c.pipe(u);else{let e=!1,t=!1,n=()=>{t=!1,e&&typeof c.resume==`function`&&(e=!1,c.resume())};p.add(c,`data`,r=>{!u.write(r)&&!t&&(t=!0,!e&&typeof c.pause==`function`&&(e=!0,c.pause()),p.once(u,`drain`,n))}),p.once(c,`end`,()=>{lp(c,h,p)})}n.end!==!1&&p.once(u,`finish`,()=>{lp(u,h,p)});for(let e of o)p.once(e,`close`,()=>{f||sp(e)||h(cp())});for(let e of o)p.once(e,`error`,e=>h(e))});return i&&o.then(()=>i()).catch(e=>i(e)),o}function mp(e,t,n){let i={},a;typeof t==`function`?a=t:(i=t??{},a=n);let o=new Promise((t,n)=>{let a=up(e),o=!1,s=If(),c,l=()=>{s.cleanup(),c&&i.signal&&i.signal.removeEventListener(`abort`,c)},u=e=>{o||(o=!0,l(),e?n(e):t())};if(i.signal){if(i.signal.aborted){u(r(i.signal.reason));return}c=()=>u(r(i.signal.reason)),i.signal.addEventListener(`abort`,c)}let d=a;if(d.destroyed||d._destroyed){if(d.errored||d._errored)u(d.errored??d._errored);else{let e=`readableEnded`in d||`readable`in d||typeof d.read==`function`,t=`writableFinished`in d||`writable`in d||typeof d.write==`function`,n=i.readable!==!1&&e,r=i.writable!==!1&&t,a=!n||!!(d.readableEnded||d._endEmitted),o=!r||!!(d.writableFinished||d._finished);a&&o?u():u(cp())}return}let f=`readableEnded`in a||`readable`in a||typeof a.read==`function`,p=`writableFinished`in a||`writable`in a||typeof a.write==`function`,m=i.readable!==!1&&f,h=i.writable!==!1&&p,g=!m||!!a.readableEnded,_=!h||!!a.writableFinished,v=a,y=`_emitClose`in v&&`_autoDestroy`in v&&v._emitClose!==!1&&v._autoDestroy!==!1&&!v._closed,b=()=>{if(g&&_){if(y)return;u()}};if(g&&_&&(!y||a.closed)){u();return}h&&!_&&s.once(a,`finish`,()=>{_=!0,b()}),m&&!g&&s.once(a,`end`,()=>{g=!0,b()}),i.error!==!1&&s.once(a,`error`,e=>u(e)),s.once(a,`close`,()=>{let e=g||!!a.readableEnded,t=_||!!a.writableFinished;if(e&&t){g=e,_=t,u(a.errored??a._errored??void 0);return}let n=a.errored??a._errored;if(n){u(n);return}let r=Error(`Premature close`);r.code=`ERR_STREAM_PREMATURE_CLOSE`,r.name=`Error [ERR_STREAM_PREMATURE_CLOSE]`,u(r)})});return a&&o.then(()=>a()).catch(e=>a(e)),o}async function*hp(e){let t=e.getReader();try{for(;;){let e=await t.read();if(e.done)return;e.value!==void 0&&e.value!==null&&(yield e.value)}}finally{try{await t.cancel?.()}catch{}try{t.releaseLock?.()}catch{}}}Hf(e=>tp.from(e));let gp=new Map([[/^xl\/charts\/chart\d+\.xml$/,`application/vnd.openxmlformats-officedocument.drawingml.chart+xml`],[/^xl\/charts\/style\d+\.xml$/,`application/vnd.ms-office.chartstyle+xml`],[/^xl\/charts\/colors\d+\.xml$/,`application/vnd.ms-office.chartcolorstyle+xml`]]),_p=[`xl/charts/`];var vp=class e{constructor(){this.files=new Map}static isPassthroughPath(e){return _p.some(t=>e.startsWith(t))}static getContentType(e){if(!e.startsWith(`xl/charts/_rels/`)){for(let[t,n]of gp)if(t.test(e))return n}}add(e,t){this.files.set(e,t)}get(e){return this.files.get(e)}has(e){return this.files.has(e)}getPaths(){return[...this.files.keys()]}toRecord(){let e={};for(let[t,n]of this.files)e[t]=n;return e}fromRecord(e){this.files.clear();for(let[t,n]of Object.entries(e))this.files.set(t,n)}getContentTypes(){let t=[];for(let n of this.files.keys()){let r=e.getContentType(n);r&&t.push({partName:n,contentType:r})}return t}writeToZip(e){for(let[t,n]of this.files)e.append(n,{name:t})}clear(){this.files.clear()}get size(){return this.files.size}},yp=class e{static{this.textEncoder=new TextEncoder}constructor(e){this.events=new Map,this.pipedStream=null,this.finalized=!1,this.level=e?.level??6,this.modTime=e?.modTime,this.timestamps=e?.timestamps,this.zip=new ef((e,t,n)=>{if(e){this._emit(`error`,e);return}t&&t.length>0&&(this._emit(`data`,t),this.pipedStream&&this.pipedStream.write(t)),n&&(this.pipedStream&&this.pipedStream.end(),this._emit(`finish`))})}_emit(e,...t){let n=this.events.get(e);if(n)for(let e of n)e(...t)}on(e,t){let n=this.events.get(e)||new Set;return n.add(t),this.events.set(e,n),this}once(e,t){let n=(...r)=>{this.off(e,n),t(...r)};return this.on(e,n)}off(e,t){let n=this.events.get(e);return n?(n.delete(t),n.size===0&&this.events.delete(e),this):this}pipe(e){this.pipedStream=e}append(t,n){if(this.finalized)throw new b(`append`,`stream already finalized`);let r;r=n.base64?lt(typeof t==`string`?t:String(t)):typeof t==`string`?e.textEncoder.encode(t):t instanceof Uint8Array?t:ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t instanceof ArrayBuffer?new Uint8Array(t):t;let i=new $d(n.name,{level:this.level,modTime:this.modTime,timestamps:this.timestamps});this.zip.add(i),i.push(r,!0)}finalize(){this.finalized||(this.finalized=!0,this.zip.end())}},bp=class e{static{this.RelType=B}constructor(e){this.workbook=e}createBinaryStream(e){let t=new rp;return t.end(e),t}createTextStream(e){let t=new rp;return t.end(e),t}createStreamBuf(){return new _c}bufferToString(e){return Pt(e)}createZipWriter(e){return new yp(e)}async writeToZip(e,t){let{model:n}=this.workbook;this.prepareModel(n,t),await this.addContentTypes(e,n),await this.addOfficeRels(e,n),await this.addWorkbookRels(e,n),await this.addWorkbook(e,n),await this.addWorksheets(e,n),await this.addSharedStrings(e,n),this.addDrawings(e,n),this.addTables(e,n),this.addPivotTables(e,n),this.addPassthrough(e,n),await Promise.all([this.addThemes(e,n),this.addStyles(e,n)]),await this.addFeaturePropertyBag(e,n),await this.addMedia(e,n),await Promise.all([this.addApp(e,n),this.addCore(e,n)])}async read(e,t){let n=[];return await new Promise((t,r)=>{let i=e=>{n.push(e)},a=()=>{e.off(`data`,i),e.off(`end`,a),e.off(`error`,o),t()},o=t=>{e.off(`data`,i),e.off(`end`,a),e.off(`error`,o),r(t)};e.on(`data`,i),e.on(`end`,a),e.on(`error`,o)}),this.loadBuffer(k(n),t)}async write(e,t){t||={},t.zip=t.zip||{},t.zip.modTime??=this.workbook.modified??this.workbook.created;let n=this.createZipWriter(t.zip);return n.pipe(e),await this.writeToZip(n,t),this._finalize(n)}async load(e,t){let n,r=typeof Buffer<`u`?Buffer.isBuffer(e):!1;if(!e||typeof e==`object`&&!r&&!(e instanceof Uint8Array)&&!(e instanceof ArrayBuffer))throw new y(`<input>`,`read`,`Can't read the data of 'the loaded zip file'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?`);return n=t&&t.base64?lt(e.toString()):e instanceof ArrayBuffer?new Uint8Array(e):e instanceof Uint8Array?e:new Uint8Array(e),this.loadBuffer(n,t)}async loadBuffer(e,t){let n=await new Ef(e).extractAll(),r={};for(let[e,t]of n)r[e]=t;return this.loadFromFiles(r,t)}createEmptyModel(){return{worksheets:[],worksheetHash:{},worksheetRels:[],themes:{},media:[],mediaIndex:{},drawings:{},drawingRels:{},rawDrawings:{},comments:{},tables:{},vmlDrawings:{},pivotTables:{},pivotTableRels:{},pivotCacheDefinitions:{},pivotCacheRecords:{},passthrough:{}}}async collectStreamData(e){let t=[];return await new Promise((n,r)=>{e.on(`data`,e=>{typeof e==`string`?t.push(new TextEncoder().encode(e)):e instanceof Uint8Array?t.push(e):t.push(new Uint8Array(e))}),e.on(`end`,()=>n()),e.on(`error`,r)}),k(t)}drawingHasChartReference(e){return e.rels&&e.rels.some(e=>e.Target&&e.Target.includes(`/charts/`))}drawingRelsHasChartReference(e){return Array.isArray(e)&&e.some(e=>typeof e?.Target==`string`&&e.Target.includes(`/charts/`))}async _processKnownEntry(e,t,n,r){let i=bi(n);if(i!==void 0)return await this._processWorksheetEntry(e,t,i,r,n),!0;switch(n){case R.rootRels:return t.globalRels=await this.parseRels(e),!0;case R.xlWorkbook:{let n=await this.parseWorkbook(e);return t.sheets=n.sheets,t.definedNames=n.definedNames,t.views=n.views,t.properties=n.properties,t.calcProperties=n.calcProperties,t.pivotCaches=n.pivotCaches,!0}case R.xlSharedStrings:return t.sharedStrings=new ri,await t.sharedStrings.parseStream(e),!0;case R.xlWorkbookRels:return t.workbookRels=await this.parseRels(e),!0;case R.docPropsApp:{let n=await new va().parseStream(e);return n&&(t.company=n.company,t.manager=n.manager),!0}case R.docPropsCore:{let n=await new Qr().parseStream(e);return Object.assign(t,n),!0}case R.xlStyles:return t.styles=new Xr,await t.styles.parseStream(e),!0;default:return!1}}async loadFromZipEntries(e,t){let n=this.createEmptyModel();for await(let r of e){let e=!1,i=async()=>{e||(e=!0,await r.drain())};if(r.type===`Directory`){await i();continue}let a=yi(r.name),o=r.stream;try{await this._processKnownEntry(o,n,a,t)||await this._processDefaultEntry(o,n,a)||await i()}finally{try{await i()}catch{}}}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async writeBuffer(e){e||={},e.zip=e.zip||{},e.zip.modTime??=this.workbook.modified??this.workbook.created;let t=this.createZipWriter(e.zip),n=this.createStreamBuf();return t.pipe(n),await this.writeToZip(t,e),await this._finalize(t),n.read()||new Uint8Array}async addMedia(e,t){await Promise.all(t.media.map(async t=>{if(t.type!==`image`)throw new ne(`Unsupported media`);let n=Ri(`${t.name??`undefined`}.${t.extension}`);if(t.filename){if(this.readFileAsync){let r=await this.readFileAsync(t.filename);return e.append(r,{name:n})}throw new v(`Loading images from filename`,`not supported in this environment`)}if(t.buffer)return e.append(t.buffer,{name:n});if(t.base64){let r=t.base64.substring(t.base64.indexOf(`,`)+1);return e.append(r,{name:n,base64:!0})}throw new ne(`Unsupported media`)}))}parseRels(e){return new L().parseStream(e)}parseWorkbook(e){return new Ma().parseStream(e)}parseSharedStrings(e){return new ri().parseStream(e)}reconcile(e,t){let n=new Ma,r=new es(t),i=new ys,a=new Es;n.reconcile(e);let o={media:e.media,mediaIndex:e.mediaIndex};if(Object.keys(e.drawings).forEach(t=>{let n=e.drawings[t],r=e.drawingRels[t];r&&(o.rels=r.reduce((e,t)=>(e[t.Id]=t,e),{}),(n.anchors??[]).forEach(e=>{let t=e.picture&&e.picture.hyperlinks;t&&o.rels[t.rId]&&(t.hyperlink=o.rels[t.rId].Target,delete t.rId)}),i.reconcile(n,o))}),e.rawDrawings&&e.drawingRels)for(let t of Object.keys(e.rawDrawings)){let n=e.drawingRels[t];n&&!this.drawingRelsHasChartReference(n)&&delete e.rawDrawings[t]}let s={styles:e.styles};Object.values(e.tables).forEach(e=>{a.reconcile(e,s)}),this._reconcilePivotTables(e);let c={styles:e.styles,sharedStrings:e.sharedStrings,media:e.media,mediaIndex:e.mediaIndex,date1904:e.properties?.date1904,drawings:e.drawings,drawingRels:e.drawingRels,comments:e.comments,tables:e.tables,vmlDrawings:e.vmlDrawings,pivotTables:e.pivotTablesIndexed};e.worksheets.forEach(t=>{t.relationships=e.worksheetRels[t.sheetNo],r.reconcile(t,c)}),delete e.worksheetHash,delete e.worksheetRels,delete e.globalRels,delete e.sharedStrings,delete e.workbookRels,delete e.sheetDefs,e.defaultFont=e.styles?.defaultFont,delete e.styles,delete e.mediaIndex,delete e.drawings,delete e.drawingRels,delete e.vmlDrawings,delete e.pivotTableRels}_reconcilePivotTables(e){let t=e.pivotTables||{};if(typeof t!=`object`||Object.keys(t).length===0){e.pivotTables=[],e.pivotTablesIndexed={};return}let n=this._buildDefinitionToCacheIdMap(e),r=new Map;Object.entries(e.pivotCacheDefinitions||{}).forEach(([t,i])=>{let a=n.get(t);if(a!==void 0){let n=t.replace(`Definition`,`Records`);r.set(a,{definition:i,records:e.pivotCacheRecords?.[n],definitionName:t})}});let i=[],a={};Object.entries(t).forEach(([e,t])=>{let n=this._extractTableNumber(e),o=r.get(t.cacheId),s=this._determineMetric(t.dataFields),c={...t,tableNumber:n,cacheId:String(t.cacheId),cacheDefinition:o?.definition,cacheRecords:o?.records,cacheFields:o?.definition?.cacheFields??[],rows:t.rowFields.filter(e=>e>=0),columns:t.colFields.filter(e=>e>=0&&e!==-2),values:t.dataFields.map(e=>e.fld),pages:t.pageFields.map(e=>e.fld),metric:s,valueMetrics:this._determineValueMetrics(t.dataFields,s),applyWidthHeightFormats:t.applyWidthHeightFormats===`1`?`1`:`0`};i.push(c),a[la(e)]=c}),i.sort((e,t)=>e.tableNumber-t.tableNumber),e.pivotTables=i,e.pivotTablesIndexed=a}_extractTableNumber(e){let t=e.match(/pivotTable(\d+)/);return t?parseInt(t[1],10):1}_buildCacheIdMap(e){let t=new Map,n=e.pivotCaches??[];for(let e of n)e.cacheId&&e.rId&&t.set(e.rId,parseInt(e.cacheId,10));return t}_buildDefinitionToCacheIdMap(t){let n=new Map,r=this._buildCacheIdMap(t),i=t.workbookRels??[];for(let t of i)if(t.Type===e.RelType.PivotCacheDefinition&&t.Target){let e=t.Target.match(/pivotCacheDefinition(\d+)\.xml/);if(e){let i=`pivotCacheDefinition${e[1]}`,a=r.get(t.Id);a!==void 0&&n.set(i,a)}}return n}_determineMetric(e){return e.length>0&&e[0].subtotal?e[0].subtotal:`sum`}_determineValueMetrics(e,t){return e.map(e=>e.subtotal||t)}async _processWorksheetEntry(e,t,n,r,i){let a=await new es(r).parseStream(e);if(!a)throw new _(i,`Failed to parse worksheet`);a.sheetNo=n,t.worksheetHash[i]=a,t.worksheets.push(a)}async _processCommentEntry(e,t,n){let r=await new $s().parseStream(e);t.comments[sa(n)]=r}async _processTableEntry(e,t,n){let r=await new Es().parseStream(e);t.tables[da(n)]=r}async _processWorksheetRelsEntry(e,t,n){let r=await new L().parseStream(e);t.worksheetRels[n]=r}async _processMediaEntry(e,t,n){let r=n.lastIndexOf(`.`);if(r>=1){let i=n.substr(r+1),a=n.substr(0,r);await new Promise((r,o)=>{let s=this.createStreamBuf(),c=()=>{e.off(`error`,u),s.off(`error`,u),s.off(`finish`,l)},l=()=>{c(),t.mediaIndex[n]=t.media.length,t.mediaIndex[a]=t.media.length;let e={type:`image`,name:a,extension:i,buffer:s.read()};t.media.push(e),r()},u=e=>{c(),o(e)};s.once(`finish`,l),e.on(`error`,u),s.on(`error`,u),e.pipe(s)})}}async _processDrawingEntry(e,t,n,r){let i=r??await this.collectStreamData(e),a=new ys,o=this.bufferToString(i),s=await a.parseStream(this.createTextStream(o));t.drawings[n]=s,t.rawDrawings[n]=i}async _processDrawingRelsEntry(e,t,n){let r=await new L().parseStream(e);t.drawingRels[n]=r}async _processVmlDrawingEntry(e,t,n){let r=await new sc().parseStream(e);t.vmlDrawings[oa(n)]=r}async _processThemeEntry(e,t,n){await new Promise((r,i)=>{let a=this.createStreamBuf(),o=()=>{e.off(`error`,c),a.off(`error`,c),a.off(`finish`,s)},s=()=>{o();let e=a.read();t.themes[n]=e?typeof e==`string`?e:this.bufferToString(e):``,r()},c=e=>{o(),i(e)};a.once(`finish`,s),e.on(`error`,c),a.on(`error`,c),e.pipe(a)})}async _processPivotTableEntry(e,t,n){let r=await new qs().parseStream(e);r&&(t.pivotTables[n]=r)}async _processPivotTableRelsEntry(e,t,n){let r=await new L().parseStream(e);t.pivotTableRels[n]=r}async _processPivotCacheDefinitionEntry(e,t,n){let r=await new Vs().parseStream(e);r&&(t.pivotCacheDefinitions[n]=r)}async _processPivotCacheRecordsEntry(e,t,n){let r=await new Ns().parseStream(e);r&&(t.pivotCacheRecords[n]=r)}async loadFromFiles(e,t){let n=this.createEmptyModel(),r=Object.keys(e).map(t=>({name:t,dir:t.endsWith(`/`),data:e[t]}));for(let e of r)if(!e.dir){let r=yi(e.name),i=Ei(r)?this.createBinaryStream(e.data):this.createTextStream(this.bufferToString(e.data));await this._processKnownEntry(i,n,r,t)||await this._processDefaultEntry(i,n,r,e.data)}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async _processDefaultEntry(e,t,n,r){let i=xi(n);if(i!==void 0)return await this._processWorksheetRelsEntry(e,t,i),!0;let a=Ci(n);if(a)return await this._processMediaEntry(e,t,a),!0;let o=Di(n);if(o)return await this._processDrawingEntry(e,t,o,r),!0;let s=Oi(n);if(s)return await this._processDrawingRelsEntry(e,t,s),!0;let c=ki(n);if(c)return await this._processVmlDrawingEntry(e,t,c),!0;let l=Ai(n);if(l)return await this._processCommentEntry(e,t,`comments${l}`),!0;let u=ji(n);if(u)return await this._processTableEntry(e,t,u),!0;let d=Ti(n);if(d)return await this._processThemeEntry(e,t,d),!0;let f=Mi(n);if(f)return await this._processPivotTableEntry(e,t,f),!0;let p=Ni(n);if(p)return await this._processPivotTableRelsEntry(e,t,p),!0;let m=Pi(n);if(m)return await this._processPivotCacheDefinitionEntry(e,t,m),!0;if(Fi(n))return!0;let h=Ii(n);return h?(await this._processPivotCacheRecordsEntry(e,t,h),!0):vp.isPassthroughPath(n)?(r?t.passthrough[n]=r:await this._processPassthroughEntry(e,t,n),!0):!1}async _processPassthroughEntry(e,t,n){let r=await this.collectStreamData(e);t.passthrough[n]=r}async addContentTypes(e,t){let n=new ha().toXml(t);e.append(n,{name:R.contentTypes})}async addApp(e,t){let n=new va().toXml(t);e.append(n,{name:R.docPropsApp})}async addCore(e,t){let n=new Qr;e.append(n.toXml(t),{name:R.docPropsCore})}async addThemes(e,t){let n=t.themes||{theme1:`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
319
319
|
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"> <a:shade val="95000"/> <a:satMod val="105000"/> </a:schemeClr> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <a:scene3d> <a:camera prst="orthographicFront"> <a:rot lat="0" lon="0" rev="0"/> </a:camera> <a:lightRig rig="threePt" dir="t"> <a:rot lat="0" lon="0" rev="1200000"/> </a:lightRig> </a:scene3d> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="1"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="3"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="2"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="lt1"/> </a:fontRef> </a:style> </a:spDef> <a:lnDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="2"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="0"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="1"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="tx1"/> </a:fontRef> </a:style> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>`};Object.keys(n).forEach(t=>{let r=n[t];e.append(r,{name:Li(t)})})}async addOfficeRels(t,n){let r=new L().toXml([{Id:`rId1`,Type:e.RelType.OfficeDocument,Target:R.xlWorkbook},{Id:`rId2`,Type:e.RelType.CoreProperties,Target:R.docPropsCore},{Id:`rId3`,Type:e.RelType.ExtenderProperties,Target:R.docPropsApp}]);t.append(r,{name:R.rootRels})}async addWorkbookRels(t,n){let r=1,i=[{Id:`rId${r++}`,Type:e.RelType.Styles,Target:ta.workbookStyles},{Id:`rId${r++}`,Type:e.RelType.Theme,Target:ta.workbookTheme1}];n.sharedStrings.count&&i.push({Id:`rId${r++}`,Type:e.RelType.SharedStrings,Target:ta.workbookSharedStrings}),n.hasCheckboxes&&i.push({Id:`rId${r++}`,Type:e.RelType.FeaturePropertyBag,Target:ta.workbookFeaturePropertyBag});let a=new Map;(n.pivotTables??[]).forEach(t=>{let n=a.get(t.cacheId);n?t.rId=n:(t.rId=`rId${r++}`,a.set(t.cacheId,t.rId),i.push({Id:t.rId,Type:e.RelType.PivotCacheDefinition,Target:na(t.tableNumber)}))}),n.worksheets.forEach(t=>{t.rId=`rId${r++}`,i.push({Id:t.rId,Type:e.RelType.Worksheet,Target:Vi(t.fileIndex)})});let o=new L().toXml(i);t.append(o,{name:R.xlWorkbookRels})}async addFeaturePropertyBag(e,t){if(!t.hasCheckboxes)return;let n=new ts;e.append(n.toXml({}),{name:R.xlFeaturePropertyBag})}async addSharedStrings(e,t){t.sharedStrings&&t.sharedStrings.count&&e.append(t.sharedStrings.xml,{name:R.xlSharedStrings})}async addStyles(e,t){let{xml:n}=t.styles;n&&e.append(n,{name:R.xlStyles})}async addWorkbook(e,t){let n=new Ma;e.append(n.toXml(t),{name:R.xlWorkbook})}async addWorksheets(e,t){let n=new es,r=new L,i=new $s,a=new sc,o=new cc;t.worksheets.forEach(t=>{let{fileIndex:s}=t,c=new A;n.render(c,t),e.append(c.xml,{name:zi(s)}),t.rels&&t.rels.length&&(c=new A,r.render(c,t.rels),e.append(c.xml,{name:Bi(s)})),t.comments.length>0&&(c=new A,i.render(c,t),e.append(c.xml,{name:Hi(s)}));let l=t.comments.length>0,u=t.formControls&&t.formControls.length>0;(l||u)&&(c=new A,a.render(c,{comments:l?t.comments:[],formControls:u?t.formControls:[]}),e.append(c.xml,{name:Wi(s)})),u&&t.formControls.forEach(t=>{let n=o.toXml(t);e.append(n,{name:pa(t.ctrlPropId)})})})}addDrawings(e,t){let n=new ys,r=new L,i=t.rawDrawings||{};t.worksheets.forEach(t=>{let{drawing:a}=t;if(a){if(this.drawingHasChartReference(a)&&i[a.name])e.append(i[a.name],{name:Ki(a.name)});else{let t=Zo(a.anchors??[]),r=a.anchors?{...a,anchors:t}:a;n.prepare(r);let i=n.toXml(r);e.append(i,{name:Ki(a.name)})}let t=r.toXml(a.rels);e.append(t,{name:qi(a.name)})}})}addTables(e,t){let n=new Es;t.worksheets.forEach(t=>{let{tables:r}=t;r.forEach(t=>{n.prepare(t,{});let r=n.toXml(t);e.append(r,{name:Gi(t.target)})})})}addPassthrough(e,t){let n=new vp;n.fromRecord(t.passthrough||{}),n.writeToZip(e)}addPivotTables(t,n){if(!n.pivotTables.length)return;let r=new Ns,i=new Vs,a=new qs,o=new L,s=new Map;n.pivotTables.forEach(n=>{let c=n.tableNumber,l=n.isLoaded,u=n.cacheId;if(!s.has(u)){if(s.set(u,c),l){if(n.cacheDefinition){let e=i.toXml(n.cacheDefinition);t.append(e,{name:Ji(c)})}if(n.cacheRecords){let e=r.toXml(n.cacheRecords);t.append(e,{name:Xi(c)})}}else{let e=r.toXml(n);t.append(e,{name:Xi(c)}),e=i.toXml(n),t.append(e,{name:Ji(c)})}if(!l||n.cacheRecords){let r=(l?n.cacheDefinition?.rId:void 0)??`rId1`,i=o.toXml([{Id:r,Type:e.RelType.PivotCacheRecords,Target:Zi(c)}]);t.append(i,{name:Yi(c)})}}let d=a.toXml(n);t.append(d,{name:Qi(c)});let f=s.get(u);d=o.toXml([{Id:`rId1`,Type:e.RelType.PivotCacheDefinition,Target:ea(f)}]),t.append(d,{name:$i(c)})})}_finalize(e){return new Promise((t,n)=>{e.on(`finish`,()=>{t(this)}),e.on(`error`,n),e.finalize()})}prepareModel(e,t){e.creator=e.creator??`ExcelTS`,e.lastModifiedBy=e.lastModifiedBy??`ExcelTS`,e.created=e.created??new Date,e.modified=e.modified??new Date,e.useSharedStrings=t.useSharedStrings===void 0?!0:t.useSharedStrings,e.useStyles=t.useStyles===void 0?!0:t.useStyles,e.sharedStrings=new ri;let n=e.defaultFont;e.styles=e.useStyles?new Xr(!0):new Xr.Mock,n&&e.styles.setDefaultFont&&e.styles.setDefaultFont(n);let r=new Ma,i=new es;r.prepare(e);let a={sharedStrings:e.sharedStrings,styles:e.styles,date1904:e.properties?.date1904,drawingsCount:0,media:e.media};a.drawings=e.drawings=[],a.commentRefs=e.commentRefs=[],a.formControlRefs=e.formControlRefs=[];let o=0;e.tables=[],e.worksheets.forEach((t,n)=>{t.fileIndex=n+1,t.tables.forEach(t=>{o++,t.target=`table${o}.xml`,t.id=o,e.tables.push(t)}),i.prepare(t,a)}),e.hasCheckboxes=e.styles.hasCheckboxes;let s=e.passthrough||{},c=new vp;c.fromRecord(s),e.passthroughContentTypes=c.getContentTypes()}},xp=class{constructor(){this._values=[],this._totalRefs=0,this._hash=Object.create(null)}get count(){return this._values.length}get values(){return this._values}get totalRefs(){return this._totalRefs}getString(e){return this._values[e]}add(e){let t=this._hash[e];return t===void 0&&(t=this._hash[e]=this._values.length,this._values.push(e)),this._totalRefs++,t}},Sp=class{constructor(e){this.writer=e}push(e){this.writer.addHyperlink(e)}},Cp=class{constructor(e){this.id=e.id,this.count=0,this._hyperlinks=[],this._workbook=e.workbook}get stream(){return this._stream||=this._workbook._openStream(Bi(this.id)),this._stream}get length(){return this._hyperlinks.length}each(e){return this._hyperlinks.forEach(e)}get hyperlinksProxy(){return this._hyperlinksProxy||=new Sp(this)}addHyperlink(e){if(Fa(e.target)){this._hyperlinks.push({address:e.address,target:e.target});return}let t={Target:e.target,Type:B.Hyperlink,TargetMode:`External`},n=this._writeRelationship(t);this._hyperlinks.push({rId:n,address:e.address})}addMedia(e){return this._writeRelationship(e)}addRelationship(e){return this._writeRelationship(e)}commit(){this.count&&(this._writeClose(),this.stream.end())}_writeOpen(){this.stream.write(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
320
|
-
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">`)}_writeRelationship(e){this.count||this._writeOpen();let t=`rId${++this.count}`;return e.TargetMode?this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${D(e.Target)}" TargetMode="${e.TargetMode}"/>`):this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${e.Target}"/>`),t}_writeClose(){this.stream.write(`</Relationships>`)}},wp=class{constructor(e,t,n){this.id=n.id,this.count=0,this._worksheet=e,this._workbook=n.workbook,this._sheetRelsWriter=t}get commentsStream(){return this._commentsStream||=this._workbook._openStream(Hi(this.id)),this._commentsStream}get vmlStream(){return this._vmlStream||=this._workbook._openStream(Wi(this.id)),this._vmlStream}_addRelationships(){let e={Type:B.Comments,Target:ra(this.id)};this._sheetRelsWriter.addRelationship(e);let t={Type:B.VmlDrawing,Target:ia(this.id)};this.vmlRelId=this._sheetRelsWriter.addRelationship(t)}_addCommentRefs(){this._workbook.commentRefs.push({commentName:`comments${this.id}`,vmlDrawing:`vmlDrawing${this.id}`})}_writeOpen(){this.commentsStream.write(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><comments xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><authors><author>Author</author></authors><commentList>`),this.vmlStream.write(`<?xml version="1.0" encoding="UTF-8"?><xml xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:x="urn:schemas-microsoft-com:office:excel"><o:shapelayout v:ext="edit"><o:idmap v:ext="edit" data="1" /></o:shapelayout><v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe"><v:stroke joinstyle="miter" /><v:path gradientshapeok="t" o:connecttype="rect" /></v:shapetype>`)}_writeComment(e,t){let n=new Qs,r=new A;n.render(r,e),this.commentsStream.write(r.xml);let i=new oc,a=new A;i.render(a,e,t),this.vmlStream.write(a.xml)}_writeClose(){this.commentsStream.write(`</commentList></comments>`),this.vmlStream.write(`</xml>`)}addComments(e){e&&e.length&&(this.startedData||=(this._worksheet.comments=[],this._writeOpen(),this._addRelationships(),this._addCommentRefs(),!0),e.forEach(e=>{e.refAddress=S.decodeAddress(e.ref)}),e.forEach(e=>{this._writeComment(e,this.count),this.count+=1}))}commit(){this.count&&(this._writeClose(),this.commentsStream.end(),this.vmlStream.end())}};let X=new dc,Z={dataValidations:new Ka,sheetProperties:new Xa,sheetFormatProperties:new Za,columns:new N({tag:`cols`,count:!1,childXform:new Ba}),row:new za,hyperlinks:new N({tag:`hyperlinks`,count:!1,childXform:new Pa}),sheetViews:new N({tag:`sheetViews`,count:!1,childXform:new $a}),sheetProtection:new to,pageMargins:new no,pageSeteup:new co,autoFilter:new fo,picture:new po,drawing:new mo,conditionalFormattings:new Po,headerFooter:new yo,rowBreaks:new _o,colBreaks:new vo};var Tp=class{constructor(e){this.id=e.id,this.name=e.name||`Sheet${this.id}`,this.state=e.state??`visible`,this._rows=[],this._columns=[],this._keys={},this._merges=[],this._merges.add=function(){},this._sheetRelsWriter=new Cp(e),this._sheetCommentsWriter=new wp(this,this._sheetRelsWriter,e),this._dimensions=new C,this._rowZero=1,this._rowOffset=0,this.committed=!1,this.dataValidations=new et,this._formulae={},this._siFormulae=0,this.conditionalFormatting=[],this.rowBreaks=[],this.colBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:`portrait`,horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!!(e.pageSetup&&(e.pageSetup.fitToWidth||e.pageSetup.fitToHeight)&&!e.pageSetup.scale),pageOrder:`downThenOver`,blackAndWhite:!1,draft:!1,cellComments:`None`,errors:`displayed`,scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.useSharedStrings=e.useSharedStrings??!1,this._workbook=e.workbook,this.hasComments=!1,this._views=e.views??[],this.autoFilter=e.autoFilter??null,this._media=[],this.sheetProtection=null,this._writeOpenWorksheet(),this.startedData=!1}get workbook(){return this._workbook}get stream(){return this._stream||=this._workbook._openStream(zi(this.id)),this._stream}destroy(){throw new b(`destroy`,`Invalid operation for a streaming writer`)}commit(){if(!this.committed){for(let e=this._rowOffset;e<this._rows.length;e++){let t=this._rows[e];t&&this._writeRow(t)}this._rows=null,this.startedData||this._writeOpenSheetData(),this._writeCloseSheetData(),this._writeSheetProtection(),this._writeAutoFilter(),this._writeMergeCells(),this._writeHyperlinks(),this._writeConditionalFormatting(),this._writeDataValidations(),this._writePageMargins(),this._writePageSetup(),this._writeHeaderFooter(),this._writeRowBreaks(),this._writeColBreaks(),this._writeDrawing(),this._writeBackground(),this._writeLegacyData(),this._writeCloseWorksheet(),this.stream.end(),this._sheetCommentsWriter.commit(),this._sheetRelsWriter.commit(),this.committed=!0}}get dimensions(){return this._dimensions}get views(){return this._views}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce((e,t)=>{let n=t.header&&1||t.headers&&t.headers.length||0;return Math.max(e,n)},0);let t=1,n=this._columns=[];e.forEach(e=>{let r=new Be(this,t++,!1);n.push(r),r.defn=e})}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){Object.keys(this._keys).forEach(t=>e(this._keys[t],t))}getColumn(e){if(typeof e==`string`){let t=this._keys[e];if(t)return t;e=S.l2n(e)}if(e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new Be(this,t++))}return this._columns[e-1]}get _nextRow(){return this._rowZero+(this._rows.length-this._rowOffset)}eachRow(e,t){let n,r;if(typeof e==`function`?(n=e,r=void 0):(n=t,r=e),r&&r.includeEmpty){let e=this._nextRow;for(let t=this._rowZero;t<e;t++)n(this.getRow(t),t)}else this._rows.forEach(e=>{e&&e.hasValues&&n(e,e.number)})}_commitRow(e){let t=!1,n=this._rows;for(;this._rowOffset<n.length&&!t;){let r=n[this._rowOffset];n[this._rowOffset]=void 0,this._rowOffset++,this._rowZero++,r&&(this._writeRow(r),t=r.number===e.number,this._rowZero=r.number+1),this._rowOffset>1024&&this._rowOffset>n.length>>1&&(n.splice(0,this._rowOffset),this._rowOffset=0)}}get lastRow(){let e=this._rows;for(let t=e.length-1;t>=this._rowOffset;t--){let n=e[t];if(n)return n}}findRow(e){let t=e-this._rowZero+this._rowOffset;return this._rows[t]}getRow(e){let t=e-this._rowZero+this._rowOffset;if(t<this._rowOffset)throw new m(e,`this row has been committed`);let n=this._rows[t];return n||(this._rows[t]=n=new ze(this,e)),n}addRow(e){let t=new ze(this,this._nextRow);return this._rows[t.number-this._rowZero+this._rowOffset]=t,t.values=e,t}findCell(e,t){let n=S.getAddress(e,t),r=this.findRow(n.row);return r?r.findCell(n.col):void 0}getCell(e,t){let n=S.getAddress(e,t);return this.getRow(n.row).getCellEx(n)}mergeCells(...e){let t=new C(e);this._merges.forEach(e=>{if(e.intersects(t))throw new h});let{top:n,left:r,bottom:i,right:a}=t,o=vn(n,r,i,a,(e,t)=>this.findCell(e,t)),s=this.getCell(n,r);for(let e=n;e<=i;e++)for(let t=r;t<=a;t++)(e>n||t>r)&&this.getCell(e,t).merge(s);o&&yn(n,r,i,a,o,(e,t)=>this.getCell(e,t)),this._merges.push(t)}addConditionalFormatting(e){this.conditionalFormatting.push(e)}removeConditionalFormatting(e){typeof e==`number`?this.conditionalFormatting.splice(e,1):e instanceof Function?this.conditionalFormatting=this.conditionalFormatting.filter(e):this.conditionalFormatting=[]}addBackgroundImage(e){this._background={imageId:Number(e)}}getBackgroundImageId(){return this._background&&this._background.imageId}addImage(e,t){let n=this._parseImageRange(String(e),t);this._media.push(n)}getImages(){return this._media}_parseImageRange(e,t){if(typeof t==`string`){let n=S.decode(t);if(`top`in n)return{type:`image`,imageId:e,range:{tl:new Ue(this,{col:n.left,row:n.top},-1).model,br:new Ue(this,{col:n.right,row:n.bottom},0).model,editAs:`oneCell`}};throw Error(`Invalid image range: "${t}". Expected a range like "A1:C3".`)}return{type:`image`,imageId:e,range:{tl:new Ue(this,t.tl,0).model,br:t.br?new Ue(this,t.br,0).model:void 0,ext:t.ext,editAs:t.editAs},hyperlinks:t.hyperlinks}}async protect(e,t){this.sheetProtection={sheet:!0},t&&`spinCount`in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName=`SHA-512`,this.sheetProtection.saltValue=Ft(on.randomBytes(16)),this.sheetProtection.spinCount=t&&`spinCount`in t?t.spinCount:1e5,this.sheetProtection.hashValue=await on.convertPasswordToHash(e,`SHA-512`,this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&`spinCount`in t&&delete this.sheetProtection.spinCount)}unprotect(){this.sheetProtection=null}_write(e){X.reset(),X.addText(e),this.stream.write(X)}_writeSheetProperties(e,t,n){let r={outlineProperties:t&&t.outlineProperties,tabColor:t&&t.tabColor,pageSetup:n&&n.fitToPage?{fitToPage:n.fitToPage}:void 0};e.addText(Z.sheetProperties.toXml(r))}_writeSheetFormatProperties(e,t){let n=t?{defaultRowHeight:t.defaultRowHeight,dyDescent:t.dyDescent,outlineLevelCol:t.outlineLevelCol,outlineLevelRow:t.outlineLevelRow}:void 0;t&&t.defaultColWidth&&(n.defaultColWidth=t.defaultColWidth),e.addText(Z.sheetFormatProperties.toXml(n))}_writeOpenWorksheet(){X.reset(),X.addText(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>`),X.addText(`<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">`),this._writeSheetProperties(X,this.properties,this.pageSetup),X.addText(Z.sheetViews.toXml(this.views)),this._writeSheetFormatProperties(X,this.properties),this.stream.write(X)}_writeColumns(){let e=Be.toModel(this.columns);e&&(Z.columns.prepare(e,{styles:this._workbook.styles}),this.stream.write(Z.columns.toXml(e)))}_writeOpenSheetData(){this._write(`<sheetData>`)}_writeRow(e){if(this.startedData||=(this._writeColumns(),this._writeOpenSheetData(),!0),e.hasValues||e.height!=null){let{model:t}=e,n={styles:this._workbook.styles,sharedStrings:this.useSharedStrings?this._workbook.sharedStrings:void 0,hyperlinks:this._sheetRelsWriter.hyperlinksProxy,merges:this._merges,formulae:this._formulae,siFormulae:this._siFormulae,comments:[]};Z.row.prepare(t,n),this.stream.write(Z.row.toXml(t)),n.comments.length&&(this.hasComments=!0,this._sheetCommentsWriter.addComments(n.comments))}}_writeCloseSheetData(){this._write(`</sheetData>`)}_writeMergeCells(){this._merges.length&&(X.reset(),X.addText(`<mergeCells count="${this._merges.length}">`),this._merges.forEach(e=>{X.addText(`<mergeCell ref="${e}"/>`)}),X.addText(`</mergeCells>`),this.stream.write(X))}_writeHyperlinks(){this.stream.write(Z.hyperlinks.toXml(this._sheetRelsWriter._hyperlinks))}_writeConditionalFormatting(){let e={styles:this._workbook.styles};Z.conditionalFormattings.prepare(this.conditionalFormatting,e),this.stream.write(Z.conditionalFormattings.toXml(this.conditionalFormatting))}_writeRowBreaks(){this.stream.write(Z.rowBreaks.toXml(this.rowBreaks))}_writeColBreaks(){this.stream.write(Z.colBreaks.toXml(this.colBreaks))}_writeDataValidations(){this.stream.write(Z.dataValidations.toXml(this.dataValidations.model))}_writeSheetProtection(){this.stream.write(Z.sheetProtection.toXml(this.sheetProtection))}_writePageMargins(){this.stream.write(Z.pageMargins.toXml(this.pageSetup.margins))}_writePageSetup(){this.stream.write(Z.pageSeteup.toXml(this.pageSetup))}_writeHeaderFooter(){this.stream.write(Z.headerFooter.toXml(this.headerFooter))}_writeAutoFilter(){this.stream.write(Z.autoFilter.toXml(this.autoFilter))}_writeDrawing(){if(this._media.length===0)return;let e=`drawing${this.id}`,t=this._sheetRelsWriter.addRelationship({Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:aa(e)}),{anchors:n,rels:r}=Xo(this._media,[],{getBookImage:e=>this._workbook.getImage(Number(e)),nextRId:e=>`rId${e.length+1}`});this._drawing={rId:t,name:e,anchors:n,rels:r},this.stream.write(Z.drawing.toXml({rId:t}))}get drawing(){return this._drawing}_writeBackground(){if(this._background){if(this._background.imageId!==void 0){let e=this._workbook.getImage(this._background.imageId),t=this._sheetRelsWriter.addMedia({Target:fa(e.name),Type:B.Image});this._background={...this._background,rId:t}}this.stream.write(Z.picture.toXml({rId:this._background.rId}))}}_writeLegacyData(){this.hasComments&&(X.reset(),X.addText(`<legacyDrawing r:id="${this._sheetCommentsWriter.vmlRelId}"/>`),this.stream.write(X))}_writeDimensions(){}_writeCloseWorksheet(){this._write(`</worksheet>`)}};let Ep=new Uint8Array,Dp=new TextDecoder;var Op=class{constructor(e,t){this.WorksheetWriterClass=t,this.created=e.created||new Date,this.modified=e.modified||this.created,this.creator=e.creator??`ExcelTS`,this.lastModifiedBy=e.lastModifiedBy??`ExcelTS`,this.lastPrinted=e.lastPrinted,this.useSharedStrings=e.useSharedStrings??!1,this.sharedStrings=new xp,this.styles=e.useStyles?new Xr(!0):new Xr.Mock(!0),this._definedNames=new sr,this._worksheets=[],this.views=[],this.zipOptions=e.zip;let n=e.zip?.zlib?.level??e.zip?.compressionOptions?.level??1;this.compressionLevel=Math.max(0,Math.min(9,n)),this.media=[],this.commentRefs=[],this._trueStreaming=e.trueStreaming??!1,this.zip=new ef((e,t,n)=>{e?this.stream.emit(`error`,e):(this.stream.write(t),n&&this.stream.end())}),this.stream=this._createOutputStream(e),this.promise=Promise.resolve()}_createOutputStream(e){return e.stream?Qf(e.stream):new _c}get definedNames(){return this._definedNames}_openStream(e){let t=new _c({bufSize:this._trueStreaming?4096:65536,batch:!this._trueStreaming}),n=new $d(e,{level:this.compressionLevel});this.zip.add(n);let r=e=>n.push(e);return t.on(`data`,r),t.once(`finish`,()=>{t.removeListener(`data`,r),n.push(Ep,!0),t.emit(`zipped`)}),t}_addFile(e,t,n){let r=new $d(t,{level:this.compressionLevel});this.zip.add(r);let i;i=n?lt(typeof e==`string`?e:Dp.decode(e)):typeof e==`string`?en(e):e,r.push(i,!0)}_commitWorksheets(){let e=this._worksheets.map(e=>e.committed?Promise.resolve():new Promise(t=>{e.stream.once(`zipped`,()=>t()),e.commit()}));return e.length?Promise.all(e).then(()=>{}):Promise.resolve()}async commit(){await this.promise,await this._commitWorksheets(),await this.addMedia(),this.addDrawings(),await Promise.all([this.addThemes(),this.addOfficeRels(),this.addContentTypes(),this.addApp(),this.addCore(),this.addSharedStrings(),this.addStyles(),this.addFeaturePropertyBag(),this.addWorkbookRels()]),await this.addWorkbook(),await this._finalize()}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addImage(e){let t=this.media.length,n={...e,type:`image`,name:`image${t}.${e.extension}`};return this.media.push(n),t}getImage(e){return this.media[e]}addWorksheet(e,t){let n=t||{},r=n.useSharedStrings===void 0?this.useSharedStrings:n.useSharedStrings;n.tabColor&&(console.trace(`tabColor option has moved to { properties: tabColor: {...} }`),n.properties={tabColor:n.tabColor,...n.properties});let i=this.nextId;e??=`sheet${i}`;let a=new this.WorksheetWriterClass({id:i,name:e,workbook:this,useSharedStrings:r,properties:n.properties,state:n.state,pageSetup:n.pageSetup,views:n.views,autoFilter:n.autoFilter,headerFooter:n.headerFooter});return this._worksheets[i]=a,a}getWorksheet(e){if(e===void 0)return this._worksheets.find(()=>!0);if(typeof e==`number`)return this._worksheets[e];if(typeof e==`string`){let t=e.toLowerCase();return this._worksheets.find(e=>e?.name?.toLowerCase()===t)}}addStyles(){return new Promise(e=>{this._addFile(this.styles.xml,R.xlStyles),e()})}addThemes(){return new Promise(e=>{this._addFile(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
320
|
+
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">`)}_writeRelationship(e){this.count||this._writeOpen();let t=`rId${++this.count}`;return e.TargetMode?this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${D(e.Target)}" TargetMode="${e.TargetMode}"/>`):this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${e.Target}"/>`),t}_writeClose(){this.stream.write(`</Relationships>`)}},wp=class{constructor(e,t,n){this.id=n.id,this.count=0,this._worksheet=e,this._workbook=n.workbook,this._sheetRelsWriter=t}get commentsStream(){return this._commentsStream||=this._workbook._openStream(Hi(this.id)),this._commentsStream}get vmlStream(){return this._vmlStream||=this._workbook._openStream(Wi(this.id)),this._vmlStream}_addRelationships(){let e={Type:B.Comments,Target:ra(this.id)};this._sheetRelsWriter.addRelationship(e);let t={Type:B.VmlDrawing,Target:ia(this.id)};this.vmlRelId=this._sheetRelsWriter.addRelationship(t)}_addCommentRefs(){this._workbook.commentRefs.push({commentName:`comments${this.id}`,vmlDrawing:`vmlDrawing${this.id}`})}_writeOpen(){this.commentsStream.write(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><comments xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><authors><author>Author</author></authors><commentList>`),this.vmlStream.write(`<?xml version="1.0" encoding="UTF-8"?><xml xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:x="urn:schemas-microsoft-com:office:excel"><o:shapelayout v:ext="edit"><o:idmap v:ext="edit" data="1" /></o:shapelayout><v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe"><v:stroke joinstyle="miter" /><v:path gradientshapeok="t" o:connecttype="rect" /></v:shapetype>`)}_writeComment(e,t){let n=new Qs,r=new A;n.render(r,e),this.commentsStream.write(r.xml);let i=new oc,a=new A;i.render(a,e,t),this.vmlStream.write(a.xml)}_writeClose(){this.commentsStream.write(`</commentList></comments>`),this.vmlStream.write(`</xml>`)}addComments(e){e&&e.length&&(this.startedData||=(this._worksheet.comments=[],this._writeOpen(),this._addRelationships(),this._addCommentRefs(),!0),e.forEach(e=>{e.refAddress=S.decodeAddress(e.ref)}),e.forEach(e=>{this._writeComment(e,this.count),this.count+=1}))}commit(){this.count&&(this._writeClose(),this.commentsStream.end(),this.vmlStream.end())}};let X=new dc,Z={dataValidations:new Ka,sheetProperties:new Xa,sheetFormatProperties:new Za,columns:new N({tag:`cols`,count:!1,childXform:new Ba}),row:new za,hyperlinks:new N({tag:`hyperlinks`,count:!1,childXform:new Pa}),sheetViews:new N({tag:`sheetViews`,count:!1,childXform:new $a}),sheetProtection:new to,pageMargins:new no,pageSeteup:new co,autoFilter:new fo,picture:new po,drawing:new mo,conditionalFormattings:new Po,headerFooter:new yo,rowBreaks:new _o,colBreaks:new vo};var Tp=class{constructor(e){this.id=e.id,this.name=e.name||`Sheet${this.id}`,this.state=e.state??`visible`,this._rows=[],this._columns=[],this._keys={},this._merges=[],this._merges.add=function(){},this._sheetRelsWriter=new Cp(e),this._sheetCommentsWriter=new wp(this,this._sheetRelsWriter,e),this._dimensions=new C,this._rowZero=1,this._rowOffset=0,this.committed=!1,this.dataValidations=new et,this._formulae={},this._siFormulae=0,this.conditionalFormatting=[],this.rowBreaks=[],this.colBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:`portrait`,horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!!(e.pageSetup&&(e.pageSetup.fitToWidth||e.pageSetup.fitToHeight)&&!e.pageSetup.scale),pageOrder:`downThenOver`,blackAndWhite:!1,draft:!1,cellComments:`None`,errors:`displayed`,scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.useSharedStrings=e.useSharedStrings??!1,this._workbook=e.workbook,this.hasComments=!1,this._views=e.views??[],this.autoFilter=e.autoFilter??null,this._media=[],this.sheetProtection=null,this._writeOpenWorksheet(),this.startedData=!1}get workbook(){return this._workbook}get stream(){return this._stream||=this._workbook._openStream(zi(this.id)),this._stream}destroy(){throw new b(`destroy`,`Invalid operation for a streaming writer`)}commit(){if(!this.committed){for(let e=this._rowOffset;e<this._rows.length;e++){let t=this._rows[e];t&&this._writeRow(t)}this._rows=null,this.startedData||this._writeOpenSheetData(),this._writeCloseSheetData(),this._writeSheetProtection(),this._writeAutoFilter(),this._writeMergeCells(),this._writeHyperlinks(),this._writeConditionalFormatting(),this._writeDataValidations(),this._writePageMargins(),this._writePageSetup(),this._writeHeaderFooter(),this._writeRowBreaks(),this._writeColBreaks(),this._writeDrawing(),this._writeBackground(),this._writeLegacyData(),this._writeCloseWorksheet(),this.stream.end(),this._sheetCommentsWriter.commit(),this._sheetRelsWriter.commit(),this.committed=!0}}get dimensions(){return this._dimensions}get views(){return this._views}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce((e,t)=>{let n=t.header&&1||t.headers&&t.headers.length||0;return Math.max(e,n)},0);let t=1,n=this._columns=[];e.forEach(e=>{let r=new Be(this,t++,!1);n.push(r),r.defn=e})}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){Object.keys(this._keys).forEach(t=>e(this._keys[t],t))}getColumn(e){if(typeof e==`string`){let t=this._keys[e];if(t)return t;e=S.l2n(e)}if(e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new Be(this,t++))}return this._columns[e-1]}get _nextRow(){return this._rowZero+(this._rows.length-this._rowOffset)}eachRow(e,t){let n,r;if(typeof e==`function`?(n=e,r=void 0):(n=t,r=e),r&&r.includeEmpty){let e=this._nextRow;for(let t=this._rowZero;t<e;t++)n(this.getRow(t),t)}else this._rows.forEach(e=>{e&&e.hasValues&&n(e,e.number)})}_commitRow(e){let t=!1,n=this._rows;for(;this._rowOffset<n.length&&!t;){let r=n[this._rowOffset];n[this._rowOffset]=void 0,this._rowOffset++,this._rowZero++,r&&(this._writeRow(r),t=r.number===e.number,this._rowZero=r.number+1),this._rowOffset>1024&&this._rowOffset>n.length>>1&&(n.splice(0,this._rowOffset),this._rowOffset=0)}}get lastRow(){let e=this._rows;for(let t=e.length-1;t>=this._rowOffset;t--){let n=e[t];if(n)return n}}findRow(e){let t=e-this._rowZero+this._rowOffset;return this._rows[t]}getRow(e){let t=e-this._rowZero+this._rowOffset;if(t<this._rowOffset)throw new m(e,`this row has been committed`);let n=this._rows[t];return n||(this._rows[t]=n=new ze(this,e)),n}addRow(e){let t=new ze(this,this._nextRow);return this._rows[t.number-this._rowZero+this._rowOffset]=t,t.values=e,t}findCell(e,t){let n=S.getAddress(e,t),r=this.findRow(n.row);return r?r.findCell(n.col):void 0}getCell(e,t){let n=S.getAddress(e,t);return this.getRow(n.row).getCellEx(n)}mergeCells(...e){let t=new C(e);this._merges.forEach(e=>{if(e.intersects(t))throw new h});let{top:n,left:r,bottom:i,right:a}=t,o=vn(n,r,i,a,(e,t)=>this.findCell(e,t)),s=this.getCell(n,r);for(let e=n;e<=i;e++)for(let t=r;t<=a;t++)(e>n||t>r)&&this.getCell(e,t).merge(s);o&&yn(n,r,i,a,o,(e,t)=>this.getCell(e,t)),this._merges.push(t)}addConditionalFormatting(e){this.conditionalFormatting.push(e)}removeConditionalFormatting(e){typeof e==`number`?this.conditionalFormatting.splice(e,1):e instanceof Function?this.conditionalFormatting=this.conditionalFormatting.filter(e):this.conditionalFormatting=[]}addBackgroundImage(e){this._background={imageId:Number(e)}}getBackgroundImageId(){return this._background&&this._background.imageId}addImage(e,t){let n=this._parseImageRange(String(e),t);this._media.push(n)}getImages(){return this._media}_parseImageRange(e,t){if(typeof t==`string`){let n=S.decode(t);if(`top`in n)return{type:`image`,imageId:e,range:{tl:new Ue(this,{col:n.left,row:n.top},-1).model,br:new Ue(this,{col:n.right,row:n.bottom},0).model,editAs:`oneCell`}};throw Error(`Invalid image range: "${t}". Expected a range like "A1:C3".`)}return{type:`image`,imageId:e,range:{tl:new Ue(this,t.tl,0).model,br:t.br?new Ue(this,t.br,0).model:void 0,ext:t.ext,editAs:t.editAs},hyperlinks:t.hyperlinks}}async protect(e,t){this.sheetProtection={sheet:!0},t&&`spinCount`in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName=`SHA-512`,this.sheetProtection.saltValue=Ft(on.randomBytes(16)),this.sheetProtection.spinCount=t&&`spinCount`in t?t.spinCount:1e5,this.sheetProtection.hashValue=await on.convertPasswordToHash(e,`SHA-512`,this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&`spinCount`in t&&delete this.sheetProtection.spinCount)}unprotect(){this.sheetProtection=null}_write(e){X.reset(),X.addText(e),this.stream.write(X)}_writeSheetProperties(e,t,n){let r={outlineProperties:t&&t.outlineProperties,tabColor:t&&t.tabColor,pageSetup:n&&n.fitToPage?{fitToPage:n.fitToPage}:void 0};e.addText(Z.sheetProperties.toXml(r))}_writeSheetFormatProperties(e,t){let n=t?{defaultRowHeight:t.defaultRowHeight,dyDescent:t.dyDescent,outlineLevelCol:t.outlineLevelCol,outlineLevelRow:t.outlineLevelRow}:void 0;t&&t.defaultColWidth&&(n.defaultColWidth=t.defaultColWidth),e.addText(Z.sheetFormatProperties.toXml(n))}_writeOpenWorksheet(){X.reset(),X.addText(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>`),X.addText(`<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">`),this._writeSheetProperties(X,this.properties,this.pageSetup),X.addText(Z.sheetViews.toXml(this.views)),this._writeSheetFormatProperties(X,this.properties),this.stream.write(X)}_writeColumns(){let e=Be.toModel(this.columns);e&&(Z.columns.prepare(e,{styles:this._workbook.styles}),this.stream.write(Z.columns.toXml(e)))}_writeOpenSheetData(){this._write(`<sheetData>`)}_writeRow(e){if(this.startedData||=(this._writeColumns(),this._writeOpenSheetData(),!0),e.hasValues||e.height!=null){let{model:t}=e,n={styles:this._workbook.styles,sharedStrings:this.useSharedStrings?this._workbook.sharedStrings:void 0,hyperlinks:this._sheetRelsWriter.hyperlinksProxy,merges:this._merges,formulae:this._formulae,siFormulae:this._siFormulae,comments:[]};Z.row.prepare(t,n),this.stream.write(Z.row.toXml(t)),n.comments.length&&(this.hasComments=!0,this._sheetCommentsWriter.addComments(n.comments))}}_writeCloseSheetData(){this._write(`</sheetData>`)}_writeMergeCells(){this._merges.length&&(X.reset(),X.addText(`<mergeCells count="${this._merges.length}">`),this._merges.forEach(e=>{X.addText(`<mergeCell ref="${e}"/>`)}),X.addText(`</mergeCells>`),this.stream.write(X))}_writeHyperlinks(){this.stream.write(Z.hyperlinks.toXml(this._sheetRelsWriter._hyperlinks))}_writeConditionalFormatting(){let e={styles:this._workbook.styles};Z.conditionalFormattings.prepare(this.conditionalFormatting,e),this.stream.write(Z.conditionalFormattings.toXml(this.conditionalFormatting))}_writeRowBreaks(){this.stream.write(Z.rowBreaks.toXml(this.rowBreaks))}_writeColBreaks(){this.stream.write(Z.colBreaks.toXml(this.colBreaks))}_writeDataValidations(){this.stream.write(Z.dataValidations.toXml(this.dataValidations.model))}_writeSheetProtection(){this.stream.write(Z.sheetProtection.toXml(this.sheetProtection))}_writePageMargins(){this.stream.write(Z.pageMargins.toXml(this.pageSetup.margins))}_writePageSetup(){this.stream.write(Z.pageSeteup.toXml(this.pageSetup))}_writeHeaderFooter(){this.stream.write(Z.headerFooter.toXml(this.headerFooter))}_writeAutoFilter(){this.stream.write(Z.autoFilter.toXml(this.autoFilter))}_writeDrawing(){if(this._media.length===0)return;let e=`drawing${this.id}`,t=this._sheetRelsWriter.addRelationship({Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:aa(e)}),{anchors:n,rels:r}=Xo(this._media,[],{getBookImage:e=>this._workbook.getImage(Number(e)),nextRId:e=>`rId${e.length+1}`});this._drawing={rId:t,name:e,anchors:n,rels:r},this.stream.write(Z.drawing.toXml({rId:t}))}get drawing(){return this._drawing}_writeBackground(){if(this._background){if(this._background.imageId!==void 0){let e=this._workbook.getImage(this._background.imageId),t=this._sheetRelsWriter.addMedia({Target:fa(e.name),Type:B.Image});this._background={...this._background,rId:t}}this.stream.write(Z.picture.toXml({rId:this._background.rId}))}}_writeLegacyData(){this.hasComments&&(X.reset(),X.addText(`<legacyDrawing r:id="${this._sheetCommentsWriter.vmlRelId}"/>`),this.stream.write(X))}_writeDimensions(){}_writeCloseWorksheet(){this._write(`</worksheet>`)}};let Ep=new Uint8Array,Dp=new TextDecoder;var Op=class{constructor(e,t){this.WorksheetWriterClass=t,this.created=e.created||new Date,this.modified=e.modified||this.created,this.creator=e.creator??`ExcelTS`,this.lastModifiedBy=e.lastModifiedBy??`ExcelTS`,this.lastPrinted=e.lastPrinted,this.useSharedStrings=e.useSharedStrings??!1,this.sharedStrings=new xp,this.styles=e.useStyles?new Xr(!0):new Xr.Mock(!0),this._definedNames=new sr,this._worksheets=[],this.views=[],this.zipOptions=e.zip;let n=e.zip?.zlib?.level??e.zip?.compressionOptions?.level??6;this.compressionLevel=Math.max(0,Math.min(9,n)),this.media=[],this.commentRefs=[],this._trueStreaming=e.trueStreaming??!1,this.zip=new ef((e,t,n)=>{e?this.stream.emit(`error`,e):(this.stream.write(t),n&&this.stream.end())}),this.stream=this._createOutputStream(e),this.promise=Promise.resolve()}_createOutputStream(e){return e.stream?Qf(e.stream):new _c}get definedNames(){return this._definedNames}_openStream(e){let t=new _c({bufSize:this._trueStreaming?4096:65536,batch:!this._trueStreaming}),n=new $d(e,{level:this.compressionLevel});this.zip.add(n);let r=e=>n.push(e);return t.on(`data`,r),t.once(`finish`,()=>{t.removeListener(`data`,r),n.push(Ep,!0),t.emit(`zipped`)}),t}_addFile(e,t,n){let r=new $d(t,{level:this.compressionLevel});this.zip.add(r);let i;i=n?lt(typeof e==`string`?e:Dp.decode(e)):typeof e==`string`?en(e):e,r.push(i,!0)}_commitWorksheets(){let e=this._worksheets.map(e=>e.committed?Promise.resolve():new Promise(t=>{e.stream.once(`zipped`,()=>t()),e.commit()}));return e.length?Promise.all(e).then(()=>{}):Promise.resolve()}async commit(){await this.promise,await this._commitWorksheets(),await this.addMedia(),this.addDrawings(),await Promise.all([this.addThemes(),this.addOfficeRels(),this.addContentTypes(),this.addApp(),this.addCore(),this.addSharedStrings(),this.addStyles(),this.addFeaturePropertyBag(),this.addWorkbookRels()]),await this.addWorkbook(),await this._finalize()}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addImage(e){let t=this.media.length,n={...e,type:`image`,name:`image${t}.${e.extension}`};return this.media.push(n),t}getImage(e){return this.media[e]}addWorksheet(e,t){let n=t||{},r=n.useSharedStrings===void 0?this.useSharedStrings:n.useSharedStrings;n.tabColor&&(console.trace(`tabColor option has moved to { properties: tabColor: {...} }`),n.properties={tabColor:n.tabColor,...n.properties});let i=this.nextId;e??=`sheet${i}`;let a=new this.WorksheetWriterClass({id:i,name:e,workbook:this,useSharedStrings:r,properties:n.properties,state:n.state,pageSetup:n.pageSetup,views:n.views,autoFilter:n.autoFilter,headerFooter:n.headerFooter});return this._worksheets[i]=a,a}getWorksheet(e){if(e===void 0)return this._worksheets.find(()=>!0);if(typeof e==`number`)return this._worksheets[e];if(typeof e==`string`){let t=e.toLowerCase();return this._worksheets.find(e=>e?.name?.toLowerCase()===t)}}addStyles(){return new Promise(e=>{this._addFile(this.styles.xml,R.xlStyles),e()})}addThemes(){return new Promise(e=>{this._addFile(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
321
321
|
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"> <a:shade val="95000"/> <a:satMod val="105000"/> </a:schemeClr> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <a:scene3d> <a:camera prst="orthographicFront"> <a:rot lat="0" lon="0" rev="0"/> </a:camera> <a:lightRig rig="threePt" dir="t"> <a:rot lat="0" lon="0" rev="1200000"/> </a:lightRig> </a:scene3d> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="1"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="3"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="2"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="lt1"/> </a:fontRef> </a:style> </a:spDef> <a:lnDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="2"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="0"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="1"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="tx1"/> </a:fontRef> </a:style> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>`,R.xlTheme1),e()})}addOfficeRels(){return new Promise(e=>{let t=new L().toXml([{Id:`rId1`,Type:B.OfficeDocument,Target:R.xlWorkbook},{Id:`rId2`,Type:B.CoreProperties,Target:R.docPropsCore},{Id:`rId3`,Type:B.ExtenderProperties,Target:R.docPropsApp}]);this._addFile(t,R.rootRels),e()})}addContentTypes(){return new Promise(e=>{let t=this._worksheets.filter(Boolean);t.forEach(e=>{e.fileIndex=e.id});let n=t.filter(e=>e.drawing).map(e=>e.drawing),r={worksheets:t,sharedStrings:this.sharedStrings,commentRefs:this.commentRefs,media:this.media,drawings:n,hasCheckboxes:this.styles.hasCheckboxes},i=new ha;this._addFile(i.toXml(r),R.contentTypes),e()})}addMedia(){return Promise.all(this.media.map(async e=>{if(e.type===`image`){let t=Ri(e.name);if(e.buffer){this._addFile(e.buffer,t);return}if(e.base64){let n=e.base64.substring(e.base64.indexOf(`,`)+1);this._addFile(n,t,!0);return}if(e.filename)throw new v(`Loading images from filename`,`not supported in browser. Use buffer or base64.`)}throw new ne(`Unsupported media`)}))}addDrawings(){let e=new ys,t=new L;for(let n of this._worksheets){if(!n?.drawing)continue;let{drawing:r}=n,i=Zo(r.anchors),a={...r,anchors:i};e.prepare(a);let o=e.toXml(a);this._addFile(o,Ki(r.name));let s=t.toXml(r.rels);this._addFile(s,qi(r.name))}}addApp(){return new Promise(e=>{let t=new va;this._addFile(t.toXml({worksheets:this._worksheets.filter(Boolean)}),R.docPropsApp),e()})}addCore(){return new Promise(e=>{let t=new Qr;this._addFile(t.toXml(this),R.docPropsCore),e()})}addSharedStrings(){return this.sharedStrings.count?new Promise(e=>{let t=new ri;this._addFile(t.toXml(this.sharedStrings),R.xlSharedStrings),e()}):Promise.resolve()}addFeaturePropertyBag(){if(this.styles.hasCheckboxes){let e=new ts;this._addFile(e.toXml({}),R.xlFeaturePropertyBag)}return Promise.resolve()}addWorkbookRels(){let e=1,t=[{Id:`rId${e++}`,Type:B.Styles,Target:ta.workbookStyles},{Id:`rId${e++}`,Type:B.Theme,Target:ta.workbookTheme1}];return this.sharedStrings.count&&t.push({Id:`rId${e++}`,Type:B.SharedStrings,Target:ta.workbookSharedStrings}),this.styles.hasCheckboxes&&t.push({Id:`rId${e++}`,Type:B.FeaturePropertyBag,Target:ta.workbookFeaturePropertyBag}),this._worksheets.forEach(n=>{n&&(n.rId=`rId${e++}`,t.push({Id:n.rId,Type:B.Worksheet,Target:Vi(n.id)}))}),new Promise(e=>{let n=new L;this._addFile(n.toXml(t),R.xlWorkbookRels),e()})}addWorkbook(){let e={worksheets:this._worksheets.filter(Boolean),definedNames:this._definedNames.model,views:this.views,properties:{},calcProperties:{}};return new Promise(t=>{let n=new Ma;n.prepare(e),this._addFile(n.toXml(e),R.xlWorkbook),t()})}_finalize(){return new Promise((e,t)=>{let n=e=>{this.stream.removeListener(`finish`,r),t(e)},r=()=>{this.stream.removeListener(`error`,n),e(this)};this.stream.once(`error`,n),this.stream.once(`finish`,r),this.zip.end()})}},kp=class extends Op{constructor(e={}){super(e,Tp)}},Ap=class{constructor(e){this.searchFrom=0,this.pattern=e,this.overlap=Math.max(0,e.length-1)}find(e){return e.indexOfPattern(this.pattern,this.searchFrom)}onConsume(e){e>0&&(this.searchFrom=Math.max(0,this.searchFrom-e))}onNoMatch(e){this.searchFrom=Math.max(this.searchFrom,Math.max(0,e-this.overlap))}};let jp=[[`version`,4],[`pubKeyLength`,4],[`signatureLength`,4]],Mp=[[`versionsNeededToExtract`,2],[`flags`,2],[`compressionMethod`,2],[`lastModifiedTime`,2],[`lastModifiedDate`,2],[`crc32`,4],[`compressedSize`,4],[`uncompressedSize`,4],[`fileNameLength`,2],[`extraFieldLength`,2]],Np=[[`dataDescriptorSignature`,4],[`crc32`,4],[`compressedSize`,4],[`uncompressedSize`,4]],Pp=[[`versionMadeBy`,2],[`versionsNeededToExtract`,2],[`flags`,2],[`compressionMethod`,2],[`lastModifiedTime`,2],[`lastModifiedDate`,2],[`crc32`,4],[`compressedSize`,4],[`uncompressedSize`,4],[`fileNameLength`,2],[`extraFieldLength`,2],[`fileCommentLength`,2],[`diskNumber`,2],[`internalFileAttributes`,2],[`externalFileAttributes`,4],[`offsetToLocalFileHeader`,4]],Fp=[[`diskNumber`,2],[`diskStart`,2],[`numberOfRecordsOnDisk`,2],[`numberOfRecords`,2],[`sizeOfCentralDirectory`,4],[`offsetToStartOfCentralDirectory`,4],[`commentLength`,2]],Ip=Kl(Qu);function Lp(e){return((e||0)&td)!==0}function Rp(e){if(e.length===0)return!1;let t=e.charCodeAt(e.length-1);return t===47||t===92}function zp(e,t){return t===0&&Rp(e)?`Directory`:`File`}function Bp(e,t,n){return{path:e,pathBuffer:t,flags:{isUnicode:Lp(n)}}}function Vp(e,t){let n=e.lastModifiedDate||0,r=e.lastModifiedTime||0,i=Gu(n,r),a=t.mtimeUnixSeconds;return a===void 0?i:Ku(n,r,a)}let Hp=Dd;function Up(e){return((e||0)&8)!=0}function Wp(e,t){return!Up(e)||(t||0)>0}async function Gp(e){let t=await e(12),n=t.length>=12?$p(t):Xl(t,jp),r=n.pubKeyLength||0,i=await e(r+(n.signatureLength||0));return n.publicKey=i.subarray(0,r),n.signature=i.subarray(r),n}async function Kp(e){let t=await e(26),n=t.length>=26?em(t):Xl(t,Mp);return{vars:n,fileNameBuffer:await e(n.fileNameLength||0),extraFieldData:await e(n.extraFieldLength||0)}}async function qp(e){let t=await e(16);return t.length>=16?tm(t):Xl(t,Np)}async function Jp(e){let t=Xl(await e(42),Pp);await e(t.fileNameLength||0),await e(t.extraFieldLength||0),await e(t.fileCommentLength||0)}async function Yp(e){await e(Xl(await e(18),Fp).commentLength||0)}function Xp(e){switch(e){case Yu:case Xu:case Zu:case $u:case ed:return!0;default:return!1}}function Zp(e,t){return(e[t]|0|(e[t+1]|0)<<8|(e[t+2]|0)<<16|(e[t+3]|0)<<24)>>>0}function Qp(e,t){return(e[t]|(e[t+1]|0)<<8)>>>0}function $p(e){return{version:Zp(e,0),pubKeyLength:Zp(e,4),signatureLength:Zp(e,8)}}function em(e){return{versionsNeededToExtract:Qp(e,0),flags:Qp(e,2),compressionMethod:Qp(e,4),lastModifiedTime:Qp(e,6),lastModifiedDate:Qp(e,8),crc32:Zp(e,10),compressedSize:Zp(e,14),uncompressedSize:Zp(e,18),fileNameLength:Qp(e,22),extraFieldLength:Qp(e,24)}}function tm(e){return{dataDescriptorSignature:Zp(e,0),crc32:Zp(e,4),compressedSize:Zp(e,8),uncompressedSize:Zp(e,12)}}let nm=Kl(Zu);async function rm(e,t,n,r,i){for(;;){let a=await t.pull(4);if(a.length===0){n.emitClose();return}let o=ql(a,0);if(o===875721283){r.crxHeader=await Gp(async e=>t.pull(e)),n.emitCrxHeader(r.crxHeader);continue}if(o===67324752){await i(e,t,n,r);continue}if(o===33639248){r.reachedCD=!0,await Jp(async e=>t.pull(e));continue}if(o===101010256){await Yp(async e=>t.pull(e)),t.setDone(),n.emitClose();return}if(r.reachedCD){await t.pullUntil(nm,!0),await Yp(async e=>t.pull(e)),t.setDone(),n.emitClose();return}n.emitError(Error(`invalid signature: 0x`+o.toString(16))),n.emitClose();return}}let im=256*1024;function am(e){let t=e.pipe(new np({transform(e,t,n){n()}}));return t.promise=()=>new Promise((e,n)=>{t.on(`finish`,e),t.on(`error`,n)}),t}function om(e){return new Promise((t,n)=>{let r=[],i=new np({transform(e,t,n){r.push(e),n()}});i.on(`finish`,()=>{t(r.length===1?r[0]:k(r))}),i.on(`error`,n),e.on(`error`,n).pipe(i)})}function sm(e){let{source:t,dataDescriptorSignature:n}=e,r=e.keepTailBytes??20,i=e.errorMessage??`FILE_ENDED: Data descriptor not found`,a=new rp({highWaterMark:im}),o=!1,s=!1,c=0,l=new Ap(n),u,d=()=>{u&&=(u(),void 0)},f=()=>{s=!1,p()},p=()=>{if(o||s)return;let e=t.getLength();for(e===0&&t.maybeReleaseWriteCallback?.();e>0;){for(;;){let n=l.find(t);if(n===-1)break;let r=n+16;if(r+4<=e){let e=t.peekUint32LE(r),i=t.peekUint32LE(n+8),u=c+n>>>0;if(e!==null&&i!==null&&Xp(e)&&i===u){if(n>0)if(t.peekChunks&&t.discard){let e=t.peekChunks(n),r=0;for(let t of e){let e=a.write(t);if(r+=t.length,!e){s=!0,a.once(`drain`,f);break}}if(r>0&&(t.discard(r),c+=r,l.onConsume(r)),s)return}else{let e=a.write(t.read(n));if(c+=n,l.onConsume(n),!e){s=!0,a.once(`drain`,f);return}}o=!0,t.maybeReleaseWriteCallback?.(),d(),a.end();return}l.searchFrom=n+1;continue}l.searchFrom=n;break}l.onNoMatch(e);let n=Math.max(0,e-r);if(n>0){if(t.peekChunks&&t.discard){let i=t.peekChunks(n),o=0;for(let e of i){let t=a.write(e);if(o+=e.length,!t){s=!0,a.once(`drain`,f);break}}o>0&&(t.discard(o),c+=o,e-=o,l.onConsume(o)),e<=r&&t.maybeReleaseWriteCallback?.();return}let i=a.write(t.read(n));c+=n,e-=n,l.onConsume(n),e<=r&&t.maybeReleaseWriteCallback?.(),i||(s=!0,a.once(`drain`,f));return}t.maybeReleaseWriteCallback?.();break}!o&&t.isFinished()&&(o=!0,d(),a.destroy(Error(i)))};return u=t.onDataAvailable(p),queueMicrotask(p),a}async function cm(e,t,n,r,i,a){let o=e.thresholdBytes??5242880;await rm(e,t,n,i,async(s,c,l,u)=>{await um(e,t,n,r,i,o,a)})}async function lm(e,t,n,r){let i=r,a=null,o=e=>{a=e};t.once(`error`,o),n.once(`error`,o);let s=!1,c=t,l=null,u=()=>{try{c?.removeListener?.(`drain`,f)}catch{}try{n.removeListener(`__autodrain`,p)}catch{}try{n.removeListener(`close`,m)}catch{}},d=()=>{let e=l;e&&(l=null,u(),e())},f=()=>{d()},p=()=>{d()},m=()=>{d()},h=async()=>{await new Promise(e=>{l=e,typeof c?.once==`function`&&c.once(`drain`,f),n.once(`__autodrain`,p),n.once(`close`,m),(n.__autodraining||n.destroyed)&&d()})},g=async()=>{if(!s){s=!0;try{let e=t;typeof e.unpipe==`function`&&e.unpipe(n)}catch{}try{!n.writableEnded&&!n.destroyed&&n.end()}catch{}try{let e=t;typeof e.destroy==`function`&&e.destroy()}catch{}}};try{for(t.pipe(n);i>0;){if(a)throw a;!s&&(n.__autodraining||n.destroyed)&&await g();let r=Math.min(262144,i),o=await e.pull(r);if(o.length!==r)throw Error(`FILE_ENDED`);i-=o.length,s||t.write(o)||await h()}s||t.end(),await mp(n,{readable:!1})}finally{t.removeListener(`error`,o),n.removeListener(`error`,o)}}async function um(e,t,n,r,i,a,o){let{vars:s,fileNameBuffer:c,extraFieldData:l}=await Kp(async e=>t.pull(e)),u=s;i.crxHeader&&(u.crxHeader=i.crxHeader);let d={uncompressedSize:u.uncompressedSize??0,compressedSize:u.compressedSize??0},f=Hp(l,d);u.uncompressedSize=d.uncompressedSize,u.compressedSize=d.compressedSize;let p=e.encoding?zl(e.encoding):void 0,m=Ul(c,u.flags,f,p),h=new rp({highWaterMark:im}),g=!1;h.autodrain=function(){return g=!0,h.__autodraining=!0,h.emit(`__autodrain`),am(h)},h.buffer=function(){return om(h)},h.path=m,h.props=Bp(m,c,u.flags),h.type=zp(m,u.uncompressedSize??0),e.verbose&&(h.type===`Directory`?console.log(` creating:`,m):h.type===`File`&&(u.compressionMethod===0?console.log(` extracting:`,m):console.log(` inflating:`,m))),u.lastModifiedDateTime=Vp({flags:u.flags,uncompressedSize:u.uncompressedSize??0,lastModifiedDate:u.lastModifiedDate,lastModifiedTime:u.lastModifiedTime},f),h.vars=u,h.extraFields=f,h.__autodraining=g;let _=Wp(u.flags,u.compressedSize);_&&(h.size=u.uncompressedSize??0),e.forceStream?n.pushEntry(h):(n.emitEntry(h),n.pushEntryIfPiped(h)),e.verbose&&console.log({filename:m,vars:u,extraFields:h.extraFields});let v=((u.flags??0)&1)!=0||u.compressionMethod===99,y=u.compressionMethod!==0&&!v&&!g,b=!Up(u.flags),ee=u.compressedSize??0,x=u.uncompressedSize??0;if(b&&_&&o&&y&&ee<=a&&x<=a){let e=o(await t.pull(ee));h.end(e),await mp(h,{readable:!1});return}let te=y?r():new rp({highWaterMark:im});if(_){if(await lm(t,te,h,u.compressedSize??0),Up(u.flags)){let e=await qp(async e=>t.pull(e));h.size||=e.uncompressedSize??0}return}await pp(t.streamUntilDataDescriptor(),te,h),h.size=(await qp(async e=>t.pull(e))).uncompressedSize??0}var dm=class extends tp{constructor(){super({writableHighWaterMark:512*1024,readableHighWaterMark:512*1024,write:(e,t,n)=>{this._doWrite(e,n)},final:e=>{this._closeWriter(()=>{e()})}}),this.reading=!1,this.writeClosed=!1,this._junkError=!1,this._bytesIn=0,this._bytesOut=0,this._readingDone=!1,this._pendingWrites=0,this._writeFinishedPromise=null,this._resolveWriteFinished=null,this.decompressionStream=new DecompressionStream(`deflate-raw`),this.writer=this.decompressionStream.writable.getWriter(),this.reader=this.decompressionStream.readable.getReader(),this._readingDonePromise=new Promise(e=>{this._resolveReadingDone=e}),this._startReading()}_doWrite(e,t){if(this._junkError){t&&t();return}this._bytesIn+=e.length,this._pendingWrites++,this.writer.write(e).then(()=>{this._pendingWrites--,this._pendingWrites===0&&this._resolveWriteFinished&&this._resolveWriteFinished(),t&&t()}).catch(e=>{this._pendingWrites--,this._pendingWrites===0&&this._resolveWriteFinished&&this._resolveWriteFinished();let n=e instanceof Error?e.message:String(e);n.includes(`Junk`)||n.includes(`junk`)?(this._junkError=!0,t&&t()):t?t(e):this.emit(`error`,e)})}async _startReading(){if(!this.reading){this.reading=!0;try{for(;;){let{done:e,value:t}=await this.reader.read();if(e)break;this._bytesOut+=t.length,this.push(t)}}catch(e){let t=e instanceof Error?e.message:String(e);t.includes(`Junk`)||t.includes(`junk`)?this._junkError=!0:this.emit(`error`,e)}finally{this._readingDone=!0,this._resolveReadingDone(),this.push(null)}}}_closeWriter(e){if(this.writeClosed){this._readingDonePromise.then(()=>{e&&e()});return}this.writeClosed=!0,(this._pendingWrites>0?new Promise(e=>{this._writeFinishedPromise=new Promise(e=>{this._resolveWriteFinished=e}),this._writeFinishedPromise.then(e)}):Promise.resolve()).then(()=>this.writer.close()).catch(()=>{}).finally(()=>{this._readingDonePromise.then(()=>{e&&e()})})}destroy(e){return this.writeClosed||this.writer.abort(e??void 0).catch(()=>{}),this.reader.cancel(e??void 0).catch(()=>{}),super.destroy(e??void 0)}};let fm=null;function pm(e){if(typeof e==`string`&&e.length>0)return e;if(fm)return fm;let t=new Blob([`
|
|
322
322
|
let ds;
|
|
323
323
|
let writer;
|