@silurus/ooxml 0.78.0 → 0.78.1

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.
Files changed (33) hide show
  1. package/README.md +1 -1
  2. package/dist/{canvas-viewer-mechanics-ChxLdOJg.js → canvas-viewer-mechanics-B4K_t5X_.js} +1 -1
  3. package/dist/{document-pull-client-xsdVDuVD.js → document-pull-client-5AakVD6e.js} +3137 -3016
  4. package/dist/{docx-CZC3j4s4.js → docx-bjhRwb2u.js} +4 -4
  5. package/dist/docx.mjs +3 -3
  6. package/dist/docx_parser_bg.wasm +0 -0
  7. package/dist/index.mjs +3 -3
  8. package/dist/{line-distribute-HuZyTARz.js → line-distribute-BVFW1-Hs.js} +1 -1
  9. package/dist/{line-metrics-z9AdgPaZ.js → line-metrics-DS0NS2Iq.js} +1720 -1686
  10. package/dist/node.mjs +7 -7
  11. package/dist/{pptx-c3UgGKIs.js → pptx-D1rCrHGR.js} +5 -5
  12. package/dist/pptx.mjs +4 -4
  13. package/dist/pptx_parser_bg.wasm +0 -0
  14. package/dist/{render-yhFUeiYl.js → render-DhlT5jxZ.js} +1 -1
  15. package/dist/render-worker-host-CtJo7hc9.js +27 -0
  16. package/dist/render-worker-host-D8vv-Asx.js +27 -0
  17. package/dist/render-worker-host-DAjG9nmw.js +27 -0
  18. package/dist/{resource-measurement-5g27Av6n.js → resource-measurement-BA-4Q-II.js} +1 -1
  19. package/dist/{session-BOuXp10X.js → session-C_HGxbRD.js} +2 -2
  20. package/dist/{slide-pull-client-DKckZrLx.js → slide-pull-client-BiC4sVGi.js} +641 -579
  21. package/dist/types/docx.d.ts +6 -2
  22. package/dist/types/index.d.ts +13 -4
  23. package/dist/types/node.d.ts +10 -1
  24. package/dist/types/pptx.d.ts +6 -2
  25. package/dist/types/xlsx.d.ts +11 -2
  26. package/dist/{worksheet-pull-client-CMDRPZ5E.js → worksheet-pull-client-BnvgeqfG.js} +2 -2
  27. package/dist/{xlsx-BAScjxlC.js → xlsx-BG_WYSc0.js} +484 -449
  28. package/dist/xlsx.mjs +4 -4
  29. package/dist/xlsx_parser_bg.wasm +0 -0
  30. package/package.json +1 -1
  31. package/dist/render-worker-host-BzxTAscX.js +0 -27
  32. package/dist/render-worker-host-CBjWHxMb.js +0 -27
  33. package/dist/render-worker-host-Ivhx3KII.js +0 -27
@@ -1,13 +1,13 @@
1
1
  import { t as e } from "./chunk-DmhlhrBa.js";
2
- import { $t as t, A as n, B as r, C as i, Ct as a, D as o, Dt as s, Et as c, It as l, J as u, Kt as d, Lt as f, M as p, O as m, Ot as h, R as g, S as _, T as v, Tt as y, Ut as b, V as x, Xt as S, Yt as C, _ as w, _t as T, a as E, an as D, c as O, cn as k, d as A, dn as j, en as M, f as ee, fn as te, g as N, gn as P, gt as F, h as I, hn as L, ht as R, in as z, it as ne, j as B, kt as V, ln as re, m as H, mn as ie, mt as U, n as W, nn as ae, on as G, p as oe, pn as se, pt as ce, q as le, qt as ue, rn as de, s as fe, sn as pe, tn as K, u as q, un as me, vt as J, w as he, y as ge, z as _e } from "./line-metrics-z9AdgPaZ.js";
3
- import { C as Y, E as ve, S as ye, T as be, _ as xe, a as Se, b as Ce, d as we, f as Te, h as Ee, i as De, l as Oe, m as ke, p as Ae, t as je, u as Me, v as Ne, w as Pe, x as Fe, y as Ie } from "./canvas-viewer-mechanics-ChxLdOJg.js";
4
- import { a as Le, i as Re, t as ze } from "./bounded-raw-part-cache-C6ro6Ezf.js";
5
- import { i as Be } from "./resource-measurement-5g27Av6n.js";
6
- import { t as Ve } from "./mathjax-CMjda8Ip.js";
7
- import { n as He, r as Ue, t as We } from "./visible-index-CgyJLAS_.js";
8
- import { a as Ge, c as Ke, d as qe, i as Je, l as Ye, n as Xe, o as Ze, s as Qe, t as $e, u as et } from "./worksheet-pull-client-CMDRPZ5E.js";
2
+ import { $t as t, A as n, B as r, C as i, Ct as a, D as o, Dt as s, Et as c, It as l, J as u, Kt as d, Lt as f, M as p, O as m, Ot as h, R as g, S as _, T as v, Tt as y, Ut as b, V as x, Xt as S, Yt as C, _ as w, _t as T, a as E, an as D, c as O, cn as k, d as A, dn as j, en as M, f as ee, fn as te, g as N, gn as P, gt as F, h as I, hn as L, ht as R, in as z, it as ne, j as B, kt as V, ln as re, m as H, mn as ie, mt as U, n as W, nn as ae, on as G, p as oe, pn as se, pt as ce, q as le, qt as ue, rn as de, s as fe, sn as pe, tn as K, u as q, un as me, vt as he, w as ge, y as _e, z as ve } from "./line-metrics-DS0NS2Iq.js";
3
+ import { C as J, E as ye, S as be, T as xe, _ as Se, a as Ce, b as we, d as Te, f as Ee, h as De, i as Oe, l as ke, m as Ae, p as je, t as Me, u as Ne, v as Pe, w as Fe, x as Ie, y as Le } from "./canvas-viewer-mechanics-B4K_t5X_.js";
4
+ import { a as Re, i as ze, t as Be } from "./bounded-raw-part-cache-C6ro6Ezf.js";
5
+ import { i as Ve } from "./resource-measurement-BA-4Q-II.js";
6
+ import { t as He } from "./mathjax-CMjda8Ip.js";
7
+ import { n as Ue, r as We, t as Ge } from "./visible-index-CgyJLAS_.js";
8
+ import { a as Ke, c as qe, d as Je, i as Ye, l as Xe, n as Ze, o as Qe, s as $e, t as et, u as tt } from "./worksheet-pull-client-BnvgeqfG.js";
9
9
  //#region packages/core/src/sparkline/renderer.ts
