@sheetxl/studio-vanilla 0.4.11 → 0.4.13

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 (205) hide show
  1. package/browser/cjs/{DFspSkki779xN-Ey.cjs → -DkdmW3XP1ICRY25.cjs} +2 -2
  2. package/browser/cjs/B-KQs1Bf48nEucW7.cjs +7 -0
  3. package/browser/cjs/B1xnY7pDnbnNzknG.cjs +7 -0
  4. package/browser/cjs/B6A5w_aWHkigBc6j.cjs +7 -0
  5. package/browser/cjs/B9jxuOg1CXcmbi9J.cjs +110 -0
  6. package/browser/cjs/BAYjkr4LmsWRLoPr.cjs +7 -0
  7. package/browser/cjs/{DFtyXc7YFh9dIp74.cjs → BG2uV2RpxrfZyCuV.cjs} +1 -1
  8. package/browser/cjs/{DiBy6-IxLscyMW2y.cjs → BGCPG4Ip5ZijUQwi.cjs} +2 -2
  9. package/browser/cjs/BHTlBOQH-tPGoKgo.cjs +7 -0
  10. package/browser/cjs/BLBNzBvRVl9VLynf.cjs +7 -0
  11. package/browser/cjs/BLh6E7ER8mrM6vc_.cjs +7 -0
  12. package/browser/cjs/{CuTW2Pt-L5n-hNxV.cjs → BMaq_2S3IFrE5XeJ.cjs} +1 -1
  13. package/browser/cjs/BO7Pbclmywy-QCSV.cjs +13 -0
  14. package/browser/cjs/BPlthbyKkqCDjgxO.cjs +7 -0
  15. package/browser/cjs/BUGo0mXtBfFOmQXV.cjs +7 -0
  16. package/browser/cjs/BdHdXCz_K1djQgI4.cjs +7 -0
  17. package/browser/cjs/BfNkb1jDZkJf3wRA.cjs +7 -0
  18. package/browser/cjs/BfdQd2UEOlOc5iF3.cjs +7 -0
  19. package/browser/cjs/Bi9KvObgq_kJ_pjC.cjs +7 -0
  20. package/browser/cjs/BjPpJjnABDd3_WOZ.cjs +7 -0
  21. package/browser/cjs/BsSNzyN8kOGCKzso.cjs +7 -0
  22. package/browser/cjs/BtCcoaKKb8ZDnliG.cjs +7 -0
  23. package/browser/cjs/{DrlS1oz9Nea8Pm3j.cjs → BwHquG4sSd7OJjxz.cjs} +2 -2
  24. package/browser/cjs/{CjZbhk41S1qO_74G.cjs → BywNBbTVRYbgRbNI.cjs} +1 -1
  25. package/browser/cjs/C04Qr5P8uyQ6Vcml.cjs +7 -0
  26. package/browser/cjs/C42ZEPRmW9Wcd7tI.cjs +7 -0
  27. package/browser/cjs/{T4SHYo66xDT3l9JN.cjs → CBpt1PBR1VfBegko.cjs} +2 -2
  28. package/browser/cjs/CED8Az5C8GWF7pUT.cjs +7 -0
  29. package/browser/cjs/{BPTHTRDvNOVkUJGa.cjs → CbD4Wa5QLTdRCYcz.cjs} +2 -2
  30. package/browser/cjs/{C5FXOMLhAu_KTjVe.cjs → CbILz9Skl6lWf6yR.cjs} +1 -1
  31. package/browser/cjs/CoFQQqIzuvS9PM77.cjs +7 -0
  32. package/browser/cjs/{BlSFY6zLlebuejdV.cjs → CpDNo2Lhwr5ZHECs.cjs} +2 -2
  33. package/browser/cjs/{D3iOk-Q2tRdUeTcn.cjs → CsamfGfFsItvSgo_.cjs} +1 -1
  34. package/browser/cjs/Cx3kn5gBsQ-1bORi.cjs +7 -0
  35. package/browser/cjs/CxLvGnG44-qNI36G.cjs +7 -0
  36. package/browser/cjs/D-xyWit7jxctQCpR.cjs +7 -0
  37. package/browser/cjs/D4XQsK7d7DRctaOO.cjs +7 -0
  38. package/browser/cjs/D9rVEA1BdB0JZwhE.cjs +7 -0
  39. package/browser/cjs/DES2NmIRVZg-HXgs.cjs +7 -0
  40. package/browser/cjs/{BshvMtUxTJHj3JQN.cjs → DFxeLNhACFIHb0nv.cjs} +2 -2
  41. package/browser/cjs/DIv1SrLYeyVwcaxE.cjs +7 -0
  42. package/browser/cjs/DJ6L43osbaMzEV5K.cjs +7 -0
  43. package/browser/cjs/DMjLN_HDktNzzUB8.cjs +7 -0
  44. package/browser/cjs/DVPfPZCFjmYu3xyn.cjs +7 -0
  45. package/browser/cjs/DhSlaiQXxEOVtZkA.cjs +7 -0
  46. package/browser/cjs/{Dx-jp_LJxWbAScyA.cjs → Dh_dFnagz7dMZlGh.cjs} +1 -1
  47. package/browser/cjs/DpF6vgGka2d-RKkb.cjs +10 -0
  48. package/browser/cjs/{C7EZCTczsC-gkRcq.cjs → DtY0Jzlwnr_YKnV4.cjs} +2 -2
  49. package/browser/cjs/DwyyFI1Ix0uc0Qoz.cjs +7 -0
  50. package/browser/cjs/Dy5_viRzFls9rOzN.cjs +7 -0
  51. package/browser/cjs/GkINjQ8Te3GKi2mx.cjs +7 -0
  52. package/browser/cjs/aN3KCqswA1SdJIMq.cjs +7 -0
  53. package/browser/cjs/{BuWtGFX0HiBezGjw.cjs → hLJbgylpETByV4wc.cjs} +2 -2
  54. package/browser/cjs/index.cjs +2 -2
  55. package/browser/cjs/qumqKlVHFx89iLeu.cjs +7 -0
  56. package/browser/cjs/{BAyEOOtO-9sHQQRW.cjs → rKZjTYQ0WpTriIv6.cjs} +2 -2
  57. package/browser/cjs/xjKotAOVt3JH36U7.cjs +7 -0
  58. package/browser/cjs/ymbPxio09Fw7I2BW.cjs +7 -0
  59. package/browser/esm/2P5dQT7wZToOh-n9.mjs +7 -0
  60. package/browser/esm/4GgcUVhUmQmiv9Ha.mjs +110 -0
  61. package/browser/esm/7_x68v6PpvRDox_Z.mjs +7 -0
  62. package/browser/esm/9icgSuuzXq6mlgM8.mjs +7 -0
  63. package/browser/esm/B354iAatN9y9AIIP.mjs +7 -0
  64. package/browser/esm/B5EVyoxm3aSlAnxN.mjs +7 -0
  65. package/browser/esm/BD8rE7MUxuHXsdcf.mjs +7 -0
  66. package/browser/esm/BGFWI1a1PmU8_hCE.mjs +7 -0
  67. package/browser/esm/BI6JAQCQx1V0F2aC.mjs +7 -0
  68. package/browser/esm/BIYg30d_9HaluFFz.mjs +7 -0
  69. package/browser/esm/BKL-uyBp_OE47lXd.mjs +7 -0
  70. package/browser/esm/BMwJCtLAYUW8wExX.mjs +13 -0
  71. package/browser/esm/BNOfK-lGWF2S8vQE.mjs +7 -0
  72. package/browser/esm/Ba433v6lQUMtECiY.mjs +7 -0
  73. package/browser/esm/BbZWfDW2LUyjqUDy.mjs +7 -0
  74. package/browser/esm/C238uBmZN1XXqMUb.mjs +7 -0
  75. package/browser/esm/C34whwRkHO0lhq4-.mjs +7 -0
  76. package/browser/esm/C6FEpAqSZoW5Hgte.mjs +7 -0
  77. package/browser/esm/COlW5ULL29SUKN1Z.mjs +7 -0
  78. package/browser/esm/CRyxOj2xPj9qe9LK.mjs +7 -0
  79. package/browser/esm/CVeyOpbAhaBhDRye.mjs +7 -0
  80. package/browser/esm/CVyVvtlJuCTn4MDh.mjs +7 -0
  81. package/browser/esm/CapeIfjWq-_BHMlE.mjs +7 -0
  82. package/browser/esm/CcQqGNgK2CsgNtuD.mjs +7 -0
  83. package/browser/esm/CdZSxrk3k1Lx6G8W.mjs +7 -0
  84. package/browser/esm/CdchvB_wAbv_6Whw.mjs +7 -0
  85. package/browser/esm/{Cc_VWd0wF5-39LsI.mjs → Cf8eDl3Tu5NAWWwG.mjs} +1 -1
  86. package/browser/esm/{BXUGsC1Mo3FP8vnW.mjs → Cfq9tttQlsKvfaCr.mjs} +2 -2
  87. package/browser/esm/{BDVJ7eOPpW5FnEAP.mjs → ClR6uLJoM-xKVYEc.mjs} +1 -1
  88. package/browser/esm/Cnl_e-EYkZ3CLbi2.mjs +7 -0
  89. package/browser/esm/CtRS2ZCPF7IH_mXe.mjs +7 -0
  90. package/browser/esm/{BUSR_OK5Qi6hRPfw.mjs → CuV-bwi1vcXAqFUY.mjs} +1 -1
  91. package/browser/esm/CwVE0qelO_xgf-l1.mjs +7 -0
  92. package/browser/esm/{CFFC0SNc24a0Dxnh.mjs → D1Dzlta8ZVy08ng6.mjs} +2 -2
  93. package/browser/esm/D1TjRQiHLWhpl-dl.mjs +7 -0
  94. package/browser/esm/D8BJ-y3ulgO_ezrj.mjs +10 -0
  95. package/browser/esm/{BlGoi1_x9rUMpWMd.mjs → DTDXNEbHVnnZONNL.mjs} +1 -1
  96. package/browser/esm/DTWfi8Dl-c2s5moT.mjs +7 -0
  97. package/browser/esm/DYVBXcu1r5KRLB-1.mjs +7 -0
  98. package/browser/esm/{BGpv6Kq7eBlJy43T.mjs → DZjWyWMvr2XHQrBg.mjs} +1 -1
  99. package/browser/esm/DhHK4QmASvgAq9Xy.mjs +7 -0
  100. package/browser/esm/{PS0cqYnlMVEGOQpI.mjs → DoFV2S6Su86IN5Ul.mjs} +2 -2
  101. package/browser/esm/Dq3ybkgattcCsF_4.mjs +7 -0
  102. package/browser/esm/DqWoZ4TjweoJWX3o.mjs +7 -0
  103. package/browser/esm/DtXxHirBm16ldE1l.mjs +7 -0
  104. package/browser/esm/DtuWZG6c_8vKRSdr.mjs +7 -0
  105. package/browser/esm/FBG8XXdIMd9PfUIo.mjs +7 -0
  106. package/browser/esm/Nh7JiwvF01PblHQ0.mjs +7 -0
  107. package/browser/esm/PVYiH9vBQM6rqXI4.mjs +7 -0
  108. package/browser/esm/U5-LDZQ0qkJ2Y-p8.mjs +7 -0
  109. package/browser/esm/XhQDWZu47oe6bwHh.mjs +7 -0
  110. package/browser/esm/_BjU6TtI-mQfFpfy.mjs +7 -0
  111. package/browser/esm/{Cq8D_M0jeHLcnRjg.mjs → gOUfyCw957TzcbNB.mjs} +1 -1
  112. package/browser/esm/index.mjs +2 -2
  113. package/browser/esm/lmkbfs9sNc7f0oe5.mjs +7 -0
  114. package/browser/esm/{tFhROdVSw9KLQfUN.mjs → naa0kcRwxHEYGaQB.mjs} +2 -2
  115. package/browser/esm/qxOkQutRxmAi1vRh.mjs +7 -0
  116. package/browser/esm/tMSro0g2GM5BBTIH.mjs +7 -0
  117. package/cdn/assets/0e9wDKSn4SFxSmP5.js +27 -0
  118. package/cdn/assets/0j_nQmV1Bb0lJ6sB.js +472 -0
  119. package/cdn/assets/2mxiQm6dELsqQoX7.js +5624 -0
  120. package/cdn/assets/5XdpCWQ6AcxZ6oY1.js +10 -0
  121. package/cdn/assets/6JtXguBKwGj6dqfy.js +1577 -0
  122. package/cdn/assets/8U2WVdbZHYCBnd9L.js +23 -0
  123. package/cdn/assets/9-cIcj6CRJx5HTn9.js +10 -0
  124. package/cdn/assets/B-kFRtzNNkf4_SiP.js +1701 -0
  125. package/cdn/assets/B1Iys8a964LGNZKf.js +10 -0
  126. package/cdn/assets/B2RAJJJFkcaWUfUW.js +21 -0
  127. package/cdn/assets/BAzGoI9gE2G3F3on.js +637 -0
  128. package/cdn/assets/BBJxLS-wB_nXRnI2.js +10 -0
  129. package/cdn/assets/BDE7FUo2oiivrvBL.js +43 -0
  130. package/cdn/assets/BL6TUDSeou6wPejW.js +10 -0
  131. package/cdn/assets/BLqaorJ5Wl-1YOoy.js +3875 -0
  132. package/cdn/assets/BMiA9p1uOrwnooVT.js +10 -0
  133. package/cdn/assets/BNh9nSR83reiVMKt.js +90 -0
  134. package/cdn/assets/BQON-ToGsIBPrPkM.js +1371 -0
  135. package/cdn/assets/BUwNyHytF9St68tJ.js +10 -0
  136. package/cdn/assets/BVYDmdUGWvMG5gNK.js +241 -0
  137. package/cdn/assets/B_2bXmyji3Dr7LRM.js +50224 -0
  138. package/cdn/assets/BciokME96sykArSM.js +10 -0
  139. package/cdn/assets/BgnlshX157Ob6RLs.js +21 -0
  140. package/cdn/assets/BlYoycYtR-sUp0iC.js +27 -0
  141. package/cdn/assets/Bsa9-Itkf_SdDBM9.js +6481 -0
  142. package/cdn/assets/BwpBFv8Ks2ka07ch.js +10 -0
  143. package/cdn/assets/BxblmHGC7YxZcuak.js +10 -0
  144. package/cdn/assets/C-Z8wvIy20kJ7R-k.js +10 -0
  145. package/cdn/assets/C3EFzvmp0DcC_HAx.js +10 -0
  146. package/cdn/assets/C4vStn7wNlvrxdsp.js +10 -0
  147. package/cdn/assets/C5q0qaKi2eeDgoO8.js +10 -0
  148. package/cdn/assets/C9eQW5GKgPRmKKgJ.js +29 -0
  149. package/cdn/assets/CHTspRZD2v_dU_eV.js +22 -0
  150. package/cdn/assets/CKA4s2hlzSnrdWSD.js +10 -0
  151. package/cdn/assets/CMBDD1Mjde6UL5ep.js +84 -0
  152. package/cdn/assets/CR01MBraUPYPpwy4.js +36 -0
  153. package/cdn/assets/CT0d1P-Aav62lUvV.js +10 -0
  154. package/cdn/assets/CV8UjJPDVplXjK1E.js +49 -0
  155. package/cdn/assets/CrLrvmlJhYpNpXqR.js +10 -0
  156. package/cdn/assets/CsorxCiOoe7qX9j1.js +10 -0
  157. package/cdn/assets/CuNqTH3P8mCglRiz.js +10 -0
  158. package/cdn/assets/CwdMjMPFdIs8SAV0.js +1358 -0
  159. package/cdn/assets/D-5VYBO5_VEh6fEW.js +24 -0
  160. package/cdn/assets/DD3csu4pddGtMp3n.js +1468 -0
  161. package/cdn/assets/DFHruAftzuzBZ71r.js +393 -0
  162. package/cdn/assets/DHydjLSnijEgtpyU.js +10 -0
  163. package/cdn/assets/DPQqTIMsRLhMxPIy.js +820 -0
  164. package/cdn/assets/DUtu7r6CzW4dtW3E.js +50 -0
  165. package/cdn/assets/DXHirQMr483hJBil.js +58 -0
  166. package/cdn/assets/DXtbonLk2ESfF4Dh.js +10 -0
  167. package/cdn/assets/Dr5X-ng9wbwUWVr4.js +41 -0
  168. package/cdn/assets/DvFNLgeMJ9LdQROu.js +149 -0
  169. package/cdn/assets/Dvj7UEckqOBrgs9i.js +3947 -0
  170. package/cdn/assets/F6zW9Vj410C4yRVG.js +424 -0
  171. package/cdn/assets/Gz4u4ewyWfB-Pf-a.js +1703 -0
  172. package/cdn/assets/KDGtuIzSpkf1vsmH.js +10 -0
  173. package/cdn/assets/KtKlo5mM4kTTfFgi.js +46 -0
  174. package/cdn/assets/N3pWBoccPrTedAw-.js +12 -0
  175. package/cdn/assets/NTINjW8JjyZudT8s.js +13449 -0
  176. package/cdn/assets/R9RwlorPWfftoboH.js +2373 -0
  177. package/cdn/assets/Xwyp21e7L5fTeb_y.js +423 -0
  178. package/cdn/assets/XysyS9rk9tFdbzZh.js +2183 -0
  179. package/cdn/assets/f3_QXO8z0p-q4nJo.js +46 -0
  180. package/cdn/assets/quOP5QFyTT9soNIl.js +12 -0
  181. package/cdn/index.js +41 -37
  182. package/cdn/loader.js +1 -1
  183. package/package.json +3 -5
  184. package/browser/cjs/B0rdyyttE2Aibsag.cjs +0 -7
  185. package/browser/cjs/B2e7dDI-zKoqXpIW.cjs +0 -107
  186. package/browser/cjs/BplA5pDzOJpfTZuA.cjs +0 -7
  187. package/browser/cjs/CFcjX5-nVsgzdZ4F.cjs +0 -7
  188. package/browser/cjs/Db_Ew1r6yOMYylvA.cjs +0 -7
  189. package/browser/cjs/DgBn3aW39yjgm0X_.cjs +0 -7
  190. package/browser/cjs/SzxJv7OUs5ojl8gx.cjs +0 -7
  191. package/browser/cjs/vfUix5Di0Ro8tEID.cjs +0 -7
  192. package/browser/esm/B5kkStdEkTczERyM.mjs +0 -7
  193. package/browser/esm/B905wKzTtod-jbsD.mjs +0 -7
  194. package/browser/esm/BALnKy2Fp7fyk-lc.mjs +0 -7
  195. package/browser/esm/Bo_ZPRrOQrqOVHAF.mjs +0 -7
  196. package/browser/esm/BuURCm92KsyGHG9e.mjs +0 -7
  197. package/browser/esm/CGZ5MX7afzMxDkCe.mjs +0 -7
  198. package/browser/esm/CzmNwV9tfFYUp_gS.mjs +0 -7
  199. package/browser/esm/De6RPxc4p_jXLlT5.mjs +0 -7
  200. package/browser/esm/DlVZFM9ZR5jGyG0_.mjs +0 -7
  201. package/browser/esm/DqXxZP6yKF4U1YfY.mjs +0 -7
  202. package/browser/esm/DtmE60AvstK9u0Ta.mjs +0 -107
  203. package/browser/esm/Dz2OVgq3kxi1TkfX.mjs +0 -7
  204. package/browser/esm/QBGUD1XS5_pysBLL.mjs +0 -7
  205. package/browser/esm/uGDCdtqxjqRCo4Xn.mjs +0 -7
