@sheetxl/mcp 0.8.0-beta.25 → 1.0.2

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 (186) hide show
  1. package/assets/{CDiutOsLAzu4c0Ej.js → 1d-8AAcf1UmC2qIz.js} +1 -1
  2. package/assets/{V4pGXJr6fe-CPg7i.js → 30KXHiLfwl0cbsxL.js} +1 -1
  3. package/assets/{CCOaNx5_BfWCc9yz.js → 3o7I8loKRGynHrNq.js} +1 -1
  4. package/assets/{Brlza6Jd2oGGX9vB.js → 648qV0v861jvyZWm.js} +1 -1
  5. package/assets/{GfAXkT_vctdRX_9f.js → 7khlPnFFCrE8gnT_.js} +12 -12
  6. package/assets/{CX-KrjVgXM-7o--S.js → 8hUUTZ62hbxY0TOp.js} +2 -2
  7. package/assets/{DaB9iRVJj3TmKH92.js → B1Vm5y0E-TPSYFya.js} +3 -3
  8. package/assets/{B6e_DsVO4i91IYEO.js → B6ToyMcYe9lyaeDk.js} +3 -3
  9. package/assets/{DB2MrmDLZ-OzVRQu.js → B6pS096VwbWaj1Zz.js} +2 -2
  10. package/assets/{DwmlBb640xWfAMV2.js → B9V6AFTTnbPscv11.js} +2 -2
  11. package/assets/{DHCl7HWDbT3xqx8W.js → BESu-5sZSIJqkrWN.js} +2 -2
  12. package/assets/{BSJ_L1gNOejEih6N.js → BHhPtFpb3YfV6_44.js} +32 -32
  13. package/assets/{u8xtjHo43n-S_O6j.js → BMAAmO8LPIe4VJ77.js} +1 -1
  14. package/assets/{C9DvPNfuz_0hun6C.js → BMVu89mdcVSqJDDE.js} +1 -1
  15. package/assets/{DBgHcEP-FcgSHLvx.js → BRB5-fXJFU7Kq2wm.js} +314 -314
  16. package/assets/{CD2yoEhIT8DyXBou.js → BRI3D42tlMkZdYb2.js} +37 -37
  17. package/assets/{DgE30NwKzEjZI1W6.js → BVzogMoyaicBEKBk.js} +3 -3
  18. package/assets/{DXDhH3F4N4OOigqN.js → BWpLQNKC3n8bXJUk.js} +1 -1
  19. package/assets/{Cmf4eJow6AIuPH_w.js → Baa8cmJsilboM0DW.js} +1 -1
  20. package/assets/{irrAIfw6CnCOHmPE.js → BcDNXTGASDvptqc-.js} +1 -1
  21. package/assets/{Djl7cjJyCIS_Qvbd.js → Bme_PT3UqwTbGLWd.js} +1 -1
  22. package/assets/{DZTVTdrwu05fNZk_.js → BnxajOeIasx1G3OB.js} +1 -1
  23. package/assets/{cTLYCAhDs2fR2ITC.js → BousX61zAjBfjlsV.js} +1 -1
  24. package/assets/{DAnTpFc2vx3CmP8e.js → Bp73VL7f5DEt88Cn.js} +26 -26
  25. package/assets/{DLW76uSURiQM07DD.js → BppAvnmuJbbYBQUy.js} +1 -1
  26. package/assets/{DvkgborRc2vRq8E-.js → BtoBfR_4n1u37HmC.js} +1 -1
  27. package/assets/{H40qXR3Gazmnq4Mv.js → BuLAeGM4AvHCge4x.js} +1 -1
  28. package/assets/{45FAgD1JyG2a1Rti.js → Buxo11Ux7uxzoy_7.js} +2 -2
  29. package/assets/{u9le-qZ3tbYKK1kU.js → BwTF2TRqzXsf0H1I.js} +2 -2
  30. package/assets/{m9BgbF-NgPIYW4kc.js → BzCwrG3Zdv-Trzi_.js} +1 -1
  31. package/assets/{H_6CBe3t27jHlBHk.js → C00qhh0-m0B0JP9Y.js} +140 -140
  32. package/assets/{C6Vsz4e_ASJdx3LP.js → C5VvbPUAfrVKmXXs.js} +1 -1
  33. package/assets/{Cu4ok_jTnQif8QtX.js → C85xBYGjAzNmVNwL.js} +1 -1
  34. package/assets/{Duw8QQGcrPmesb-M.js → C880pTyOMof_fzPO.js} +1 -1
  35. package/assets/{70weNsvW2LMx5QcW.js → C88UXFOnR1Uc-nw2.js} +1 -1
  36. package/assets/{CYtkZMCX6dyEqjb9.js → C8G6iJz_vsgbNYq9.js} +4 -4
  37. package/assets/{DX94YgmfoL_ngS60.js → CAQgJMpje7ORQ5lt.js} +1 -1
  38. package/assets/CBSyNN4Fk5WsVStK.js +14 -0
  39. package/assets/{BktUuVP0Jew8_-ff.js → CCeqR45x9p-GG8Pi.js} +1 -1
  40. package/assets/{xSUMX6J9-MJIGgmG.js → CEDsCeYCSlY7wYe1.js} +2 -2
  41. package/assets/{CfWSdzSpbErVA_1h.js → CFWHwEc3dKMmNzUp.js} +338 -338
  42. package/assets/{CGS7apShLtnlmF8D.js → CK9LWUZdZ93t3GkS.js} +1 -1
  43. package/assets/{V_VVW06vjWkmlbdh.js → CL-BRusnISEAzebz.js} +527 -527
  44. package/assets/{C-FJab2sVwBbOTiA.js → CLvFlk5-KU2jnQ5r.js} +1 -1
  45. package/assets/{ClRgSo0axU3lAOwR.js → CUhCIQjymULgXquN.js} +1 -1
  46. package/assets/{Cb7FKT3S78r6IYHi.js → CboWvqCV0yix3-yP.js} +1 -1
  47. package/assets/{COZ-bhj463kGINFA.js → Ci4AUhBajQMJs1Ty.js} +1 -1
  48. package/assets/{eCD6fmcTsgv76IZm.js → CkQT1G_6bvMixZ8e.js} +4 -4
  49. package/assets/{DFd0JAiw5dkbnULM.js → CkqsYktaMF9p014y.js} +1 -1
  50. package/assets/{CSMsn9bKgR9kWG0m.js → CkuL4Ed6oRGAhIS9.js} +1 -1
  51. package/assets/{COXWiXy3DCfmXSm5.js → Cm41HVr6Xyz53jHz.js} +1 -1
  52. package/assets/{DQlLgxA592HvgKzh.js → CoY2sE2RG-Nd8TMR.js} +1 -1
  53. package/assets/{DZOzgVEOXfHTE3YC.js → CuRvGO_2tG0PUhCM.js} +1 -1
  54. package/assets/{ckvxz2tZRlY1UPpg.js → CvqpsTll6ngbdHgx.js} +9731 -9750
  55. package/assets/{BAowTO-7Utmg0UvM.js → Cvs9i2VUl7wXWZup.js} +3 -3
  56. package/assets/{CFrOPd_UcD7qclCq.js → Cy2uazuc6KpkbYg-.js} +1 -1
  57. package/assets/{cU78RT4WJKAp5mU_.js → CybNjXi6cOFKyGuH.js} +1 -1
  58. package/assets/{BHIi-cAKnh_sAifV.js → CzPMiqbNDm6TDPGJ.js} +1 -1
  59. package/assets/{D6qQAWN_5p3FAshK.js → CzYXLEVIoCfQ1AMM.js} +157 -157
  60. package/assets/{D7NjohknztgMLqhT.js → D-BWtxIGXTCMLoio.js} +2 -2
  61. package/assets/{C-Vt758qtn8QeCrw.js → D0Ly34TqieVSOIbh.js} +1 -1
  62. package/assets/{Abkx7KJ6_X5avkR4.js → D0M0EWP28g5rQaei.js} +3 -3
  63. package/assets/{D053O1kZ7JtMwiqh.js → D4NBYfzSZ3cU-3ao.js} +1 -1
  64. package/assets/{DG9KGapq8eHlcTC7.js → D4NcXlPRmR6NaoGS.js} +1 -1
  65. package/assets/{DRvzD5Tkcb2OU0G2.js → D4jXxO1LUEQ6erA9.js} +1 -1
  66. package/assets/{DfaQvLAaU7HHPnSe.js → DAx-VOBmi1xAMhhX.js} +29 -29
  67. package/assets/{BbfSzxx5EzAvn-_F.js → DBcXAdUaNGrlah12.js} +15 -15
  68. package/assets/{DQBqVPRLkZFb2P_x.js → DFdAxnoXGn_8ge3l.js} +2 -2
  69. package/assets/{BtNEVWQWEp_Ie1nT.js → DFjfZCMPfQfwC4cF.js} +581 -581
  70. package/assets/{Cplall3oc-_3AhCB.js → DG0Dzgf1kAxN3AIk.js} +1 -1
  71. package/assets/{CcTDxlAqw6HuYmmm.js → DGv-dTePYQ8_yif4.js} +66 -66
  72. package/assets/{HLtC2gb8SfNmJU5q.js → DIaD0BL0JLTaJTS3.js} +5 -5
  73. package/assets/{C2kYWrsx5mg4XOES.js → DIimDQiJDW-4lkZT.js} +1 -1
  74. package/assets/{BzU8BhgrkSoh-XJF.js → DK8DWNMTOmCg6zAI.js} +8 -8
  75. package/assets/{DlOCT6DI5bhPtQ8j.js → DKox8guOumZMOdq8.js} +29 -29
  76. package/assets/{BNvsIyBwweYnfUz3.js → DMHiZKWwm6puHV6p.js} +1 -1
  77. package/assets/{BzLwCwXsh7eXQpeK.js → DMyq3L2ibjMlHuDa.js} +1 -1
  78. package/assets/{UdhH9UX9jQ4IV11J.js → DOKXQpGyzXCoSLdJ.js} +1 -1
  79. package/assets/{D8wjcRGgRdU34Ata.js → DOXriXo-7WmTAKbN.js} +1 -1
  80. package/assets/{CJubVukzHBNJb_Wf.js → DRfsB4kS28fPXv6K.js} +105 -105
  81. package/assets/{DkS3EQvuEuPDvCws.js → DSmARJ0owmwmr2FA.js} +2 -2
  82. package/assets/{DYx_I-o0yjx056Dq.js → DUM6h3BEreCilg32.js} +1 -1
  83. package/assets/{DpGFb3hbAT5Murcv.js → DXp5V2__VY2opctz.js} +1 -1
  84. package/assets/{TqxFLhPz3zbgi95t.js → D_YBc6vHBL-ajwvB.js} +1 -1
  85. package/assets/{D5aWcMLJ2wyLm9Ws.js → Dc8BQsPlwN6i6OU7.js} +1 -1
  86. package/assets/{B_GZxEqqpKtEPbWC.js → DcnNIdrilJHfl_CQ.js} +1 -1
  87. package/assets/{B0FfnXdiZxExcdjB.js → DdIufax_qSuWVGQK.js} +2 -2
  88. package/assets/{DkT0-_t9Xgp4l-Mh.js → DeNqXaM_dHSswRuE.js} +1 -1
  89. package/assets/{O8YGVK4vtz39jQ84.js → DfVHW5vbnRNXHrCi.js} +1 -1
  90. package/assets/{D8cqT2lbcP5Yp1Or.js → Dfc9_XsqSeh48YeK.js} +11 -11
  91. package/assets/{DbHVXEt9qwlb8Gou.js → DiXodb_hLvUDIGb6.js} +29 -29
  92. package/assets/{CVWoX7wNwrZwm5XB.js → Dn531BWCDZ2noJix.js} +2 -2
  93. package/assets/{B940vbTfpMYACpDE.js → DnAuLAqQLmAf9Gls.js} +2 -2
  94. package/assets/{BV13tLgNXZ8MDaE_.js → Do8K2GlFXIiMX9TB.js} +1 -1
  95. package/assets/{DXVfJfT6ftWk5kYi.js → Dt8hWBnnqlpJOazW.js} +138 -138
  96. package/assets/{DUfrvQDZKh_22F91.js → DuBbSpdXZuAFvxpr.js} +1 -1
  97. package/assets/{ixHQtoul8ubEJfWS.js → DvAq2cPI7-lfSn0x.js} +1 -1
  98. package/assets/{CGdayif_qNMtoATI.js → DzCZGtlg3pJO91l9.js} +1 -1
  99. package/assets/{DcHvH_I64hbnNh9G.js → DzRBnJpz972o277m.js} +1 -1
  100. package/assets/{LQNEL4KjDxwZNwWq.js → EohzUi0uCnSF2q2D.js} +156 -156
  101. package/assets/{Bwk-CZuGiTRT2ox_.js → KSagTSkIvZSpUF1c.js} +4 -4
  102. package/assets/{BD3Bc7ZHxenj4S7Q.js → LOFAyr5OoT3oZGMV.js} +1 -1
  103. package/assets/{BBccc8pDH-6AJdoT.js → LbZNDu6C9XPMEXCN.js} +5 -5
  104. package/assets/{DJlQxf99HCszeCCD.js → NwtEz6ZaVT8p8wOh.js} +1 -1
  105. package/assets/{VkeNTI1TMsA1ZbGz.js → PD_i17-cebq3-_Gn.js} +3 -3
  106. package/assets/{Bb7ZxgjHwiKgARXs.js → Q-BvS_P_qM8EvP92.js} +1 -1
  107. package/assets/{BW8ReYzx-CEJ-lAG.js → YRKAYjRpPkjhxGSS.js} +1 -1
  108. package/assets/{kmiMiNIUc6rS8DG8.js → _-kNP8Q4FxBYPY4u.js} +4 -4
  109. package/assets/{Ci3R5B7bLke8NZRo.js → aEDyynzUuzMysLwT.js} +6 -6
  110. package/assets/{DunKnm-bQd0oHn9n.js → cTnKNFayqlXisspN.js} +2 -2
  111. package/assets/{DZBfVpnngvY9Ra3C.js → eEh1r_BS7Y0FXPqk.js} +1 -1
  112. package/assets/{BHeXL-Lo390ZSNV0.js → g4vz4gc43eat7Hd2.js} +1 -1
  113. package/assets/{CAI8p60cuWlgnlko.js → jUzhn1PeDLWXOuJO.js} +14 -14
  114. package/assets/{DbXqd8hGNQEyS-s0.js → kIzQWtiHNHvh8HLF.js} +1 -1
  115. package/assets/{BXxUz-sB48Z9nSFi.js → mIM-JksHd3Zl5INF.js} +1 -1
  116. package/assets/{s56uiNHMGbBV6xgZ.js → mirSoZ8QDsYUMjYu.js} +1 -1
  117. package/assets/{APcHum0Riw3QhLBQ.js → ooSNLnHLIYTBL5JD.js} +1 -1
  118. package/assets/{BFKj2ik7h-yM6oCR.js → tp75fiKc1r-jdPPN.js} +1 -1
  119. package/assets/{DcHo7BC8Ny3hWq0j.js → xltGcIbWkjqNtCty.js} +2 -2
  120. package/assets/{xMi-tFxI2s6e18L1.js → zbOvcGIPi-MDlJKE.js} +1 -1
  121. package/index.js +118 -118
  122. package/lib.js +1 -1
  123. package/licenses/dependencies.txt +35 -35
  124. package/package.json +17 -2
  125. package/screenshot-page/assets/{Da_VIghRFdNrmfZT.js → 37HIsN_8LEsOWyOO.js} +1 -1
  126. package/screenshot-page/assets/4I9gFq1IdumstDHq.js +2 -0
  127. package/screenshot-page/assets/6j6xGn4csAcfcFMQ.js +1 -0
  128. package/screenshot-page/assets/{hB5riGkPy0wXVIig.js → 7N8xCpYVBHFqfoAg.js} +1 -1
  129. package/screenshot-page/assets/{D8EmNst-H2v0eWcf.js → 97qOXULGlJqaTCIL.js} +1 -1
  130. package/screenshot-page/assets/B6dFVtErFelDd62E.js +2 -0
  131. package/screenshot-page/assets/{BCmGLxQEUabeee6Q.js → B6i6Xi9OafEvNRAm.js} +2 -2
  132. package/screenshot-page/assets/B7uNU6WWjJaco6ho.js +1 -0
  133. package/screenshot-page/assets/{DqOrgSpuJhQRhMoG.js → BGoGxqwlpgXt8CMd.js} +2 -2
  134. package/screenshot-page/assets/{0P0DnZolMnjPhiea.js → BXss42mPBQnnt0Rh.js} +1 -1
  135. package/screenshot-page/assets/{D53hpXNHxIgSWl80.js → BbhwsC3eMdzP2PeH.js} +1 -1
  136. package/screenshot-page/assets/Beaq1eo3pAjlfcba.js +1 -0
  137. package/screenshot-page/assets/Bf3eJLndwyxuVR-_.js +1 -0
  138. package/screenshot-page/assets/{CKdQfdZJGJFgnrr9.js → BqJRJVrx7XkIPgo7.js} +11 -11
  139. package/screenshot-page/assets/C-qNpEaGV5amWPml.js +13 -0
  140. package/screenshot-page/assets/{CCYEWK5QyGSnUAfh.js → CB-bJVu0a2zAElNH.js} +1 -1
  141. package/screenshot-page/assets/CGvyz3VVFiHbYHM0.js +3 -0
  142. package/screenshot-page/assets/{DTAKTGn53yF_B621.js → CKbXhNyUiI18JA_C.js} +1 -1
  143. package/screenshot-page/assets/{DkTX5ZjGNQ5SrwJa.js → CVEUOXnI1pTa-GKp.js} +1 -1
  144. package/screenshot-page/assets/C_RHXqyejSa8gd9x.js +1 -0
  145. package/screenshot-page/assets/{Bt7fKk5ZupUuo_xD.js → CbTBuiF_Jn72hoj1.js} +2 -2
  146. package/screenshot-page/assets/{C-2hBFk27roWkIrQ.js → CraI-__UdtaIvbNn.js} +1 -1
  147. package/screenshot-page/assets/{CMryHLEhCyKGuRSW.js → Cyu6g5rRtEGOHaQS.js} +4 -4
  148. package/screenshot-page/assets/{CL_hAngRQwm_KGdR.js → D1KqgZwk5MjDhk5i.js} +1 -1
  149. package/screenshot-page/assets/DGr8M07ioDfKXLHD.js +57 -0
  150. package/screenshot-page/assets/DMbhlzvflyxF5Clt.js +39 -0
  151. package/screenshot-page/assets/{D-jd_TJCN7AAn125.js → DQxI7bShZ7TKpL0V.js} +9 -9
  152. package/screenshot-page/assets/{BpJaTpbR_CQzXj9M.js → DSB_SKy2lKI_VGik.js} +1 -1
  153. package/screenshot-page/assets/DWkISZdhmV2PBk-k.js +1 -0
  154. package/screenshot-page/assets/{BVnzv_sY_58zEJyM.js → DfmEx82r_NbillHk.js} +1 -1
  155. package/screenshot-page/assets/{MqGbtsji4DVGCAMR.js → DsZcJUWTmqcp2aI-.js} +1 -1
  156. package/screenshot-page/assets/{jteb4n23QwBT9m_4.js → DszZ1A807YzTc0ek.js} +1 -1
  157. package/screenshot-page/assets/{DJebrQ5mu8uxpX3b.js → DwHci99xcnRTEcv5.js} +2 -2
  158. package/screenshot-page/assets/Ojp2B5i2-AJeD4mV.js +1 -0
  159. package/screenshot-page/assets/{CRtk9ixuBWxhPfPU.js → PRYQO22Y2LgMUg77.js} +1 -1
  160. package/screenshot-page/assets/{CZaKvnrRdlLj1_X8.js → RHcyaEfxJB7O3alo.js} +1 -1
  161. package/screenshot-page/assets/TA9YjsgX-_8fRRdZ.js +1 -0
  162. package/screenshot-page/assets/cUY9GpQPVTLSprfW.js +1 -0
  163. package/screenshot-page/assets/{Bne-AygyF1USkPAy.js → m48xmzGgNgwXSEgQ.js} +1 -1
  164. package/screenshot-page/assets/mVfCz3bXIjqEVPEo.js +1 -0
  165. package/screenshot-page/assets/{CFS0h-wE9YlZRk_1.js → putBhJCWgRos_Fmk.js} +1 -1
  166. package/screenshot-page/assets/{DbnmgPTSEii4OGkB.js → uyInkZWFnMwX-BSC.js} +1 -1
  167. package/screenshot-page/assets/{D98PlIA4qQ_6ciCu.js → xiJthTXsasYVOHWE.js} +2 -2
  168. package/screenshot-page/index.html +8 -8
  169. package/types/scripting.d.ts +1 -1
  170. package/assets/CehVpkp73IfWGN_b.js +0 -14
  171. package/screenshot-page/assets/3L7CY5dA_kT2UBjv.js +0 -1
  172. package/screenshot-page/assets/B6UwT0pG4sQeG7fA.js +0 -3
  173. package/screenshot-page/assets/BH2IWQ-8AfNbhYZJ.js +0 -39
  174. package/screenshot-page/assets/BkU12U7IqW7qjopk.js +0 -13
  175. package/screenshot-page/assets/Bs-IXwX9BKsCxwcJ.js +0 -2
  176. package/screenshot-page/assets/C7MXfx6zf_uTwcpu.js +0 -1
  177. package/screenshot-page/assets/CUQsrLir5jYpnRPM.js +0 -1
  178. package/screenshot-page/assets/CUgX7ETRCJsvqa2x.js +0 -1
  179. package/screenshot-page/assets/CfD1bn6b-NM38iZV.js +0 -1
  180. package/screenshot-page/assets/Ck5onwb1w_19WrtG.js +0 -1
  181. package/screenshot-page/assets/CvBPH5c-gnUG8Jen.js +0 -1
  182. package/screenshot-page/assets/DmIjTb4kKfUHxWaF.js +0 -57
  183. package/screenshot-page/assets/Dz_yLNMXKWGx1O6V.js +0 -2
  184. package/screenshot-page/assets/eR9_DaySoB72PvMo.js +0 -1
  185. package/screenshot-page/assets/hHvAGynpTvAb97GX.js +0 -1
  186. package/screenshot-page/assets/x1O923k1mN-CduO_.js +0 -1
