@sheetxl/studio-vanilla 0.3.3 → 0.3.5

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