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

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 (336) hide show
  1. package/browser/cjs/2zXD3NPfuQT2KSZq.cjs +7 -0
  2. package/browser/cjs/{C7GpcB_YgM-RLa2P.cjs → B19QM3SGmPKKwD_o.cjs} +1 -1
  3. package/browser/cjs/B5YBx0GqLor3i0O1.cjs +1 -0
  4. package/browser/cjs/{X1LnR885SNQaK5HZ.cjs → B9EI7wviSkHS9ZkH.cjs} +1 -1
  5. package/browser/cjs/BC2gCQkR1iykfAuC.cjs +1 -0
  6. package/browser/cjs/{BbEwESVyRYXzMlW7.cjs → BEVqcFGFU6Ri9y8T.cjs} +1 -1
  7. package/browser/cjs/{mXzhcays1ok40iiU.cjs → BEzaum_kgG4yAOx0.cjs} +1 -1
  8. package/browser/cjs/{FUM_3mQlC-6WPjkT.cjs → BIQZDBQfv3Qm5iC8.cjs} +2 -2
  9. package/browser/cjs/{NzAMMcPT7SETmqPg.cjs → BSCgCfORdZz1Ii5S.cjs} +2 -2
  10. package/browser/cjs/{CxWeFfNAUvhHe9F-.cjs → BZr-IqNS1skh1hr6.cjs} +2 -2
  11. package/browser/cjs/BfzzZ9IR27ZPzj-8.cjs +3 -0
  12. package/browser/cjs/Bgke3PtMSF2Iaen4.cjs +1 -0
  13. package/browser/cjs/{n4ZQ0-3uSrEsInbg.cjs → BziOCn_XEGT4ynN5.cjs} +1 -1
  14. package/browser/cjs/C-HOJozu5NgCil1q.cjs +1 -0
  15. package/browser/cjs/{iyvcAhhnDFxkR8tW.cjs → C2oTW2DjZypuqq7x.cjs} +1 -1
  16. package/browser/cjs/{C0hGnOYkvrwxaGrw.cjs → C5rQELB0TUeXY6VM.cjs} +1 -1
  17. package/browser/cjs/C6yxQPAEgcGWAhYR.cjs +33 -0
  18. package/browser/cjs/{DMp9wql2kbZKAbGe.cjs → CPgCih_KEqnUZ9Rv.cjs} +1 -1
  19. package/browser/cjs/CSNCOmYEOR-iTJ7K.cjs +5 -0
  20. package/browser/cjs/{Ck7Tc5npWk73wrF3.cjs → CcneNtiqtKppCa-p.cjs} +2 -2
  21. package/browser/cjs/{jIxFDc3EQDDXisAC2.cjs → Ci8Uu7_b4lwwRLAD2.cjs} +1 -1
  22. package/browser/cjs/{zEytED4Eleo5DVvS.cjs → Cm21F18ga8TluA9h.cjs} +1 -1
  23. package/browser/cjs/{kqP-W5qRIy-d-ChZ.cjs → CojEXZgX08waZOoq.cjs} +1 -1
  24. package/browser/cjs/CrDTTLE9EvaGDSD4.cjs +88 -0
  25. package/browser/cjs/{Y78-VwYSNffwXRVz2.cjs → CvV18ZJgssoHMkdf2.cjs} +1 -1
  26. package/browser/cjs/{sFD2bsTPq558FCMx.cjs → Cy-4IMt-AbR-ifP3.cjs} +1 -1
  27. package/browser/cjs/CyGzzWYDy-IniKCq2.cjs +7 -0
  28. package/browser/cjs/CzgwTfy2072Dmt5u.cjs +1 -0
  29. package/browser/cjs/{CEpXnHhrczUmIwMa2.cjs → D19RglhKiroWfpQn2.cjs} +1 -1
  30. package/browser/cjs/DFHxNnJ-lHtv0hIq.cjs +1 -0
  31. package/browser/cjs/{DAA0zpvkrMOLDPxr.cjs → DH3WXPfGHwWJW0nH.cjs} +1 -1
  32. package/browser/cjs/{DcHxh5QxfVitzdhv.cjs → DNy-UU3NKNqQQngF.cjs} +1 -1
  33. package/browser/cjs/{stXrcKZOIHl0fq5U2.cjs → DPjEO7dwhCFd8DHR2.cjs} +1 -1
  34. package/browser/cjs/{CnjaTz8HJXStwuH8.cjs → DfMJOaJ0GcUiSn4Q.cjs} +1 -1
  35. package/browser/cjs/{J7LQgueGGNUE9emR.cjs → DiZDRPIgbO3sQ8Vb.cjs} +1 -1
  36. package/browser/cjs/{DQTBgNqDHInvxrwS.cjs → DsIHLUKUrSrYhFHl.cjs} +1 -1
  37. package/browser/cjs/{Dkgu60euhL6wPoYa2.cjs → DvSvfeo9V0Abfd3q2.cjs} +1 -1
  38. package/browser/cjs/{C9L-xibuJ434Mqqq2.cjs → DxQkFYAFNZubVdn22.cjs} +1 -1
  39. package/browser/cjs/{DgGGzl7jq3i7Cqfi.cjs → E-IqDztfMb_xdszH.cjs} +1 -1
  40. package/browser/cjs/{BFdq8CHyR6FQvmQA2.cjs → ElcoSB--cCpS6i7R2.cjs} +1 -1
  41. package/browser/cjs/KNCocKN9uPR0tvUS.cjs +1 -0
  42. package/browser/cjs/{D-o-mlG9tYSuZrvy2.cjs → Kr8f1inOTt-MICaP2.cjs} +1 -1
  43. package/browser/cjs/{Cu0UCwSpRK4OnCuP.cjs → PM3PrEWG3WHKxaDx.cjs} +1 -1
  44. package/browser/cjs/{QK9BfdSZPLmyRpGi2.cjs → YG320hBA20Dl3HoU2.cjs} +1 -1
  45. package/browser/cjs/{M19oMY91yZxf2WAR.cjs → _H5j4dU7HOBYTawU.cjs} +1 -1
  46. package/browser/cjs/a0Z-SXs_N71CtqYb2.cjs +1 -0
  47. package/browser/cjs/{DtaFdoK4CppKRF6F2.cjs → aYuNpndpwcZG5eik2.cjs} +1 -1
  48. package/browser/cjs/bGMaev70Zd_NXqLM2.cjs +1 -0
  49. package/browser/cjs/bIaGoYEDSBCrAaB6.cjs +1 -0
  50. package/browser/cjs/{BKXFdLiztqEHIjQ_2.cjs → hzUo76TXMOBqsI3U2.cjs} +1 -1
  51. package/browser/cjs/i2VboqjlOcozI9MQ.cjs +12 -0
  52. package/browser/cjs/index.cjs +1 -1
  53. package/browser/cjs/xBcvszV6x7ys-m532.cjs +1 -0
  54. package/browser/esm/{Duo6t8_BzIiBDrFm.mjs → -vgNEEXiEad4bltZ.mjs} +3417 -3070
  55. package/{cdn/assets/BzktrYJH7SQ9GyUI2.js → browser/esm/1guzFZp1LHz_FwfL.mjs} +1 -1
  56. package/browser/esm/{Bz3-FDGVU67Izdnv2.mjs → 3y_bCend8tkaewDG2.mjs} +7 -7
  57. package/{cdn/assets/CBC_MJL6Bwk7bzQz2.js → browser/esm/47Yv4X226-93If7L.mjs} +1 -1
  58. package/browser/esm/{pFBVGSvmImMMDMuJ.mjs → 7rixDGGrR72lXkMV.mjs} +5 -5
  59. package/browser/esm/{CXDtDYyREwoFwtMJ2.mjs → 8V-VceXEjpADM8qK2.mjs} +1 -1
  60. package/browser/esm/{5LJ1sC7IPn109Ien.mjs → 8f9hCbpXTTYEgG312.mjs} +2 -2
  61. package/browser/esm/{CXlA71yGA1Hqvp_S.mjs → 9_bymSfTn_rR_v6W.mjs} +5 -5
  62. package/browser/esm/{DimkHq0_x-d4uNdV.mjs → At60x9FEPePwPP_J.mjs} +6444 -6051
  63. package/browser/esm/{O982fBwJ80FSdhad.mjs → B0HA_dHcr0kKfudQ.mjs} +40 -40
  64. package/browser/esm/{C3dXBjR3SrDCdJlm.mjs → B1NoGosH2YQh01g7.mjs} +6 -6
  65. package/browser/esm/{DhgwMDb052opCiAA.mjs → B4h6iO7hQ9lCR7kj.mjs} +332 -332
  66. package/browser/esm/{DmqS0kz7jvlOw3qr.mjs → B4iT_CduJeJunwBc.mjs} +2 -2
  67. package/browser/esm/{BZSAb1WGbwagUKGv2.mjs → B4vYIE3kSPTxCgpf2.mjs} +5 -5
  68. package/browser/esm/{DLArQtAbWAarI8od2.mjs → B5ZqqASTcBEV5L9K2.mjs} +1 -1
  69. package/browser/esm/{CxKAnYBWCYMkUpnr.mjs → BBtOlJMVlsWorNJH.mjs} +189 -189
  70. package/browser/esm/{BZkd8LNLgEd5WQXO2.mjs → BCZjYGV8AqIZghBH.mjs} +1 -1
  71. package/{cdn/assets/DRAYZ0SGlbCLkftR.js → browser/esm/BCkXtOM3yKocv7L-2.mjs} +1 -1
  72. package/{cdn/assets/Dgt8kua8CYlMRfdw.js → browser/esm/BD7RxHQgrqy_4tb5.mjs} +2 -2
  73. package/{cdn/assets/DtkqR-Hu7K4agnCs2.js → browser/esm/BDkVAo0CDCTE04ZJ2.mjs} +1 -1
  74. package/browser/esm/{L6LjzOx1G9Idjtxa2.mjs → BHBJtVTiQByD_y9j.mjs} +1 -1
  75. package/{cdn/assets/BGAXiHOiX_PZ1ww1.js → browser/esm/BHmYoIIbNW3GdcqV2.mjs} +1 -1
  76. package/{cdn/assets/BF9yh58xfvR0KbSo.js → browser/esm/BLcn1kGRsjURZSzk.mjs} +2 -2
  77. package/browser/esm/{DnMUizHKSRwWpO_7.mjs → BMRav2VAqEzDSp3r2.mjs} +1 -1
  78. package/{cdn/assets/esX6dx06TUUL-cRt.js → browser/esm/BOl4FzJRD7MplCU72.mjs} +1 -1
  79. package/{cdn/assets/D2Ls6urWeByV5W-B.js → browser/esm/BPv6Pw1hW-sV5Fya.mjs} +1 -1
  80. package/browser/esm/{DygUxASTETZM60uN2.mjs → BQDXkeSabbxB5DUB2.mjs} +6 -6
  81. package/browser/esm/{FAHIw2t7_M_rvRio.mjs → BUCKq_2lHPd1ndvw.mjs} +6 -6
  82. package/browser/esm/{B9t9fF8FNCLomgK_.mjs → BVRzmIk5PujkT_Ap.mjs} +5 -5
  83. package/{cdn/assets/BaIe3fLfPLw3FbYP2.js → browser/esm/BVjXdv_wkL1x_8ZJ2.mjs} +1 -1
  84. package/browser/esm/{CElACTFuqPAnCAMJ.mjs → BX4f6i2WMBMKFVCq.mjs} +4 -4
  85. package/browser/esm/{HFqcMD9nTL0jdLxT.mjs → BZsx0QHg1RZlM9ZN.mjs} +1 -1
  86. package/browser/esm/{Dwko6HB2zePBBeBu2.mjs → BceIETi6JJRW6Ss62.mjs} +9 -9
  87. package/browser/esm/{B3tC7wY_kUGXf5sb2.mjs → Be4QC65cR8N84rTn.mjs} +1 -1
  88. package/browser/esm/{Cye91DfKIFwRdDpF.mjs → BhxX7CZWSOlV2Dsz.mjs} +7 -7
  89. package/browser/esm/{CFtsbobCiLpZIzCh.mjs → BhzLZRz2N8RxjQ_U.mjs} +3 -3
  90. package/browser/esm/{DGfzktq0BrIwcb8j.mjs → BjTf3XA9Swj0ngpH.mjs} +2 -2
  91. package/browser/esm/{CfjG7gHJ4oN60Clj.mjs → BkSb_vyWe-AhyEDa.mjs} +3 -3
  92. package/browser/esm/{XBb7Mxqf0beXaSJt.mjs → Bl6bX86tSq8hfyb2.mjs} +6 -6
  93. package/browser/esm/{BgwHVPZp494SgQ0d2.mjs → Blc1T4zLkp8bRC_n2.mjs} +7 -7
  94. package/browser/esm/{BgNWvKfVoVgVVDB4.mjs → Bp9qFBIcpIGXvMgo.mjs} +13 -13
  95. package/browser/esm/{Cd8G1nX1dKzp-mho2.mjs → BqTFwWLbXXJ0Fu-X2.mjs} +1 -1
  96. package/browser/esm/{DHQcJqD-EtJ0Efug2.mjs → BqwvP0318zI2izeL2.mjs} +9 -9
  97. package/browser/esm/{ByJMrAYRARLc7uZQ2.mjs → Bv_96nwOEMHN9Sa02.mjs} +1 -1
  98. package/{cdn/assets/D5BuXc-kVnr6Xiae2.js → browser/esm/BykiUmcpDgSRNQI12.mjs} +1 -1
  99. package/browser/esm/{BkBT2LB95lonIiBu.mjs → C0rS1uBqfsj-gPR8.mjs} +9 -9
  100. package/browser/esm/{BjYIAiuzZbD-dk822.mjs → C1ZePT2B182vSnxW2.mjs} +1 -1
  101. package/browser/esm/{CRsnKeHAnKrWvuG52.mjs → C6CK_4GD9IpxKglV2.mjs} +792 -792
  102. package/browser/esm/{Ykh10IaXTKA2XWot.mjs → CAPgMrAKg07EREFD.mjs} +1 -1
  103. package/browser/esm/{BetL7yI63lEdQ0gM.mjs → CEN8dYSpN2oew8HH.mjs} +1 -1
  104. package/{cdn/assets/BRBHACVjnV1_6VLQ.js → browser/esm/CG5v2hAwGR5Ptufn.mjs} +1 -1
  105. package/browser/esm/CGGJWgWSPZ0aP_C3.mjs +87 -0
  106. package/{cdn/assets/CsKCqLuggHhYC93k.js → browser/esm/CGqvy5LwQ4z9J2oD2.mjs} +1 -1
  107. package/{cdn/assets/CbJ_xQftC08KrH3E.js → browser/esm/CGyydD3tRb0ik50l2.mjs} +1 -1
  108. package/browser/esm/{DjS4iUli-T3uuUfK.mjs → CH0of3GZTzHviuQV.mjs} +1 -1
  109. package/{cdn/assets/DJSXXWTUJGbXqLLx.js → browser/esm/CJPemkFUzhcAD_qR.mjs} +1 -1
  110. package/browser/esm/{C4vqrW3EmJDy1otX.mjs → COA_SZY2x8q6t4BD.mjs} +1 -1
  111. package/browser/esm/{D_8B8jIlshd3eTIO2.mjs → CPUlpDM6aAzZzCat2.mjs} +11 -11
  112. package/browser/esm/{BsP1iPcd49wYIIoP.mjs → CQM87ZBN7Yzn4Yxr.mjs} +3 -3
  113. package/{cdn/assets/BPAEbeXV75XIAS4n.js → browser/esm/CR3jgkduTLczbMjH2.mjs} +1 -1
  114. package/{cdn/assets/6L6HfOFw1xzxXtf22.js → browser/esm/CU1d8OvDv5TU6fSd.mjs} +155 -155
  115. package/{cdn/assets/B6Y_HasaiihQLVYz2.js → browser/esm/CY1zykikO58_ADk8.mjs} +121 -121
  116. package/browser/esm/{s4trFf5sOSGNEzr3.mjs → CZWIS7FuqNjbheSw.mjs} +6 -6
  117. package/browser/esm/{BT2mYkpZGrhWovkv2.mjs → Cb-FUOYcyRSkHG6u2.mjs} +11 -11
  118. package/{cdn/assets/D4aK0uTRJQpM63922.js → browser/esm/Cbw0JeJURvQyxIoa.mjs} +1 -1
  119. package/browser/esm/{CFVzVz9BCRBowBea.mjs → Cc5IufffX4N-8QpE.mjs} +3 -3
  120. package/browser/esm/{BqMvXD8dX4ksYjnj.mjs → Cd8HXAJlflkkTXxc.mjs} +3 -3
  121. package/browser/esm/{DrKUGkrCTKZHu8XC.mjs → CdMv3f8Gyxh8q2RR2.mjs} +1 -1
  122. package/browser/esm/{DnCkPg9-xb3RvxD-.mjs → CfuhUkrvOq11d9FR.mjs} +7 -7
  123. package/{cdn/assets/MHuhAgQAA8zcnWkd2.js → browser/esm/CfvrjQGuf7vXiQCB.mjs} +1 -1
  124. package/browser/esm/{Bj3gyDL2ZJUDcxt72.mjs → Ckl3FLCOeqw7yhkP2.mjs} +8 -8
  125. package/browser/esm/{BxecIrskOMQZB-Xc.mjs → Clfp7SznkOrJoQvL.mjs} +1 -1
  126. package/browser/esm/{DuJ_gK9f35IbKDd6.mjs → CpjX81WsWJbXMUoT.mjs} +185 -181
  127. package/browser/esm/{D8zyGG6yt4CsyA8K.mjs → CsufM5aF6VTLKDWM.mjs} +7 -7
  128. package/{cdn/assets/Bce8ZTUCpXr5Y_zl2.js → browser/esm/CtXoSHbCUKMY-tSJ.mjs} +1 -1
  129. package/browser/esm/{hsy1zALC1oNNm5Sf.mjs → D3G3tI3DVCUF3Gdk.mjs} +1 -1
  130. package/browser/esm/{DER7-kADXFnTmK-32.mjs → D4VqLbEWag8lTWzC2.mjs} +13 -13
  131. package/browser/esm/{Bjx-9lUaScF5-Hki2.mjs → D6SKy2BtcWkhfiA02.mjs} +1 -1
  132. package/browser/esm/{B_U_UpQXdbjNRthb.mjs → D9-wpGVbTS9rRpxx.mjs} +1 -1
  133. package/browser/esm/{BrUe0MnOhxzeOngn2.mjs → DBL3Qp5jyPrFg7KI2.mjs} +1 -1
  134. package/browser/esm/{B-dSKzg5shPDd733.mjs → DDOO4tcrO4OfMUDe.mjs} +1 -1
  135. package/browser/esm/DDUYQ8FPeh1TJU24.mjs +538 -0
  136. package/browser/esm/{CJ-lOo2cXlcYrg2P.mjs → DFdU1DsC1lXOrejZ.mjs} +950 -945
  137. package/browser/esm/{DdtDlBp6KJZjL28o.mjs → DMLwXmjo28k_iNEU.mjs} +5 -10
  138. package/browser/esm/{BzktrYJH7SQ9GyUI.mjs → DMX-ZlC_ljcf7oUN.mjs} +1 -1
  139. package/{cdn/assets/DOsKUeLPwFIdzQv32.js → browser/esm/DQ-0yyFAwoWtxmhV2.mjs} +1 -1
  140. package/{cdn/assets/BGWyNjrM55ce-D1o.js → browser/esm/DQ4o4dG7gWbL1X8F2.mjs} +1 -1
  141. package/{cdn/assets/CmYCYFWjq9KP6xw7.js → browser/esm/DRc_Wi5c7WdKHTVN2.mjs} +1 -1
  142. package/{cdn/assets/CY7qR8ENX314HrrD.js → browser/esm/DTaVECXVrgvC48BE.mjs} +3 -3
  143. package/browser/esm/{DFQGftDcmDwUGxV8.mjs → DVJd6McdAG5udItH.mjs} +5 -5
  144. package/browser/esm/{B6bX01HNxwBooBTX2.mjs → DVQNQmjI2PKkwiOw2.mjs} +15 -15
  145. package/browser/esm/{BJQfvwvEke-uN0_02.mjs → DVZ_UnchuMRveDG32.mjs} +4 -4
  146. package/{cdn/assets/Bh4hZt6639QZusIG.js → browser/esm/DW72HwfnJtQxzoGa.mjs} +2 -2
  147. package/browser/esm/{CHmSnCPoww1StSta.mjs → DXWmgQSeh0_HDxZj.mjs} +4 -4
  148. package/{cdn/assets/FVJ1akngxeMiYwPa.js → browser/esm/DZbR5R1fNikjgqYb.mjs} +1 -1
  149. package/{cdn/assets/C7xBBqvPqat9oEft2.js → browser/esm/D_t53-8k73CNpV-p.mjs} +72 -46
  150. package/browser/esm/{DhW7Cqyuxk7D6zsW.mjs → D_zNx76HGunFi7xJ.mjs} +12 -12
  151. package/browser/esm/{DENx9Ts-f8adXw3Y2.mjs → Dc0BDcQUGy_WIVFa.mjs} +1 -1
  152. package/{cdn/assets/CpEgh9EOkeMvwAuj.js → browser/esm/DfRGH6mEtIVDWEYN2.mjs} +1 -1
  153. package/{cdn/assets/BZXvEddjoz4C8y4w.js → browser/esm/Dg5wjQp0fArKXlM3.mjs} +2 -2
  154. package/browser/esm/{N-koparnupMSl92y.mjs → DnuaqN0xfgqzl8qG.mjs} +231 -231
  155. package/{cdn/assets/CJGlwQusOCSy9ZAb.js → browser/esm/Dnx3_xXfRlD6ECfZ2.mjs} +1 -1
  156. package/browser/esm/{DJk14sSSnSHiEXZ72.mjs → DrUEYcXg6N2D2s1Z2.mjs} +1 -1
  157. package/{cdn/assets/DjfBSoaKM-vtbeqT.js → browser/esm/DtXC6uPF2LLktqFE.mjs} +2 -2
  158. package/browser/esm/{6A8iYjFWJzx5PaTP2.mjs → DuPdSe-EXFTx9dsc2.mjs} +8 -8
  159. package/browser/esm/{DSWdYe7SDB5cYWo5.mjs → DzDwSOBdJh_lx_NM.mjs} +5 -5
  160. package/browser/esm/{Bc2Dp6W4U_22cv7c.mjs → EwzqnZl1lTr56hH-2.mjs} +1 -1
  161. package/browser/esm/{PzCXbVRf1jOHVOAw.mjs → Gy0CHZTvn4hY-rkx2.mjs} +1 -1
  162. package/browser/esm/{CY4ANhbzXqZMJPnL2.mjs → NekeSGoazNCraGNC2.mjs} +7 -7
  163. package/browser/esm/{DM4g0nYgYXgI44dL2.mjs → R5bs6kCQSZmsCXz-.mjs} +1 -1
  164. package/browser/esm/{BQt5lpPjssz4Lvhs.mjs → RW23HF8taEtW8q9D.mjs} +2 -2
  165. package/browser/esm/{-9NsA_4pZqcEQBX7.mjs → fJ1McMt7xzRA_lUX.mjs} +6 -6
  166. package/{cdn/assets/g8dDbkwbYjhKWJM2.js → browser/esm/hFSDx-LnUOObv-6h2.mjs} +1 -1
  167. package/browser/esm/index.mjs +4 -4
  168. package/browser/esm/{BUKNpzG26V0YaAzW.mjs → nguMxPB9LKexKBRX.mjs} +12 -12
  169. package/browser/esm/{BmTSjuGI87QqMA-a.mjs → oYdWyqsKo9ejAdVm.mjs} +2 -2
  170. package/browser/esm/{CTwLETvNO4KeXbkK2.mjs → qG5zdZZAe6mQIJo32.mjs} +1 -1
  171. package/browser/esm/{evPbHV86yom22yGf2.mjs → qzhFT2j-mpQEQnKs.mjs} +2641 -2556
  172. package/browser/esm/{B4fSPDN923nqCDVE2.mjs → vcRSnmAqjwKglEkY.mjs} +1 -1
  173. package/cdn/assets/{hClmI7sWeaBbHo3W2.js → -2S675KWulPRlVNb2.js} +12 -12
  174. package/{browser/esm/BBhB25AlKEzdoI0V.mjs → cdn/assets/1guzFZp1LHz_FwfL2.js} +1 -1
  175. package/cdn/assets/{xMskoOI2CK9-AmBF2.js → 2CuCH0wi9XPgVzE42.js} +7 -7
  176. package/cdn/assets/{CimYGZTVXcjbjrBU2.js → 2UHIeioUPXrwtZy-2.js} +13 -13
  177. package/{browser/esm/CBC_MJL6Bwk7bzQz.mjs → cdn/assets/47Yv4X226-93If7L2.js} +1 -1
  178. package/cdn/assets/{CXDtDYyREwoFwtMJ.js → 8V-VceXEjpADM8qK.js} +1 -1
  179. package/cdn/assets/{5LJ1sC7IPn109Ien.js → 8f9hCbpXTTYEgG31.js} +2 -2
  180. package/{browser/esm/CBuulf8RrSItPZJi.mjs → cdn/assets/B55nrhIK6gAAu4ZA.js} +2 -2
  181. package/cdn/assets/{DLArQtAbWAarI8od.js → B5ZqqASTcBEV5L9K.js} +1 -1
  182. package/cdn/assets/{Dq7WxMef5CTJ47QI2.js → BAhvL7M7ZcgZ8eDc2.js} +7 -7
  183. package/cdn/assets/{BZkd8LNLgEd5WQXO.js → BCZjYGV8AqIZghBH.js} +1 -1
  184. package/{browser/esm/DRAYZ0SGlbCLkftR2.mjs → cdn/assets/BCkXtOM3yKocv7L-.js} +1 -1
  185. package/{browser/esm/DtkqR-Hu7K4agnCs.mjs → cdn/assets/BDkVAo0CDCTE04ZJ.js} +1 -1
  186. package/cdn/assets/{L6LjzOx1G9Idjtxa.js → BHBJtVTiQByD_y9j2.js} +1 -1
  187. package/{browser/esm/BGAXiHOiX_PZ1ww12.mjs → cdn/assets/BHmYoIIbNW3GdcqV.js} +1 -1
  188. package/cdn/assets/{Bfd3T36ocASPZddR.js → BJEpPEyFWtLzMIq-2.js} +389 -385
  189. package/{browser/esm/DxxlSejA2S6YUPWD.mjs → cdn/assets/BKEzd89UphJ8q1pp2.js} +166 -166
  190. package/cdn/assets/{DoJfPxuL3zziG4p62.js → BM7OqAUEUk-up7_82.js} +13 -13
  191. package/cdn/assets/{DnMUizHKSRwWpO_72.js → BMRav2VAqEzDSp3r.js} +1 -1
  192. package/cdn/assets/{B3ZyfwskutLZMYfl2.js → BNuoKAzs4zkxSocG2.js} +7 -7
  193. package/cdn/assets/{DW2yQm-sEcHogX7E.js → BNybEGR813e3aNIv.js} +953 -948
  194. package/{browser/esm/esX6dx06TUUL-cRt.mjs → cdn/assets/BOl4FzJRD7MplCU7.js} +1 -1
  195. package/{browser/esm/D2Ls6urWeByV5W-B2.mjs → cdn/assets/BPv6Pw1hW-sV5Fya.js} +1 -1
  196. package/cdn/assets/{CblzazoiTtSuaAkj.js → BU6uQhQhpaLElTT82.js} +8 -8
  197. package/cdn/assets/{omgRvCRxe7suvog8.js → BVgTMDEoPgsWFmku.js} +105 -105
  198. package/{browser/esm/BaIe3fLfPLw3FbYP2.mjs → cdn/assets/BVjXdv_wkL1x_8ZJ2.js} +1 -1
  199. package/cdn/assets/BWlMK76Aj2d4ygsH.js +538 -0
  200. package/cdn/assets/{HFqcMD9nTL0jdLxT2.js → BZsx0QHg1RZlM9ZN2.js} +1 -1
  201. package/cdn/assets/{B3tC7wY_kUGXf5sb.js → Be4QC65cR8N84rTn2.js} +1 -1
  202. package/cdn/assets/{DP9sLYfGGWMDI7hL2.js → BhDLR-jtbOOG-tl12.js} +25 -25
  203. package/cdn/assets/{B4492m5zRjz4JWIo2.js → BixsQGDDf3Iv_PtW2.js} +5 -10
  204. package/cdn/assets/{JL1xk8XqkuTOA_as2.js → Bl6C6xWT8E6b7OwJ2.js} +18 -18
  205. package/cdn/assets/{Cd8G1nX1dKzp-mho.js → BqTFwWLbXXJ0Fu-X.js} +1 -1
  206. package/cdn/assets/{ByJMrAYRARLc7uZQ.js → Bv_96nwOEMHN9Sa0.js} +1 -1
  207. package/{browser/esm/D5BuXc-kVnr6Xiae.mjs → cdn/assets/BykiUmcpDgSRNQI1.js} +1 -1
  208. package/cdn/assets/{DEyeWdXLwDRo2yYf2.js → BzUU8y1IFjREzgog2.js} +8 -8
  209. package/cdn/assets/{BjYIAiuzZbD-dk82.js → C1ZePT2B182vSnxW.js} +1 -1
  210. package/cdn/assets/{DGWhm91XZlY1GWHe2.js → C8mUyjJ26jsHGl_D.js} +6 -6
  211. package/cdn/assets/{Ykh10IaXTKA2XWot2.js → CAPgMrAKg07EREFD2.js} +1 -1
  212. package/cdn/assets/{B0N6rTGGJN2DZPaf.js → CBuvbUg67ah_3BOZ.js} +2 -2
  213. package/cdn/assets/{BetL7yI63lEdQ0gM2.js → CEN8dYSpN2oew8HH2.js} +1 -1
  214. package/{browser/esm/BOMct7uvqiNJIS63.mjs → cdn/assets/CF8m5SqeMaRkGIYM.js} +2 -2
  215. package/{browser/esm/BRBHACVjnV1_6VLQ2.mjs → cdn/assets/CG5v2hAwGR5Ptufn2.js} +1 -1
  216. package/{browser/esm/CsKCqLuggHhYC93k2.mjs → cdn/assets/CGqvy5LwQ4z9J2oD.js} +1 -1
  217. package/{browser/esm/CbJ_xQftC08KrH3E2.mjs → cdn/assets/CGyydD3tRb0ik50l.js} +1 -1
  218. package/cdn/assets/CH0of3GZTzHviuQV.js +24 -0
  219. package/cdn/assets/CH0of3GZTzHviuQV2.js +24 -0
  220. package/cdn/assets/{BIPjogMyMmLRly43.js → CHttngK66Ido5dWW.js} +7 -7
  221. package/{browser/esm/DJSXXWTUJGbXqLLx.mjs → cdn/assets/CJPemkFUzhcAD_qR.js} +1 -1
  222. package/cdn/assets/{C4vqrW3EmJDy1otX.js → COA_SZY2x8q6t4BD.js} +1 -1
  223. package/{browser/esm/BPAEbeXV75XIAS4n2.mjs → cdn/assets/CR3jgkduTLczbMjH.js} +1 -1
  224. package/cdn/assets/{CnfGgjuCEyX-PYs_2.js → CT3G9YRPVfKtHWwf2.js} +12 -12
  225. package/{browser/esm/Eszk9OugmYOhaS2s.mjs → cdn/assets/C_Io1QC4CeLGRBrz.js} +2 -2
  226. package/{browser/esm/D4aK0uTRJQpM6392.mjs → cdn/assets/Cbw0JeJURvQyxIoa.js} +1 -1
  227. package/cdn/assets/{DrKUGkrCTKZHu8XC.js → CdMv3f8Gyxh8q2RR.js} +1 -1
  228. package/cdn/assets/{BOTU30yJHbaNehFS.js → Ce5A_D4YBgi_s2KF.js} +8 -8
  229. package/{browser/esm/MHuhAgQAA8zcnWkd.mjs → cdn/assets/CfvrjQGuf7vXiQCB2.js} +1 -1
  230. package/cdn/assets/{DY9zG4TdF0FAs_QP2.js → Chq4BwbjH0sbIkJN2.js} +2 -2
  231. package/cdn/assets/{BxecIrskOMQZB-Xc.js → Clfp7SznkOrJoQvL.js} +1 -1
  232. package/{browser/esm/PAu9erpoOTNzgNbN.mjs → cdn/assets/CopfZ7Y1Zn_PDNXK.js} +2 -2
  233. package/{browser/esm/DdaO25i-WWFSh1W0.mjs → cdn/assets/CpYlf4dXa_V2v-iS2.js} +508 -508
  234. package/cdn/assets/{BO2NRW9sjHGE9tg-2.js → CpnA5TZRkPDt4HnM2.js} +2 -2
  235. package/cdn/assets/{NZO3-fDBtqhmCsbB2.js → Crkvq5j5KIa6eTLI2.js} +12471 -12078
  236. package/{browser/esm/Bce8ZTUCpXr5Y_zl.mjs → cdn/assets/CtXoSHbCUKMY-tSJ2.js} +1 -1
  237. package/cdn/assets/{CdPxVRKpCOqCDHI8.js → Cv-KXN9kl0UeMezQ.js} +215 -215
  238. package/cdn/assets/{BouCHi6QnBrUDYkx.js → CvtkpvGzCHhNuwTm.js} +2181 -2096
  239. package/cdn/assets/{llvXNxZaCMnYqvSm.js → D-fJXasEYyfRUcj2.js} +3 -3
  240. package/cdn/assets/{DlLXCXDokJ72EW-E.js → D1MA2ed2cLMt7hV9.js} +7 -7
  241. package/cdn/assets/{hsy1zALC1oNNm5Sf.js → D3G3tI3DVCUF3Gdk2.js} +1 -1
  242. package/cdn/assets/{Bjx-9lUaScF5-Hki.js → D6SKy2BtcWkhfiA0.js} +1 -1
  243. package/cdn/assets/{B_U_UpQXdbjNRthb.js → D9-wpGVbTS9rRpxx.js} +1 -1
  244. package/cdn/assets/{CSkSOhGT8E29E2Nh2.js → D9gETGi23d14kT7u2.js} +15 -15
  245. package/cdn/assets/{BjN8kU7URKZwGlmk2.js → D9joTG0Z2zdWHAEa2.js} +3 -3
  246. package/cdn/assets/{BrUe0MnOhxzeOngn.js → DBL3Qp5jyPrFg7KI.js} +1 -1
  247. package/cdn/assets/{HeznPoDlSj26Q4lq.js → DC9obE_EVmxtvXCf.js} +2196 -2195
  248. package/cdn/assets/{CDqMmEdh_CPaFCCi2.js → DCnA2-zB7W_QB-tD2.js} +9 -9
  249. package/cdn/assets/{BdmCBWTVHb7KuHxO2.js → DDNivpFWzQ3AIJia.js} +327 -327
  250. package/cdn/assets/{B-dSKzg5shPDd733.js → DDOO4tcrO4OfMUDe.js} +1 -1
  251. package/cdn/assets/{D57KcDfTbBzf_NGr.js → DEUY_zuVwmptMX4l.js} +7 -7
  252. package/cdn/assets/{DEFEOS3OuA23llF92.js → DIQf1pX-j-dWQu_e.js} +12 -12
  253. package/cdn/assets/{Wb48SedqaKMZnxym.js → DJwQ9abZkyFO9Doy.js} +4 -4
  254. package/cdn/assets/{KJzdwvEWwCwAXuo4.js → DKeLjEJPO9nT3bpr.js} +6 -6
  255. package/cdn/assets/{Dy5Z2XIqS7-0tdjc2.js → DLEdaT0MmrOxMa2h2.js} +41 -41
  256. package/cdn/assets/{CIgn8uIPaadIJP4a2.js → DOsbSsKsexrBoeXa2.js} +10 -10
  257. package/{browser/esm/DOsKUeLPwFIdzQv32.mjs → cdn/assets/DQ-0yyFAwoWtxmhV2.js} +1 -1
  258. package/{browser/esm/BGWyNjrM55ce-D1o2.mjs → cdn/assets/DQ4o4dG7gWbL1X8F.js} +1 -1
  259. package/{browser/esm/CmYCYFWjq9KP6xw72.mjs → cdn/assets/DRc_Wi5c7WdKHTVN.js} +1 -1
  260. package/cdn/assets/{Cb71rZAQvCk3wnfp.js → DTCtbG90ip7Z7LaG.js} +6 -6
  261. package/cdn/assets/{B2BvBxjz3Kfii_Gn2.js → DVS_5oDniuAFH3vT2.js} +1020 -1020
  262. package/cdn/assets/{DpNYiOK112bFC3KK2.js → DW7JlG-SQEdLYNar2.js} +3 -3
  263. package/cdn/assets/{DJHOKENCVOJMx3aE2.js → DZDynaLqNeVaDoiH2.js} +9 -9
  264. package/{browser/esm/FVJ1akngxeMiYwPa.mjs → cdn/assets/DZbR5R1fNikjgqYb.js} +1 -1
  265. package/cdn/assets/{XSUr59k0gaFIS1Qf2.js → D_HeH7AJqWoxehn52.js} +3 -3
  266. package/{browser/esm/C7xBBqvPqat9oEft.mjs → cdn/assets/D_t53-8k73CNpV-p2.js} +72 -46
  267. package/{browser/esm/DOIVDuyf7YyJZjcD.mjs → cdn/assets/DaBczM5xU9ev5_or.js} +2 -2
  268. package/cdn/assets/{D-tQc4bi3FzGVnFg.js → DbEGszSW_J_k96KJ.js} +2 -2
  269. package/cdn/assets/{DENx9Ts-f8adXw3Y.js → Dc0BDcQUGy_WIVFa.js} +1 -1
  270. package/{browser/esm/CpEgh9EOkeMvwAuj.mjs → cdn/assets/DfRGH6mEtIVDWEYN.js} +1 -1
  271. package/{browser/esm/CJGlwQusOCSy9ZAb2.mjs → cdn/assets/Dnx3_xXfRlD6ECfZ.js} +1 -1
  272. package/cdn/assets/{BynqRVXFRplO7XgC.js → DnzDlqizzNkbhJP7.js} +2 -2
  273. package/cdn/assets/{DJk14sSSnSHiEXZ7.js → DrUEYcXg6N2D2s1Z.js} +1 -1
  274. package/cdn/assets/{BdhFhDEa7Xed6dFE.js → DvItgGbf8IOWPyxd.js} +28240 -27892
  275. package/cdn/assets/{CgsQuAbp76UOAPHm2.js → DvlpP6sUZ9Qzl9s22.js} +49 -49
  276. package/cdn/assets/{DeFts-aGqB-RDuV1.js → EjOJX5m8OEL-IjPB.js} +6 -6
  277. package/cdn/assets/{Bc2Dp6W4U_22cv7c2.js → EwzqnZl1lTr56hH-.js} +1 -1
  278. package/cdn/assets/{PzCXbVRf1jOHVOAw.js → Gy0CHZTvn4hY-rkx.js} +1 -1
  279. package/cdn/assets/{DM4g0nYgYXgI44dL.js → R5bs6kCQSZmsCXz-2.js} +1 -1
  280. package/cdn/assets/{CuIUyLNDoHvYMJaQ2.js → UYgwKnPX3US3Cj2k2.js} +14 -14
  281. package/cdn/assets/{CLhSKL0Xdm8miSTy.js → WLUhtyUNK5QJ7Pff.js} +3 -3
  282. package/cdn/assets/{DaX0_AkJxkaUnNT7.js → c6VvwMHfXubjjtyj.js} +7 -7
  283. package/cdn/assets/{Dhq9e6LCpmlIkFod.js → c7aIqKLOO4pvUsV12.js} +72 -72
  284. package/cdn/assets/{DQhvG3cP0HPB6giA2.js → gspQcUnmlRIwG609.js} +5 -5
  285. package/{browser/esm/g8dDbkwbYjhKWJM22.mjs → cdn/assets/hFSDx-LnUOObv-6h.js} +1 -1
  286. package/cdn/assets/{Bj8bWbLg1IY965tK.js → iXWgTu3qpYZHcx1J.js} +8 -8
  287. package/cdn/assets/{DiKc6jzGM1isrN02.js → j8nXVEYbO2kPuEYQ.js} +3 -3
  288. package/cdn/assets/{Wsgx1I_j1chJ6hwn.js → mtI43hWjdp4E3Z_-.js} +9 -9
  289. package/{browser/esm/Ca6NSkWoi9DvRJjQ.mjs → cdn/assets/mtrwY1hjJeYlmzC-.js} +3 -3
  290. package/cdn/assets/{B8ok93z6wOu1Mo5H.js → nmR_PgTW7GrlbHHZ.js} +5 -5
  291. package/cdn/assets/{CTwLETvNO4KeXbkK.js → qG5zdZZAe6mQIJo3.js} +1 -1
  292. package/cdn/assets/{Dr1U0I01_KIa9vgR2.js → tVOVNvOs6ro8FXqa2.js} +8 -8
  293. package/cdn/assets/vTCuFafvRlSaT9wy.js +87 -0
  294. package/cdn/assets/{B4fSPDN923nqCDVE.js → vcRSnmAqjwKglEkY2.js} +1 -1
  295. package/cdn/index.js +2 -2
  296. package/package.json +3 -3
  297. package/browser/cjs/BClFnd-voK5qaz1I.cjs +0 -88
  298. package/browser/cjs/BF14ZEAnaqxXroSj.cjs +0 -1
  299. package/browser/cjs/BVN0uo1XwTCtE2mh.cjs +0 -7
  300. package/browser/cjs/BjgiE9MBDkKiRL6q.cjs +0 -3
  301. package/browser/cjs/Byl4bQWpLnjthChn2.cjs +0 -7
  302. package/browser/cjs/BzsAbsb35hYT3xUc.cjs +0 -5
  303. package/browser/cjs/C8GZf3UAOhfisYCs.cjs +0 -1
  304. package/browser/cjs/CEXs4eRDOv4EjbSw2.cjs +0 -1
  305. package/browser/cjs/CLXzYSmhCHV5LQh7.cjs +0 -1
  306. package/browser/cjs/CN-dCAHVcxuMSyFz.cjs +0 -1
  307. package/browser/cjs/CZfNBCd62H_Jpkhl.cjs +0 -12
  308. package/browser/cjs/CoiPEZabJyiXxLta.cjs +0 -1
  309. package/browser/cjs/DAXgAEDtRrsWAePT.cjs +0 -1
  310. package/browser/cjs/DDPxHIqx8aIbqTRE.cjs +0 -1
  311. package/browser/cjs/DsgqbxMOVQmAFSDy2.cjs +0 -1
  312. package/browser/cjs/Dtc_8P-koQRmNT2s.cjs +0 -33
  313. package/browser/cjs/IbciPMJP2Pam3ERm.cjs +0 -1
  314. package/browser/cjs/bpcQTcfzGVBK-rfT2.cjs +0 -1
  315. package/browser/esm/BPwpFe7c1-F62aAU.mjs +0 -518
  316. package/browser/esm/ohVj-y1gCC9PEHJI.mjs +0 -87
  317. package/cdn/assets/CXrcgTVB77CopjOJ.js +0 -518
  318. package/cdn/assets/DjS4iUli-T3uuUfK.js +0 -24
  319. package/cdn/assets/DjS4iUli-T3uuUfK2.js +0 -24
  320. package/cdn/assets/zrS_ERBQML_OXJ4J.js +0 -87
  321. /package/browser/cjs/{1XrWGMP3GmsQOMIX.cjs → 1XrWGMP3GmsQOMIX2.cjs} +0 -0
  322. /package/browser/cjs/{49_x589Na12sizKK2.cjs → 49_x589Na12sizKK.cjs} +0 -0
  323. /package/browser/cjs/{BAxVLKkxFgI6cXnR2.cjs → BAxVLKkxFgI6cXnR.cjs} +0 -0
  324. /package/browser/cjs/{Btc0Nzu40VYOpzLX2.cjs → Btc0Nzu40VYOpzLX.cjs} +0 -0
  325. /package/browser/cjs/{C2uDl8VIJqh58YF_2.cjs → C2uDl8VIJqh58YF_.cjs} +0 -0
  326. /package/browser/cjs/{C9C-pr-T_ThweQX9.cjs → C9C-pr-T_ThweQX92.cjs} +0 -0
  327. /package/browser/cjs/{CV4KQsHluMqo1I2Q2.cjs → CV4KQsHluMqo1I2Q.cjs} +0 -0
  328. /package/browser/cjs/{CW-b31_-r-_raT8Y.cjs → CW-b31_-r-_raT8Y2.cjs} +0 -0
  329. /package/browser/cjs/{Clu7XiAsCB48GDXN.cjs → Clu7XiAsCB48GDXN2.cjs} +0 -0
  330. /package/browser/cjs/{DCIlWcGDrp-5PDoA2.cjs → DCIlWcGDrp-5PDoA.cjs} +0 -0
  331. /package/browser/cjs/{DDnGLOLTqLFsdUDS.cjs → DDnGLOLTqLFsdUDS2.cjs} +0 -0
  332. /package/browser/cjs/{DG2kqsWRUtVugjay.cjs → DG2kqsWRUtVugjay2.cjs} +0 -0
  333. /package/browser/cjs/{DNKyaSruDogoBd2H.cjs → DNKyaSruDogoBd2H2.cjs} +0 -0
  334. /package/browser/cjs/{Du4jBiFxRIF1OjD42.cjs → Du4jBiFxRIF1OjD4.cjs} +0 -0
  335. /package/browser/cjs/{JfM6P_qoQQTWakZf2.cjs → JfM6P_qoQQTWakZf.cjs} +0 -0
  336. /package/browser/cjs/{aONv0Ys3C8xmnaR8.cjs → aONv0Ys3C8xmnaR82.cjs} +0 -0
