@sheetxl/studio-vanilla 0.7.28-beta.4 → 0.8.0-beta.10

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 (539) hide show
  1. package/browser/esm/-LoBx7J6imeqaxCq.mjs +236 -0
  2. package/browser/esm/8-jmVNNbOHuXFdVQ.mjs +392 -0
  3. package/{cdn/assets/DJSXXWTUJGbXqLLx.js → browser/esm/B00ixdmb8-O5ijEp.mjs} +1 -1
  4. package/browser/esm/{ByJMrAYRARLc7uZQ2.mjs → B0Wjc3lwtjKMwnvn.mjs} +27 -29
  5. package/browser/esm/B3Ii8x6RquHW1jMc.mjs +299 -0
  6. package/{cdn/assets/BF9yh58xfvR0KbSo.js → browser/esm/B7iV5qzlmJlM2nQv.mjs} +179 -202
  7. package/{cdn/assets/C7xBBqvPqat9oEft2.js → browser/esm/BAH_cWcQEIBKWnl6.mjs} +101 -55
  8. package/browser/esm/BAdRecWK1maKGOZd.mjs +142 -0
  9. package/browser/esm/BBjgqNlHm-ssbSAG.mjs +47 -0
  10. package/browser/esm/BCWTI3jdTPG37r8W.mjs +46 -0
  11. package/{cdn/assets/CJGlwQusOCSy9ZAb.js → browser/esm/BMlPFJ1glExv-70Z.mjs} +5 -5
  12. package/browser/esm/{BrUe0MnOhxzeOngn2.mjs → BN2d5U1nw7pRtOrn.mjs} +1 -1
  13. package/browser/esm/BNIInlJQbJjH8B6G.mjs +84250 -0
  14. package/browser/esm/BPrHgyAsm2Htx15h.mjs +67 -0
  15. package/browser/esm/BRfat1fV3oGLwvin.mjs +76 -0
  16. package/browser/esm/{CXDtDYyREwoFwtMJ2.mjs → BSCja5yvevmKZPBB.mjs} +1 -1
  17. package/browser/esm/BThOwSja2ra4xejQ.mjs +6306 -0
  18. package/browser/esm/BVJUL2HhoedhbwVy.mjs +77 -0
  19. package/{cdn/assets/MHuhAgQAA8zcnWkd2.js → browser/esm/BWo1N4YbK_zGU0nu.mjs} +1 -1
  20. package/browser/esm/B_HB4y7AA88Z775Z.mjs +91 -0
  21. package/browser/esm/BaEZmurTZnX_yfKD.mjs +1082 -0
  22. package/browser/esm/BeMLfv6hWo15VCIL.mjs +239 -0
  23. package/browser/esm/{BjYIAiuzZbD-dk822.mjs → BhkeuRcx8RlLCQ5E.mjs} +1 -1
  24. package/browser/esm/Bi5-feQLtwpV6Ai8.mjs +57 -0
  25. package/browser/esm/BlPn_DXaEXOPxMxC.mjs +540 -0
  26. package/{cdn/assets/DY9zG4TdF0FAs_QP2.js → browser/esm/BsUrrzAgfyAdcCJW.mjs} +28 -13
  27. package/{cdn/assets/CBC_MJL6Bwk7bzQz2.js → browser/esm/BtGmrIqU9W1L8zfZ.mjs} +1 -1
  28. package/browser/esm/BtdRr6IbtO6Gypsk.mjs +27 -0
  29. package/browser/esm/BwOxnbR61WFJwy0A.mjs +607 -0
  30. package/browser/esm/BxhKgo_rPQ2d12HT.mjs +35 -0
  31. package/browser/esm/By3a43qwWICwXRmw.mjs +8035 -0
  32. package/browser/esm/{Cd8G1nX1dKzp-mho2.mjs → ByUcqyCNfqi5Mm7w.mjs} +2 -2
  33. package/{cdn/assets/DP9sLYfGGWMDI7hL2.js → browser/esm/ByqhqEMBLrnkaPKE.mjs} +26 -26
  34. package/browser/esm/{5LJ1sC7IPn109Ien.mjs → C-0viTjg1dT2F-sk.mjs} +2 -2
  35. package/browser/esm/{DnMUizHKSRwWpO_7.mjs → C3r_9RqlWrEmlXZ1.mjs} +37 -3
  36. package/browser/esm/C4VT6lNbpaDXCpBb.mjs +8820 -0
  37. package/browser/esm/{B3tC7wY_kUGXf5sb2.mjs → C5EKgE9Owsc_juw-.mjs} +1 -1
  38. package/{cdn/assets/BzktrYJH7SQ9GyUI2.js → browser/esm/C9NyIoUahFiyRCxP.mjs} +2 -2
  39. package/{cdn/assets/D5BuXc-kVnr6Xiae2.js → browser/esm/CBdNC7BOfc5TewHU.mjs} +1 -1
  40. package/browser/esm/CCd192S7yVpc6iOe.mjs +118 -0
  41. package/browser/esm/{Eszk9OugmYOhaS2s.mjs → CDsuiN--qdALFyql.mjs} +179 -202
  42. package/{cdn/assets/DtkqR-Hu7K4agnCs2.js → browser/esm/CFvKDDbrL3wpXnQH.mjs} +1 -1
  43. package/browser/esm/{DjS4iUli-T3uuUfK.mjs → CHMqT9DzYKTxPfP6.mjs} +2 -2
  44. package/{cdn/assets/BetL7yI63lEdQ0gM2.js → browser/esm/CMxbiQ5J79M3n1tk.mjs} +604 -405
  45. package/{cdn/assets/B4fSPDN923nqCDVE.js → browser/esm/CQOyeq_-pg3CM-uA.mjs} +6 -7
  46. package/browser/esm/CQuv-nk5jtXUfu7C.mjs +7 -0
  47. package/browser/esm/CRAzVh3CaAa16avf.mjs +521 -0
  48. package/browser/esm/{g8dDbkwbYjhKWJM22.mjs → CSEMxasVyGCekxKf.mjs} +6 -7
  49. package/browser/esm/CTI-mCJbJzitJZwj.mjs +25 -0
  50. package/browser/esm/{DrKUGkrCTKZHu8XC.mjs → CTdFZ_I-41Vr6Dy4.mjs} +1 -1
  51. package/browser/esm/CVcCUfSRsiZ1-6hs.mjs +119 -0
  52. package/browser/esm/CVxlfyE-gnJM8hOz.mjs +177 -0
  53. package/browser/esm/CWJzHmEgahdOfNjH.mjs +527 -0
  54. package/browser/esm/CWoPWWRwMgkGPFFP.mjs +7393 -0
  55. package/browser/esm/CZOJogyZqMfUxcXj.mjs +1141 -0
  56. package/{cdn/assets/Dy5Z2XIqS7-0tdjc2.js → browser/esm/CaS8_J5HfBRk5_Nw.mjs} +86 -86
  57. package/browser/esm/CdeXXPCp5cCYvGyD.mjs +14 -0
  58. package/browser/esm/{B9t9fF8FNCLomgK_.mjs → CfltjY8hY-RPwwpd.mjs} +582 -551
  59. package/browser/esm/Chr_TXM-48IsK8Va.mjs +155 -0
  60. package/browser/esm/{Ca6NSkWoi9DvRJjQ.mjs → ClJvUf8aR8vNC_3Z.mjs} +6 -6
  61. package/browser/esm/Clx8vvGDOTWK_M2l.mjs +484 -0
  62. package/browser/esm/CnWNviK4qlX2GVl6.mjs +73 -0
  63. package/browser/esm/{BsP1iPcd49wYIIoP.mjs → Cpza4AeltEVHASij.mjs} +3 -3
  64. package/browser/esm/{Dwko6HB2zePBBeBu2.mjs → CqoHxlGpZ3yzPj5V.mjs} +22 -21
  65. package/browser/esm/{XBb7Mxqf0beXaSJt.mjs → CtZPEkaldpJpoGtW.mjs} +2197 -2011
  66. package/browser/esm/CvWGtHslTdesJik-.mjs +69 -0
  67. package/browser/esm/Cw-4uoMuq_m7ziA3.mjs +36 -0
  68. package/browser/esm/CxCipDFamYSOctBo.mjs +299 -0
  69. package/browser/esm/Cy00y9b9j17Txyv1.mjs +466 -0
  70. package/browser/esm/D-55MlIn7Wo_hdjI.mjs +905 -0
  71. package/browser/esm/D-9f1NKcpuYSgond.mjs +412 -0
  72. package/browser/esm/D-KZpU6HMaP4VUva.mjs +357 -0
  73. package/browser/esm/D0r2MPlWLnStWJNW.mjs +622 -0
  74. package/browser/esm/{CXlA71yGA1Hqvp_S.mjs → D2aQPiGg0ZoMYzuf.mjs} +22 -21
  75. package/{cdn/assets/KJzdwvEWwCwAXuo4.js → browser/esm/D2coM-dNrlLpnUu5.mjs} +1000 -1010
  76. package/browser/esm/D7CGuQcwpkiuesEI.mjs +229 -0
  77. package/browser/esm/{BQt5lpPjssz4Lvhs.mjs → D7DWH3-5fBNx8jtc.mjs} +182 -132
  78. package/browser/esm/D7kkzIFPqKBK94kO.mjs +17952 -0
  79. package/browser/esm/D88StfSjZJi5E8Xb.mjs +5153 -0
  80. package/browser/esm/D8exjrado9TJrBp-.mjs +1946 -0
  81. package/browser/esm/DAE3Kv0Vs0VuBecT.mjs +32 -0
  82. package/browser/esm/DAprxR00V9qvNLL2.mjs +6607 -0
  83. package/browser/esm/DEvZj68igS7Q8SZE.mjs +763 -0
  84. package/browser/esm/DG3BfxRsbjey-B7E.mjs +441 -0
  85. package/browser/esm/DGCOPbZbEmt0x9z0.mjs +155 -0
  86. package/browser/esm/DGcvio2uhlrsE3ZY.mjs +236 -0
  87. package/browser/esm/DGuynZFJ9tqziqQs.mjs +92 -0
  88. package/browser/esm/DJqj66SnUcx0QmSN.mjs +15 -0
  89. package/browser/esm/DLhK_oSGg71ry6-m.mjs +86 -0
  90. package/browser/esm/{B_U_UpQXdbjNRthb.mjs → DLqc11Pf8vaE4Q5B.mjs} +2 -2
  91. package/browser/esm/DNCqTF9EbT-U1TdV.mjs +20 -0
  92. package/browser/esm/{DM4g0nYgYXgI44dL2.mjs → DNaPo7BQu6hr1fWq.mjs} +1 -1
  93. package/{cdn/assets/DRAYZ0SGlbCLkftR.js → browser/esm/DQEjvIGMgEkiaP6J.mjs} +1 -1
  94. package/browser/esm/{Ykh10IaXTKA2XWot.mjs → DQIRFXG4MveFkK3I.mjs} +1 -1
  95. package/{cdn/assets/DJk14sSSnSHiEXZ7.js → browser/esm/DRm1R4uVOkaMfXNI.mjs} +51 -11
  96. package/browser/esm/DSf-Db1h8rlW2A6n.mjs +122 -0
  97. package/browser/esm/DSviq1TNoiIAGW7W.mjs +32 -0
  98. package/{cdn/assets/CuIUyLNDoHvYMJaQ2.js → browser/esm/DTn9oYyiIYgyijAk.mjs} +110 -83
  99. package/browser/esm/{BxecIrskOMQZB-Xc.mjs → DVpi1vC8ixXvUQG_.mjs} +3 -3
  100. package/browser/esm/{esX6dx06TUUL-cRt.mjs → DWgp4t9N9u0eWthH.mjs} +1 -1
  101. package/browser/esm/{DLArQtAbWAarI8od2.mjs → DXo8mR6t5HGsmTcu.mjs} +1 -1
  102. package/browser/esm/DZRmBfjn2TgOTu5e.mjs +3604 -0
  103. package/browser/esm/{BJQfvwvEke-uN0_02.mjs → D_7BWdsu8yejhUxy.mjs} +184 -11
  104. package/browser/esm/D_thhK0vSez8Yfle.mjs +798 -0
  105. package/browser/esm/DaMKWQQTgIF08cT7.mjs +105 -0
  106. package/browser/esm/Db6Tvr45TS9J5Qsb.mjs +259 -0
  107. package/browser/esm/{Bc2Dp6W4U_22cv7c.mjs → Dc2ZwgbIEgYWwAsF.mjs} +1 -1
  108. package/{cdn/assets/BGWyNjrM55ce-D1o.js → browser/esm/DeUXRggj8Oz9ru_i.mjs} +2 -2
  109. package/{cdn/assets/CmYCYFWjq9KP6xw7.js → browser/esm/DfESVLC8CAi8m8A7.mjs} +6 -6
  110. package/browser/esm/{hsy1zALC1oNNm5Sf.mjs → DjdkGy-EI1kSo226.mjs} +7 -5
  111. package/browser/esm/DjtXfgbmXjUAoG0y.mjs +58 -0
  112. package/browser/esm/DlOVZD0OiAjouS6-.mjs +3563 -0
  113. package/browser/esm/Dme0qpRinBnhzp53.mjs +519 -0
  114. package/browser/esm/DnyZmrwPxShyeUjm.mjs +849 -0
  115. package/browser/esm/DoS1sE431fEhdOQb.mjs +216 -0
  116. package/browser/esm/DqBj-9o7UdXu4qhb.mjs +33 -0
  117. package/{cdn/assets/FVJ1akngxeMiYwPa.js → browser/esm/DrI_S0A9TQvriTua.mjs} +1 -1
  118. package/browser/esm/Dv2z0548SZRGTN3l.mjs +149 -0
  119. package/browser/esm/{Bjx-9lUaScF5-Hki2.mjs → Dv8aQFTTaQBJKDDk.mjs} +2 -5
  120. package/browser/esm/DvWCBuY0jAL-RmJV.mjs +3363 -0
  121. package/browser/esm/Dwxz0s23ra1tRtsH.mjs +7 -0
  122. package/{cdn/assets/D4aK0uTRJQpM63922.js → browser/esm/DxcRLd7wmBGDgJsA.mjs} +1 -1
  123. package/{cdn/assets/CIgn8uIPaadIJP4a2.js → browser/esm/DxwprgjYhcmfDbXH.mjs} +24 -24
  124. package/browser/esm/{DENx9Ts-f8adXw3Y2.mjs → Dy44qJVkwNseMG-3.mjs} +1 -1
  125. package/browser/esm/DyeY6XwMQ_XNUHiW.mjs +89 -0
  126. package/browser/esm/{BOMct7uvqiNJIS63.mjs → ErIXJFPDFXwGEL8V.mjs} +2 -2
  127. package/browser/esm/{C4vqrW3EmJDy1otX.mjs → FO1Jezau486fH4kN.mjs} +7 -6
  128. package/browser/esm/FjNOhkR7-JAIaRP6.mjs +19 -0
  129. package/browser/esm/H-JnJQMcZQbpvjdb.mjs +2706 -0
  130. package/browser/esm/J9i3r1fU0H10b2hX.mjs +1001 -0
  131. package/browser/esm/LAbUYeLiPG8z9cmA.mjs +277 -0
  132. package/browser/esm/M7RYrx20B_Yl_euJ.mjs +400 -0
  133. package/browser/esm/{PzCXbVRf1jOHVOAw.mjs → PtGiIWFBYP-ujLmf.mjs} +1 -1
  134. package/browser/esm/RLU85PsAYtKPUf6N.mjs +71 -0
  135. package/browser/esm/{CTwLETvNO4KeXbkK2.mjs → RfHd1JATBlcsfLPv.mjs} +5 -5
  136. package/{cdn/assets/Bce8ZTUCpXr5Y_zl2.js → browser/esm/SNze-adFJwKuGSQW.mjs} +48 -2
  137. package/browser/esm/UTZcodQydbuMfCOS.mjs +171 -0
  138. package/{cdn/assets/BGAXiHOiX_PZ1ww1.js → browser/esm/VwGokBaawZfZiV2X.mjs} +1 -1
  139. package/browser/esm/WMYR09ZOR8JbZEnx.mjs +4748 -0
  140. package/browser/esm/{DOIVDuyf7YyJZjcD.mjs → ZbGPiRN9j0629JJQ.mjs} +2 -2
  141. package/{cdn/assets/BPAEbeXV75XIAS4n.js → browser/esm/ZxsFYopF0_WWqw4Q.mjs} +1 -1
  142. package/browser/esm/_MPToH4oMe4rhTdZ.mjs +63 -0
  143. package/browser/esm/{L6LjzOx1G9Idjtxa2.mjs → _t0Mx-mUFVtmVNkU.mjs} +2 -2
  144. package/{cdn/assets/CgsQuAbp76UOAPHm2.js → browser/esm/_zRV52yhE4gPf3XI.mjs} +211 -189
  145. package/browser/esm/aUREGNA8H7p4BpMK.mjs +33 -0
  146. package/browser/esm/cwuYkcKwsKkPe3gG.mjs +598 -0
  147. package/browser/esm/{CY4ANhbzXqZMJPnL2.mjs → djM9mJznx8GzVq51.mjs} +16 -15
  148. package/browser/esm/{6A8iYjFWJzx5PaTP2.mjs → f1OJemsiZnbwnds-.mjs} +16 -15
  149. package/{cdn/assets/DOsKUeLPwFIdzQv32.js → browser/esm/i0P63Wd0RRlgJotb.mjs} +1 -1
  150. package/browser/esm/{BZSAb1WGbwagUKGv2.mjs → iC69oOND5T8khIWf.mjs} +18 -17
  151. package/browser/esm/index.mjs +644 -48
  152. package/browser/esm/{pFBVGSvmImMMDMuJ.mjs → kVBPUUnVyZfb8pf3.mjs} +52 -52
  153. package/browser/esm/{BZkd8LNLgEd5WQXO2.mjs → lqknEt3DTma5Juxs.mjs} +69 -4
  154. package/browser/esm/mZ92wNrHVpYdli1U.mjs +182 -0
  155. package/browser/esm/{CBuulf8RrSItPZJi.mjs → pKc_RPdZPLAgvNDh.mjs} +2 -2
  156. package/{cdn/assets/D2Ls6urWeByV5W-B.js → browser/esm/pc49xtHdprXZLW2X.mjs} +1 -1
  157. package/browser/esm/px-aQ8dMjiWag_pV.mjs +167 -0
  158. package/browser/esm/qYca4mdySLkACfo1.mjs +37 -0
  159. package/browser/esm/r2Az2Yc4_qj2-sn0.mjs +398 -0
  160. package/browser/esm/{CHmSnCPoww1StSta.mjs → rY-dC3WB558TIbum.mjs} +4 -4
  161. package/browser/esm/rkTVQiYG3wd8oPom.mjs +2452 -0
  162. package/browser/esm/sDVzjXC1mS5rucF5.mjs +2447 -0
  163. package/browser/esm/sxxbiJiCMOW2Eivd.mjs +24952 -0
  164. package/{cdn/assets/BZXvEddjoz4C8y4w.js → browser/esm/vGKTE7yjY8y-XnsW.mjs} +16 -11
  165. package/{cdn/assets/BRBHACVjnV1_6VLQ.js → browser/esm/x6GcENwqoUVbd60j.mjs} +1 -1
  166. package/{cdn/assets/CsKCqLuggHhYC93k.js → browser/esm/ycmpAs4kQfeh78Pa.mjs} +1 -1
  167. package/browser/esm/ztqpWR65YYMZ3EPk.mjs +811 -0
  168. package/cdn/assets/0vqRTRN0wEzWao1c.js +522 -0
  169. package/cdn/assets/514mXPTuNvdNgw35.js +412 -0
  170. package/{browser/esm/B6bX01HNxwBooBTX2.mjs → cdn/assets/7Sg0ht_ZCMJkPurt.js} +89 -87
  171. package/cdn/assets/{CY7qR8ENX314HrrD.js → 7i4WSxDsu2ApJJ2_.js} +6 -6
  172. package/cdn/assets/AjMG7Fb9r4Fk7Hsf.js +78 -0
  173. package/{browser/esm/DJSXXWTUJGbXqLLx.mjs → cdn/assets/B00ixdmb8-O5ijEp.js} +1 -1
  174. package/cdn/assets/{ByJMrAYRARLc7uZQ.js → B0Wjc3lwtjKMwnvn.js} +27 -29
  175. package/cdn/assets/B27vTQlxbHhSQJx8.js +24953 -0
  176. package/cdn/assets/B3NWCYKXucbHhOix.js +93 -0
  177. package/{browser/esm/C7xBBqvPqat9oEft.mjs → cdn/assets/BAH_cWcQEIBKWnl6.js} +101 -55
  178. package/cdn/assets/BAdRecWK1maKGOZd.js +142 -0
  179. package/cdn/assets/BB4MW8sSYEXjPvvf.js +64 -0
  180. package/cdn/assets/BBjgqNlHm-ssbSAG.js +47 -0
  181. package/cdn/assets/BI6afPOpgNYkzIWv.js +6609 -0
  182. package/cdn/assets/{Dgt8kua8CYlMRfdw.js → BIsbcP5RXRU2XPfx.js} +2 -2
  183. package/{browser/esm/CJGlwQusOCSy9ZAb2.mjs → cdn/assets/BMlPFJ1glExv-70Z.js} +5 -5
  184. package/cdn/assets/{BrUe0MnOhxzeOngn.js → BN2d5U1nw7pRtOrn.js} +1 -1
  185. package/cdn/assets/BNsqqoZY7a4N1wWC.js +905 -0
  186. package/cdn/assets/BPrHgyAsm2Htx15h.js +67 -0
  187. package/cdn/assets/{CXDtDYyREwoFwtMJ.js → BSCja5yvevmKZPBB.js} +1 -1
  188. package/{browser/esm/MHuhAgQAA8zcnWkd.mjs → cdn/assets/BWo1N4YbK_zGU0nu.js} +1 -1
  189. package/cdn/assets/B_3Musz0q2MSZ5H-.js +799 -0
  190. package/cdn/assets/Ba8taVvLslFcKS72.js +119 -0
  191. package/cdn/assets/{B0N6rTGGJN2DZPaf.js → BeQ95CzwR65il0CK.js} +2 -2
  192. package/cdn/assets/BelX6bvQPsGuo-x3.js +7 -0
  193. package/cdn/assets/{DGWhm91XZlY1GWHe2.js → Bgbi7BFR3rN5qj51.js} +22 -21
  194. package/cdn/assets/BgyY4zVPZSXljoCZ.js +14 -0
  195. package/cdn/assets/{BjYIAiuzZbD-dk82.js → BhkeuRcx8RlLCQ5E.js} +1 -1
  196. package/cdn/assets/BlIZ30huelIxNo6S.js +91 -0
  197. package/cdn/assets/BlPn_DXaEXOPxMxC.js +540 -0
  198. package/cdn/assets/BoFx07POTorOb5g-.js +7393 -0
  199. package/cdn/assets/{hClmI7sWeaBbHo3W2.js → BpZ7P0CO148rR4zW.js} +24 -23
  200. package/cdn/assets/BsTFy_iJXJYmaO3Z.js +763 -0
  201. package/cdn/assets/{DiKc6jzGM1isrN02.js → Bsn-tUx172sEG2kR.js} +59 -47
  202. package/{browser/esm/CBC_MJL6Bwk7bzQz.mjs → cdn/assets/BtGmrIqU9W1L8zfZ.js} +1 -1
  203. package/cdn/assets/BuYS_ZjSlcvWZ1JC.js +8035 -0
  204. package/cdn/assets/BvlfKrfrDhE9Jw4d.js +598 -0
  205. package/cdn/assets/BwOxnbR61WFJwy0A.js +607 -0
  206. package/cdn/assets/BxqXOiOyI_XiOmvN.js +156 -0
  207. package/cdn/assets/{Cd8G1nX1dKzp-mho.js → ByUcqyCNfqi5Mm7w.js} +2 -2
  208. package/{browser/esm/D8zyGG6yt4CsyA8K.mjs → cdn/assets/BzbP4jaN13wC9aSi.js} +58 -55
  209. package/cdn/assets/{5LJ1sC7IPn109Ien.js → C-0viTjg1dT2F-sk.js} +2 -2
  210. package/cdn/assets/C0CeCYdLWLjySEFe.js +123 -0
  211. package/cdn/assets/{DjfBSoaKM-vtbeqT.js → C32co-XulWTkEKrW.js} +2 -2
  212. package/cdn/assets/{DnMUizHKSRwWpO_72.js → C3r_9RqlWrEmlXZ1.js} +37 -3
  213. package/cdn/assets/{B3tC7wY_kUGXf5sb.js → C5EKgE9Owsc_juw-.js} +1 -1
  214. package/cdn/assets/C6INLvBy8kdzFpsX.js +2447 -0
  215. package/cdn/assets/C7fu6LrSMBlHqwUy.js +46 -0
  216. package/{browser/esm/BzktrYJH7SQ9GyUI.mjs → cdn/assets/C9NyIoUahFiyRCxP.js} +2 -2
  217. package/{browser/esm/D5BuXc-kVnr6Xiae.mjs → cdn/assets/CBdNC7BOfc5TewHU.js} +1 -1
  218. package/cdn/assets/{DJHOKENCVOJMx3aE2.js → CCvBdPu7W2ZF6A9J.js} +9 -9
  219. package/{browser/esm/DmqS0kz7jvlOw3qr.mjs → cdn/assets/CDAYVaQYywqaxg4O.js} +28 -13
  220. package/cdn/assets/CEYyp6Qrr_IopxpL.js +22597 -0
  221. package/cdn/assets/CFBgmXap8kmumhoz.js +622 -0
  222. package/{browser/esm/DtkqR-Hu7K4agnCs.mjs → cdn/assets/CFvKDDbrL3wpXnQH.js} +1 -1
  223. package/{browser/esm/BBhB25AlKEzdoI0V.mjs → cdn/assets/CHMqT9DzYKTxPfP6.js} +2 -2
  224. package/cdn/assets/CILUMtSddGz7WXEv.js +240 -0
  225. package/cdn/assets/{BynqRVXFRplO7XgC.js → CIyaijfp6itgRpFM.js} +95 -87
  226. package/cdn/assets/{DpNYiOK112bFC3KK2.js → CL6Tgu_rUO6G-fyq.js} +183 -10
  227. package/cdn/assets/CMVTwWHsRgyfSEDM.js +300 -0
  228. package/{browser/esm/BetL7yI63lEdQ0gM.mjs → cdn/assets/CMxbiQ5J79M3n1tk.js} +604 -405
  229. package/cdn/assets/COMOqucXq7X1vi0P.js +230 -0
  230. package/{browser/esm/B4fSPDN923nqCDVE2.mjs → cdn/assets/CQOyeq_-pg3CM-uA.js} +6 -7
  231. package/cdn/assets/{DaX0_AkJxkaUnNT7.js → CRXSrbGNABtzf532.js} +141 -126
  232. package/cdn/assets/{g8dDbkwbYjhKWJM2.js → CSEMxasVyGCekxKf.js} +6 -7
  233. package/cdn/assets/CSIZpJClc66_20kP.js +849 -0
  234. package/cdn/assets/CTI-mCJbJzitJZwj.js +25 -0
  235. package/cdn/assets/{DrKUGkrCTKZHu8XC.js → CTdFZ_I-41Vr6Dy4.js} +1 -1
  236. package/cdn/assets/CTvPIYWTcjwlJeEA.js +237 -0
  237. package/cdn/assets/CU5cKipVT1X8Xz7F.js +156 -0
  238. package/cdn/assets/CVcCUfSRsiZ1-6hs.js +119 -0
  239. package/cdn/assets/CWJzHmEgahdOfNjH.js +527 -0
  240. package/cdn/assets/CZOJogyZqMfUxcXj.js +1141 -0
  241. package/{browser/esm/DER7-kADXFnTmK-32.mjs → cdn/assets/CakrxSS_RXtKmcUX.js} +123 -94
  242. package/cdn/assets/{Bj8bWbLg1IY965tK.js → CbTN0q6XnYGJqyEp.js} +2215 -2029
  243. package/cdn/assets/{DQhvG3cP0HPB6giA2.js → Cfg4Dtndwurxv9LM.js} +8 -8
  244. package/{browser/esm/BgwHVPZp494SgQ0d2.mjs → cdn/assets/ChAKLV5zrGAHAof2.js} +44 -42
  245. package/cdn/assets/{BO2NRW9sjHGE9tg-2.js → CsrTRThObSryov1b.js} +182 -132
  246. package/cdn/assets/Cv5PLuhEmh5IDHjb.js +75 -0
  247. package/cdn/assets/Cw-4uoMuq_m7ziA3.js +36 -0
  248. package/cdn/assets/Cw7AJWd0S2sjRmr6.js +6309 -0
  249. package/cdn/assets/CwqRA5h1u92Cyit-.js +7 -0
  250. package/cdn/assets/Cy00y9b9j17Txyv1.js +466 -0
  251. package/cdn/assets/{CnfGgjuCEyX-PYs_2.js → D-bNmX0QsA8SuT0m.js} +33 -32
  252. package/{browser/esm/PAu9erpoOTNzgNbN.mjs → cdn/assets/D-yz3V2UC54rwctD.js} +16 -11
  253. package/cdn/assets/D32D_biNXRCZ24vG.js +87 -0
  254. package/cdn/assets/D8DghdqjOtBzO2Wx.js +35 -0
  255. package/cdn/assets/DAE3Kv0Vs0VuBecT.js +32 -0
  256. package/cdn/assets/DCnWyVXikb_8Dat3.js +61 -0
  257. package/cdn/assets/DHH_uKVzQ_kRYO2N.js +57 -0
  258. package/cdn/assets/DHugYwX4_ZyqGn-C.js +1947 -0
  259. package/cdn/assets/DJqj66SnUcx0QmSN.js +15 -0
  260. package/cdn/assets/{DM4g0nYgYXgI44dL.js → DNaPo7BQu6hr1fWq.js} +1 -1
  261. package/cdn/assets/DOHh3pUXxMM09UY5.js +3604 -0
  262. package/cdn/assets/DONxZZT2Iwu7psS5.js +27 -0
  263. package/{browser/esm/DRAYZ0SGlbCLkftR2.mjs → cdn/assets/DQEjvIGMgEkiaP6J.js} +1 -1
  264. package/cdn/assets/{Ykh10IaXTKA2XWot2.js → DQIRFXG4MveFkK3I.js} +1 -1
  265. package/cdn/assets/DQjxp9lDP9DzP8ah.js +357 -0
  266. package/{browser/esm/DJk14sSSnSHiEXZ72.mjs → cdn/assets/DRm1R4uVOkaMfXNI.js} +51 -11
  267. package/cdn/assets/DSXJHEORGmMQX_Mb.js +8391 -0
  268. package/cdn/assets/DSviq1TNoiIAGW7W.js +32 -0
  269. package/cdn/assets/{BxecIrskOMQZB-Xc.js → DVpi1vC8ixXvUQG_.js} +3 -3
  270. package/cdn/assets/{esX6dx06TUUL-cRt.js → DWgp4t9N9u0eWthH.js} +1 -1
  271. package/cdn/assets/{DLArQtAbWAarI8od.js → DXo8mR6t5HGsmTcu.js} +1 -1
  272. package/cdn/assets/DYvBgX17ZerZSHEJ.js +300 -0
  273. package/cdn/assets/DZRm4H75lnEtOG8e.js +260 -0
  274. package/cdn/assets/D_pMOq6FdH4RSBLc.js +3364 -0
  275. package/cdn/assets/{Bc2Dp6W4U_22cv7c2.js → Dc2ZwgbIEgYWwAsF.js} +1 -1
  276. package/cdn/assets/DckmFyHxGX4Y1gOq.js +70 -0
  277. package/cdn/assets/{D-tQc4bi3FzGVnFg.js → De2z8LdHaWRFiR5T.js} +179 -202
  278. package/{browser/esm/BGWyNjrM55ce-D1o2.mjs → cdn/assets/DeUXRggj8Oz9ru_i.js} +2 -2
  279. package/{browser/esm/CmYCYFWjq9KP6xw72.mjs → cdn/assets/DfESVLC8CAi8m8A7.js} +6 -6
  280. package/cdn/assets/DicTo_3G-KZyWDiE.js +1084 -0
  281. package/cdn/assets/{hsy1zALC1oNNm5Sf.js → DjdkGy-EI1kSo226.js} +7 -5
  282. package/cdn/assets/DjtXfgbmXjUAoG0y.js +58 -0
  283. package/cdn/assets/DlpgIJxNq2V4gdDq.js +74 -0
  284. package/cdn/assets/{Bh4hZt6639QZusIG.js → Dp-GJXOMz_b8qAxD.js} +2 -2
  285. package/cdn/assets/DqBj-9o7UdXu4qhb.js +33 -0
  286. package/{browser/esm/FVJ1akngxeMiYwPa.mjs → cdn/assets/DrI_S0A9TQvriTua.js} +1 -1
  287. package/cdn/assets/DuAbY54w5gJpQgss.js +84250 -0
  288. package/cdn/assets/{Bjx-9lUaScF5-Hki.js → Dv8aQFTTaQBJKDDk.js} +2 -5
  289. package/cdn/assets/DviEoeWW0EvDg1hr.js +149 -0
  290. package/{browser/esm/D4aK0uTRJQpM6392.mjs → cdn/assets/DxcRLd7wmBGDgJsA.js} +1 -1
  291. package/cdn/assets/DxisV9_27l_WU-nk.js +21 -0
  292. package/cdn/assets/{DENx9Ts-f8adXw3Y.js → Dy44qJVkwNseMG-3.js} +1 -1
  293. package/cdn/assets/ENtt4kmaU9mJfVEp.js +236 -0
  294. package/cdn/assets/{C4vqrW3EmJDy1otX.js → FO1Jezau486fH4kN.js} +7 -6
  295. package/cdn/assets/FjNOhkR7-JAIaRP6.js +19 -0
  296. package/{browser/esm/BmTSjuGI87QqMA-a.mjs → cdn/assets/G5z0uVlyF6CLw_PA.js} +179 -202
  297. package/cdn/assets/H-JnJQMcZQbpvjdb.js +2706 -0
  298. package/cdn/assets/J3hutJxqQiHENpIe.js +392 -0
  299. package/cdn/assets/J9i3r1fU0H10b2hX.js +1001 -0
  300. package/cdn/assets/{PzCXbVRf1jOHVOAw.js → PtGiIWFBYP-ujLmf.js} +1 -1
  301. package/cdn/assets/PzWqv-oXxEuzKdaT.js +484 -0
  302. package/cdn/assets/QJ4AkDD269D1MzmI.js +89 -0
  303. package/cdn/assets/{CTwLETvNO4KeXbkK.js → RfHd1JATBlcsfLPv.js} +5 -5
  304. package/{browser/esm/Bce8ZTUCpXr5Y_zl.mjs → cdn/assets/SNze-adFJwKuGSQW.js} +48 -2
  305. package/cdn/assets/UTZcodQydbuMfCOS.js +171 -0
  306. package/{browser/esm/DSWdYe7SDB5cYWo5.mjs → cdn/assets/VCiu_neIjCTg2NUa.js} +998 -1006
  307. package/{browser/esm/BGAXiHOiX_PZ1ww12.mjs → cdn/assets/VwGokBaawZfZiV2X.js} +1 -1
  308. package/cdn/assets/W1d6GQyySAHrtjEu.js +3563 -0
  309. package/cdn/assets/ZSYS1J3uR7UQuHwZ.js +217 -0
  310. package/{browser/esm/BPAEbeXV75XIAS4n2.mjs → cdn/assets/ZxsFYopF0_WWqw4Q.js} +1 -1
  311. package/cdn/assets/{L6LjzOx1G9Idjtxa.js → _t0Mx-mUFVtmVNkU.js} +2 -2
  312. package/cdn/assets/aHTKr1ijZ6bRi3Zg.js +33 -0
  313. package/cdn/assets/anQDUZhHMDPi1eha.js +812 -0
  314. package/cdn/assets/{Dr1U0I01_KIa9vgR2.js → dn69mDhY7Xcc91kF.js} +20 -19
  315. package/cdn/assets/fm3mUdTDo-STB36M.js +4749 -0
  316. package/cdn/assets/gpQ4FdJMbIScKnS_.js +400 -0
  317. package/cdn/assets/{DeFts-aGqB-RDuV1.js → hg8WYI0Yy4WPPPoP.js} +28 -27
  318. package/{browser/esm/DOsKUeLPwFIdzQv32.mjs → cdn/assets/i0P63Wd0RRlgJotb.js} +1 -1
  319. package/cdn/assets/lWY3TbG2NDscy9He.js +72 -0
  320. package/cdn/assets/{BZkd8LNLgEd5WQXO.js → lqknEt3DTma5Juxs.js} +69 -4
  321. package/cdn/assets/mK8HcIZyXkOTvL6E.js +2453 -0
  322. package/{browser/esm/D2Ls6urWeByV5W-B2.mjs → cdn/assets/pc49xtHdprXZLW2X.js} +1 -1
  323. package/cdn/assets/px-aQ8dMjiWag_pV.js +167 -0
  324. package/cdn/assets/qYca4mdySLkACfo1.js +37 -0
  325. package/{browser/esm/DHQcJqD-EtJ0Efug2.mjs → cdn/assets/w5IQWbJETgHhqMsY.js} +33 -31
  326. package/cdn/assets/wM7DzeOpoEGBVDBe.js +441 -0
  327. package/{browser/esm/BRBHACVjnV1_6VLQ2.mjs → cdn/assets/x6GcENwqoUVbd60j.js} +1 -1
  328. package/cdn/assets/xlXDq-qoj7eOE6_T.js +5153 -0
  329. package/{browser/esm/CsKCqLuggHhYC93k2.mjs → cdn/assets/ycmpAs4kQfeh78Pa.js} +1 -1
  330. package/cdn/index.js +2 -2
  331. package/package.json +13 -14
  332. package/browser/cjs/1XrWGMP3GmsQOMIX.cjs +0 -1
  333. package/browser/cjs/49_x589Na12sizKK2.cjs +0 -1
  334. package/browser/cjs/4nReftSsKWmnRdtf2.cjs +0 -1
  335. package/browser/cjs/507hQYooKKjnRzsZ2.cjs +0 -1
  336. package/browser/cjs/B4JJfKSI4ppwU8552.cjs +0 -1
  337. package/browser/cjs/B7_pDFYCVzt-3hUs.cjs +0 -1
  338. package/browser/cjs/BAxVLKkxFgI6cXnR2.cjs +0 -1
  339. package/browser/cjs/BClFnd-voK5qaz1I.cjs +0 -88
  340. package/browser/cjs/BEJFcqVMDMKOvs11.cjs +0 -1
  341. package/browser/cjs/BF-38Z7Z0FZOPl192.cjs +0 -1
  342. package/browser/cjs/BF14ZEAnaqxXroSj.cjs +0 -1
  343. package/browser/cjs/BFdq8CHyR6FQvmQA2.cjs +0 -1
  344. package/browser/cjs/BK0SCfN_VZYqBxoQ2.cjs +0 -1
  345. package/browser/cjs/BKXFdLiztqEHIjQ_2.cjs +0 -1
  346. package/browser/cjs/BVN0uo1XwTCtE2mh.cjs +0 -7
  347. package/browser/cjs/BWDfauDHqB6U_2ka2.cjs +0 -1
  348. package/browser/cjs/B_WV3e3yexp3dKaz.cjs +0 -9
  349. package/browser/cjs/BbEwESVyRYXzMlW7.cjs +0 -5
  350. package/browser/cjs/BjgiE9MBDkKiRL6q.cjs +0 -3
  351. package/browser/cjs/BnccBYHCCq9TGFx4.cjs +0 -8
  352. package/browser/cjs/Btc0Nzu40VYOpzLX2.cjs +0 -1
  353. package/browser/cjs/BvG8N7G_8CXIAlT-.cjs +0 -1
  354. package/browser/cjs/BwLx9ix5Sq7suAYP2.cjs +0 -1
  355. package/browser/cjs/Byl4bQWpLnjthChn2.cjs +0 -7
  356. package/browser/cjs/BzsAbsb35hYT3xUc.cjs +0 -5
  357. package/browser/cjs/C-bW8lKUTFFUVap4.cjs +0 -1
  358. package/browser/cjs/C0hGnOYkvrwxaGrw.cjs +0 -1
  359. package/browser/cjs/C2uDl8VIJqh58YF_2.cjs +0 -1
  360. package/browser/cjs/C7GpcB_YgM-RLa2P.cjs +0 -1
  361. package/browser/cjs/C8GZf3UAOhfisYCs.cjs +0 -1
  362. package/browser/cjs/C9C-pr-T_ThweQX9.cjs +0 -1
  363. package/browser/cjs/C9L-xibuJ434Mqqq2.cjs +0 -1
  364. package/browser/cjs/CEXs4eRDOv4EjbSw2.cjs +0 -1
  365. package/browser/cjs/CEpXnHhrczUmIwMa2.cjs +0 -1
  366. package/browser/cjs/CHFOXPbNUaeZbrXn.cjs +0 -1
  367. package/browser/cjs/CHMgm0vAbEBS1mVW.cjs +0 -1
  368. package/browser/cjs/CJYewYJ5Z3iojl7J.cjs +0 -1
  369. package/browser/cjs/CLXzYSmhCHV5LQh7.cjs +0 -1
  370. package/browser/cjs/CN-dCAHVcxuMSyFz.cjs +0 -1
  371. package/browser/cjs/CPcBvw4ZPwHVTUZF.cjs +0 -1
  372. package/browser/cjs/CRx1WvmgBjT8WVyB2.cjs +0 -1
  373. package/browser/cjs/CV4KQsHluMqo1I2Q2.cjs +0 -1
  374. package/browser/cjs/CW-b31_-r-_raT8Y.cjs +0 -1
  375. package/browser/cjs/CXlzsh_WHCOsErJ12.cjs +0 -1
  376. package/browser/cjs/CZfNBCd62H_Jpkhl.cjs +0 -12
  377. package/browser/cjs/C_7w8EJZpHw8ueuq.cjs +0 -1
  378. package/browser/cjs/C_IEgjM-hSJCv6Gm.cjs +0 -1
  379. package/browser/cjs/CbLXP9WY38wTcGn5.cjs +0 -10
  380. package/browser/cjs/CeF0DZ-k4DB8M47I.cjs +0 -1
  381. package/browser/cjs/Ck7Tc5npWk73wrF3.cjs +0 -57
  382. package/browser/cjs/Clu7XiAsCB48GDXN.cjs +0 -1
  383. package/browser/cjs/CnZfa45XxA-9Jhmp.cjs +0 -1
  384. package/browser/cjs/CnjaTz8HJXStwuH8.cjs +0 -1
  385. package/browser/cjs/CoiPEZabJyiXxLta.cjs +0 -1
  386. package/browser/cjs/CpJJh4UnFl1_qFui.cjs +0 -1
  387. package/browser/cjs/CrZlUtdX1h2RUnCP.cjs +0 -1
  388. package/browser/cjs/Cty5pi0fwToP1GWe.cjs +0 -7
  389. package/browser/cjs/Cu0UCwSpRK4OnCuP.cjs +0 -1
  390. package/browser/cjs/CxWeFfNAUvhHe9F-.cjs +0 -21
  391. package/browser/cjs/D-o-mlG9tYSuZrvy2.cjs +0 -1
  392. package/browser/cjs/D8-KovdJ0LjxqCe2.cjs +0 -1
  393. package/browser/cjs/DAA0zpvkrMOLDPxr.cjs +0 -1
  394. package/browser/cjs/DAXgAEDtRrsWAePT.cjs +0 -1
  395. package/browser/cjs/DCIlWcGDrp-5PDoA2.cjs +0 -1
  396. package/browser/cjs/DDPxHIqx8aIbqTRE.cjs +0 -1
  397. package/browser/cjs/DDnGLOLTqLFsdUDS.cjs +0 -1
  398. package/browser/cjs/DEOu_cHJ1FfTA9R_2.cjs +0 -1
  399. package/browser/cjs/DG-AY_xO8RKHtEBE.cjs +0 -2
  400. package/browser/cjs/DG2kqsWRUtVugjay.cjs +0 -1
  401. package/browser/cjs/DIbdDzNf_3S2RYZN.cjs +0 -1
  402. package/browser/cjs/DLYEQZzAGuSAmJsp.cjs +0 -6
  403. package/browser/cjs/DM7-R_ltoLbA9jde2.cjs +0 -1
  404. package/browser/cjs/DMp9wql2kbZKAbGe.cjs +0 -3
  405. package/browser/cjs/DNCC-QNp2I7saV-I.cjs +0 -1
  406. package/browser/cjs/DNKyaSruDogoBd2H.cjs +0 -1
  407. package/browser/cjs/DQTBgNqDHInvxrwS.cjs +0 -1
  408. package/browser/cjs/DYqvGm5rx1DB53p7.cjs +0 -1
  409. package/browser/cjs/DZSvmqU8nRas1uz62.cjs +0 -1
  410. package/browser/cjs/DcHxh5QxfVitzdhv.cjs +0 -1
  411. package/browser/cjs/DgGGzl7jq3i7Cqfi.cjs +0 -1
  412. package/browser/cjs/Dkgu60euhL6wPoYa2.cjs +0 -1
  413. package/browser/cjs/DsFZgtSQpC75d1M02.cjs +0 -1
  414. package/browser/cjs/DsgqbxMOVQmAFSDy2.cjs +0 -1
  415. package/browser/cjs/DtaFdoK4CppKRF6F2.cjs +0 -20
  416. package/browser/cjs/Dtc_8P-koQRmNT2s.cjs +0 -33
  417. package/browser/cjs/Du4jBiFxRIF1OjD42.cjs +0 -1
  418. package/browser/cjs/Dx79LP1-YCQg8B87.cjs +0 -1
  419. package/browser/cjs/EeOVMRq7TuptFKTc2.cjs +0 -1
  420. package/browser/cjs/FUM_3mQlC-6WPjkT.cjs +0 -4
  421. package/browser/cjs/IbciPMJP2Pam3ERm.cjs +0 -1
  422. package/browser/cjs/J7LQgueGGNUE9emR.cjs +0 -1
  423. package/browser/cjs/JfM6P_qoQQTWakZf2.cjs +0 -1
  424. package/browser/cjs/Kvn916ebqGc4t6hv2.cjs +0 -1
  425. package/browser/cjs/M19oMY91yZxf2WAR.cjs +0 -1
  426. package/browser/cjs/NcNz8RfT5V889CMT.cjs +0 -10
  427. package/browser/cjs/NzAMMcPT7SETmqPg.cjs +0 -2
  428. package/browser/cjs/QK9BfdSZPLmyRpGi2.cjs +0 -1
  429. package/browser/cjs/X1LnR885SNQaK5HZ.cjs +0 -1
  430. package/browser/cjs/Y78-VwYSNffwXRVz2.cjs +0 -2
  431. package/browser/cjs/Ytzw6iUYx5f19wfK.cjs +0 -9
  432. package/browser/cjs/aONv0Ys3C8xmnaR8.cjs +0 -1
  433. package/browser/cjs/bM25C5avKgBAJVfk2.cjs +0 -1
  434. package/browser/cjs/bpcQTcfzGVBK-rfT2.cjs +0 -1
  435. package/browser/cjs/fqTQ_p3ehzUvc1tF2.cjs +0 -1
  436. package/browser/cjs/h3dw1jAp2J5Pu4p32.cjs +0 -1
  437. package/browser/cjs/index.cjs +0 -79
  438. package/browser/cjs/iyvcAhhnDFxkR8tW.cjs +0 -1
  439. package/browser/cjs/jIxFDc3EQDDXisAC2.cjs +0 -1
  440. package/browser/cjs/jev6VGWTdgEgm4Yk2.cjs +0 -1
  441. package/browser/cjs/kqP-W5qRIy-d-ChZ.cjs +0 -1
  442. package/browser/cjs/lEQC21-Sk4lwHy2r2.cjs +0 -1
  443. package/browser/cjs/mXzhcays1ok40iiU.cjs +0 -1
  444. package/browser/cjs/n4ZQ0-3uSrEsInbg.cjs +0 -1
  445. package/browser/cjs/ppSJKdLn646BZOzg.cjs +0 -1
  446. package/browser/cjs/sFD2bsTPq558FCMx.cjs +0 -126
  447. package/browser/cjs/stXrcKZOIHl0fq5U2.cjs +0 -2
  448. package/browser/cjs/xQ6-wbTw5UzZUM1Y.cjs +0 -1
  449. package/browser/cjs/zEytED4Eleo5DVvS.cjs +0 -1
  450. package/browser/cjs/z_rZE1OHFPpdGBh42.cjs +0 -1
  451. package/browser/esm/-9NsA_4pZqcEQBX7.mjs +0 -383
  452. package/browser/esm/B-dSKzg5shPDd733.mjs +0 -25
  453. package/browser/esm/BPwpFe7c1-F62aAU.mjs +0 -518
  454. package/browser/esm/BT2mYkpZGrhWovkv2.mjs +0 -238
  455. package/browser/esm/BUKNpzG26V0YaAzW.mjs +0 -219
  456. package/browser/esm/BaIe3fLfPLw3FbYP2.mjs +0 -1149
  457. package/browser/esm/BgNWvKfVoVgVVDB4.mjs +0 -134
  458. package/browser/esm/Bj3gyDL2ZJUDcxt72.mjs +0 -82
  459. package/browser/esm/BkBT2LB95lonIiBu.mjs +0 -152
  460. package/browser/esm/BqMvXD8dX4ksYjnj.mjs +0 -53
  461. package/browser/esm/Bz3-FDGVU67Izdnv2.mjs +0 -106
  462. package/browser/esm/C3dXBjR3SrDCdJlm.mjs +0 -105
  463. package/browser/esm/CElACTFuqPAnCAMJ.mjs +0 -99
  464. package/browser/esm/CFVzVz9BCRBowBea.mjs +0 -6104
  465. package/browser/esm/CFtsbobCiLpZIzCh.mjs +0 -34
  466. package/browser/esm/CJ-lOo2cXlcYrg2P.mjs +0 -8255
  467. package/browser/esm/CRsnKeHAnKrWvuG52.mjs +0 -6713
  468. package/browser/esm/CbJ_xQftC08KrH3E2.mjs +0 -20
  469. package/browser/esm/CfjG7gHJ4oN60Clj.mjs +0 -4423
  470. package/browser/esm/CpEgh9EOkeMvwAuj.mjs +0 -304
  471. package/browser/esm/CxKAnYBWCYMkUpnr.mjs +0 -824
  472. package/browser/esm/Cye91DfKIFwRdDpF.mjs +0 -224
  473. package/browser/esm/DFQGftDcmDwUGxV8.mjs +0 -27
  474. package/browser/esm/DGfzktq0BrIwcb8j.mjs +0 -7813
  475. package/browser/esm/D_8B8jIlshd3eTIO2.mjs +0 -471
  476. package/browser/esm/DdaO25i-WWFSh1W0.mjs +0 -3188
  477. package/browser/esm/DdtDlBp6KJZjL28o.mjs +0 -4745
  478. package/browser/esm/DhW7Cqyuxk7D6zsW.mjs +0 -509
  479. package/browser/esm/DhgwMDb052opCiAA.mjs +0 -11273
  480. package/browser/esm/DimkHq0_x-d4uNdV.mjs +0 -50758
  481. package/browser/esm/DnCkPg9-xb3RvxD-.mjs +0 -44
  482. package/browser/esm/DuJ_gK9f35IbKDd6.mjs +0 -3651
  483. package/browser/esm/Duo6t8_BzIiBDrFm.mjs +0 -28435
  484. package/browser/esm/DxxlSejA2S6YUPWD.mjs +0 -2211
  485. package/browser/esm/DygUxASTETZM60uN2.mjs +0 -47
  486. package/browser/esm/FAHIw2t7_M_rvRio.mjs +0 -149
  487. package/browser/esm/HFqcMD9nTL0jdLxT.mjs +0 -15
  488. package/browser/esm/N-koparnupMSl92y.mjs +0 -2687
  489. package/browser/esm/O982fBwJ80FSdhad.mjs +0 -615
  490. package/browser/esm/evPbHV86yom22yGf2.mjs +0 -16301
  491. package/browser/esm/ohVj-y1gCC9PEHJI.mjs +0 -87
  492. package/browser/esm/s4trFf5sOSGNEzr3.mjs +0 -235
  493. package/cdn/assets/6L6HfOFw1xzxXtf22.js +0 -2211
  494. package/cdn/assets/B-dSKzg5shPDd733.js +0 -25
  495. package/cdn/assets/B2BvBxjz3Kfii_Gn2.js +0 -6715
  496. package/cdn/assets/B3ZyfwskutLZMYfl2.js +0 -44
  497. package/cdn/assets/B4492m5zRjz4JWIo2.js +0 -4745
  498. package/cdn/assets/B6Y_HasaiihQLVYz2.js +0 -3188
  499. package/cdn/assets/B8ok93z6wOu1Mo5H.js +0 -27
  500. package/cdn/assets/BIPjogMyMmLRly43.js +0 -106
  501. package/cdn/assets/BOTU30yJHbaNehFS.js +0 -176
  502. package/cdn/assets/B_U_UpQXdbjNRthb.js +0 -24
  503. package/cdn/assets/BaIe3fLfPLw3FbYP2.js +0 -1149
  504. package/cdn/assets/BdhFhDEa7Xed6dFE.js +0 -28436
  505. package/cdn/assets/BdmCBWTVHb7KuHxO2.js +0 -2687
  506. package/cdn/assets/Bfd3T36ocASPZddR.js +0 -3651
  507. package/cdn/assets/BjN8kU7URKZwGlmk2.js +0 -4423
  508. package/cdn/assets/BouCHi6QnBrUDYkx.js +0 -16301
  509. package/cdn/assets/CDqMmEdh_CPaFCCi2.js +0 -2199
  510. package/cdn/assets/CLhSKL0Xdm8miSTy.js +0 -34
  511. package/cdn/assets/CSkSOhGT8E29E2Nh2.js +0 -99
  512. package/cdn/assets/CXrcgTVB77CopjOJ.js +0 -518
  513. package/cdn/assets/Cb71rZAQvCk3wnfp.js +0 -220
  514. package/cdn/assets/CbJ_xQftC08KrH3E.js +0 -20
  515. package/cdn/assets/CblzazoiTtSuaAkj.js +0 -225
  516. package/cdn/assets/CdPxVRKpCOqCDHI8.js +0 -824
  517. package/cdn/assets/CimYGZTVXcjbjrBU2.js +0 -83
  518. package/cdn/assets/CpEgh9EOkeMvwAuj.js +0 -304
  519. package/cdn/assets/D57KcDfTbBzf_NGr.js +0 -150
  520. package/cdn/assets/DEFEOS3OuA23llF92.js +0 -472
  521. package/cdn/assets/DEyeWdXLwDRo2yYf2.js +0 -107
  522. package/cdn/assets/DW2yQm-sEcHogX7E.js +0 -8258
  523. package/cdn/assets/Dhq9e6LCpmlIkFod.js +0 -220
  524. package/cdn/assets/DjS4iUli-T3uuUfK.js +0 -24
  525. package/cdn/assets/DjS4iUli-T3uuUfK2.js +0 -24
  526. package/cdn/assets/DlLXCXDokJ72EW-E.js +0 -236
  527. package/cdn/assets/DoJfPxuL3zziG4p62.js +0 -134
  528. package/cdn/assets/Dq7WxMef5CTJ47QI2.js +0 -48
  529. package/cdn/assets/HFqcMD9nTL0jdLxT2.js +0 -15
  530. package/cdn/assets/HeznPoDlSj26Q4lq.js +0 -11274
  531. package/cdn/assets/JL1xk8XqkuTOA_as2.js +0 -239
  532. package/cdn/assets/NZO3-fDBtqhmCsbB2.js +0 -50758
  533. package/cdn/assets/Wb48SedqaKMZnxym.js +0 -7404
  534. package/cdn/assets/Wsgx1I_j1chJ6hwn.js +0 -152
  535. package/cdn/assets/XSUr59k0gaFIS1Qf2.js +0 -53
  536. package/cdn/assets/llvXNxZaCMnYqvSm.js +0 -6104
  537. package/cdn/assets/omgRvCRxe7suvog8.js +0 -510
  538. package/cdn/assets/xMskoOI2CK9-AmBF2.js +0 -44
  539. package/cdn/assets/zrS_ERBQML_OXJ4J.js +0 -87