10
- function tt(e, t, n) {
10
+ function nt(e, t, n) {
11
11
  let { values: r } = n;
12
12
  if (r.length === 0 || t.w <= 0 || t.h <= 0) return;
13
13
  let i = n.colorSeries ?? "#5B9BD5", a = Math.min(2, t.w * .08), o = Math.max(2, t.h * .2), s = t.x + a, c = t.y + o, l = Math.max(1, t.w - a * 2), u = Math.max(1, t.h - o * 2), d = r.filter((e) => typeof e == "number");
@@ -16,11 +16,11 @@ function tt(e, t, n) {
16
16
  m === h && (h = m + 1, --m);
17
17
  let g = h - m, _ = (e) => c + u - (e - m) / g * u;
18
18
  if (n.kind === "stem") {
19
- it(e, n, s, c, l, u);
19
+ at(e, n, s, c, l, u);
20
20
  return;
21
21
  }
22
22
  if (n.kind === "column") {
23
- rt(e, n, r, s, c, l, u, m, h);
23
+ it(e, n, r, s, c, l, u, m, h);
24
24
  return;
25
25
  }
26
26
  if (n.displayXAxis && m < 0 && h > 0) {
@@ -44,7 +44,7 @@ function tt(e, t, n) {
44
44
  b ? e.lineTo(i, a) : (e.moveTo(i, a), b = !0);
45
45
  }
46
46
  e.stroke(), e.restore();
47
- let S = Math.max(1, Math.min(2.5, u * .12)), C = nt(r, n);
47
+ let S = Math.max(1, Math.min(2.5, u * .12)), C = rt(r, n);
48
48
  for (let t = 0; t < v; t++) {
49
49
  let a = r[t];
50
50
  if (a == null) continue;
@@ -52,7 +52,7 @@ function tt(e, t, n) {
52
52
  (n.markers || o != null) && (e.save(), e.fillStyle = o ?? n.colorMarkers ?? i, e.beginPath(), e.arc(y(t), _(a), S, 0, Math.PI * 2), e.fill(), e.restore());
53
53
  }
54
54
  }
55
- function nt(e, t) {
55
+ function rt(e, t) {
56
56
  let n = e.map(() => null), r = e.map((e) => typeof e == "number" ? e : null), i = r.findIndex((e) => e != null), a = -1;
57
57
  for (let e = r.length - 1; e >= 0; e--) if (r[e] != null) {
58
58
  a = e;
@@ -67,10 +67,10 @@ function nt(e, t) {
67
67
  if (t.low && t.colorLow && !Number.isNaN(c)) for (let e = 0; e < r.length; e++) r[e] === c && (n[e] = t.colorLow);
68
68
  return n;
69
69
  }
70
- function rt(e, t, n, r, i, a, o, s, c) {
70
+ function it(e, t, n, r, i, a, o, s, c) {
71
71
  let l = n.length;
72
72
  if (l === 0) return;
73
- let u = s < 0 && c > 0 ? 0 : s, d = c - s, f = (e) => i + o - (e - s) / d * o, p = f(u), m = a / l, h = Math.min(1.5, m * .15), g = nt(n, t);
73
+ let u = s < 0 && c > 0 ? 0 : s, d = c - s, f = (e) => i + o - (e - s) / d * o, p = f(u), m = a / l, h = Math.min(1.5, m * .15), g = rt(n, t);
74
74
  for (let i = 0; i < l; i++) {
75
75
  let a = n[i];
76
76
  if (a == null) continue;
@@ -78,10 +78,10 @@ function rt(e, t, n, r, i, a, o, s, c) {
78
78
  e.save(), e.fillStyle = o, e.fillRect(c, Math.min(p, s), l, Math.abs(p - s)), e.restore();
79
79
  }
80
80
  }
81
- function it(e, t, n, r, i, a) {
81
+ function at(e, t, n, r, i, a) {
82
82
  let o = t.values.length;
83
83
  if (o === 0) return;
84
- let s = r + a / 2, c = a / 2, l = i / o, u = Math.min(1.5, l * .15), d = nt(t.values, t);
84
+ let s = r + a / 2, c = a / 2, l = i / o, u = Math.min(1.5, l * .15), d = rt(t.values, t);
85
85
  for (let r = 0; r < o; r++) {
86
86
  let i = t.values[r];
87
87
  if (i == null || i === 0) continue;
@@ -91,16 +91,16 @@ function it(e, t, n, r, i, a) {
91
91
  }
92
92
  //#endregion
93
93
  //#region packages/core/src/text/bidi/segments.ts
94
- function at(e, t) {
94
+ function ot(e, t) {
95
95
  return e === !0 ? "rtl" : e === !1 ? "ltr" : p().computeLevels(t, "auto").paragraphLevel === 1 ? "rtl" : "ltr";
96
96
  }
97
97
  //#endregion
98
98
  //#region packages/xlsx/src/worker.ts?worker&inline
99
- var ot = "var e=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,n.unregister(this),e}free(){let e=this.__destroy_into_raw();_.__wbg_xlsxarchive_free(e,0)}acknowledge_sheet_cursor_terminal(){let e=_.xlsxarchive_acknowledge_sheet_cursor_terminal(this.__wbg_ptr);if(e[1])throw f(e[0])}assert_healthy(){let e=_.xlsxarchive_assert_healthy(this.__wbg_ptr);if(e[1])throw f(e[0])}cancel_sheet_cursor(){_.xlsxarchive_cancel_sheet_cursor(this.__wbg_ptr)}close_sheet_cursor(){_.xlsxarchive_close_sheet_cursor(this.__wbg_ptr)}extract_image(e){let t=d(e,_.__wbindgen_malloc,_.__wbindgen_realloc),n=g,i=_.xlsxarchive_extract_image(this.__wbg_ptr,t,n);if(i[3])throw f(i[2]);var a=r(i[0],i[1]).slice();return _.__wbindgen_free(i[0],i[1]*1,1),a}constructor(e,t,r,i){let a=u(e,_.__wbindgen_malloc),o=g,s=_.xlsxarchive_new(a,o,!l(t),l(t)?BigInt(0):t,!l(r),l(r)?BigInt(0):r,!l(i),l(i)?BigInt(0):i);if(s[2])throw f(s[1]);return this.__wbg_ptr=s[0]>>>0,n.register(this,this.__wbg_ptr,this),this}open_sheet_cursor(e,t){let n=d(t,_.__wbindgen_malloc,_.__wbindgen_realloc),r=g,i=_.xlsxarchive_open_sheet_cursor(this.__wbg_ptr,e,n,r);if(i[1])throw f(i[0])}parse(){let e=_.xlsxarchive_parse(this.__wbg_ptr);if(e[3])throw f(e[2]);var t=r(e[0],e[1]).slice();return _.__wbindgen_free(e[0],e[1]*1,1),t}pull_sheet_cursor(e){let t=_.xlsxarchive_pull_sheet_cursor(this.__wbg_ptr,e);if(t[3])throw f(t[2]);var n=r(t[0],t[1]).slice();return _.__wbindgen_free(t[0],t[1]*1,1),n}resource_usage(){let e=_.xlsxarchive_resource_usage(this.__wbg_ptr);if(e[3])throw f(e[2]);var t=r(e[0],e[1]).slice();return _.__wbindgen_free(e[0],e[1]*1,1),t}sheet_cursor_pull_finished(){return _.xlsxarchive_sheet_cursor_pull_finished(this.__wbg_ptr)!==0}sheet_cursor_resource_usage(){let e=_.xlsxarchive_sheet_cursor_resource_usage(this.__wbg_ptr);if(e[3])throw f(e[2]);var t=r(e[0],e[1]).slice();return _.__wbindgen_free(e[0],e[1]*1,1),t}to_markdown(){let e,t;try{let i=_.xlsxarchive_to_markdown(this.__wbg_ptr);var n=i[0],r=i[1];if(i[3])throw n=0,r=0,f(i[2]);return e=n,t=r,o(n,r)}finally{_.__wbindgen_free(e,t,1)}}};Symbol.dispose&&(e.prototype[Symbol.dispose]=e.prototype.free);function t(){return{__proto__:null,\"./xlsx_parser_bg.js\":{__proto__:null,__wbg___wbindgen_throw_6b64449b9b9ed33c:function(e,t){throw Error(o(e,t))},__wbg_error_a6fa202b58aa1cd3:function(e,t){let n,r;try{n=e,r=t,console.error(o(e,t))}finally{_.__wbindgen_free(n,r,1)}},__wbg_new_227d7c05414eb861:function(){return Error()},__wbg_stack_3b0d974bbf31e44f:function(e,t){let n=t.stack,r=d(n,_.__wbindgen_malloc,_.__wbindgen_realloc),i=g;a().setInt32(e+4,i,!0),a().setInt32(e+0,r,!0)},__wbindgen_cast_0000000000000001:function(e,t){return o(e,t)},__wbindgen_init_externref_table:function(){let e=_.__wbindgen_externrefs,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)}}}}const n=typeof FinalizationRegistry>`u`?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>_.__wbg_xlsxarchive_free(e>>>0,1));function r(e,t){return e>>>=0,c().subarray(e/1,e/1+t)}let i=null;function a(){return(i===null||i.buffer.detached===!0||i.buffer.detached===void 0&&i.buffer!==_.memory.buffer)&&(i=new DataView(_.memory.buffer)),i}function o(e,t){return e>>>=0,ee(e,t)}let s=null;function c(){return(s===null||s.byteLength===0)&&(s=new Uint8Array(_.memory.buffer)),s}function l(e){return e==null}function u(e,t){let n=t(e.length*1,1)>>>0;return c().set(e,n/1),g=e.length,n}function d(e,t,n){if(n===void 0){let n=h.encode(e),r=t(n.length,1)>>>0;return c().subarray(r,r+n.length).set(n),g=n.length,r}let r=e.length,i=t(r,1)>>>0,a=c(),o=0;for(;o<r;o++){let t=e.charCodeAt(o);if(t>127)break;a[i+o]=t}if(o!==r){o!==0&&(e=e.slice(o)),i=n(i,r,r=o+e.length*3,1)>>>0;let t=c().subarray(i+o,i+r),a=h.encodeInto(e,t);o+=a.written,i=n(i,r,o,1)>>>0}return g=o,i}function f(e){let t=_.__wbindgen_externrefs.get(e);return _.__externref_table_dealloc(e),t}let p=new TextDecoder(`utf-8`,{ignoreBOM:!0,fatal:!0});p.decode();let m=0;function ee(e,t){return m+=t,m>=2146435072&&(p=new TextDecoder(`utf-8`,{ignoreBOM:!0,fatal:!0}),p.decode(),m=t),p.decode(c().subarray(e,e+t))}const h=new TextEncoder;`encodeInto`in h||(h.encodeInto=function(e,t){let n=h.encode(e);return t.set(n),{read:e.length,written:n.length}});let g=0,_;function v(e,t){return _=e.exports,i=null,s=null,_.__wbindgen_start(),_}async function te(e,t){if(typeof Response==`function`&&e instanceof Response){if(typeof WebAssembly.instantiateStreaming==`function`)try{return await WebAssembly.instantiateStreaming(e,t)}catch(t){if(e.ok&&n(e.type)&&e.headers.get(`Content-Type`)!==`application/wasm`)console.warn(\"`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\\n\",t);else throw t}let r=await e.arrayBuffer();return await WebAssembly.instantiate(r,t)}else{let n=await WebAssembly.instantiate(e,t);return n instanceof WebAssembly.Instance?{instance:n,module:e}:n}function n(e){switch(e){case`basic`:case`cors`:case`default`:return!0}return!1}}async function y(e){if(_!==void 0)return _;e!==void 0&&(Object.getPrototypeOf(e)===Object.prototype?{module_or_path:e}=e:console.warn(`using deprecated parameters for the initialization function; pass a single object instead`));let n=t();(typeof e==`string`||typeof Request==`function`&&e instanceof Request||typeof URL==`function`&&e instanceof URL)&&(e=fetch(e));let{instance:r,module:i}=await te(await e,n);return v(r,i)}async function ne(e){return _=void 0,i=null,s=null,y(e)}var b=class e extends Error{code;constructor(t,n){super(n),this.name=`OoxmlError`,this.code=t,Object.setPrototypeOf(this,e.prototype)}},x=class e extends Error{code=`ooxml-resource-limit`;details;constructor(t,n){super(t),this.name=`OoxmlResourceLimitError`;let r=n.violation,i=Object.freeze({format:r.format,operation:r.operation,resource:r.resource,metric:r.metric,...r.part===void 0?{}:{part:r.part},limit:r.limit,observed:r.observed,configurable:r.configurable,usage:Object.freeze({archiveEntryCount:r.usage.archiveEntryCount,declaredInflatedBytes:r.usage.declaredInflatedBytes,...r.usage.largestInflatedEntryBytes===void 0?{}:{largestInflatedEntryBytes:r.usage.largestInflatedEntryBytes},distinctInflatedBytes:r.usage.distinctInflatedBytes,operationInflatedBytes:r.usage.operationInflatedBytes})});this.details=Object.freeze({stage:n.stage,violation:i}),Object.setPrototypeOf(this,e.prototype)}},re=class e extends RangeError{code=`ooxml-decoded-image-limit`;constructor(t,n,r){super(`OOXML decoded image limit exceeded: ${t} ${r} > ${n}`),this.metric=t,this.limit=n,this.observed=r,this.name=`OoxmlDecodedImageLimitError`,Object.setPrototypeOf(this,e.prototype)}};function ie(e){if(!e.startsWith(`data:`))return null;let t=e.indexOf(`,`);if(t===-1)return null;let n=atob(e.slice(t+1)),r=new Uint8Array(n.length);for(let e=0;e<n.length;e++)r[e]=n.charCodeAt(e);return r.buffer}var ae=class{state=`uninitialized`;generationValue=0;readiness;poisonListeners=new Set;constructor(e,t,n){this.initialize=e,this.reinitialize=t,this.normalizeFailure=n}get generation(){return this.generationValue}get poisoned(){return this.state===`poisoned`}onPoison(e){return this.poisonListeners.add(e),()=>this.poisonListeners.delete(e)}async ensureReady(){if(this.state!==`ready`){if(!this.readiness){let e=this.state===`uninitialized`?this.initialize:this.reinitialize;this.readiness=Promise.resolve().then(e).then(()=>{this.generationValue+=1,this.state=`ready`,this.readiness=void 0},e=>{throw this.readiness=void 0,e})}await this.readiness}}run(e){try{return e()}catch(e){let t=this.normalizeFailure(e);throw t?(this.poison(t),t):e}}tryRunReady(e){if(this.state!==`ready`)return{current:!1};let t=this.generationValue,n=this.run(e);return this.state!==`ready`||t!==this.generationValue?{current:!1}:{current:!0,generation:t,value:n}}poison(e){this.state=`poisoned`,this.readiness=void 0;for(let t of this.poisonListeners)t(e)}assertCurrent(e){if(this.state!==`ready`||e!==this.generationValue)throw Error(`WASM archive session belongs to a discarded runtime generation`)}},S=class e extends Error{code=`parser-crashed`;constructor(t){super(t),this.name=`WasmTrapError`,Object.setPrototypeOf(this,e.prototype)}};function oe(e){let t=globalThis.WebAssembly?.RuntimeError;return t&&e instanceof t||e instanceof RangeError?!0:e instanceof Error?e.name===`RuntimeError`||e.name===`CompileError`||e.name===`LinkError`||e.name===`InternalError`||e.name===`OOMError`:!1}function se(e){try{if((typeof e!=`object`||!e)&&typeof e!=`function`)return;let t=Reflect.get(e,`__destroy_into_raw`);typeof t==`function`&&Reflect.apply(t,e,[])}catch{}}function C(e,t){return e({module_or_path:t})}var ce=class{runtime;wasmInput=null;currentArchive=null;constructor(e,t={}){this.init=e,this.options=t,this.runtime=new ae(()=>this.invokeConfigured(this.init),()=>this.invokeConfigured(this.options.reinit??this.init),le),this.runtime.onPoison(()=>this.dropPoisonedArchive())}setWasmInput(e){this.wasmInput=e,this.runtime.ensureReady().catch(()=>void 0)}setWasmUrl(e){this.setWasmInput(e)}get archive(){return this.currentArchive}setArchive(e){this.freeArchive(),this.currentArchive=e}disposeArchive(){this.freeArchive()}get poisoned(){return this.runtime.poisoned}async ensureReady(){await this.runtime.ensureReady()}run(e){return this.runtime.run(e)}poison(){this.runtime.poison(new S(`WASM parser was recycled`))}invokeConfigured(e){return this.wasmInput===null?Promise.reject(Error(`WasmParserHost: setWasmInput was never called`)):C(e,this.wasmInput)}freeArchive(){this.currentArchive!==null&&this.options.freeArchive&&this.options.freeArchive(this.currentArchive),this.currentArchive=null}dropPoisonedArchive(){let e=this.currentArchive;this.currentArchive=null,se(e)}};function le(e){return oe(e)?new S(`WASM parser trapped and was recycled: ${e instanceof Error?e.message:String(e)}`):null}function w(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>0}function ue(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return w(t.requiredBytes)&&w(t.offeredBytes)&&t.requiredBytes>t.offeredBytes}var T=class e extends RangeError{code=`ooxml-insufficient-credit`;requiredBytes;offeredBytes;constructor(t){super(`Pull unit requires ${t.requiredBytes} bytes but credit is ${t.offeredBytes}`),this.name=`PullSessionInsufficientCreditError`,this.requiredBytes=t.requiredBytes,this.offeredBytes=t.offeredBytes,Object.setPrototypeOf(this,e.prototype)}};function de(e){if(e instanceof T)return e;let t=e instanceof Error?e.message:String(e);if(!t.startsWith(`OOXML_INSUFFICIENT_CREDIT:`))return;let n;try{n=JSON.parse(t.slice(26))}catch{return}if(!n||typeof n!=`object`||Array.isArray(n))return;let r=n;if(!(r.code!==`ooxml-insufficient-credit`||!ue(r)))return new T(r)}const E=`OOXML_RESOURCE_LIMIT:`;function D(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>=0}function O(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return D(t.archiveEntryCount)&&D(t.declaredInflatedBytes)&&(t.largestInflatedEntryBytes===void 0||D(t.largestInflatedEntryBytes))&&D(t.distinctInflatedBytes)&&D(t.operationInflatedBytes)}function k(e){let t;try{t=JSON.parse(new TextDecoder().decode(e))}catch{throw TypeError(`OOXML resource usage checkpoint is not valid JSON`)}if(!O(t))throw TypeError(`OOXML resource usage checkpoint is invalid`);return t}function fe(e){return e===`docx`||e===`xlsx`||e===`pptx`}function pe(e){return e===`container`||e===`decompression`||e===`parsing`||e===`serialization`||e===`layout`||e===`rendering`||e===`worker`}function A(e,t){return typeof e==`string`&&e.length>0&&e.length<=t&&!/[\\u0000-\\u001f\\u007f]/u.test(e)}function j(e){return A(e,128)&&/^[a-z0-9][a-z0-9-]*$/u.test(e)}function me(e){return!A(e,4096)||e.startsWith(`/`)||e.startsWith(`\\\\`)||e.includes(`\\\\`)||e.includes(`?`)||e.includes(`#`)||e.includes(`://`)||/^[a-z]:/iu.test(e)?!1:e.split(`/`).every(e=>e!==``&&e!==`.`&&e!==`..`)}const M=new Map([[`archive-entry:declared-inflated-bytes`,{stage:`container`,part:`required`}],[`archive-entry:actual-inflated-bytes`,{stage:`decompression`,part:`required`}],[`archive:entry-count`,{stage:`container`,part:`forbidden`}],[`archive:central-directory-bytes`,{stage:`container`,part:`forbidden`,configurable:!1}],[`archive:distinct-inflated-bytes`,{stage:`decompression`,part:`required`}],[`xml-event:bytes`,{stage:`parsing`,part:`optional`,configurable:!1}],[`xml-context:bytes`,{stage:`parsing`,part:`optional`,configurable:!1}],[`xml-tree:depth`,{stage:`parsing`,part:`optional`,configurable:!1}],[`worksheet-row:projected-bytes`,{stage:`parsing`,part:`optional`,configurable:!1}],[`worksheet-shell:projected-bytes`,{stage:`parsing`,part:`optional`,configurable:!1}]]),he=new Set([...M.keys()].map(e=>e.slice(0,e.indexOf(`:`)))),ge=new Set([...M.keys()].map(e=>e.slice(e.indexOf(`:`)+1)));function _e(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return!fe(t.format)||!A(t.operation,256)||!j(t.resource)||!j(t.metric)||!D(t.limit)||!D(t.observed)||typeof t.configurable!=`boolean`||!O(t.usage)?!1:!(`part`in t)||me(t.part)}function N(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;if(!pe(t.stage)||!_e(t.violation))return!1;let n=t.violation,r=M.get(`${n.resource}:${n.metric}`);return r?t.stage!==r.stage||r.configurable===!1&&n.configurable!==!1?!1:r.part===`required`?n.part!==void 0:r.part===`forbidden`?n.part===void 0:!0:!(he.has(n.resource)&&ge.has(n.metric))}function P(e){return{archiveEntryCount:e.archiveEntryCount,declaredInflatedBytes:e.declaredInflatedBytes,...e.largestInflatedEntryBytes===void 0?{}:{largestInflatedEntryBytes:e.largestInflatedEntryBytes},distinctInflatedBytes:e.distinctInflatedBytes,operationInflatedBytes:e.operationInflatedBytes}}function F(e){if(!N(e))return;let t=e.violation,n={stage:e.stage,violation:{format:t.format,operation:t.operation,resource:t.resource,metric:t.metric,...t.part===void 0?{}:{part:t.part},limit:t.limit,observed:t.observed,configurable:t.configurable,usage:P(t.usage)}};return N(n)?n:void 0}function I(e){let t=e.violation;return`OOXML resource limit exceeded${t.part?` for ${t.part}`:``}: ${t.metric} ${t.observed} > ${t.limit}`}function ve(e){let t=e instanceof Error?e.message:String(e);if(!t.startsWith(E))return;let n;try{n=JSON.parse(t.slice(21))}catch{return}if(!n||typeof n!=`object`)return;let r=n;if(!(r.code!==`ooxml-resource-limit`||!N(r.details)))return new x(I(r.details),r.details)}function ye(e){if(e instanceof re)return{message:e.message,errorName:e.name,code:e.code,decodedImage:{metric:e.metric,limit:e.limit,observed:e.observed}};let t=de(e);if(t)return{message:t.message,errorName:t.name,code:t.code,insufficientCredit:{requiredBytes:t.requiredBytes,offeredBytes:t.offeredBytes}};let n=e instanceof b||e instanceof x?e:ve(e);if(n instanceof x){let e=F(n.details);return e?{message:typeof n.message==`string`?n.message:I(e),errorName:`OoxmlResourceLimitError`,code:`ooxml-resource-limit`,resourceLimit:e}:{message:`Invalid OOXML resource-limit error payload`,errorName:`Error`}}if(n instanceof b)return{message:typeof n.message==`string`?n.message:String(n.message),errorName:A(n.name,128)?n.name:`OoxmlError`,...j(n.code)?{code:n.code}:{}};let r=e instanceof Error?e.message:String(e);if(typeof r==`string`&&r.startsWith(E))return{message:`Invalid OOXML resource-limit payload`,errorName:`Error`};let i=e instanceof Error?e:Error(r),a=i;return{message:typeof i.message==`string`?i.message:String(i.message),errorName:A(i.name,128)?i.name:`Error`,...typeof a.code==`string`?{code:a.code}:{}}}function L(e){try{return ye(e)}catch{return{message:`Worker operation failed with an unreadable error`,errorName:`Error`}}}function be(e){return e.byteOffset===0&&e.byteLength===e.buffer.byteLength&&e.buffer instanceof ArrayBuffer?e.buffer:e.slice().buffer}Object.freeze({maxArchiveEntryBytes:134217728,maxTotalInflatedBytes:268435456,maxArchiveEntries:4096});function xe(e){return[e.maxArchiveEntryBytes===null?0n:BigInt(e.maxArchiveEntryBytes),e.maxTotalInflatedBytes===null?0n:BigInt(e.maxTotalInflatedBytes),e.maxArchiveEntries===null?0n:BigInt(e.maxArchiveEntries)]}const R=`ooxml-pull-v1`;function z(e,t){if(!Number.isSafeInteger(e)||e<=0)throw RangeError(`${t} must be a positive safe integer`)}function Se(e){if(!(typeof e==`string`&&e.length>0||typeof e==`number`&&Number.isSafeInteger(e)&&e>0))throw RangeError(`session id must be a non-empty string or positive safe integer`)}var Ce=class{owner;queue=Promise.resolve();leases=new Map;retainedBytes=0;retainedCount=0;maxRetainedBytes;maxRetainedCount;cleanups=new Set;pendingFatalCleanups=[];poisonRunning=!1;fatal;constructor(e){this.maxRetainedBytes=e?.maxRetainedBytes??64*1024*1024,this.maxRetainedCount=e?.maxRetainedCount??256,z(this.maxRetainedBytes,`max retained lease bytes`),z(this.maxRetainedCount,`max retained lease count`)}enqueue(e){let t=this.queue.then(e,e);return this.queue=t.then(()=>void 0,()=>void 0),t}acquire(e){return this.owner===void 0?(this.owner=e,!0):this.owner===e}release(e){this.owner===e&&(this.owner=void 0)}retainLease(e,t,n){if(!Number.isSafeInteger(n)||n<0)throw RangeError(`retained lease bytes are invalid`);let r=this.leases.get(e)??new Map;if(r.has(t))throw Error(`driver returned a duplicate lease id`);if(this.retainedCount+1>this.maxRetainedCount)throw RangeError(`retained lease count exceeds limit`);if(this.retainedBytes+n>this.maxRetainedBytes)throw RangeError(`retained lease bytes exceed limit`);r.set(t,n),this.leases.set(e,r),this.retainedCount++,this.retainedBytes+=n}releaseLease(e,t){let n=this.leases.get(e),r=n?.get(t);r!==void 0&&(n?.delete(t),n?.size===0&&this.leases.delete(e),this.retainedCount--,this.retainedBytes-=r)}registerCleanup(e){return this.fatal?(this.poisonRunning?this.pendingFatalCleanups.push(e):this.enqueue(e).catch(()=>void 0),()=>void 0):(this.cleanups.add(e),()=>this.cleanups.delete(e))}get fatalError(){return this.fatal}get registeredHostCount(){return this.cleanups.size}async poison(e){if(this.fatal??=e,this.poisonRunning)return this.fatal;this.poisonRunning=!0,this.pendingFatalCleanups.push(...this.cleanups);try{let e;for(;(e=this.pendingFatalCleanups.shift())!==void 0;)await e().catch(()=>void 0)}finally{this.poisonRunning=!1}return this.fatal}},we=class{options;coordinator;coordinatorOwner=Symbol(`pull-session-host`);unregisterCleanup;sequence=0;unacked;leases=new Map;activeDriverLeases=new Set;nextWireLeaseId;cancelRequested=!1;cancelComplete=!1;closeRequested=!1;closeComplete=!1;driverCancelComplete=!1;driverCloseComplete=!1;completed=!1;constructor(e){Se(e.sessionId),z(e.operationId,`operation id`),z(e.generation,`generation`),z(e.maxByteCredit,`max byte credit`),e.wireLeaseIdStart!==void 0&&z(e.wireLeaseIdStart,`wire lease id start`),this.options=e,this.coordinator=e.coordinator,this.nextWireLeaseId=e.wireLeaseIdStart??1,this.unregisterCleanup=this.coordinator.registerCleanup(()=>this.forceFatalCleanup())}dispatch(e,t){return this.coordinator.enqueue(async()=>{let n=await this.execute(e);try{t(n.response,n.transfer)}catch(e){throw await this.rollbackFailedPost(n),e}})}async rollbackFailedPost(e){let t=e.response;if(t.kind===`chunk`){let n=t.leaseId===void 0?void 0:this.leases.get(t.leaseId);try{await this.options.driver.disposeInvalidChunk?.({payload:t.payload,byteLength:t.byteLength,done:t.done,leaseId:n?.driverLeaseId,retainedBytes:n?.retainedBytes,transfer:e.transfer})}catch{}}this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);for(let[e,t]of[...this.leases])try{await this.options.driver.releaseLease?.(t.driverLeaseId)}catch{}finally{this.leases.delete(e),this.activeDriverLeases.delete(t.driverLeaseId),this.coordinator.releaseLease(this.coordinatorOwner,e)}if(this.cancelRequested=!0,!this.driverCancelComplete)try{await this.options.driver.cancel?.(),this.driverCancelComplete=!0}catch{}this.unregisterCleanup()}async execute(e){try{if(this.isStaleLifecycle(e)){let t=e.kind===`cancel`?`cancel`:`close`;return this.sameOperationIdentity(e)?{response:this.accepted(e,t,!0)}:{response:this.errorResponse(e,{message:`stale lifecycle targets another session or operation`,errorName:`PullSessionProtocolError`,code:`ooxml-stale-lifecycle`})}}this.validateCommandIdentity(e);let t=this.coordinator.fatalError;if(t)return e.kind===`pull`?{response:this.errorResponse(e,t)}:(e.kind===`cancel`?await this.cancel():e.kind===`close`?await this.close():e.kind===`release`&&await this.release(e.leaseId),{response:this.accepted(e,e.kind)});switch(e.kind){case`pull`:return await this.pull(e);case`ack`:return await this.ack(e.sequence),{response:this.accepted(e,`ack`)};case`release`:return await this.release(e.leaseId),{response:this.accepted(e,`release`)};case`cancel`:return await this.cancel(),{response:this.accepted(e,`cancel`)};case`close`:return await this.close(),{response:this.accepted(e,`close`)}}}catch(t){let n=L(t);return n.code===`ooxml-resource-limit`&&(n=await this.coordinator.poison(n)),{response:this.errorResponse(e,n)}}}async pull(e){if(this.closeRequested||this.cancelRequested||this.completed)throw Error(`pull session is closed`);if(this.unacked)throw Error(`previous chunk is not acknowledged`);if(!Number.isSafeInteger(e.sequence)||e.sequence<0||e.sequence!==this.sequence)throw Error(`pull command sequence mismatch`);if(this.validateHostCredit(e.byteCredit),!this.coordinator.acquire(this.coordinatorOwner))throw Error(`another operation has an unacknowledged package chunk`);let t;try{t=await this.options.driver.pull(e.byteCredit)}catch(e){throw this.coordinator.release(this.coordinatorOwner),e}let n=!1,r=!1,i,a;try{let o=this.options.driver.measureChunk(t),s=this.arrayBufferTransferBytes(t.transfer);if(o<s)throw RangeError(`measured chunk bytes are below ArrayBuffer transfer bytes`);if(a=Math.max(o,s),t.leaseId!==void 0){if(z(t.leaseId,`lease id`),t.retainedBytes===void 0)throw Error(`retained lease bytes are required`);if(this.activeDriverLeases.has(t.leaseId))throw r=!0,Error(`driver returned an active duplicate lease id`);i=this.allocateWireLeaseId(),this.coordinator.retainLease(this.coordinatorOwner,i,t.retainedBytes),this.leases.set(i,{driverLeaseId:t.leaseId,retainedBytes:t.retainedBytes}),this.activeDriverLeases.add(t.leaseId),n=!0}else if(t.retainedBytes!==void 0)throw Error(`retained lease bytes require a lease id`);if(!Number.isSafeInteger(a)||a<0)throw RangeError(`host chunk byte length must be a non-negative safe integer`);if(a>e.byteCredit)throw RangeError(`host chunk exceeds byte credit`)}catch(e){let a;try{await this.options.driver.disposeInvalidChunk?.(t)}catch(e){a=e}if(n&&i!==void 0)try{await this.release(i)}catch(e){a??=e}else if(t.leaseId!==void 0&&!r)try{await this.options.driver.releaseLease?.(t.leaseId)}catch(e){a??=e}if(r)try{await this.cancel()}catch(e){a??=e}throw this.coordinator.release(this.coordinatorOwner),a||e}return this.unacked={sequence:this.sequence,done:t.done},{response:{kind:`chunk`,protocol:R,...this.identity(),requestId:e.requestId,sequence:this.sequence,byteLength:a,done:t.done,payload:t.payload,leaseId:i,usage:this.resourceUsage()},transfer:t.transfer}}async ack(e){if(!Number.isSafeInteger(e)||e<0)throw RangeError(`invalid ack sequence`);if(e<this.sequence)return;if(!this.unacked||e!==this.sequence)throw Error(`ack sequence mismatch`);let t=this.unacked.done;await this.options.driver.acknowledge?.(e),this.unacked=void 0,this.coordinator.release(this.coordinatorOwner),this.sequence++,t&&(this.completed=!0,this.maybeUnregisterCompleted())}async release(e){z(e,`wire lease id`);let t=this.leases.get(e);t&&(await this.options.driver.releaseLease?.(t.driverLeaseId),this.leases.delete(e),this.activeDriverLeases.delete(t.driverLeaseId),this.coordinator.releaseLease(this.coordinatorOwner,e),this.maybeUnregisterCompleted())}async cancel(){if(this.cancelComplete)return;this.cancelRequested=!0,this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);let e;try{await this.releaseAllLeases()}catch(t){e=t}if(!this.driverCancelComplete)try{await this.options.driver.cancel?.(),this.driverCancelComplete=!0}catch(t){e??=t}if(e)throw e;this.cancelComplete=!0,this.unregisterCleanup()}async close(){if(this.closeComplete)return;this.closeRequested=!0,this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);let e;try{await this.releaseAllLeases()}catch(t){e=t}if(!this.driverCloseComplete)try{await this.options.driver.close?.(),this.driverCloseComplete=!0}catch(t){e??=t}if(e)throw e;this.closeComplete=!0,this.unregisterCleanup()}async releaseAllLeases(){let e;for(let t of[...this.leases.keys()])try{await this.release(t)}catch(t){e??=t}if(e)throw e}validateCommandIdentity(e){if(e.protocol!==`ooxml-pull-v1`||e.sessionId!==this.options.sessionId||e.operationId!==this.options.operationId||e.generation!==this.options.generation||!Number.isSafeInteger(e.requestId)||e.requestId<=0)throw Error(`stale or mismatched pull session command`)}validateHostCredit(e){if(z(e,`byte credit`),e>this.options.maxByteCredit)throw RangeError(`byte credit exceeds host maximum`)}accepted(e,t,n=!1){return{kind:`accepted`,protocol:R,...n?{sessionId:e.sessionId,operationId:e.operationId,generation:e.generation}:this.identity(),requestId:e.requestId,command:t,usage:this.resourceUsage()}}identity(){return{sessionId:this.options.sessionId,operationId:this.options.operationId,generation:this.options.generation}}isStaleLifecycle(e){return(e.kind===`cancel`||e.kind===`close`)&&e.protocol===`ooxml-pull-v1`&&Number.isSafeInteger(e.requestId)&&e.requestId>0&&Number.isSafeInteger(e.generation)&&e.generation>0&&e.generation<this.options.generation}sameOperationIdentity(e){return e.sessionId===this.options.sessionId&&e.operationId===this.options.operationId}errorResponse(e,t){return{kind:`error`,protocol:R,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:t,usage:this.errorResourceUsage()}}async forceFatalCleanup(){this.cancelRequested=!0,this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);let e;for(let t of[...this.leases.keys()])try{await this.release(t)}catch(t){e??=t}if(!this.driverCancelComplete)try{await this.options.driver.cancel?.(),this.driverCancelComplete=!0}catch(t){e??=t}if(e)throw e;this.unregisterCleanup()}allocateWireLeaseId(){if(!Number.isSafeInteger(this.nextWireLeaseId)||this.nextWireLeaseId<=0)throw RangeError(`wire lease id space exhausted`);return this.nextWireLeaseId++}arrayBufferTransferBytes(e){let t=0;for(let n of e??[])if(n instanceof ArrayBuffer&&(t+=n.byteLength,!Number.isSafeInteger(t)))throw RangeError(`ArrayBuffer transfer bytes overflow`);return t}maybeUnregisterCompleted(){this.completed&&this.leases.size===0&&this.unregisterCleanup()}resourceUsage(){return this.options.driver.resourceUsage?.()}errorResourceUsage(){try{return this.resourceUsage()}catch{return}}};function Te(e,t){for(let n of e)for(let e of n.cells){let n=e.value;if(n.type===`shared`){let r=t[n.si];if(r){let t={type:`text`,text:r.text};r.runs!==void 0&&(t.runs=r.runs),r.phoneticRuns!==void 0&&(t.phoneticRuns=r.phoneticRuns),r.phoneticPr!==void 0&&(t.phoneticPr=r.phoneticPr),e.value=t}else e.value={type:`text`,text:``}}}return e}function Ee(e,t,n,r){let i=e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength),a=JSON.parse(new TextDecoder().decode(i));if(!a||typeof a!=`object`||!(`kind`in a))throw Error(`worksheet cursor returned an invalid unit`);let o=a;if(t!==(o.kind===`finished`))throw Error(`worksheet cursor terminal marker mismatch`);if(o.kind===`rows`){if(!Array.isArray(o.rows))throw Error(`worksheet row unit is missing rows`);return n&&Te(o.rows,n),r?.(o.rows),{kind:`rows`,rows:o.rows}}if(o.kind===`finished`){if(!o.worksheet||typeof o.worksheet!=`object`)throw Error(`worksheet terminal unit is missing its worksheet`);return o.worksheet.rows=[],{kind:`finished`,worksheet:o.worksheet}}throw Error(`worksheet cursor returned an unknown unit kind`)}function B(e,t){if(!Number.isSafeInteger(e)||e<0)throw Error(`${t} must be a non-negative safe integer`)}function V(e,t,n){return B(e,`resource measurement`),B(t,`resource measurement`),B(n,`resource measurement limit`),e>n||t>n||t>n-e?n===2**53-1?n:n+1:e+t}function H(e,t=2**53-1){B(t,`resource measurement limit`);let n=0;for(let r=0;r<e.length;r+=1){let i=e.charCodeAt(r),a;if(i<=127)a=1;else if(i<=2047)a=2;else if(i>=55296&&i<=56319&&r+1<e.length){let t=e.charCodeAt(r+1);t>=56320&&t<=57343?(a=4,r+=1):a=3}else a=3;if(n=V(n,a,t),n>t)return n}return n}function U(e,t=2**53-1){B(t,`resource measurement limit`);let n=V(0,2,t);if(n>t)return n;for(let r=0;r<e.length;r+=1){let i=e.charCodeAt(r),a;if(i===34||i===92||i===8||i===9||i===10||i===12||i===13)a=2;else if(i<=31)a=6;else if(i<=127)a=1;else if(i<=2047)a=2;else if(i>=55296&&i<=56319&&r+1<e.length){let t=e.charCodeAt(r+1);t>=56320&&t<=57343?(a=4,r+=1):a=6}else a=i>=55296&&i<=57343?6:3;if(n=V(n,a,t),n>t)return n}return n}function W(e,t){return V(0,e,t)}function G(e,t=2**53-1,n=!1){if(B(t,`resource measurement limit`),e===null)return{jsonBytes:W(4,t),stringValueUtf8Bytes:0};if(typeof e==`string`)return{jsonBytes:U(e,t),stringValueUtf8Bytes:H(e,t)};if(typeof e==`boolean`)return{jsonBytes:W(e?4:5,t),stringValueUtf8Bytes:0};if(typeof e==`number`)return{jsonBytes:W((Number.isFinite(e)?String(Object.is(e,-0)?0:e):`null`).length,t),stringValueUtf8Bytes:0};if(typeof e==`bigint`)throw TypeError(`BigInt values cannot be serialized to JSON`);if(Array.isArray(e)){let n=W(2,t),r=0;for(let i=0;i<e.length;i+=1){i!==0&&(n=V(n,1,t));let a=G(e[i],t,!0);n=V(n,a.jsonBytes,t),r=V(r,a.stringValueUtf8Bytes,t)}return{jsonBytes:n,stringValueUtf8Bytes:r}}if(typeof e==`object`){let n=W(2,t),r=0,i=0;for(let[a,o]of Object.entries(e)){if(o===void 0||typeof o==`function`||typeof o==`symbol`)continue;i++!==0&&(n=V(n,1,t)),n=V(n,U(a,t),t),n=V(n,1,t);let e=G(o,t);n=V(n,e.jsonBytes,t),r=V(r,e.stringValueUtf8Bytes,t)}return{jsonBytes:n,stringValueUtf8Bytes:r}}return{jsonBytes:n?W(4,t):0,stringValueUtf8Bytes:0}}const K=1e5,q=25e4,J=33554432,Y=67108864,De=Object.freeze({archiveEntryCount:0,declaredInflatedBytes:0,distinctInflatedBytes:0,operationInflatedBytes:0});function Oe(e){let t=e.reduce((e,t)=>V(e,t.cells.length,q),0);return{rows:e.length,cells:t,ownedUtf8Bytes:e.reduce((e,t)=>t.cells.reduce((e,t)=>{let n=G(t.value,J).stringValueUtf8Bytes;return V(e,V(n,t.formula===void 0?0:H(t.formula,J),J),J)},e),0)}}function ke(e,t){let n=G(e,67108864);return{...t,jsonBytes:n.jsonBytes}}function Ae(e,t){return{rows:V(e.rows,t.rows,K),cells:V(e.cells,t.cells,q),ownedUtf8Bytes:V(e.ownedUtf8Bytes,t.ownedUtf8Bytes,J)}}function X(e,t,n,r,i,a,o){let s=n===`worksheet-json`?`serialization`:`parsing`;return new x(`OOXML resource limit exceeded${t?` for ${t}`:``}: ${r} ${a} > ${i}`,{stage:s,violation:{format:`xlsx`,operation:e,resource:n,metric:r,...t===void 0?{}:{part:t},limit:i,observed:Math.min(a,i+1),configurable:!1,usage:o??De}})}function Z(e,t,n,r){let i=[[`rows`,e.rows,K],[`cells`,e.cells,q],[`owned-utf8-bytes`,e.ownedUtf8Bytes,J]];for(let[e,a,o]of i)if(a>o)throw X(t,n,e===`owned-utf8-bytes`?`worksheet-cell-content`:`worksheet-model`,e,o,a,r)}function je(e,t,n,r){if(e>Y)throw X(t,n,`worksheet-json`,`bytes`,Y,e,r)}var Me=class{coordinator=new Ce;sessions=new Map;operationTail=Promise.resolve();pendingOpens=new Map;resourceFailure;constructor(e,t,n=e=>e(this.requireArchive()),r){this.archive=e,this.acceptWorksheet=t,this.executeArchive=n,this.prepareRows=r}reserveOpen(e){this.pendingOpens.set(e.sessionId,{identity:e,canceled:!1})}abandonOpen(e){this.pendingOpens.delete(e)}get pendingOpenCount(){return this.pendingOpens.size}async open(e,t,n){if(this.resourceFailure)throw this.resourceFailure;let r=this.pendingOpens.get(n.sessionId);if(!r||r.identity.operationId!==n.operationId||r.identity.generation!==n.generation)throw Error(`worksheet pull session open reservation is stale or missing`);let i,a=new Promise(e=>{i=e}),o=this.operationTail.then(()=>this.coordinator.enqueue(async()=>{if(r.canceled)throw Error(`worksheet pull session open was canceled`);this.executeArchive(n=>n.open_sheet_cursor(e,t));let a=[],o={rows:0,cells:0,ownedUtf8Bytes:0},s,c=!1,l=new we({...n,maxByteCredit:67108864,coordinator:this.coordinator,driver:{pull:()=>{let e=this.executeArchive(e=>e.pull_sheet_cursor(128)),t=this.executeArchive(e=>e.sheet_cursor_pull_finished());if(this.acceptWorksheet){let n=Ee(e,t,void 0,this.prepareRows);try{if(n.kind===`rows`){let e=Ae(o,Oe(n.rows));Z(e,`get-worksheet-worker`,void 0,this.readResourceUsage()),a.push(...n.rows),o=e}else s=n.worksheet}catch(e){throw e instanceof x&&(this.resourceFailure??=e),e}}c=t;let n=be(e);return{payload:n,byteLength:n.byteLength,done:t,transfer:[n]}},measureChunk:({payload:e})=>e.byteLength,acknowledge:()=>{if(!c)return;let t,r;try{if(this.acceptWorksheet){if(!s)throw Error(`worksheet terminal payload is missing`);s.rows=s.parseError?[]:a;let n=s.parseError?{rows:0,cells:0,ownedUtf8Bytes:0}:o,i=ke(s,n),c=this.readResourceUsage();Z(i,`get-worksheet-worker`,void 0,c),je(i.jsonBytes,`get-worksheet-worker`,void 0,c);let l=this.acceptWorksheet(e,s,i,c);typeof l==`function`?t=l:l&&({rollback:t,commit:r}=l)}this.executeArchive(e=>e.acknowledge_sheet_cursor_terminal()),r?.()}catch(e){throw t?.(),e instanceof x&&(this.resourceFailure??=e),e}c=!1,this.sessions.delete(n.sessionId),i()},cancel:()=>{try{this.archive()&&this.executeArchive(e=>e.cancel_sheet_cursor())}finally{this.sessions.delete(n.sessionId),i()}},close:()=>{try{this.archive()&&this.executeArchive(e=>e.close_sheet_cursor())}finally{this.sessions.delete(n.sessionId),i()}},resourceUsage:()=>this.readResourceUsage()}});this.sessions.set(n.sessionId,{host:l,identity:n}),this.pendingOpens.delete(n.sessionId)}));this.operationTail=o.then(()=>a,()=>void 0);try{await o}catch(e){throw this.pendingOpens.delete(n.sessionId),i(),e}}async postOpenedSafely(e,t,n){try{t()}catch(t){await this.closeIdentity(e);try{n(t)}catch{}}}dispatch(e,t){let n=this.sessions.get(e.sessionId);if(n)return n.host.dispatch(e,t);let r=this.pendingOpens.get(e.sessionId);if(r&&(e.kind===`cancel`||e.kind===`close`)){let n=r.identity.operationId===e.operationId&&r.identity.generation===e.generation;return n&&(r.canceled=!0),t(n?{protocol:R,kind:`accepted`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,command:e.kind}:{protocol:R,kind:`error`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:{message:`stale lifecycle targets another pending worksheet operation`,errorName:`PullSessionProtocolError`,code:`ooxml-stale-lifecycle`}}),Promise.resolve()}return e.kind===`cancel`||e.kind===`close`?(t({protocol:R,kind:`accepted`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,command:e.kind}),Promise.resolve()):(t({protocol:R,kind:`error`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:L(Error(`worksheet pull session is not open`))}),Promise.resolve())}async dispatchSafely(e,t){try{await this.dispatch(e,t)}catch(n){try{t({protocol:R,kind:`error`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:L(n)})}catch{}}}run(e){let t=this.operationTail.then(()=>this.coordinator.enqueue(async()=>{if(this.resourceFailure)throw this.resourceFailure;return e()})).catch(e=>{throw e instanceof x&&(this.resourceFailure??=e),e});return this.operationTail=t.then(()=>void 0,()=>void 0),t}async reset(){for(let e of this.pendingOpens.values())e.canceled=!0;let e=1;for(let{host:t,identity:n}of[...this.sessions.values()])await t.dispatch({protocol:R,kind:`close`,...n,requestId:e++},()=>void 0);this.sessions.clear(),await this.operationTail,this.pendingOpens.clear(),this.resourceFailure=void 0}requireArchive(){let e=this.archive();if(!e)throw Error(`Workbook not loaded`);return e}async closeIdentity(e){let t=this.sessions.get(e.sessionId);if(t){await t.host.dispatch({protocol:R,kind:`close`,...e,requestId:1},()=>void 0);return}let n=this.pendingOpens.get(e.sessionId);n&&n.identity.operationId===e.operationId&&n.identity.generation===e.generation&&(n.canceled=!0)}readResourceUsage(){try{return k(this.executeArchive(e=>e.sheet_cursor_resource_usage()))}catch(e){if(String(e).includes(`worksheet cursor usage is unavailable`))return;throw e}}};function Ne(e){return!!e&&typeof e==`object`&&e.protocol===`ooxml-pull-v1`}const Q=new ce(y,{freeArchive:e=>e.free(),reinit:ne}),$=new Me(()=>Q.archive,void 0,e=>{let t=Q.archive;if(!t)throw Error(`Workbook not loaded`);return Q.run(()=>e(t))});self.onmessage=async t=>{let n=t.data;if(Ne(n)){await $.dispatchSafely(n,(e,t)=>self.postMessage(e,t));return}if(n.type===`init`){Q.setWasmInput(ie(n.wasmUrl)??n.wasmUrl);return}let r=n.id;n.type===`openSheetSession`&&$.reserveOpen(n);try{if(n.type===`openSheetSession`){await Q.ensureReady(),Q.archive&&Q.run(()=>Q.archive?.assert_healthy()),await $.open(n.sheetIndex,n.sheetName,n),await $.postOpenedSafely(n,()=>self.postMessage({type:`sheetSessionOpened`,id:r,sessionId:n.sessionId,operationId:n.operationId,generation:n.generation}),e=>self.postMessage({type:`error`,id:r,...L(e)}));return}n.type===`parse`&&await $.reset(),await $.run(async()=>{if(await Q.ensureReady(),n.type!==`parse`&&Q.archive){let e=Q.archive;Q.run(()=>e.assert_healthy())}if(n.type===`parse`){let[t,i,a]=xe(n.resourcePolicy),o=new Uint8Array(n.data),s=Q.run(()=>{let n=new e(o,t,i,a);return Q.setArchive(n),n.parse()}).buffer,c={type:`parsed`,id:r,workbookJson:s,usage:Q.run(()=>k(Q.archive.resource_usage()))};self.postMessage(c,[s]);return}let t=Q.archive;if(n.type===`extractImage`){if(!t)throw Error(`No xlsx loaded`);let e=Q.run(()=>t.extract_image(n.path).buffer),i={type:`imageExtracted`,id:r,bytes:e};self.postMessage(i,[e]);return}if(n.type===`resourceUsage`){if(!t)throw Error(`No xlsx loaded`);let e=Q.run(()=>k(t.resource_usage()));self.postMessage({type:`resourceUsage`,id:r,usage:e});return}if(n.type===`toMarkdown`){if(!t)throw Error(`No xlsx loaded`);let e={type:`markdownRendered`,id:r,markdown:Q.run(()=>t.to_markdown())};self.postMessage(e);return}})}catch(e){n.type===`openSheetSession`&&$.abandonOpen(n.sessionId);let t={type:`error`,id:r,...L(e)};try{self.postMessage(t)}catch{}}};", st = typeof self < "u" && self.Blob && new Blob(["URL.revokeObjectURL(import.meta.url);", ot], { type: "text/javascript;charset=utf-8" });
100
- function ct(e) {
99
+ var st = "var e=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,n.unregister(this),e}free(){let e=this.__destroy_into_raw();_.__wbg_xlsxarchive_free(e,0)}acknowledge_sheet_cursor_terminal(){let e=_.xlsxarchive_acknowledge_sheet_cursor_terminal(this.__wbg_ptr);if(e[1])throw f(e[0])}assert_healthy(){let e=_.xlsxarchive_assert_healthy(this.__wbg_ptr);if(e[1])throw f(e[0])}cancel_sheet_cursor(){_.xlsxarchive_cancel_sheet_cursor(this.__wbg_ptr)}close_sheet_cursor(){_.xlsxarchive_close_sheet_cursor(this.__wbg_ptr)}extract_image(e){let t=d(e,_.__wbindgen_malloc,_.__wbindgen_realloc),n=g,i=_.xlsxarchive_extract_image(this.__wbg_ptr,t,n);if(i[3])throw f(i[2]);var a=r(i[0],i[1]).slice();return _.__wbindgen_free(i[0],i[1]*1,1),a}constructor(e,t,r,i){let a=u(e,_.__wbindgen_malloc),o=g,s=_.xlsxarchive_new(a,o,!l(t),l(t)?BigInt(0):t,!l(r),l(r)?BigInt(0):r,!l(i),l(i)?BigInt(0):i);if(s[2])throw f(s[1]);return this.__wbg_ptr=s[0]>>>0,n.register(this,this.__wbg_ptr,this),this}open_sheet_cursor(e,t){let n=d(t,_.__wbindgen_malloc,_.__wbindgen_realloc),r=g,i=_.xlsxarchive_open_sheet_cursor(this.__wbg_ptr,e,n,r);if(i[1])throw f(i[0])}parse(){let e=_.xlsxarchive_parse(this.__wbg_ptr);if(e[3])throw f(e[2]);var t=r(e[0],e[1]).slice();return _.__wbindgen_free(e[0],e[1]*1,1),t}pull_sheet_cursor(e){let t=_.xlsxarchive_pull_sheet_cursor(this.__wbg_ptr,e);if(t[3])throw f(t[2]);var n=r(t[0],t[1]).slice();return _.__wbindgen_free(t[0],t[1]*1,1),n}resource_usage(){let e=_.xlsxarchive_resource_usage(this.__wbg_ptr);if(e[3])throw f(e[2]);var t=r(e[0],e[1]).slice();return _.__wbindgen_free(e[0],e[1]*1,1),t}sheet_cursor_pull_finished(){return _.xlsxarchive_sheet_cursor_pull_finished(this.__wbg_ptr)!==0}sheet_cursor_resource_usage(){let e=_.xlsxarchive_sheet_cursor_resource_usage(this.__wbg_ptr);if(e[3])throw f(e[2]);var t=r(e[0],e[1]).slice();return _.__wbindgen_free(e[0],e[1]*1,1),t}to_markdown(){let e,t;try{let i=_.xlsxarchive_to_markdown(this.__wbg_ptr);var n=i[0],r=i[1];if(i[3])throw n=0,r=0,f(i[2]);return e=n,t=r,o(n,r)}finally{_.__wbindgen_free(e,t,1)}}};Symbol.dispose&&(e.prototype[Symbol.dispose]=e.prototype.free);function t(){return{__proto__:null,\"./xlsx_parser_bg.js\":{__proto__:null,__wbg___wbindgen_throw_6b64449b9b9ed33c:function(e,t){throw Error(o(e,t))},__wbg_error_a6fa202b58aa1cd3:function(e,t){let n,r;try{n=e,r=t,console.error(o(e,t))}finally{_.__wbindgen_free(n,r,1)}},__wbg_new_227d7c05414eb861:function(){return Error()},__wbg_stack_3b0d974bbf31e44f:function(e,t){let n=t.stack,r=d(n,_.__wbindgen_malloc,_.__wbindgen_realloc),i=g;a().setInt32(e+4,i,!0),a().setInt32(e+0,r,!0)},__wbindgen_cast_0000000000000001:function(e,t){return o(e,t)},__wbindgen_init_externref_table:function(){let e=_.__wbindgen_externrefs,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)}}}}const n=typeof FinalizationRegistry>`u`?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>_.__wbg_xlsxarchive_free(e>>>0,1));function r(e,t){return e>>>=0,c().subarray(e/1,e/1+t)}let i=null;function a(){return(i===null||i.buffer.detached===!0||i.buffer.detached===void 0&&i.buffer!==_.memory.buffer)&&(i=new DataView(_.memory.buffer)),i}function o(e,t){return e>>>=0,ee(e,t)}let s=null;function c(){return(s===null||s.byteLength===0)&&(s=new Uint8Array(_.memory.buffer)),s}function l(e){return e==null}function u(e,t){let n=t(e.length*1,1)>>>0;return c().set(e,n/1),g=e.length,n}function d(e,t,n){if(n===void 0){let n=h.encode(e),r=t(n.length,1)>>>0;return c().subarray(r,r+n.length).set(n),g=n.length,r}let r=e.length,i=t(r,1)>>>0,a=c(),o=0;for(;o<r;o++){let t=e.charCodeAt(o);if(t>127)break;a[i+o]=t}if(o!==r){o!==0&&(e=e.slice(o)),i=n(i,r,r=o+e.length*3,1)>>>0;let t=c().subarray(i+o,i+r),a=h.encodeInto(e,t);o+=a.written,i=n(i,r,o,1)>>>0}return g=o,i}function f(e){let t=_.__wbindgen_externrefs.get(e);return _.__externref_table_dealloc(e),t}let p=new TextDecoder(`utf-8`,{ignoreBOM:!0,fatal:!0});p.decode();let m=0;function ee(e,t){return m+=t,m>=2146435072&&(p=new TextDecoder(`utf-8`,{ignoreBOM:!0,fatal:!0}),p.decode(),m=t),p.decode(c().subarray(e,e+t))}const h=new TextEncoder;`encodeInto`in h||(h.encodeInto=function(e,t){let n=h.encode(e);return t.set(n),{read:e.length,written:n.length}});let g=0,_;function v(e,t){return _=e.exports,i=null,s=null,_.__wbindgen_start(),_}async function te(e,t){if(typeof Response==`function`&&e instanceof Response){if(typeof WebAssembly.instantiateStreaming==`function`)try{return await WebAssembly.instantiateStreaming(e,t)}catch(t){if(e.ok&&n(e.type)&&e.headers.get(`Content-Type`)!==`application/wasm`)console.warn(\"`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\\n\",t);else throw t}let r=await e.arrayBuffer();return await WebAssembly.instantiate(r,t)}else{let n=await WebAssembly.instantiate(e,t);return n instanceof WebAssembly.Instance?{instance:n,module:e}:n}function n(e){switch(e){case`basic`:case`cors`:case`default`:return!0}return!1}}async function y(e){if(_!==void 0)return _;e!==void 0&&(Object.getPrototypeOf(e)===Object.prototype?{module_or_path:e}=e:console.warn(`using deprecated parameters for the initialization function; pass a single object instead`));let n=t();(typeof e==`string`||typeof Request==`function`&&e instanceof Request||typeof URL==`function`&&e instanceof URL)&&(e=fetch(e));let{instance:r,module:i}=await te(await e,n);return v(r,i)}async function ne(e){return _=void 0,i=null,s=null,y(e)}var b=class e extends Error{code;constructor(t,n){super(n),this.name=`OoxmlError`,this.code=t,Object.setPrototypeOf(this,e.prototype)}},x=class e extends Error{code=`ooxml-resource-limit`;details;constructor(t,n){super(t),this.name=`OoxmlResourceLimitError`;let r=n.violation,i=Object.freeze({format:r.format,operation:r.operation,resource:r.resource,metric:r.metric,...r.part===void 0?{}:{part:r.part},limit:r.limit,observed:r.observed,configurable:r.configurable,usage:Object.freeze({archiveEntryCount:r.usage.archiveEntryCount,declaredInflatedBytes:r.usage.declaredInflatedBytes,...r.usage.largestInflatedEntryBytes===void 0?{}:{largestInflatedEntryBytes:r.usage.largestInflatedEntryBytes},distinctInflatedBytes:r.usage.distinctInflatedBytes,operationInflatedBytes:r.usage.operationInflatedBytes})});this.details=Object.freeze({stage:n.stage,violation:i}),Object.setPrototypeOf(this,e.prototype)}},re=class e extends RangeError{code=`ooxml-decoded-image-limit`;constructor(t,n,r){super(`OOXML decoded image limit exceeded: ${t} ${r} > ${n}`),this.metric=t,this.limit=n,this.observed=r,this.name=`OoxmlDecodedImageLimitError`,Object.setPrototypeOf(this,e.prototype)}};function ie(e){if(!e.startsWith(`data:`))return null;let t=e.indexOf(`,`);if(t===-1)return null;let n=atob(e.slice(t+1)),r=new Uint8Array(n.length);for(let e=0;e<n.length;e++)r[e]=n.charCodeAt(e);return r.buffer}var ae=class{state=`uninitialized`;generationValue=0;readiness;poisonListeners=new Set;constructor(e,t,n){this.initialize=e,this.reinitialize=t,this.normalizeFailure=n}get generation(){return this.generationValue}get poisoned(){return this.state===`poisoned`}onPoison(e){return this.poisonListeners.add(e),()=>this.poisonListeners.delete(e)}async ensureReady(){if(this.state!==`ready`){if(!this.readiness){let e=this.state===`uninitialized`?this.initialize:this.reinitialize;this.readiness=Promise.resolve().then(e).then(()=>{this.generationValue+=1,this.state=`ready`,this.readiness=void 0},e=>{throw this.readiness=void 0,e})}await this.readiness}}run(e){try{return e()}catch(e){let t=this.normalizeFailure(e);throw t?(this.poison(t),t):e}}tryRunReady(e){if(this.state!==`ready`)return{current:!1};let t=this.generationValue,n=this.run(e);return this.state!==`ready`||t!==this.generationValue?{current:!1}:{current:!0,generation:t,value:n}}poison(e){this.state=`poisoned`,this.readiness=void 0;for(let t of this.poisonListeners)t(e)}assertCurrent(e){if(this.state!==`ready`||e!==this.generationValue)throw Error(`WASM archive session belongs to a discarded runtime generation`)}},S=class e extends Error{code=`parser-crashed`;constructor(t){super(t),this.name=`WasmTrapError`,Object.setPrototypeOf(this,e.prototype)}};function oe(e){let t=globalThis.WebAssembly?.RuntimeError;return t&&e instanceof t||e instanceof RangeError?!0:e instanceof Error?e.name===`RuntimeError`||e.name===`CompileError`||e.name===`LinkError`||e.name===`InternalError`||e.name===`OOMError`:!1}function se(e){try{if((typeof e!=`object`||!e)&&typeof e!=`function`)return;let t=Reflect.get(e,`__destroy_into_raw`);typeof t==`function`&&Reflect.apply(t,e,[])}catch{}}function C(e,t){return e({module_or_path:t})}var ce=class{runtime;wasmInput=null;currentArchive=null;constructor(e,t={}){this.init=e,this.options=t,this.runtime=new ae(()=>this.invokeConfigured(this.init),()=>this.invokeConfigured(this.options.reinit??this.init),le),this.runtime.onPoison(()=>this.dropPoisonedArchive())}setWasmInput(e){this.wasmInput=e,this.runtime.ensureReady().catch(()=>void 0)}setWasmUrl(e){this.setWasmInput(e)}get archive(){return this.currentArchive}setArchive(e){this.freeArchive(),this.currentArchive=e}disposeArchive(){this.freeArchive()}get poisoned(){return this.runtime.poisoned}async ensureReady(){await this.runtime.ensureReady()}run(e){return this.runtime.run(e)}poison(){this.runtime.poison(new S(`WASM parser was recycled`))}invokeConfigured(e){return this.wasmInput===null?Promise.reject(Error(`WasmParserHost: setWasmInput was never called`)):C(e,this.wasmInput)}freeArchive(){this.currentArchive!==null&&this.options.freeArchive&&this.options.freeArchive(this.currentArchive),this.currentArchive=null}dropPoisonedArchive(){let e=this.currentArchive;this.currentArchive=null,se(e)}};function le(e){return oe(e)?new S(`WASM parser trapped and was recycled: ${e instanceof Error?e.message:String(e)}`):null}function w(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>0}function ue(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return w(t.requiredBytes)&&w(t.offeredBytes)&&t.requiredBytes>t.offeredBytes}var T=class e extends RangeError{code=`ooxml-insufficient-credit`;requiredBytes;offeredBytes;constructor(t){super(`Pull unit requires ${t.requiredBytes} bytes but credit is ${t.offeredBytes}`),this.name=`PullSessionInsufficientCreditError`,this.requiredBytes=t.requiredBytes,this.offeredBytes=t.offeredBytes,Object.setPrototypeOf(this,e.prototype)}};function de(e){if(e instanceof T)return e;let t=e instanceof Error?e.message:String(e);if(!t.startsWith(`OOXML_INSUFFICIENT_CREDIT:`))return;let n;try{n=JSON.parse(t.slice(26))}catch{return}if(!n||typeof n!=`object`||Array.isArray(n))return;let r=n;if(!(r.code!==`ooxml-insufficient-credit`||!ue(r)))return new T(r)}const E=`OOXML_RESOURCE_LIMIT:`;function D(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>=0}function O(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return D(t.archiveEntryCount)&&D(t.declaredInflatedBytes)&&(t.largestInflatedEntryBytes===void 0||D(t.largestInflatedEntryBytes))&&D(t.distinctInflatedBytes)&&D(t.operationInflatedBytes)}function k(e){let t;try{t=JSON.parse(new TextDecoder().decode(e))}catch{throw TypeError(`OOXML resource usage checkpoint is not valid JSON`)}if(!O(t))throw TypeError(`OOXML resource usage checkpoint is invalid`);return t}function fe(e){return e===`docx`||e===`xlsx`||e===`pptx`}function pe(e){return e===`container`||e===`decompression`||e===`parsing`||e===`serialization`||e===`layout`||e===`rendering`||e===`worker`}function A(e,t){return typeof e==`string`&&e.length>0&&e.length<=t&&!/[\\u0000-\\u001f\\u007f]/u.test(e)}function j(e){return A(e,128)&&/^[a-z0-9][a-z0-9-]*$/u.test(e)}function me(e){return!A(e,4096)||e.startsWith(`/`)||e.startsWith(`\\\\`)||e.includes(`\\\\`)||e.includes(`?`)||e.includes(`#`)||e.includes(`://`)||/^[a-z]:/iu.test(e)?!1:e.split(`/`).every(e=>e!==``&&e!==`.`&&e!==`..`)}const M=new Map([[`archive-entry:declared-inflated-bytes`,{stage:`container`,part:`required`}],[`archive-entry:actual-inflated-bytes`,{stage:`decompression`,part:`required`}],[`archive:entry-count`,{stage:`container`,part:`forbidden`}],[`archive:central-directory-bytes`,{stage:`container`,part:`forbidden`,configurable:!1}],[`archive:distinct-inflated-bytes`,{stage:`decompression`,part:`required`}],[`xml-event:bytes`,{stage:`parsing`,part:`optional`,configurable:!1}],[`xml-context:bytes`,{stage:`parsing`,part:`optional`,configurable:!1}],[`xml-tree:depth`,{stage:`parsing`,part:`optional`,configurable:!1}],[`worksheet-row:projected-bytes`,{stage:`parsing`,part:`optional`,configurable:!1}],[`worksheet-shell:projected-bytes`,{stage:`parsing`,part:`optional`,configurable:!1}]]),he=new Set([...M.keys()].map(e=>e.slice(0,e.indexOf(`:`)))),ge=new Set([...M.keys()].map(e=>e.slice(e.indexOf(`:`)+1)));function _e(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return!fe(t.format)||!A(t.operation,256)||!j(t.resource)||!j(t.metric)||!D(t.limit)||!D(t.observed)||typeof t.configurable!=`boolean`||!O(t.usage)?!1:!(`part`in t)||me(t.part)}function N(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;if(!pe(t.stage)||!_e(t.violation))return!1;let n=t.violation,r=M.get(`${n.resource}:${n.metric}`);return r?t.stage!==r.stage||r.configurable===!1&&n.configurable!==!1?!1:r.part===`required`?n.part!==void 0:r.part===`forbidden`?n.part===void 0:!0:!(he.has(n.resource)&&ge.has(n.metric))}function P(e){return{archiveEntryCount:e.archiveEntryCount,declaredInflatedBytes:e.declaredInflatedBytes,...e.largestInflatedEntryBytes===void 0?{}:{largestInflatedEntryBytes:e.largestInflatedEntryBytes},distinctInflatedBytes:e.distinctInflatedBytes,operationInflatedBytes:e.operationInflatedBytes}}function F(e){if(!N(e))return;let t=e.violation,n={stage:e.stage,violation:{format:t.format,operation:t.operation,resource:t.resource,metric:t.metric,...t.part===void 0?{}:{part:t.part},limit:t.limit,observed:t.observed,configurable:t.configurable,usage:P(t.usage)}};return N(n)?n:void 0}function I(e){let t=e.violation;return`OOXML resource limit exceeded${t.part?` for ${t.part}`:``}: ${t.metric} ${t.observed} > ${t.limit}`}function ve(e){let t=e instanceof Error?e.message:String(e);if(!t.startsWith(E))return;let n;try{n=JSON.parse(t.slice(21))}catch{return}if(!n||typeof n!=`object`)return;let r=n;if(!(r.code!==`ooxml-resource-limit`||!N(r.details)))return new x(I(r.details),r.details)}function ye(e){if(e instanceof re)return{message:e.message,errorName:e.name,code:e.code,decodedImage:{metric:e.metric,limit:e.limit,observed:e.observed}};let t=de(e);if(t)return{message:t.message,errorName:t.name,code:t.code,insufficientCredit:{requiredBytes:t.requiredBytes,offeredBytes:t.offeredBytes}};let n=e instanceof b||e instanceof x?e:ve(e);if(n instanceof x){let e=F(n.details);return e?{message:typeof n.message==`string`?n.message:I(e),errorName:`OoxmlResourceLimitError`,code:`ooxml-resource-limit`,resourceLimit:e}:{message:`Invalid OOXML resource-limit error payload`,errorName:`Error`}}if(n instanceof b)return{message:typeof n.message==`string`?n.message:String(n.message),errorName:A(n.name,128)?n.name:`OoxmlError`,...j(n.code)?{code:n.code}:{}};let r=e instanceof Error?e.message:String(e);if(typeof r==`string`&&r.startsWith(E))return{message:`Invalid OOXML resource-limit payload`,errorName:`Error`};let i=e instanceof Error?e:Error(r),a=i;return{message:typeof i.message==`string`?i.message:String(i.message),errorName:A(i.name,128)?i.name:`Error`,...typeof a.code==`string`?{code:a.code}:{}}}function L(e){try{return ye(e)}catch{return{message:`Worker operation failed with an unreadable error`,errorName:`Error`}}}function be(e){return e.byteOffset===0&&e.byteLength===e.buffer.byteLength&&e.buffer instanceof ArrayBuffer?e.buffer:e.slice().buffer}Object.freeze({maxArchiveEntryBytes:134217728,maxTotalInflatedBytes:268435456,maxArchiveEntries:4096});function xe(e){return[e.maxArchiveEntryBytes===null?0n:BigInt(e.maxArchiveEntryBytes),e.maxTotalInflatedBytes===null?0n:BigInt(e.maxTotalInflatedBytes),e.maxArchiveEntries===null?0n:BigInt(e.maxArchiveEntries)]}const R=`ooxml-pull-v1`;function z(e,t){if(!Number.isSafeInteger(e)||e<=0)throw RangeError(`${t} must be a positive safe integer`)}function Se(e){if(!(typeof e==`string`&&e.length>0||typeof e==`number`&&Number.isSafeInteger(e)&&e>0))throw RangeError(`session id must be a non-empty string or positive safe integer`)}var Ce=class{owner;queue=Promise.resolve();leases=new Map;retainedBytes=0;retainedCount=0;maxRetainedBytes;maxRetainedCount;cleanups=new Set;pendingFatalCleanups=[];poisonRunning=!1;fatal;constructor(e){this.maxRetainedBytes=e?.maxRetainedBytes??64*1024*1024,this.maxRetainedCount=e?.maxRetainedCount??256,z(this.maxRetainedBytes,`max retained lease bytes`),z(this.maxRetainedCount,`max retained lease count`)}enqueue(e){let t=this.queue.then(e,e);return this.queue=t.then(()=>void 0,()=>void 0),t}acquire(e){return this.owner===void 0?(this.owner=e,!0):this.owner===e}release(e){this.owner===e&&(this.owner=void 0)}retainLease(e,t,n){if(!Number.isSafeInteger(n)||n<0)throw RangeError(`retained lease bytes are invalid`);let r=this.leases.get(e)??new Map;if(r.has(t))throw Error(`driver returned a duplicate lease id`);if(this.retainedCount+1>this.maxRetainedCount)throw RangeError(`retained lease count exceeds limit`);if(this.retainedBytes+n>this.maxRetainedBytes)throw RangeError(`retained lease bytes exceed limit`);r.set(t,n),this.leases.set(e,r),this.retainedCount++,this.retainedBytes+=n}releaseLease(e,t){let n=this.leases.get(e),r=n?.get(t);r!==void 0&&(n?.delete(t),n?.size===0&&this.leases.delete(e),this.retainedCount--,this.retainedBytes-=r)}registerCleanup(e){return this.fatal?(this.poisonRunning?this.pendingFatalCleanups.push(e):this.enqueue(e).catch(()=>void 0),()=>void 0):(this.cleanups.add(e),()=>this.cleanups.delete(e))}get fatalError(){return this.fatal}get registeredHostCount(){return this.cleanups.size}async poison(e){if(this.fatal??=e,this.poisonRunning)return this.fatal;this.poisonRunning=!0,this.pendingFatalCleanups.push(...this.cleanups);try{let e;for(;(e=this.pendingFatalCleanups.shift())!==void 0;)await e().catch(()=>void 0)}finally{this.poisonRunning=!1}return this.fatal}},we=class{options;coordinator;coordinatorOwner=Symbol(`pull-session-host`);unregisterCleanup;sequence=0;unacked;leases=new Map;activeDriverLeases=new Set;nextWireLeaseId;cancelRequested=!1;cancelComplete=!1;closeRequested=!1;closeComplete=!1;driverCancelComplete=!1;driverCloseComplete=!1;completed=!1;constructor(e){Se(e.sessionId),z(e.operationId,`operation id`),z(e.generation,`generation`),z(e.maxByteCredit,`max byte credit`),e.wireLeaseIdStart!==void 0&&z(e.wireLeaseIdStart,`wire lease id start`),this.options=e,this.coordinator=e.coordinator,this.nextWireLeaseId=e.wireLeaseIdStart??1,this.unregisterCleanup=this.coordinator.registerCleanup(()=>this.forceFatalCleanup())}dispatch(e,t){return this.coordinator.enqueue(async()=>{let n=await this.execute(e);try{t(n.response,n.transfer)}catch(e){throw await this.rollbackFailedPost(n),e}})}async rollbackFailedPost(e){let t=e.response;if(t.kind===`chunk`){let n=t.leaseId===void 0?void 0:this.leases.get(t.leaseId);try{await this.options.driver.disposeInvalidChunk?.({payload:t.payload,byteLength:t.byteLength,done:t.done,leaseId:n?.driverLeaseId,retainedBytes:n?.retainedBytes,transfer:e.transfer})}catch{}}this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);for(let[e,t]of[...this.leases])try{await this.options.driver.releaseLease?.(t.driverLeaseId)}catch{}finally{this.leases.delete(e),this.activeDriverLeases.delete(t.driverLeaseId),this.coordinator.releaseLease(this.coordinatorOwner,e)}if(this.cancelRequested=!0,!this.driverCancelComplete)try{await this.options.driver.cancel?.(),this.driverCancelComplete=!0}catch{}this.unregisterCleanup()}async execute(e){try{if(this.isStaleLifecycle(e)){let t=e.kind===`cancel`?`cancel`:`close`;return this.sameOperationIdentity(e)?{response:this.accepted(e,t,!0)}:{response:this.errorResponse(e,{message:`stale lifecycle targets another session or operation`,errorName:`PullSessionProtocolError`,code:`ooxml-stale-lifecycle`})}}this.validateCommandIdentity(e);let t=this.coordinator.fatalError;if(t)return e.kind===`pull`?{response:this.errorResponse(e,t)}:(e.kind===`cancel`?await this.cancel():e.kind===`close`?await this.close():e.kind===`release`&&await this.release(e.leaseId),{response:this.accepted(e,e.kind)});switch(e.kind){case`pull`:return await this.pull(e);case`ack`:return await this.ack(e.sequence),{response:this.accepted(e,`ack`)};case`release`:return await this.release(e.leaseId),{response:this.accepted(e,`release`)};case`cancel`:return await this.cancel(),{response:this.accepted(e,`cancel`)};case`close`:return await this.close(),{response:this.accepted(e,`close`)}}}catch(t){let n=L(t);return n.code===`ooxml-resource-limit`&&(n=await this.coordinator.poison(n)),{response:this.errorResponse(e,n)}}}async pull(e){if(this.closeRequested||this.cancelRequested||this.completed)throw Error(`pull session is closed`);if(this.unacked)throw Error(`previous chunk is not acknowledged`);if(!Number.isSafeInteger(e.sequence)||e.sequence<0||e.sequence!==this.sequence)throw Error(`pull command sequence mismatch`);if(this.validateHostCredit(e.byteCredit),!this.coordinator.acquire(this.coordinatorOwner))throw Error(`another operation has an unacknowledged package chunk`);let t;try{t=await this.options.driver.pull(e.byteCredit)}catch(e){throw this.coordinator.release(this.coordinatorOwner),e}let n=!1,r=!1,i,a;try{let o=this.options.driver.measureChunk(t),s=this.arrayBufferTransferBytes(t.transfer);if(o<s)throw RangeError(`measured chunk bytes are below ArrayBuffer transfer bytes`);if(a=Math.max(o,s),t.leaseId!==void 0){if(z(t.leaseId,`lease id`),t.retainedBytes===void 0)throw Error(`retained lease bytes are required`);if(this.activeDriverLeases.has(t.leaseId))throw r=!0,Error(`driver returned an active duplicate lease id`);i=this.allocateWireLeaseId(),this.coordinator.retainLease(this.coordinatorOwner,i,t.retainedBytes),this.leases.set(i,{driverLeaseId:t.leaseId,retainedBytes:t.retainedBytes}),this.activeDriverLeases.add(t.leaseId),n=!0}else if(t.retainedBytes!==void 0)throw Error(`retained lease bytes require a lease id`);if(!Number.isSafeInteger(a)||a<0)throw RangeError(`host chunk byte length must be a non-negative safe integer`);if(a>e.byteCredit)throw RangeError(`host chunk exceeds byte credit`)}catch(e){let a;try{await this.options.driver.disposeInvalidChunk?.(t)}catch(e){a=e}if(n&&i!==void 0)try{await this.release(i)}catch(e){a??=e}else if(t.leaseId!==void 0&&!r)try{await this.options.driver.releaseLease?.(t.leaseId)}catch(e){a??=e}if(r)try{await this.cancel()}catch(e){a??=e}throw this.coordinator.release(this.coordinatorOwner),a||e}return this.unacked={sequence:this.sequence,done:t.done},{response:{kind:`chunk`,protocol:R,...this.identity(),requestId:e.requestId,sequence:this.sequence,byteLength:a,done:t.done,payload:t.payload,leaseId:i,usage:this.resourceUsage()},transfer:t.transfer}}async ack(e){if(!Number.isSafeInteger(e)||e<0)throw RangeError(`invalid ack sequence`);if(e<this.sequence)return;if(!this.unacked||e!==this.sequence)throw Error(`ack sequence mismatch`);let t=this.unacked.done;await this.options.driver.acknowledge?.(e),this.unacked=void 0,this.coordinator.release(this.coordinatorOwner),this.sequence++,t&&(this.completed=!0,this.maybeUnregisterCompleted())}async release(e){z(e,`wire lease id`);let t=this.leases.get(e);t&&(await this.options.driver.releaseLease?.(t.driverLeaseId),this.leases.delete(e),this.activeDriverLeases.delete(t.driverLeaseId),this.coordinator.releaseLease(this.coordinatorOwner,e),this.maybeUnregisterCompleted())}async cancel(){if(this.cancelComplete)return;this.cancelRequested=!0,this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);let e;try{await this.releaseAllLeases()}catch(t){e=t}if(!this.driverCancelComplete)try{await this.options.driver.cancel?.(),this.driverCancelComplete=!0}catch(t){e??=t}if(e)throw e;this.cancelComplete=!0,this.unregisterCleanup()}async close(){if(this.closeComplete)return;this.closeRequested=!0,this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);let e;try{await this.releaseAllLeases()}catch(t){e=t}if(!this.driverCloseComplete)try{await this.options.driver.close?.(),this.driverCloseComplete=!0}catch(t){e??=t}if(e)throw e;this.closeComplete=!0,this.unregisterCleanup()}async releaseAllLeases(){let e;for(let t of[...this.leases.keys()])try{await this.release(t)}catch(t){e??=t}if(e)throw e}validateCommandIdentity(e){if(e.protocol!==`ooxml-pull-v1`||e.sessionId!==this.options.sessionId||e.operationId!==this.options.operationId||e.generation!==this.options.generation||!Number.isSafeInteger(e.requestId)||e.requestId<=0)throw Error(`stale or mismatched pull session command`)}validateHostCredit(e){if(z(e,`byte credit`),e>this.options.maxByteCredit)throw RangeError(`byte credit exceeds host maximum`)}accepted(e,t,n=!1){return{kind:`accepted`,protocol:R,...n?{sessionId:e.sessionId,operationId:e.operationId,generation:e.generation}:this.identity(),requestId:e.requestId,command:t,usage:this.resourceUsage()}}identity(){return{sessionId:this.options.sessionId,operationId:this.options.operationId,generation:this.options.generation}}isStaleLifecycle(e){return(e.kind===`cancel`||e.kind===`close`)&&e.protocol===`ooxml-pull-v1`&&Number.isSafeInteger(e.requestId)&&e.requestId>0&&Number.isSafeInteger(e.generation)&&e.generation>0&&e.generation<this.options.generation}sameOperationIdentity(e){return e.sessionId===this.options.sessionId&&e.operationId===this.options.operationId}errorResponse(e,t){return{kind:`error`,protocol:R,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:t,usage:this.errorResourceUsage()}}async forceFatalCleanup(){this.cancelRequested=!0,this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);let e;for(let t of[...this.leases.keys()])try{await this.release(t)}catch(t){e??=t}if(!this.driverCancelComplete)try{await this.options.driver.cancel?.(),this.driverCancelComplete=!0}catch(t){e??=t}if(e)throw e;this.unregisterCleanup()}allocateWireLeaseId(){if(!Number.isSafeInteger(this.nextWireLeaseId)||this.nextWireLeaseId<=0)throw RangeError(`wire lease id space exhausted`);return this.nextWireLeaseId++}arrayBufferTransferBytes(e){let t=0;for(let n of e??[])if(n instanceof ArrayBuffer&&(t+=n.byteLength,!Number.isSafeInteger(t)))throw RangeError(`ArrayBuffer transfer bytes overflow`);return t}maybeUnregisterCompleted(){this.completed&&this.leases.size===0&&this.unregisterCleanup()}resourceUsage(){return this.options.driver.resourceUsage?.()}errorResourceUsage(){try{return this.resourceUsage()}catch{return}}};function Te(e,t){for(let n of e)for(let e of n.cells){let n=e.value;if(n.type===`shared`){let r=t[n.si];if(r){let t={type:`text`,text:r.text};r.runs!==void 0&&(t.runs=r.runs),r.phoneticRuns!==void 0&&(t.phoneticRuns=r.phoneticRuns),r.phoneticPr!==void 0&&(t.phoneticPr=r.phoneticPr),e.value=t}else e.value={type:`text`,text:``}}}return e}function Ee(e,t,n,r){let i=e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength),a=JSON.parse(new TextDecoder().decode(i));if(!a||typeof a!=`object`||!(`kind`in a))throw Error(`worksheet cursor returned an invalid unit`);let o=a;if(t!==(o.kind===`finished`))throw Error(`worksheet cursor terminal marker mismatch`);if(o.kind===`rows`){if(!Array.isArray(o.rows))throw Error(`worksheet row unit is missing rows`);return n&&Te(o.rows,n),r?.(o.rows),{kind:`rows`,rows:o.rows}}if(o.kind===`finished`){if(!o.worksheet||typeof o.worksheet!=`object`)throw Error(`worksheet terminal unit is missing its worksheet`);return o.worksheet.rows=[],{kind:`finished`,worksheet:o.worksheet}}throw Error(`worksheet cursor returned an unknown unit kind`)}function B(e,t){if(!Number.isSafeInteger(e)||e<0)throw Error(`${t} must be a non-negative safe integer`)}function V(e,t,n){return B(e,`resource measurement`),B(t,`resource measurement`),B(n,`resource measurement limit`),e>n||t>n||t>n-e?n===2**53-1?n:n+1:e+t}function H(e,t=2**53-1){B(t,`resource measurement limit`);let n=0;for(let r=0;r<e.length;r+=1){let i=e.charCodeAt(r),a;if(i<=127)a=1;else if(i<=2047)a=2;else if(i>=55296&&i<=56319&&r+1<e.length){let t=e.charCodeAt(r+1);t>=56320&&t<=57343?(a=4,r+=1):a=3}else a=3;if(n=V(n,a,t),n>t)return n}return n}function U(e,t=2**53-1){B(t,`resource measurement limit`);let n=V(0,2,t);if(n>t)return n;for(let r=0;r<e.length;r+=1){let i=e.charCodeAt(r),a;if(i===34||i===92||i===8||i===9||i===10||i===12||i===13)a=2;else if(i<=31)a=6;else if(i<=127)a=1;else if(i<=2047)a=2;else if(i>=55296&&i<=56319&&r+1<e.length){let t=e.charCodeAt(r+1);t>=56320&&t<=57343?(a=4,r+=1):a=6}else a=i>=55296&&i<=57343?6:3;if(n=V(n,a,t),n>t)return n}return n}function W(e,t){return V(0,e,t)}function G(e,t=2**53-1,n=!1){if(B(t,`resource measurement limit`),e===null)return{jsonBytes:W(4,t),stringValueUtf8Bytes:0};if(typeof e==`string`)return{jsonBytes:U(e,t),stringValueUtf8Bytes:H(e,t)};if(typeof e==`boolean`)return{jsonBytes:W(e?4:5,t),stringValueUtf8Bytes:0};if(typeof e==`number`)return{jsonBytes:W((Number.isFinite(e)?String(Object.is(e,-0)?0:e):`null`).length,t),stringValueUtf8Bytes:0};if(typeof e==`bigint`)throw TypeError(`BigInt values cannot be serialized to JSON`);if(Array.isArray(e)){let n=W(2,t),r=0;for(let i=0;i<e.length;i+=1){i!==0&&(n=V(n,1,t));let a=G(e[i],t,!0);n=V(n,a.jsonBytes,t),r=V(r,a.stringValueUtf8Bytes,t)}return{jsonBytes:n,stringValueUtf8Bytes:r}}if(typeof e==`object`){let n=W(2,t),r=0,i=0;for(let[a,o]of Object.entries(e)){if(o===void 0||typeof o==`function`||typeof o==`symbol`)continue;i++!==0&&(n=V(n,1,t)),n=V(n,U(a,t),t),n=V(n,1,t);let e=G(o,t);n=V(n,e.jsonBytes,t),r=V(r,e.stringValueUtf8Bytes,t)}return{jsonBytes:n,stringValueUtf8Bytes:r}}return{jsonBytes:n?W(4,t):0,stringValueUtf8Bytes:0}}const K=1e5,q=25e4,J=33554432,Y=67108864,De=Object.freeze({archiveEntryCount:0,declaredInflatedBytes:0,distinctInflatedBytes:0,operationInflatedBytes:0});function Oe(e){let t=e.reduce((e,t)=>V(e,t.cells.length,q),0);return{rows:e.length,cells:t,ownedUtf8Bytes:e.reduce((e,t)=>t.cells.reduce((e,t)=>{let n=G(t.value,J).stringValueUtf8Bytes;return V(e,V(n,t.formula===void 0?0:H(t.formula,J),J),J)},e),0)}}function ke(e,t){let n=G(e,67108864);return{...t,jsonBytes:n.jsonBytes}}function Ae(e,t){return{rows:V(e.rows,t.rows,K),cells:V(e.cells,t.cells,q),ownedUtf8Bytes:V(e.ownedUtf8Bytes,t.ownedUtf8Bytes,J)}}function X(e,t,n,r,i,a,o){let s=n===`worksheet-json`?`serialization`:`parsing`;return new x(`OOXML resource limit exceeded${t?` for ${t}`:``}: ${r} ${a} > ${i}`,{stage:s,violation:{format:`xlsx`,operation:e,resource:n,metric:r,...t===void 0?{}:{part:t},limit:i,observed:Math.min(a,i+1),configurable:!1,usage:o??De}})}function Z(e,t,n,r){let i=[[`rows`,e.rows,K],[`cells`,e.cells,q],[`owned-utf8-bytes`,e.ownedUtf8Bytes,J]];for(let[e,a,o]of i)if(a>o)throw X(t,n,e===`owned-utf8-bytes`?`worksheet-cell-content`:`worksheet-model`,e,o,a,r)}function je(e,t,n,r){if(e>Y)throw X(t,n,`worksheet-json`,`bytes`,Y,e,r)}var Me=class{coordinator=new Ce;sessions=new Map;operationTail=Promise.resolve();pendingOpens=new Map;resourceFailure;constructor(e,t,n=e=>e(this.requireArchive()),r){this.archive=e,this.acceptWorksheet=t,this.executeArchive=n,this.prepareRows=r}reserveOpen(e){this.pendingOpens.set(e.sessionId,{identity:e,canceled:!1})}abandonOpen(e){this.pendingOpens.delete(e)}get pendingOpenCount(){return this.pendingOpens.size}async open(e,t,n){if(this.resourceFailure)throw this.resourceFailure;let r=this.pendingOpens.get(n.sessionId);if(!r||r.identity.operationId!==n.operationId||r.identity.generation!==n.generation)throw Error(`worksheet pull session open reservation is stale or missing`);let i,a=new Promise(e=>{i=e}),o=this.operationTail.then(()=>this.coordinator.enqueue(async()=>{if(r.canceled)throw Error(`worksheet pull session open was canceled`);this.executeArchive(n=>n.open_sheet_cursor(e,t));let a=[],o={rows:0,cells:0,ownedUtf8Bytes:0},s,c=!1,l=new we({...n,maxByteCredit:67108864,coordinator:this.coordinator,driver:{pull:()=>{let e=this.executeArchive(e=>e.pull_sheet_cursor(128)),t=this.executeArchive(e=>e.sheet_cursor_pull_finished());if(this.acceptWorksheet){let n=Ee(e,t,void 0,this.prepareRows);try{if(n.kind===`rows`){let e=Ae(o,Oe(n.rows));Z(e,`get-worksheet-worker`,void 0,this.readResourceUsage()),a.push(...n.rows),o=e}else s=n.worksheet}catch(e){throw e instanceof x&&(this.resourceFailure??=e),e}}c=t;let n=be(e);return{payload:n,byteLength:n.byteLength,done:t,transfer:[n]}},measureChunk:({payload:e})=>e.byteLength,acknowledge:()=>{if(!c)return;let t,r;try{if(this.acceptWorksheet){if(!s)throw Error(`worksheet terminal payload is missing`);s.rows=s.parseError?[]:a;let n=s.parseError?{rows:0,cells:0,ownedUtf8Bytes:0}:o,i=ke(s,n),c=this.readResourceUsage();Z(i,`get-worksheet-worker`,void 0,c),je(i.jsonBytes,`get-worksheet-worker`,void 0,c);let l=this.acceptWorksheet(e,s,i,c);typeof l==`function`?t=l:l&&({rollback:t,commit:r}=l)}this.executeArchive(e=>e.acknowledge_sheet_cursor_terminal()),r?.()}catch(e){throw t?.(),e instanceof x&&(this.resourceFailure??=e),e}c=!1,this.sessions.delete(n.sessionId),i()},cancel:()=>{try{this.archive()&&this.executeArchive(e=>e.cancel_sheet_cursor())}finally{this.sessions.delete(n.sessionId),i()}},close:()=>{try{this.archive()&&this.executeArchive(e=>e.close_sheet_cursor())}finally{this.sessions.delete(n.sessionId),i()}},resourceUsage:()=>this.readResourceUsage()}});this.sessions.set(n.sessionId,{host:l,identity:n}),this.pendingOpens.delete(n.sessionId)}));this.operationTail=o.then(()=>a,()=>void 0);try{await o}catch(e){throw this.pendingOpens.delete(n.sessionId),i(),e}}async postOpenedSafely(e,t,n){try{t()}catch(t){await this.closeIdentity(e);try{n(t)}catch{}}}dispatch(e,t){let n=this.sessions.get(e.sessionId);if(n)return n.host.dispatch(e,t);let r=this.pendingOpens.get(e.sessionId);if(r&&(e.kind===`cancel`||e.kind===`close`)){let n=r.identity.operationId===e.operationId&&r.identity.generation===e.generation;return n&&(r.canceled=!0),t(n?{protocol:R,kind:`accepted`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,command:e.kind}:{protocol:R,kind:`error`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:{message:`stale lifecycle targets another pending worksheet operation`,errorName:`PullSessionProtocolError`,code:`ooxml-stale-lifecycle`}}),Promise.resolve()}return e.kind===`cancel`||e.kind===`close`?(t({protocol:R,kind:`accepted`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,command:e.kind}),Promise.resolve()):(t({protocol:R,kind:`error`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:L(Error(`worksheet pull session is not open`))}),Promise.resolve())}async dispatchSafely(e,t){try{await this.dispatch(e,t)}catch(n){try{t({protocol:R,kind:`error`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:L(n)})}catch{}}}run(e){let t=this.operationTail.then(()=>this.coordinator.enqueue(async()=>{if(this.resourceFailure)throw this.resourceFailure;return e()})).catch(e=>{throw e instanceof x&&(this.resourceFailure??=e),e});return this.operationTail=t.then(()=>void 0,()=>void 0),t}async reset(){for(let e of this.pendingOpens.values())e.canceled=!0;let e=1;for(let{host:t,identity:n}of[...this.sessions.values()])await t.dispatch({protocol:R,kind:`close`,...n,requestId:e++},()=>void 0);this.sessions.clear(),await this.operationTail,this.pendingOpens.clear(),this.resourceFailure=void 0}requireArchive(){let e=this.archive();if(!e)throw Error(`Workbook not loaded`);return e}async closeIdentity(e){let t=this.sessions.get(e.sessionId);if(t){await t.host.dispatch({protocol:R,kind:`close`,...e,requestId:1},()=>void 0);return}let n=this.pendingOpens.get(e.sessionId);n&&n.identity.operationId===e.operationId&&n.identity.generation===e.generation&&(n.canceled=!0)}readResourceUsage(){try{return k(this.executeArchive(e=>e.sheet_cursor_resource_usage()))}catch(e){if(String(e).includes(`worksheet cursor usage is unavailable`))return;throw e}}};function Ne(e){return!!e&&typeof e==`object`&&e.protocol===`ooxml-pull-v1`}const Q=new ce(y,{freeArchive:e=>e.free(),reinit:ne}),$=new Me(()=>Q.archive,void 0,e=>{let t=Q.archive;if(!t)throw Error(`Workbook not loaded`);return Q.run(()=>e(t))});self.onmessage=async t=>{let n=t.data;if(Ne(n)){await $.dispatchSafely(n,(e,t)=>self.postMessage(e,t));return}if(n.type===`init`){Q.setWasmInput(ie(n.wasmUrl)??n.wasmUrl);return}let r=n.id;n.type===`openSheetSession`&&$.reserveOpen(n);try{if(n.type===`openSheetSession`){await Q.ensureReady(),Q.archive&&Q.run(()=>Q.archive?.assert_healthy()),await $.open(n.sheetIndex,n.sheetName,n),await $.postOpenedSafely(n,()=>self.postMessage({type:`sheetSessionOpened`,id:r,sessionId:n.sessionId,operationId:n.operationId,generation:n.generation}),e=>self.postMessage({type:`error`,id:r,...L(e)}));return}n.type===`parse`&&await $.reset(),await $.run(async()=>{if(await Q.ensureReady(),n.type!==`parse`&&Q.archive){let e=Q.archive;Q.run(()=>e.assert_healthy())}if(n.type===`parse`){let[t,i,a]=xe(n.resourcePolicy),o=new Uint8Array(n.data),s=Q.run(()=>{let n=new e(o,t,i,a);return Q.setArchive(n),n.parse()}).buffer,c={type:`parsed`,id:r,workbookJson:s,usage:Q.run(()=>k(Q.archive.resource_usage()))};self.postMessage(c,[s]);return}let t=Q.archive;if(n.type===`extractImage`){if(!t)throw Error(`No xlsx loaded`);let e=Q.run(()=>t.extract_image(n.path).buffer),i={type:`imageExtracted`,id:r,bytes:e};self.postMessage(i,[e]);return}if(n.type===`resourceUsage`){if(!t)throw Error(`No xlsx loaded`);let e=Q.run(()=>k(t.resource_usage()));self.postMessage({type:`resourceUsage`,id:r,usage:e});return}if(n.type===`toMarkdown`){if(!t)throw Error(`No xlsx loaded`);let e={type:`markdownRendered`,id:r,markdown:Q.run(()=>t.to_markdown())};self.postMessage(e);return}})}catch(e){n.type===`openSheetSession`&&$.abandonOpen(n.sessionId);let t={type:`error`,id:r,...L(e)};try{self.postMessage(t)}catch{}}};", ct = typeof self < "u" && self.Blob && new Blob(["URL.revokeObjectURL(import.meta.url);", st], { type: "text/javascript;charset=utf-8" });
100
+ function lt(e) {
101
101
  let t;
102
102
  try {
103
- if (t = st && (self.URL || self.webkitURL).createObjectURL(st), !t) throw "";
103
+ if (t = ct && (self.URL || self.webkitURL).createObjectURL(ct), !t) throw "";
104
104
  let n = new Worker(t, {
105
105
  type: "module",
106
106
  name: e?.name
@@ -109,7 +109,7 @@ function ct(e) {
109
109
  (self.URL || self.webkitURL).revokeObjectURL(t);
110
110
  }), n;
111
111
  } catch {
112
- return new Worker("data:text/javascript;charset=utf-8," + encodeURIComponent(ot), {
112
+ return new Worker("data:text/javascript;charset=utf-8," + encodeURIComponent(st), {
113
113
  type: "module",
114
114
  name: e?.name
115
115
  });
@@ -117,19 +117,19 @@ function ct(e) {
117
117
  }
118
118
  //#endregion
119
119
  //#region packages/xlsx/src/wasm/xlsx_parser_bg.wasm?url
120
- var lt = new URL("xlsx_parser_bg.wasm", import.meta.url).href;
120
+ var ut = new URL("xlsx_parser_bg.wasm", import.meta.url).href;
121
121
  //#endregion
122
122
  //#region packages/xlsx/src/sheet-visibility.ts
123
- function ut(e, t) {
123
+ function dt(e, t) {
124
124
  return !Number.isInteger(t) || t < 0 || t >= e.length ? "visible" : e[t].visibility ?? "visible";
125
125
  }
126
126
  //#endregion
127
127
  //#region packages/xlsx/src/phonetic.ts
128
- function dt(e) {
128
+ function ft(e) {
129
129
  return Array.from(e);
130
130
  }
131
- function ft(e, t, n, r, i) {
132
- let a = dt(t), o = a.length, s = [];
131
+ function pt(e, t, n, r, i) {
132
+ let a = ft(t), o = a.length, s = [];
133
133
  for (let t of e) {
134
134
  let e = t.sb, c = t.eb;
135
135
  if (!(e < c) || e >= o) continue;
@@ -145,37 +145,37 @@ function ft(e, t, n, r, i) {
145
145
  }
146
146
  //#endregion
147
147
  //#region packages/xlsx/src/formula.ts
148
- function X(e) {
148
+ function Y(e) {
149
149
  return Array.isArray(e) ? e : [e];
150
150
  }
151
- function pt(e) {
151
+ function mt(e) {
152
152
  return Array.isArray(e) ? e[0] ?? 0 : e;
153
153
  }
154
- var mt = 8;
155
- function ht(e, t) {
154
+ var ht = 8;
155
+ function gt(e, t) {
156
156
  try {
157
- return gt(St(e, t));
157
+ return _t(Ct(e, t));
158
158
  } catch {
159
159
  return !1;
160
160
  }
161
161
  }
162
- function gt(e) {
163
- let t = pt(e);
162
+ function _t(e) {
163
+ let t = mt(e);
164
164
  return typeof t == "boolean" ? t : typeof t == "number" ? t !== 0 : typeof t == "string" ? t.length > 0 && t.toUpperCase() !== "FALSE" : !1;
165
165
  }
166
- function Z(e) {
167
- let t = pt(e);
166
+ function X(e) {
167
+ let t = mt(e);
168
168
  if (typeof t == "number") return t;
169
169
  if (typeof t == "boolean") return +!!t;
170
170
  if (t == null) return 0;
171
171
  let n = parseFloat(String(t));
172
172
  return isNaN(n) ? 0 : n;
173
173
  }
174
- function Q(e) {
175
- let t = pt(e);
174
+ function Z(e) {
175
+ let t = mt(e);
176
176
  return t == null ? "" : typeof t == "boolean" ? t ? "TRUE" : "FALSE" : String(t);
177
177
  }
178
- var _t = new Set([
178
+ var vt = new Set([
179
179
  "<",
180
180
  ">",
181
181
  "=",
@@ -187,7 +187,7 @@ var _t = new Set([
187
187
  "^",
188
188
  "%"
189
189
  ]);
190
- function vt(e) {
190
+ function yt(e) {
191
191
  let t = [], n = 0, r = e;
192
192
  for (; n < r.length;) {
193
193
  let e = r[n];
@@ -248,7 +248,7 @@ function vt(e) {
248
248
  }), n = e;
249
249
  continue;
250
250
  }
251
- if (_t.has(e)) {
251
+ if (vt.has(e)) {
252
252
  (e === "<" || e === ">") && (r[n + 1] === "=" || e === "<" && r[n + 1] === ">") ? (t.push({
253
253
  kind: "op",
254
254
  text: r.slice(n, n + 2)
@@ -258,12 +258,12 @@ function vt(e) {
258
258
  }), n++);
259
259
  continue;
260
260
  }
261
- if (e === "$" || yt(e)) {
261
+ if (e === "$" || bt(e)) {
262
262
  let e = n;
263
- for (; e < r.length && (r[e] === "$" || bt(r[e]));) e++;
263
+ for (; e < r.length && (r[e] === "$" || xt(r[e]));) e++;
264
264
  let i = r.slice(n, e);
265
265
  n = e;
266
- let a = xt(i);
266
+ let a = St(i);
267
267
  if (a) t.push({
268
268
  kind: "ref",
269
269
  text: i,
@@ -285,13 +285,13 @@ function vt(e) {
285
285
  }
286
286
  return t;
287
287
  }
288
- function yt(e) {
289
- return e >= "A" && e <= "Z" || e >= "a" && e <= "z" || e === "_";
290
- }
291
288
  function bt(e) {
292
- return yt(e) || e >= "0" && e <= "9" || e === ".";
289
+ return e >= "A" && e <= "Z" || e >= "a" && e <= "z" || e === "_";
293
290
  }
294
291
  function xt(e) {
292
+ return bt(e) || e >= "0" && e <= "9" || e === ".";
293
+ }
294
+ function St(e) {
295
295
  let t = 0, n = !1, r = !1;
296
296
  e[t] === "$" && (n = !0, t++);
297
297
  let i = t;
@@ -311,43 +311,43 @@ function xt(e) {
311
311
  row: s
312
312
  };
313
313
  }
314
- function St(e, t) {
315
- return Tt({
316
- toks: vt(e),
314
+ function Ct(e, t) {
315
+ return Et({
316
+ toks: yt(e),
317
317
  pos: 0
318
318
  }, t);
319
319
  }
320
- function Ct(e) {
320
+ function wt(e) {
321
321
  return e.toks[e.pos];
322
322
  }
323
- function wt(e) {
323
+ function Tt(e) {
324
324
  return e.toks[e.pos++];
325
325
  }
326
- function Tt(e, t) {
327
- return Et(e, t);
328
- }
329
326
  function Et(e, t) {
330
- let n = Dt(e, t), r = Ct(e);
327
+ return Dt(e, t);
328
+ }
329
+ function Dt(e, t) {
330
+ let n = Ot(e, t), r = wt(e);
331
331
  if (r && r.kind === "op" && (r.text === "<" || r.text === ">" || r.text === "<=" || r.text === ">=" || r.text === "=" || r.text === "<>")) {
332
- wt(e);
333
- let i = Dt(e, t);
334
- return Ot(r.text, n, i);
332
+ Tt(e);
333
+ let i = Ot(e, t);
334
+ return kt(r.text, n, i);
335
335
  }
336
336
  return n;
337
337
  }
338
- function Dt(e, t) {
339
- let n = kt(e, t);
338
+ function Ot(e, t) {
339
+ let n = At(e, t);
340
340
  for (;;) {
341
- let r = Ct(e);
341
+ let r = wt(e);
342
342
  if (!r || r.kind !== "op" || r.text !== "&") break;
343
- wt(e);
344
- let i = kt(e, t);
345
- n = Q(n) + Q(i);
343
+ Tt(e);
344
+ let i = At(e, t);
345
+ n = Z(n) + Z(i);
346
346
  }
347
347
  return n;
348
348
  }
349
- function Ot(e, t, n) {
350
- let r = typeof t == "string" && isNaN(parseFloat(t)) ? null : Z(t), i = typeof n == "string" && isNaN(parseFloat(n)) ? null : Z(n);
349
+ function kt(e, t, n) {
350
+ let r = typeof t == "string" && isNaN(parseFloat(t)) ? null : X(t), i = typeof n == "string" && isNaN(parseFloat(n)) ? null : X(n);
351
351
  if (r !== null && i !== null) switch (e) {
352
352
  case "<": return r < i;
353
353
  case ">": return r > i;
@@ -367,67 +367,67 @@ function Ot(e, t, n) {
367
367
  }
368
368
  return !1;
369
369
  }
370
- function kt(e, t) {
371
- let n = At(e, t);
370
+ function At(e, t) {
371
+ let n = jt(e, t);
372
372
  for (;;) {
373
- let r = Ct(e);
373
+ let r = wt(e);
374
374
  if (!r || r.kind !== "op" || r.text !== "+" && r.text !== "-") break;
375
- wt(e);
376
- let i = At(e, t);
377
- n = r.text === "+" ? Z(n) + Z(i) : Z(n) - Z(i);
375
+ Tt(e);
376
+ let i = jt(e, t);
377
+ n = r.text === "+" ? X(n) + X(i) : X(n) - X(i);
378
378
  }
379
379
  return n;
380
380
  }
381
- function At(e, t) {
382
- let n = jt(e, t);
381
+ function jt(e, t) {
382
+ let n = Mt(e, t);
383
383
  for (;;) {
384
- let r = Ct(e);
384
+ let r = wt(e);
385
385
  if (!r || r.kind !== "op" || r.text !== "*" && r.text !== "/") break;
386
- wt(e);
387
- let i = jt(e, t);
388
- if (r.text === "*") n = Z(n) * Z(i);
386
+ Tt(e);
387
+ let i = Mt(e, t);
388
+ if (r.text === "*") n = X(n) * X(i);
389
389
  else {
390
- let e = Z(i);
391
- n = e === 0 ? 0 : Z(n) / e;
390
+ let e = X(i);
391
+ n = e === 0 ? 0 : X(n) / e;
392
392
  }
393
393
  }
394
394
  return n;
395
395
  }
396
- function jt(e, t) {
397
- let n = Ct(e);
398
- return n && n.kind === "op" && n.text === "-" ? (wt(e), -Z(jt(e, t))) : n && n.kind === "op" && n.text === "+" ? (wt(e), Z(jt(e, t))) : Mt(e, t);
399
- }
400
396
  function Mt(e, t) {
401
397
  let n = wt(e);
398
+ return n && n.kind === "op" && n.text === "-" ? (Tt(e), -X(Mt(e, t))) : n && n.kind === "op" && n.text === "+" ? (Tt(e), X(Mt(e, t))) : Nt(e, t);
399
+ }
400
+ function Nt(e, t) {
401
+ let n = Tt(e);
402
402
  if (!n) return 0;
403
403
  if (n.kind === "num") return parseFloat(n.text);
404
404
  if (n.kind === "str") return n.text;
405
405
  if (n.kind === "bool") return n.text === "TRUE";
406
406
  if (n.kind === "lparen") {
407
- let n = Tt(e, t), r = wt(e);
407
+ let n = Et(e, t), r = Tt(e);
408
408
  if (!r || r.kind !== "rparen") throw Error("missing )");
409
409
  return n;
410
410
  }
411
411
  if (n.kind === "ref") {
412
- if (Ct(e)?.kind === "colon") {
413
- wt(e);
414
- let r = wt(e);
412
+ if (wt(e)?.kind === "colon") {
413
+ Tt(e);
414
+ let r = Tt(e);
415
415
  if (r?.kind !== "ref" || !r.ref) throw Error("range: expected ref after :");
416
- return Ft(n.ref, r.ref, t);
416
+ return It(n.ref, r.ref, t);
417
417
  }
418
- return Pt(n.ref, t);
418
+ return Ft(n.ref, t);
419
419
  }
420
420
  if (n.kind === "name") {
421
- if (Ct(e)?.kind === "lparen") {
422
- wt(e);
421
+ if (wt(e)?.kind === "lparen") {
422
+ Tt(e);
423
423
  let r = [];
424
- if (Ct(e)?.kind !== "rparen") for (r.push(Tt(e, t)); Ct(e)?.kind === "comma";) wt(e), r.push(Tt(e, t));
425
- let i = wt(e);
424
+ if (wt(e)?.kind !== "rparen") for (r.push(Et(e, t)); wt(e)?.kind === "comma";) Tt(e), r.push(Et(e, t));
425
+ let i = Tt(e);
426
426
  if (!i || i.kind !== "rparen") throw Error("missing )");
427
- return Lt(n.text, r, t);
427
+ return Rt(n.text, r, t);
428
428
  }
429
429
  let r = t.definedNames.get(n.text);
430
- return r && t.depth < mt ? St(Nt(r.formula), {
430
+ return r && t.depth < ht ? Ct(Pt(r.formula), {
431
431
  ...t,
432
432
  anchorRow: 1,
433
433
  anchorCol: 1,
@@ -436,20 +436,20 @@ function Mt(e, t) {
436
436
  }
437
437
  return 0;
438
438
  }
439
- function Nt(e) {
439
+ function Pt(e) {
440
440
  let t = e.match(/^(?:'[^']*'|[A-Za-z_][A-Za-z0-9_.]*)!(.*)$/);
441
441
  return t ? t[1] : e;
442
442
  }
443
- function Pt(e, t) {
443
+ function Ft(e, t) {
444
444
  let n = e.colAbs ? e.col : e.col + (t.col - t.anchorCol), r = e.rowAbs ? e.row : e.row + (t.row - t.anchorRow);
445
- return It(t.cellIndex.get(`${r}:${n}`));
445
+ return Lt(t.cellIndex.get(`${r}:${n}`));
446
446
  }
447
- function Ft(e, t, n) {
447
+ function It(e, t, n) {
448
448
  let r = e.colAbs ? e.col : e.col + (n.col - n.anchorCol), i = e.rowAbs ? e.row : e.row + (n.row - n.anchorRow), a = t.colAbs ? t.col : t.col + (n.col - n.anchorCol), o = t.rowAbs ? t.row : t.row + (n.row - n.anchorRow), s = Math.min(r, a), c = Math.max(r, a), l = Math.min(i, o), u = Math.max(i, o), d = [], f = 4096;
449
- for (let e = l; e <= u && d.length < f; e++) for (let t = s; t <= c && d.length < f; t++) d.push(It(n.cellIndex.get(`${e}:${t}`)));
449
+ for (let e = l; e <= u && d.length < f; e++) for (let t = s; t <= c && d.length < f; t++) d.push(Lt(n.cellIndex.get(`${e}:${t}`)));
450
450
  return d;
451
451
  }
452
- function It(e) {
452
+ function Lt(e) {
453
453
  if (!e) return null;
454
454
  switch (e.value.type) {
455
455
  case "number": return e.value.number;
@@ -459,162 +459,162 @@ function It(e) {
459
459
  default: return null;
460
460
  }
461
461
  }
462
- function Lt(e, t, n) {
462
+ function Rt(e, t, n) {
463
463
  switch (e.toUpperCase()) {
464
- case "AND": return t.flatMap(X).every((e) => gt(e));
465
- case "OR": return t.flatMap(X).some((e) => gt(e));
466
- case "NOT": return !gt(t[0]);
467
- case "IF": return gt(t[0]) ? t[1] ?? !0 : t[2] ?? !1;
464
+ case "AND": return t.flatMap(Y).every((e) => _t(e));
465
+ case "OR": return t.flatMap(Y).some((e) => _t(e));
466
+ case "NOT": return !_t(t[0]);
467
+ case "IF": return _t(t[0]) ? t[1] ?? !0 : t[2] ?? !1;
468
468
  case "IFERROR": return t[0] == null ? t[1] ?? 0 : t[0];
469
469
  case "IFS":
470
- for (let e = 0; e + 1 < t.length; e += 2) if (gt(t[e])) return t[e + 1];
470
+ for (let e = 0; e + 1 < t.length; e += 2) if (_t(t[e])) return t[e + 1];
471
471
  return null;
472
472
  case "TRUE": return !0;
473
473
  case "FALSE": return !1;
474
474
  case "ISBLANK": {
475
- let e = pt(t[0]);
475
+ let e = mt(t[0]);
476
476
  return e == null || e === "";
477
477
  }
478
- case "ISNUMBER": return typeof pt(t[0]) == "number";
479
- case "ISTEXT": return typeof pt(t[0]) == "string";
480
- case "ISNONTEXT": return typeof pt(t[0]) != "string";
478
+ case "ISNUMBER": return typeof mt(t[0]) == "number";
479
+ case "ISTEXT": return typeof mt(t[0]) == "string";
480
+ case "ISNONTEXT": return typeof mt(t[0]) != "string";
481
481
  case "ISERROR":
482
482
  case "ISERR":
483
- case "ISNA": return pt(t[0]) == null;
484
- case "ISLOGICAL": return typeof pt(t[0]) == "boolean";
483
+ case "ISNA": return mt(t[0]) == null;
484
+ case "ISLOGICAL": return typeof mt(t[0]) == "boolean";
485
485
  case "ROUNDDOWN": {
486
- let e = Z(t[0]), n = 10 ** Z(t[1]);
486
+ let e = X(t[0]), n = 10 ** X(t[1]);
487
487
  return (e >= 0 ? Math.floor(e * n) : Math.ceil(e * n)) / n;
488
488
  }
489
489
  case "ROUNDUP": {
490
- let e = Z(t[0]), n = 10 ** Z(t[1]);
490
+ let e = X(t[0]), n = 10 ** X(t[1]);
491
491
  return (e >= 0 ? Math.ceil(e * n) : Math.floor(e * n)) / n;
492
492
  }
493
493
  case "ROUND": {
494
- let e = Z(t[0]), n = 10 ** Z(t[1]);
494
+ let e = X(t[0]), n = 10 ** X(t[1]);
495
495
  return Math.round(e * n) / n;
496
496
  }
497
- case "INT": return Math.floor(Z(t[0]));
497
+ case "INT": return Math.floor(X(t[0]));
498
498
  case "TRUNC": {
499
- let e = Z(t[0]), n = 10 ** Z(t[1] ?? 0);
499
+ let e = X(t[0]), n = 10 ** X(t[1] ?? 0);
500
500
  return (e >= 0 ? Math.floor(e * n) : Math.ceil(e * n)) / n;
501
501
  }
502
502
  case "CEILING": {
503
- let e = Z(t[0]), n = Z(t[1] ?? 1);
503
+ let e = X(t[0]), n = X(t[1] ?? 1);
504
504
  return n === 0 ? 0 : Math.ceil(e / n) * n;
505
505
  }
506
506
  case "FLOOR": {
507
- let e = Z(t[0]), n = Z(t[1] ?? 1);
507
+ let e = X(t[0]), n = X(t[1] ?? 1);
508
508
  return n === 0 ? 0 : Math.floor(e / n) * n;
509
509
  }
510
510
  case "MOD": {
511
- let e = Z(t[0]), n = Z(t[1]);
511
+ let e = X(t[0]), n = X(t[1]);
512
512
  return n === 0 ? null : e - Math.floor(e / n) * n;
513
513
  }
514
- case "POWER": return Z(t[0]) ** +Z(t[1]);
514
+ case "POWER": return X(t[0]) ** +X(t[1]);
515
515
  case "SQRT": {
516
- let e = Z(t[0]);
516
+ let e = X(t[0]);
517
517
  return e < 0 ? null : Math.sqrt(e);
518
518
  }
519
- case "ABS": return Math.abs(Z(t[0]));
519
+ case "ABS": return Math.abs(X(t[0]));
520
520
  case "SIGN": {
521
- let e = Z(t[0]);
521
+ let e = X(t[0]);
522
522
  return e > 0 ? 1 : e < 0 ? -1 : 0;
523
523
  }
524
- case "EXP": return Math.exp(Z(t[0]));
524
+ case "EXP": return Math.exp(X(t[0]));
525
525
  case "LN": {
526
- let e = Z(t[0]);
526
+ let e = X(t[0]);
527
527
  return e <= 0 ? null : Math.log(e);
528
528
  }
529
529
  case "LOG10": {
530
- let e = Z(t[0]);
530
+ let e = X(t[0]);
531
531
  return e <= 0 ? null : Math.log10(e);
532
532
  }
533
533
  case "MIN": {
534
- let e = t.flatMap(X).filter((e) => typeof e == "number");
534
+ let e = t.flatMap(Y).filter((e) => typeof e == "number");
535
535
  return e.length ? Math.min(...e) : 0;
536
536
  }
537
537
  case "MAX": {
538
- let e = t.flatMap(X).filter((e) => typeof e == "number");
538
+ let e = t.flatMap(Y).filter((e) => typeof e == "number");
539
539
  return e.length ? Math.max(...e) : 0;
540
540
  }
541
- case "SUM": return t.flatMap(X).reduce((e, t) => e + (typeof t == "number" ? t : 0), 0);
541
+ case "SUM": return t.flatMap(Y).reduce((e, t) => e + (typeof t == "number" ? t : 0), 0);
542
542
  case "AVERAGE": {
543
- let e = t.flatMap(X).filter((e) => typeof e == "number");
543
+ let e = t.flatMap(Y).filter((e) => typeof e == "number");
544
544
  return e.length ? e.reduce((e, t) => e + t, 0) / e.length : null;
545
545
  }
546
- case "COUNT": return t.flatMap(X).filter((e) => typeof e == "number").length;
547
- case "COUNTA": return t.flatMap(X).filter((e) => e != null && e !== "").length;
548
- case "COUNTBLANK": return t.flatMap(X).filter((e) => e == null || e === "").length;
549
- case "COUNTIF": return Rt(X(t[0]), t[1]);
550
- case "SUMIF": return zt(X(t[0]), t[1], t[2] === void 0 ? null : X(t[2]));
546
+ case "COUNT": return t.flatMap(Y).filter((e) => typeof e == "number").length;
547
+ case "COUNTA": return t.flatMap(Y).filter((e) => e != null && e !== "").length;
548
+ case "COUNTBLANK": return t.flatMap(Y).filter((e) => e == null || e === "").length;
549
+ case "COUNTIF": return zt(Y(t[0]), t[1]);
550
+ case "SUMIF": return Bt(Y(t[0]), t[1], t[2] === void 0 ? null : Y(t[2]));
551
551
  case "AVERAGEIF": {
552
- let e = X(t[0]), n = zt(e, t[1], t[2] === void 0 ? null : X(t[2])), r = Rt(e, t[1]);
553
- return r === 0 ? null : Z(n) / r;
552
+ let e = Y(t[0]), n = Bt(e, t[1], t[2] === void 0 ? null : Y(t[2])), r = zt(e, t[1]);
553
+ return r === 0 ? null : X(n) / r;
554
554
  }
555
- case "LEN": return Q(t[0]).length;
556
- case "LEFT": return Q(t[0]).slice(0, Math.max(0, Z(t[1] ?? 1)));
555
+ case "LEN": return Z(t[0]).length;
556
+ case "LEFT": return Z(t[0]).slice(0, Math.max(0, X(t[1] ?? 1)));
557
557
  case "RIGHT": {
558
- let e = Q(t[0]), n = Math.max(0, Z(t[1] ?? 1));
558
+ let e = Z(t[0]), n = Math.max(0, X(t[1] ?? 1));
559
559
  return n >= e.length ? e : e.slice(e.length - n);
560
560
  }
561
561
  case "MID": {
562
- let e = Q(t[0]), n = Math.max(1, Z(t[1])) - 1, r = Math.max(0, Z(t[2]));
562
+ let e = Z(t[0]), n = Math.max(1, X(t[1])) - 1, r = Math.max(0, X(t[2]));
563
563
  return e.slice(n, n + r);
564
564
  }
565
- case "UPPER": return Q(t[0]).toUpperCase();
566
- case "LOWER": return Q(t[0]).toLowerCase();
567
- case "TRIM": return Q(t[0]).replace(/\s+/g, " ").trim();
568
- case "EXACT": return Q(t[0]) === Q(t[1]);
565
+ case "UPPER": return Z(t[0]).toUpperCase();
566
+ case "LOWER": return Z(t[0]).toLowerCase();
567
+ case "TRIM": return Z(t[0]).replace(/\s+/g, " ").trim();
568
+ case "EXACT": return Z(t[0]) === Z(t[1]);
569
569
  case "FIND": {
570
- let e = Q(t[0]), n = Q(t[1]), r = Math.max(1, Z(t[2] ?? 1)) - 1, i = n.indexOf(e, r);
570
+ let e = Z(t[0]), n = Z(t[1]), r = Math.max(1, X(t[2] ?? 1)) - 1, i = n.indexOf(e, r);
571
571
  return i < 0 ? null : i + 1;
572
572
  }
573
573
  case "SEARCH": {
574
- let e = Q(t[0]).toLowerCase(), n = Q(t[1]).toLowerCase(), r = Math.max(1, Z(t[2] ?? 1)) - 1, i = n.indexOf(e, r);
574
+ let e = Z(t[0]).toLowerCase(), n = Z(t[1]).toLowerCase(), r = Math.max(1, X(t[2] ?? 1)) - 1, i = n.indexOf(e, r);
575
575
  return i < 0 ? null : i + 1;
576
576
  }
577
577
  case "CONCATENATE":
578
- case "CONCAT": return t.flatMap(X).map((e) => e == null ? "" : typeof e == "boolean" ? e ? "TRUE" : "FALSE" : String(e)).join("");
578
+ case "CONCAT": return t.flatMap(Y).map((e) => e == null ? "" : typeof e == "boolean" ? e ? "TRUE" : "FALSE" : String(e)).join("");
579
579
  case "T": {
580
- let e = pt(t[0]);
580
+ let e = mt(t[0]);
581
581
  return typeof e == "string" ? e : "";
582
582
  }
583
583
  case "N": {
584
- let e = pt(t[0]);
584
+ let e = mt(t[0]);
585
585
  return typeof e == "number" ? e : typeof e == "boolean" ? +!!e : 0;
586
586
  }
587
- case "VALUE": return Z(t[0]);
587
+ case "VALUE": return X(t[0]);
588
588
  case "ROW": return n.row;
589
589
  case "COLUMN": return n.col;
590
- case "TODAY": return Vt();
591
- case "NOW": return Ht();
592
- case "DATE": return Ut(Z(t[0]), Z(t[1]), Z(t[2]));
593
- case "YEAR": return Gt(Z(t[0])).y;
594
- case "MONTH": return Gt(Z(t[0])).m;
595
- case "DAY": return Gt(Z(t[0])).d;
590
+ case "TODAY": return Ht();
591
+ case "NOW": return Ut();
592
+ case "DATE": return Wt(X(t[0]), X(t[1]), X(t[2]));
593
+ case "YEAR": return Kt(X(t[0])).y;
594
+ case "MONTH": return Kt(X(t[0])).m;
595
+ case "DAY": return Kt(X(t[0])).d;
596
596
  case "WEEKDAY": {
597
- let e = Wt(Z(t[0])).getUTCDay(), n = Z(t[1] ?? 1);
597
+ let e = Gt(X(t[0])).getUTCDay(), n = X(t[1] ?? 1);
598
598
  return n === 2 ? e === 0 ? 7 : e : n === 3 ? e === 0 ? 6 : e - 1 : e + 1;
599
599
  }
600
600
  default: return 0;
601
601
  }
602
602
  }
603
- function Rt(e, t) {
604
- let n = Bt(t), r = 0;
603
+ function zt(e, t) {
604
+ let n = Vt(t), r = 0;
605
605
  for (let t of e) n(t) && r++;
606
606
  return r;
607
607
  }
608
- function zt(e, t, n) {
609
- let r = Bt(t), i = n ?? e, a = 0;
608
+ function Bt(e, t, n) {
609
+ let r = Vt(t), i = n ?? e, a = 0;
610
610
  for (let t = 0; t < e.length; t++) if (r(e[t])) {
611
611
  let e = i[t];
612
612
  typeof e == "number" && (a += e);
613
613
  }
614
614
  return a;
615
615
  }
616
- function Bt(e) {
617
- let t = pt(e);
616
+ function Vt(e) {
617
+ let t = mt(e);
618
618
  if (typeof t != "string") {
619
619
  let e = typeof t == "number" ? t : null;
620
620
  return (n) => e !== null && typeof n == "number" ? n === e : n === t;
@@ -640,21 +640,21 @@ function Bt(e) {
640
640
  }
641
641
  };
642
642
  }
643
- function Vt() {
643
+ function Ht() {
644
644
  let e = /* @__PURE__ */ new Date();
645
645
  return de(new Date(Date.UTC(e.getFullYear(), e.getMonth(), e.getDate())), !1);
646
646
  }
647
- function Ht() {
647
+ function Ut() {
648
648
  return de(new Date(Date.now()), !1);
649
649
  }
650
- function Ut(e, t, n) {
650
+ function Wt(e, t, n) {
651
651
  return Math.floor(de(new Date(Date.UTC(e, t - 1, n)), !1));
652
652
  }
653
- function Wt(e) {
653
+ function Gt(e) {
654
654
  return ae(Math.floor(e), !1);
655
655
  }
656
- function Gt(e) {
657
- let t = Wt(e);
656
+ function Kt(e) {
657
+ let t = Gt(e);
658
658
  return {
659
659
  y: t.getUTCFullYear(),
660
660
  m: t.getUTCMonth() + 1,
@@ -663,9 +663,9 @@ function Gt(e) {
663
663
  }
664
664
  //#endregion
665
665
  //#region packages/xlsx/src/number-format.ts
666
- var Kt = /* @__PURE__ */ new Map();
667
- function qt(e) {
668
- let t = e ?? "", n = Kt.get(t);
666
+ var qt = /* @__PURE__ */ new Map();
667
+ function Jt(e) {
668
+ let t = e ?? "", n = qt.get(t);
669
669
  if (n) return n;
670
670
  let r = new Intl.DateTimeFormat(e, {
671
671
  year: "numeric",
@@ -673,9 +673,9 @@ function qt(e) {
673
673
  day: "numeric",
674
674
  timeZone: "UTC"
675
675
  });
676
- return Kt.set(t, r), r;
676
+ return qt.set(t, r), r;
677
677
  }
678
- function Jt(e) {
678
+ function Yt(e) {
679
679
  switch (e.type) {
680
680
  case "empty": return "";
681
681
  case "text": return e.text;
@@ -685,20 +685,20 @@ function Jt(e) {
685
685
  case "shared": return "";
686
686
  }
687
687
  }
688
- function Yt(e, t, n, r = !1) {
689
- return Xt(e, t, n, r).text;
690
- }
691
688
  function Xt(e, t, n, r = !1) {
689
+ return Zt(e, t, n, r).text;
690
+ }
691
+ function Zt(e, t, n, r = !1) {
692
692
  let i = t.cellXfs[e.styleIndex ?? 0]?.numFmtId ?? 0, a = t.numFmts?.find((e) => e.numFmtId === i)?.formatCode ?? null, o = n?.numFmtId ?? i, s = n?.formatCode ?? a;
693
693
  if (e.value.type !== "number") {
694
- let t = Jt(e.value);
695
- return { text: s ? Zt(t, s) : t };
694
+ let t = Yt(e.value);
695
+ return { text: s ? Qt(t, s) : t };
696
696
  }
697
- let c = Qt(e.formula);
698
- return hn(c ?? e.value.number, o, s, c === null ? r : !1);
697
+ let c = $t(e.formula);
698
+ return gn(c ?? e.value.number, o, s, c === null ? r : !1);
699
699
  }
700
- function Zt(e, t) {
701
- let n = vn(t), r;
700
+ function Qt(e, t) {
701
+ let n = yn(t), r;
702
702
  if (n.length >= 4) r = n[3];
703
703
  else {
704
704
  let t = n[n.length - 1];
@@ -720,12 +720,12 @@ function Zt(e, t) {
720
720
  }
721
721
  return i;
722
722
  }
723
- function Qt(e) {
723
+ function $t(e) {
724
724
  if (!e) return null;
725
725
  let t = e.trim().replace(/^=/, "").toUpperCase().replace(/\s+/g, "");
726
- return t === "TODAY()" ? Vt() : t === "NOW()" ? Ht() : null;
726
+ return t === "TODAY()" ? Ht() : t === "NOW()" ? Ut() : null;
727
727
  }
728
- var $t = {
728
+ var en = {
729
729
  15: "d-mmm-yy",
730
730
  16: "d-mmm",
731
731
  17: "mmm-yy",
@@ -748,7 +748,7 @@ var $t = {
748
748
  56: "m\"月\"d\"日\"",
749
749
  57: "[$-411]ge.m.d",
750
750
  58: "[$-411]ggge\"年\"m\"月\"d\"日\""
751
- }, en = [
751
+ }, tn = [
752
752
  "January",
753
753
  "February",
754
754
  "March",
@@ -761,7 +761,7 @@ var $t = {
761
761
  "October",
762
762
  "November",
763
763
  "December"
764
- ], tn = [
764
+ ], nn = [
765
765
  "Sunday",
766
766
  "Monday",
767
767
  "Tuesday",
@@ -769,7 +769,7 @@ var $t = {
769
769
  "Thursday",
770
770
  "Friday",
771
771
  "Saturday"
772
- ], nn = [
772
+ ], rn = [
773
773
  "日",
774
774
  "月",
775
775
  "火",
@@ -777,7 +777,7 @@ var $t = {
777
777
  "木",
778
778
  "金",
779
779
  "土"
780
- ], rn = [
780
+ ], an = [
781
781
  "日曜日",
782
782
  "月曜日",
783
783
  "火曜日",
@@ -785,7 +785,7 @@ var $t = {
785
785
  "木曜日",
786
786
  "金曜日",
787
787
  "土曜日"
788
- ], an = [
788
+ ], on = [
789
789
  {
790
790
  start: new Date(Date.UTC(2019, 4, 1)),
791
791
  abbr: "R",
@@ -817,14 +817,14 @@ var $t = {
817
817
  long: "明治"
818
818
  }
819
819
  ];
820
- function on(e) {
821
- for (let t of an) if (e.getTime() >= t.start.getTime()) return {
820
+ function sn(e) {
821
+ for (let t of on) if (e.getTime() >= t.start.getTime()) return {
822
822
  abbr: t.abbr,
823
823
  short: t.short,
824
824
  long: t.long,
825
825
  year: e.getUTCFullYear() - t.start.getUTCFullYear() + 1
826
826
  };
827
- let t = an[an.length - 1];
827
+ let t = on[on.length - 1];
828
828
  return {
829
829
  abbr: t.abbr,
830
830
  short: t.short,
@@ -832,8 +832,8 @@ function on(e) {
832
832
  year: e.getUTCFullYear()
833
833
  };
834
834
  }
835
- function sn(e, t, n = !1) {
836
- let r = ae(e, n), i = r.getUTCFullYear(), a = r.getUTCMonth() + 1, o = r.getUTCDate(), s = r.getUTCDay(), c = r.getUTCHours(), l = r.getUTCMinutes(), u = r.getUTCSeconds(), d = t.split(";")[0], f = /am\/pm|a\/p/i.test(d), p = null, m = () => p ??= on(r), h = "", g = 0, _ = !1;
835
+ function cn(e, t, n = !1) {
836
+ let r = ae(e, n), i = r.getUTCFullYear(), a = r.getUTCMonth() + 1, o = r.getUTCDate(), s = r.getUTCDay(), c = r.getUTCHours(), l = r.getUTCMinutes(), u = r.getUTCSeconds(), d = t.split(";")[0], f = /am\/pm|a\/p/i.test(d), p = null, m = () => p ??= sn(r), h = "", g = 0, _ = !1;
837
837
  for (; g < d.length;) {
838
838
  let t = d[g];
839
839
  if (t === "\"") {
@@ -861,11 +861,11 @@ function sn(e, t, n = !1) {
861
861
  let e = 0;
862
862
  for (; g < d.length && d[g].toLowerCase() === "m";) e++, g++;
863
863
  let t = d.slice(g).replace(/\[[^\]]*\]/g, "");
864
- _ || /^:s/i.test(t) ? h += e >= 2 ? String(l).padStart(2, "0") : String(l) : e === 1 ? h += String(a) : e === 2 ? h += String(a).padStart(2, "0") : e === 3 ? h += en[a - 1].slice(0, 3) : e === 4 ? h += en[a - 1] : h += en[a - 1][0], _ = !1;
864
+ _ || /^:s/i.test(t) ? h += e >= 2 ? String(l).padStart(2, "0") : String(l) : e === 1 ? h += String(a) : e === 2 ? h += String(a).padStart(2, "0") : e === 3 ? h += tn[a - 1].slice(0, 3) : e === 4 ? h += tn[a - 1] : h += tn[a - 1][0], _ = !1;
865
865
  } else if (t === "d" || t === "D") {
866
866
  let e = 0;
867
867
  for (; g < d.length && d[g].toLowerCase() === "d";) e++, g++;
868
- e === 1 ? h += String(o) : e === 2 ? h += String(o).padStart(2, "0") : e === 3 ? h += tn[s].slice(0, 3) : h += tn[s], _ = !1;
868
+ e === 1 ? h += String(o) : e === 2 ? h += String(o).padStart(2, "0") : e === 3 ? h += nn[s].slice(0, 3) : h += nn[s], _ = !1;
869
869
  } else if (t === "h" || t === "H") {
870
870
  let e = 0;
871
871
  for (; g < d.length && d[g].toLowerCase() === "h";) e++, g++;
@@ -892,61 +892,61 @@ function sn(e, t, n = !1) {
892
892
  h += e >= 2 ? String(t).padStart(2, "0") : String(t), _ = !1;
893
893
  } else if (t === "A" || t === "a") {
894
894
  let e = d.slice(g).toUpperCase();
895
- e.startsWith("AAAA") ? (h += rn[s], g += 4) : e.startsWith("AAA") ? (h += nn[s], g += 3) : e.startsWith("AM/PM") ? (h += c < 12 ? "AM" : "PM", g += 5) : e.startsWith("A/P") ? (h += c < 12 ? "A" : "P", g += 3) : (h += t, g++), _ = !1;
895
+ e.startsWith("AAAA") ? (h += an[s], g += 4) : e.startsWith("AAA") ? (h += rn[s], g += 3) : e.startsWith("AM/PM") ? (h += c < 12 ? "AM" : "PM", g += 5) : e.startsWith("A/P") ? (h += c < 12 ? "A" : "P", g += 3) : (h += t, g++), _ = !1;
896
896
  } else h += t, g++, t !== ":" && t !== "/" && t !== "-" && t !== "." && t !== " " && (_ = !1);
897
897
  }
898
898
  return h;
899
899
  }
900
- function cn(e) {
900
+ function ln(e) {
901
901
  if (/\[[hms]+\]/i.test(e)) return !0;
902
902
  let t = e.replace(/"[^"]*"/g, "").replace(/\[[^\]]*\]/g, "");
903
903
  return /[yd]/i.test(t) || /a{3,}/i.test(t);
904
904
  }
905
- var ln = 11, un = 6;
906
- function dn(e) {
907
- return e.includes(".") ? e.replace(/0+$/, "").replace(/\.$/, "") : e;
908
- }
905
+ var un = 11, dn = 6;
909
906
  function fn(e) {
910
- return `${e >= 0 ? "+" : "-"}${Math.abs(e).toString().padStart(2, "0")}`;
907
+ return e.includes(".") ? e.replace(/0+$/, "").replace(/\.$/, "") : e;
911
908
  }
912
909
  function pn(e) {
913
- let [t, n] = e.toExponential(un - 1).split("e");
914
- return `${dn(t)}E${fn(Number(n))}`;
910
+ return `${e >= 0 ? "+" : "-"}${Math.abs(e).toString().padStart(2, "0")}`;
915
911
  }
916
912
  function mn(e) {
913
+ let [t, n] = e.toExponential(dn - 1).split("e");
914
+ return `${fn(t)}E${pn(Number(n))}`;
915
+ }
916
+ function hn(e) {
917
917
  if (!Number.isFinite(e)) return String(e);
918
918
  if (e === 0) return "0";
919
- let t = e < 0, n = Math.abs(e), r = Number(n.toExponential(ln - 1).split("e")[1]), i = r >= ln || r < -5 ? pn(n) : dn(n.toPrecision(ln));
919
+ let t = e < 0, n = Math.abs(e), r = Number(n.toExponential(un - 1).split("e")[1]), i = r >= un || r < -5 ? mn(n) : fn(n.toPrecision(un));
920
920
  return t ? `-${i}` : i;
921
921
  }
922
- function hn(e, t, n, r = !1) {
922
+ function gn(e, t, n, r = !1) {
923
923
  if (t === 14 && !n) {
924
924
  let t = typeof navigator > "u" ? void 0 : navigator.language, n = ae(e, r);
925
- return { text: qt(t).format(n) };
925
+ return { text: Jt(t).format(n) };
926
926
  }
927
- let i = $t[t];
928
- if (i) return { text: sn(e, i, r) };
929
- if (n && n.trim().toLowerCase() === "general") return { text: mn(e) };
930
- if (n) return cn(n) ? { text: sn(e, n, r) } : On(e, n);
927
+ let i = en[t];
928
+ if (i) return { text: cn(e, i, r) };
929
+ if (n && n.trim().toLowerCase() === "general") return { text: hn(e) };
930
+ if (n) return ln(n) ? { text: cn(e, n, r) } : kn(e, n);
931
931
  switch (t) {
932
- case 0: return { text: mn(e) };
933
- case 1: return On(e, "0");
934
- case 2: return On(e, "0.00");
935
- case 3: return On(e, "#,##0");
936
- case 4: return On(e, "#,##0.00");
937
- case 9: return On(e, "0%");
938
- case 10: return On(e, "0.00%");
939
- case 11: return On(e, "0.00E+00");
940
- case 37: return On(e, "#,##0 ;(#,##0)");
941
- case 38: return On(e, "#,##0 ;[Red](#,##0)");
942
- case 39: return On(e, "#,##0.00;(#,##0.00)");
943
- case 40: return On(e, "#,##0.00;[Red](#,##0.00)");
944
- case 48: return On(e, "##0.0E+0");
932
+ case 0: return { text: hn(e) };
933
+ case 1: return kn(e, "0");
934
+ case 2: return kn(e, "0.00");
935
+ case 3: return kn(e, "#,##0");
936
+ case 4: return kn(e, "#,##0.00");
937
+ case 9: return kn(e, "0%");
938
+ case 10: return kn(e, "0.00%");
939
+ case 11: return kn(e, "0.00E+00");
940
+ case 37: return kn(e, "#,##0 ;(#,##0)");
941
+ case 38: return kn(e, "#,##0 ;[Red](#,##0)");
942
+ case 39: return kn(e, "#,##0.00;(#,##0.00)");
943
+ case 40: return kn(e, "#,##0.00;[Red](#,##0.00)");
944
+ case 48: return kn(e, "##0.0E+0");
945
945
  case 49: return { text: String(e) };
946
- default: return { text: mn(e) };
946
+ default: return { text: hn(e) };
947
947
  }
948
948
  }
949
- var gn = {
949
+ var _n = {
950
950
  black: "#000000",
951
951
  blue: "#0000FF",
952
952
  cyan: "#00FFFF",
@@ -955,8 +955,8 @@ var gn = {
955
955
  red: "#FF0000",
956
956
  white: "#FFFFFF",
957
957
  yellow: "#FFFF00"
958
- }, _n = /* @__PURE__ */ "#000000.#FFFFFF.#FF0000.#00FF00.#0000FF.#FFFF00.#FF00FF.#00FFFF.#000000.#FFFFFF.#FF0000.#00FF00.#0000FF.#FFFF00.#FF00FF.#00FFFF.#800000.#008000.#000080.#808000.#800080.#008080.#C0C0C0.#808080.#9999FF.#993366.#FFFFCC.#CCFFFF.#660066.#FF8080.#0066CC.#CCCCFF.#000080.#FF00FF.#FFFF00.#00FFFF.#800080.#800000.#008080.#0000FF.#00CCFF.#CCFFFF.#CCFFCC.#FFFF99.#99CCFF.#FF99CC.#CC99FF.#FFCC99.#3366FF.#33CCCC.#99CC00.#FFCC00.#FF9900.#FF6600.#666699.#969696.#003366.#339966.#003300.#333300.#993300.#993366.#333399.#333333".split(".");
959
- function vn(e) {
958
+ }, vn = /* @__PURE__ */ "#000000.#FFFFFF.#FF0000.#00FF00.#0000FF.#FFFF00.#FF00FF.#00FFFF.#000000.#FFFFFF.#FF0000.#00FF00.#0000FF.#FFFF00.#FF00FF.#00FFFF.#800000.#008000.#000080.#808000.#800080.#008080.#C0C0C0.#808080.#9999FF.#993366.#FFFFCC.#CCFFFF.#660066.#FF8080.#0066CC.#CCCCFF.#000080.#FF00FF.#FFFF00.#00FFFF.#800080.#800000.#008080.#0000FF.#00CCFF.#CCFFFF.#CCFFCC.#FFFF99.#99CCFF.#FF99CC.#CC99FF.#FFCC99.#3366FF.#33CCCC.#99CC00.#FFCC00.#FF9900.#FF6600.#666699.#969696.#003366.#339966.#003300.#333300.#993300.#993366.#333399.#333333".split(".");
959
+ function yn(e) {
960
960
  let t = [], n = "", r = 0;
961
961
  for (; r < e.length;) {
962
962
  let i = e[r];
@@ -971,7 +971,7 @@ function vn(e) {
971
971
  }
972
972
  return t.push(n), t;
973
973
  }
974
- function yn(e) {
974
+ function bn(e) {
975
975
  let t = "", n, r, i = 0;
976
976
  for (; i < e.length;) {
977
977
  let a = e[i];
@@ -986,10 +986,10 @@ function yn(e) {
986
986
  continue;
987
987
  }
988
988
  let s = e.slice(i + 1, o), c = s.toLowerCase(), l = c.match(/^color(\d{1,2})$/), u = s.match(/^(<=|>=|<>|<|>|=)\s*(-?[0-9.]+(?:[eE][-+]?\d+)?)$/);
989
- if (c in gn) n = gn[c];
989
+ if (c in _n) n = _n[c];
990
990
  else if (l) {
991
991
  let e = parseInt(l[1], 10);
992
- e >= 1 && e <= 56 && (n = _n[e + 7] ?? n);
992
+ e >= 1 && e <= 56 && (n = vn[e + 7] ?? n);
993
993
  } else u ? r = {
994
994
  op: u[1],
995
995
  value: Number(u[2])
@@ -1003,7 +1003,7 @@ function yn(e) {
1003
1003
  condition: r
1004
1004
  };
1005
1005
  }
1006
- function bn(e, t) {
1006
+ function xn(e, t) {
1007
1007
  switch (e.op) {
1008
1008
  case "<": return t < e.value;
1009
1009
  case "<=": return t <= e.value;
@@ -1013,7 +1013,7 @@ function bn(e, t) {
1013
1013
  case "<>": return t !== e.value;
1014
1014
  }
1015
1015
  }
1016
- function xn(e) {
1016
+ function Sn(e) {
1017
1017
  let t = [], n = "", r = "", i = !1, a = !1, o, s = !1, c = 0, l = 0, u = (e) => {
1018
1018
  if (!e) return;
1019
1019
  !a && !s && (c = n.replace(/,/g, "").length);
@@ -1087,20 +1087,20 @@ function xn(e) {
1087
1087
  fraction: h
1088
1088
  };
1089
1089
  }
1090
- function Sn(e) {
1090
+ function Cn(e) {
1091
1091
  return e.replace(/\B(?=(\d{3})+(?!\d))/g, ",");
1092
1092
  }
1093
- function Cn(e, t, n) {
1093
+ function wn(e, t, n) {
1094
1094
  let r = t.split(""), i = e.split(""), a = [], o = i.length - 1, s = [];
1095
1095
  for (let e = r.length - 1; e >= 0; e--) o >= 0 ? (a.unshift(i[o]), s.unshift(i[o]), o--) : r[e] === "0" ? (a.unshift("0"), s.unshift("0")) : r[e] === "?" && a.unshift(" ");
1096
1096
  for (; o >= 0;) a.unshift(i[o]), s.unshift(i[o]), o--;
1097
1097
  if (n) {
1098
- let e = Sn(s.join(""));
1098
+ let e = Cn(s.join(""));
1099
1099
  return (a.length - s.length > 0 ? a.slice(0, a.length - s.length).join("") : "") + e;
1100
1100
  }
1101
1101
  return a.join("");
1102
1102
  }
1103
- function wn(e, t) {
1103
+ function Tn(e, t) {
1104
1104
  let n = t.length;
1105
1105
  if (n === 0) return "";
1106
1106
  let r = e.padEnd(n, "0").slice(0, n).split("");
@@ -1112,7 +1112,7 @@ function wn(e, t) {
1112
1112
  }
1113
1113
  return r.join("");
1114
1114
  }
1115
- function Tn(e, t, n) {
1115
+ function En(e, t, n) {
1116
1116
  if (n !== null) return [Math.round(e * n), n];
1117
1117
  let r = 10 ** Math.max(t, 1) - 1, i = 0, a = 1, o = Math.abs(e), s = [0, 1], c = [1, 1];
1118
1118
  for (let t = 0; t < 100; t++) {
@@ -1125,12 +1125,12 @@ function Tn(e, t, n) {
1125
1125
  }
1126
1126
  return [i, a];
1127
1127
  }
1128
- function En(e, t, n) {
1129
- let r = xn(t), i = n ? Math.abs(e) : e;
1128
+ function Dn(e, t, n) {
1129
+ let r = Sn(t), i = n ? Math.abs(e) : e;
1130
1130
  r.hasPercent && (i *= 100), r.commaScale > 0 && (i /= 1e3 ** r.commaScale);
1131
1131
  let a = i < 0 ? "-" : "", o = Math.abs(i);
1132
1132
  if (r.fraction) {
1133
- let e = Math.floor(o), t = o - e, { wholeSpec: n, numSpec: i, denSpec: s, fixedDen: c } = r.fraction, l = n.length > 0, [u, d] = Tn(t, s.length, c), f = (e, t) => {
1133
+ let e = Math.floor(o), t = o - e, { wholeSpec: n, numSpec: i, denSpec: s, fixedDen: c } = r.fraction, l = n.length > 0, [u, d] = En(t, s.length, c), f = (e, t) => {
1134
1134
  let n = String(e), r = t.includes("0") ? "0" : " ";
1135
1135
  for (; n.length < t.length;) n = r + n;
1136
1136
  return n;
@@ -1158,12 +1158,12 @@ function En(e, t, n) {
1158
1158
  let e = Math.max(r.intSpec.length, 1), t = r.fracSpec.length, n = 0, i = 0;
1159
1159
  o !== 0 && (i = Math.floor(Math.log10(o)), i = Math.floor(i / e) * e, n = o / 10 ** i, parseFloat(K(n, t)) >= 10 ** e && (i += e, n = o / 10 ** i));
1160
1160
  let [s, c = ""] = K(n, t).split(".");
1161
- return a + Dn(r, Cn(s, r.intSpec, !1), wn(c, r.fracSpec), "E" + (i < 0 ? "-" : r.exp.plus ? "+" : "") + String(Math.abs(i)).padStart(r.exp.width, "0"));
1161
+ return a + On(r, wn(s, r.intSpec, !1), Tn(c, r.fracSpec), "E" + (i < 0 ? "-" : r.exp.plus ? "+" : "") + String(Math.abs(i)).padStart(r.exp.width, "0"));
1162
1162
  }
1163
1163
  let s = r.fracSpec.length, [c, l = ""] = K(o, s).split("."), u = c.replace(/^0+/, ""), d = /[0]/.test(r.intSpec) || r.intSpec === "" && !1;
1164
- return u === "" && d && (u = "0"), a + Dn(r, Cn(u, r.intSpec, r.grouping), wn(l, r.fracSpec), "");
1164
+ return u === "" && d && (u = "0"), a + On(r, wn(u, r.intSpec, r.grouping), Tn(l, r.fracSpec), "");
1165
1165
  }
1166
- function Dn(e, t, n, r) {
1166
+ function On(e, t, n, r) {
1167
1167
  let i = t.split(""), a = [];
1168
1168
  e.parts.forEach((e, t) => {
1169
1169
  e.kind === "intph" && a.push(t);
@@ -1187,12 +1187,12 @@ function Dn(e, t, n, r) {
1187
1187
  }
1188
1188
  return f;
1189
1189
  }
1190
- function On(e, t) {
1191
- let n = vn(t).map(yn), r = n.some((e) => e.condition), i, a = !1;
1190
+ function kn(e, t) {
1191
+ let n = yn(t).map(bn), r = n.some((e) => e.condition), i, a = !1;
1192
1192
  if (r) {
1193
1193
  let t = !1;
1194
1194
  for (let r of n) if (r.condition) {
1195
- if (bn(r.condition, e)) {
1195
+ if (xn(r.condition, e)) {
1196
1196
  i = r, t = !0;
1197
1197
  break;
1198
1198
  }
@@ -1200,7 +1200,7 @@ function On(e, t) {
1200
1200
  if (!i) return { text: "#" };
1201
1201
  a = t && e < 0;
1202
1202
  } else e > 0 ? i = n[0] : e < 0 ? n.length > 1 ? (i = n[1], a = !0) : i = n[0] : i = n.length > 2 ? n[2] : n[0];
1203
- let o = En(e, i.body, a);
1203
+ let o = Dn(e, i.body, a);
1204
1204
  return i.color ? {
1205
1205
  text: o,
1206
1206
  color: i.color
@@ -1208,9 +1208,9 @@ function On(e, t) {
1208
1208
  }
1209
1209
  //#endregion
1210
1210
  //#region packages/xlsx/src/renderer-coordinate-index.ts
1211
- var kn = u;
1212
- function An(e, t) {
1213
- let n = kn;
1211
+ var An = u;
1212
+ function jn(e, t) {
1213
+ let n = An;
1214
1214
  return new P(`XLSX renderer ${e.resource} exceeded its hard limit of ${n} entries`, {
1215
1215
  stage: "rendering",
1216
1216
  violation: {
@@ -1230,7 +1230,7 @@ function An(e, t) {
1230
1230
  }
1231
1231
  });
1232
1232
  }
1233
- function jn(e, t, n = 0) {
1233
+ function Mn(e, t, n = 0) {
1234
1234
  let { top: r, bottom: i, left: a, right: o } = e;
1235
1235
  if (i < r || o < a) return 0;
1236
1236
  if (![
@@ -1238,44 +1238,44 @@ function jn(e, t, n = 0) {
1238
1238
  i,
1239
1239
  a,
1240
1240
  o
1241
- ].every(Number.isSafeInteger) || !Number.isSafeInteger(n) || n < 0) throw An(t, kn + 1);
1242
- let s = i - r + 1, c = o - a + 1, l = kn + n;
1243
- if (!Number.isSafeInteger(s) || !Number.isSafeInteger(c) || s > l || c > Math.floor(l / s)) throw An(t, kn + 1);
1241
+ ].every(Number.isSafeInteger) || !Number.isSafeInteger(n) || n < 0) throw jn(t, An + 1);
1242
+ let s = i - r + 1, c = o - a + 1, l = An + n;
1243
+ if (!Number.isSafeInteger(s) || !Number.isSafeInteger(c) || s > l || c > Math.floor(l / s)) throw jn(t, An + 1);
1244
1244
  let u = s * c - n;
1245
- if (u > kn) throw An(t, u);
1245
+ if (u > An) throw jn(t, u);
1246
1246
  return u;
1247
1247
  }
1248
- function Mn(e, t, n, r) {
1249
- if (!e.has(t) && e.size >= kn) throw An(r, e.size + 1);
1248
+ function Nn(e, t, n, r) {
1249
+ if (!e.has(t) && e.size >= An) throw jn(r, e.size + 1);
1250
1250
  e.set(t, n);
1251
1251
  }
1252
- function Nn(e, t) {
1252
+ function Pn(e, t) {
1253
1253
  let n = /* @__PURE__ */ new Map();
1254
- for (let r of e) for (let e of r.cells) Mn(n, `${e.row}:${e.col}`, e, t);
1254
+ for (let r of e) for (let e of r.cells) Nn(n, `${e.row}:${e.col}`, e, t);
1255
1255
  return n;
1256
1256
  }
1257
- function Pn(e, t, n) {
1258
- if (!e.has(t) && e.size >= kn) throw An(n, e.size + 1);
1257
+ function Fn(e, t, n) {
1258
+ if (!e.has(t) && e.size >= An) throw jn(n, e.size + 1);
1259
1259
  e.add(t);
1260
1260
  }
1261
1261
  //#endregion
1262
1262
  //#region packages/xlsx/src/conditional-format.ts
1263
- function Fn(e, t, n) {
1263
+ function In(e, t, n) {
1264
1264
  for (let r of e) if (t >= r.top && t <= r.bottom && n >= r.left && n <= r.right) return !0;
1265
1265
  return !1;
1266
1266
  }
1267
- function In(e) {
1267
+ function Ln(e) {
1268
1268
  return e && e.value.type === "number" ? e.value.number : null;
1269
1269
  }
1270
- function Ln(e) {
1270
+ function Rn(e) {
1271
1271
  return e && e.value.type === "text" ? e.value.text : null;
1272
1272
  }
1273
- function Rn(e, t) {
1273
+ function zn(e, t) {
1274
1274
  let n = [];
1275
- for (let r of e.rows) for (let e of r.cells) e.value.type === "number" && Fn(t, e.row, e.col) && n.push(e.value.number);
1275
+ for (let r of e.rows) for (let e of r.cells) e.value.type === "number" && In(t, e.row, e.col) && n.push(e.value.number);
1276
1276
  return n;
1277
1277
  }
1278
- function zn(e, t) {
1278
+ function Bn(e, t) {
1279
1279
  let n = t.length ? Math.min(...t) : 0, r = t.length ? Math.max(...t) : 0, i = e.value == null ? NaN : parseFloat(e.value);
1280
1280
  switch (e.kind) {
1281
1281
  case "min": return n;
@@ -1293,18 +1293,18 @@ function zn(e, t) {
1293
1293
  default: return isNaN(i) ? 0 : i;
1294
1294
  }
1295
1295
  }
1296
- function Bn(e, t = Vn(e)) {
1296
+ function Vn(e, t = Hn(e)) {
1297
1297
  let n = [], r = /* @__PURE__ */ new Map();
1298
1298
  for (let t of e.definedNames ?? []) r.set(t.name, t);
1299
1299
  for (let t of e.conditionalFormats ?? []) {
1300
- let r = Rn(e, t.sqref);
1300
+ let r = zn(e, t.sqref);
1301
1301
  for (let e of t.rules) {
1302
1302
  let i = {
1303
1303
  rule: e,
1304
1304
  sqref: t.sqref
1305
1305
  };
1306
- if (e.type === "colorScale") i.scaleStops = e.stops.map((e) => zn(e, r));
1307
- else if (e.type === "dataBar") i.barMin = zn(e.min, r), i.barMax = zn(e.max, r);
1306
+ if (e.type === "colorScale") i.scaleStops = e.stops.map((e) => Bn(e, r));
1307
+ else if (e.type === "dataBar") i.barMin = Bn(e.min, r), i.barMax = Bn(e.max, r);
1308
1308
  else if (e.type === "top10") {
1309
1309
  let t = [...r].sort((e, t) => e - t), n = t.length;
1310
1310
  if (n > 0) {
@@ -1323,7 +1323,7 @@ function Bn(e, t = Vn(e)) {
1323
1323
  i.avgStdDev = Math.sqrt(e);
1324
1324
  }
1325
1325
  }
1326
- } else e.type === "iconSet" && (i.iconThresholds = e.cfvos.map((e) => zn(e, r)));
1326
+ } else e.type === "iconSet" && (i.iconThresholds = e.cfvos.map((e) => Bn(e, r)));
1327
1327
  n.push(i);
1328
1328
  }
1329
1329
  }
@@ -1334,13 +1334,13 @@ function Bn(e, t = Vn(e)) {
1334
1334
  definedNames: r
1335
1335
  };
1336
1336
  }
1337
- function Vn(e) {
1338
- return Nn(e.rows, {
1337
+ function Hn(e) {
1338
+ return Pn(e.rows, {
1339
1339
  resource: "worksheet-cell-index",
1340
1340
  operation: "index-worksheet-cells"
1341
1341
  });
1342
1342
  }
1343
- function Hn(e, t, n) {
1343
+ function Un(e, t, n) {
1344
1344
  switch (t) {
1345
1345
  case "greaterThan": return e > (n[0] ?? 0);
1346
1346
  case "greaterThanOrEqual": return e >= (n[0] ?? 0);
@@ -1353,13 +1353,13 @@ function Hn(e, t, n) {
1353
1353
  default: return !1;
1354
1354
  }
1355
1355
  }
1356
- function Un(e) {
1356
+ function Wn(e) {
1357
1357
  let t = e.trim();
1358
1358
  if (t.length >= 2 && t.startsWith("\"") && t.endsWith("\"")) return { text: t.slice(1, -1).replace(/""/g, "\"") };
1359
1359
  let n = parseFloat(t);
1360
1360
  return isNaN(n) ? { text: t } : { num: n };
1361
1361
  }
1362
- function Wn(e, t, n) {
1362
+ function Gn(e, t, n) {
1363
1363
  let r = n[0] ?? "", i = n[1] ?? "", a = (e) => e.toLowerCase();
1364
1364
  switch (t) {
1365
1365
  case "equal": return a(e) === a(r);
@@ -1373,21 +1373,21 @@ function Wn(e, t, n) {
1373
1373
  default: return !1;
1374
1374
  }
1375
1375
  }
1376
- function Gn(e, t, n) {
1376
+ function Kn(e, t, n) {
1377
1377
  let r = e.replace("#", ""), i = t.replace("#", ""), a = parseInt(r.slice(0, 2), 16), o = parseInt(r.slice(2, 4), 16), s = parseInt(r.slice(4, 6), 16), c = parseInt(i.slice(0, 2), 16), l = parseInt(i.slice(2, 4), 16), u = parseInt(i.slice(4, 6), 16), d = Math.round(a + (c - a) * n), f = Math.round(o + (l - o) * n), p = Math.round(s + (u - s) * n);
1378
1378
  return `#${d.toString(16).padStart(2, "0").toUpperCase()}${f.toString(16).padStart(2, "0").toUpperCase()}${p.toString(16).padStart(2, "0").toUpperCase()}`;
1379
1379
  }
1380
- function Kn(e, t, n) {
1380
+ function qn(e, t, n) {
1381
1381
  if (!t.length) return "#FFFFFF";
1382
1382
  if (e <= n[0]) return t[0].color;
1383
1383
  if (e >= n[n.length - 1]) return t[t.length - 1].color;
1384
1384
  for (let r = 1; r < n.length; r++) if (e <= n[r]) {
1385
1385
  let i = n[r - 1], a = n[r], o = a === i ? 0 : (e - i) / (a - i);
1386
- return Gn(t[r - 1].color, t[r].color, o);
1386
+ return Kn(t[r - 1].color, t[r].color, o);
1387
1387
  }
1388
1388
  return t[t.length - 1].color;
1389
1389
  }
1390
- function qn(e, t) {
1390
+ function Jn(e, t) {
1391
1391
  if (t && (t.fill && !e.fill && (e.fill = t.fill), t.font?.color && e.fontColor == null && (e.fontColor = t.font.color), t.font?.bold && e.fontBold == null && (e.fontBold = !0), t.font?.italic && e.fontItalic == null && (e.fontItalic = !0), t.font?.underline && e.fontUnderline == null && (e.fontUnderline = !0), t.font?.strike && e.fontStrike == null && (e.fontStrike = !0), t.numFmt && e.numFmt == null && (e.numFmt = {
1392
1392
  numFmtId: t.numFmt.numFmtId,
1393
1393
  formatCode: t.numFmt.formatCode || null
@@ -1403,16 +1403,16 @@ function qn(e, t) {
1403
1403
  };
1404
1404
  }
1405
1405
  }
1406
- function Jn(e, t, n, r, i) {
1406
+ function Yn(e, t, n, r, i) {
1407
1407
  let a = {};
1408
1408
  if (!r.compiled.length) return a;
1409
1409
  for (let o of r.compiled) {
1410
- if (!Fn(o.sqref, t, n)) continue;
1411
- let s = o.rule, c = In(e);
1410
+ if (!In(o.sqref, t, n)) continue;
1411
+ let s = o.rule, c = Ln(e);
1412
1412
  if (s.type === "expression") {
1413
1413
  let e = o.sqref[0];
1414
1414
  if (!e) continue;
1415
- if (ht(s.formula, {
1415
+ if (gt(s.formula, {
1416
1416
  row: t,
1417
1417
  col: n,
1418
1418
  anchorRow: e.top,
@@ -1420,19 +1420,19 @@ function Jn(e, t, n, r, i) {
1420
1420
  cellIndex: r.cellIndex,
1421
1421
  definedNames: r.definedNames,
1422
1422
  depth: 0
1423
- }) && (qn(a, s.dxfId == null ? null : i[s.dxfId]), s.stopIfTrue)) break;
1423
+ }) && (Jn(a, s.dxfId == null ? null : i[s.dxfId]), s.stopIfTrue)) break;
1424
1424
  continue;
1425
1425
  }
1426
1426
  if (s.type === "cellIs") {
1427
- let t = s.formulas.map(Un), n = Ln(e), r = !1;
1428
- c != null && t.every((e) => e.num != null) ? r = Hn(c, s.operator, t.map((e) => e.num)) : n != null && t.every((e) => e.text != null) && (r = Wn(n, s.operator, t.map((e) => e.text))), r && qn(a, s.dxfId == null ? null : i[s.dxfId]);
1427
+ let t = s.formulas.map(Wn), n = Rn(e), r = !1;
1428
+ c != null && t.every((e) => e.num != null) ? r = Un(c, s.operator, t.map((e) => e.num)) : n != null && t.every((e) => e.text != null) && (r = Gn(n, s.operator, t.map((e) => e.text))), r && Jn(a, s.dxfId == null ? null : i[s.dxfId]);
1429
1429
  } else if (s.type === "top10") {
1430
1430
  if (c == null || o.top10Threshold == null) continue;
1431
- (o.top10IsTop ? c >= o.top10Threshold : c <= o.top10Threshold) && qn(a, s.dxfId == null ? null : i[s.dxfId]);
1431
+ (o.top10IsTop ? c >= o.top10Threshold : c <= o.top10Threshold) && Jn(a, s.dxfId == null ? null : i[s.dxfId]);
1432
1432
  } else if (s.type === "aboveAverage") {
1433
1433
  if (c == null || o.avgValue == null) continue;
1434
1434
  let e = o.avgStdDev == null ? 0 : o.avgStdDev * (s.stdDev ?? 1), t = o.avgIsAbove ? o.avgValue + e : o.avgValue - e, n = s.equalAverage === !0;
1435
- (o.avgIsAbove ? n ? c >= t : c > t : n ? c <= t : c < t) && qn(a, s.dxfId == null ? null : i[s.dxfId]);
1435
+ (o.avgIsAbove ? n ? c >= t : c > t : n ? c <= t : c < t) && Jn(a, s.dxfId == null ? null : i[s.dxfId]);
1436
1436
  } else if (s.type === "iconSet") {
1437
1437
  if (c == null || !o.iconThresholds?.length) continue;
1438
1438
  let e = o.iconThresholds, t = e.length, n = 0;
@@ -1449,7 +1449,7 @@ function Jn(e, t, n, r, i) {
1449
1449
  };
1450
1450
  } else if (s.type === "colorScale") {
1451
1451
  if (c == null || !o.scaleStops || a.fill) continue;
1452
- let e = Kn(c, s.stops, o.scaleStops);
1452
+ let e = qn(c, s.stops, o.scaleStops);
1453
1453
  a.fill = {
1454
1454
  patternType: "solid",
1455
1455
  fgColor: e,
@@ -1469,21 +1469,21 @@ function Jn(e, t, n, r, i) {
1469
1469
  }
1470
1470
  //#endregion
1471
1471
  //#region packages/xlsx/src/bidi-line.ts
1472
- function Yn(e, t) {
1473
- return e === 2 ? !0 : e === 1 ? !1 : at(void 0, t) === "rtl";
1472
+ function Xn(e, t) {
1473
+ return e === 2 ? !0 : e === 1 ? !1 : ot(void 0, t) === "rtl";
1474
1474
  }
1475
- var Xn = (e) => {
1475
+ var Zn = (e) => {
1476
1476
  let t = e.text;
1477
1477
  return typeof t == "string" ? t : void 0;
1478
1478
  };
1479
- function Zn(e, t) {
1479
+ function Qn(e, t) {
1480
1480
  let n = e === 2 || B(t);
1481
1481
  return {
1482
1482
  needBidi: n,
1483
- baseRtl: n && Yn(e, t)
1483
+ baseRtl: n && Xn(e, t)
1484
1484
  };
1485
1485
  }
1486
- function Qn(e, t) {
1486
+ function $n(e, t) {
1487
1487
  let r = e.length;
1488
1488
  if (r === 0) return {
1489
1489
  order: [],
@@ -1492,7 +1492,7 @@ function Qn(e, t) {
1492
1492
  let i = "", a = Array(r);
1493
1493
  for (let t = 0; t < r; t++) {
1494
1494
  a[t] = i.length;
1495
- let n = Xn(e[t]) ?? "";
1495
+ let n = Zn(e[t]) ?? "";
1496
1496
  i += n.length > 0 ? n : "";
1497
1497
  }
1498
1498
  let { levels: o, paragraphLevel: s } = p().computeLevels(i, t ? "rtl" : "ltr"), { order: c, segLevels: l } = n(o, s, a), u = Array(r);
@@ -1502,21 +1502,21 @@ function Qn(e, t) {
1502
1502
  rtl: u
1503
1503
  };
1504
1504
  }
1505
- function $n(e, t = 8) {
1505
+ function er(e, t = 8) {
1506
1506
  return Math.trunc((256 * e + Math.trunc(128 / t)) / 256 * t);
1507
1507
  }
1508
- function er(e, t = 8) {
1508
+ function tr(e, t = 8) {
1509
1509
  return e / t;
1510
1510
  }
1511
- function tr(e) {
1511
+ function nr(e) {
1512
1512
  return Math.round(e * G);
1513
1513
  }
1514
- function nr(e) {
1514
+ function rr(e) {
1515
1515
  return e / G;
1516
1516
  }
1517
1517
  //#endregion
1518
1518
  //#region packages/xlsx/src/internal/grid-axis-geometry.ts
1519
- var rr = class e {
1519
+ var ir = class e {
1520
1520
  indices;
1521
1521
  cumulativeDelta;
1522
1522
  customPx;
@@ -1590,7 +1590,7 @@ var rr = class e {
1590
1590
  }
1591
1591
  return a;
1592
1592
  }
1593
- }, ir = 1048576, ar = 16384, or = class e {
1593
+ }, ar = 1048576, Q = 16384, or = class e {
1594
1594
  static cache = /* @__PURE__ */ new WeakMap();
1595
1595
  static forWorksheet(t, n) {
1596
1596
  let r = this.cache.get(t);
@@ -1615,7 +1615,42 @@ var rr = class e {
1615
1615
  freezeCols;
1616
1616
  scaledCache = null;
1617
1617
  constructor(e, t) {
1618
- this.maximumDigitWidth = t, this.freezeRows = Math.min(ir, Math.max(0, e.freezeRows ?? 0)), this.freezeCols = Math.min(ar, Math.max(0, e.freezeCols ?? 0)), this.col = new rr(e.colWidths, $n(e.defaultColWidth, t), (e) => $n(e, t), ar), this.row = new rr(e.rowHeights, tr(e.defaultRowHeight), tr, ir);
1618
+ this.maximumDigitWidth = t, this.freezeRows = Math.min(ar, Math.max(0, e.freezeRows ?? 0)), this.freezeCols = Math.min(Q, Math.max(0, e.freezeCols ?? 0));
1619
+ let n = er(e.defaultColWidth, t), r = new Float64Array(Q + 1);
1620
+ r.fill(NaN);
1621
+ let i = new Int32Array(Q + 2);
1622
+ for (let e = 1; e < i.length; e++) i[e] = e;
1623
+ let a = (e) => {
1624
+ let t = e;
1625
+ for (; i[t] !== t;) t = i[t];
1626
+ let n = e;
1627
+ for (; i[n] !== n;) {
1628
+ let e = i[n];
1629
+ i[n] = t, n = e;
1630
+ }
1631
+ return t;
1632
+ }, o = e.colWidthRanges ?? [];
1633
+ for (let e = o.length - 1; e >= 0; e--) {
1634
+ let t = o[e], n = Math.max(1, Math.min(Q, Math.trunc(t.min))), s = Math.max(1, Math.min(Q, Math.trunc(t.max)));
1635
+ if (s < n || !Number.isFinite(t.width) || t.width < 0) continue;
1636
+ let c = a(n);
1637
+ for (; c <= s;) r[c] = t.width, i[c] = a(c + 1), c = i[c];
1638
+ }
1639
+ for (let [t, n] of Object.entries(e.colWidths)) {
1640
+ let e = Number(t);
1641
+ Number.isInteger(e) && e >= 1 && e <= 16384 && (r[e] = n);
1642
+ }
1643
+ let s = [];
1644
+ for (let e = 1; e <= Q; e++) {
1645
+ let i = r[e];
1646
+ if (!Number.isFinite(i) || i < 0) continue;
1647
+ let a = er(i, t);
1648
+ a !== n && s.push({
1649
+ index: e,
1650
+ px: a
1651
+ });
1652
+ }
1653
+ this.col = new ir({}, n, (e) => er(e, t), Q, s), this.row = new ir(e.rowHeights, nr(e.defaultRowHeight), nr, ar);
1619
1654
  }
1620
1655
  logicalFrozenExtent() {
1621
1656
  return {
@@ -1639,15 +1674,15 @@ var rr = class e {
1639
1674
  }
1640
1675
  logicalContentExtent(e, t, n, r) {
1641
1676
  return {
1642
- width: n + this.col.offsetOf(Math.min(ar, t) + 1),
1643
- height: r + this.row.offsetOf(Math.min(ir, e) + 1)
1677
+ width: n + this.col.offsetOf(Math.min(Q, t) + 1),
1678
+ height: r + this.row.offsetOf(Math.min(ar, e) + 1)
1644
1679
  };
1645
1680
  }
1646
1681
  roundedContentExtent(e, t, n, r, i) {
1647
1682
  let a = this.axesAtScale(n);
1648
1683
  return {
1649
- width: Math.round(r * n) + a.col.offsetOf(Math.min(ar, t) + 1),
1650
- height: Math.round(i * n) + a.row.offsetOf(Math.min(ir, e) + 1)
1684
+ width: Math.round(r * n) + a.col.offsetOf(Math.min(Q, t) + 1),
1685
+ height: Math.round(i * n) + a.row.offsetOf(Math.min(ar, e) + 1)
1651
1686
  };
1652
1687
  }
1653
1688
  cellAt(e, t, n) {
@@ -2099,7 +2134,7 @@ function Lr(e, t, n, r, i, a, o, s, c, l) {
2099
2134
  e.restore();
2100
2135
  return;
2101
2136
  }
2102
- let m = ft(t, r, o, f, (t) => Rr(e, t, i));
2137
+ let m = pt(t, r, o, f, (t) => Rr(e, t, i));
2103
2138
  for (let t of m) {
2104
2139
  let n = e.measureText(t.text).width, r = [...t.text];
2105
2140
  if (t.spread === "distribute" && r.length > 1 && n < t.width) {
@@ -2213,7 +2248,7 @@ function Kr(e, t, n) {
2213
2248
  let r = [], i = [], a = 0;
2214
2249
  for (; a < t.length;) {
2215
2250
  let e = t[a], n = e.codePointAt(0) ?? 0;
2216
- if (he(n)) i.push(e), a += n > 65535 ? 2 : 1;
2251
+ if (ge(n)) i.push(e), a += n > 65535 ? 2 : 1;
2217
2252
  else if (e === " ") {
2218
2253
  let e = a;
2219
2254
  for (; e < t.length && t[e] === " ";) e++;
@@ -2222,7 +2257,7 @@ function Kr(e, t, n) {
2222
2257
  let e = a;
2223
2258
  for (; e < t.length;) {
2224
2259
  let n = t[e], r = n.codePointAt(0) ?? 0;
2225
- if (n === " " || he(r)) break;
2260
+ if (n === " " || ge(r)) break;
2226
2261
  e += r > 65535 ? 2 : 1;
2227
2262
  }
2228
2263
  let n = t.slice(a, e), r = I(n) ? _(n) : null;
@@ -2311,7 +2346,7 @@ function qr(e, t, n, r, i) {
2311
2346
  return;
2312
2347
  }
2313
2348
  e.font = Ir(Xr(n), r);
2314
- let o = (t) => e.measureText(t).width, c = ge(t), l = t.length, u = 0;
2349
+ let o = (t) => e.measureText(t).width, c = _e(t), l = t.length, u = 0;
2315
2350
  for (; u < l;) {
2316
2351
  let e = i - s, r = N(t, a, u, e, o, c);
2317
2352
  if (r <= u) {
@@ -2330,7 +2365,7 @@ function qr(e, t, n, r, i) {
2330
2365
  for (; i < e.text.length;) {
2331
2366
  let t = e.text[i], n = t.codePointAt(0) ?? 0;
2332
2367
  if (n === 10) r.push("\n"), i += 1;
2333
- else if (he(n)) r.push(t), i += n > 65535 ? 2 : 1;
2368
+ else if (ge(n)) r.push(t), i += n > 65535 ? 2 : 1;
2334
2369
  else if (t === " ") {
2335
2370
  let t = i;
2336
2371
  for (; t < e.text.length && e.text[t] === " ";) t++;
@@ -2339,7 +2374,7 @@ function qr(e, t, n, r, i) {
2339
2374
  let t = i;
2340
2375
  for (; t < e.text.length;) {
2341
2376
  let n = e.text[t], r = n.codePointAt(0) ?? 0;
2342
- if (n === " " || n === "\n" || he(r)) break;
2377
+ if (n === " " || n === "\n" || ge(r)) break;
2343
2378
  t += r > 65535 ? 2 : 1;
2344
2379
  }
2345
2380
  r.push(e.text.slice(i, t)), i = t;
@@ -2382,7 +2417,7 @@ function Xr(e) {
2382
2417
  }
2383
2418
  function Zr(e, t, n, r, i, a, o, s) {
2384
2419
  e.textAlign = "left", e.textBaseline = i;
2385
- let c = s.needBidi ? Qn(t, s.baseRtl ?? !1) : null, l = e, u = n;
2420
+ let c = s.needBidi ? $n(t, s.baseRtl ?? !1) : null, l = e, u = n;
2386
2421
  for (let n = 0; n < t.length; n++) {
2387
2422
  let d = c ? c.order[n] : n;
2388
2423
  if (c) try {
@@ -2415,7 +2450,7 @@ function Zr(e, t, n, r, i, a, o, s) {
2415
2450
  function Qr(e, t, n, r, i, a, o, s) {
2416
2451
  let { alignH: c, cx: l, cellW: u, leftPad: d, paddingX: f } = n, p = t.reduce((e, t) => e + t.width, 0), m;
2417
2452
  m = c === "right" ? l + u - f - p : c === "center" ? l + u / 2 - p / 2 : l + d;
2418
- let { needBidi: h, baseRtl: g } = Zn(a.readingOrder, t.map((e) => e.text).join(""));
2453
+ let { needBidi: h, baseRtl: g } = Qn(a.readingOrder, t.map((e) => e.text).join(""));
2419
2454
  Zr(e, t, m, o, s, r, i, {
2420
2455
  fontColor: a.fontColor,
2421
2456
  needBidi: h,
@@ -2489,7 +2524,7 @@ function ii(e, t, n, r, i, a, o = {}) {
2489
2524
  }
2490
2525
  let _ = g.reduce((e, t) => e + Fr(t.maxFontSize, i, 1.2, t.maxFontFamily ?? void 0), 0), v;
2491
2526
  v = c === "top" ? u + h : c === "center" ? u + (f - _) / 2 : u + f - _ - h;
2492
- let y = t.map((e) => e.text).join("").split("\n").map((e) => Zn(o.readingOrder, e));
2527
+ let y = t.map((e) => e.text).join("").split("\n").map((e) => Qn(o.readingOrder, e));
2493
2528
  for (let t of g) {
2494
2529
  let n = t.segments.reduce((e, t) => e + t.width, 0), r;
2495
2530
  r = s === "right" ? l + d - m - n : s === "center" ? l + d / 2 - n / 2 : l + p;
@@ -2545,11 +2580,11 @@ function di(e) {
2545
2580
  for (let r of e.tables ?? []) {
2546
2581
  if (!r.styleName) continue;
2547
2582
  let { top: e, bottom: i, left: a, right: o } = r.range;
2548
- jn(r.range, n);
2583
+ Mn(r.range, n);
2549
2584
  let s = r.accentColor || "#808080", c = !!r.isCustom, l = Math.max(0, r.headerRowCount ?? 1), u = Math.max(0, r.totalsRowCount ?? 0), d = e + l - 1, f = i - u + 1;
2550
2585
  for (let p = e; p <= i; p++) {
2551
2586
  let m = l > 0 && p <= d, h = u > 0 && p >= f, g = !m && !h ? p - d - 1 : -1, _ = r.showRowStripes && g >= 0 ? g % 2 == 1 ? r.band1HorizontalDxf : r.band2HorizontalDxf : void 0;
2552
- for (let l = a; l <= o; l++) Mn(t, `${p}:${l}`, {
2587
+ for (let l = a; l <= o; l++) Nn(t, `${p}:${l}`, {
2553
2588
  accent: s,
2554
2589
  isCustom: c,
2555
2590
  isHeader: m,
@@ -2601,7 +2636,7 @@ function pi(e) {
2601
2636
  }
2602
2637
  for (let a of r.sparklines) {
2603
2638
  let o = a.values.filter((e) => typeof e == "number"), s = o.length ? Math.min(...o) : 0, c = o.length ? Math.max(...o) : 1, l = r.minAxisType === "custom" && typeof r.manualMin == "number" ? r.manualMin : r.minAxisType === "group" ? e : s, u = r.maxAxisType === "custom" && typeof r.manualMax == "number" ? r.manualMax : r.maxAxisType === "group" ? i : c;
2604
- Mn(t, `${a.row}:${a.col}`, {
2639
+ Nn(t, `${a.row}:${a.col}`, {
2605
2640
  kind: r.kind,
2606
2641
  values: a.values,
2607
2642
  min: l,
@@ -2649,14 +2684,14 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2649
2684
  if (!p) continue;
2650
2685
  let m = u - c + t.colAxis.offsetOf(f) - t.colAxis.offsetOf(r), h = d - l + t.rowAxis.offsetOf(a) - t.rowAxis.offsetOf(n), _ = p.totalW, v = p.totalH;
2651
2686
  m = O(m, _);
2652
- let y = `${a}:${f}`, w = t.cellMap.get(y), { font: T, fill: k, border: A, xf: j } = Vr(g, w?.styleIndex ?? 0), M = Jn(w, a, f, b, g.dxfs ?? []);
2687
+ let y = `${a}:${f}`, w = t.cellMap.get(y), { font: T, fill: k, border: A, xf: j } = Vr(g, w?.styleIndex ?? 0), M = Yn(w, a, f, b, g.dxfs ?? []);
2653
2688
  if (Ar(e, M.fill ?? k, m, h, _, v), M.dataBar && M.dataBar.ratio > 0) {
2654
2689
  let t = Math.max(0, (_ - 4) * M.dataBar.ratio);
2655
2690
  Tr(e, M.dataBar.color, m + 2, h + 2, t, v - 4, M.dataBar.gradient);
2656
2691
  }
2657
2692
  let ee = Gi(Wi(A, a, f, p.right, p.bottom, t.cellMap, g), M.border);
2658
2693
  if (te.push(() => qi(e, ee, m, h, _, v, S)), !w) continue;
2659
- let N = Xt(w, g, M.numFmt, t.worksheet.date1904), P = N.text;
2694
+ let N = Zt(w, g, M.numFmt, t.worksheet.date1904), P = N.text;
2660
2695
  if (!P || P === "0" && t.worksheet.showZeros === !1) continue;
2661
2696
  let F = T.bold || !!M.fontBold, I = T.italic || !!M.fontItalic, L = T.underline || !!M.fontUnderline, R = T.strike || !!M.fontStrike, z = F !== T.bold || I !== T.italic || L !== T.underline || R !== T.strike ? {
2662
2697
  ...T,
@@ -2757,13 +2792,13 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2757
2792
  if (y.has(A)) continue;
2758
2793
  let j = v.get(A), M = j ? j.totalW : D, P = j ? j.totalH : l, F = d + M <= f || d >= f + m;
2759
2794
  if (c + P <= p || c >= p + h || F && !t.overflowTextAnchors.has(A)) continue;
2760
- let I = O(d, M), L = _.get(A), { font: R, fill: z, border: ne, xf: B } = Vr(g, L?.styleIndex ?? 0), V = Jn(L, r, s, b, g.dxfs ?? []), re = V.fill ?? z, H = t.tableStyleMap.get(A), ie = g.dxfs ?? [], W = (e) => e == null ? void 0 : ie[e], ae = W(H?.wholeTableDxf), G = W(H?.headerRowDxf), se = W(H?.totalRowDxf), ce = W(H?.firstColumnDxf), le = W(H?.lastColumnDxf), ue = W(H?.stripeDxf), de = H?.isHeader && G?.fill?.fgColor ? G : H?.isTotals && se?.fill?.fgColor ? se : H?.isLastCol && le?.fill?.fgColor ? le : H?.isFirstCol && ce?.fill?.fgColor ? ce : ue?.fill?.fgColor ? ue : !H?.isHeader && !H?.isTotals && ae?.fill?.fgColor ? ae : void 0;
2795
+ let I = O(d, M), L = _.get(A), { font: R, fill: z, border: ne, xf: B } = Vr(g, L?.styleIndex ?? 0), V = Yn(L, r, s, b, g.dxfs ?? []), re = V.fill ?? z, H = t.tableStyleMap.get(A), ie = g.dxfs ?? [], W = (e) => e == null ? void 0 : ie[e], ae = W(H?.wholeTableDxf), G = W(H?.headerRowDxf), se = W(H?.totalRowDxf), ce = W(H?.firstColumnDxf), le = W(H?.lastColumnDxf), ue = W(H?.stripeDxf), de = H?.isHeader && G?.fill?.fgColor ? G : H?.isTotals && se?.fill?.fgColor ? se : H?.isLastCol && le?.fill?.fgColor ? le : H?.isFirstCol && ce?.fill?.fgColor ? ce : ue?.fill?.fgColor ? ue : !H?.isHeader && !H?.isTotals && ae?.fill?.fgColor ? ae : void 0;
2761
2796
  if (Ar(e, re, I, c, M, P) || (H && de?.fill?.fgColor ? (e.fillStyle = C(de.fill.fgColor), e.fillRect(I, c, M, P)) : H && !H.isCustom && H.isBanded && (e.fillStyle = mi(H.accent), e.fillRect(I, c, M, P))), t.commentCells.has(A) && Nr(e, I, c, M, P), V.dataBar && V.dataBar.ratio > 0) {
2762
2797
  let t = Math.max(0, (M - 4) * V.dataBar.ratio);
2763
2798
  Tr(e, V.dataBar.color, I + 2, c + 2, t, P - 4, V.dataBar.gradient);
2764
2799
  }
2765
2800
  let pe = t.sparklineMap.get(A);
2766
- if (pe && tt(e, {
2801
+ if (pe && nt(e, {
2767
2802
  x: I,
2768
2803
  y: c,
2769
2804
  w: M,
@@ -2801,32 +2836,32 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2801
2836
  left: Zi(K.left, t)
2802
2837
  });
2803
2838
  }
2804
- let J = H ? fi(H, ae, G, s) : null, he = t.autoFilterCells.has(A), ge = () => {
2805
- if (J) {
2806
- if (J.kind === "dxf") qi(e, J.border, I, c, M, P, S);
2807
- else if (J.kind === "accent") {
2839
+ let he = H ? fi(H, ae, G, s) : null, ge = t.autoFilterCells.has(A), _e = () => {
2840
+ if (he) {
2841
+ if (he.kind === "dxf") qi(e, he.border, I, c, M, P, S);
2842
+ else if (he.kind === "accent") {
2808
2843
  let t = .5 / S;
2809
- if (e.strokeStyle = J.color, e.lineWidth = J.lineWidth, e.beginPath(), e.moveTo(I, c + P - t), e.lineTo(I + M, c + P - t), J.topEdge) {
2810
- let t = c + U(c, J.lineWidth, S);
2844
+ if (e.strokeStyle = he.color, e.lineWidth = he.lineWidth, e.beginPath(), e.moveTo(I, c + P - t), e.lineTo(I + M, c + P - t), he.topEdge) {
2845
+ let t = c + U(c, he.lineWidth, S);
2811
2846
  e.moveTo(I, t), e.lineTo(I + M, t);
2812
2847
  }
2813
2848
  e.stroke();
2814
2849
  }
2815
2850
  }
2816
- he && ui(e, I, c, D, P);
2851
+ ge && ui(e, I, c, D, P);
2817
2852
  };
2818
2853
  if (j) {
2819
2854
  let t = K;
2820
- te.push(() => qi(e, t, I, c, M, P, S)), ge();
2855
+ te.push(() => qi(e, t, I, c, M, P, S)), _e();
2821
2856
  } else {
2822
2857
  let t = K;
2823
2858
  N.push(() => {
2824
- qi(e, t, I, c, M, P, S), ge();
2859
+ qi(e, t, I, c, M, P, S), _e();
2825
2860
  });
2826
2861
  }
2827
2862
  if (!L) continue;
2828
- let _e = Xt(L, g, V.numFmt, t.worksheet.date1904), Y = _e.text;
2829
- !Y || Y === "0" && t.worksheet.showZeros === !1 || ee.push(() => {
2863
+ let ve = Zt(L, g, V.numFmt, t.worksheet.date1904), J = ve.text;
2864
+ !J || J === "0" && t.worksheet.showZeros === !1 || ee.push(() => {
2830
2865
  let n = H?.isHeader ? G : H?.isTotals ? se : H?.isLastCol && le ? le : H?.isFirstCol && ce ? ce : ue || (H ? ae : void 0), l = H ? H.isCustom ? !!n?.font?.bold : H.isHeader || H.isTotals : !1, u = R.bold || !!V.fontBold || l, d = R.italic || !!V.fontItalic, f = R.underline || !!V.fontUnderline, p = R.strike || !!V.fontStrike, m = u !== R.bold || d !== R.italic || f !== R.underline || p !== R.strike ? {
2831
2866
  ...R,
2832
2867
  bold: u,
@@ -2835,7 +2870,7 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2835
2870
  strike: p
2836
2871
  } : R;
2837
2872
  e.font = Ir(m, x);
2838
- let h = t.hyperlinkMap.get(A), b = n?.font?.color ?? null, T = h ? "#0563C1" : V.fontColor ?? _e.color ?? b ?? R.color;
2873
+ let h = t.hyperlinkMap.get(A), b = n?.font?.color ?? null, T = h ? "#0563C1" : V.fontColor ?? ve.color ?? b ?? R.color;
2839
2874
  e.fillStyle = T ? C(T) : "#000000";
2840
2875
  let E = L.value.type === "number", D = B.alignH ?? (E ? "right" : "left"), O = B.alignV ?? "bottom", k = B.indent ? Math.round(B.indent * 3 * t.mdw) : 0, ee = V.iconSet ? Math.max(8, Math.round(Math.min(M, P) * .55)) : 0, te = ee > 0 ? ee + 4 : 0, N = 3 + (D === "left" || !B.alignH ? k : 0) + te, F = M, z = a;
2841
2876
  if (D === "centerContinuous" && !j) for (let e = a + 1; e < w; e++) {
@@ -2845,9 +2880,9 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2845
2880
  if (n && n.value.type !== "empty" || Vr(g, n?.styleIndex ?? 0).xf.alignH !== "centerContinuous") break;
2846
2881
  F += i[e], z = e;
2847
2882
  }
2848
- let ne = t.rtl ? I - (F - M) : I, re = D === "centerContinuous" ? ne : I, ie = D === "centerContinuous" ? F : M, W = Y.includes("\n");
2883
+ let ne = t.rtl ? I - (F - M) : I, re = D === "centerContinuous" ? ne : I, ie = D === "centerContinuous" ? F : M, W = J.includes("\n");
2849
2884
  if (!j && !B.wrapText && !B.textRotation && !E && !W) {
2850
- let n = e.measureText(Y).width, s = D === "centerContinuous", c = s ? n + 6 : n + N + 3, l = s ? F : M;
2885
+ let n = e.measureText(J).width, s = D === "centerContinuous", c = s ? n + 6 : n + N + 3, l = s ? F : M;
2851
2886
  if (c > l) {
2852
2887
  let e = c - l, n = 0, u = 0;
2853
2888
  D === "right" ? u = e : D === "center" || s ? (u = e / 2, n = e / 2) : n = e;
@@ -2874,12 +2909,12 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2874
2909
  }
2875
2910
  }
2876
2911
  }
2877
- let de = Y, pe = 0;
2878
- if (D === "fill" && !E && Y.length > 0) {
2879
- let t = Math.max(1, M - 6), n = e.measureText(Y).width;
2912
+ let de = J, pe = 0;
2913
+ if (D === "fill" && !E && J.length > 0) {
2914
+ let t = Math.max(1, M - 6), n = e.measureText(J).width;
2880
2915
  if (n > 0 && n < t) {
2881
2916
  let e = Math.max(1, Math.floor(t / n));
2882
- de = Y.repeat(e);
2917
+ de = J.repeat(e);
2883
2918
  }
2884
2919
  }
2885
2920
  if (D === "distributed" || D === "justify" && !B.wrapText && !W) {
@@ -2888,24 +2923,24 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2888
2923
  }
2889
2924
  let K, q;
2890
2925
  D === "right" ? (K = I + M - 3, q = "right") : D === "center" ? (K = I + M / 2, q = "center") : D === "centerContinuous" ? (K = ne + F / 2, q = "center") : D === "distributed" || D === "justify" && !B.wrapText && !W ? (K = I + 3, q = "left") : (K = I + N, q = "left");
2891
- let me = B.textRotation ?? 0, J = me === 255, he = me > 0 && me !== 255;
2892
- if (V.iconSet && ee > 0 && (e.save(), e.beginPath(), e.rect(I, c, M, P), e.clip(), li(e, V.iconSet.name, V.iconSet.index, I + 2, c + (P - ee) / 2, ee), e.restore()), e.save(), e.beginPath(), e.rect(re, c, ie, P), e.clip(), J) {
2893
- let t = Fr(R.size, x, 1.1), n = [...Y].length * t, r = O === "top" ? c + 2 : O === "center" ? c + (P - n) / 2 : c + P - n - 2;
2926
+ let me = B.textRotation ?? 0, he = me === 255, ge = me > 0 && me !== 255;
2927
+ if (V.iconSet && ee > 0 && (e.save(), e.beginPath(), e.rect(I, c, M, P), e.clip(), li(e, V.iconSet.name, V.iconSet.index, I + 2, c + (P - ee) / 2, ee), e.restore()), e.save(), e.beginPath(), e.rect(re, c, ie, P), e.clip(), he) {
2928
+ let t = Fr(R.size, x, 1.1), n = [...J].length * t, r = O === "top" ? c + 2 : O === "center" ? c + (P - n) / 2 : c + P - n - 2;
2894
2929
  e.textAlign = "center", e.textBaseline = "top";
2895
- for (let n of Y) {
2930
+ for (let n of J) {
2896
2931
  let i = n.codePointAt(0) ?? 0, a = oe(i) && fe(e, i);
2897
2932
  lr(e, n, I + M / 2, r, t, a), r += t;
2898
2933
  }
2899
2934
  e.restore();
2900
2935
  return;
2901
2936
  }
2902
- if (he) {
2937
+ if (ge) {
2903
2938
  let t = me <= 90 ? -(me * Math.PI / 180) : (me - 90) * Math.PI / 180;
2904
- e.translate(I + M / 2, c + P / 2), e.rotate(t), e.textAlign = "center", e.textBaseline = "middle", e.fillText(Y, 0, 0), e.restore();
2939
+ e.translate(I + M / 2, c + P / 2), e.rotate(t), e.textAlign = "center", e.textBaseline = "middle", e.fillText(J, 0, 0), e.restore();
2905
2940
  return;
2906
2941
  }
2907
2942
  if (B.shrinkToFit) {
2908
- let t = e.measureText(Y).width, n = M - N - 3;
2943
+ let t = e.measureText(J).width, n = M - N - 3;
2909
2944
  if (t > n && t > 0) {
2910
2945
  let r = n / t, i = D === "right" ? I + M - 3 : D === "center" ? I + M / 2 : I + N;
2911
2946
  e.transform(r, 0, 0, 1, i * (1 - r), 0);
@@ -2915,10 +2950,10 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2915
2950
  e.letterSpacing = `${pe}px`;
2916
2951
  } catch {}
2917
2952
  try {
2918
- e.direction = Yn(B.readingOrder, Y) ? "rtl" : "ltr";
2953
+ e.direction = Xn(B.readingOrder, J) ? "rtl" : "ltr";
2919
2954
  } catch {}
2920
- let ge = L.value.type === "text" ? L.value.runs : void 0, ve = ge && ge.length > 0;
2921
- if (B.wrapText && ve) ii(e, ge, m, {
2955
+ let _e = L.value.type === "text" ? L.value.runs : void 0, ye = _e && _e.length > 0;
2956
+ if (B.wrapText && ye) ii(e, _e, m, {
2922
2957
  alignH: D,
2923
2958
  alignV: O,
2924
2959
  cx: I,
@@ -2932,7 +2967,7 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2932
2967
  fontColor: V.fontColor,
2933
2968
  readingOrder: B.readingOrder
2934
2969
  });
2935
- else if (B.wrapText) ri(e, Y, K, m, {
2970
+ else if (B.wrapText) ri(e, J, K, m, {
2936
2971
  alignH: D,
2937
2972
  alignV: O,
2938
2973
  cx: I,
@@ -2943,7 +2978,7 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2943
2978
  paddingX: 3,
2944
2979
  paddingY: 2
2945
2980
  }, x);
2946
- else if (ve) ni(e, ge, m, {
2981
+ else if (ye) ni(e, _e, m, {
2947
2982
  alignH: D,
2948
2983
  alignV: O,
2949
2984
  cx: I,
@@ -2965,7 +3000,7 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2965
3000
  size: m.size * .65
2966
3001
  } : m;
2967
3002
  t && (e.font = Ir(i, x));
2968
- let a = null, o = () => a ??= e.measureText(Y), s = () => {
3003
+ let a = null, o = () => a ??= e.measureText(J), s = () => {
2969
3004
  let e = Math.min(o().width, ie - N - 3);
2970
3005
  return {
2971
3006
  x: D === "right" ? I + M - 3 - e : D === "center" ? I + M / 2 - e / 2 : I + N,
@@ -2980,8 +3015,8 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2980
3015
  let { x: t, width: n } = s(), i = (O === "top" ? c + 2 + Math.round(l * .5) : O === "center" ? c + P / 2 : c + P - 2 - Math.round(l * .35)) + r, a = i + U(i, .5, S);
2981
3016
  e.save(), e.strokeStyle = T ? C(T) : "#000000", e.lineWidth = .5, e.beginPath(), e.moveTo(t, a), e.lineTo(t + n, a), e.stroke(), e.restore();
2982
3017
  }
2983
- if (Y.includes("\n")) {
2984
- let t = Y.split("\n"), n = Fr(R.size, x, 1.2, R.name ?? void 0), i = t.length * n, a;
3018
+ if (J.includes("\n")) {
3019
+ let t = J.split("\n"), n = Fr(R.size, x, 1.2, R.name ?? void 0), i = t.length * n, a;
2985
3020
  O === "top" ? (a = c + 2, e.textBaseline = "top") : O === "center" ? (a = c + (P - i) / 2, e.textBaseline = "top") : (a = c + P - i - 2, e.textBaseline = "top");
2986
3021
  for (let i = 0; i < t.length; i++) e.fillText(t[i], K, a + i * n + r);
2987
3022
  } else {
@@ -2999,17 +3034,17 @@ function hi(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h) {
2999
3034
  e.textBaseline = t, e.fillText(de, K, n + r);
3000
3035
  }
3001
3036
  }
3002
- let ye = L.value.type === "text" ? L.value.phoneticRuns : void 0;
3003
- if (L.showPhonetic && ye && ye.length > 0 && !Y.includes("\n")) {
3004
- let t = Ir(m, x), n = Rr(e, Y, t), r;
3037
+ let be = L.value.type === "text" ? L.value.phoneticRuns : void 0;
3038
+ if (L.showPhonetic && be && be.length > 0 && !J.includes("\n")) {
3039
+ let t = Ir(m, x), n = Rr(e, J, t), r;
3005
3040
  r = D === "right" ? I + M - 3 - n : D === "center" ? I + M / 2 - n / 2 : I + N;
3006
3041
  let i = T ? C(T) : "#000000";
3007
- Lr(e, ye, L.value.type === "text" ? L.value.phoneticPr : void 0, Y, t, g, r, c, x, i);
3042
+ Lr(e, be, L.value.type === "text" ? L.value.phoneticPr : void 0, J, t, g, r, c, x, i);
3008
3043
  }
3009
- e.restore(), Y && t.onTextRun && t.onTextRun({
3044
+ e.restore(), J && t.onTextRun && t.onTextRun({
3010
3045
  sheetName: t.worksheet.name,
3011
3046
  cellRef: cr(r, s),
3012
- text: Y,
3047
+ text: J,
3013
3048
  x: I,
3014
3049
  y: c,
3015
3050
  width: M,
@@ -3035,38 +3070,38 @@ function _i(e, t) {
3035
3070
  function vi(e) {
3036
3071
  let t = gi.get(e);
3037
3072
  if (t) return t;
3038
- let n = _i("worksheet-cell-index", "index-worksheet-cells"), r = Nn(e.rows, n), i = /* @__PURE__ */ new Map();
3073
+ let n = _i("worksheet-cell-index", "index-worksheet-cells"), r = Pn(e.rows, n), i = /* @__PURE__ */ new Map();
3039
3074
  for (let t of e.rows) {
3040
3075
  let e = t.cells.filter((e) => e.value.type !== "empty").map((e) => e.col).sort((e, t) => e - t);
3041
3076
  e.length > 0 && i.set(t.index, e);
3042
3077
  }
3043
3078
  let a = /* @__PURE__ */ new Set(), o = _i("worksheet-merge-skip-index", "expand-merged-cell-coordinates");
3044
3079
  for (let t of e.mergeCells ?? []) {
3045
- jn(t, o, 1);
3046
- for (let e = t.top; e <= t.bottom; e++) for (let n = t.left; n <= t.right; n++) e === t.top && n === t.left || Pn(a, `${e}:${n}`, o);
3080
+ Mn(t, o, 1);
3081
+ for (let e = t.top; e <= t.bottom; e++) for (let n = t.left; n <= t.right; n++) e === t.top && n === t.left || Fn(a, `${e}:${n}`, o);
3047
3082
  }
3048
3083
  let s = /* @__PURE__ */ new Set();
3049
3084
  if (e.autoFilter) {
3050
3085
  let t = e.autoFilter, n = _i("worksheet-auto-filter-index", "expand-auto-filter-coordinates");
3051
- jn({
3086
+ Mn({
3052
3087
  top: t.top,
3053
3088
  bottom: t.top,
3054
3089
  left: t.left,
3055
3090
  right: t.right
3056
3091
  }, n);
3057
- for (let e = t.left; e <= t.right; e++) Pn(s, `${t.top}:${e}`, n);
3092
+ for (let e = t.left; e <= t.right; e++) Fn(s, `${t.top}:${e}`, n);
3058
3093
  }
3059
3094
  let c = /* @__PURE__ */ new Map(), l = _i("worksheet-hyperlink-index", "index-hyperlink-coordinates");
3060
- for (let t of e.hyperlinks ?? []) t.url && Mn(c, `${t.row}:${t.col}`, t.url, l);
3095
+ for (let t of e.hyperlinks ?? []) t.url && Nn(c, `${t.row}:${t.col}`, t.url, l);
3061
3096
  let u = /* @__PURE__ */ new Set(), d = _i("worksheet-comment-index", "index-comment-coordinates");
3062
3097
  for (let t of e.commentRefs ?? []) {
3063
3098
  let e = Mr(t);
3064
- e && Pn(u, `${e.row}:${e.col}`, d);
3099
+ e && Fn(u, `${e.row}:${e.col}`, d);
3065
3100
  }
3066
3101
  let f = {
3067
3102
  cellMap: r,
3068
3103
  nonEmptyColsByRow: i,
3069
- cfContext: Bn(e, r),
3104
+ cfContext: Vn(e, r),
3070
3105
  mergeSkipSet: a,
3071
3106
  autoFilterCells: s,
3072
3107
  hyperlinkMap: c,
@@ -3099,7 +3134,7 @@ function Si(e, t, n, r, i, a, o, s, c, l, u, d, f, p, m, h, g) {
3099
3134
  let _ = d, v = f, y = /* @__PURE__ */ new Set(), b = (i, u, d, f) => {
3100
3135
  let p = `${i}:${u}`, _ = r.get(p);
3101
3136
  if (!_ || _.value.type === "empty" || s.has(p)) return !1;
3102
- let { font: v, xf: y } = Vr(n, _.styleIndex ?? 0), b = Jn(_, i, u, a, n.dxfs ?? []), x = Xt(_, n, b.numFmt, t.date1904).text;
3137
+ let { font: v, xf: y } = Vr(n, _.styleIndex ?? 0), b = Yn(_, i, u, a, n.dxfs ?? []), x = Zt(_, n, b.numFmt, t.date1904).text;
3103
3138
  if (!x || x === "0" && t.showZeros === !1 || _.value.type === "number" || y.wrapText || y.textRotation || x.includes("\n")) return !1;
3104
3139
  let S = o.get(p), C = S?.isHeader ? S.headerRowDxf : S?.isTotals ? S.totalRowDxf : S?.isLastCol && S.lastColumnDxf != null ? S.lastColumnDxf : S?.isFirstCol && S.firstColumnDxf != null ? S.firstColumnDxf : S?.stripeDxf ?? S?.wholeTableDxf, w = C == null ? void 0 : n.dxfs?.[C], T = !!S && !S.isCustom && (S.isHeader || S.isTotals), E = v.bold || !!b.fontBold || T || !!w?.font?.bold, D = v.italic || !!b.fontItalic;
3105
3140
  e.font = Ir(E !== v.bold || D !== v.italic ? {
@@ -3133,7 +3168,7 @@ function wi(e, t, n, r, i = {}) {
3133
3168
  let d = (e) => Math.round(e * o), f = d(50), p = d(22), { row: m, col: h, rows: g, cols: _ } = r, v = (i.scrollOffsetX ?? 0) * o, y = (i.scrollOffsetY ?? 0) * o, { col: b, row: x } = s.axesAtScale(o), S = b.bandsToCover(1, i.freezeCols ?? 0, Math.max(0, l - f)), C = x.bandsToCover(1, i.freezeRows ?? 0, Math.max(0, u - p)), w = C.at(-1)?.index ?? 0, T = S.at(-1)?.index ?? 0, E = S.map(({ index: e }) => e), D = C.map(({ index: e }) => e), O = S.map(({ size: e }) => e), k = C.map(({ size: e }) => e), A = O.reduce((e, t) => e + t, 0), j = k.reduce((e, t) => e + t, 0), M = b.bandsToCover(h, Math.min(16384, h + _ - 1)), ee = x.bandsToCover(m, Math.min(1048576, m + g - 1)), te = M.map(({ index: e }) => e), N = ee.map(({ index: e }) => e), P = M.map(({ size: e }) => e), F = ee.map(({ size: e }) => e), { cellMap: I, cfContext: L, mergeSkipSet: R, autoFilterCells: z, hyperlinkMap: ne, commentCells: B, tableStyleMap: V, sparklineMap: re, nonEmptyColsByRow: H } = vi(t), ie = /* @__PURE__ */ new Map(), W = _i("worksheet-merge-anchor-index", "index-merge-anchor-coordinates");
3134
3169
  for (let e of t.mergeCells ?? []) {
3135
3170
  let t = b.offsetOf(e.right + 1) - b.offsetOf(e.left), n = x.offsetOf(e.bottom + 1) - x.offsetOf(e.top);
3136
- Mn(ie, `${e.top}:${e.left}`, {
3171
+ Nn(ie, `${e.top}:${e.left}`, {
3137
3172
  totalW: t,
3138
3173
  totalH: n,
3139
3174
  right: e.right,
@@ -3169,9 +3204,9 @@ function wi(e, t, n, r, i = {}) {
3169
3204
  onTextRun: i.onTextRun,
3170
3205
  rtl: t.rightToLeft === !0,
3171
3206
  canvasW: l
3172
- }, fe = f, pe = p, K = fe + A, q = pe + j, me = Math.max(0, l - K), J = Math.max(0, u - q);
3173
- w > 0 && T > 0 && hi(e, de, 1, 1, O, k, E, D, 0, 0, fe, pe, fe, pe, A, j), w > 0 && hi(e, de, 1, oe.startCol, le, k, ce, D, ue, 0, K, pe, K, pe, me, j), T > 0 && hi(e, de, m, 1, O, F, E, N, 0, y, fe, q, fe, q, A, J), hi(e, de, m, oe.startCol, le, F, ce, N, ue, y, K, q, K, q, me, J), Ei(e, t, b, x, i.loadedImages, o, m, h, v, y, K, q, me, J, t.rightToLeft === !0, l), t.slicers && t.slicers.length > 0 && da(e, t, b, x, o, m, h, v, y, K, q, me, J, t.rightToLeft === !0, l), Ti(e, l, u, m, h, g, _, P, F, te, N, v, y, O, k, E, D, A, j, f, p, o, a, i.selectedRowRange ?? null, i.selectedColRange ?? null, t.rightToLeft === !0);
3174
- let he = t.rightToLeft === !0;
3207
+ }, fe = f, pe = p, K = fe + A, q = pe + j, me = Math.max(0, l - K), he = Math.max(0, u - q);
3208
+ w > 0 && T > 0 && hi(e, de, 1, 1, O, k, E, D, 0, 0, fe, pe, fe, pe, A, j), w > 0 && hi(e, de, 1, oe.startCol, le, k, ce, D, ue, 0, K, pe, K, pe, me, j), T > 0 && hi(e, de, m, 1, O, F, E, N, 0, y, fe, q, fe, q, A, he), hi(e, de, m, oe.startCol, le, F, ce, N, ue, y, K, q, K, q, me, he), Ei(e, t, b, x, i.loadedImages, o, m, h, v, y, K, q, me, he, t.rightToLeft === !0, l), t.slicers && t.slicers.length > 0 && da(e, t, b, x, o, m, h, v, y, K, q, me, he, t.rightToLeft === !0, l), Ti(e, l, u, m, h, g, _, P, F, te, N, v, y, O, k, E, D, A, j, f, p, o, a, i.selectedRowRange ?? null, i.selectedColRange ?? null, t.rightToLeft === !0);
3209
+ let ge = t.rightToLeft === !0;
3175
3210
  if (w > 0) {
3176
3211
  e.save(), e.strokeStyle = Sr, e.lineWidth = .5, e.beginPath();
3177
3212
  let t = q + U(q, .5, a);
@@ -3179,7 +3214,7 @@ function wi(e, t, n, r, i = {}) {
3179
3214
  }
3180
3215
  if (T > 0) {
3181
3216
  e.save(), e.strokeStyle = Sr, e.lineWidth = .5, e.beginPath();
3182
- let t = he ? l - K : K, n = t + U(t, .5, a);
3217
+ let t = ge ? l - K : K, n = t + U(t, .5, a);
3183
3218
  e.moveTo(n, p), e.lineTo(n, u), e.stroke(), e.restore();
3184
3219
  }
3185
3220
  }
@@ -3395,7 +3430,7 @@ async function zi(e, t) {
3395
3430
  if (n.length !== 0) {
3396
3431
  await t.loadMathJax();
3397
3432
  for (let e of n) if (!Mi.has(e.nodes)) try {
3398
- let n = await t.mathMLToSvg(T(e.nodes, e.display)), r = await Pi(Ii(Ve(n.svg, "#000000"), n.widthEm, n.ascentEm + n.descentEm));
3433
+ let n = await t.mathMLToSvg(T(e.nodes, e.display)), r = await Pi(Ii(He(n.svg, "#000000"), n.widthEm, n.ascentEm + n.descentEm));
3399
3434
  Mi.set(e.nodes, {
3400
3435
  img: r,
3401
3436
  widthEm: n.widthEm,
@@ -3846,7 +3881,7 @@ function ya(e, t, n, r, i) {
3846
3881
  return g(u, p, s.offsetOf(h.cols + 1), s.offsetOf(n.col), s.offsetOf(n.col + n.cols)) && g(d, m, c.offsetOf(h.rows + 1), c.offsetOf(n.row), c.offsetOf(n.row + n.rows));
3847
3882
  }
3848
3883
  async function ba(e, t, n, r, i = 0, a = 0, o = null, c = null, l) {
3849
- let u = t === "image/svg+xml", d = y(t, o, i, a), f = () => Be(e, t, c, r, {
3884
+ let u = t === "image/svg+xml", d = y(t, o, i, a), f = () => Ve(e, t, c, r, {
3850
3885
  widthPt: d.widthPt,
3851
3886
  heightPt: d.heightPt,
3852
3887
  offscreenFactory: l
@@ -3854,7 +3889,7 @@ async function ba(e, t, n, r, i = 0, a = 0, o = null, c = null, l) {
3854
3889
  svgImagePath: n,
3855
3890
  srcRect: o
3856
3891
  };
3857
- if (J(p)) try {
3892
+ if (he(p)) try {
3858
3893
  return await s(p.svgImagePath, r);
3859
3894
  } catch {
3860
3895
  return u ? s(e, r) : f();
@@ -4089,7 +4124,7 @@ var Ia = Symbol("retain-xlsx-viewer-fonts"), La = Symbol("release-xlsx-viewer-pr
4089
4124
  parsedWorkbook = null;
4090
4125
  sheetCache = /* @__PURE__ */ new Map();
4091
4126
  sheetLoads = /* @__PURE__ */ new Map();
4092
- rawParts = new ze({
4127
+ rawParts = new Be({
4093
4128
  maxEntries: 64,
4094
4129
  maxBytes: le
4095
4130
  });
@@ -4113,11 +4148,11 @@ var Ia = Symbol("retain-xlsx-viewer-fonts"), La = Symbol("release-xlsx-viewer-pr
4113
4148
  };
4114
4149
  resourceFailure = null;
4115
4150
  constructor(e, t, n) {
4116
- this.worker = e, this._mode = t, this.bridge = new Y(this.worker, {
4151
+ this.worker = e, this._mode = t, this.bridge = new J(this.worker, {
4117
4152
  correlate: (e) => "protocol" in e && e.protocol === "ooxml-pull-v1" ? e.requestId : "id" in e ? e.id : void 0,
4118
4153
  toError: (e) => "type" in e && e.type === "error" ? ne(e) : void 0
4119
4154
  });
4120
- let r = new URL(n ?? lt, location.href).href;
4155
+ let r = new URL(n ?? ut, location.href).href;
4121
4156
  this.bridge.post({
4122
4157
  type: "init",
4123
4158
  wasmUrl: r
@@ -4143,15 +4178,15 @@ var Ia = Symbol("retain-xlsx-viewer-fonts"), La = Symbol("release-xlsx-viewer-pr
4143
4178
  if (!e.ok) throw Error(`Failed to fetch: ${e.status} ${e.statusText}`);
4144
4179
  s = await e.arrayBuffer();
4145
4180
  } else s = t;
4146
- s = ve(await be(s, n.password));
4181
+ s = ye(await xe(s, n.password));
4147
4182
  let c = s === r;
4148
4183
  o.setSourceBytes(s.byteLength), o.checkpoint("container ready");
4149
- let l = a === "worker" ? (await import("./render-worker-host-Ivhx3KII.js")).createRenderWorker() : new ct(), u;
4184
+ let l = a === "worker" ? (await import("./render-worker-host-CtJo7hc9.js")).createRenderWorker() : new lt(), u;
4150
4185
  try {
4151
4186
  return u = new e(l, a, n.wasmUrl), u.metrics = o, await u._load(s, n, i.policy, (e) => o.observeUsage(e), c), o.checkpoint("workbook index ready"), o.succeed({ sheets: u.sheetCount }), u;
4152
4187
  } catch (e) {
4153
4188
  let t = u;
4154
- throw ye(l, t ? () => t.destroy() : void 0), e;
4189
+ throw be(l, t ? () => t.destroy() : void 0), e;
4155
4190
  }
4156
4191
  } catch (e) {
4157
4192
  throw o.fail(e), e;
@@ -4192,13 +4227,13 @@ var Ia = Symbol("retain-xlsx-viewer-fonts"), La = Symbol("release-xlsx-viewer-pr
4192
4227
  let t = this.retainedFontSets.get(e);
4193
4228
  if (t) t.refs++;
4194
4229
  else {
4195
- let n = Re(this.googleFontNames, Ta, e);
4230
+ let n = ze(this.googleFontNames, Ta, e);
4196
4231
  t = {
4197
4232
  refs: 1,
4198
4233
  faces: null,
4199
4234
  loading: n
4200
4235
  }, this.retainedFontSets.set(e, t), n.then((e) => {
4201
- t.faces = e, this.fontsDestroyed && Le(e);
4236
+ t.faces = e, this.fontsDestroyed && Re(e);
4202
4237
  });
4203
4238
  }
4204
4239
  await t.loading;
@@ -4207,7 +4242,7 @@ var Ia = Symbol("retain-xlsx-viewer-fonts"), La = Symbol("release-xlsx-viewer-pr
4207
4242
  if (n) return;
4208
4243
  n = !0;
4209
4244
  let r = this.retainedFontSets.get(e);
4210
- r === t && (r.refs--, !(r.refs > 0) && (this.retainedFontSets.delete(e), r.faces ? Le(r.faces) : r.loading.then(Le)));
4245
+ r === t && (r.refs--, !(r.refs > 0) && (this.retainedFontSets.delete(e), r.faces ? Re(r.faces) : r.loading.then(Re)));
4211
4246
  };
4212
4247
  }
4213
4248
  async [Ia](e) {
@@ -4223,7 +4258,7 @@ var Ia = Symbol("retain-xlsx-viewer-fonts"), La = Symbol("release-xlsx-viewer-pr
4223
4258
  return this.parsedWorkbook?.workbook.sheets.map((e) => e.tabColor ?? null) ?? [];
4224
4259
  }
4225
4260
  sheetVisibility(e) {
4226
- return ut(this.parsedWorkbook?.workbook.sheets ?? [], e);
4261
+ return dt(this.parsedWorkbook?.workbook.sheets ?? [], e);
4227
4262
  }
4228
4263
  isHidden(e) {
4229
4264
  return this.sheetVisibility(e) !== "visible";
@@ -4245,7 +4280,7 @@ var Ia = Symbol("retain-xlsx-viewer-fonts"), La = Symbol("release-xlsx-viewer-pr
4245
4280
  async getResourceMetrics() {
4246
4281
  let e = this.metrics;
4247
4282
  if (!e) throw Error("Workbook not loaded");
4248
- return _e(e, async (e) => (await this.bridge.request((e) => ({
4283
+ return ve(e, async (e) => (await this.bridge.request((e) => ({
4249
4284
  type: "resourceUsage",
4250
4285
  id: e
4251
4286
  }), void 0, { timeoutMs: e })).usage);
@@ -4265,25 +4300,25 @@ var Ia = Symbol("retain-xlsx-viewer-fonts"), La = Symbol("release-xlsx-viewer-pr
4265
4300
  try {
4266
4301
  for await (let s of n.stream(e, t)) {
4267
4302
  if (s.kind === "rows") {
4268
- let e = Ze(i, qe(s.rows));
4269
- Ye(e, "get-worksheet", void 0, s.usage), r.push(...s.rows), i = e;
4303
+ let e = Qe(i, Je(s.rows));
4304
+ Xe(e, "get-worksheet", void 0, s.usage), r.push(...s.rows), i = e;
4270
4305
  continue;
4271
4306
  }
4272
4307
  let e = s.worksheet;
4273
4308
  e.rows = e.parseError ? [] : r;
4274
- let t = et(e, e.parseError ? {
4309
+ let t = tt(e, e.parseError ? {
4275
4310
  rows: 0,
4276
4311
  cells: 0,
4277
4312
  ownedUtf8Bytes: 0
4278
4313
  } : i);
4279
- Ye(t, "get-worksheet", void 0, s.usage), Ke(t.jsonBytes, "get-worksheet", void 0, s.usage);
4280
- let n = Ge(this.retainedSheetUsage ?? {
4314
+ Xe(t, "get-worksheet", void 0, s.usage), qe(t.jsonBytes, "get-worksheet", void 0, s.usage);
4315
+ let n = Ke(this.retainedSheetUsage ?? {
4281
4316
  rows: 0,
4282
4317
  cells: 0,
4283
4318
  ownedUtf8Bytes: 0,
4284
4319
  jsonBytes: 0
4285
4320
  }, t);
4286
- Qe(n, "get-worksheet", void 0, s.usage), a = e, o = n;
4321
+ $e(n, "get-worksheet", void 0, s.usage), a = e, o = n;
4287
4322
  }
4288
4323
  if (!a || !o) throw Error(`XLSX worksheet ${e} did not produce a terminal model`);
4289
4324
  return this.retainedSheetUsage = o, this.sheetCache.set(e, a), a;
@@ -4294,9 +4329,9 @@ var Ia = Symbol("retain-xlsx-viewer-fonts"), La = Symbol("release-xlsx-viewer-pr
4294
4329
  ensureWorksheetPullClient() {
4295
4330
  if (this.worksheetPullClient) return this.worksheetPullClient;
4296
4331
  if (!this.parsedWorkbook) throw Error("Workbook not loaded");
4297
- return this.worksheetPullClient = new $e({
4332
+ return this.worksheetPullClient = new et({
4298
4333
  generation: this.generation || 1,
4299
- transport: this.bridge.transport(Xe),
4334
+ transport: this.bridge.transport(Ze),
4300
4335
  sharedStrings: this.parsedWorkbook.sharedStrings,
4301
4336
  timeoutMs: this.workerTimeoutMs,
4302
4337
  open: async (e, t, n, r) => {
@@ -4366,11 +4401,11 @@ var Ia = Symbol("retain-xlsx-viewer-fonts"), La = Symbol("release-xlsx-viewer-pr
4366
4401
  for (let e of i.rows) for (let t of e.cells) o.set(`${t.row}:${t.col}`, t);
4367
4402
  return ka(n, (e, t) => {
4368
4403
  let n = o.get(`${e}:${t}`);
4369
- return n ? Yt(n, a, null, i.date1904) : null;
4404
+ return n ? Xt(n, a, null, i.date1904) : null;
4370
4405
  });
4371
4406
  }
4372
4407
  cellText(e, t) {
4373
- return this.parsedWorkbook ? Yt(t, this.parsedWorkbook.styles, null, e.date1904) : "";
4408
+ return this.parsedWorkbook ? Xt(t, this.parsedWorkbook.styles, null, e.date1904) : "";
4374
4409
  }
4375
4410
  async renderViewport(e, t, n, r = {}) {
4376
4411
  if (this.assertResourceHealthy(), this._mode === "worker") throw Error("renderViewport(canvas) is unavailable in mode: 'worker'; use renderViewportToBitmap() and paint it via an ImageBitmapRenderingContext");
@@ -4439,7 +4474,7 @@ var Ia = Symbol("retain-xlsx-viewer-fonts"), La = Symbol("release-xlsx-viewer-pr
4439
4474
  }
4440
4475
  destroy() {
4441
4476
  this.generation = (this.generation ?? 1) + 1, this.worksheetPullClient?.cancelAll("closed").catch(() => void 0), this.worksheetPullClient = null, this.bridge.terminate(), this.parsedWorkbook = null, this.sheetCache.clear(), this.sheetLoads.clear(), this.fontsDestroyed = !0;
4442
- for (let e of this.retainedFontSets.values()) e.faces && Le(e.faces);
4477
+ for (let e of this.retainedFontSets.values()) e.faces && Re(e.faces);
4443
4478
  this.retainedFontSets.clear(), this.googleFontNames = [], V(this._fetchImage), c(this._fetchImage), this.rawParts.clear(), this.queuedImageLoads?.clear();
4444
4479
  }
4445
4480
  assertResourceHealthy() {
@@ -4616,7 +4651,7 @@ function Za(e, t, n, r, i) {
4616
4651
  for (let a = e.charts.length - 1; a >= 0; a--) {
4617
4652
  let o = e.charts[a], s = Va(o, r);
4618
4653
  if (!s || !Ua(s, r) || !Ha(n, s)) continue;
4619
- let c = we(o.chart, i);
4654
+ let c = Te(o.chart, i);
4620
4655
  return {
4621
4656
  ...Xa(e, t, "chart", a, o, c.text, c.truncated, c.maxTextCharacters),
4622
4657
  seriesCount: o.chart.series.length
@@ -4669,16 +4704,16 @@ function eo(e, t, n, r, i) {
4669
4704
  }
4670
4705
  return null;
4671
4706
  }
4672
- function to(e, t, n, r, i = Me) {
4707
+ function to(e, t, n, r, i = Ne) {
4673
4708
  if (!Number.isFinite(n.x) || !Number.isFinite(n.y)) throw RangeError("XLSX hit-test point must contain finite coordinates.");
4674
4709
  if (!Number.isFinite(i) || i < 0) throw RangeError("maxTextCharacters must be a finite non-negative number.");
4675
- let a = Math.min(Me, Math.floor(i)), o = Ga(e, r);
4710
+ let a = Math.min(Ne, Math.floor(i)), o = Ga(e, r);
4676
4711
  return Wa(n, o) ? Za(e, t, n, o, a) ?? $a(e, t, n, o, a) ?? eo(e, t, n, o, a) : null;
4677
4712
  }
4678
4713
  function no(e, t) {
4679
4714
  let n = t ?? e.maxTextCharacters;
4680
4715
  if (!Number.isFinite(n) || n < 0) throw RangeError("maxTextCharacters must be a finite non-negative number.");
4681
- let r = Math.min(Me, Math.floor(n)), i = e.text === void 0 ? void 0 : Ja(e.text, r), a = e.truncated || e.text !== void 0 && i.length < e.text.length;
4716
+ let r = Math.min(Ne, Math.floor(n)), i = e.text === void 0 ? void 0 : Ja(e.text, r), a = e.truncated || e.text !== void 0 && i.length < e.text.length;
4682
4717
  return {
4683
4718
  ...structuredClone(e),
4684
4719
  ...i === void 0 ? {} : { text: i },
@@ -4692,7 +4727,7 @@ function no(e, t) {
4692
4727
  //#region packages/xlsx/src/selection.ts
4693
4728
  var ro = 128, io = 1e4, ao = 8 * 1024 * 1024;
4694
4729
  function oo(e) {
4695
- return e.areas.reduce((e, t) => e + (t.kind === "cells" ? (t.bottom - t.top + 1) * (t.right - t.left + 1) : t.kind === "rows" ? (t.lastRow - t.firstRow + 1) * ar : t.kind === "columns" ? (t.lastColumn - t.firstColumn + 1) * ir : ir * ar), 0);
4730
+ return e.areas.reduce((e, t) => e + (t.kind === "cells" ? (t.bottom - t.top + 1) * (t.right - t.left + 1) : t.kind === "rows" ? (t.lastRow - t.firstRow + 1) * Q : t.kind === "columns" ? (t.lastColumn - t.firstColumn + 1) * ar : ar * Q), 0);
4696
4731
  }
4697
4732
  function so(e, t) {
4698
4733
  return Number.isInteger(e) && e >= 1 && e <= t;
@@ -4895,7 +4930,7 @@ var go = class {
4895
4930
  if (n !== this._generation) return [];
4896
4931
  let o = this._sheetName(a);
4897
4932
  for (let n of r) {
4898
- let r = Ee(ke([{ text: n.text }]), e, t);
4933
+ let r = De(Ae([{ text: n.text }]), e, t);
4899
4934
  for (let e of r) {
4900
4935
  let t = e.slices[0], r = n.text.slice(t.start, t.end);
4901
4936
  i.push({
@@ -4911,10 +4946,10 @@ var go = class {
4911
4946
  return n === this._generation ? (this._matches = i, this._active = -1, this.matches()) : [];
4912
4947
  }
4913
4948
  next() {
4914
- return this._active = Te(this._active, this._matches.length), this._activePublic();
4949
+ return this._active = Ee(this._active, this._matches.length), this._activePublic();
4915
4950
  }
4916
4951
  prev() {
4917
- return this._active = Ae(this._active, this._matches.length), this._activePublic();
4952
+ return this._active = je(this._active, this._matches.length), this._activePublic();
4918
4953
  }
4919
4954
  _activePublic() {
4920
4955
  let e = this._locationAt(this._active);
@@ -5097,7 +5132,7 @@ function ko(e, t) {
5097
5132
  //#endregion
5098
5133
  //#region packages/xlsx/src/internal/sheet-viewer-runtime.ts
5099
5134
  var Ao = class {
5100
- owner = new Se("SheetAcquisition");
5135
+ owner = new Ce("SheetAcquisition");
5101
5136
  get current() {
5102
5137
  return this.owner.current;
5103
5138
  }
@@ -5179,7 +5214,7 @@ var Mo = class {
5179
5214
  this.frameScheduler = typeof r.requestAnimationFrame == "function" && typeof r.cancelAnimationFrame == "function" ? {
5180
5215
  requestAnimationFrame: (e) => r.requestAnimationFrame(e),
5181
5216
  cancelAnimationFrame: (e) => r.cancelAnimationFrame(e)
5182
- } : null, this.staticDispatcher = e ? new De(e, t) : null;
5217
+ } : null, this.staticDispatcher = e ? new Oe(e, t) : null;
5183
5218
  }
5184
5219
  begin() {
5185
5220
  return this.staticDispatcher ? this.staticDispatcher.begin() : ++this.generation;
@@ -5725,7 +5760,7 @@ var xs = class {
5725
5760
  if (!r) throw Error("XlsxViewer requires a document with an active Window");
5726
5761
  this.hostWindow = r, this.opts = t, this._mountKind = n.kind, this._nativeScrollbars = t.showScrollbars ?? !0;
5727
5762
  let i = t[zo];
5728
- this._borrowed = i !== void 0, this._mode = n.kind === "sheet" ? n.mode : Oe("XlsxViewer", t.mode, i), this._hiddenSheetMode = t.hiddenSheetMode ?? "show", this.viewport = new Mo(t.cellScale ?? 1), this.wrapper = this.hostDocument.createElement("div"), this.wrapper.style.cssText = `position:relative;width:100%;height:100%;background:${n.kind === "composite" ? "#fff" : "transparent"};box-sizing:border-box;font-family:sans-serif;display:flex;flex-direction:column;`, this.gridRegion = this.hostDocument.createElement("div"), this.gridRegion.style.cssText = "position:relative;flex:1;min-height:0;overflow:hidden;";
5763
+ this._borrowed = i !== void 0, this._mode = n.kind === "sheet" ? n.mode : ke("XlsxViewer", t.mode, i), this._hiddenSheetMode = t.hiddenSheetMode ?? "show", this.viewport = new Mo(t.cellScale ?? 1), this.wrapper = this.hostDocument.createElement("div"), this.wrapper.style.cssText = `position:relative;width:100%;height:100%;background:${n.kind === "composite" ? "#fff" : "transparent"};box-sizing:border-box;font-family:sans-serif;display:flex;flex-direction:column;`, this.gridRegion = this.hostDocument.createElement("div"), this.gridRegion.style.cssText = "position:relative;flex:1;min-height:0;overflow:hidden;";
5729
5764
  let a = "position:absolute;top:0;left:0;z-index:3;display:none;background:#f5f5f5;";
5730
5765
  if (this.cornerGutter = this.hostDocument.createElement("canvas"), this.cornerGutter.style.cssText = a, this.cornerGutter.setAttribute("data-xlsx-outline", "corner"), this.colGutter = this.hostDocument.createElement("canvas"), this.colGutter.style.cssText = a, this.colGutter.setAttribute("data-xlsx-outline", "col"), this.rowGutter = this.hostDocument.createElement("canvas"), this.rowGutter.style.cssText = a, this.rowGutter.setAttribute("data-xlsx-outline", "row"), this.canvasArea = this.hostDocument.createElement("div"), this.canvasArea.style.cssText = "position:absolute;inset:0;overflow:hidden;", this.canvas = n.kind === "sheet" ? n.canvas : this.hostDocument.createElement("canvas"), this.canvas.style.cssText = "position:absolute;top:0;left:0;z-index:0;display:block;", this.renderDispatcher = new No(this.canvas, this._mode === "worker", this.hostWindow), this.scrollHost = this.hostDocument.createElement("div"), this.scrollHost.setAttribute("data-xlsx-viewport-input", n.kind), this.scrollHost.tabIndex = 0, this.scrollHost.style.cssText = `position:absolute;inset:0;overflow:${this._nativeScrollbars ? "auto" : "clip"};z-index:2;background:transparent;`, this.spacer = this.hostDocument.createElement("div"), this.spacer.style.cssText = "position:absolute;top:0;left:0;pointer-events:none;", this._nativeScrollbars && this.scrollHost.appendChild(this.spacer), this.surface = new Fo(this.canvas, this.canvasArea, this.scrollHost), this.overlayHost = new Io(this.canvasArea, this.canvas, this.scrollHost, {
5731
5766
  commentMaxWidth: Vo,
@@ -6128,10 +6163,10 @@ var xs = class {
6128
6163
  !n || !this.currentWorksheet || (this._scrollCellIntoView(n.row, n.col, t.align ?? "nearest"), await this.renderCurrentSheet(), this.updateSelectionOverlay(), this.updateFindOverlay(), this.emitViewportChange());
6129
6164
  }
6130
6165
  _stepSheet(e) {
6131
- return this._hiddenSheetMode === "skip" && this.wb ? He(this.currentSheet, e, (e) => this.wb.isHidden(e), this.sheetCount) : this.currentSheet + e;
6166
+ return this._hiddenSheetMode === "skip" && this.wb ? Ue(this.currentSheet, e, (e) => this.wb.isHidden(e), this.sheetCount) : this.currentSheet + e;
6132
6167
  }
6133
6168
  _initialSheet() {
6134
- return this._hiddenSheetMode === "skip" && this.wb ? Ue(0, (e) => this.wb.isHidden(e), this.sheetCount) : 0;
6169
+ return this._hiddenSheetMode === "skip" && this.wb ? We(0, (e) => this.wb.isHidden(e), this.sheetCount) : 0;
6135
6170
  }
6136
6171
  getCellAt(e, t) {
6137
6172
  if (this._destroyed) return null;
@@ -6239,7 +6274,7 @@ var xs = class {
6239
6274
  active: !1
6240
6275
  }]).sort((e, t) => e.row - t.row || Number(e.active) - Number(t.active)), h = /* @__PURE__ */ new Set(), g = 0, _ = [], v = [], y = !1, b = u || f.length > 0 ? [{
6241
6276
  first: 1,
6242
- last: ir
6277
+ last: ar
6243
6278
  }] : $o([...d, ...p.map((e) => ({
6244
6279
  first: e.top,
6245
6280
  last: e.bottom
@@ -6261,7 +6296,7 @@ var xs = class {
6261
6296
  }))));
6262
6297
  let o = u || es(d, r.index) ? [{
6263
6298
  first: 1,
6264
- last: ar
6299
+ last: Q
6265
6300
  }] : $o([...f, ..._]);
6266
6301
  for (let e of o) {
6267
6302
  let n = this.selectionContextCells.get(r);
@@ -6429,10 +6464,10 @@ var xs = class {
6429
6464
  let i = this.viewport.scale, a = this.canvasArea.getBoundingClientRect();
6430
6465
  if (n.kind === "col") {
6431
6466
  let t = this.screenX(e - a.left, 0), o = Math.max(as, Math.round((t - n.originScaled) / i));
6432
- r.colWidths[n.index] = er(o, n.mdw), this.recordSizeOverride("col", n.index);
6467
+ r.colWidths[n.index] = tr(o, n.mdw), this.recordSizeOverride("col", n.index);
6433
6468
  } else {
6434
6469
  let e = t - a.top, o = Math.max(as, Math.round((e - n.originScaled) / i));
6435
- r.rowHeights[n.index] = nr(o), this.recordSizeOverride("row", n.index);
6470
+ r.rowHeights[n.index] = rr(o), this.recordSizeOverride("row", n.index);
6436
6471
  }
6437
6472
  or.invalidate(r), this.updateSpacerSize(r), this.updateSelectionOverlay(), this.scheduleRender();
6438
6473
  }
@@ -6440,7 +6475,7 @@ var xs = class {
6440
6475
  this.opts.selectionColor = e, this.updateSelectionOverlay();
6441
6476
  }
6442
6477
  async setHiddenSheetMode(e) {
6443
- this._hiddenSheetMode = e, this.buildTabs(), e === "skip" && this.wb && this.wb.isHidden(this.currentSheet) ? await this.showSheet(Ue(this.currentSheet, (e) => this.wb.isHidden(e), this.sheetCount)) : this.updateTabActive(this.currentSheet);
6478
+ this._hiddenSheetMode = e, this.buildTabs(), e === "skip" && this.wb && this.wb.isHidden(this.currentSheet) ? await this.showSheet(We(this.currentSheet, (e) => this.wb.isHidden(e), this.sheetCount)) : this.updateTabActive(this.currentSheet);
6444
6479
  }
6445
6480
  get hiddenSheetMode() {
6446
6481
  return this._hiddenSheetMode;
@@ -6448,7 +6483,7 @@ var xs = class {
6448
6483
  get visibleSheetCount() {
6449
6484
  if (!this.wb) return 0;
6450
6485
  let e = this.wb;
6451
- return We((t) => e.isHidden(t), this.sheetCount);
6486
+ return Ge((t) => e.isHidden(t), this.sheetCount);
6452
6487
  }
6453
6488
  async copySelection() {
6454
6489
  this.assertOpen();
@@ -6550,12 +6585,12 @@ var xs = class {
6550
6585
  end: Math.min(o, i + d)
6551
6586
  }, {
6552
6587
  first: l.cols + 1,
6553
- last: ar,
6588
+ last: Q,
6554
6589
  start: Math.min(o, i + d),
6555
6590
  end: o
6556
6591
  }] : [{
6557
6592
  first: 1,
6558
- last: ar,
6593
+ last: Q,
6559
6594
  start: i,
6560
6595
  end: o
6561
6596
  }], m = l.rows > 0 ? [{
@@ -6565,12 +6600,12 @@ var xs = class {
6565
6600
  end: Math.min(s, a + f)
6566
6601
  }, {
6567
6602
  first: l.rows + 1,
6568
- last: ir,
6603
+ last: ar,
6569
6604
  start: Math.min(s, a + f),
6570
6605
  end: s
6571
6606
  }] : [{
6572
6607
  first: 1,
6573
- last: ir,
6608
+ last: ar,
6574
6609
  start: a,
6575
6610
  end: s
6576
6611
  }], h = this.opts.selectionColor ?? rs, { background: g } = hs(h), _ = /* @__PURE__ */ new Set(), v = [], y = [];
@@ -6588,14 +6623,14 @@ var xs = class {
6588
6623
  top: t.firstRow,
6589
6624
  bottom: t.lastRow,
6590
6625
  left: 1,
6591
- right: ar,
6626
+ right: Q,
6592
6627
  topEdge: !0,
6593
6628
  bottomEdge: !0,
6594
6629
  leftEdge: !1,
6595
6630
  rightEdge: !1
6596
6631
  } : t.kind === "columns" ? {
6597
6632
  top: 1,
6598
- bottom: ir,
6633
+ bottom: ar,
6599
6634
  left: t.firstColumn,
6600
6635
  right: t.lastColumn,
6601
6636
  topEdge: !1,
@@ -6604,9 +6639,9 @@ var xs = class {
6604
6639
  rightEdge: !0
6605
6640
  } : {
6606
6641
  top: 1,
6607
- bottom: ir,
6642
+ bottom: ar,
6608
6643
  left: 1,
6609
- right: ar,
6644
+ right: Q,
6610
6645
  topEdge: !1,
6611
6646
  bottomEdge: !1,
6612
6647
  leftEdge: !1,
@@ -7189,7 +7224,7 @@ var xs = class {
7189
7224
  this._pendingZoomAnchor = Number.isFinite(t) && Number.isFinite(n) ? {
7190
7225
  x: t,
7191
7226
  y: n
7192
- } : null, this.setScale(Fe(this.viewport.scale, e.deltaY));
7227
+ } : null, this.setScale(Ie(this.viewport.scale, e.deltaY));
7193
7228
  }, { passive: !1 }), this.surface.on("pointerleave", () => this.hideCommentPopup()), this.keydownHandler = (e) => {
7194
7229
  if ((e.ctrlKey || e.metaKey) && e.key === "c") {
7195
7230
  if (e.defaultPrevented || e.isComposing) return;
@@ -7281,8 +7316,8 @@ var xs = class {
7281
7316
  if (this.viewport.setScale(i), this.zoomSlider && (this.zoomSlider.value = String(this.zoomScaleToPos(i, t, n))), this.zoomLabel && (this.zoomLabel.textContent = `${r}%`), this.currentWorksheet) {
7282
7317
  let e = this.effectiveScrollLeft, t = this.viewportTop;
7283
7318
  if (this.layoutGutters(), this.updateSpacerSize(this.currentWorksheet), o) {
7284
- this.viewportTop = Ce(t, o.y, a, i, { maxScroll: this.maxScrollTop });
7285
- let n = this.screenX(o.x, 0), r = this.maxScrollLeft, s = Ce(e, n, a, i, { maxScroll: r });
7319
+ this.viewportTop = we(t, o.y, a, i, { maxScroll: this.maxScrollTop });
7320
+ let n = this.screenX(o.x, 0), r = this.maxScrollLeft, s = we(e, n, a, i, { maxScroll: r });
7286
7321
  this.setViewportLeft(s);
7287
7322
  } else this.setViewportLeft(e);
7288
7323
  }
@@ -7293,10 +7328,10 @@ var xs = class {
7293
7328
  return this.viewport.scale;
7294
7329
  }
7295
7330
  zoomIn() {
7296
- this.setScale(Ne(this.getScale()));
7331
+ this.setScale(Pe(this.getScale()));
7297
7332
  }
7298
7333
  zoomOut() {
7299
- this.setScale(Ie(this.getScale()));
7334
+ this.setScale(Le(this.getScale()));
7300
7335
  }
7301
7336
  fitWidth() {
7302
7337
  this._fit("width");
@@ -7307,7 +7342,7 @@ var xs = class {
7307
7342
  _fit(e) {
7308
7343
  let t = this.currentWorksheet;
7309
7344
  if (!t) return;
7310
- let { width: n, height: r } = this._naturalContentExtent(t), i = xe({
7345
+ let { width: n, height: r } = this._naturalContentExtent(t), i = Se({
7311
7346
  contentWidth: n,
7312
7347
  contentHeight: r,
7313
7348
  containerWidth: this.canvasArea.clientWidth,
@@ -7439,8 +7474,8 @@ var xs = class {
7439
7474
  }
7440
7475
  constructor(e, t = {}) {
7441
7476
  this.canvasElement = e;
7442
- let n = t[zo], r = Oe("XlsxSheetViewer", t.mode, n), i = e.getBoundingClientRect();
7443
- this.canvasMount = new je(e, {
7477
+ let n = t[zo], r = ke("XlsxSheetViewer", t.mode, n), i = e.getBoundingClientRect();
7478
+ this.canvasMount = new Me(e, {
7444
7479
  wrapperCssText: `position:relative;display:inline-block;vertical-align:top;overflow:hidden;width:${e.style.width || `${i.width || e.width}px`};height:${e.style.height || `${i.height || e.height}px`};`,
7445
7480
  restoreMode: "style-and-bitmap"
7446
7481
  }), this.engine = new xs(this.canvasMount.wrapper, {
@@ -7610,10 +7645,10 @@ var xs = class {
7610
7645
  XlsxSheetViewer: () => Cs,
7611
7646
  XlsxViewer: () => Ss,
7612
7647
  XlsxWorkbook: () => Ra,
7613
- autoResize: () => Pe,
7648
+ autoResize: () => Fe,
7614
7649
  isOoxmlDecodedImageLimitError: () => f,
7615
7650
  openExternalHyperlink: () => E,
7616
- resolveSharedStrings: () => Je
7651
+ resolveSharedStrings: () => Ye
7617
7652
  });
7618
7653
  //#endregion
7619
7654
  export { io as a, ro as i, Cs as n, ao as o, Ss as r, Ra as s, ws as t };