@sheetxl/studio-vanilla 0.4.13 → 0.4.15

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 (313) hide show
  1. package/README.md +2 -2
  2. package/browser/cjs/0wJgZUT7DgId9Xtu.cjs +11 -0
  3. package/browser/cjs/3oobHi8j_DGW35rC.cjs +124 -0
  4. package/browser/cjs/6DwFSFOve5d5Kh4O.cjs +6 -0
  5. package/browser/cjs/ArJueN3Q9EFBG6tK.cjs +6 -0
  6. package/browser/cjs/BFZbsyTO3uhLJbLO.cjs +6 -0
  7. package/browser/cjs/BG0zKZBHarIk0gKB.cjs +145 -0
  8. package/browser/cjs/BH_qrKPpuqL9YxGP.cjs +15 -0
  9. package/browser/cjs/BJu8UGaYuFmjvmwl.cjs +6 -0
  10. package/browser/cjs/BKIvZi8Z5lHc2S32.cjs +7 -0
  11. package/browser/cjs/BSJTx60VBwf450vd.cjs +6 -0
  12. package/browser/cjs/BUWv6Ysw6pYG7w7W.cjs +7 -0
  13. package/browser/cjs/BVHaNjM0-FXL7gyh.cjs +6 -0
  14. package/browser/cjs/BcHEeTMPgurSZ2Kh.cjs +6 -0
  15. package/browser/cjs/BdnGDChdub9m1gbK.cjs +6 -0
  16. package/browser/cjs/Bf0HoYuEDFO9Gwdv.cjs +12 -0
  17. package/browser/cjs/BgHBftj6ugXjpyaF.cjs +6 -0
  18. package/browser/cjs/BgsgGbpzcl7wg2IO.cjs +6 -0
  19. package/browser/cjs/BsCdHkza2KUgNs3F.cjs +6 -0
  20. package/browser/cjs/BzRfETjQwEEJfpgZ.cjs +6 -0
  21. package/browser/cjs/BzhfyRZdk-oiyEa3.cjs +6 -0
  22. package/browser/cjs/C8BQmea-gRcTEaYH.cjs +6 -0
  23. package/browser/cjs/CA0OjW0AOuGEjxZ2.cjs +6 -0
  24. package/browser/cjs/CRe-vd2WZQabNDDS.cjs +6 -0
  25. package/browser/cjs/CRe8klqBNVDkSDEr.cjs +13 -0
  26. package/browser/cjs/CXn4J7ISlTV_SfvZ.cjs +6 -0
  27. package/browser/cjs/Ck8K0c7E5RT8WMbO.cjs +15 -0
  28. package/browser/cjs/ClXfvzbTzK5w-Tv9.cjs +6 -0
  29. package/browser/cjs/CnDLmICwEpdeYECg.cjs +32 -0
  30. package/browser/cjs/CqILFqDohV7CdFQ1.cjs +6 -0
  31. package/browser/cjs/CqugZolY4J8viegd.cjs +6 -0
  32. package/browser/cjs/CrnvoFSZfgmBlK86.cjs +42 -0
  33. package/browser/cjs/Ct0fgg-1dB-T7u7T.cjs +161 -0
  34. package/browser/cjs/CtLA5mrQxGamDt92.cjs +6 -0
  35. package/browser/cjs/D4582BA0aCqJ_PrJ.cjs +6 -0
  36. package/browser/cjs/D74hXHJrfnGhbNBg.cjs +6 -0
  37. package/browser/cjs/DAGEOiTL4sCagK3p.cjs +6 -0
  38. package/browser/cjs/DAxpZHSeQ9vUP1m6.cjs +14 -0
  39. package/browser/cjs/DDbNLc2mUv7Q6msK.cjs +11 -0
  40. package/browser/cjs/DWh6QtlFsPfZ3Asz.cjs +1501 -0
  41. package/browser/cjs/DY1iEDz8BWZpqFOo.cjs +16 -0
  42. package/browser/cjs/D_RVszeEK0DfF-EN.cjs +6 -0
  43. package/browser/cjs/Dg9yKaBrYK9w4cQO.cjs +19 -0
  44. package/browser/cjs/DgFtbCf8dkncAq_r.cjs +6 -0
  45. package/browser/cjs/DotFGD_QKvqoQlAL.cjs +6 -0
  46. package/browser/cjs/DrRRwzZUlGvA6cQT.cjs +6 -0
  47. package/browser/cjs/DtQ-sP4vg1IpzFkc.cjs +6 -0
  48. package/browser/cjs/EIY0bt22HqBjrvRt.cjs +6 -0
  49. package/browser/cjs/TAIJH4y6CbXhFnhx.cjs +364 -0
  50. package/browser/cjs/YTXgMiobveLIPF9T.cjs +6 -0
  51. package/browser/cjs/_OSzgfBNK1m22Jek.cjs +6 -0
  52. package/browser/cjs/fjQ9vPUSGRU1VSoH.cjs +6 -0
  53. package/browser/cjs/gI7uI_k_jVDAtJup.cjs +6 -0
  54. package/browser/cjs/index.cjs +3 -4
  55. package/browser/cjs/mW3Ya0GEjpmsa_YK.cjs +6 -0
  56. package/browser/cjs/qB-lxZgY2Iz9Bc6T.cjs +7 -0
  57. package/browser/cjs/sXSha5rBK3lo_tOD.cjs +6 -0
  58. package/browser/cjs/uryrVY1PPsKlOzso.cjs +6 -0
  59. package/browser/cjs/vce4VfmWFd9ClUSo.cjs +6 -0
  60. package/{cdn/assets/KDGtuIzSpkf1vsmH.js → browser/esm/5RdhqzgwkuR2ox0E.mjs} +1 -1
  61. package/{cdn/assets/B1Iys8a964LGNZKf.js → browser/esm/B9vAqNVLp_vCTrP_.mjs} +1 -1
  62. package/{cdn/assets/CsorxCiOoe7qX9j1.js → browser/esm/BFYBuTXa6xa5ZjBo.mjs} +1 -1
  63. package/{cdn/assets/B2RAJJJFkcaWUfUW.js → browser/esm/BNuTKa0cEC3F4rTF.mjs} +1 -1
  64. package/{cdn/assets/C4vStn7wNlvrxdsp.js → browser/esm/BPDWQKVFxO_3IqZX.mjs} +1 -1
  65. package/{cdn/assets/BMiA9p1uOrwnooVT.js → browser/esm/BUAQRxezxaeHUbwe.mjs} +1 -1
  66. package/{cdn/assets/CT0d1P-Aav62lUvV.js → browser/esm/BXhoPHXmFqGJhEOT.mjs} +1 -1
  67. package/browser/esm/B_JJ8lAbaPdlt8l4.mjs +29 -0
  68. package/{cdn/assets/F6zW9Vj410C4yRVG.js → browser/esm/B_YrH7VnXiUkYu8u.mjs} +167 -166
  69. package/browser/esm/Beqd_eZheAqcy9eR.mjs +49911 -0
  70. package/{cdn/assets/BL6TUDSeou6wPejW.js → browser/esm/Bh6dC8KTHWpKMi09.mjs} +1 -1
  71. package/browser/esm/BmkIbFYjQZnaZGzF.mjs +13208 -0
  72. package/{cdn/assets/CrLrvmlJhYpNpXqR.js → browser/esm/Bp2dkgUm5zsuNnPH.mjs} +1 -1
  73. package/{cdn/assets/DD3csu4pddGtMp3n.js → browser/esm/Bpujg7eS-yYzfXnQ.mjs} +537 -539
  74. package/{cdn/assets/D-5VYBO5_VEh6fEW.js → browser/esm/BqmualWSYd-czqNW.mjs} +1 -1
  75. package/{cdn/assets/5XdpCWQ6AcxZ6oY1.js → browser/esm/Bt1LjWrzTz3VQP5i.mjs} +1 -1
  76. package/{cdn/assets/CKA4s2hlzSnrdWSD.js → browser/esm/BwEUAuMX1MAp6TLB.mjs} +1 -1
  77. package/browser/esm/BxForeOFuQExxhBo.mjs +3755 -0
  78. package/{cdn/assets/BDE7FUo2oiivrvBL.js → browser/esm/C0KLnjyGhfqKP-3J.mjs} +16 -18
  79. package/{cdn/assets/C-Z8wvIy20kJ7R-k.js → browser/esm/C2DVh9PCXymQ6Bku.mjs} +1 -1
  80. package/{cdn/assets/DHydjLSnijEgtpyU.js → browser/esm/C5Vhk6RekNjP_kzl.mjs} +1 -1
  81. package/{cdn/assets/DXHirQMr483hJBil.js → browser/esm/CMgjnCC7huqsMZ7l.mjs} +12 -14
  82. package/{cdn/assets/BwpBFv8Ks2ka07ch.js → browser/esm/CQMGhCDKbq2op_BI.mjs} +1 -1
  83. package/browser/esm/CQoo-4sVCrOfP9iU.mjs +1365 -0
  84. package/browser/esm/CSSayGD6fTeehKt_.mjs +1575 -0
  85. package/browser/esm/CTEiaS8NJUMozWzX.mjs +6800 -0
  86. package/{cdn/assets/DXtbonLk2ESfF4Dh.js → browser/esm/CWSZwGuenxmHgLXd.mjs} +1 -1
  87. package/{cdn/assets/DvFNLgeMJ9LdQROu.js → browser/esm/Cb1Q2phpEESgs7mi.mjs} +26 -28
  88. package/browser/esm/CeDuz_yZT4XG-Pv8.mjs +47 -0
  89. package/browser/esm/CfMo1fAExeFOibAQ.mjs +39 -0
  90. package/{cdn/assets/f3_QXO8z0p-q4nJo.js → browser/esm/ClLJBQr4mG8VGyC3.mjs} +12 -12
  91. package/{cdn/assets/BUwNyHytF9St68tJ.js → browser/esm/CnwSRSKNfq2GyXas.mjs} +1 -1
  92. package/browser/esm/CqRDFmwJualsG-hJ.mjs +1346 -0
  93. package/{cdn/assets/BxblmHGC7YxZcuak.js → browser/esm/CslDdQ92RlF9XCcF.mjs} +1 -1
  94. package/{cdn/assets/BBJxLS-wB_nXRnI2.js → browser/esm/CvTxaj5stKRFGegY.mjs} +1 -1
  95. package/browser/esm/D14VyfRK6-WOMJJO.mjs +1665 -0
  96. package/browser/esm/D9ftd36uosOvK1Bz.mjs +44 -0
  97. package/browser/esm/DAM-CuXQIzcQS8y2.mjs +820 -0
  98. package/browser/esm/DQiTAq0r1q5Z_7H6.mjs +84 -0
  99. package/browser/esm/DRoKqCpNKKdYKqZ3.mjs +3937 -0
  100. package/browser/esm/DSBeC26EhsTkKu9_.mjs +1702 -0
  101. package/{cdn/assets/N3pWBoccPrTedAw-.js → browser/esm/DT0kcrmyi0GrASFM.mjs} +1 -1
  102. package/{cdn/assets/CuNqTH3P8mCglRiz.js → browser/esm/DVAgkqy1aZdEMIzM.mjs} +1 -1
  103. package/browser/esm/DVqoG8OFm93ndK8u.mjs +21 -0
  104. package/browser/esm/DdcqO--nszyX8nqj.mjs +20 -0
  105. package/{cdn/assets/9-cIcj6CRJx5HTn9.js → browser/esm/DmSh4h3LBSgZNzzF.mjs} +1 -1
  106. package/{cdn/assets/C3EFzvmp0DcC_HAx.js → browser/esm/Do7w66ZbyFAW-Kvo.mjs} +1 -1
  107. package/{cdn/assets/BciokME96sykArSM.js → browser/esm/DrVjmz0t2Y2eHDvu.mjs} +1 -1
  108. package/{cdn/assets/2mxiQm6dELsqQoX7.js → browser/esm/Dre4qd4kiDqAnEpH.mjs} +1370 -1412
  109. package/browser/esm/DxOr3qEZVibn2HK7.mjs +421 -0
  110. package/{cdn/assets/C5q0qaKi2eeDgoO8.js → browser/esm/IWZ_bebXCJeQz19V.mjs} +1 -1
  111. package/{cdn/assets/XysyS9rk9tFdbzZh.js → browser/esm/YEeWnRTVhFsSnEoO.mjs} +501 -510
  112. package/browser/esm/ZciEgxXQYsHyV2gO.mjs +633 -0
  113. package/{cdn/assets/DFHruAftzuzBZ71r.js → browser/esm/azuJCFiVoU4Ebb9P.mjs} +65 -68
  114. package/browser/esm/iXnpVI-bOFX7L6z-.mjs +2344 -0
  115. package/browser/esm/index.mjs +6 -2
  116. package/browser/esm/n6RMMH6ZZaYET-uv.mjs +48 -0
  117. package/browser/esm/u8MA5qQcSH-VSLrB.mjs +472 -0
  118. package/cdn/assets/5RdhqzgwkuR2ox0E.js +10 -0
  119. package/cdn/assets/B9vAqNVLp_vCTrP_.js +10 -0
  120. package/cdn/assets/BAARsakyOFrwNKVu.js +1466 -0
  121. package/cdn/assets/BCMTnGKJGZCOn8RP.js +84 -0
  122. package/cdn/assets/BFYBuTXa6xa5ZjBo.js +10 -0
  123. package/cdn/assets/BNuTKa0cEC3F4rTF.js +21 -0
  124. package/cdn/assets/BPDWQKVFxO_3IqZX.js +10 -0
  125. package/cdn/assets/BUAQRxezxaeHUbwe.js +10 -0
  126. package/cdn/assets/BXhoPHXmFqGJhEOT.js +10 -0
  127. package/cdn/assets/Bh6dC8KTHWpKMi09.js +10 -0
  128. package/cdn/assets/BmkIbFYjQZnaZGzF.js +13208 -0
  129. package/cdn/assets/Bp2dkgUm5zsuNnPH.js +10 -0
  130. package/cdn/assets/BqmualWSYd-czqNW.js +24 -0
  131. package/cdn/assets/BsNGXIjB2gB75oDq.js +46 -0
  132. package/cdn/assets/Bt1LjWrzTz3VQP5i.js +10 -0
  133. package/cdn/assets/BwEUAuMX1MAp6TLB.js +10 -0
  134. package/cdn/assets/{0j_nQmV1Bb0lJ6sB.js → ByGApkjEdqWJCmIL.js} +4 -4
  135. package/cdn/assets/C2DVh9PCXymQ6Bku.js +10 -0
  136. package/cdn/assets/C4PvQzHOWYFQIrTT.js +22 -0
  137. package/cdn/assets/{quOP5QFyTT9soNIl.js → C5Vhk6RekNjP_kzl.js} +3 -5
  138. package/cdn/assets/{Xwyp21e7L5fTeb_y.js → C82_3AL3p2OPqUES.js} +186 -184
  139. package/cdn/assets/C8ZVHIXuFCsMz4su.js +3756 -0
  140. package/cdn/assets/CP0YRrUyk_DwRGye.js +46 -0
  141. package/cdn/assets/CQMGhCDKbq2op_BI.js +10 -0
  142. package/cdn/assets/CQ_eXYB8jRiWFzL8.js +149 -0
  143. package/cdn/assets/CQoo-4sVCrOfP9iU.js +1365 -0
  144. package/cdn/assets/CVtFEjbMohoQQwVa.js +2346 -0
  145. package/cdn/assets/CWSZwGuenxmHgLXd.js +10 -0
  146. package/cdn/assets/{BgnlshX157Ob6RLs.js → ChzKnwtP8tCXlyQC.js} +5 -5
  147. package/cdn/assets/ClwsvKMIARY6eKe8.js +43 -0
  148. package/cdn/assets/CnwSRSKNfq2GyXas.js +10 -0
  149. package/cdn/assets/CqRDFmwJualsG-hJ.js +1346 -0
  150. package/cdn/assets/CsV6TK9KYwaT40Nd.js +2177 -0
  151. package/cdn/assets/CslDdQ92RlF9XCcF.js +10 -0
  152. package/cdn/assets/CvTxaj5stKRFGegY.js +10 -0
  153. package/cdn/assets/{C9eQW5GKgPRmKKgJ.js → CxPN10OK3cql47vK.js} +2 -2
  154. package/cdn/assets/D14VyfRK6-WOMJJO.js +1665 -0
  155. package/cdn/assets/D3wy0hvPKjYlTqDZ.js +390 -0
  156. package/cdn/assets/D4UoNdvz3kZD9Fg7.js +3937 -0
  157. package/cdn/assets/{Gz4u4ewyWfB-Pf-a.js → D8Eij5qtEH8tI7eL.js} +4 -5
  158. package/cdn/assets/DPpga_z_sz7WeoGk.js +49739 -0
  159. package/{browser/esm/CVeyOpbAhaBhDRye.mjs → cdn/assets/DT0kcrmyi0GrASFM.js} +7 -2
  160. package/cdn/assets/{DPQqTIMsRLhMxPIy.js → DTlKjG3w2RgTejVm.js} +2 -2
  161. package/cdn/assets/DVAgkqy1aZdEMIzM.js +10 -0
  162. package/cdn/assets/DmSh4h3LBSgZNzzF.js +10 -0
  163. package/cdn/assets/DmTmS8Vw_AvNiuzU.js +50 -0
  164. package/cdn/assets/Do7w66ZbyFAW-Kvo.js +10 -0
  165. package/cdn/assets/DoiUKE9bzdCohsIn.js +58 -0
  166. package/cdn/assets/{6JtXguBKwGj6dqfy.js → DrKm9mDEvFK0tW1J.js} +385 -387
  167. package/cdn/assets/DrVjmz0t2Y2eHDvu.js +10 -0
  168. package/cdn/assets/DxOr3qEZVibn2HK7.js +421 -0
  169. package/cdn/assets/IWZ_bebXCJeQz19V.js +10 -0
  170. package/cdn/assets/NPHYIK_SYI8TgWVt.js +23 -0
  171. package/cdn/assets/ZciEgxXQYsHyV2gO.js +633 -0
  172. package/cdn/assets/bGhAFgohHm88dsqJ.js +41 -0
  173. package/cdn/assets/clveP5QdWgiuzHNH.js +5582 -0
  174. package/cdn/assets/sMpbLhp97YEbNwUD.js +49 -0
  175. package/cdn/index.js +73 -73
  176. package/cdn/loader.js +1 -1
  177. package/package.json +3 -3
  178. package/types/index.d.ts +1 -0
  179. package/browser/cjs/-DkdmW3XP1ICRY25.cjs +0 -7
  180. package/browser/cjs/B-KQs1Bf48nEucW7.cjs +0 -7
  181. package/browser/cjs/B1xnY7pDnbnNzknG.cjs +0 -7
  182. package/browser/cjs/B6A5w_aWHkigBc6j.cjs +0 -7
  183. package/browser/cjs/B9jxuOg1CXcmbi9J.cjs +0 -110
  184. package/browser/cjs/BAYjkr4LmsWRLoPr.cjs +0 -7
  185. package/browser/cjs/BG2uV2RpxrfZyCuV.cjs +0 -7
  186. package/browser/cjs/BGCPG4Ip5ZijUQwi.cjs +0 -7
  187. package/browser/cjs/BHTlBOQH-tPGoKgo.cjs +0 -7
  188. package/browser/cjs/BLBNzBvRVl9VLynf.cjs +0 -7
  189. package/browser/cjs/BLh6E7ER8mrM6vc_.cjs +0 -7
  190. package/browser/cjs/BMaq_2S3IFrE5XeJ.cjs +0 -7
  191. package/browser/cjs/BO7Pbclmywy-QCSV.cjs +0 -13
  192. package/browser/cjs/BPlthbyKkqCDjgxO.cjs +0 -7
  193. package/browser/cjs/BUGo0mXtBfFOmQXV.cjs +0 -7
  194. package/browser/cjs/BdHdXCz_K1djQgI4.cjs +0 -7
  195. package/browser/cjs/BfNkb1jDZkJf3wRA.cjs +0 -7
  196. package/browser/cjs/BfdQd2UEOlOc5iF3.cjs +0 -7
  197. package/browser/cjs/Bi9KvObgq_kJ_pjC.cjs +0 -7
  198. package/browser/cjs/BjPpJjnABDd3_WOZ.cjs +0 -7
  199. package/browser/cjs/BsSNzyN8kOGCKzso.cjs +0 -7
  200. package/browser/cjs/BtCcoaKKb8ZDnliG.cjs +0 -7
  201. package/browser/cjs/BwHquG4sSd7OJjxz.cjs +0 -7
  202. package/browser/cjs/BywNBbTVRYbgRbNI.cjs +0 -7
  203. package/browser/cjs/C04Qr5P8uyQ6Vcml.cjs +0 -7
  204. package/browser/cjs/C42ZEPRmW9Wcd7tI.cjs +0 -7
  205. package/browser/cjs/CBpt1PBR1VfBegko.cjs +0 -7
  206. package/browser/cjs/CED8Az5C8GWF7pUT.cjs +0 -7
  207. package/browser/cjs/CbD4Wa5QLTdRCYcz.cjs +0 -7
  208. package/browser/cjs/CbILz9Skl6lWf6yR.cjs +0 -7
  209. package/browser/cjs/CoFQQqIzuvS9PM77.cjs +0 -7
  210. package/browser/cjs/CpDNo2Lhwr5ZHECs.cjs +0 -7
  211. package/browser/cjs/CsamfGfFsItvSgo_.cjs +0 -7
  212. package/browser/cjs/Cx3kn5gBsQ-1bORi.cjs +0 -7
  213. package/browser/cjs/CxLvGnG44-qNI36G.cjs +0 -7
  214. package/browser/cjs/D-xyWit7jxctQCpR.cjs +0 -7
  215. package/browser/cjs/D4XQsK7d7DRctaOO.cjs +0 -7
  216. package/browser/cjs/D9rVEA1BdB0JZwhE.cjs +0 -7
  217. package/browser/cjs/DES2NmIRVZg-HXgs.cjs +0 -7
  218. package/browser/cjs/DFxeLNhACFIHb0nv.cjs +0 -7
  219. package/browser/cjs/DIv1SrLYeyVwcaxE.cjs +0 -7
  220. package/browser/cjs/DJ6L43osbaMzEV5K.cjs +0 -7
  221. package/browser/cjs/DMjLN_HDktNzzUB8.cjs +0 -7
  222. package/browser/cjs/DVPfPZCFjmYu3xyn.cjs +0 -7
  223. package/browser/cjs/DhSlaiQXxEOVtZkA.cjs +0 -7
  224. package/browser/cjs/Dh_dFnagz7dMZlGh.cjs +0 -7
  225. package/browser/cjs/DpF6vgGka2d-RKkb.cjs +0 -10
  226. package/browser/cjs/DtY0Jzlwnr_YKnV4.cjs +0 -7
  227. package/browser/cjs/DwyyFI1Ix0uc0Qoz.cjs +0 -7
  228. package/browser/cjs/Dy5_viRzFls9rOzN.cjs +0 -7
  229. package/browser/cjs/GkINjQ8Te3GKi2mx.cjs +0 -7
  230. package/browser/cjs/aN3KCqswA1SdJIMq.cjs +0 -7
  231. package/browser/cjs/hLJbgylpETByV4wc.cjs +0 -7
  232. package/browser/cjs/qumqKlVHFx89iLeu.cjs +0 -7
  233. package/browser/cjs/rKZjTYQ0WpTriIv6.cjs +0 -7
  234. package/browser/cjs/xjKotAOVt3JH36U7.cjs +0 -7
  235. package/browser/cjs/ymbPxio09Fw7I2BW.cjs +0 -7
  236. package/browser/esm/2P5dQT7wZToOh-n9.mjs +0 -7
  237. package/browser/esm/4GgcUVhUmQmiv9Ha.mjs +0 -110
  238. package/browser/esm/7_x68v6PpvRDox_Z.mjs +0 -7
  239. package/browser/esm/9icgSuuzXq6mlgM8.mjs +0 -7
  240. package/browser/esm/B354iAatN9y9AIIP.mjs +0 -7
  241. package/browser/esm/B5EVyoxm3aSlAnxN.mjs +0 -7
  242. package/browser/esm/BD8rE7MUxuHXsdcf.mjs +0 -7
  243. package/browser/esm/BGFWI1a1PmU8_hCE.mjs +0 -7
  244. package/browser/esm/BI6JAQCQx1V0F2aC.mjs +0 -7
  245. package/browser/esm/BIYg30d_9HaluFFz.mjs +0 -7
  246. package/browser/esm/BKL-uyBp_OE47lXd.mjs +0 -7
  247. package/browser/esm/BMwJCtLAYUW8wExX.mjs +0 -13
  248. package/browser/esm/BNOfK-lGWF2S8vQE.mjs +0 -7
  249. package/browser/esm/Ba433v6lQUMtECiY.mjs +0 -7
  250. package/browser/esm/BbZWfDW2LUyjqUDy.mjs +0 -7
  251. package/browser/esm/C238uBmZN1XXqMUb.mjs +0 -7
  252. package/browser/esm/C34whwRkHO0lhq4-.mjs +0 -7
  253. package/browser/esm/C6FEpAqSZoW5Hgte.mjs +0 -7
  254. package/browser/esm/COlW5ULL29SUKN1Z.mjs +0 -7
  255. package/browser/esm/CRyxOj2xPj9qe9LK.mjs +0 -7
  256. package/browser/esm/CVyVvtlJuCTn4MDh.mjs +0 -7
  257. package/browser/esm/CapeIfjWq-_BHMlE.mjs +0 -7
  258. package/browser/esm/CcQqGNgK2CsgNtuD.mjs +0 -7
  259. package/browser/esm/CdZSxrk3k1Lx6G8W.mjs +0 -7
  260. package/browser/esm/CdchvB_wAbv_6Whw.mjs +0 -7
  261. package/browser/esm/Cf8eDl3Tu5NAWWwG.mjs +0 -7
  262. package/browser/esm/Cfq9tttQlsKvfaCr.mjs +0 -7
  263. package/browser/esm/ClR6uLJoM-xKVYEc.mjs +0 -7
  264. package/browser/esm/Cnl_e-EYkZ3CLbi2.mjs +0 -7
  265. package/browser/esm/CtRS2ZCPF7IH_mXe.mjs +0 -7
  266. package/browser/esm/CuV-bwi1vcXAqFUY.mjs +0 -7
  267. package/browser/esm/CwVE0qelO_xgf-l1.mjs +0 -7
  268. package/browser/esm/D1Dzlta8ZVy08ng6.mjs +0 -7
  269. package/browser/esm/D1TjRQiHLWhpl-dl.mjs +0 -7
  270. package/browser/esm/D8BJ-y3ulgO_ezrj.mjs +0 -10
  271. package/browser/esm/DTDXNEbHVnnZONNL.mjs +0 -7
  272. package/browser/esm/DTWfi8Dl-c2s5moT.mjs +0 -7
  273. package/browser/esm/DYVBXcu1r5KRLB-1.mjs +0 -7
  274. package/browser/esm/DZjWyWMvr2XHQrBg.mjs +0 -7
  275. package/browser/esm/DhHK4QmASvgAq9Xy.mjs +0 -7
  276. package/browser/esm/DoFV2S6Su86IN5Ul.mjs +0 -7
  277. package/browser/esm/Dq3ybkgattcCsF_4.mjs +0 -7
  278. package/browser/esm/DqWoZ4TjweoJWX3o.mjs +0 -7
  279. package/browser/esm/DtXxHirBm16ldE1l.mjs +0 -7
  280. package/browser/esm/DtuWZG6c_8vKRSdr.mjs +0 -7
  281. package/browser/esm/FBG8XXdIMd9PfUIo.mjs +0 -7
  282. package/browser/esm/Nh7JiwvF01PblHQ0.mjs +0 -7
  283. package/browser/esm/PVYiH9vBQM6rqXI4.mjs +0 -7
  284. package/browser/esm/U5-LDZQ0qkJ2Y-p8.mjs +0 -7
  285. package/browser/esm/XhQDWZu47oe6bwHh.mjs +0 -7
  286. package/browser/esm/_BjU6TtI-mQfFpfy.mjs +0 -7
  287. package/browser/esm/gOUfyCw957TzcbNB.mjs +0 -7
  288. package/browser/esm/lmkbfs9sNc7f0oe5.mjs +0 -7
  289. package/browser/esm/naa0kcRwxHEYGaQB.mjs +0 -7
  290. package/browser/esm/qxOkQutRxmAi1vRh.mjs +0 -7
  291. package/browser/esm/tMSro0g2GM5BBTIH.mjs +0 -7
  292. package/cdn/assets/0e9wDKSn4SFxSmP5.js +0 -27
  293. package/cdn/assets/8U2WVdbZHYCBnd9L.js +0 -23
  294. package/cdn/assets/B-kFRtzNNkf4_SiP.js +0 -1701
  295. package/cdn/assets/BAzGoI9gE2G3F3on.js +0 -637
  296. package/cdn/assets/BLqaorJ5Wl-1YOoy.js +0 -3875
  297. package/cdn/assets/BNh9nSR83reiVMKt.js +0 -90
  298. package/cdn/assets/BQON-ToGsIBPrPkM.js +0 -1371
  299. package/cdn/assets/BVYDmdUGWvMG5gNK.js +0 -241
  300. package/cdn/assets/B_2bXmyji3Dr7LRM.js +0 -50224
  301. package/cdn/assets/BlYoycYtR-sUp0iC.js +0 -27
  302. package/cdn/assets/Bsa9-Itkf_SdDBM9.js +0 -6481
  303. package/cdn/assets/CHTspRZD2v_dU_eV.js +0 -22
  304. package/cdn/assets/CMBDD1Mjde6UL5ep.js +0 -84
  305. package/cdn/assets/CR01MBraUPYPpwy4.js +0 -36
  306. package/cdn/assets/CV8UjJPDVplXjK1E.js +0 -49
  307. package/cdn/assets/CwdMjMPFdIs8SAV0.js +0 -1358
  308. package/cdn/assets/DUtu7r6CzW4dtW3E.js +0 -50
  309. package/cdn/assets/Dr5X-ng9wbwUWVr4.js +0 -41
  310. package/cdn/assets/Dvj7UEckqOBrgs9i.js +0 -3947
  311. package/cdn/assets/KtKlo5mM4kTTfFgi.js +0 -46
  312. package/cdn/assets/NTINjW8JjyZudT8s.js +0 -13449
  313. package/cdn/assets/R9RwlorPWfftoboH.js +0 -2373
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let n=class{constructor(n){this._worker=null,this._nextId=1,this._pendingRequests=new Map,this._workerFactory=n}start(){if(typeof Worker>"u")throw new Error("Web Workers are not supported in this environment.");return this._worker||(this._worker=this._workerFactory(),this._worker.onmessage=n=>{const{id:e,result:t,error:r}=n.data,o=this._pendingRequests.get(e);if(o)if(this._pendingRequests.delete(e),r){const n=new Error(r.message);n.stack=r.stack,r.cause&&(n.cause=r.cause),o.reject(n)}else o.resolve(t)},this._worker.onerror=n=>{console.error("Worker error:",n),this._pendingRequests.forEach(e=>{e.reject(new Error(`Worker failed: ${n.message}`))}),this._pendingRequests.clear(),this._worker=null}),Promise.resolve()}execute(n){if(!this._worker)throw new Error("Worker is not initialized. Call start() first.");const e=this._nextId++;return new Promise((t,r)=>{this._pendingRequests.set(e,{resolve:t,reject:r}),this._worker.postMessage({id:e,params:n})})}terminate(){this._worker&&(this._worker.terminate(),this._worker=null)}};class e{constructor(n){this._onExecute=n}execute(n){return this._onExecute(n)}start(){return Promise.resolve()}terminate(){}}const t='/**\n * @license @sheetxl/primitives - Primitives - Base types for SheetXL functions. - v0.4.13\n *\n * (C) 2025-present SheetXL Inc. & Michael T. Ford\n * License: The license can be found at https://www.sheetxl.com/license.\n */\nconst W = { Number: "n", String: "s", Boolean: "b", Error: "e", Null: "z" };\nvar Re, ae, d;\n(ae = Re || (Re = {})).Orientation = { Column: "column", Row: "row" }, ae.Orientations = { ...ae.Orientation, Both: "both" }, ae.Direction = { Up: "up", Down: "down", Left: "left", Right: "right" }, ((e) => {\n e.Code = { Parse: 0, Null: 1, Div0: 2, Value: 3, Ref: 4, Name: 5, Num: 6, NA: 7, GettingData: 8, Spill: 9, Connect: 10, Blocked: 11, Unknown: 12, Field: 13, Calc: 14, Busy: 16, Python: 19, Timeout: 20 }, e.Label = { Parse: "#PARSE!", Null: "#NULL!", Div0: "#DIV/0!", Value: "#VALUE!", Ref: "#REF!", Name: "#NAME?", Num: "#NUM!", NA: "#N/A", GettingData: "#GETTING_DATA", Spill: "#SPILL!", Connect: "#CONNECT!", Blocked: "#BLOCKED!", Unknown: "#UNKNOWN!", Field: "#FIELD!", Calc: "#CALC!", Busy: "#BUSY!", Python: "#PYTHON!", Timeout: "#TIMEOUT!" };\n class t extends Error {\n constructor(c, m, fe, B) {\n super(fe, B), this._label = m, this._code = c, this.details = B;\n }\n static {\n this.code = e.Code.Unknown;\n }\n get isFormulaError() {\n return !0;\n }\n getLabel() {\n return this._label;\n }\n getCode() {\n return this._code;\n }\n equals(c) {\n return !!c && (this._code === c._code || this._code === c.code);\n }\n get [Symbol.toStringTag]() {\n return "[FormulaError]";\n }\n toString() {\n return this.message || this._label;\n }\n }\n e.Known = t;\n class n extends t {\n constructor(c, m) {\n super(e.Code.Parse, e.Label.Parse, c, m);\n }\n static {\n this.code = e.Code.Parse;\n }\n getDetails() {\n const c = this.details;\n return { line: c?.line ?? 1, column: c?.column ?? 1, offset: c?.offset ?? 0, length: c?.length ?? 0 };\n }\n }\n e.Parse = n;\n class r extends t {\n constructor(c, m) {\n super(e.Code.Null, e.Label.Null, c, m);\n }\n static {\n this.code = e.Code.Null;\n }\n }\n e.Null = r;\n class o extends t {\n constructor(c, m) {\n super(e.Code.Div0, e.Label.Div0, c, m);\n }\n static {\n this.code = e.Code.Div0;\n }\n }\n e.Div0 = o;\n class i extends t {\n constructor(c, m) {\n super(e.Code.Value, e.Label.Value, c, m);\n }\n static {\n this.code = e.Code.Value;\n }\n }\n e.Value = i;\n class a extends t {\n constructor(c, m) {\n super(e.Code.Ref, e.Label.Ref, c, m);\n }\n static {\n this.code = e.Code.Ref;\n }\n }\n e.Ref = a;\n class l extends t {\n constructor(c, m) {\n super(e.Code.Name, e.Label.Name, c, m);\n }\n static {\n this.code = e.Code.Name;\n }\n }\n e.Name = l;\n class u extends t {\n constructor(c, m) {\n super(e.Code.Num, e.Label.Num, c, m);\n }\n static {\n this.code = e.Code.Num;\n }\n }\n e.Num = u;\n class f extends t {\n constructor(c, m) {\n super(e.Code.NA, e.Label.NA, c, m);\n }\n static {\n this.code = e.Code.NA;\n }\n }\n e.NA = f;\n class h extends t {\n constructor(c, m) {\n super(e.Code.GettingData, e.Label.GettingData, c, m);\n }\n static {\n this.code = e.Code.GettingData;\n }\n }\n e.GettingData = h;\n class g extends t {\n constructor(c, m) {\n super(e.Code.Spill, e.Label.Spill, c, m);\n }\n static {\n this.code = e.Code.Spill;\n }\n }\n e.Spill = g;\n class p extends t {\n constructor(c, m) {\n super(e.Code.Connect, e.Label.Connect, c, m);\n }\n static {\n this.code = e.Code.Connect;\n }\n }\n e.Connect = p;\n class y extends t {\n constructor(c, m) {\n super(e.Code.Blocked, e.Label.Blocked, c, m);\n }\n static {\n this.code = e.Code.Blocked;\n }\n }\n e.Blocked = y;\n class T extends t {\n constructor(c, m) {\n super(e.Code.Unknown, e.Label.Unknown, c, m);\n }\n static {\n this.code = e.Code.Unknown;\n }\n }\n e.Unknown = T;\n class A extends t {\n constructor(c, m) {\n super(e.Code.Field, e.Label.Field, c, m);\n }\n static {\n this.code = e.Code.Field;\n }\n }\n e.Field = A;\n class D extends t {\n constructor(c, m) {\n super(e.Code.Calc, e.Label.Calc, c, m);\n }\n static {\n this.code = e.Code.Calc;\n }\n }\n e.Calc = D;\n class U extends t {\n constructor(c, m) {\n super(e.Code.Busy, e.Label.Busy, c, m);\n }\n static {\n this.code = e.Code.Busy;\n }\n }\n e.Busy = U;\n class I extends t {\n constructor(c, m) {\n super(e.Code.Python, e.Label.Python, c, m);\n }\n static {\n this.code = e.Code.Python;\n }\n }\n e.Python = I;\n class J extends t {\n constructor(c, m) {\n super(e.Code.Timeout, e.Label.Timeout, c, m);\n }\n static {\n this.code = e.Code.Timeout;\n }\n }\n e.Timeout = J;\n})(d || (d = {}));\nconst _ = {};\n_[d.Code.Parse] = d.Parse, _[d.Code.Null] = d.Null, _[d.Code.Div0] = d.Div0, _[d.Code.Value] = d.Value, _[d.Code.Ref] = d.Ref, _[d.Code.Name] = d.Name, _[d.Code.Num] = d.Num, _[d.Code.NA] = d.NA, _[d.Code.GettingData] = d.GettingData, _[d.Code.Spill] = d.Spill, _[d.Code.Connect] = d.Connect, _[d.Code.Blocked] = d.Blocked, _[d.Code.Unknown] = d.Unknown, _[d.Code.Field] = d.Field, _[d.Code.Calc] = d.Calc, _[d.Code.Busy] = d.Busy, _[d.Code.Python] = d.Python, _[d.Code.Timeout] = d.Timeout;\nconst et = /* @__PURE__ */ new Map(), Te = /* @__PURE__ */ new Map(), tt = /* @__PURE__ */ new Map(), nt = /* @__PURE__ */ new Map(), ke = Object.keys(_);\nfor (let e = 0; e < ke.length; e++) {\n const t = ke[e], n = _[t];\n tt.set(d.Label[t], n), nt.set(d.Code[t], n);\n const r = new n();\n et.set(r.getLabel(), r), Te.set(r.getCode(), r);\n}\nconst Et = Te.get(d.Code.Unknown);\nvar v;\n(v = d || (d = {})).BuiltIn = { Parse: new v.Parse(), Null: new v.Null(), Div0: new v.Div0(), Value: new v.Value(), Ref: new v.Ref(), Name: new v.Name(), Num: new v.Num(), NA: new v.NA(), GettingData: new v.GettingData(), Spill: new v.Spill(), Connect: new v.Connect(), Blocked: new v.Blocked(), Unknown: new v.Unknown(), Field: new v.Field(), Calc: new v.Calc(), Busy: new v.Busy(), Python: new v.Python(), Timeout: new v.Timeout() }, v.getBuiltInByLabel = (e) => et.get(e), v.newTypedError = (e, t, n) => {\n let r;\n return r = typeof e == "string" ? tt.get(e) : nt.get(e), r || (r = v.Unknown), new r(t, n);\n}, v.getBuiltInById = (e) => Te.get(e) || Et;\n/**\n * @license @sheetxl/utils - Utils - Utilities used by most SheetXL components. - v0.4.13\n *\n * (C) 2025-present SheetXL Inc. & Michael T. Ford\n * License: The license can be found at https://www.sheetxl.com/license.\n */\nconst S = { html: "text/html", plain: "text/plain", png: "image/png" }, St = Object.freeze({ left: 0, top: 0 }), xt = Object.freeze({ left: 0, top: 0, bottom: 0, right: 0 }), Ct = Object.freeze({ x: 0, y: 0, width: 0, height: 0 });\nObject.freeze(Object.defineProperty({ __proto__: null, EmptyBounds: Ct, EmptyRect: xt, EmptyTopLeft: St }, Symbol.toStringTag, { value: "Module" }));\nconst j = { Column: "column", Row: "row" }, vt = Object.freeze({ colIndex: 0, rowIndex: 0 }), Tt = Object.freeze({ colStart: 0, rowStart: 0, colEnd: 0, rowEnd: 0 }), rt = (e, t) => e.colStart === t.colStart ? e.rowStart - t.rowStart : e.colStart - t.colStart, ot = (e, t) => e.rowStart === t.rowStart ? e.colStart - t.colStart : e.rowStart - t.rowStart, _t = (e, t) => e.rowEnd === t.rowEnd ? t.colEnd - e.colEnd : t.rowEnd - e.rowEnd, Ot = (e, t) => e.colEnd === t.colEnd ? t.rowEnd - e.rowEnd : t.colEnd - e.colEnd, Le = (e, t) => e.colIndex === t.colIndex ? e.rowIndex - t.rowIndex : e.colIndex - t.colIndex, Ae = (e, t) => e.rowIndex === t.rowIndex ? e.colIndex - t.colIndex : e.rowIndex - t.rowIndex, it = (e = j.Row, t = !1) => t ? e !== j.Column ? _t : Ot : e !== j.Column ? ot : rt, Me = (e, t) => e === t || !(!e || !t) && e.rowIndex === t.rowIndex && e.colIndex === t.colIndex, Se = (e, t) => e === t || !(!e || !t) && e.rowStart === t.rowStart && e.rowEnd === t.rowEnd && e.colStart === t.colStart && e.colEnd === t.colEnd, xe = (e, t) => !(!e || !t) && !(e.colStart > t.colEnd || t.colStart > e.colEnd) && !(e.rowStart > t.rowEnd || t.rowStart > e.rowEnd), je = (e, t) => {\n if (e === t) return !0;\n if (!e || !t || e.length !== t.length) return !1;\n for (let n = 0; n < e.length; n++) if (!Se(e[n], t[n])) return !1;\n return !0;\n}, he = (e, t, n) => {\n if (!e && !t) return null;\n if (!e) return n ? t : { ...t };\n if (!t) return n ? e : { ...e };\n const r = Math.min(e.colStart, t.colStart), o = Math.min(e.rowStart, t.rowStart), i = Math.max(e.colEnd, t.colEnd), a = Math.max(e.rowEnd, t.rowEnd);\n let l = n;\n return l ? (l.colStart = r, l.rowStart = o, l.colEnd = i, l.rowEnd = a) : l = { colStart: r, rowStart: o, colEnd: i, rowEnd: a }, l;\n}, Pe = (e, t) => {\n if (!t || t.length === 0) return e;\n const n = { ...e };\n for (let r = 0; r < t.length; r++) {\n const o = t[r];\n xe(n, o) && (n.rowStart = Math.min(n.rowStart, o.rowStart), n.colStart = Math.min(n.colStart, o.colStart), n.rowEnd = Math.max(n.rowEnd, o.rowEnd), n.colEnd = Math.max(n.colEnd, o.colEnd));\n }\n return n;\n}, It = [null, null], Nt = (e, t, n) => {\n if (e[0].value === e[1].value) return t;\n};\nfunction Fe(e, t = 2, n, r = j.Row, o) {\n let i = [...e];\n if (t <= 0 || e.length <= 1) return i;\n let a = r === j.Column, l = 0, u = !1;\n do {\n const f = i.sort(it(a ? j.Row : j.Column));\n i = [], i.push(f[0]);\n const h = f.length;\n let g = 0, p = f[0], y = p.colStart, T = p.rowStart, A = p.colEnd, D = p.rowEnd;\n for (let U = 1; U < h; U++) {\n const I = f[U];\n let J = !1;\n if (J = a ? p && T === I.rowStart && D === I.rowEnd && A + 1 === I.colStart : p && y === I.colStart && A === I.colEnd && D + 1 === I.rowStart, J) {\n let E = { colStart: y, rowStart: T, colEnd: a ? I.colEnd : A, rowEnd: a ? D : I.rowEnd };\n if (p.value !== void 0 && (E.value = p.value), n) {\n const c = o ?? [null, null];\n c[0] = p, c[1] = I, E = n(c, E, r);\n }\n if (E) {\n i[g] = E, u = !0, p = E, y = p.colStart, T = p.rowStart, A = p.colEnd, D = p.rowEnd;\n continue;\n }\n }\n i[++g] = I, p = I, y = p.colStart, T = p.rowStart, A = p.colEnd, D = p.rowEnd;\n }\n l++, a = !a, l === 1 && (u = !0);\n } while (l < t && u && i.length > 1);\n return i;\n}\nObject.freeze(Object.defineProperty({ __proto__: null, EmptyCell: vt, EmptyRange: Tt, cellToRange: (e, t) => {\n if (!e) return null;\n let n = t;\n return n || (n = { ...e }, delete n.colIndex, delete n.rowIndex), n.colStart = e.colIndex ?? 0, n.rowStart = e.rowIndex ?? 0, n.colEnd = e.colIndex ?? 0, n.rowEnd = e.rowIndex ?? 0, n;\n}, columnFirstCellComparator: Le, columnFirstRangeComparator: rt, createCellComparator: (e = j.Row, t = !1) => t ? e !== j.Column ? (n, r) => n.rowIndex === r.rowIndex ? r.colIndex - n.colIndex : r.rowIndex - n.rowIndex : (n, r) => n.colIndex === r.colIndex ? r.rowIndex - n.rowIndex : r.colIndex - n.colIndex : e !== j.Column ? Ae : Le, createConflatingRanges: (e, t = !1) => {\n const n = [];\n let r, o, i = Number.MIN_SAFE_INTEGER, a = Number.MIN_SAFE_INTEGER;\n return { append: (l, u, f) => {\n let h = !0;\n const g = f !== void 0;\n if (g) {\n const T = e ? e(o, f, t) : o === f ? f : void 0;\n T === void 0 ? h = !1 : f = T;\n }\n if (h && u === a + 1 && l === i) return t ? r.rowEnd = u : r.colEnd = u, a = u, void (o = f);\n r && n.push(r);\n const p = t ? l : u, y = t ? u : l;\n r = { colStart: p, rowStart: y, colEnd: p, rowEnd: y }, g && (r.value = f), i = l, a = u, o = f;\n }, done: (l) => (r && (n.push(r), r = null), l ? Fe(n, 3, l === !0 ? Nt : l, t ? j.Column : j.Row, It) : n) };\n}, createRangeComparator: it, defaultRange: (e, t, n) => e ? n ? (n.colStart = e.colStart ?? t.colStart, n.rowStart = e.rowStart ?? t.rowStart, n.colEnd = e.colEnd ?? t.colEnd, n.rowEnd = e.rowEnd ?? t.rowEnd, n) : { colStart: e.colStart ?? t.colStart, rowStart: e.rowStart ?? t.rowStart, colEnd: e.colEnd ?? t.colEnd, rowEnd: e.rowEnd ?? t.rowEnd } : t, extendRangeToIntersectingRanges: Pe, extendRangeToUnionRanges: (e, t) => {\n if (!t || t.length === 0) return e;\n let n = e, r = null;\n for (; !Se(n, r); ) r = n, n = Pe(r, t);\n return n;\n}, indexOfCoords: (e, t) => {\n const n = { colStart: e.colIndex, rowStart: e.rowIndex, colEnd: e.colIndex, rowEnd: e.rowIndex };\n for (let r = t.length - 1; r >= 0; r--) if (xe(n, t[r])) return r;\n return -1;\n}, intersectRanges: (e, t, n) => {\n if (!e) return n ? t : { ...t };\n if (!t) return n ? e : { ...e };\n if (!e && !t || e.rowStart > t.rowEnd || e.rowEnd < t.rowStart || e.colStart > t.colEnd || e.colEnd < t.colStart) return null;\n const r = Math.max(e.colStart, t.colStart), o = Math.max(e.rowStart, t.rowStart), i = Math.min(e.colEnd, t.colEnd), a = Math.min(e.rowEnd, t.rowEnd);\n let l = n;\n return l ? (l.colStart = r, l.rowStart = o, l.colEnd = i, l.rowEnd = a) : l = { colStart: r, rowStart: o, colEnd: i, rowEnd: a }, l;\n}, isCellWithinRange: (e, t) => !(!e || !t) && !(e.rowIndex < t.rowStart || e.rowIndex > t.rowEnd) && !(e.colIndex < t.colStart || e.colIndex > t.colEnd), isEqualCells: Me, isEqualRanges: Se, isEqualRangesArrays: je, isEqualSelectionCoords: (e, t) => e === t || !(!e || !t) && e.rangeIndex === t.rangeIndex && !!Me(e.cell, t.cell) && je(e.ranges, t.ranges), isRangeWithinRange: (e, t) => !(e.rowStart < t.rowStart || e.rowEnd > t.rowEnd) && !(e.colStart < t.colStart || e.colEnd > t.colEnd), isRangesIntersect: xe, isSingleCell: (e) => !!e && e.rowEnd === e.rowStart && e.colStart === e.colEnd, isValidRange: (e) => !!e && !(typeof e.colStart != "number" || e.colStart < 0) && !(typeof e.colEnd != "number" || e.colEnd < e.colStart) && !(typeof e.rowStart != "number" || e.rowStart < 0) && !(typeof e.rowEnd != "number" || e.rowEnd < e.rowStart), mergeRangedValues: Fe, rowFirstCellComparator: Ae, rowFirstRangeComparator: ot, sanitizeRange: (e) => e ? { colStart: e.colIndex ?? e.colStart ?? 0, rowStart: e.rowIndex ?? e.rowStart ?? 0, colEnd: e.colIndex ?? e.colEnd ?? 0, rowEnd: e.rowIndex ?? e.rowEnd ?? 0 } : null, translateRange: (e, t = -e.rowStart, n = -e.colStart, r) => r ? (r.colStart = e.colStart + n, r.rowStart = e.rowStart + t, r.colEnd = e.colEnd + n, r.rowEnd = e.rowEnd + t, r) : { colStart: e.colStart + n, rowStart: e.rowStart + t, colEnd: e.colEnd + n, rowEnd: e.rowEnd + t }, unionRanges: he, unionRangesArrays: (e, t, n) => {\n if (!e || e.length === 0) return null;\n if (e.length === 1 && !t) return e[0];\n let r = e[0];\n for (let o = 1; o < e.length; o++) r = he(r, e[o], n);\n return t && (r = he(r, t, n)), r;\n} }, Symbol.toStringTag, { value: "Module" }));\nfunction Rt(e) {\n const t = Object.prototype.toString.call(e);\n return t === "[object RegExp]" || t === "[object Date]" || function(n) {\n return n.$$typeof === kt;\n }(e);\n}\nconst kt = typeof Symbol == "function" && Symbol.for ? Symbol.for("react.element") : 60103;\nfunction Lt(e) {\n return /* @__PURE__ */ function(t) {\n return !!t && typeof t == "object";\n }(e) && !Rt(e);\n}\nfunction re(e, t) {\n return t.clone !== !1 && t.isMergeableObject(e) ? Y((n = e, Array.isArray(n) ? [] : {}), e, t) : e;\n var n;\n}\nfunction At(e, t, n) {\n return e.concat(t).map(function(r) {\n return re(r, n);\n });\n}\nfunction De(e) {\n return Object.keys(e).concat(function(t) {\n return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(t).filter(function(n) {\n return Object.propertyIsEnumerable.call(t, n);\n }) : [];\n }(e));\n}\nfunction Ue(e, t) {\n try {\n return t in e;\n } catch {\n return !1;\n }\n}\nfunction Mt(e, t, n) {\n const r = {};\n return n.isMergeableObject(e) && De(e).forEach(function(o) {\n r[o] = re(e[o], n);\n }), De(t).forEach(function(o) {\n (function(i, a) {\n return Ue(i, a) && !(Object.hasOwnProperty.call(i, a) && Object.propertyIsEnumerable.call(i, a));\n })(e, o) || (Ue(e, o) && n.isMergeableObject(t[o]) ? r[o] = function(i, a) {\n if (!a.customMerge) return Y;\n const l = a.customMerge(i);\n return typeof l == "function" ? l : Y;\n }(o, n)(e[o], t[o], n) : r[o] = re(t[o], n));\n }), r;\n}\nfunction Y(e, t, n) {\n (n = n || {}).arrayMerge = n.arrayMerge || At, n.isMergeableObject = n.isMergeableObject || Lt, n.cloneUnlessOtherwiseSpecified = re;\n const r = Array.isArray(t);\n return r === Array.isArray(e) ? r ? n.arrayMerge(e, t, n) : Mt(e, t, n) : re(t, n);\n}\nY.all = function(e, t) {\n if (!Array.isArray(e)) throw new Error("first argument should be an array");\n return e.reduce(function(n, r) {\n return Y(n, r, t);\n }, {});\n};\nconst jt = Object.freeze([]), Pt = Object.freeze({}), Be = (e) => e, de = () => "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(e) {\n let t = 16 * Math.random() | 0;\n return (e === "x" ? t : 3 & t | 8).toString(16);\n}), Ft = (e) => 1 * e, at = (e, t) => e === t || !(!Array.isArray(e) || !Array.isArray(t) || e.length !== t.length) && e.every((n, r) => n === t[r]), ne = (e) => typeof e == "object" && !Array.isArray(e) && e !== null, lt = (e) => typeof e != "object" || Array.isArray(e) || e === null ? e : (Object.keys(e).forEach(function(t) {\n e[t] && typeof e[t] == "object" ? lt(e[t]) : e[t] !== null && e[t] !== void 0 || delete e[t], typeof e[t] == "object" && Object.keys(e[t]).length === 0 && delete e[t];\n}), Object.keys(e).length === 0 ? null : e), Dt = (e, t) => !(e !== t && !at(e, t)) || !!e.isEqual?.(t), st = (e, t, n = Dt) => {\n if (e == null || e === t) return null;\n if (!e || typeof e != "object" || Array.isArray(e) || e.isImmutable?.()) return n(e, t) ? null : e;\n const r = Object.keys(e);\n if (r.length === 0) return null;\n let o = !1;\n for (let i = 0; i < r.length; i++) {\n const a = r[i];\n st(e[a], t?.[a], n) === null && (o = !0, delete e[a]);\n }\n return o && Object.keys(e).length === 0 ? null : void 0;\n}, $e = typeof performance == "object" && typeof performance.now == "function" ? () => performance.now() : () => Date.now(), ze = (e) => e == null, Ke = (e, t) => !(t.left > e.right || t.right < e.left || t.top > e.bottom || t.bottom < e.top), Ve = !(typeof window > "u" || !window.document || !window.document.createElement), k = { Windows: "windows", MacOS: "macos", IOS: "ios", Linux: "linux", Android: "android", Safari: "safari", Firefox: "firefox", Node: "node", Unknown: "unknown" }, oe = () => {\n if (ct()) return k.Node;\n const e = globalThis.navigator !== void 0 && globalThis.navigator.userAgent ? globalThis.navigator.userAgent.toLowerCase() : "";\n return e ? /(win32|win64|windows|wince)/i.test(e) ? k.Windows : /(macintosh|macintel|macppc|mac68k|macos)/i.test(e) ? k.MacOS : /(iphone|ipad|ipod)/i.test(e) ? k.IOS : /android/.test(e) ? k.Android : /linux/.test(e) ? k.Linux : /^((?!chrome|android|).)*safari/i.test(e) ? k.Safari : /^((?!chrome|android|Seamonkey).)*firefox/i.test(e) ? k.Firefox : k.Unknown : k.Unknown;\n};\nfunction ct() {\n return typeof process < "u" && process.release?.name === "node" || (typeof process < "u" && process.browser, !1);\n}\nconst qe = (e, t = !1) => (document.hasFocus() || t) && (e === document.activeElement || e?.contains(document.activeElement)), Ut = Object.freeze(Object.defineProperty({ __proto__: null, EmptyArray: jt, EmptyObject: Pt, OSType: k, arrayMove: function(e, t, n) {\n const r = e.slice();\n return r.splice(n < 0 ? r.length + n : n, 0, r.splice(t, 1)[0]), r;\n}, asNumber: (e) => {\n const t = Ft(e);\n return Number.isFinite(t) ? t : 0;\n}, camelToPrettyCase: (e) => e.length === 1 ? e.toUpperCase() : e.replace(/([A-Z])/g, " $1").replace(/^./, function(t) {\n return t.toUpperCase();\n}).trim(), canUseDOM: Ve, cancelTimeout: (e) => {\n cancelAnimationFrame(e.id);\n}, castToString: (e) => e == null || e === void 0 ? "" : typeof e != "string" ? "" + e : e, cloneObject: (e) => ze(e) ? e : JSON.parse(JSON.stringify(e)), consoleWithNoSource: (...e) => new Promise((t) => {\n setTimeout(() => {\n Function("console.log.apply(console, arguments)").apply(null, e), t();\n });\n}), debounce: function(e, t = 300, n = !1) {\n let r, o, i, a, l = 0;\n function u() {\n let h = Date.now() - l;\n h < t && h >= 0 ? r = setTimeout(u, t - h) : (r = null, n || (a = e.apply(i, o), i = o = null));\n }\n t == null && (t = 100);\n const f = function() {\n i = globalThis, o = arguments, l = Date.now();\n var h = n && !r;\n return r || (r = setTimeout(u, t)), h && (a = e.apply(i, o), i = o = null), a;\n };\n return f.clear = function() {\n r && (clearTimeout(r), r = null);\n }, f.flush = function() {\n r && (a = e.apply(i, o), i = o = null, clearTimeout(r), r = null);\n }, f;\n}, deepEqual: function e(t, n) {\n if (t === n) return !0;\n if (t && n && typeof t == "object" && typeof n == "object") {\n if (t.constructor !== n.constructor) return !1;\n let r, o, i;\n if (Array.isArray(t)) {\n if (r = t.length, r != n.length) return !1;\n for (o = r; o-- !== 0; ) if (!e(t[o], n[o])) return !1;\n return !0;\n }\n if (t instanceof Map && n instanceof Map) {\n if (t.size !== n.size) return !1;\n for (o of t.entries()) if (!n.has(o[0])) return !1;\n for (o of t.entries()) if (!e(o[1], n.get(o[0]))) return !1;\n return !0;\n }\n if (t instanceof Set && n instanceof Set) {\n if (t.size !== n.size) return !1;\n for (o of t.entries()) if (!n.has(o[0])) return !1;\n return !0;\n }\n if (ArrayBuffer.isView(t) && ArrayBuffer.isView(n)) {\n if (r = t.length, r != n.length) return !1;\n for (o = r; o-- !== 0; ) if (t[o] !== n[o]) return !1;\n return !0;\n }\n if (t.constructor === RegExp) return t.source === n.source && t.flags === n.flags;\n if (t.valueOf !== Object.prototype.valueOf) return t.valueOf() === n.valueOf();\n if (t.toString !== Object.prototype.toString) return t.toString() === n.toString();\n if (i = Object.keys(t), r = i.length, r !== Object.keys(n).length) return !1;\n for (o = r; o-- !== 0; ) if (!Object.prototype.hasOwnProperty.call(n, i[o])) return !1;\n for (o = r; o-- !== 0; ) {\n let a = i[o];\n if ((a !== "_owner" || !t.$$typeof) && !e(t[a], n[a])) return !1;\n }\n return !0;\n }\n return t != t && n != n;\n}, deepFreeze: function e(t) {\n return Object.freeze(t), Object.keys(t).forEach((n) => {\n typeof t[n] != "object" || t[n] === null || Object.isFrozen(t[n]) || e(t[n]);\n }), t;\n}, deepMerge: Y, diffValues: (e, t) => {\n const n = {}, r = Object.keys(t), o = r.length;\n for (let i = 0; i < o; i++) {\n const a = r[i];\n e[a] !== t[a] && (e[a] === void 0 ? n[a] = t[a] : n[a] = e[a]);\n }\n return Object.keys(n).length === 0 ? null : n;\n}, findEqualOrGreater: function(e, t, n = Be) {\n let r = 0, o = e.length - 1;\n for (; r <= o; ) {\n let i = Math.floor((r + o) / 2), a = n(e[i]);\n if (a === t) return i;\n a < t ? r = i + 1 : o = i - 1;\n }\n return r;\n}, findEqualOrLesser: function(e, t, n = Be) {\n let r = e.length - 1, o = 0;\n for (; r >= o; ) {\n let i = Math.floor((r + o) / 2), a = n(e[i]);\n if (a === t) return i;\n a > t ? r = i - 1 : o = i + 1;\n }\n return r;\n}, findNextStep: (e, t = !0, n = 15, r = 10, o = 400) => {\n const i = Math.max(e - r, 0) + (t ? 1 : -1);\n return Math.min(o, Math[t ? "ceil" : "floor"](i / n) * n + r);\n}, getDPI: () => {\n let e = 1;\n return typeof window == "object" && (e = window.devicePixelRatio || 1), e;\n}, getFromPath: (e, t) => {\n const n = t.split(".");\n let r = e;\n for (let o = 0; o < n.length; o++) {\n const i = n[o];\n if (!r) return null;\n let a = r[i];\n if (typeof a == "function" && (a = a.bind(r)()), !a || !ne(a)) return a;\n r = a;\n }\n return r ?? null;\n}, getOS: oe, hasFocus: qe, isDefined: (e) => e != null, isEmpty: (e) => e == null || e === "", isEqualArrays: at, isEqualBounds: (e, t) => e === t || !(e && !t || t && !e) && e.x === t.x && e.y === t.y && e.width === t.width && e.height === t.height, isEqualObjectKeys: (e, t) => {\n if (e === t) return !0;\n if (e && !t || t && !e) return !1;\n const n = Object.keys(e);\n if (n.length !== Object.keys(t).length) return !1;\n for (let r = 0; r < n.length; r++) if (e[n[r]] !== t[n[r]]) return !1;\n return !0;\n}, isNode: ct, isNullOrUndefined: ze, isNumeric: (e) => {\n const t = 1 * e;\n return Number.isFinite(t) && typeof t == "number";\n}, isObject: ne, isPromiseLike: (e) => !!e && typeof e.then == "function", isRectInsideRect: (e, t) => e.top >= t.top && e.bottom <= t.bottom && e.left >= t.left && e.right <= t.right, isRectIntersect: Ke, mergeContentful: (...e) => {\n const t = e.length;\n if (t > 0 && e[t - 1] !== void 0 && !ne(e[t - 1])) return e[t - 1];\n let n = e[0] || {};\n for (let r = 1; r < t; r++) n = Y(n, e[r] || {}, { arrayMerge: (o, i) => [...i] });\n return n;\n}, nextTick: (e) => {\n typeof window < "u" && typeof window.requestAnimationFrame == "function" ? window.requestAnimationFrame(() => {\n e();\n }) : (typeof setImmediate == "function" ? setImmediate : setTimeout)(() => {\n e();\n });\n}, openFileDialog: (e = "*.*") => new Promise((t, n) => {\n if (!Ve) return void n("Unable to open dialog with no dom.");\n const r = document.createElement("input");\n r.type = "file", r.accept = e;\n let o = null, i = !1;\n globalThis.addEventListener?.("focus", () => {\n setTimeout(() => {\n o || i || (i = !0, t(null));\n }, 1e3);\n }, { once: !0, passive: !0 }), r.onchange = () => {\n if (o = r.files[0], o) {\n if (i) return void console.warn("File open detected after faux cancel.", o);\n t(o);\n }\n }, r.autofocus = !0, r.click();\n}), rafThrottle: (e) => {\n let t, n = !1, r = function() {\n n = !1, e(t);\n };\n return function(o) {\n t = o, t && t.persist && t.persist(), n || (n = !0, requestAnimationFrame(r));\n };\n}, removeEmptyProperties: lt, removeEqualValues: st, removeListenerAll: (e) => {\n if (!e) return [];\n for (let t = 0; t < e.length; t++) e[t] && e[t]();\n return [];\n}, requestTimeout: (e, t) => {\n const n = $e(), r = { id: requestAnimationFrame(function o() {\n $e() - n >= t ? e.call(null) : r.id = requestAnimationFrame(o);\n }) };\n return r;\n}, roundAccurately: (e, t = 0) => {\n if (e == null || !isFinite(e)) return null;\n const n = 10 ** t;\n return Number(Math.round(e * n) / n);\n}, setToPath: (e, t, n) => {\n const r = t.split(".");\n let o = e;\n if (!o) throw new Error("Can not set path to a null path.");\n for (let i = 0; o && i < r.length - 1; i++) {\n const a = r[i];\n let l = o[a];\n if (l == null && (l = {}, o[a] = l), !ne(l)) throw new Error("Can not set path to a non object path.");\n o = l;\n }\n if (typeof n != "number" && typeof n != "boolean" && typeof n != "string" && !ne(n)) throw new Error(`Can not set path to ${n} that is not a a supported primitive.`);\n return o[r[r.length - 1]] = n, e;\n}, splitNumber: (e) => {\n let t = Math.abs(e);\n if (isNaN(t) || !isFinite(e)) return null;\n let n = 0 | t, r = t - n, o = 0, i = 0, a = 1;\n if (r > 5e-8) for (; i < 8 && Math.abs(o / a - r) > 5e-8; ) i++, a *= 10, o = Math.round(r * a);\n return { ip: Math.trunc(e), fp: o, ipLength: Math.ceil(Math.log10(n + 1)), fpLength: i };\n}, subtractRect: (e, t, n = !1) => {\n if (!t) return [e];\n if (!Ke(e, t)) return [];\n const r = [];\n let o = e;\n const i = () => {\n t.top > o.top && t.top < o.bottom && (r.push({ ...o, bottom: t.top }), o = { ...o, top: t.top });\n }, a = () => {\n t.bottom > o.top && t.bottom < o.bottom && (r.push({ ...o, top: t.bottom }), o = { ...o, bottom: t.bottom });\n }, l = () => {\n t.right > o.left && t.right < o.right && (r.push({ ...o, left: t.right }), o = { ...o, right: t.right });\n }, u = () => {\n t.left > o.left && t.left < o.right && (r.push({ ...o, right: t.left }), o = { ...o, left: t.left });\n };\n return n ? (u(), l(), i(), a()) : (i(), a(), l(), u()), r;\n}, textToKey: (e) => e.replace(/[^a-zA-Z0-9]/g, "").toLowerCase(), throttle: function(e, t) {\n let n = null;\n return (...r) => {\n const o = Date.now();\n (!n || o - n >= t) && (n = o, e(...r));\n };\n}, toSafeJSON: function e(t) {\n if (t === null || typeof t != "object") return t;\n if (typeof t.toJSON == "function") return t.toJSON();\n if (Array.isArray(t)) return t.map((r) => e(r));\n if (typeof t.toString == "function" && t.toString !== Object.prototype.toString) return t.toString();\n const n = {};\n for (const r in t) t.hasOwnProperty(r) && (n[r] = e(t[r]));\n return n;\n}, transpose: (e) => {\n if (!e) return e;\n const t = e.length, n = e[0].length, r = [];\n for (let o = 0; o < n; o++) r[o] = Array(t);\n for (let o = 0; o < t; o++) for (let i = 0; i < n; i++) r[i][o] = e[o][i];\n return r;\n}, uuidV4: de, validEnumValue: (e, t) => {\n if (!Object.values(e).includes(t)) throw new Error(`Invalid type: ${t ?? "null"}. Must be one of: ${Object.values(t).join(", ")}.`);\n}, whenFocus: async (e, t = !1) => new Promise((n) => {\n qe(e, t) ? n(!0) : e.addEventListener("focusin", () => {\n n(!0);\n }, { once: !0 }), e.focus();\n}) }, Symbol.toStringTag, { value: "Module" }));\nObject.freeze(Object.defineProperty({ __proto__: null, MESSAGE_ERROR_INVALID_ARG: (e) => `Invalid argument: \'${e}\'.` }, Symbol.toStringTag, { value: "Module" }));\nconst ut = (e) => {\n const t = new Uint8Array(e), n = t.byteLength;\n let r = "";\n for (let o = 0; o < n; o++) r += String.fromCharCode(t[o]);\n if (typeof window < "u" && typeof globalThis.btoa == "function") return globalThis.btoa(r);\n if (typeof Buffer < "u") return Buffer.from(r, "binary").toString("base64");\n throw new Error("Unsupported environment");\n}, Ce = (e) => new Promise((t, n) => {\n if (e) if (typeof FileReader < "u") {\n const r = new FileReader();\n r.onload = () => {\n t(r.result);\n }, r.onerror = () => {\n n(r.error);\n }, r.readAsText(e);\n } else if (typeof Buffer < "u") {\n const r = (o) => Buffer.from(o).toString("utf-8");\n e.arrayBuffer().then((o) => {\n t(r(o));\n }).catch((o) => {\n n(o);\n });\n } else n(new Error("Unsupported environment"));\n else t("");\n});\nObject.freeze(Object.defineProperty({ __proto__: null, DEFAULT_MIME_TYPE: "*/*", arrayBufferToBase64: ut, base64ToArrayBuffer: (e) => {\n const t = typeof window < "u" && typeof globalThis.atob == "function" ? globalThis.atob(e) : Buffer.from(e, "base64").toString("binary"), n = t.length, r = new Uint8Array(n);\n for (let o = 0; o < n; o++) r[o] = t.charCodeAt(o);\n return r.buffer;\n}, blobToString: Ce }, Symbol.toStringTag, { value: "Module" }));\nconst dt = "data:image/png;base64,", ft = "Unable to resolve image.", Ge = (e) => new Promise(async (t, n) => {\n let r = null;\n try {\n r = new Image(), r.src = e, r.addEventListener("load", function() {\n t({ width: r.naturalWidth, height: r.naturalHeight });\n }, { once: !0 }), r.addEventListener("error", function() {\n URL.revokeObjectURL(e), n("Invalid Image");\n }, { once: !0 }), await r.decode("sync");\n } catch {\n r?.src && URL.revokeObjectURL(r.src);\n }\n r || n(ft);\n}), we = "image/svg+xml";\nObject.freeze(Object.defineProperty({ __proto__: null, DATA_URL_PNG_PREFIX: dt, getImageDataUrl: (e, t = 1) => new Promise(async (n, r) => {\n let o = null;\n try {\n o = new Image(), o.src = e, o.addEventListener("load", function() {\n try {\n const i = document.createElement("canvas");\n i.width = o.naturalWidth, i.height = o.naturalHeight, i.getContext("2d").drawImage(o, 0, 0);\n const a = i.toDataURL("image/png", t);\n n({ elemImg: o, dataUrl: a });\n } catch (i) {\n URL.revokeObjectURL(e), r(i);\n }\n }, { once: !0 }), o.addEventListener("error", function() {\n URL.revokeObjectURL(e), r("Invalid Image");\n }, { once: !0 }), await o.decode("sync");\n } catch {\n o?.src && URL.revokeObjectURL(o.src);\n }\n o || r(ft);\n}), loadImageDetails: async (e, t = null) => {\n let n = null;\n const r = async () => {\n try {\n const i = t ?? "image/*", a = URL.createObjectURL(new Blob([e], { type: i })), l = await Ge(a);\n n = { mimeType: i, naturalDimensions: l, asUrl: a };\n } catch {\n }\n }, o = async () => {\n try {\n const i = new TextDecoder().decode(e), a = URL.createObjectURL(new Blob([i], { type: we })), l = await Ge(a);\n n = { mimeType: t ?? we, naturalDimensions: l, asUrl: a, asSVGText: i };\n } catch {\n }\n };\n if (t === we ? await o() : t.startsWith("image/") ? await r() : (await r(), n || await o()), !n) throw new Error("Failed to load image");\n return n;\n} }, Symbol.toStringTag, { value: "Module" }));\nvar We, Ye;\n(Ye = We || (We = {})).resolveTypedUpdates = (e, t, n, r) => {\n if (e === null) return e;\n if (e === void 0) return r;\n let o = e;\n if (t?.shorthand) {\n const u = t?.shorthand(e, n);\n u !== void 0 && (o = u);\n }\n if (o !== null && t?.getSubType) {\n const u = t.getSubType(o);\n u && (t = u);\n }\n const i = t?.properties, a = t?.arrayType ?? !1;\n let l = o;\n if (t && t.merge && l && r) l = t.merge(l, r, n);\n else if (!a) {\n if (i) {\n const u = Object.keys({ ...o, ...r });\n l = null;\n for (let f = 0; f < u.length; f++) {\n const h = u[f];\n let g, p = o[h];\n if (p !== void 0) {\n const y = i[h];\n g = y ? (0, Ye.resolveTypedUpdates)(p, y, n, r?.[h]) : p;\n } else g = r?.[h];\n g != null && (l = l ?? {}, l[h] = g);\n }\n }\n }\n return l;\n};\nconst Je = `The Safari browser does not support advanced copy and paste.\nCopy and paste will be limited to within the browser tab.\n\nPlease use Chrome or Edge if external copy and paste is required.`, ye = `You do not have permissions to access the clipboard.\nAll copy and paste operations will be limited to the browser tab.`, pt = { Safari: `The Safari browser does not support advanced copy and paste.\nCopy and paste will be limited to within the browser tab.\n\nPlease use Chrome or Edge if external copy and paste is required.`, Perms: ye, PermsWrite: oe() === k.Safari ? Je : ye, PermsRead: oe() === k.Safari ? Je : ye }, ge = async () => new Promise((e) => {\n document.hasFocus() ? e() : globalThis.addEventListener?.("focus", () => {\n e();\n }, { once: !0 }), document.activeElement.focus?.();\n}), be = async (e, t, n) => {\n if (oe() === k.Safari) return await n(new Error(pt.Safari));\n try {\n const r = async (a) => {\n try {\n return await a();\n } catch (l) {\n if (l.message?.includes("Document is not focused")) return !1;\n throw l;\n }\n }, o = await globalThis?.navigator?.permissions?.query({ name: e, allowWithoutGesture: !0, allowWithoutSanitization: !0 });\n let i = !1;\n if (o.state === "prompt" && (i = await r(t)), i || o.state !== "granted" || (i = await t()), !i) return await n(new Error(o.state));\n } catch (r) {\n return r.message === "No valid data on clipboard" || r.name === "DataError" ? void 0 : await n(r);\n }\n}, mt = async (e) => {\n try {\n return await e.read({ unsanitized: [S.html] });\n } catch {\n }\n return await e.read();\n}, Bt = async (e, t) => {\n if (!e) return null;\n const n = await mt(e);\n let r = !1;\n for (let o = 0; !r && n && o < n.length; o++) if (r = n[o].types.includes(t), r)\n return await n[o].getType(t);\n return r ? void 0 : null;\n};\nif (!globalThis.ClipboardItem) {\n const e = (n, r) => new Blob([r], { type: n });\n class t {\n constructor(r, o) {\n this._items = {}, this._types = Object.keys(r);\n const i = {}, a = Object.keys(r);\n for (let l = 0; l < a.length; l++) {\n const u = a[l];\n let f = r[u];\n i[u] = typeof f == "string" ? e(u, f) : f;\n }\n this._items = i, this._presentationStyle = o?.presentationStyle ?? "unspecified";\n }\n get types() {\n return this._types;\n }\n getType(r) {\n return Promise.resolve(this._items[r]);\n }\n supports(r) {\n return !0;\n }\n }\n globalThis.ClipboardItem = t;\n}\nconst ve = async (e, t = S.html) => new Promise(async (n, r) => {\n try {\n const o = await Bt(e, t);\n if (o) {\n const i = new FileReader();\n i.onload = () => {\n n(i.result);\n }, i.onerror = () => {\n n("");\n }, i.readAsText(o);\n } else n("");\n } catch (o) {\n r(o);\n }\n}), He = async (e, t = S.html) => {\n const n = await ve(e, t);\n if (!n) return null;\n let r = null;\n try {\n r = new DOMParser().parseFromString(n, S.html);\n } catch {\n console.warn("Can\'t parse html from clipboard.");\n }\n return r;\n}, $t = async (e) => {\n e && await e.writeText("");\n}, ie = "clipboard-uuid", Q = "web text/uuid", Xe = (e) => `<div style="display:none" ${ie}="${e}"/>`, zt = (e, t) => {\n let n = null;\n try {\n const r = new DOMParser().parseFromString(t, S.html);\n r.body.firstElementChild.setAttribute(ie, e), n = r.getElementsByTagName("body")[0].innerHTML;\n } catch (r) {\n console.warn("Can\'t embed uuid.", r);\n }\n return n;\n}, Ze = (e, t) => {\n if (!t || !e) return !1;\n try {\n const n = t.querySelectorAll(`[${ie}="${e}"]`);\n if (n && n.length === 1) return !0;\n if (t.querySelector("parsererror")) throw new Error("We are unable to parse node");\n return !1;\n } catch {\n return !1;\n }\n};\nclass Qe {\n constructor(t) {\n if (t?.nativeClipboard === void 0 || t?.nativeClipboard === !0) try {\n this._nativeClipboard = globalThis?.navigator.clipboard;\n } catch {\n t?.nativeClipboard === !0 && console.warn("NativeClipboard option set to true but no native clipboard available.");\n }\n else this._nativeClipboard = t?.nativeClipboard === !1 ? null : t?.nativeClipboard;\n this._disableCheckOnFocus = t?.disableCheckOnFocus ?? !1, this._init();\n }\n async _checkForChanges() {\n this._nativeClipboard && this._state && !this._disableCheckOnFocus && await be("clipboard-read", async () => {\n await ge();\n const t = await ve(this._nativeClipboard, Q);\n if (!this._state || t && t === this._state.uuid) return !0;\n const n = await He(this._nativeClipboard, S.html);\n return !this._state || (Ze(this._state.uuid, n) || this.clear(), !0);\n }, async (t) => {\n t?.message === "denied" || t.message?.includes("Document is not focused") || oe() === k.Safari || console.warn("Unable to detect clipboard changes: ", t);\n });\n }\n _init() {\n const t = this;\n this._listeners = /* @__PURE__ */ new Map(), this._listenersCapture = /* @__PURE__ */ new Map(), this._state = null, this._nativeClipboard && (this._onFocus = () => {\n t._checkForChanges();\n }, this._onBlur = () => {\n globalThis.addEventListener?.("focus", t._onFocus, { once: !0 });\n }, globalThis.addEventListener?.("blur", this._onBlur), this._nativeClipboard.addEventListener("clipboardchange", (n) => {\n t._checkForChanges();\n }));\n }\n async read() {\n if (!this._nativeClipboard) return this._state?.items ?? null;\n const t = this;\n return await be("clipboard-read", async () => {\n if (await ge(), this._state?.uuid) {\n const n = await ve(this._nativeClipboard, Q);\n if (n && n === t._state.uuid) return !0;\n const r = await He(this._nativeClipboard, S.html);\n if (Ze(t._state?.uuid, r)) return !0;\n }\n return t._state = { items: await mt(this._nativeClipboard), uuid: null, ref: null }, this.dispatchEvent(new Event("clipboardread")), !0;\n }, async (n) => {\n this.dispatchEvent(new Event("clipboarderrorread"));\n }), this._state?.items ?? [];\n }\n async write(t) {\n return this._write({ uuid: de(), items: t, ref: null });\n }\n async _write(t) {\n if (!this._nativeClipboard) return this._state = t, this.dispatchEvent(new Event("clipboardwrite")), this.dispatchEvent(new Event("clipboardchange")), null;\n const n = this, r = [], o = t.uuid;\n let i = t.items ?? [];\n const a = () => {\n n._state = { uuid: o, ref: t.ref, items: r }, n.dispatchEvent(new Event("clipboardwrite")), n.dispatchEvent(new Event("clipboardchange"));\n };\n await be("clipboard-write", async () => {\n await ge(), o && i.length === 0 && (i.push(new ClipboardItem({ [Q]: new Blob([o], { type: Q }) })), i.push(new ClipboardItem({ [S.html]: new Blob([Xe(o)], { type: S.html }) })));\n for (let l = 0; l < Math.min(1, i.length); l++) {\n const u = i[l];\n let f = u.types.indexOf(S.html), h = null;\n if (f !== -1) {\n const y = await u.getType(S.html);\n h = await Ce(y), h && (h = zt(o, h));\n }\n if (!h && u.types.includes(S.plain)) {\n const y = await u.getType(S.plain);\n if (y) {\n let T = null;\n typeof y == "string" ? (console.warn("text as string", y), T = y) : T = await Ce(y), T && (h = `<div ${ie}="${o}">${T}</div>`);\n }\n }\n if (!h && u.types.includes(S.png)) {\n const y = await u.getType(S.png), T = ut(await y.arrayBuffer());\n h = `<div ${ie}="${o}"><img src="${dt + T}"/></div>`;\n }\n !h && o && (h = Xe(o));\n const g = new Blob([h ?? ""], { type: S.html }), p = {};\n for (let y = 0; y < u.types.length; y++) {\n const T = u.types[y];\n p[T] = y === f ? g : u.getType(T);\n }\n h && f === -1 && (p[S.html] = g), o && (p[Q] = new Blob([o], { type: Q })), r.push(new ClipboardItem(p));\n }\n try {\n r && r.length !== 0 ? await this._nativeClipboard.write(r) : await $t(this._nativeClipboard);\n } catch (l) {\n l.message?.includes("Document is not focused") || console.warn("Unable to write to native clipboard: ", l);\n }\n return a(), !0;\n }, async (l) => {\n this.dispatchEvent(new Event("clipboarderrorwrite")), a();\n });\n }\n async writeReference(t) {\n if (!t) return void this.clear();\n let n = null;\n const r = {};\n try {\n const i = await t.toText?.() ?? null;\n i && (r[S.plain] = new Blob([i ?? ""], { type: S.plain }));\n } catch (i) {\n n = i;\n }\n try {\n const i = await t.toHtml?.() ?? null;\n i && (r[S.html] = new Blob([i], { type: S.html }));\n } catch (i) {\n n = i, console.warn("export to html", i);\n }\n try {\n const i = await t.toImage?.() ?? null;\n i && (r[S.png] = i);\n } catch (i) {\n n = i, console.warn("export to png", i);\n }\n const o = this._write({ uuid: de(), ref: t, items: Object.keys(r).length > 0 ? [new ClipboardItem(r)] : null });\n if (n) throw n;\n return o;\n }\n clear(t = !1) {\n this._state && (this._state = null, t && this._write({ uuid: null, ref: null, items: null }), this.dispatchEvent(new Event("clipboardwrite")), this.dispatchEvent(new Event("clipboardchange")));\n }\n async readReference() {\n return await this.read(), this._state?.ref ?? null;\n }\n readText() {\n return new Promise(async (t, n) => {\n const r = await this.read();\n let o = null;\n for (let a = 0; !o && r && a < r.length; a++) r[a].types.includes(S.plain) && (o = await r[a].getType(S.plain));\n if (!o) return void t("");\n const i = new FileReader();\n i.onload = () => {\n t(i.result);\n }, i.readAsText(o), i.onerror = (a) => {\n n(a);\n };\n });\n }\n async writeText(t) {\n const n = [new ClipboardItem({ [S.plain]: new Blob([t], { type: S.plain }) })];\n return this._write({ uuid: de(), items: n, ref: null });\n }\n addEventListener(t, n, r = {}) {\n const o = r?.capture ? this._listenersCapture : this._listeners;\n let i = o.get(t);\n i || (i = /* @__PURE__ */ new Map(), o.set(t, i)), i.set(n, typeof r == "boolean" ? {} : r);\n }\n dispatchEvent(t) {\n if (!t) return;\n const n = (r) => {\n const o = r.get(t.type);\n o && o.forEach((i, a) => {\n try {\n typeof a == "function" ? a(t) : a.handleEvent && a.handleEvent(t), i.once && o.delete(a);\n } catch (l) {\n console.warn(l);\n }\n });\n };\n return n(this._listenersCapture), n(this._listeners), !0;\n }\n removeEventListener(t, n, r) {\n const o = r?.capture ? this._listenersCapture : this._listeners, i = o.get(t);\n i && (i.delete(n), i.size === 0 && o.delete(t));\n }\n close() {\n globalThis.removeEventListener?.("focus", this._onFocus), globalThis.removeEventListener?.("blur", this._onBlur);\n }\n}\nvar Ee;\n(Ee = Qe || (Qe = {})).ErrorMessages = pt, Ee.Global = new Ee();\nconst Kt = "__SHEETXL";\nlet ee = null, le = null;\nasync function Vt() {\n if (ee)\n return ee;\n if (le) {\n if (await le, !ee)\n throw new Error("ESBuild initialization promise resolved, but instance is not available.");\n return ee;\n }\n let e, t;\n le = new Promise((n, r) => {\n e = n, t = r;\n });\n try {\n const { initialize: n } = await Promise.resolve().then(function() {\n return nn;\n });\n return ee = await n(), e(), ee;\n } catch (n) {\n throw console.error("Failed to import or initialize esbuild:", n), le = null, t(n), n;\n }\n}\nconst qt = {\n // ESBuild.TsconfigRaw =\n compilerOptions: {\n target: "esnext"\n }\n};\nasync function Gt(e, t, n = "/script.js", r = Kt) {\n try {\n const o = await Vt(), i = "@sheetxl/primitives", a = `\n export const FormulaContext = globalThis.${r}?.FormulaContext;\n export const ScalarType = globalThis.${r}?.ScalarType;\n export const Observable = globalThis.${r}?.Observable;\n export const IRange = globalThis.${r}?.IRange;\n export const FormulaError = globalThis.${r}?.FormulaError;\n // Add more exports as needed\n `, l = {\n // ESBuild.Plugin = {\n name: "sheetxl-esbuild-in-memory",\n setup(f) {\n const h = "sheetxl-" + (/* @__PURE__ */ new Date()).getTime();\n f.onResolve({ filter: new RegExp(`^(${n.replace("/", "\\\\/")}|${i})$`) }, (g) => ({\n path: g.path,\n namespace: h\n })), f.onResolve({ filter: /.*/ }, (g) => {\n if (g.namespace !== h)\n return console.warn(`esbuild: Treating import "${g.path}" as external.`), { path: g.path, external: !0 };\n }), f.onLoad({ filter: /.*/, namespace: h }, (g) => {\n let p;\n if (g.path === n)\n p = t;\n else if (g.path === i)\n p = a;\n else\n return {\n errors: [{ text: `Cannot load unknown path in ${h}: ${g.path}` }]\n };\n return {\n contents: p,\n loader: "ts"\n // leave this as \'ts\' so esbuild generates proper sourcemaps\n };\n });\n }\n }, u = await o.build({\n entryPoints: [n],\n // Use the virtual entry point\n bundle: !0,\n // IMPORTANT: Enable bundling\n write: !1,\n // IMPORTANT: Return result in memory\n format: "esm",\n // Output format\n plugins: [l],\n // TODO - later change to external and prepend when executing from ui\n sourcemap: "inline",\n // Generate separate source map string\n tsconfigRaw: qt,\n // Pass the mapped options\n minify: !0,\n // sourcemap: \'external\', // Generate separate source map string\n // Or use \'inline\' if you prefer data URLs embedded in the code\n // To suppress warnings about dynamic import() if esbuild complains:\n // supported: { \'dynamic-import\': true },\n platform: "neutral"\n // not really needed\n });\n if (u.outputFiles && u.outputFiles.length > 0)\n return u.outputFiles[0].text;\n throw u.errors && u.errors.length > 0 ? new Error(`esbuild bundling failed: ${u.errors.map((f) => f.text).join(`\n`)}`) : new Error("esbuild did not produce an output file.");\n } catch (o) {\n throw console.error("esbuild bundling process failed:", o), o;\n }\n}\nconst Wt = `\n/**\n * Represents the completion of an asynchronous operation\n */\ninterface Promise<T> {\n /**\n * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The\n * resolved value cannot be modified from the callback.\n * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).\n * @returns A Promise for the completion of the callback.\n */\n finally(onfinally?: (() => void) | undefined | null): Promise<T>;\n}\n`, Yt = `\n interface FirstTest {\n isTrue?: boolean;\n }\n`, Jt = async () => Yt, ht = /* @__PURE__ */ new Map([\n ["IReferenceRange", "r"],\n ["IRange", "l"]\n]), wt = /* @__PURE__ */ new Map([\n ["IWorkbook", "workbook"],\n ["ISheet", "sheet"],\n ["ICellRanges", "ranges"],\n ["ICellRange", "range"],\n ["IFormulaContext", "context"]\n]), _e = (e, t) => {\n Array.from(t.keys()).forEach((r) => {\n const o = t.get(r);\n t.set(`${e}.${r}`, o);\n });\n}, Ht = /* @__PURE__ */ new Map([\n ["Scalar", "*"],\n ["FormulaError.Known", W.Error],\n ["Date", "Date"],\n ["JSON", "JSON"]\n]), Xt = /* @__PURE__ */ new Map([\n // Repeating\n]), Oe = "SheetXL";\n_e(Oe, ht);\n_e(Oe, wt);\n_e(Oe, Xt);\nconst Zt = /* @__PURE__ */ new Map([\n ["Promise", () => ({ async: !0 })],\n // [\'PromiseLike\', (): Partial<IFunction.ReturnTypeJSON> => {\n // return { async: true };\n // }],\n ["Observable", () => ({ stream: !0 })]\n]);\nlet se = null;\nasync function Qt() {\n if (se)\n return se;\n try {\n return await (await Promise.resolve().then(function() {\n return on;\n })).initialize();\n } catch (e) {\n throw se = null, e;\n } finally {\n se = null;\n }\n}\nasync function en(e) {\n const t = e?.source ?? null;\n if (!t) return null;\n const n = (e.disableBundle || e.declarationsOnly) ?? !1, r = [\n Jt(),\n //import(\'typescript\'), // when bundled, but node check causes issues. We could bundle replace isNode but felt hacky\n Qt()\n ], o = await Promise.all(r), i = o[0], a = o[1];\n let l = "", u = null;\n const f = [], h = {\n allowJs: !0,\n declaration: !1,\n sourceMap: !1,\n // was true but now bundler will do this\n inlineSourceMap: !1,\n inlineSources: !1,\n isolatedModules: !0,\n preserveConstEnums: !1,\n // types: [\'WebWorker\'],\n module: 99,\n //"esNext",\n noResolve: !0,\n emitDeclarationOnly: !1,\n target: a.ScriptTarget.ES2020\n // lib: [\'webworker\', \'es2020\', \'esnext.asynciterable\'], // Use the webworker lib instead of dom\n }, g = "script", p = `${g}.ts`, y = "lib.d.ts", T = "global.d.ts", A = {\n [p]: t,\n [y]: Wt,\n [T]: i\n }, D = {\n getSourceFile: (s, w, L, P) => a.createSourceFile(s, A[s], a.ScriptTarget.Latest, !0),\n fileExists: (s) => A[s] !== void 0,\n readFile: (s) => A[s],\n writeFile: (s, w) => {\n A[s] = w;\n },\n // not used\n getCurrentDirectory: () => "./",\n getCanonicalFileName: (s) => s,\n useCaseSensitiveFileNames: () => !0,\n getDefaultLibFileName: (s) => y,\n getNewLine: () => `\n`\n }, U = a.createProgram([p, T], h, D), I = U.getTypeChecker(), J = U.getSourceFile(p), E = U.emit();\n E.diagnostics.length > 0 && console.warn(E.diagnostics), l = A[`${g}.js`];\n const c = (s, w, L, P) => {\n if (!s) {\n $(s, new Error(`Type is not defined for \'${w?.name ?? "return"}\'.`));\n return;\n }\n if (s.kind === a.SyntaxKind.NumberKeyword)\n w.scalar = W.Number;\n else if (s.kind === a.SyntaxKind.StringKeyword)\n w.scalar = W.String;\n else if (s.kind === a.SyntaxKind.BooleanKeyword)\n w.scalar = W.Boolean;\n else if (s.kind === a.SyntaxKind.UndefinedKeyword || s.kind === a.SyntaxKind.NullKeyword || s.kind === a.SyntaxKind.VoidKeyword) {\n if (P) {\n $(s, new Error(`\'undefined\' is not a valid type for input: \'${s?.parent?.name?.escapedText}\'.`));\n return;\n }\n w.scalar = W.Null;\n } else if (s.kind === a.SyntaxKind.BigIntKeyword)\n w.scalar = W.Number;\n else if (s.kind === a.SyntaxKind.AnyKeyword)\n w.scalar = W.Null;\n else if (s.kind === a.SyntaxKind.ArrayType) {\n const M = s.elementType;\n if (!M) {\n $(s, new Error(`\'Array\' must be typed: \'${s?.parent?.name?.escapedText}\'.`));\n return;\n }\n w.arrayDepth = (w.arrayDepth ?? 0) + 1, c(M, w, L, P);\n } else if (s.kind !== a.SyntaxKind.TupleType) {\n if (s.kind === a.SyntaxKind.TypeReference) {\n const M = s.typeName?.getText?.() ?? null, K = ht.get(M);\n let V = !1;\n K && (w.range = K, V = !0);\n const q = Ht.get(M);\n if (q && (w.scalar = q), q !== void 0 && (V = !0), P) {\n const R = wt.get(M);\n if (R)\n return R;\n } else {\n const R = Zt.get(M);\n if (R) {\n const b = { ...w, ...R() };\n let N = 0;\n if (b.async && N++, b.stream && N++, N > 1) {\n $(s, new Error(`\'${M}\' cannot have multiple modifiers: \'${s?.parent?.name?.escapedText}\'.`));\n return;\n }\n w = b, V = !0;\n }\n }\n if (!V) {\n $("node", new Error(`\'${M}\' is not a valid type: \'${s?.parent?.name?.escapedText}\'.`));\n return;\n }\n const H = s.typeArguments;\n if (H) {\n if (H.length !== 1) {\n $(s, new Error(`\'${M}\' must be typed with exactly 1 type: \'${s?.parent?.name?.escapedText}\'.`));\n return;\n }\n c(H[0], w, L, P);\n }\n }\n }\n }, m = (s) => (a.getCombinedModifierFlags(s) & a.ModifierFlags.Export) !== 0, fe = (s) => (a.getCombinedModifierFlags(s) & a.ModifierFlags.Default) !== 0, B = [], $ = (s, w) => {\n B.push(w);\n };\n if (a.forEachChild(J, (s) => {\n if (m(s) && a.isFunctionDeclaration(s)) {\n const w = {}, L = {\n parameters: {}\n }, P = s?.name?.getText();\n try {\n w.name = P;\n const K = I.getSymbolAtLocation(s.name).getDocumentationComment(I);\n if (K && K.length > 0 && K[0].text) {\n let R = K[0].text;\n R = R.replace(/[\\r\\n]+/g, "\\\\n").trim(), L.summary = R;\n }\n const V = {};\n c(s.type, V, w, !1), w.returnType = V;\n const q = {};\n fe(s) && (q.default = !0, u = P), Object.keys(q).length > 0 && (w.behavior = q), w.parameters = [];\n const H = /* @__PURE__ */ new Map();\n for (let R = 0; R < s.parameters.length; R++) {\n const b = s.parameters[R], N = {};\n N.name = b.name?.getText();\n const X = c(b.type, N, w, !0);\n if (X) {\n if (w.parameters.length !== 0) {\n const F = s?.parent?.name?.getText();\n $(s, new Error(`\'${w.name}\' contexts must be the first parameter: \'${F}\'.`));\n return;\n }\n w.context = X;\n continue;\n }\n const z = !((b.initializer === void 0 || b.initializer === null) && (b.questionToken === void 0 || b.questionToken === null));\n let C;\n if (z && (N.optional = !0, b.initializer))\n try {\n b.initializer.kind === a.SyntaxKind.StringLiteral ? C = b.initializer.text : b.initializer.kind === a.SyntaxKind.NumericLiteral ? C = parseFloat(b.initializer.text) : b.initializer.kind === a.SyntaxKind.TrueKeyword || b.initializer.kind === a.SyntaxKind.FalseKeyword ? C = b.initializer.kind === a.SyntaxKind.TrueKeyword : b.initializer.kind === a.SyntaxKind.NullKeyword ? C = null : b.initializer.kind === a.SyntaxKind.ObjectLiteralExpression || b.initializer.kind === a.SyntaxKind.ArrayLiteralExpression ? C = b.initializer.getText() : C = b.initializer.getText?.();\n } catch (O) {\n console.warn(`Couldn\'t extract default value for parameter \'${N.name}\'`, O);\n }\n b.dotDotDotToken && (N.rest = !0), w.parameters.push(N);\n const x = { description: "" };\n L.parameters[N.name] = x;\n const G = I.getSymbolAtLocation(b.name).getDocumentationComment(I);\n G && G.length > 0 && G[0].text && (x.description = G[0].text), C !== void 0 && (x.defaultValue = C), H.set(N.name, N);\n }\n if (s.jsDoc && s.jsDoc.length > 0) {\n const R = s.jsDoc;\n for (let b = 0; b < R.length; b++) {\n const N = R[b]?.tags;\n if (N)\n for (let X = 0; X < N.length; X++) {\n const z = N[X];\n let C = z?.tagName?.text;\n if (!C) continue;\n C = C.toLowerCase();\n let x = z.comment;\n const G = C === "hidden";\n if (!(typeof x != "string" && !G) && (typeof x == "string" && (x = x.replace(/[\\r\\n]+/g, "\\\\n").trim()), !(!G && x && (x = x.split(/\\\\n/)[0], !x || x.length === 0)))) {\n if (x && typeof x == "string") {\n const O = /\\{@link(code|plain)?\\s+([^}|]+)(?:\\s*\\|\\s*([^}]+))?\\}/g;\n let F, Z = x, te = [];\n for (; (F = O.exec(x)) !== null; ) {\n const [pe, me, gt, Ne] = F, bt = [gt.trim()];\n Ne && bt.push(Ne.trim());\n }\n x = Z, te.length > 0 && C === "see" && (L.links || (L.links = []), L.links.push(...te));\n }\n if (C === "name") {\n const O = x;\n O !== P && (L.name = O);\n } else if (C === "description") {\n const O = x;\n } else if (C === "summary") {\n const O = x;\n O && (L.summary = O);\n } else if (C === "param") {\n const O = z.name?.text, F = H.get(O);\n if (!F) {\n B.push(new Error(`Parameter \'${O}\' not found in function \'${P}\'.`));\n continue;\n }\n if (z.typeExpression && z.typeExpression.type)\n try {\n const Z = z.typeExpression.type;\n if (Z.kind === a.SyntaxKind.UnionType) {\n const te = [];\n F.enums = te, Z.types.forEach((pe) => {\n if (pe.kind === a.SyntaxKind.LiteralType) {\n const me = pe.literal.text;\n me && te.push(me);\n }\n });\n }\n } catch (Z) {\n console.warn("Error parsing JSDoc type expression:", Z);\n }\n } else if (C === "returns" || C === "return")\n w.returnType.description = x;\n else if (C === "category")\n L.category = x;\n else if (C === "hidden") {\n let O = !0;\n const F = x?.toLowerCase();\n F === "false" ? O = !1 : F !== "true" && (O = x), O !== !1 && (L.hidden = O ?? !0);\n }\n }\n }\n }\n }\n Object.keys(w.returnType).length === 0 && delete w.returnType, f.push([w, L]);\n } catch (M) {\n $(s, new Error(`\'${P}\': ${M.message}`));\n }\n }\n }), B.length > 0)\n throw console.warn(B), new Error("There were compilation errors.", { cause: B });\n if (f.length === 0)\n throw new Error("No exported functions.");\n const yt = `${Ut.uuidV4()}-script`;\n try {\n !n && B.length === 0 && (l = await Gt(a, l, g));\n } catch {\n console.warn("Error bundling script");\n }\n const Ie = {\n functions: f,\n commitId: yt,\n source: t,\n name: "Script",\n language: "typescript",\n // default\n compiled: l\n };\n return u && (Ie.autoRun = u), Ie;\n}\nself.addEventListener("message", async (e) => {\n const { id: t, params: n } = e.data;\n try {\n const r = await en(n);\n self.postMessage({ id: t, result: r, error: null });\n } catch (r) {\n self.postMessage({\n id: t,\n result: null,\n error: {\n message: r.message,\n stack: r.stack,\n cause: r.cause\n }\n });\n }\n});\nlet ce = null;\nasync function tn() {\n return ce || (ce = new Promise(async (e, t) => {\n try {\n const n = "0.20.2", r = `https://esm.sh/esbuild-wasm@${n}`, o = `https://esm.sh/esbuild-wasm@${n}/esbuild.wasm`, a = (await import(\n /* webpackIgnore: true */\n /* @vite-ignore */\n r\n )).default;\n await a.initialize({\n wasmURL: o,\n // Provide the specific WASM URL\n worker: !1\n // Keep processing on the current thread\n }), e(a);\n } catch (n) {\n console.error("Error initializing esbuild:", n), t(n);\n }\n }), ce);\n}\nvar nn = /* @__PURE__ */ Object.freeze({\n __proto__: null,\n initialize: tn\n});\nlet ue = null;\nasync function rn() {\n return ue || (ue = new Promise(async (e, t) => {\n let n = null;\n try {\n n = await import("https://esm.sh/typescript@5.7.2");\n } catch (r) {\n console.error("Error initializing Browser TypeScript module:", r);\n }\n n || console.log("use script fallback"), e(n);\n }), ue);\n}\nvar on = /* @__PURE__ */ Object.freeze({\n __proto__: null,\n initialize: rn\n});\n',r=typeof self<"u"&&self.Blob&&new Blob(["URL.revokeObjectURL(import.meta.url);",t],{type:"text/javascript;charset=utf-8"});function o(n){let e;try{if(e=r&&(self.URL||self.webkitURL).createObjectURL(r),!e)throw"";const t=new Worker(e,{type:"module",name:n?.name});return t.addEventListener("error",()=>{(self.URL||self.webkitURL).revokeObjectURL(e)}),t}catch{return new Worker("data:text/javascript;charset=utf-8,"+encodeURIComponent(t),{type:"module",name:n?.name})}}const i=async()=>{const{compileModule:n}=await Promise.resolve().then(()=>require("./BPlthbyKkqCDjgxO.cjs")),t=new e(e=>n(e));return await t.start(),t};exports.createCompilerWorker=async function(){if(typeof process<"u"&&process.versions?.node&&typeof Worker>"u")return await i();if(typeof Worker<"u"){const e=new n(()=>new o);try{return await e.start(),e}catch(n){console.error("Failed to start TypescriptCompiler worker reverting to fallback:",n)}}return await i()};
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});exports.default={ENCODEURL:{s:"Returns a URL-encoded string",p:{text:{d:"is a string to be URL encoded"}}},WEBSERVICE:{s:"Retrieves data from a web service.",p:{url:{d:"is the URL of the web service"}}}};
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});exports.default={BAHTTEXT:{s:"Converts a number to baht (Thai) text",p:{number:{d:"is the number to convert"}}}};
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});exports.default={DAVERAGE:{s:"Averages the values in a column in a list or database that match conditions you specify",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"},DCOUNT:{s:"Counts the cells containing numbers in the field (column) of records in the database that match the conditions you specify",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"},DCOUNTA:{s:"Counts nonblank cells in the field (column) of records in the database that match the conditions you specify",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"},DGET:{s:"Extracts from a database a single record that matches the conditions you specify",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"},DMAX:{s:"Returns the largest number in the field (column) of records in the database that match the conditions you specify",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"},DMIN:{s:"Returns the smallest number in the field (column) of records in the database that match the conditions you specify",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"},DPRODUCT:{s:"Multiplies the values in the field (column) of records in the database that match the conditions you specify",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"},DSTDEV:{s:"Estimates the standard deviation based on a sample from selected database entries",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"},DSTDEVP:{s:"Calculates the standard deviation based on the entire population of selected database entries",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"},DSUM:{s:"Adds the numbers in the field (column) of records in the database that match the conditions you specify",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"},DVAR:{s:"Estimates variance based on a sample from selected database entries",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"},DVARP:{s:"Calculates variance based on the entire population of selected database entries",p:{database:{d:"is the range of cells that makes up the list or database. A database is a list of related data"},field:{d:"is either the label of the column in double quotation marks or a number that represents the column's position in the list"},criteria:{d:"is the range of cells that contains the conditions you specify. The range includes a column label and one cell below the label for a condition"}},h:"Unimplemented"}};
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./B9jxuOg1CXcmbi9J.cjs"),e=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",s=new RegExp(`^[${e}][-${e}.0-9·̀-ͯ‿-⁀]*$`,"u");function i(t){return t>=65&&t<=90||t>=97&&t<=122||58===t||95===t||8204===t||8205===t||t>=192&&t<=214||t>=216&&t<=246||t>=248&&t<=767||t>=880&&t<=893||t>=895&&t<=8191||t>=8304&&t<=8591||t>=11264&&t<=12271||t>=12289&&t<=55295||t>=63744&&t<=64975||t>=65008&&t<=65533||t>=65536&&t<=983039}const o="A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",r=new RegExp(`^[${o}][-${o}.0-9·̀-ͯ‿-⁀]*$`,"u");function n(t){return t>=65&&t<=90||95===t||t>=97&&t<=122||t>=192&&t<=214||t>=216&&t<=246||t>=248&&t<=767||t>=880&&t<=893||t>=895&&t<=8191||t>=8204&&t<=8205||t>=8304&&t<=8591||t>=11264&&t<=12271||t>=12289&&t<=55295||t>=63744&&t<=64975||t>=65008&&t<=65533||t>=65536&&t<=983039}const a=function(t){return 32===t||10===t||13===t||9===t},l=function(t){return t>=32&&t<=55295||10===t||13===t||9===t||t>=57344&&t<=65533||t>=65536&&t<=1114111},c=i,h=function(t){return i(t)||t>=48&&t<=57||45===t||46===t||183===t||t>=768&&t<=879||t>=8255&&t<=8256},u=[32,10,13,9],d=s,p=function(t){return t>=1&&t<=55295||t>=57344&&t<=65533||t>=65536&&t<=1114111},g=n,f=function(t){return n(t)||45===t||46===t||t>=48&&t<=57||183===t||t>=768&&t<=879||t>=8255&&t<=8256},m=r,T="http://www.w3.org/XML/1998/namespace",y="http://www.w3.org/2000/xmlns/",b={__proto__:null,xml:T,xmlns:y},x={__proto__:null,amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},w=-1,v=-2,S=13,C=33,k=10,A=60,D=61,E=62,P=63,O=93,I=t=>34===t||39===t,V=[34,39],L=[...V,91,E],N=[...V,A,O],R=[D,P,...u],$=[...u,E,38,A];function M(t,e,s){switch(e){case"xml":s!==T&&t.fail(`xml prefix must be bound to ${T}.`);break;case"xmlns":s!==y&&t.fail(`xmlns prefix must be bound to ${y}.`)}switch(s){case y:t.fail(""===e?`the default namespace may not be set to ${s}.`:`may not assign a prefix (even "xmlns") to the URI ${y}.`);break;case T:switch(e){case"xml":break;case"":t.fail(`the default namespace may not be set to ${s}.`);break;default:t.fail("may not assign the xml namespace to another prefix.")}}}const j=t=>m.test(t),H=t=>d.test(t),F={xmldecl:"xmldeclHandler",text:"textHandler",processinginstruction:"piHandler",doctype:"doctypeHandler",comment:"commentHandler",opentagstart:"openTagStartHandler",attribute:"attributeHandler",opentag:"openTagHandler",closetag:"closeTagHandler",cdata:"cdataHandler",error:"errorHandler",end:"endHandler",ready:"readyHandler"};class X{constructor(t){this.i=0,this.prevI=0,this.opt=t??{},this.fragmentOpt=!!this.opt.fragment;const e=this.xmlnsOpt=!!this.opt.xmlns;if(this.trackPosition=!1!==this.opt.position,this.fileName=this.opt.fileName,e){this.nameStartCheck=g,this.nameCheck=f,this.isName=j,this.processAttribs=this.processAttribsNS,this.pushAttrib=this.pushAttribNS,this.ns={__proto__:null,...b};const t=this.opt.additionalNamespaces;null!=t&&(function(t,e){for(const s of Object.keys(e))M(t,s,e[s])}(this,t),Object.assign(this.ns,t))}else this.nameStartCheck=c,this.nameCheck=h,this.isName=H,this.processAttribs=this.processAttribsPlain,this.pushAttrib=this.pushAttribPlain;this.stateTable=[this.sBegin,this.sBeginWhitespace,this.sDoctype,this.sDoctypeQuote,this.sDTD,this.sDTDQuoted,this.sDTDOpenWaka,this.sDTDOpenWakaBang,this.sDTDComment,this.sDTDCommentEnding,this.sDTDCommentEnded,this.sDTDPI,this.sDTDPIEnding,this.sText,this.sEntity,this.sOpenWaka,this.sOpenWakaBang,this.sComment,this.sCommentEnding,this.sCommentEnded,this.sCData,this.sCDataEnding,this.sCDataEnding2,this.sPIFirstChar,this.sPIRest,this.sPIBody,this.sPIEnding,this.sXMLDeclNameStart,this.sXMLDeclName,this.sXMLDeclEq,this.sXMLDeclValueStart,this.sXMLDeclValue,this.sXMLDeclSeparator,this.sXMLDeclEnding,this.sOpenTag,this.sOpenTagSlash,this.sAttrib,this.sAttribName,this.sAttribNameSawWhite,this.sAttribValue,this.sAttribValueQuoted,this.sAttribValueClosed,this.sAttribValueUnquoted,this.sCloseTag,this.sCloseTagSawWhite],this._init()}get closed(){return this._closed}_init(){this.openWakaBang="",this.text="",this.name="",this.piTarget="",this.entity="",this.q=null,this.tags=[],this.tag=null,this.topNS=null,this.chunk="",this.chunkPosition=0,this.i=0,this.prevI=0,this.carriedFromPrevious=void 0,this.forbiddenState=0,this.attribList=[];const{fragmentOpt:t}=this;this.state=t?S:0,this.reportedTextBeforeRoot=this.reportedTextAfterRoot=this.closedRoot=this.sawRoot=t,this.xmlDeclPossible=!t,this.xmlDeclExpects=["version"],this.entityReturnState=void 0;let{defaultXMLVersion:e}=this.opt;if(void 0===e){if(!0===this.opt.forceXMLVersion)throw new Error("forceXMLVersion set but defaultXMLVersion is not set");e="1.0"}this.setXMLVersion(e),this.positionAtNewLine=0,this.doctype=!1,this._closed=!1,this.xmlDecl={version:void 0,encoding:void 0,standalone:void 0},this.line=1,this.column=0,this.ENTITIES=Object.create(x),this.readyHandler?.()}get position(){return this.chunkPosition+this.i}get columnIndex(){return this.position-this.positionAtNewLine}on(t,e){this[F[t]]=e}off(t){this[F[t]]=void 0}makeError(t){let e=this.fileName??"";return this.trackPosition&&(e.length>0&&(e+=":"),e+=`${this.line}:${this.column}`),e.length>0&&(e+=": "),new Error(e+t)}fail(t){const e=this.makeError(t),s=this.errorHandler;if(void 0===s)throw e;return s(e),this}write(t){if(this.closed)return this.fail("cannot write after close; assign an onready handler.");let e=!1;null===t?(e=!0,t=""):"object"==typeof t&&(t=t.toString()),void 0!==this.carriedFromPrevious&&(t=`${this.carriedFromPrevious}${t}`,this.carriedFromPrevious=void 0);let s=t.length;const i=t.charCodeAt(s-1);!e&&(13===i||i>=55296&&i<=56319)&&(this.carriedFromPrevious=t[s-1],s--,t=t.slice(0,s));const{stateTable:o}=this;for(this.chunk=t,this.i=0;this.i<s;)o[this.state].call(this);return this.chunkPosition+=s,e?this.end():this}close(){return this.write(null)}getCode10(){const t=this.chunk,e=this.i;if(this.prevI=e,this.i++,e>=t.length)return w;const s=t.charCodeAt(e);if(this.column++,s<55296){if(s>=32||9===s)return s;switch(s){case k:return this.line++,this.column=0,this.positionAtNewLine=this.position,k;case 13:return t.charCodeAt(e+1)===k&&(this.i=e+2),this.line++,this.column=0,this.positionAtNewLine=this.position,v;default:return this.fail("disallowed character."),s}}if(s>56319)return s>=57344&&s<=65533||this.fail("disallowed character."),s;const i=65536+1024*(s-55296)+(t.charCodeAt(e+1)-56320);return this.i=e+2,i>1114111&&this.fail("disallowed character."),i}getCode11(){const{chunk:t,i:e}=this;if(this.prevI=e,this.i=e+1,e>=t.length)return w;const s=t.charCodeAt(e);if(this.column++,s<55296){if(s>31&&s<127||s>159&&8232!==s||9===s)return s;switch(s){case k:return this.line++,this.column=0,this.positionAtNewLine=this.position,k;case 13:{const s=t.charCodeAt(e+1);s!==k&&133!==s||(this.i=e+2)}case 133:case 8232:return this.line++,this.column=0,this.positionAtNewLine=this.position,v;default:return this.fail("disallowed character."),s}}if(s>56319)return s>=57344&&s<=65533||this.fail("disallowed character."),s;const i=65536+1024*(s-55296)+(t.charCodeAt(e+1)-56320);return this.i=e+2,i>1114111&&this.fail("disallowed character."),i}getCodeNorm(){const t=this.getCode();return t===v?k:t}unget(){this.i=this.prevI,this.column--}captureTo(t){let{i:e}=this;const{chunk:s}=this;for(;;){const i=this.getCode(),o=i===v,r=o?k:i;if(r===w||t.includes(r))return this.text+=s.slice(e,this.prevI),r;o&&(this.text+=`${s.slice(e,this.prevI)}\n`,e=this.i)}}captureToChar(t){let{i:e}=this;const{chunk:s}=this;for(;;){let i=this.getCode();switch(i){case v:this.text+=`${s.slice(e,this.prevI)}\n`,e=this.i,i=k;break;case w:return this.text+=s.slice(e),!1}if(i===t)return this.text+=s.slice(e,this.prevI),!0}}captureNameChars(){const{chunk:t,i:e}=this;for(;;){const s=this.getCode();if(s===w)return this.name+=t.slice(e),w;if(!h(s))return this.name+=t.slice(e,this.prevI),s===v?k:s}}skipSpaces(){for(;;){const t=this.getCodeNorm();if(t===w||!a(t))return t}}setXMLVersion(t){this.currentXMLVersion=t,"1.0"===t?(this.isChar=l,this.getCode=this.getCode10):(this.isChar=p,this.getCode=this.getCode11)}sBegin(){65279===this.chunk.charCodeAt(0)&&(this.i++,this.column++),this.state=1}sBeginWhitespace(){const t=this.i,e=this.skipSpaces();switch(this.prevI!==t&&(this.xmlDeclPossible=!1),e){case A:if(this.state=15,0!==this.text.length)throw new Error("no-empty text at start");break;case w:break;default:this.unget(),this.state=S,this.xmlDeclPossible=!1}}sDoctype(){const t=this.captureTo(L);switch(t){case E:this.doctypeHandler?.(this.text),this.text="",this.state=S,this.doctype=!0;break;case w:break;default:this.text+=String.fromCodePoint(t),91===t?this.state=4:I(t)&&(this.state=3,this.q=t)}}sDoctypeQuote(){const t=this.q;this.captureToChar(t)&&(this.text+=String.fromCodePoint(t),this.q=null,this.state=2)}sDTD(){const t=this.captureTo(N);t!==w&&(this.text+=String.fromCodePoint(t),t===O?this.state=2:t===A?this.state=6:I(t)&&(this.state=5,this.q=t))}sDTDQuoted(){const t=this.q;this.captureToChar(t)&&(this.text+=String.fromCodePoint(t),this.state=4,this.q=null)}sDTDOpenWaka(){const t=this.getCodeNorm();switch(this.text+=String.fromCodePoint(t),t){case 33:this.state=7,this.openWakaBang="";break;case P:this.state=11;break;default:this.state=4}}sDTDOpenWakaBang(){const t=String.fromCodePoint(this.getCodeNorm()),e=this.openWakaBang+=t;this.text+=t,"-"!==e&&(this.state="--"===e?8:4,this.openWakaBang="")}sDTDComment(){this.captureToChar(45)&&(this.text+="-",this.state=9)}sDTDCommentEnding(){const t=this.getCodeNorm();this.text+=String.fromCodePoint(t),this.state=45===t?10:8}sDTDCommentEnded(){const t=this.getCodeNorm();this.text+=String.fromCodePoint(t),t===E?this.state=4:(this.fail("malformed comment."),this.state=8)}sDTDPI(){this.captureToChar(P)&&(this.text+="?",this.state=12)}sDTDPIEnding(){const t=this.getCodeNorm();this.text+=String.fromCodePoint(t),t===E&&(this.state=4)}sText(){0!==this.tags.length?this.handleTextInRoot():this.handleTextOutsideRoot()}sEntity(){let{i:t}=this;const{chunk:e}=this;t:for(;;)switch(this.getCode()){case v:this.entity+=`${e.slice(t,this.prevI)}\n`,t=this.i;break;case 59:{const{entityReturnState:s}=this,i=this.entity+e.slice(t,this.prevI);let o;this.state=s,""===i?(this.fail("empty entity name."),o="&;"):(o=this.parseEntity(i),this.entity=""),s===S&&void 0===this.textHandler||(this.text+=o);break t}case w:this.entity+=e.slice(t);break t}}sOpenWaka(){const t=this.getCode();if(c(t))this.state=34,this.unget(),this.xmlDeclPossible=!1;else switch(t){case 47:this.state=43,this.xmlDeclPossible=!1;break;case 33:this.state=16,this.openWakaBang="",this.xmlDeclPossible=!1;break;case P:this.state=23;break;default:this.fail("disallowed character in tag name"),this.state=S,this.xmlDeclPossible=!1}}sOpenWakaBang(){switch(this.openWakaBang+=String.fromCodePoint(this.getCodeNorm()),this.openWakaBang){case"[CDATA[":this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0),this.state=20,this.openWakaBang="";break;case"--":this.state=17,this.openWakaBang="";break;case"DOCTYPE":this.state=2,(this.doctype||this.sawRoot)&&this.fail("inappropriately located doctype declaration."),this.openWakaBang="";break;default:this.openWakaBang.length>=7&&this.fail("incorrect syntax.")}}sComment(){this.captureToChar(45)&&(this.state=18)}sCommentEnding(){const t=this.getCodeNorm();45===t?(this.state=19,this.commentHandler?.(this.text),this.text=""):(this.text+=`-${String.fromCodePoint(t)}`,this.state=17)}sCommentEnded(){const t=this.getCodeNorm();t!==E?(this.fail("malformed comment."),this.text+=`--${String.fromCodePoint(t)}`,this.state=17):this.state=S}sCData(){this.captureToChar(O)&&(this.state=21)}sCDataEnding(){const t=this.getCodeNorm();t===O?this.state=22:(this.text+=`]${String.fromCodePoint(t)}`,this.state=20)}sCDataEnding2(){const t=this.getCodeNorm();switch(t){case E:this.cdataHandler?.(this.text),this.text="",this.state=S;break;case O:this.text+="]";break;default:this.text+=`]]${String.fromCodePoint(t)}`,this.state=20}}sPIFirstChar(){const t=this.getCodeNorm();this.nameStartCheck(t)?(this.piTarget+=String.fromCodePoint(t),this.state=24):t===P||a(t)?(this.fail("processing instruction without a target."),this.state=t===P?26:25):(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(t),this.state=24)}sPIRest(){const{chunk:t,i:e}=this;for(;;){const s=this.getCodeNorm();if(s===w)return void(this.piTarget+=t.slice(e));if(!this.nameCheck(s)){this.piTarget+=t.slice(e,this.prevI);const i=s===P;i||a(s)?"xml"===this.piTarget?(this.xmlDeclPossible||this.fail("an XML declaration must be at the start of the document."),this.state=i?C:27):this.state=i?26:25:(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(s));break}}}sPIBody(){if(0===this.text.length){const t=this.getCodeNorm();t===P?this.state=26:a(t)||(this.text=String.fromCodePoint(t))}else this.captureToChar(P)&&(this.state=26)}sPIEnding(){const t=this.getCodeNorm();if(t===E){const{piTarget:t}=this;"xml"===t.toLowerCase()&&this.fail("the XML declaration must appear at the start of the document."),this.piHandler?.({target:t,body:this.text}),this.piTarget=this.text="",this.state=S}else t===P?this.text+="?":(this.text+=`?${String.fromCodePoint(t)}`,this.state=25);this.xmlDeclPossible=!1}sXMLDeclNameStart(){const t=this.skipSpaces();t!==P?t!==w&&(this.state=28,this.name=String.fromCodePoint(t)):this.state=C}sXMLDeclName(){const t=this.captureTo(R);if(t===P)return this.state=C,this.name+=this.text,this.text="",void this.fail("XML declaration is incomplete.");if(a(t)||t===D){if(this.name+=this.text,this.text="",!this.xmlDeclExpects.includes(this.name))switch(this.name.length){case 0:this.fail("did not expect any more name/value pairs.");break;case 1:this.fail(`expected the name ${this.xmlDeclExpects[0]}.`);break;default:this.fail(`expected one of ${this.xmlDeclExpects.join(", ")}`)}this.state=t===D?30:29}}sXMLDeclEq(){const t=this.getCodeNorm();if(t===P)return this.state=C,void this.fail("XML declaration is incomplete.");a(t)||(t!==D&&this.fail("value required."),this.state=30)}sXMLDeclValueStart(){const t=this.getCodeNorm();if(t===P)return this.state=C,void this.fail("XML declaration is incomplete.");a(t)||(I(t)?this.q=t:(this.fail("value must be quoted."),this.q=32),this.state=31)}sXMLDeclValue(){const t=this.captureTo([this.q,P]);if(t===P)return this.state=C,this.text="",void this.fail("XML declaration is incomplete.");if(t===w)return;const e=this.text;switch(this.text="",this.name){case"version":{this.xmlDeclExpects=["encoding","standalone"];const t=e;this.xmlDecl.version=t,/^1\.[0-9]+$/.test(t)?this.opt.forceXMLVersion||this.setXMLVersion(t):this.fail("version number must match /^1\\.[0-9]+$/.");break}case"encoding":/^[A-Za-z][A-Za-z0-9._-]*$/.test(e)||this.fail("encoding value must match /^[A-Za-z0-9][A-Za-z0-9._-]*$/."),this.xmlDeclExpects=["standalone"],this.xmlDecl.encoding=e;break;case"standalone":"yes"!==e&&"no"!==e&&this.fail('standalone value must match "yes" or "no".'),this.xmlDeclExpects=[],this.xmlDecl.standalone=e}this.name="",this.state=32}sXMLDeclSeparator(){const t=this.getCodeNorm();t!==P?(a(t)||(this.fail("whitespace required."),this.unget()),this.state=27):this.state=C}sXMLDeclEnding(){this.getCodeNorm()===E?("xml"!==this.piTarget?this.fail("processing instructions are not allowed before root."):"version"!==this.name&&this.xmlDeclExpects.includes("version")&&this.fail("XML declaration must contain a version."),this.xmldeclHandler?.(this.xmlDecl),this.name="",this.piTarget=this.text="",this.state=S):this.fail("The character ? is disallowed anywhere in XML declarations."),this.xmlDeclPossible=!1}sOpenTag(){const t=this.captureNameChars();if(t===w)return;const e=this.tag={name:this.name,attributes:Object.create(null)};switch(this.name="",this.xmlnsOpt&&(this.topNS=e.ns=Object.create(null)),this.openTagStartHandler?.(e),this.sawRoot=!0,!this.fragmentOpt&&this.closedRoot&&this.fail("documents may contain only one root."),t){case E:this.openTag();break;case 47:this.state=35;break;default:a(t)||this.fail("disallowed character in tag name."),this.state=36}}sOpenTagSlash(){this.getCode()===E?this.openSelfClosingTag():(this.fail("forward-slash in opening tag not followed by >."),this.state=36)}sAttrib(){const t=this.skipSpaces();t!==w&&(c(t)?(this.unget(),this.state=37):t===E?this.openTag():47===t?this.state=35:this.fail("disallowed character in attribute name."))}sAttribName(){const t=this.captureNameChars();t===D?this.state=39:a(t)?this.state=38:t===E?(this.fail("attribute without value."),this.pushAttrib(this.name,this.name),this.name=this.text="",this.openTag()):t!==w&&this.fail("disallowed character in attribute name.")}sAttribNameSawWhite(){const t=this.skipSpaces();switch(t){case w:return;case D:this.state=39;break;default:this.fail("attribute without value."),this.text="",this.name="",t===E?this.openTag():c(t)?(this.unget(),this.state=37):(this.fail("disallowed character in attribute name."),this.state=36)}}sAttribValue(){const t=this.getCodeNorm();I(t)?(this.q=t,this.state=40):a(t)||(this.fail("unquoted attribute value."),this.state=42,this.unget())}sAttribValueQuoted(){const{q:t,chunk:e}=this;let{i:s}=this;for(;;)switch(this.getCode()){case t:return this.pushAttrib(this.name,this.text+e.slice(s,this.prevI)),this.name=this.text="",this.q=null,void(this.state=41);case 38:return this.text+=e.slice(s,this.prevI),this.state=14,void(this.entityReturnState=40);case k:case v:case 9:this.text+=`${e.slice(s,this.prevI)} `,s=this.i;break;case A:return this.text+=e.slice(s,this.prevI),void this.fail("disallowed character.");case w:return void(this.text+=e.slice(s))}}sAttribValueClosed(){const t=this.getCodeNorm();a(t)?this.state=36:t===E?this.openTag():47===t?this.state=35:c(t)?(this.fail("no whitespace between attributes."),this.unget(),this.state=37):this.fail("disallowed character in attribute name.")}sAttribValueUnquoted(){const t=this.captureTo($);switch(t){case 38:this.state=14,this.entityReturnState=42;break;case A:this.fail("disallowed character.");break;case w:break;default:this.text.includes("]]>")&&this.fail('the string "]]>" is disallowed in char data.'),this.pushAttrib(this.name,this.text),this.name=this.text="",t===E?this.openTag():this.state=36}}sCloseTag(){const t=this.captureNameChars();t===E?this.closeTag():a(t)?this.state=44:t!==w&&this.fail("disallowed character in closing tag.")}sCloseTagSawWhite(){switch(this.skipSpaces()){case E:this.closeTag();break;case w:break;default:this.fail("disallowed character in closing tag.")}}handleTextInRoot(){let{i:t,forbiddenState:e}=this;const{chunk:s,textHandler:i}=this;t:for(;;)switch(this.getCode()){case A:if(this.state=15,void 0!==i){const{text:e}=this,o=s.slice(t,this.prevI);0!==e.length?(i(e+o),this.text=""):0!==o.length&&i(o)}e=0;break t;case 38:this.state=14,this.entityReturnState=S,void 0!==i&&(this.text+=s.slice(t,this.prevI)),e=0;break t;case O:switch(e){case 0:e=1;break;case 1:e=2;break;case 2:break;default:throw new Error("impossible state")}break;case E:2===e&&this.fail('the string "]]>" is disallowed in char data.'),e=0;break;case v:void 0!==i&&(this.text+=`${s.slice(t,this.prevI)}\n`),t=this.i,e=0;break;case w:void 0!==i&&(this.text+=s.slice(t));break t;default:e=0}this.forbiddenState=e}handleTextOutsideRoot(){let{i:t}=this;const{chunk:e,textHandler:s}=this;let i=!1;t:for(;;){const o=this.getCode();switch(o){case A:if(this.state=15,void 0!==s){const{text:i}=this,o=e.slice(t,this.prevI);0!==i.length?(s(i+o),this.text=""):0!==o.length&&s(o)}break t;case 38:this.state=14,this.entityReturnState=S,void 0!==s&&(this.text+=e.slice(t,this.prevI)),i=!0;break t;case v:void 0!==s&&(this.text+=`${e.slice(t,this.prevI)}\n`),t=this.i;break;case w:void 0!==s&&(this.text+=e.slice(t));break t;default:a(o)||(i=!0)}}i&&(this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0))}pushAttribNS(t,e){const{prefix:s,local:i}=this.qname(t),o={name:t,prefix:s,local:i,value:e};if(this.attribList.push(o),this.attributeHandler?.(o),"xmlns"===s){const t=e.trim();"1.0"===this.currentXMLVersion&&""===t&&this.fail("invalid attempt to undefine prefix in XML 1.0"),this.topNS[i]=t,M(this,i,t)}else if("xmlns"===t){const t=e.trim();this.topNS[""]=t,M(this,"",t)}}pushAttribPlain(t,e){const s={name:t,value:e};this.attribList.push(s),this.attributeHandler?.(s)}end(){this.sawRoot||this.fail("document must contain a root element.");const{tags:t}=this;for(;t.length>0;){const e=t.pop();this.fail(`unclosed tag: ${e.name}`)}0!==this.state&&this.state!==S&&this.fail("unexpected end.");const{text:e}=this;return 0!==e.length&&(this.textHandler?.(e),this.text=""),this._closed=!0,this.endHandler?.(),this._init(),this}resolve(t){let e=this.topNS[t];if(void 0!==e)return e;const{tags:s}=this;for(let i=s.length-1;i>=0;i--)if(e=s[i].ns[t],void 0!==e)return e;return e=this.ns[t],void 0!==e?e:this.opt.resolvePrefix?.(t)}qname(t){const e=t.indexOf(":");if(-1===e)return{prefix:"",local:t};const s=t.slice(e+1),i=t.slice(0,e);return(""===i||""===s||s.includes(":"))&&this.fail(`malformed name: ${t}.`),{prefix:i,local:s}}processAttribsNS(){const{attribList:t}=this,e=this.tag;{const{prefix:t,local:s}=this.qname(e.name);e.prefix=t,e.local=s;const i=e.uri=this.resolve(t)??"";""!==t&&("xmlns"===t&&this.fail('tags may not have "xmlns" as prefix.'),""===i&&(this.fail(`unbound namespace prefix: ${JSON.stringify(t)}.`),e.uri=t))}if(0===t.length)return;const{attributes:s}=e,i=new Set;for(const e of t){const{name:t,prefix:o,local:r}=e;let n,a;""===o?(n="xmlns"===t?y:"",a=t):(n=this.resolve(o),void 0===n&&(this.fail(`unbound namespace prefix: ${JSON.stringify(o)}.`),n=o),a=`{${n}}${r}`),i.has(a)&&this.fail(`duplicate attribute: ${a}.`),i.add(a),e.uri=n,s[t]=e}this.attribList=[]}processAttribsPlain(){const{attribList:t}=this,e=this.tag.attributes;for(const{name:s,value:i}of t)void 0!==e[s]&&this.fail(`duplicate attribute: ${s}.`),e[s]=i;this.attribList=[]}openTag(){this.processAttribs();const{tags:t}=this,e=this.tag;e.isSelfClosing=!1,this.openTagHandler?.(e),t.push(e),this.state=S,this.name=""}openSelfClosingTag(){this.processAttribs();const{tags:t}=this,e=this.tag;e.isSelfClosing=!0,this.openTagHandler?.(e),this.closeTagHandler?.(e),null===(this.tag=t[t.length-1]??null)&&(this.closedRoot=!0),this.state=S,this.name=""}closeTag(){const{tags:t,name:e}=this;if(this.state=S,this.name="",""===e)return this.fail("weird empty close tag."),void(this.text+="</>");const s=this.closeTagHandler;let i=t.length;for(;i-- >0;){const i=this.tag=t.pop();if(this.topNS=i.ns,s?.(i),i.name===e)break;this.fail("unexpected close tag.")}0===i?this.closedRoot=!0:i<0&&(this.fail(`unmatched closing tag: ${e}.`),this.text+=`</${e}>`)}parseEntity(t){if("#"!==t[0]){const e=this.ENTITIES[t];return void 0!==e?e:(this.fail(this.isName(t)?"undefined entity.":"disallowed character in entity name."),`&${t};`)}let e=NaN;return"x"===t[1]&&/^#x[0-9a-f]+$/i.test(t)?e=parseInt(t.slice(2),16):/^#[0-9]+$/.test(t)&&(e=parseInt(t.slice(1),10)),this.isChar(e)?String.fromCodePoint(e):(this.fail("malformed character entity."),`&${t};`)}}var B,W;(W=B||(B={})).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"},W.parseStream=async(t,e,s)=>{const i=new X({position:!1,...s});let o;if(e.onOpenTagStart&&i.on(W.Events.OpenTagStart,e.onOpenTagStart),e.onOpenTag&&i.on(W.Events.OpenTag,e.onOpenTag),e.onCloseTag&&i.on(W.Events.CloseTag,e.onCloseTag),e.onAttribute&&i.on(W.Events.Attribute,e.onAttribute),e.onText&&i.on(W.Events.Text,e.onText),e.onError&&i.on(W.Events.Error,e.onError),e.onEnd){e.onEnd;const t=()=>{o=e.onEnd()};i.on(W.Events.End,t)}for(;;){const{value:e,done:s}=await t.read();if(s)break;i.write(e)}return i.close(),o};const _=t=>!0===t||"1"===t||"on"===t||"true"===t||!1!==t&&"0"!==t&&"off"!==t&&"false"!==t&&null,q=t=>{const e=parseInt(t);return isNaN(e)?null:e},z=t=>{const e=parseFloat(t);return isNaN(e)?null:e},U=null;class G{constructor(){this._registeredVisitors=new Map}registerVisitor(t){this._registeredVisitors.set(t.from,t)}createEventHandler(t,e,s){const i=this._registeredVisitors,o=[];let r=null,n=null,a=null,l=null;const c=[],h={key:null,source:t};let u=null,d=!1;const p=(t,e)=>{let s=a.attributes[t];if(e)if(Array.isArray(e))for(let t=0;t<e.length;t++){if(null==s)return;if(s=e[t](s),null==s)return}else{if(null==s)return;if(s=e(s),null==s)return}return s},g={getSource:()=>u.source,setSource:t=>{u.source=t},setKey:t=>{u.key=t},getFrom:()=>a,getAttribute:(t,e)=>p(t,e)??null,hasAttribute:t=>null!==g.getAttribute(t),getParent:()=>c[c.length-2].source,getPath:()=>{const t=[];for(let e=0;e<o.length;e++)t.push(o[e].local);return t.join("\\")},parseAttribute:p,copyToObject:(t,e,s,i)=>{const o=p(i??e,s);void 0!==o&&(t[e]=o)},copyTo:(t,e,s)=>{const i=p(s??t,e);void 0!==i&&(u.source[t]=i)},warn:t=>{s?s?.(t):console.warn(t)}};return{onOpenTag:t=>{let e=t.name;const s=e.indexOf(":");-1!==s&&(e=e.slice(s+1));const p=i.get(e);if(r={local:e,visitor:p,tag:t,destination:null},d)return o.push(r),n=e,void(a=t);l=r?.visitor??null,p&&(u=0===o.length?h:null!==l?.to?{key:null,source:{}}:null,r.destination=u,u&&c.push(u)),o.push(r),n=e,a=t,d=null===l?.to,l?.openTag?.(g)},onCloseTag:t=>{let e=t.name;const i=e.indexOf(":");if(-1!==i&&(e=e.slice(i+1)),e!==n)throw new Error(`mismatch open/close tag: '${e}'/'${n}'`);d||l?.closeTag?.(g);const p=o.pop()??null;r=o[o.length-1]??null;const f=p?.destination;if(f){c.pop(),u=c[c.length-1]??h;const t=p.visitor;t&&t.to&&void 0!==f.source&&(Array.isArray(t.to)?u.source.push?u.source.push(f.source):s?.(`Unable to parse array for ${t.from} at ${g.getPath()}`):f.key?u.source[f.key]=f.source:"string"==typeof t.to&&(u.source[t.to]=f.source))}n=r?.local??null,a=r?.tag??null,l=r?.visitor??null,d=!r?.destination},onText:t=>{l?.text?.(t,g)},onEnd:e}}}const Z=(t,e,s,i=null)=>{if(!t)return null;let o=t;o.startsWith("/")&&(o=o.substring(1));let r=i?.parsedRefs?.get(t);if(void 0!==r)return r;const n=e(o);if(!n)return null;let a=n.content;try{s&&(a=s(a))}catch(t){console.warn(t)}return i?.parsedRefs?.set(t,a),a},Q=(t,e,s,i,o=null)=>{if(!t)return null;let r=t;r.startsWith("/")&&(r=r.substring(1));let n=o?.parsedRefs?.get(t);if(void 0!==n)return n;const a=e(r);if(!a)return null;const l=a.content;try{const e=(new TextDecoder).decode(l),r=s.parseFromString(e,"text/xml"),n=i.convert(r,t,o);return o?.parsedRefs?.set(t,n),n}catch(t){console.warn(t)}return null},J=(t,e,s,i,o=null)=>{const r=new Map;let n=e.Directory[t];const a=n?n.length:0;for(let t=0;t<a;t++){const a=n[t];if(!a)continue;let l=a;l.startsWith("/")&&(l=l.substring(1));const c=Q(l,t=>e.files[t],s,i,o);r.set(l,c)}return r},K=["lt1","dk1","lt2","dk2","accent1","accent2","accent3","accent4","accent5","accent6","hlink","folHlink"],Y=(e,s="dk1")=>{let i;const o=e("auto");void 0===o||"1"!==o&&"true"!==o||(i=s);const r=e("indexed");r&&(i=`index${r}`);const n=e("rgb");n&&(i=n.toLowerCase(),8!==n.length||n.startsWith("FF")||(i="FF"+n.substring(2,n.length)));const a=e("theme");a&&(i=K[a]);let l=e("tint");if(l&&(i+=` ${t.ba.AdjustmentType.ETint} ${parseFloat(l)}`),i)return i},tt=t=>t?t.replace(/^\{([\s\S]+)\}$/,"$1"):t,et=t=>"true"===t||"1"===t;class st{static{this.Collapsed=1}static{this.CustomFormat=2}static{this.CustomHeight=4}static{this.Hidden=8}static{this.Ht=16}static{this.OutlineLevel=32}static{this.Ph=64}static{this.R=128}static{this.S=256}static{this.Spans=512}static{this.ThickBot=1024}static{this.ThickTop=2048}}const it=(t,e,s)=>{if(t[0].value[0]===t[1].value[0])return e},ot={colStart:0,colEnd:0,rowStart:0,rowEnd:0},rt=Object.freeze(Object.defineProperty({__proto__:null,fromBufferXLSX:async(e,s)=>{const{password:i,onWarning:o,createWorkbookOptions:r={},...n}=s??{},a=Promise.resolve().then(()=>require("./Dh_dFnagz7dMZlGh.cjs")),l=Promise.resolve().then(()=>require("./xjKotAOVt3JH36U7.cjs"));let c=null;try{c=new DOMParser}catch(e){}let h=null;c||(h=Promise.resolve().then(()=>require("./BG2uV2RpxrfZyCuV.cjs")).then(t=>t.i));let u=null,d=null,p=null;try{const t=await Promise.all([a,l,h]);u=t[0],d=t[1],p=t[2]}catch(e){throw new Error("Unable to load XLSX parser.",{cause:e})}try{const s=u.read(e,{type:"array",sheets:[],cellStyles:!1,bookFiles:!0});if(!s.Directory)throw new Error("Unable to parse as an Excel document. Try to save as '.xlsx' and try again.");s.Directory.richstructure=["/xl/richData/rdrichvaluestructure.xml"],s.Directory.richdata=["/xl/richData/rdrichvalue.xml"];const i=new d.FromOOXMLConverter,n=c??new p.DOMParser,a=r?.resources??new t.Bp,l=a.beginPersist(),h={},g=new Set,f=new Map;f.set("richTypes",[]);const m=new Map,T=[],y=t=>s.files[t],b=(t,e)=>{const s=t.lastIndexOf("/"),o=t.substring(0,s+1)+"_rels/"+t.substring(s+1,t.length)+".rels";let r=e.get(o);return r||(r=((t,e,s,i,o=null)=>{if(!t)return null;const r=Q(t,e,s,i,o);if(!r)return null;const n=new Map,a=Object.keys(r),l=a.length;for(let t=0;t<l;t++){const e=a[t],s=r[e];n.set(e,s)}return n})(o,y,n,i,w),e.set(o,r)),r},x=(e,s,r,c=m)=>{let u=b(s,c).get(e),d=u?.target;if(!d)return null;if("External"===u.targetMode)return u.target;const p=s.lastIndexOf("/"),v=s.substring(0,p+1);d.startsWith("/")||(d=v+d),d=(t=>{const e=t.split(/\/+/),s=e.reduce((t,e,s)=>("."===e?t.splice(s,1):".."===e&&t.splice(s-1,2),t),e);return s.join("/")})(d);const S=i?.getVisitorParamsState().get("dxfs");let C=c.get(d);if(!C){const e="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet";if(u.type===e){const e={};C=e;const s=async()=>{const s=((e,s,i,o,r,n,a)=>{const l=new G,c=new t.Ke.TransposedBuilder;let h=null;l.registerVisitor({from:"autoFilter",to:"filter",openTag:t=>{t.copyTo("ref",U)}}),l.registerVisitor({from:"conditionalFormatting",to:{},openTag:t=>{const e=t.getParent();e.conditionals||(e.conditionals=[]),e.conditionals.push(t.getSource());const s=t.getAttribute("sqref");s&&(t.getSource().ref=s.split(" ").join(",")),t.copyTo("pivot",_)},closeTag:t=>{const e=t.getSource();if(e.rule){const t=Object.keys(e.rule);for(let s=0;s<t.length;s++){const i=t[s];"rule"!==i&&(e[i]=e.rule[i])}}delete e.rule}}),l.registerVisitor({from:"cfRule",to:"rule",openTag:t=>{const e=t.getParent();t.copyToObject(e,"type",U),t.copyToObject(e,"priority",q),t.copyToObject(e,"stopIfTrue",_);const s=t.getAttribute("dxfId",q);if(null!==s){let i=o?.get(s);i||(n?.(`Unable to load conditional color. Invalid dxfI: '${s}' at '${t.getPath()}'.`),i={}),e.style=i}t.copyToObject(e,"aboveAverage",_),t.copyToObject(e,"equalAverage",_),t.copyToObject(e,"stdDev",q),t.copyToObject(e,"bottom",_),t.copyToObject(e,"percent",_),t.copyToObject(e,"rank",q),t.copyToObject(e,"operator",U),t.copyToObject(e,"text",U),t.copyToObject(e,"timePeriod",U)}}),l.registerVisitor({from:"colorScale",to:"colorScale"}),l.registerVisitor({from:"dataBar",to:"dataBar",openTag:t=>{t.copyTo("maxLength",q),t.copyTo("minLength",q),t.copyTo("showValue",_)}}),l.registerVisitor({from:"iconSet",to:"iconSet",openTag:t=>{t.copyTo("iconSet",U),t.copyTo("reverse",_),t.copyTo("showValue",_)}}),l.registerVisitor({from:"formula",to:null,text:(t,e)=>{const s=e.getParent();let i=s.formulas;i||(i=[],s.formulas=i),i.push(t)}}),l.registerVisitor({from:"cfvo",to:{},openTag:t=>{const e=t.getParent();e.conditions||(e.conditions=[]),e.conditions.push(t.getSource()),t.copyTo("type",U),t.copyTo("value",z,"val"),t.copyTo("gte",_)}}),l.registerVisitor({from:"color",to:{},openTag:t=>{const e=t.getParent();e.colors||(e.colors=[]);const s=Y(e=>t.getAttribute(e));e.colors.push(s)}}),l.registerVisitor({from:"filterColumn",to:"filterColumn",openTag:t=>{const e=t.getParent();e.fields||(e.fields=[]),e.fields.push(t.getSource()),t.copyTo("offset",q,"colId"),t.copyTo("hiddenButton",_),t.copyTo("showButton",_)}}),l.registerVisitor({from:"colorFilter",to:"colorFilter",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.iS.Type.Color,e.copyTo("cellColor",_),e.copyTo("styleId",q,"dxfId")}}),l.registerVisitor({from:"dynamicFilter",to:"dynamicFilter",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.iS.Type.Dynamic,e.copyTo("dynamicType",U,"type"),e.copyTo("val",z),e.copyTo("maxVal",z,"maxVal")}}),l.registerVisitor({from:"iconFilter",to:"iconFilter",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.iS.Type.Icon,e.copyTo("iconId",q),e.copyTo("iconSet",U)}}),l.registerVisitor({from:"top10",to:"top10",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.iS.Type.Top10,e.copyTo("filterVal",z),e.copyTo("percent",_),e.copyTo("top",_),e.copyTo("val",z)}}),l.registerVisitor({from:"filters",to:"filters",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.iS.Type.Items,e.copyTo("blank",_),e.copyTo("calendarType",U)}}),l.registerVisitor({from:"dateGroupItem",to:"dateGroupItem",openTag:t=>{const e=t.getParent();e.dateGroups||(e.dateGroups=[]),e.dateGroups.push(t.getSource()),t.copyTo("group",U,"dateTimeGrouping"),t.copyTo("day",q),t.copyTo("hour",q),t.copyTo("minute",q),t.copyTo("month",q),t.copyTo("second",q),t.copyTo("year",q)}}),l.registerVisitor({from:"filter",to:"filter",openTag:t=>{const e=t.getParent();e.items||(e.items=[]),e.items.push(t.getAttribute("val",z))}}),l.registerVisitor({from:"customFilters",to:"customFilters",openTag:e=>{const s=e.getParent();s.criteria||(s.criteria=[]),s.criteria.push(e.getSource()),e.getSource().type=t.iS.Type.Custom,e.copyTo("and",_)}}),l.registerVisitor({from:"customFilter",to:"customFilter",openTag:t=>{const e=t.getParent();e.filters||(e.filters=[]),e.filters.push(t.getSource()),t.copyTo("operator",U),t.copyTo("value",z,"val")}}),l.registerVisitor({from:"sortState",to:"sort",openTag:t=>{t.copyTo("ref",U)}}),l.registerVisitor({from:"sortCondition",to:"sortCondition",openTag:e=>{const s=e.getParent();s.fields||(s.fields=[]);const i=e.getSource();s.fields.push(i),e.copyTo("sortOn",U,"sortBy"),e.copyTo("dxfId",U,"sortBy"),e.copyTo("iconSet",U),e.copyTo("customList",U);const o=e.getAttribute("ref");if(o){const e=t.ip.fastStringToRange(o,ot).colStart,r=t.ip.fastStringToRange(s.ref,ot),n=r.colStart;i.offset=r?e-n:e}i.reverse=e.getAttribute("descending",_)??!1}}),l.registerVisitor({from:"AlternateContent",to:null});const u=t=>{h=t.getSource(),t.copyTo("topLeft",U,"topLeftCell");const e=et(t.getAttribute("defaultGridColor")),s=t.getAttribute("colorId");null===s||e||(t.getSource().gridLineColor="index"+parseFloat(s)),t.copyTo("showZeros",_),t.copyTo("showFormulas",_),t.copyTo("zoomScale",q),t.copyTo("showRowHeaders",_,"showRowColHeaders"),t.copyTo("showColumnHeaders",_,"showRowColHeaders"),t.copyTo("showRowGridlines",_,"showGridLines"),t.copyTo("showColumnGridlines",_,"showGridLines")};l.registerVisitor({from:"sheetView",to:"view",openTag:t=>{u(t)},closeTag:()=>{h=null}}),l.registerVisitor({from:"customSheetViews",to:"customSheetViews",openTag:t=>{t.setSource([])}}),l.registerVisitor({from:"customSheetView",to:[],openTag:t=>{u(t)},closeTag:()=>{h=null}}),l.registerVisitor({from:"selection",to:"selection",openTag:t=>{if(!h)return;t.copyTo("cell",U,"activeCell"),t.copyTo("rangeIndex",q,"activeCellId");const e=t.getAttribute("activeCell"),s=t.getAttribute("sqref");s&&s!==e&&(t.getSource().ranges=s.split(" "))}}),l.registerVisitor({from:"pane",to:"pane",openTag:e=>{if(h&&"frozen"===e.getAttribute("state")){const s={};h.freezePanes=s,e.copyToObject(s,"topLeft",U,"topLeftCell");const i=h.topLeft?t.ip.fastStringToCell(h.topLeft):{colIndex:0,rowIndex:0},o={colIndex:0,rowIndex:0};e.copyToObject(o,"colIndex",q,"xSplit"),e.copyToObject(o,"rowIndex",q,"ySplit");const r={colIndex:i.colIndex+o.colIndex,rowIndex:i.rowIndex+o.rowIndex};s.coords=t.ip.cellToString(r)}}}),l.registerVisitor({from:"tabColor",to:null,openTag:t=>{const s=Y(e=>t.getAttribute(e));s&&(e.tabColor=s)}}),l.registerVisitor({from:"pageSetUpPr",to:"pageSetUpPr",openTag:t=>{}}),l.registerVisitor({from:"outlinePr",to:"outlinePr",openTag:t=>{}}),l.registerVisitor({from:"pageMargins",to:"pageMargins",openTag:t=>{}}),l.registerVisitor({from:"pageSetup",to:"pageSetup",openTag:t=>{}}),l.registerVisitor({from:"printOptions",to:"printOptions",openTag:t=>{}}),l.registerVisitor({from:"mergeCells",to:"merges",openTag:t=>{t.setSource([])}}),l.registerVisitor({from:"mergeCell",to:[],openTag:t=>{const e=t.getAttribute("ref");t.setSource(e)}}),l.registerVisitor({from:"hyperlinks",to:"hyperlinks",openTag:t=>{t.setSource([])}}),l.registerVisitor({from:"hyperlink",to:[],openTag:t=>{const e=t.getAttribute("r:id"),i=t.getAttribute("ref");if(!i)return void console.warn("No ref found for hyperlink");t.setKey(i);let o=e?s(e):"";if("string"!=typeof o)return void console.warn("Invalid address ",o);const r=t.getAttribute("location");o.endsWith("\\")&&(o=o.substring(0,o.length-1));const n=t.getAttribute("location");if(n&&(r&&r!==n&&console.warn("display and location are different",r,n),o+="#"+n),!o)return void console.warn("No address found for hyperlink. r:id",e);let a;const l=t.getAttribute("tooltip");a=l?{address:o,tooltip:l}:o,t.setSource({r:i,v:a})}}),l.registerVisitor({from:"drawing",to:"movables",openTag:t=>{const e=t.getAttribute("r:id");if(!e)return;const i=s(e);i?t.setSource(i.movables):console.warn("no drawing found for rId",e)}}),l.registerVisitor({from:"tableParts",to:"tables",openTag:t=>{t.setSource([])}}),l.registerVisitor({from:"tablePart",to:[],openTag:t=>{const e=t.getAttribute("r:id");if(!e)return;const i=s(e);i?t.setSource(i):console.warn("no table found for rId",e)}}),l.registerVisitor({from:"worksheet",to:"worksheet",openTag:t=>{}}),l.registerVisitor({from:"sheetProtection",to:"protection",openTag:t=>{let e=!1;if(t.hasAttribute("sheet")&&_(t.getAttribute("sheet"))&&(e=!0),!e)return void t.setSource(void 0);const s=t=>!0===t||"1"===t||"on"===t||"true"===t||!1===t||"0"===t||"off"===t||"false"===t||null;t.copyTo("autoFilter",s),t.copyTo("deleteColumns",s),t.copyTo("formatCells",s),t.copyTo("formatColumns",s),t.copyTo("formatRows",s),t.copyTo("insertColumns",s),t.copyTo("insertHyperlinks",s),t.copyTo("insertRows",s),t.copyTo("objects",s),t.copyTo("pivotTables",s),t.copyTo("scenarios",s),t.copyTo("selectUnlockedCells",s),t.copyTo("selectUnlockedCells",s),t.copyTo("sort",s);const i={};t.copyToObject(i,"hash",U,"hashValue"),t.copyToObject(i,"algorithm",U,"algorithmName"),t.copyToObject(i,"salt",U,"saltValue"),t.copyToObject(i,"spinCount",q),Object.keys(i).length>0&&(t.getSource().password=i)}}),l.registerVisitor({from:"protectedRanges",to:"protectedRanges",openTag:t=>{t.setSource({})}}),l.registerVisitor({from:"protectedRange",to:{},openTag:t=>{const e=t.getAttribute("sqref");t.setKey(e),t.copyTo("name"),t.copyTo("securityDescriptor");const s={};t.copyToObject(s,"hash",U,"hashValue"),t.copyToObject(s,"algorithm",U,"algorithmName"),t.copyToObject(s,"salt",U,"saltValue"),t.copyToObject(s,"spinCount",q),Object.keys(s).length>0&&(t.getSource().password=s)}}),l.registerVisitor({from:"sheetFormatPr",to:"sheetFormatPr",openTag:t=>{t.copyToObject(e,"defaultColSize",z,"defaultColWidth"),t.copyToObject(e,"outlineLevelCol",q,"outlineLevelCol");const s=t.getAttribute("customHeight");"1"!==s&&"true"!==s||t.copyToObject(e,"defaultRowSize",z,"defaultRowHeight"),t.copyToObject(e,"outlineLevelRow",q,"outlineLevelRow")}}),l.registerVisitor({from:"cols",to:"cols",openTag:t=>{t.setSource([])}}),l.registerVisitor({from:"col",to:[],openTag:t=>{t.copyTo("min",t=>parseInt(t)-1),t.copyTo("max",t=>parseInt(t)-1),t.copyTo("sz",z,"width"),t.copyTo("cs",_,"customWidth"),t.copyTo("h",_,"hidden"),t.copyTo("l",q,"outlineLevel"),t.copyTo("s",q,"style")}}),l.registerVisitor({from:"oleObjects",to:null,openTag:t=>{t.warn("'OLE Objects' are not supported.")}});let d=null;const p={onOpenTag:t=>{null===d&&(d="")},onText:t=>{d+=t},onEnd:()=>{const t=i(d);return d=null,t},onError:t=>{}};return((e,s,i,o,r,n)=>{let a=!1,l=!1,c=[],h=!1,u=null,d=null,p=null,g=null,f=null,m=null;const T=n?.get("richData")??[],y=t.ip.normalizeA1ToR1C1,b=t.W.createConflatingRanges(),x=new Map,w=[];let v=null;const S=t.W.createConflatingRanges();let C,k=!1,A=-1,D=-1,E=null,P=null;const O=[];let I=null,V=-2,L=0,N="",R="",$="",M="",j="",H="",F="",X="",B="",W="",_="",q="",z="",U="",G=!0,Z=null;return{...i,onEnd:()=>{O.length>0&&(s.rows=O);let o=b.done(it);const r=o.length;if(r>0){const e=new Array(r);for(let s=0;s<r;s++){const i=o[s],r=t.ip.rangeToString(i),n=i.value[1],a=t.ip.resolveRelativeToA1(n,i.rowStart,i.colStart);e[s]=[r,a]}s.formulas=e}const n=S.done(!0),a=n.length;if(a>0){const e=new Array(a);for(let s=0;s<a;s++){const i=n[s],o=t.ip.rangeToString(i);e[s]=o}s.volatile=e}if(w.length>0&&(s.dynamicArray=[...w]),c.length>0){c.sort(t.W.createRangeComparator(t.e.Orientation.Column));const e=[];let i=null,o=-1,r=-1,n=-1,a=-1,l=null;const h=c.length;h>0&&(i=c[0],o=i.colStart,r=i.colEnd,n=i.rowEnd,a=i.value,e.push(i));for(let t=1;t<h;t++)l=c[t],a!==l.value||o!==l.colStart||r!==l.colEnd||n+1!==l.rowEnd?(e.push(l),i=l,o=i.colStart,r=i.colEnd,n=i.rowEnd,a=i.value):(n=l.rowEnd,i.rowEnd=n);let u=[];for(let t=0;t<e.length;t++){const s=e[t];u.push({r:{colStart:s.colStart,colEnd:s.colEnd,rowStart:s.rowStart,rowEnd:s.rowEnd},v:s.value})}s.directStyles=u}const l=e.build();if(l){const t=l.tuples;s.data=t}i?.onEnd?.()},onOpenTag:e=>{let s=e.name;const o=s.indexOf(":");if(-1!==o&&(s=s.slice(o+1)),C){const t=e.attributes;switch(s){case"v":l=!0;break;case"f":switch(t.t??null){case null:case"normal":h=!0;break;case"shared":const e=t.si;d=t.ref,u=e;break;case"array":h=!0,d=t.ref,v=[d,!1];break;case"datatable":h=!0,d=t.ref,h=!0}void 0!==t.ca&&S.append(A,D);break;case"is":return void(k=!0)}return void(k&&r?.onOpenTag(e))}if(a){if("c"===s){C=e;const s=e.attributes.r;D=t.ip.fastStringToCol(s);const i=e.attributes.t;void 0===i?P=null:(P=i,"str"===P&&(k=!0));let o=e.attributes.s;void 0!==o&&(o=parseInt(o),Z&&Z.value===o&&Z.colEnd+1===D?Z.colEnd=D:(Z={colStart:D,rowStart:A,colEnd:D,rowEnd:A,value:o},c.push(Z)))}}else{if("row"===s){a=!0;const t=e.attributes.r;if(A=parseInt(t)-1,L=0,R=e.attributes.customHeight,void 0!==R&&(L|=st.CustomHeight),R!==B&&(G=!0,B=R),N=e.attributes.ht,void 0!==N&&(L|=st.Ht),N!==X&&(G=!0,X=N),$=e.attributes.hidden,void 0!==$&&(L|=st.Hidden),$!==W&&(G=!0,W=$),j=e.attributes.s,void 0!==j&&(L|=st.S),j!==q&&(G=!0,q=j),M=e.attributes.customFormat,void 0!==M&&(L|=st.CustomFormat),M!==_&&(G=!0,_=M),H=e.attributes.outlineLevel,void 0!==H&&(L|=st.OutlineLevel),H!==z&&(G=!0,z=H),F=e.attributes.collapsed,void 0!==F&&(L|=st.Collapsed),F!==U&&(G=!0,U=F),0!==L)if(V+1!==A||G){const t=void 0!==R&&("1"===R||"true"===R),e=void 0!==M&&("1"===M||"true"===M);I={min:A,max:A,sz:t&&void 0!==N?parseFloat(N):-1,csz:t,h:void 0!==$&&("1"===$||"true"===$),s:t&&void 0!==j&&"0"!==j?parseInt(j):0,cs:e,l:void 0===H||"0"===H?0:parseInt(H),cl:void 0!==F&&("1"===F||"true"===F)},O.push(I)}else I.max=A;return V=A,void(G=!1)}i?.onOpenTag(e)}},onCloseTag:t=>{if(C){let s=t.name;const i=s.indexOf(":");if(-1!==i&&(s=s.slice(i+1)),k)if("is"===s||"v"===s){const t=r?.onEnd();null!==t&&e.addValue(A,D,""+t)}else r?.onCloseTag?.(t);return l&&(l=!1),void("c"===s&&(C=null,k=!1))}if(a)return a=!1,void(Z=null);i?.onCloseTag(t)},onText:s=>{if(s=s.trim(),l){switch(E=null,P){case null:case"n":E=parseFloat(s);break;case"b":E="1"===s||"true"===s;break;case"s":E=s;break;case"e":if("#VALUE!"===s){const e=C.attributes.vm;if(void 0!==e){const s=T[parseInt(e)-1];if(s&&s.isFormulaError){E={t:t.t.Error,v:s.getCode()};break}}}const e=t.r.getBuiltInByLabel(s);e?E={t:t.t.Error,v:e.getCode()}:(E=s,o?.(`Unknown formula error '${s}' in cell ${t.ip.cellToString({colIndex:D,rowIndex:A})}`));break;case"str":case"inlineStr":k=!0}null!==E&&e.addValue(A,D,E)}if(v&&("e"===P&&(v[1]=!0),w.push(v),v=null),u)if(f===u)g=m;else{if(g=x.get(u),!g){const t=[];p=y(s,A,D,t),g=[p,t,s],x.set(u,g)}f=u,m=g}if(h){const t=[];p=y(s,A,D,t),g=[p,t,s]}if(g)return b.append(A,D,g),g=null,h=!1,u=null,void(d=null);k?r?.onText(s):a||i?.onText(s)}}})(c,e,l.createEventHandler(e,()=>{},n),n,p,a)})(e,(t,e=!1)=>x(t,d,e)??null,D,S,0,t=>{o&&(t=d+": "+t,o?.(t))},f),i=Z(d,y),r=await(async(t,e=8388608)=>{await(async()=>{if("undefined"==typeof ReadableStream)if("undefined"==typeof window){const{ReadableStream:t}=await Promise.resolve().then(()=>require("./BywNBbTVRYbgRbNI.cjs"));globalThis.ReadableStream=t}else console.warn("Browser does not support ReadableStream; consider loading a polyfill.")})();const s=new TextDecoder("utf-8");let i=0;const o=t instanceof Uint8Array?t:new Uint8Array(t);return new ReadableStream({pull(t){if(i>=o.byteLength)return void t.close();const r=o.subarray(i,Math.min(i+e,o.byteLength)),n=s.decode(r,{stream:i+e<o.byteLength});t.enqueue(n),i+=r.length}}).getReader()})(i);try{await B.parseStream(r,s,{xmlns:!1})}catch(t){throw console.warn(`Error parsing sheet: '${d}'`,t),new Error(`Error parsing sheet: '${d}'`,{cause:t})}const n=b(d,c);let a,l=new Map;if(n){const s="http://schemas.microsoft.com/office/2017/10/relationships/threadedComment";let i;n.forEach((t,e)=>{if(t.type===s){const t=x(e,d,!1,c);a=t?.comments,a&&a.forEach(t=>{l.set(t.id,t)})}});const o="http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments";if(n.forEach((t,e)=>{if(t.type===o){const t=x(e,d,!1,c);i=t}}),i||a){const s=a??[],o=i?.comments;if(o){const e=i?.authors;for(let i=0;i<o.length;i++){const r=o[i];let n=void 0!==r.authorId?e[r.authorId]:void 0;if((!n||n.startsWith("tc="))&&(n=tt(n.substring(3)),l.has(n)))continue;let a=E.get(n);a||(a=P.get(n)),a||(a={id:t._t.uuidV4(),displayName:n},P.set(a.displayName,a),E.set(a.id,a)),n=a?.id??null;const c={id:t._t.uuidV4(),personId:n,ref:r.ref,done:!1,asNote:!0,content:r.content};s.push(c)}}e.comments=s}}};T.push(s())}else C=r?Z(d,y,t=>{const e=a.add({buffer:t});return e.addReference(h),g.add(e),l.toResourceId(e)},w):Q(d,y,n,i,w)}return C},w={paramMap:f,getRefs:b,getRef:x,parsedRefs:m,onWarning:o,addPerson:t=>null},v=[];let S=0;s.Strings&&(S=parseInt(s.Strings.Unique??s.Strings.length??0));const C=s.Strings??[];for(let t=0;t<S;t++)v.push(C[t]?.t??"");const k=new Map;let A=S;const D=t=>{const e=k.get(t);if(void 0!==e)return e;const s=A;return k.set(t,A++),v.push(t),s},E=(J("richstructure",s,n,i,w),J("richdata",s,n,i,w),new Map),P=new Map,O=J("people",s,n,i);let I=null;if(O.size>0&&(I=O.entries().next()?.value?.[1]?.persons,I)){const t=I.length;for(let e=0;e<t;e++){const t=I[e];E.set(t.id,t),E.set(t.displayName,t)}}const V=J("themes",s,n,i,w);let L=null;if(V&&V.entries){let t=V.entries().next();t?.value?.[1]&&(L=t.value[1])}const N=new t.Rl(L),R=J("styles",s,n,i,w);let $=R.entries().next()?.value[1];$&&($=JSON.parse(t.At($)));const M=J("workbooks",s,n,i,w);await Promise.all(T);const j={...M.entries().next().value[1],styles:$,theme:N.toJSON()};v.length>0&&(j.strings=v),I&&I.length>0&&(j.people=I);const H={...r,resources:a,json:j},F=new t.Iy(H);return g.forEach(t=>{t.deleteReference(h)}),l.endPersist(),F}catch(e){let s="Unable to parse XLSX.";throw e instanceof t.kt&&(s="Unable to open XLSX. There are too many rows or columns."),new Error(s,{cause:e})}},toBufferXLSX:async(e,s)=>{const i=await Promise.resolve().then(()=>require("./Dh_dFnagz7dMZlGh.cjs")),o=await e.toJSON(!0),r=i.utils.book_new();for(let s=0;s<o.sheets.length;s++){const n=o.sheets[s],a=i.utils.json_to_sheet([{}]);i.utils.book_append_sheet(r,a,n.name);const l=n.sheet,c=e.getSheetAt(s),h=c.getUsedRange();if(h?(a["!ref"]=h.getA1(),h.forEach((e,s)=>{const i={t:"z"},o=s.getCell().getStyle();if(!o.isNormal()){let e=o.getNumberFormat();e!==t.el.Type.General&&(e===t.el.Type.ShortDate?e="m/d/yyyy":e===t.el.Type.MediumDate?e="d-mmm-yy":e===t.el.Type.LongDate?e="[$-x-sysdate]dddd, mmmm dd, yyyy":e===t.el.Type.ShortTime?e="h:mm":e===t.el.Type.MediumTime?e="h:mm AM/PM":e===t.el.Type.LongTime&&(e="h:mm:ss AM/PM"),i.z=e)}if(null!==e)switch(s.getType()){case t.t.Number:i.t="n",i.v=e;break;case t.t.String:i.t="s",i.v=e;break;case t.t.Boolean:i.t="b",i.v=e;break;case t.t.Error:i.t="e",i.v=e.toString();case t.t.RichData:}a[s.getA1()]=i})):a["!ref"]="A1:A1",l.merges?.length>0){const t=[];a["!merges"]=t;for(let e=0;e<l.merges.length;e++)t.push(i.utils.decode_range(l.merges[e]))}if(l.cols?.length>0){const t=[];a["!cols"]=t;const e=l.cols,s={width:l.defaultColSize??c.getColumnWidthAsFontUnit(c.getColumnHeaders().getDefaultSize())};for(let i=0;i<e.length;i++){const o=e[i];for(let e=t.length;e<=o.min-1;e++)t.push(s);const r={};void 0!==o.sz&&(r.width=o.sz),void 0!==o.h&&(r.hidden=o.h),void 0!==o.l&&(r.level=o.l);for(let e=o.min;e<=o.max;e++)t.push(r)}}}return i.write(r,{type:"array",bookType:"xlsx"}),i.write(r,{type:"array",bookType:"xlsx"})}},Symbol.toStringTag,{value:"Module"}));exports.a=t=>parseFloat(t)/1e3,exports.b=et,exports.c=e=>e?t._n.roundAccurately(parseFloat(e)/9525,1):null,exports.d=Y,exports.i=rt,exports.p=t=>parseFloat(t)/6e4,exports.r=tt,exports.t=e=>e?t._n.roundAccurately(parseFloat(e)/12700,4):null;
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./B9jxuOg1CXcmbi9J.cjs"),t=e.reactExports.memo(t=>{const{title:o,onHide:s,autoFocusSel:n=".range-input input",context:i,notifier:a=e.sr,command:r,commands:l,...x}=t,[c,p]=e.reactExports.useState(!1),[d,m]=e.reactExports.useState(!1),g=e.reactExports.useRef(null),[u,h]=e.reactExports.useReducer(e=>e+1,0),[j,{width:R}]=e._I();e.Jr(r);const f=i??r.context(),y=f.table(),[b,E]=e.reactExports.useState(()=>y?f.getNames().getRanges(y.getRange()):null),w=e.reactExports.useMemo(()=>y?.getName()??"",[y]);e.j_(f.table(),{onAnchorCoordsChange(e){E(f.getNames().getRanges(e.getRange()))},onProtectedChange(e){h()}});const S=e.go(e=>{f?.table().setName(e)},[f]),C=e.go(e=>{f?.table().resize(e.at(0))},[f]);let v=null;return f.table()||(v=e.jsxRuntimeExports.jsx("div",{style:{position:"absolute",top:"0",left:"0",width:"100%",height:"100%",opacity:1,display:"flex",alignItems:"center",justifyItems:"center",justifyContent:"center",boxSizing:"border-box"},children:e.jsxRuntimeExports.jsx("div",{children:"No table selected"})})),e.jsxRuntimeExports.jsx(e.Vg,{ref:g,title:o??"Table Details",initialPosition:{y:"35"},autoFocusSel:n,onHide:s,onFocus:()=>p(!0),onBlur:e=>{g?.current?.contains(e.relatedTarget)||p(!1)},PaperProps:{elevation:c?3:1},...x,children:e.jsxRuntimeExports.jsxs(e.DialogContent,{dividers:!0,ref:j,sx:{display:"flex",flexDirection:"column",position:"relative",paddingLeft:e=>e.spacing(1.5),paddingRight:e=>e.spacing(1.5)},children:[e.jsxRuntimeExports.jsxs(e.Box,{sx:{display:"flex",flexDirection:"column",transition:"opacity 60ms",opacity:f.table()?1:0},children:[e.jsxRuntimeExports.jsx(e.Box,{sx:{display:"flex",flexDirection:"row",gap:e=>e.spacing(1)},children:e.jsxRuntimeExports.jsx(e.Box,{sx:{display:"flex",flexDirection:"column",maxWidth:"100%",boxSizing:"border-box",paddingLeft:e=>e.spacing(2),paddingRight:e=>e.spacing(2)},children:e.jsxRuntimeExports.jsxs(e.Box,{sx:{display:"flex",flexDirection:"column",alignItems:"center"},children:[e.jsxRuntimeExports.jsx(e.gL,{formName:"name",defaultInput:w,value:y?.getName()??"No table",onChangeInput:S,onValidate:e=>{y&&y.getName().toLowerCase()===e.toLowerCase()||f?.getNames().validateName(e)},disabled:y?.isProtected()??!0,onFocus:e=>{d||e.target?.select(),m(!0)}}),e.jsxRuntimeExports.jsx(e.bL,{formName:"range",value:b,onChangeInput:C,resolvedAddress:f.getNames().getRanges.bind(f.getNames()),disabled:y?.isProtected()??!0,onFocus:e=>{d||e.target?.select(),m(!0)}})]})})}),e.jsxRuntimeExports.jsxs(e.Box,{sx:{minHeight:"10px",flex:"1 1 100%",display:"flex",flexDirection:"column",gap:e=>e.spacing(.5),marginTop:e=>e.spacing(1)},children:[e.jsxRuntimeExports.jsx(e.Mp,{orientation:"horizontal",sx:{marginTop:e=>e.spacing(1.5),marginBottom:e=>e.spacing(.75)}}),e.jsxRuntimeExports.jsx(e.tL,{disabled:y?.isProtected(),styleOptions:y?.getStyleOptions()??null,onStyleOptionsChange:e=>{y.updateStyleOptions(e)},showHeaderRow:y?.getShowHeaders(),onShowHeaderRowChange:e=>{try{y.setShowHeaders(e)}catch(e){a.showError(e)}},showTotalRow:y?.getShowTotals(),onShowTotalRowChange:e=>{try{y.setShowTotals(e)}catch(e){a.showError(e)}},showFilterButton:y?.getFilter()?y.getShowFilterButton():null,onShowFilterButtonChange:e=>{try{y.setShowFilterButton(e)}catch(e){a.showError(e)}}}),e.jsxRuntimeExports.jsx(e.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"center",flexDirection:"column",marginTop:e=>e.spacing(2),marginBottom:e=>e.spacing(1)},children:e.jsxRuntimeExports.jsx(e.JO,{table:y,styles:f.styles(),bodyStyle:f.bodyStyle(),cellHeight:30,isLive:!0})}),e.jsxRuntimeExports.jsx(e.Mp,{orientation:"horizontal"}),e.jsxRuntimeExports.jsxs(e.Box,{sx:{display:"flex",flexDirection:"column",justifyContent:"center"},children:[e.jsxRuntimeExports.jsx(e.pb,{variant:e.ti.Menuitem,command:l.getCommand("convertTableToRange"),commandState:y,icon:e.kc(e.jsxRuntimeExports.jsx(e.$u,{}))}),e.jsxRuntimeExports.jsx(e.pb,{variant:e.ti.Menuitem,commandState:y,command:l.getCommand("deleteTable"),icon:e.kc(e.jsxRuntimeExports.jsx(e.$u,{}))})]})]})]}),v]})})});exports.TableDetailsWindow=t,exports.default=t;
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});exports.default={ERF:{s:"Returns the error function",p:{lowerLimit:{d:"is the lower bound for integrating ERF"},upperLimit:{d:"is the upper bound for integrating ERF",v:0}}},"ERF.PRECISE":{s:"Returns the error function",p:{x:{d:"is the lower bound for integrating ERF.PRECISE"}}},ERFC:{s:"Returns the complementary error function",p:{x:{d:"is the lower bound for integrating ERF"}}}};
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t="text/html",e="text/plain",r="image/png",n=Object.freeze({left:0,top:0}),o=Object.freeze({left:0,top:0,bottom:0,right:0}),a=Object.freeze({x:0,y:0,width:0,height:0});Object.freeze(Object.defineProperty({__proto__:null,EmptyBounds:a,EmptyRect:o,EmptyTopLeft:n},Symbol.toStringTag,{value:"Module"}));const i="column",l="row",s=Object.freeze({colIndex:0,rowIndex:0}),c=Object.freeze({colStart:0,rowStart:0,colEnd:0,rowEnd:0}),u=(t,e)=>t.colStart===e.colStart?t.rowStart-e.rowStart:t.colStart-e.colStart,d=(t,e)=>t.rowStart===e.rowStart?t.colStart-e.colStart:t.rowStart-e.rowStart,f=(t,e)=>t.rowEnd===e.rowEnd?e.colEnd-t.colEnd:e.rowEnd-t.rowEnd,p=(t,e)=>t.colEnd===e.colEnd?e.rowEnd-t.rowEnd:e.colEnd-t.colEnd,w=(t,e)=>t.colIndex===e.colIndex?t.rowIndex-e.rowIndex:t.colIndex-e.colIndex,h=(t,e)=>t.rowIndex===e.rowIndex?t.colIndex-e.colIndex:t.rowIndex-e.rowIndex,y=(t=l,e=!1)=>e?t!==i?f:p:t!==i?d:u,g=(t,e)=>t===e||!(!t||!e)&&t.rowIndex===e.rowIndex&&t.colIndex===e.colIndex,b=(t,e)=>t===e||!(!t||!e)&&t.rowStart===e.rowStart&&t.rowEnd===e.rowEnd&&t.colStart===e.colStart&&t.colEnd===e.colEnd,m=(t,e)=>!(!t||!e||t.colStart>e.colEnd||e.colStart>t.colEnd||t.rowStart>e.rowEnd||e.rowStart>t.rowEnd),E=(t,e)=>{if(t===e)return!0;if(!t||!e||t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(!b(t[r],e[r]))return!1;return!0},S=(t,e,r)=>{if(!t&&!e)return null;if(!t)return r?e:{...e};if(!e)return r?t:{...t};const n=Math.min(t.colStart,e.colStart),o=Math.min(t.rowStart,e.rowStart),a=Math.max(t.colEnd,e.colEnd),i=Math.max(t.rowEnd,e.rowEnd);let l=r;return l?(l.colStart=n,l.rowStart=o,l.colEnd=a,l.rowEnd=i):l={colStart:n,rowStart:o,colEnd:a,rowEnd:i},l},v=(t,e)=>{if(!e||0===e.length)return t;const r={...t};for(let t=0;t<e.length;t++){const n=e[t];m(r,n)&&(r.rowStart=Math.min(r.rowStart,n.rowStart),r.colStart=Math.min(r.colStart,n.colStart),r.rowEnd=Math.max(r.rowEnd,n.rowEnd),r.colEnd=Math.max(r.colEnd,n.colEnd))}return r},x=[null,null],_=(t,e,r)=>{if(t[0].value===t[1].value)return e};function O(t,e=2,r,n=l,o){let a=[...t];if(e<=0||t.length<=1)return a;let s=n===i,c=0,u=!1;do{const t=a.sort(y(s?l:i));a=[],a.push(t[0]);const e=t.length;let d=0,f=t[0],p=f.colStart,w=f.rowStart,h=f.colEnd,g=f.rowEnd;for(let i=1;i<e;i++){const e=t[i];let l=!1;if(l=s?f&&w===e.rowStart&&g===e.rowEnd&&h+1===e.colStart:f&&p===e.colStart&&h===e.colEnd&&g+1===e.rowStart,l){let t={colStart:p,rowStart:w,colEnd:s?e.colEnd:h,rowEnd:s?g:e.rowEnd};if(void 0!==f.value&&(t.value=f.value),r){const a=o??[null,null];a[0]=f,a[1]=e,t=r(a,t,n)}if(t){a[d]=t,u=!0,f=t,p=f.colStart,w=f.rowStart,h=f.colEnd,g=f.rowEnd;continue}}a[++d]=e,f=e,p=f.colStart,w=f.rowStart,h=f.colEnd,g=f.rowEnd}c++,s=!s,1===c&&(u=!0)}while(c<e&&u&&a.length>1);return a}Object.freeze(Object.defineProperty({__proto__:null,EmptyCell:s,EmptyRange:c,cellToRange:(t,e)=>{if(!t)return null;let r=e;return r||(r={...t},delete r.colIndex,delete r.rowIndex),r.colStart=t.colIndex??0,r.rowStart=t.rowIndex??0,r.colEnd=t.colIndex??0,r.rowEnd=t.rowIndex??0,r},columnFirstCellComparator:w,columnFirstRangeComparator:u,createCellComparator:(t=l,e=!1)=>e?t!==i?(t,e)=>t.rowIndex===e.rowIndex?e.colIndex-t.colIndex:e.rowIndex-t.rowIndex:(t,e)=>t.colIndex===e.colIndex?e.rowIndex-t.rowIndex:e.colIndex-t.colIndex:t!==i?h:w,createConflatingRanges:(t,e=!1)=>{const r=[];let n,o,a=Number.MIN_SAFE_INTEGER,s=Number.MIN_SAFE_INTEGER;return{append:(i,l,c)=>{let u=!0;const d=void 0!==c;if(d){const r=t?t(o,c,e):o===c?c:void 0;void 0===r?u=!1:c=r}if(u&&l===s+1&&i===a)return e?n.rowEnd=l:n.colEnd=l,s=l,void(o=c);n&&r.push(n);const f=e?i:l,p=e?l:i;n={colStart:f,rowStart:p,colEnd:f,rowEnd:p},d&&(n.value=c),a=i,s=l,o=c},done:t=>(n&&(r.push(n),n=null),t?O(r,3,!0===t?_:t,e?i:l,x):r)}},createRangeComparator:y,defaultRange:(t,e,r)=>t?r?(r.colStart=t.colStart??e.colStart,r.rowStart=t.rowStart??e.rowStart,r.colEnd=t.colEnd??e.colEnd,r.rowEnd=t.rowEnd??e.rowEnd,r):{colStart:t.colStart??e.colStart,rowStart:t.rowStart??e.rowStart,colEnd:t.colEnd??e.colEnd,rowEnd:t.rowEnd??e.rowEnd}:e,extendRangeToIntersectingRanges:v,extendRangeToUnionRanges:(t,e)=>{if(!e||0===e.length)return t;let r=t,n=null;for(;!b(r,n);)n=r,r=v(n,e);return r},indexOfCoords:(t,e)=>{const r={colStart:t.colIndex,rowStart:t.rowIndex,colEnd:t.colIndex,rowEnd:t.rowIndex};for(let t=e.length-1;t>=0;t--)if(m(r,e[t]))return t;return-1},intersectRanges:(t,e,r)=>{if(!t)return r?e:{...e};if(!e)return r?t:{...t};if(!t&&!e||t.rowStart>e.rowEnd||t.rowEnd<e.rowStart||t.colStart>e.colEnd||t.colEnd<e.colStart)return null;const n=Math.max(t.colStart,e.colStart),o=Math.max(t.rowStart,e.rowStart),a=Math.min(t.colEnd,e.colEnd),i=Math.min(t.rowEnd,e.rowEnd);let l=r;return l?(l.colStart=n,l.rowStart=o,l.colEnd=a,l.rowEnd=i):l={colStart:n,rowStart:o,colEnd:a,rowEnd:i},l},isCellWithinRange:(t,e)=>!(!t||!e||t.rowIndex<e.rowStart||t.rowIndex>e.rowEnd||t.colIndex<e.colStart||t.colIndex>e.colEnd),isEqualCells:g,isEqualRanges:b,isEqualRangesArrays:E,isEqualSelectionCoords:(t,e)=>t===e||!(!t||!e)&&t.rangeIndex===e.rangeIndex&&!!g(t.cell,e.cell)&&E(t.ranges,e.ranges),isRangeWithinRange:(t,e)=>!(t.rowStart<e.rowStart||t.rowEnd>e.rowEnd||t.colStart<e.colStart||t.colEnd>e.colEnd),isRangesIntersect:m,isSingleCell:t=>!!t&&t.rowEnd===t.rowStart&&t.colStart===t.colEnd,isValidRange:t=>!(!t||"number"!=typeof t.colStart||t.colStart<0||"number"!=typeof t.colEnd||t.colEnd<t.colStart||"number"!=typeof t.rowStart||t.rowStart<0||"number"!=typeof t.rowEnd||t.rowEnd<t.rowStart),mergeRangedValues:O,rowFirstCellComparator:h,rowFirstRangeComparator:d,sanitizeRange:t=>t?{colStart:t.colIndex??t.colStart??0,rowStart:t.rowIndex??t.rowStart??0,colEnd:t.colIndex??t.colEnd??0,rowEnd:t.rowIndex??t.rowEnd??0}:null,translateRange:(t,e=-t.rowStart,r=-t.colStart,n)=>n?(n.colStart=t.colStart+r,n.rowStart=t.rowStart+e,n.colEnd=t.colEnd+r,n.rowEnd=t.rowEnd+e,n):{colStart:t.colStart+r,rowStart:t.rowStart+e,colEnd:t.colEnd+r,rowEnd:t.rowEnd+e},unionRanges:S,unionRangesArrays:(t,e,r)=>{if(!t||0===t.length)return null;if(1===t.length&&!e)return t[0];let n=t[0];for(let e=1;e<t.length;e++)n=S(n,t[e],r);return e&&(n=S(n,e,r)),n}},Symbol.toStringTag,{value:"Module"}));const I="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function j(t){return function(t){return!!t&&"object"==typeof t}(t)&&!function(t){const e=Object.prototype.toString.call(t);return"[object RegExp]"===e||"[object Date]"===e||t.$$typeof===I}(t)}function T(t,e){return!1!==e.clone&&e.isMergeableObject(t)?A((r=t,Array.isArray(r)?[]:{}),t,e):t;var r}function C(t,e,r){return t.concat(e).map(function(t){return T(t,r)})}function M(t){return Object.keys(t).concat((e=t,Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]));var e}function R(t,e){try{return e in t}catch{return!1}}function A(t,e,r){(r=r||{}).arrayMerge=r.arrayMerge||C,r.isMergeableObject=r.isMergeableObject||j,r.cloneUnlessOtherwiseSpecified=T;const n=Array.isArray(e);return n===Array.isArray(t)?n?r.arrayMerge(t,e,r):function(t,e,r){const n={};return r.isMergeableObject(t)&&M(t).forEach(function(e){n[e]=T(t[e],r)}),M(e).forEach(function(o){var a,i;R(a=t,i=o)&&(!Object.hasOwnProperty.call(a,i)||!Object.propertyIsEnumerable.call(a,i))||(R(t,o)&&r.isMergeableObject(e[o])?n[o]=function(t,e){if(!e.customMerge)return A;const r=e.customMerge(t);return"function"==typeof r?r:A}(o,r)(t[o],e[o],r):n[o]=T(e[o],r))}),n}(t,e,r):T(e,r)}A.all=function(t,e){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(t,r){return A(t,r,e)},{})};const F=Object.freeze([]),L=Object.freeze({}),P=t=>t,U=()=>"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){let e=16*Math.random()|0;return("x"===t?e:3&e|8).toString(16)}),k=(t,e)=>t===e||!(!Array.isArray(t)||!Array.isArray(e)||t.length!==e.length)&&t.every((t,r)=>t===e[r]),N=t=>"object"==typeof t&&!Array.isArray(t)&&null!==t,B=t=>"object"!=typeof t||Array.isArray(t)||null===t?t:(Object.keys(t).forEach(function(e){t[e]&&"object"==typeof t[e]?B(t[e]):null!==t[e]&&void 0!==t[e]||delete t[e],"object"==typeof t[e]&&0===Object.keys(t[e]).length&&delete t[e]}),0===Object.keys(t).length?null:t),z=(t,e)=>!(t!==e&&!k(t,e)&&!t.isEqual?.(e)),q=(t,e,r=z)=>{if(null==t||t===e)return null;if(!t||"object"!=typeof t||Array.isArray(t)||t.isImmutable?.())return r(t,e)?null:t;const n=Object.keys(t);if(0===n.length)return null;let o=!1;for(let a=0;a<n.length;a++){const i=n[a];null===q(t[i],e?.[i],r)&&(o=!0,delete t[i])}return o&&0===Object.keys(t).length?null:void 0},D="object"==typeof performance&&"function"==typeof performance.now?()=>performance.now():()=>Date.now(),$=t=>null==t,W=(t,e)=>!(e.left>t.right||e.right<t.left||e.top>t.bottom||e.bottom<t.top),V=!(typeof window>"u"||!window.document||!window.document.createElement),G={Windows:"windows",MacOS:"macos",IOS:"ios",Linux:"linux",Android:"android",Safari:"safari",Firefox:"firefox",Node:"node",Unknown:"unknown"},J=()=>{if(H())return G.Node;const t=void 0!==globalThis.navigator&&globalThis.navigator.userAgent?globalThis.navigator.userAgent.toLowerCase():"";return t?/(win32|win64|windows|wince)/i.test(t)?G.Windows:/(macintosh|macintel|macppc|mac68k|macos)/i.test(t)?G.MacOS:/(iphone|ipad|ipod)/i.test(t)?G.IOS:/android/.test(t)?G.Android:/linux/.test(t)?G.Linux:/^((?!chrome|android|).)*safari/i.test(t)?G.Safari:/^((?!chrome|android|Seamonkey).)*firefox/i.test(t)?G.Firefox:G.Unknown:G.Unknown};function H(){return typeof process<"u"&&"node"===process.release?.name||(typeof process<"u"&&process.browser,!1)}const K=(t,e=!1)=>(document.hasFocus()||e)&&(t===document.activeElement||t?.contains(document.activeElement)),Y=Object.freeze(Object.defineProperty({__proto__:null,EmptyArray:F,EmptyObject:L,OSType:G,arrayMove:function(t,e,r){const n=t.slice();return n.splice(r<0?n.length+r:r,0,n.splice(e,1)[0]),n},asNumber:t=>{const e=1*t;return Number.isFinite(e)?e:0},camelToPrettyCase:t=>1===t.length?t.toUpperCase():t.replace(/([A-Z])/g," $1").replace(/^./,function(t){return t.toUpperCase()}).trim(),canUseDOM:V,cancelTimeout:t=>{cancelAnimationFrame(t.id)},castToString:t=>null==t||void 0===t?"":"string"!=typeof t?""+t:t,cloneObject:t=>$(t)?t:JSON.parse(JSON.stringify(t)),consoleWithNoSource:(...t)=>new Promise(e=>{setTimeout(()=>{Function("console.log.apply(console, arguments)").apply(null,t),e()})}),debounce:function(t,e=300,r=!1){let n,o,a,i,l=0;function s(){let c=Date.now()-l;c<e&&c>=0?n=setTimeout(s,e-c):(n=null,r||(i=t.apply(a,o),a=o=null))}null==e&&(e=100);const c=function(){a=globalThis,o=arguments,l=Date.now();var c=r&&!n;return n||(n=setTimeout(s,e)),c&&(i=t.apply(a,o),a=o=null),i};return c.clear=function(){n&&(clearTimeout(n),n=null)},c.flush=function(){n&&(i=t.apply(a,o),a=o=null,clearTimeout(n),n=null)},c},deepEqual:function t(e,r){if(e===r)return!0;if(e&&r&&"object"==typeof e&&"object"==typeof r){if(e.constructor!==r.constructor)return!1;let n,o,a;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(o=n;0!==o--;)if(!t(e[o],r[o]))return!1;return!0}if(e instanceof Map&&r instanceof Map){if(e.size!==r.size)return!1;for(o of e.entries())if(!r.has(o[0]))return!1;for(o of e.entries())if(!t(o[1],r.get(o[0])))return!1;return!0}if(e instanceof Set&&r instanceof Set){if(e.size!==r.size)return!1;for(o of e.entries())if(!r.has(o[0]))return!1;return!0}if(ArrayBuffer.isView(e)&&ArrayBuffer.isView(r)){if(n=e.length,n!=r.length)return!1;for(o=n;0!==o--;)if(e[o]!==r[o])return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(a=Object.keys(e),n=a.length,n!==Object.keys(r).length)return!1;for(o=n;0!==o--;)if(!Object.prototype.hasOwnProperty.call(r,a[o]))return!1;for(o=n;0!==o--;){let n=a[o];if(!("_owner"===n&&e.$$typeof||t(e[n],r[n])))return!1}return!0}return e!=e&&r!=r},deepFreeze:function t(e){return Object.freeze(e),Object.keys(e).forEach(r=>{"object"!=typeof e[r]||null===e[r]||Object.isFrozen(e[r])||t(e[r])}),e},deepMerge:A,diffValues:(t,e)=>{const r={},n=Object.keys(e),o=n.length;for(let a=0;a<o;a++){const o=n[a];t[o]!==e[o]&&(void 0===t[o]?r[o]=e[o]:r[o]=t[o])}return 0===Object.keys(r).length?null:r},findEqualOrGreater:function(t,e,r=P){let n=0,o=t.length-1;for(;n<=o;){let a=Math.floor((n+o)/2),i=r(t[a]);if(i===e)return a;i<e?n=a+1:o=a-1}return n},findEqualOrLesser:function(t,e,r=P){let n=t.length-1,o=0;for(;n>=o;){let a=Math.floor((n+o)/2),i=r(t[a]);if(i===e)return a;i>e?n=a-1:o=a+1}return n},findNextStep:(t,e=!0,r=15,n=10,o=400)=>{const a=Math.max(t-n,0)+(e?1:-1);return Math.min(o,Math[e?"ceil":"floor"](a/r)*r+n)},getDPI:()=>{let t=1;return"object"==typeof window&&(t=window.devicePixelRatio||1),t},getFromPath:(t,e)=>{const r=e.split(".");let n=t;for(let t=0;t<r.length;t++){const e=r[t];if(!n)return null;let o=n[e];if("function"==typeof o&&(o=o.bind(n)()),!o||!N(o))return o;n=o}return n??null},getOS:J,hasFocus:K,isDefined:t=>null!=t,isEmpty:t=>null==t||""===t,isEqualArrays:k,isEqualBounds:(t,e)=>t===e||!(t&&!e||e&&!t)&&t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height,isEqualObjectKeys:(t,e)=>{if(t===e)return!0;if(t&&!e||e&&!t)return!1;const r=Object.keys(t);if(r.length!==Object.keys(e).length)return!1;for(let n=0;n<r.length;n++)if(t[r[n]]!==e[r[n]])return!1;return!0},isNode:H,isNullOrUndefined:$,isNumeric:t=>{const e=1*t;return Number.isFinite(e)&&"number"==typeof e},isObject:N,isPromiseLike:t=>!!t&&"function"==typeof t.then,isRectInsideRect:(t,e)=>t.top>=e.top&&t.bottom<=e.bottom&&t.left>=e.left&&t.right<=e.right,isRectIntersect:W,mergeContentful:(...t)=>{const e=t.length;if(e>0&&void 0!==t[e-1]&&!N(t[e-1]))return t[e-1];let r=t[0]||{};for(let n=1;n<e;n++)r=A(r,t[n]||{},{arrayMerge:(t,e)=>[...e]});return r},nextTick:t=>{typeof window<"u"&&"function"==typeof window.requestAnimationFrame?window.requestAnimationFrame(()=>{t()}):("function"==typeof setImmediate?setImmediate:setTimeout)(()=>{t()})},openFileDialog:(t="*.*")=>new Promise((e,r)=>{if(!V)return void r("Unable to open dialog with no dom.");const n=document.createElement("input");n.type="file",n.accept=t;let o=null,a=!1;globalThis.addEventListener?.("focus",()=>{setTimeout(()=>{o||a||(a=!0,e(null))},1e3)},{once:!0,passive:!0}),n.onchange=()=>{if(o=n.files[0],o){if(a)return void console.warn("File open detected after faux cancel.",o);e(o)}},n.autofocus=!0,n.click()}),rafThrottle:t=>{let e,r=!1,n=function(){r=!1,t(e)};return function(t){e=t,e&&e.persist&&e.persist(),r||(r=!0,requestAnimationFrame(n))}},removeEmptyProperties:B,removeEqualValues:q,removeListenerAll:t=>{if(!t)return[];for(let e=0;e<t.length;e++)t[e]&&t[e]();return[]},requestTimeout:(t,e)=>{const r=D(),n={id:requestAnimationFrame(function o(){D()-r>=e?t.call(null):n.id=requestAnimationFrame(o)})};return n},roundAccurately:(t,e=0)=>{if(null==t||!isFinite(t))return null;const r=10**e;return Number(Math.round(t*r)/r)},setToPath:(t,e,r)=>{const n=e.split(".");let o=t;if(!o)throw new Error("Can not set path to a null path.");for(let t=0;o&&t<n.length-1;t++){const e=n[t];let r=o[e];if(null==r&&(r={},o[e]=r),!N(r))throw new Error("Can not set path to a non object path.");o=r}if("number"!=typeof r&&"boolean"!=typeof r&&"string"!=typeof r&&!N(r))throw new Error(`Can not set path to ${r} that is not a a supported primitive.`);return o[n[n.length-1]]=r,t},splitNumber:t=>{let e=Math.abs(t);if(isNaN(e)||!isFinite(t))return null;let r=0|e,n=e-r,o=0,a=0,i=1;if(n>5e-8)for(;a<8&&Math.abs(o/i-n)>5e-8;)a++,i*=10,o=Math.round(n*i);return{ip:Math.trunc(t),fp:o,ipLength:Math.ceil(Math.log10(r+1)),fpLength:a}},subtractRect:(t,e,r=!1)=>{if(!e)return[t];if(!W(t,e))return[];const n=[];let o=t;const a=()=>{e.top>o.top&&e.top<o.bottom&&(n.push({...o,bottom:e.top}),o={...o,top:e.top})},i=()=>{e.bottom>o.top&&e.bottom<o.bottom&&(n.push({...o,top:e.bottom}),o={...o,bottom:e.bottom})},l=()=>{e.right>o.left&&e.right<o.right&&(n.push({...o,left:e.right}),o={...o,right:e.right})},s=()=>{e.left>o.left&&e.left<o.right&&(n.push({...o,right:e.left}),o={...o,left:e.left})};return r?(s(),l(),a(),i()):(a(),i(),l(),s()),n},textToKey:t=>t.replace(/[^a-zA-Z0-9]/g,"").toLowerCase(),throttle:function(t,e){let r=null;return(...n)=>{const o=Date.now();(!r||o-r>=e)&&(r=o,t(...n))}},toSafeJSON:function t(e){if(null===e||"object"!=typeof e)return e;if("function"==typeof e.toJSON)return e.toJSON();if(Array.isArray(e))return e.map(e=>t(e));if("function"==typeof e.toString&&e.toString!==Object.prototype.toString)return e.toString();const r={};for(const n in e)e.hasOwnProperty(n)&&(r[n]=t(e[n]));return r},transpose:t=>{if(!t)return t;const e=t.length,r=t[0].length,n=[];for(let t=0;t<r;t++)n[t]=Array(e);for(let o=0;o<e;o++)for(let e=0;e<r;e++)n[e][o]=t[o][e];return n},uuidV4:U,validEnumValue:(t,e)=>{if(!Object.values(t).includes(e))throw new Error(`Invalid type: ${e??"null"}. Must be one of: ${Object.values(e).join(", ")}.`)},whenFocus:async(t,e=!1)=>new Promise(r=>{K(t,e)?r(!0):t.addEventListener("focusin",()=>{r(!0)},{once:!0}),t.focus()})},Symbol.toStringTag,{value:"Module"}));Object.freeze(Object.defineProperty({__proto__:null,MESSAGE_ERROR_INVALID_ARG:t=>`Invalid argument: '${t}'.`},Symbol.toStringTag,{value:"Module"}));const Z=t=>{const e=new Uint8Array(t),r=e.byteLength;let n="";for(let t=0;t<r;t++)n+=String.fromCharCode(e[t]);if(typeof window<"u"&&"function"==typeof globalThis.btoa)return globalThis.btoa(n);if(typeof Buffer<"u")return Buffer.from(n,"binary").toString("base64");throw new Error("Unsupported environment")},X=t=>new Promise((e,r)=>{if(t)if(typeof FileReader<"u"){const n=new FileReader;n.onload=()=>{e(n.result)},n.onerror=()=>{r(n.error)},n.readAsText(t)}else if(typeof Buffer<"u"){const n=t=>Buffer.from(t).toString("utf-8");t.arrayBuffer().then(t=>{e(n(t))}).catch(t=>{r(t)})}else r(new Error("Unsupported environment"));else e("")});Object.freeze(Object.defineProperty({__proto__:null,DEFAULT_MIME_TYPE:"*/*",arrayBufferToBase64:Z,base64ToArrayBuffer:t=>{const e=typeof window<"u"&&"function"==typeof globalThis.atob?globalThis.atob(t):Buffer.from(t,"base64").toString("binary"),r=e.length,n=new Uint8Array(r);for(let t=0;t<r;t++)n[t]=e.charCodeAt(t);return n.buffer},blobToString:X},Symbol.toStringTag,{value:"Module"}));const Q="data:image/png;base64,",tt="Unable to resolve image.",et=t=>new Promise(async(e,r)=>{let n=null;try{n=new Image,n.src=t,n.addEventListener("load",function(){e({width:n.naturalWidth,height:n.naturalHeight})},{once:!0}),n.addEventListener("error",function(){URL.revokeObjectURL(t),r("Invalid Image")},{once:!0}),await n.decode("sync")}catch{n?.src&&URL.revokeObjectURL(n.src)}n||r(tt)}),rt="image/svg+xml";var nt,ot;Object.freeze(Object.defineProperty({__proto__:null,DATA_URL_PNG_PREFIX:Q,getImageDataUrl:(t,e=1)=>new Promise(async(r,n)=>{let o=null;try{o=new Image,o.src=t,o.addEventListener("load",function(){try{const t=document.createElement("canvas");t.width=o.naturalWidth,t.height=o.naturalHeight,t.getContext("2d").drawImage(o,0,0);const n=t.toDataURL("image/png",e);r({elemImg:o,dataUrl:n})}catch(e){URL.revokeObjectURL(t),n(e)}},{once:!0}),o.addEventListener("error",function(){URL.revokeObjectURL(t),n("Invalid Image")},{once:!0}),await o.decode("sync")}catch{o?.src&&URL.revokeObjectURL(o.src)}o||n(tt)}),loadImageDetails:async(t,e=null)=>{let r=null;const n=async()=>{try{const n=e??"image/*",o=URL.createObjectURL(new Blob([t],{type:n})),a=await et(o);r={mimeType:n,naturalDimensions:a,asUrl:o}}catch{}},o=async()=>{try{const n=(new TextDecoder).decode(t),o=URL.createObjectURL(new Blob([n],{type:rt})),a=await et(o);r={mimeType:e??rt,naturalDimensions:a,asUrl:o,asSVGText:n}}catch{}};if(e===rt?await o():e.startsWith("image/")?await n():(await n(),r||await o()),!r)throw new Error("Failed to load image");return r}},Symbol.toStringTag,{value:"Module"})),(ot=nt||(nt={})).resolveTypedUpdates=(t,e,r,n)=>{if(null===t)return t;if(void 0===t)return n;let o=t;if(e?.shorthand){const n=e?.shorthand(t,r);void 0!==n&&(o=n)}if(null!==o&&e?.getSubType){const t=e.getSubType(o);t&&(e=t)}const a=e?.properties,i=e?.arrayType??!1;let l=o;if(e&&e.merge&&l&&n)l=e.merge(l,n,r);else if(!i&&a){const t=Object.keys({...o,...n});l=null;for(let e=0;e<t.length;e++){const i=t[e];let s,c=o[i];if(void 0!==c){const t=a[i];s=t?(0,ot.resolveTypedUpdates)(c,t,r,n?.[i]):c}else s=n?.[i];null!=s&&(l=l??{},l[i]=s)}}return l};const at="The Safari browser does not support advanced copy and paste.\nCopy and paste will be limited to within the browser tab.\n\nPlease use Chrome or Edge if external copy and paste is required.",it="You do not have permissions to access the clipboard.\nAll copy and paste operations will be limited to the browser tab.",lt={Safari:"The Safari browser does not support advanced copy and paste.\nCopy and paste will be limited to within the browser tab.\n\nPlease use Chrome or Edge if external copy and paste is required.",Perms:it,PermsWrite:J()===G.Safari?at:it,PermsRead:J()===G.Safari?at:it},st=async()=>new Promise(t=>{document.hasFocus()?t():globalThis.addEventListener?.("focus",()=>{t()},{once:!0}),document.activeElement.focus?.()}),ct=async(t,e,r)=>{if(J()===G.Safari)return await r(new Error(lt.Safari));try{const n=async t=>{try{return await t()}catch(t){if(t.message?.includes("Document is not focused"))return!1;throw t}},o=await(globalThis?.navigator?.permissions?.query({name:t,allowWithoutGesture:!0,allowWithoutSanitization:!0}));let a=!1;if("prompt"===o.state&&(a=await n(e)),a||"granted"!==o.state||(a=await e()),!a)return await r(new Error(o.state))}catch(t){return"No valid data on clipboard"===t.message||"DataError"===t.name?void 0:await r(t)}},ut=async e=>{try{return await e.read({unsanitized:[t]})}catch{}return await e.read()};if(!globalThis.ClipboardItem){const t=(t,e)=>new Blob([e],{type:t});class e{constructor(e,r){this._items={},this._types=Object.keys(e);const n={},o=Object.keys(e);for(let r=0;r<o.length;r++){const a=o[r];let i=e[a];n[a]="string"==typeof i?t(a,i):i}this._items=n,this._presentationStyle=r?.presentationStyle??"unspecified"}get types(){return this._types}getType(t){return Promise.resolve(this._items[t])}supports(t){return!0}}globalThis.ClipboardItem=e}const dt=async(e,r=t)=>new Promise(async(t,n)=>{try{const n=await(async(t,e)=>{if(!t)return null;const r=await ut(t);let n=!1;for(let t=0;!n&&r&&t<r.length;t++)if(n=r[t].types.includes(e),n)return await r[t].getType(e);return n?void 0:null})(e,r);if(n){const e=new FileReader;e.onload=()=>{t(e.result)},e.onerror=()=>{t("")},e.readAsText(n)}else t("")}catch(t){n(t)}}),ft=async(e,r=t)=>{const n=await dt(e,r);if(!n)return null;let o=null;try{o=(new DOMParser).parseFromString(n,t)}catch{console.warn("Can't parse html from clipboard.")}return o},pt="clipboard-uuid",wt="web text/uuid",ht=t=>`<div style="display:none" ${pt}="${t}"/>`,yt=(e,r)=>{let n=null;try{const o=(new DOMParser).parseFromString(r,t);o.body.firstElementChild.setAttribute(pt,e),n=o.getElementsByTagName("body")[0].innerHTML}catch(t){console.warn("Can't embed uuid.",t)}return n},gt=(t,e)=>{if(!e||!t)return!1;try{const r=e.querySelectorAll(`[${pt}="${t}"]`);if(r&&1===r.length)return!0;if(e.querySelector("parsererror"))throw new Error("We are unable to parse node");return!1}catch{return!1}};class bt{constructor(t){if(void 0===t?.nativeClipboard||!0===t?.nativeClipboard)try{this._nativeClipboard=globalThis?.navigator.clipboard}catch{!0===t?.nativeClipboard&&console.warn("NativeClipboard option set to true but no native clipboard available.")}else this._nativeClipboard=!1===t?.nativeClipboard?null:t?.nativeClipboard;this._disableCheckOnFocus=t?.disableCheckOnFocus??!1,this._init()}async _checkForChanges(){this._nativeClipboard&&this._state&&!this._disableCheckOnFocus&&await ct("clipboard-read",async()=>{await st();const e=await dt(this._nativeClipboard,wt);if(!this._state||e&&e===this._state.uuid)return!0;const r=await ft(this._nativeClipboard,t);return!this._state||(gt(this._state.uuid,r)||this.clear(),!0)},async t=>{"denied"===t?.message||t.message?.includes("Document is not focused")||J()===G.Safari||console.warn("Unable to detect clipboard changes: ",t)})}_init(){const t=this;this._listeners=new Map,this._listenersCapture=new Map,this._state=null,this._nativeClipboard&&(this._onFocus=()=>{t._checkForChanges()},this._onBlur=()=>{globalThis.addEventListener?.("focus",t._onFocus,{once:!0})},globalThis.addEventListener?.("blur",this._onBlur),this._nativeClipboard.addEventListener("clipboardchange",e=>{t._checkForChanges()}))}async read(){if(!this._nativeClipboard)return this._state?.items??null;const e=this;return await ct("clipboard-read",async()=>{if(await st(),this._state?.uuid){const r=await dt(this._nativeClipboard,wt);if(r&&r===e._state.uuid)return!0;const n=await ft(this._nativeClipboard,t);if(gt(e._state?.uuid,n))return!0}return e._state={items:await ut(this._nativeClipboard),uuid:null,ref:null},this.dispatchEvent(new Event("clipboardread")),!0},async t=>{this.dispatchEvent(new Event("clipboarderrorread"))}),this._state?.items??[]}async write(t){return this._write({uuid:U(),items:t,ref:null})}async _write(n){if(!this._nativeClipboard)return this._state=n,this.dispatchEvent(new Event("clipboardwrite")),this.dispatchEvent(new Event("clipboardchange")),null;const o=this,a=[],i=n.uuid;let l=n.items??[];const s=()=>{o._state={uuid:i,ref:n.ref,items:a},o.dispatchEvent(new Event("clipboardwrite")),o.dispatchEvent(new Event("clipboardchange"))};await ct("clipboard-write",async()=>{await st(),i&&0===l.length&&(l.push(new ClipboardItem({[wt]:new Blob([i],{type:wt})})),l.push(new ClipboardItem({[t]:new Blob([ht(i)],{type:t})})));for(let n=0;n<Math.min(1,l.length);n++){const o=l[n];let s=o.types.indexOf(t),c=null;if(-1!==s){const e=await o.getType(t);c=await X(e),c&&(c=yt(i,c))}if(!c&&o.types.includes(e)){const t=await o.getType(e);if(t){let e=null;"string"==typeof t?(console.warn("text as string",t),e=t):e=await X(t),e&&(c=`<div ${pt}="${i}">${e}</div>`)}}if(!c&&o.types.includes(r)){const t=await o.getType(r),e=Z(await t.arrayBuffer());c=`<div ${pt}="${i}"><img src="${Q+e}"/></div>`}!c&&i&&(c=ht(i));const u=new Blob([c??""],{type:t}),d={};for(let t=0;t<o.types.length;t++){const e=o.types[t];d[e]=t===s?u:o.getType(e)}c&&-1===s&&(d[t]=u),i&&(d[wt]=new Blob([i],{type:wt})),a.push(new ClipboardItem(d))}try{a&&0!==a.length?await this._nativeClipboard.write(a):await(async t=>{t&&await t.writeText("")})(this._nativeClipboard)}catch(t){t.message?.includes("Document is not focused")||console.warn("Unable to write to native clipboard: ",t)}return s(),!0},async t=>{this.dispatchEvent(new Event("clipboarderrorwrite")),s()})}async writeReference(n){if(!n)return void this.clear();let o=null;const a={};try{const t=await(n.toText?.())??null;t&&(a[e]=new Blob([t??""],{type:e}))}catch(t){o=t}try{const e=await(n.toHtml?.())??null;e&&(a[t]=new Blob([e],{type:t}))}catch(t){o=t,console.warn("export to html",t)}try{const t=await(n.toImage?.())??null;t&&(a[r]=t)}catch(t){o=t,console.warn("export to png",t)}const i=this._write({uuid:U(),ref:n,items:Object.keys(a).length>0?[new ClipboardItem(a)]:null});if(o)throw o;return i}clear(t=!1){this._state&&(this._state=null,t&&this._write({uuid:null,ref:null,items:null}),this.dispatchEvent(new Event("clipboardwrite")),this.dispatchEvent(new Event("clipboardchange")))}async readReference(){return await this.read(),this._state?.ref??null}readText(){return new Promise(async(t,r)=>{const n=await this.read();let o=null;for(let t=0;!o&&n&&t<n.length;t++)n[t].types.includes(e)&&(o=await n[t].getType(e));if(!o)return void t("");const a=new FileReader;a.onload=()=>{t(a.result)},a.readAsText(o),a.onerror=t=>{r(t)}})}async writeText(t){const r=[new ClipboardItem({[e]:new Blob([t],{type:e})})];return this._write({uuid:U(),items:r,ref:null})}addEventListener(t,e,r={}){const n=r?.capture?this._listenersCapture:this._listeners;let o=n.get(t);o||(o=new Map,n.set(t,o)),o.set(e,"boolean"==typeof r?{}:r)}dispatchEvent(t){if(!t)return;const e=e=>{const r=e.get(t.type);r&&r.forEach((e,n)=>{try{"function"==typeof n?n(t):n.handleEvent&&n.handleEvent(t),e.once&&r.delete(n)}catch(t){console.warn(t)}})};return e(this._listenersCapture),e(this._listeners),!0}removeEventListener(t,e,r){const n=r?.capture?this._listenersCapture:this._listeners,o=n.get(t);o&&(o.delete(e),0===o.size&&n.delete(t))}close(){globalThis.removeEventListener?.("focus",this._onFocus),globalThis.removeEventListener?.("blur",this._onBlur)}}var mt;(mt=bt||(bt={})).ErrorMessages=lt,mt.Global=new mt;let Et=null,St=null,vt=null;const xt=Object.freeze({compileTypescript:async function(t){if(!t?.source)return null;if(St&&Y.deepEqual(St,t))return Et;const e=await async function(){if(vt)return vt;const{TypeScriptCompiler:t}=await Promise.resolve().then(()=>require("./BdHdXCz_K1djQgI4.cjs"));return vt=new t,vt}(),r=await e.compileModule(t);return Et=r,St=t,r}}),_t=Object.freeze(Object.defineProperty({__proto__:null,ScriptingUtils:xt},Symbol.toStringTag,{value:"Module"}));exports.$=Y,exports.i=_t;
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./B9jxuOg1CXcmbi9J.cjs");exports.fromBufferJSON=async(r,t)=>{let n=r;(function(e){if(e.byteLength<4)return!1;const r=new Uint8Array(e),t={gzip:[31,139],zip:[80,75,3,4],bz2:[66,90,104],br:[206,178,207,129]},n=Object.keys(t);for(let e=0;e<n.length;e++){const o=n[e],i=t[o];let f=!0;for(let e=0;e<i.length;e++)if(r[e]!==i[e]){f=!1;break}if(f)return o}return!1})(n)&&(n=await async function(e,r="gzip"){let t;"undefined"!=typeof SharedArrayBuffer&&e instanceof SharedArrayBuffer?(t=new ArrayBuffer(e.byteLength),new Uint8Array(t).set(new Uint8Array(e))):t=e;const n=new Blob([t]).stream(),o=new DecompressionStream(r),i=n.pipeThrough(o);return(await new Response(i).blob()).arrayBuffer()}(n));let o=(new TextDecoder).decode(n);const i=JSON.parse(o),f={...t?.createWorkbookOptions??{},json:i};return new e.Iy(f)},exports.toBufferJSON=async(e,r)=>{const t=await e.toJSON(),n=r?.whiteSpace??0;let o;r?.beforeWrite?.(e,t),o=0===n?JSON.stringify(t):function(e,r=2){const t=[];function n(e){const n=r*e;return void 0===t[n]&&(t[n]=" ".repeat(n)),t[n]}return function e(r,t,o,i){if(null==r||"object"!=typeof r)return JSON.stringify(r);const f=n(t),s=n(t+1);if(Array.isArray(r)){const n=r.length;if(0===n)return"[]";if(0!==o)return JSON.stringify(r);let i="[\n";for(let f=0;f<n;f++)i+=s+e(r[f],t+1,o+1,!0),f<n-1&&(i+=",\n");return i+="\n"+f+"]",i}const a=Object.keys(r),u=a.length;if(0===u)return"{}";if(!(o<2))return JSON.stringify(r);let c="{\n";i||(o=0);for(let n=0;n<u;n++){const i=a[n];c+=s+JSON.stringify(i)+": "+e(r[i],t+1,o,!1),n<u-1&&(c+=",\n")}return c+="\n"+f+"}",c}(e,0,0,!1)}(t,n);let i=(new TextEncoder).encode(o).buffer;const f=r?.compress??!0;return f&&(i=await async function(e,r="gzip"){let t;"undefined"!=typeof SharedArrayBuffer&&e instanceof SharedArrayBuffer?(t=new ArrayBuffer(e.byteLength),new Uint8Array(t).set(new Uint8Array(e))):t=e;const n=new ReadableStream({start(e){e.enqueue(t),e.close()}}),o=new CompressionStream(r),i=n.pipeThrough(o);return(await new Response(i).blob()).arrayBuffer()}(i,"string"==typeof f?f:void 0)),i};
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});exports.default={COMPLEX:{s:"Converts real and imaginary coefficients into a complex number",p:{realNum:{d:"is the real coefficient of the complex number"},iNum:{d:"is the imaginary coefficient of the complex number"},suffix:{d:"is the suffix for the imaginary component of the complex number",v:"i"}}},IMABS:{s:"Returns the absolute value (modulus) of a complex number",p:{inumber:{d:"is a complex number for which you want the absolute value"}}},IMAGINARY:{s:"Returns the imaginary coefficient of a complex number",p:{inumber:{d:"is a complex number for which you want the imaginary coefficient"}}},IMARGUMENT:{s:"Returns the argument q, an angle expressed in radians",p:{inumber:{d:"is a complex number for which you want the argument"}}},IMCONJUGATE:{s:"Returns the complex conjugate of a complex number",p:{inumber:{d:"is a complex number for which you want the conjugate"}}},IMCOS:{s:"Returns the cosine of a complex number",p:{inumber:{d:"is a complex number for which you want the cosine"}}},IMCOSH:{s:"Returns the hyperbolic cosine of a complex number",p:{inumber:{d:"is a complex number for which you want the hyperbolic cosine"}}},IMCOT:{s:"Returns the cotangent of a complex number",p:{inumber:{d:"is a complex number for which you want the cotangent"}}},IMCSC:{s:"Returns the cosecant of a complex number",p:{inumber:{d:"is a complex number for which you want the cosecant"}}},IMCSCH:{s:"Returns the hyperbolic cosecant of a complex number",p:{inumber:{d:"is a complex number for which you want the hyperbolic cosecant"}}},IMDIV:{s:"Returns the quotient of two complex numbers",p:{inumber1:{d:"is the complex numerator or dividend"},inumber2:{d:"is the complex denominator or divisor"}}},IMEXP:{s:"Returns the exponential of a complex number",p:{inumber:{d:"is a complex number for which you want the exponential"}}},IMLN:{s:"Returns the exponential of a complex number",p:{inumber:{d:"is a complex number for which you want the exponential"}}},IMLOG10:{s:"Returns the base-10 logarithm of a complex number",p:{inumber:{d:"is a complex number for which you want the common logarithm"}}},IMLOG2:{s:"Returns the base-2 logarithm of a complex number",p:{inumber:{d:"is a complex number for which you want the base-2 logarithm"}}},IMPOWER:{s:"Returns the base-2 logarithm of a complex number",p:{inumber:{d:"is a complex number for which you want the base-2 logarithm"},number:{}}},IMPRODUCT:{s:"Returns the product of 1 to 255 complex numbers",p:{inumber:{d:"inumber1,inumber2,... Inumber1, Inumber2,... are from 1 to 255 complex numbers to multiply."}}},IMREAL:{s:"Returns the real coefficient of a complex number",p:{inumber:{d:"is a complex number for which you want the real coefficient"}}},IMSEC:{s:"Returns the secant of a complex number",p:{inumber:{d:"is a complex number for which you want the secant"}}},IMSECH:{s:"Returns the hyperbolic secant of a complex number",p:{inumber:{d:"is a complex number for which you want the hyperbolic secant"}}},IMSIN:{s:"Returns the sine of a complex number",p:{inumber:{d:"is a complex number for which you want the sine"}}},IMSINH:{s:"Returns the hyperbolic sine of a complex number",p:{inumber:{d:"is a complex number for which you want the hyperbolic sine"}}},IMSQRT:{s:"Returns the square root of a complex number",p:{inumber:{d:"is a complex number for which you want the square root"}}},IMSUB:{s:"Returns the difference of two complex numbers",p:{inumber1:{d:"is the complex number from which to subtract inumber2"},inumber2:{d:"is the complex number to subtract from inumber1"}}},IMSUM:{s:"Returns the sum of complex numbers",p:{inumber:{d:"inumber1,inumber2,... are from 1 to 255 complex numbers to add"}}},IMTAN:{s:"Returns the tangent of a complex number",p:{inumber:{d:"is a complex number for which you want the tangent"}}}};
@@ -1,7 +0,0 @@
1
- /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.4.13
3
- *
4
- * (C) 2025-present SheetXL Inc. & Michael T. Ford
5
- * License: The license can be found at https://www.sheetxl.com/license.
6
- */
7
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./B9jxuOg1CXcmbi9J.cjs");exports.fromBufferCSV=async(t,r)=>{const{papaParseConfig:n,setValuesOptions:o,createWorkbookOptions:s}=r??{},a=await Promise.resolve().then(()=>require("./BMaq_2S3IFrE5XeJ.cjs")).then(e=>e.p),i=(new TextDecoder).decode(t);let l=-1;const c=new e.Iy(s),u=c.getSelectedSheet().getEntireRange().startIncrementalUpdates({orientation:e.e.Orientation.Row}),d=r?.onProgress;let p=0;const f={...n,transform:(e,t)=>{n?.transform&&(e=n.transform(e,t));const r=t;0===r&&l++;let o=e??"";return u.pushAt(l,r,o),p++,p%1e5==0&&d?.(p),e}};return a.parse(i,f).data,u.apply({textParser:!0,...o}),c},exports.toBufferCSV=async(e,t)=>{const{trimLeadingBlankRow:r=!0,trimLeadingBlankColumn:n=!0,excludeHidden:o=!1,sheetKey:s=null,papaParseConfig:a={}}=t||{},i=await Promise.resolve().then(()=>require("./BMaq_2S3IFrE5XeJ.cjs")).then(e=>e.p);if(!e)throw new Error("workbook must be specified");let l=null;if(null===s?l=e.getSelectedSheet():"number"==typeof s?l=e.getSheets().search()[s]:"string"==typeof s&&(l=e.getSheets().getByName(s)),!l)throw new Error("invalid sheetKey specified");let c=null;const u=[];let d=null,p=l.getUsedRange({excludeHidden:o});if(!p)throw new Error("Nothing to export");if(!r||!n){const e=r?p.getRowStart():0,t=n?p.getColumnStart():0;p=p.getOffsetTo(e,t)}p.forEach((e,t)=>{const r=t.getCoords(),n=t.getCell();c!==r.rowIndex&&(d&&u.push(d),d=[],c=r.rowIndex);const o=n.toTextUnformatted()??"";d.push(o)},{includeEmpty:!0,address:null}),d&&u.push(d);const f={...a},g=i.unparse(u,f);return(new TextEncoder).encode(g).buffer};