@@ -0,0 +1,89 @@
1
+ /**
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.8.0-beta.10
3
+ *
4
+ * (C) 2026-present SheetXL Inc. & Michael T. Ford
5
+ * License: The license can be found at https://www.sheetxl.com/license.
6
+ */
7
+ var e = class {
8
+ constructor(e) {
9
+ this._worker = null, this._nextId = 1, this._pendingRequests = /* @__PURE__ */ new Map(), this._workerFactory = e;
10
+ }
11
+ start() {
12
+ if (typeof Worker > "u") throw Error("Web Workers are not supported in this environment.");
13
+ return this._worker || (this._worker = this._workerFactory(), this._worker.onmessage = (e) => {
14
+ let { id: t, result: n, error: r } = e.data, i = this._pendingRequests.get(t);
15
+ if (i) {
16
+ if (this._pendingRequests.delete(t), r) {
17
+ let e = Error(r.message);
18
+ e.stack = r.stack, r.cause && (e.cause = r.cause), i.reject(e);
19
+ } else i.resolve(n);
20
+ }
21
+ }, this._worker.onerror = (e) => {
22
+ console.error("Worker error:", e), this._pendingRequests.forEach((t) => {
23
+ t.reject(/* @__PURE__ */ Error(`Worker failed: ${e.message}`));
24
+ }), this._pendingRequests.clear(), this._worker = null;
25
+ }), Promise.resolve();
26
+ }
27
+ execute(e) {
28
+ if (!this._worker) throw Error("Worker is not initialized. Call start() first.");
29
+ let t = this._nextId++;
30
+ return new Promise((n, r) => {
31
+ this._pendingRequests.set(t, {
32
+ resolve: n,
33
+ reject: r
34
+ }), this._worker.postMessage({
35
+ id: t,
36
+ params: e
37
+ });
38
+ });
39
+ }
40
+ terminate() {
41
+ this._worker &&= (this._worker.terminate(), null);
42
+ }
43
+ }, t = class {
44
+ constructor(e) {
45
+ this._onExecute = e;
46
+ }
47
+ execute(e) {
48
+ return this._onExecute(e);
49
+ }
50
+ start() {
51
+ return Promise.resolve();
52
+ }
53
+ terminate() {}
54
+ }, n = "var yt = Object.defineProperty, qt = (e, t, r) => () => {\n if (r) throw r[0];\n try {\n return e && (t = e(e = 0)), t;\n } catch (n) {\n throw r = [n], n;\n }\n}, Zt = (e, t) => {\n let r = {};\n for (var n in e) yt(r, n, {\n get: e[n],\n enumerable: !0\n });\n return t || yt(r, Symbol.toStringTag, { value: \"Module\" }), r;\n}, wt = Object.defineProperty, he = (e, t) => {\n let r = {};\n for (var n in e) wt(r, n, {\n get: e[n],\n enumerable: !0\n });\n return t || wt(r, Symbol.toStringTag, { value: \"Module\" }), r;\n}, ue = {\n Column: \"column\",\n Row: \"row\"\n};\n({ ...ue });\nfunction Be(e, t) {\n if (e === t) return !0;\n if (e && t && typeof e == \"object\" && typeof t == \"object\") {\n if (e.constructor !== t.constructor) return !1;\n let r, n, o;\n if (Array.isArray(e)) {\n if (r = e.length, r != t.length) return !1;\n for (n = r; n-- !== 0;) if (!Be(e[n], t[n])) return !1;\n return !0;\n }\n if (e instanceof Map && t instanceof Map) {\n if (e.size !== t.size) return !1;\n for (n of e.entries()) if (!t.has(n[0])) return !1;\n for (n of e.entries()) if (!Be(n[1], t.get(n[0]))) return !1;\n return !0;\n }\n if (e instanceof Set && t instanceof Set) {\n if (e.size !== t.size) return !1;\n for (n of e.entries()) if (!t.has(n[0])) return !1;\n return !0;\n }\n if (ArrayBuffer.isView(e) && ArrayBuffer.isView(t)) {\n if (r = e.length, r != t.length) return !1;\n for (n = r; n-- !== 0;) if (e[n] !== t[n]) return !1;\n return !0;\n }\n if (e.constructor === RegExp) return e.source === t.source && e.flags === t.flags;\n if (e.valueOf !== Object.prototype.valueOf) return e.valueOf() === t.valueOf();\n if (e.toString !== Object.prototype.toString) return e.toString() === t.toString();\n if (o = Object.keys(e), r = o.length, r !== Object.keys(t).length) return !1;\n for (n = r; n-- !== 0;) if (!Object.prototype.hasOwnProperty.call(t, o[n])) return !1;\n for (n = r; n-- !== 0;) {\n let a = o[n];\n if ((a !== \"_owner\" || !e.$$typeof) && !Be(e[a], t[a])) return !1;\n }\n return !0;\n }\n return e != e && t != t;\n}\nfunction en(e) {\n let t = Object.prototype.toString.call(e);\n return t === \"[object RegExp]\" || t === \"[object Date]\" || (function(r) {\n return r.$$typeof === tn;\n })(e);\n}\nvar tn = typeof Symbol == \"function\" && Symbol.for ? /* @__PURE__ */ Symbol.for(\"react.element\") : 60103;\nfunction rn(e) {\n return /* @__PURE__ */ (function(t) {\n return !!t && typeof t == \"object\";\n })(e) && !en(e);\n}\nfunction _e(e, t) {\n return t.clone !== !1 && t.isMergeableObject(e) ? ve((r = e, Array.isArray(r) ? [] : {}), e, t) : e;\n var r;\n}\nfunction nn(e, t, r) {\n return e.concat(t).map(function(n) {\n return _e(n, r);\n });\n}\nfunction bt(e) {\n return Object.keys(e).concat((function(t) {\n return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(t).filter(function(r) {\n return Object.propertyIsEnumerable.call(t, r);\n }) : [];\n })(e));\n}\nfunction St(e, t) {\n try {\n return t in e;\n } catch {\n return !1;\n }\n}\nfunction on(e, t, r) {\n let n = {};\n return r.isMergeableObject(e) && bt(e).forEach(function(o) {\n n[o] = _e(e[o], r);\n }), bt(t).forEach(function(o) {\n (function(a, l) {\n return St(a, l) && !(Object.hasOwnProperty.call(a, l) && Object.propertyIsEnumerable.call(a, l));\n })(e, o) || (St(e, o) && r.isMergeableObject(t[o]) ? n[o] = (function(a, l) {\n if (!l.customMerge) return ve;\n let i = l.customMerge(a);\n return typeof i == \"function\" ? i : ve;\n })(o, r)(e[o], t[o], r) : n[o] = _e(t[o], r));\n }), n;\n}\nfunction ve(e, t, r) {\n (r ||= {}).arrayMerge = r.arrayMerge || nn, r.isMergeableObject = r.isMergeableObject || rn, r.cloneUnlessOtherwiseSpecified = _e;\n let n = Array.isArray(t);\n return n === Array.isArray(e) ? n ? r.arrayMerge(e, t, r) : on(e, t, r) : _e(t, r);\n}\nve.all = function(e, t) {\n if (!Array.isArray(e)) throw Error(\"first argument should be an array\");\n return e.reduce(function(r, n) {\n return ve(r, n, t);\n }, {});\n};\nvar Qt = he({\n DonePromise: () => ln,\n EmptyArray: () => Ne,\n EmptyObject: () => an,\n OSType: () => pe,\n arrayMove: () => Tn,\n asNumber: () => dn,\n camelToPrettyCase: () => cn,\n castToString: () => An,\n cloneObject: () => gn,\n consoleWithNoSource: () => kn,\n deepEqual: () => Be,\n deepFreeze: () => sr,\n deepMerge: () => ve,\n diffValues: () => vn,\n findEqualOrGreater: () => En,\n findEqualOrLesser: () => xn,\n getFromPath: () => Nn,\n getPlatform: () => Xe,\n isDefined: () => Cn,\n isEmpty: () => In,\n isEqualArrays: () => tr,\n isEqualBounds: () => yn,\n isNullOrUndefined: () => ir,\n isNumeric: () => pn,\n isObject: () => Le,\n isPromiseLike: () => $n,\n isRectInsideRect: () => Rn,\n isRectIntersect: () => lr,\n mergeContentful: () => Sn,\n removeEmptyProperties: () => rr,\n removeEqualValues: () => or,\n removeEqualValuesLayered: () => ar,\n removeListenerAll: () => wn,\n roundAccurately: () => mn,\n setToPath: () => Ln,\n splitNumber: () => fn,\n subtractRect: () => _n,\n textToKey: () => un,\n toSafeJSON: () => at,\n transpose: () => bn,\n uuidV4: () => Ke,\n validEnumValue: () => sn\n}), Ne = Object.freeze([]), an = Object.freeze({}), ln = Promise.resolve(), er = (e) => e;\nfunction sn(e, t) {\n if (!Object.values(e).includes(t)) throw Error(`Invalid type: ${t ?? \"null\"}. Must be one of: ${Object.values(e).join(\", \")}.`);\n}\nfunction cn(e) {\n return e ? e.replace(/([a-z0-9])([A-Z])/g, \"$1 $2\").replace(/([A-Z]+)([A-Z][a-z])/g, \"$1 $2\").replace(/^./, (t) => t.toUpperCase()) : \"\";\n}\nfunction un(e) {\n return e.replace(/[^a-zA-Z0-9]/g, \"\").toLowerCase();\n}\nvar ie = Array.from({ length: 256 }, (e, t) => (t + 256).toString(16).slice(1));\nfunction Ke() {\n let e = globalThis.crypto;\n if (e?.randomUUID) return e.randomUUID();\n if (e?.getRandomValues) {\n let t = e.getRandomValues(/* @__PURE__ */ new Uint8Array(16));\n return t[6] = 15 & t[6] | 64, t[8] = 63 & t[8] | 128, ie[t[0]] + ie[t[1]] + ie[t[2]] + ie[t[3]] + \"-\" + ie[t[4]] + ie[t[5]] + \"-\" + ie[t[6]] + ie[t[7]] + \"-\" + ie[t[8]] + ie[t[9]] + \"-\" + ie[t[10]] + ie[t[11]] + ie[t[12]] + ie[t[13]] + ie[t[14]] + ie[t[15]];\n }\n return \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, function(t) {\n let r = 16 * Math.random() | 0;\n return (t === \"x\" ? r : 3 & r | 8).toString(16);\n });\n}\nfunction dn(e) {\n let t = (function(r) {\n return 1 * r;\n })(e);\n return Number.isFinite(t) ? t : 0;\n}\nfunction pn(e) {\n let t = 1 * e;\n return Number.isFinite(t) && typeof t == \"number\";\n}\nvar Je = [\n 1,\n 10,\n 100,\n 1e3,\n 1e4,\n 1e5,\n 1e6,\n 1e7,\n 1e8,\n 1e9,\n 1e10,\n 1e11,\n 0xe8d4a51000,\n 0x9184e72a000,\n 0x5af3107a4000,\n 0x38d7ea4c68000,\n 0x2386f26fc10000\n];\nfunction fn(e) {\n let t = Math.abs(e);\n if (!Number.isFinite(t)) return null;\n let r = Math.trunc(t), n = t - r, o;\n r > 2 ** 53 - 1 ? o = Number(r.toExponential().split(\"e\")[1]) + 1 : (o = Math.ceil(Math.log10(r + 1)), Je[o] <= r && o++);\n let a = 0, l = 0, i = 15 - o;\n if (n > 0 && i > 0) {\n let u = Je[i];\n if (a = Math.round(n * u), a === u) r++, a = 0, r >= Je[o] && o++;\n else if (a > 0) for (l = i; a % 10 == 0;) a /= 10, l--;\n }\n return {\n ip: e < 0 ? -r : r,\n fp: a,\n ipLength: o,\n fpLength: l\n };\n}\nfunction mn(e, t = 0) {\n if (e == null || !isFinite(e)) return null;\n let r = 10 ** t;\n return Number(Math.round(e * r) / r);\n}\nfunction gn(e) {\n return ir(e) ? e : JSON.parse(JSON.stringify(e));\n}\nvar hn = (e, t) => e === t;\nfunction tr(e, t, r) {\n if (e === t) return !0;\n if (!Array.isArray(e) || !Array.isArray(t) || e.length !== t.length) return !1;\n r ||= hn;\n let n = e.length;\n for (let o = 0; o < n; o++) if (!r(e[o], t[o])) return !1;\n return !0;\n}\nfunction yn(e, t) {\n return e === t || !(!e || !t) && e.x === t.x && e.y === t.y && e.width === t.width && e.height === t.height;\n}\nfunction Le(e) {\n return typeof e == \"object\" && !Array.isArray(e) && e !== null;\n}\nfunction rr(e) {\n if (typeof e != \"object\" || Array.isArray(e) || e === null) return e;\n let t = e;\n return Object.keys(t).forEach(function(r) {\n t[r] && typeof t[r] == \"object\" ? rr(t[r]) : t[r] !== null && t[r] !== void 0 || delete t[r], typeof t[r] == \"object\" && Object.keys(t[r]).length === 0 && delete t[r];\n }), Object.keys(e).length === 0 ? null : e;\n}\nfunction wn(e, t) {\n if (!e) return Ne;\n let r = e.length;\n for (let n = 0; n < r; n++) {\n let o = e[n];\n o && o(t);\n }\n return Ne;\n}\nfunction bn(e) {\n if (!e) return e;\n let t = e.length, r = e[0].length, n = [];\n for (let o = 0; o < r; o++) n[o] = Array(t);\n for (let o = 0; o < t; o++) {\n let a = e[o];\n for (let l = 0; l < r; l++) n[l][o] = a[l];\n }\n return n;\n}\nvar nr = (e, t) => !(e !== t && !tr(e, t)) || !!e.isEqual?.(t);\nfunction or(e, t, r = nr) {\n if (e == null || e === t) return null;\n if (!e || typeof e != \"object\" || Array.isArray(e) || e.isImmutable?.()) return r(e, t) ? null : e;\n let n = Object.keys(e), o = n.length;\n if (o === 0) return null;\n let a = !1;\n for (let l = 0; l < o; l++) {\n let i = n[l];\n or(e[i], t?.[i], r) === null && (a = !0, delete e[i]);\n }\n return a && Object.keys(e).length === 0 ? null : void 0;\n}\nfunction ar(e, t, r = nr) {\n if (e == null) return !0;\n if (!e || typeof e != \"object\" || Array.isArray(e) || e.isImmutable?.()) {\n let i, u = !1;\n for (let f = 0; !u && f < t.length; f++) t[f] !== void 0 && (u = !0, i = t[f]);\n return u && (e === i || r(e, i));\n }\n let n = Object.keys(e), o = n.length;\n if (o === 0) return !0;\n let a = t.length, l = !1;\n for (let i = 0; i < o; i++) {\n let u = n[i], f = [];\n for (let h = 0; h < a; h++) {\n let c = t[h]?.[u];\n c !== void 0 && f.push(c);\n }\n ar(e[u], f, r) && (l = !0, delete e[u]);\n }\n return l && Object.keys(e).length === 0;\n}\nfunction Sn(...e) {\n let t = e.length;\n if (t > 0 && e[t - 1] !== void 0 && !Le(e[t - 1])) return e[t - 1];\n let r = e[0] || {};\n for (let n = 1; n < t; n++) r = ve(r, e[n] || {}, { arrayMerge: (o, a) => [...a] });\n return r;\n}\nfunction vn(e, t) {\n let r = {}, n = Object.keys(t), o = n.length;\n for (let a = 0; a < o; a++) {\n let l = n[a], i = e[l], u = t[l];\n i !== u && (r[l] = i === void 0 ? u : i);\n }\n return Object.keys(r).length === 0 ? null : r;\n}\nfunction En(e, t, r = er) {\n let n = 0, o = e.length - 1;\n for (; n <= o;) {\n let a = Math.floor((n + o) / 2), l = r(e[a]);\n if (l === t) return a;\n l < t ? n = a + 1 : o = a - 1;\n }\n return n;\n}\nfunction xn(e, t, r = er) {\n let n = e.length - 1, o = 0;\n for (; n >= o;) {\n let a = Math.floor((n + o) / 2), l = r(e[a]);\n if (l === t) return a;\n l > t ? n = a - 1 : o = a + 1;\n }\n return n;\n}\nfunction Tn(e, t, r) {\n let n = e.slice();\n return n.splice(r < 0 ? n.length + r : r, 0, n.splice(t, 1)[0]), n;\n}\nfunction An(e) {\n return e == null || e === void 0 ? \"\" : typeof e == \"string\" ? e : \"\" + e;\n}\nfunction ir(e) {\n return e == null;\n}\nfunction Cn(e) {\n return e != null;\n}\nfunction In(e) {\n return e == null || e === \"\";\n}\nfunction $n(e) {\n return !!e && typeof e.then == \"function\";\n}\nfunction lr(e, t) {\n return !(t.left > e.right || t.right < e.left || t.top > e.bottom || t.bottom < e.top);\n}\nfunction Rn(e, t) {\n return e.top >= t.top && e.bottom <= t.bottom && e.left >= t.left && e.right <= t.right;\n}\nfunction _n(e, t, r = !1) {\n if (!t) return [e];\n if (!lr(e, t)) return [];\n let n = [], o = e, a = () => {\n t.top > o.top && t.top < o.bottom && (n.push({\n ...o,\n bottom: t.top\n }), o = {\n ...o,\n top: t.top\n });\n }, l = () => {\n t.bottom > o.top && t.bottom < o.bottom && (n.push({\n ...o,\n top: t.bottom\n }), o = {\n ...o,\n bottom: t.bottom\n });\n }, i = () => {\n t.right > o.left && t.right < o.right && (n.push({\n ...o,\n left: t.right\n }), o = {\n ...o,\n right: t.right\n });\n }, u = () => {\n t.left > o.left && t.left < o.right && (n.push({\n ...o,\n right: t.left\n }), o = {\n ...o,\n left: t.left\n });\n };\n return r ? (u(), i(), a(), l()) : (a(), l(), i(), u()), n;\n}\nfunction Nn(e, t) {\n let r = t.split(\".\"), n = e, o = r.length;\n for (let a = 0; a < o; a++) {\n let l = r[a];\n if (!n) return null;\n let i = n[l];\n if (typeof i == \"function\" && (i = i.bind(n)()), !i || !Le(i)) return i;\n n = i;\n }\n return n ?? null;\n}\nfunction Ln(e, t, r) {\n let n = t.split(\".\"), o = e;\n if (!o) throw Error(\"Can not set path to a null path.\");\n let a = n.length;\n for (let l = 0; o && l < a - 1; l++) {\n let i = n[l], u = o[i];\n if (u ?? (u = {}, o[i] = u), !Le(u)) throw Error(\"Can not set path to a non object path.\");\n o = u;\n }\n if (typeof r != \"number\" && typeof r != \"boolean\" && typeof r != \"string\" && !Le(r)) throw Error(`Can not set path to ${r} that is not a a supported primitive.`);\n return o[n[a - 1]] = r, e;\n}\nfunction kn(...e) {\n return new Promise((t) => {\n setTimeout(() => {\n Function(\"console.log.apply(console, arguments)\").apply(null, e), t();\n });\n });\n}\nvar pe = {\n Windows: \"windows\",\n MacOS: \"macos\",\n IOS: \"ios\",\n Linux: \"linux\",\n Android: \"android\",\n Safari: \"safari\",\n Firefox: \"firefox\",\n Unknown: \"unknown\"\n};\nfunction Xe() {\n let e = globalThis.navigator !== void 0 && globalThis.navigator.userAgent ? globalThis.navigator.userAgent.toLowerCase() : \"\";\n return e ? /(win32|win64|windows|wince)/i.test(e) ? pe.Windows : /(macintosh|macintel|macppc|mac68k|macos)/i.test(e) ? pe.MacOS : /(iphone|ipad|ipod)/i.test(e) ? pe.IOS : /android/.test(e) ? pe.Android : /linux/.test(e) ? pe.Linux : /^((?!chrome|android|).)*safari/i.test(e) ? pe.Safari : /^((?!chrome|android|Seamonkey).)*firefox/i.test(e) ? pe.Firefox : pe.Unknown : pe.Unknown;\n}\nfunction sr(e) {\n Object.freeze(e);\n let t = e;\n return Object.keys(t).forEach((r) => {\n typeof t[r] != \"object\" || t[r] === null || Object.isFrozen(t[r]) || sr(t[r]);\n }), e;\n}\nfunction at(e) {\n if (typeof e != \"object\" || !e) return e;\n if (typeof e.toJSON == \"function\") return e.toJSON();\n if (Array.isArray(e)) return e.map((r) => at(r));\n if (typeof e.toString == \"function\" && e.toString !== Object.prototype.toString) return e.toString();\n let t = {};\n for (let r in e) e.hasOwnProperty(r) && (t[r] = at(e[r]));\n return t;\n}\nhe({\n EmptyCell: () => cr,\n EmptyRange: () => On,\n EmptyRanges: () => Mn,\n EmptySelection: () => Fn,\n InsertCutShift: () => Se,\n cellToRange: () => jn,\n classifyInsertCut: () => Yn,\n columnFirstCellComparator: () => mr,\n columnFirstRangeComparator: () => ur,\n createCellComparator: () => Dn,\n createConflatingRanges: () => Jn,\n createRangeComparator: () => wr,\n defaultRange: () => Gn,\n extendRangeToIntersectingRanges: () => Tr,\n extendRangeToUnionRanges: () => zn,\n intersectRanges: () => Er,\n isCellWithinRange: () => Un,\n isEqualCells: () => br,\n isEqualRanges: () => dt,\n isEqualRangesArrays: () => vr,\n isEqualSelectionCoords: () => xr,\n isRangeWithinRange: () => Sr,\n isRangesIntersect: () => pt,\n isRefusedInsertCut: () => qn,\n isSingleCell: () => Pn,\n isValidRange: () => Kn,\n mergeRangeCoordValues: () => Cr,\n reverseColumnFirstCellComparator: () => yr,\n reverseColumnFirstRangeComparator: () => fr,\n reverseRowFirstCellComparator: () => hr,\n reverseRowFirstRangeComparator: () => pr,\n rowFirstCellComparator: () => gr,\n rowFirstRangeComparator: () => dr,\n sanitizeRange: () => Ar,\n sanitizeRangeArray: () => Xn,\n translateRange: () => Vn,\n unionRanges: () => it,\n unionRangesArrays: () => Bn\n});\nvar cr = Object.freeze({\n colIndex: 0,\n rowIndex: 0\n}), On = Object.freeze({\n colStart: 0,\n rowStart: 0,\n colEnd: 0,\n rowEnd: 0\n}), Mn = Ne, Fn = Object.freeze({\n cell: cr,\n ranges: Ne,\n rangeIndex: -1\n});\nfunction ur(e, t) {\n return e.colStart === t.colStart ? e.rowStart - t.rowStart : e.colStart - t.colStart;\n}\nfunction dr(e, t) {\n return e.rowStart === t.rowStart ? e.colStart - t.colStart : e.rowStart - t.rowStart;\n}\nfunction pr(e, t) {\n return e.rowEnd === t.rowEnd ? t.colEnd - e.colEnd : t.rowEnd - e.rowEnd;\n}\nfunction fr(e, t) {\n return e.colEnd === t.colEnd ? t.rowEnd - e.rowEnd : t.colEnd - e.colEnd;\n}\nfunction mr(e, t) {\n return e.colIndex === t.colIndex ? e.rowIndex - t.rowIndex : e.colIndex - t.colIndex;\n}\nfunction gr(e, t) {\n return e.rowIndex === t.rowIndex ? e.colIndex - t.colIndex : e.rowIndex - t.rowIndex;\n}\nfunction hr(e, t) {\n return e.rowIndex === t.rowIndex ? t.colIndex - e.colIndex : t.rowIndex - e.rowIndex;\n}\nfunction yr(e, t) {\n return e.colIndex === t.colIndex ? t.rowIndex - e.rowIndex : t.colIndex - e.colIndex;\n}\nfunction wr(e = ue.Row, t = !1) {\n return t ? e === ue.Column ? fr : pr : e === ue.Column ? ur : dr;\n}\nfunction Dn(e = ue.Row, t = !1) {\n return t ? e === ue.Column ? yr : hr : e === ue.Column ? mr : gr;\n}\nfunction br(e, t) {\n return e === t || !(!e || !t) && e.rowIndex === t.rowIndex && e.colIndex === t.colIndex && e.scope === t.scope;\n}\nfunction dt(e, t) {\n return e === t || !(!e || !t) && e.rowStart === t.rowStart && e.rowEnd === t.rowEnd && e.colStart === t.colStart && e.colEnd === t.colEnd && e.scope === t.scope;\n}\nfunction Un(e, t) {\n if (!e || !t) return !1;\n let r = e.rowIndex;\n if (r < t.rowStart || r > t.rowEnd) return !1;\n let n = e.colIndex;\n return !(n < t.colStart || n > t.colEnd);\n}\nfunction Sr(e, t) {\n return !(!e || !t) && !(e.rowStart < t.rowStart || e.rowEnd > t.rowEnd) && !(e.colStart < t.colStart || e.colEnd > t.colEnd);\n}\nfunction pt(e, t) {\n return !(!e || !t) && !(e.colStart > t.colEnd || t.colStart > e.colEnd) && !(e.rowStart > t.rowEnd || t.rowStart > e.rowEnd);\n}\nfunction vr(e, t) {\n if (e === t) return !0;\n if (!e || !t || e.length !== t.length) return !1;\n for (let r = 0; r < e.length; r++) if (!dt(e[r], t[r])) return !1;\n return !0;\n}\nfunction Pn(e) {\n return !!e && e.rowEnd === e.rowStart && e.colStart === e.colEnd;\n}\nfunction jn(e, t) {\n if (!e) return null;\n let r = t;\n return r || (r = { ...e }, delete r.colIndex, delete r.rowIndex), r.colStart = e.colIndex ?? 0, r.rowStart = e.rowIndex ?? 0, r.colEnd = e.colIndex ?? 0, r.rowEnd = e.rowIndex ?? 0, r;\n}\nfunction Er(e, t, r) {\n if (!e) return r ? t : { ...t };\n if (!t) return r ? 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 let n = Math.max(e.colStart, t.colStart), o = Math.max(e.rowStart, t.rowStart), a = Math.min(e.colEnd, t.colEnd), l = Math.min(e.rowEnd, t.rowEnd), i = r;\n return i ? (i.colStart = n, i.rowStart = o, i.colEnd = a, i.rowEnd = l) : i = {\n colStart: n,\n rowStart: o,\n colEnd: a,\n rowEnd: l\n }, i;\n}\nfunction it(e, t, r) {\n if (!e && !t) return null;\n if (!e) return r ? t : { ...t };\n if (!t) return r ? e : { ...e };\n let n = Math.min(e.colStart, t.colStart), o = Math.min(e.rowStart, t.rowStart), a = Math.max(e.colEnd, t.colEnd), l = Math.max(e.rowEnd, t.rowEnd), i = r;\n return i ? (i.colStart = n, i.rowStart = o, i.colEnd = a, i.rowEnd = l) : i = {\n colStart: n,\n rowStart: o,\n colEnd: a,\n rowEnd: l\n }, i;\n}\nfunction xr(e, t) {\n return e === t || !(!e || !t) && e.rangeIndex === t.rangeIndex && !!br(e.cell, t.cell) && vr(e.ranges, t.ranges);\n}\nfunction Bn(e, t, r) {\n if (!e || e.length === 0) return null;\n if (e.length === 1 && !t) return e[0];\n let n = e[0];\n for (let o = 1; o < e.length; o++) n = it(n, e[o], r);\n return t && (n = it(n, t, r)), n;\n}\nfunction Kn(e) {\n return !!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);\n}\nfunction zn(e, t) {\n if (!t || t.length === 0) return e;\n let r = e, n = null;\n for (; !dt(r, n);) n = r, r = Tr(n, t);\n return r;\n}\nfunction Tr(e, t) {\n if (!t || t.length === 0) return e;\n let r = { ...e };\n for (let n = 0; n < t.length; n++) {\n let o = t[n];\n pt(r, o) && (r.rowStart = Math.min(r.rowStart, o.rowStart), r.colStart = Math.min(r.colStart, o.colStart), r.rowEnd = Math.max(r.rowEnd, o.rowEnd), r.colEnd = Math.max(r.colEnd, o.colEnd));\n }\n return r;\n}\nfunction Vn(e, t = -e.rowStart, r = -e.colStart, n) {\n return n ? (n.colStart = e.colStart + r, n.rowStart = e.rowStart + t, n.colEnd = e.colEnd + r, n.rowEnd = e.rowEnd + t, n) : {\n colStart: e.colStart + r,\n rowStart: e.rowStart + t,\n colEnd: e.colEnd + r,\n rowEnd: e.rowEnd + t\n };\n}\nfunction Ar(e, t) {\n return e ? e.scope ? {\n colStart: e.colIndex ?? e.colStart ?? t?.colStart ?? 0,\n rowStart: e.rowIndex ?? e.rowStart ?? t?.rowStart ?? 0,\n colEnd: e.colIndex ?? e.colEnd ?? t?.colEnd ?? 0,\n rowEnd: e.rowIndex ?? e.rowEnd ?? t?.rowEnd ?? 0,\n scope: e.scope\n } : {\n colStart: e.colIndex ?? e.colStart ?? t?.colStart ?? 0,\n rowStart: e.rowIndex ?? e.rowStart ?? t?.rowStart ?? 0,\n colEnd: e.colIndex ?? e.colEnd ?? t?.colEnd ?? 0,\n rowEnd: e.rowIndex ?? e.rowEnd ?? t?.rowEnd ?? 0\n } : null;\n}\nfunction Xn(e, t) {\n if (!e) return null;\n let r = e.length, n = Array(r);\n for (let o = 0; o < r; o++) n[o] = Ar(e[o], t);\n return n;\n}\nfunction Gn(e, t, r) {\n return e ? r ? (r.colStart = e.colStart ?? t.colStart, r.rowStart = e.rowStart ?? t.rowStart, r.colEnd = e.colEnd ?? t.colEnd, r.rowEnd = e.rowEnd ?? t.rowEnd, r) : {\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 } : t;\n}\nvar Hn = [null, null], Wn = (e, t, r) => {\n if (e[0].value === e[1].value) return t;\n};\nfunction Cr(e, t = 2, r, n = ue.Row, o) {\n let a = [...e];\n if (t <= 0 || e.length <= 1) return a;\n let l = n === ue.Column, i = 0, u = !1;\n do {\n let f = a.sort(wr(l ? ue.Row : ue.Column));\n a = [], a.push(f[0]);\n let h = f.length, c = 0, g = f[0], T = g.colStart, I = g.rowStart, M = g.colEnd, H = g.rowEnd;\n for (let E = 1; E < h; E++) {\n let A = f[E], R = !1;\n if (R = l ? g && I === A.rowStart && H === A.rowEnd && M + 1 === A.colStart : g && T === A.colStart && M === A.colEnd && H + 1 === A.rowStart, R) {\n let P = {\n colStart: T,\n rowStart: I,\n colEnd: l ? A.colEnd : M,\n rowEnd: l ? H : A.rowEnd\n };\n if (g.value !== void 0 && (P.value = g.value), r) {\n let Z = o ?? [null, null];\n Z[0] = g, Z[1] = A, P = r(Z, P, n);\n }\n if (P) {\n a[c] = P, u = !0, g = P, T = g.colStart, I = g.rowStart, M = g.colEnd, H = g.rowEnd;\n continue;\n }\n }\n a[++c] = A, g = A, T = g.colStart, I = g.rowStart, M = g.colEnd, H = g.rowEnd;\n }\n i++, l = !l, i === 1 && (u = !0);\n } while (i < t && u && a.length > 1);\n return a;\n}\nfunction Jn(e, t = !1) {\n let r = [], n, o = null, a = -(2 ** 53 - 1), l = -(2 ** 53 - 1);\n return {\n append: (i, u, f) => {\n let h = !0, c = f !== void 0;\n if (c) {\n let I = e ? e(n, f, t) : n === f ? f : void 0;\n I === void 0 ? h = !1 : f = I;\n }\n if (h && u === l + 1 && i === a) return t ? o.rowEnd = u : o.colEnd = u, l = u, void (n = f);\n o && r.push(o);\n let g = t ? i : u, T = t ? u : i;\n o = {\n colStart: g,\n rowStart: T,\n colEnd: g,\n rowEnd: T\n }, c && (o.value = f), a = i, l = u, n = f;\n },\n done: (i) => (o &&= (r.push(o), null), i ? Cr(r, 3, i === !0 ? Wn : i, t ? ue.Column : ue.Row, Hn) : r)\n };\n}\nvar Se = {\n Close: \"close\",\n Blank: \"blank\",\n Inside: \"inside\",\n Tear: \"tear\"\n};\nfunction Yn(e, t, r) {\n let n = r === ue.Row;\n return (n ? e.colStart === t.colStart && e.colEnd === t.colEnd : e.rowStart === t.rowStart && e.rowEnd === t.rowEnd) ? (n ? t.rowStart > e.rowStart && t.rowStart <= e.rowEnd : t.colStart > e.colStart && t.colStart <= e.colEnd) ? Se.Inside : Se.Close : (n ? e.rowEnd >= t.rowStart && e.colStart <= t.colEnd && e.colEnd >= t.colStart : e.colEnd >= t.colStart && e.rowStart <= t.rowEnd && e.rowEnd >= t.rowStart) ? Se.Tear : Se.Blank;\n}\nfunction qn(e) {\n return e === Se.Inside || e === Se.Tear;\n}\nvar q = {\n Up: \"up\",\n Down: \"down\",\n Left: \"left\",\n Right: \"right\"\n}, W = {\n Html: \"text/html\",\n Plain: \"text/plain\",\n Png: \"image/png\"\n};\nhe({\n findNextCellWithinSelection: () => Ir,\n traverseHiddenHeaders: () => de\n});\nfunction de(e, t, r, n) {\n if (!e) return t;\n let o = t, a = r === q.Right || r === q.Down;\n for (;;) {\n let l = e(o, !a);\n if (l === 0) return o;\n let i = a ? o + l : o - l;\n if (n !== void 0 && (a ? i > n : i < n)) return n;\n o = i;\n }\n}\nfunction Ir(e, t = q.Right, r, n, o, a = null) {\n if (a && xr(a, e)) return e;\n let l = e.ranges, i = e.rangeIndex, u = l[i];\n if (!pt({\n rowStart: e.cell.rowIndex,\n colStart: e.cell.colIndex,\n rowEnd: e.cell.rowIndex,\n colEnd: e.cell.colIndex\n }, u)) return e;\n let f = { ...e.cell }, h = i;\n switch (t) {\n case q.Right:\n f.colIndex = de(o, f.colIndex + 1, t, u.colEnd + 1);\n break;\n case q.Left:\n f.colIndex = de(o, f.colIndex - 1, t, u.colStart - 1);\n break;\n case q.Down:\n f.rowIndex = de(n, f.rowIndex + 1, t, u.rowEnd + 1);\n break;\n case q.Up: f.rowIndex = de(n, f.rowIndex - 1, t, u.rowStart - 1);\n }\n let c = (I) => {\n if (I) {\n h = i >= l.length - 1 ? 0 : i + 1;\n let M = l[h];\n f = {\n colIndex: M.colStart,\n rowIndex: M.rowStart\n };\n } else {\n h = i <= 0 ? l.length - 1 : i - 1;\n let M = l[h];\n f = {\n colIndex: M.colEnd,\n rowIndex: M.rowEnd\n };\n }\n };\n if (t === q.Right && f.colIndex > u.colEnd && f.rowIndex === u.rowEnd) c(!0);\n else if (t === q.Left && f.colIndex < u.colStart && f.rowIndex === u.rowStart) c(!1);\n else if (t === q.Down && f.colIndex === u.colEnd && f.rowIndex > u.rowEnd) c(!0);\n else if (t === q.Up && f.colIndex === u.colStart && f.rowIndex < u.rowStart) c(!1);\n else {\n let I = f.rowIndex, M = f.colIndex;\n switch (t) {\n case q.Right:\n M > u.colEnd && (I = de(n, I + 1, t, u.rowEnd + 1), M = u.colStart, I > u.rowEnd && (I = u.rowStart));\n break;\n case q.Left:\n M < u.colStart && (I = de(n, I - 1, t, u.rowStart - 1), M = u.colEnd, I < u.rowStart && (I = u.rowEnd));\n break;\n case q.Down:\n I > u.rowEnd && (M = de(o, M + 1, t, u.colEnd + 1), I = u.rowStart, M > u.colEnd && (M = u.colStart));\n break;\n case q.Up: I < u.rowStart && (M = de(o, M - 1, t, u.colStart - 1), I = u.rowEnd, M < u.colStart && (M = u.colEnd));\n }\n f = {\n rowIndex: I,\n colIndex: M\n };\n }\n let g = r(f);\n if (!Sr(g, u)) {\n let I = Er(g, u);\n I && (g = I);\n }\n let T = {\n rowStart: de(n, g.rowStart, q.Down, g.rowEnd),\n colStart: de(o, g.colStart, q.Right, g.colEnd),\n rowEnd: de(n, g.rowEnd, q.Up, g.rowStart),\n colEnd: de(o, g.colEnd, q.Left, g.colStart)\n };\n if (T.rowStart !== f.rowIndex || T.colStart !== f.colIndex) {\n switch (t) {\n case q.Right:\n l[h].colStart === T.colStart && l[h].colEnd === T.colEnd && (f.rowIndex = T.rowEnd), f.colIndex = T.colEnd;\n break;\n case q.Left:\n l[h].colStart === T.colStart && l[h].colEnd === T.colEnd && (f.rowIndex = T.rowStart), f.rowIndex === T.rowStart ? f.colIndex = T.colStart + 1 : f.colIndex = T.colStart;\n break;\n case q.Down:\n l[h].rowStart === T.rowStart && l[h].rowEnd === T.rowEnd && (f.colIndex = T.colEnd), f.rowIndex = T.rowEnd;\n break;\n case q.Up: l[h].rowStart === T.rowStart && l[h].rowEnd === T.rowEnd && (f.colIndex = T.colStart), f.colIndex === T.colStart ? f.rowIndex = T.rowStart + 1 : f.rowIndex = T.rowStart;\n }\n return Ir({\n cell: f,\n ranges: e.ranges,\n rangeIndex: h\n }, t, r, n, o, a ?? e);\n }\n return {\n ranges: e.ranges,\n cell: f,\n rangeIndex: h\n };\n}\nvar Zn = class {\n constructor() {\n this._onceMessageKeys = /* @__PURE__ */ new Set(), this._overrides = null;\n }\n setOverrides(e) {\n this._overrides = e ?? null;\n }\n getOverrides() {\n return this._overrides;\n }\n _write(e, t, r) {\n if (r?.onceKey) {\n let a = this._onceMessageKeys;\n if (a.has(r.onceKey)) return;\n a.add(r.onceKey);\n }\n let n = r?.meta, o = this._overrides;\n if (o) {\n let a = o[e];\n if (a) return void a.bind(o)(t, r);\n }\n n === void 0 ? console[e](t) : console[e](t, n);\n }\n log(e, t) {\n return this._write(\"log\", e, t);\n }\n error(e, t) {\n return this._write(\"error\", e, t);\n }\n warn(e, t) {\n return this._write(\"warn\", e, t);\n }\n debug(e, t) {\n return this._write(\"debug\", e, t);\n }\n};\nnew Zn();\nvar Ye;\nhe({\n EmptyBounds: () => to,\n EmptyRect: () => eo,\n EmptyTopLeft: () => Qn\n});\nvar Qn = Object.freeze({\n left: 0,\n top: 0\n}), eo = Object.freeze({\n left: 0,\n top: 0,\n bottom: 0,\n right: 0\n}), to = Object.freeze({\n x: 0,\n y: 0,\n width: 0,\n height: 0\n});\nhe({\n canUseDOM: () => $r,\n getDPI: () => no,\n hasFocus: () => Rr,\n openFileDialog: () => ro,\n scrollIntoContainer: () => oo,\n whenFocus: () => ao\n});\nvar $r = !(typeof window > \"u\" || !window.document || !window.document.createElement), ro = (e = \"*.*\") => new Promise((t, r) => {\n if (!$r) return void r(\"Unable to open dialog with no dom.\");\n let n = document.createElement(\"input\");\n n.type = \"file\", n.accept = e;\n let o = null, a = !1;\n globalThis.addEventListener?.(\"focus\", () => {\n setTimeout(() => {\n o || a || (a = !0, t(null));\n }, 1e3);\n }, {\n once: !0,\n passive: !0\n }), n.onchange = () => {\n if (o = n.files?.[0] ?? null, o) {\n if (a) return void console.warn(\"File open detected after faux cancel.\", o);\n t(o);\n }\n }, n.autofocus = !0, n.click();\n}), no = () => {\n let e = 1;\n return typeof window == \"object\" && (e = window.devicePixelRatio || 1), e;\n}, Rr = (e, t = !1) => (document.hasFocus() || t) && (e === document.activeElement || e?.contains(document.activeElement)), oo = (e, t, r = \"auto\") => {\n if ((() => {\n if (Ye === void 0) {\n let u = !1;\n try {\n document.createElement(\"div\").scrollIntoView({ get container() {\n return u = !0, \"nearest\";\n } });\n } catch {}\n Ye = u;\n }\n return Ye;\n })()) return void t.scrollIntoView({\n block: \"nearest\",\n inline: \"nearest\",\n behavior: r,\n container: \"nearest\"\n });\n let n = e.getBoundingClientRect(), o = t.getBoundingClientRect(), a = n.top + e.clientTop, l = a + e.clientHeight, i = 0;\n o.top < a ? i = o.top - a : o.bottom > l && (i = Math.min(o.bottom - l, o.top - a)), i !== 0 && e.scrollBy({\n top: i,\n behavior: r\n });\n}, ao = async (e, t = !1) => new Promise((r) => {\n Rr(e, t) ? r(!0) : e.addEventListener(\"focusin\", () => {\n r(!0);\n }, { once: !0 }), e.focus();\n});\nhe({\n cancelTimeout: () => po,\n debounce: () => so,\n nextTick: () => uo,\n rafThrottle: () => co,\n requestTimeout: () => fo,\n throttle: () => lo\n});\nvar ke = globalThis.requestAnimationFrame, io = globalThis.cancelAnimationFrame;\nfunction lo(e, t) {\n let r = null;\n return (...n) => {\n let o = Date.now();\n (!r || o - r >= t) && (r = o, e(...n));\n };\n}\nfunction so(e, t = 300, r = !1) {\n let n, o, a, l = null, i = 0;\n function u() {\n let h = Date.now() - i;\n h < t && h >= 0 ? l = setTimeout(u, t - h) : (l = null, r || (a = e.apply(o, n), o = n = null));\n }\n t ??= 100;\n let f = function() {\n o = globalThis, n = arguments, i = Date.now();\n var h = r && !l;\n return l ||= setTimeout(u, t), h && (a = e.apply(o, n), o = n = null), a;\n };\n return f.clear = function() {\n l &&= (clearTimeout(l), null);\n }, f.flush = function() {\n l &&= (a = e.apply(o, n), o = n = null, clearTimeout(l), null);\n }, f;\n}\nvar co = (e) => {\n let t, r = !1, n = function() {\n r = !1, e(t);\n };\n return function(o) {\n t = o, t && t.persist && t.persist(), r || (r = !0, ke(n));\n };\n}, uo = (e) => {\n if (typeof ke == \"function\") ke(() => {\n e();\n });\n else {\n let t = globalThis.setImmediate;\n (typeof t == \"function\" ? t : setTimeout)(() => {\n e();\n });\n }\n}, vt = typeof performance == \"object\" && typeof performance.now == \"function\" ? () => performance.now() : () => Date.now(), po = (e) => {\n io(e.id);\n}, fo = (e, t) => {\n let r = vt(), n = { id: ke(function o() {\n vt() - r >= t ? e.call(null) : n.id = ke(o);\n }) };\n return n;\n};\nhe({ MESSAGE_ERROR_INVALID_ARG: () => mo });\nvar mo = (e) => `Invalid argument: '${e}'.`;\nhe({\n APP_MIME_TYPE: () => go,\n DEFAULT_MIME_TYPE: () => \"*/*\",\n JSONStableStringify: () => So,\n arrayBufferToBase64: () => _r,\n base64ToArrayBuffer: () => bo,\n blobToString: () => lt,\n isLittleEndian: () => wo,\n isNodeBuffer: () => ho,\n isSharedArrayBufferSupported: () => yo\n});\nvar go = \"application/octet-stream\", Ce = globalThis.Buffer, ho = (e) => Ce?.isBuffer(e) ?? !1, yo = typeof SharedArrayBuffer == \"function\" && (globalThis.crossOriginIsolated === void 0 || globalThis.crossOriginIsolated === !0), wo = new Uint8Array(new Uint16Array([1]).buffer)[0] === 1, Et = globalThis.FileReader, bo = (e) => {\n let t = typeof globalThis.atob == \"function\" ? globalThis.atob(e) : Ce.from(e, \"base64\").toString(\"binary\"), r = t.length, n = new Uint8Array(r);\n for (let o = 0; o < r; o++) n[o] = t.charCodeAt(o);\n return n.buffer;\n}, _r = (e) => {\n let t = new Uint8Array(e), r = t.byteLength, n = \"\";\n for (let o = 0; o < r; o++) n += String.fromCharCode(t[o]);\n if (typeof globalThis.btoa == \"function\") return globalThis.btoa(n);\n if (Ce) return Ce.from(n, \"binary\").toString(\"base64\");\n throw Error(\"Unsupported environment\");\n}, lt = (e) => new Promise((t, r) => {\n if (e) if (Et) {\n let n = new Et();\n n.onload = () => {\n t(n.result);\n }, n.onerror = () => {\n r(n.error);\n }, n.readAsText(e);\n } else if (Ce) {\n let n = (o) => Ce.from(o).toString(\"utf-8\");\n e.arrayBuffer().then((o) => {\n t(n(o));\n }).catch((o) => {\n r(o);\n });\n } else r(/* @__PURE__ */ Error(\"Unsupported environment\"));\n else t(\"\");\n});\nfunction So(e, t) {\n t ||= {}, typeof t == \"function\" && (t = { cmp: t });\n let r = typeof t.cycles == \"boolean\" && t.cycles, n = t.cmp && (o = t.cmp, function(l) {\n return function(i, u) {\n return o({\n key: i,\n value: l[i]\n }, {\n key: u,\n value: l[u]\n });\n };\n });\n var o;\n let a = [];\n return (function l(i) {\n if (i && i.toJSON && typeof i.toJSON == \"function\" && (i = i.toJSON()), i === void 0) return;\n if (typeof i == \"number\") return isFinite(i) ? \"\" + i : \"null\";\n if (typeof i != \"object\") return JSON.stringify(i);\n let u;\n if (Array.isArray(i)) {\n u = \"[\";\n for (let c = 0; c < i.length; c++) c && (u += \",\"), u += l(i[c]) || \"null\";\n return u + \"]\";\n }\n if (i === null) return \"null\";\n if (a.indexOf(i) !== -1) {\n if (r) return JSON.stringify(\"__cycle__\");\n throw TypeError(\"Converting circular structure to JSON\");\n }\n let f = a.push(i) - 1, h = Object.keys(i).sort(n && n(i));\n u = \"\";\n for (let c = 0; c < h.length; c++) {\n let g = h[c], T = l(i[g]);\n T && (u && (u += \",\"), u += JSON.stringify(g) + \":\" + T);\n }\n return a.splice(f, 1), \"{\" + u + \"}\";\n })(e);\n}\nvar vo;\nhe({\n DATA_URL_PNG_PREFIX: () => Nr,\n getImageDataUrl: () => Eo,\n loadImageDetails: () => xo\n});\nvar Nr = \"data:image/png;base64,\", Lr = \"Unable to resolve image.\", xt = (e) => new Promise(async (t, r) => {\n let n = null;\n try {\n let o = n = new Image();\n o.src = e, o.addEventListener(\"load\", function() {\n t({\n width: o.naturalWidth,\n height: o.naturalHeight\n });\n }, { once: !0 }), o.addEventListener(\"error\", function(a) {\n URL.revokeObjectURL(e);\n let l = a?.error?.message ?? \"\";\n l &&= `: ${l}`, r(`Invalid Image${l}`);\n }, { once: !0 }), await o.decode();\n } catch {\n n?.src && URL.revokeObjectURL(n.src);\n }\n n || r(Error(Lr));\n}), Eo = (e, t = 1) => new Promise(async (r, n) => {\n let o = null;\n try {\n let a = o = new Image();\n a.src = e, a.addEventListener(\"load\", function() {\n try {\n let l = document.createElement(\"canvas\");\n l.width = a.naturalWidth, l.height = a.naturalHeight;\n let i = l.getContext(\"2d\");\n if (!i) throw Error(\"Unable to create 2d context\");\n i.drawImage(a, 0, 0);\n let u = l.toDataURL(\"image/png\", t);\n r({\n elemImg: a,\n dataUrl: u\n });\n } catch (l) {\n URL.revokeObjectURL(e), n(l);\n }\n }, { once: !0 }), a.addEventListener(\"error\", function() {\n URL.revokeObjectURL(e), n(\"Invalid Image\");\n }, { once: !0 }), await a.decode();\n } catch {\n o?.src && URL.revokeObjectURL(o.src);\n }\n o || n(Error(Lr));\n}), qe = \"image/svg+xml\", xo = async (e, t = null) => {\n let r = null, n = async () => {\n try {\n let a = t ?? \"image/*\", l = URL.createObjectURL(new Blob([e], { type: a }));\n r = {\n mimeType: a,\n naturalSize: await xt(l),\n asUrl: l\n };\n } catch {}\n }, o = async () => {\n try {\n let a = new TextDecoder().decode(e), l = URL.createObjectURL(new Blob([a], { type: qe })), i = await xt(l);\n r = {\n mimeType: t ?? qe,\n naturalSize: i,\n asUrl: l,\n asSVGText: a\n };\n } catch {}\n };\n if (t === qe ? await o() : t?.startsWith(\"image/\") ? await n() : (await n(), r || await o()), !r) throw Error(\"Failed to load image\");\n return r;\n}, Tt = /* @__PURE__ */ new Set(), To = (e) => {\n Tt.has(e) || (Tt.add(e), console.warn(`Unknown property '${e}' in update; ignoring.`));\n};\n(function(e) {\n e.PassThrough = Object.freeze({});\n let t = e.resolveTypedUpdates = (r, n, o, a, l = !1) => {\n if (r === null) return r;\n if (r === void 0) return a;\n let i = r;\n if (n?.shorthand) {\n let c = n?.shorthand(r, o);\n c !== void 0 && (i = c);\n }\n if (i !== null && n?.getSubType) {\n let c = n.getSubType(i, a);\n c && (n = c);\n }\n let u = n?.properties, f = n?.arrayType ?? !1, h = i;\n if (n && n.merge && h && a) h = n.merge(h, a, o);\n else if (!f && u) {\n let c = Object.keys({\n ...i,\n ...a\n });\n h = null;\n let g = c.length;\n for (let T = 0; T < g; T++) {\n let I = c[T], M, H = i?.[I];\n if (H !== void 0) {\n let E = u[I];\n if (!E) {\n To(I);\n continue;\n }\n M = t(H, E, o, a?.[I], l);\n } else M = a?.[I];\n M == null ? l && H === null && (h ??= {}, h[I] = null) : (h ??= {}, h[I] = M);\n }\n }\n return h;\n };\n})(vo ||= {});\nvar ft = {\n code: \"safari\",\n message: `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.`\n}, kr = {\n code: \"perms\",\n message: `You do not have permissions to access the clipboard.\nAll copy and paste operations will be limited to the browser tab.`\n}, At = Xe() === pe.Safari ? ft : kr, Ao = {\n Safari: ft,\n Perms: kr,\n PermsWrite: At,\n PermsRead: At\n}, Ze = async () => new Promise((e) => {\n document.hasFocus() ? e() : globalThis.addEventListener?.(\"focus\", () => {\n e();\n }, { once: !0 }), document.activeElement.focus?.();\n}), Qe = async (e, t, r) => {\n if (Xe() === pe.Safari) return await r(Error(ft.message));\n try {\n let n = async (l) => {\n try {\n return await l();\n } catch (i) {\n if (i.message?.includes(\"Document is not focused\")) return !1;\n throw i;\n }\n }, o = await globalThis?.navigator?.permissions?.query({\n name: e,\n allowWithoutGesture: !0,\n allowWithoutSanitization: !0\n }), a = !1;\n if (o.state === \"prompt\" && (a = await n(t)), a || o.state !== \"granted\" || (a = await t()), !a) return await r(Error(o.state));\n } catch (n) {\n return n.message === \"No valid data on clipboard\" || n.name === \"DataError\" ? void 0 : await r(n);\n }\n}, Or = async (e) => {\n if (!e) return null;\n try {\n return await e.read({ unsanitized: [W.Html] });\n } catch {}\n return await e.read();\n}, Co = async (e, t) => {\n if (!e) return null;\n let r = await Or(e), n = !1;\n for (let o = 0; !n && r && o < r.length; o++) if (n = r[o].types.includes(t), n) return await r[o].getType(t);\n return null;\n};\nif (!globalThis.ClipboardItem) {\n let e = (r, n) => new Blob([n], { type: r });\n class t {\n constructor(n, o) {\n this._items = {}, this._types = Object.keys(n);\n let a = {}, l = Object.keys(n);\n for (let i = 0; i < l.length; i++) {\n let u = l[i], f = n[u];\n a[u] = typeof f == \"string\" ? e(u, f) : f;\n }\n this._items = a, this._presentationStyle = o?.presentationStyle ?? \"unspecified\";\n }\n get types() {\n return this._types;\n }\n getType(n) {\n return Promise.resolve(this._items[n]);\n }\n supports(n) {\n return !0;\n }\n }\n globalThis.ClipboardItem = t;\n}\nvar Ct, st = async (e, t = W.Html) => new Promise(async (r, n) => {\n try {\n let o = await Co(e, t);\n if (o) {\n let a = new FileReader();\n a.onload = () => {\n r(a.result);\n }, a.onerror = () => {\n r(\"\");\n }, a.readAsText(o);\n } else r(\"\");\n } catch (o) {\n n(o);\n }\n}), It = async (e, t = W.Html) => {\n let r = await st(e, t);\n if (!r) return null;\n let n = null;\n try {\n n = new DOMParser().parseFromString(r, W.Html);\n } catch {\n console.warn(\"Can't parse html from clipboard.\");\n }\n return n;\n}, Io = async (e) => {\n e && await e.writeText(\"\");\n}, Oe = \"clipboard-uuid\", Re = \"web text/uuid\", $t = (e) => `<div style=\"display:none\" ${Oe}=\"${e}\"/>`, Rt = { type: W.Plain }, _t = { type: W.Html }, Nt = { type: Re }, $o = (e, t) => {\n let r = null;\n try {\n let n = new DOMParser().parseFromString(t, W.Html);\n n.body.firstElementChild?.setAttribute(Oe, e), r = n.getElementsByTagName(\"body\")[0].innerHTML;\n } catch (n) {\n console.warn(\"Can't embed uuid.\", n);\n }\n return r;\n}, Lt = (e, t) => {\n if (!t || !e) return !1;\n try {\n let r = t.querySelectorAll(`[${Oe}=\"${e}\"]`);\n if (r && r.length === 1) return !0;\n if (t.querySelector(\"parsererror\")) throw Error(\"We are unable to parse node\");\n return !1;\n } catch {\n return !1;\n }\n}, kt = class {\n constructor(e) {\n if (this._state = null, this._nativeClipboard = null, this._onFocus = null, this._onBlur = null, e?.nativeClipboard === void 0 || e?.nativeClipboard === !0) try {\n this._nativeClipboard = globalThis?.navigator.clipboard;\n } catch {\n e?.nativeClipboard === !0 && console.warn(\"NativeClipboard option set to true but no native clipboard available.\");\n }\n else this._nativeClipboard = e?.nativeClipboard === !1 ? null : e?.nativeClipboard ?? null;\n this._disableCheckOnFocus = e?.disableCheckOnFocus ?? !1, this._init();\n }\n async _checkForChanges() {\n this._nativeClipboard && this._state && !this._disableCheckOnFocus && await Qe(\"clipboard-read\", async () => {\n await Ze();\n let e = await st(this._nativeClipboard, Re);\n if (!this._state || e && e === this._state.uuid) return !0;\n let t = await It(this._nativeClipboard, W.Html);\n return !this._state || (Lt(this._state.uuid, t) || this.clear(), !0);\n }, async (e) => {\n e?.message === \"denied\" || e.message?.includes(\"Document is not focused\") || Xe() === pe.Safari || console.warn(\"Unable to detect clipboard changes: \", e);\n });\n }\n _init() {\n let e = this;\n this._listeners = /* @__PURE__ */ new Map(), this._listenersCapture = /* @__PURE__ */ new Map(), this._state = null, this._nativeClipboard && (this._onFocus = () => {\n e._checkForChanges();\n }, this._onBlur = () => {\n globalThis.addEventListener?.(\"focus\", e._onFocus, { once: !0 });\n }, globalThis.addEventListener?.(\"blur\", this._onBlur), this._nativeClipboard.addEventListener(\"clipboardchange\", (t) => {\n e._checkForChanges();\n }));\n }\n async read() {\n if (!this._nativeClipboard) return this._state?.items ?? null;\n let e = this;\n return await Qe(\"clipboard-read\", async () => {\n if (await Ze(), this._state?.uuid) {\n let t = await st(this._nativeClipboard, Re);\n if (t && t === e._state?.uuid) return !0;\n let r = await It(this._nativeClipboard, W.Html);\n if (Lt(e._state?.uuid, r)) return !0;\n }\n return e._state = {\n items: await Or(this._nativeClipboard),\n uuid: null,\n ref: null\n }, this.dispatchEvent(new Event(\"clipboardread\")), !0;\n }, async (t) => {\n this.dispatchEvent(new Event(\"clipboarderrorread\"));\n }), this._state?.items ?? [];\n }\n async write(e) {\n return this._write({\n uuid: Ke(),\n items: e,\n ref: null\n });\n }\n async _write(e) {\n if (!this._nativeClipboard) return this._state = e, this.dispatchEvent(new Event(\"clipboardwrite\")), void this.dispatchEvent(new Event(\"clipboardchange\"));\n let t = this, r = [], n = e.uuid, o = e.items ?? [], a = () => {\n t._state = {\n uuid: n,\n ref: e.ref,\n items: r\n }, t.dispatchEvent(new Event(\"clipboardwrite\")), t.dispatchEvent(new Event(\"clipboardchange\"));\n };\n await Qe(\"clipboard-write\", async () => {\n await Ze(), n && o.length === 0 && (o.push(new ClipboardItem({ [Re]: new Blob([n], Nt) })), o.push(new ClipboardItem({ [W.Html]: new Blob([$t(n)], _t) })));\n for (let l = 0; l < Math.min(1, o.length); l++) {\n let i = o[l], u = i.types.indexOf(W.Html), f = null;\n if (u !== -1 && (f = await lt(await i.getType(W.Html)), f &&= $o(n, f)), !f && i.types.includes(W.Plain)) {\n let I = await i.getType(W.Plain);\n if (I) {\n let M = null;\n typeof I == \"string\" ? (console.warn(\"text as string\", I), M = I) : M = await lt(I), M && (f = `<div ${Oe}=\"${n}\">${M}</div>`);\n }\n }\n if (!f && i.types.includes(W.Png)) {\n let I = _r(await (await i.getType(W.Png)).arrayBuffer());\n f = `<div ${Oe}=\"${n}\"><img src=\"${Nr + I}\"/></div>`;\n }\n !f && n && (f = $t(n));\n let h = new Blob([f ?? \"\"], _t), c = {}, g = i.types, T = g.length;\n for (let I = 0; I < T; I++) {\n let M = g[I];\n c[M] = I === u ? h : i.getType(M);\n }\n f && u === -1 && (c[W.Html] = h), n && (c[Re] = new Blob([n], Nt)), r.push(new ClipboardItem(c));\n }\n try {\n r && r.length !== 0 ? await this._nativeClipboard.write(r) : await Io(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(e) {\n if (!e) return void this.clear();\n let t = null, r = {};\n try {\n let o = await e.toText?.() ?? null;\n o && (r[W.Plain] = new Blob([o ?? \"\"], Rt));\n } catch (o) {\n t = o;\n }\n try {\n let o = await e.toHtml?.() ?? null;\n o && (r[W.Html] = new Blob([o], { type: W.Html }));\n } catch (o) {\n t = o, console.warn(\"export to html\", o);\n }\n try {\n let o = await e.toImage?.() ?? null;\n o && (r[W.Png] = o);\n } catch (o) {\n t = o, console.warn(\"export to png\", o);\n }\n let n = this._write({\n uuid: Ke(),\n ref: e,\n items: Object.keys(r).length > 0 ? [new ClipboardItem(r)] : null\n });\n if (t) throw t;\n return n;\n }\n clear(e = !1) {\n this._state && (this._state = null, e && this._write({\n uuid: null,\n ref: null,\n items: null\n }), 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 (e, t) => {\n let r = await this.read(), n = null, o = r ? r.length : 0;\n for (let l = 0; !n && l < o; l++) {\n let i = r[l];\n i.types.includes(W.Plain) && (n = await i.getType(W.Plain));\n }\n if (!n) return void e(\"\");\n let a = new FileReader();\n a.onload = () => {\n e(a.result);\n }, a.readAsText(n), a.onerror = (l) => {\n t(l);\n };\n });\n }\n async writeText(e) {\n let t = [new ClipboardItem({ [W.Plain]: new Blob([e], Rt) })];\n return this._write({\n uuid: Ke(),\n items: t,\n ref: null\n });\n }\n addEventListener(e, t, r = {}) {\n let n = r?.capture ? this._listenersCapture : this._listeners, o = n.get(e);\n o || (o = /* @__PURE__ */ new Map(), n.set(e, o)), t && o.set(t, typeof r == \"boolean\" ? {} : r);\n }\n dispatchEvent(e) {\n if (!e) return !1;\n let t = (r) => {\n let n = r.get(e.type);\n n && n.forEach((o, a) => {\n try {\n typeof a == \"function\" ? a(e) : a.handleEvent && a.handleEvent(e), o.once && n.delete(a);\n } catch (l) {\n console.warn(l);\n }\n });\n };\n return t(this._listenersCapture), t(this._listeners), !0;\n }\n removeEventListener(e, t, r) {\n let n = r?.capture ? this._listenersCapture : this._listeners, o = n.get(e);\n o && t && (o.delete(t), o.size === 0 && n.delete(e));\n }\n close() {\n this._onFocus && globalThis.removeEventListener?.(\"focus\", this._onFocus), this._onBlur && globalThis.removeEventListener?.(\"blur\", this._onBlur);\n }\n};\n(Ct = kt ||= {}).ErrorMessages = Ao, Ct.Global = new kt();\nObject.freeze({});\nnew TextDecoder();\nconst w = Object.freeze({\n /** Exported function has no body. */\n NoBody: \"SXL1001\",\n /** Anonymous exported function is not allowed. */\n Anonymous: \"SXL1002\",\n /** Internal parse failure while analyzing the module. */\n ParseError: \"SXL1003\",\n /** Invalid parameter type. */\n InvalidParamType: \"SXL2001\",\n /** Invalid return type. */\n InvalidReturnType: \"SXL2002\",\n /** `undefined` / `null` / `void` is not valid as an input type. */\n UndefinedInput: \"SXL2003\",\n /** A type annotation is required but missing. */\n MissingType: \"SXL2004\",\n /** An `Array` must be typed (e.g. `number[]`, not bare `[]`). */\n UntypedArray: \"SXL2005\",\n /** A generic type must be supplied exactly one type argument. */\n GenericArity: \"SXL2006\",\n /** A return type cannot combine multiple modifiers (e.g. async + stream). */\n MultipleModifiers: \"SXL2007\",\n /** A context parameter must be the first parameter. */\n ContextNotFirst: \"SXL2010\",\n /** More than one `Lambda` parameter. */\n MultipleLambda: \"SXL2020\",\n /** A `Lambda` parameter must be the last parameter. */\n LambdaNotLast: \"SXL2021\",\n /** A `Lambda` parameter/return scalar type mismatch. */\n LambdaScalarMismatch: \"SXL2022\",\n /** `Lambda` is not valid as a return type. */\n LambdaReturn: \"SXL2023\",\n /** A bare function type is not valid as a return type. */\n FunctionReturn: \"SXL2024\",\n /** A `Lambda` function type has the wrong number of parameters. */\n LambdaArity: \"SXL2025\",\n /** Arrays of more than 2 dimensions are not supported. */\n ArrayDepth: \"SXL2030\",\n /** `Repeating<T>` used somewhere it cannot be (a return type, a rest parameter, nested in an array). */\n RepeatingPosition: \"SXL2040\",\n /** More than one `Repeating<T>` parameter. */\n MultipleRepeating: \"SXL2041\",\n /** A `Repeating<T>` group's slots are malformed (unlabelled tuple member, or a 1-element tuple). */\n RepeatingSlots: \"SXL2042\",\n /** An optional parameter/slot where a repeating group does not allow one. */\n RepeatingOptional: \"SXL2043\",\n /** `Repeating<T, Max>`'s maximum argument count is not a whole number in range. */\n RepeatingMax: \"SXL2044\",\n /** An enum mixes number and string members. */\n EnumMixed: \"SXL2050\",\n /** An enum member is not a constant number or string. */\n EnumMemberNotConstant: \"SXL2051\",\n /** A parameter type that is not declared in this module, so an enum behind it cannot be read. */\n EnumNotLocal: \"SXL2052\",\n /** An `as const` object used as a parameter type without its same-name type alias. */\n EnumMissingAlias: \"SXL2053\",\n /** An enum where no single argument is coerced to it (`IRange<E>`, `Lazy<E>`). */\n EnumPosition: \"SXL2054\",\n /** `Omittable<E, V>` whose `V` is neither a member of `E` nor `null`. */\n EnumOmittedValue: \"SXL2055\",\n /** No exported functions found in the module. */\n NoExports: \"SXL3001\",\n /** A `@param` tag references a parameter that does not exist. */\n UnknownParam: \"SXL3002\",\n /** A calculation function takes a built-in function's name. */\n BuiltInName: \"SXL3003\",\n /** A `@returnKind` tag names a value kind that does not exist, or names none at all. */\n UnknownReturnKind: \"SXL3005\",\n /** A calculation function's name (its `@name`, or else its own) is not a name a formula can call. */\n InvalidName: \"SXL3006\",\n /** Two functions in one module register under the same name (an `@name` repeats another's). */\n DuplicateName: \"SXL3007\",\n /** A function has no JSDoc description. */\n MissingSummary: \"SXL9001\",\n /** A `@param` is missing a description. */\n MissingParamDescription: \"SXL9002\",\n /**\n * Missing `@returns` on a non-void function.\n * @deprecated Retained for code stability but no longer emitted - Excel-style tooltips describe\n * behavior via the summary, so a standalone `@returns` warning is noise.\n */\n MissingReturns: \"SXL9003\",\n /** Two enum members share a value. */\n EnumDuplicateValue: \"SXL9004\",\n /** An enum member has no doc comment. */\n EnumMemberUndocumented: \"SXL9005\"\n});\nvar Fo;\n(function(e) {\n e.MAX_TEXT_LENGTH = 32767;\n let t = e.MAX_SIGNIFICANT_DIGITS = 15;\n e.truncateNumberText = function(r) {\n let n = r.length;\n if (n <= t) return r;\n let o = 0, a = null;\n for (let l = 0; l < n; l++) {\n let i = r.charCodeAt(l);\n if (i >= 48 && i <= 57) {\n if (o === 0 && i === 48) continue;\n o++, o > t && ((a ??= r.split(\"\"))[l] = \"0\");\n } else if ((i === 69 || i === 101) && o > 0) break;\n }\n return a === null ? r : a.join(\"\");\n };\n})(Fo ||= {});\nvar Ut, et, Do, S, me = {\n Number: \"number\",\n String: \"string\",\n Boolean: \"boolean\",\n Error: \"error\",\n RichData: \"richData\",\n Null: \"null\"\n}, Pt = {\n ...me,\n Date: \"date\"\n}, jt = {\n ...me,\n Reference: \"reference\",\n Array: \"array\",\n Lambda: \"lambda\",\n Omitted: \"omitted\"\n};\n(et = Ut ||= {}).Axis = {\n Column: \"column\",\n Row: \"row\"\n}, et.AxisSelection = {\n ...Ut.Axis,\n Both: \"both\"\n}, et.Direction = {\n Up: \"up\",\n Down: \"down\",\n Left: \"left\",\n Right: \"right\"\n}, (Do ||= {}).Aggregate = {\n Count: \"count\",\n NumericalCount: \"numericalCount\",\n Sum: \"sum\",\n Average: \"average\",\n StdDev: \"stdDev\",\n PopulationStdDev: \"stdDevP\",\n Variance: \"var\",\n PopulationVariance: \"varP\",\n Min: \"min\",\n Max: \"max\"\n}, (function(e) {\n let t = e.Code = {\n Parse: 0,\n Null: 1,\n Div0: 2,\n Value: 3,\n Ref: 4,\n Name: 5,\n Num: 6,\n NA: 7,\n GettingData: 8,\n Spill: 9,\n Connect: 10,\n Blocked: 11,\n Unknown: 12,\n Field: 13,\n Calc: 14,\n Busy: 16,\n Python: 19,\n Timeout: 20\n }, r = e.Label = {\n Parse: \"#PARSE!\",\n Null: \"#NULL!\",\n Div0: \"#DIV/0!\",\n Value: \"#VALUE!\",\n Ref: \"#REF!\",\n Name: \"#NAME?\",\n Num: \"#NUM!\",\n NA: \"#N/A\",\n GettingData: \"#GETTING_DATA\",\n Spill: \"#SPILL!\",\n Connect: \"#CONNECT!\",\n Blocked: \"#BLOCKED!\",\n Unknown: \"#UNKNOWN!\",\n Field: \"#FIELD!\",\n Calc: \"#CALC!\",\n Busy: \"#BUSY!\",\n Python: \"#PYTHON!\",\n Timeout: \"#TIMEOUT!\"\n };\n class n extends Error {\n constructor(_, L, fe, J) {\n super(fe, J), this._label = L, this._code = _, this.details = J;\n }\n static {\n this.code = S.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(_) {\n return !!_ && (this._code === _._code || this._code === _.code);\n }\n get [Symbol.toStringTag]() {\n return \"[FormulaError]\";\n }\n toString() {\n return this._label;\n }\n }\n e.Known = n;\n class o extends n {\n constructor(_, L) {\n super(t.Parse, r.Parse, _, L);\n }\n static {\n this.code = S.Code.Parse;\n }\n getDetails() {\n let _ = this.details;\n return {\n line: _?.line ?? 1,\n column: _?.column ?? 1,\n offset: _?.offset ?? 0,\n length: _?.length ?? 0\n };\n }\n }\n e.Parse = o;\n class a extends n {\n constructor(_, L) {\n super(t.Null, r.Null, _, L);\n }\n static {\n this.code = S.Code.Null;\n }\n }\n e.Null = a;\n class l extends n {\n constructor(_, L) {\n super(t.Div0, r.Div0, _, L);\n }\n static {\n this.code = S.Code.Div0;\n }\n }\n e.Div0 = l;\n class i extends n {\n constructor(_, L) {\n super(t.Value, r.Value, _, L);\n }\n static {\n this.code = S.Code.Value;\n }\n }\n e.Value = i;\n class u extends n {\n constructor(_, L) {\n super(t.Ref, r.Ref, _, L);\n }\n static {\n this.code = S.Code.Ref;\n }\n }\n e.Ref = u;\n class f extends n {\n constructor(_, L) {\n super(t.Name, r.Name, _, L);\n }\n static {\n this.code = S.Code.Name;\n }\n }\n e.Name = f;\n class h extends n {\n constructor(_, L) {\n super(t.Num, r.Num, _, L);\n }\n static {\n this.code = S.Code.Num;\n }\n }\n e.Num = h;\n class c extends n {\n constructor(_, L) {\n super(t.NA, r.NA, _, L);\n }\n static {\n this.code = S.Code.NA;\n }\n }\n e.NA = c;\n class g extends n {\n constructor(_, L) {\n super(t.GettingData, r.GettingData, _, L);\n }\n static {\n this.code = S.Code.GettingData;\n }\n }\n e.GettingData = g;\n class T extends n {\n constructor(_, L) {\n super(t.Spill, r.Spill, _, L);\n }\n static {\n this.code = S.Code.Spill;\n }\n }\n e.Spill = T;\n class I extends n {\n constructor(_, L) {\n super(t.Connect, r.Connect, _, L);\n }\n static {\n this.code = S.Code.Connect;\n }\n }\n e.Connect = I;\n class M extends n {\n constructor(_, L) {\n super(t.Blocked, r.Blocked, _, L);\n }\n static {\n this.code = S.Code.Blocked;\n }\n }\n e.Blocked = M;\n class H extends n {\n constructor(_, L) {\n super(t.Unknown, r.Unknown, _, L);\n }\n static {\n this.code = S.Code.Unknown;\n }\n }\n e.Unknown = H;\n class E extends n {\n constructor(_, L) {\n super(t.Field, r.Field, _, L);\n }\n static {\n this.code = S.Code.Field;\n }\n }\n e.Field = E;\n class A extends n {\n constructor(_, L) {\n super(t.Calc, r.Calc, _, L);\n }\n static {\n this.code = S.Code.Calc;\n }\n }\n e.Calc = A;\n class R extends n {\n constructor(_, L) {\n super(t.Busy, r.Busy, _, L);\n }\n static {\n this.code = S.Code.Busy;\n }\n }\n e.Busy = R;\n class P extends n {\n constructor(_, L) {\n super(t.Python, r.Python, _, L);\n }\n static {\n this.code = S.Code.Python;\n }\n }\n e.Python = P;\n class Z extends n {\n constructor(_, L) {\n super(t.Timeout, r.Timeout, _, L);\n }\n static {\n this.code = S.Code.Timeout;\n }\n }\n e.Timeout = Z;\n})(S ||= {});\nvar te = {};\nte[S.Code.Parse] = S.Parse, te[S.Code.Null] = S.Null, te[S.Code.Div0] = S.Div0, te[S.Code.Value] = S.Value, te[S.Code.Ref] = S.Ref, te[S.Code.Name] = S.Name, te[S.Code.Num] = S.Num, te[S.Code.NA] = S.NA, te[S.Code.GettingData] = S.GettingData, te[S.Code.Spill] = S.Spill, te[S.Code.Connect] = S.Connect, te[S.Code.Blocked] = S.Blocked, te[S.Code.Unknown] = S.Unknown, te[S.Code.Field] = S.Field, te[S.Code.Calc] = S.Calc, te[S.Code.Busy] = S.Busy, te[S.Code.Python] = S.Python, te[S.Code.Timeout] = S.Timeout;\nvar Dr = /* @__PURE__ */ new Map(), Ur = /* @__PURE__ */ new Map(), Pr = /* @__PURE__ */ new Map(), jr = /* @__PURE__ */ new Map(), Bt = Object.keys(te);\nfor (let e = 0; e < Bt.length; e++) {\n let t = te[Bt[e]], r = new t();\n Pr.set(r.getLabel(), t), jr.set(r.getCode(), t), Dr.set(r.getLabel(), r), Ur.set(r.getCode(), r);\n}\n(function(e) {\n let t = e.getBuiltInByCode = (r) => Ur.get(r);\n e.BuiltIn = {\n Parse: t(S.Code.Parse),\n Null: t(S.Code.Null),\n Div0: t(S.Code.Div0),\n Value: t(S.Code.Value),\n Ref: t(S.Code.Ref),\n Name: t(S.Code.Name),\n Num: t(S.Code.Num),\n NA: t(S.Code.NA),\n GettingData: t(S.Code.GettingData),\n Spill: t(S.Code.Spill),\n Connect: t(S.Code.Connect),\n Blocked: t(S.Code.Blocked),\n Unknown: t(S.Code.Unknown),\n Field: t(S.Code.Field),\n Calc: t(S.Code.Calc),\n Busy: t(S.Code.Busy),\n Python: t(S.Code.Python),\n Timeout: t(S.Code.Timeout)\n }, e.newTypedError = (r, n, o) => {\n let a;\n return a = typeof r == \"string\" ? Pr.get(r) : jr.get(r), a ||= S.Unknown, new a(n, o);\n }, e.getBuiltInByLabel = (r) => Dr.get(r), e.isError = function(r, n) {\n return !!r && r.isFormulaError === !0 && (n === void 0 || r.getCode() === n);\n };\n})(S ||= {});\nvar Uo = class {\n createRange(e, t, r) {\n throw new oe();\n }\n flattenAreas(e) {\n throw new oe();\n }\n getReference(e, t) {\n throw new oe();\n }\n getResizedReference(e, t, r) {\n throw new oe();\n }\n getNumberFormat(e, t) {\n throw new oe();\n }\n fromSerialDate(e, t) {\n throw new oe();\n }\n toSerialDate(e, t) {\n throw new oe();\n }\n getDateParts(e, t) {\n throw new oe();\n }\n getSerialDate(e, t, r, n, o, a, l) {\n throw new oe();\n }\n getNow() {\n throw new oe();\n }\n getRandom() {\n return Math.random();\n }\n getValueAt(e, t, r, n) {\n return null;\n }\n getEntireCoords() {\n return Kr;\n }\n isValidDate(e, t) {\n return e instanceof Date || Object.prototype.toString.call(e) === \"[object Date]\" ? !isNaN(e.getTime()) : !t && typeof e == \"number\" && !(e < 0 || e > jo);\n }\n getRow() {\n return 0;\n }\n getColumn() {\n return 0;\n }\n isImplicitIntersect() {\n return !1;\n }\n getFormulaAt(e, t, r) {\n return null;\n }\n getSpillAt(e, t, r) {\n return null;\n }\n getSheetIndex(e) {\n return -1;\n }\n getSheetCount() {\n return 1;\n }\n markVolatile() {}\n formatResults(e) {}\n filterHidden(e, t) {\n return e;\n }\n filterTotals(e) {\n return e;\n }\n getFunction(e) {\n return null;\n }\n getAddress(e, t) {\n throw new oe();\n }\n parseAsSerialDate(e, t) {\n throw new oe();\n }\n parseAsDate(e, t) {\n throw new oe();\n }\n parseAsNumber(e, t) {\n throw new oe();\n }\n createCriteria(e, t) {\n throw new oe();\n }\n createGrouping(e, t) {\n throw new oe();\n }\n parseAsLiteral(e) {\n let t = e.toUpperCase();\n return t === \"TRUE\" || t !== \"FALSE\" && S.getBuiltInByLabel(t);\n }\n toText(e) {\n return typeof e == \"string\" ? e : e == null ? \"\" : typeof e == \"boolean\" ? e ? \"TRUE\" : \"FALSE\" : e?.isFormulaError ? e.getLabel() : String(e);\n }\n compare(e, t, r) {\n if (e === t) return 0;\n let n = Kt(e), o = Kt(t);\n return n === o ? e < t ? -1 : +(e > t) : n < o ? -1 : 1;\n }\n getRuntime() {\n return Po;\n }\n getArgs() {\n throw new oe(Br);\n }\n}, Kt = (e) => {\n if (e == null) return 0;\n switch (typeof e) {\n case \"number\": return 1;\n case \"string\": return 2;\n case \"boolean\": return 3;\n default: return 4;\n }\n}, Br = \"FormulaContext.getArgs() is only valid while a function body is running\", oe = class extends Error {\n constructor(e = \"Not implemented in StubbedFormulaContext\") {\n super(e), this.name = \"NotImplementedError\";\n }\n}, Kr = Object.freeze({\n colStart: 0,\n rowStart: 0,\n colEnd: 2 ** 14 - 1,\n rowEnd: 2 ** 20 - 1\n}), Po = {\n isDate1904: () => !1,\n getLocale: () => zt.tag,\n getLocaleProfile: () => zt,\n isR1C1: () => !1,\n getNow: () => 0,\n getRandom: () => Math.random(),\n getLocation: () => \"unknown\",\n getVersion: () => \"1.0.0\",\n getOS: () => \"unknown\",\n getUser: () => \"unidentified\",\n getDescription: () => \"Stubbed Formula Context\"\n}, jo = 2958465, Ue = new Uo(), Bo = class {\n constructor() {\n this._scope = Ue, this._argsFn = null;\n }\n _setScope(e) {\n this._scope = e ?? Ue;\n }\n _getScope() {\n return this._scope;\n }\n _setArgsProvider(e) {\n this._argsFn = e;\n }\n getNumberFormat(e, t) {\n return this._getScope().getNumberFormat(e, t);\n }\n getEntireCoords() {\n return this._getScope().getEntireCoords() ?? Kr;\n }\n parseAsSerialDate(e, t) {\n return this._getScope().parseAsSerialDate(e, t);\n }\n parseAsDate(e, t) {\n return this._getScope().parseAsDate(e, t);\n }\n parseAsNumber(e, t) {\n return this._getScope().parseAsNumber(e, t);\n }\n createCriteria(e, t) {\n return this._getScope().createCriteria(e, t);\n }\n createGrouping(e, t) {\n return this._getScope().createGrouping(e, t);\n }\n parseAsLiteral(e) {\n let t = this._getScope();\n return t.parseAsLiteral ? t.parseAsLiteral(e) : Ue.parseAsLiteral(e);\n }\n toText(e) {\n return this._getScope().toText(e);\n }\n isValidDate(e, t = !1) {\n return this._getScope().isValidDate(e, t);\n }\n fromSerialDate(e, t = !1) {\n return this._getScope().fromSerialDate(e, t);\n }\n toSerialDate(e, t = !1) {\n return this._getScope().toSerialDate(e, t);\n }\n getDateParts(e, t) {\n return this._getScope().getDateParts(e, t);\n }\n getSerialDate(e, t, r, n = 0, o = 0, a = 0, l = 0) {\n return this._getScope().getSerialDate(e, t, r, n, o, a, l);\n }\n getNow() {\n return this._getScope().getNow();\n }\n getRandom() {\n return this._getScope().getRandom?.() ?? Math.random();\n }\n createRange(e, t, r) {\n return this._getScope().createRange(e, t, r);\n }\n flattenAreas(e) {\n if (!Array.isArray(e)) return e;\n let t = [];\n for (let r = 0; r < e.length; r++) {\n let n = e[r], { rows: o, columns: a } = n.getShape();\n for (let l = 0; l < o; l++) for (let i = 0; i < a; i++) t.push(n.getValueAt(l, i));\n }\n return this.createRange(t.length, 1, (r, n) => t[n.rowIndex]);\n }\n getRow() {\n return this._getScope().getRow?.() ?? 0;\n }\n getColumn() {\n return this._getScope().getColumn?.() ?? 0;\n }\n isImplicitIntersect() {\n return this._getScope().isImplicitIntersect?.() ?? !1;\n }\n getReference(e, t) {\n return this._getScope().getReference(e, t);\n }\n getResizedReference(e, t, r) {\n return this._getScope().getResizedReference(e, t, r);\n }\n getValueAt(e, t, r) {\n return this._getScope().getValueAt(e, t, r);\n }\n getFormulaAt(e, t, r) {\n return this._getScope().getFormulaAt?.(e, t, r) ?? null;\n }\n getSpillAt(e, t, r) {\n return this._getScope().getSpillAt?.(e, t, r) ?? null;\n }\n getSheetIndex(e) {\n return this._getScope().getSheetIndex?.(e) ?? -1;\n }\n getSheetCount() {\n return this._getScope().getSheetCount?.() ?? 1;\n }\n markVolatile() {\n this._getScope().markVolatile?.();\n }\n formatResults(e) {\n this._getScope().formatResults?.(e);\n }\n filterHidden(e, t) {\n return this._getScope().filterHidden?.(e, t) ?? e;\n }\n filterTotals(e) {\n return this._getScope().filterTotals?.(e) ?? e;\n }\n getFunction(e) {\n return this._getScope().getFunction?.(e) ?? null;\n }\n getAddress(e, t) {\n return this._getScope().getAddress(e, t);\n }\n compare(e, t, r) {\n return this._getScope().compare?.(e, t, r) ?? Ue.compare(e, t, r);\n }\n getRuntime() {\n return this._getScope().getRuntime();\n }\n getArgs() {\n let e = this._argsFn, t = e ? e() : null;\n if (!t) throw new oe(Br);\n return t;\n }\n get [Symbol.toStringTag]() {\n return \"[FormulaContext]\";\n }\n toString() {\n return this._getScope()?.toString?.() ?? \"{STUB SCOPE}\";\n }\n}, zt = Object.freeze({\n tag: \"en-US\",\n numberingSystem: \"latn\",\n decimal: \".\",\n group: \",\",\n grouping: [3],\n minusSign: \"-\",\n percentSign: \"%\",\n permilleSign: \"‰\",\n currencyCode: \"USD\",\n currencySymbol: \"$\",\n currencyDisplay: \"symbol\",\n currencyPosition: \"before\",\n currencySpacing: \"tight\",\n date: Object.freeze({\n calendar: \"gregory\",\n short: \"M/d/yy\",\n medium: \"MMM d, y\",\n long: \"MMMM d, y\",\n timeShort: \"h:mm a\",\n timeLong: \"h:mm:ss a\",\n am: \"AM\",\n pm: \"PM\",\n firstDay: 0,\n weekend: [6, 0],\n monthsWide: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n ],\n monthsAbbr: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\"\n ],\n weekdaysWide: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\"\n ],\n weekdaysAbbr: [\n \"Sun\",\n \"Mon\",\n \"Tue\",\n \"Wed\",\n \"Thu\",\n \"Fri\",\n \"Sat\"\n ],\n hour12: !0\n }),\n listSeparator: \",\",\n csvDelimiter: \",\",\n rtl: !1,\n collator: Object.freeze({\n sensitivity: \"base\",\n numeric: !0\n })\n});\nnew Bo();\nconst Ko = [\n {\n name: \"param\",\n group: \"jsdoc\",\n description: \"Document a parameter. A string union type becomes a dropdown of allowed options.\",\n snippet: \"param ${1:name} ${2:description}\"\n },\n {\n name: \"returns\",\n aliases: [\"return\"],\n group: \"jsdoc\",\n description: \"Describe the return value.\"\n },\n {\n name: \"category\",\n group: \"sheetxl\",\n description: \"Group the function under a category in the function list.\",\n snippet: \"category ${1:name}\"\n },\n {\n name: \"name\",\n group: \"sheetxl\",\n description: \"A name an identifier cannot spell: the name formulas call a function by (MY.FUNC), or an enum member's label.\",\n snippet: \"name ${1:NAME}\"\n },\n {\n name: \"description\",\n group: \"sheetxl\",\n description: \"A longer description of the function.\"\n },\n {\n name: \"deprecated\",\n group: \"sheetxl\",\n standalone: !0,\n description: \"Mark the function as deprecated (optionally with a reason).\"\n },\n {\n name: \"hidden\",\n group: \"sheetxl\",\n standalone: !0,\n description: \"Hide the function from the function list.\"\n },\n {\n name: \"returnkind\",\n group: \"sheetxl\",\n description: \"Declare the value kind of the return (a ValueKind word, e.g. `number`, `array`, `reference`) where the type spelling cannot say it (a union return collapses to any).\",\n snippet: \"returnKind ${1:number}\"\n },\n {\n name: \"example\",\n group: \"jsdoc\",\n description: \"Provide a usage example.\"\n },\n {\n name: \"see\",\n group: \"jsdoc\",\n description: \"Reference a related function or link.\"\n }\n], zo = (() => {\n const e = /* @__PURE__ */ new Map();\n for (const t of Ko) if (e.set(t.name, t), t.aliases) for (const r of t.aliases) e.set(r, t);\n return e;\n})();\nfunction Vo(e) {\n if (!e) return;\n const t = (e.startsWith(\"@\") ? e.slice(1) : e).toLowerCase();\n return zo.get(t);\n}\nfunction Xo(e) {\n return Vo(e)?.standalone === !0;\n}\nconst ct = /* @__PURE__ */ new Map([[\"IReferenceRange\", \"p\"], [\"IRange\", \"r\"]]), tt = new Set(Object.values(jt).filter((e) => e !== jt.Omitted)), mt = /* @__PURE__ */ new Map([\n [\"IWorkbook\", \"workbook\"],\n [\"ISheet\", \"sheet\"],\n [\"ICellRanges\", \"ranges\"],\n [\"ICellRange\", \"range\"]\n]), Go = Array.from(mt.keys()), gt = (e, t) => {\n Array.from(t.keys()).forEach((r) => {\n const n = t.get(r);\n t.set(`${e}.${r}`, n);\n });\n}, Ho = /* @__PURE__ */ new Map([\n [\"Scalar\", \"*\"],\n [\"Lambda\", \"l\"],\n [\"FormulaError.Known\", me.Error],\n [\"Date\", Pt.Date],\n [\"IRichData\", Pt.RichData]\n]), zr = /* @__PURE__ */ new Map([[\"Repeating\", \"repeating\"]]), Wo = /* @__PURE__ */ new Set([\"Flatten\", \"SheetXL.Flatten\"]), Vr = /* @__PURE__ */ new Set([\"AcceptError\"]), Xr = /* @__PURE__ */ new Set([\"Omittable\"]), Gr = /* @__PURE__ */ new Set([\"NoLift\"]), Hr = /* @__PURE__ */ new Set([\"NoFilter\"]), Wr = /* @__PURE__ */ new Set([\"Lazy\"]), ut = /* @__PURE__ */ new Set([\"ReportType\"]), Vt = 255, Jo = /^[a-zA-Z_-￿][a-zA-Z0-9_.-￿]*$/, Yo = /^([a-z]{1,3})([0-9]+)$/i, qo = /^r[0-9]*c[0-9]*$/i, Zo = (e) => {\n if (qo.test(e)) return !0;\n const t = Yo.exec(e);\n if (!t) return !1;\n let r = 0;\n for (const o of t[1].toUpperCase()) r = r * 26 + (o.charCodeAt(0) - 64);\n const n = Number(t[2]);\n return r <= 16384 && n >= 1 && n <= 1048576;\n}, le = \"SheetXL\", Ee = (e) => {\n const t = e.typeName.getText();\n return t.startsWith(`${le}.`) ? t.slice(8) : t;\n};\ngt(le, ct);\ngt(le, mt);\ngt(le, zr);\nVr.add(le + \".AcceptError\");\nXr.add(`${le}.Omittable`);\nGr.add(`${le}.NoLift`);\nHr.add(`${le}.NoFilter`);\nWr.add(`${le}.Lazy`);\nut.add(`${le}.ReportType`);\nconst Qo = /* @__PURE__ */ new Map([\n [\"Promise\", () => ({ async: !0 })],\n [\"Observable\", () => ({ stream: !0 })],\n [\"Volatile\", () => ({ volatile: !0 })],\n [`${le}.Volatile`, () => ({ volatile: !0 })]\n]), Xt = \"__scriptContext__\", Gt = \"script\", ea = /* @__PURE__ */ new Set([\n \"IScript.ScriptContext\",\n `${le}.IScript.ScriptContext`,\n \"ScriptContext\"\n]), Ht = (e, t) => {\n const r = t.literal;\n if (r === void 0) return;\n const n = e.SyntaxKind;\n switch (r.kind) {\n case n.StringLiteral: return r.text;\n case n.NumericLiteral: return parseFloat(r.text);\n case n.TrueKeyword: return !0;\n case n.FalseKeyword: return !1;\n case n.NullKeyword: return null;\n case n.PrefixUnaryExpression: return r.operator === n.MinusToken && r.operand?.kind === n.NumericLiteral ? -parseFloat(r.operand.text) : void 0;\n default: return;\n }\n}, $e = (e) => {\n if (!e || e.length === 0) return \"\";\n let t = \"\";\n for (let r = 0; r < e.length; r++) {\n const n = e[r], o = n.kind;\n if (o !== \"link\") {\n if (o === \"linkName\") {\n const a = e[r + 1];\n if (a?.kind === \"linkText\" && a.text.trim()) continue;\n t += n.text;\n continue;\n }\n if (o === \"linkText\") {\n t += n.text.trim();\n continue;\n }\n t += n.text;\n }\n }\n return t.replace(/\\r\\n?/g, `\n`).split(/\\n[^\\S\\n]*\\n\\s*/).map((r) => r.split(`\n`).map((n) => n.trim()).filter(Boolean).join(\" \")).filter(Boolean).join(`\n`).trim();\n};\nfunction ta(e, t, r, n) {\n const o = n?.builtInNames?.length ? new Set(n.builtInNames.map((s) => s.toUpperCase())) : null, a = [], l = /* @__PURE__ */ new Map(), i = [];\n let u = null;\n const f = (s) => {\n if (!s || typeof s.getStart != \"function\") return {\n start: 0,\n length: 0\n };\n try {\n return {\n start: s.getStart(),\n length: s.getWidth()\n };\n } catch {\n return {\n start: 0,\n length: 0\n };\n }\n }, h = (s, p, d, y) => {\n const { start: v, length: k } = f(s);\n i.push({\n start: v,\n length: k,\n severity: d,\n code: p,\n message: y\n });\n }, c = (s, p, d) => {\n h(s, p, \"error\", d);\n }, g = (s) => s?.parent?.name?.escapedText, T = (s, p, d, y, v = !1, k = !1, j = !1) => {\n const O = { count: 0 }, C = J(s, p, d, y, O, v, k, j);\n O.count >= 2 && (p.range || (p.range = \"m\", O.count -= 2), !y && O.count >= 1 && (O.count -= 1, O.count > 0 && c(s, w.ArrayDepth, `Arrays of more than 2 dimensions are not supported: '${g(s)}'.`))), O.count > 0 && (p.arrayDepth = O.count);\n const D = p.enum;\n return D && (O.count > (j ? 1 : 0) || p.range) && !P.has(p) && (p.valueOrRange || (c(s, w.EnumPosition, `A list cannot hold the enum '${D.id}': '${p.name ?? g(s)}'. Its members reach the body as they are, so nothing checks them against the enum. Take one value per argument ('...x: ${D.id}[]'), or type the list by its scalar ('${D.type}').`), delete p.enum)), C;\n }, I = (s, p, d, y, v) => {\n if (p !== \"Lambda\" && p !== `${le}.Lambda`) return !1;\n const k = s.typeArguments;\n let j = \"*\";\n if (k && k.length === 2) if (v && k[0].kind === e.SyntaxKind.TupleType && (d.lambdaArity = k[0].elements.length), k[1].kind === e.SyntaxKind.AnyKeyword) j = \"raw\";\n else {\n const O = {};\n J(k[1], O, y, !1, { count: 0 }), j = O.scalar ?? \"*\";\n }\n else if (k && k.length === 1 && k[0].kind !== e.SyntaxKind.TupleType && k[0].kind !== e.SyntaxKind.ArrayType) if (v && (d.lambdaArity = 2), k[0].kind === e.SyntaxKind.AnyKeyword) j = \"raw\";\n else {\n const O = {};\n J(k[0], O, y, !1, { count: 0 }), j = O.scalar ?? \"*\";\n }\n return d.lambda = j, !0;\n }, M = (s, p, d, y) => {\n if (!y) {\n c(s, w.FunctionReturn, `Function type is not a valid return type: '${g(s)}'. Declare a 'Lambda' return instead.`);\n return;\n }\n const v = s.type, k = {};\n let j = \"*\";\n v && (v.kind === e.SyntaxKind.AnyKeyword ? j = \"raw\" : (J(v, k, d, !1, { count: 0 }), j = k.scalar ?? \"*\"));\n const O = s.parameters;\n O && !O.some((C) => C.dotDotDotToken) && (p.lambdaArity = O.length), p.lambda = j;\n }, H = /* @__PURE__ */ new Map(), E = /* @__PURE__ */ new Map(), A = /* @__PURE__ */ new Map(), R = /* @__PURE__ */ new Set(), P = /* @__PURE__ */ new WeakSet(), Z = (s) => s !== void 0 && s.getSourceFile() === t, U = (s, p = !1) => {\n return s.getJsDocTags(r).find((y) => y.name === \"name\")?.text?.map((y) => y.text).join(\"\").trim() || (p ? Qt.camelToPrettyCase(s.name) : s.name);\n }, _ = (s) => {\n const p = s.getJsDocTags(r).find((d) => d.name === \"deprecated\");\n if (p) return p.text?.map((d) => d.text).join(\"\").trim() || !0;\n }, L = (s, p) => {\n const d = e.isTypeReferenceNode(s) ? s.typeName : void 0, y = d ? r.getSymbolAtLocation(d) : void 0, v = y?.declarations?.length ? y : void 0;\n if (d) {\n if (v && v.flags & e.SymbolFlags.Alias) {\n c(s, w.EnumNotLocal, `'${d.getText()}' is imported, so its declaration cannot be read: '${p}'. An enum must be declared in the module that uses it.`);\n return;\n }\n if (!v || !(v.flags & e.SymbolFlags.Type)) {\n const b = d.getText();\n if (!(v ? (v.flags & e.SymbolFlags.Variable) !== 0 : t.statements.some((x) => e.isVariableStatement(x) && x.declarationList.declarations.some((K) => e.isIdentifier(K.name) && K.name.text === b)))) return null;\n c(s, w.EnumMissingAlias, `'${b}' is a value, not a type: '${p}'. Pair the object with a same-name type — 'type ${b} = typeof ${b}[keyof typeof ${b}];' — or declare it as 'enum ${b} { … }'.`);\n return;\n }\n const m = H.get(v);\n if (m !== void 0) return m;\n if (R.has(v)) return;\n }\n const k = [];\n let j = !1;\n if (v && v.flags & e.SymbolFlags.Enum) {\n if (!v.declarations?.some(Z)) {\n c(s, w.EnumNotLocal, `'${v.name}' is not declared in this module: '${p}'. An enum must be declared in the module that uses it.`);\n return;\n }\n j = !0;\n let m = !1;\n if (v.exports?.forEach((b) => {\n const x = b.valueDeclaration;\n if (!x || !e.isEnumMember(x)) return;\n const K = r.getConstantValue(x);\n if (K === void 0) {\n c(x, w.EnumMemberNotConstant, `'${v.name}.${b.name}' is not a constant number or string. A formula passes the VALUE, so every member needs one that can be read at compile time.`), m = !0;\n return;\n }\n k.push([\n U(b, !0),\n K,\n x,\n $e(b.getDocumentationComment(r)),\n _(b)\n ]);\n }), m) {\n R.add(v);\n return;\n }\n } else {\n const m = r.getTypeFromTypeNode(s), b = e.TypeFlags.Null | e.TypeFlags.Undefined | e.TypeFlags.Void, x = (m.isUnion() ? m.types : [m]).filter((F) => !(F.flags & b)), K = [];\n for (const F of x) {\n if (!(F.flags & (e.TypeFlags.NumberLiteral | e.TypeFlags.StringLiteral))) return v && H.set(v, null), null;\n K.push(F.value);\n }\n if (K.length === 0) return null;\n const re = v?.declarations?.find((F) => e.isTypeAliasDeclaration(F)), Y = e.isUnionTypeNode(s) ? s : re?.type;\n if (Y && e.isUnionTypeNode(Y)) {\n const F = Y.types.map(($) => {\n const ne = r.getTypeFromTypeNode($);\n return ne.isLiteral() ? ne.value : void 0;\n }), N = ($) => {\n const ne = F.indexOf($);\n return ne < 0 ? F.length : ne;\n };\n K.sort(($, ne) => N($) - N(ne));\n }\n const ee = v && v.flags & e.SymbolFlags.Variable ? v.valueDeclaration : void 0, ge = new Set(K);\n if (v && ee && Z(ee)) for (const F of r.getTypeOfSymbolAtLocation(v, ee).getProperties()) {\n const N = F.valueDeclaration, $ = r.getTypeOfSymbolAtLocation(F, N ?? ee);\n if (!($.flags & (e.TypeFlags.NumberLiteral | e.TypeFlags.StringLiteral))) continue;\n const ne = $.value;\n K.includes(ne) && (j = !0, ge.delete(ne), k.push([\n U(F, !0),\n ne,\n N,\n $e(F.getDocumentationComment(r)),\n _(F)\n ]));\n }\n for (const F of K) ge.has(F) && k.push([\n String(F),\n F,\n void 0,\n null\n ]);\n }\n if (k.length === 0) return null;\n const O = typeof k[0][1] == \"number\";\n if (k.some(([, m]) => typeof m == \"number\" !== O)) {\n c(s, w.EnumMixed, `'${v?.name ?? s.getText()}' mixes number and string members: '${p}'. A parameter has one type, so an enum is all numbers or all strings.`);\n return;\n }\n const C = v ? U(v) : k.map(([, m]) => String(m)).join(\"|\"), D = v ? void 0 : E.get(C);\n if (D) return D;\n if (j) {\n const m = /* @__PURE__ */ new Map();\n for (const [b, x, K, re] of k) {\n const Y = K?.name?.getText() ?? b, ee = m.get(x);\n ee !== void 0 ? h(K ?? s, w.EnumDuplicateValue, \"warning\", `'${C}.${Y}' has the same value as '${C}.${ee}' (${JSON.stringify(x)}). A formula passes the value, so the two cannot be told apart.`) : m.set(x, Y), re === \"\" && h(K ?? s, w.EnumMemberUndocumented, \"warning\", `'${C}.${Y}' is missing a description. Add a doc comment above the member — it is what the argument dropdown shows.`);\n }\n }\n const V = {\n id: C,\n type: O ? me.Number : me.String,\n members: k.map(([m, b, , , x]) => x ? [\n m,\n b,\n x\n ] : [m, b])\n };\n v ? H.set(v, V) : E.set(C, V);\n const z = v ? $e(v.getDocumentationComment(r)) : \"\", B = {};\n for (const [m, , , b] of k) b && (B[m] = { description: b });\n if (z || Object.keys(B).length > 0) {\n const m = {};\n z && (m.summary = z), Object.keys(B).length > 0 && (m.members = B), A.set(V, m);\n }\n return V;\n }, fe = (s, p, d, y) => {\n const v = (O, C, D) => {\n const V = { name: O };\n return T(C, V, d, !0), D && (V.optional = !0), y && !V.acceptError && (V.acceptError = !0), V;\n };\n if (s.kind !== e.SyntaxKind.TupleType) return [v(p, s, !1)];\n const k = s.elements;\n if (k.length < 2) return c(s, w.RepeatingSlots, `'${p}': a repeating group of period ${k.length} must be spelled 'Repeating<T>' without the tuple.`), null;\n const j = [];\n for (let O = 0; O < k.length; O++) {\n const C = k[O];\n if (C.kind !== e.SyntaxKind.NamedTupleMember) return c(C, w.RepeatingSlots, `'${p}': every slot of a repeating group must be labelled, e.g. 'Repeating<[criteriaRange: IRange, criteria: Scalar]>'.`), null;\n const D = !!C.questionToken;\n if (D && O !== k.length - 1) return c(C, w.RepeatingOptional, `'${p}': only the LAST slot of a repeating group may be optional (slot '${C.name?.getText?.()}' is not).`), null;\n j.push(v(C.name?.getText?.() ?? `${O}`, C.type, D));\n }\n return j;\n }, J = (s, p, d, y, v, k = !1, j = !1, O = !1) => {\n if (!s) {\n c(s, w.MissingType, `Type is not defined for '${p?.name ?? \"return\"}'.`);\n return;\n }\n if (s.kind === e.SyntaxKind.ParenthesizedType) return J(s.type, p, d, y, v, k, j, O);\n if (s.kind === e.SyntaxKind.UnionType) {\n const C = (z) => z.kind === e.SyntaxKind.UndefinedKeyword || z.kind === e.SyntaxKind.VoidKeyword || z.kind === e.SyntaxKind.NullKeyword || z.kind === e.SyntaxKind.LiteralType && z.literal?.kind === e.SyntaxKind.NullKeyword, D = s.types.filter((z) => !C(z));\n if (D.length === 1) return J(D[0], p, d, y, v, k, j, O);\n const V = L(s, p.name ?? g(s));\n if (V === void 0) return;\n if (V !== null) {\n p.scalar = V.type, y && (p.enum = V);\n return;\n }\n if (!y) {\n p.scalar = \"*\";\n return;\n }\n if (D.length === 2) {\n const z = (m) => m.kind !== e.SyntaxKind.TypeReference ? !1 : e.isTypeReferenceNode(m) && Ee(m) === \"Lambda\", B = D.findIndex(z);\n if (B >= 0 && !z(D[1 - B])) {\n J(D[1 - B], p, d, y, v, k, j, O), I(D[B], Ee(D[B]), p, d, y);\n return;\n }\n }\n if (y && D.length === 2) {\n const z = (m) => {\n if (!(m.kind !== e.SyntaxKind.TypeReference || m.typeArguments?.length)) return ct.get(Ee(m));\n }, B = D.findIndex((m) => z(m) !== void 0);\n if (B >= 0 && z(D[1 - B]) === void 0) {\n const m = {}, b = v.count;\n if (J(D[1 - B], m, d, y, v, k, !1), m.scalar && !m.range && m.lambda == null && v.count === b) {\n p.range = z(D[B]), p.scalar = m.scalar, p.valueOrRange = !0;\n const x = m.enum;\n x && (p.enum = x);\n return;\n }\n }\n }\n if (y && D.length === 2) {\n const z = (m) => m.kind === e.SyntaxKind.TypeReference && !m.typeArguments?.length && Ee(m) === \"Scalar\", B = D.findIndex(z);\n if (B >= 0 && !z(D[1 - B])) {\n const m = L(D[1 - B], p.name ?? g(s));\n if (m === void 0) return;\n if (m !== null) {\n p.scalar = \"*\", p.enum = m;\n return;\n }\n }\n }\n c(s, w.InvalidParamType, `Union parameter types are not supported: '${g(s)}'. Use a single type, optionally with '| null' or '| undefined', 'T | Lambda<…>' for a value-or-lambda slot, 'IRange | Scalar' for a value-or-range slot, or 'E | Scalar' for an uncoerced slot whose values an enum documents.`);\n return;\n }\n if (s.kind === e.SyntaxKind.NumberKeyword) p.scalar = me.Number;\n else if (s.kind === e.SyntaxKind.StringKeyword) p.scalar = me.String;\n else if (s.kind === e.SyntaxKind.BooleanKeyword) p.scalar = me.Boolean;\n else if (s.kind === e.SyntaxKind.UndefinedKeyword || s.kind === e.SyntaxKind.NullKeyword || s.kind === e.SyntaxKind.VoidKeyword) {\n if (y) {\n c(s, w.UndefinedInput, `'undefined' is not a valid type for input: '${g(s)}'.`);\n return;\n }\n p.scalar = me.Null;\n } else if (s.kind === e.SyntaxKind.BigIntKeyword) p.scalar = me.Number;\n else if (s.kind === e.SyntaxKind.AnyKeyword) y && (p.range = \"*\");\n else if (s.kind === e.SyntaxKind.ArrayType) {\n const C = s.elementType;\n if (!C) {\n c(s, w.UntypedArray, `'Array' must be typed: '${g(s)}'.`);\n return;\n }\n if (y && j) {\n const D = p, V = D.name ?? g(s) ?? \"parameter\", z = D.acceptError;\n delete D.acceptError;\n const B = { name: V };\n T(C, B, d, !0), z && !B.acceptError && (B.acceptError = !0), D.repeating = [B];\n return;\n }\n v.count++, J(C, p, d, y, v);\n } else if (s.kind !== e.SyntaxKind.TupleType) if (s.kind === e.SyntaxKind.TypeReference) {\n const C = Ee(s);\n if (Vr.has(C)) {\n const m = g(s);\n if (!y) {\n c(s, w.InvalidReturnType, `'${C}' is not a valid return type: '${m}'. It describes how an ARGUMENT is received.`);\n return;\n }\n const b = p;\n if (b.acceptError) {\n c(s, w.InvalidParamType, `'${m}' declares 'AcceptError' more than once.`);\n return;\n }\n const x = s.typeArguments;\n if (!x || x.length !== 1) {\n c(s, w.GenericArity, `'${C}' must be typed with exactly 1 type: '${m}'.`);\n return;\n }\n return b.acceptError = !0, J(x[0], p, d, y, v, k, j, O);\n }\n if (ut.has(C)) {\n const m = p.name ?? g(s);\n if (!y) {\n c(s, w.InvalidReturnType, `'ReportType' is not a valid return type: '${m}'. It describes how an ARGUMENT is received.`);\n return;\n }\n const b = s.typeArguments;\n if (!b || b.length !== 1) {\n c(s, w.GenericArity, `'${C}' must be typed with exactly 1 type: '${m}'.`);\n return;\n }\n return p.reportType = !0, J(b[0], p, d, y, v, k, j, O);\n }\n if (Gr.has(C)) {\n const m = p.name ?? g(s);\n if (!y) {\n c(s, w.InvalidReturnType, `'NoLift' is not a valid return type: '${m}'. It describes how an ARGUMENT is received.`);\n return;\n }\n const b = s.typeArguments;\n if (!b || b.length !== 1) {\n c(s, w.GenericArity, `'${C}' must be typed with exactly 1 type: '${m}'.`);\n return;\n }\n const x = p;\n x.noLift = !0;\n const K = v.count;\n J(b[0], p, d, y, v, k, j, O), (x.range || x.lambda != null || x.repeating || v.count !== K) && c(s, w.InvalidParamType, `'${m}': 'NoLift' applies to a SCALAR parameter only - a range, list, repeating or lambda slot never lifts.`);\n return;\n }\n if (Hr.has(C)) {\n const m = p.name ?? g(s);\n if (!y) {\n c(s, w.InvalidReturnType, `'NoFilter' is not a valid return type: '${m}'. It describes how an ARGUMENT is received.`);\n return;\n }\n const b = s.typeArguments;\n if (!b || b.length !== 1) {\n c(s, w.GenericArity, `'${C}' must be typed with exactly 1 type: '${m}'.`);\n return;\n }\n const x = p;\n x.noFilter = !0;\n const K = v.count;\n if (J(b[0], p, d, y, v, k, j, O), x.range || x.lambda != null || v.count !== K) {\n c(s, w.InvalidParamType, `'${m}': 'NoFilter' applies to a SCALAR slot only - a range, list or lambda slot has no members to coerce.`);\n return;\n }\n const re = x.repeating;\n if (re) {\n if (delete x.noFilter, re.length !== 1) {\n c(s, w.InvalidParamType, `'${m}': 'NoFilter' over a repeating group applies to a period-1 group only - write it on the slot that takes the members.`);\n return;\n }\n re[0].noFilter = !0;\n } else j && c(s, w.InvalidParamType, `'${m}': 'NoFilter' applies to a REPEATING slot only - a single scalar argument has no members to coerce.`);\n return;\n }\n if (Xr.has(C)) {\n const m = p.name ?? g(s);\n if (!y) {\n c(s, w.InvalidReturnType, `'Omittable' is not a valid return type: '${m}'. It describes how an ARGUMENT is received.`);\n return;\n }\n const b = s.typeArguments;\n if (!b || b.length < 1 || b.length > 2) {\n c(s, w.GenericArity, `'${C}' must be typed with 1 or 2 types: '${m}'.`);\n return;\n }\n const x = p;\n if (x.omittable = !0, b.length === 2) {\n const Y = Ht(e, b[1]);\n if (Y === void 0) {\n c(s, w.InvalidParamType, `'${m}' declares '${C}' with a second type that is not a literal value. Use a number, string, boolean or null - the engine substitutes it for an omitted argument.`);\n return;\n }\n x.omittedValue = Y;\n }\n const K = J(b[0], p, d, y, v, k, j, O), re = x.omittedValue;\n return x.enum && re !== void 0 && re !== null && !x.enum.members.some(([, Y]) => Y === re) && c(b[1], w.EnumOmittedValue, `'${m}': ${JSON.stringify(re)} is not a member of '${x.enum.id}'. An omitted argument must mean a member (${x.enum.members.map(([, Y]) => JSON.stringify(Y)).join(\", \")}) or null.`), K;\n }\n if (Wr.has(C)) {\n const m = p.name ?? g(s);\n if (!y) {\n c(s, w.InvalidReturnType, `'Lazy' is not a valid return type: '${m}'. It describes how an ARGUMENT is received.`);\n return;\n }\n const b = p;\n if (b.lazy) {\n c(s, w.InvalidParamType, `'${m}' declares 'Lazy' more than once.`);\n return;\n }\n const x = s.typeArguments;\n if (!x || x.length < 1 || x.length > 2) {\n c(s, w.GenericArity, `'${C}' must be typed with 1 or 2 types: '${m}'.`);\n return;\n }\n if (b.lazy = !0, x.length === 2) {\n const K = Ht(e, x[1]);\n if (K === void 0) {\n c(s, w.InvalidParamType, `'${m}' declares '${C}' with a second type that is not a literal value. Use a number, string, boolean or null - the engine substitutes it for an absent argument.`);\n return;\n }\n b.optional = !0, b.defaultValue = K;\n }\n J(x[0], p, d, y, v, k, j, O), b.enum ? (c(s, w.EnumPosition, `'${m}': 'Lazy' cannot hold the enum '${b.enum.id}'. The argument may never be evaluated, so there is no point at which it could be checked against the members.`), delete b.enum) : b.lambda != null ? c(s, w.InvalidParamType, `'${m}': 'Lazy' cannot be combined with a Lambda parameter - a callable slot is already the body's to call, or not.`) : b.repeating && c(s, w.InvalidParamType, `'${m}': 'Lazy' applies to a VALUE, not to a repeating group - mark the group's slots instead.`);\n return;\n }\n if (Wo.has(C)) {\n const m = p.name ?? g(s);\n if (!y) {\n c(s, w.InvalidReturnType, `'Flatten' is not a valid return type: '${m}'. It describes how an ARGUMENT is received.`);\n return;\n }\n const b = s.typeArguments;\n if (!b || b.length !== 1) {\n c(s, w.GenericArity, `'${C}' must be typed with exactly 1 type: '${m}'.`);\n return;\n }\n return v.count++, J(b[0], p, d, y, v, k);\n }\n if (zr.get(C) === \"repeating\") {\n const m = p.name ?? g(s);\n if (!y) {\n c(s, w.RepeatingPosition, `'Repeating' is not a valid return type: '${m}'.`);\n return;\n }\n if (v.count !== 0) {\n c(s, w.RepeatingPosition, `'Repeating' cannot be nested inside another type: '${m}'.`);\n return;\n }\n const b = p, x = s.typeArguments;\n if (!x || x.length < 1 || x.length > 2) {\n c(s, w.GenericArity, `'${C}' must be typed with 1 type, optionally followed by a maximum argument count: '${m}'.`);\n return;\n }\n let K;\n if (x.length === 2) {\n const ee = x[1], ge = ee.kind === e.SyntaxKind.LiteralType ? ee.literal : null, F = ge && ge.kind === e.SyntaxKind.NumericLiteral ? Number(ge.text) : NaN;\n if (!Number.isInteger(F) || F < 1 || F > Vt) {\n c(ee, w.RepeatingMax, `'${m}': '${C}'’s maximum must be a whole number between 1 and ${Vt}.`);\n return;\n }\n K = F, d.maxArguments = F;\n }\n if (O) {\n if (K === void 0) {\n c(s, w.RepeatingPosition, `'${m}' is a rest parameter and a repeating group. A group already repeats — drop the '...', or give the group a maximum ('Repeating<T, 254>') if the ceiling is all you meant.`);\n return;\n }\n return J(x[0], p, d, y, v, k, j);\n }\n const re = b.acceptError;\n delete b.acceptError;\n const Y = fe(x[0], m ?? \"parameter\", d, re);\n Y && (b.repeating = Y);\n return;\n }\n const D = ct.get(C);\n let V = !1;\n D && (p.range = D, V = !0);\n const z = Ho.get(C);\n if (z && (p.scalar = z), z !== void 0 && (V = !0), I(s, C, p, d, y)) return;\n if (y) {\n if (C === \"Volatile\" || C === `${le}.Volatile`) {\n c(s, w.InvalidParamType, `'Volatile' is not a valid parameter type: '${g(s)}'. It describes the function's RESULT, so it belongs on the return type.`);\n return;\n }\n if (ea.has(C)) return Xt;\n const m = mt.get(C);\n if (m) return m;\n } else {\n const m = Qo.get(C);\n if (m) {\n const b = Object.assign(p, m());\n let x = 0;\n if (b.async && x++, b.stream && x++, x > 1) {\n c(s, w.MultipleModifiers, `'${C}' cannot have multiple modifiers: '${g(s)}'.`);\n return;\n }\n V = !0;\n }\n }\n if (!V) {\n const m = L(s, p.name ?? g(s));\n if (m === void 0) return;\n if (m !== null) {\n p.scalar = m.type, y && (p.enum = m);\n return;\n }\n }\n if (!V) {\n const m = \"number, string, boolean, Scalar, Lambda, Date, FormulaError.Known, IRichData, IRange, IReferenceRange (and arrays of these; optionally wrapped in AcceptError<T>, or grouped with Repeating<T>)\", b = \"number, string, boolean, Scalar, Date, FormulaError.Known, IRichData, IRange, Promise<T>, Observable<T>, Volatile<T> (and arrays of these)\";\n let x;\n y ? k ? x = `'${C}' is not a valid first parameter: '${g(s)}'. The first parameter is EITHER a macro target (making this a macro) OR a calculation input (making this a calculation function). Allowed: ${Go.join(\", \")} (macro target); ${m} (calculation input).` : x = `'${C}' is not a valid parameter type: '${g(s)}'. Allowed: ${m}.` : x = `'${C}' is not a valid return type: '${g(s)}'. Allowed: ${b}.`, c(s, y ? w.InvalidParamType : w.InvalidReturnType, x);\n return;\n }\n const B = s.typeArguments;\n if (B) {\n if (B.length !== 1) {\n c(s, w.GenericArity, `'${C}' must be typed with exactly 1 type: '${g(s)}'.`);\n return;\n }\n const m = B[0], b = y && e.isTypeReferenceNode(m) && ut.has(Ee(m)), x = p.reportType;\n b && P.add(p), T(m, p, d, y), b && x === void 0 && delete p.reportType;\n const K = p.enum;\n K && !b && (c(B[0], w.EnumPosition, `'${C}' cannot hold the enum '${K.id}': '${g(s)}'. The members of a range reach the body as they are, so nothing checks them against the enum. Take the enum as a value, or type the range by its scalar ('${C}<${K.type}>').`), delete p.enum);\n }\n } else s.kind === e.SyntaxKind.FunctionType && M(s, p, d, y);\n }, Ge = (s) => (e.getCombinedModifierFlags(s) & e.ModifierFlags.Export) !== 0, He = (s) => (e.getCombinedModifierFlags(s) & e.ModifierFlags.Default) !== 0;\n try {\n e.forEachChild(t, (s) => {\n if (Ge(s) && e.isFunctionDeclaration(s)) {\n const p = s?.name?.getText();\n if (!s.body) {\n c(s, w.NoBody, `'${p}': function has no body.`);\n return;\n }\n if (!p) {\n c(s, w.Anonymous, \"Anonymous exported functions are not allowed.\");\n return;\n }\n const d = {}, y = { parameters: {} };\n try {\n d.name = p;\n const v = r.getSymbolAtLocation(s.name), k = $e(v?.getDocumentationComment(r));\n k && (y.summary = k);\n const j = {};\n T(s.type, j, d, !1), d.returnType = j;\n const O = {};\n He(s) && (O.default = !0, u = p), d.parameters = [];\n const C = /* @__PURE__ */ new Map(), D = /* @__PURE__ */ new Map(), V = /* @__PURE__ */ new Set();\n let z = null, B = null, m = null, b = 0, x = !1, K = 0;\n for (let F = 0; F < s.parameters.length; F++) {\n const N = s.parameters[F], $ = {};\n $.name = N.name?.getText();\n const ne = d.parameters.length === 0;\n if (n?.lenient && F === 0 && !N.type && O.default) {\n d.context = Gt;\n continue;\n }\n const Ie = T(N.type, $, d, !0, ne, !N.dotDotDotToken, !!N.dotDotDotToken);\n if (Ie === Xt) {\n F === 0 && d.context === void 0 && (d.context = Gt);\n continue;\n }\n if (Ie) {\n if (d.parameters.length !== 0) {\n c(N, w.ContextNotFirst, `'${d.name}' contexts must be the first parameter: '${$.name}'.`);\n return;\n }\n d.context = Ie;\n continue;\n }\n if ($.lambda !== void 0) {\n if (z !== null) {\n c(N, w.MultipleLambda, `'${d.name}' has more than one Lambda parameter ('${z}' and '${$.name}'). Only one Lambda parameter is allowed.`);\n return;\n }\n z = $.name;\n } else if (z !== null) {\n c(N, w.LambdaNotLast, `'${d.name}' Lambda parameter ('${z}') must be the last parameter, but '${$.name}' follows it.`);\n return;\n }\n const ye = $.optional === !0 || !((N.initializer === void 0 || N.initializer === null) && (N.questionToken === void 0 || N.questionToken === null));\n let ae;\n if (ye && ($.optional = !0, N.initializer)) try {\n if (N.initializer.kind === e.SyntaxKind.StringLiteral) ae = N.initializer.text;\n else if (N.initializer.kind === e.SyntaxKind.NumericLiteral) ae = parseFloat(N.initializer.text);\n else if (N.initializer.kind === e.SyntaxKind.TrueKeyword || N.initializer.kind === e.SyntaxKind.FalseKeyword) ae = N.initializer.kind === e.SyntaxKind.TrueKeyword;\n else if (N.initializer.kind === e.SyntaxKind.NullKeyword) ae = null;\n else if (e.isPrefixUnaryExpression(N.initializer) && N.initializer.operator === e.SyntaxKind.MinusToken && N.initializer.operand.kind === e.SyntaxKind.NumericLiteral) ae = -parseFloat(N.initializer.operand.text);\n else if (e.isPropertyAccessExpression(N.initializer) || e.isElementAccessExpression(N.initializer)) {\n const ce = r.getTypeAtLocation(N.initializer);\n ce.flags & (e.TypeFlags.NumberLiteral | e.TypeFlags.StringLiteral) && (ae = ce.value);\n }\n } catch (ce) {\n console.warn(`Couldn't extract default value for parameter '${$.name}'`, ce);\n }\n N.dotDotDotToken && ($.rest = !0);\n const X = $.repeating;\n if (X) {\n if ($.rest) {\n c(N, w.RepeatingPosition, `'${d.name}' parameter '${$.name}' is both a rest parameter and a repeating group. A group already repeats — drop the '...'.`);\n return;\n }\n if (ye && X.length === 1) {\n c(N, w.RepeatingOptional, `'${d.name}' parameter '${$.name}' cannot be an optional repeating group. Use '...${$.name}: T[]' for zero-or-more, or drop the '?' for one-or-more.`);\n return;\n }\n if (B !== null) {\n c(N, w.MultipleRepeating, `'${d.name}' has more than one repeating group ('${B}' and '${$.name}'). Only one is allowed — two would make the argument count ambiguous.`);\n return;\n }\n if (m !== null) {\n c(N, w.RepeatingOptional, `'${d.name}' parameter '${m}' is optional and precedes the repeating group '${$.name}'. Every parameter outside a group must be required.`);\n return;\n }\n B = $.name, b = X.length, x = X[X.length - 1].optional === !0;\n } else if (B !== null && $.rest) {\n c(N, w.RepeatingOptional, `'${d.name}' parameter '${$.name}' is a rest parameter and follows the repeating group '${B}'. Two variadic tails would make the argument count ambiguous.`);\n return;\n } else if (B !== null && ye) {\n if (K >= b - 1) {\n c(N, w.RepeatingOptional, b === 1 ? `'${d.name}' parameter '${$.name}' is optional and follows the period-1 repeating group '${B}'. One more argument is indistinguishable from one more repetition — make it required, or give the group a period.` : `'${d.name}' has ${K + 1} optional parameters after the repeating group '${B}', which has period ${b}. At most ${b - 1} may be optional, or the argument count no longer decides the parse.`);\n return;\n }\n if (x) {\n c(N, w.RepeatingOptional, `'${d.name}' parameter '${$.name}' is optional and follows '${B}', whose own last slot is already optional. Both omissions reach the same argument count — drop one.`);\n return;\n }\n K++;\n }\n ye && !X && (m = $.name);\n const G = ($.range ? 2 : 0) + ($.arrayDepth ?? 0), Me = $.range === \"r\" || $.range === \"p\" || $.range === \"*\", Q = $.rest || Me ? 3 : 2;\n if (G > Q) {\n c(N, w.ArrayDepth, `'${d.name}' parameter '${$.name}' has an array depth of ${G}; the maximum is ${Q}${$.rest ? \" for a rest parameter\" : \" (use a rest parameter for one more level, or an IRange)\"}.`);\n return;\n }\n d.parameters.push($);\n const se = { description: \"\" };\n y.parameters[$.name] = se;\n const We = r.getSymbolAtLocation(N.name);\n se.description = $e(We?.getDocumentationComment(r)), ae !== void 0 && ($.defaultValue = ae);\n for (const ce of [$, ...$.repeating ?? []]) {\n const we = ce.enum ? A.get(ce.enum) : void 0;\n we && ((y.enums ??= {})[ce.enum.id] = we);\n }\n if (C.set($.name, $), D.set($.name, N), X && X.length > 1) {\n V.add($.name);\n for (const ce of X) {\n const we = `${$.name}.${ce.name}`;\n y.parameters[we] = { description: \"\" }, C.set(we, ce), D.set(we, N);\n }\n }\n }\n const re = d.maxArguments;\n if (re !== void 0) {\n const F = d.parameters ?? [];\n if (!F.some(($) => $.rest === !0 || $.repeating !== void 0)) {\n c(s, w.RepeatingMax, `'${d.name}' declares a maximum of ${re} arguments but takes a fixed ${F.length}. A maximum only means something on a variadic tail.`);\n return;\n }\n let N = 0;\n for (const $ of F) $.rest === !0 || $.optional === !0 || (N += $.repeating ? $.repeating.length : 1);\n if (re < N) {\n c(s, w.RepeatingMax, `'${d.name}' declares a maximum of ${re} arguments but requires ${N}.`);\n return;\n }\n }\n if (s.jsDoc && s.jsDoc.length > 0) {\n const F = s.jsDoc, N = F.length;\n for (let $ = 0; $ < N; $++) {\n const ne = F[$]?.tags;\n if (!ne) continue;\n const Ie = ne.length;\n for (let ye = 0; ye < Ie; ye++) {\n const ae = ne[ye];\n let X = ae?.tagName?.text;\n if (!X) continue;\n X = X.toLowerCase();\n let G = ae.comment;\n const Me = Xo(X);\n if (typeof G != \"string\" && !Me) {\n X === \"returnkind\" && c(ae, w.UnknownReturnKind, `'@returnKind' needs a value kind. Known: ${[...tt].map((Q) => `'${Q}'`).join(\", \")}.`);\n continue;\n }\n if (typeof G == \"string\" && (G = G.replace(/\\r\\n?/g, `\n`).trim()), !(!Me && G && (G = G.split(`\n`)[0].trim(), !G || G.length === 0))) {\n if (G && typeof G == \"string\") {\n const Q = /\\{@link(code|plain)?\\s+([^}|]+)(?:\\s*\\|\\s*([^}]+))?\\}/g;\n let se, We = G, ce = [];\n for (; (se = Q.exec(G)) !== null;) {\n const [we, wa, Zr, ht] = se, Qr = [Zr.trim()];\n ht && Qr.push(ht.trim());\n }\n G = We, ce.length > 0 && X === \"see\" && (y.links || (y.links = []), y.links.push(...ce));\n }\n if (X === \"name\") {\n const Q = G;\n Q !== p && (y.name = Q);\n } else if (X !== \"description\") {\n if (X === \"param\") {\n const Q = ae.name?.getText?.() ?? ae.name?.text;\n if (!C.get(Q)) {\n c(ae, w.UnknownParam, `Parameter '${Q}' not found in function '${p}'.`);\n continue;\n }\n const se = y.parameters?.[Q];\n se && !se.description && typeof G == \"string\" && G && (se.description = G);\n } else if (X === \"returns\" || X === \"return\") d.returnType.description = G;\n else if (X === \"returnkind\") {\n const Q = (G ?? \"\").trim().toLowerCase();\n tt.has(Q) ? d.returnType.kind = Q : c(ae, w.UnknownReturnKind, `'@returnKind ${Q}' is not a known value kind. Known: ${[...tt].map((se) => `'${se}'`).join(\", \")}.`);\n } else if (X === \"category\") y.category = G;\n else if (X === \"deprecated\" || X === \"hidden\") {\n let Q = !0;\n const se = G?.toLowerCase();\n se === \"false\" ? Q = !1 : se !== \"true\" && (Q = G), Q !== !1 && (y.deprecated = Q ?? !0, d.hidden = !0);\n }\n }\n }\n }\n }\n }\n Object.keys(d.returnType).length === 0 && delete d.returnType, Object.keys(O).length > 0 && (d.behavior = O), y.summary || h(s.name ?? s, w.MissingSummary, \"warning\", `'${p}': missing a description. Add a JSDoc comment above the function.`);\n const Y = !d.context, ee = Y && y.name || p;\n if (Y && !Jo.test(ee)) {\n const F = y.name ? `'@name ${y.name}'` : `'${ee}'`;\n c(s.name ?? s, w.InvalidName, `'${p}': ${F} cannot be called from a formula. A function name starts with a letter or '_', and continues with letters, digits, '_' or '.'.` + (y.name ? \"\" : \" Add an '@name' tag to register it under another name.\"));\n return;\n }\n if (Y && !n?.isBuiltIn && Zo(ee)) {\n const F = y.name ? `'@name ${y.name}'` : `'${ee}'`;\n c(s.name ?? s, w.InvalidName, `'${p}': ${F} cannot be called from a formula. It reads as a cell address.` + (y.name ? \"\" : \" Add an '@name' tag to register it under another name.\"));\n return;\n }\n const ge = l.get(ee.toUpperCase());\n if (ge !== void 0) {\n c(s.name ?? s, w.DuplicateName, `'${p}': '${ee}' is already the name of '${ge}' in this module.`);\n return;\n }\n if (l.set(ee.toUpperCase(), p), Y && o?.has(ee.toUpperCase())) {\n c(s.name ?? s, w.BuiltInName, `'${ee}' is a built-in function. Choose a different name - a calculation function cannot replace a built-in.`);\n return;\n }\n if (Y) {\n const F = y.parameters ?? {};\n for (const [N, $] of Object.entries(F)) if (!V.has(N) && !$.description) {\n const ne = D.get(N);\n h(ne, w.MissingParamDescription, \"warning\", `'${p}': parameter '${N}' is missing a description. Add an '@param ${N}' tag.`);\n }\n }\n a.push([d, y]);\n } catch (v) {\n c(s, w.ParseError, `'${p}': ${v.message}`);\n }\n }\n });\n } catch (s) {\n c(void 0, w.ParseError, `Unable to analyze module: ${s?.message ?? s}`);\n }\n return {\n functions: a,\n autoRun: u,\n diagnostics: i\n };\n}\nconst Ve = \"__SHEETXL\";\nvar ra = /* @__PURE__ */ Zt({ initialize: () => na });\nasync function na() {\n return Te || (Te = new Promise(async (e, t) => {\n try {\n const r = \"0.20.2\", n = `https://esm.sh/esbuild-wasm@${r}`, o = `https://esm.sh/esbuild-wasm@${r}/esbuild.wasm`, a = (await import(\n /* webpackIgnore: true */\n /* @vite-ignore */\n n\n)).default;\n await a.initialize({\n wasmURL: o,\n worker: !1\n }), e(a);\n } catch (r) {\n console.error(\"Error initializing esbuild:\", r), Te = null, t(new Error(\"The script bundler could not be loaded. Check your connection and try again.\", { cause: r }));\n }\n }), Te);\n}\nvar Te, oa = qt((() => {\n Te = null;\n}));\nlet xe = null, Pe = null;\nasync function aa() {\n if (xe) return xe;\n if (Pe) {\n if (await Pe, !xe) throw new Error(\"ESBuild initialization promise resolved, but instance is not available.\");\n return xe;\n }\n let e, t;\n Pe = new Promise((r, n) => {\n e = r, t = n;\n });\n try {\n const { initialize: r } = await Promise.resolve().then(() => (oa(), ra));\n return xe = await r(), e(), xe;\n } catch (r) {\n throw console.error(\"Failed to import or initialize esbuild:\", r), Pe = null, t(r), r;\n }\n}\nconst ia = { compilerOptions: { target: \"esnext\" } };\nasync function la(e, t, r = \"/script.js\", n = Ve, o = !1) {\n try {\n const a = await aa(), l = \"@sheetxl/primitives\", i = `\n export const FormulaContext = globalThis.${n}?.FormulaContext;\n export const ScalarType = globalThis.${n}?.ScalarType;\n export const Observable = globalThis.${n}?.Observable;\n export const IRange = globalThis.${n}?.IRange;\n export const FormulaError = globalThis.${n}?.FormulaError;\n // Add more exports as needed\n `, u = await a.build({\n entryPoints: [r],\n bundle: !0,\n write: !1,\n format: \"esm\",\n plugins: [{\n name: \"sheetxl-esbuild-in-memory\",\n setup(f) {\n const h = \"sheetxl-\" + (/* @__PURE__ */ new Date()).getTime();\n f.onResolve({ filter: new RegExp(`^(${r.replace(\"/\", \"\\\\/\")}|${l})$`) }, (c) => ({\n path: c.path,\n namespace: h\n })), f.onResolve({ filter: /.*/ }, (c) => {\n if (c.namespace !== h) return console.warn(`esbuild: Treating import \"${c.path}\" as external.`), {\n path: c.path,\n external: !0\n };\n }), f.onLoad({\n filter: /.*/,\n namespace: h\n }, (c) => {\n let g;\n if (c.path === r) g = t;\n else if (c.path === l) g = i;\n else return { errors: [{ text: `Cannot load unknown path in ${h}: ${c.path}` }] };\n return {\n contents: g,\n loader: \"ts\"\n };\n });\n }\n }],\n sourcemap: \"inline\",\n tsconfigRaw: ia,\n minify: o,\n platform: \"neutral\"\n });\n if (u.outputFiles && u.outputFiles.length > 0) return u.outputFiles[0].text;\n throw u.errors && u.errors.length > 0 ? /* @__PURE__ */ new Error(`esbuild bundling failed: ${u.errors.map((f) => f.text).join(`\n`)}`) : /* @__PURE__ */ new Error(\"esbuild did not produce an output file.\");\n } catch (a) {\n throw console.error(\"esbuild bundling process failed:\", a), a;\n }\n}\nfunction sa(e, t, r) {\n return (n) => {\n const o = n.factory, a = () => o.createExpressionStatement(o.createCallChain(o.createPropertyAccessExpression(o.createIdentifier(Ve), \"checkRun\"), o.createToken(e.SyntaxKind.QuestionDotToken), void 0, [o.createStringLiteral(t), o.createNumericLiteral(r)])), l = (c) => {\n const g = c.statements;\n let T = 0;\n for (; T < g.length && e.isExpressionStatement(g[T]) && e.isStringLiteral(g[T].expression);) T++;\n return o.updateBlock(c, [\n ...g.slice(0, T),\n a(),\n ...g.slice(T)\n ]);\n }, i = (c) => e.isBlock(c) ? l(c) : o.createBlock([a(), c], !0), u = (c) => e.isBlock(c) ? l(c) : o.createBlock([a(), o.createReturnStatement(c)], !0), f = (c) => e.isForStatement(c) || e.isForInStatement(c) || e.isForOfStatement(c) || e.isWhileStatement(c) || e.isDoStatement(c), h = (c) => {\n if (f(c)) {\n const g = c.statement;\n return e.visitEachChild(c, (T) => {\n const I = h(T);\n return T === g ? i(I) : I;\n }, n);\n }\n if (e.isFunctionLike(c) && c.body) {\n const g = c.body;\n return e.visitEachChild(c, (T) => {\n const I = h(T);\n return T === g ? u(I) : I;\n }, n);\n }\n return e.visitEachChild(c, h, n);\n };\n return (c) => e.visitNode(c, h);\n };\n}\nconst Wt = \"//# sourceMappingURL\";\nvar Jr = /* @__PURE__ */ Zt({\n initialize: () => ca,\n readLibFile: () => ua\n});\nasync function ca() {\n return Ae || (Ae = new Promise(async (e, t) => {\n let r = null;\n try {\n r = await import(\n /* webpackIgnore: true */\n /* @vite-ignore */\n \"https://esm.sh/typescript@5.7.2\"\n);\n } catch (n) {\n console.error(\"Error initializing Browser TypeScript module:\", n);\n }\n r || (console.log(\"use script fallback\"), Ae = null), e(r);\n }), Ae);\n}\nfunction ua(e, t) {}\nvar Ae, Yr = qt((() => {\n Ae = null;\n}));\nconst da = `\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`, pa = `\n interface FirstTest {\n isTrue?: boolean;\n }\n`, fa = async () => pa;\nlet je = null;\nconst rt = \"sheetxl.d.ts\", Jt = \"sheetxl-modules.d.ts\", ma = `declare module '@sheetxl/primitives' { export = SheetXL; }\n`, ga = [\n \"lib.webworker.d.ts\",\n \"lib.es2020.d.ts\",\n \"lib.esnext.asynciterable.d.ts\"\n], Yt = /* @__PURE__ */ new Map();\nlet nt = null, ot = null;\nasync function ha() {\n return ot || (ot = Promise.resolve().then(() => (Yr(), Jr)).then(async (e) => {\n const t = await qr();\n return e.readLibFile(t, \"lib.es5.d.ts\") !== void 0 ? e.readLibFile : null;\n })), ot;\n}\nasync function qr() {\n if (je) return je;\n try {\n const e = await (await Promise.resolve().then(() => (Yr(), Jr))).initialize();\n if (!e) throw new Error(\"TypeScript could not be loaded. Check your connection and try again.\");\n return e;\n } catch (e) {\n throw je = null, e;\n } finally {\n je = null;\n }\n}\nasync function ya(e) {\n const t = e?.source ?? null;\n if (!t) return {\n module: null,\n diagnostics: []\n };\n const r = (e.disableBundle || e.declarationsOnly) ?? !1, [n, o, a] = await Promise.all([\n fa(),\n qr(),\n e.ambientTypes ? ha() : null\n ]), l = a ? e.ambientTypes ?? null : null;\n let i = \"\";\n const u = {\n allowJs: !0,\n declaration: !1,\n sourceMap: !1,\n inlineSourceMap: !1,\n inlineSources: !1,\n isolatedModules: !0,\n preserveConstEnums: !1,\n module: 99,\n noResolve: !0,\n emitDeclarationOnly: !1,\n target: o.ScriptTarget.ES2020,\n ...l ? {\n lib: ga,\n skipLibCheck: !0,\n strict: !0\n } : {}\n }, f = \"script\", h = `${f}.ts`, c = \"lib.d.ts\", g = \"global.d.ts\", T = {\n [h]: t,\n [c]: da,\n [g]: n,\n ...l ? {\n [rt]: l,\n [Jt]: ma\n } : {}\n }, I = (d) => T[d] ?? (a && d.startsWith(\"lib.\") ? a(o, d) : void 0), M = {\n getSourceFile: (d, y, v, k) => {\n if (d === rt) return nt?.text !== l && (nt = {\n text: l,\n file: o.createSourceFile(d, l, o.ScriptTarget.Latest, !1)\n }), nt.file;\n if (T[d] === void 0) {\n let j = Yt.get(d);\n if (!j) {\n const O = I(d);\n if (O === void 0) return;\n j = o.createSourceFile(d, O, o.ScriptTarget.Latest, !1), Yt.set(d, j);\n }\n return j;\n }\n return o.createSourceFile(d, T[d], o.ScriptTarget.Latest, !0);\n },\n fileExists: (d) => I(d) !== void 0,\n readFile: I,\n writeFile: (d, y) => {\n T[d] = y;\n },\n getCurrentDirectory: () => \"./\",\n getCanonicalFileName: (d) => d,\n useCaseSensitiveFileNames: () => !0,\n getDefaultLibFileName: (d) => c,\n getNewLine: () => `\n`\n }, H = o.createProgram([\n h,\n g,\n ...l ? [rt, Jt] : []\n ], u, M), E = H.getTypeChecker(), A = H.getSourceFile(h), R = e.runGuard;\n H.emit(void 0, void 0, void 0, void 0, R ? { before: [sa(o, R.key, R.timeoutMs)] } : void 0), i = T[`${f}.js`] ?? \"\";\n const P = (d) => ({\n start: d.start ?? 0,\n length: d.length ?? 0,\n severity: d.category === o.DiagnosticCategory.Warning ? \"warning\" : \"error\",\n code: `TS${d.code}`,\n message: o.flattenDiagnosticMessageText(d.messageText, `\n`)\n }), Z = H.getSyntacticDiagnostics(A).map(P), U = l ? H.getSemanticDiagnostics(A).filter((d) => d.category === o.DiagnosticCategory.Error || d.category === o.DiagnosticCategory.Warning).map(P) : [], _ = ta(o, A, E, {\n builtInNames: e.builtInNames,\n isBuiltIn: e.isBuiltIn,\n lenient: e.lenient\n });\n let L = [\n ...Z,\n ...U,\n ..._.diagnostics\n ];\n e.lenient && (L = L.filter((d) => d.code !== w.MissingType));\n const fe = _.functions, J = _.autoRun, Ge = L.some((d) => d.severity === \"error\"), He = `${Qt.uuidV4()}-script`;\n let s = null;\n if (Ge) i = \"\";\n else {\n try {\n r || (i = await la(o, i, f, void 0, e.minify ?? !1));\n } catch {\n console.warn(\"Error bundling script\");\n }\n const d = i.indexOf(Wt);\n d > -1 && (s = i.substring(d + 20 + 1, i.length), i = i.substring(0, d), i = i.replaceAll(\"globalThis.\" + Ve, Ve));\n }\n const p = {\n functions: fe,\n commitId: He,\n source: t,\n language: \"typescript\",\n compiled: i\n };\n return s && (p.sourceMap = s), J && (p.autoRun = J), {\n module: p,\n diagnostics: L\n };\n}\nself.addEventListener(\"message\", async (e) => {\n const { id: t, params: r } = e.data;\n try {\n const n = await ya(r);\n self.postMessage({\n id: t,\n result: n,\n error: null\n });\n } catch (n) {\n self.postMessage({\n id: t,\n result: null,\n error: {\n message: n.message,\n stack: n.stack,\n cause: n.cause\n }\n });\n }\n});\n", r = typeof self < "u" && self.Blob && new Blob(["URL.revokeObjectURL(import.meta.url);", n], { type: "text/javascript;charset=utf-8" });
55
+ function i(e) {
56
+ let t;
57
+ try {
58
+ if (t = r && (self.URL || self.webkitURL).createObjectURL(r), !t) throw "";
59
+ let n = new Worker(t, {
60
+ type: "module",
61
+ name: e?.name
62
+ });
63
+ return n.addEventListener("error", () => {
64
+ (self.URL || self.webkitURL).revokeObjectURL(t);
65
+ }), n;
66
+ } catch {
67
+ return new Worker("data:text/javascript;charset=utf-8," + encodeURIComponent(n), {
68
+ type: "module",
69
+ name: e?.name
70
+ });
71
+ }
72
+ }
73
+ async function a() {
74
+ if (globalThis.process?.versions?.node && typeof Worker > "u") return await o();
75
+ if (typeof Worker < "u") {
76
+ let t = new e(() => new i());
77
+ try {
78
+ return await t.start(), t;
79
+ } catch (e) {
80
+ console.error("Failed to start TypescriptCompiler worker reverting to fallback:", e);
81
+ }
82
+ }
83
+ return await o();
84
+ }
85
+ var o = async () => {
86
+ let { compileModule: e } = await import("./ENtt4kmaU9mJfVEp.js"), n = new t((t) => e(t));
87
+ return await n.start(), n;
88
+ };
89
+ export { a as createCompilerWorker };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.7.28-beta.4
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.8.0-beta.10
3
3
  *