@@ -0,0 +1,46 @@
1
+ import { I as y, f as C } from "./B_2bXmyji3Dr7LRM.js";
2
+ /**
3
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
4
+ *
5
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
6
+ * License: The license can be found at https://www.sheetxl.com/license.
7
+ */
8
+ const k = async (a, p) => {
9
+ const { trimLeadingBlankRow: i = !0, trimLeadingBlankColumn: f = !0, excludeHidden: h = !1, sheetKey: o = null, papaParseConfig: m = {} } = p || {}, u = await import("./Xwyp21e7L5fTeb_y.js").then((s) => s.p);
10
+ if (!a) throw new Error("workbook must be specified");
11
+ let t = null;
12
+ if (o === null ? t = a.getSelectedSheet() : typeof o == "number" ? t = a.getSheets().search()[o] : typeof o == "string" && (t = a.getSheets().getByName(o)), !t) throw new Error("invalid sheetKey specified");
13
+ let c = null;
14
+ const d = [];
15
+ let e = null, n = t.getUsedRange({ excludeHidden: h });
16
+ if (!n) throw new Error("Nothing to export");
17
+ if (!i || !f) {
18
+ const s = i ? n.getRowStart() : 0, l = f ? n.getColumnStart() : 0;
19
+ n = n.getOffsetTo(s, l);
20
+ }
21
+ n.forEach((s, l) => {
22
+ const w = l.getCoords(), x = l.getCell();
23
+ c !== w.rowIndex && (e && d.push(e), e = [], c = w.rowIndex);
24
+ const S = x.toTextUnformatted() ?? "";
25
+ e.push(S);
26
+ }, { includeEmpty: !0, address: null }), e && d.push(e);
27
+ const r = { ...m }, g = u.unparse(d, r);
28
+ return new TextEncoder().encode(g).buffer;
29
+ }, b = async (a, p) => {
30
+ const { papaParseConfig: i, setValuesOptions: f, createWorkbookOptions: h } = p ?? {}, o = await import("./Xwyp21e7L5fTeb_y.js").then((r) => r.p), m = new TextDecoder().decode(a);
31
+ let u = -1;
32
+ const t = new y(h), c = t.getSelectedSheet().getEntireRange().startIncrementalUpdates({ orientation: C.Orientation.Row }), d = p?.onProgress;
33
+ let e = 0;
34
+ const n = { ...i, transform: (r, g) => {
35
+ i?.transform && (r = i.transform(r, g));
36
+ const s = g;
37
+ s === 0 && u++;
38
+ let l = r ?? "";
39
+ return c.pushAt(u, s, l), e++, e % 1e5 == 0 && d?.(e), r;
40
+ } };
41
+ return o.parse(m, n).data, c.apply({ textParser: !0, ...f }), t;
42
+ };
43
+ export {
44
+ b as fromBufferCSV,
45
+ k as toBufferCSV
46
+ };
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
+ *
4
+ * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
+ * License: The license can be found at https://www.sheetxl.com/license.
6
+ */
7
+ function e(t) {
8
+ return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
9
+ }
10
+ export {
11
+ e as g
12
+ };
package/cdn/index.js CHANGED
@@ -1,19 +1,19 @@
1
1
  /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.11
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
3
  *
4
4
  * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
5
  * License: The license can be found at https://www.sheetxl.com/license.
6
6
  */
