@sheetxl/studio-vanilla 0.4.21 → 0.5.0

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 (184) hide show
  1. package/browser/cjs/2QmtjcI-saz2rkIA.cjs +6 -0
  2. package/browser/cjs/3UFq2FybsZfoS4JL.cjs +6 -0
  3. package/browser/cjs/B-fFQgxMHns-eg-y.cjs +6 -0
  4. package/browser/cjs/{n6CXzSocLW_BCO8w.cjs → B2hhcNzdkhGrH1O6.cjs} +6 -6
  5. package/browser/cjs/BASsCVA0ArIVtY7I.cjs +6 -0
  6. package/browser/cjs/BAxy7pwmXg8SI_oi.cjs +6 -0
  7. package/browser/cjs/BCwHln5zBNJSn0bb.cjs +6 -0
  8. package/browser/cjs/BQYUcoxlHrpI0-pX.cjs +6 -0
  9. package/browser/cjs/BVbQCweLw_r05vPF.cjs +15 -0
  10. package/browser/cjs/BYJxHR3K0UQJ8mYe.cjs +6 -0
  11. package/browser/cjs/Ba8eoGTjjWBH8TbP.cjs +6 -0
  12. package/browser/cjs/BdCoVNJwhPpWfQw2.cjs +6 -0
  13. package/browser/cjs/BkZzUVGQfrUTPE_K.cjs +6 -0
  14. package/browser/cjs/BlpCu5z9eT8rzsZl.cjs +6 -0
  15. package/browser/cjs/BlqTaZ2U_mKVK2lb.cjs +6 -0
  16. package/browser/cjs/BpeteRa_oZ-wN4Yl.cjs +6 -0
  17. package/browser/cjs/BxqDS9XynU5GFbP7.cjs +16 -0
  18. package/browser/cjs/ByB_fmjdLNTv0T0U.cjs +145 -0
  19. package/browser/cjs/C-6TpShR6Bn0HnEd.cjs +7 -0
  20. package/browser/cjs/C5T_oiCG4PwTFSZA.cjs +6 -0
  21. package/browser/cjs/C5e1IjdRuLyAQqNX.cjs +7 -0
  22. package/browser/cjs/CAZoVQtxsVdAtVKy.cjs +6 -0
  23. package/browser/cjs/CBS2kMyEf0c_PUbQ.cjs +12 -0
  24. package/browser/cjs/CO7VEOXret0qr-X3.cjs +6 -0
  25. package/browser/cjs/CVIlAq9nwlOXfHMl.cjs +161 -0
  26. package/browser/cjs/CZEOikBcE4OIr49t.cjs +6 -0
  27. package/browser/cjs/Ce8AVRntRnXZtgzH.cjs +6 -0
  28. package/browser/cjs/ClEZHGlmkSIz6S1O.cjs +6 -0
  29. package/browser/cjs/CvO-oyQ3syx7EGUA.cjs +6 -0
  30. package/browser/cjs/CwqvcNlwUtXJrzsk.cjs +6 -0
  31. package/browser/cjs/D-su0R92LmYTQVL3.cjs +11 -0
  32. package/browser/cjs/D178aT-dgy-ngzYG.cjs +6 -0
  33. package/browser/cjs/D5z-zqUVI3G9JXBC.cjs +1501 -0
  34. package/browser/cjs/D68uE8Ovq38Aj-88.cjs +330 -0
  35. package/browser/cjs/D8mjDoZ4Yyous_Fc.cjs +6 -0
  36. package/browser/cjs/DASsVvQwE2-IWxLR.cjs +6 -0
  37. package/browser/cjs/DBavSByKdf-juvFm.cjs +32 -0
  38. package/browser/cjs/DHRZzqw46ad6Mtw6.cjs +6 -0
  39. package/browser/cjs/DJZBxKlTP03_1kyT.cjs +6 -0
  40. package/browser/cjs/DKq35Q191eW-MovK.cjs +6 -0
  41. package/browser/cjs/DMUFBhoYpT3ai2Sb.cjs +6 -0
  42. package/browser/cjs/DX2XUDUIVBx4UFrJ.cjs +6 -0
  43. package/browser/cjs/DdzEWCcupF-0WS8y.cjs +11 -0
  44. package/browser/cjs/Dg9j6yGv8nrILfzN.cjs +6 -0
  45. package/browser/cjs/DjB9MJwDT6_HgF4U.cjs +6 -0
  46. package/browser/cjs/Dl5mwbo0ahDUm0he.cjs +6 -0
  47. package/browser/cjs/DmT6vIsFpZJ2c8cx.cjs +15 -0
  48. package/browser/cjs/Hi6aVJR9PyRbNYjO.cjs +6 -0
  49. package/browser/cjs/K7QHOvYV_yvLLjsS.cjs +6 -0
  50. package/browser/cjs/LhLQSvaxn8yxAIwj.cjs +6 -0
  51. package/browser/cjs/MgEzGw411nlqjqfH.cjs +42 -0
  52. package/browser/cjs/WJXT0W6bS3bZdAUV.cjs +6 -0
  53. package/browser/cjs/f_Vbi-Lelt9tKZrz.cjs +19 -0
  54. package/browser/cjs/index.cjs +2 -80
  55. package/browser/cjs/tNT3tUxdeIp_Iq2Y.cjs +7 -0
  56. package/browser/cjs/vNEwUuTKk3qucC3P.cjs +6 -0
  57. package/browser/cjs/xMzLyo_gIl82xG8k.cjs +6 -0
  58. package/browser/cjs/yc1bXLJ1yRhBFy0X.cjs +124 -0
  59. package/browser/esm/2fFz5u9jPgrNzcVF.mjs +21 -0
  60. package/browser/esm/2kXHnuU_uz-F9i1S.mjs +44550 -0
  61. package/browser/esm/5F1_gQbzWEFsWO0i.mjs +84 -0
  62. package/browser/esm/9MchcnSGrYDjX4zQ.mjs +46 -0
  63. package/browser/esm/Af7aikoKHz0rpjfv.mjs +10 -0
  64. package/browser/esm/B1Kc7dS9N2PVqxMT.mjs +10 -0
  65. package/browser/esm/B8ePgT5XZ0JlU3T6.mjs +1352 -0
  66. package/browser/esm/B8uy0BSOVjfUw27f.mjs +12 -0
  67. package/browser/esm/BFweWj2oKpTGl7m3.mjs +1672 -0
  68. package/browser/esm/BLseM2hNBI2PgQaX.mjs +13391 -0
  69. package/browser/esm/BUNUi9F3xbjfUKty.mjs +24 -0
  70. package/browser/esm/BV3ROKbw5yMVArqX.mjs +10 -0
  71. package/browser/esm/BXKXqOluLdKs4-V0.mjs +3802 -0
  72. package/browser/esm/BZpMA4DGM1kbVAKF.mjs +10 -0
  73. package/browser/esm/Bg59p3YlNG6o7-M3.mjs +260 -0
  74. package/browser/esm/BlFzVqIUaXFtDy81.mjs +10 -0
  75. package/browser/esm/BtBECeJ4mwD7SUx8.mjs +3936 -0
  76. package/browser/esm/Buw1VxSLsNI8pSYS.mjs +5585 -0
  77. package/browser/esm/BxoWypkKac-_VAm5.mjs +39 -0
  78. package/browser/esm/By3EkyTg3ZYh63C7.mjs +56 -0
  79. package/browser/esm/CDu4VlyMAQ3nxTQG.mjs +10 -0
  80. package/browser/esm/CJ9ZL3uskq3W6s-m.mjs +10 -0
  81. package/browser/esm/CP_sGa9QGT2Nq5ym.mjs +1702 -0
  82. package/browser/esm/CaIFrnjL0xBOtFfM.mjs +10 -0
  83. package/browser/esm/CeP-AnEtOGkuxLqE.mjs +10 -0
  84. package/browser/esm/CjScjxhY2mD7nPZA.mjs +633 -0
  85. package/browser/esm/CozWNYg-NXzV84fz.mjs +10 -0
  86. package/browser/esm/Cprnt9pNXzIiMmkN.mjs +29 -0
  87. package/browser/esm/Cq-wjvtZ92uenxU1.mjs +20 -0
  88. package/browser/esm/CsVeeu8D1A8I-BbH.mjs +1575 -0
  89. package/browser/esm/CzMxOWYq4nqRtKmm.mjs +1366 -0
  90. package/browser/esm/D9MGSJr45cVRF75O.mjs +1466 -0
  91. package/browser/esm/DAUV_w2uv0nHdk5N.mjs +10 -0
  92. package/browser/esm/DIypkIIonThPr-Vt.mjs +47 -0
  93. package/browser/esm/DOG1CaEQVF1sTUFi.mjs +10 -0
  94. package/browser/esm/DOv9FndcEVmQ2LJK.mjs +392 -0
  95. package/browser/esm/DSCVDOwTpDzUVuFj.mjs +10 -0
  96. package/browser/esm/DYF-8AnNDaQUy3aL.mjs +2344 -0
  97. package/browser/esm/Dd0avXHDTPFrx-ot.mjs +44 -0
  98. package/browser/esm/DdQY6IuT4OziHv5i.mjs +48 -0
  99. package/browser/esm/DfRKIODWn8ElqMWa.mjs +425 -0
  100. package/browser/esm/Dfbzljrnj4KrvtaN.mjs +10 -0
  101. package/browser/esm/DfdWpPG9ZcbRBGUg.mjs +10 -0
  102. package/browser/esm/Di8JLQMx61fnrhOn.mjs +10 -0
  103. package/browser/esm/DirXlaTG7TKxrqSR.mjs +10 -0
  104. package/browser/esm/DjGdyf6zsnIMRkQb.mjs +41 -0
  105. package/browser/esm/Dm4Fun7UoovVHafs.mjs +147 -0
  106. package/browser/esm/DwpS4SI4gT1eqfOs.mjs +10 -0
  107. package/browser/esm/DzZDYedlR-CIW2TI.mjs +21 -0
  108. package/browser/esm/HlyDPlaZCA3IOmF2.mjs +2081 -0
  109. package/browser/esm/PzIeb5aTX9JzTTfm.mjs +424 -0
  110. package/browser/esm/{NBuS53B7u8hItiXf.mjs → QPkYQWSepZNIhJst.mjs} +937 -933
  111. package/browser/esm/UENfAV2nBd83yFu7.mjs +10 -0
  112. package/browser/esm/YYqCu_-Z9nzvEseu.mjs +10 -0
  113. package/browser/esm/aEhgzbKqmuKv1oqm.mjs +10 -0
  114. package/browser/esm/bxGRTnY732xGNtpL.mjs +10 -0
  115. package/browser/esm/index.mjs +4 -176
  116. package/browser/esm/zQSjT9VbN7kMDV88.mjs +21 -0
  117. package/cdn/assets/2fFz5u9jPgrNzcVF.js +21 -0
  118. package/cdn/assets/7ZUzaBw_VH3Cvii1.js +1702 -0
  119. package/cdn/assets/7bmIdE8Moi7orOeU.js +50 -0
  120. package/cdn/assets/Af7aikoKHz0rpjfv.js +10 -0
  121. package/cdn/assets/B1Kc7dS9N2PVqxMT.js +10 -0
  122. package/cdn/assets/B6QHusAaPSos46yi.js +3802 -0
  123. package/cdn/assets/B8ePgT5XZ0JlU3T6.js +1352 -0
  124. package/cdn/assets/B8uy0BSOVjfUw27f.js +12 -0
  125. package/cdn/assets/BFweWj2oKpTGl7m3.js +1672 -0
  126. package/cdn/assets/BGF-bSrwdriQTytG.js +1466 -0
  127. package/cdn/assets/BLseM2hNBI2PgQaX.js +13391 -0
  128. package/cdn/assets/BQvzpOcCO8uM_ZaF.js +46 -0
  129. package/cdn/assets/BUNUi9F3xbjfUKty.js +24 -0
  130. package/cdn/assets/BV3ROKbw5yMVArqX.js +10 -0
  131. package/cdn/assets/BZpMA4DGM1kbVAKF.js +10 -0
  132. package/cdn/assets/BlFzVqIUaXFtDy81.js +10 -0
  133. package/cdn/assets/BrwV_8GjxcVuWuUk.js +44377 -0
  134. package/cdn/assets/C7SHJrlOqTIZCB3t.js +41 -0
  135. package/cdn/assets/CCbJipmDawMQQxRJ.js +36 -0
  136. package/cdn/assets/CDu4VlyMAQ3nxTQG.js +10 -0
  137. package/cdn/assets/CEcpUxbZ1W-G1EPq.js +2346 -0
  138. package/cdn/assets/CJ9ZL3uskq3W6s-m.js +10 -0
  139. package/cdn/assets/CaIFrnjL0xBOtFfM.js +10 -0
  140. package/cdn/assets/CaN0O_koLgCkhgEh.js +1575 -0
  141. package/cdn/assets/CeP-AnEtOGkuxLqE.js +10 -0
  142. package/cdn/assets/CjScjxhY2mD7nPZA.js +633 -0
  143. package/cdn/assets/ClkFsS16G5memDzX.js +22 -0
  144. package/cdn/assets/CmUGAy0Bu36DiwJO.js +84 -0
  145. package/cdn/assets/CozWNYg-NXzV84fz.js +10 -0
  146. package/cdn/assets/CsYr_9x-OIQSqGIL.js +27 -0
  147. package/cdn/assets/CzEv6qEIPTHOwOdU.js +2083 -0
  148. package/cdn/assets/CzMF1riupKc6HLGE.js +6481 -0
  149. package/cdn/assets/CzMxOWYq4nqRtKmm.js +1366 -0
  150. package/cdn/assets/D-W_ANt_qJ9dfGy9.js +425 -0
  151. package/cdn/assets/DAI9BFZBDQlMP1v4.js +149 -0
  152. package/cdn/assets/DAUV_w2uv0nHdk5N.js +10 -0
  153. package/cdn/assets/DOG1CaEQVF1sTUFi.js +10 -0
  154. package/cdn/assets/DSCVDOwTpDzUVuFj.js +10 -0
  155. package/cdn/assets/DSv3gXCV9xifjdta.js +23 -0
  156. package/cdn/assets/DaYZ-afnc3QhJo5R.js +58 -0
  157. package/cdn/assets/Dfbzljrnj4KrvtaN.js +10 -0
  158. package/cdn/assets/DfdWpPG9ZcbRBGUg.js +10 -0
  159. package/cdn/assets/Di8JLQMx61fnrhOn.js +10 -0
  160. package/cdn/assets/DirXlaTG7TKxrqSR.js +10 -0
  161. package/cdn/assets/DivRRrwWTqpDEOsE.js +392 -0
  162. package/cdn/assets/DlGa-wREL0uZB2Nx.js +43 -0
  163. package/cdn/assets/DlMH1vSjXgvZMwQJ.js +90 -0
  164. package/cdn/assets/Dml7K4XhLTRwUDTY.js +27 -0
  165. package/cdn/assets/DwpS4SI4gT1eqfOs.js +10 -0
  166. package/cdn/assets/G0GROjU63_EPzAF7.js +241 -0
  167. package/cdn/assets/NoCZPCkSed8lQpNi.js +46 -0
  168. package/cdn/assets/O-MB9oo65vbYOjfG.js +260 -0
  169. package/cdn/assets/PzIeb5aTX9JzTTfm.js +424 -0
  170. package/cdn/assets/UENfAV2nBd83yFu7.js +10 -0
  171. package/cdn/assets/V2bW77WyjoyjJMvZ.js +5585 -0
  172. package/cdn/assets/YJiNeqIJTFYDQPxS.js +3936 -0
  173. package/cdn/assets/YYqCu_-Z9nzvEseu.js +10 -0
  174. package/cdn/assets/Yp0FxpbZyyvU_u6y.js +49 -0
  175. package/cdn/assets/aEhgzbKqmuKv1oqm.js +10 -0
  176. package/cdn/assets/bxGRTnY732xGNtpL.js +10 -0
  177. package/cdn/assets/djN8Su_7GYF42GqX.js +21 -0
  178. package/cdn/assets/m-A0SfNBx32zKuZU.js +29 -0
  179. package/cdn/assets/uvZYEIW4EfvcdsXG.js +12 -0
  180. package/cdn/assets/zZGhctwBXNlAYrJr.js +21 -0
  181. package/cdn/index.js +2 -2
  182. package/cdn/loader.js +1 -1
  183. package/package.json +3 -3
  184. package/cdn/assets/CY8njwo06MWkoPz2.js +0 -21