4
4
  * (C) 2026-present SheetXL Inc. & Michael T. Ford
5
5
  * License: The license can be found at https://www.sheetxl.com/license.
@@ -11,7 +11,7 @@ var e = {
11
11
  text: { d: "is the text string from which you want to extract characters." },
12
12
  pattern: { d: "The regular expression to be applied." },
13
13
  returnMode: { d: "Specify which matches to return." },
14
- caseInsensitive: { d: "Whether the match is case insensitive." }
14
+ caseSensitivity: { d: "Whether the match is case sensitive (0) or insensitive (1)." }
15
15
  }
16
16
  },
17
17
  REGEXMATCH: {
@@ -29,8 +29,8 @@ var e = {
29
29
  text: { d: "is the text string from which you want to extract characters." },
30
30
  pattern: { d: "The regular expression to be applied." },
31
31
  replacement: { d: "The replacement string." },
32
- occurrence: { d: "The occurrence of the match to replace." },
33
- caseInsensitive: { d: "Whether the match is case insensitive." }
32
+ occurrence: { d: "Which match to replace; 0 replaces them all and a negative counts from the end." },
33
+ caseSensitivity: { d: "Whether the match is case sensitive (0) or insensitive (1)." }
34
34
  }
35
35
  },
36
36
  REGEXTEST: {
@@ -38,7 +38,7 @@ var e = {
38
38
  p: {
39
39
  text: { d: "is the text string to be checked." },
40
40
  pattern: { d: "is the regular expression to be applied." },
41
- caseInsensitive: { d: "Whether the match is case insensitive." }
41
+ caseSensitivity: { d: "Whether the match is case sensitive (0) or insensitive (1)." }
42
42
  }
43
43
  }
44
44
  };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.7.28-beta.4