7
- const S = /* @__PURE__ */ new Map(), k = (e, o = {}) => {
8
- const { message: t, icon: r, customElement: p, hide: m = !1, className: a, cssVars: u = {} } = o;
7
+ const S = /* @__PURE__ */ new Map(), k = (e, n = {}) => {
8
+ const { message: t, icon: r, customElement: p, hide: m = !1, className: a, cssVars: f = {} } = n;
9
9
  if (m) return;
10
10
  const l = typeof e == "string" ? document.querySelector(e) : e;
11
11
  if (!l) return void console.warn(`Element with selector "${e}" not found for panel.`);
12
- let n;
13
- if (h(e), p) n = p;
12
+ let o;
13
+ if (h(e), p) o = p;
14
14
  else {
15
- n = document.createElement("div"), n.className = a ? `sheetxl-panel ${a}` : "sheetxl-panel";
16
- const f = Object.entries(u).map(([s, y]) => `--sheetxl-panel-${s}: ${y};`).join(" "), g = `
15
+ o = document.createElement("div"), o.className = a ? `sheetxl-panel ${a}` : "sheetxl-panel";
16
+ const u = Object.entries(f).map(([s, y]) => `--sheetxl-panel-${s}: ${y};`).join(" "), g = `
17
17
  @keyframes sheetxl-spin {
18
18
  from { transform: rotate(0deg); }
19
19
  to { transform: rotate(360deg); }
@@ -81,21 +81,21 @@ const S = /* @__PURE__ */ new Map(), k = (e, o = {}) => {
81
81
  margin: 0;
82
82
  }
83
83
  `, d = document.createElement("style");
84
- if (d.textContent = g, n.appendChild(d), r) {
84
+ if (d.textContent = g, o.appendChild(d), r) {
85
85
  const s = document.createElement("div");
86
- s.className = "sheetxl-icon", typeof r == "string" ? s.innerHTML = r : r instanceof HTMLElement && s.appendChild(r), n.appendChild(s);
86
+ s.className = "sheetxl-icon", typeof r == "string" ? s.innerHTML = r : r instanceof HTMLElement && s.appendChild(r), o.appendChild(s);
87
87
  }
88
88
  if (t) {
89
89
  const s = document.createElement("div");
90
- s.className = "sheetxl-message", s.textContent = t, n.appendChild(s);
90
+ s.className = "sheetxl-message", s.textContent = t, o.appendChild(s);
91
91
  }
92
- f && (n.style.cssText += f), window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches && n.classList.add("dark");
92
+ u && (o.style.cssText += u), window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches && o.classList.add("dark");
93
93
  }
94
- window.getComputedStyle(l).position === "static" && (l.style.position = "relative"), l.appendChild(n), S.set(e, n);
94
+ window.getComputedStyle(l).position === "static" && (l.style.position = "relative"), l.appendChild(o), S.set(e, o);
95
95
  }, h = (e) => {
96
- const o = S.get(e);
97
- o && o.parentNode && (o.parentNode.removeChild(o), S.delete(e));
98
- }, L = (e, o = {}) => {
96
+ const n = S.get(e);
97
+ n && n.parentNode && (n.parentNode.removeChild(n), S.delete(e));
98
+ }, L = (e, n = {}) => {
99
99
  k(e, { icon: `
100
100
  <svg width="24" height="24" viewBox="0 0 24 24" style="animation: sheetxl-spin 1s linear infinite;">
101
101
  <circle cx="12" cy="12" r="10" fill="none" stroke="currentColor" stroke-width="2" stroke-dasharray="31.416" stroke-dashoffset="31.416">
@@ -103,61 +103,65 @@ const S = /* @__PURE__ */ new Map(), k = (e, o = {}) => {
103
103
  <animate attributeName="stroke-dashoffset" dur="2s" values="0;-15.708;-31.416" repeatCount="indefinite"/>
104
104
  </circle>
105
105
  </svg>
106
- `, className: "loading", ...o });
107
- }, b = (e, o = {}) => {
106
+ `, className: "loading", ...n });
107
+ }, b = (e, n = {}) => {
108
108
  k(e, { message: "Failed to load SheetXL", icon: `
109
109
  <svg width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
110
110
  <path d="M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"/>
111
111
  </svg>
112
- `, className: "error", ...o });
112
+ `, className: "error", ...n });
113
113
  }, x = /* @__PURE__ */ new Map();
114
114
  let c;
115
- const C = async (e) => c || (c = await (async (o, t) => {
115
+ const C = async (e) => c || (c = await (async (n, t) => {
116
116
  try {
117
- t?.selector && L(t?.selector, t?.loading), t?.licenseKey && await o.StudioMUI.LicenseManager.setLicenseKey(t.licenseKey), t?.selector && h(t?.selector);
117
+ if (t?.selector && L(t?.selector, t?.loading), !n) {
118
+ const { resolveDependencies: r } = await import("./assets/BgnlshX157Ob6RLs.js");
119
+ n = await r(t?.dependencies);
120
+ }
121
+ t?.licenseKey && await n.StudioMUI.LicenseManager.setLicenseKey(t.licenseKey), t?.selector && h(t?.selector);
118
122
  } catch (r) {
119
123
  throw t?.selector && (h(t.selector), b(t.selector, { message: `Failed to initialize: ${r instanceof Error ? r.message : String(r)}`, ...t?.error })), console.error("Failed to initialize:", r), r;
120
124
  }
121
- return o;
122
- })(null, typeof e == "object" ? e : void 0), c), M = { attachStudio: async (e, o) => (c || (c = await C(e)), (async (t, r, p, m) => {
125
+ return n;
126
+ })(null, typeof e == "object" ? e : void 0), c), M = { attachStudio: async (e, n) => (c || (c = await C(e)), (async (t, r, p, m) => {
123
127
  if (!r) throw new Error("Either a 'selector' or a 'InitializationOptions' must be provided to attach.");
124
- const a = typeof r == "string" ? r : r.selector || "#sheetxl", u = typeof a == "string" ? document.querySelector(a) : a;
125
- if (!u) throw new Error(`Element with selector "${a}" not found.`);
128
+ const a = typeof r == "string" ? r : r.selector || "#sheetxl", f = typeof a == "string" ? document.querySelector(a) : a;
129
+ if (!f) throw new Error(`Element with selector "${a}" not found.`);
126
130
  if (x.has(a) && x.get(a) !== null) throw new Error(`SheetXL already attached to "${a}". Detach first if you want to re-attach.`);
127
131
  const l = typeof r == "object" ? r : null;
128
132
  L(a, l?.loading);
129
133
  try {
130
134
  h(a);
131
- const n = t.ReactDOMClient.createRoot(u), f = t.React.createRef(), g = t.StudioMUI[p];
135
+ const o = t.ReactDOMClient.createRoot(f), u = t.React.createRef(), g = t.StudioMUI[p];
132
136
  let d = null;
133
137
  await new Promise((v) => {
134
- n.render(t.React.createElement(g, { ...m, ref: (i) => {
138
+ o.render(t.React.createElement(g, { ...m, ref: (i) => {
135
139
  i && (d = i, v());
136
140
  } }));
137
141
  });
138
- const y = { runtime: t, root: n };
142
+ const y = { runtime: t, root: o };
139
143
  x.set(a, y);
140
144
  let E = !1;
141
145
  return new Proxy(d, { get(v, i, z) {
142
146
  if (E) throw new Error(`SheetXL instance attached to "${a}" has been detached. Cannot access properties.`);
143
147
  return i === "update" ? (N) => {
144
- const $ = { ...m, ...N, ref: f };
145
- return n.render(t.React.createElement(g, $)), Promise.resolve();
146
- } : i === "detach" ? () => (x.delete(a), n.unmount(), E = !0, Promise.resolve()) : Reflect.get(v, i, z);
148
+ const $ = { ...m, ...N, ref: u };
149
+ return o.render(t.React.createElement(g, $)), Promise.resolve();
150
+ } : i === "detach" ? () => (x.delete(a), o.unmount(), E = !0, Promise.resolve()) : Reflect.get(v, i, z);
147
151
  } });
148
- } catch (n) {
149
- throw h(a), b(a, { message: `Failed to initialize: ${n instanceof Error ? n.message : String(n)}`, ...l?.error }), console.error("Failed to initialize:", n), n;
152
+ } catch (o) {
153
+ throw h(a), b(a, { message: `Failed to initialize: ${o instanceof Error ? o.message : String(o)}`, ...l?.error }), console.error("Failed to initialize:", o), o;
150
154
  }
151
- })(c, e, "Studio", o)), async initialize(e) {
155
+ })(c, e, "Studio", n)), async initialize(e) {
152
156
  await C(e);
153
157
  } }, w = document.currentScript;
154
158
  if (w) {
155
159
  console.log("SheetXL script tag:", w);
156
160
  const e = w.dataset ? w.dataset.target : "#sheetxl";
157
- document.querySelector(e) || console.error(`SheetXL: Target element "${e}" not found in the document.`), M.attachStudio(e, { autoFocus: !0 }).then((o) => {
158
- console.log("SheetXL studio created and attached:", o);
159
- }).catch((o) => {
160
- console.error("Error creating SheetXL studio:", o);
161
+ document.querySelector(e) || console.error(`SheetXL: Target element "${e}" not found in the document.`), M.attachStudio(e, { autoFocus: !0 }).then((n) => {
162
+ console.log("SheetXL studio created and attached:", n);
163
+ }).catch((n) => {
164
+ console.error("Error creating SheetXL studio:", n);
161
165
  });
162
166
  }
163
167
  const X = M;
package/cdn/loader.js CHANGED
@@ -1,5 +1,5 @@
1
1
  (function(e){typeof define=="function"&&define.amd?define(e):e()})(function(){"use strict";/**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.11
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
3
  *
4
4
  * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
5
  * License: The license can be found at https://www.sheetxl.com/license.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sheetxl/studio-vanilla",
3
3
  "description": "SheetXL Studio - Vanilla entry point for integrating SheetXL UI.",
4
- "version": "0.4.11",
4
+ "version": "0.4.13",
5
5
  "license": "SEE LICENSE IN <LICENSE>",
6
6
  "type": "module",
7
7
  "main": "./browser/esm/index.mjs",
@@ -41,13 +41,11 @@
41
41
  "@mui/styled-engine": "^6.5.0",
42
42
  "@mui/system": "^6.5.0",
43
43
  "@mui/utils": "^6.4.9",
44
- "@sheetxl/studio-mui": "^0.4.11",
44
+ "@sheetxl/studio-mui": "^0.4.13",
45
+ "@sheetxl/sdk": "^0.4.13",
45
46
  "react": "^19.1.0",
46
47
  "react-dom": "^19.1.0",
47
48
  "csstype": "^3.1.3",
48
49
  "http-server": "^14.1.1"
49
- },
50
- "peerDependencies": {
51
- "@sheetxl/sdk": "^0.4.11"
52
50
  }
53
51
  }
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.11
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("@sheetxl/sdk"),e=require("./B2e7dDI-zKoqXpIW.cjs"),s=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",i=new RegExp(`^[${s}][-${s}.0-9·̀-ͯ‿-⁀]*$`,"u");function o(t){return t>=65&&t<=90||t>=97&&t<=122||58===t||95===t||8204===t||8205===t||t>=192&&t<=214||t>=216&&t<=246||t>=248&&t<=767||t>=880&&t<=893||t>=895&&t<=8191||t>=8304&&t<=8591||t>=11264&&t<=12271||t>=12289&&t<=55295||t>=63744&&t<=64975||t>=65008&&t<=65533||t>=65536&&t<=983039}const r="A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",n=new RegExp(`^[${r}][-${r}.0-9·̀-ͯ‿-⁀]*$`,"u");function a(t){return t>=65&&t<=90||95===t||t>=97&&t<=122||t>=192&&t<=214||t>=216&&t<=246||t>=248&&t<=767||t>=880&&t<=893||t>=895&&t<=8191||t>=8204&&t<=8205||t>=8304&&t<=8591||t>=11264&&t<=12271||t>=12289&&t<=55295||t>=63744&&t<=64975||t>=65008&&t<=65533||t>=65536&&t<=983039}const l=function(t){return 32===t||10===t||13===t||9===t},c=function(t){return t>=32&&t<=55295||10===t||13===t||9===t||t>=57344&&t<=65533||t>=65536&&t<=1114111},h=o,u=function(t){return o(t)||t>=48&&t<=57||45===t||46===t||183===t||t>=768&&t<=879||t>=8255&&t<=8256},d=[32,10,13,9],p=i,g=function(t){return t>=1&&t<=55295||t>=57344&&t<=65533||t>=65536&&t<=1114111},f=a,m=function(t){return a(t)||45===t||46===t||t>=48&&t<=57||183===t||t>=768&&t<=879||t>=8255&&t<=8256},T=n,y="http://www.w3.org/XML/1998/namespace",b="http://www.w3.org/2000/xmlns/",x={__proto__:null,xml:y,xmlns:b},w={__proto__:null,amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},v=-1,S=-2,C=13,k=33,A=10,E=60,D=61,P=62,I=63,O=93,V=t=>34===t||39===t,N=[34,39],L=[...N,91,P],R=[...N,E,O],$=[D,I,...d],F=[...d,P,38,E];function M(t,e,s){switch(e){case"xml":s!==y&&t.fail(`xml prefix must be bound to ${y}.`);break;case"xmlns":s!==b&&t.fail(`xmlns prefix must be bound to ${b}.`)}switch(s){case b:t.fail(""===e?`the default namespace may not be set to ${s}.`:`may not assign a prefix (even "xmlns") to the URI ${b}.`);break;case y:switch(e){case"xml":break;case"":t.fail(`the default namespace may not be set to ${s}.`);break;default:t.fail("may not assign the xml namespace to another prefix.")}}}const j=t=>T.test(t),H=t=>p.test(t),X={xmldecl:"xmldeclHandler",text:"textHandler",processinginstruction:"piHandler",doctype:"doctypeHandler",comment:"commentHandler",opentagstart:"openTagStartHandler",attribute:"attributeHandler",opentag:"openTagHandler",closetag:"closeTagHandler",cdata:"cdataHandler",error:"errorHandler",end:"endHandler",ready:"readyHandler"};class B{constructor(t){this.i=0,this.prevI=0,this.opt=t??{},this.fragmentOpt=!!this.opt.fragment;const e=this.xmlnsOpt=!!this.opt.xmlns;if(this.trackPosition=!1!==this.opt.position,this.fileName=this.opt.fileName,e){this.nameStartCheck=f,this.nameCheck=m,this.isName=j,this.processAttribs=this.processAttribsNS,this.pushAttrib=this.pushAttribNS,this.ns={__proto__:null,...x};const t=this.opt.additionalNamespaces;null!=t&&(function(t,e){for(const s of Object.keys(e))M(t,s,e[s])}(this,t),Object.assign(this.ns,t))}else this.nameStartCheck=h,this.nameCheck=u,this.isName=H,this.processAttribs=this.processAttribsPlain,this.pushAttrib=this.pushAttribPlain;this.stateTable=[this.sBegin,this.sBeginWhitespace,this.sDoctype,this.sDoctypeQuote,this.sDTD,this.sDTDQuoted,this.sDTDOpenWaka,this.sDTDOpenWakaBang,this.sDTDComment,this.sDTDCommentEnding,this.sDTDCommentEnded,this.sDTDPI,this.sDTDPIEnding,this.sText,this.sEntity,this.sOpenWaka,this.sOpenWakaBang,this.sComment,this.sCommentEnding,this.sCommentEnded,this.sCData,this.sCDataEnding,this.sCDataEnding2,this.sPIFirstChar,this.sPIRest,this.sPIBody,this.sPIEnding,this.sXMLDeclNameStart,this.sXMLDeclName,this.sXMLDeclEq,this.sXMLDeclValueStart,this.sXMLDeclValue,this.sXMLDeclSeparator,this.sXMLDeclEnding,this.sOpenTag,this.sOpenTagSlash,this.sAttrib,this.sAttribName,this.sAttribNameSawWhite,this.sAttribValue,this.sAttribValueQuoted,this.sAttribValueClosed,this.sAttribValueUnquoted,this.sCloseTag,this.sCloseTagSawWhite],this._init()}get closed(){return this._closed}_init(){this.openWakaBang="",this.text="",this.name="",this.piTarget="",this.entity="",this.q=null,this.tags=[],this.tag=null,this.topNS=null,this.chunk="",this.chunkPosition=0,this.i=0,this.prevI=0,this.carriedFromPrevious=void 0,this.forbiddenState=0,this.attribList=[];const{fragmentOpt:t}=this;this.state=t?C:0,this.reportedTextBeforeRoot=this.reportedTextAfterRoot=this.closedRoot=this.sawRoot=t,this.xmlDeclPossible=!t,this.xmlDeclExpects=["version"],this.entityReturnState=void 0;let{defaultXMLVersion:e}=this.opt;if(void 0===e){if(!0===this.opt.forceXMLVersion)throw new Error("forceXMLVersion set but defaultXMLVersion is not set");e="1.0"}this.setXMLVersion(e),this.positionAtNewLine=0,this.doctype=!1,this._closed=!1,this.xmlDecl={version:void 0,encoding:void 0,standalone:void 0},this.line=1,this.column=0,this.ENTITIES=Object.create(w),this.readyHandler?.()}get position(){return this.chunkPosition+this.i}get columnIndex(){return this.position-this.positionAtNewLine}on(t,e){this[X[t]]=e}off(t){this[X[t]]=void 0}makeError(t){let e=this.fileName??"";return this.trackPosition&&(e.length>0&&(e+=":"),e+=`${this.line}:${this.column}`),e.length>0&&(e+=": "),new Error(e+t)}fail(t){const e=this.makeError(t),s=this.errorHandler;if(void 0===s)throw e;return s(e),this}write(t){if(this.closed)return this.fail("cannot write after close; assign an onready handler.");let e=!1;null===t?(e=!0,t=""):"object"==typeof t&&(t=t.toString()),void 0!==this.carriedFromPrevious&&(t=`${this.carriedFromPrevious}${t}`,this.carriedFromPrevious=void 0);let s=t.length;const i=t.charCodeAt(s-1);!e&&(13===i||i>=55296&&i<=56319)&&(this.carriedFromPrevious=t[s-1],s--,t=t.slice(0,s));const{stateTable:o}=this;for(this.chunk=t,this.i=0;this.i<s;)o[this.state].call(this);return this.chunkPosition+=s,e?this.end():this}close(){return this.write(null)}getCode10(){const t=this.chunk,e=this.i;if(this.prevI=e,this.i++,e>=t.length)return v;const s=t.charCodeAt(e);if(this.column++,s<55296){if(s>=32||9===s)return s;switch(s){case A:return this.line++,this.column=0,this.positionAtNewLine=this.position,A;case 13:return t.charCodeAt(e+1)===A&&(this.i=e+2),this.line++,this.column=0,this.positionAtNewLine=this.position,S;default:return this.fail("disallowed character."),s}}if(s>56319)return s>=57344&&s<=65533||this.fail("disallowed character."),s;const i=65536+1024*(s-55296)+(t.charCodeAt(e+1)-56320);return this.i=e+2,i>1114111&&this.fail("disallowed character."),i}getCode11(){const{chunk:t,i:e}=this;if(this.prevI=e,this.i=e+1,e>=t.length)return v;const s=t.charCodeAt(e);if(this.column++,s<55296){if(s>31&&s<127||s>159&&8232!==s||9===s)return s;switch(s){case A:return this.line++,this.column=0,this.positionAtNewLine=this.position,A;case 13:{const s=t.charCodeAt(e+1);s!==A&&133!==s||(this.i=e+2)}case 133:case 8232:return this.line++,this.column=0,this.positionAtNewLine=this.position,S;default:return this.fail("disallowed character."),s}}if(s>56319)return s>=57344&&s<=65533||this.fail("disallowed character."),s;const i=65536+1024*(s-55296)+(t.charCodeAt(e+1)-56320);return this.i=e+2,i>1114111&&this.fail("disallowed character."),i}getCodeNorm(){const t=this.getCode();return t===S?A:t}unget(){this.i=this.prevI,this.column--}captureTo(t){let{i:e}=this;const{chunk:s}=this;for(;;){const i=this.getCode(),o=i===S,r=o?A:i;if(r===v||t.includes(r))return this.text+=s.slice(e,this.prevI),r;o&&(this.text+=`${s.slice(e,this.prevI)}\n`,e=this.i)}}captureToChar(t){let{i:e}=this;const{chunk:s}=this;for(;;){let i=this.getCode();switch(i){case S:this.text+=`${s.slice(e,this.prevI)}\n`,e=this.i,i=A;break;case v:return this.text+=s.slice(e),!1}if(i===t)return this.text+=s.slice(e,this.prevI),!0}}captureNameChars(){const{chunk:t,i:e}=this;for(;;){const s=this.getCode();if(s===v)return this.name+=t.slice(e),v;if(!u(s))return this.name+=t.slice(e,this.prevI),s===S?A:s}}skipSpaces(){for(;;){const t=this.getCodeNorm();if(t===v||!l(t))return t}}setXMLVersion(t){this.currentXMLVersion=t,"1.0"===t?(this.isChar=c,this.getCode=this.getCode10):(this.isChar=g,this.getCode=this.getCode11)}sBegin(){65279===this.chunk.charCodeAt(0)&&(this.i++,this.column++),this.state=1}sBeginWhitespace(){const t=this.i,e=this.skipSpaces();switch(this.prevI!==t&&(this.xmlDeclPossible=!1),e){case E:if(this.state=15,0!==this.text.length)throw new Error("no-empty text at start");break;case v:break;default:this.unget(),this.state=C,this.xmlDeclPossible=!1}}sDoctype(){const t=this.captureTo(L);switch(t){case P:this.doctypeHandler?.(this.text),this.text="",this.state=C,this.doctype=!0;break;case v:break;default:this.text+=String.fromCodePoint(t),91===t?this.state=4:V(t)&&(this.state=3,this.q=t)}}sDoctypeQuote(){const t=this.q;this.captureToChar(t)&&(this.text+=String.fromCodePoint(t),this.q=null,this.state=2)}sDTD(){const t=this.captureTo(R);t!==v&&(this.text+=String.fromCodePoint(t),t===O?this.state=2:t===E?this.state=6:V(t)&&(this.state=5,this.q=t))}sDTDQuoted(){const t=this.q;this.captureToChar(t)&&(this.text+=String.fromCodePoint(t),this.state=4,this.q=null)}sDTDOpenWaka(){const t=this.getCodeNorm();switch(this.text+=String.fromCodePoint(t),t){case 33:this.state=7,this.openWakaBang="";break;case I:this.state=11;break;default:this.state=4}}sDTDOpenWakaBang(){const t=String.fromCodePoint(this.getCodeNorm()),e=this.openWakaBang+=t;this.text+=t,"-"!==e&&(this.state="--"===e?8:4,this.openWakaBang="")}sDTDComment(){this.captureToChar(45)&&(this.text+="-",this.state=9)}sDTDCommentEnding(){const t=this.getCodeNorm();this.text+=String.fromCodePoint(t),this.state=45===t?10:8}sDTDCommentEnded(){const t=this.getCodeNorm();this.text+=String.fromCodePoint(t),t===P?this.state=4:(this.fail("malformed comment."),this.state=8)}sDTDPI(){this.captureToChar(I)&&(this.text+="?",this.state=12)}sDTDPIEnding(){const t=this.getCodeNorm();this.text+=String.fromCodePoint(t),t===P&&(this.state=4)}sText(){0!==this.tags.length?this.handleTextInRoot():this.handleTextOutsideRoot()}sEntity(){let{i:t}=this;const{chunk:e}=this;t:for(;;)switch(this.getCode()){case S:this.entity+=`${e.slice(t,this.prevI)}\n`,t=this.i;break;case 59:{const{entityReturnState:s}=this,i=this.entity+e.slice(t,this.prevI);let o;this.state=s,""===i?(this.fail("empty entity name."),o="&;"):(o=this.parseEntity(i),this.entity=""),s===C&&void 0===this.textHandler||(this.text+=o);break t}case v:this.entity+=e.slice(t);break t}}sOpenWaka(){const t=this.getCode();if(h(t))this.state=34,this.unget(),this.xmlDeclPossible=!1;else switch(t){case 47:this.state=43,this.xmlDeclPossible=!1;break;case 33:this.state=16,this.openWakaBang="",this.xmlDeclPossible=!1;break;case I:this.state=23;break;default:this.fail("disallowed character in tag name"),this.state=C,this.xmlDeclPossible=!1}}sOpenWakaBang(){switch(this.openWakaBang+=String.fromCodePoint(this.getCodeNorm()),this.openWakaBang){case"[CDATA[":this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0),this.state=20,this.openWakaBang="";break;case"--":this.state=17,this.openWakaBang="";break;case"DOCTYPE":this.state=2,(this.doctype||this.sawRoot)&&this.fail("inappropriately located doctype declaration."),this.openWakaBang="";break;default:this.openWakaBang.length>=7&&this.fail("incorrect syntax.")}}sComment(){this.captureToChar(45)&&(this.state=18)}sCommentEnding(){const t=this.getCodeNorm();45===t?(this.state=19,this.commentHandler?.(this.text),this.text=""):(this.text+=`-${String.fromCodePoint(t)}`,this.state=17)}sCommentEnded(){const t=this.getCodeNorm();t!==P?(this.fail("malformed comment."),this.text+=`--${String.fromCodePoint(t)}`,this.state=17):this.state=C}sCData(){this.captureToChar(O)&&(this.state=21)}sCDataEnding(){const t=this.getCodeNorm();t===O?this.state=22:(this.text+=`]${String.fromCodePoint(t)}`,this.state=20)}sCDataEnding2(){const t=this.getCodeNorm();switch(t){case P:this.cdataHandler?.(this.text),this.text="",this.state=C;break;case O:this.text+="]";break;default:this.text+=`]]${String.fromCodePoint(t)}`,this.state=20}}sPIFirstChar(){const t=this.getCodeNorm();this.nameStartCheck(t)?(this.piTarget+=String.fromCodePoint(t),this.state=24):t===I||l(t)?(this.fail("processing instruction without a target."),this.state=t===I?26:25):(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(t),this.state=24)}sPIRest(){const{chunk:t,i:e}=this;for(;;){const s=this.getCodeNorm();if(s===v)return void(this.piTarget+=t.slice(e));if(!this.nameCheck(s)){this.piTarget+=t.slice(e,this.prevI);const i=s===I;i||l(s)?"xml"===this.piTarget?(this.xmlDeclPossible||this.fail("an XML declaration must be at the start of the document."),this.state=i?k:27):this.state=i?26:25:(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(s));break}}}sPIBody(){if(0===this.text.length){const t=this.getCodeNorm();t===I?this.state=26:l(t)||(this.text=String.fromCodePoint(t))}else this.captureToChar(I)&&(this.state=26)}sPIEnding(){const t=this.getCodeNorm();if(t===P){const{piTarget:t}=this;"xml"===t.toLowerCase()&&this.fail("the XML declaration must appear at the start of the document."),this.piHandler?.({target:t,body:this.text}),this.piTarget=this.text="",this.state=C}else t===I?this.text+="?":(this.text+=`?${String.fromCodePoint(t)}`,this.state=25);this.xmlDeclPossible=!1}sXMLDeclNameStart(){const t=this.skipSpaces();t!==I?t!==v&&(this.state=28,this.name=String.fromCodePoint(t)):this.state=k}sXMLDeclName(){const t=this.captureTo($);if(t===I)return this.state=k,this.name+=this.text,this.text="",void this.fail("XML declaration is incomplete.");if(l(t)||t===D){if(this.name+=this.text,this.text="",!this.xmlDeclExpects.includes(this.name))switch(this.name.length){case 0:this.fail("did not expect any more name/value pairs.");break;case 1:this.fail(`expected the name ${this.xmlDeclExpects[0]}.`);break;default:this.fail(`expected one of ${this.xmlDeclExpects.join(", ")}`)}this.state=t===D?30:29}}sXMLDeclEq(){const t=this.getCodeNorm();if(t===I)return this.state=k,void this.fail("XML declaration is incomplete.");l(t)||(t!==D&&this.fail("value required."),this.state=30)}sXMLDeclValueStart(){const t=this.getCodeNorm();if(t===I)return this.state=k,void this.fail("XML declaration is incomplete.");l(t)||(V(t)?this.q=t:(this.fail("value must be quoted."),this.q=32),this.state=31)}sXMLDeclValue(){const t=this.captureTo([this.q,I]);if(t===I)return this.state=k,this.text="",void this.fail("XML declaration is incomplete.");if(t===v)return;const e=this.text;switch(this.text="",this.name){case"version":{this.xmlDeclExpects=["encoding","standalone"];const t=e;this.xmlDecl.version=t,/^1\.[0-9]+$/.test(t)?this.opt.forceXMLVersion||this.setXMLVersion(t):this.fail("version number must match /^1\\.[0-9]+$/.");break}case"encoding":/^[A-Za-z][A-Za-z0-9._-]*$/.test(e)||this.fail("encoding value must match /^[A-Za-z0-9][A-Za-z0-9._-]*$/."),this.xmlDeclExpects=["standalone"],this.xmlDecl.encoding=e;break;case"standalone":"yes"!==e&&"no"!==e&&this.fail('standalone value must match "yes" or "no".'),this.xmlDeclExpects=[],this.xmlDecl.standalone=e}this.name="",this.state=32}sXMLDeclSeparator(){const t=this.getCodeNorm();t!==I?(l(t)||(this.fail("whitespace required."),this.unget()),this.state=27):this.state=k}sXMLDeclEnding(){this.getCodeNorm()===P?("xml"!==this.piTarget?this.fail("processing instructions are not allowed before root."):"version"!==this.name&&this.xmlDeclExpects.includes("version")&&this.fail("XML declaration must contain a version."),this.xmldeclHandler?.(this.xmlDecl),this.name="",this.piTarget=this.text="",this.state=C):this.fail("The character ? is disallowed anywhere in XML declarations."),this.xmlDeclPossible=!1}sOpenTag(){const t=this.captureNameChars();if(t===v)return;const e=this.tag={name:this.name,attributes:Object.create(null)};switch(this.name="",this.xmlnsOpt&&(this.topNS=e.ns=Object.create(null)),this.openTagStartHandler?.(e),this.sawRoot=!0,!this.fragmentOpt&&this.closedRoot&&this.fail("documents may contain only one root."),t){case P:this.openTag();break;case 47:this.state=35;break;default:l(t)||this.fail("disallowed character in tag name."),this.state=36}}sOpenTagSlash(){this.getCode()===P?this.openSelfClosingTag():(this.fail("forward-slash in opening tag not followed by >."),this.state=36)}sAttrib(){const t=this.skipSpaces();t!==v&&(h(t)?(this.unget(),this.state=37):t===P?this.openTag():47===t?this.state=35:this.fail("disallowed character in attribute name."))}sAttribName(){const t=this.captureNameChars();t===D?this.state=39:l(t)?this.state=38:t===P?(this.fail("attribute without value."),this.pushAttrib(this.name,this.name),this.name=this.text="",this.openTag()):t!==v&&this.fail("disallowed character in attribute name.")}sAttribNameSawWhite(){const t=this.skipSpaces();switch(t){case v:return;case D:this.state=39;break;default:this.fail("attribute without value."),this.text="",this.name="",t===P?this.openTag():h(t)?(this.unget(),this.state=37):(this.fail("disallowed character in attribute name."),this.state=36)}}sAttribValue(){const t=this.getCodeNorm();V(t)?(this.q=t,this.state=40):l(t)||(this.fail("unquoted attribute value."),this.state=42,this.unget())}sAttribValueQuoted(){const{q:t,chunk:e}=this;let{i:s}=this;for(;;)switch(this.getCode()){case t:return this.pushAttrib(this.name,this.text+e.slice(s,this.prevI)),this.name=this.text="",this.q=null,void(this.state=41);case 38:return this.text+=e.slice(s,this.prevI),this.state=14,void(this.entityReturnState=40);case A:case S:case 9:this.text+=`${e.slice(s,this.prevI)} `,s=this.i;break;case E:return this.text+=e.slice(s,this.prevI),void this.fail("disallowed character.");case v:return void(this.text+=e.slice(s))}}sAttribValueClosed(){const t=this.getCodeNorm();l(t)?this.state=36:t===P?this.openTag():47===t?this.state=35:h(t)?(this.fail("no whitespace between attributes."),this.unget(),this.state=37):this.fail("disallowed character in attribute name.")}sAttribValueUnquoted(){const t=this.captureTo(F);switch(t){case 38:this.state=14,this.entityReturnState=42;break;case E:this.fail("disallowed character.");break;case v:break;default:this.text.includes("]]>")&&this.fail('the string "]]>" is disallowed in char data.'),this.pushAttrib(this.name,this.text),this.name=this.text="",t===P?this.openTag():this.state=36}}sCloseTag(){const t=this.captureNameChars();t===P?this.closeTag():l(t)?this.state=44:t!==v&&this.fail("disallowed character in closing tag.")}sCloseTagSawWhite(){switch(this.skipSpaces()){case P:this.closeTag();break;case v:break;default:this.fail("disallowed character in closing tag.")}}handleTextInRoot(){let{i:t,forbiddenState:e}=this;const{chunk:s,textHandler:i}=this;t:for(;;)switch(this.getCode()){case E:if(this.state=15,void 0!==i){const{text:e}=this,o=s.slice(t,this.prevI);0!==e.length?(i(e+o),this.text=""):0!==o.length&&i(o)}e=0;break t;case 38:this.state=14,this.entityReturnState=C,void 0!==i&&(this.text+=s.slice(t,this.prevI)),e=0;break t;case O:switch(e){case 0:e=1;break;case 1:e=2;break;case 2:break;default:throw new Error("impossible state")}break;case P:2===e&&this.fail('the string "]]>" is disallowed in char data.'),e=0;break;case S:void 0!==i&&(this.text+=`${s.slice(t,this.prevI)}\n`),t=this.i,e=0;break;case v:void 0!==i&&(this.text+=s.slice(t));break t;default:e=0}this.forbiddenState=e}handleTextOutsideRoot(){let{i:t}=this;const{chunk:e,textHandler:s}=this;let i=!1;t:for(;;){const o=this.getCode();switch(o){case E:if(this.state=15,void 0!==s){const{text:i}=this,o=e.slice(t,this.prevI);0!==i.length?(s(i+o),this.text=""):0!==o.length&&s(o)}break t;case 38:this.state=14,this.entityReturnState=C,void 0!==s&&(this.text+=e.slice(t,this.prevI)),i=!0;break t;case S:void 0!==s&&(this.text+=`${e.slice(t,this.prevI)}\n`),t=this.i;break;case v:void 0!==s&&(this.text+=e.slice(t));break t;default:l(o)||(i=!0)}}i&&(this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0))}pushAttribNS(t,e){const{prefix:s,local:i}=this.qname(t),o={name:t,prefix:s,local:i,value:e};if(this.attribList.push(o),this.attributeHandler?.(o),"xmlns"===s){const t=e.trim();"1.0"===this.currentXMLVersion&&""===t&&this.fail("invalid attempt to undefine prefix in XML 1.0"),this.topNS[i]=t,M(this,i,t)}else if("xmlns"===t){const t=e.trim();this.topNS[""]=t,M(this,"",t)}}pushAttribPlain(t,e){const s={name:t,value:e};this.attribList.push(s),this.attributeHandler?.(s)}end(){this.sawRoot||this.fail("document must contain a root element.");const{tags:t}=this;for(;t.length>0;){const e=t.pop();this.fail(`unclosed tag: ${e.name}`)}0!==this.state&&this.state!==C&&this.fail("unexpected end.");const{text:e}=this;return 0!==e.length&&(this.textHandler?.(e),this.text=""),this._closed=!0,this.endHandler?.(),this._init(),this}resolve(t){let e=this.topNS[t];if(void 0!==e)return e;const{tags:s}=this;for(let i=s.length-1;i>=0;i--)if(e=s[i].ns[t],void 0!==e)return e;return e=this.ns[t],void 0!==e?e:this.opt.resolvePrefix?.(t)}qname(t){const e=t.indexOf(":");if(-1===e)return{prefix:"",local:t};const s=t.slice(e+1),i=t.slice(0,e);return(""===i||""===s||s.includes(":"))&&this.fail(`malformed name: ${t}.`),{prefix:i,local:s}}processAttribsNS(){const{attribList:t}=this,e=this.tag;{const{prefix:t,local:s}=this.qname(e.name);e.prefix=t,e.local=s;const i=e.uri=this.resolve(t)??"";""!==t&&("xmlns"===t&&this.fail('tags may not have "xmlns" as prefix.'),""===i&&(this.fail(`unbound namespace prefix: ${JSON.stringify(t)}.`),e.uri=t))}if(0===t.length)return;const{attributes:s}=e,i=new Set;for(const e of t){const{name:t,prefix:o,local:r}=e;let n,a;""===o?(n="xmlns"===t?b:"",a=t):(n=this.resolve(o),void 0===n&&(this.fail(`unbound namespace prefix: ${JSON.stringify(o)}.`),n=o),a=`{${n}}${r}`),i.has(a)&&this.fail(`duplicate attribute: ${a}.`),i.add(a),e.uri=n,s[t]=e}this.attribList=[]}processAttribsPlain(){const{attribList:t}=this,e=this.tag.attributes;for(const{name:s,value:i}of t)void 0!==e[s]&&this.fail(`duplicate attribute: ${s}.`),e[s]=i;this.attribList=[]}openTag(){this.processAttribs();const{tags:t}=this,e=this.tag;e.isSelfClosing=!1,this.openTagHandler?.(e),t.push(e),this.state=C,this.name=""}openSelfClosingTag(){this.processAttribs();const{tags:t}=this,e=this.tag;e.isSelfClosing=!0,this.openTagHandler?.(e),this.closeTagHandler?.(e),null===(this.tag=t[t.length-1]??null)&&(this.closedRoot=!0),this.state=C,this.name=""}closeTag(){const{tags:t,name:e}=this;if(this.state=C,this.name="",""===e)return this.fail("weird empty close tag."),void(this.text+="</>");const s=this.closeTagHandler;let i=t.length;for(;i-- >0;){const i=this.tag=t.pop();if(this.topNS=i.ns,s?.(i),i.name===e)break;this.fail("unexpected close tag.")}0===i?this.closedRoot=!0:i<0&&(this.fail(`unmatched closing tag: ${e}.`),this.text+=`</${e}>`)}parseEntity(t){if("#"!==t[0]){const e=this.ENTITIES[t];return void 0!==e?e:(this.fail(this.isName(t)?"undefined entity.":"disallowed character in entity name."),`&${t};`)}let e=NaN;return"x"===t[1]&&/^#x[0-9a-f]+$/i.test(t)?e=parseInt(t.slice(2),16):/^#[0-9]+$/.test(t)&&(e=parseInt(t.slice(1),10)),this.isChar(e)?String.fromCodePoint(e):(this.fail("malformed character entity."),`&${t};`)}}var W,q;(q=W||(W={})).Events={XmlDecl:"xmldecl",Text:"text",ProcessingInstruction:"processinginstruction",Doctype:"doctype",Comment:"comment",OpenTagStart:"opentagstart",Attribute:"attribute",OpenTag:"opentag",CloseTag:"closetag",CDdata:"cdata",Error:"error",End:"end",Ready:"ready"},q.parseStream=async(t,e,s)=>{const i=new B({position:!1,...s});let o;if(e.onOpenTagStart&&i.on(q.Events.OpenTagStart,e.onOpenTagStart),e.onOpenTag&&i.on(q.Events.OpenTag,e.onOpenTag),e.onCloseTag&&i.on(q.Events.CloseTag,e.onCloseTag),e.onAttribute&&i.on(q.Events.Attribute,e.onAttribute),e.onText&&i.on(q.Events.Text,e.onText),e.onError&&i.on(q.Events.Error,e.onError),e.onEnd){e.onEnd;const t=()=>{o=e.onEnd()};i.on(q.Events.End,t)}for(;;){const{value:e,done:s}=await t.read();if(s)break;i.write(e)}return i.close(),o};const _=t=>!0===t||"1"===t||"on"===t||"true"===t||!1!==t&&"0"!==t&&"off"!==t&&"false"!==t&&null,U=t=>{const e=parseInt(t);return isNaN(e)?null:e},z=t=>{const e=parseFloat(t);return isNaN(e)?null:e},G=null;class Z{constructor(){this._registeredVisitors=new Map}registerVisitor(t){this._registeredVisitors.set(t.from,t)}createEventHandler(t,e,s){const i=this._registeredVisitors,o=[];let r=null,n=null,a=null,l=null;const c=[],h={key:null,source:t};let u=null,d=!1;const p=(t,e)=>{let s=a.attributes[t];if(e)if(Array.isArray(e))for(let t=0;t<e.length;t++){if(null==s)return;if(s=e[t](s),null==s)return}else{if(null==s)return;if(s=e(s),null==s)return}return s},g={getSource:()=>u.source,setSource:t=>{u.source=t},setKey:t=>{u.key=t},getFrom:()=>a,getAttribute:(t,e)=>p(t,e)??null,hasAttribute:t=>null!==g.getAttribute(t),getParent:()=>c[c.length-2].source,getPath:()=>{const t=[];for(let e=0;e<o.length;e++)t.push(o[e].local);return t.join("\\")},parseAttribute:p,copyToObject:(t,e,s,i)=>{const o=p(i??e,s);void 0!==o&&(t[e]=o)},copyTo:(t,e,s)=>{const i=p(s??t,e);void 0!==i&&(u.source[t]=i)},warn:t=>{s?s?.(t):console.warn(t)}};return{onOpenTag:t=>{let e=t.name;const s=e.indexOf(":");-1!==s&&(e=e.slice(s+1));const p=i.get(e);if(r={local:e,visitor:p,tag:t,destination:null},d)return o.push(r),n=e,void(a=t);l=r?.visitor??null,p&&(u=0===o.length?h:null!==l?.to?{key:null,source:{}}:null,r.destination=u,u&&c.push(u)),o.push(r),n=e,a=t,d=null===l?.to,l?.openTag?.(g)},onCloseTag:t=>{let e=t.name;const i=e.indexOf(":");if(-1!==i&&(e=e.slice(i+1)),e!==n)throw new Error(`mismatch open/close tag: '${e}'/'${n}'`);d||l?.closeTag?.(g);const p=o.pop()??null;r=o[o.length-1]??null;const f=p?.destination;if(f){c.pop(),u=c[c.length-1]??h;const t=p.visitor;t&&t.to&&void 0!==f.source&&(Array.isArray(t.to)?u.source.push?u.source.push(f.source):s?.(`Unable to parse array for ${t.from} at ${g.getPath()}`):f.key?u.source[f.key]=f.source:"string"==typeof t.to&&(u.source[t.to]=f.source))}n=r?.local??null,a=r?.tag??null,l=r?.visitor??null,d=!r?.destination},onText:t=>{l?.text?.(t,g)},onEnd:e}}}const J=(t,e,s,i=null)=>{if(!t)return null;let o=t;o.startsWith("/")&&(o=o.substring(1));let r=i?.parsedRefs?.get(t);if(void 0!==r)return r;const n=e(o);if(!n)return null;let a=n.content;try{s&&(a=s(a))}catch(t){console.warn(t)}return i?.parsedRefs?.set(t,a),a},Q=(t,e,s,i,o=null)=>{if(!t)return null;let r=t;r.startsWith("/")&&(r=r.substring(1));let n=o?.parsedRefs?.get(t);if(void 0!==n)return n;const a=e(r);if(!a)return null;const l=a.content;try{const e=(new TextDecoder).decode(l),r=s.parseFromString(e,"text/xml"),n=i.convert(r,t,o);return o?.parsedRefs?.set(t,n),n}catch(t){console.warn(t)}return null},K=(t,e,s,i,o=null)=>{const r=new Map;let n=e.Directory[t];const a=n?n.length:0;for(let t=0;t<a;t++){const a=n[t];if(!a)continue;let l=a;l.startsWith("/")&&(l=l.substring(1));const c=Q(l,t=>e.files[t],s,i,o);r.set(l,c)}return r},Y=["lt1","dk1","lt2","dk2","accent1","accent2","accent3","accent4","accent5","accent6","hlink","folHlink"],tt=(e,s="dk1")=>{let i;const o=e("auto");void 0===o||"1"!==o&&"true"!==o||(i=s);const r=e("indexed");r&&(i=`index${r}`);const n=e("rgb");n&&(i=n.toLowerCase(),8!==n.length||n.startsWith("FF")||(i="FF"+n.substring(2,n.length)));const a=e("theme");a&&(i=Y[a]);let l=e("tint");if(l&&(i+=` ${t.IColor.AdjustmentType.ETint} ${parseFloat(l)}`),i)return i},et=t=>t?t.replace(/^\{([\s\S]+)\}$/,"$1"):t,st=t=>"true"===t||"1"===t;class it{static{this.Collapsed=1}static{this.CustomFormat=2}static{this.CustomHeight=4}static{this.Hidden=8}static{this.Ht=16}static{this.OutlineLevel=32}static{this.Ph=64}static{this.R=128}static{this.S=256}static{this.Spans=512}static{this.ThickBot=1024}static{this.ThickTop=2048}}const ot=(t,e,s)=>{if(t[0].value[0]===t[1].value[0])return e},rt={colStart:0,colEnd:0,rowStart:0,rowEnd:0},nt=Object.freeze(Object.defineProperty({__proto__:null,fromBufferXLSX:async(e,s)=>{const{password:i,onWarning:o,createWorkbookOptions:r={},...n}=s??{},a=Promise.resolve().then(()=>require("./Dx-jp_LJxWbAScyA.cjs")),l=Promise.resolve().then(()=>require("./SzxJv7OUs5ojl8gx.cjs"));let c=null;try{c=new DOMParser}catch(e){}let h=null;c||(h=Promise.resolve().then(()=>require("./DFtyXc7YFh9dIp74.cjs")).then(t=>t.i));let u=null,d=null,p=null;try{const t=await Promise.all([a,l,h]);u=t[0],d=t[1],p=t[2]}catch(e){throw new Error("Unable to load XLSX parser.",{cause:e})}try{const s=u.read(e,{type:"array",sheets:[],cellStyles:!1,bookFiles:!0});if(!s.Directory)throw new Error("Unable to parse as an Excel document. Try to save as '.xlsx' and try again.");s.Directory.richstructure=["/xl/richData/rdrichvaluestructure.xml"],s.Directory.richdata=["/xl/richData/rdrichvalue.xml"];const i=new d.FromOOXMLConverter,n=c??new p.DOMParser,a=r?.resources??new t.ResourceCollection,l=a.beginPersist(),h={},g=new Set,f=new Map;f.set("richTypes",[]);const m=new Map,T=[],y=t=>s.files[t],b=(t,e)=>{const s=t.lastIndexOf("/"),o=t.substring(0,s+1)+"_rels/"+t.substring(s+1,t.length)+".rels";let r=e.get(o);return r||(r=((t,e,s,i,o=null)=>{if(!t)return null;const r=Q(t,e,s,i,o);if(!r)return null;const n=new Map,a=Object.keys(r),l=a.length;for(let t=0;t<l;t++){const e=a[t],s=r[e];n.set(e,s)}return n})(o,y,n,i,w),e.set(o,r)),r},x=(e,s,r,c=m)=>{let u=b(s,c).get(e),d=u?.target;if(!d)return null;if("External"===u.targetMode)return u.target;const p=s.lastIndexOf("/"),v=s.substring(0,p+1);d.startsWith("/")||(d=v+d),d=(t=>{const e=t.split(/\/+/),s=e.reduce((t,e,s)=>("."===e?t.splice(s,1):".."===e&&t.splice(s-1,2),t),e);return s.join("/")})(d);const S=i?.getVisitorParamsState().get("dxfs");let C=c.get(d);if(!C){const e="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet";if(u.type===e){const e={};C=e;const s=async()=>{const s=((e,s,i,o,r,n,a)=>{const l=new Z,c=new t.Tuple.TransposedBuilder;let h=null;l.registerVisitor({from:"autoFilter",to:"filter",openTag:t=>{t.copyTo("ref",G)}}),l.registerVisitor({from:"conditionalFormatting",to:{},openTag:t=>{const e=t.getParent();e.conditionals||(e.conditionals=[]),e.conditionals.push(t.getSource());const s=t.getAttribute("sqref");s&&(t.getSource().ref=s.split(" ").join(",")),t.copyTo("pivot",_)},closeTag:t=>{const e=t.getSource();if(e.rule){const t=Object.keys(e.rule);for(let s=0;s<t.length;s++){const i=t[s];"rule"!==i&&(e[i]=e.rule[i])}}delete e.rule}}),l.registerVisitor({from:"cfRule",to:"rule",openTag:t=>{const e=t.getParent();t.copyToObject(e,"type",G),t.copyToObject(e,"priority",U),t.copyToObject(e,"stopIfTrue",_);const s=t.getAttribute("dxfId",U);if(null!==s){let i=o?.get(s);i||(n?.(`Unable to load conditional color. Invalid dxfI: '${s}' at '${t.getPath()}'.`),i={}),e.style=i}t.copyToObject(e,"aboveAverage",_),t.copyToObject(e,"equalAverage",_),t.copyToObject(e,"stdDev",U),t.copyToObject(e,"bottom",_),t.copyToObject(e,"percent",_),t.copyToObject(e,"rank",U),t.copyToObject(e,"operator",G),t.copyToObject(e,"text",G),t.copyToObject(e,"timePeriod",G)}}),l.registerVisitor({from:"colorScale",to:"colorScale"}),l.registerVisitor({from:"dataBar",to:"dataBar",openTag:t=>{t.copyTo("maxLength",U),t.copyTo("minLength",U),t.copyTo("showValue",_)}}),l.registerVisitor({from:"iconSet",to:"iconSet",openTag:t=>{t.copyTo("iconSet",G),t.copyTo("reverse",_),t.copyTo("showValue",_)}}),l.registerVisitor({from:"formula",to:null,text:(t,e)=>{const s=e.getParent();let i=s.formulas;i||(i=[],s.formulas=i),i.push(t)}}),l.registerVisitor({from:"cfvo",to:{},openTag:t=>{const e=t.getParent();e.conditions||(e.conditions=[]),e.conditions.push(t.getSource()),t.copyTo("type",G),t.copyTo("value",z,"val"),t.copyTo("gte",_)}}),l.registerVisitor({from:"color",to:{},openTag:t=>{const e=t.getParent();e.colors||(e.colors=[]);const s=tt(e=>t.getAttribute(e));e.colors.push(s)}}),l.registerVisitor({from:"filterColumn",to:"filterColumn",openTag:t=>{const e=t.getParent();e.fields||(e.fields=[]),e.fields.push(t.getSource()),t.copyTo("offset",U,"colId"),t.copyTo("hiddenButton",_),t.copyTo("showButton",_)}}),l.registerVisitor({from:"colorFilter",to:"colorFilter",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.IAutoFilter.Type.Color,e.copyTo("cellColor",_),e.copyTo("styleId",U,"dxfId")}}),l.registerVisitor({from:"dynamicFilter",to:"dynamicFilter",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.IAutoFilter.Type.Dynamic,e.copyTo("dynamicType",G,"type"),e.copyTo("val",z),e.copyTo("maxVal",z,"maxVal")}}),l.registerVisitor({from:"iconFilter",to:"iconFilter",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.IAutoFilter.Type.Icon,e.copyTo("iconId",U),e.copyTo("iconSet",G)}}),l.registerVisitor({from:"top10",to:"top10",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.IAutoFilter.Type.Top10,e.copyTo("filterVal",z),e.copyTo("percent",_),e.copyTo("top",_),e.copyTo("val",z)}}),l.registerVisitor({from:"filters",to:"filters",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.IAutoFilter.Type.Items,e.copyTo("blank",_),e.copyTo("calendarType",G)}}),l.registerVisitor({from:"dateGroupItem",to:"dateGroupItem",openTag:t=>{const e=t.getParent();e.dateGroups||(e.dateGroups=[]),e.dateGroups.push(t.getSource()),t.copyTo("group",G,"dateTimeGrouping"),t.copyTo("day",U),t.copyTo("hour",U),t.copyTo("minute",U),t.copyTo("month",U),t.copyTo("second",U),t.copyTo("year",U)}}),l.registerVisitor({from:"filter",to:"filter",openTag:t=>{const e=t.getParent();e.items||(e.items=[]),e.items.push(t.getAttribute("val",z))}}),l.registerVisitor({from:"customFilters",to:"customFilters",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.IAutoFilter.Type.Custom,e.copyTo("and",_)}}),l.registerVisitor({from:"customFilter",to:"customFilter",openTag:t=>{const e=t.getParent();e.filters||(e.filters=[]),e.filters.push(t.getSource()),t.copyTo("operator",G),t.copyTo("value",z,"val")}}),l.registerVisitor({from:"sortState",to:"sort",openTag:t=>{t.copyTo("ref",G)}}),l.registerVisitor({from:"sortCondition",to:"sortCondition",openTag:e=>{const s=e.getParent();s.fields||(s.fields=[]);const i=e.getSource();s.fields.push(i),e.copyTo("sortOn",G,"sortBy"),e.copyTo("dxfId",G,"sortBy"),e.copyTo("iconSet",G),e.copyTo("customList",G);const o=e.getAttribute("ref");if(o){const e=t.AddressUtils.fastStringToRange(o,rt).colStart,r=t.AddressUtils.fastStringToRange(s.ref,rt),n=r.colStart;i.offset=r?e-n:e}i.reverse=e.getAttribute("descending",_)??!1}}),l.registerVisitor({from:"AlternateContent",to:null});const u=t=>{h=t.getSource(),t.copyTo("topLeft",G,"topLeftCell");const e=st(t.getAttribute("defaultGridColor")),s=t.getAttribute("colorId");null===s||e||(t.getSource().gridLineColor="index"+parseFloat(s)),t.copyTo("showZeros",_),t.copyTo("showFormulas",_),t.copyTo("zoomScale",U),t.copyTo("showRowHeaders",_,"showRowColHeaders"),t.copyTo("showColumnHeaders",_,"showRowColHeaders"),t.copyTo("showRowGridlines",_,"showGridLines"),t.copyTo("showColumnGridlines",_,"showGridLines")};l.registerVisitor({from:"sheetView",to:"view",openTag:t=>{u(t)},closeTag:()=>{h=null}}),l.registerVisitor({from:"customSheetViews",to:"customSheetViews",openTag:t=>{t.setSource([])}}),l.registerVisitor({from:"customSheetView",to:[],openTag:t=>{u(t)},closeTag:()=>{h=null}}),l.registerVisitor({from:"selection",to:"selection",openTag:t=>{if(!h)return;t.copyTo("cell",G,"activeCell"),t.copyTo("rangeIndex",U,"activeCellId");const e=t.getAttribute("activeCell"),s=t.getAttribute("sqref");s&&s!==e&&(t.getSource().ranges=s.split(" "))}}),l.registerVisitor({from:"pane",to:"pane",openTag:e=>{if(h&&"frozen"===e.getAttribute("state")){const s={};h.freezePanes=s,e.copyToObject(s,"topLeft",G,"topLeftCell");const i=h.topLeft?t.AddressUtils.fastStringToCell(h.topLeft):{colIndex:0,rowIndex:0},o={colIndex:0,rowIndex:0};e.copyToObject(o,"colIndex",U,"xSplit"),e.copyToObject(o,"rowIndex",U,"ySplit");const r={colIndex:i.colIndex+o.colIndex,rowIndex:i.rowIndex+o.rowIndex};s.coords=t.AddressUtils.cellToString(r)}}}),l.registerVisitor({from:"tabColor",to:null,openTag:t=>{const s=tt(e=>t.getAttribute(e));s&&(e.tabColor=s)}}),l.registerVisitor({from:"pageSetUpPr",to:"pageSetUpPr",openTag:t=>{}}),l.registerVisitor({from:"outlinePr",to:"outlinePr",openTag:t=>{}}),l.registerVisitor({from:"pageMargins",to:"pageMargins",openTag:t=>{}}),l.registerVisitor({from:"pageSetup",to:"pageSetup",openTag:t=>{}}),l.registerVisitor({from:"printOptions",to:"printOptions",openTag:t=>{}}),l.registerVisitor({from:"mergeCells",to:"merges",openTag:t=>{t.setSource([])}}),l.registerVisitor({from:"mergeCell",to:[],openTag:t=>{const e=t.getAttribute("ref");t.setSource(e)}}),l.registerVisitor({from:"hyperlinks",to:"hyperlinks",openTag:t=>{t.setSource([])}}),l.registerVisitor({from:"hyperlink",to:[],openTag:t=>{const e=t.getAttribute("r:id"),i=t.getAttribute("ref");if(!i)return void console.warn("No ref found for hyperlink");t.setKey(i);let o=e?s(e):"";if("string"!=typeof o)return void console.warn("Invalid address ",o);const r=t.getAttribute("location");o.endsWith("\\")&&(o=o.substring(0,o.length-1));const n=t.getAttribute("location");if(n&&(r&&r!==n&&console.warn("display and location are different",r,n),o+="#"+n),!o)return void console.warn("No address found for hyperlink. r:id",e);let a;const l=t.getAttribute("tooltip");a=l?{address:o,tooltip:l}:o,t.setSource({r:i,v:a})}}),l.registerVisitor({from:"drawing",to:"movables",openTag:t=>{const e=t.getAttribute("r:id");if(!e)return;const i=s(e);i?t.setSource(i.movables):console.warn("no drawing found for rId",e)}}),l.registerVisitor({from:"tableParts",to:"tables",openTag:t=>{t.setSource([])}}),l.registerVisitor({from:"tablePart",to:[],openTag:t=>{const e=t.getAttribute("r:id");if(!e)return;const i=s(e);i?t.setSource(i):console.warn("no table found for rId",e)}}),l.registerVisitor({from:"worksheet",to:"worksheet",openTag:t=>{}}),l.registerVisitor({from:"sheetProtection",to:"protection",openTag:t=>{let e=!1;if(t.hasAttribute("sheet")&&_(t.getAttribute("sheet"))&&(e=!0),!e)return void t.setSource(void 0);const s=t=>!0===t||"1"===t||"on"===t||"true"===t||!1===t||"0"===t||"off"===t||"false"===t||null;t.copyTo("autoFilter",s),t.copyTo("deleteColumns",s),t.copyTo("formatCells",s),t.copyTo("formatColumns",s),t.copyTo("formatRows",s),t.copyTo("insertColumns",s),t.copyTo("insertHyperlinks",s),t.copyTo("insertRows",s),t.copyTo("objects",s),t.copyTo("pivotTables",s),t.copyTo("scenarios",s),t.copyTo("selectUnlockedCells",s),t.copyTo("selectUnlockedCells",s),t.copyTo("sort",s);const i={};t.copyToObject(i,"hash",G,"hashValue"),t.copyToObject(i,"algorithm",G,"algorithmName"),t.copyToObject(i,"salt",G,"saltValue"),t.copyToObject(i,"spinCount",U),Object.keys(i).length>0&&(t.getSource().password=i)}}),l.registerVisitor({from:"protectedRanges",to:"protectedRanges",openTag:t=>{t.setSource({})}}),l.registerVisitor({from:"protectedRange",to:{},openTag:t=>{const e=t.getAttribute("sqref");t.setKey(e),t.copyTo("name"),t.copyTo("securityDescriptor");const s={};t.copyToObject(s,"hash",G,"hashValue"),t.copyToObject(s,"algorithm",G,"algorithmName"),t.copyToObject(s,"salt",G,"saltValue"),t.copyToObject(s,"spinCount",U),Object.keys(s).length>0&&(t.getSource().password=s)}}),l.registerVisitor({from:"sheetFormatPr",to:"sheetFormatPr",openTag:t=>{t.copyToObject(e,"defaultColSize",z,"defaultColWidth"),t.copyToObject(e,"outlineLevelCol",U,"outlineLevelCol");const s=t.getAttribute("customHeight");"1"!==s&&"true"!==s||t.copyToObject(e,"defaultRowSize",z,"defaultRowHeight"),t.copyToObject(e,"outlineLevelRow",U,"outlineLevelRow")}}),l.registerVisitor({from:"cols",to:"cols",openTag:t=>{t.setSource([])}}),l.registerVisitor({from:"col",to:[],openTag:t=>{t.copyTo("min",t=>parseInt(t)-1),t.copyTo("max",t=>parseInt(t)-1),t.copyTo("sz",z,"width"),t.copyTo("cs",_,"customWidth"),t.copyTo("h",_,"hidden"),t.copyTo("l",U,"outlineLevel"),t.copyTo("s",U,"style")}}),l.registerVisitor({from:"oleObjects",to:null,openTag:t=>{t.warn("'OLE Objects' are not supported.")}});let d=null;const p={onOpenTag:t=>{null===d&&(d="")},onText:t=>{d+=t},onEnd:()=>{const t=i(d);return d=null,t},onError:t=>{}};return((e,s,i,o,r,n)=>{let a=!1,l=!1,c=[],h=!1,u=null,d=null,p=null,g=null,f=null,m=null;const T=n?.get("richData")??[],y=t.AddressUtils.normalizeA1ToR1C1,b=t.CoordUtils.createConflatingRanges(),x=new Map,w=[];let v=null;const S=t.CoordUtils.createConflatingRanges();let C,k=!1,A=-1,E=-1,D=null,P=null;const I=[];let O=null,V=-2,N=0,L="",R="",$="",F="",M="",j="",H="",X="",B="",W="",q="",_="",U="",z="",G=!0,Z=null;return{...i,onEnd:()=>{I.length>0&&(s.rows=I);let o=b.done(ot);const r=o.length;if(r>0){const e=new Array(r);for(let s=0;s<r;s++){const i=o[s],r=t.AddressUtils.rangeToString(i),n=i.value[1],a=t.AddressUtils.resolveRelativeToA1(n,i.rowStart,i.colStart);e[s]=[r,a]}s.formulas=e}const n=S.done(!0),a=n.length;if(a>0){const e=new Array(a);for(let s=0;s<a;s++){const i=n[s],o=t.AddressUtils.rangeToString(i);e[s]=o}s.volatile=e}if(w.length>0&&(s.dynamicArray=[...w]),c.length>0){c.sort(t.CoordUtils.createRangeComparator(t.IRange.Orientation.Column));const e=[];let i=null,o=-1,r=-1,n=-1,a=-1,l=null;const h=c.length;h>0&&(i=c[0],o=i.colStart,r=i.colEnd,n=i.rowEnd,a=i.value,e.push(i));for(let t=1;t<h;t++)l=c[t],a!==l.value||o!==l.colStart||r!==l.colEnd||n+1!==l.rowEnd?(e.push(l),i=l,o=i.colStart,r=i.colEnd,n=i.rowEnd,a=i.value):(n=l.rowEnd,i.rowEnd=n);let u=[];for(let t=0;t<e.length;t++){const s=e[t];u.push({r:{colStart:s.colStart,colEnd:s.colEnd,rowStart:s.rowStart,rowEnd:s.rowEnd},v:s.value})}s.directStyles=u}const l=e.build();if(l){const t=l.tuples;s.data=t}i?.onEnd?.()},onOpenTag:e=>{let s=e.name;const o=s.indexOf(":");if(-1!==o&&(s=s.slice(o+1)),C){const t=e.attributes;switch(s){case"v":l=!0;break;case"f":switch(t.t??null){case null:case"normal":h=!0;break;case"shared":const e=t.si;d=t.ref,u=e;break;case"array":h=!0,d=t.ref,v=[d,!1];break;case"datatable":h=!0,d=t.ref,h=!0}void 0!==t.ca&&S.append(A,E);break;case"is":return void(k=!0)}return void(k&&r?.onOpenTag(e))}if(a){if("c"===s){C=e;const s=e.attributes.r;E=t.AddressUtils.fastStringToCol(s);const i=e.attributes.t;void 0===i?P=null:(P=i,"str"===P&&(k=!0));let o=e.attributes.s;void 0!==o&&(o=parseInt(o),Z&&Z.value===o&&Z.colEnd+1===E?Z.colEnd=E:(Z={colStart:E,rowStart:A,colEnd:E,rowEnd:A,value:o},c.push(Z)))}}else{if("row"===s){a=!0;const t=e.attributes.r;if(A=parseInt(t)-1,N=0,R=e.attributes.customHeight,void 0!==R&&(N|=it.CustomHeight),R!==B&&(G=!0,B=R),L=e.attributes.ht,void 0!==L&&(N|=it.Ht),L!==X&&(G=!0,X=L),$=e.attributes.hidden,void 0!==$&&(N|=it.Hidden),$!==W&&(G=!0,W=$),M=e.attributes.s,void 0!==M&&(N|=it.S),M!==_&&(G=!0,_=M),F=e.attributes.customFormat,void 0!==F&&(N|=it.CustomFormat),F!==q&&(G=!0,q=F),j=e.attributes.outlineLevel,void 0!==j&&(N|=it.OutlineLevel),j!==U&&(G=!0,U=j),H=e.attributes.collapsed,void 0!==H&&(N|=it.Collapsed),H!==z&&(G=!0,z=H),0!==N)if(V+1!==A||G){const t=void 0!==R&&("1"===R||"true"===R),e=void 0!==F&&("1"===F||"true"===F);O={min:A,max:A,sz:t&&void 0!==L?parseFloat(L):-1,csz:t,h:void 0!==$&&("1"===$||"true"===$),s:t&&void 0!==M&&"0"!==M?parseInt(M):0,cs:e,l:void 0===j||"0"===j?0:parseInt(j),cl:void 0!==H&&("1"===H||"true"===H)},I.push(O)}else O.max=A;return V=A,void(G=!1)}i?.onOpenTag(e)}},onCloseTag:t=>{if(C){let s=t.name;const i=s.indexOf(":");if(-1!==i&&(s=s.slice(i+1)),k)if("is"===s||"v"===s){const t=r?.onEnd();null!==t&&e.addValue(A,E,""+t)}else r?.onCloseTag?.(t);return l&&(l=!1),void("c"===s&&(C=null,k=!1))}if(a)return a=!1,void(Z=null);i?.onCloseTag(t)},onText:s=>{if(s=s.trim(),l){switch(D=null,P){case null:case"n":D=parseFloat(s);break;case"b":D="1"===s||"true"===s;break;case"s":D=s;break;case"e":if("#VALUE!"===s){const e=C.attributes.vm;if(void 0!==e){const s=T[parseInt(e)-1];if(s&&s.isFormulaError){D={t:t.ScalarType.Error,v:s.getCode()};break}}}const e=t.FormulaError.getBuiltInByLabel(s);e?D={t:t.ScalarType.Error,v:e.getCode()}:(D=s,o?.(`Unknown formula error '${s}' in cell ${t.AddressUtils.cellToString({colIndex:E,rowIndex:A})}`));break;case"str":case"inlineStr":k=!0}null!==D&&e.addValue(A,E,D)}if(v&&("e"===P&&(v[1]=!0),w.push(v),v=null),u)if(f===u)g=m;else{if(g=x.get(u),!g){const t=[];p=y(s,A,E,t),g=[p,t,s],x.set(u,g)}f=u,m=g}if(h){const t=[];p=y(s,A,E,t),g=[p,t,s]}if(g)return b.append(A,E,g),g=null,h=!1,u=null,void(d=null);k?r?.onText(s):a||i?.onText(s)}}})(c,e,l.createEventHandler(e,()=>{},n),n,p,a)})(e,(t,e=!1)=>x(t,d,e)??null,E,S,0,t=>{o&&(t=d+": "+t,o?.(t))},f),i=J(d,y),r=await(async(t,e=8388608)=>{await(async()=>{if("undefined"==typeof ReadableStream)if("undefined"==typeof window){const{ReadableStream:t}=await Promise.resolve().then(()=>require("./CjZbhk41S1qO_74G.cjs"));globalThis.ReadableStream=t}else console.warn("Browser does not support ReadableStream; consider loading a polyfill.")})();const s=new TextDecoder("utf-8");let i=0;const o=t instanceof Uint8Array?t:new Uint8Array(t);return new ReadableStream({pull(t){if(i>=o.byteLength)return void t.close();const r=o.subarray(i,Math.min(i+e,o.byteLength)),n=s.decode(r,{stream:i+e<o.byteLength});t.enqueue(n),i+=r.length}}).getReader()})(i);try{await W.parseStream(r,s,{xmlns:!1})}catch(t){throw console.warn(`Error parsing sheet: '${d}'`,t),new Error(`Error parsing sheet: '${d}'`,{cause:t})}const n=b(d,c);let a,l=new Map;if(n){const s="http://schemas.microsoft.com/office/2017/10/relationships/threadedComment";let i;n.forEach((t,e)=>{if(t.type===s){const t=x(e,d,!1,c);a=t?.comments,a&&a.forEach(t=>{l.set(t.id,t)})}});const o="http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments";if(n.forEach((t,e)=>{if(t.type===o){const t=x(e,d,!1,c);i=t}}),i||a){const s=a??[],o=i?.comments;if(o){const e=i?.authors;for(let i=0;i<o.length;i++){const r=o[i];let n=void 0!==r.authorId?e[r.authorId]:void 0;if((!n||n.startsWith("tc="))&&(n=et(n.substring(3)),l.has(n)))continue;let a=D.get(n);a||(a=P.get(n)),a||(a={id:t.CommonUtils.uuidV4(),displayName:n},P.set(a.displayName,a),D.set(a.id,a)),n=a?.id??null;const c={id:t.CommonUtils.uuidV4(),personId:n,ref:r.ref,done:!1,asNote:!0,content:r.content};s.push(c)}}e.comments=s}}};T.push(s())}else C=r?J(d,y,t=>{const e=a.add({buffer:t});return e.addReference(h),g.add(e),l.toResourceId(e)},w):Q(d,y,n,i,w)}return C},w={paramMap:f,getRefs:b,getRef:x,parsedRefs:m,onWarning:o,addPerson:t=>null},v=[];let S=0;s.Strings&&(S=parseInt(s.Strings.Unique??s.Strings.length??0));const C=s.Strings??[];for(let t=0;t<S;t++)v.push(C[t]?.t??"");const k=new Map;let A=S;const E=t=>{const e=k.get(t);if(void 0!==e)return e;const s=A;return k.set(t,A++),v.push(t),s},D=(K("richstructure",s,n,i,w),K("richdata",s,n,i,w),new Map),P=new Map,I=K("people",s,n,i);let O=null;if(I.size>0&&(O=I.entries().next()?.value?.[1]?.persons,O)){const t=O.length;for(let e=0;e<t;e++){const t=O[e];D.set(t.id,t),D.set(t.displayName,t)}}const V=K("themes",s,n,i,w);let N=null;if(V&&V.entries){let t=V.entries().next();t?.value?.[1]&&(N=t.value[1])}const L=new t.Theme(N),R=K("styles",s,n,i,w);let $=R.entries().next()?.value[1];$&&($=JSON.parse(t.JSONStableStringify($)));const F=K("workbooks",s,n,i,w);await Promise.all(T);const M={...F.entries().next().value[1],styles:$,theme:L.toJSON()};v.length>0&&(M.strings=v),O&&O.length>0&&(M.people=O);const j={...r,resources:a,json:M},H=new t.Workbook(j);return g.forEach(t=>{t.deleteReference(h)}),l.endPersist(),H}catch(e){let s="Unable to parse XLSX.";throw e instanceof t.OutOfBoundsError&&(s="Unable to open XLSX. There are too many rows or columns."),new Error(s,{cause:e})}},toBufferXLSX:async(e,s)=>{const i=await Promise.resolve().then(()=>require("./Dx-jp_LJxWbAScyA.cjs")),o=await e.toJSON(!0),r=i.utils.book_new();for(let s=0;s<o.sheets.length;s++){const n=o.sheets[s],a=i.utils.json_to_sheet([{}]);i.utils.book_append_sheet(r,a,n.name);const l=n.sheet,c=e.getSheetAt(s),h=c.getUsedRange();if(h?(a["!ref"]=h.getA1(),h.forEach((e,s)=>{const i={t:"z"},o=s.getCell().getStyle();if(!o.isNormal()){let e=o.getNumberFormat();e!==t.NumberFormat.Type.General&&(e===t.NumberFormat.Type.ShortDate?e="m/d/yyyy":e===t.NumberFormat.Type.MediumDate?e="d-mmm-yy":e===t.NumberFormat.Type.LongDate?e="[$-x-sysdate]dddd, mmmm dd, yyyy":e===t.NumberFormat.Type.ShortTime?e="h:mm":e===t.NumberFormat.Type.MediumTime?e="h:mm AM/PM":e===t.NumberFormat.Type.LongTime&&(e="h:mm:ss AM/PM"),i.z=e)}if(null!==e)switch(s.getType()){case t.ScalarType.Number:i.t="n",i.v=e;break;case t.ScalarType.String:i.t="s",i.v=e;break;case t.ScalarType.Boolean:i.t="b",i.v=e;break;case t.ScalarType.Error:i.t="e",i.v=e.toString();case t.ScalarType.RichData:}a[s.getA1()]=i})):a["!ref"]="A1:A1",l.merges?.length>0){const t=[];a["!merges"]=t;for(let e=0;e<l.merges.length;e++)t.push(i.utils.decode_range(l.merges[e]))}if(l.cols?.length>0){const t=[];a["!cols"]=t;const e=l.cols,s={width:l.defaultColSize??c.getColumnWidthAsFontUnit(c.getColumnHeaders().getDefaultSize())};for(let i=0;i<e.length;i++){const o=e[i];for(let e=t.length;e<=o.min-1;e++)t.push(s);const r={};void 0!==o.sz&&(r.width=o.sz),void 0!==o.h&&(r.hidden=o.h),void 0!==o.l&&(r.level=o.l);for(let e=o.min;e<=o.max;e++)t.push(r)}}}return i.write(r,{type:"array",bookType:"xlsx"}),i.write(r,{type:"array",bookType:"xlsx"})}},Symbol.toStringTag,{value:"Module"}));exports.a=t=>parseFloat(t)/1e3,exports.b=st,exports.c=t=>t?e._n.roundAccurately(parseFloat(t)/9525,1):null,exports.d=tt,exports.i=nt,exports.p=t=>parseFloat(t)/6e4,exports.r=et,exports.t=t=>t?e._n.roundAccurately(parseFloat(t)/12700,4):null;