@@ -0,0 +1,1466 @@
1
+ import { l as Pt, M as Vt, ax as ye, ay as be, az as Rt, aA as wt, Y as te, aB as xe, aC as we, aw as ve, aD as Se, K as ee, w as Ce, aE as ke, n as Ae } from "./BrwV_8GjxcVuWuUk.js";
2
+ /**
3
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.5.0
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 ne = ":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿", De = new RegExp(`^[${ne}][-${ne}.0-9·̀-ͯ‿-⁀]*$`, "u");
9
+ function pe(i) {
10
+ return i >= 65 && i <= 90 || i >= 97 && i <= 122 || i === 58 || i === 95 || i === 8204 || i === 8205 || i >= 192 && i <= 214 || i >= 216 && i <= 246 || i >= 248 && i <= 767 || i >= 880 && i <= 893 || i >= 895 && i <= 8191 || i >= 8304 && i <= 8591 || i >= 11264 && i <= 12271 || i >= 12289 && i <= 55295 || i >= 63744 && i <= 64975 || i >= 65008 && i <= 65533 || i >= 65536 && i <= 983039;
11
+ }
12
+ const ae = "A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿", Ee = new RegExp(`^[${ae}][-${ae}.0-9·̀-ͯ‿-⁀]*$`, "u");
13
+ function ge(i) {
14
+ return i >= 65 && i <= 90 || i === 95 || i >= 97 && i <= 122 || i >= 192 && i <= 214 || i >= 216 && i <= 246 || i >= 248 && i <= 767 || i >= 880 && i <= 893 || i >= 895 && i <= 8191 || i >= 8204 && i <= 8205 || i >= 8304 && i <= 8591 || i >= 11264 && i <= 12271 || i >= 12289 && i <= 55295 || i >= 63744 && i <= 64975 || i >= 65008 && i <= 65533 || i >= 65536 && i <= 983039;
15
+ }
16
+ const rt = function(i) {
17
+ return i === 32 || i === 10 || i === 13 || i === 9;
18
+ }, Pe = function(i) {
19
+ return i >= 32 && i <= 55295 || i === 10 || i === 13 || i === 9 || i >= 57344 && i <= 65533 || i >= 65536 && i <= 1114111;
20
+ }, zt = pe, le = function(i) {
21
+ return pe(i) || i >= 48 && i <= 57 || i === 45 || i === 46 || i === 183 || i >= 768 && i <= 879 || i >= 8255 && i <= 8256;
22
+ }, fe = [32, 10, 13, 9], Oe = De, Ie = function(i) {
23
+ return i >= 1 && i <= 55295 || i >= 57344 && i <= 65533 || i >= 65536 && i <= 1114111;
24
+ }, Ve = ge, Le = function(i) {
25
+ return ge(i) || i === 45 || i === 46 || i >= 48 && i <= 57 || i === 183 || i >= 768 && i <= 879 || i >= 8255 && i <= 8256;
26
+ }, Ne = Ee, Yt = "http://www.w3.org/XML/1998/namespace", Ht = "http://www.w3.org/2000/xmlns/", Re = { __proto__: null, xml: Yt, xmlns: Ht }, $e = { __proto__: null, amp: "&", gt: ">", lt: "<", quot: '"', apos: "'" }, N = -1, bt = -2, tt = 13, Ot = 33, pt = 10, At = 60, Mt = 61, B = 62, z = 63, jt = 93, Kt = (i) => i === 34 || i === 39, me = [34, 39], Me = [...me, 91, B], je = [...me, At, jt], He = [Mt, z, ...fe], Fe = [...fe, B, 38, At];
27
+ function se(i, t, s) {
28
+ switch (t) {
29
+ case "xml":
30
+ s !== Yt && i.fail(`xml prefix must be bound to ${Yt}.`);
31
+ break;
32
+ case "xmlns":
33
+ s !== Ht && i.fail(`xmlns prefix must be bound to ${Ht}.`);
34
+ }
35
+ switch (s) {
36
+ case Ht:
37
+ i.fail(t === "" ? `the default namespace may not be set to ${s}.` : `may not assign a prefix (even "xmlns") to the URI ${Ht}.`);
38
+ break;
39
+ case Yt:
40
+ switch (t) {
41
+ case "xml":
42
+ break;
43
+ case "":
44
+ i.fail(`the default namespace may not be set to ${s}.`);
45
+ break;
46
+ default:
47
+ i.fail("may not assign the xml namespace to another prefix.");
48
+ }
49
+ }
50
+ }
51
+ const Xe = (i) => Ne.test(i), Be = (i) => Oe.test(i), ce = { 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" };
52
+ class We {
53
+ constructor(t) {
54
+ this.i = 0, this.prevI = 0, this.opt = t ?? {}, this.fragmentOpt = !!this.opt.fragment;
55
+ const s = this.xmlnsOpt = !!this.opt.xmlns;
56
+ if (this.trackPosition = this.opt.position !== !1, this.fileName = this.opt.fileName, s) {
57
+ this.nameStartCheck = Ve, this.nameCheck = Le, this.isName = Xe, this.processAttribs = this.processAttribsNS, this.pushAttrib = this.pushAttribNS, this.ns = { __proto__: null, ...Re };
58
+ const o = this.opt.additionalNamespaces;
59
+ o != null && (function(n, a) {
60
+ for (const l of Object.keys(a)) se(n, l, a[l]);
61
+ }(this, o), Object.assign(this.ns, o));
62
+ } else this.nameStartCheck = zt, this.nameCheck = le, this.isName = Be, this.processAttribs = this.processAttribsPlain, this.pushAttrib = this.pushAttribPlain;
63
+ 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();
64
+ }
65
+ get closed() {
66
+ return this._closed;
67
+ }
68
+ _init() {
69
+ 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 = [];
70
+ const { fragmentOpt: t } = this;
71
+ this.state = t ? tt : 0, this.reportedTextBeforeRoot = this.reportedTextAfterRoot = this.closedRoot = this.sawRoot = t, this.xmlDeclPossible = !t, this.xmlDeclExpects = ["version"], this.entityReturnState = void 0;
72
+ let { defaultXMLVersion: s } = this.opt;
73
+ if (s === void 0) {
74
+ if (this.opt.forceXMLVersion === !0) throw new Error("forceXMLVersion set but defaultXMLVersion is not set");
75
+ s = "1.0";
76
+ }
77
+ this.setXMLVersion(s), 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($e), this.readyHandler?.();
78
+ }
79
+ get position() {
80
+ return this.chunkPosition + this.i;
81
+ }
82
+ get columnIndex() {
83
+ return this.position - this.positionAtNewLine;
84
+ }
85
+ on(t, s) {
86
+ this[ce[t]] = s;
87
+ }
88
+ off(t) {
89
+ this[ce[t]] = void 0;
90
+ }
91
+ makeError(t) {
92
+ let s = this.fileName ?? "";
93
+ return this.trackPosition && (s.length > 0 && (s += ":"), s += `${this.line}:${this.column}`), s.length > 0 && (s += ": "), new Error(s + t);
94
+ }
95
+ fail(t) {
96
+ const s = this.makeError(t), o = this.errorHandler;
97
+ if (o === void 0) throw s;
98
+ return o(s), this;
99
+ }
100
+ write(t) {
101
+ if (this.closed) return this.fail("cannot write after close; assign an onready handler.");
102
+ let s = !1;
103
+ t === null ? (s = !0, t = "") : typeof t == "object" && (t = t.toString()), this.carriedFromPrevious !== void 0 && (t = `${this.carriedFromPrevious}${t}`, this.carriedFromPrevious = void 0);
104
+ let o = t.length;
105
+ const n = t.charCodeAt(o - 1);
106
+ !s && (n === 13 || n >= 55296 && n <= 56319) && (this.carriedFromPrevious = t[o - 1], o--, t = t.slice(0, o));
107
+ const { stateTable: a } = this;
108
+ for (this.chunk = t, this.i = 0; this.i < o; ) a[this.state].call(this);
109
+ return this.chunkPosition += o, s ? this.end() : this;
110
+ }
111
+ close() {
112
+ return this.write(null);
113
+ }
114
+ getCode10() {
115
+ const t = this.chunk, s = this.i;
116
+ if (this.prevI = s, this.i++, s >= t.length) return N;
117
+ const o = t.charCodeAt(s);
118
+ if (this.column++, o < 55296) {
119
+ if (o >= 32 || o === 9) return o;
120
+ switch (o) {
121
+ case pt:
122
+ return this.line++, this.column = 0, this.positionAtNewLine = this.position, pt;
123
+ case 13:
124
+ return t.charCodeAt(s + 1) === pt && (this.i = s + 2), this.line++, this.column = 0, this.positionAtNewLine = this.position, bt;
125
+ default:
126
+ return this.fail("disallowed character."), o;
127
+ }
128
+ }
129
+ if (o > 56319) return o >= 57344 && o <= 65533 || this.fail("disallowed character."), o;
130
+ const n = 65536 + 1024 * (o - 55296) + (t.charCodeAt(s + 1) - 56320);
131
+ return this.i = s + 2, n > 1114111 && this.fail("disallowed character."), n;
132
+ }
133
+ getCode11() {
134
+ const { chunk: t, i: s } = this;
135
+ if (this.prevI = s, this.i = s + 1, s >= t.length) return N;
136
+ const o = t.charCodeAt(s);
137
+ if (this.column++, o < 55296) {
138
+ if (o > 31 && o < 127 || o > 159 && o !== 8232 || o === 9) return o;
139
+ switch (o) {
140
+ case pt:
141
+ return this.line++, this.column = 0, this.positionAtNewLine = this.position, pt;
142
+ case 13: {
143
+ const a = t.charCodeAt(s + 1);
144
+ a !== pt && a !== 133 || (this.i = s + 2);
145
+ }
146
+ case 133:
147
+ case 8232:
148
+ return this.line++, this.column = 0, this.positionAtNewLine = this.position, bt;
149
+ default:
150
+ return this.fail("disallowed character."), o;
151
+ }
152
+ }
153
+ if (o > 56319) return o >= 57344 && o <= 65533 || this.fail("disallowed character."), o;
154
+ const n = 65536 + 1024 * (o - 55296) + (t.charCodeAt(s + 1) - 56320);
155
+ return this.i = s + 2, n > 1114111 && this.fail("disallowed character."), n;
156
+ }
157
+ getCodeNorm() {
158
+ const t = this.getCode();
159
+ return t === bt ? pt : t;
160
+ }
161
+ unget() {
162
+ this.i = this.prevI, this.column--;
163
+ }
164
+ captureTo(t) {
165
+ let { i: s } = this;
166
+ const { chunk: o } = this;
167
+ for (; ; ) {
168
+ const n = this.getCode(), a = n === bt, l = a ? pt : n;
169
+ if (l === N || t.includes(l)) return this.text += o.slice(s, this.prevI), l;
170
+ a && (this.text += `${o.slice(s, this.prevI)}
171
+ `, s = this.i);
172
+ }
173
+ }
174
+ captureToChar(t) {
175
+ let { i: s } = this;
176
+ const { chunk: o } = this;
177
+ for (; ; ) {
178
+ let n = this.getCode();
179
+ switch (n) {
180
+ case bt:
181
+ this.text += `${o.slice(s, this.prevI)}
182
+ `, s = this.i, n = pt;
183
+ break;
184
+ case N:
185
+ return this.text += o.slice(s), !1;
186
+ }
187
+ if (n === t) return this.text += o.slice(s, this.prevI), !0;
188
+ }
189
+ }
190
+ captureNameChars() {
191
+ const { chunk: t, i: s } = this;
192
+ for (; ; ) {
193
+ const o = this.getCode();
194
+ if (o === N) return this.name += t.slice(s), N;
195
+ if (!le(o)) return this.name += t.slice(s, this.prevI), o === bt ? pt : o;
196
+ }
197
+ }
198
+ skipSpaces() {
199
+ for (; ; ) {
200
+ const t = this.getCodeNorm();
201
+ if (t === N || !rt(t)) return t;
202
+ }
203
+ }
204
+ setXMLVersion(t) {
205
+ this.currentXMLVersion = t, t === "1.0" ? (this.isChar = Pe, this.getCode = this.getCode10) : (this.isChar = Ie, this.getCode = this.getCode11);
206
+ }
207
+ sBegin() {
208
+ this.chunk.charCodeAt(0) === 65279 && (this.i++, this.column++), this.state = 1;
209
+ }
210
+ sBeginWhitespace() {
211
+ const t = this.i, s = this.skipSpaces();
212
+ switch (this.prevI !== t && (this.xmlDeclPossible = !1), s) {
213
+ case At:
214
+ if (this.state = 15, this.text.length !== 0) throw new Error("no-empty text at start");
215
+ break;
216
+ case N:
217
+ break;
218
+ default:
219
+ this.unget(), this.state = tt, this.xmlDeclPossible = !1;
220
+ }
221
+ }
222
+ sDoctype() {
223
+ const t = this.captureTo(Me);
224
+ switch (t) {
225
+ case B:
226
+ this.doctypeHandler?.(this.text), this.text = "", this.state = tt, this.doctype = !0;
227
+ break;
228
+ case N:
229
+ break;
230
+ default:
231
+ this.text += String.fromCodePoint(t), t === 91 ? this.state = 4 : Kt(t) && (this.state = 3, this.q = t);
232
+ }
233
+ }
234
+ sDoctypeQuote() {
235
+ const t = this.q;
236
+ this.captureToChar(t) && (this.text += String.fromCodePoint(t), this.q = null, this.state = 2);
237
+ }
238
+ sDTD() {
239
+ const t = this.captureTo(je);
240
+ t !== N && (this.text += String.fromCodePoint(t), t === jt ? this.state = 2 : t === At ? this.state = 6 : Kt(t) && (this.state = 5, this.q = t));
241
+ }
242
+ sDTDQuoted() {
243
+ const t = this.q;
244
+ this.captureToChar(t) && (this.text += String.fromCodePoint(t), this.state = 4, this.q = null);
245
+ }
246
+ sDTDOpenWaka() {
247
+ const t = this.getCodeNorm();
248
+ switch (this.text += String.fromCodePoint(t), t) {
249
+ case 33:
250
+ this.state = 7, this.openWakaBang = "";
251
+ break;
252
+ case z:
253
+ this.state = 11;
254
+ break;
255
+ default:
256
+ this.state = 4;
257
+ }
258
+ }
259
+ sDTDOpenWakaBang() {
260
+ const t = String.fromCodePoint(this.getCodeNorm()), s = this.openWakaBang += t;
261
+ this.text += t, s !== "-" && (this.state = s === "--" ? 8 : 4, this.openWakaBang = "");
262
+ }
263
+ sDTDComment() {
264
+ this.captureToChar(45) && (this.text += "-", this.state = 9);
265
+ }
266
+ sDTDCommentEnding() {
267
+ const t = this.getCodeNorm();
268
+ this.text += String.fromCodePoint(t), this.state = t === 45 ? 10 : 8;
269
+ }
270
+ sDTDCommentEnded() {
271
+ const t = this.getCodeNorm();
272
+ this.text += String.fromCodePoint(t), t === B ? this.state = 4 : (this.fail("malformed comment."), this.state = 8);
273
+ }
274
+ sDTDPI() {
275
+ this.captureToChar(z) && (this.text += "?", this.state = 12);
276
+ }
277
+ sDTDPIEnding() {
278
+ const t = this.getCodeNorm();
279
+ this.text += String.fromCodePoint(t), t === B && (this.state = 4);
280
+ }
281
+ sText() {
282
+ this.tags.length !== 0 ? this.handleTextInRoot() : this.handleTextOutsideRoot();
283
+ }
284
+ sEntity() {
285
+ let { i: t } = this;
286
+ const { chunk: s } = this;
287
+ t: for (; ; ) switch (this.getCode()) {
288
+ case bt:
289
+ this.entity += `${s.slice(t, this.prevI)}
290
+ `, t = this.i;
291
+ break;
292
+ case 59: {
293
+ const { entityReturnState: o } = this, n = this.entity + s.slice(t, this.prevI);
294
+ let a;
295
+ this.state = o, n === "" ? (this.fail("empty entity name."), a = "&;") : (a = this.parseEntity(n), this.entity = ""), o === tt && this.textHandler === void 0 || (this.text += a);
296
+ break t;
297
+ }
298
+ case N:
299
+ this.entity += s.slice(t);
300
+ break t;
301
+ }
302
+ }
303
+ sOpenWaka() {
304
+ const t = this.getCode();
305
+ if (zt(t)) this.state = 34, this.unget(), this.xmlDeclPossible = !1;
306
+ else switch (t) {
307
+ case 47:
308
+ this.state = 43, this.xmlDeclPossible = !1;
309
+ break;
310
+ case 33:
311
+ this.state = 16, this.openWakaBang = "", this.xmlDeclPossible = !1;
312
+ break;
313
+ case z:
314
+ this.state = 23;
315
+ break;
316
+ default:
317
+ this.fail("disallowed character in tag name"), this.state = tt, this.xmlDeclPossible = !1;
318
+ }
319
+ }
320
+ sOpenWakaBang() {
321
+ switch (this.openWakaBang += String.fromCodePoint(this.getCodeNorm()), this.openWakaBang) {
322
+ case "[CDATA[":
323
+ 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 = "";
324
+ break;
325
+ case "--":
326
+ this.state = 17, this.openWakaBang = "";
327
+ break;
328
+ case "DOCTYPE":
329
+ this.state = 2, (this.doctype || this.sawRoot) && this.fail("inappropriately located doctype declaration."), this.openWakaBang = "";
330
+ break;
331
+ default:
332
+ this.openWakaBang.length >= 7 && this.fail("incorrect syntax.");
333
+ }
334
+ }
335
+ sComment() {
336
+ this.captureToChar(45) && (this.state = 18);
337
+ }
338
+ sCommentEnding() {
339
+ const t = this.getCodeNorm();
340
+ t === 45 ? (this.state = 19, this.commentHandler?.(this.text), this.text = "") : (this.text += `-${String.fromCodePoint(t)}`, this.state = 17);
341
+ }
342
+ sCommentEnded() {
343
+ const t = this.getCodeNorm();
344
+ t !== B ? (this.fail("malformed comment."), this.text += `--${String.fromCodePoint(t)}`, this.state = 17) : this.state = tt;
345
+ }
346
+ sCData() {
347
+ this.captureToChar(jt) && (this.state = 21);
348
+ }
349
+ sCDataEnding() {
350
+ const t = this.getCodeNorm();
351
+ t === jt ? this.state = 22 : (this.text += `]${String.fromCodePoint(t)}`, this.state = 20);
352
+ }
353
+ sCDataEnding2() {
354
+ const t = this.getCodeNorm();
355
+ switch (t) {
356
+ case B:
357
+ this.cdataHandler?.(this.text), this.text = "", this.state = tt;
358
+ break;
359
+ case jt:
360
+ this.text += "]";
361
+ break;
362
+ default:
363
+ this.text += `]]${String.fromCodePoint(t)}`, this.state = 20;
364
+ }
365
+ }
366
+ sPIFirstChar() {
367
+ const t = this.getCodeNorm();
368
+ this.nameStartCheck(t) ? (this.piTarget += String.fromCodePoint(t), this.state = 24) : t === z || rt(t) ? (this.fail("processing instruction without a target."), this.state = t === z ? 26 : 25) : (this.fail("disallowed character in processing instruction name."), this.piTarget += String.fromCodePoint(t), this.state = 24);
369
+ }
370
+ sPIRest() {
371
+ const { chunk: t, i: s } = this;
372
+ for (; ; ) {
373
+ const o = this.getCodeNorm();
374
+ if (o === N) return void (this.piTarget += t.slice(s));
375
+ if (!this.nameCheck(o)) {
376
+ this.piTarget += t.slice(s, this.prevI);
377
+ const n = o === z;
378
+ n || rt(o) ? this.piTarget === "xml" ? (this.xmlDeclPossible || this.fail("an XML declaration must be at the start of the document."), this.state = n ? Ot : 27) : this.state = n ? 26 : 25 : (this.fail("disallowed character in processing instruction name."), this.piTarget += String.fromCodePoint(o));
379
+ break;
380
+ }
381
+ }
382
+ }
383
+ sPIBody() {
384
+ if (this.text.length === 0) {
385
+ const t = this.getCodeNorm();
386
+ t === z ? this.state = 26 : rt(t) || (this.text = String.fromCodePoint(t));
387
+ } else this.captureToChar(z) && (this.state = 26);
388
+ }
389
+ sPIEnding() {
390
+ const t = this.getCodeNorm();
391
+ if (t === B) {
392
+ const { piTarget: s } = this;
393
+ s.toLowerCase() === "xml" && this.fail("the XML declaration must appear at the start of the document."), this.piHandler?.({ target: s, body: this.text }), this.piTarget = this.text = "", this.state = tt;
394
+ } else t === z ? this.text += "?" : (this.text += `?${String.fromCodePoint(t)}`, this.state = 25);
395
+ this.xmlDeclPossible = !1;
396
+ }
397
+ sXMLDeclNameStart() {
398
+ const t = this.skipSpaces();
399
+ t !== z ? t !== N && (this.state = 28, this.name = String.fromCodePoint(t)) : this.state = Ot;
400
+ }
401
+ sXMLDeclName() {
402
+ const t = this.captureTo(He);
403
+ if (t === z) return this.state = Ot, this.name += this.text, this.text = "", void this.fail("XML declaration is incomplete.");
404
+ if (rt(t) || t === Mt) {
405
+ if (this.name += this.text, this.text = "", !this.xmlDeclExpects.includes(this.name)) switch (this.name.length) {
406
+ case 0:
407
+ this.fail("did not expect any more name/value pairs.");
408
+ break;
409
+ case 1:
410
+ this.fail(`expected the name ${this.xmlDeclExpects[0]}.`);
411
+ break;
412
+ default:
413
+ this.fail(`expected one of ${this.xmlDeclExpects.join(", ")}`);
414
+ }
415
+ this.state = t === Mt ? 30 : 29;
416
+ }
417
+ }
418
+ sXMLDeclEq() {
419
+ const t = this.getCodeNorm();
420
+ if (t === z) return this.state = Ot, void this.fail("XML declaration is incomplete.");
421
+ rt(t) || (t !== Mt && this.fail("value required."), this.state = 30);
422
+ }
423
+ sXMLDeclValueStart() {
424
+ const t = this.getCodeNorm();
425
+ if (t === z) return this.state = Ot, void this.fail("XML declaration is incomplete.");
426
+ rt(t) || (Kt(t) ? this.q = t : (this.fail("value must be quoted."), this.q = 32), this.state = 31);
427
+ }
428
+ sXMLDeclValue() {
429
+ const t = this.captureTo([this.q, z]);
430
+ if (t === z) return this.state = Ot, this.text = "", void this.fail("XML declaration is incomplete.");
431
+ if (t === N) return;
432
+ const s = this.text;
433
+ switch (this.text = "", this.name) {
434
+ case "version": {
435
+ this.xmlDeclExpects = ["encoding", "standalone"];
436
+ const o = s;
437
+ this.xmlDecl.version = o, /^1\.[0-9]+$/.test(o) ? this.opt.forceXMLVersion || this.setXMLVersion(o) : this.fail("version number must match /^1\\.[0-9]+$/.");
438
+ break;
439
+ }
440
+ case "encoding":
441
+ /^[A-Za-z][A-Za-z0-9._-]*$/.test(s) || this.fail("encoding value must match /^[A-Za-z0-9][A-Za-z0-9._-]*$/."), this.xmlDeclExpects = ["standalone"], this.xmlDecl.encoding = s;
442
+ break;
443
+ case "standalone":
444
+ s !== "yes" && s !== "no" && this.fail('standalone value must match "yes" or "no".'), this.xmlDeclExpects = [], this.xmlDecl.standalone = s;
445
+ }
446
+ this.name = "", this.state = 32;
447
+ }
448
+ sXMLDeclSeparator() {
449
+ const t = this.getCodeNorm();
450
+ t !== z ? (rt(t) || (this.fail("whitespace required."), this.unget()), this.state = 27) : this.state = Ot;
451
+ }
452
+ sXMLDeclEnding() {
453
+ this.getCodeNorm() === B ? (this.piTarget !== "xml" ? this.fail("processing instructions are not allowed before root.") : this.name !== "version" && this.xmlDeclExpects.includes("version") && this.fail("XML declaration must contain a version."), this.xmldeclHandler?.(this.xmlDecl), this.name = "", this.piTarget = this.text = "", this.state = tt) : this.fail("The character ? is disallowed anywhere in XML declarations."), this.xmlDeclPossible = !1;
454
+ }
455
+ sOpenTag() {
456
+ const t = this.captureNameChars();
457
+ if (t === N) return;
458
+ const s = this.tag = { name: this.name, attributes: /* @__PURE__ */ Object.create(null) };
459
+ switch (this.name = "", this.xmlnsOpt && (this.topNS = s.ns = /* @__PURE__ */ Object.create(null)), this.openTagStartHandler?.(s), this.sawRoot = !0, !this.fragmentOpt && this.closedRoot && this.fail("documents may contain only one root."), t) {
460
+ case B:
461
+ this.openTag();
462
+ break;
463
+ case 47:
464
+ this.state = 35;
465
+ break;
466
+ default:
467
+ rt(t) || this.fail("disallowed character in tag name."), this.state = 36;
468
+ }
469
+ }
470
+ sOpenTagSlash() {
471
+ this.getCode() === B ? this.openSelfClosingTag() : (this.fail("forward-slash in opening tag not followed by >."), this.state = 36);
472
+ }
473
+ sAttrib() {
474
+ const t = this.skipSpaces();
475
+ t !== N && (zt(t) ? (this.unget(), this.state = 37) : t === B ? this.openTag() : t === 47 ? this.state = 35 : this.fail("disallowed character in attribute name."));
476
+ }
477
+ sAttribName() {
478
+ const t = this.captureNameChars();
479
+ t === Mt ? this.state = 39 : rt(t) ? this.state = 38 : t === B ? (this.fail("attribute without value."), this.pushAttrib(this.name, this.name), this.name = this.text = "", this.openTag()) : t !== N && this.fail("disallowed character in attribute name.");
480
+ }
481
+ sAttribNameSawWhite() {
482
+ const t = this.skipSpaces();
483
+ switch (t) {
484
+ case N:
485
+ return;
486
+ case Mt:
487
+ this.state = 39;
488
+ break;
489
+ default:
490
+ this.fail("attribute without value."), this.text = "", this.name = "", t === B ? this.openTag() : zt(t) ? (this.unget(), this.state = 37) : (this.fail("disallowed character in attribute name."), this.state = 36);
491
+ }
492
+ }
493
+ sAttribValue() {
494
+ const t = this.getCodeNorm();
495
+ Kt(t) ? (this.q = t, this.state = 40) : rt(t) || (this.fail("unquoted attribute value."), this.state = 42, this.unget());
496
+ }
497
+ sAttribValueQuoted() {
498
+ const { q: t, chunk: s } = this;
499
+ let { i: o } = this;
500
+ for (; ; ) switch (this.getCode()) {
501
+ case t:
502
+ return this.pushAttrib(this.name, this.text + s.slice(o, this.prevI)), this.name = this.text = "", this.q = null, void (this.state = 41);
503
+ case 38:
504
+ return this.text += s.slice(o, this.prevI), this.state = 14, void (this.entityReturnState = 40);
505
+ case pt:
506
+ case bt:
507
+ case 9:
508
+ this.text += `${s.slice(o, this.prevI)} `, o = this.i;
509
+ break;
510
+ case At:
511
+ return this.text += s.slice(o, this.prevI), void this.fail("disallowed character.");
512
+ case N:
513
+ return void (this.text += s.slice(o));
514
+ }
515
+ }
516
+ sAttribValueClosed() {
517
+ const t = this.getCodeNorm();
518
+ rt(t) ? this.state = 36 : t === B ? this.openTag() : t === 47 ? this.state = 35 : zt(t) ? (this.fail("no whitespace between attributes."), this.unget(), this.state = 37) : this.fail("disallowed character in attribute name.");
519
+ }
520
+ sAttribValueUnquoted() {
521
+ const t = this.captureTo(Fe);
522
+ switch (t) {
523
+ case 38:
524
+ this.state = 14, this.entityReturnState = 42;
525
+ break;
526
+ case At:
527
+ this.fail("disallowed character.");
528
+ break;
529
+ case N:
530
+ break;
531
+ default:
532
+ this.text.includes("]]>") && this.fail('the string "]]>" is disallowed in char data.'), this.pushAttrib(this.name, this.text), this.name = this.text = "", t === B ? this.openTag() : this.state = 36;
533
+ }
534
+ }
535
+ sCloseTag() {
536
+ const t = this.captureNameChars();
537
+ t === B ? this.closeTag() : rt(t) ? this.state = 44 : t !== N && this.fail("disallowed character in closing tag.");
538
+ }
539
+ sCloseTagSawWhite() {
540
+ switch (this.skipSpaces()) {
541
+ case B:
542
+ this.closeTag();
543
+ break;
544
+ case N:
545
+ break;
546
+ default:
547
+ this.fail("disallowed character in closing tag.");
548
+ }
549
+ }
550
+ handleTextInRoot() {
551
+ let { i: t, forbiddenState: s } = this;
552
+ const { chunk: o, textHandler: n } = this;
553
+ t: for (; ; ) switch (this.getCode()) {
554
+ case At:
555
+ if (this.state = 15, n !== void 0) {
556
+ const { text: a } = this, l = o.slice(t, this.prevI);
557
+ a.length !== 0 ? (n(a + l), this.text = "") : l.length !== 0 && n(l);
558
+ }
559
+ s = 0;
560
+ break t;
561
+ case 38:
562
+ this.state = 14, this.entityReturnState = tt, n !== void 0 && (this.text += o.slice(t, this.prevI)), s = 0;
563
+ break t;
564
+ case jt:
565
+ switch (s) {
566
+ case 0:
567
+ s = 1;
568
+ break;
569
+ case 1:
570
+ s = 2;
571
+ break;
572
+ case 2:
573
+ break;
574
+ default:
575
+ throw new Error("impossible state");
576
+ }
577
+ break;
578
+ case B:
579
+ s === 2 && this.fail('the string "]]>" is disallowed in char data.'), s = 0;
580
+ break;
581
+ case bt:
582
+ n !== void 0 && (this.text += `${o.slice(t, this.prevI)}
583
+ `), t = this.i, s = 0;
584
+ break;
585
+ case N:
586
+ n !== void 0 && (this.text += o.slice(t));
587
+ break t;
588
+ default:
589
+ s = 0;
590
+ }
591
+ this.forbiddenState = s;
592
+ }
593
+ handleTextOutsideRoot() {
594
+ let { i: t } = this;
595
+ const { chunk: s, textHandler: o } = this;
596
+ let n = !1;
597
+ t: for (; ; ) {
598
+ const a = this.getCode();
599
+ switch (a) {
600
+ case At:
601
+ if (this.state = 15, o !== void 0) {
602
+ const { text: l } = this, g = s.slice(t, this.prevI);
603
+ l.length !== 0 ? (o(l + g), this.text = "") : g.length !== 0 && o(g);
604
+ }
605
+ break t;
606
+ case 38:
607
+ this.state = 14, this.entityReturnState = tt, o !== void 0 && (this.text += s.slice(t, this.prevI)), n = !0;
608
+ break t;
609
+ case bt:
610
+ o !== void 0 && (this.text += `${s.slice(t, this.prevI)}
611
+ `), t = this.i;
612
+ break;
613
+ case N:
614
+ o !== void 0 && (this.text += s.slice(t));
615
+ break t;
616
+ default:
617
+ rt(a) || (n = !0);
618
+ }
619
+ }
620
+ n && (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));
621
+ }
622
+ pushAttribNS(t, s) {
623
+ const { prefix: o, local: n } = this.qname(t), a = { name: t, prefix: o, local: n, value: s };
624
+ if (this.attribList.push(a), this.attributeHandler?.(a), o === "xmlns") {
625
+ const l = s.trim();
626
+ this.currentXMLVersion === "1.0" && l === "" && this.fail("invalid attempt to undefine prefix in XML 1.0"), this.topNS[n] = l, se(this, n, l);
627
+ } else if (t === "xmlns") {
628
+ const l = s.trim();
629
+ this.topNS[""] = l, se(this, "", l);
630
+ }
631
+ }
632
+ pushAttribPlain(t, s) {
633
+ const o = { name: t, value: s };
634
+ this.attribList.push(o), this.attributeHandler?.(o);
635
+ }
636
+ end() {
637
+ this.sawRoot || this.fail("document must contain a root element.");
638
+ const { tags: t } = this;
639
+ for (; t.length > 0; ) {
640
+ const o = t.pop();
641
+ this.fail(`unclosed tag: ${o.name}`);
642
+ }
643
+ this.state !== 0 && this.state !== tt && this.fail("unexpected end.");
644
+ const { text: s } = this;
645
+ return s.length !== 0 && (this.textHandler?.(s), this.text = ""), this._closed = !0, this.endHandler?.(), this._init(), this;
646
+ }
647
+ resolve(t) {
648
+ let s = this.topNS[t];
649
+ if (s !== void 0) return s;
650
+ const { tags: o } = this;
651
+ for (let n = o.length - 1; n >= 0; n--) if (s = o[n].ns[t], s !== void 0) return s;
652
+ return s = this.ns[t], s !== void 0 ? s : this.opt.resolvePrefix?.(t);
653
+ }
654
+ qname(t) {
655
+ const s = t.indexOf(":");
656
+ if (s === -1) return { prefix: "", local: t };
657
+ const o = t.slice(s + 1), n = t.slice(0, s);
658
+ return (n === "" || o === "" || o.includes(":")) && this.fail(`malformed name: ${t}.`), { prefix: n, local: o };
659
+ }
660
+ processAttribsNS() {
661
+ const { attribList: t } = this, s = this.tag;
662
+ {
663
+ const { prefix: a, local: l } = this.qname(s.name);
664
+ s.prefix = a, s.local = l;
665
+ const g = s.uri = this.resolve(a) ?? "";
666
+ a !== "" && (a === "xmlns" && this.fail('tags may not have "xmlns" as prefix.'), g === "" && (this.fail(`unbound namespace prefix: ${JSON.stringify(a)}.`), s.uri = a));
667
+ }
668
+ if (t.length === 0) return;
669
+ const { attributes: o } = s, n = /* @__PURE__ */ new Set();
670
+ for (const a of t) {
671
+ const { name: l, prefix: g, local: S } = a;
672
+ let b, x;
673
+ g === "" ? (b = l === "xmlns" ? Ht : "", x = l) : (b = this.resolve(g), b === void 0 && (this.fail(`unbound namespace prefix: ${JSON.stringify(g)}.`), b = g), x = `{${b}}${S}`), n.has(x) && this.fail(`duplicate attribute: ${x}.`), n.add(x), a.uri = b, o[l] = a;
674
+ }
675
+ this.attribList = [];
676
+ }
677
+ processAttribsPlain() {
678
+ const { attribList: t } = this, s = this.tag.attributes;
679
+ for (const { name: o, value: n } of t) s[o] !== void 0 && this.fail(`duplicate attribute: ${o}.`), s[o] = n;
680
+ this.attribList = [];
681
+ }
682
+ openTag() {
683
+ this.processAttribs();
684
+ const { tags: t } = this, s = this.tag;
685
+ s.isSelfClosing = !1, this.openTagHandler?.(s), t.push(s), this.state = tt, this.name = "";
686
+ }
687
+ openSelfClosingTag() {
688
+ this.processAttribs();
689
+ const { tags: t } = this, s = this.tag;
690
+ s.isSelfClosing = !0, this.openTagHandler?.(s), this.closeTagHandler?.(s), (this.tag = t[t.length - 1] ?? null) === null && (this.closedRoot = !0), this.state = tt, this.name = "";
691
+ }
692
+ closeTag() {
693
+ const { tags: t, name: s } = this;
694
+ if (this.state = tt, this.name = "", s === "") return this.fail("weird empty close tag."), void (this.text += "</>");
695
+ const o = this.closeTagHandler;
696
+ let n = t.length;
697
+ for (; n-- > 0; ) {
698
+ const a = this.tag = t.pop();
699
+ if (this.topNS = a.ns, o?.(a), a.name === s) break;
700
+ this.fail("unexpected close tag.");
701
+ }
702
+ n === 0 ? this.closedRoot = !0 : n < 0 && (this.fail(`unmatched closing tag: ${s}.`), this.text += `</${s}>`);
703
+ }
704
+ parseEntity(t) {
705
+ if (t[0] !== "#") {
706
+ const o = this.ENTITIES[t];
707
+ return o !== void 0 ? o : (this.fail(this.isName(t) ? "undefined entity." : "disallowed character in entity name."), `&${t};`);
708
+ }
709
+ let s = NaN;
710
+ return t[1] === "x" && /^#x[0-9a-f]+$/i.test(t) ? s = parseInt(t.slice(2), 16) : /^#[0-9]+$/.test(t) && (s = parseInt(t.slice(1), 10)), this.isChar(s) ? String.fromCodePoint(s) : (this.fail("malformed character entity."), `&${t};`);
711
+ }
712
+ }
713
+ var ie, Ct;
714
+ (Ct = ie || (ie = {})).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" }, Ct.parseStream = async (i, t, s) => {
715
+ const o = new We({ position: !1, ...s });
716
+ let n;
717
+ if (t.onOpenTagStart && o.on(Ct.Events.OpenTagStart, t.onOpenTagStart), t.onOpenTag && o.on(Ct.Events.OpenTag, t.onOpenTag), t.onCloseTag && o.on(Ct.Events.CloseTag, t.onCloseTag), t.onAttribute && o.on(Ct.Events.Attribute, t.onAttribute), t.onText && o.on(Ct.Events.Text, t.onText), t.onError && o.on(Ct.Events.Error, t.onError), t.onEnd) {
718
+ t.onEnd;
719
+ const a = () => {
720
+ n = t.onEnd();
721
+ };
722
+ o.on(Ct.Events.End, a);
723
+ }
724
+ for (; ; ) {
725
+ const { value: a, done: l } = await i.read();
726
+ if (l) break;
727
+ o.write(a);
728
+ }
729
+ return o.close(), n;
730
+ };
731
+ const P = (i) => i === !0 || i === "1" || i === "on" || i === "true" || i !== !1 && i !== "0" && i !== "off" && i !== "false" && null, L = (i) => {
732
+ const t = parseInt(i);
733
+ return isNaN(t) ? null : t;
734
+ }, xt = (i) => {
735
+ const t = parseFloat(i);
736
+ return isNaN(t) ? null : t;
737
+ }, O = null;
738
+ class _e {
739
+ constructor() {
740
+ this._registeredVisitors = /* @__PURE__ */ new Map();
741
+ }
742
+ registerVisitor(t) {
743
+ this._registeredVisitors.set(t.from, t);
744
+ }
745
+ createEventHandler(t, s, o) {
746
+ const n = this._registeredVisitors, a = [];
747
+ let l = null, g = null, S = null, b = null;
748
+ const x = [], C = { key: null, source: t };
749
+ let w = null, u = !1;
750
+ const A = (T, m) => {
751
+ let I = S.attributes[T];
752
+ if (m) {
753
+ if (Array.isArray(m)) {
754
+ for (let H = 0; H < m.length; H++) if (I == null || (I = m[H](I), I == null)) return;
755
+ } else if (I == null || (I = m(I), I == null)) return;
756
+ }
757
+ return I;
758
+ }, f = { getSource: () => w.source, setSource: (T) => {
759
+ w.source = T;
760
+ }, setKey: (T) => {
761
+ w.key = T;
762
+ }, getFrom: () => S, getAttribute: (T, m) => A(T, m) ?? null, hasAttribute: (T) => f.getAttribute(T) !== null, getParent: () => x[x.length - 2].source, getPath: () => {
763
+ const T = [];
764
+ for (let m = 0; m < a.length; m++) T.push(a[m].local);
765
+ return T.join("\\");
766
+ }, parseAttribute: A, copyToObject: (T, m, I, H) => {
767
+ const W = A(H ?? m, I);
768
+ W !== void 0 && (T[m] = W);
769
+ }, copyTo: (T, m, I) => {
770
+ const H = A(I ?? T, m);
771
+ H !== void 0 && (w.source[T] = H);
772
+ }, warn: (T) => {
773
+ o ? o?.(T) : console.warn(T);
774
+ } };
775
+ return { onOpenTag: (T) => {
776
+ let m = T.name;
777
+ const I = m.indexOf(":");
778
+ I !== -1 && (m = m.slice(I + 1));
779
+ const H = n.get(m);
780
+ if (l = { local: m, visitor: H, tag: T, destination: null }, u) return a.push(l), g = m, void (S = T);
781
+ b = l?.visitor ?? null, H && (w = a.length === 0 ? C : b?.to !== null ? { key: null, source: {} } : null, l.destination = w, w && x.push(w)), a.push(l), g = m, S = T, u = b?.to === null, b?.openTag?.(f);
782
+ }, onCloseTag: (T) => {
783
+ let m = T.name;
784
+ const I = m.indexOf(":");
785
+ if (I !== -1 && (m = m.slice(I + 1)), m !== g) throw new Error(`mismatch open/close tag: '${m}'/'${g}'`);
786
+ u || b?.closeTag?.(f);
787
+ const H = a.pop() ?? null;
788
+ l = a[a.length - 1] ?? null;
789
+ const W = H?.destination;
790
+ if (W) {
791
+ x.pop(), w = x[x.length - 1] ?? C;
792
+ const Z = H.visitor;
793
+ Z && Z.to && W.source !== void 0 && (Array.isArray(Z.to) ? w.source.push ? w.source.push(W.source) : o?.(`Unable to parse array for ${Z.from} at ${f.getPath()}`) : W.key ? w.source[W.key] = W.source : typeof Z.to == "string" && (w.source[Z.to] = W.source));
794
+ }
795
+ g = l?.local ?? null, S = l?.tag ?? null, b = l?.visitor ?? null, u = !l?.destination;
796
+ }, onText: (T) => {
797
+ b?.text?.(T, f);
798
+ }, onEnd: s };
799
+ }
800
+ }
801
+ const he = (i, t, s, o = null) => {
802
+ if (!i) return null;
803
+ let n = i;
804
+ n.startsWith("/") && (n = n.substring(1));
805
+ let a = o?.parsedRefs?.get(i);
806
+ if (a !== void 0) return a;
807
+ const l = t(n);
808
+ if (!l) return null;
809
+ let g = l.content;
810
+ try {
811
+ s && (g = s(g));
812
+ } catch (S) {
813
+ console.warn(S);
814
+ }
815
+ return o?.parsedRefs?.set(i, g), g;
816
+ }, oe = (i, t, s, o, n = null) => {
817
+ if (!i) return null;
818
+ let a = i;
819
+ a.startsWith("/") && (a = a.substring(1));
820
+ let l = n?.parsedRefs?.get(i);
821
+ if (l !== void 0) return l;
822
+ const g = t(a);
823
+ if (!g) return null;
824
+ const S = g.content;
825
+ try {
826
+ const b = new TextDecoder().decode(S), x = s.parseFromString(b, "text/xml"), C = o.convert(x, i, n);
827
+ return n?.parsedRefs?.set(i, C), C;
828
+ } catch (b) {
829
+ console.warn(b);
830
+ }
831
+ return null;
832
+ }, $t = (i, t, s, o, n = null) => {
833
+ const a = /* @__PURE__ */ new Map();
834
+ let l = t.Directory[i];
835
+ const g = l ? l.length : 0;
836
+ for (let S = 0; S < g; S++) {
837
+ const b = l[S];
838
+ if (!b) continue;
839
+ let x = b;
840
+ x.startsWith("/") && (x = x.substring(1));
841
+ const C = oe(x, (w) => t.files[w], s, o, n);
842
+ a.set(x, C);
843
+ }
844
+ return a;
845
+ }, qe = ["lt1", "dk1", "lt2", "dk2", "accent1", "accent2", "accent3", "accent4", "accent5", "accent6", "hlink", "folHlink"], ue = (i, t = "dk1") => {
846
+ let s;
847
+ const o = i("auto");
848
+ o === void 0 || o !== "1" && o !== "true" || (s = t);
849
+ const n = i("indexed");
850
+ n && (s = `index${n}`);
851
+ const a = i("rgb");
852
+ a && (s = a.toLowerCase(), a.length !== 8 || a.startsWith("FF") || (s = "FF" + a.substring(2, a.length)));
853
+ const l = i("theme");
854
+ l && (s = qe[l]);
855
+ let g = i("tint");
856
+ if (g && (s += ` ${Se.AdjustmentType.ETint} ${parseFloat(g)}`), s) return s;
857
+ }, ze = (i) => i && i.replace(/^\{([\s\S]+)\}$/, "$1"), Je = (i) => i ? te.roundAccurately(parseFloat(i) / 12700, 4) : null, Ke = (i) => i ? te.roundAccurately(parseFloat(i) / 9525, 1) : null, Ye = (i) => parseFloat(i) / 1e3, ts = (i) => parseFloat(i) / 6e4, Ue = (i) => i === "true" || i === "1";
858
+ class It {
859
+ static {
860
+ this.Collapsed = 1;
861
+ }
862
+ static {
863
+ this.CustomFormat = 2;
864
+ }
865
+ static {
866
+ this.CustomHeight = 4;
867
+ }
868
+ static {
869
+ this.Hidden = 8;
870
+ }
871
+ static {
872
+ this.Ht = 16;
873
+ }
874
+ static {
875
+ this.OutlineLevel = 32;
876
+ }
877
+ static {
878
+ this.Ph = 64;
879
+ }
880
+ static {
881
+ this.R = 128;
882
+ }
883
+ static {
884
+ this.S = 256;
885
+ }
886
+ static {
887
+ this.Spans = 512;
888
+ }
889
+ static {
890
+ this.ThickBot = 1024;
891
+ }
892
+ static {
893
+ this.ThickTop = 2048;
894
+ }
895
+ }
896
+ const Ge = (i, t, s) => {
897
+ if (i[0].value[0] === i[1].value[0]) return t;
898
+ }, de = { colStart: 0, colEnd: 0, rowStart: 0, rowEnd: 0 }, Ze = (i, t, s, o, n, a) => {
899
+ let l = !1, g = !1, S = [], b = !1, x = null, C = null, w = null, u = null, A = null, f = null;
900
+ const T = a?.get("richData") ?? [], m = wt.normalizeA1ToR1C1, I = ee.createConflatingRanges(), H = /* @__PURE__ */ new Map(), W = [];
901
+ let Z = null;
902
+ const Ft = ee.createConflatingRanges();
903
+ let gt, ct = !1, F = -1, $ = -1, et = null, vt = null;
904
+ const Xt = [];
905
+ let Lt = null, Bt = -2, ht = 0, ut = "", ft = "", mt = "", Q = "", dt = "", Tt = "", St = "", Dt = "", Ut = "", Nt = "", Gt = "", Zt = "", D = "", U = "", M = !0, q = null;
906
+ return { ...s, onEnd: () => {
907
+ Xt.length > 0 && (t.rows = Xt);
908
+ let d = I.done(Ge);
909
+ const p = d.length;
910
+ if (p > 0) {
911
+ const E = new Array(p);
912
+ for (let v = 0; v < p; v++) {
913
+ const R = d[v], G = wt.rangeToString(R), st = R.value[1], it = wt.resolveRelativeToA1(st, R.rowStart, R.colStart);
914
+ E[v] = [G, it];
915
+ }
916
+ t.formulas = E;
917
+ }
918
+ const J = Ft.done(!0), V = J.length;
919
+ if (V > 0) {
920
+ const E = new Array(V);
921
+ for (let v = 0; v < V; v++) {
922
+ const R = J[v], G = wt.rangeToString(R);
923
+ E[v] = G;
924
+ }
925
+ t.volatile = E;
926
+ }
927
+ if (W.length > 0 && (t.dynamicArray = [...W]), S.length > 0) {
928
+ S.sort(ee.createRangeComparator(Ce.Orientation.Column));
929
+ const E = [];
930
+ let v = null, R = -1, G = -1, st = -1, it = -1, Y = null;
931
+ const yt = S.length;
932
+ yt > 0 && (v = S[0], R = v.colStart, G = v.colEnd, st = v.rowEnd, it = v.value, E.push(v));
933
+ for (let k = 1; k < yt; k++) Y = S[k], it !== Y.value || R !== Y.colStart || G !== Y.colEnd || st + 1 !== Y.rowEnd ? (E.push(Y), v = Y, R = v.colStart, G = v.colEnd, st = v.rowEnd, it = v.value) : (st = Y.rowEnd, v.rowEnd = st);
934
+ let Wt = [];
935
+ for (let k = 0; k < E.length; k++) {
936
+ const X = E[k];
937
+ Wt.push({ r: { colStart: X.colStart, colEnd: X.colEnd, rowStart: X.rowStart, rowEnd: X.rowEnd }, v: X.value });
938
+ }
939
+ t.directStyles = Wt;
940
+ }
941
+ const K = i.build();
942
+ if (K) {
943
+ const E = K.tuples;
944
+ t.data = E;
945
+ }
946
+ s?.onEnd?.();
947
+ }, onOpenTag: (d) => {
948
+ let p = d.name;
949
+ const J = p.indexOf(":");
950
+ if (J !== -1 && (p = p.slice(J + 1)), gt) {
951
+ const V = d.attributes;
952
+ switch (p) {
953
+ case "v":
954
+ g = !0;
955
+ break;
956
+ case "f":
957
+ switch (V.t ?? null) {
958
+ case null:
959
+ case "normal":
960
+ b = !0;
961
+ break;
962
+ case "shared":
963
+ const K = V.si;
964
+ C = V.ref, x = K;
965
+ break;
966
+ case "array":
967
+ b = !0, C = V.ref, Z = [C, !1];
968
+ break;
969
+ case "datatable":
970
+ b = !0, C = V.ref, b = !0;
971
+ }
972
+ V.ca !== void 0 && Ft.append(F, $);
973
+ break;
974
+ case "is":
975
+ return void (ct = !0);
976
+ }
977
+ return void (ct && n?.onOpenTag(d));
978
+ }
979
+ if (l) {
980
+ if (p === "c") {
981
+ gt = d;
982
+ const V = d.attributes.r;
983
+ $ = wt.fastStringToCol(V);
984
+ const K = d.attributes.t;
985
+ K === void 0 ? vt = null : (vt = K, vt === "str" && (ct = !0));
986
+ let E = d.attributes.s;
987
+ E !== void 0 && (E = parseInt(E), q && q.value === E && q.colEnd + 1 === $ ? q.colEnd = $ : (q = { colStart: $, rowStart: F, colEnd: $, rowEnd: F, value: E }, S.push(q)));
988
+ }
989
+ } else {
990
+ if (p === "row") {
991
+ l = !0;
992
+ const V = d.attributes.r;
993
+ if (F = parseInt(V) - 1, ht = 0, ft = d.attributes.customHeight, ft !== void 0 && (ht |= It.CustomHeight), ft !== Ut && (M = !0, Ut = ft), ut = d.attributes.ht, ut !== void 0 && (ht |= It.Ht), ut !== Dt && (M = !0, Dt = ut), mt = d.attributes.hidden, mt !== void 0 && (ht |= It.Hidden), mt !== Nt && (M = !0, Nt = mt), dt = d.attributes.s, dt !== void 0 && (ht |= It.S), dt !== Zt && (M = !0, Zt = dt), Q = d.attributes.customFormat, Q !== void 0 && (ht |= It.CustomFormat), Q !== Gt && (M = !0, Gt = Q), Tt = d.attributes.outlineLevel, Tt !== void 0 && (ht |= It.OutlineLevel), Tt !== D && (M = !0, D = Tt), St = d.attributes.collapsed, St !== void 0 && (ht |= It.Collapsed), St !== U && (M = !0, U = St), ht !== 0) if (Bt + 1 !== F || M) {
994
+ const K = ft !== void 0 && (ft === "1" || ft === "true"), E = Q !== void 0 && (Q === "1" || Q === "true");
995
+ Lt = { min: F, max: F, sz: K && ut !== void 0 ? parseFloat(ut) : -1, csz: K, h: mt !== void 0 && (mt === "1" || mt === "true"), s: K && dt !== void 0 && dt !== "0" ? parseInt(dt) : 0, cs: E, l: Tt === void 0 || Tt === "0" ? 0 : parseInt(Tt), cl: St !== void 0 && (St === "1" || St === "true") }, Xt.push(Lt);
996
+ } else Lt.max = F;
997
+ return Bt = F, void (M = !1);
998
+ }
999
+ s?.onOpenTag(d);
1000
+ }
1001
+ }, onCloseTag: (d) => {
1002
+ if (gt) {
1003
+ let p = d.name;
1004
+ const J = p.indexOf(":");
1005
+ if (J !== -1 && (p = p.slice(J + 1)), ct) if (p === "is" || p === "v") {
1006
+ const V = n?.onEnd();
1007
+ V !== null && i.addValue(F, $, "" + V);
1008
+ } else n?.onCloseTag?.(d);
1009
+ return g && (g = !1), void (p === "c" && (gt = null, ct = !1));
1010
+ }
1011
+ if (l) return l = !1, void (q = null);
1012
+ s?.onCloseTag(d);
1013
+ }, onText: (d) => {
1014
+ if (d = d.trim(), g) {
1015
+ switch (et = null, vt) {
1016
+ case null:
1017
+ case "n":
1018
+ et = parseFloat(d);
1019
+ break;
1020
+ case "b":
1021
+ et = d === "1" || d === "true";
1022
+ break;
1023
+ case "s":
1024
+ et = d;
1025
+ break;
1026
+ case "e":
1027
+ if (d === "#VALUE!") {
1028
+ const J = gt.attributes.vm;
1029
+ if (J !== void 0) {
1030
+ const V = T[parseInt(J) - 1];
1031
+ if (V && V.isFormulaError) {
1032
+ et = { t: Vt.Error, v: V.getCode() };
1033
+ break;
1034
+ }
1035
+ }
1036
+ }
1037
+ const p = Ae.getBuiltInByLabel(d);
1038
+ p ? et = { t: Vt.Error, v: p.getCode() } : (et = d, o?.(`Unknown formula error '${d}' in cell ${wt.cellToString({ colIndex: $, rowIndex: F })}`));
1039
+ break;
1040
+ case "str":
1041
+ case "inlineStr":
1042
+ ct = !0;
1043
+ }
1044
+ et !== null && i.addValue(F, $, et);
1045
+ }
1046
+ if (Z && (vt === "e" && (Z[1] = !0), W.push(Z), Z = null), x) if (A === x) u = f;
1047
+ else {
1048
+ if (u = H.get(x), !u) {
1049
+ const p = [];
1050
+ w = m(d, F, $, p), u = [w, p, d], H.set(x, u);
1051
+ }
1052
+ A = x, f = u;
1053
+ }
1054
+ if (b) {
1055
+ const p = [];
1056
+ w = m(d, F, $, p), u = [w, p, d];
1057
+ }
1058
+ if (u) return I.append(F, $, u), u = null, b = !1, x = null, void (C = null);
1059
+ ct ? n?.onText(d) : l || s?.onText(d);
1060
+ } };
1061
+ }, es = Object.freeze(Object.defineProperty({ __proto__: null, fromBufferXLSX: async (i, t) => {
1062
+ const { password: s, onWarning: o, createWorkbookOptions: n = {}, ...a } = t ?? {}, l = import("./BLseM2hNBI2PgQaX.js"), g = import("./7ZUzaBw_VH3Cvii1.js");
1063
+ let S = null;
1064
+ try {
1065
+ S = new DOMParser();
1066
+ } catch {
1067
+ }
1068
+ let b = null;
1069
+ S || (b = import("./B8ePgT5XZ0JlU3T6.js").then((u) => u.i));
1070
+ let x = null, C = null, w = null;
1071
+ try {
1072
+ const u = await Promise.all([l, g, b]);
1073
+ x = u[0], C = u[1], w = u[2];
1074
+ } catch (u) {
1075
+ throw new Error("Unable to load XLSX parser.", { cause: u });
1076
+ }
1077
+ try {
1078
+ const u = x.read(i, { type: "array", sheets: [], cellStyles: !1, bookFiles: !0 });
1079
+ if (!u.Directory) throw new Error("Unable to parse as an Excel document. Try to save as '.xlsx' and try again.");
1080
+ u.Directory.richstructure = ["/xl/richData/rdrichvaluestructure.xml"], u.Directory.richdata = ["/xl/richData/rdrichvalue.xml"];
1081
+ const A = new C.FromOOXMLConverter(), f = S ?? new w.DOMParser(), T = n?.resources ?? new ye(), m = T.beginPersist(), I = {}, H = /* @__PURE__ */ new Set(), W = /* @__PURE__ */ new Map();
1082
+ W.set("richTypes", []);
1083
+ const Z = /* @__PURE__ */ new Map(), Ft = [], gt = (D) => u.files[D], ct = (D, U) => {
1084
+ const M = D.lastIndexOf("/"), q = D.substring(0, M + 1) + "_rels/" + D.substring(M + 1, D.length) + ".rels";
1085
+ let d = U.get(q);
1086
+ return d || (d = ((p, J, V, K, E = null) => {
1087
+ if (!p) return null;
1088
+ const v = oe(p, J, V, K, E);
1089
+ if (!v) return null;
1090
+ const R = /* @__PURE__ */ new Map(), G = Object.keys(v), st = G.length;
1091
+ for (let it = 0; it < st; it++) {
1092
+ const Y = G[it], yt = v[Y];
1093
+ R.set(Y, yt);
1094
+ }
1095
+ return R;
1096
+ })(q, gt, f, A, $), U.set(q, d)), d;
1097
+ }, F = (D, U, M, q = Z) => {
1098
+ let d = ct(U, q).get(D), p = d?.target;
1099
+ if (!p) return null;
1100
+ if (d.targetMode === "External") return d.target;
1101
+ const J = U.lastIndexOf("/"), V = U.substring(0, J + 1);
1102
+ p.startsWith("/") || (p = V + p), p = ((v) => {
1103
+ const R = v.split(/\/+/);
1104
+ return R.reduce((G, st, it) => (st === "." ? G.splice(it, 1) : st === ".." && G.splice(it - 1, 2), G), R).join("/");
1105
+ })(p);
1106
+ const K = A?.getVisitorParamsState().get("dxfs");
1107
+ let E = q.get(p);
1108
+ if (!E) if (d.type === "http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet") {
1109
+ const v = {};
1110
+ E = v;
1111
+ const R = async () => {
1112
+ const G = ((k, X, _t, ot, nt, at, kt) => {
1113
+ const h = new _e(), lt = new be.TransposedBuilder();
1114
+ let _ = null;
1115
+ h.registerVisitor({ from: "autoFilter", to: "filter", openTag: (e) => {
1116
+ e.copyTo("ref", O);
1117
+ } }), h.registerVisitor({ from: "conditionalFormatting", to: {}, openTag: (e) => {
1118
+ const r = e.getParent();
1119
+ r.conditionals || (r.conditionals = []), r.conditionals.push(e.getSource());
1120
+ const c = e.getAttribute("sqref");
1121
+ c && (e.getSource().ref = c.split(" ").join(",")), e.copyTo("pivot", P);
1122
+ }, closeTag: (e) => {
1123
+ const r = e.getSource();
1124
+ if (r.rule) {
1125
+ const c = Object.keys(r.rule);
1126
+ for (let y = 0; y < c.length; y++) {
1127
+ const j = c[y];
1128
+ j !== "rule" && (r[j] = r.rule[j]);
1129
+ }
1130
+ }
1131
+ delete r.rule;
1132
+ } }), h.registerVisitor({ from: "cfRule", to: "rule", openTag: (e) => {
1133
+ const r = e.getParent();
1134
+ e.copyToObject(r, "type", O), e.copyToObject(r, "priority", L), e.copyToObject(r, "stopIfTrue", P);
1135
+ const c = e.getAttribute("dxfId", L);
1136
+ if (c !== null) {
1137
+ let y = ot?.get(c);
1138
+ y || (at?.(`Unable to load conditional color. Invalid dxfI: '${c}' at '${e.getPath()}'.`), y = {}), r.style = y;
1139
+ }
1140
+ e.copyToObject(r, "aboveAverage", P), e.copyToObject(r, "equalAverage", P), e.copyToObject(r, "stdDev", L), e.copyToObject(r, "bottom", P), e.copyToObject(r, "percent", P), e.copyToObject(r, "rank", L), e.copyToObject(r, "operator", O), e.copyToObject(r, "text", O), e.copyToObject(r, "timePeriod", O);
1141
+ } }), h.registerVisitor({ from: "colorScale", to: "colorScale" }), h.registerVisitor({ from: "dataBar", to: "dataBar", openTag: (e) => {
1142
+ e.copyTo("maxLength", L), e.copyTo("minLength", L), e.copyTo("showValue", P);
1143
+ } }), h.registerVisitor({ from: "iconSet", to: "iconSet", openTag: (e) => {
1144
+ e.copyTo("iconSet", O), e.copyTo("reverse", P), e.copyTo("showValue", P);
1145
+ } }), h.registerVisitor({ from: "formula", to: null, text: (e, r) => {
1146
+ const c = r.getParent();
1147
+ let y = c.formulas;
1148
+ y || (y = [], c.formulas = y), y.push(e);
1149
+ } }), h.registerVisitor({ from: "cfvo", to: {}, openTag: (e) => {
1150
+ const r = e.getParent();
1151
+ r.conditions || (r.conditions = []), r.conditions.push(e.getSource()), e.copyTo("type", O), e.copyTo("value", xt, "val"), e.copyTo("gte", P);
1152
+ } }), h.registerVisitor({ from: "color", to: {}, openTag: (e) => {
1153
+ const r = e.getParent();
1154
+ r.colors || (r.colors = []);
1155
+ const c = ue((y) => e.getAttribute(y));
1156
+ r.colors.push(c);
1157
+ } }), h.registerVisitor({ from: "filterColumn", to: "filterColumn", openTag: (e) => {
1158
+ const r = e.getParent();
1159
+ r.fields || (r.fields = []), r.fields.push(e.getSource()), e.copyTo("offset", L, "colId"), e.copyTo("hiddenButton", P), e.copyTo("showButton", P);
1160
+ } }), h.registerVisitor({ from: "colorFilter", to: "colorFilter", openTag: (e) => {
1161
+ const r = e.getParent();
1162
+ r.criteria || (r.criteria = []), r.criteria.push(e.getSource()), e.getSource().type = Rt.Type.Color, e.copyTo("cellColor", P), e.copyTo("styleId", L, "dxfId");
1163
+ } }), h.registerVisitor({ from: "dynamicFilter", to: "dynamicFilter", openTag: (e) => {
1164
+ const r = e.getParent();
1165
+ r.criteria || (r.criteria = []), r.criteria.push(e.getSource()), e.getSource().type = Rt.Type.Dynamic, e.copyTo("dynamicType", O, "type"), e.copyTo("val", xt), e.copyTo("maxVal", xt, "maxVal");
1166
+ } }), h.registerVisitor({ from: "iconFilter", to: "iconFilter", openTag: (e) => {
1167
+ const r = e.getParent();
1168
+ r.criteria || (r.criteria = []), r.criteria.push(e.getSource()), e.getSource().type = Rt.Type.Icon, e.copyTo("iconId", L), e.copyTo("iconSet", O);
1169
+ } }), h.registerVisitor({ from: "top10", to: "top10", openTag: (e) => {
1170
+ const r = e.getParent();
1171
+ r.criteria || (r.criteria = []), r.criteria.push(e.getSource()), e.getSource().type = Rt.Type.Top10, e.copyTo("filterVal", xt), e.copyTo("percent", P), e.copyTo("top", P), e.copyTo("val", xt);
1172
+ } }), h.registerVisitor({ from: "filters", to: "filters", openTag: (e) => {
1173
+ const r = e.getParent();
1174
+ r.criteria || (r.criteria = []), r.criteria.push(e.getSource()), e.getSource().type = Rt.Type.Items, e.copyTo("blank", P), e.copyTo("calendarType", O);
1175
+ } }), h.registerVisitor({ from: "dateGroupItem", to: "dateGroupItem", openTag: (e) => {
1176
+ const r = e.getParent();
1177
+ r.dateGroups || (r.dateGroups = []), r.dateGroups.push(e.getSource()), e.copyTo("group", O, "dateTimeGrouping"), e.copyTo("day", L), e.copyTo("hour", L), e.copyTo("minute", L), e.copyTo("month", L), e.copyTo("second", L), e.copyTo("year", L);
1178
+ } }), h.registerVisitor({ from: "filter", to: "filter", openTag: (e) => {
1179
+ const r = e.getParent();
1180
+ r.items || (r.items = []), r.items.push(e.getAttribute("val", xt));
1181
+ } }), h.registerVisitor({ from: "customFilters", to: "customFilters", openTag: (e) => {
1182
+ const r = e.getParent();
1183
+ r.criteria || (r.criteria = []), r.criteria.push(e.getSource()), e.getSource().type = Rt.Type.Custom, e.copyTo("and", P);
1184
+ } }), h.registerVisitor({ from: "customFilter", to: "customFilter", openTag: (e) => {
1185
+ const r = e.getParent();
1186
+ r.filters || (r.filters = []), r.filters.push(e.getSource()), e.copyTo("operator", O), e.copyTo("value", xt, "val");
1187
+ } }), h.registerVisitor({ from: "sortState", to: "sort", openTag: (e) => {
1188
+ e.copyTo("ref", O);
1189
+ } }), h.registerVisitor({ from: "sortCondition", to: "sortCondition", openTag: (e) => {
1190
+ const r = e.getParent();
1191
+ r.fields || (r.fields = []);
1192
+ const c = e.getSource();
1193
+ r.fields.push(c), e.copyTo("sortOn", O, "sortBy"), e.copyTo("dxfId", O, "sortBy"), e.copyTo("iconSet", O), e.copyTo("customList", O);
1194
+ const y = e.getAttribute("ref");
1195
+ if (y) {
1196
+ const j = wt.fastStringToRange(y, de).colStart, Et = wt.fastStringToRange(r.ref, de), Jt = Et.colStart;
1197
+ c.offset = Et ? j - Jt : j;
1198
+ }
1199
+ c.reverse = e.getAttribute("descending", P) ?? !1;
1200
+ } }), h.registerVisitor({ from: "AlternateContent", to: null });
1201
+ const Qt = (e) => {
1202
+ _ = e.getSource(), e.copyTo("topLeft", O, "topLeftCell");
1203
+ const r = Ue(e.getAttribute("defaultGridColor")), c = e.getAttribute("colorId");
1204
+ c === null || r || (e.getSource().gridLineColor = "index" + parseFloat(c)), e.copyTo("showZeros", P), e.copyTo("showFormulas", P), e.copyTo("zoomScale", L), e.copyTo("showRowHeaders", P, "showRowColHeaders"), e.copyTo("showColumnHeaders", P, "showRowColHeaders"), e.copyTo("showRowGridlines", P, "showGridLines"), e.copyTo("showColumnGridlines", P, "showGridLines");
1205
+ };
1206
+ h.registerVisitor({ from: "sheetView", to: "view", openTag: (e) => {
1207
+ Qt(e);
1208
+ }, closeTag: () => {
1209
+ _ = null;
1210
+ } }), h.registerVisitor({ from: "customSheetViews", to: "customSheetViews", openTag: (e) => {
1211
+ e.setSource([]);
1212
+ } }), h.registerVisitor({ from: "customSheetView", to: [], openTag: (e) => {
1213
+ Qt(e);
1214
+ }, closeTag: () => {
1215
+ _ = null;
1216
+ } }), h.registerVisitor({ from: "selection", to: "selection", openTag: (e) => {
1217
+ if (!_) return;
1218
+ e.copyTo("cell", O, "activeCell"), e.copyTo("rangeIndex", L, "activeCellId");
1219
+ const r = e.getAttribute("activeCell"), c = e.getAttribute("sqref");
1220
+ c && c !== r && (e.getSource().ranges = c.split(" "));
1221
+ } }), h.registerVisitor({ from: "pane", to: "pane", openTag: (e) => {
1222
+ if (_ && e.getAttribute("state") === "frozen") {
1223
+ const r = {};
1224
+ _.freezePanes = r, e.copyToObject(r, "topLeft", O, "topLeftCell");
1225
+ const c = _.topLeft ? wt.fastStringToCell(_.topLeft) : { colIndex: 0, rowIndex: 0 }, y = { colIndex: 0, rowIndex: 0 };
1226
+ e.copyToObject(y, "colIndex", L, "xSplit"), e.copyToObject(y, "rowIndex", L, "ySplit");
1227
+ const j = { colIndex: c.colIndex + y.colIndex, rowIndex: c.rowIndex + y.rowIndex };
1228
+ r.coords = wt.cellToString(j);
1229
+ }
1230
+ } }), h.registerVisitor({ from: "tabColor", to: null, openTag: (e) => {
1231
+ const r = ue((c) => e.getAttribute(c));
1232
+ r && (k.tabColor = r);
1233
+ } }), h.registerVisitor({ from: "pageSetUpPr", to: "pageSetUpPr", openTag: (e) => {
1234
+ } }), h.registerVisitor({ from: "outlinePr", to: "outlinePr", openTag: (e) => {
1235
+ } }), h.registerVisitor({ from: "pageMargins", to: "pageMargins", openTag: (e) => {
1236
+ } }), h.registerVisitor({ from: "pageSetup", to: "pageSetup", openTag: (e) => {
1237
+ } }), h.registerVisitor({ from: "printOptions", to: "printOptions", openTag: (e) => {
1238
+ } }), h.registerVisitor({ from: "mergeCells", to: "merges", openTag: (e) => {
1239
+ e.setSource([]);
1240
+ } }), h.registerVisitor({ from: "mergeCell", to: [], openTag: (e) => {
1241
+ const r = e.getAttribute("ref");
1242
+ e.setSource(r);
1243
+ } }), h.registerVisitor({ from: "hyperlinks", to: "hyperlinks", openTag: (e) => {
1244
+ e.setSource([]);
1245
+ } }), h.registerVisitor({ from: "hyperlink", to: [], openTag: (e) => {
1246
+ const r = e.getAttribute("r:id"), c = e.getAttribute("ref");
1247
+ if (!c) return void console.warn("No ref found for hyperlink");
1248
+ e.setKey(c);
1249
+ let y = r ? X(r) : "";
1250
+ if (typeof y != "string") return void console.warn("Invalid address ", y);
1251
+ const j = e.getAttribute("location");
1252
+ y.endsWith("\\") && (y = y.substring(0, y.length - 1));
1253
+ const Et = e.getAttribute("location");
1254
+ if (Et && (j && j !== Et && console.warn("display and location are different", j, Et), y += "#" + Et), !y) return void console.warn("No address found for hyperlink. r:id", r);
1255
+ let Jt;
1256
+ const re = e.getAttribute("tooltip");
1257
+ Jt = re ? { address: y, tooltip: re } : y, e.setSource({ r: c, v: Jt });
1258
+ } }), h.registerVisitor({ from: "drawing", to: "movables", openTag: (e) => {
1259
+ const r = e.getAttribute("r:id");
1260
+ if (!r) return;
1261
+ const c = X(r);
1262
+ c ? e.setSource(c.movables) : console.warn("no drawing found for rId", r);
1263
+ } }), h.registerVisitor({ from: "tableParts", to: "tables", openTag: (e) => {
1264
+ e.setSource([]);
1265
+ } }), h.registerVisitor({ from: "tablePart", to: [], openTag: (e) => {
1266
+ const r = e.getAttribute("r:id");
1267
+ if (!r) return;
1268
+ const c = X(r);
1269
+ c ? e.setSource(c) : console.warn("no table found for rId", r);
1270
+ } }), h.registerVisitor({ from: "worksheet", to: "worksheet", openTag: (e) => {
1271
+ } }), h.registerVisitor({ from: "sheetProtection", to: "protection", openTag: (e) => {
1272
+ let r = !1;
1273
+ if (e.hasAttribute("sheet") && P(e.getAttribute("sheet")) && (r = !0), !r) return void e.setSource(void 0);
1274
+ const c = (j) => j === !0 || j === "1" || j === "on" || j === "true" || j === !1 || j === "0" || j === "off" || j === "false" || null;
1275
+ e.copyTo("autoFilter", c), e.copyTo("deleteColumns", c), e.copyTo("formatCells", c), e.copyTo("formatColumns", c), e.copyTo("formatRows", c), e.copyTo("insertColumns", c), e.copyTo("insertHyperlinks", c), e.copyTo("insertRows", c), e.copyTo("objects", c), e.copyTo("pivotTables", c), e.copyTo("scenarios", c), e.copyTo("selectUnlockedCells", c), e.copyTo("selectUnlockedCells", c), e.copyTo("sort", c);
1276
+ const y = {};
1277
+ e.copyToObject(y, "hash", O, "hashValue"), e.copyToObject(y, "algorithm", O, "algorithmName"), e.copyToObject(y, "salt", O, "saltValue"), e.copyToObject(y, "spinCount", L), Object.keys(y).length > 0 && (e.getSource().password = y);
1278
+ } }), h.registerVisitor({ from: "protectedRanges", to: "protectedRanges", openTag: (e) => {
1279
+ e.setSource({});
1280
+ } }), h.registerVisitor({ from: "protectedRange", to: {}, openTag: (e) => {
1281
+ const r = e.getAttribute("sqref");
1282
+ e.setKey(r), e.copyTo("name"), e.copyTo("securityDescriptor");
1283
+ const c = {};
1284
+ e.copyToObject(c, "hash", O, "hashValue"), e.copyToObject(c, "algorithm", O, "algorithmName"), e.copyToObject(c, "salt", O, "saltValue"), e.copyToObject(c, "spinCount", L), Object.keys(c).length > 0 && (e.getSource().password = c);
1285
+ } }), h.registerVisitor({ from: "sheetFormatPr", to: "sheetFormatPr", openTag: (e) => {
1286
+ e.copyToObject(k, "defaultColSize", xt, "defaultColWidth"), e.copyToObject(k, "outlineLevelCol", L, "outlineLevelCol");
1287
+ const r = e.getAttribute("customHeight");
1288
+ r !== "1" && r !== "true" || e.copyToObject(k, "defaultRowSize", xt, "defaultRowHeight"), e.copyToObject(k, "outlineLevelRow", L, "outlineLevelRow");
1289
+ } }), h.registerVisitor({ from: "cols", to: "cols", openTag: (e) => {
1290
+ e.setSource([]);
1291
+ } }), h.registerVisitor({ from: "col", to: [], openTag: (e) => {
1292
+ e.copyTo("min", (r) => parseInt(r) - 1), e.copyTo("max", (r) => parseInt(r) - 1), e.copyTo("sz", xt, "width"), e.copyTo("cs", P, "customWidth"), e.copyTo("h", P, "hidden"), e.copyTo("l", L, "outlineLevel"), e.copyTo("s", L, "style");
1293
+ } }), h.registerVisitor({ from: "oleObjects", to: null, openTag: (e) => {
1294
+ e.warn("'OLE Objects' are not supported.");
1295
+ } });
1296
+ let qt = null;
1297
+ const Te = { onOpenTag: (e) => {
1298
+ qt === null && (qt = "");
1299
+ }, onText: (e) => {
1300
+ qt += e;
1301
+ }, onEnd: () => {
1302
+ const e = _t(qt);
1303
+ return qt = null, e;
1304
+ }, onError: (e) => {
1305
+ } };
1306
+ return Ze(lt, k, h.createEventHandler(k, () => {
1307
+ }, at), at, Te, kt);
1308
+ })(v, (k, X = !1) => F(k, p, X) ?? null, ht, K, 0, (k) => {
1309
+ o && (k = p + ": " + k, o?.(k));
1310
+ }, W), st = he(p, gt), it = await (async (k, X = 8388608) => {
1311
+ await (async () => {
1312
+ if (typeof ReadableStream > "u") if (typeof window > "u") {
1313
+ const { ReadableStream: at } = await import("./BFweWj2oKpTGl7m3.js");
1314
+ globalThis.ReadableStream = at;
1315
+ } else console.warn("Browser does not support ReadableStream; consider loading a polyfill.");
1316
+ })();
1317
+ const _t = new TextDecoder("utf-8");
1318
+ let ot = 0;
1319
+ const nt = k instanceof Uint8Array ? k : new Uint8Array(k);
1320
+ return new ReadableStream({ pull(at) {
1321
+ if (ot >= nt.byteLength) return void at.close();
1322
+ const kt = nt.subarray(ot, Math.min(ot + X, nt.byteLength)), h = _t.decode(kt, { stream: ot + X < nt.byteLength });
1323
+ at.enqueue(h), ot += kt.length;
1324
+ } }).getReader();
1325
+ })(st);
1326
+ try {
1327
+ await ie.parseStream(it, G, { xmlns: !1 });
1328
+ } catch (k) {
1329
+ throw console.warn(`Error parsing sheet: '${p}'`, k), new Error(`Error parsing sheet: '${p}'`, { cause: k });
1330
+ }
1331
+ const Y = ct(p, q);
1332
+ let yt, Wt = /* @__PURE__ */ new Map();
1333
+ if (Y) {
1334
+ const k = "http://schemas.microsoft.com/office/2017/10/relationships/threadedComment";
1335
+ let X;
1336
+ Y.forEach((ot, nt) => {
1337
+ ot.type === k && (yt = F(nt, p, !1, q)?.comments, yt && yt.forEach((at) => {
1338
+ Wt.set(at.id, at);
1339
+ }));
1340
+ });
1341
+ const _t = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments";
1342
+ if (Y.forEach((ot, nt) => {
1343
+ ot.type === _t && (X = F(nt, p, !1, q));
1344
+ }), X || yt) {
1345
+ const ot = yt ?? [], nt = X?.comments;
1346
+ if (nt) {
1347
+ const at = X?.authors;
1348
+ for (let kt = 0; kt < nt.length; kt++) {
1349
+ const h = nt[kt];
1350
+ let lt = h.authorId !== void 0 ? at[h.authorId] : void 0;
1351
+ if ((!lt || lt.startsWith("tc=")) && (lt = ze(lt.substring(3)), Wt.has(lt))) continue;
1352
+ let _ = ut.get(lt);
1353
+ _ || (_ = ft.get(lt)), _ || (_ = { id: te.uuidV4(), displayName: lt }, ft.set(_.displayName, _), ut.set(_.id, _)), lt = _?.id ?? null;
1354
+ const Qt = { id: te.uuidV4(), personId: lt, ref: h.ref, done: !1, asNote: !0, content: h.content };
1355
+ ot.push(Qt);
1356
+ }
1357
+ }
1358
+ v.comments = ot;
1359
+ }
1360
+ }
1361
+ };
1362
+ Ft.push(R());
1363
+ } else E = M ? he(p, gt, (v) => {
1364
+ const R = T.add({ buffer: v });
1365
+ return R.addReference(I), H.add(R), m.toResourceId(R);
1366
+ }, $) : oe(p, gt, f, A, $);
1367
+ return E;
1368
+ }, $ = { paramMap: W, getRefs: ct, getRef: F, parsedRefs: Z, onWarning: o, addPerson: (D) => null }, et = [];
1369
+ let vt = 0;
1370
+ u.Strings && (vt = parseInt(u.Strings.Unique ?? u.Strings.length ?? 0));
1371
+ const Xt = u.Strings ?? [];
1372
+ for (let D = 0; D < vt; D++) et.push(Xt[D]?.t ?? "");
1373
+ const Lt = /* @__PURE__ */ new Map();
1374
+ let Bt = vt;
1375
+ const ht = (D) => {
1376
+ const U = Lt.get(D);
1377
+ if (U !== void 0) return U;
1378
+ const M = Bt;
1379
+ return Lt.set(D, Bt++), et.push(D), M;
1380
+ }, ut = ($t("richstructure", u, f, A, $), $t("richdata", u, f, A, $), /* @__PURE__ */ new Map()), ft = /* @__PURE__ */ new Map(), mt = $t("people", u, f, A);
1381
+ let Q = null;
1382
+ if (mt.size > 0 && (Q = mt.entries().next()?.value?.[1]?.persons, Q)) {
1383
+ const D = Q.length;
1384
+ for (let U = 0; U < D; U++) {
1385
+ const M = Q[U];
1386
+ ut.set(M.id, M), ut.set(M.displayName, M);
1387
+ }
1388
+ }
1389
+ const dt = $t("themes", u, f, A, $);
1390
+ let Tt = null;
1391
+ if (dt && dt.entries) {
1392
+ let D = dt.entries().next();
1393
+ D?.value?.[1] && (Tt = D.value[1]);
1394
+ }
1395
+ const St = new xe(Tt);
1396
+ let Dt = $t("styles", u, f, A, $).entries().next()?.value[1];
1397
+ Dt && (Dt = JSON.parse(we(Dt)));
1398
+ const Ut = $t("workbooks", u, f, A, $);
1399
+ await Promise.all(Ft);
1400
+ const Nt = { ...Ut.entries().next().value[1], styles: Dt, theme: St.toJSON() };
1401
+ et.length > 0 && (Nt.strings = et), Q && Q.length > 0 && (Nt.people = Q);
1402
+ const Gt = { ...n, resources: T, json: Nt }, Zt = new ve(Gt);
1403
+ return H.forEach((D) => {
1404
+ D.deleteReference(I);
1405
+ }), m.endPersist(), Zt;
1406
+ } catch (u) {
1407
+ let A = "Unable to parse XLSX.";
1408
+ throw u instanceof ke && (A = "Unable to open XLSX. There are too many rows or columns."), new Error(A, { cause: u });
1409
+ }
1410
+ }, toBufferXLSX: async (i, t) => {
1411
+ const s = await import("./BLseM2hNBI2PgQaX.js"), o = await i.toJSON(!0), n = s.utils.book_new();
1412
+ for (let a = 0; a < o.sheets.length; a++) {
1413
+ const l = o.sheets[a], g = s.utils.json_to_sheet([{}]);
1414
+ s.utils.book_append_sheet(n, g, l.name);
1415
+ const S = l.sheet, b = i.getSheetAt(a), x = b.getUsedRange();
1416
+ if (x ? (g["!ref"] = x.getA1(), x.forEach((C, w) => {
1417
+ const u = { t: "z" }, A = w.getCell().getStyle();
1418
+ if (!A.isNormal()) {
1419
+ let f = A.getNumberFormat();
1420
+ f !== Pt.Type.General && (f === Pt.Type.ShortDate ? f = "m/d/yyyy" : f === Pt.Type.MediumDate ? f = "d-mmm-yy" : f === Pt.Type.LongDate ? f = "[$-x-sysdate]dddd, mmmm dd, yyyy" : f === Pt.Type.ShortTime ? f = "h:mm" : f === Pt.Type.MediumTime ? f = "h:mm AM/PM" : f === Pt.Type.LongTime && (f = "h:mm:ss AM/PM"), u.z = f);
1421
+ }
1422
+ if (C !== null) switch (w.getType()) {
1423
+ case Vt.Number:
1424
+ u.t = "n", u.v = C;
1425
+ break;
1426
+ case Vt.String:
1427
+ u.t = "s", u.v = C;
1428
+ break;
1429
+ case Vt.Boolean:
1430
+ u.t = "b", u.v = C;
1431
+ break;
1432
+ case Vt.Error:
1433
+ u.t = "e", u.v = C.toString();
1434
+ case Vt.RichData:
1435
+ }
1436
+ g[w.getA1()] = u;
1437
+ })) : g["!ref"] = "A1:A1", S.merges?.length > 0) {
1438
+ const C = [];
1439
+ g["!merges"] = C;
1440
+ for (let w = 0; w < S.merges.length; w++) C.push(s.utils.decode_range(S.merges[w]));
1441
+ }
1442
+ if (S.cols?.length > 0) {
1443
+ const C = [];
1444
+ g["!cols"] = C;
1445
+ const w = S.cols, u = { width: S.defaultColSize ?? b.getColumnWidthAsFontUnit(b.getColumnHeaders().getDefaultSize()) };
1446
+ for (let A = 0; A < w.length; A++) {
1447
+ const f = w[A];
1448
+ for (let m = C.length; m <= f.min - 1; m++) C.push(u);
1449
+ const T = {};
1450
+ f.sz !== void 0 && (T.width = f.sz), f.h !== void 0 && (T.hidden = f.h), f.l !== void 0 && (T.level = f.l);
1451
+ for (let m = f.min; m <= f.max; m++) C.push(T);
1452
+ }
1453
+ }
1454
+ }
1455
+ return s.write(n, { type: "array", bookType: "xlsx" }), s.write(n, { type: "array", bookType: "xlsx" });
1456
+ } }, Symbol.toStringTag, { value: "Module" }));
1457
+ export {
1458
+ Ye as a,
1459
+ Ue as b,
1460
+ Ke as c,
1461
+ ue as d,
1462
+ es as i,
1463
+ ts as p,
1464
+ ze as r,
1465
+ Je as t
1466
+ };