2
+ * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.8.0-beta.10
3
3
  *
4
4
  * (C) 2026-present SheetXL Inc. & Michael T. Ford
5
5
  * License: The license can be found at https://www.sheetxl.com/license.
@@ -134,5 +134,51 @@ var e = {
134
134
  s: "Returns the year of a date, an integer in the range 1900 - 9999.",
135
135
  p: { serialNumber: { d: "is a number in the date-time code used for date and time calculation." } }
136
136
  }
137
+ }, t = {
138
+ Weekend: {
139
+ s: "The days a weekend falls on, for NETWORKDAYS.INTL and WORKDAY.INTL.",
140
+ m: {
141
+ "Saturday, Sunday": { d: "The weekend is Saturday and Sunday." },
142
+ "Sunday, Monday": { d: "The weekend is Sunday and Monday." },
143
+ "Monday, Tuesday": { d: "The weekend is Monday and Tuesday." },
144
+ "Tuesday, Wednesday": { d: "The weekend is Tuesday and Wednesday." },
145
+ "Wednesday, Thursday": { d: "The weekend is Wednesday and Thursday." },
146
+ "Thursday, Friday": { d: "The weekend is Thursday and Friday." },
147
+ "Friday, Saturday": { d: "The weekend is Friday and Saturday." },
148
+ "Sunday only": { d: "The weekend is Sunday alone." },
149
+ "Monday only": { d: "The weekend is Monday alone." },
150
+ "Tuesday only": { d: "The weekend is Tuesday alone." },
151
+ "Wednesday only": { d: "The weekend is Wednesday alone." },
152
+ "Thursday only": { d: "The weekend is Thursday alone." },
153
+ "Friday only": { d: "The weekend is Friday alone." },
154
+ "Saturday only": { d: "The weekend is Saturday alone." }
155
+ }
156
+ },
157
+ WeekdayType: {
158
+ s: "How WEEKDAY numbers the days of the week.",
159
+ m: {
160
+ "Sunday (1) through Saturday (7)": { d: "Sunday is 1 and Saturday is 7." },
161
+ "Monday (1) through Sunday (7)": { d: "Monday is 1 and Sunday is 7." },
162
+ "Monday (0) through Sunday (6)": { d: "Monday is 0 and Sunday is 6." },
163
+ "Tuesday (1) through Monday (7)": { d: "Tuesday is 1 and Monday is 7." },
164
+ "Wednesday (1) through Tuesday (7)": { d: "Wednesday is 1 and Tuesday is 7." },
165
+ "Thursday (1) through Wednesday (7)": { d: "Thursday is 1 and Wednesday is 7." },
166
+ "Friday (1) through Thursday (7)": { d: "Friday is 1 and Thursday is 7." },
167
+ "Saturday (1) through Friday (7)": { d: "Saturday is 1 and Friday is 7." }
168
+ }
169
+ },
170
+ WeekNumType: {
171
+ s: "The day a week begins on, for WEEKNUM.",
172
+ m: {
173
+ "Week begins on Sunday": { d: "Weeks begin on Sunday; week 1 is the week containing January 1." },
174
+ "Week begins on Monday": { d: "Weeks begin on Monday; week 1 is the week containing January 1." },
175
+ "Week begins on Tuesday": { d: "Weeks begin on Tuesday; week 1 is the week containing January 1." },
176
+ "Week begins on Wednesday": { d: "Weeks begin on Wednesday; week 1 is the week containing January 1." },
177
+ "Week begins on Thursday": { d: "Weeks begin on Thursday; week 1 is the week containing January 1." },
178
+ "Week begins on Friday": { d: "Weeks begin on Friday; week 1 is the week containing January 1." },
179
+ "Week begins on Saturday": { d: "Weeks begin on Saturday; week 1 is the week containing January 1." },
180
+ "Week begins on Monday (ISO 8601)": { d: "Weeks begin on Monday; week 1 is the week containing the first Thursday of the year." }
181
+ }
182
+ }
137
183
  };
138
- export { e as default };
184
+ export { e as default, t as enums };