@@ -1 +0,0 @@
1
- import{u as e,y as t}from"./D4RZZdlItfrgQHcE.js";import{Gt as n,Ut as r,s as i,y as a}from"./COL9dj40ytErlGak.js";import{i as o}from"./CQukCzhuewMuFOlO.js";import{Bn as s,Br as c,Cn as l,Di as u,Dt as d,E as f,Fi as p,In as m,Ji as h,Ki as g,Kt as _,Li as v,Lt as y,Mn as b,Nr as x,Rt as S,Si as C,Tn as w,Vi as T,Wn as E,a as D,ai as O,at as k,bi as A,c as j,ca as M,cr as N,gi as P,ha as F,hr as I,m as L,pt as R,qr as z,ta as B,ui as V,ut as H,wi as U,xr as W,yt as G,zr as K}from"./CKdQfdZJGJFgnrr9.js";import{c as ee,n as q,r as te,s as J,t as ne}from"./DbnmgPTSEii4OGkB.js";var Y=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],X=[31,29,31,30,31,30,31,31,30,31,30,31],re=(e,t,r,i)=>{if(typeof r!=`number`)return null;if(r<e.start)return 0;let a=t-1;if((e=>e.by===`numbers`||e.by===`days`&&(e.interval??1)!==1)(e)){let n=Math.floor((r-e.start)/(e.interval??1));return n>=t-2?r<=e.end?t-2:a:n+1}if(r>e.end)return a;let o=n(r,i,!0);if(!o)return null;switch(e.by){case`years`:return Math.min(o.year-(n(e.start,i,!0)?.year??o.year)+1,a);case`quarters`:return Math.floor((o.month-1)/3)+1;case`months`:return o.month;case`days`:{let e=o.day;for(let t=0;t<o.month-1;t++)e+=X[t];return e}case`hours`:return o.hour+1;case`minutes`:return o.minute+1;case`seconds`:return o.second+1;default:return null}},ie=(e,t)=>{let n=e.fields??[],r=w(e.records,n.length);if(!n.some(s))return r;let i=w(e.items,n.length),a=e.recordCount??0,o=r.slice();for(let e=0;e<n.length;e++){let c=n[e];if(!s(c))continue;let l=c.group,u=r[l.base]??[],d=i[l.base]??[],f=new Int32Array(d.length);for(let e=0;e<d.length;e++){let n=l.range?re(l.range,l.items.length,N(d[e]),t):l.discrete?.[e]??null;f[e]=n??-1}let p=Array(a);for(let e=0;e<a;e++){let t=f[u[e]];if(t===void 0||t<0)return null;p[e]=t}o[e]=p}return o},ae=e=>String(Number(e.toPrecision(12))),oe=(e,t)=>{let r=n(e,t,!0);return r?`${r.month}/${r.day}/${r.year}`:String(e)},se=(e,t,r)=>{let i=e.range,a=1/0,o=-1/0;for(let e of t){if(typeof e!=`number`)return null;e<a&&(a=e),e>o&&(o=e)}if(t.length===0)return e;let s={...i};i.fixedStart||(s.start=a),i.fixedEnd||(s.end=i.by!==`numbers`&&Number.isInteger(o)?o+1:o);let{inner:c,endText:l}=((e,t)=>{let{start:r,end:i}=e,a=e.interval??1,o=oe(i,t),s=(e,t)=>Array.from({length:e},(e,n)=>t(n));switch(e.by){case`numbers`:{let e=Math.max(1,Math.ceil(Number(((i-r)/a).toPrecision(12)))),t=Number.isInteger(Number(((i-r)/a).toPrecision(12))),n=Number.isInteger(r)&&Number.isInteger(a);return{inner:s(e,o=>{let s=r+o*a,c=o===e-1&&t?i:n?s+a-1:s+a;return`${ae(s)}-${ae(c)}`}),endText:ae(t?i:r+e*a)}}case`days`:if(a===1){let e=[];return X.forEach((t,n)=>{for(let r=1;r<=t;r++)e.push(`${r}-${Y[n]}`)}),{inner:e,endText:o}}return{inner:s(Math.max(1,Math.ceil((i-r)/a)),e=>{let n=r+e*a;return`${oe(n,t)} - ${oe(Math.min(n+a-1,i),t)}`}),endText:o};case`months`:return{inner:Y.slice(),endText:o};case`quarters`:return{inner:[`Qtr1`,`Qtr2`,`Qtr3`,`Qtr4`],endText:o};case`years`:{let e=n(r,t)?.year??0;return{inner:s((n(i,t)?.year??e)-e+1,t=>String(e+t)),endText:o}}case`hours`:return{inner:s(24,e=>`${e%12==0?12:e%12} ${e<12?`AM`:`PM`}`),endText:o};default:return{inner:s(60,e=>`:${String(e).padStart(2,`0`)}`),endText:o}}})(s,r),u=s.by===`numbers`?ae(s.start):oe(s.start,r);return{...e,range:s,items:[`<${u}`,...c,`>${l}`]}},ce=(e,t)=>{let n=``,r=0,i=()=>{let t=``;for(r++;r<e.length;){if(e[r]===`'`){if(e[r+1]!==`'`){r++;break}r++}t+=e[r++]}return t};for(;r<e.length;){let a=e[r];if(a===`"`){let t=/^"(?:[^"]|"")*"/.exec(e.slice(r)),i=t?t[0]:e.slice(r);n+=i,r+=i.length;continue}if(/[0-9.]/.test(a)){let t=/^[0-9.]+(?:[eE][+-]?[0-9]+)?/.exec(e.slice(r))[0];n+=t,r+=t.length;continue}let o=a===`'`,s=o?null:/^[\p{L}_][\p{L}\p{N}_.]*/u.exec(e.slice(r))?.[0];if(!o&&!s){n+=a,r++;continue}let c=o?i():s;if(o||(r+=c.length),e[r]!==`(`){if(e[r]===`[`){r++;let a=``;for(e[r]===`'`&&(a=i());r<e.length&&e[r]!==`]`;)a+=e[r++];r++;let o=t(c,a);if(o===null)return null;n+=o;continue}n+=t(c,null)??(o?`'${c.replace(/'/g,`''`)}'`:c)}else n+=c}return n},le=e=>{let t=``;for(let n=e+1;n>0;n=Math.floor((n-1)/26))t=String.fromCharCode(65+(n-1)%26)+t;return`${t}1`},ue=(e,t)=>({rowStart:0,colStart:e,rowEnd:t-1,colEnd:e}),de=(e,t)=>{let n=[];for(let r=0;r<t;r++)n.push([r,[[0,e.map(e=>e[r]??null)]]]);return n},fe=(e,t)=>{let n=t.fields??[],r=[],i=[],a=new Map,o=new Map,s=(e,t)=>{if(a.has(e))return!0;if(t.includes(e))return!1;let c=[];ce(n[e].formula,e=>{let t=n.findIndex(t=>V(t.name,e));return t>=0&&c.push(t),t>=0?``:null});for(let i of c)if(W(n[i])){if(!s(i,[...t,e]))return!1}else r.includes(i)||r.push(i);return a.set(e,i.length),o.set(e,n[e].formula),i.push({field:e,expression:``}),!0},c=[];for(let[t,r]of(e.dataFields??[]).entries())if(W(n[r.field])){if(!s(r.field,[]))return null;c.push({data:t,formula:a.get(r.field)})}let l=(e,t)=>{if(t!==null)return null;let i=n.findIndex(t=>V(t.name,e));return i>=0?le(W(n[o=i])?r.length+a.get(o):r.indexOf(o)):null;var o};for(let e of i){let t=ce(o.get(e.field),l);if(t===null)return null;e.expression=t}return{operands:r,formulas:i,measures:c}},pe=new Set([`sum`,`count`,`countNums`]),Z=-2,me=4294967295,he=1,ge=2,_e=4,ve=8,ye=16,be=4294967295,xe=0,Se=1,Ce=2,we=3,Te=0,Ee=1,De={sum:0,countNums:1,count:11,average:3,min:4,max:5,product:6,var:7,varp:8,stdDev:9,stdDevp:10},Oe=[`sum`,`countA`,`avg`,`max`,`min`,`product`,`count`,`stdDev`,`stdDevP`,`var`,`varP`],ke={sum:0,countA:13,avg:3,max:5,min:4,product:6,count:12,stdDev:9,stdDevP:10,var:7,varP:8},Ae={sum:`Sum`,countA:`Count`,avg:`Average`,max:`Max`,min:`Min`,product:`Product`,count:`Count`,stdDev:`StdDev`,stdDevP:`StdDevp`,var:`Var`,varP:`Varp`},je=e=>{let t=e?.subtotals;return t&&!t.includes(`default`)?Oe.filter(e=>t.includes(e)):[]},Me=(e,t)=>{let n=new Set(t.flatMap(t=>t.field===Z?[]:je(e.fields?.[t.field])));return Oe.filter(e=>n.has(e))},Ne=(e,t)=>{let n=t.filter(e=>e.field!==Z).map(e=>e.field);return!(n.length<2||t[t.length-1].field===Z)&&!n.slice(0,-1).some(t=>e.fields?.[t]?.items?.some(e=>e.collapsed))&&!e.filters?.some(e=>e.dataField!==void 0&&n.includes(e.field))},Pe={normal:0,percentOfTotal:1,percentOfRow:2,percentOfCol:3,index:4,percentOfParentRow:5,percentOfParentCol:6,percentOfParent:7,runTotal:8,percentOfRunningTotal:9,rankAscending:10,rankDescending:11,difference:12,percent:13,percentDiff:14},Fe=(e,t,n,r)=>{let i=d.peek(),a=e.fields,o=t.fields;if(!i||!a||!o||a.length!==o.length)return null;if(L(e))return{cells:[],...f,rowPageCount:0,columnPageCount:0,header:m(e),rowLines:[],columnLines:[],viewValues:[],firstKey:null,...r?.roles?{roles:new Map}:{}};let c=P(e,o),l=c?r?.filters:null;if(c&&!l)return null;let u=a.some(e=>e.items?.some(e=>e.calculated));if(u&&!l?.calculatedRecords)return null;let p=fe(e,t);if(!p||p.measures.length>0&&!l?.fieldValues||(e.dataFields??[]).some(e=>Pe[e.showDataAs??`normal`]===void 0||De[e.subtotal??`sum`]===void 0))return null;let h=Ie(e,t,n,l?.calculatedRecords,p.operands);if(!h)return null;let{items:g,records:_,values:v,n:y}=h,b=e=>!!e&&(!e.noRecords||s(e)),x=e.form??`compact`,S=e=>{let t=[];for(let n of e??[]){if(n===Z){t.push({field:n,form:x});continue}let e=a[n],r=e?.subtotals;if(!e||!b(o[n])||u&&r&&r.some(e=>e!=="default"))return null;t.push({field:n,form:e.form??`compact`})}return t},C=S(e.rowFields),w=S(e.columnFields),T=e.pageFields??[];if(!C||!w||T.some(e=>!b(o[e.field])))return null;let E=F(e,r?.slicerFields);return E.pageFields?.some(e=>!b(o[e.field]))?null:We(e,t,g,C,w,Be(i,E,g,_,v,C,w,y,l?.keep,l?.records,p.operands.length,l?.fieldValues,!0),n,!0===r?.roles,r?.cellOrder===`columns`)},Ie=(e,t,n,r,i=[])=>{let a=t.fields?.length??0,o=T(t);if(!t.records)return null;let c=ie(t,n.isDate1904());if(!c)return null;let l=!0===t.fields?.some(s),u=l?w(t.items,a):o,d=l?w(t.records,a):c,f=t.recordCount??0,p=r?.count??0,m=f+p,h=(e,n)=>{let r=!t.fields?.[e]?.noRecords,i=r?d[e]:c[e]??[],a=r?u[e]:o[e],s=Array(m);for(let e=0;e<f;e++)s[e]=N(a[i[e]]);for(let e=0;e<p;e++)s[f+e]=n?.[e]??null;return s},g=[...(e.dataFields??[]).map((e,t)=>h(e.field,r?.values[t])),...i.map(e=>h(e))];return{items:o,records:r?c.map((e,t)=>e.concat(r.ids[t]??[])):c,values:g,n:m}},Le=async(e,t,n,r,i,a,o,s,c)=>{let l=d.peek(),u=e.dataFields?.[i];if(!l||!e.fields||!u||De[u.subtotal??`sum`]===void 0)return null;let f=[e.rowFields,e.columnFields].map(e=>(e??[]).filter(e=>e!==Z)),p=f.findIndex(e=>e.includes(r)),m=f[p];if(!m)return null;let h=m.slice(0,m.indexOf(r)),g=e.fields.map(e=>{let{blankRowAfter:t,showItemsWithNoData:n,sort:r,...i}=e;return{...i,items:e.items?.map(e=>{if(!e.collapsed)return e;let{collapsed:t,...n}=e;return n})}}),{columnGrandTotals:_,...v}=e,{showDataAs:y,...b}=u,x={...v,fields:g,rowFields:[...h,r],columnFields:[],dataFields:[b],rowGrandTotals:!1},S=s&&{...s,values:[s.values[i]??[]]},C=fe(x,t);if(!C||C.measures.length>0&&!c)return null;let w=Ie(x,t,n,S,C.operands);if(!w)return null;let{items:T,records:E,values:D,n:O}=w,k=x.rowFields.map(e=>({field:e,form:`compact`})),A;if(o){let e=p===0?1:2;A=new Uint8Array(O);for(let t=0;t<O;t++){let n=o[t];A[t]=(n&e?1:0)|(n===3?2:0)}}let j=C.measures.length>0?await ze(l,C,x,T,E,D,k,[],O,a,A,c):void 0,M=Be(l,x,T,E,D,k,[],O,a,A,C.operands.length,j),N=(t,n)=>e.fields[t].items?.[n]?.item??n,P=new Map,F=M.columns.length;return M.rows.forEach((e,t)=>{if(e.kind!==xe||e.path.length!==h.length+1)return;let n=h.map((t,n)=>N(t,e.path[n])).join(`,`),i=P.get(n);i||P.set(n,i={ids:[],totals:[]}),i.ids.push(N(r,e.path[h.length])),i.totals.push(M.values[t*F])}),{outer:h,groups:P,records:E}},Re=(e,t,n)=>{let r=new Uint32Array(t).fill(me),i=new Uint8Array(t),a=e.items;if(a)a.forEach((e,n)=>{e.item===void 0||e.type!==void 0||e.item>=t||(r[e.item]=n,i[e.item]=+!!e.hidden|(e.collapsed?2:0))});else for(let e=0;e<t;e++)r[e]=e;if(n)for(let e=0;e<t;e++)n[e]||(i[e]|=1);return{ranks:r,flags:i}},ze=async(e,t,n,r,i,a,s,c,l,u,d,f)=>{let{request:p,errors:m}=Ve(e,n,r,i,a,s,c,l,u,d,t.operands.length),h=0,g=[];try{let r=p.operands(0,m.codeOf(o.BuiltIn.NA),m.codeOf(o.BuiltIn.Null));try{h=r.cell_count();let i=n.dataFields?.length??0;t.operands.forEach((t,n)=>{let a=r.values(i+n);try{let t=q(e.wasm_memory().buffer,a,m),n=Array(h);for(let e=0;e<h;e++)n[e]=t(e);g.push(n)}finally{a.free()}})}finally{r.free()}}finally{p.free()}return(async(e,t,n,r)=>{let i=n+1,a=t.map(e=>{let t=Array(i);for(let r=0;r<n;r++)t[r]=e[r]??0;return t[n]=0,t}),o=await r.evaluateBatch({values:de(a,i),formulas:e.formulas.map(({expression:e},n)=>({expression:e,coords:ue(t.length+n,i)}))}),s=new Map;for(let{data:t,formula:n}of e.measures){let e=Array(i);for(let t=0;t<i;t++)e[t]=o[n].getValueAt(t,0)??0;s.set(t,e)}return s})(t,g,h,f)},Be=(e,t,n,r,i,a,s,c,l,u,d=0,f,p=!1)=>{let{request:m,errors:h}=Ve(e,t,n,r,i,a,s,c,l,u,d,f,p),g=h.codeOf(o.BuiltIn.NA),_=h.codeOf(o.BuiltIn.Null),v=m.lay_out(0,g,_);try{let n=He(v.row_lines(),v.row_stride()),r=He(v.column_lines(),v.column_stride()),i=v.states(),o=v.values();try{let c=q(e.wasm_memory().buffer,o,h),l=Array(i.length);for(let e=0;e<i.length;e++)l[e]=i[e]===Te?c(e):null;return{rows:n,columns:r,states:i,values:l,functions:p?Me(t,[...a,...s]):[]}}finally{o.free()}}finally{v.free(),m.free()}},Ve=(e,t,n,r,i,a,o,s,c,l,u=0,d,f=!1)=>{let p=t.fields,m=new e.LayoutRequest(s),h=f?Me(t,[...a,...o]):[],g=[],_=(e,r)=>{for(let{field:i,form:a}of r){if(i===Z){m.add_values_slot(e,a===`tabular`);continue}let o=p[i],s=o.subtotals,c=(!s||s.includes(`default`)?he:0)|(!1===o.subtotalsOnTop?0:ge)|(o.blankRowAfter?_e:0)|(o.showItemsWithNoData?ve:0)|(a===`tabular`?ye:0),l=m.add_field(e,n[i].length,c),u=o.sort;u?.dataField!==void 0&&m.set_field_sort(e,l,u.dataField,u.order===`descending`,new Uint32Array((u.scope?.items??[]).map(e=>e.item)));let d=f?je(o):[];if(d.length>0){let n=r[r.length-1].field===i&&Ne(t,r);m.set_field_functions(e,l,new Uint32Array(d.map(e=>h.indexOf(e))),n)}g.push({axis:e,slot:l,field:i})}};_(0,a),_(1,o);let v=(t.pageFields??[]).map(e=>({page:e,index:m.add_page(n[e.field].length)})),y=i.map(()=>m.add_values(127)),b=t.dataFields??[];b.forEach((e,t)=>{m.add_measure(t,De[e.subtotal??`sum`]);let n=Pe[e.showDataAs??`normal`];if(!n)return;let r=2,i=a.findIndex(t=>t.field===e.baseField);i>=0?r=0:(i=o.findIndex(t=>t.field===e.baseField),i>=0&&(r=1));let s=e.baseItem===`previous`?4294967294:e.baseItem===`next`?4294967295:e.baseItem??0;m.set_show_as(t,n,r,Math.max(i,0),s)});for(let e=0;e<u;e++)m.add_measure(b.length+e,De.sum);u>0&&m.set_operand_measures(u);for(let e of h)b.forEach((t,n)=>m.add_measure(n,ke[e]));h.length>0&&m.set_functions(h.length);let x=[...d??[]].map(([e,t])=>({column:t,ptr:m.add_calculated(e,t.length-1,127)}));m.set_grand(!1!==t.rowGrandTotals,!1!==t.columnGrandTotals);let S=l?m.record_keep():null,C=e.wasm_memory().buffer;l&&S!==null&&new Uint8Array(C,S,s).set(l.subarray(0,s));for(let{axis:e,slot:t,field:i}of g){let a=n[i].length;new Uint32Array(C,m.field_ids(e,t),s).set(r[i].slice(0,s));let{ranks:o,flags:l}=Re(p[i],a,c?.get(i));new Uint32Array(C,m.field_ranks(e,t),a).set(o),new Uint8Array(C,m.field_flags(e,t),a).set(l)}for(let{page:e,index:t}of v){let i=n[e.field].length;new Uint32Array(C,m.page_ids(t),s).set(r[e.field].slice(0,s));let{ranks:a,flags:o}=Re(p[e.field],i),l=new Uint8Array(C,m.page_keep(t),i),u=e.item===void 0?void 0:p[e.field].items?.[e.item]?.item,d=e.slicer?c?.get(e.field):void 0;for(let t=0;t<i;t++){let n=u===void 0?!(a[t]===me&&p[e.field].items||1&o[t]):t===u;l[t]=!n||d&&d[t]===0?0:1}}let w=new ne;y.forEach((e,t)=>{let n={doubles:new Float64Array(C,e,s),ints:new Int32Array(C,e,2*s),types:new Uint8Array(C,e+8*s,s)},r={ok:!0,numeric:!0},a=i[t];for(let e=0;e<s;e++)ee(n,e,a[e],w,r)});for(let{column:e,ptr:t}of x){let n=e.length,r={doubles:new Float64Array(C,t,n),ints:new Int32Array(C,t,2*n),types:new Uint8Array(C,t+8*n,n)},i={ok:!0,numeric:!0};for(let t=0;t<n;t++)ee(r,t,e[t],w,i)}return{request:m,errors:w}},He=(e,t)=>{let n=[],r=7+t;for(let t=0;t+r<=e.length;t+=r){let r=e[t+1],i=e[t+3],a=e[t+5];n.push({kind:e[t],path:Array.from(e.subarray(t+7,t+7+r)),data:i===be?null:i,function:a===be?null:a,across:e[t+6]===1})}return n},Ue=(e,t)=>{let n=[];return e.map(e=>{let r={items:[]};if(e.kind===xe){let t=0;for(;t<e.path.length-1&&t<n.length&&e.path[t]===n[t];)t++;t>0&&(r.repeat=t),r.items=e.path.slice(t),n=e.path}else r.type=e.kind===Se?e.function===null?`default`:t[e.function]:e.kind===Ce?`grand`:`blank`,r.items=e.kind===Ce?[0]:e.path.slice();return e.data!==null&&e.data>0&&(r.dataField=e.data),r})},We=(e,t,n,r,a,s,c,l,u)=>{let d=e.fields,f=t.fields,p=e.dataFields??[],g=t=>t===Z?e.valuesCaption??`Values`:d[t].name??f[t].name,_=(e,t)=>{if(e===Z)return p[t]?.name??``;let r=d[e].items?.[t];if(r?.name!==void 0)return r.name;let i=N(n[e][r?.item??t]);return i===null?b:i},S=(e,t)=>{let n=_(e,t);if(typeof n==`number`){let r=d[e].items?.[t]?.item??t,a=(d[e].numberFormat??f[e].numberFormat)===void 0&&U(f[e],r);return i(c,a?C(h(f[e],r),c):(e=>C(d[e].numberFormat??f[e].numberFormat,c))(e),n)}return o.isError(n)?n.getLabel():typeof n==`boolean`?n?`TRUE`:`FALSE`:String(n)},w=e=>{if(e.item!==void 0)return _(e.field,e.item);let t=d[e.field].items??[];if(!t.some(e=>e.hidden))return`(All)`;let n=t.flatMap((e,t)=>x(e)&&!e.hidden?[t]:[]);return n.length===1?_(e.field,n[0]):`(Multiple Items)`},T=e.grandTotalCaption??`Grand Total`,E=l?new Map:null,D=(e,t)=>e===Z?{kind:`dataCaption`,data:t}:{kind:`item`,field:e,rank:t},O=e=>e===Z?null:{kind:`fieldCaption`,field:e},A=(e,t)=>e.kind===Ce&&t===T?{kind:`grandTotal`}:null,j=r.length===0&&a.length===0&&p.length===0,M=j?{firstHeaderRow:0,firstDataRow:0,firstDataCol:0}:m(e),P=j?[]:Ue(s.rows,s.functions),F=j?[]:Ue(s.columns,s.functions),I=y({...e,header:M,rowLines:P,columnLines:F}),L=s.columns.length,R=e=>e===`row`?r:a,z=t=>{switch(t.kind){case`pageCaption`:{let n=e.pageFields[t.page].field;return[g(n),{kind:`fieldCaption`,field:n}]}case`pageItem`:{let n=e.pageFields[t.page];return[w(n),{kind:`pageItem`,page:t.page}]}case`dataCaption`:return[p[t.data]?.name??null,{kind:`dataCaption`,data:t.data}];case`rowHeader`:return[r.every(e=>e.field===Z)?e.valuesCaption??`Values`:e.rowHeaderCaption??`Row Labels`,{kind:`rowHeader`}];case`columnHeader`:return[e.columnHeaderCaption??`Column Labels`,{kind:`columnHeader`}];case`fieldCaption`:{let e=R(t.axis)[t.level].field;return[g(e),O(e)]}case`label`:{let e=R(t.axis)[t.level].field,n=t.line.path[t.level];return[_(e,n),D(e,n)]}case`total`:{let e=(t.axis===`row`?s.rows:s.columns)[t.line.index],n=((e,t)=>{let n=e.findIndex(e=>e.field===Z)>=t.path.length&&t.data!==null,r=n?p[t.data]?.name??``:``;if(t.kind===Ce)return n?`Total ${r}`:T;let i=t.path.length-1,a=e[i].field,o=S(a,t.path[i]);if(t.function!==null){let e=Ae[s.functions[t.function]];return(n||t.across)&&t.data!==null?`${o} ${e} of ${g(p[t.data].field)}`:`${o} ${e}`}return d[a]?.subtotalCaption??(n?`${o} ${r}`:`${o} Total`)})(R(t.axis),e);return[n,A(e,n)]}case`value`:{let n=t.row.index*L+t.column.index,r=s.states[n],i=null;return r===Te?(i=s.values[n],e.showError&&o.isError(i)&&(i=e.errorCaption??``)):r===Ee&&(i=!1===e.showEmpty?0:(e=>{if(e===void 0)return null;let t=e.trim();if(!/^[+-]?\d*(?:\.\d*)?$/.test(t))return e;let n=Number(t.replace(/^([+-]?)\.?$/,`$10`));return Number.isFinite(n)?n+0:e})(e.emptyCaption)),[i,null]}}},B=new H.Builder,V=I.top,W=I.pages.reduce((e,t)=>Math.max(e,t.column+2),0),G=(e,t)=>{let n=v(I,e,t);if(!n)return;let[r,i]=z(n);((e,t,n)=>{E&&n&&E.set(e+`,`+t,n)})(e-V,t,i),r!==null&&(u?B.pushAt(t,e-V,r):B.pushAt(e-V,t,r))};if(u){let e=Math.max(W,I.columns.length);for(let t=0;t<e;t++)for(let e=0;e<I.rows.length;e++)t<(e<V?W:I.columns.length)&&G(e,t)}else for(let e=0;e<I.rows.length;e++){let t=e<V?W:I.columns.length;for(let n=0;n<t;n++)G(e,n)}if(j){let t=k(e);return{cells:B.build()?.tuples??[],rows:1,columns:1,rowPageCount:t.rows,columnPageCount:t.columns,header:M,rowLines:[],columnLines:[],viewValues:[],firstKey:null,...E?{roles:E}:{}}}let K=(e,t)=>{let n=[];return e.forEach((e,r)=>{e.field!==Z&&n.push(r<t.path.length?t.path[r]:-1)}),n},ee=(e,t)=>te(e.data??t.data??0,[...K(r,e),...K(a,t)]),[q]=s.rows,[J]=s.columns,ne=q&&J&&q.kind!==we&&J.kind!==we?ee(q,J):null,Y=[],X=e=>e.kind===Se&&e.function!==null;s.rows.forEach((t,n)=>{t.kind===we||X(t)||(K(r,t),s.columns.forEach((r,i)=>{let a=s.states[n*L+i];if(r.kind===we||X(r)||a!==Te&&a!==Ee)return;let c=a===Te?s.values[n*L+i]:0;e.showError&&o.isError(c)&&(c=e.errorCaption||0),Y.push([ee(t,r),c])}))});let re=k(e);return{cells:B.build()?.tuples??[],rows:I.rows.length-V,columns:I.columns.length,rowPageCount:re.rows,columnPageCount:re.columns,header:M,rowLines:P,columnLines:F,viewValues:Y,firstKey:ne,...E?{roles:E}:{}}},Ge=(e,t,n,r,a=!1,c,l)=>{let u=Fe(e,t,r,{filters:c,slicerFields:l});if(!u)return null;let d=u.rowPageCount>0?u.rowPageCount+1:0,f=u.rowPageCount>0?3*u.columnPageCount-1:0,{rowStart:p,colStart:m}=n;if(p-d<0)return null;let g={rowStart:p-d,colStart:m,rowEnd:p+u.rows-1,colEnd:m+Math.max(u.columns,f)-1},_=e.fields,v=t.fields,y=T(t),b=(e,t)=>{let n=_[e],a=n.numberFormat??v[e].numberFormat,c=C(a,r),l=s(v[e]),u=y[e],d=(n.items??[]).filter(e=>e.item!==void 0&&e.type===void 0),f=d.length>0?d:u.map((e,t)=>({item:t})),p=f.map(t=>{let n=N(u[t.item]),s=U(v[e],t.item),d=n===null?`(blank)`:typeof n==`number`?i(r,s?(f=t.item,a===void 0?C(h(v[e],f),r):c):c,n):o.isError(n)?n.getLabel():typeof n==`boolean`?n?`TRUE`:`FALSE`:String(n);var f;let p=l&&s?d:n;return t.name===void 0?{value:p,text:d}:{value:p,text:d,name:t.name}}),m={name:n.name??v[e].name,items:p};if(t){let e=t.item===void 0?void 0:(n.items??[])[t.item]?.item;m.page=e===void 0?-1:f.findIndex(t=>t.item===e)}return m},x=e=>(e??[]).filter(e=>e!==-2);return{view:{range:g,dataFields:(e.dataFields??[]).map(e=>({name:e.name,sourceName:v[e.field].name})),fields:[...x(e.rowFields).map(e=>b(e)),...x(e.columnFields).map(e=>b(e)),...(e.pageFields??[]).map(e=>b(e.field,e))],values:u.viewValues,block:{anchor:{row:p,column:m},...a?{blocked:!0}:{},...u.firstKey===null?{}:{first:u.firstKey}}},size:{rows:u.rows,columns:u.columns}}},Ke=async(e,t,n,r)=>{let a=new Map,s=(e.filters??[]).filter(t=>I(t)||e.rowFields?.includes(t.field)||e.columnFields?.includes(t.field)),c=e.fields?.some(e=>e.items?.some(e=>e.calculated)),l=e.dataFields?.some(e=>W(t.fields?.[e.field]));if(s.length===0&&!c&&!l)return{keep:a};let u=T(t);for(let i of s.filter(I)){let o=i.field,s=u[o];if(!s)continue;let c=S(i.condition)?Ye(e,t,s,o,n):null,l=Array(s.length);for(let e=0;e<s.length;e++)l[e]=c?c[e]:N(s[e]);let d=await Je(i.condition,l,n,r),f=a.get(o);if(f)for(let e=0;e<d.length;e++)f[e]&=d[e];else a.set(o,d)}let f=c&&r?await(async(e,t,n,r,a)=>{let s=t.fields??[],c=e.fields??[],l=s.flatMap((e,t)=>e.calculatedItems?.length?[t]:[]),u=e.dataFields??[];if(l.length!==1||u.some(e=>W(s[e.field])||!pe.has(e.subtotal??`sum`)))return null;let d=l[0],f=s[d].calculatedItems,p=ie(t,n.isDate1904());if(!p)return null;let m=T(t),h=T({...t,fields:s.map(({group:e,...t})=>t)}),g=(e.rowFields??[]).filter(e=>e>=0),_=(e.columnFields??[]).filter(e=>e>=0),v=g.includes(d)?g:_.includes(d)?_:null;if(!v)return null;let y=v.slice(0,v.indexOf(d)),x=[...v.slice(v.indexOf(d)+1),...v===g?_:g],S=[...y,...x],w=t.recordCount??0,E=(e,t)=>{let n=c[e]?.items,r=n?.find(e=>e.item===t&&e.type===void 0);return!(n&&(!r||r.hidden)||a?.get(e)&&a.get(e)[t]===0)},D=(e,t)=>{let n=c[e.field]?.items;if(e.item!==void 0)return n?.[e.item]?.item===t;let r=n?.find(e=>e.item===t&&e.type===void 0);return!n||!!r&&!r.hidden},O=e.pageFields??[],k=C(s[d].numberFormat??14,n),A=e=>m[d].findIndex((t,r)=>{let a=N(t);return typeof a==`number`&&(s[d].dates||U(s[d],r))?V(i(n,k,a),e):V(a===null?b:B(a),e)}),j=new Map,M=new Map(f.map(e=>[e.item,e.formula])),P=e=>{let t=j.get(e);return t===void 0&&j.set(e,t=j.size),t};for(let e of f)if(ce(e.formula,(e,t)=>{if(t===null||!V(s[d].name,e))return null;let n=A(t);return n<0?null:(M.has(n)||P(n),``)})===null)return null;let F=new Map,I=new Map,L=u.map(e=>({column:p[e.field],values:h[e.field],fold:e.subtotal??`sum`})),R=j.size;for(let e=0;e<w;e++){if(!O.every(t=>D(t,p[t.field][e]))||!S.every(t=>E(t,p[t][e])))continue;let t=``;for(let n of y)t+=p[n][e]+`,`;I.has(t)||I.set(t,e);let n=j.get(p[d][e]);if(n===void 0)continue;let r=t;for(let t of x)r+=p[t][e]+`,`;let i=F.get(r);i||(i={sums:u.map(()=>Array(R).fill(0)),errors:u.map(()=>Array(R).fill(void 0))},F.set(r,i));let{sums:a,errors:s}=i;L.forEach(({column:t,values:r,fold:i},c)=>{let l=N(r[t[e]]);i===`sum`?typeof l==`number`?a[c][n]+=l:o.isError(l)&&(s[c][n]??=l):(i===`countNums`?typeof l==`number`:l!==null)&&(a[c][n]+=1)})}let z=x.map(e=>{let t=c[e]?.items;return t?t.flatMap(t=>t.item!==void 0&&t.type===void 0&&!t.missing&&E(e,t.item)?[t.item]:[]):m[e].map((e,t)=>t)});if(z.reduce((e,t)=>e*t.length,I.size)>5e5)return null;let H=[];for(let[e,t]of I){let n=(e,r,i)=>{if(e!==z.length)for(let t of z[e])n(e+1,[...r,t],i+t+`,`);else H.push({exemplar:t,path:r,key:i})};n(0,[],e)}let G=H.length;if(G===0)return{count:0,ids:s.map(()=>[]),values:u.map(()=>[])};let K=u.length*R,ee=(e,t)=>e*R+t,q=(e,t)=>K+e*f.length+t,te=[];for(let e=0;e<u.length;e++)for(let t=0;t<R;t++)te.push(H.map(({key:n})=>{let r=F.get(n);return r?r.errors[e][t]??r.sums[e][t]:0}));let J=[];for(let e=0;e<u.length;e++)for(let t=0;t<f.length;t++){let n=ce(f[t].formula,(t,n)=>{if(n===null)return null;let r=A(n),i=f.findIndex(e=>e.item===r);return le(i>=0?q(e,i):ee(e,j.get(r)))});if(n===null)return null;J.push({expression:n,coords:ue(q(e,t),G)})}let ne=await r.evaluateBatch({values:de(te,G),formulas:J}),Y=s.map(()=>[]),X=u.map(()=>[]),re=(e,t,n,r)=>{p.forEach((n,r)=>{let i=x.indexOf(r);Y[r].push(r===d?t:i>=0?e.path[i]:n[e.exemplar]??0)}),X.forEach((e,t)=>{e.push(t===n?r:null)})};return H.forEach((e,t)=>{f.forEach(({item:n},r)=>{u.forEach((i,a)=>{let o=ne[a*f.length+r].getValueAt(t,0)??0;if((i.subtotal??`sum`)!==`sum`&&typeof o==`number`)for(let t=0;t<Math.round(o);t++)re(e,n,a,1);else re(e,n,a,o)})})}),{count:Y[0]?.length??0,ids:Y,values:X}})(e,t,n,r,a):void 0,p=s.filter(e=>!I(e)).map((e,t)=>({filter:e,index:t})).sort((e,t)=>(e.filter.evalOrder??-1)-(t.filter.evalOrder??-1)||e.index-t.index),m=(t.recordCount??0)+(f?.count??0),h,g=e.rowFields??[];for(let{filter:i}of p){let o=await Le(e,t,n,i.field,i.dataField,a,h,f,r);if(!o)continue;let s=new Set;for(let[e,t]of o.groups){let a=await Je(i.condition,t.totals,n,r);t.ids.forEach((t,n)=>{a[n]||s.add(`${e}|${t}`)})}if(s.size===0)continue;h??=new Uint8Array(m).fill(3);let c=o.outer.map(e=>o.records[e]),l=o.records[i.field],u=g.includes(i.field)?1:2;for(let e=0;e<m;e++){if(!(h[e]&u))continue;let t=``;for(let n=0;n<c.length;n++)t+=(n>0?`,`:``)+c[n][e];s.has(`${t}|${l[e]}`)&&(h[e]&=~u)}}let _=l&&r?await(async(e,t,n,r,i,a,o)=>{let s=d.peek(),c=fe(e,t);if(!s||!c)return null;let l=Ie(e,t,n,o,c.operands);if(!l)return null;let u=t=>(t??[]).map(t=>({field:t,form:t===Z?e.form??`compact`:e.fields?.[t]?.form??`compact`}));return ze(s,c,e,l.items,l.records,l.values,u(e.rowFields),u(e.columnFields),l.n,i,a,r)})(e,t,n,r,a,h,f):void 0;return{keep:a,...h?{records:h}:{},...f?{calculatedRecords:f}:{},..._?{fieldValues:_}:{}}},qe=(e,t)=>{let n=e.filters;if(!n)return e;let r=!1,i=n.map(e=>{let n=e.condition&&A(e.condition,t);return n===e.condition?e:(r=!0,{...e,condition:n})});return r?{...e,filters:i}:e},Je=async(e,t,n,r)=>{let i=t.length,a=new Uint8Array(i);if(i===0)return a;let o=new l;for(let e=0;e<i;e++)t[e]!==null&&o.setValueAt(e,0,t[e]);let s=!1;return await g({conditions:[e],runtime:n,calculation:r??null,values:o,coords:{rowStart:0,rowEnd:i-1,colStart:0,colEnd:0},onTrue:e=>{s=!0,a[e.rowIndex]=1},onFalse:()=>{s=!0},onBlank:e=>{s=!0;for(let n=0;n<i;n++)t[n]===null&&e(n,0)&&(a[n]=1)}}),s||a.fill(1),a},Ye=(e,t,n,r,a)=>{let s=e.fields?.[r],c=new Map;for(let e of s?.items??[])e.item!==void 0&&e.type===void 0&&e.name!==void 0&&c.set(e.item,e.name);let l=s?.numberFormat??t.fields?.[r]?.numberFormat,u=C(l,a),d=e=>l===void 0?C(h(t.fields?.[r],e),a):u,f=Array(n.length);for(let e=0;e<n.length;e++){let s=c.get(e);if(s!==void 0){f[e]=s;continue}let l=N(n[e]);l===null?f[e]=b:typeof l==`number`?f[e]=i(a,U(t.fields?.[r],e)?d(e):u,l):typeof l==`boolean`?f[e]=l?`TRUE`:`FALSE`:o.isError(l)?f[e]=l.getLabel():f[e]=String(l)}return f},Xe=e=>{let t=e.getCoords(),n=t.colEnd-t.colStart+1,r=t.rowEnd-t.rowStart,i=e.getWorksheet(),a=i.getRange({rowStart:t.rowStart,rowEnd:t.rowStart,colStart:t.colStart,colEnd:t.colEnd}).getValues()[0]??[],o=[];for(let e=0;e<n;e++){let n=a[e]??null,s=new J,c=new Uint32Array(r),l,u,d=!1,f=s.values;if(r>0){let n=i.getRange({rowStart:t.rowStart+1,rowEnd:t.rowEnd,colStart:t.colStart+e,colEnd:t.colStart+e});s.fill(n.getValuesRange(),c),l=Qe(n,r);let a=$e(n,t.rowStart+1,c,s.values);d=a.dates,u=a.dateIds,f=a.values}o.push({header:Ze(n),ids:c,values:f,numberFormat:l,dates:d,...u?{dateIds:u}:{}})}return{columns:o,recordCount:r}},Ze=e=>e==null?``:typeof e==`boolean`?e?`TRUE`:`FALSE`:o.isError(e)?e.getLabel():String(e),Qe=(e,t)=>{let n=[...e.getRegions(`numberFormat`)];if(n.length!==1||n[0].getRowCount()!==t)return;let r=n[0].getCell().getStyle().getNumberFormat();return r&&r!==`General`?r:void 0},$e=(e,t,n,r)=>{let i=[];for(let n of e.getRegions(`dateFormat`)){let{rowStart:e,rowEnd:r}=n.getCoords();i.push([e-t,r-t])}if(i.length===0)return{dates:!1,values:r};i.sort((e,t)=>e[0]-t[0]);let a=!1,o=!1;for(let e=0;e<n.length&&(!a||!o);e++)typeof r[n[e]]==`number`&&(et(i,e)?a=!0:o=!0);if(!a||!o)return{dates:a,values:r};let s=r.slice(),c=new Map;for(let e=0;e<n.length;e++){let t=n[e];if(typeof r[t]!=`number`||!et(i,e))continue;let a=c.get(t);a===void 0&&(a=s.length,s.push(r[t]),c.set(t,a)),n[e]=a}return{dates:!1,dateIds:new Set(c.values()),values:s}},et=(e,t)=>{let n=0,r=e.length-1;for(;n<=r;){let i=n+r>>1,[a,o]=e[i];if(t<a)r=i-1;else{if(!(t>o))return!0;n=i+1}}return!1},tt=e=>e==null?{t:`z`,v:0}:o.isError(e)?{t:`e`,v:e.getCode()}:e,nt=(e,t)=>(t&&typeof e==`number`?`date:`:``)+c(N(e)),rt=(e,t,n,r=!1)=>{let i=e.fields??[],a=w(e.items,i.length),o=/\smissingItemsLimit="0"/.test(e.rest??``),c=(e=>{let t=new Set;return e.map((e,n)=>{let r=e===``?`Field${n+1}`:e,i=r;for(let e=2;t.has(i.toLocaleLowerCase());e++)i=`${r}${e}`;return t.add(i.toLocaleLowerCase()),i})})(t.columns.map(e=>e.header)),l=new Map;i.forEach((e,t)=>{let n=e.name.toLocaleLowerCase();e.noRecords||l.has(n)||l.set(n,t)});let u=t.recordCount,d=i.map(()=>-1),f=i.map((e,t)=>a[t].map(()=>-1)),p=[],m=[],h=[],g=[],_=[],v=[],y=[],b=(e,t,n)=>{g[t]=n.items,v[t]=n.items.length,y[t]=!0,f[e]=((e,t)=>{let n=new Map;return t.forEach((e,t)=>{n.set(e,t)}),e.map((r,i)=>i===0?0:i===e.length-1?t.length-1:n.get(r)??-1)})(i[e].group.items,n.items)};t.columns.forEach((e,t)=>{let n=l.get(c[t].toLocaleLowerCase());n!==void 0&&(l.delete(c[t].toLocaleLowerCase()),d[n]=t);let x=new Int32Array(e.values.length).fill(-1),S=[],C=[],w=Array(u);for(let t=0;t<u;t++){let n=e.ids[t],r=x[n];r<0&&(r=x[n]=S.length,S.push(tt(e.values[n])),C.push(e.dates||!!e.dateIds?.has(n))),w[t]=r}let T=e=>n!==void 0&&(!!i[n].dates||U(i[n],e)),E=S.length,D=n===void 0?S.every(e=>typeof e==`number`||typeof e==`object`&&e?.t===`z`):!0===i[n].inline,O=[];if(n!==void 0&&D){let e=new Map;for(let t=0;t<E;t++)e.set(nt(S[t],C[t]),t);a[n].forEach((t,r)=>{f[n][r]=e.get(nt(t,T(r)))??-1})}else if(n!==void 0){let e=new Map;for(let t=0;t<E;t++)e.set(nt(S[t],C[t]),t);let t=new Set(i[n].calculatedItems?.map(e=>e.item));a[n].forEach((r,i)=>{if(t.has(i))return;let a=nt(r,T(i)),s=e.get(a);s!==void 0||o||T(i)||(s=S.length,S.push(r),C.push(T(i)),O.push(s),e.set(a,s)),f[n][i]=s??-1})}let k={name:c[t]};D&&(k.inline=!0),e.numberFormat!==void 0&&(k.numberFormat=e.numberFormat);let A=[],j=!1;S.forEach((e,t)=>{typeof e==`number`&&(C[t]?A.push(t):j=!0)}),A.length>0&&!j?k.dates=!0:A.length>0&&(k.dateItems=A),_[t]=k.dateItems?new Set(k.dateItems):void 0,O.length>0&&(k.unused=O);let M=n===void 0?void 0:i[n].rest;M&&(k.rest=M);let P=n===void 0?void 0:i[n].calculatedItems;P?.length&&(k.calculatedItems=P.map(({item:e,formula:t})=>{let r=S.length;return S.push(a[n][e]),f[n][e]=r,{item:r,formula:t}})),p.push(k),m.push([t,[[0,S]]]),h.push([t,[[0,w]]]),g.push(S),v.push(E),y.push(!1);let F=n===void 0?void 0:i[n].group;if(F?.range&&F.base===n){let e=se(F,S.slice(0,E).map(N),r);e?(k.group={...e,base:t},b(n,t,e)):f[n]=a[n].map(()=>-1)}else F&&!s(i[n])&&(k.group=F)}),i.forEach((e,t)=>{if(!e.noRecords)return;if(W(e))return d[t]=p.length,p.push(e),g.push([]),v.push(0),void y.push(!1);let n=e.group;if(!n)return;let i=d[n.base];if(i===void 0||i<0)return;let a=g[i],o,s=[];if(n.range)o=se(n,a.slice(0,v[i]).map(N),r);else{let e=it(n,f[n.base],a,p[i]);o=e.group,s=e.itemMap}if(!o)return;let c=p.length;d[t]=c,p.push({...e,group:{...o,base:i}}),g.push(o.items),_[c]=o.dateItems?new Set(o.dateItems):void 0,v.push(o.items.length),y.push(!1),n.range?b(t,c,o):f[t]=s}),p.forEach((e,t)=>{let n=e.group;if(n?.parent===void 0)return;let r=d[n.parent],{parent:i,...a}=n;r!==void 0&&r>=0?e.group={...n,parent:r}:s(e)?e.group=a:delete e.group,e.group&&!s(e)&&(e.group={...e.group,base:t})});let{cacheId:x,part:S,partFormats:C,fields:T,items:E,records:D,...O}=e;return{model:{...O,source:n??e.source,fields:p,items:m,records:h,recordCount:u},remap:{fields:d,items:f,newItems:g,usedCounts:v,inItemOrder:y,dateItems:_}}},it=(e,t,n,r)=>{let i=new Set,a=Array(n.length).fill(-1);(e.discrete??[]).forEach((e,n)=>{let r=t?.[n]??-1;r<0||(a[r]=e,i.add(e))});let o=[],s=[],c=new Set(e.dateItems),l=e.items.map((e,t)=>i.has(t)?(c.has(t)&&s.push(o.length),o.push(e),o.length-1):-1),u=a.map((e,t)=>e>=0?l[e]:((r.dates||U(r,t))&&s.push(o.length),o.push(n[t]),o.length-1)),{dateItems:d,...f}=e;return{group:{...f,items:o,discrete:u,...s.length>0?{dateItems:s}:{}},itemMap:l}},at=(e,t,n=!1,r=!1)=>{let i=(e,t)=>e===null?5:typeof e==`number`?t?3:0:typeof e==`string`?1:typeof e==`boolean`?2:4,a=i(e,n),o=i(t,r);return a===o?a===0||a===3?e-t:a===1?e.localeCompare(t,void 0,{sensitivity:`base`}):a===2?Number(e)-Number(t):a===4?e.getCode()-t.getCode():0:a-o},ot=(e,t)=>{let n=e.fields??[],r=t.newItems.length,i=e=>e<0?e:t.fields[e]??-1,a=e=>e<0||i(e)>=0,o=e.dataFields??[],s=[],c=[];o.forEach(e=>{if(!a(e.field))return void s.push(-1);s.push(c.length);let t={...e,field:i(e.field)};e.baseField!==void 0&&(a(e.baseField)?t.baseField=i(e.baseField):delete t.baseField),c.push(t)});let l=n.map(()=>null),u=[];for(let e=0;e<r;e++)u.push({});n.forEach((e,n)=>{let r=i(n);if(r<0)return;let a={...e};if(e.sort?.dataField!==void 0){let t=s[e.sort.dataField];a.sort=t>=0?{...e.sort,dataField:t}:{order:e.sort.order}}if(e.items){let{items:i,positions:o}=st(e,t.items[n],t.newItems[r],t.usedCounts[r],t.inItemOrder[r],t.dateItems[r]);a.items=i,l[n]=o}u[r]=a}),n.forEach((e,t)=>{let n=e.sort?.scope,r=i(t);if(!n||r<0||u[r].sort?.scope===void 0)return;let a=n.items.map(e=>({field:i(e.field),item:l[e.field]?.[e.item]??-1}));a.some(e=>e.field<0||e.item<0)?delete u[r].sort:u[r].sort={...u[r].sort,scope:{...n,items:a}}});let d=e=>{if(!e)return;let t=e.filter(a).map(i);return c.length<2&&(t=t.filter(e=>e!==-2)),t.length>0?t:void 0},f={...e,fields:u};Q(f,`rowFields`,d(e.rowFields)),Q(f,`columnFields`,d(e.columnFields)),Q(f,`dataFields`,c.length>0?c:void 0),o.forEach((e,t)=>{let n=s[t];if(n<0||e.baseField===void 0||typeof e.baseItem!=`number`)return;let r=l[e.baseField]?.[e.baseItem];r!==void 0&&r>=0&&(c[n].baseItem=r)});let p=(e.pageFields??[]).flatMap(e=>{if(!a(e.field))return[];let t={field:i(e.field)};if(e.item!==void 0){let n=lt(u[t.field].items??[],l[e.field]?.[e.item]??-1);n!==void 0&&(t.item=n)}return[t]});Q(f,`pageFields`,p.length>0?p:void 0);let m=(e.filters??[]).flatMap(e=>{if(!a(e.field))return[];let t={...e,field:i(e.field)};if(e.dataField!==void 0){let n=s[e.dataField];if(n===void 0||n<0)return[];t.dataField=n}return[t]});Q(f,`filters`,m.length>0?m:void 0);let h=e=>ut(e,i,a,l,s),g=(e.formats??[]).flatMap(e=>{let t=h(e.area);return t?[{...e,area:t}]:[]});Q(f,`formats`,g.length>0?g:void 0);let _=(e.conditionalFormats??[]).flatMap(e=>{let t=e.areas.flatMap(e=>{let t=h(e);return t?[t]:[]});return t.length>0?[{...e,areas:t}]:[]});return Q(f,`conditionalFormats`,_.length>0?_:void 0),f},Q=(e,t,n)=>{n===void 0?delete e[t]:e[t]=n},st=(e,t,n,r,i=!1,a)=>{let o=e.items??[],s=[],c=[],l=new Set;for(let e of o){if(!x(e)){c.push(s.length),s.push(e);continue}let n=t[e.item]??-1;if(n<0){c.push(-1);continue}l.add(n);let i={...e,item:n};n>=r&&!e.calculated?i.missing=!0:delete i.missing,c.push(s.length),s.push(i)}let u=[];for(let e=0;e<n.length;e++)l.has(e)||u.push(e);if(i){let t=e.sort?.dataField===void 0&&e.sort?.order===`descending`,n=!e.includeNewItemsInFilter&&o.some(e=>e.hidden),r=s.map((e,t)=>({item:e,at:t})),i=r.filter(e=>!x(e.item)),a=[...[...r.filter(e=>x(e.item)),...u.map(e=>({item:n?{item:e,hidden:!0}:{item:e},at:-1}))].sort((e,n)=>t?n.item.item-e.item.item:e.item.item-n.item.item),...i],l=new Map(a.map((e,t)=>[e.at,t]));return{items:a.map(e=>e.item),positions:c.map(e=>e<0?e:l.get(e)??-1)}}if(u.length===0)return{items:s,positions:c};let d=!e.includeNewItemsInFilter&&o.some(e=>e.hidden),f=e=>d?{item:e,hidden:!0}:{item:e};if(e.sort&&e.sort.dataField===void 0){let t=e.sort.order===`descending`,r=(e,t)=>at(E(e,n),N(n[t]),e.name===void 0&&a?.has(e.item),a?.has(t));for(let e of u){let n=f(e),i=s.findIndex(n=>x(n)&&(t?r(n,e)<0:r(n,e)>0));i<0&&(i=ct(s)),s.splice(i,0,n);for(let e=0;e<c.length;e++)c[e]>=i&&c[e]++}}else{let e=ct(s);s.splice(e,0,...u.map(f));for(let t=0;t<c.length;t++)c[t]>=e&&(c[t]+=u.length)}return{items:s,positions:c}},ct=e=>{let t=e.findIndex(e=>!x(e));return t<0?e.length:t},lt=(e,t)=>{if(!(t<0))for(let n=0;n<e.length;n++){let r=(t+n)%e.length,i=e[r];if(x(i)&&!i.missing)return r}},ut=(e,t,n,r,i)=>{let a={...e};if(e.field!==void 0){if(!n(e.field))return null;a.field=t(e.field)}if(e.references){let o=[];for(let a of e.references){if(!n(a.field))return null;let e={...a,field:t(a.field)};if(a.items&&!a.byPosition&&!a.relative){let t=a.field===-2?i:r[a.field];if(t){let n=a.items.map(e=>t[e]??-1);if(n.some(e=>e<0))return null;e.items=n}}o.push(e)}a.references=o}return a},dt=(e,t,n)=>{let r=e.fields??[],i=r[t]?.items??[],a=Array(i.length);n.forEach((e,t)=>{a[e]=t});let o={...e,fields:r.map((e,r)=>{if(r===t)return{...e,items:n.map(e=>i[e])};let o=e.sort?.scope;if(!o?.items.some(e=>e.field===t))return e;let s=o.items.map(e=>e.field===t?{...e,item:a[e.item]??e.item}:e);return{...e,sort:{...e.sort,scope:{...o,items:s}}}})};e.pageFields?.some(e=>e.field===t&&e.item!==void 0)&&(o.pageFields=e.pageFields.map(e=>e.field===t&&e.item!==void 0?{...e,item:a[e.item]}:e)),e.dataFields?.some(e=>e.baseField===t&&typeof e.baseItem==`number`)&&(o.dataFields=e.dataFields.map(e=>e.baseField===t&&typeof e.baseItem==`number`?{...e,baseItem:a[e.baseItem]??e.baseItem}:e));let s=r.map((e,n)=>n===t?a:null),c=(e.dataFields??[]).map((e,t)=>t),l=e=>ut(e,e=>e,()=>!0,s,c)??e;return e.formats&&(o.formats=e.formats.map(e=>({...e,area:l(e.area)}))),e.conditionalFormats&&(o.conditionalFormats=e.conditionalFormats.map(e=>({...e,areas:e.areas.map(l)}))),o},ft=(e,t,n,r)=>{let i=(e.fields??[])[n]?.items??[],a=T(t)[n]??[],o=t.fields?.[n],s=o?.group?.range!==void 0,c=e=>e.name===void 0&&U(o,e.item),l=i.map((e,t)=>({item:e,at:t})),u=l.filter(e=>x(e.item));u.sort((e,t)=>s?e.item.item-t.item.item:at(E(e.item,a),E(t.item,a),c(e.item),c(t.item))),r===`descending`&&u.reverse();let d=0,f=dt(e,n,l.map(e=>x(e.item)?u[d++]:e).map(e=>e.at));return{...f,fields:f.fields.map((e,t)=>t===n?{...e,sort:{order:r}}:e)}},pt=(n,r,i)=>{let a=n.fields?.[r]?.items?.[i];if(!a||!x(a))throw new e(t(`error.pivotTable.changePart`));return a},mt=(n,r,i,a,o)=>{let s=pt(n,i,a),c=n.fields[i].items,l=T(r)[i]??[],u=e=>{let t=N(l[e.item]);return t===null?b:B(t)};if(c.some((e,t)=>t!==a&&x(e)&&V(e.name??u(e),o)))throw new e(t(`error.pivotTable.itemNameExists`,{name:o}));let{name:d,...f}=s,p=o===u(s)?f:{...s,name:o};if(p.name===s.name)return n;let m={...n,fields:n.fields.map((e,t)=>t===i?{...e,items:c.map((e,t)=>t===a?p:e)}:e)},h=n.fields[i].sort;return h&&h.dataField===void 0?ft(m,r,i,h.order):m},ht=(e,t,n,r)=>{pt(e,t,n);let i=e.fields[t].items.map((e,t)=>t).filter(e=>e!==n);i.splice(r,0,n);let a=e.fields[t].sort;if(!a&&i.every((e,t)=>e===t))return e;let o=dt(e,t,i);return a?{...o,fields:o.fields.map((e,n)=>{if(n!==t)return e;let{sort:r,...i}=e;return i})}:o},gt=(n,r,i,a)=>{let o=B(a),s=n.fields,c=r.fields,l=n.dataFields??[],u=T(r),d=(e,t)=>{if(t.name!==void 0)return t.name;let n=N(u[e][t.item]);return n===null?b:B(n)},f=i=>{if(i.field!==void 0&&o===(s[i.field].name??c[i.field].name))return;let a=i.field===void 0?n:{...n,fields:s.map((e,t)=>t===i.field?{...e,name:`\0`}:e)};if(R(a,r,o,i.data)!==o)throw new e(t(`error.pivotTable.fieldNameExists`))};switch(i.kind){case`item`:{let{field:e,rank:t}=i;pt(n,e,t);let a=s[e].items.findIndex((n,r)=>r!==t&&x(n)&&V(d(e,n),o));return a>=0?ht(n,e,a,t):mt(n,r,e,t,o)}case`fieldCaption`:{let{field:e}=i;return f({field:e}),((e,t)=>({...n,fields:s.map((n,r)=>r===e?t(n):n)}))(e,t=>{let{name:n,...r}=t;return o===c[e].name?r:{...t,name:o}})}case`dataCaption`:{let{data:e}=i;return f({data:e}),{...n,dataFields:l.map((t,n)=>n===e?{...t,name:o}:t)}}case`rowHeader`:return{...n,rowHeaderCaption:o};case`columnHeader`:return{...n,columnHeaderCaption:o};case`grandTotal`:return{...n,grandTotalCaption:o};case`pageItem`:{let r=n.pageFields,a=r[i.page],c;if(!V(o,`(All)`)&&(c=(s[a.field].items??[]).findIndex(e=>x(e)&&V(d(a.field,e),o)),c<0))throw new e(t(`error.pivotTable.notAnItem`,{name:o}));let{item:l,...u}=a,f=c===void 0?u:{...a,item:c};return{...n,pageFields:r.map((e,t)=>t===i.page?f:e)}}}},_t=(e,t,n)=>rt({cacheId:0,fields:[]},e,t,n).model,vt=(e,t)=>t.some(t=>e.fields?.[t]?.inline)?{...e,fields:e.fields.map((e,n)=>{if(!e.inline||!t.includes(n))return e;let{inline:r,...i}=e;return i})}:e,yt=e=>[...e.rowFields??[],...e.columnFields??[],...(e.pageFields??[]).map(e=>e.field)].filter(e=>e>=0),bt=(e,t)=>{let n=e.fields[t],r=T(e)[t],i=r.map((e,t)=>t);s(n)||i.sort((e,t)=>at(N(r[e]),N(r[t]),U(n,e),U(n,t)));let a=new Set(n.calculatedItems?.map(e=>e.item)),o=new Set(n.unused);return[...i.map(e=>({item:e,...a.has(e)?{calculated:!0}:{},...o.has(e)?{missing:!0}:{}})),{type:`default`}]},xt=n=>{if(!(typeof n==`number`?a(n)!==void 0:n!==``&&r.isValidFormat(n)))throw new e(t(`error.pivotTable.notANumberFormat`,{name:String(n)}))},St=(n,r,i,a)=>{let o=a?.function??((e,t)=>O(e,t)===`number`?`sum`:`count`)(r.fields[i],T(r)[i]),s=z[o];if(!s)throw new e(t(`error.pivotTable.notAFunction`,{name:o}));let c=a?.name;if(c===void 0)c=R(n,r,`${s} of ${K(n,r,i)}`);else if(R(n,r,c)!==c)throw new e(t(`error.pivotTable.fieldNameExists`));let l={name:c,field:i,baseField:0,baseItem:0};return o!==`sum`&&(l.subtotal=o),a?.numberFormat!==void 0&&(xt(a.numberFormat),l.numberFormat=a.numberFormat),l},Ct=(n,r)=>{let i=n.fields??[],a=n=>{let r=i.findIndex(e=>V(e.name,n));if(r<0)throw new e(t(`error.pivotTable.notAField`,{name:n}));return r},o=new Map,s=(e,t)=>{for(let n of e??[]){let e=a(n);o.delete(e),o.set(e,t)}};s(r?.rows,`row`),s(r?.columns,`column`),s(r?.pages,`page`);let c=e=>[...o].filter(([,t])=>t===e).map(([e])=>e),l=[];for(let e of r?.values??[]){let{field:t,...r}=typeof e==`string`?{field:e}:e;l.push(St({dataFields:l},n,a(t),r))}let u=new Set(l.map(e=>e.field)),d=r?.form&&r.form!==`compact`?r.form:void 0,f=i.map((e,t)=>{let r={},i=o.get(t);return i&&(r.axis=i,r.items=bt(n,t)),u.has(t)&&(r.dataField=!0),d&&(r.form=d),e.dates&&e.numberFormat!==void 0&&(r.numberFormat=e.numberFormat),r}),p=c(`column`);l.length>1&&p.push(-2);let m={fields:f,style:{name:r?.style??`PivotStyleLight16`,showRowHeaders:!0,showColumnHeaders:!0,showRowStripes:!1,showColumnStripes:!1,showLastColumn:!0}},h=c(`row`);h.length>0&&(m.rowFields=h),p.length>0&&(m.columnFields=p);let g=c(`page`);return g.length>0&&(m.pageFields=g.map(e=>({field:e}))),l.length>0&&(m.dataFields=l),d&&(m.form=d),m},wt=(e,t)=>t.map(t=>{let n=t.sort?.scope;if(!n)return t;let r=((t.axis===p.Axis.Row?e.columnFields:t.axis===p.Axis.Column?e.rowFields:void 0)??[]).filter(e=>e!==-2);if(!n.items.every((e,t)=>r[t]===e.field)){let{sort:e,...n}=t;return n}let{subtotal:i,...a}=n;return{...t,sort:{...t.sort,scope:n.items.length<r.length?{...a,subtotal:!0}:a}}}),Tt=(n,r,i,a,o)=>{let s=p.Axis,c=r.fields?.[i],l=n.fields?.[i]?.axis??null;if(a===s.Values)throw new e(t(`error.pivotTable.valuesNotAnAxis`));if(a===null){if(l===null)return n}else if(c?.formula!==void 0||a===s.Page&&(c?.calculatedItems?.length??0)>0)throw new e(t(`error.pivotTable.fieldNotPlaceable`));let d=a?D(n,a).filter(e=>e!==i):[];if(o!==void 0&&(!Number.isInteger(o)||o<1||o>d.length+1))throw new e(t(`error.pivotTable.fieldPosition`));let f=(o??d.length+1)-1;if(a===l&&(o===void 0||D(n,a)[f]===i))return n;d.splice(f,0,i);let{rowFields:m,columnFields:h,pageFields:g,...v}=n,y={},b=e=>(e??[]).filter(e=>e!==i),x=a===s.Row?d:b(n.rowFields),S=a===s.Column?d:b(n.columnFields),C=a===s.Page?d.map(e=>n.pageFields?.find(t=>t.field===e)??{field:e}):(n.pageFields??[]).filter(e=>e.field!==i);x.length>0&&(y.rowFields=x),S.length>0&&(y.columnFields=S),C.length>0&&(y.pageFields=C);let w={...v,...y};a===s.Page&&l!==s.Page&&(w=u(w,i,()=>!0));let T={...n.fields?.[i]};a?T.axis=a:delete T.axis,a&&!T.items&&c&&(T.items=_(bt(r,i),T.subtotals)),a&&T.numberFormat===void 0&&c?.dates&&c.numberFormat!==void 0&&(T.numberFormat=c.numberFormat),a===s.Page&&T.items?.some(e=>e.hidden)&&(T.multipleItemSelection=!0);let E=(n.fields??[]).map((e,t)=>t===i?T:e);if(w={...w,fields:wt(w,E)},a===null&&n.formats?.some(e=>e.area.references?.some(e=>e.field===i))){let e=n.formats.filter(e=>!e.area.references?.some(e=>e.field===i)),{formats:t,...r}=w;w=e.length>0?{...r,formats:e}:r}return w},$=-2,Et=new Set([`percentOfTotal`,`percentOfRow`,`percentOfCol`,`percentOfParentRow`,`percentOfParentCol`,`percentOfParent`,`percentOfRunningTotal`,`percent`,`percentDiff`]),Dt=new Set([`index`,`rankAscending`,`rankDescending`]),Ot=new Set([...Et,...Dt,`runTotal`,`difference`]),kt=(e,t,n)=>{if(Dt.has(n))return Dt.has(t)?e:void 0;let r=(e=>j(e).replace(/"[^"]*"|\\./g,``).includes(`%`))(e);return Et.has(n)?Et.has(t)||r?e:10:Et.has(t)&&r?void 0:e},At=(e,t)=>{let n=e.references?.length===1?e.references[0]:null;return!1===e.outline&&n?.field===$&&n.items?.length===1&&n.items[0]===t&&n.selected===void 0&&!e.type&&!e.labelOnly&&e.dataOnly===void 0},jt=(e,t)=>{if(!e.formats?.some(e=>At(e.area,t)))return e;let n=e.formats.filter(e=>!At(e.area,t)),{formats:r,...i}=e;return n.length>0?{...i,formats:n}:i},Mt=(e,t,n)=>({...e,dataFields:e.dataFields.map((e,r)=>r===t?n(e):e)}),Nt=(e,t)=>{let{numberFormat:n,...r}=e;return t===void 0?r:{...r,numberFormat:t}},Pt=(e,t,n)=>{let r=new Set(t.map(e=>e.field)),i=(e.fields??[]).map((e,t)=>{let i=e;if(e.sort?.dataField!==void 0){let t=n[e.sort.dataField];if(t<0){let{sort:e,...t}=i;i=t}else t!==e.sort.dataField&&(i={...i,sort:{...e.sort,dataField:t}})}if(!!e.dataField!==r.has(t)){let{dataField:e,...n}=i;i=r.has(t)?{...n,dataField:!0}:n}return i}),{dataFields:a,filters:o,formats:s,conditionalFormats:c,...l}=e,u={...l,fields:i};t.length>0&&(u.dataFields=t);let d=(e.filters??[]).flatMap(e=>{if(e.dataField===void 0)return[e];let t=n[e.dataField];return t<0?[]:[{...e,dataField:t}]});d.length>0&&(u.filters=d);let f=e=>ut(e,e=>e,()=>!0,[],n),p=(e.formats??[]).flatMap(e=>{let t=f(e.area);return t?[{...e,area:t}]:[]});p.length>0&&(u.formats=p);let m=(e.conditionalFormats??[]).flatMap(e=>{let t=e.areas.flatMap(e=>f(e)??[]);return t.length>0?[{...e,areas:t}]:[]});return m.length>0&&(u.conditionalFormats=m),(e=>{let t=e.dataFields?.length??0,n=e.rowFields?.includes($),r=e.columnFields?.includes($),{valuesPosition:i,...a}=e;if(t<2&&(n||r)){let t=n?`rowFields`:`columnFields`,r=e[t],i=r.indexOf($),o=r.filter(e=>e!==$),s={...a,...i<o.length?{valuesPosition:i}:{}};return o.length>0?s[t]=o:delete s[t],s}if(t>=2&&!n&&!r){let t=e.valuesOnRows?`rowFields`:`columnFields`,n=[...e[t]??[]];return n.splice(Math.min(i??n.length,n.length),0,$),{...a,[t]:n}}return e})(u)},Ft=(e,t,n,r)=>{let i=Tt(e,t,n,null),a=i.dataFields?.length??0,o=St(i,t,n,r);return Pt(i,[...i.dataFields??[],o],Array.from({length:a},(e,t)=>t))},It=(e,t)=>{let n=e.dataFields??[],r=[],i=[];return n.forEach((e,n)=>{t!==void 0&&n!==t?(r.push(i.length),i.push(e)):r.push(-1)}),Pt(e,i,r)},Lt=(n,r,i)=>{let a=n.dataFields??[];if(!Number.isInteger(i)||i<1||i>a.length)throw new e(t(`error.pivotTable.valuePosition`));if(i-1===r)return n;let o=a.map((e,t)=>t).filter(e=>e!==r);o.splice(i-1,0,r);let s=[];return o.forEach((e,t)=>{s[e]=t}),Pt(n,o.map(e=>a[e]),s)},Rt=(e,t,n,r)=>{let i=G(e,t,n,r);return(e.dataFields[n].subtotal??`sum`)===r?e:Mt(e,n,e=>{let{subtotal:t,...n}=e,a={...n,name:i};return r!==`sum`&&(a.subtotal=r),a})},zt=(n,r,i,a)=>{let o=n.dataFields[i],s=o.showDataAs??`normal`,c=a?.kind??`normal`;if(a&&!Ot.has(a.kind))throw new e(t(`error.pivotTable.notAShowAs`,{name:a.kind}));let{showDataAs:l,baseField:u,baseItem:d,...f}=o,p={...f};c!==`normal`&&(p.showDataAs=c);let m=o.baseField,h=o.baseItem;if(a?.baseField!==void 0){let i=a.baseField,o=(r.fields??[]).findIndex((e,t)=>V(K(n,r,t),i));if(o<0)throw new e(t(`error.pivotTable.notAField`,{name:i}));o!==m&&(m=o,h=0)}if(a?.baseItem!==void 0){let i=m??0;if(V(a.baseItem,`(previous)`))h=`previous`;else if(V(a.baseItem,`(next)`))h=`next`;else{let o=n.fields?.[i]?.items?n:{fields:(n.fields??[]).map((e,t)=>t===i?{...e,items:bt(r,i)}:e)},s=M(o,r,i).findIndex(e=>e!==null&&V(e,a.baseItem));if(s<0)throw new e(t(`error.pivotTable.notAnItem`,{name:a.baseItem}));h=s}}if(m!==void 0&&(p.baseField=m),h!==void 0&&(p.baseItem=h),c===s)return p.baseField===o.baseField&&p.baseItem===o.baseItem?n:Mt(n,i,()=>p);let g=kt(o.numberFormat,s,c);return g===o.numberFormat?Mt(n,i,()=>p):Mt(jt(n,i),i,()=>Nt(p,g))},Bt=(e,t,n)=>{xt(n);let r=j(n),i=e.dataFields[t],a=e.formats?.[e.formats.length-1];if(j(i.numberFormat)===r&&a&&At(a.area,t)&&a.style.numberFormat===r)return e;let o=Mt(jt(e,t),t,e=>Nt(e,r===`General`?void 0:n));return{...o,formats:[...o.formats??[],{style:{numberFormat:r},area:{outline:!1,references:[{field:$,items:[t]}]}}]}},Vt=(n,r,i)=>{if(r===null)return It(n);let a=p.Axis;if(r!==a.Row&&r!==a.Column)throw new e(t(`error.pivotTable.fieldNotPlaceable`));let o=n.rowFields?.includes($)?a.Row:n.columnFields?.includes($)?a.Column:null;if(!o)throw new e(t(`error.pivotTable.fieldPosition`));let s=D(n,r).filter(e=>e!==$);if(i!==void 0&&(!Number.isInteger(i)||i<1||i>s.length+1))throw new e(t(`error.pivotTable.fieldPosition`));let c=(i??s.length+1)-1;if(r===o&&(i===void 0||D(n,r)[c]===$))return n;s.splice(c,0,$);let{rowFields:l,columnFields:u,valuesOnRows:d,...f}=n,m=D(n,r===a.Row?a.Column:a.Row).filter(e=>e!==$),h={...f},g=r===a.Row?s:m,_=r===a.Column?s:m;return g.length>0&&(h.rowFields=[...g]),_.length>0&&(h.columnFields=[..._]),r===a.Row&&(h.valuesOnRows=!0),h},Ht=(n,r,i)=>{if(i===(n.valuesCaption??`Values`))return n;let{valuesCaption:a,...o}=n,s={...o,valuesCaption:`\0`};if(R(s,r,i)!==i)throw new e(t(`error.pivotTable.fieldNameExists`));return i===`Values`?o:{...o,valuesCaption:i}};export{Ft as addPivotDataField,qe as anchorPivotPeriods,xt as assertNumberFormat,yt as axisFieldsOf,Ge as buildPivotView,Ke as evaluatePivotFilters,I as isItemFilter,Fe as layOutPivot,bt as listedItemsOf,Lt as movePivotDataField,Tt as movePivotField,ht as movePivotItem,Vt as movePivotValues,_t as newPivotCache,Ct as newPivotTable,Xe as readPivotSource,rt as refreshPivotCache,ot as remapPivotTable,It as removePivotDataField,mt as renamePivotItem,Ht as renamePivotValues,dt as reorderPivotItems,Rt as setPivotDataFunction,Bt as setPivotDataNumberFormat,zt as setPivotDataShowAs,ft as sortPivotItemsByLabel,gt as typeOverPivot,vt as withListedFields};
@@ -1 +0,0 @@
1
- import{Ni as e,S as t,Z as n,da as r,ft as i,h as a,ra as o,rt as s,u as c,wn as l}from"./CKdQfdZJGJFgnrr9.js";var u=Symbol(`sheetxl.formulaNode.internal`),d=Symbol(`sheetxl.formulaNode.value`),f=Symbol(`sheetxl.formulaNode.replaced`),p={canonical:!0},m=(e,t)=>{let n=e.inputs,a=null;if(n){let e=n.length;a=Array(e);for(let r=0;r<e;r++){let e=n[r];a[r]=e&&m(e,t)}}let o=((e,t)=>{let n=e.type,a=e.value;if(n===r.Named){let n=a,r=n?.nameId,o=n?.scope??null;return t&&(r=t.resolve(i.NamedFormula,r)?.toString()??r,o&&=t.resolve(i.Sheet,o)?.toString()??o),e.binding?.declaration&&e.binding.optional?{name:r,scope:o,optional:!0}:{name:r,scope:o}}if(n===r.TableReference){let e=typeof a==`string`?a:a?.tableId;return e?t?t.resolve(i.Table,e)?.toString()??e:e:``}if(!t)return a;switch(n){case r.Function:return t.resolve(i.Function,a,p)?.toString()??a;case r.TableColumn:return t.resolve(i.TableColumn,a)?.toString()??a;case r.Cell:{let e=a;if(e?.scope){let n=t.resolve(i.Sheet,e.scope)?.toString()??e.scope;return{...e,scope:n}}return a}case r.Error:{let e=a;if(e?.scope){let n=t.resolve(i.Sheet,e.scope)?.toString()??e.scope;return{...e,scope:n}}return a}default:return a}})(e,t);return{type:e.type,value:o,inputs:a,isReference:e.isReference,[u]:e,[d]:o}},h=(e,t,n)=>{let r=e.inputs,i;if(r){let t=r.length;for(let a=0;a<t;a++){let t=r[a];if(!t)continue;let o=h(t,e,n);o!==t&&(i||=[...r],i[a]=o)}}let a=e;i&&(a={...e,inputs:i});let o=n(a,t);return o==null||o===a?a:(o[u]===void 0&&a[u]!==void 0&&(o[f]=a[u]),o)},g=[`:`,`.:.`,`.:`,`:.`,` `],_=(i,o)=>{let u=i.type,d=i.value;switch(u){case r.Function:return c(String(d),o);case r.Infix:return s(d,o[0],o[1],i.isReference??g.includes(d));case r.Prefix:return n(d,o?.[0],i.isReference??d===`@`);case r.Postfix:return e(d,o?.[0],i.isReference??d===`#`);case r.Named:{let e=l(typeof d==`string`?d:d?.name),t=typeof d==`object`?d?.scope:null;return t&&(e.value={...e.value,scope:t}),typeof d==`object`&&!0===d?.optional&&(e.value={...e.value,optional:!0}),e}case r.Cell:return t(d);case r.TableReference:return{type:r.TableReference,value:d,inputs:o??null,isReference:!0};case r.TableSpecifier:return{type:r.TableSpecifier,value:d,image:`[${d}]`,inputs:null,isReference:!0};case r.TableColumn:{let e=typeof d==`string`&&d.startsWith(`[`)?d:`[${a(String(d))}]`;return{type:r.TableColumn,value:d,image:e,inputs:null,isReference:!0}}case r.String:case r.Number:case r.Boolean:return{type:u,value:d,inputs:null,isLiteral:!0};default:return{type:u,value:d,inputs:o??null,isReference:i.isReference}}},v=e=>{let t=e[u],n=e.inputs,r=null;if(n){let e=n.length;r=Array(e);for(let t=0;t<e;t++){let e=n[t];r[t]=e&&v(e)}}if(t){let n=e.value!==e[d],i=!1,a=t.inputs;if(r&&a&&r.length===a.length){for(let e=0;e<r.length;e++)if(r[e]!==a[e]){i=!0;break}}else i=r===null!=(a==null)||(r?.length??0)!==(a?.length??0);if(!n&&!i)return t;if(!n)return{...t,inputs:r};let o=_(e,r);return y(o,t),o}let i=_(e,r),a=e[f];return a&&y(i,a),i},y=(e,t)=>{o(e,t),e.type!==t.type&&e.image!==void 0&&(e.image=void 0)};function b(e,t){return m(e,t)}function x(e,t){return e&&typeof t==`function`?h(e,void 0,t):e}function S(e){let t=v(e);return!0===e.legacyIntersect&&(t.legacyIntersect=!0),t}export{b as n,x as r,S as t};
@@ -1 +0,0 @@
1
- import{t as e}from"./CQukCzhuewMuFOlO.js";import{$i as t,Ea as n,Oa as r,Rn as i,Vt as a,_i as ee,da as o,nr as s,or as c,ti as l}from"./CKdQfdZJGJFgnrr9.js";import{C as te,T as u,d as ne,h as re,n as ie,o as d,p as ae,s as f,t as p}from"./CvBPH5c-gnUG8Jen.js";import{n as m,r as h,t as g}from"./CUQsrLir5jYpnRPM.js";import{r as _,t as v}from"./DmIjTb4kKfUHxWaF.js";import{A as y,B as b,C as x,D as S,E as C,F as w,G as T,H as E,I as D,J as O,K as k,L as A,M as j,N as M,O as N,P,Q as F,R as I,S as L,T as R,U as z,V as B,W as V,X as H,Y as U,Z as W,_ as G,a as K,b as q,c as J,d as oe,f as se,g as ce,h as le,i as ue,j as de,k as fe,l as pe,m as me,n as he,nt as ge,o as _e,p as ve,q as ye,r as be,s as xe,t as Se,u as Ce,v as we,w as Te,x as Ee,y as De,z as Oe}from"./CRtk9ixuBWxhPfPU.js";var ke=[{declarations:P,category:`Database`},{declarations:k,category:`Date & Time`,enums:B},{declarations:V,category:`Engineering`},{declarations:I,category:`Engineering`},{declarations:y,category:`Engineering`},{declarations:E,category:`Engineering`},{declarations:T,category:`Engineering`},{declarations:j,category:`Engineering`},{declarations:Oe,category:`Financial`},{declarations:ye,category:`Information`,enums:M},{declarations:w,category:`Japanese`},{declarations:z,category:`Japanese`},{declarations:b,category:`Logical`},{declarations:A,category:`Lookup & Reference`,enums:D},{declarations:fe,category:`Math & Trig`,enums:O},{declarations:W,category:`Math & Trig`},{declarations:de,category:`Operators`},{declarations:H,category:`Statistical`},{declarations:S,category:`Statistical`},{declarations:x,category:`Testing`},{declarations:U,category:`Text`},{declarations:N,category:`Thai`},{declarations:R,category:`Web`},{declarations:Te,category:`Web`},{declarations:C,category:`Web`}],Y=[{declarations:_e,category:`Cube`},{declarations:we,category:`Financial`},{declarations:ve,category:`Financial`},{declarations:ce,category:`Financial`,enums:Ce},{declarations:he,category:`Financial`},{declarations:me,category:`Financial`},{declarations:G,category:`Financial`},{declarations:ue,category:`Financial`},{declarations:oe,category:`Financial`},{declarations:De,category:`Financial`},{declarations:K,category:`Financial`},{declarations:xe,category:`Financial`},{declarations:le,category:`Financial`},{declarations:se,category:`Financial`},{declarations:pe,category:`Financial`},{declarations:J,category:`Lookup & Reference`},{declarations:Se,category:`Lookup & Reference`},{declarations:q,category:`Statistical`},{declarations:L,category:`Statistical`},{declarations:be,category:`Statistical`},{declarations:Ee,category:`Text`}],X=null;function Z(t){return X||=(()=>{let t=new Map,n=[...ke,...Y,F];for(let{declarations:r,enums:i}of n){let n=new Map,a=t=>{let r=n.get(t);if(!r){let a=i?.[t];if(!a)return;r={id:t,type:a.s===`string`?e.String:e.Number,members:a.m},n.set(t,r)}return r};for(let e of Object.keys(r)){let{decl:n}=ge(e,r[e],a),i=new l(n);t.set(e.toUpperCase(),{getName:()=>e,getDeclaration:()=>i,isBuiltIn:()=>!0})}}return t})(),X.get(t.toUpperCase())??null}var Q=null,Ae=Object.freeze({rowStart:0,colStart:0,rowEnd:s,colEnd:n}),$=e=>Z(e);function je(e,t){if(typeof e!=`string`||e.length===0)return null;Q||=new _;let n=t?.anchor,r;try{let i=Q.parse(n?.rowIndex??0,n?.colIndex??0,e);if(i.errors.length>0||!i.root||i.root.type===o.Unparsed)return null;if(r=i.root,t?.normalize){let e=ie(r,$);typeof e!=`string`&&(r=e),r=ae(r,$),r=d(r,$),r=u(r),r=p(r),r=ne(r),r=te(r),r=f(r)}}catch{return null}return m(r,null)}function Me(e,t){return h(e,t)}function Ne(e,t){let n=re(d(u(g(e)),$)),i=t?.entireCoords??Ae,a=!0===t?.r1c1;return e=>a?r(n,i):c(n,i,e?.rowIndex??0,e?.colIndex??0)}function Pe(e){let n=e.trim();if(!n)return;let r;try{let e=v.shared().tokenize(n,!1);if(e.errors.length>0)return;r=e.tokens}catch{return}let o=0,s=0;if(r.length===2){let e=r[0].tokenType?.name;e===`MinOp`?(o=-1,s=1):e===`PlusOp`&&(o=1,s=1)}if(r.length-s!==1)return;let c=r[s],l=c.image;try{switch(c.tokenType?.name){case`NumberToken`:case`ScientificDigit`:case`DigitToken`:{let e=i(l).value;return o===0?e:o*e}case`StringToken`:return o===0?a(l).value:void 0;case`BooleanToken`:return o===0?t(l).value:void 0;case`LiteralError`:case`RefError`:return o===0?ee(l).value:void 0;default:return}}catch{return}}export{Z as getFunctionDeclaration,Ne as imager,je as parse,Pe as readFormulaLiteral,Me as transform};
@@ -1 +0,0 @@
1
- import{Z as e,u as t,y as n}from"./D4RZZdlItfrgQHcE.js";import{a as r}from"./BQTLEc84Eql61S2m.js";import{Ei as i,Fa as a,G as o,J as s,Pn as c,Vn as l,_ as u,aa as d,dt as f,hn as p,i as m,wr as h}from"./CKdQfdZJGJFgnrr9.js";var g=`SlicerStyleLight1`,_=`ascending`,v=`showItemsWithDataAtTop`,y=e(`op.setSlicerCaption`),b=e(`op.setSlicerStyle`),x=e(`op.setSlicerLayout`),S=e(`op.setSlicerSort`),C=e(`op.selectSlicerItems`),w=c.BuiltInSelectorNames.Display,T=Object.freeze({selector:w,scope:`column`}),E=Object.freeze({transactional:!1}),D=class extends r{constructor(e){let t=s(e.json?.source)?.column??e.json?.pivot?.sourceName??``,n=e.name;!n&&e.getMovable&&(n=t||null),super({...e,name:n}),this._formula=null,this._wired=null,this._binding=null,this._lossPending=!1,this._pivotTables=null,this._pivotBinding=null,this._columnName=t;let r=e.json;r&&this._updateState({data:{...r}}),r?.source&&this._addWatch(r.source,e=>{this._formula=e.formula,this._wired??=e.formula.getExpression(),this._checkSource(!1)})}getType(){return`slicer`}getTypeDescription(){return`Slicer`}getDefaultAnchorType(){return o.Type.Absolute}getSourceName(){return this._data()?.pivot?.sourceName??this._getColumnName()}getTable(){return this._data()?.pivot?this._getPivotTables()?.[0]??null:this._resolve()?.table??null}getColumn(){return this._resolve()?.column??null}getPivotTables(){return this._getPivotTables()??A}getPivotField(){let e=this._getPivotTables()?.[0];if(!e)return null;let t=h(e._getCache(),this.getSourceName());return t<0?null:e.getFields()[t]??null}_getSource(){let e=this._data()?.source??``,t=this._formula?.getExpression()??null;return t===null||t===this._wired?e:t}setName(e){let r=this._getWorkbook();if(r&&a(r,e,this)!==e)throw new t(n(`error.slicer.nameTaken`,{name:e}));return super.setName(e)}getCaption(){return this._data()?.caption??this._getColumnName()}setCaption(e,t){return this._set({caption:e??void 0},y,t)}isShowCaption(){return!0!==this._data()?.hiddenCaption}setShowCaption(e,t){return this._set({hiddenCaption:!e||void 0},y,t)}getCacheName(){return this._data()?.cacheName||(p(this._getWorkbook()).get(this)??u(this._getColumnName()))}getStyle(){return this._data()?.style??g}setStyle(e,t){return this._set({style:e&&e!==g?e:void 0},b,t)}getSortOrder(){return this._data()?.sortOrder??_}setSortOrder(e,r){if(e===`dataSource`&&this._data()?.pivot)throw new t(n(`error.slicer.pivotSortOrder`));return this._set({sortOrder:e===_?void 0:e},S,r)}getCrossFilter(){return this._data()?.crossFilter??v}setCrossFilter(e,t){return this._set({crossFilter:e===v?void 0:e},S,t)}getColumnCount(){return this._data()?.columnCount??1}setColumnCount(e,t){let n=Math.max(1,Math.trunc(e));return this._set({columnCount:n===1?void 0:n},x,t)}getRowHeight(){return this._data()?.rowHeight??27}setRowHeight(e,t){let n=Math.max(1,e);return this._set({rowHeight:n===27?void 0:n},x,t)}isLockedPosition(){return!0===this._data()?.lockedPosition}setLockedPosition(e,t){return this._set({lockedPosition:e||void 0},x,t)}isFilterCleared(){if(this.isITimeline){let e=this._timelineField();return!e?.table._getModel()?.filters?.some(t=>t.field===e.field&&t.dataField===void 0)}return this._data()?.pivot?this._getPivotItems()?.items.every(e=>e.isSelected)??!0:!this.getColumn()?.getFilter()?.getCondition()}async getItems(){let e=this._data()?.pivot;if(e?.timeline)return O;if(e){let t=this.getCrossFilter();return(this._getPivotItems()?.items??k).flatMap(n=>{if(t===`none`&&!n.hasData||e.tabular?.hideMissing&&n.missing)return[];let{id:r,missing:i,...a}=n;return[a]})}let t=this.getColumn()?.getFilter();if(!t)return O;let r=await t.getItems(T),i=t.getCondition(),a=i?function(e,t){let n=e.toJSON();if(n.operator!==c.BuiltInOperatorNames.InSet)return()=>!1;let r=n.param??{},i=new Set,a=r.items??[];for(let e=0;e<a.length;e++)a[e]!==null&&i.add(String(a[e]).toLowerCase());let o=r.dateGroups??[],s=t.dates?.[t.dates.length-1]??null;return e=>{if(e<0)return!0===r.blank;if(i.has(t.items[e].text.toLowerCase()))return!0;if(!s||o.length===0)return!1;let n=null;for(let t=0;t<s.runs.length&&!n;t++){let r=s.runs[t];r.min<=e&&e<=r.max&&(n=r.value??null)}if(!n)return!1;for(let e=0;e<o.length;e++)if(N(o[e],n))return!0;return!1}}(i,r):null,o=[];for(let e=0;e<r.items.length;e++){let t=r.items[e],n=!0===t.passesOthers;o.push({item:{key:t.text,name:t.text,value:t.value,hasData:n,isSelected:!a||(n?t.checked:a(e))},firstRow:t.firstRow})}let s=this.getSortOrder();if(s===`dataSource`)o.sort((e,t)=>e.firstRow-t.firstRow);else{let e=t.getRange().getWorksheet().getRuntime().getLocaleProfile(),n=s===`descending`?-1:1;o.sort((t,r)=>n*(m.compare(t.item.value,r.item.value,e)||m.compare(t.item.key,r.item.key,e)))}let l=null;if(r.hasBlanks){let e=!0===r.blanksPassOthers;l={key:j,name:n(`slicer.blankItem`),value:null,hasData:e,isSelected:!a||(e?r.blanksChecked:a(-1))}}let u=[],d=this.getCrossFilter();if(d===`showItemsWithNoData`){for(let e=0;e<o.length;e++)u.push(o[e].item);return l&&u.push(l),u}for(let e=0;e<o.length;e++)o[e].item.hasData&&u.push(o[e].item);if(l?.hasData&&u.push(l),d===`none`)return u;for(let e=0;e<o.length;e++)o[e].item.hasData||u.push(o[e].item);return l&&!l.hasData&&u.push(l),u}async getItem(e){let t=await this.getItems();for(let n=0;n<t.length;n++)if(t[n].key===e)return t[n];return null}async selectItems(e,t){if(this.isITimeline)return this;if(this._data()?.pivot){let n=this._getPivotItems()?.items;if(!n)return this;let r=new Set(e),i=new Set(n.flatMap(e=>r.has(e.key)?[e.id]:[]));return await this._showPivotItems(i.size===0||i.size===n.length?null:i,t),this}let n=this.getColumn()?.getFilter();if(!n)return this;if(!e||e.length===0)return this.clearFilters(t);let r=await n.getItems(T),i=new Set(e),a=r.dates?.[r.dates.length-1]??null,o=a&&a.runs.length>0?a.runs[a.runs.length-1].max:-1,s=[],l=[],u=!0,d=0;for(let e=0;e<r.items.length;e++){if(!i.has(r.items[e].text)){u=!1;continue}if(e>o){s.push(r.items[e].text);continue}for(;a.runs[d].max<e;)d++;let t=a.runs[d].value;t&&l[l.length-1]!==t&&l.push(t)}let f=r.hasBlanks&&i.has(j);if(r.hasBlanks&&!f&&(u=!1),u&&!r.truncated)return this.clearFilters(t);let p={items:s};return l.length>0&&(p.dateGroups=l),f&&(p.blank=!0),await n.setCondition({selector:w,operator:c.BuiltInOperatorNames.InSet,param:p},!1,{description:C,...t}),this}async clearFilters(e){return this.isITimeline?this.setDateRange(null,e):this._data()?.pivot?(await this._showPivotItems(null,e),this):(await this.getColumn()?.getFilter()?.delete(e),this)}addListeners(e,t){let n=super.addListeners(e,t);if(this._data()?.pivot)return this._bindPivot(),n;if(!this._binding){let e=this._resolve();e&&this._bind(e)}return n}toJSON(e){let t=this._data();if(!t)return null;if(t.pivot){let e=this._getPivotTables();if(!e)return t;let n={...t.pivot,tables:e.map(e=>({sheet:e.getWorksheet().getName(),name:e.getName()}))};return n.tabular&&e.length>0&&(n.cacheId=e[0].getCacheId()),{...t,pivot:n}}let n=this._getSource();return n?{...t,source:n}:t}get isISlicer(){return!0}get isITimeline(){return this._data()?.pivot?.timeline!==void 0}getDateRange(){let e=this._timelineField(),t=e?.table._getModel();return t?l(t,e.field):null}async setDateRange(e,t){let n=this.isITimeline?this._getPivotTables()??[]:[],r=this._getWorkbook();if(!r||n.length===0)return this;let i=this.getSourceName();return await r.doBatch(async()=>{for(let t of n){let n=h(t._getCache(),i);n>=0&&await t._setDateRange(n,i,e)}},{description:C,...t}),this}_getTimelineState(){let e=this._data()?.pivot;if(!e?.timeline||!e.tabular)return null;let t=this._timelineField();if(t){let e=t.table._getModel(),n=t.table._getCache();return{cacheId:t.table.getCacheId(),range:e?l(e,t.field):null,filtered:!!e?.filters?.some(e=>e.field===t.field&&e.dataField===void 0),dates:d(n,t.field)}}if(e.cacheId===void 0)return null;let n=this._getWorkbook()?._getPivotCache?.(e.cacheId)?.toJSON()??null,r=h(n,e.sourceName);return{cacheId:e.cacheId,range:null,filtered:!1,dates:n&&r>=0?d(n,r):null}}_timelineField(){if(!this.isITimeline)return null;let e=this._getPivotTables()?.[0],t=e?h(e._getCache(),this.getSourceName()):-1;return t>=0?{table:e,field:t}:null}get[Symbol.toStringTag](){return`[Slicer]`}toString(){return this.getTypeDescription()}_attach(){this._checkSource(!0)}_getPivotTables(){if(!this._data()?.pivot)return null;if(!this._pivotTables){let e=this._getWorkbook();if(!e)return null;this._holdPivotTables((t,n)=>e.getWorksheets().getByName(t)?.getPivotTables().getByName(n)??null)}return this._pivotTables.filter(e=>!e.isDeleted())}_holdPivotTables(e){let t=this._data()?.pivot;if(!t)return;let n=[];for(let r=0;r<t.tables.length;r++){let i=e(t.tables[r].sheet,t.tables[r].name);i&&!n.includes(i)&&n.push(i)}this._pivotTables=n}_getPivotItems(){let e=this._data()?.pivot;if(!e?.tabular||e.timeline)return null;let t=this._getPivotTables()?.[0],n=t?t.getCacheId():e.cacheId;if(n===void 0)return null;let r=this._getWorkbook(),a=t?t._getModel():{},o=t?t._getCache():r?._getPivotCache?.(n)?.toJSON()??null,s=h(o,e.sourceName),c=(t?.getWorksheet()??this.getMovable()?.getRange().getWorksheet())?.getRuntime();return!a||!o||s<0||!c?null:{cacheId:n,items:i(a,o,s,this.getSortOrder(),this.getCrossFilter(),c.getLocaleProfile())}}async _showPivotItems(e,t){let n=this._getPivotTables()??[],r=this._getWorkbook();if(!r||n.length===0)return;let i=this.getSourceName();await r.doBatch(async()=>{for(let t of n){let n=h(t._getCache(),i);n>=0&&await t._showSlicerItems(n,e)}},{description:C,...t})}_bindPivot(){let e=this._getPivotTables()??[],t=this._pivotBinding;if(t&&t.tables.length===e.length&&t.tables.every((t,n)=>t===e[n]))return;this._unbindPivot();let n=()=>{this._notify(`onSelectionChange`),this._notify(`onItemsChange`)};this._pivotBinding={tables:[...e],removes:e.map(e=>e.addListeners({onAnyChange:n,onDelete:n},E))}}_unbindPivot(){let e=this._pivotBinding;if(e){this._pivotBinding=null;for(let t of e.removes)t()}}_data(){return this._getState()?.data??null}_getWorkbook(){try{return this.getMovable()?.getRange().getWorksheet().getWorkbook()??null}catch{return null}}_resolve(){if(this._closed)return null;let e=s(this._getSource());if(!e)return null;let t=f(this._getWorkbook(),e.table),n=t?.getColumnByName(e.column)??null;return n?(this._columnName=n.getName(),{table:t,column:n}):null}_getColumnName(){return this._resolve()?.column.getName()??this._columnName}_checkSource(e){if(this._closed||this.isDeleted()||this._data()?.pivot)return;let t=this._resolve();if(t)return void this._bind(t);let n=this._getTransactions();n.isRestoring()||(n.isOpenTransaction()?this.delete():e&&!this._lossPending&&(this._lossPending=!0,queueMicrotask(()=>{if(this._lossPending=!1,this._closed||this.isDeleted()||n.isOpenTransaction()||n.isRestoring())return;let e=this._resolve();e?this._bind(e):n.amend(n.getCurrentCommit(!1).getId(),()=>{this.delete()})})))}_bind(e){let t=e.table;if(this._binding?.table!==t){this._unbind();let e=()=>{this._checkSource(!0)};this._binding={table:t,removeTable:t.addListeners({onFilterChange:()=>{this._notify(`onSelectionChange`)},onAnyChange:()=>{this._checkSource(!0),this._bindRange(!0)},onAnchorCoordsChange:()=>{this._bindRange(!0)},onDelete:e},E),coords:null,removeRange:null}}this._bindRange(!1)}_bindRange(e){let t=this._binding;if(!t||this._closed)return;let n=this.getColumn()?.getFilter()?.getRange()??null,r=n?n.getCoords():null;(r&&t.coords?r.rowStart!==t.coords.rowStart||r.rowEnd!==t.coords.rowEnd||r.colStart!==t.coords.colStart||r.colEnd!==t.coords.colEnd:r!==t.coords)&&(t.removeRange?.(),t.removeRange=n?.addListener(()=>{this._notify(`onItemsChange`)},{ignoreAddressChanges:!0,...E})??null,t.coords=r,e&&this._notify(`onItemsChange`))}_unbind(){let e=this._binding;e&&(this._binding=null,e.removeTable(),e.removeRange?.())}_notify(e){this._closed||this.isDeleted()||(this._emitter.notify(e),this._emitter.notify(`onAnyChange`))}_set(e,t,n){this._protectionCheck(t);let r=this._data();if(!r)return this;let i={...r,...e};for(let t in e)i[t]===void 0&&delete i[t];return this._updateState({data:i},{...n,description:t},[`onAnyChange`]),this}_processDelete(){this._unbind(),this._unbindPivot();let e=this._data()?.pivot?.tabular?this._getPivotTables()??[]:[];super._processDelete();for(let t of e)t._relayForSlicers?.()}_processRestoreOrRevert(e,t){if(super._processRestoreOrRevert(e,t),this.isDeleted())return void this._unbind();let n=this._resolve();n&&this._bind(n)}close(){this._unbind(),this._unbindPivot(),super.close()}},O=Object.freeze([]),k=Object.freeze([]),A=Object.freeze([]),j=``,M=[`year`,`month`,`day`,`hour`,`minute`,`second`];function N(e,t){for(let n=0;n<M.length;n++){let r=M[n];if(e[r]!==t[r])return!1;if(r===e.group)return!0}return!0}export{D as Slicer};
@@ -1 +0,0 @@
1
- import{t as e}from"./HclGiUj8dZXDFmoM.js";async function t(){try{return(await e(async()=>{let{default:e}=await import(`./DzlbsQ0qqdQEl80f.js`);return{default:e}},[],import.meta.url)).default}catch{let e=`@0.8.0-beta.25`;return e!==`@local`&&e!==`@0.0.0`||(e=``),async function(e){let t=await fetch(e);if(!t.ok)throw Error(`Unable to load script enum runtime (${t.status}) from ${e}.`);return t.json()}(`https://cdn.jsdelivr.net/npm/@sheetxl/sdk${e}/types/scripting-enums.json`)}}export{t as loadEnumManifest};
@@ -1 +0,0 @@
1
- import{I as e}from"./D4RZZdlItfrgQHcE.js";import{mt as t}from"./COL9dj40ytErlGak.js";import{i as n,n as r,r as i,s as a,t as o}from"./CQukCzhuewMuFOlO.js";import{$i as s,A as c,Ca as l,Da as u,Et as d,Nn as f,Ot as p,P as m,St as h,Ur as g,Xn as _,Yi as v,Z as y,_n as ee,ct as b,da as x,dn as te,fi as S,ft as C,ht as w,ir as ne,k as T,oi as E,ot as D,qt as O,ra as k,st as A,tt as re,un as j,wn as M,yi as ie}from"./CKdQfdZJGJFgnrr9.js";var ae=(e,t)=>e+t,oe=(e,t)=>e-t,se=(e,t)=>d(e+t,e),ce=(e,t)=>d(e-t,e),le=(e,t)=>m(e*t),ue=(e,t)=>t===0?n.BuiltIn.Div0:m(e/t),de=(e,t)=>{if(e===0){if(t<0)return n.BuiltIn.Div0;if(t===0)return NaN}if(e<0){if(Number.isInteger(t)&&Math.abs(t)<=4294967294)return m(e**t);let n=Number((1/t).toPrecision(15));return Number.isInteger(n)&&Math.abs(n%2)===1?m(-((-e)**t)):NaN}return m(e**t)},fe=(e=``,t=``)=>{e===null&&(e=``),t===null&&(t=``);let n=typeof t;typeof e==`boolean`&&(e=S(e)),n===`boolean`&&(t=S(t));let r=``+e+t;return r.length>i.MAX_TEXT_LENGTH?r.slice(0,i.MAX_TEXT_LENGTH):r},pe=(e,t=null,n=null)=>e.compare(t,n)===0,me=(e,t=null,n=null)=>e.compare(t,n)!==0,he=(e,t=null,n=null)=>e.compare(t,n)>0,ge=(e,t=null,n=null)=>e.compare(t,n)>=0,_e=(e,t=null,n=null)=>e.compare(t,n)<0,ve=(e,t=null,n=null)=>e.compare(t,n)<=0,N={type:o.Number,coerce:[o.Boolean,o.String],onError:`value`,misalignValue:n.BuiltIn.NA},ye={type:o.String,coerce:[o.Boolean,o.Number],onError:`value`,misalignValue:n.BuiltIn.NA},be={onError:`value`,misalignValue:n.BuiltIn.NA},P=e=>typeof e==`object`&&e&&!0===e.isIReferenceRange&&e.size===1?e.getValueAt(0,0)??null:e,F=(e,t,r,i)=>{if(t!==null&&t.colStart!==void 0&&(t=e.getValueAt(t.rowStart,t.colStart,t.scope))&&n.isError(t))return t;if(r!==null&&r.colStart!==void 0&&(r=e.getValueAt(r.rowStart,r.colStart,r.scope))&&n.isError(r))return r;if(t=P(t),r=P(r),typeof t==`number`&&typeof r==`number`)return i(t,r);let a,s;if(t?.isIRange?a=t:r?.isIRange&&(s=r),!a&&!s){let a=e.getRuntime();return t=p(a,t,l(t,!0),o.Number,!0),r=p(a,r,l(r,!0),o.Number,!0),t&&n.isError(t)?t:r&&n.isError(r)?r:i(t,r)}let c=!a,u=c?t:r;return(a??s).broadcast(u,(t,r)=>t&&n.isError(t)?t:r&&n.isError(r)?r:j(c?i(r,t):i(t,r),e),N).fillEmpty(0)},I=(e,t,i,a)=>{if(f(t)||f(i)||r(t)||r(i))return n.BuiltIn.Value;if(t!==null&&t.colStart!==void 0&&(t=e.getValueAt(t.rowStart,t.colStart,t.scope))&&n.isError(t))return t;if(i!==null&&i.colStart!==void 0&&(i=e.getValueAt(i.rowStart,i.colStart,i.scope))&&n.isError(i))return i;let o,s;t=P(t),i=P(i);let c=!1;return t?.isIRange?(o=t,s=i):i?.isIRange&&(o=i,s=t,c=!0),o?o.broadcast(s,(t,r)=>t&&n.isError(t)?t:r&&n.isError(r)?r:(t=L(t),r=L(r),c?a(e,r,t):a(e,t,r)),be):n.isError(t)?t:n.isError(i)?i:a(e,L(t),L(i))},L=e=>!0===e?.isIRichData?e.toPrimitive?.()??e:e,xe=(e,t,r)=>{if(r??=0,r!==null&&r.colStart!==void 0&&(r=e.getValueAt(r.rowStart,r.colStart,r.scope))&&n.isError(r))return r;r=P(r);let i,a=1;if(t===`+`)return r;if(t!==`-`)throw new n.Value(`Unrecognized prefix: ${t}`);if(a=-a,r?.isIRange&&(i=r),!i){let t=e.getRuntime();return typeof(r=p(t,r,l(r,!0),o.Number,!0))==`number`?r*a:n.BuiltIn.Value}return i.broadcast(a,(e,t)=>e&&n.isError(e)?e:t&&n.isError(t)?t:le(e,t),N)},R=e=>e.getCode()<=n.Code.NA?e:n.BuiltIn.Value,z=(e,t,r,i,a)=>{if(n.isError(t))return R(t);if(r&&n.isError(r))return R(r);if(!t)return n.BuiltIn.Ref;if(t.isIReferenceRange&&r&&!r.isIReferenceRange?r=e.getReference(r):r&&r.isIReferenceRange&&t&&!t.isIReferenceRange&&(t=e.getReference(t)),t.isIReferenceRange&&(t=t.getCoords()),t.colStart===void 0||(r.isIReferenceRange&&(r=r.getCoords()),r.colStart===void 0))return n.BuiltIn.Value;let o=t.scope?a!==`either`||r.scope?null:t:r;if(o?.scope){let t=e.getReference(o);if(n.isError(t))return t;if(e.getSheetIndex()!==e.getSheetIndex(t))return n.BuiltIn.Value}let s=i(t,r);return n.isError(s)?s:s?e.getReference(s):n.BuiltIn.Null},Se={"+":(e,t,n)=>F(e,t,n,ae),"-":(e,t,n)=>F(e,t,n,oe),"*":(e,t,n)=>F(e,t,n,le),"/":(e,t,n)=>F(e,t,n,ue),"^":(e,t,n)=>F(e,t,n,de)," ":(e,t,n,r)=>z(e,t,n,A,`either`),":":(e,t,n,r)=>z(e,t,n,O,`start`),".:.":(e,t,n,r)=>{let i=z(e,t,n,O,`start`);return e.getFunction(`TRIMRANGE`).execute(i,3,3)},".:":(e,t,n,r)=>{let i=z(e,t,n,O,`start`);return e.getFunction(`TRIMRANGE`).execute(i,1,1)},":.":(e,t,n,r)=>{let i=z(e,t,n,O,`start`);return e.getFunction(`TRIMRANGE`).execute(i,2,2)},"&":(e,t,r)=>((e,t,r,i)=>{if(t!==null&&t.colStart!==void 0&&(t=e.getValueAt(t.rowStart,t.colStart,t.scope))&&n.isError(t))return t;if(r!==null&&r.colStart!==void 0&&(r=e.getValueAt(r.rowStart,r.colStart,r.scope))&&n.isError(r))return r;if(t=P(t),r=P(r),typeof t==`string`&&typeof r==`string`)return i(t,r);let a,s;if(t?.isIRange?a=t:r?.isIRange&&(s=r),!a&&!s){let a=e.getRuntime();return t=p(a,t,l(t,!0),o.String,!1),r=p(a,r,l(r,!0),o.String,!1),n.isError(t)?t:n.isError(r)?r:i(t,r)}let c=!a,u=c?t:r;return(a??s).broadcast(u,(e,t)=>e&&n.isError(e)?e:t&&n.isError(t)?t:c?i(t,e):i(e,t),ye)})(e,t,r,fe),"=":(e,t,n)=>I(e,t,n,pe),"<>":(e,t,n)=>I(e,t,n,me),">":(e,t,n)=>I(e,t,n,he),"<":(e,t,n)=>I(e,t,n,_e),">=":(e,t,n)=>I(e,t,n,ge),"<=":(e,t,n)=>I(e,t,n,ve)},Ce={"+":(e,t,n)=>F(e,t,n,se),"-":(e,t,n)=>F(e,t,n,ce)},we={"-":(e,t)=>xe(e,`-`,t),"+":(e,t)=>xe(e,`+`,t),"@":(e,t)=>{if(!t||!t.isIRange)return t;let r=t;if(!t.isIReferenceRange)return r.getValueAt(0,0);let i=t.getCoords(),a=r.getRowCount(),o=r.getColumnCount(),s=e.getRow()-i.rowStart,c=e.getColumn()-i.colStart,l=s>=0&&s<a,u=c>=0&&c<o;return l&&u?r.getValueAt(s,c):l&&o===1?r.getValueAt(s,0):u&&a===1?r.getValueAt(0,c):a===1&&o===1?r.getValueAt(0,0):n.BuiltIn.Value}},Te={"%":(e,t)=>F(e,t,100,ue),"#":(e,t)=>n.isError(t)?R(t):t?(t.isIReferenceRange&&(t=t.getCoords()),t.colStart===void 0?n.BuiltIn.Value:t.rowStart!==t.rowEnd||t.colStart!==t.colEnd?n.BuiltIn.Ref:e.getSpillAt(t.rowStart,t.colStart,t.scope)||n.BuiltIn.Ref):n.BuiltIn.Ref};function B(e,t){for(let n=e.length-1;n>=0;n--)if(e[n].type===t)return e[n]}var Ee=class{constructor(){this.referenceIndices=[],this.rootReferences=new Set,this.cells=new Map,this.references=new Map,this.names=new Map}processNode(e,t){let n=e.type;if(e.isReference){let t={node:e,index:this.references.size,op:null,value:null,inputs:null};if(this.references.set(e,t),n===x.Cell){let n=e.value;n.$colIndex&&(t.hasHorizontalAbs=!0),n.$rowIndex&&(t.hasVerticalAbs=!0),t.value=this.cells.size,this.cells.set(e,this.cells.size),this.rootReferences.add(t),e.referenceIndex=this.referenceIndices.length,this.referenceIndices.push(t.index);return}if(n===x.Infix||n===x.Prefix||n===x.Postfix||n===x.List){let n=e.inputs||[],r=n.length,i=e.value;t.op=i;let a=c(r);t.inputs=a;for(let e=0;e<r;e++){let r=n[e],i=this.references.get(r);i?(i.hasHorizontalAbs&&(t.hasHorizontalAbs=!0),i.hasVerticalAbs&&(t.hasVerticalAbs=!0),a[e]=i.index):a[e]=-1,i&&this.rootReferences.delete(i)}if(this.rootReferences.add(t),it.includes(i)){let r=n[0],i=!!r&&r.type===x.Cell,a=n[1],o=!!a&&a.type===x.Cell;i&&o&&a.referenceIndex!==void 0&&r.referenceIndex!==void 0&&(this.referenceIndices.splice(a.referenceIndex,1),a.referenceIndex=r.referenceIndex,e.referenceIndex=r.referenceIndex,this.referenceIndices[r.referenceIndex]=t.index)}else i===`#`&&n[0]&&(e.referenceIndex=n[0].referenceIndex);return}if(n===x.Error||n===x.Named){let r=n===x.Named?e.value.nameId:g(e.value),i=this.names.get(r);t.op=n,i===void 0&&(i=this.names.size,this.names.set(r,i)),t.value=i,this.rootReferences.add(t),e.referenceIndex=this.referenceIndices.length,this.referenceIndices.push(t.index);return}if(n===x.TableReference)return t.op=n,this.rootReferences.add(t),e.referenceIndex=this.referenceIndices.length,void this.referenceIndices.push(t.index)}else if(t&&t.isReference){let t={node:e,index:this.references.size,op:x.Function,value:e.value,inputs:null};this.references.set(e,t)}}};function V(e,t=!1,n=u){let r=[],i=new Set,a=(e,n,a)=>{let o={type:e.type,value:e.type===x.Error?_(e.value):e.value};e.image!==void 0&&(o.text=(e=>{let n=t?e.value?.scopeImage:void 0;return typeof n==`string`?n:``})(e)+e.image);let s=e.evalIndex??a;return s!==void 0&&(o.evalIndex=s),n&&(o.context=n),e.referenceIndex!==void 0&&(o.referenceIndex=e.referenceIndex),e.isReference&&i.add(o),r.push(o),o},o=(e,t,n,i,a)=>{if(t==null||r.length>1&&e===x.Whitespace&&r[r.length-1].type===x.Whitespace)return;let o={type:e,value:t,text:a??t};i!==void 0&&(o.evalIndex=i),n&&(o.context=n),r.push(o)};(function e(s,c,l){let u=s.evalIndex??l??0,d=s.type,f=(t,r,i)=>{if(!t)return;let a=t.length;for(let s=0;s<a;s++)e(t[s],r,i),s<a-1&&o(x.Separator,`,`,r,i,n.separatorFunction)};if(s.isLiteral){if(o(x.Whitespace,s.wsBefore,c,u),d===x.Array){o(x.Type,`{`,c,u);let t=s.value,r=t.length;for(let i=0;i<r;i++){let a=t[i],s=a.value,l=s.length;for(let t=0;t<l;t++){let r=s[t];o(x.Whitespace,r.wsBefore,c,u),e(r,c,u),o(x.Whitespace,r.wsAfter,c,u),t<l-1&&o(x.Separator,`,`,c,u,n.separatorColumn)}i<r-1&&(o(x.Whitespace,a.wsBefore,c,u),o(x.Separator,`;`,c,u,n.separatorRow),o(x.Whitespace,a.wsAfter,c,u))}s.error||o(x.Type,`}`,c,u)}else d===x.String&&(s={type:d,value:`"`+`${s.value}`.replace(/"/g,`""`)+`"`,image:s.image}),a(s,c,u);o(x.Whitespace,s.wsAfter,c,u)}else if(d===x.Infix)e(s.inputs[0],c,u),o(x.Whitespace,s.wsBefore,c,u),a(s,c,u),o(x.Whitespace,s.wsAfter,c,u),e(s.inputs[1],c,u);else if(d===x.Prefix)o(x.Whitespace,s.wsBefore,c,u),a(s,c,u),o(x.Whitespace,s.wsAfter,c,u),s.inputs&&e(s.inputs[0],c,u);else if(d===x.Postfix){s.inputs?.[0]&&e(s.inputs[0],c,u),o(x.Whitespace,s.wsBefore,c,u);let t=a(s,c,u),n=r[r.length-2];s.value===`#`&&t.text!==void 0&&!s.wsBefore&&i.has(n)&&(n.text=(n.text??``)+t.text,t.text=``),o(x.Whitespace,s.wsAfter,c,u)}else{o(x.Whitespace,s.wsBefore,c,u);let l=s.inputs;switch(d){case x.Function:{let t=String(s.value),i={type:x.Function,value:t,text:s.image??t,evalIndex:s.evalIndex};c&&(i.context=c),r.push(i);let a={name:t,argIndex:-1,type:s.binder?.kind??`function`};if(c?.bound&&(a.bound=c.bound),o(x.Paren,`(`,a,s.evalIndex),l){let t=l.length,r=s.binder?.kind,i=r===`lambda`?1:r===`let`?2:0,c=a.bound;for(let s=0;s<t;s++){let d=i&&s>=i?l[s-i]:void 0;if(d?.binding?.declaration){let e=d.value.nameId,t=r===`let`?wt(l[s-1]):void 0;c=Ct(c,t?{name:e,params:t}:{name:e})}let f={...a,argIndex:s};c&&(f.bound=c),e(l[s],f,u),s<t-1&&o(x.Separator,`,`,f,u,n.separatorFunction)}}s.error||o(x.Paren,`)`,a,s.evalIndex);break}case x.Call:{let t=w(s),i=r.length;if(t&&e(t,c,u),t?.type===x.Named)for(let e=i;e<r.length;e++){let t=r[e];t.type!==x.Whitespace&&(t.evalIndex=s.evalIndex,t.type===x.Named&&(t.type=x.Function,t.value=t.value.name))}let a={name:t?.type===x.Named?t.value.nameId:``,argIndex:-1,type:`function`};c?.bound&&(a.bound=c.bound),o(x.Paren,`(`,a,s.evalIndex);let l=h(s),d=l.length;for(let t=0;t<d;t++){let r={...a,argIndex:t};e(l[t],r,u),t<d-1&&o(x.Separator,`,`,r,u,n.separatorFunction)}s.error||o(x.Paren,`)`,a,s.evalIndex);break}case x.Cell:a(s,c,u);break;case x.Paren:o(d,`(`,c,u),f(l,c,u),s.error||o(d,`)`,c,u);break;case x.TableReference:{let n=s.value?.tableId??``,a={name:n,argIndex:-1,type:`table`},d=r.length,f=s.image,p,m=!1;if(n&&f){let e=0;if(f.charCodeAt(0)===91){let t=f.indexOf(`]`);t!==-1&&f.charCodeAt(t+1)===33&&(e=t+2)}let n=f.indexOf(`[`,e);if(m=n===0&&l!=null,n>0)p=f.slice(0,n);else if(!l){let e=f.lastIndexOf(`!`);p=t||e===-1?f:f.slice(e+1)}}if(!n||m&&t||o(x.TableReference,n,c,u,p),l&&o(x.Paren,`[`,a,u),l){let t=l.length;for(let n=0;n<t;n++){let r={...a,argIndex:n};e(l[n],r,u),n<t-1&&o(x.Separator,`,`,r,u)}}l&&!s.error&&o(x.Paren,`]`,a,u);let h=s.referenceIndex;for(let e=d;e<r.length;e++)h!==void 0&&(r[e].referenceIndex=h),i.add(r[e]);break}case x.TableSpecifier:case x.TableColumn:{let e=s.image,t=e!=null&&e.startsWith(`[`)&&e.endsWith(`]`);t&&o(x.Paren,`[`,c,u);let n={table:c?.type===`table`?c.name:``,name:s.value},i={type:d,value:n,text:t?e.slice(1,-1):e??n.name};u!==void 0&&(i.evalIndex=u),c&&(i.context=c),r.push(i),t&&o(x.Paren,`]`,c,u);break}case x.List:f(l,c,u);break;case x.Named:{let e=a(s,c,u),t=s.value;e.value=t.scope?{name:t.nameId,scope:t.scope}:{name:t.nameId},s.binding?.declaration&&s.binding.optional&&(e.value.optional=!0),s.binding&&(e.type=x.Parameter,s.binding.declaration&&(e.value.declaration=!0)),delete e.referenceIndex;break}default:s.value!==void 0&&a(s,c,u),l&&l.forEach(t=>e(t,c,u))}o(x.Whitespace,s.wsAfter,c,u)}})(e);let s=new Map;for(let e of r)if(e.type===x.Cell&&e.referenceIndex!==void 0){let t=s.get(e.referenceIndex);t?t.push(e):s.set(e.referenceIndex,[e])}for(let e of s.values())e.length===1?e[0].refSide=`self`:(e[0].refSide=`left`,e[e.length-1].refSide=`right`);let c=new Map;for(let e of r)if(e.referenceIndex!==void 0&&e.evalIndex!==void 0){let t=c.get(e.referenceIndex);(t===void 0||e.evalIndex<t)&&c.set(e.referenceIndex,e.evalIndex)}if(c.size>0){for(let e of r)if(e.referenceIndex!==void 0){let t=c.get(e.referenceIndex);t!==void 0&&(e.evalIndex=t)}}return r}function De(e,t){let n=``;for(let r=0;r<e.length;r++){let i=e[r],a=i.type;if(a===x.Cell||a===x.Named||a===x.Error){let e=a===x.Cell?i.value?.scope:(x.Named,i.value?.scope??void 0),r=a===x.Error?i.text!==void 0&&v(i.text):i.text?.includes(`!`)??!1;if(e&&i.text!==void 0&&!r){let r=t?.resolve(C.Sheet,e)?.toString()??e;n+=D(r)+`!`+i.text;continue}if(a===x.Named){n+=i.text??i.value?.name??``;continue}}if(a===x.Parameter){n+=i.text??i.value?.name??``;continue}let o=i.text??i.value;typeof o==`string`&&(n+=o)}return n}function Oe(e,t){let n;if(E(e,e=>{e.evalIndex===t&&(n=e)}),!n)return[];let r=V(n);return r.length>1&&r[0].type===x.Whitespace&&r.shift(),r.length>1&&r[r.length-1].type===x.Whitespace&&r.pop(),r}function ke(e){return E(e,e=>{if(e.type!==x.TableReference)return;let t=function(e){if(e.value!==null&&typeof e.value==`object`)return e.value;let t=e.value,n=e.inputs,r=!1,i=!1,a=!1,o=!1,s=null,c=null,l=!1,u=e=>{e?.type===x.TableColumn&&(s=e.value,c=e.value)};if(n)for(let e of n){let t=e.type;if(t===x.TableSpecifier){let t=e.value.toUpperCase().trim();t===`#ALL`?i=!0:t===`#HEADERS`?a=!0:t===`#TOTALS`?o=!0:t===`#DATA`?r=!0:t!==`@`&&t!==`#THIS ROW`||(l=!0)}else if(t===x.TableColumn)u(e);else if(t===x.Infix&&e.value===`:`){let t=e.inputs?.[0],n=e.inputs?.[1];t?.type===x.TableColumn&&(s=t.value),n?.type===x.TableColumn&&(c=n.value)}else if(t===x.Prefix&&e.value===`@`){l=!0;let t=e.inputs?.[0];t?.type===x.Infix&&t.value===`:`?(t.inputs?.[0]?.type===x.TableColumn&&(s=t.inputs[0].value),t.inputs?.[1]?.type===x.TableColumn&&(c=t.inputs[1].value)):u(t)}}return{tableId:t,spec:b(i,a,r,o),columnFromId:s,columnToId:c,isThisRow:l}}(e);return{...e,value:t}})}function Ae(e){return E(e,e=>{if(e.type!==x.TableReference)return;let t=e.inputs;if(!t||t.findIndex(e=>e.type===x.TableSpecifier&&e.value.toUpperCase().trim()===`#THIS ROW`)===-1)return;let n=[],r;for(let e of t)(e.type!==x.TableSpecifier||e.value.toUpperCase().trim()!==`#THIS ROW`)&&(e.type!==x.TableColumn&&(e.type!==x.Infix||e.value!==`:`)||r?n.push(e):r=e);if(!r)return n.push({type:x.Prefix,value:`@`,inputs:null,isReference:!0}),{...e,inputs:n};let i=r.image??r.value,a=i.startsWith(`[`)&&i.endsWith(`]`)?{...r,image:i.slice(1,-1)}:r;return n.push(y(`@`,a,!0)),{...e,inputs:n}})}function je(e){return E(e,e=>{if(e.type!==x.TableReference||e.inputs?.length!==0||e.error)return;let t=e.value;return(typeof t==`string`?t:t?.tableId)?{...e,inputs:null}:void 0})}function Me(e){return E(e,e=>{if(e.type!==x.TableReference||!e.inputs)return;let t=e.value,n=typeof t==`string`?t:t?.tableId,r=e.image;if(!n||r?.charCodeAt(0)!==91)return;let i=r.indexOf(`]`);if(i!==-1&&r.charCodeAt(i+1)===33)return;let a={...e};return delete a.image,a})}var Ne=e=>{if(e?.type!==x.TableSpecifier)return 4;switch(e.value.toUpperCase().trim()){case`#ALL`:return 0;case`#HEADERS`:return 1;case`#DATA`:return 2;case`#TOTALS`:return 3;default:return 4}};function Pe(e){return E(e,e=>{if(e.type!==x.TableReference)return;let t=e.inputs;if(!t||t.length<2)return;let n=t.map((e,t)=>({input:e,index:t,rank:Ne(e)})).sort((e,t)=>e.rank-t.rank||e.index-t.index).map(e=>e.input);return n.every((e,n)=>e===t[n])?void 0:{...e,inputs:n}})}function Fe(t){if(!t)return e.EmptyArray;let n=e.EmptyArray;return E(t,t=>{if(t.type!==x.Named||t.binding)return;let r=t.value.nameId;r&&(n===e.EmptyArray&&(n=[]),n.includes(r)||n.push(r))}),n}function Ie(t,n){if(!t)return e.EmptyArray;let r=e.EmptyArray;return E(t,(t,i,a)=>{if(!t.isReference||i?.isReference)return;let o=t.type;if(o===x.Named||o===x.Error||o===x.TableReference||B(a,x.TableReference))return;let s=function(e){let t=e;for(;t;){if(t.referenceIndex!==void 0)return t.referenceIndex;if(!t.isReference)return;t=t.inputs?.[0]}}(t);s!==void 0&&function(e,t,n){let r=e;for(let e=t.length-1;e>=0;e--){let i=t[e];if(i.type===x.Paren||i.isReference){r=i;continue}if(i.type!==x.Function)return!0;let a=n?.(String(i.value));if(!a)return!0;let o=i.inputs?i.inputs.indexOf(r):-1;return(o>=0?U(a.getDeclaration().getParameters(),o):null)?.getRangeType()!==`p`}return!0}(t,a,n)&&(r===e.EmptyArray&&(r=[]),r.includes(s)||r.push(s))}),r.length>1&&r.sort((e,t)=>e-t),r}var Le=new Set([`SUBTOTAL`,`AGGREGATE`]),Re=new Set([`GETPIVOTDATA`]);function ze(e,t){return H(e,t,Le)}function H(e,t,n){if(!e||!t)return!1;let r=!1;return E(e,e=>{if(r||e.type!==x.Function)return;let i=t(e.value)?.getName();i&&n.has(i.toUpperCase())&&(r=!0)}),r}function Be(e,t){if(!e||!t)return!1;let n=!1;return E(e,e=>{n||e.type!==x.Function||t(e.value)?.getName().toUpperCase()===`TABLE`&&(n=!0)}),n}function Ve(e,t){if(!e||!t)return!1;let n=!1;return E(e,e=>{n||e.type!==x.Function||!0===t(e.value)?.getDeclaration().getReturnType()?.isVolatile()&&(n=!0)}),n}var He=Object.freeze({value:!1,array:!1}),Ue=(e,t)=>{let n=function(e,t){if(!e||!t)return He;let n=!1,r=!1;return E(e,e=>{if(n)return;let i=e.type;if(i===x.Named)return void(e.binding===void 0&&(n=!0));if(i===x.Prefix)return void(e.value===`@`&&(n=!0));if(i===x.Call)return void(n=!0);if(i!==x.Function||e.binder!==void 0)return;let a=t(e.value);if(!a||!a.isBuiltIn())return void(n=!0);if(r||!0!==e.implicitIntersect)return;let o=a.getDeclaration().getParameters(),s=e.inputs;if(s)for(let e=0;e<s.length;e++){let n=U(o,e);if(n!==null&&n.isValueOrRange()&&G(s[e],t))return void(r=!0)}}),{value:!n&&!r,array:!n}}(e,t);return{isBlankCacheable:n.value,isBlankCacheableArray:n.array}},We=(e,t)=>{let n=e.length;if(n===0)return null;if(t<n-1)return e[t];let r=e[n-1],i=r.getRepeatingTypes();return i&&i.length!==0?i[(t-(n-1))%i.length]:t<n?e[t]:r.isRest()?r:null};function Ge(t){if(!t)return e.EmptyArray;let n=e.EmptyArray,r=t=>{t&&(n===e.EmptyArray&&(n=[]),n.includes(t)||n.push(t))},i=e=>{typeof e==`string`&&r(re(e)?.bookId)};return E(t,e=>{if(e.type===x.Named){if(e.binding)return;let t=e.value;r(t.nameId),i(t.scope)}else if(e.type===x.TableReference){let t=e.value;r(typeof t==`string`?t:t?.tableId)}else if(e.type===x.Cell){let t=e.value?.scope;i(t),ie(t)&&r(t)}else e.type===x.Error&&i(e.value?.scope)}),n}var Ke=(e,t)=>{if(!0===e.lazyArg)return!0;if(t?.binder?.kind!==`lambda`)return!1;let n=t.inputs;return n[n.length-1]===e},qe=new Set([`IF`,`IFS`,`SWITCH`,`CHOOSE`,`IFERROR`,`IFNA`]),U=(e,t)=>{let n=e.length;if(n===0)return null;if(t<n)return e[t];let r=e[n-1];if(!r.isRest())return null;let i=r.getRepeatingTypes();return i&&i.length!==0?i[(t-(n-1))%i.length]:r},Je=e=>e.getScalarType()!==null&&e.getRangeType()===null&&e.getLambda()===null&&!e.isValueOrRange(),Ye=(e,t,n)=>!(e.isRest()||!Je(e)||!G(t,n))&&!(e.isNoLift()&&W(t,n)),W=(e,t)=>{if(!e)return!1;let n=e.inputs;switch(e.type){case x.Cell:case x.Named:case x.TableReference:return!0;case x.Infix:case x.Prefix:case x.Postfix:return!0===e.isReference&&e.value!==`@`;case x.Paren:case x.List:return!!n&&n.length===1&&W(n[0],t);case x.Function:{if(e.binder!==void 0)return!1;let r=String(e.value).toUpperCase();if(qe.has(r)){if(!n)return!1;for(let e=0;e<n.length;e++)if(W(n[e],t))return!0;return!1}let i=t?.(e.value);return!!i&&i.getDeclaration().getReturnType().getKind()===a.Reference}default:return!1}},Xe=(e,t)=>{if(!e)return!1;for(let n=0;n<e.length;n++)if(G(e[n],t))return!0;return!1};function G(e,t){if(!e)return!1;if(e.arrayValued!==void 0)return e.arrayValued;let n,r=e.type,i=e.inputs;switch(r){case x.Array:n=!0;break;case x.Cell:{let t=e.value;n=t.rowIndex===-(2**53-1)||t.colIndex===-(2**53-1);break}case x.Named:case x.Call:case x.TableReference:n=!0;break;case x.Infix:case x.Prefix:case x.Postfix:n=e.isReference?e.value!==`@`:Xe(i,t);break;case x.Paren:case x.List:n=!i||i.length!==1||G(i[0],t);break;case x.Function:{let r=e.binder;if(r!==void 0){n=r.kind===`lambda`||!!i&&G(i[i.length-1],t);break}let o=String(e.value).toUpperCase();if(qe.has(o)){n=Xe(i,t);break}if(o===`INDEX`){if(n=!1,i)for(let e=1;e<i.length;e++){let r=i[e];if(!r||r.type===x.Empty||r.isLiteral&&r.value===0||G(r,t)){n=!0;break}}break}let s=t?.(e.value);if(!s){n=!0;break}let c=s.getDeclaration().getReturnType(),l=c.getKind();n=l===a.Array||l===a.Reference||l===null&&c.getRangeType()!==null;break}default:n=!1}return e.arrayValued=n,n}function Ze(e,t){if(e.firstCell!==void 0)return;let n=(e,r)=>{if(!e)return;e.firstCell=r;let i=e.inputs;if(!i)return;let a=e.type;if(a===x.Infix||a===x.Prefix||a===x.Postfix){let t=r&&!e.isReference;for(let e=0;e<i.length;e++)n(i[e],t)}else if(a===x.Paren||a===x.List){let e=r&&i.length===1;for(let t=0;t<i.length;t++)n(i[t],e)}else if(a===x.Function){let a=e.binder;if(a!==void 0){let e=i.length-1;for(let t=0;t<i.length;t++)n(i[t],r&&a.kind===`let`&&t===e);return}let o=r?t?.(e.value)?.getDeclaration().getParameters():null;for(let e=0;e<i.length;e++){let t=o?U(o,e):null;n(i[e],t!==null&&(Je(t)||tt(t)))}}else for(let e=0;e<i.length;e++)n(i[e],!1)};n(e,!0)}var Qe=new Set([`=`,`<>`,`<`,`>`,`<=`,`>=`]),$e=new Set([`ROW`,`COLUMN`]);function et(e,t){if(!e||!t)return null;let n=e=>t(e.value)?.getName().toUpperCase()??null,r=!1;if(E(e,e=>{(e.hasLazyArgs||e.type===x.Call||e.binder!==void 0)&&(r=!0)}),r)return null;let i=e=>e.type===x.Number,a=e=>e.type===x.Number||e.type===x.String||e.type===x.Boolean,o=e=>{if(!e)return!1;let t=e.inputs;switch(e.type){case x.Paren:return t?.length===1&&o(t[0]);case x.Prefix:return(e.value===`-`||e.value===`+`)&&o(t?.[0]);case x.Infix:{if(e.value!==`+`&&e.value!==`-`&&e.value!==`*`)return!1;let[n,r]=t??[];return!(!n||!r)&&(o(n)&&(o(r)||i(r))||i(n)&&o(r))}case x.Function:{let r=n(e);if(r!==null&&$e.has(r))return!t||t.length===0||t.length===1&&t[0]?.type===x.Cell;if(r===`MOD`&&t?.length===2){let e=t[1];return o(t[0])&&i(e)&&e.value!==0}return!1}}return!1},c=e=>{if(!e)return!1;let t=e.inputs;switch(e.type){case x.Paren:return t?.length===1&&c(t[0]);case x.Infix:{if(!Qe.has(e.value))return!1;let[n,r]=t??[];return!(!n||!r)&&(o(n)&&(o(r)||a(r))||a(n)&&o(r))}case x.Function:{let r=n(e);if(!t||t.length===0)return!1;if(r===`ISODD`||r===`ISEVEN`)return t.length===1&&o(t[0]);if(r===`NOT`)return t.length===1&&c(t[0]);if(r===`AND`||r===`OR`||r===`XOR`){let e=!1;for(let n=0;n<t.length;n++){let r=t[n];if(!r)return!1;if(r.type!==x.Boolean){if(!c(r))return!1;e=!0}}return e}return!1}}return!1},l=[],u=e=>{if(!e)return;if(c(e))return void l.push(e);let t=e.inputs;if(t)for(let e=0;e<t.length;e++)u(t[e])};u(e);let d=l.length;if(d===0||d>4)return null;let f=[];for(let t=0;t<1<<d;t++){let n=e=>{let r=l.indexOf(e);if(r!==-1)return s(t&1<<r?`TRUE`:`FALSE`);let i={...e};return delete i.evalIndex,delete i.firstCell,delete i.inLazy,delete i.lazyArg,delete i.hasLazyArgs,delete i.deferred,e.inputs&&(i.inputs=e.inputs.map(e=>e&&n(e))),i};f.push(n(e))}return f}var tt=e=>e.getRangeType()===`*`&&e.getLambda()===null&&e.getArrayDepth()<=+!!e.isRest();function nt(e,n,r,i=!1,a=null,o=null){let s,l,d=r;d=ke(d),i||(d=Ae(d),d=Pe(d),d=je(d),d=Me(d)),[s,l]=function(e){let t=new Map,n=0,r=[e];for(;r.length>0;){let e=r.shift();if(t.set(e,{...e,evalIndex:n++}),e&&e.inputs)for(let t of e.inputs)r.push(t)}return t.forEach((e,n)=>{n&&n.inputs&&(e.inputs=n.inputs.map(e=>t.get(e)??e))}),[t.get(e),n]}(d);let f=c(l),p=[],m=[],h=new Ee,_,v=!1;(function(e,t){if(!e||!t)return;let n=e=>{if(!e)return;e.inLazy=!0,e.type===x.Named&&(e.deferredResolve=!0);let t=e.inputs;if(t)for(let e=0;e<t.length;e++)n(t[e])};E(e,e=>{if(e.type!==x.Function||e.binder!==void 0)return;let r=e.inputs;if(!r||r.length===0)return;let i=t(e.value)?.getDeclaration().getParameters();if(i)for(let t=0;t<r.length;t++){let a=r[t];a&&a.type!==x.Empty&&We(i,t)?.isLazy()&&(a.lazyArg=!0,e.hasLazyArgs=!0,n(a))}})})(s,o);let y=e=>{_===void 0&&(_=new Map);let t=_.get(e);return t===void 0&&_.set(e,t=[]),t},b=(e,t)=>{e===void 0?p.push(t):y(e).push(t)},S=e=>{e?.type!==x.Infix||e.value!==`+`&&e.value!==`-`||(e.snapsCancellation=!0)};s=E(s,(t,n,r)=>{let i=t.type,a=t.evalIndex;if(f[a]=null,i===x.TableColumn||i===x.TableSpecifier||t.isReference&&B(r,x.TableReference))return;if(v||=!J(t),t.binding?.declaration)return m[t.binding.slot]=-1,void(f[a]=void 0);let o=((e,t,n)=>{if(Ke(e,t))return e;for(let e=n.length-1;e>=0;e--)if(Ke(n[e],n[e-1]))return n[e]})(t,n,r);o===t&&y(t),o!==void 0&&i===x.Named&&(t.deferredResolve=!0);let s=t.binder;if(s&&s.kind===`let`){let e=t.inputs,n=e?.length??0,r=0;for(let t=0;t+1<n&&r<s.slots.length;t+=2)e[t]?.binding?.declaration&&(m[s.slots[r++]]=e[t+1]?.evalIndex??-1)}if((t.isReference||n&&n.isReference)&&(h.processNode(t,n),t.isReference)){if(i===x.Named)return void(o!==void 0&&b(o,t));if(i===x.Cell||i===x.TableReference||i===x.Error)return;if(i===x.Infix||i===x.Prefix||i===x.Postfix||i===x.List)return void b(o,t)}if(t.isLiteral){if(i!==x.Array)f[a]=t.value;else{let n=t.value,r=n.length,i=c(r);for(let e=0;e<r;e++){let t=n[e].value,r=t.length,a=c(r);for(let e=0;e<r;e++){let n=t[e],r=null;if(n&&(r=n.type===x.Error?g(n.value):n.value,n.type===x.Prefix)){let e=n.value;r=n.inputs[0].value,e===`-`&&(r=-r)}a[e]=r}i[e]=a}let o=ee(i);f[a]=new te(e,o.values,o.coords,void 0,o.isLiteral)}}else{if(i!==x.Empty)return t.binder?.kind===`lambda`&&S(t.inputs[t.inputs.length-1]),b(o,t),t;f[a]=void 0}}),S(s),_?.forEach((e,t)=>{t.deferred=e});let C=c(h.cells.size);h.cells.forEach((e,t)=>{let n=t.value,r=n.colIndex,i=n.rowIndex,a=n.$colIndex,o=n.$rowIndex,s={colStart:r,rowStart:i,colEnd:r,rowEnd:i,$colStart:a,$rowStart:o,$colEnd:a,$rowEnd:o};r===-(2**53-1)&&(s.colEnd=2**53-1),i===-(2**53-1)&&(s.rowEnd=2**53-1),n.scope&&(s.scope=n.scope),C[e]=s});let w=C.length,T=c(w);for(let e=0;e<w;e++)T[e]={colStart:0,rowStart:0,colEnd:0,rowEnd:0,scope:null};let D=c(h.references.size);h.references.forEach(e=>{D[e.index]=e});let O=[];h.rootReferences.forEach(e=>{O.push(e.index)}),function(e,t,n=!1){if(n){let t=e=>{if(!e)return;let n=e.type;n!==x.Function&&n!==x.Call||(e.implicitIntersect=!0);let r=e.inputs;if(r)for(let e=0;e<r.length;e++)t(r[e])};t(e);return}let r=e=>G(e,t),i=(e,n)=>{if(!e)return;let a=e.type;a!==x.Function&&a!==x.Call||(e.implicitIntersect=n);let o=e.inputs;if(o){if(a===x.Infix||a===x.Prefix||a===x.Postfix){let t=!e.isReference;for(let e=0;e<o.length;e++)i(o[e],(!t||!r(o[e]))&&n);return}if(a===x.Function){let r=e.binder;if(r!==void 0){let e=r.kind!==`lambda`&&n;for(let t=0;t<o.length;t++)i(o[t],e);return}let a=t?.(e.value)?.getDeclaration().getParameters(),s=!1;if(a)for(let e=0;e<o.length&&!s;e++){let n=o[e];if(!n)continue;let r=U(a,e);r&&Ye(r,n,t)&&(s=!0)}s&&(e.implicitIntersect=!1);for(let e=0;e<o.length;e++)i(o[e],!s&&n);return}for(let e=0;e<o.length;e++)i(o[e],n)}};i(e,!r(e))}(s,o,!0===r.legacyIntersect);let k=e=>{let t=e.length;for(let n=0;n<t;n++){let t=e[n],r=t.type;if(r===x.Infix){if(!0===t.snapsCancellation){t.fn=Ce[t.value];continue}t.fn=Se[t.value]}else r===x.Prefix?t.fn=we[t.value]:r===x.Postfix&&(t.fn=Te[t.value])}},A;k(p),_?.forEach(k);let re=i?ne(t(e.getLocale()).decimal):u,j={runtime:e,symbols:n,getFunction:o,ast:s,evaluations:f,executions:p,bindings:m,referencesAbsolute:T,referencesExecute:D,referencesRelative:C,referencesRoot:O,referenceIndices:h.referenceIndices,formatReferenceIndices:Ie(s,o),getTokens:()=>A??=V(s,i,re),namedIds:Fe(s),symbolIds:Ge(s),hasTotals:ze(s,o),hasPivotData:H(s,o,Re),hasDataTable:Be(s,o),hasVolatile:Ve(s,o),...Ue(s,o),isReferenceOnly:!v,error:a,transform:t=>{let r=E(s,t);return r===s?j:nt(e,n,r,i,a,o)}};return j}function rt(e){let t=-1,r=-1;return Number.isSafeInteger(e.previousToken?.startLine)?(t=e.previousToken.startLine,r=e.previousToken.endColumn+1):Number.isSafeInteger(e.token?.startLine)&&(t=e.token.startLine,r=e.token.startColumn),t===-1?new n.Parse(e.message,{cause:e}):(e.errorLocation={line:t,column:r},new n.Parse(e.message,{line:t,column:r,cause:e}))}Object.freeze([[`:`,`.:.`,`.:`,`:.`],[`^`],[`*`,`/`],[`+`,`-`],[`&`],[`<`,`>`,`=`,`<>`,`<=`,`>=`]]);var it=Object.freeze([`:`,`.:.`,`.:`,`:.`]),K=Object.freeze([`:`,` `,`.:.`,`.:`,`:.`]),at=Object.freeze([`@`]),q=Object.freeze([`#`]),ot=Object.freeze(K.concat(q)),J=(Object.freeze(K.concat(at).concat(q)),e=>{if(!e)return!1;let t=e.type;if(t===x.Cell||t===x.TableReference)return!0;if(t===x.Infix){if(!K.includes(e.value))return!1;let t=e.inputs,n=t[0],r=t[1];return J(n)&&J(r)}return t===x.List&&(e.inputs?.every(J)??!1)}),st=e=>!!e&&(!(e.type!==x.Infix||!ot.includes(e.value))||!(e.type!==x.Postfix||!q.includes(e.value))||e.type===x.Array||e.type===x.TableReference),ct=Object.freeze([`+`,`-`,`*`,`/`,`^`,`&`,`=`,`<>`,`>`,`<`,`>=`,`<=`]),lt=Object.freeze([`-`,`+`]),Y=(e,t)=>{if(!e)return!1;let n=e.type;if(e.isLiteral)return n!==x.Error;if(n===x.Paren||n===x.List){let n=e.inputs;return!(!n||n.length===0)&&n.every(e=>Y(e,t))}if(n===x.Infix)return ct.includes(e.value);if(n===x.Prefix)return lt.includes(e.value);if(n===x.Postfix)return e.value===`%`;if(n===x.Function){if(!t)return!1;let n=t(e.value);if(!n)return!1;let r=n.getDeclaration().getReturnType(),i=r.getRangeType();return i!==`p`&&(i!==null||r.getLambda()===null&&r.getScalarType()!=null)}return!1},ut=(e,t)=>{if(!e)return null;let n=null,r=e=>{if(n||!e)return;if(e.type===x.Infix&&e.value===` `){let r=e.inputs,i=r?.[0],a=r?.[1];if(Y(i,t))return void(n=i);if(Y(a,t))return void(n=a)}let i=e.inputs;if(i)for(let e=0;e<i.length&&!n;e++)r(i[e])};return r(e),n},dt=(e,t)=>{if(!e)return null;let n=null,r=e=>{if(n||!e)return;if(e.type===x.Postfix&&e.value===`#`){let r=e.inputs?.[0];if(r&&Y(r,t))return void(n=r)}let i=e.inputs;if(i)for(let e=0;e<i.length&&!n;e++)r(i[e])};return r(e),n},ft=e=>{for(let t=0;t<e.length;t++)if(e[t].getRepeatingTypes())return t;return-1},pt=(e,t,n)=>{let r=e[t].getRepeatingTypes(),i=r.length,a=t,o=e.length-t-1,s=o;for(;s>0&&e[t+s].isOptional();)s--;let c=+!e[t].isOptional(),l=r[i-1].isOptional();for(let e=s;e<=o;e++){let t=n-a-e;if(t>=0&&t%i===0&&t/i>=c)return{n:t/i,short:!1,variable:t,period:i,prefix:a,suffix:e};if(l&&t===i-1)return{n:1,short:!0,variable:t,period:i,prefix:a,suffix:e}}return null},mt=e=>{if(!e)return null;let t=null,n=e=>{if(t||!e)return;if(e.type===x.Array&&Array.isArray(e.value)){let n=e.value,r=n[0]?.value?.length??0;for(let e=1;e<n.length&&!t;e++){let i=n[e]?.value?.length??0;i!==r&&(t=`Array rows must all be the same length — row ${e+1} has ${i} value${i===1?``:`s`}, but row 1 has ${r}.`)}}let r=e.inputs;if(r)for(let e=0;e<r.length&&!t;e++)n(r[e])};return n(e),t},ht=(e,t)=>{if(!e||!t)return null;let n=null,r=e=>{if(n||!e)return;if(e.type===x.Function){let r=e.value,i=t(r);if(i){let t=i.getDeclaration(),a=t.getParameters(),o=e.inputs?.length??0,s=t.getMaxArguments();if(o>s)return void(n=`Too many arguments for ${r}. The most it accepts is ${s}, but got ${o}.`);let c=a.length>0?ft(a):-1,l=a.length>0&&a[a.length-1].isRest();if(c>=0){if(!pt(a,c,o)){let e=a[c].getRepeatingTypes().length,t=a.length-1;n=e===1?`Too few arguments for ${r}. Expected at least ${t+1}, but got ${o}.`:`Wrong number of arguments for ${r}. Expected ${t} plus a multiple of ${e}, but got ${o}.`}}else if(!l&&o>a.length)n=`Too many arguments for ${r}. Expected ${a.length}, but got ${o}.`;else for(let e=o;e<a.length&&!n;e++){let t=a[e];t.isOptional()||t.isRest()||(n=`Parameter ${t.getName()} is missing for ${r}.`)}}}let i=e.inputs;if(i)for(let e=0;e<i.length&&!n;e++)r(i[e])};return r(e),n},gt=(e,t)=>{if(!e||!t)return null;let n=null,r=e=>{if(n||!e)return;if(e.type===x.Function){let r=t(e.value);if(r){let i=r.getDeclaration().getParameters(),a=e.inputs;if(i.length>0&&a){let e=((e,t)=>{let n=Array(t),r=e.length,i=r>0?ft(e):-1;if(i<0){let i=r>0?e[r-1]:null,a=!!i&&i.isRest();for(let o=0;o<t;o++)n[o]=o<r?e[o]:a?i:null;return n}let a=e[i].getRepeatingTypes(),o=a.length,s=i,c=pt(e,i,t),l=c?c.suffix:r-i-1,u=Math.max(0,t-s-l);for(let c=0;c<t;c++)if(c<s)n[c]=e[c];else if(c<s+u)n[c]=a[(c-s)%o];else{let t=i+1+(c-s-u);n[c]=t<r?e[t]:null}return n})(i,a.length);for(let r=0;r<a.length&&!n;r++){let i=e[r];i&&i.getRangeType()===`p`&&Y(a[r],t)&&(n=a[r])}}}}let i=e.inputs;if(i)for(let e=0;e<i.length&&!n;e++)r(i[e])};return r(e),n},_t=(e,t)=>{if(!e)return null;let n=null,r=e=>{if(n||!e)return;if(e.type===x.Call){let r=e.inputs?.[0];if(r&&Y(r,t))return void(n=`This expression always produces a value, so it cannot be called as a function.`)}let i=e.inputs;if(i)for(let e=0;e<i.length&&!n;e++)r(i[e])};return r(e),n},X=(e,t)=>{if(e.type!==x.Function)return;let n=e.value;if(typeof n!=`string`)return;let r=(t?.(n)?.getName()??n).toUpperCase();return r===`LET`?`let`:r===`LAMBDA`?`lambda`:void 0},Z=e=>{if(e?.type!==x.Named)return;let t=e.value;return t?.nameId&&!t.scope&&!0!==t.optional?t.nameId:void 0},vt=/^[A-Za-z_\\][A-Za-z0-9_\\]*$/,yt=new Set([`TRUE`,`FALSE`]),bt=e=>{if(e?.type===x.Named){let t=e.value;return!0!==t?.optional||!t.nameId||t.scope?void 0:t.nameId}if(e?.type!==x.TableReference)return;let t=e.value,n;if(t===null||typeof t==`string`){if(t)return;let r=e.inputs;if(!r||r.length!==1||r[0]?.type!==x.TableColumn)return;let i=r[0].value;if(typeof i!=`string`)return;n=i}else{let e=t;if(!e||e.tableId!==``||e.spec!==0||!0===e.isThisRow||!e.columnFromId||e.columnFromId!==e.columnToId)return;n=e.columnFromId}return vt.test(n)&&!yt.has(n.toUpperCase())&&e.image===`[${n}]`?n:void 0},xt=e=>{let t=M(e.image??e.value);t.image=e.image??e.value,t.wsBefore=e.wsBefore;let n={type:x.Call,value:null,inputs:[t,...e.inputs??[]],wsAfter:e.wsAfter};return e.error&&(n.error=e.error),n};function St(e,t){return e&&t?E(e,e=>{if(e.type===x.Function&&typeof e.value==`string`&&!t(e.value))return xt(e)}):e}function Ct(e,t){let n=t.name.toUpperCase(),r=e?e.filter(e=>e.name.toUpperCase()!==n):[];return r.push(t),r}function wt(e){if(e?.type!==x.Function||e.binder?.kind!==`lambda`)return;let t=e.inputs??[],n=[];for(let e=0;e<t.length-1;e++){let r=t[e];if(!r?.binding?.declaration)return;let i=r.value.nameId;n.push(r.binding.optional?{name:i,optional:!0}:{name:i})}return n}var Tt=new Set([`IF`,`IFERROR`,`IFNA`]);function Q(e,t){if(!e||e.type!==x.Function||typeof e.value!=`string`)return e;let n=(t?.(e.value)?.getName()??e.value).toUpperCase();if(!Tt.has(n))return e;let r=e.inputs,i;if(r)for(let e=0;e<r.length;e++){let n=Q(r[e],t);n!==r[e]&&((i??=[...r])[e]=n)}return{...e,inputs:i??r,passOmitted:!0}}function Et(e,t=null){if(!e)return e;let n=[],r=0,i=e=>{let t=e.inputs;if(!t)return e;let n;for(let e=0;e<t.length;e++){let r=t[e];if(!r)continue;let i=a(r);i!==r&&(n||=[...t],n[e]=i)}return n?{...e,inputs:n}:e},a=e=>{if(!e)return e;let o=X(e,t);if(o)return((e,o)=>{let s=e.inputs,c=s?.length??0;if(!s||c<1)return i(e);let l=n.length,u=[],d=[...s],f=(e,t=!1)=>{let i=d[e],a=Z(i),o=!1;if(a===void 0&&t){if(a=bt(i),a===void 0)return;o=!0}else if(a===void 0)return;let s=r++;n.push({key:a.toUpperCase(),slot:s,name:a}),u.push(s),d[e]=o?{...i,type:x.Named,value:{nameId:a,scope:null},inputs:null,binding:{slot:s,declaration:!0,optional:!0},isReference:!1}:{...i,binding:{slot:s,declaration:!0},isReference:!1}};if(o===`lambda`){for(let e=0;e<c-1;e++)f(e,!0);d[c-1]&&(d[c-1]=a(d[c-1]))}else{for(let e=0;e+1<c;e+=2)d[e+1]&&(d[e+1]=Q(a(d[e+1]),t)),f(e);c%2==1&&d[c-1]&&(d[c-1]=a(d[c-1]))}for(;n.length>l;)n.pop();return{...e,inputs:d,binder:{kind:o,slots:u}}})(e,o);if(e.type===x.Function&&typeof e.value==`string`){let r=e.value.toUpperCase();if(n.some(e=>e.key===r)&&!t?.(e.value))return i(xt(e))}if(n.length>0&&e.isReference&&e.value===`:`&&e.inputs?.length===2){let[t,r]=e.inputs;if(Dt(t)&&Dt(r)){let a=t.image.toUpperCase(),o=r.image.toUpperCase();if(n.some(e=>e.key===a||e.key===o))return i({...e,inputs:[Ot(t),Ot(r)]})}}if(e.type===x.Named){let t=Z(e);if(t!==void 0){let r=t.toUpperCase();for(let i=n.length-1;i>=0;i--){if(n[i].key!==r)continue;let a={...e,binding:{slot:n[i].slot},isReference:!1};return t!==n[i].name&&(a.value={...e.value,nameId:n[i].name}),a}}return e}let s=i(e);if(s.type===x.Function&&typeof s.value==`string`&&(t?.(s.value)?.getName()??s.value).toUpperCase()===`ISOMITTED`){let e=s.inputs;if(e){let n;for(let r=0;r<e.length;r++){let i=e[r];if(i?.binding&&!i.binding.declaration&&!0!==i.rawFrameRead){(n??=[...e])[r]={...i,rawFrameRead:!0};continue}let a=Q(i,t);a!==i&&((n??=[...e])[r]=a)}if(n)return{...s,inputs:n}}}return s};return a(e)}var Dt=e=>{if(e?.type!==x.Cell||e.image===void 0)return!1;let t=e.value;return t.rowIndex===-(2**53-1)&&!0!==t.$colIndex&&!t.scope},Ot=e=>{let t=M(e.image);return k(t,e),t},kt=e=>e?.type===x.Cell,At=(e,t=null)=>{if(!e)return e;let n=!1,r=e=>{if(n||!e)return;let i=X(e,t),a=e.inputs;if(i&&a){let e=i===`let`?2:1;for(let t=0;t<a.length-1;t+=e)if(kt(a[t]))return void(n=!0)}if(a)for(let e=0;e<a.length&&!n;e++)r(a[e])};if(r(e),!n)return e;let i=null,a=E(e,e=>{if(e?.type!==x.Cell)return;let t=e.value,n=e.image;if(!0===t?.$colIndex||!0===t?.$rowIndex)return void(i??=`'${n??`a reference`}' cannot be absolute here. A LET/LAMBDA name that is a cell reference makes every reference in the formula a name, and a name cannot contain '$'.`);if(n===void 0)return;let r=M(n);k(r,e);let a=t?.scope;return a&&(r.value.scope=a,r.value.scopeImage=t.scopeImage),r});return i??a},jt=(e,t)=>{if(!e)return null;let n=null,r=e=>{if(n||!e)return;let i=X(e,t);i&&((e,t)=>{let r=t===`let`?`LET`:`LAMBDA`,i=e.inputs,a=i?.length??0;if(!i||a<2)return;if(t===`let`&&a%2==0)return void(n=`Wrong number of arguments for LET. Expected name/value pairs followed by a calculation, but got ${a}.`);if(t===`lambda`&&i[a-1]?.type===x.Empty)return void(n=`LAMBDA has no calculation: the last argument is empty.`);let o=new Set,s=t===`let`?2:1,c=!1;for(let e=0;e<a-1;e+=s){let a=Z(i[e]);if(a===void 0&&t===`lambda`)a=bt(i[e]),a!==void 0&&(c=!0);else if(a!==void 0&&c)return void(n=`Required name '${a}' cannot follow an optional name in ${r}.`);if(a===void 0)return void(n=`Expected a name in ${r} argument ${e+1}; a name cannot be the output of a formula.`);if(a.includes(`.`))return void(n=`Expected a name in ${r} argument ${e+1}; a name cannot contain '.'.`);let s=a.toUpperCase();if(o.has(s))return void(n=`Duplicate name '${a}' in ${r}.`);o.add(s)}})(e,i);let a=e.inputs;if(a)for(let e=0;e<a.length&&!n;e++)r(a[e])};return r(e),n};function Mt(e,t,n,r,i){let a=r,o,s=()=>(o===void 0&&(o=i&&n?t.bind(C.Table,``,{at:{scope:n,rowIndex:i.rowIndex,colIndex:i.colIndex}}):null),o);return E(e,(e,r,i=[])=>{let o,c=e.type;if(c===x.Cell){let n=e.value;if(n?.scope){let r=t.bind(C.Sheet,n.scope,a);r!==null&&(o||={...e},o.value={...n,scope:r})}}else if(c===x.Named){let r=e.value;if(r&&!e.binding){let i=function(e,t,n,r){if(t.scope){let e=n.bind(C.Sheet,t.scope,r);if(e===null||T(e))return}let i=n.bind(C.Table,t.nameId,{existing:!0});if(i===null)return;let a={type:x.TableReference,value:i,inputs:null,isReference:!0};k(a,e);let o=t.scopeImage;return typeof o==`string`&&e.image!==void 0&&(a.image=o+e.image),a}(e,r,t,a);if(i)return i;let s=r.scope?t.bind(C.Sheet,r.scope,a):null,c=(s===null?r.scope:T(s)?s:t.resolve(C.Sheet,s)?.toString()??r.scope)??n,l=t.bind(C.NamedFormula,r.nameId,c?{scope:c}:void 0);l===null&&s===null||(o||={...e},o.value={...r,nameId:l??r.nameId,...s===null?void 0:{scope:s}})}}else if(c===x.Error){let n=e.value;if(n?.scope){let r=t.bind(C.Sheet,n.scope,a);r!==null&&(o||={...e},o.value={...n,scope:r})}}else if(c===x.TableReference){let n=e.value;if(n){let r=t.bind(C.Table,n);o||={...e},r!==null&&(o.value=r)}else if(typeof n==`string`){let n=s();if(n!==null&&$(e,t))return{...e,value:n}}}else if(c===x.TableColumn){let n=e.value;if(n){let r=B(i,x.TableReference),a=r?.value||(r?s()??void 0:void 0),c=t.bind(C.TableColumn,n,a?{tableName:a}:void 0);o||={...e},c!==null&&(o.value=c)}}else if(c===x.Function){let n=e.value;if(n){let r=t.bind(C.Function,n);o||={...e},r!==null&&(o.value=r)}}return o})}function $(e,t){let n=!0,r=e.inputs;if(!r)return!0;for(let e=0;e<r.length&&n;e++)E(r[e],e=>{e.type===x.TableColumn&&t.resolve(C.TableColumn,e.value)===null&&(n=!1)});return n}function Nt(e,t){let n=null;return E(e,e=>{if(n||e.type!==x.TableReference)return;if(e.value===``)return void(n=`A structured reference without a table name must be in a table that has its columns.`);let r=e.value;if(!t||typeof r!=`string`)return;let i=t.resolve(C.Table,r)?.toString()??r;t.bind(C.Table,i,{existing:!0})===null?n=`There is no table named '${i}'.`:$(e,t)||(n=`The table has no such column.`)}),n}export{ut as A,je as C,nt as D,mt as E,rt as O,it as S,ke as T,_t as _,De as a,gt as b,Mt as c,Pe as d,Se as f,Ze as g,V as h,Ct as i,we as j,st as k,Nt as l,Te as m,At as n,Et as o,St as p,Ce as r,Me as s,Ae as t,Oe as u,dt as v,jt as w,ht as x,et as y};