@@ -1 +0,0 @@
1
- exports.loadEnumManifest=async function(){let e=`@0.7.28-beta.4`;e!==`@local`&&e!==`@0.0.0`||(e=``);let t=`https://cdn.jsdelivr.net/npm/@sheetxl/sdk${e}/types/scripting-enums.json`,n=await fetch(t);if(!n.ok)throw Error(`Unable to load script enum runtime (${n.status}) from ${t}.`);return n.json()};
@@ -1,7 +0,0 @@
1
- const e=require("./DDPxHIqx8aIbqTRE.cjs");var t=Object.freeze({NoBody:`SXL1001`,Anonymous:`SXL1002`,ParseError:`SXL1003`,InvalidParamType:`SXL2001`,InvalidReturnType:`SXL2002`,UndefinedInput:`SXL2003`,MissingType:`SXL2004`,UntypedArray:`SXL2005`,GenericArity:`SXL2006`,MultipleModifiers:`SXL2007`,ContextNotFirst:`SXL2010`,MultipleLambda:`SXL2020`,LambdaNotLast:`SXL2021`,LambdaScalarMismatch:`SXL2022`,LambdaReturn:`SXL2023`,FunctionReturn:`SXL2024`,LambdaArity:`SXL2025`,ArrayDepth:`SXL2030`,RepeatingPosition:`SXL2040`,MultipleRepeating:`SXL2041`,RepeatingSlots:`SXL2042`,RepeatingOptional:`SXL2043`,NoExports:`SXL3001`,UnknownParam:`SXL3002`,BuiltInName:`SXL3003`,MissingSummary:`SXL9001`,MissingParamDescription:`SXL9002`,MissingReturns:`SXL9003`}),n=[{name:`summary`,group:`sheetxl`,description:`Short description shown in function tooltips and autocomplete.`},{name:`param`,group:`jsdoc`,description:`Document a parameter. A string union type becomes a dropdown of allowed options.`,snippet:"param ${1:name} ${2:description}"},{name:`returns`,aliases:[`return`],group:`jsdoc`,description:`Describe the return value.`},{name:`category`,group:`sheetxl`,description:`Group the function under a category in the function list.`,snippet:"category ${1:name}"},{name:`name`,group:`sheetxl`,description:`Override the displayed function name.`,snippet:"name ${1:NAME}"},{name:`description`,group:`sheetxl`,description:`A longer description of the function.`},{name:`deprecated`,group:`sheetxl`,standalone:!0,description:`Mark the function as deprecated (optionally with a reason).`},{name:`hidden`,group:`sheetxl`,standalone:!0,description:`Hide the function from the function list.`},{name:`example`,group:`jsdoc`,description:`Provide a usage example.`},{name:`see`,group:`jsdoc`,description:`Reference a related function or link.`}],r=(()=>{let e=new Map;for(let t of n)if(e.set(t.name,t),t.aliases)for(let n of t.aliases)e.set(n,t);return e})();function i(e){return!0===function(e){if(!e)return;let t=(e.startsWith(`@`)?e.slice(1):e).toLowerCase();return r.get(t)}(e)?.standalone}var a=new Map([[`IReferenceRange`,`p`],[`IRange`,`r`]]),o=new Map([[`IWorkbook`,`workbook`],[`ISheet`,`sheet`],[`ICellRanges`,`ranges`],[`ICellRange`,`range`]]),s=Array.from(o.keys()),c=(e,t)=>{Array.from(t.keys()).forEach(n=>{let r=t.get(n);t.set(`${e}.${n}`,r)})},l=new Map([[`Scalar`,`*`],[`Lambda`,`l`],[`FormulaError.Known`,e.n.Error],[`Date`,e.s.Date],[`IRichData`,e.s.RichData]]),u=new Map([[`Repeating`,`repeating`]]),d=new Set([`Flatten`,`SheetXL.Flatten`]),f=new Map([[`AcceptError`,`accept`],[`AcceptRefError`,`accept-ref`]]),p=new Set([`Omittable`]),m=`SheetXL`;c(m,a),c(m,o),c(m,u),c(m,f),p.add(`${m}.Omittable`);var h=new Map([[`Promise`,()=>({async:!0})],[`Observable`,()=>({stream:!0})]]),g=`__scriptContext__`,_=new Set([`IScript.ScriptContext`,`${m}.IScript.ScriptContext`,`ScriptContext`]),v=e=>{if(!e||e.length===0)return``;let t=``;for(let n=0;n<e.length;n++){let r=e[n],i=r.kind;if(i!==`link`){if(i===`linkName`){let i=e[n+1];if(i?.kind===`linkText`&&i.text.trim())continue;t+=r.text;continue}t+=i===`linkText`?r.text.trim():r.text}}return t.replace(/\r\n?/g,`
2
- `).split(/\n[^\S\n]*\n\s*/).map(e=>e.split(`
3
- `).map(e=>e.trim()).filter(Boolean).join(` `)).filter(Boolean).join(`
4
- `).trim()};function y(n,r,c,y){let b=y?.builtInNames?.length?new Set(y.builtInNames.map(e=>e.toUpperCase())):null,x=[],S=[],C=null,w=(e,t,n,r)=>{let{start:i,length:a}=(e=>{if(!e||typeof e.getStart!=`function`)return{start:0,length:0};try{return{start:e.getStart(),length:e.getWidth()}}catch{return{start:0,length:0}}})(e);S.push({start:i,length:a,severity:n,code:t,message:r})},T=(e,t,n)=>{w(e,t,`error`,n)},E=e=>e?.parent?.name?.escapedText,D=(e,n,r,i,a=!1,o=!1)=>{let s={count:0},c=k(e,n,r,i,s,a,o);return s.count>=2&&(n.range||(n.range=`m`,s.count-=2),!i&&s.count>=1&&(--s.count,s.count>0&&T(e,t.ArrayDepth,`Arrays of more than 2 dimensions are not supported: '${E(e)}'.`))),s.count>0&&(n.arrayDepth=s.count),c},O=(e,t,r,i,a)=>{if(t!==`Lambda`&&t!==`${m}.Lambda`)return!1;let o=e.typeArguments,s=`*`;if(o&&o.length===2)if(a&&o[0].kind===n.SyntaxKind.TupleType&&(r.lambdaArity=o[0].elements.length),o[1].kind===n.SyntaxKind.AnyKeyword)s=`raw`;else{let e={};k(o[1],e,i,!1,{count:0}),s=e.scalar??`*`}else if(o&&o.length===1&&o[0].kind!==n.SyntaxKind.TupleType&&o[0].kind!==n.SyntaxKind.ArrayType)if(a&&(r.lambdaArity=2),o[0].kind===n.SyntaxKind.AnyKeyword)s=`raw`;else{let e={};k(o[0],e,i,!1,{count:0}),s=e.scalar??`*`}return r.lambda=s,!0},k=(r,i,c,v,y,b=!1,x=!1)=>{if(r){if(r.kind===n.SyntaxKind.ParenthesizedType)return k(r.type,i,c,v,y,b,x);if(r.kind===n.SyntaxKind.UnionType){let a=e=>e.kind===n.SyntaxKind.UndefinedKeyword||e.kind===n.SyntaxKind.VoidKeyword||e.kind===n.SyntaxKind.NullKeyword||e.kind===n.SyntaxKind.LiteralType&&e.literal?.kind===n.SyntaxKind.NullKeyword,o=r.types.filter(e=>!a(e));if(o.length===1)return k(o[0],i,c,v,y,b,x);let s=e=>{if(e.kind!==n.SyntaxKind.LiteralType)return;let t=e.literal;return t?.kind===n.SyntaxKind.NumericLiteral||t?.kind===n.SyntaxKind.PrefixUnaryExpression&&t.operand?.kind===n.SyntaxKind.NumericLiteral?n.SyntaxKind.NumericLiteral:t?.kind===n.SyntaxKind.StringLiteral?n.SyntaxKind.StringLiteral:void 0},l=s(o[0]);if(l!==void 0&&o.every(e=>s(e)===l))return void(i.scalar=l===n.SyntaxKind.NumericLiteral?e.n.Number:e.n.String);if(!v)return void(i.scalar=`*`);if(o.length===2){let e=e=>{if(e.kind!==n.SyntaxKind.TypeReference)return!1;let t=n.isTypeReferenceNode(e)?e.typeName.getText():``;return t===`Lambda`||t===`${m}.Lambda`},t=o.findIndex(e);if(t>=0&&!e(o[1-t]))return k(o[1-t],i,c,v,y,b,x),void O(o[t],o[t].typeName.getText(),i,c,v)}T(r,t.InvalidParamType,`Union parameter types are not supported: '${E(r)}'. Use a single type, optionally with '| null' or '| undefined', or 'T | Lambda<…>' for a value-or-lambda slot.`);return}if(r.kind===n.SyntaxKind.NumberKeyword)i.scalar=e.n.Number;else if(r.kind===n.SyntaxKind.StringKeyword)i.scalar=e.n.String;else if(r.kind===n.SyntaxKind.BooleanKeyword)i.scalar=e.n.Boolean;else if(r.kind===n.SyntaxKind.UndefinedKeyword||r.kind===n.SyntaxKind.NullKeyword||r.kind===n.SyntaxKind.VoidKeyword){if(v)return void T(r,t.UndefinedInput,`'undefined' is not a valid type for input: '${E(r)}'.`);i.scalar=e.n.Null}else if(r.kind===n.SyntaxKind.BigIntKeyword)i.scalar=e.n.Number;else if(r.kind===n.SyntaxKind.AnyKeyword)v&&(i.range=`*`);else if(r.kind===n.SyntaxKind.ArrayType){let e=r.elementType;if(!e)return void T(r,t.UntypedArray,`'Array' must be typed: '${E(r)}'.`);if(v&&x){let t=i,n=t.name??E(r)??`parameter`,a=t.errors;delete t.errors;let o={name:n};D(e,o,c,!0),a&&!o.errors&&(o.errors=a),t.repeating=[o];return}y.count++,k(e,i,c,v,y)}else if(r.kind!==n.SyntaxKind.TupleType)if(r.kind===n.SyntaxKind.TypeReference){let e=r.typeName?.getText?.()??null,m=f.get(e);if(m){let n=E(r);if(!v)return void T(r,t.InvalidReturnType,`'${e}' is not a valid return type: '${n}'. Error-policy markers apply to parameters only.`);let a=i;if(a.errors)return void T(r,t.InvalidParamType,`'${n}' declares more than one error-policy marker ('${a.errors}' and '${m}'). Only one is allowed.`);let o=r.typeArguments;return o&&o.length===1?(a.errors=m,k(o[0],i,c,v,y,b,x)):void T(r,t.GenericArity,`'${e}' must be typed with exactly 1 type: '${n}'.`)}if(p.has(e)){let a=i.name??E(r);if(!v)return void T(r,t.InvalidReturnType,`'Omittable' is not a valid return type: '${a}'. It describes how an ARGUMENT is received.`);let o=r.typeArguments;if(!o||o.length<1||o.length>2)return void T(r,t.GenericArity,`'${e}' must be typed with 1 or 2 types: '${a}'.`);let s=i;if(s.omittable=!0,o.length===2){let i=((e,t)=>{let n=t.literal;if(n===void 0)return;let r=e.SyntaxKind;switch(n.kind){case r.StringLiteral:return n.text;case r.NumericLiteral:return parseFloat(n.text);case r.TrueKeyword:return!0;case r.FalseKeyword:return!1;case r.NullKeyword:return null;case r.PrefixUnaryExpression:return n.operator===r.MinusToken&&n.operand?.kind===r.NumericLiteral?-parseFloat(n.operand.text):void 0;default:return}})(n,o[1]);if(i===void 0)return void T(r,t.InvalidParamType,`'${a}' declares '${e}' 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.`);s.omittedValue=i}return k(o[0],i,c,v,y,b,x)}if(d.has(e)){let n=i.name??E(r);if(!v)return void T(r,t.InvalidReturnType,`'Flatten' is not a valid return type: '${n}'. It describes how an ARGUMENT is received.`);let a=r.typeArguments;return a&&a.length===1?(y.count++,k(a[0],i,c,v,y,b)):void T(r,t.GenericArity,`'${e}' must be typed with exactly 1 type: '${n}'.`)}if(u.get(e)===`repeating`){let a=i.name??E(r);if(!v)return void T(r,t.RepeatingPosition,`'Repeating' is not a valid return type: '${a}'.`);if(y.count!==0)return void T(r,t.RepeatingPosition,`'Repeating' cannot be nested inside another type: '${a}'.`);let o=i,s=r.typeArguments;if(!s||s.length!==1)return void T(r,t.GenericArity,`'${e}' must be typed with exactly 1 type: '${a}'.`);let l=o.errors;delete o.errors;let u=((e,r,i,a)=>{let o=(e,t,n)=>{let r={name:e};return D(t,r,i,!0),n&&(r.optional=!0),a&&!r.errors&&(r.errors=a),r};if(e.kind!==n.SyntaxKind.TupleType)return[o(r,e,!1)];let s=e.elements;if(s.length<2)return T(e,t.RepeatingSlots,`'${r}': a repeating group of period ${s.length} must be spelled 'Repeating<T>' without the tuple.`),null;let c=[];for(let e=0;e<s.length;e++){let i=s[e];if(i.kind!==n.SyntaxKind.NamedTupleMember)return T(i,t.RepeatingSlots,`'${r}': every slot of a repeating group must be labelled, e.g. 'Repeating<[criteriaRange: IRange, criteria: Scalar]>'.`),null;let a=!!i.questionToken;if(a&&e!==s.length-1)return T(i,t.RepeatingOptional,`'${r}': only the LAST slot of a repeating group may be optional (slot '${i.name?.getText?.()}' is not).`),null;c.push(o(i.name?.getText?.()??`${e}`,i.type,a))}return c})(s[0],a??`parameter`,c,l);u&&(o.repeating=u);return}let S=a.get(e),C=!1;S&&(i.range=S,C=!0);let w=l.get(e);if(w&&(i.scalar=w),w!==void 0&&(C=!0),O(r,e,i,c,v))return;if(v){if(_.has(e))return g;let t=o.get(e);if(t)return t}else{let n=h.get(e);if(n){let a=Object.assign(i,n()),o=0;if(a.async&&o++,a.stream&&o++,o>1)return void T(r,t.MultipleModifiers,`'${e}' cannot have multiple modifiers: '${E(r)}'.`);C=!0}}if(!C){let n,i=`number, string, boolean, Scalar, Lambda, Date, FormulaError.Known, IRichData, IRange, IReferenceRange (and arrays of these; optionally wrapped in AcceptError<T>/AcceptRefError<T>, or grouped with Repeating<T>)`;n=v?b?`'${e}' is not a valid first parameter: '${E(r)}'. The first parameter is EITHER a macro target (making this a macro) OR a calculation input (making this a calculation function). Allowed: ${s.join(`, `)} (macro target); ${i} (calculation input).`:`'${e}' is not a valid parameter type: '${E(r)}'. Allowed: ${i}.`:`'${e}' is not a valid return type: '${E(r)}'. Allowed: number, string, boolean, Scalar, Date, FormulaError.Known, IRichData, IRange, Promise<T>, Observable<T> (and arrays of these).`,T(r,v?t.InvalidParamType:t.InvalidReturnType,n);return}let A=r.typeArguments;if(A){if(A.length!==1)return void T(r,t.GenericArity,`'${e}' must be typed with exactly 1 type: '${E(r)}'.`);D(A[0],i,c,v)}}else r.kind===n.SyntaxKind.FunctionType&&((e,r,i,a)=>{if(!a)return void T(e,t.FunctionReturn,`Function type is not a valid return type: '${E(e)}'. Declare a 'Lambda' return instead.`);let o=e.type,s={},c=`*`;o&&(o.kind===n.SyntaxKind.AnyKeyword?c=`raw`:(k(o,s,i,!1,{count:0}),c=s.scalar??`*`));let l=e.parameters;l&&!l.some(e=>e.dotDotDotToken)&&(r.lambdaArity=l.length),r.lambda=c})(r,i,c,v)}else T(r,t.MissingType,`Type is not defined for '${i?.name??`return`}'.`)};try{n.forEachChild(r,e=>{if((e=>(n.getCombinedModifierFlags(e)&n.ModifierFlags.Export)!==0)(e)&&n.isFunctionDeclaration(e)){let r=e?.name?.getText();if(!e.body)return void T(e,t.NoBody,`'${r}': function has no body.`);if(!r)return void T(e,t.Anonymous,`Anonymous exported functions are not allowed.`);let a={},o={parameters:{}};try{a.name=r;let s=v(c.getSymbolAtLocation(e.name)?.getDocumentationComment(c));s&&(o.summary=s);let l={};D(e.type,l,a,!1),a.returnType=l;let u={};(e=>(n.getCombinedModifierFlags(e)&n.ModifierFlags.Default)!==0)(e)&&(u.default=!0,C=r),Object.keys(u).length>0&&(a.behavior=u),a.parameters=[];let d=new Map,f=new Map,p=new Set,m=null,h=null,_=null,y=0,S=!1,E=0;for(let r=0;r<e.parameters.length;r++){let i=e.parameters[r],s={};s.name=i.name?.getText();let l=a.parameters.length===0,u=D(i.type,s,a,!0,l,!i.dotDotDotToken);if(u===g){r===0&&a.context===void 0&&(a.context=`script`);continue}if(u){if(a.parameters.length!==0)return void T(i,t.ContextNotFirst,`'${a.name}' contexts must be the first parameter: '${s.name}'.`);a.context=u;continue}if(s.lambda!==void 0){if(m!==null)return void T(i,t.MultipleLambda,`'${a.name}' has more than one Lambda parameter ('${m}' and '${s.name}'). Only one Lambda parameter is allowed.`);m=s.name}else if(m!==null)return void T(i,t.LambdaNotLast,`'${a.name}' Lambda parameter ('${m}') must be the last parameter, but '${s.name}' follows it.`);let b,x=i.initializer!==void 0&&i.initializer!==null||i.questionToken!==void 0&&i.questionToken!==null;if(x&&(s.optional=!0,i.initializer))try{i.initializer.kind===n.SyntaxKind.StringLiteral?b=i.initializer.text:i.initializer.kind===n.SyntaxKind.NumericLiteral?b=parseFloat(i.initializer.text):i.initializer.kind===n.SyntaxKind.TrueKeyword||i.initializer.kind===n.SyntaxKind.FalseKeyword?b=i.initializer.kind===n.SyntaxKind.TrueKeyword:i.initializer.kind===n.SyntaxKind.NullKeyword&&(b=null)}catch(e){console.warn(`Couldn't extract default value for parameter '${s.name}'`,e)}i.dotDotDotToken&&(s.rest=!0);let C=s.repeating;if(C){if(s.rest)return void T(i,t.RepeatingPosition,`'${a.name}' parameter '${s.name}' is both a rest parameter and a repeating group. A group already repeats — drop the '...'.`);if(x&&C.length===1)return void T(i,t.RepeatingOptional,`'${a.name}' parameter '${s.name}' cannot be an optional repeating group. Use '...${s.name}: T[]' for zero-or-more, or drop the '?' for one-or-more.`);if(h!==null)return void T(i,t.MultipleRepeating,`'${a.name}' has more than one repeating group ('${h}' and '${s.name}'). Only one is allowed — two would make the argument count ambiguous.`);if(_!==null)return void T(i,t.RepeatingOptional,`'${a.name}' parameter '${_}' is optional and precedes the repeating group '${s.name}'. Every parameter outside a group must be required.`);h=s.name,y=C.length,S=!0===C[C.length-1].optional}else{if(h!==null&&s.rest)return void T(i,t.RepeatingOptional,`'${a.name}' parameter '${s.name}' is a rest parameter and follows the repeating group '${h}'. Two variadic tails would make the argument count ambiguous.`);if(h!==null&&x){if(E>=y-1)return void T(i,t.RepeatingOptional,y===1?`'${a.name}' parameter '${s.name}' is optional and follows the period-1 repeating group '${h}'. One more argument is indistinguishable from one more repetition — make it required, or give the group a period.`:`'${a.name}' has ${E+1} optional parameters after the repeating group '${h}', which has period ${y}. At most ${y-1} may be optional, or the argument count no longer decides the parse.`);if(S)return void T(i,t.RepeatingOptional,`'${a.name}' parameter '${s.name}' is optional and follows '${h}', whose own last slot is already optional. Both omissions reach the same argument count — drop one.`);E++}}x&&!C&&(_=s.name);let w=(s.range?2:0)+(s.arrayDepth??0),O=s.range===`r`||s.range===`p`||s.range===`*`,k=s.rest||O?3:2;if(w>k)return void T(i,t.ArrayDepth,`'${a.name}' parameter '${s.name}' has an array depth of ${w}; the maximum is ${k}${s.rest?` for a rest parameter`:` (use a rest parameter for one more level, or an IRange)`}.`);a.parameters.push(s);let A={description:``};if(o.parameters[s.name]=A,A.description=v(c.getSymbolAtLocation(i.name)?.getDocumentationComment(c)),b!==void 0&&(s.defaultValue=b),d.set(s.name,s),f.set(s.name,i),C&&C.length>1){p.add(s.name);for(let e of C){let t=`${s.name}.${e.name}`;o.parameters[t]={description:``},d.set(t,e),f.set(t,i)}}}if(e.jsDoc&&e.jsDoc.length>0){let s=e.jsDoc,c=s.length;for(let e=0;e<c;e++){let c=s[e]?.tags;if(!c)continue;let l=c.length;for(let e=0;e<l;e++){let s=c[e],l=s?.tagName?.text;if(!l)continue;l=l.toLowerCase();let u=s.comment,f=i(l);if((typeof u==`string`||f)&&(typeof u==`string`&&(u=u.replace(/\r\n?/g,`
5
- `).trim()),f||!u||(u=u.split(`
6
- `)[0].trim(),u&&u.length!==0))){if(u&&typeof u==`string`){let e,t=/\{@link(code|plain)?\s+([^}|]+)(?:\s*\|\s*([^}]+))?\}/g,n=u,r=[];for(;(e=t.exec(u))!==null;){let[t,n,r,i]=e,a=[r.trim()];i&&a.push(i.trim())}u=n,r.length>0&&l===`see`&&(o.links||=[],o.links.push(...r))}if(l===`name`){let e=u;e!==r&&(o.name=e)}else if(l!==`description`){if(l===`summary`){let e=u;e&&(o.summary=e)}else if(l===`param`){let e=s.name?.getText?.()??s.name?.text,i=d.get(e);if(!i){T(s,t.UnknownParam,`Parameter '${e}' not found in function '${r}'.`);continue}let a=o.parameters?.[e];if(a&&!a.description&&typeof u==`string`&&u&&(a.description=u),s.typeExpression&&s.typeExpression.type)try{let e=s.typeExpression.type;if(e.kind===n.SyntaxKind.UnionType){let t=[];i.enums=t,e.types.forEach(e=>{if(e.kind===n.SyntaxKind.LiteralType){let n=e.literal.text;n&&t.push(n)}})}}catch(e){console.warn(`Error parsing JSDoc type expression:`,e)}}else if(l===`returns`||l===`return`)a.returnType.description=u;else if(l===`category`)o.category=u;else if(l===`deprecated`||l===`hidden`){let e=!0,t=u?.toLowerCase();t===`false`?e=!1:t!==`true`&&(e=u),!1!==e&&(o.deprecated=e??!0)}}}}}}Object.keys(a.returnType).length===0&&delete a.returnType,o.summary||w(e.name??e,t.MissingSummary,`warning`,`'${r}': missing a description. Add a JSDoc summary or '@summary'.`);let O=!a.context;if(O&&b?.has(r.toUpperCase()))return void T(e.name??e,t.BuiltInName,`'${r}' is a built-in function. Choose a different name - a calculation function cannot replace a built-in.`);if(O){let e=o.parameters??{};for(let[n,i]of Object.entries(e))if(!p.has(n)&&!i.description){let e=f.get(n);w(e,t.MissingParamDescription,`warning`,`'${r}': parameter '${n}' is missing a description. Add an '@param ${n}' tag.`)}}x.push([a,o])}catch(n){T(e,t.ParseError,`'${r}': ${n.message}`)}}})}catch(e){T(void 0,t.ParseError,`Unable to analyze module: ${e?.message??e}`)}return{functions:x,autoRun:C,diagnostics:S}}exports.analyzeModule=y,exports.lintScript=function(e,t,n){let r=`script.ts`,i=`lib.d.ts`,a={[r]:t??``,[i]:``},o=e.createProgram([r],{allowJs:!0,noResolve:!0,noLib:!0,isolatedModules:!0,module:99,target:e.ScriptTarget.ES2020},{getSourceFile:t=>{let n=a[t];if(n!==void 0)return e.createSourceFile(t,n,e.ScriptTarget.Latest,!0)},fileExists:e=>a[e]!==void 0,readFile:e=>a[e],writeFile:()=>{},getCurrentDirectory:()=>`./`,getCanonicalFileName:e=>e,useCaseSensitiveFileNames:()=>!0,getDefaultLibFileName:()=>i,getNewLine:()=>`
7
- `}),s=o.getTypeChecker(),c=o.getSourceFile(r);return c?y(e,c,s,n).diagnostics:[]};
@@ -1,3 +0,0 @@
1
- const e=require("./BnccBYHCCq9TGFx4.cjs"),t=require("./CHFOXPbNUaeZbrXn.cjs"),n=require("./DDPxHIqx8aIbqTRE.cjs"),r=require("./Dtc_8P-koQRmNT2s.cjs"),i=require("./Ck7Tc5npWk73wrF3.cjs");var a;a||={};var o=class extends e.m{constructor(e,t=50){super(t),this._transactions=e,this._floorId=e?e.getCurrentCommit(!1).getId():null,this._removeListener=e?.addListener({onCommitChange:()=>this._notifyOnStackChange()})}_undoCommits(e=this.maxStack){let t=this._transactions;if(!t)return[];let n=t.getLog(t.getCurrentCommit(!1).getId(),2**53-1),r=[];for(let t=0;t<n.length&&r.length<e;t++){let e=n[t];if(e.getId()===this._floorId||t===n.length-1)break;e.getDescription()&&r.push(e)}return r}_redoCommits(e=this.maxStack){let t=this._transactions;if(!t)return[];let n=t.getCurrentCommit(!1).getId(),r=t.getTipCommit().getId();if(r===n)return[];let i=t.getLog(r,2**53-1),a=[],o=!1;for(let e of i){if(e.getId()===n){o=!0;break}a.push(e)}if(!o)return[];a.reverse();let s=[];for(let t of a)if(t.getDescription()&&s.push(t),s.length>=e)break;return s}undo(e=1){let t=this._transactions;if(!t)return;let n=!1;try{for(let r=0;r<e;r++){let[e]=this._undoCommits(1);if(!e)break;t.revert(e.getId()),n=!0}}finally{n&&this._notifyOnStackChange()}}redo(e=1){let t=this._transactions;if(!t)return;let n=!1;try{for(let r=0;r<e;r++){let[e]=this._redoCommits(1);if(!e){r===0&&this._repeatOperation?.repeat();break}t.restore(e.getId()),n=!0}}finally{n&&this._notifyOnStackChange()}}hasUndo(){return this._undoCommits(1).length>0}hasRedo(){return this._redoCommits(1).length>0||this._repeatOperation!==null}getTopUndoDescription(){return this._undoCommits(1)[0]?.getDescription()??null}getTopRedoDescription(){return this._repeatOperation===null?this._redoCommits(1)[0]?.getDescription()??null:this._repeatOperation.description}getUndoDescriptions(){return this._undoCommits().map(e=>e.getDescription())}getRedoDescriptions(){let e=this._redoCommits().map(e=>e.getDescription());return e.length===0&&this._repeatOperation!==null&&e.push(this._repeatOperation.description),Object.freeze(e)}addUndoOperation(){throw Error(`TransactionUndoManager derives its stack from the commit log; commit a described transaction instead.`)}clear(e=!0){this._transactions&&(this._floorId=this._transactions.getCurrentCommit(!1).getId()),super.clear(e)}close(){this._removeListener?.()}},s=class{constructor(e,t){this._dirty=!1,this._store=e,this._savedCommitId=e.getCurrentCommit()?.getId()??null,this._emitter=new r.Tt(this);let n=this;this._removeStoreListener=e.addListener({onCommitEnd(){n._recompute()},onCommitChange(){n._recompute()}}),this._removeCommitListener=t?.addCommitListener({onCommit(e){e.store===n._store&&n.markSaved(e.commitId)}})}getStore(){return this._store}isDirty(){return(this._store.getCurrentCommit()?.getId()??null)!==this._savedCommitId}getSavedCommitId(){return this._savedCommitId}markSaved(e=this._store.getCurrentCommit()?.getId()??null){e!==this._savedCommitId&&(this._savedCommitId=e??null,this._recompute())}addListeners(e,t){return this._emitter.addListeners(e,t)}_recompute(){let e=this.isDirty();e!==this._dirty&&(this._dirty=e,this._emitter.notify(e?`onDirty`:`onClean`,{transactional:!1}))}close(){this._removeStoreListener?.(),this._removeCommitListener?.(),this._emitter.close()}},c=class e{constructor(t,n={}){this._password=null,this._emitter=new r.Tt(this),this._path=t??null,this._name=n.name??null,this._format=n.format??null,this._size=n.size??null,this._canWrite=n.canWrite??e._defaultCanWrite(this._path),this._encryption=n.encryption??null}static _defaultCanWrite(e){return!!e&&!/^(https?:|data:|blob:)/i.test(e)}_cleanPath(){return this._path?this._path.split(/[?#]/)[0]:null}getName(){if(this._name!==null&&this._name!==void 0)return this._name;let e=this._cleanPath();return e&&r.gt(e)||null}getPath(){return this._path}getFormat(){return this._format?this._format:this.getExtension()}getExtension(){let e=this._cleanPath();if(!e)return null;let t=r.Et(e);return t?t.toLowerCase():null}getEncryption(){return this._encryption}isEncrypted(){return this._encryption!==null||this._password!==null}setPassword(e){this._password!==(e??null)&&(this._password=e??null,this._password===null&&(this._encryption=null),this._emitter.notify(`onChange`))}getPassword(){return this._password}getSize(){return this._size}canWrite(){return this._canWrite}setName(e){this.update({name:e})}update(e){let t=!1;return e.path!==void 0&&e.path!==this._path&&(this._path=e.path,t=!0),e.name!==void 0&&e.name!==this._name&&(this._name=e.name,t=!0),e.format!==void 0&&e.format!==this._format&&(this._format=e.format,t=!0),e.size!==void 0&&e.size!==this._size&&(this._size=e.size,t=!0),e.canWrite!==void 0&&e.canWrite!==this._canWrite&&(this._canWrite=e.canWrite,t=!0),e.encryption!==void 0&&e.encryption!==this._encryption&&(this._encryption=e.encryption,t=!0),t&&this._emitter.notify(`onChange`),this}addListeners(e,t){return this._emitter.addListeners(e,t)}get[Symbol.toStringTag](){return`[Origin]`}toString(){let e=this._cleanPath(),t=e?e.split(/[/\\]/).pop()||e:this._name??`(unbound)`,n=this._size;if(n==null)return t;if(n<1024)return`${t} ${n}B`;let r=Math.floor(Math.log(n)/Math.log(1024)),i=[`B`,`KB`,`MB`,`GB`,`TB`];return`${t} ${(n/1024**r).toFixed(2)}${i[Math.min(r,i.length-1)]}`}},l=class{constructor(){this._defaultStringSourceType=`filepath`}async read(t){let n=t.options??{},i=t.source;if(typeof i==`function`&&(i=i()),i&&typeof i==`object`&&typeof i.then==`function`&&(i=await Promise.resolve(i)),i==null&&(i=await this.resolveSource(t),i==null))return null;let a=n.format,o=this._detectSourceType(i);if(!o)throw Error(`Unable to detect source type from provided input.`);let s,c,l=!1;if(o===`filepath`){let e=typeof i==`string`&&i.startsWith(`file://`)?i.slice(7):i;i=await this.filePathToFile(e),o=`file`,l=!0}switch(o){case`file`:{let e=i,t=e?.name,n=t?`${r.gt(t)}`:``;s=await e.arrayBuffer(),c={format:a,ext:r.Et(t),name:n,absolutePath:t,size:e.size,canWrite:l&&this._canWriteLocalPath()};break}case`blob`:{let e=i;s=await e.arrayBuffer(),c={format:a,size:e.size};break}case`base64`:{let t;if(i&&typeof i==`object`&&`base64`in i)t=i.base64;else if(typeof i==`string`&&i.startsWith(`data:`)){let[,e]=i.split(`,`);t=e}else t=i;s=e.F.base64ToArrayBuffer(t),c={format:a,size:t.length};break}case`fetch`:{let e,t,n;if(typeof i==`string`)e=i;else{if(!i||typeof i!=`object`||!(`input`in i))throw Error(`Invalid fetch source provided.`);{let r=i;e=r.input,t=r.init,n=r.timeout}}let o=n||3e4,l=new AbortController,u=setTimeout(()=>l.abort(),o),d=typeof e==`string`?e:e.toString(),f=r.Et(d);try{let n=await fetch(e,{...t,signal:l.signal});if(clearTimeout(u),!n.ok)throw Error(`Failed to fetch: ${n.status} ${n.statusText}`);let i=await n.arrayBuffer();if(!i)throw Error(`Unable to fetched content: ${d}`);s=i,c={format:a,ext:f,name:r.gt(d,!0),absolutePath:d}}catch(e){throw clearTimeout(u),e.name===`AbortError`?Error(`Fetch timeout after ${o}ms: ${d}`):e}break}case`buffer`:s=i,c={format:a};break;case`stream`:{let e=i.getReader(),t=[],n=0;try{for(;;){let{done:r,value:i}=await e.read();if(r)break;t.push(i),n+=i.length}}finally{e.releaseLock()}let r=new ArrayBuffer(n),o=new Uint8Array(r),l=0;for(let e of t)o.set(e,l),l+=e.length;s=r,c={format:a};break}default:throw Error(`Unsupported source type: ${o}`)}let u=await t.decode(s,{sourceType:o,...c});return u?(await this.onWorkbookRead(u,i),u):null}async resolveSource(e){return null}async onWorkbookRead(e,t){}_canWriteLocalPath(){return!1}_detectSourceType(t){if(t&&typeof t==`object`&&`base64`in t)return`base64`;if(t&&typeof t==`object`&&`input`in t)return`fetch`;if(typeof t==`string`){if(t.startsWith(`data:`))return`base64`;if(t.startsWith(`http://`)||t.startsWith(`https://`))return`fetch`;if(t.startsWith(`file://`))return`filepath`;let e=this._defaultStringSourceType;return t.startsWith(`./`)||t.startsWith(`../`)||t.startsWith(`/`)||/^[a-zA-Z]:[/\\]/.test(t),e}if(typeof File<`u`&&t instanceof File)return`file`;if(typeof Blob<`u`&&t instanceof Blob)return`blob`;let n=t instanceof ArrayBuffer||Object.prototype.toString.call(t)===`[object ArrayBuffer]`,r=ArrayBuffer.isView(t),i=e.F.isNodeBuffer(t);return n||r||i?`buffer`:typeof ReadableStream<`u`&&t instanceof ReadableStream||Object.prototype.toString.call(t)===`[object ReadableStream]`||t&&typeof t.getReader==`function`&&t.locked!==void 0?`stream`:null}},u=class extends l{constructor(e,t){super(),this._getWriteFormats=e,this._getReadFormats=t,this._defaultStringSourceType=`fetch`,this._handleCache=new WeakMap,this._pendingOpenHandle=null}async read(e){let t=e.source;return t&&t.kind===`file`&&typeof t.getFile==`function`?(this._pendingOpenHandle=t,super.read({...e,source:await t.getFile()})):super.read(e)}async resolveSource(){let t=await this._getReadFormats?.()??[];if(typeof globalThis.showOpenFilePicker==`function`)try{let e=function(e){let t=d(e);if(t.length<=1)return t;let n=new Set,r={};for(let e of t)for(let[t,i]of Object.entries(e.accept))for(let e of i)n.has(e)||(n.add(e),(r[t]??=[]).push(e));return[{description:`All Supported`,accept:r},...t]}(t),[n]=await globalThis.showOpenFilePicker(e.length?{types:e}:void 0);return this._pendingOpenHandle=n,await n.getFile()}catch(e){if(e?.name===`AbortError`)return null;throw e}let n=t.flatMap(e=>e.exts.map(e=>`.`+e)).join(`, `);return e.t.openFileDialog(n)}async onWorkbookRead(e){if(this._pendingOpenHandle){let t=e.getOrigin?.();t&&(this._handleCache.set(t,this._pendingOpenHandle),t instanceof c&&t.update({canWrite:!0})),this._pendingOpenHandle=null}}async filePathToFile(e){throw Error(`Cannot read local file path '${e}' in browser environment. Use a file input element or fetch for remote URLs.`)}async write(e){let{origin:t,suggestedName:n,format:r,encode:i,prompt:a}=e,o=[r,...(await this._getWriteFormats()).filter(e=>e.key!==r.key)],s=typeof globalThis.showSaveFilePicker==`function`,l=!a&&t.canWrite()?this._handleCache.get(t):void 0;if(l?.name){let e=t.getPath()?.split(/[/\\]/).pop();e&&l.name!==e&&(l=void 0)}let u=!!l;if(s)try{if(l){let e=await async function(e){try{if(typeof e.queryPermission!=`function`)return`granted`;let t={mode:`readwrite`};return await e.queryPermission(t)===`granted`||await e.requestPermission(t)===`granted`?`granted`:`denied`}catch{return`unavailable`}}(l);if(e===`denied`)return null;e!==`granted`&&(l=void 0)}l||=await globalThis.showSaveFilePicker({suggestedName:n,types:d(o)});let e=p(l.name??n),a=o.find(t=>t.exts.some(t=>t.toLowerCase()===e))??r,s=await i(a.key),m=new Blob([f(s)],{type:a.mimeType||`application/octet-stream`}),h=await l.createWritable();return await h.write(m),await h.close(),this._handleCache.set(t,l),t instanceof c&&t.update({size:m.size,...u?null:{path:l.name??n,name:null,format:a.key,canWrite:!0}}),t}catch(e){if(e?.name===`AbortError`)return null}let m=await i(r.key),h=new Blob([f(m)],{type:r.mimeType||`application/octet-stream`}),g=t.getPath(),_=g?g.split(/[/\\]/).pop():null,v=_&&p(_)?_:n;return function(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.style.display=`none`,r.href=n,r.download=t,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n)}(h,v),t instanceof c&&t.update({size:h.size,...t.getPath()===v?null:{path:v,name:null,format:r.key,canWrite:!1}}),t}};function d(e){return e.map(e=>{let t=e.mimeType&&e.mimeType.includes(`/`)?e.mimeType:`application/octet-stream`;return{description:e.description??e.key,accept:{[t]:e.exts.map(e=>`.`+e)}}})}function f(e){if(typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer){let t=new ArrayBuffer(e.byteLength);return new Uint8Array(t).set(new Uint8Array(e)),t}return e}function p(e){let t=e.lastIndexOf(`.`);return t>=0?e.slice(t+1).toLowerCase():``}var m=class{constructor(e){this._private={input:e},typeof e==`string`?this._private.name=e:Object.assign(this._private,e)}toJSON(){return this._private.input}getFamily(){return this._private.name}getPitch(){return this._private.pitch}getPanose(){return this._private.panose}toString(){return typeof this._private.input==`string`?this._private.input:JSON.stringify(this._private.input)}get isIFont(){return!0}},h=t.r({findBestMatch:()=>ee,getFontList:()=>S,setFontList:()=>x}),g=[`Arial`,`Arial Black`,`Brush Script MT`,`Calibri`,`Comic Sans MS`,`Courier New`,`Garamond`,`Georgia`,`Impact`,`Luminari`,`Palatino Linotype`,`Tahoma`,`Times New Roman`,`Trebuchet MS`,`Verdana`],_=new Map;_.set(r.Q.GenericName.Serif,[`Tahoma`]),_.set(r.Q.GenericName.SanSerif,[`Calibri`]),_.set(r.Q.GenericName.MonoSpace,[`Courier New`]),_.set(r.Q.GenericName.Cursive,[`Comic Sans MS`]),_.set(r.Q.GenericName.Fantasy,[`Luminari`]),_.set(r.Q.GenericName.UISystem,[`Arial`]),_.set(r.Q.GenericName.UISerif,[`Tahoma`]),_.set(r.Q.GenericName.UISanSerif,[`Arial`]),_.set(r.Q.GenericName.UIMonoSpace,[`Courier New`]),_.set(r.Q.GenericName.UIRounded,[`Arial`]),_.set(r.Q.GenericName.Math,[]),_.set(r.Q.GenericName.Emoji,[]),_.set(r.Q.GenericName.Fangsong,[]);var v=new Map,y=[];x(g);var b=eval;function x(e){e||x(g);let t=[];for(let n=0;n<e.length;n++){let r=e[n];typeof r==`string`&&(r=new m(r));let i=!0;try{i=b(`document.fonts.check('12px ${r.getFamily()}')`)}catch{}let a={fontRef:r,loaded:i};t.push(a),v.set(r.getFamily(),a)}y=Object.freeze(t)}function S(){return y}var C,w,T,E,D=new Map;function ee(e,t){let n=D.get(e);if(n)return n.fontRef===null?null:n;let r=[e];t?.fallbacks&&(r=r.concat(t.fallbacks));let i=null;for(let e=0;!i&&e<r.length;e++){let t=r[e];if(i=v.get(t),!i){let e=_.get(t);if(e)for(let t=0;!i&&t<e.length;t++)i=v.get(e[t])}}return i?D.set(e,i):D.set(e,{fontRef:null,loaded:!1}),i}var te=t.r({DefaultFontSizes:()=>O,findNextFontSize:()=>ne}),O=Object.freeze([8,9,10,11,12,14,16,18,20,22,24,26,28,30,36,48,72]);function ne(t,n=!0,r=O){if(!r||r.length===0)return t;if(t===void 0)return r[0];if(n&&t>=r[r.length-1]||!n&&t<=r[0])return t;let i=e.A.findEqualOrGreater(r,t);return n?(r[i]===t&&(i+=1),r[i]||--i,r[i]):(--i,r[i])}(C||={}).SortOn={Value:`value`,FillColor:`fillColor`,FontColor:`fontColor`,Icon:`icon`},(T=w||={}).Compound={Single:`sng`,Double:`dbl`,ThickThin:`thickThin`,ThinThick:`thinThick`,Triple:`tri`},T.Align={Center:`ctr`,Inset:`in`,Outset:`outset`},T.LineCap={Butt:`butt`,Round:`round`,Square:`square`},T.LineJoin={Bevel:`bevel`,Miter:`miter`,Round:`round`},T.PresetMarkerShape={Single:`none`,Double:`double`,ThickThin:`thickThin`,ThinThick:`thickThin`},T.StrokeStyle={None:`none`,Dashed:`dashed`,Dotted:`dotted`,LargeDash:`lgDash`,LargeDashDot:`lgDashDot`,LargeDashDotDot:`lgDashDotDot`,Solid:`solid`,SysDash:`sysDash`,SysDashDot:`sysDashDot`,SysDashDotDot:`sysDashDotDot`,SysDot:`sysDot`},(E||={}).Type={OuterShadow:`outerShadow`,InnerShadow:`innerShadow`,PresetShadow:`presetShadow`,Glow:`glow`,SoftEdge:`softEdge`,Reflection:`reflection`};var k,re,ie,A,j=r.st.BuiltInName,M={[j.Normal]:e.v(`style.builtin.normal`),[j.Comma]:e.v(`style.builtin.comma`),[j.Currency]:e.v(`style.builtin.currency`),[j.Percent]:e.v(`style.builtin.percent`),[j.Comma0]:e.v(`style.builtin.comma0`),[j.Currency0]:e.v(`style.builtin.currency0`),[j.Hyperlink]:e.v(`style.builtin.hyperlink`),[j.FollowedHyperlink]:e.v(`style.builtin.followedHyperlink`),[j.Note]:e.v(`style.builtin.note`),[j.WarningText]:e.v(`style.builtin.warningText`),[j.Title]:e.v(`style.builtin.title`),[j.Input]:e.v(`style.builtin.input`),[j.Output]:e.v(`style.builtin.output`),[j.Calculation]:e.v(`style.builtin.calculation`),[j.CheckCell]:e.v(`style.builtin.checkCell`),[j.LinkedCell]:e.v(`style.builtin.linkedCell`),[j.Total]:e.v(`style.builtin.total`),[j.Good]:e.v(`style.builtin.good`),[j.Bad]:e.v(`style.builtin.bad`),[j.Neutral]:e.v(`style.builtin.neutral`),[j.ExplanatoryText]:e.v(`style.builtin.explanatoryText`)},ae=e.v(`style.builtin.heading`),oe=e.v(`style.builtin.accent`),se=e.v(`style.builtin.accentTint`),ce=/^Heading ([1-4])$/,le=/^Accent([1-6])$/,ue=/^(20|40|60)% - Accent([1-6])$/;function de(e){let t=M[e];if(t)return{key:t};let n=ce.exec(e);return n?{key:ae,params:{n:+n[1]}}:(n=le.exec(e),n?{key:oe,params:{n:+n[1]}}:(n=ue.exec(e),n?{key:se,params:{pct:+n[1],n:+n[2]}}:null))}var fe=(t,n,i,a,o)=>{let s=JSON.parse(JSON.stringify(t.definition));s.adjs||=[];let c=``,l=0,u=0;n>0?(u=n,l=100-n,c=e._(`op.lighterPercent`,{percent:n})):n<0&&(l=100+n,c=e._(`op.darkerPercent`,{percent:-n})),l&&s.adjs.push({[r.E.AdjustmentType.LumMod]:l}),u&&s.adjs.push({[r.E.AdjustmentType.LumOff]:u});let d=new r.Ut({val:s.val,adjs:s.adjs},i),f=d.toString();a?.set(f,d);let p=d.toRGBA().toString();return o?.set(p,d),{description:t.description+`, `+c,definition:s}};function pe(e){let t,n=e.trim();if(!n)return;try{let e=i.r.shared().tokenize(n,!1);if(e.errors.length>0)return;t=e.tokens}catch{return}let a=0,o=0;if(t.length===2){let e=t[0].tokenType?.name;e===`MinOp`?(a=-1,o=1):e===`PlusOp`&&(a=1,o=1)}if(t.length-o!==1)return;let s=t[o],c=s.image;try{switch(s.tokenType?.name){case`NumberToken`:case`ScientificDigit`:case`DigitToken`:{let e=r.F(c).value;return a===0?e:a*e}case`StringToken`:return a===0?r.Y(c).value:void 0;case`BooleanToken`:return a===0?r.tt(c).value:void 0;case`LiteralError`:case`RefError`:return a===0?r.C(c).value:void 0;default:return}}catch{return}}function N(e,t){let r=P(e),i=P(t);return r===i?e===t?0:typeof e==`number`&&typeof t==`number`?e<t?-1:1:typeof e==`string`&&typeof t==`string`?e<t?-1:+(e>t):typeof e==`boolean`?e?1:-1:n.a.isError(e)&&n.a.isError(t)?e.getCode()-t.getCode():0:r-i}function P(e){if(e===null)return 0;switch(typeof e){case`number`:return 1;case`string`:return 2;case`boolean`:return 3;default:return n.a.isError(e)?4:5}}(k||={}).buildPalette=function(e,t,n,i){let a=[];for(let o=0;o<e.length;o++){let s=[];a.push(s);let c=r=>{for(let a=0;a<r.length;a++)s.push(fe(e[o],r[a],t,n,i))},l=new r.Ut({val:e[o].definition.val,adjs:e[o].definition.adjs},t).toHSLA().lum;c(l===0?[50,35,25,15,5]:l===100?[-5,-15,-25,-35,-50]:l<=20?[90,75,50,25,10]:l>=80?[-10,-25,-50,-75,-90]:[80,60,40,-25,-50])}return a},re||={},ie||={},A||={};var F=class{constructor(e){this._children=e}getSize(){let e=this._children,t=e.length,n=0;for(let r=0;r<t;r++)n+=e[r].getSize();return n}getCount(){let e=this._children,t=e.length,n=0;for(let r=0;r<t;r++)n+=e[r].getCount();return n}getAggregates(e){if(e)return this._mergeAggregates(e);let t=this._aggregates;return t||(t=this._mergeAggregates(),this._aggregates=t),t}getSnappedSum(e){let t=e??this.getAggregates().sum??0,n=this._children;for(let e=n.length-1;e>=0;e--)if(n[e].getAggregates().numericalCount>0)return n[e].getSnappedSum(t);return t}getSortedNumbers(){let e=this._sortedNumbers;if(!e){let t=this._children,n=t.length,i=[];for(let e=0;e<n;e++){let n=t[e].getSortedNumbers().getValues();n.length>0&&i.push(n)}e=new r.wt(function(e){let t=e.length;if(t===0)return I;if(t===1)return e[0];let n=e[0];for(let r=1;r<t;r++)n=L(n,e[r]);return Object.freeze(n)}(i)),this._sortedNumbers=e}return e}getRanked(e){return r.Ft(this._children,e,N)[Symbol.iterator]()}getFrequencies(e){if(e)return this._mergeFrequencies(e);let t=this._frequencies;return t||(t=this._mergeFrequencies(),this._frequencies=t),t}_mergeFrequencies(e){let t=e?.keyFn??r.O,n=e?.limit,i=new Map,a=this._children,o=a.length,s=0,c=0,l=!1;for(let r=0;r<o;r++){let o=a[r].getFrequencies(e);s+=o.getVisitedCount(),c+=o.getTotalCount(),l||=o.isTruncated();let u=o.getValueCounts(),d=u.next();for(;!d.done;){let[e,r]=d.value,a=t(e),o=i.get(a);o?o.count+=r:n===void 0||i.size<n?i.set(a,{value:e,count:r}):l=!0,d=u.next()}}return r.Kt.fromGroups(i,t,e,N,s,c,l)}getTypedCounts(e){let t=this._typedCounts;if(!t){let e={[n.n.Number]:0,[n.n.String]:0,[n.n.Boolean]:0,[n.n.Error]:0,[n.n.RichData]:0,[n.n.Null]:0},r=this._children,i=r.length;for(let t=0;t<i;t++){let i=r[t].getTypedCounts();e[n.n.Number]+=i[n.n.Number]??0,e[n.n.String]+=i[n.n.String]??0,e[n.n.Boolean]+=i[n.n.Boolean]??0,e[n.n.Error]+=i[n.n.Error]??0,e[n.n.RichData]+=i[n.n.RichData]??0,e[n.n.Null]+=i[n.n.Null]??0}t=Object.freeze(e),this._typedCounts=t}if(e===void 0)return t;let r={},i=e.length;for(let n=0;n<i;n++)r[e[n]]=t[e[n]]??0;return r}get isIRangeStats(){return!0}_mergeAggregates(e){let t=this._children,i=t.length,a={count:0,min:void 0,max:void 0,numericalCount:0,sum:0,sumSq:0,typed:{[n.n.Number]:0,[n.n.String]:0,[n.n.Boolean]:0,[n.n.Error]:0,[n.n.RichData]:0,[n.n.Null]:0}};for(let n=0;n<i;n++){let r=t[n].getAggregates(e);a.count+=r.count;let i=r.numericalCount;i<=0||(a.numericalCount+=i,a.sum+=r.sum,a.sumSq+=r.varP*i+r.sum*r.sum/i,(a.min===void 0||r.min<a.min)&&(a.min=r.min),(a.max===void 0||r.max>a.max)&&(a.max=r.max))}return r.mt(a)}},I=Object.freeze([]);function L(e,t){let n=e.length,r=t.length,i=Array(n+r),a=0,o=0,s=0;for(;a<n&&o<r;)i[s++]=e[a]<=t[o]?e[a++]:t[o++];for(;a<n;)i[s++]=e[a++];for(;o<r;)i[s++]=t[o++];return i}var R=class{constructor(e){this.isIExternalBook=!0,this._json=e}getIdentity(){return this._json.identity}getSheetNames(){return this._json.sheetNames}getDefinedNames(){return this._json.definedNames??[]}getSheetData(e){return this._json.sheetDataSet?.find(t=>t.sheetIndex===e)??null}toJSON(){return this._json}},z=class{constructor(e){this.isIExternalBookCollection=!0,this._items=(e?.json??[]).map(e=>e?new R(e):null)}[Symbol.iterator](){return this.getItems()[Symbol.iterator]()}getItems(){let e=[],t=this._items.length;for(let n=0;n<t;n++){let t=this._items[n];t&&e.push(t)}return e}getCount(){return this.getItems().length}getByIndex(e){return this._items[e-1]??null}toJSON(){return this._items.length===0?null:this._items.map(e=>e?.toJSON()??null)}},B=class{constructor(e){this._closed=!1,this._options={...e};let t=this;this._transactions=this._options.transactions??new r.St({transient:!0}),this._stateId=this._transactions.create(),this._transactionsRemoveListener=this._transactions.addStateListener(this._stateId,{onAfterStateChange(e,n,r){t._emitter.notify(`onCollectionChange`)}}),this._emitter=new r.Tt(this,this._transactions),this._initState(e?.initial)}add(t,n,r){let i=this;n&&n.addListeners({onDelete:n=>{i._updateState(e=>{if(!e.modules[t])return;let n=e.modules[t];if(n){let r={...e};return i._options.onRemove?.(t,n),i._emitter.notify(`onCollectionChange`),delete r.modules[t],r}return e},e.v(`op.deleteModule`))}},{once:!0});let a=this._getState()?.modules,o=a?.[t],s=r?.replace??!1;if(o&&!s)throw Error(`Already existing '${t}'`);let c={...a};n?(c[t]=n,i._options.onAdd?.(t,n),this._updateState({modules:c},e.v(s?`op.saveScripts`:`op.addScript`))):(delete c[t],i._options.onRemove?.(t,null),this._updateState({modules:c},e.v(`op.removeScript`))),i._emitter.notify(`onCollectionChange`)}*[Symbol.iterator](){yield*this.getItems()}getItems(t){let n=this._getState();if(!n)return e.A.EmptyArray;let r=n.modules,i=Object.keys(r),a=i.length;if(a===0)return e.A.EmptyArray;let o=[],s=t?.name?t.name.toUpperCase():null;for(let e=0;e<a;e++){let t=i[e],n=r[t],a=!0;s&&s!==t.toUpperCase()&&(a=!1),a&&o.push(n)}return o??e.A.EmptyArray}getByName(e){if(!e)return null;let t=this._getState();if(!t)return null;let n=e.toUpperCase(),r=t.modules,i=Object.keys(r),a=i.length;for(let e=0;e<a;e++){let t=i[e];if(n===t.toUpperCase())return r[t]}return null}getCount(){let e=this._getState();return e?Object.keys(e.modules).length:0}beginCommit(e){return this._beginCommit(e)}_getState(){if(this._closed)throw Error(e._(`error.model.modelClosed`));return this._transactions.getState(this._stateId)}_beginCommit(e){return this._transactions.beginCommit(typeof e==`string`?{description:e}:e)}_updateState(t,n=e.v(`op.update`),r){if(!t)return;let i=this._beginCommit(n);try{i.updateState(this._stateId,t),i.commit(r)}catch(e){throw i.rollback(),e}}_initState(t){let n=t??{};this._updateState({modules:n},e.v(`op.initialize`),{forceAmend:!0});let r=this._options.onAdd;if(r){let e=Object.keys(n),t=e.length;for(let i=0;i<t;i++){let t=e[i];r(t,n[t])}}}addListeners(e,t){return this._emitter.addListeners(e,t)}toJSON(){let t=this._getState();if(!t)return e.A.EmptyArray;let n=t.modules,r=Object.keys(n),i=r.length,a={};for(let e=0;e<i;e++){let t=r[e];a[t]=n[t].toJSON()}return a}isClosed(){return this._closed}close(){this._closed||(this._emitter.notify(`onClose`),this._closed=!0,this._transactionsRemoveListener?.())}get isFunctionCollection(){return!0}},me=class{constructor(e){this._options=e,this._emitter=new r.Tt(this),this._initState()}_initState(){}getModules(){return this._modules}_builtInNames(){try{let t=this._options.getBuiltInFunctions?.();if(!t)return e.A.EmptyArray;let n=[];for(let e of t.getItems())e.isBuiltIn()&&n.push(e.getName());return n}catch{return e.A.EmptyArray}}async createModule(e){let t=await(await Promise.resolve().then(()=>require("./Cu0UCwSpRK4OnCuP.cjs")).then(e=>e.t)).ScriptCompiler.compile({builtInNames:this._builtInNames(),...e});return t.module?await r.en(`scripts`,t.module,e?.declarationsOnly??!1,t.diagnostics):null}addModule(e,t,n){this._modules.add(e,t,n)}async addModuleFromJSON(e,t,n){let i=await r.en(e,t);return this.addModule(e,i,n),i}executeMacro(e,t,n){let r=this._modules.getItems({name:t}),i=r.length;for(let t=0;t<i;t++){let i=r[t].getFunctions().getByName(e);if(i)return i.execute(this._options.workbook,{applyResult:!0,...n})}throw Error(`No macro ${e} found.`)}async run(e,t){try{let n=typeof e==`string`?await this.createModule({source:e}):await r.en(`scripts`,e),i=typeof e==`string`?e:e?.source??``;return await this._runModule(n,i,t)}catch(e){return{ok:!1,error:e}}}async _runModule(e,t,n){let r=this._options?.workbook;if(!e)return{ok:!1,error:Error(`The script did not compile to a module.`)};let i=e.getDiagnostics(),a=i.filter(e=>e.severity===`error`);if(a.length>0){let e=Error(((e,t)=>{let n=[0];for(let t=0;t<e.length;t++)e[t]===`
2
- `&&n.push(t+1);let r=t.map(e=>` ${(e=>{let t=0,r=n.length-1;for(;t<r;){let i=t+r+1>>1;n[i]<=e?t=i:r=i-1}return`${t+1}:${e-n[t]+1}`})(e.start)} ${e.code}: ${e.message}`),i=t.length;return`Script has ${i} compile error${i===1?``:`s`}:\n${r.join(`
3
- `)}`})(t,a));return e.diagnostics=a,{ok:!1,error:e,diagnostics:i}}let o=e.getFunctions(),s=(await o.search({type:`autoRun`}))[0]??(await o.search({type:`macro`}))[0]??null;if(!s)return{ok:!1,error:Error("The script has no runnable entry. Export a default function taking the script context, e.g. `export default function run(ctx: IScript.ScriptContext) { ... }` (the workbook is `ctx.wb`; a macro may instead take its target first, e.g. `(sheet: ISheet, ctx)`).")};let c=await s.execute(r,n);return{ok:!0,result:c?.results,commitId:c?.commitId,diagnostics:i}}async _searchable(e){let t=[];if(e?.includeBuiltIn){await this._options.workbook?.getCalculation()?.start();let e=this._options.getBuiltInFunctions?.();e&&t.push(e)}let n=this._modules;if(!n||n.getCount()===0)return t;let r=e?.moduleName,i=r?n.getItems({name:r}):n.getItems(),a=i.length;for(let e=0;e<a;e++)t.push(i[e].getFunctions());return t}async searchFunctions(t){await this._emitter.notify(`onBeforeSearch`,{async:!0});let n=await this._searchable(t);if(n.length===0)return e.A.EmptyArray;let i,a=t?.limit,o=a===void 0?t:{...t,limit:void 0},s=new Set;for(let e=0;e<n.length;e++){let t=await n[e].search(o);if(t.length!==0){i||=[];for(let e=0;e<t.length;e++){let n=t[e],r=n.getName().toUpperCase();s.has(r)||(s.add(r),i.push(n))}}}if(!i||i.length===0)return e.A.EmptyArray;let c=t?.text?t.text.trim().toUpperCase():null;return c&&n.length>1&&r.ct(i,c),a!==void 0&&i.length>a?i.slice(0,a):i}async getFunctionCategories(t){await this._emitter.notify(`onBeforeSearch`,{async:!0});let n=await this._searchable(t);if(n.length===0)return e.A.EmptyArray;if(n.length===1)return n[0].getCategories(t);let r=t?.includeDeprecated??!1,i=new Map,a=e=>{let t=e.toUpperCase(),n=i.get(t);n?n.count++:i.set(t,{name:e,count:1})};for(let e of await n[0].getCategories(t))i.set(e.name.toUpperCase(),{name:e.name,count:e.count});for(let e=1;e<n.length;e++){let i=await n[e].search(t?.type?{type:t.type}:void 0);for(let t=0;t<i.length;t++){let o=i[t],s=o.getName().toUpperCase(),c=!1;for(let t=0;t<e&&!c;t++)c=!!n[t].getByName(s);if(c)continue;let l=await o.getDescriptor().catch(()=>null);!r&&l?.isDeprecated()||a(l?.getCategory()??`Uncategorized`)}}let o=Array.from(i.values());return o.sort((e,t)=>e.name.localeCompare(t.name)),o}async start(){if(!this._modules)return this._startPromise||(this._startPromise=this._doStart(),this._startPromise.catch(()=>{this._startPromise=void 0})),this._startPromise}async _doStart(){let t=this._options?.workbook,n=this._options?.json,i={};if(n){let t=Object.keys(n);for(let a=0;a<t.length;a++){let o=t[a],s=n[o];try{i[o]=await r.en(o,s)}catch(t){e.V.error(`Could not load script '${o}'; it will be unavailable.`,t)}}}let a=this,o=new B({transactions:this._options?.transactions,initial:i,onRemove:(e,t)=>{a._options?.onRemove?.(e,t)},onAdd:(e,t)=>{a._emitter.notify(`onChange`),a._options?.onAdd?.(e,t)}});this._modules=o;let s=o.getItems();if(s.length===0)return Promise.resolve(e.A.EmptyArray);let c=s.length;for(let n=0;n<c;n++){let r=s[n];try{let e=await r.getFunctions().search({type:`autoRun`}),n=e.length;for(let r=0;r<n;r++)await e[r].execute(t)}catch(t){e.V.error(`Error executing autoRun script:`,t)}}}addListeners(e,t){return this._emitter.addListeners(e,t)}isReadOnly(){return!1===this._options.workbook?.getProtection().isStructureAllowed()}toJSON(){this._emitter.notify(`onBeforeSave`);let e=this._modules;if(!e)throw Error(`Scripts is initializing.`);return e.toJSON()}},he=class{constructor(t,n,i,a){this._mergedReading=[],this._colsReading=[],this._rowsReading=[],this._styles=i,this._topLeft=n??e.l.EmptyCell,this._sheet=new r.Gt({runtime:t,styles:this._styles,container:{getName:()=>a,getIndex:()=>1}}),this._builder=this._sheet.getEntireRange().createSparseBuilder()}applyCSSStyle(e,t){let n=!1;e.style||(e.style={},n=!0);let i=e.style,a={...t};if(t.msoIgnore){let e=t.msoIgnore.split(`,`),n=Object.keys(a);for(let t=0;t<n.length;t++){let r=n[t];e.includes(r)&&delete a[r]}}let o=r.lt(a.fontFamily);i.font={},o&&(i.font.family=o.family,i.font.fallbacks=o.fallbacks,i.font.size=o.size),i.font.size=a.fontSize,i.font.weight=a.fontWeight,i.font.style=a.fontStyle,i.font.color=a.color;let s=r.$t(a.textDecoration);i.font.underline=s.underline,i.font.strike=s.strike,a.textUnderlineStyle&&(i.font.underline=r.zt(a.textUnderlineStyle)),i.alignment={},a?.textAlign&&(i.alignment.horizontal=r.X(a.textAlign)),a?.textAlign&&!i.alignment.horizontal&&a?.textAlign!==`general`&&(a.textAlign===`center-across`?i.alignment.horizontal=r.dn.HorizontalAlignment.CenterContinuous:a.textAlign===`fill`?i.alignment.horizontal=r.dn.HorizontalAlignment.Fill:a.textAlign===`121`||a.textAlign===`010`?(i.alignment.horizontal=r.dn.HorizontalAlignment.Distributed,i.alignment.justifyLastLine=a.textAlign===`121`):console.warn(`unknown text-align`,a.textAlign)),a.verticalAlign&&(a.verticalAlign.toLowerCase()===`super`?i.font.verticalAlign=r.Q.VerticalAlignment.Super:a.verticalAlign.toLowerCase()===`sup`?i.font.verticalAlign=r.Q.VerticalAlignment.Sub:i.alignment.vertical=r.u(a.verticalAlign),i.alignment.vertical||(a.verticalAlign===`121`?i.alignment.vertical=r.dn.VerticalAlignment.Distributed:console.warn(`unknown vertical-align`,a.verticalAlign))),a.msoCharIndentCount&&(i.alignment.indent=a.msoCharIndentCount),a.whiteSpace&&(i.alignment.overflow=a.whiteSpace===`no-wrap`||a.whiteSpace===`nowrap`?r.dn.Overflow.Visible:r.dn.Overflow.Wrap),a.msoTextControl===`shrinktofit`&&(i.alignment.overflow=r.dn.Overflow.Shrink);let c=null;if(a.background?c=a.background:a.backgroundColor&&(c=a.backgroundColor),c&&(i.fill={color:c}),a.msoPattern){let e=r.D(a.msoPattern);e&&(e.patternType===r.dt.BuiltInSheetPattern.Solid?i.fill={color:e.foreground}:e.patternType!==r.dt.BuiltInSheetPattern.None&&(c&&(e.background=c),i.fill=e))}a.msoRotate!==void 0&&(i.alignment.rotation=r.ft(a.msoRotate));let l=(e,t)=>{e&&(i.border||={},i.border[e]=t)};a.border&&a.border!==`none`&&(l(`top`,a.border),l(`left`,a.border),l(`right`,a.border),l(`bottom`,a.border)),a.borderTop&&l(`top`,a.borderTop),a.borderLeft&&l(`left`,a.borderLeft),a.borderRight&&l(`right`,a.borderRight),a.borderBottom&&l(`bottom`,a.borderBottom),a.msoDiagonalUp&&l(`diagonalUp`,a.msoDiagonalUp),a.msoDiagonalDown&&l(`diagonalDown`,a.msoDiagonalDown);let u=i.numberFormat;a.msoNumberFormat&&(u=r.Xt(a.msoNumberFormat),u.includes(`\\`)?u=null:u===`Fixed`?u=r.at.Styles.lookupStyle(i.numberFormat).formatType===r.at.Type.Number?null:r.at.Type.Number:u===`Percent`&&(u=r.at.Styles.lookupStyle(i.numberFormat).formatType===r.at.Type.Percentage?null:r.at.Type.Percentage)),u&&(i.numberFormat=u),e.style=this._styles.normalize(i),n&&Object.keys(e.style).length===0&&delete e.style}onCell(t,n,i,a,o){let s=a(o),c={value:n===void 0?i??``:n};if(typeof c.value==`string`&&c.value.length===0&&(c.value=void 0),s&&this.applyCSSStyle(c,s),o?.tagName.toUpperCase()===`TD`){let e=c.style,t=e?.font??{};(o.querySelectorAll(`s`).length>0||o.querySelectorAll(`strike`).length>0)&&(t.strike=!0),o.querySelectorAll(`sub`).length>0&&(t.verticalAlign=r.Q.VerticalAlignment.Sub),o.querySelectorAll(`sup`).length>0&&(t.verticalAlign=r.Q.VerticalAlignment.Super),(o.querySelectorAll(`b`).length>0||o.querySelectorAll(`strong`).length>0)&&(t.weight=700),o.querySelectorAll(`i`).length>0&&(t.style=r.Q.Style.Italic),o.querySelectorAll(`u`).length>0&&(t.underline=r.Q.UnderlineStyle.Single),Object.keys(t).length>0&&(e||(e={},c.style=e),e.font||=t);let n=o.querySelectorAll(`a`);if(n.length>0){let e=n[0].getAttribute(`href`);e&&(c.hyperlink=e)}}if(!e.l.isSingleCell(t)){let e={rowStart:this._topLeft.rowIndex+t.rowStart,colStart:this._topLeft.colIndex+t.colStart,rowEnd:this._topLeft.rowIndex+t.rowEnd,colEnd:this._topLeft.colIndex+t.colEnd};this._mergedReading.push(e)}if(c.value===void 0&&!c.style&&Object.keys(c).length<=1)return;let l=this._builder,u=this._topLeft;if(l.pushAt(u.rowIndex+t.rowStart,u.colIndex+t.colStart,c),!e.l.isSingleCell(t)&&s.msoIgnore){if(s.msoIgnore.includes(`colspan`)){let e={};s&&this.applyCSSStyle(e,s);let n=t.colEnd-t.colStart,r=u.rowIndex+t.rowStart;for(let i=1;i<=n;i++)l.pushAt(r,u.colIndex+t.colStart+i,e);t={...t,colEnd:t.colStart}}s.msoIgnore.includes(`rowspan`)&&(t={...t,rowEnd:t.rowStart})}}onNoTable(e,t,n){this.onCell({rowStart:this._topLeft.rowIndex,colStart:this._topLeft.colIndex,rowEnd:this._topLeft.rowIndex,colEnd:this._topLeft.colIndex},e,null,t,n)}onRowStart(e,t,n,i){let a=n(i);if(a.msoHeightSource!==`userset`||!i)return;let o=i.getAttribute(`height`)??a.height,s=null;if(o&&(s=r.$(o,this._styles.getNormal().getFont().getSize(),`px`)),s===null)for(let e=0;e<i.cells.length;e++){let t=i.cells[e],a=r.$(t.getAttribute(`height`)??n(t).height,this._styles.getNormal().getFont().getSize(),`px`);a!==null&&(s=Math.max(a,s??0))}s!==null&&this._rowsReading.push({address:{min:this._topLeft.rowIndex+e,max:this._topLeft.rowIndex+e+t-1},update:{size:s*r.Q.getDeviceScale()}})}onColumn(e,t,n,i){let a=n(i);if(a.msoWidthSource!==`userset`||!i)return;let o=i.getAttribute(`width`)??a.width,s=null;o&&(s=r.$(o,this._styles.getNormal().getFont().getSize(),`px`)),s!==null&&this._colsReading.push({address:{min:this._topLeft.colIndex+e,max:this._topLeft.colIndex+e+t-1},update:{size:s*r.Q.getDeviceScale()}})}onDone(){this._colsReading.length>0&&this._sheet.getColumnHeaders().updateHeaderPairs(this._colsReading),this._rowsReading.length>0&&this._sheet.getRowHeaders().updateHeaderPairs(this._rowsReading),this._sheet.doBatch(()=>{this._builder.apply()}),this._mergedReading.length>0&&this._sheet.getRanges(this._mergedReading).merge()}sheet(){return this._sheet}},V=class{constructor(t){if(!t)throw new e.O(`snapshot is required.`);this._snapshot=t}getItemType(){return`range`}getItem(){return this._snapshot}editMode(){return this._snapshot?.getMarkOptions().editMode??null}isCut(){return this._snapshot?.getMarkOptions().isCut??!1}getName(){return this._snapshot.getName()}toText(){return this._snapshot.toText()}toHtml(){return this._snapshot.toHtml()}toImage(){return this._snapshot.toImage()}get isClipboardItem(){return!0}},ge=class{constructor(t,n,r,i,a){if(this._parsed=void 0,this._runtime=t,!n)throw new e.O(`nativeItems are required.`);this._topLeft=r??e.l.EmptyCell,this._native=n,this._markOptions=Object.freeze(i??{}),this._styles=a}getItemType(){return`range`}isCut(){return!1}toText(){return this._native?.text}toHtml(){return this._native?.html?.documentElement.outerHTML||null}toImage(){return this._native?.image}getItem(){let e=this._parsed;if(e===void 0)throw Error(`Must call 'parse()' before getItem().`);if(e===null)return null;if(this._snapshot)return this._snapshot;let t=this;return this._snapshot={copyTo:(n,r)=>e.copyTo(n,{...t._markOptions,...r}),getMarkOptions:()=>t._markOptions,getName:()=>e?.getName()??`Clipboard Data`,getCoords:()=>e?.getCoords?.()??null,toText:()=>t.toText(),toHtml:()=>t.toHtml(),toImage:()=>t.toImage(),getSource:()=>e?.getSource?.()??null,isISnapshot:!0},this._snapshot}async parse(){let t,n=this._native?.text,i=this._native.html;if(i===null&&n&&n.includes(`<table`))try{let t=new DOMParser().parseFromString(n,e.r.Html),r=t.querySelector(`parsererror`);if(r)throw new e.s(`Unable to parse: `+r);i=t,n=null}catch{console.warn(`Discovered text as html table but could could not parse.`)}try{let e=new he(this._runtime,this._topLeft,this._styles,i?`HTML`:`Text`);await e.sheet().getCalculation().ready(),await e.sheet().getCalculation().stop();let a,o=await Promise.resolve(n?r.Qt(n):[[]]);if(r.kt(i,o,e)?(t=e.sheet(),a=t.getUsedRange()):i=null,a)return this._parsed={copyTo:async(e,t)=>(await e.copyFrom(a,t))?.getCoords()??null,getCoords:()=>a.getCoords(),getSource:()=>t,getName:()=>t.getName()},!0}catch(e){throw e}if(!n&&!i&&this._native.image){let t=this;return this._parsed={async copyTo(n,r){let i=n.getSheet(),a=await t._native.image.arrayBuffer(),o=await i.getMovables().addPicture({source:{buffer:a}},{type:`picture`,description:e.v(`op.copyImageFromClipboard`)});return i.getView().selectMovables([o]),null},getName:()=>`Image`},!0}return!1}get isClipboardItem(){return!0}},H={showFormulaBar:!0,showTabs:!0,tabRatio:600,showHorizontalScrollbar:!0,showVerticalScrollbar:!0,showStatusBar:!0,activeSheetId:0},U=class{constructor(e){this._emitter=new r.Tt(this),this._state={...H},e?.json&&this._fromJSON(e?.json)}isShowFormulaBar(){return this._state.showFormulaBar}setShowFormulaBar(e){return this._state.showFormulaBar=e,this._emitter.notify(`onViewChange`),this}isShowTabs(){return this._state.showTabs}setShowTabs(e){return this._state.showTabs=e,this._emitter.notify(`onViewChange`),this}getTabRatio(){return this._state.tabRatio}setTabRatio(e){return this._state.tabRatio=e,this._emitter.notify(`onViewChange`),this}isShowHorizontalScrollbar(){return this._state.showHorizontalScrollbar}setShowHorizontalScrollbar(e){return this._state.showHorizontalScrollbar=e,this._emitter.notify(`onViewChange`),this}isShowVerticalScrollbar(){return this._state.showVerticalScrollbar}setShowVerticalScrollbar(e){return this._state.showVerticalScrollbar=e,this._emitter.notify(`onViewChange`),this}isShowStatusBar(){return this._state.showStatusBar}setShowStatusBar(e){return this._state.showStatusBar=e,this._emitter.notify(`onViewChange`),this}getActiveSheetId(){return this._state.activeSheetId}setActiveSheetId(e){let t=this._state,n=t.activeSheetId;return t.activeSheetId=e,n!==e&&this._emitter.notify(`onViewChange`),this}addListeners(e,t){return this._emitter.addListeners(e,t)}toJSON(){let e={},t=Object.keys(this._state),n=t.length;for(let r=0;r<n;r++){let n=t[r],i=this._state[n];i!=null&&i!==H[n]&&(e[n]=i)}return Object.keys(e).length===0&&(e=null),e}_fromJSON(e,t=!0){let n=e||{};this.update(n,t)}update(e,t=!0){this._state={...H,...this._state,...e},t&&this._emitter.notify(`onViewChange`)}get[Symbol.toStringTag](){return`[WorkbookView]`}toString(){let e=this.toJSON();return e?JSON.stringify(e):`DefaultWorkbookView`}},_e=Object.freeze({structure:!1,windows:!1,revision:!1,password:null,revisionsPassword:null}),W=class extends r.Zt{isWindowsAllowed(){return this._isPropertyAllowed(`windows`)}isRevisionAllowed(){return this._isPropertyAllowed(`revision`)}isStructureAllowed(){return this._isPropertyAllowed(`structure`)}_fromJSON(e){this._properties=e}_toJSON(e){let t=this._properties;if(t){e={...e,...t};let n=Object.keys(t),r=n.length;for(let i=0;i<r;i++){let r=n[i],a=t[r];a!=null&&a!==_e[r]&&(e[r]=a)}}return super._toJSON(e)}get[Symbol.toStringTag](){return`[WorkbookProtection]`}};function G(t){return e._(`error.workbook.invalidSheetKey`,{key:t})}var ve,ye,be=class{constructor(e,t){this._add=e,this._get=t}add(e){return this._add(e)}*[Symbol.iterator](){yield*this.getItems()}getItems(e){return this._get(e?.name,e?.visibility)}getByName(e){return this._get(e)?.[0]??null}getCount(){return this._get().length}},K=new RegExp(/[\\/\\*?:[\]]+/),xe=new RegExp(/\(((\d+)(?!.*\d))\)$/,`g`);function Se(t){let n=e._(e.v(`workbook.defaultSheetName`),{n:t+1});return n===`workbook.defaultSheetName`?`Sheet${t+1}`:n}function q(e,t){return{...r.i,getSheet:()=>null,toString:()=>r.L(e,t)}}function J(t,n=!1){if(!t)throw Error(e._(`error.workbook.sheetNameBlank`));if(K.test(t)){if(!n)throw Error(function(t){return t?e._(`error.workbook.sheetNameInvalidCharsNamed`,{sheetName:t}):e._(`error.workbook.sheetNameInvalidChars`)}(t));t=t.replace(K,``)}if(t.length===0)throw Error(e._(`error.workbook.sheetNameBlank`));let r=t.length;if(r>31){if(!n)throw Error(e._(`error.workbook.sheetNameTooLong`));t=t.substring(0,31)}if(t.charAt(0)===`'`||t.charAt(r-1)===`'`){if(!n)throw Error(e._(`error.workbook.sheetNameQuotes`));t=t.replace(/^'|'$/g,``)}return t}var Ce,Y=class e extends r.Dt{constructor(e,t,n,r){super(e,t,r),this._workbook=n}getSource(){return this._workbook}_createRanges(t,n){let i=this._options;return n&&(i={...this._options,getOptions:r.Bt(this._options?.getOptions,n)}),new e(t,this._internal,this._workbook,i)}_createRange(e,t){let n=e?{...e}:null,i=n?this._workbook._getSheetRef(n.scope,r.j.Visibility.VeryHidden):null;if(!i){let e=this._workbook.getSelectedSheet();return delete n?.scope,q(n,n?{scope:r.sn,...e.getEntireRange().getCoords()}:null)}let a=this._options;return t&&(a={...this._options,getOptions:r.Bt(this._options.getOptions,t)}),new X(e,r.g(i.sheet),this._workbook,a)}async select(e){let t=[],n=null,r=this.getCoords();for(let e=0;e<r.length;e++){let i=r[e];i&&(n||=i.scope,i&&i.scope===n&&t.push(i))}n||=this._workbook.getSelectedSheet().getName();let i=this._workbook.getSheets().getByName(n);if(!i)return;let a=await i.getRanges(t).select(e),o=this._workbook._rangesAddressToCoords(a.getCoords());return this._createRanges(o)}addListener(e,t){if(!this.getCoords())return()=>{};let n=this._workbook._sheetToWBEvent(e);return super.addListener(n,t)}get[Symbol.toStringTag](){return`[WorkbookRanges]`}getAddress(e){let t=this._internal.getSheet(),n=t.getEntireRange().getCoords();return r.pn(this.getCoords(),{...n,scope:t.getName()},r.L,r.p,e)}toString(){return this.getAddress()}},X=class e extends r.Lt{constructor(e,t,n,r){super(e,t,r),this._workbook=n}_createRanges(e,t){let n=this._options;return t&&(n={...this._options,getOptions:r.Bt(this._options?.getOptions,t)}),new Y(e,this._internal,this._workbook,n)}_createRange(t,n){let i=this._internal;if(!t)return r.fn(i.getSheet(),i.getSheet().getEntireCoords());if(i.validateCoords(t),i.getSheet().isClosed())return r.fn(null,i.getSheet().getEntireCoords(),t);let a=this._options;return n&&(a={...this._options,getOptions:r.Bt(this._options?.getOptions,n)}),new e(t,this._internal,this._workbook,a)}addListener(e,t){if(!this.getCoords())return()=>{};let n=this._workbook._sheetToWBEvent(e);return super.addListener(n,t)}get[Symbol.toStringTag](){return`[WorkbookRange]`}getAddress(e){let t=this._internal.getSheet(),n=t?.getEntireRange().getCoords()??null;return r.L(this.getCoords(),{...n,scope:t.getName()})}toString(){return this.getAddress()}},Z=class{constructor(t){this._lastTransactionUUID=null,this._closed=!1,this._listenerOrigin=null,this._lastOriginName=null,this._initializing=!0,this._isDate1904=!1,this._locale=null,this._localeOverrides=null;let n=typeof t==`string`?{origin:t}:{...t},i=n.origin;this._origin=typeof i==`string`?new c(null,{name:i}):i??new c(null),delete n.origin,this._lastOriginName=this._origin.getName(),this._listenerOrigin=this._origin.addListeners({onChange:()=>{if(this._closed)return;let e=this._origin.getName();e!==this._lastOriginName&&(this._lastOriginName=e,this._emitter.notify(`onNameChange`))}});let a=n.json;delete n.json,this._transactions=n.transactions??new r.St,this._id=this._transactions.create(),this._ownTransactions=!n.transactions,this._emitter=new r.Tt(this,this._transactions),this._runtime=n.runtime??new r.cn(`Workbook Runtime`,{isDate1904:()=>this._isDate1904,getLocale:()=>this._locale??r.yt()??r.on(),getLocaleOverrides:()=>this._localeOverrides}),this._listenerLanguage=e.d.addChangeListener(()=>{this._locale!==null||this._closed||this._notifyAllChange()});let o=this,s=this._beginCommit({description:e.v(a?`op.openWorkbook`:`op.newWorkbook`)});try{this._strings=n.strings??new r.Nt,this._ownStrings=!n.strings,this._externalBooks=new z({json:a?.externalBooks}),this._resources=n.resources??new r.B,this._ownResources=!n.resources,this._createSheetName=n.createSheetNameCallback??Se;let t=n.createSheetCallback;t||=e=>new r.Gt(e),this._sheetOnNameChange=new Map,this._sheetOnVisibilityChange=new Map,this._sheetOnIndexChange=new Map,this._createSheet=(e,n,i,a,s)=>{let c=null,l={runtime:o._runtime,readonly:o._options.readonly??!1,disableLoadAutoFit:o._options.disableLoadAutoFit??!1,formulaTransform:o._options.formulaTransform,opener:o._options.opener,transactions:o._transactions,styles:o._styles,strings:o._strings,resources:o._resources,names:o._names,workbook:o,calculation:o._calculation,resolveRange:e=>o._options.resolveRange?.(e)??o.getRange(e),container:{beforeFromJSON:t=>{c=t,o._addSheetRef({name:n,id:e,visibility:i??r.j.Visibility.Visible,sheet:t},a)},getName:()=>{let e=o._getSheetRef(c);return e?e.name:n},setName:(e,t)=>{o._getSheetRef(c)&&o._setSheetName(c,e,t)},setNameChangeCallback:t=>{o._sheetOnNameChange.set(e,t)},getVisibility:()=>{let e=o._getSheetRef(c);return e?e.visibility:r.j.Visibility.Visible},setVisibility:(e,t)=>{o._setSheetVisibility(c,e,t)},setVisibilityCallback:t=>{o._sheetOnVisibilityChange.set(e,t)},duplicate:()=>o._duplicateSheet(c),getIndex:()=>{let e=o._getSheetRef(c);return e?o._getOffsetForId(e.id,o._getSheetRefs(r.j.Visibility.VeryHidden)):a},setIndex:(e,t)=>{let n=o._getSheetRef(c,r.j.Visibility.VeryHidden);return!!n&&(o._moveSheet(n,e,t),!0)},setIndexCallback:t=>{o._sheetOnIndexChange.set(e,t)},requestSelect:async()=>(o._setSelectedSheet(c),await this._emitter.notify(`onRequestSelect`,{source:o,params:c,async:!0}),o.getSelectedSheet()===c)}};return s&&(l.json=s),c=t(l,n,a,i),c},this._namedTableSource=new r.ot({getSheets:()=>o._sheets?o.getSheets().getItems():e.A.EmptyArray,addSheetsListener:(e,t)=>o.addListeners({onSheetsChange:e},t)}),this._names=n.names??new r.Ct({addressToRanges:e=>o.getRanges(e),getCurrentScope:()=>o.getSelectedSheet().getName(),isReadOnly:()=>o._options.readonly??!1,transactions:o._transactions,getSources:()=>o._calculation?[o._calculation.getNamedFormulas(),o._namedTableSource]:e.A.EmptyArray}),this._ownNames=!n.names,this._calculation=n.calculation??new r.s({runtime:o._runtime,functions:n.functions,json:a?.calc,getActiveCell:()=>{let e=o.getSelectedSheet(),t=e?.getSelectedRange()?.getCoords();return t?{rowIndex:t.rowStart,colIndex:t.colStart,scope:e.getId()}:null},getRange:o.getRange.bind(o),getRanges:o.getRanges.bind(o),createGraphRanges:(e,t)=>o._createGraphRanges(e,t),getSheetIndex:e=>{if(e===void 0){let e=o.getSelectedSheet();return e?this._getSheetRefs(r.j.Visibility.VeryHidden).findIndex(t=>t.sheet===e):-1}let t=this._getSheetRefs(r.j.Visibility.VeryHidden);e=e.toLowerCase();let n=t.length;for(let r=0;r<n;r++)if(t[r].name.toLowerCase()===e)return r;try{Q.address=e;let t=this._names.getItems(Q);if(!t||t.length===0)return-1;let n=t[0].getRanges?.()?.getCoords()?.[0]?.scope;if(!n)return-1;let i=this._getSheetRefs(r.j.Visibility.VeryHidden);n=n.toLowerCase();let a=i.length;for(let e=0;e<a;e++)if(i[e].name.toLowerCase()===n)return e}catch{return-1}return-1},getSheetCount:()=>o.getSheets().getItems({visibility:r.j.Visibility.VeryHidden}).length,getSheetById:e=>{let t=o.getSheets().getItems({visibility:r.j.Visibility.VeryHidden}),n=t.length;for(let r=0;r<n;r++)if(t[r].getId()===e)return t[r];return null},getSheetByName:e=>{try{return o.getSheets().getByName(e)??null}catch{return null}},namedCollection:o._names,strings:o._strings,transactions:o._transactions,names:a?.names,formulaTransform:n.formulaTransform}),this._ownCalculation=!n.calculation,this._scripts=this._createScripts(),this._ownNames=!n.names,this._options=Object.freeze({...n});let i=async()=>{this._ownCalculation&&await this._calculation.start(),await this._scripts.start(),this._starting=null};this._starting=i(),this._starting?.catch(()=>{}),a?this._fromJSON(a):(this._initState(),this._addSheet(!1)),this._sheets=new be(e=>o._addSheetOptions(e),(t,n)=>{if(t){let r=this._getSheetRef(t,n);return r?[r.sheet]:e.A.EmptyArray}return this._getSheets(n)}),this._ownCalculation&&this._calculation.hydrateNames(),this._emitter.notify(`onLoad`),s.commit({forceAmend:this._ownTransactions})}catch(e){throw s.rollback(),e}this._initializing=!1}_initState(){let e=this._getSheetRefs();for(let t=(e?e.length:0)-1;t>=0;t--);let t=this._options;this._isDate1904=t.runtime?.isDate1904()??!1,this._locale=null,this._localeOverrides=null,this._theme=t.theme??new r.w().getDefaultTheme(),this._styles=t?.styles??new r.nn(this._theme),this._ownStyles=!t.styles,this._styles.getTheme()||this._styles.setTheme(this.getTheme()),this._activeSheetOffset=0,this.setView(new U),this._listenerProtection?.(),this._protection=new W(void 0,this._options.readonly??!1),this._listenerProtection=this._protection.addListeners({onChange:e=>{n._emitter.notify(`onProtectionChange`)}});let n=this;this._transactionsRemoveListener=this._transactions.addStateListener(this._id,{async onAfterStateChange(e,t,r){if(t&&t.activeSheetId!==void 0&&t.view===n.getView()&&r.getId()===n._lastTransactionUUID&&await n._getSheetRef({id:t.activeSheetId})?.sheet.select(),t&&r.getId()!==n._lastTransactionUUID){let r=n.getView().getActiveSheetId();t.view===n.getView()&&(r=t.activeSheetId);let i=0;try{i=n._getOffsetForId(r,e.sheetRefsVisible)}catch{}n._adjustRemoveSelectionIfRequired(i,r)}n._lastTransactionUUID=r.getId(),n._notifyAllChange()},onRestoreOrRevert(){n._ownCalculation,n._emitter.notify(`onInvalidated`)}});let i=this._getState();i?.listenersSheets&&(i?.listenersSheets.forEach(e=>{e()}),i?.listenersSheets.clear()),this._updateState({sheetRefsAll:[],sheetRefsVisibleAndHidden:[],sheetRefsVisible:[],refsById:new Map,sheetsById:new Map,refsByLowerCaseName:new Map,sheetsByLowerCaseName:new Map,refsByInstance:new Map,lastId:-1,sheetsCreated:new Set,listenersSheets:new Map})}getId(){return this._id}getVersionId(){return this._transactions.getVersionId(this._id)}getName(){return this._closed?null:this._origin.getName()}getOrigin(){return this._origin}getView(){return this._view}setView(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));if(!t)throw new e.s(e._(`error.sheet.emptyView`));this._listenerWorkbookView?.();let n=this,r=-1;return this._listenerWorkbookView=t.addListeners({onViewChange:e=>{let t=n._getState(),i=this._view.getActiveSheetId(),a=t.sheetRefsVisible,o=this._getOffsetForId(i,a);this._activeSheetOffset=o,n._emitter.notify(`onViewChange`),r!==i&&(n._emitter.notify(`onSelectionChange`),n._emitter.notify(`onSelectedSheetChange`)),r=i}}),this._view=t,n._emitter.notify(`onViewChange`),this}getRuntime(){return this._runtime}setDate1904(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));return this._isDate1904=t,this._notifyAllChange(),this}getLocale(){return this._runtime.getLocale()}getPinnedLocale(){return this._locale}setLocale(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));if(t)try{new Intl.Locale(t)}catch{throw Error(e._(`error.workbook.invalidLocale`,{locale:t}))}return this._locale===t||(this._locale=t,this._notifyAllChange()),this}getLocaleOverrides(){return this._localeOverrides}setLocaleOverrides(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));let n=t&&Object.keys(t).length>0?t:null;return this._localeOverrides=n,this._notifyAllChange(),this}getStyles(){return this._styles}getResources(){return this._resources}getTransactions(){return this._transactions}getStrings(){return this._strings}getExternalBooks(){return this._externalBooks}getTheme(){return this._theme}setTheme(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));if(!t)throw new e.s(e._(`error.workbook.notSetValue`));let n=this._theme;return this._theme=t,this.getStyles().setTheme(t),this._emitter.notify(`onThemeChange`),n}getSelectedSheetIndex(){return this._activeSheetOffset}getSelectedSheet(){let e=this._getSheetRef(this.getSelectedSheetIndex());return e?e?.sheet:null}getSheet(t,n=r.j.Visibility.Visible){if(t===void 0)return this.getSelectedSheet();if(!t)throw Error(e._(`error.workbook.sheetNameNotProvided`));let i=this._getSheetRef(t,n);if(!i)throw new e.C(e._(`error.workbook.sheetNameNotFound`,{sheetName:t}));return i.sheet}getSheetAt(t,n=r.j.Visibility.Visible){let i=this._getSheetRef(t,n);if(!i)throw new e.C(function(t){return e._(`error.workbook.sheetIndexNotFound`,{index:t})}(t));return i.sheet}getSheets(){return this._sheets}addSheet(e){return this.getSheets().add(e)}_getSheets(e=r.j.Visibility.Visible){let t=this._getSheetRefs(e),n=[],i=t.length;for(let e=0;e<i;e++)n.push(t[e].sheet);return n}_getSheetRefs(t=r.j.Visibility.Visible){let n=this._getState();return n?t===r.j.Visibility.Visible?n.sheetRefsVisible:t===r.j.Visibility.Hidden?n.sheetRefsVisibleAndHidden:t===r.j.Visibility.VeryHidden?n.sheetRefsAll:e.A.EmptyArray:[]}_getSheetRef(e,t=r.j.Visibility.Visible){let n=null;return typeof e==`number`?this._getSheetRefs(t)[e]:(typeof e==`string`?n=this._getState().refsByLowerCaseName.get(e.toLowerCase()):e instanceof r.Gt?n=this._getState().refsByInstance.get(e):e?.id!==void 0&&(n=this._getState().refsById.get(e.id)),n)}_validateNewSheetName(t,n=!0){if(t==null)return t;if(J(t),n&&this._getState().sheetsByLowerCaseName.has(t.toLowerCase()))throw new e.s(e._(`error.workbook.nameTaken`));return t.substring(0,31)}findValidSheetName(e){e&&=J(e,!0);try{return function(e,t){try{if(t(e))return e}catch{}let n,r,i=xe.exec(e);for(i===null?(n=e+` `,r=1):(n=e.substring(0,i.index),r=parseFloat(i[1]));r<256;){r++;let e=`(`+r+`)`,i=n.substring(0,31-e.length)+e;try{if(t(i))return i}catch{}}throw Error(e+` is not a valid sheet name`)}(e,e=>this._validateNewSheetName(e))}catch{return this._nextSheetName()}}isValidSheetNameCharacter(e){return!K.test(e)}_addSheetOptions(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new e.s(e._(`error.workbook.protection`));let n,r=null;n=typeof t==`string`?{name:t}:typeof t==`number`?{index:t}:t,n={...n,description:n?.description??e.v(`op.addSheet`)};let i=this.beginCommit(n);try{let t=n?.autoSelect??!1;r=this._addSheet(!0,n.name,n.index??null);let a,o,s=this.getView().getActiveSheetId();if(!1!==t){let e=this.getView().getActiveSheetId();e=this._getSheetRef(r).id,t&&(a={view:this.getView(),activeSheetId:s},o={view:this.getView(),activeSheetId:e})}if(i.commit({description:e._(`op.addSheetNamed`,{name:r.getName()}),viewBefore:a,viewAfter:o}),!1!==t){let e=typeof t==`boolean`?void 0:t;r.select(e)}}catch(e){throw i.rollback(),e}return r}_nextSheetName(t=null){let n=t?t.toLowerCase():null,r=this._getState(),i=r.sheetsByLowerCaseName;if(t&&i.has(n))throw new e.s(function(t){return e._(`error.workbook.nameDuplicate`,{sheetName:t})}(t));n=(t=this._validateNewSheetName(t))?t.toLowerCase():null;let a=r.lastId+1;for(;!t;){let e=this._createSheetName(a),n=e.toLowerCase();i.has(n)?a++:t=e}return this._updateState({lastId:a}),t}_addSheet(t,n=null,i=null){n=this._nextSheetName(n);let a=this._getState(),o=this._createSheet(a.lastId,n,r.j.Visibility.Visible,i,null);if(!o)throw new e.s(e._(`error.workbook.sheetNameBlank`));return t&&this._emitter.notify(`onSheetsChange`),o}_updateSheetRefStates(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));if(!this._initializing&&!this.getProtection().isStructureAllowed())throw new e.s(e._(`error.workbook.protection`));let n=t,i=[],a=[],o=n.length;for(let e=0;e<o;e++)n[e].visibility===r.j.Visibility.Visible?(i.push(n[e]),a.push(n[e])):n[e].visibility===r.j.Visibility.Hidden&&a.push(n[e]);this._updateState({sheetRefsAll:n,sheetRefsVisible:i,sheetRefsVisibleAndHidden:a})}_addSheetRef(t,n=null){let i=this._getState(),a=i.sheetRefsAll,o=Math.max(0,Math.min(a.length,n??a.length)),s=[...a.slice(0,o),t,...a.slice(o)];this._updateSheetRefStates(s);let c=t.sheet,l=t.name.toLowerCase(),u=new Map(i.refsById);u.set(t.id,t);let d=new Map(i.refsByLowerCaseName);d.set(l,t);let f=new Map(i.refsByInstance);f.set(c,t);let p=new Map(i.sheetsById);p.set(t.id,c);let m=new Map(i.sheetsByLowerCaseName);m.set(l,c);let h=this,g=i.listenersSheets;if(c!==void 0){let n=c.addListeners({onBeforeDelete:e=>{h._validateDeleteSheet(e)},onDelete(t){let n=h._getSheetRef(t,r.j.Visibility.VeryHidden);if(!n)return;let i=h._beginCommit({description:e._(`op.deleteSheet`,{name:n.name})});try{let e=h._getState(),r=e.sheetRefsAll,a=h._getOffsetForId(n.id,r),o=[...r];o.splice(a,1),h._updateSheetRefStates(o);let s=new Map(e.refsById);s.delete(n.id);let l=new Map(e.sheetsById);l.delete(n.id);let u=n.name.toLowerCase(),d=new Map(e.refsByLowerCaseName);d.delete(u);let f=new Map(e.sheetsByLowerCaseName);f.delete(u);let p=new Map(e.refsByInstance);p.delete(t),e.listenersSheets.get(n.id)();let m=new Map(e.listenersSheets);m.delete(n.id),h._adjustRemoveSelectionIfRequired(a,n.id),h._adjustSheetNamesIfRequired(),h._sheetOnNameChange.delete(n.id),h._sheetOnVisibilityChange.delete(n.id),h._sheetOnIndexChange.delete(n.id),h._emitter.notify(`onSheetsChange`);let g=new Set(e.sheetsCreated);g.has(c)&&g.delete(c),h._updateState({refsById:s,sheetsById:l,refsByLowerCaseName:d,sheetsByLowerCaseName:f,refsByInstance:p,sheetsCreated:g,listenersSheets:m}),i.commit()}catch(e){throw i.rollback(),e}}}),a=c.addListeners({onSelectionChange:e=>{h.getView().getActiveSheetId()===h._getSheetRef(e)?.id&&h._emitter.notify(`onSelectionChange`,{source:h,params:e})}},{transactional:!1});g=new Map(i.listenersSheets),g.set(t.id,()=>{n(),a()})}let _=i.lastId;_!==-1&&(_=Math.max(_,t.id)),this._updateState({lastId:_}),this._updateState({refsById:u,refsByLowerCaseName:d,refsByInstance:f,sheetsById:p,sheetsByLowerCaseName:m,listenersSheets:g}),this._adjustSheetNamesIfRequired();let v=new Set(this._getState().sheetsCreated);return v.add(t.sheet),this._updateState({sheetsCreated:v}),t}_adjustRemoveSelectionIfRequired(e,t){if(this._view.getActiveSheetId()===t){let t,n=this._getState().sheetRefsVisible;t=e<n.length?n[e].id:n[e-1].id,this._view.setActiveSheetId(t)}}_adjustSheetNamesIfRequired(){let e=this._getState(),t=e.lastId;if(t===-1)return;let n=this._view.getActiveSheetId();n??=(this._view.setActiveSheetId(t),t);let i=e.refsById.get(n);i||(this._view.setActiveSheetId(t),i=e.refsById.get(t),n=t),i.visibility===r.j.Visibility.Visible&&(this._activeSheetOffset=this._getOffsetForId(n,e.sheetRefsVisible))}_validateDeleteSheet(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new e.s(e._(`error.workbook.protection`));let n=this._getSheetRef(t);if(!n)throw new e.s(function(t){return e._(`error.workbook.deleteKey`,{key:t})}(t));let r=this._getState().sheetRefsVisible;if(r.length===1&&r[0].id===n.id)throw new e.s(e._(`error.workbook.sheetOne`))}_getOffsetForId(t,n){let r=n.length;for(let e=0;e<r;e++)if(n[e].id===t)return e;throw new e.s(e._(`error.workbook.noVisibleRefs`))}find(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));let n=this._getSheets();if(n.length===1)return n[0].find(t);typeof t==`string`&&(t={text:t});let i=!t?.reverse,a=t?.disableWrap??!1,o=this.getSelectedSheetIndex(),s=o,c=n[s],l=!1;t={...t,disableWrap:!0};let u,d=c.find(t),f=d.next(),p=!1;if(t?.from){let e=this._rangesAddressToCoords(t?.from);u={colIndex:e[0].colStart,rowIndex:e[0].rowStart}}let m=e.l.createCellComparator(t?.axis,t?.reverse);delete(t={...t}).from;let h=()=>{if(!p&&f.done&&(l&&s===o?p=!0:i?(s++,s>n.length-1&&(s=0,l=!0)):(s--,s<0&&(s=n.length-1,l=!0)),a&&l&&(p=!0),p||u||!l||s!==o||(p=!0),!p)){c=n[s],d=c.find(t);let e=f;return f=d.next(),e}if(!p&&l&&s===o&&(f.done||!u||!f.done&&m(f.value.getCoords(),u)>=0)&&(p=!0),p){let e=f;return f=r.x,e}let e=f;return f=d.next(),e};return{next:()=>{let e=h();for(;!p&&e.done;)e=h();return e}}}replace(t,n,i){let a=0,o=null,s=typeof n==`function`,c=i?.maxCount??2**53-1,l=!i?.maxCount,u=``,d=typeof n==`string`?r.vt(n):null,f=i?.description??e.v(`op.replace`),p=this._transactions.beginCommit({description:f});try{let r=null,f=null,m=t.next();for(;!m.done&&a<c;){let e=m.value,c=e.getSheet();c!==r&&(r=c,f!==null&&f.apply(),f=r.getEntireRange().createSparseBuilder({axis:i?.axis,allowUnorderedWrites:!0}));let l=s?n(e):n;l!==void 0&&l!==e&&(f.push(e,l),a++,o=e),m=t.next()}f?.apply(),a===1&&c===1&&o&&(u=o.getAddress()),a===0?p.rollback():p.commit({description:i?.description??(l?d===null?e.v(`op.replaceAll`):e._(`op.replaceAllWith`,{value:d}):u?d===null?e._(`op.replaceAt`,{address:u}):e._(`op.replaceAtWith`,{address:u,value:d}):d===null?e.v(`op.replace`):e._(`op.replaceWith`,{value:d})),viewAfter:{selection:null}})}catch(e){throw p.rollback(),e}return{count:a,last:o}}_nextSheetIndex(e,t=this._getSheetRefs()){let n=t.length;return n===1?0:(e===void 0&&(e=this.getSelectedSheetIndex()),(e=Math.max(0,Math.min(e,n-1)))>=n-1?0:e+1)}_prevSheetIndex(e,t=this._getSheetRefs()){let n=t.length;return n===1?0:(e===void 0&&(e=this.getSelectedSheetIndex()),(e=Math.max(0,Math.min(e,n-1)))<=0?n-1:e-1)}getNextSheet(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));let n=this._getSheetRefs();return n[this._nextSheetIndex(t,n)]?.sheet??null}getPreviousSheet(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));let n=this._getSheetRefs();return n[this._prevSheetIndex(t,n)]?.sheet??null}async _duplicateSheet(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new e.s(e._(`error.workbook.protection`));let n=this._getSheetRefs(),r=this.getSelectedSheetIndex(),i=null;if(t){if(i=this._getSheetRef(t),!i)throw new e.s(G(i))}else i=n[r];if(!i)return null;let a=i.sheet,o=this._strings.beginPersist(),s=this.getResources().beginPersist(),c=this.getStyles().beginPersist(),l=null,u=this.beginCommit(e._(`op.duplicateNamed`,{name:a.getName()}));try{let e=this._getState().refsByInstance.get(a),t=await a.toJSON(),i=n.length+1,o=this.findValidSheetName(e.name),s=this._createSheet(i,o,e.visibility,r,t);this._emitter.notify(`onSheetsChange`),l=s,u.commit()}catch(e){throw u.rollback(),e}finally{c.endPersist(),s.endPersist(),o.endPersist()}return l}_createRange(t,n){let i=t?{...t}:null,a=i?this._getSheetRef(i.scope,r.j.Visibility.VeryHidden):null;if(!a){let t=this.getSelectedSheet();return t?(delete i?.scope,q(i,i?{scope:r.sn,...t.getEntireRange().getCoords()}:null)):void console.warn(e._(`error.workbook.noVisibleRefs`))}let o=a.sheet,s=null;return n&&(s={getOptions:n}),new X(t,r.g(o),this,s)}_createRanges(e,t){let n=this.getSelectedSheet(),i=null;return t&&(i={getOptions:t}),new Y(e,r.g(n),this,i)}getRange(t,n){if(t===void 0)return this.getSelectedRange(n);try{let r=this._rangesAddressToCoords(t);if(r.length!==1)throw new e.s(e._(`error.address.singleRangeOnlyAlt`));return this._createRange(r[0],n)}catch(n){throw n instanceof e.C?new e.C(n.message):new e.s(n.message??r.in(t))}}getCell(t){if(t===void 0)return this.getSelectedCell();let n=this.getRange(t);if(n.size>1)throw new e.s(e._(`error.address.singleCellOnly`));return n.getCell()}getRanges(t,n){let i=this._rangesAddressToCoords(t);if(i.length===0)throw new e.s(r.in(t));return this._createRanges(i,n)}_createGraphRanges(e,t){let n=[];for(let e=0;e<t.length;e++){let i=t[e],a=(i.sheetName?this._getSheetRef(i.sheetName,r.j.Visibility.VeryHidden):null)?.sheet??this.getSelectedSheet();a&&n.push(new r.Wt(i,r.g(a),null))}for(let t=0;t<e.length;t++)n.push(e[t]);return n.length===0?null:new Y(n,r.g(this.getSelectedSheet()),this,null)}getStats(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));let n=this._getSheets(r.j.Visibility.VeryHidden),i=n.length;if(i===1)return n[0].getStats(t);let a=Array(i);for(let e=0;e<i;e++)a[e]=n[e].getStats(t);return new F(a)}_activeRangeCoords(){let e=this.getSelectedSheet(),t=e.getSelection().getRanges().getCoords(),n=e.getName(),r=t.length,i=Array(r);for(let e=0;e<r;e++){let r=t[e];i[e]={colStart:r.colStart,colEnd:r.colEnd,rowStart:r.rowStart,rowEnd:r.rowEnd,scope:n}}return i}getSelectedRange(e){return this.getRange(this._activeRangeCoords()[0],e)}getSelectedRanges(e){return this.getRanges(this._activeRangeCoords(),e)}getSelectedCell(){return this.getSelectedSheet().getSelectedCell()}_rangesAddressToCoords(t,n=!0,i=r.j.Visibility.Hidden){if(!t)throw new e.s(e._(`error.address.noAddress`));let a=this.getSelectedSheet(),o={...a?.getEntireRange().getCoords()},s=a?.getName();if(s&&(o.scope=s),typeof t==`string`){let e=t.trim().toLowerCase();if(e===`r`||e===`c`){let n=this.getSelectedCell().getCoords(),r={};e===`r`?r.rowStart=r.rowEnd=n.rowIndex:r.colStart=r.colEnd=n.colIndex,t=r}}let c=this,l=r.S(t,o,r.P,t=>{if(!n)return null;if(typeof t==`string`){let e=c.getNames().getByName(t)?.getRanges?.();if(e)return e.getCoords()}throw new e.s(`Invalid sheet reference '${t}'.`)}),u=l.length;for(let e=0;e<u;e++)this._validateCoords(l[e],i);return l}_validateCoords(t,n=r.j.Visibility.Visible,i=e._(`error.sheet.oobRange`)){if(t===null)return;let a=this.getSheet(t.scope,n).getEntireRange().getCoords();if(!e.l.isRangeWithinRange(t,a))throw new e.C(i);if(t.rowEnd<t.rowStart||t.colEnd<t.colStart)throw new e.s(e._(`error.address.invalidRangeInverted`))}_updateSheetRef(e,t){let n=this._getState(),r=[...n.sheetRefsAll];r[this._getOffsetForId(e.id,n.sheetRefsAll)]=t,this._updateSheetRefStates(r);let i=new Map(n.refsById);i.set(e.id,t);let a=e.name.toLowerCase(),o=t.name.toLowerCase(),s=new Map(n.refsByLowerCaseName);s.delete(a),s.set(o,t);let c=new Map(n.sheetsByLowerCaseName),l=c.get(a);c.delete(a),c.set(o,l);let u=new Map(n.refsByInstance);return u.set(l,t),this._updateState({refsById:i,refsByLowerCaseName:s,sheetsByLowerCaseName:c,refsByInstance:u}),t}_setSheetName(t,n,r){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new e.s(e._(`error.workbook.protection`));let i=this._getSheetRef(t);if(!i)throw new e.s(G(t));if(n===i.name)return i.sheet;if((n=this._validateNewSheetName(n))==null)throw new e.s(e._(`error.workbook.sheetNameNotProvided`));let a=Object.freeze({...i,name:n}),o=null,s=this.beginCommit(e.v(`op.renameSheet`));try{let e=this._updateSheetRef(i,a);this._adjustSheetNamesIfRequired(),this._sheetOnNameChange.forEach((e,t)=>{i.id===t&&e()}),this._emitter.notify(`onSheetsChange`),i.id===this.getView().getActiveSheetId()&&this._emitter.notify(`onSelectionChange`),o=e.sheet,s.commit(r)}catch(e){throw s.rollback(),e}return o}_setSheetVisibility(t,n=r.j.Visibility.Visible,i){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new e.s(e._(`error.workbook.protection`));let a=this._getSheetRef(t,r.j.Visibility.VeryHidden);if(!a)return null;if(n===a.visibility)return;let o=null,s=``;n===r.j.Visibility.Visible?s=e.v(`op.unhideSheet`):n===r.j.Visibility.Hidden?s=e.v(`op.hideSheet`):n===r.j.Visibility.VeryHidden&&(s=e.v(`op.veryHideSheet`));let c=this.beginCommit(s);try{let t=this._getState().sheetRefsVisible;if(n!==r.j.Visibility.Visible&&t.length===1&&t[0].id===a.id)throw new e.s(e._(`error.workbook.sheetOne`));let s={...a,visibility:n},l=-1;n!==r.j.Visibility.Visible&&(l=this._getOffsetForId(a.id,t)),o=this._updateSheetRef(a,s).sheet,n!==r.j.Visibility.Visible&&this._adjustRemoveSelectionIfRequired(l,a.id),this._adjustSheetNamesIfRequired(),c.commit(i)}catch(e){throw c.rollback(),e}return this._sheetOnVisibilityChange.forEach((e,t)=>{a.id===t&&e()}),this._emitter.notify(`onSheetsChange`),o}_moveSheet(t,n,r){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new e.s(e._(`error.workbook.protection`));let i=null,a=this.beginCommit(e._(`op.moveSheetNamed`,{name:t.name}));try{let o=this._getState(),s=o.sheetRefsVisible;if(n<0||n>s.length-1)throw new e.s(`Invalid to index: ${n}`);let c={view:this.getView(),activeSheetId:this.getView().getActiveSheetId()},l=o.sheetRefsAll,u=this._getOffsetForId(t.id,l),d=this._getOffsetForId(s[n].id,l);if(u===d)return;let f=l[u],p=[...l];p.splice(u,1),p.splice(d,0,f),this._updateSheetRefStates(p),this._adjustSheetNamesIfRequired(),this._sheetOnIndexChange.forEach((e,t)=>{t>=u&&t<=d&&e()}),this._emitter.notify(`onSheetsChange`),i=f.sheet,a.commit({...r,viewBefore:c,viewAfter:{view:this.getView(),activeSheetId:this.getView().getActiveSheetId()}})}catch(e){throw a.rollback(),e}return i}_setSelectedSheet(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));let n=this._getSheetRef(t);if(!n)throw new e.s(G(t));let i=null;return n.visibility!==r.j.Visibility.Visible&&this._setSheetVisibility(n,r.j.Visibility.Visible),this._view.setActiveSheetId(n.id),i=n.sheet,i}getProtection(){return this._protection}getNames(){return this._names}getCalculation(){return this._calculation}createFormula(e,t){return this.getCalculation().createFormula(e,t)}evaluate(e,t){return this.getCalculation().evaluate(e,t)}whenCalculationReady(){return this.getCalculation().ready()}getScripts(){return this._scripts||=this._createScripts(),this._scripts}_notifyAllChange(){this._emitter.notify(`onSheetsChange`),this._emitter.notify(`onSelectedSheetChange`),this._emitter.notify(`onViewChange`)}addListeners(e,t){return this._emitter.addListeners(e,t)}_sheetToWBEvent(e){let t=this;return n=>{let r=()=>{let e=n.getSource();if(e.isICellRanges){let n=[...e.getCoords()],r=n.length;for(let t=0;t<r;t++){let r=n[t];!r.scope&&e.getSheet().getName()&&(n[t]={...r,scope:e.getSheet().getName()})}return t.getRanges(n)}if(e.isICellRange){let n=e.getCoords(),r=e.getSheet().getName();return t.getRange({...n,scope:r})}};e({getSource:r,trigger:n.trigger,getFrom:()=>t.getRanges(n.getFrom()),getTo:()=>t.getRange(n.getTo()),isDataChange:n.isDataChange,getTransactionId:n.getTransactionId,isUndo:n.isUndo,toString:()=>`WorkbookRangeEvent: ('${n.trigger}', ${r().toString()})`,timeStamp:Date.now()})}}_fromJSON(t){if(this._emitter.notify(`onBeforeLoad`,{params:t}),this._initState(),!t.sheets||t.sheets.length===0)throw new e.s(e._(`error.workbook.sheetOne`));t.theme&&(this._theme=new r.H(t.theme),this._styles.setTheme(this._theme));let n=this._strings.beginPersist(),i=this._resources.beginPersist(),a=this._styles.beginPersist();try{n.fromJSON(t.strings),i.fromJSON(t.resources),a.fromJSON(t.styles),t.date1904&&(this._isDate1904=!0),t.locale&&(this._locale=t.locale),t.localeOverrides&&(this._localeOverrides=t.localeOverrides),t.view||={};let e=t.sheets,o=e.length,s=t.view.activeSheetId??null;s!==null&&(s=Math.min(Math.max(0,s),o-1));let c=null,l=null,u=-1;for(let t=0;t<o;t++){let n=e[t],i=n.visibility||r.j.Visibility.Visible,a=t;l=a,i===r.j.Visibility.Visible?(u++,c===null&&(c=a)):s!==null&&s===a&&(s=null),this._createSheet(a,n.name,i,u,n.sheet)}this._updateState({lastId:l}),t.view.activeSheetId=s??c,this.setView(new U({json:t.view})),this._adjustSheetNamesIfRequired(),this._listenerProtection?.();let d=this;this._protection=new W(t?.protection,this._options?.readonly),this._listenerProtection=this._protection.addListeners({onChange:e=>{d._emitter.notify(`onProtectionChange`,{source:e})}}),t.scripts&&(this._scripts=this._createScripts(t.scripts)),this._emitter.notify(`onLoad`)}finally{a.endPersist(),i.endPersist(),n.endPersist()}}_createScripts(t){let n=this;return new me({transactions:this._transactions,json:t,workbook:n,getBuiltInFunctions:()=>n._calculation?.getFunctions(),onAdd:(t,i)=>{let a=n._calculation;a.getStatus()!==r.J.Status.Off&&a.start().then(async()=>{let t=i.getFunctions().getItems({type:`formula`}),n=t.length;for(let r=0;r<n;r++){let n=t[r];try{await this._calculation.getFunctions().add(n)}catch(t){e.V.error(t?.message??String(t),t)}}}).catch(()=>{})},onRemove:(e,t)=>{}})}async toJSON(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));await Promise.resolve(this._starting),await this._emitter.notify(`onBeforeSave`,{async:!0});let n={sheets:[]},i=t?.ignoreStyles??!1;if(!i){let e=this._theme.toJSON();(e?Object.keys(e).length:0)>0&&(n.theme=e)}if(this._scripts){let e=this._scripts.toJSON();e&&Object.keys(e).length>0&&(n.scripts=e)}this._isDate1904&&(n.date1904=!0),this._locale&&(n.locale=this._locale),this._localeOverrides&&(n.localeOverrides=this._localeOverrides);let a=t?.ignoreResources??!1,o=this._strings.beginPersist(),s=a?null:this._resources.beginPersist(),c=this._styles.beginPersist();try{let e=this._getSheetRef(this.getSelectedSheetIndex()).id,l=e,u=null,d=this._getState(),f=d.sheetRefsAll,p=d.sheetsById,m=f.length;for(let i=0;i<m;i++){let a=f[i],o=i+1,s=await p.get(a.id).toJSON(t),c={name:a.name,sheet:s};a.visibility===r.j.Visibility.Visible?u===null&&(u=o):c.visibility=a.visibility,a.id===e&&(l=o),n.sheets.push(c)}if(!i){let e=c.toJSON();e&&Object.keys(e).length>0&&(n.styles=e)}let h=this.getProtection().toJSON();h&&(n.protection=h);let g=this._calculation.toJSON();Object.keys(g).length>0&&(n.calc=g);let _=await o.toJSONAsync();_&&_.length>0&&(n.strings=_);let v=this._externalBooks.toJSON();if(v&&(n.externalBooks=v),!a){let e=await s.toJSONAsync();e&&e.length>0&&(n.resources=e)}let y=this._calculation.getNamedFormulas().toJSON();y&&y.length>0&&(n.names=y);let b=this._view.toJSON();b&&(l===u?delete b.activeSheetId:b.activeSheetId=l,Object.keys(b).length>0&&(n.view=b))}finally{c.endPersist(),a||s.endPersist(),o.endPersist()}return this._emitter.notify(`onSave`,{params:n}),n}isClosed(){return this._closed}close(){if(this._closed)return;this._emitter.notify(`onClose`);let e=this._getState();e.listenersSheets.forEach(e=>{e()}),e.listenersSheets.clear();let t=e.sheetRefsAll;for(let e=t.length-1;e>=0;e--)try{t[e].sheet.close()}catch(e){console.warn(`error on close`,e)}this._ownResources,this._ownNames&&this._names.close(),this._ownCalculation&&this._calculation.close(),this._ownStyles,this._transactionsRemoveListener?.(),this._listenerLanguage?.(),this._listenerOrigin?.(),this._closed=!0}beginCommit(t){if(this._closed)throw Error(e._(`error.workbook.modelClosed`));return this._beginCommit(typeof t==`string`?{description:t}:t)}doBatch(t,n){let r=this;return n=typeof n==`string`?{description:n}:{description:e.v(`op.updateWorkbook`),...n},this._transactions.doBatch(t,n,(e,t)=>{e.getDepth()===0&&(r._lastTransactionUUID=e.getId())})}_beginCommit(e){let t=this;return this._transactions.beginCommit(typeof e==`string`?{description:e}:e,e=>{e.getDepth()===0&&(t._lastTransactionUUID=e.getId())})}_getState(){return this._transactions.getState(this._id)}_updateState(t,n=e.v(`op.updateWorkbook`),r){if(!t)return;let i=this._beginCommit(n);try{i.updateState(this._id,t),i.commit(r)}catch(e){throw i.rollback(),e}}get options(){return this._options}get[Symbol.toStringTag](){return`[Workbook]`}toString(){return`[${this.getName()??`(untitled)`}]`}get isIWorkbook(){return!0}},Q={address:null},we=class{constructor(){this._readFormats=[],this._writeFormats=[],this._encryptions=[]}async registerReadFormat(e){this._readFormats=await this._registerFormatType(e,this._readFormats)}async registerWriteFormat(e){this._writeFormats=await this._registerFormatType(e,this._writeFormats)}async registerEncryption(e){if(!e)throw Error(`encryption must be provided.`);if(!e.key)throw Error(`encryption.key must be provided.`);let t=e.key.toLowerCase(),n=this._encryptions.findIndex(e=>e.key.toLowerCase()===t);if(n!==-1){let t=[...this._encryptions];t[n]=e,this._encryptions=Object.freeze(t);return}this._encryptions=Object.freeze([...this._encryptions,e])}async getEncryption(e){return this.peekEncryption(e)}peekEncryption(e){if(!e)return this._encryptions[0]??null;let t=e.toLowerCase();return this._encryptions.find(e=>e.key.toLowerCase()===t)??null}async detectEncryption(e){for(let t of this._encryptions)if(await t.detect(e))return t;return null}async getReadFormats(e){return e?this._filterFormats(e,this._readFormats):[...this._readFormats]}async getWriteFormats(e){return this._writeFormats?e?this._filterFormats(e,this._writeFormats):[...this._writeFormats]:[]}async _registerFormatType(e,t){return this._registerFormatTypeSync(e,t)}_registerFormatTypeSync(e,t){if(!e)throw Error(`format must be provided.`);if(!e.key)throw Error(`format.key must be provided.`);let n=e.key.toLowerCase(),r=t.findIndex(e=>e.key.toLowerCase()===n);if(r!==-1){let n=[...t];return n[r]=e,Object.freeze(n)}return Object.freeze([...t,e])}_filterFormats(e,t,n){if(!e||Object.keys(e).length===0){if(!n)return[...t];e={ext:n}}let r=e.search?.toLocaleLowerCase();return t.filter(t=>{if(r){let e=t.key.toLocaleLowerCase().includes(r),n=!!t.exts&&t.exts.some(e=>e.toLocaleLowerCase().includes(r)),i=!!t.mimeType&&t.mimeType.toLocaleLowerCase().includes(r),a=!!t.tags&&t.tags.some(e=>e.toLocaleLowerCase().includes(r)),o=!!t.description&&t.description.toLocaleLowerCase().includes(r);if(!(e||n||i||a||o))return!1}let i=e.ext||n;if(i){let e=i.toLocaleLowerCase();if(!t.exts.some(t=>t.toLocaleLowerCase()===e))return!1}if(e.mimeType&&t.mimeType!==e.mimeType||e.key&&t.key.toLocaleLowerCase()!==e.key.toLocaleLowerCase())return!1;if(e.tags){let n=t.tags||[];if(!(typeof e.tags==`string`?[e.tags]:e.tags).every(e=>n.includes(e)))return!1}return!0})}},$=e=>!!e&&typeof e==`object`&&typeof e.getPath==`function`&&typeof e.canWrite==`function`,Te=new class{constructor(){this._setInstalled=new WeakSet,this._backingStore=null,this._emitter=new r.Tt(this),this._registry=new we,this._defaultStore=new u(()=>this.getWriteFormats(),()=>this.getReadFormats())}getBackingStore(){return this._backingStore??this._defaultStore}setBackingStore(e){this._backingStore=e??null}canWrite(){return typeof this.getBackingStore().write==`function`}canRead(){return typeof this.getBackingStore().read==`function`}async install(e){this._setInstalled.has(e)||(await e.register(this._registry),this._setInstalled.add(e))}addListeners(e,t){return this._emitter.addListeners(e,t)}addCommitListener(e){return this._emitter.addListeners({onWrite:(t,n)=>{n.save&&e.onCommit?.({store:n.workbook.getTransactions(),commitId:n.commitId})}})}async getReadFormats(e){return this._registry.getReadFormats(e)}async getWriteFormats(e){return this._registry.getWriteFormats(e)}getOrigin(e){return new c(e)}async read(e){let t=null;if(typeof e==`string`)e={source:e};else if($(e)){let n=e.getPath();if(!n)throw Error(`Cannot read from an unbound origin (no path).`);t=e,e={source:n}}let n=e??{},{source:r=null,...i}=n,a=this.getBackingStore();return(a.read?a:this._defaultStore).read({source:r,options:i,decode:(e,r)=>this._decodeBuffer(e,r,n,t)})}async _decodeBuffer(t,n={},r,i=null){let a=n.format,o=n.ext;if(!a&&!o)throw Error(`Either format or file extension must be provided to determine read type.`);let s=(await this._registry.getReadFormats({search:a,ext:o}))[0];if(!s)throw new e.s(e._(`error.io.readFormatUnavailable`,{format:a??o}));let l=r?.typedCreateWorkbookOptions,u=l?Object.keys(l).find(e=>e.toLowerCase()===s.key.toLowerCase()):void 0,d={...r,...u===void 0?void 0:l[u]};delete d.typedCreateWorkbookOptions,delete d.source;let f=i??new c(n.absolutePath??null,{name:n.name??null,format:s.key,size:n.size??null,canWrite:n.canWrite??!1});i instanceof c&&i.update({format:s.key,size:n.size??null}),d.createWorkbookOptions={...d.createWorkbookOptions||{},origin:f},d.readonly!==void 0&&(d.createWorkbookOptions={readonly:d.readonly,...d.createWorkbookOptions},delete d.readonly),d.calcOnly&&(d.createWorkbookOptions={disableLoadAutoFit:!0,...d.createWorkbookOptions});let p=await this._decrypt(t,f,d);if(p===null)return null;t=p.bytes;let m=d?.progress?.onStart?.bind(d.progress);m&&await Promise.resolve(m(f,n.size));try{let e=await this._readArrayBuffer(t,s,d);return p.password!==null&&f.setPassword(p.password),d?.progress?.onComplete?.(f),this._emitter.notify(`onRead`,{params:{workbook:e,origin:f},transactional:!1}),e}catch(e){throw d?.progress?.onError?.(e),d?.progress?.onComplete?.(null),e}}async _decrypt(t,n,r){let i=await this._registry.detectEncryption(t);if(n instanceof c&&n.update({encryption:i?i.key:null}),!i)return{bytes:t,password:null};let a=null,o=async n=>{try{return a=await i.decode(t,n),!0}catch(t){if(!(t instanceof e.P))throw t;return!1}};if(r?.password&&await o(r.password))return{bytes:a,password:r.password};if(!r?.onPassword){let t=n.getName();throw new e.T(t?e._(`error.io.passwordRequired`,{name:t}):e._(`error.io.passwordRequiredUnnamed`))}let s=await Promise.resolve(r.onPassword({origin:n,encryption:i.key,validate:o}));if(s==null)return null;if(a!==null||await o(s))return{bytes:a,password:s};throw new e.P(e._(`error.io.passwordIncorrect`))}async writeArrayBuffer(t,n){if(!n?.format)throw Error(`A format must be specified to write to an ArrayBuffer (e.g. { format: 'xlsx' }).`);let r=(await this._registry.getWriteFormats({search:n.format}))[0];if(!r)throw new e.s(e._(`error.io.writeFormatUnavailable`,{format:n.format}));return this._writeArrayBuffer(t,r,n)}async write(t,n,i){if(!t)throw Error(`Workbook must be provided.`);if(!t.isIWorkbook)throw Error(`Invalid workbook model provided. Must be an instance of IWorkbook.`);let a=i,o=null;typeof n==`string`?o=this.getOrigin(n):$(n)?o=n:n&&(a=n);let s,l=!o,u=o??t.getOrigin(),d=u.getFormat();if((a?.format||d)&&(s=(await this._registry.getWriteFormats({search:a?.format??d??void 0}))[0]),s||u.getPath()&&u.canWrite()&&u.getExtension()||(s=(await this._registry.getWriteFormats({ext:`sxl`}))[0]??(await this._registry.getWriteFormats())[0]),!s)throw new e.s(e._(`error.io.writeFormatUnresolved`));if(o&&typeof n==`string`){let e=o.getPath();e&&!r.Et(e)&&o.update?.({path:`${e}.${s.exts[0]}`})}let f=u.getEncryption(),p=t.getOrigin?.(),m=(u instanceof c?u.getPassword():null)??(p instanceof c?p.getPassword():null),h=u.isEncrypted()||(p?.isEncrypted()??!1),g=a?.password===void 0?m??(h?void 0:null):a.password,_=null;if(g===void 0){if(h){let t=u.getName();throw new e.T(t?e._(`error.io.passwordRequiredSave`,{name:t}):e._(`error.io.passwordRequiredSaveUnnamed`))}}else if(g!==null&&(_=await this._registry.getEncryption(f),!_))throw new e.s(e._(`error.io.encryptionUnavailable`));let v=`${u.getName()??e._(`workbook.defaultName`)}.${s.exts[0]}`,y=a?.progress,b=!1,x=this,S=null,C={workbook:t,format:s,origin:u,suggestedName:v,prompt:a?.prompt,async encode(e){await(async()=>{b||(b=!0,y?.onStart&&await Promise.resolve(y.onStart(u)))})(),S=t.getTransactions?.()?.getCurrentCommit()??S;let n=e?(await x._registry.getWriteFormats({search:e}))[0]??s:s,r=await x._writeArrayBuffer(t,n,a);return _?_.encode(r,g):r}},w=null;try{let e=this.getBackingStore();if(!e.write)throw Error(`The active backing store is read-only (no write implementation).`);if(w=await e.write(C),w){g!==void 0&&w instanceof c&&(w.setPassword(g),w.update({encryption:_?_.key:null}));let e=S??t.getTransactions?.()?.getCurrentCommit()??null;this._emitter.notify(`onWrite`,{params:{workbook:t,origin:w,commitId:e?.getId()??null,save:l},transactional:!1})}y?.onComplete&&await Promise.resolve(y.onComplete(w))}catch(t){let n=t instanceof Error?t:Error(String(t));throw y?.onError&&await Promise.resolve(y.onError(n)),y?.onComplete&&await Promise.resolve(y.onComplete(null)),n instanceof e.s?n:Error(e._(`error.io.writeFailed`,{reason:n.message}),{cause:t})}return w}async writeAs(e,t,n){if(!t)throw Error(`A target must be provided for writeAs (use write(workbook) for a plain save).`);let i=e?.getOrigin?.();if(!(i instanceof c))return this.write(e,t,n);let a=typeof t==`string`?t:t.getPath(),o=a&&r.Et(a)?.toLowerCase()||null,s=o?(await this._registry.getWriteFormats({search:o}))[0]?.key??o:null,l={path:i.getPath(),name:i.getName(),format:i.getFormat(),canWrite:i.canWrite()};i.update({path:a,name:typeof t==`string`?null:t.getName(),format:s,canWrite:a!=null});let u=null;try{u=await this.write(e,void 0,n)}finally{u||i.update(l)}return u}_stripExtension(e){let t=r.Et(e);return t?e.slice(0,e.length-t.length-1):e}_baseName(e){if(!e)return null;let t=e.split(/[?#]/)[0],n=t.split(/[/\\]/).pop()??t;return this._stripExtension(n)||null}async _writeArrayBuffer(e,t,n){if(!t)throw Error(`A write format must be provided.`);let r=t.handler;if(!r)throw Error(`Unable to resolve a write handler for '${t.key}'.`);return r(e,{...n,format:t.key})}async _readArrayBuffer(t,n,r){if(!t)throw Error(`ArrayBuffer must be specified.`);if(!n)throw Error(`format must be specified.`);if(t.byteLength===0)return new Z(r?.createWorkbookOptions);let i,a=n.handler;if(!a)throw Error(`Unable to resolve a read handler for '${n.key}'.`);try{i=await a(t,r)}catch(t){throw t instanceof e.s?t:new e.s(e._(`error.io.readFailed`,{format:n.description??n.key,reason:t?.message??String(t)}),{cause:t})}return i}};[`.woff2`,`.woff`,`.ttf`,`.otf`,`.ttc`].map(e=>({suffix:e,place:(e,t)=>t?`${t}/${e}`:e})),ve||={},ye||={};var Ee=t.r({nowWithPrecision:()=>De});function De(e=6e4){return new Date(Math.floor(Date.now()/e)*e)}Ce||={};var Oe=class extends r.nt{constructor(e){super(e)}_initializeOptions(e){return e={...e,coords:{colStart:0,rowStart:0,colEnd:(e?.size?.width??5)-1,rowEnd:(e?.size?.height??5)-1},getRanges:e=>null},super._initializeOptions(e)}};Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return de}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return te}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return ge}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return pe}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return Z}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return Oe}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return Te}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return Ee}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return c}});