@sheetxl/mcp 0.8.0-beta.20 → 0.8.0-beta.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/assets/{noAnElnMhF05bfJN.js → 0jPw8-AyT6VbPuGO.js} +1 -1
  2. package/assets/{C7oUg84aGjYrJUc6.js → 1U3DwsqHnOBwiGWn.js} +2 -2
  3. package/assets/{DALP-GkmzCJdFIV9.js → 1dUPpOVZSeeylKHv.js} +1 -1
  4. package/assets/{TdK2ciXA5BAlGjbR.js → 3N6hsbh2WLceyO6T.js} +1 -1
  5. package/assets/{C3BZQ5NFwAU_ZdeQ.js → 4zyHb1mmcFfqwpjO.js} +1 -1
  6. package/assets/{C0MAjW1vgsw6o0fx.js → 8csqJ8aGOdnKlrLl.js} +1 -1
  7. package/assets/{C9w-KoMwxvouC73F.js → 91BKH9obG4IfBzhy.js} +514 -505
  8. package/assets/{tCavNu-Tru6yRbec.js → 9AosCdy_xtdhLjN1.js} +1 -1
  9. package/assets/{rtUwIBgECTX9UO_B.js → B5VTjL9m0R-Icfaz.js} +4 -4
  10. package/assets/{Z1zwOeCe-JTLgkxf.js → B6pXiayrnDoDbQt1.js} +57 -57
  11. package/assets/{DwsoGIyPuoQij_vi.js → BDq4iVyBh5lwX8pE.js} +1 -1
  12. package/assets/{4Za9gEGCvms62R7k.js → BHsqPfJZrdKTbPLP.js} +1 -1
  13. package/assets/{DPUXpIzEs1t-jBiv.js → BI5L_Ysr8s0TQxdg.js} +1 -1
  14. package/assets/{-qQT-DFFz0CqGx5C.js → BPZWfwUvFCLQInXN.js} +395 -395
  15. package/assets/{CgIHqG1qp9n1Gwm7.js → BRVEVVhj-8ZPrNyQ.js} +326 -321
  16. package/assets/{C9aV1SF8uCWIB4zU.js → BSdRn3B8QeJFflY6.js} +15 -15
  17. package/assets/{CrRJqUPbvvhnp4p4.js → BUGEQS5WdiLcI_0X.js} +1 -1
  18. package/assets/{DvRH46hupHUjkc7a.js → BUIjRIGTum7VuRFk.js} +1 -1
  19. package/assets/{CrULZhDt8uE-MR2s.js → BV49J63s68Mj6lgF.js} +1 -1
  20. package/assets/{DcwqgbgqPyzQxSsQ.js → BXean6K6oDUxkzyd.js} +1 -1
  21. package/assets/{B5UmlawoCVwHHM_e.js → BZxJKqVEO7B23XwE.js} +5 -5
  22. package/assets/{DYRis8fOyk2uIZ-1.js → BaaVzb7xXROiWUhT.js} +4 -4
  23. package/assets/{swG-DVTsez1uNW8c.js → Bf7Irm8Ua4s1T4xH.js} +1 -1
  24. package/assets/{BGlx7_eRiv47Hu9C.js → BgwCdHyXKQYFAl1M.js} +1 -1
  25. package/assets/{DNwyEanz3LqtOorY.js → Bi65BKwwiZYYZprq.js} +1 -1
  26. package/assets/{C46dyA4YSP1-iTSN.js → BiC09_YKQPmlUklQ.js} +1 -1
  27. package/assets/{CDmri0gcZxpVZfWn.js → BkqENH8xJ3_NQnD5.js} +377 -377
  28. package/assets/{CaOEaghQqXiA1ZzO.js → BlxrCp7d-SeM-2DW.js} +115 -115
  29. package/assets/{DBfBV-tvRxCLgdvs.js → BnGNMsqG5CzUzmX7.js} +4 -4
  30. package/assets/{u-pSumbU-rgT6eLF.js → BnK6HEqT4rf1RoOG.js} +226 -226
  31. package/assets/{DZ2Njh8YgfXcv7EM.js → BrfsWImwRtf54LUU.js} +1 -1
  32. package/assets/{BYYbglFmasE5PrS2.js → BvKzhnweVF6GhjXh.js} +1 -1
  33. package/assets/{BKc7zTK6ZIhcD_Wu.js → Bx592y6pyOwTS2x7.js} +1 -1
  34. package/assets/{BghxJxTwaebNVcIS.js → BygXDW3XTdtR38aA.js} +1 -1
  35. package/assets/{Bp9zuG6P6r9GEb6G.js → BzFIkeB_lheiTR7z.js} +1 -1
  36. package/assets/{BBm3Xjnehvx2fYj8.js → Bzp3UtK_6fqEVlV8.js} +8 -8
  37. package/assets/{DTXRsv2Ww7WbIwCb.js → C1PTfp7kVu3DqqZh.js} +9859 -9844
  38. package/assets/{CoOIn2wx6je_rMDO.js → C1yAmXrOu3iHV2cu.js} +17 -17
  39. package/assets/{BMH_wtFTiRj43c69.js → C4-0s3Udk3v4ytSn.js} +2 -2
  40. package/assets/{YG5hEr6CzWNmNJQ2.js → C7zManFR1LEJXiwb.js} +1 -1
  41. package/assets/{NiD8iNE47sjggYTx.js → C9wlvcFyjQA59G-_.js} +1 -1
  42. package/assets/{BHiZ3GtGCWUWwHqY.js → CAgQJrDxGEfoa7jn.js} +3 -3
  43. package/assets/{DsSlUklPSAsh9DhW.js → CGB4xgirbgEIN3tg.js} +167 -167
  44. package/assets/{CpfpXfCqzZumY4pf.js → CGxhgXj5qKj_Ubcp.js} +1 -1
  45. package/assets/{Bg8EN9R3hbeNfFyU.js → CHG9Q0uLAZdLXYVz.js} +76 -76
  46. package/assets/{CbTKUrroY9PQ6eTu.js → CHnaSM8aMnQ2_VWW.js} +3 -3
  47. package/assets/{CW2Ca6tsd0aLTz88.js → CHpBOpoM9bCvQyn0.js} +1 -1
  48. package/assets/{D--emvI048MvLsXl.js → CHqnRMWNpLKcAWWn.js} +1 -1
  49. package/assets/{93ksqLKL1o40anfw.js → CKhbbbjQ-_auMp3n.js} +1 -1
  50. package/assets/{BGQ1GrnQ-X16GU8k.js → COVhUB0EotytQDHg.js} +2 -2
  51. package/assets/{4Qlx8FuxoYbVTgNW.js → CSGN4rAf7CYnBDEa.js} +19 -19
  52. package/assets/{DAVN6N3srI1WMHCN.js → CSKjFDYwiwn5XNnH.js} +2 -2
  53. package/assets/{MpvZt7VpFWEINIT6.js → CT99WREgkKGpcDTO.js} +1 -1
  54. package/assets/{C9JUgNS6CrdgIcW3.js → CV729JV1mNyYCmrq.js} +1 -1
  55. package/assets/{CTGfmocA1WgM0_e0.js → CXk5vwFfosghrTKo.js} +485 -485
  56. package/assets/{DV_nCOON8Fgq5RBt.js → CXqqaFgNeUVRGvEb.js} +2 -2
  57. package/assets/{CLFe9HgUi_83dE3d.js → CYCqMEoWsry6_hrc.js} +1 -1
  58. package/assets/{I7LAF1nLmYqQwt9i.js → Cahhn5OLNqRYy-n8.js} +1 -1
  59. package/assets/{uMoGfJGab8mZX6eN.js → CdtVv8YQ8PTmS4dz.js} +1 -1
  60. package/assets/{DSy6cpdU-KNWsbSj.js → CpYgsvYMxV5SbRp3.js} +2 -2
  61. package/assets/{Dx_IFz5FEPKw-HC1.js → Cu4VAHfmjXWfTMPu.js} +1 -1
  62. package/assets/{Drmg3-gF0VJs4Yx3.js → CufFcGwo5x95LSb7.js} +1 -1
  63. package/assets/{B4ii9PGvnlYkSX2q.js → CwNKcoA7na7Ess3a.js} +2 -2
  64. package/assets/{uoUKT9hTrwZ2INHN.js → D-MsUF59BhikcNZt.js} +3 -3
  65. package/assets/{yDh_W6M1rvuDhFv1.js → D-N87jCOShDKTFDh.js} +1 -1
  66. package/assets/{CaI562iJKKOoMw8p.js → D1tShC5iBlUoT2V2.js} +1 -1
  67. package/assets/{eWHWPRWHX6YU8bJU.js → D89TE5n8VKre9Gmp.js} +1 -1
  68. package/assets/{eV0oowKJe44NBnWj.js → D8dNiNpu9_L0NjGP.js} +1 -1
  69. package/assets/{C9wXzrhl0dwqZgJ6.js → D9ja7F9irHf9Iovx.js} +1 -1
  70. package/assets/{LugZP3XHNnoiiTJO.js → DAqaOCEQLmZRjcdR.js} +1 -1
  71. package/assets/{D4lMEKXi13vhDJbE.js → DEOkcuqKBFyRnY18.js} +1 -1
  72. package/assets/{B-7inN76S1zUWSAt.js → DFQLoYLUO4TgDZPK.js} +1 -1
  73. package/assets/{CyOyY32LLW-Pj_L7.js → DHHYGjNwlLvja3dS.js} +1 -1
  74. package/assets/{_LMcVYWJksPfGVxz.js → DLbzfP7OOWhafkTq.js} +1 -1
  75. package/assets/{DndzARNYtmumqGnG.js → DQIQR1t3IkC9wshP.js} +1 -1
  76. package/assets/{8FzS1bgbz4U1QE_m.js → DRd8gdwcr3EqtGkb.js} +1 -1
  77. package/assets/{mYZ9Z5AKCn7zltHw.js → DawLBAaNAAmo_P3Y.js} +2 -2
  78. package/assets/{BEq2PSZQN7VV19RQ.js → Dbh-XVDw294AVLtl.js} +1 -1
  79. package/assets/{CDvP9QyhDwdm3MZn.js → DdDKDqtpIkzd-mXi.js} +2 -2
  80. package/assets/{CpLTCQemd_cJ4yFu.js → DdXp_iPwTOHAOvlL.js} +8 -8
  81. package/assets/{Xkr_4WLwk0ZPaYH2.js → DdnALoxd3b8TLNla.js} +1 -1
  82. package/assets/{DIntlX_ha_wRdxYj.js → DevKDvFONeJ9euEq.js} +1 -1
  83. package/assets/{YGYD-116vlZfzPn1.js → DgVCjvTw9Df1DV1x.js} +15 -15
  84. package/assets/{DnDTldUjKy0O586y.js → DgYcOz0M0pmZf9x_.js} +2 -2
  85. package/assets/{BieAybaOdneMdvBS.js → DmVQgN-N_HhYvakk.js} +1 -1
  86. package/assets/DoScYrfTJOHXe-Ko.js +199 -0
  87. package/assets/{wYvkLI8IeHaWTtAx.js → DrLUi6vduqDLmQjl.js} +46 -46
  88. package/assets/{BJYl-kvBtcnMVP8W.js → Ds5pLAwSN4lSbao6.js} +1 -1
  89. package/assets/{klKXcdZmbQmsK2rt.js → DsBXjYAgTUXAAWZZ.js} +1 -1
  90. package/assets/{Ti7kMsQ-Eo3lkfIh.js → DtvJg63vbDd6B7sD.js} +6 -6
  91. package/assets/{nV0eE4R3npcOHLbx.js → Dvsld01DkmiNLjfP.js} +1 -1
  92. package/assets/{Dlbgs8csKymbxu7r.js → DxNK3HVEzFdUou54.js} +1 -1
  93. package/assets/{Dv9ZDmKuxn2tQDGb.js → DzGpZ2CQ1St9BF0y.js} +1 -1
  94. package/assets/{CUJiePMri5kkpdA7.js → E9mta1q4VtVUusy5.js} +1 -1
  95. package/assets/{DzLrAy24em5k5en0.js → GGcMgq3ScY7Tv0PE.js} +3 -3
  96. package/assets/{q57cDvIPcIvWlh5T.js → HVwvDMZh0ZGR-hRT.js} +3 -3
  97. package/assets/{IDq3QQa5uRqjVJx_.js → OfjHqYH31KqC5gVM.js} +1 -1
  98. package/assets/{Dc2LiflUYpt0nVVk.js → OtMeAlbq6tyW5Hnc.js} +4 -4
  99. package/assets/{Bndiqwoh132Upow1.js → UgDy0WNXuV1sEnFW.js} +2 -2
  100. package/assets/{CyYbUk6pGr3NIBsy.js → VSbzBtGH0cA8VBsM.js} +33 -33
  101. package/assets/{Cheq-qaVWm7EaIlQ.js → VWEaItb0XvCoRiCT.js} +1 -1
  102. package/assets/{DMDx0fX8tHKH0DdL.js → WSiEiaP-NUEr9UaB.js} +2 -2
  103. package/assets/{BVdH9-49M3APSiPy.js → Z5tQQ6IW5YBjblWX.js} +1 -1
  104. package/assets/{Cm2WENwEZ0KMyF--.js → b-xk3WtCPBkC4E-Z.js} +2 -2
  105. package/assets/{ndBoGVVjmy3vkff8.js → coTH4ab6CTEzw87b.js} +2 -2
  106. package/assets/{hcXZqO-0tG873E-L.js → do_DTptu6c_xHJoZ.js} +2 -2
  107. package/assets/{B6J8XN1FRN00a_ps.js → hAVtdK6u2tlLI2cB.js} +1 -1
  108. package/assets/{Cirpx81bWi4G2foA.js → hhpAcu3tINDLk7Ov.js} +5 -5
  109. package/assets/{DsWJ-YRyuwDUuSge.js → nSzQt54CIADky_tF.js} +1 -1
  110. package/assets/r-pk3RNq_HjMQFqr.js +14 -0
  111. package/assets/{Co_ZOyp4mKmSfh0A.js → ryaMyh_8KvmXVSJd.js} +1 -1
  112. package/assets/{C9eaFlFi_4GmymzP.js → sYakw2x8dcnpUlsX.js} +40 -40
  113. package/assets/{ltqqdJxoPnLCjhBV.js → tIoHMgrZeRHWyxos.js} +3 -3
  114. package/assets/{B5yaBbFj2Np9Eh8b.js → tPa3RpqYRqCCCYf1.js} +1 -1
  115. package/assets/{PMBjuoD2MpG87dao.js → v5XZSqLd9ZV3kqcA.js} +1 -1
  116. package/assets/{DMMw2v0iTuBnUjMI.js → vazKaFOkHRriv7tX.js} +1 -1
  117. package/assets/{BItblzoSm0lN3bTV.js → wWgI0JPoe_Wv0ceW.js} +1 -1
  118. package/assets/{DjH6ckvISyssOSit.js → xDx1vaNa2aCMs4_e.js} +1 -1
  119. package/assets/{Dsjx528shW3GcGpD.js → zJoBN2CJdxEV7vdh.js} +3 -3
  120. package/assets/{BkhWR4P1Evw_VP5z.js → ze6Q8BiEw9RClBzZ.js} +1 -1
  121. package/index.js +1769 -1706
  122. package/lib.js +1 -1
  123. package/licenses/dependencies.txt +35 -35
  124. package/package.json +2 -2
  125. package/screenshot-page/assets/0buGanYjZDNd9qAK.js +39 -0
  126. package/screenshot-page/assets/B2oadmu_j6WfNbZ1.js +1 -0
  127. package/screenshot-page/assets/{BMKiUDjoabO4aG1U.js → B668_VaGrdcWRbkC.js} +1 -1
  128. package/screenshot-page/assets/BGWgIYge30MP6Xhz.js +48 -0
  129. package/screenshot-page/assets/{FjOiReLnknWbsRRr.js → BGh5K-hHzy8mSVDr.js} +19 -19
  130. package/screenshot-page/assets/{BuzI4z8RJGOw8BZD.js → BIQ7KK-buzeddVA9.js} +1 -1
  131. package/screenshot-page/assets/BPRDGSNh0kvXRFUY.js +1 -0
  132. package/screenshot-page/assets/{BLPyKyNun9-SHQBZ.js → BRemww1df2HKLd_k.js} +1 -1
  133. package/screenshot-page/assets/{CXmrXx6MZ5ApF3co.js → Bm9-R9keVK5Sx-8o.js} +1 -1
  134. package/screenshot-page/assets/{BOjOE9CEMSzcij2W.js → BnZX0sxceYpvtg3I.js} +2 -2
  135. package/screenshot-page/assets/Bv2MgCMkg3EIQ6iE.js +13 -0
  136. package/screenshot-page/assets/BvaiwYJ5zZ0d5NRP.js +1 -0
  137. package/screenshot-page/assets/CAlTfQ_Gh-dURmUc.js +1 -0
  138. package/screenshot-page/assets/CCFxspvs5VzbYCfl.js +1 -0
  139. package/screenshot-page/assets/CCqTTfzZokVHIzs2.js +1 -0
  140. package/screenshot-page/assets/CPs_ARK8JCyz-yZg.js +1 -0
  141. package/screenshot-page/assets/{B9kA0vdaFJi9iRGo.js → CQ9C0-FcDZxrgC3T.js} +4 -4
  142. package/screenshot-page/assets/CUeMb48Ucrm5dK5u.js +1 -0
  143. package/screenshot-page/assets/CcOIj8c4N9KaWnD7.js +1 -0
  144. package/screenshot-page/assets/CjrHeIdacavAT_Ud.js +3 -0
  145. package/screenshot-page/assets/{RutPv2GFWmeBiWvn.js → Cmv8bpHaTWZ7Lmbt.js} +2 -2
  146. package/screenshot-page/assets/CqccUqSMYlwlf2ZU.js +2 -0
  147. package/screenshot-page/assets/CvmImq-Kbg9srxNr.js +4 -0
  148. package/screenshot-page/assets/D-3wYBqe4SWdE6bx.js +2 -0
  149. package/screenshot-page/assets/D-FWnGDbZ9BRDzPR.js +1 -0
  150. package/screenshot-page/assets/D717DArr-KKL0U6R.js +1 -0
  151. package/screenshot-page/assets/{BnPHZ_1rjv6kQgsL.js → D8-mayyvvVE1a4JB.js} +1 -1
  152. package/screenshot-page/assets/DM27mE98BNk1T18I.js +1 -0
  153. package/screenshot-page/assets/DN-T1DyRMKvxEJSK.js +1 -0
  154. package/screenshot-page/assets/DRdL1GN4SP7P8lSP.js +2 -0
  155. package/screenshot-page/assets/DcnhaY93LQd7kVdH.js +2 -0
  156. package/screenshot-page/assets/{BWtLNVUXjY6EBdEt.js → DdusmeEPaU7CWT6e.js} +1 -1
  157. package/screenshot-page/assets/{Dkr-6Z1RJsAp9Xrv.js → DfT1DMR1b5kiyYiV.js} +1 -1
  158. package/screenshot-page/assets/DigI6jhjHePzLgg1.js +1 -0
  159. package/screenshot-page/assets/DrDLCC0R2IV5VJd7.js +1 -0
  160. package/screenshot-page/assets/{H_hWDMWfWmjTui7V.js → Dwv5Z_c2XS-hm-5y.js} +1 -1
  161. package/screenshot-page/assets/Dx0pUf3G4Oa3dGOk.js +1 -0
  162. package/screenshot-page/assets/JcgNMFaj_uqHSFxr.js +1 -0
  163. package/screenshot-page/assets/{Bf9AN5sYHaxae0vV.js → U_8_wApwfA7KmIG3.js} +11 -11
  164. package/screenshot-page/assets/{XiUItCqTNNEApgfa.js → WZprjN2sb7HlraOb.js} +2 -2
  165. package/screenshot-page/assets/{C4v6Ljs6kwQJu06t.js → adhmz3N2Kgq5eW66.js} +2 -2
  166. package/screenshot-page/assets/qjoaeEBxfKWCHmqK.js +2 -0
  167. package/screenshot-page/assets/{BUO6zT3gqK0uOOa-.js → zALFdtoGJBN6m2Bn.js} +1 -1
  168. package/screenshot-page/assets/zd1Z2E1NjFp2EWC7.js +5 -0
  169. package/screenshot-page/index.html +8 -8
  170. package/types/scripting-api.json +7066 -7065
  171. package/types/scripting.d.ts +37 -9
  172. package/assets/BmmIukrNOivfENgD.js +0 -199
  173. package/assets/CCl8x9s8Bujsew7W.js +0 -14
  174. package/screenshot-page/assets/1yHlU53ypZZelMPx.js +0 -1
  175. package/screenshot-page/assets/BQ5BNe1adYfpa2OH.js +0 -1
  176. package/screenshot-page/assets/BZpFWPd0PR1kPT-A.js +0 -1
  177. package/screenshot-page/assets/BaCs7lUeZ7NidSkP.js +0 -1
  178. package/screenshot-page/assets/Bh2PQ0zsoGtMKWp1.js +0 -39
  179. package/screenshot-page/assets/BkhZQsVlVHOiKGTJ.js +0 -1
  180. package/screenshot-page/assets/Bzf_upccQ2ho6mX0.js +0 -13
  181. package/screenshot-page/assets/C0AbuMHcIS9oy4XL.js +0 -1
  182. package/screenshot-page/assets/C7YRL2bVWHPIwzn_.js +0 -1
  183. package/screenshot-page/assets/CImp91jfSuqX0Wz-.js +0 -1
  184. package/screenshot-page/assets/C_vPl50T1L5HWnhv.js +0 -1
  185. package/screenshot-page/assets/Cv-YUArreXqhafcU.js +0 -2
  186. package/screenshot-page/assets/D23_69pojBfIh4nV.js +0 -5
  187. package/screenshot-page/assets/D2q4M3I5Jmxm85P2.js +0 -1
  188. package/screenshot-page/assets/D8QsCbSaWCLAYYso.js +0 -1
  189. package/screenshot-page/assets/DC_Hdwa9KL7xKU8u.js +0 -2
  190. package/screenshot-page/assets/DHtL9Iawmr2Uo5VV.js +0 -2
  191. package/screenshot-page/assets/DKWRl8rs3K9jBYtr.js +0 -1
  192. package/screenshot-page/assets/DNYWB6WNZTquqQ9v.js +0 -4
  193. package/screenshot-page/assets/DegZKTNqt1LRnSxY.js +0 -1
  194. package/screenshot-page/assets/Dhh1xqujbhLa8WFd.js +0 -1
  195. package/screenshot-page/assets/DllI8kZZZ5LG0Mjd.js +0 -2
  196. package/screenshot-page/assets/DrcpGT9FLbDzeLeG.js +0 -2
  197. package/screenshot-page/assets/LCjlxIt1dn3smVjX.js +0 -1
  198. package/screenshot-page/assets/TwKKik-YQENv52LX.js +0 -1
  199. package/screenshot-page/assets/XrFpPrRqQNE9AAwH.js +0 -1
  200. package/screenshot-page/assets/mBuOPJeUPXlKwfPZ.js +0 -48
  201. package/screenshot-page/assets/zSnM7GhGzLu1MM_u.js +0 -3
@@ -18650,28 +18650,55 @@ declare global {
18650
18650
  stops: IConditionalFormat.ColorScaleStop[];
18651
18651
  }
18652
18652
  /**
18653
- * An in-cell bar whose length is the value's position between the two stops.
18653
+ * An in-cell bar whose length is the value's position between {@link minPoint} and
18654
+ * {@link maxPoint}.
18654
18655
  */
18655
18656
  interface DataBar {
18657
+ /**
18658
+ * Indicates the type of the scale, which for a data bar is always `DataBar`.
18659
+ */
18656
18660
  type: typeof IConditionalFormat.ScaleType.DataBar;
18657
18661
  /**
18658
- * The lower and upper bound of the bar. Always two; a missing bound is `min` / `max`.
18662
+ * The value at which the bar is shortest.
18663
+ *
18664
+ * @defaultValue `{ type: 'min' }`
18659
18665
  */
18660
- stops: IConditionalFormat.Stop[];
18666
+ minPoint?: IConditionalFormat.Stop;
18661
18667
  /**
18662
- * The bar's fill color.
18668
+ * The value at which the bar is longest.
18669
+ *
18670
+ * @defaultValue `{ type: 'max' }`
18671
+ */
18672
+ maxPoint?: IConditionalFormat.Stop;
18673
+ /**
18674
+ * The bar's color, for a solid or a gradient bar alike; a gradient fades from it.
18675
+ *
18676
+ * @defaultValue '#638EC6'
18663
18677
  */
18664
18678
  color?: string;
18679
+ /**
18680
+ * The longest bar, as a whole percent of the cell's width.
18681
+ *
18682
+ * @defaultValue 100
18683
+ */
18665
18684
  maxLength?: number;
18685
+ /**
18686
+ * The shortest bar, as a whole percent of the cell's width.
18687
+ *
18688
+ * @defaultValue 0
18689
+ */
18666
18690
  minLength?: number;
18667
18691
  /**
18668
18692
  * If true, the value will be shown in the cell.
18669
18693
  */
18670
18694
  showValue?: boolean;
18671
18695
  /**
18672
- * A gradient fill fading from {@link color}; absent is a solid bar.
18696
+ * If true, the bar is painted in {@link color} edge to edge. Otherwise it is a gradient,
18697
+ * solid at its base and fading toward its tip.
18698
+ *
18699
+ * @defaultValue false
18673
18700
  */
18674
- gradient?: boolean;
18701
+ solidFill?: boolean;
18675
18702
  /**
18676
18703
  * The bar's border color. Absent means no border.
18677
18704
  */
@@ -18682,6 +18709,7 @@ declare global {
18682
18709
  negativeFillColor?: string;
18683
18710
  /**
18684
18711
  * The border for bars of negative values. Absent means negative bars use
18712
+ *
18685
18713
  * {@link borderColor}.
18686
18714
  */
18687
18715
  negativeBorderColor?: string;
@@ -18747,7 +18775,7 @@ declare global {
18747
18775
  interface DataBarDecoration {
18748
18776
  type: typeof IConditionalFormat.ScaleType.DataBar;
18749
18777
  /**
18750
- * Where the value sits on the track, `0` (lower stop) to `1` (upper stop). Clamped.
18778
+ * Where the value sits on the track, `0` (the min point) to `1` (the max point). Clamped.
18751
18779
  */
18752
18780
  value: number;
18753
18781
  /**
@@ -18765,8 +18793,8 @@ declare global {
18765
18793
  negativeBorderColor?: string;
18766
18794
  /** The axis rule's color, resolved. Only meaningful when {@link axis} is not `0`. */
18767
18795
  axisColor?: string;
18768
- /** Fade the fill from {@link color} rather than painting it solid. */
18769
- gradient: boolean;
18796
+ /** Paint the bar in {@link color} edge to edge rather than fading it toward its tip. */
18797
+ solidFill: boolean;
18770
18798
  /** The direction the bar grows in, resolved against the cell's text direction. */
18771
18799
  direction: 'leftToRight' | 'rightToLeft';
18772
18800
  /** Draw the cell's value beside the bar. When `false` the bar is the cell's only content. */
@@ -1,199 +0,0 @@
1
- /**
2
- * @license @sheetxl/mcp - MCP server exposing SheetXL spreadsheet operations as tools and resources. - v0.8.0-beta.20
3
- *
4
- * (C) 2026-present SheetXL Inc. & Michael T. Ford
5
- * License: SheetXL EULA — https://www.sheetxl.com/eula
6
- */
7
- import { Ki as e, Ma as t, Ot as n, P as r, _r as s, da as o, t as l, tt as a, u as c, wn as i } from "./DTXRsv2Ww7WbIwCb.js";
8
- var u = Symbol("sheetxl.formulaNode.internal"), f = Symbol("sheetxl.formulaNode.value"), p = Symbol("sheetxl.formulaNode.replaced"), g = { canonical: !0 }, v = (e, t) => {
9
- const r = e.inputs;
10
- let s = null;
11
- if (r) {
12
- const e = r.length;
13
- s = new Array(e);
14
- for (let n = 0; n < e; n++) {
15
- const e = r[n];
16
- s[n] = e ? v(e, t) : e;
17
- }
18
- }
19
- const o = ((e, t) => {
20
- const r = e.type, s = e.value;
21
- if (r === c.Named) {
22
- const r = s;
23
- let o = r?.nameId, l = r?.scope ?? null;
24
- return t && (o = t.resolve(n.NamedFormula, o)?.toString() ?? o, l && (l = t.resolve(n.Sheet, l)?.toString() ?? l)), e.binding?.declaration && e.binding.optional ? {
25
- name: o,
26
- scope: l,
27
- optional: !0
28
- } : {
29
- name: o,
30
- scope: l
31
- };
32
- }
33
- if (r === c.TableReference) {
34
- const e = "string" == typeof s ? s : s?.tableId;
35
- return e ? t ? t.resolve(n.Table, e)?.toString() ?? e : e : "";
36
- }
37
- if (!t) return s;
38
- switch (r) {
39
- case c.Function: return t.resolve(n.Function, s, g)?.toString() ?? s;
40
- case c.TableColumn: return t.resolve(n.TableColumn, s)?.toString() ?? s;
41
- case c.Cell: {
42
- const e = s;
43
- if (e?.scope) {
44
- const r = t.resolve(n.Sheet, e.scope)?.toString() ?? e.scope;
45
- return {
46
- ...e,
47
- scope: r
48
- };
49
- }
50
- return s;
51
- }
52
- case c.Error: {
53
- const e = s;
54
- if (e?.scope) {
55
- const r = t.resolve(n.Sheet, e.scope)?.toString() ?? e.scope;
56
- return {
57
- ...e,
58
- scope: r
59
- };
60
- }
61
- return s;
62
- }
63
- default: return s;
64
- }
65
- })(e, t);
66
- return {
67
- type: e.type,
68
- value: o,
69
- inputs: s,
70
- isReference: e.isReference,
71
- [u]: e,
72
- [f]: o
73
- };
74
- }, m = (e, t, n) => {
75
- const r = e.inputs;
76
- let s;
77
- if (r) {
78
- const t = r.length;
79
- for (let o = 0; o < t; o++) {
80
- const t = r[o];
81
- if (!t) continue;
82
- const l = m(t, e, n);
83
- l !== t && (s || (s = [...r]), s[o] = l);
84
- }
85
- }
86
- let o = e;
87
- s && (o = {
88
- ...e,
89
- inputs: s
90
- });
91
- const l = n(o, t);
92
- return null == l || l === o ? o : (void 0 === l[u] && void 0 !== o[u] && (l[p] = o[u]), l);
93
- }, y = [
94
- ":",
95
- ".:.",
96
- ".:",
97
- ":.",
98
- " "
99
- ], d = (n, a) => {
100
- const u = n.type, f = n.value;
101
- switch (u) {
102
- case c.Function: return i(String(f), a);
103
- case c.Infix: return l(f, a[0], a[1], n.isReference ?? y.includes(f));
104
- case c.Prefix: return t(f, a?.[0], n.isReference ?? "@" === f);
105
- case c.Postfix: return s(f, a?.[0], n.isReference ?? "#" === f);
106
- case c.Named: {
107
- const t = e("string" == typeof f ? f : f?.name), n = "object" == typeof f ? f?.scope : null;
108
- return n && (t.value = {
109
- ...t.value,
110
- scope: n
111
- }), "object" == typeof f && !0 === f?.optional && (t.value = {
112
- ...t.value,
113
- optional: !0
114
- }), t;
115
- }
116
- case c.Cell: return r(f);
117
- case c.TableReference: return {
118
- type: c.TableReference,
119
- value: f,
120
- inputs: a ?? null,
121
- isReference: !0
122
- };
123
- case c.TableSpecifier: return {
124
- type: c.TableSpecifier,
125
- value: f,
126
- image: `[${f}]`,
127
- inputs: null,
128
- isReference: !0
129
- };
130
- case c.TableColumn: {
131
- const e = "string" == typeof f && f.startsWith("[") ? f : `[${o(String(f))}]`;
132
- return {
133
- type: c.TableColumn,
134
- value: f,
135
- image: e,
136
- inputs: null,
137
- isReference: !0
138
- };
139
- }
140
- case c.String:
141
- case c.Number:
142
- case c.Boolean: return {
143
- type: u,
144
- value: f,
145
- inputs: null,
146
- isLiteral: !0
147
- };
148
- default: return {
149
- type: u,
150
- value: f,
151
- inputs: a ?? null,
152
- isReference: n.isReference
153
- };
154
- }
155
- }, b = (e) => {
156
- const t = e[u], n = e.inputs;
157
- let r = null;
158
- if (n) {
159
- const e = n.length;
160
- r = new Array(e);
161
- for (let t = 0; t < e; t++) {
162
- const e = n[t];
163
- r[t] = e ? b(e) : e;
164
- }
165
- }
166
- if (t) {
167
- const n = e.value !== e[f];
168
- let s = !1;
169
- const o = t.inputs;
170
- if (r && o && r.length === o.length) {
171
- for (let e = 0; e < r.length; e++) if (r[e] !== o[e]) {
172
- s = !0;
173
- break;
174
- }
175
- } else s = null === r != (null == o) || (r?.length ?? 0) !== (o?.length ?? 0);
176
- if (!n && !s) return t;
177
- if (!n) return {
178
- ...t,
179
- inputs: r
180
- };
181
- const l = d(e, r);
182
- return S(l, t), l;
183
- }
184
- const s = d(e, r), o = e[p];
185
- return o && S(s, o), s;
186
- }, S = (e, t) => {
187
- a(e, t), e.type !== t.type && void 0 !== e.image && (e.image = void 0);
188
- };
189
- function h(e, t) {
190
- return v(e, t);
191
- }
192
- function R(e, t) {
193
- return e && "function" == typeof t ? m(e, void 0, t) : e;
194
- }
195
- function T(e) {
196
- const t = b(e);
197
- return !0 === e.legacyIntersect && (t.legacyIntersect = !0), t;
198
- }
199
- export { h as n, T as r, R as t };
@@ -1,14 +0,0 @@
1
- /**
2
- * @license @sheetxl/mcp - MCP server exposing SheetXL spreadsheet operations as tools and resources. - v0.8.0-beta.20
3
- *
4
- * (C) 2026-present SheetXL Inc. & Michael T. Ford
5
- * License: SheetXL EULA — https://www.sheetxl.com/eula
6
- */
7
- import { $ as a, A as s, B as e, C as o, D as t, E as r, F as l, G as i, H as n, I as c, J as m, K as I, L as d, M as g, N as C, O as S, P as R, Q as p, R as u, S as L, St as T, T as E, U as h, V as k, W as y, X as b, Y as f, Z as F, _ as O, _t as U, a as x, at as A, b as P, bt as N, c as D, ct as _, d as v, dt as M, et as B, f as K, ft as w, g as W, gt as V, h as j, ht as z, i as G, it as H, j as X, k as Y, l as Q, lt as q, m as J, mt as Z, n as $, nt as aa, o as sa, ot as ea, p as oa, pt as ta, q as ra, r as la, rt as ia, s as na, st as ca, t as ma, tt as Ia, u as da, ut as ga, v as Ca, vt as Sa, w as Ra, x as pa, xt as ua, y as La, yt as Ta, z as Ea } from "./CyOyY32LLW-Pj_L7.js";
8
- import { a as ha, i as ka, o as ya } from "./C7oUg84aGjYrJUc6.js";
9
- import { C as ba, Dt as fa, F as Fa, G as Oa, Kt as Ua, Tt as xa, U as Aa, V as Pa, Vt as Na, Z as Da, at as _a, ht as va, i as Ma, k as Ba, lt as Ka, o as wa, p as Wa, v as Va } from "./C9aV1SF8uCWIB4zU.js";
10
- import { a as ja, c as za, d as Ga, f as Ha, i as Xa, l as Ya, m as Qa, n as qa, o as Ja, p as Za, r as $a, s as as, t as ss, u as es } from "./CrRJqUPbvvhnp4p4.js";
11
- import { $i as os, At as ts, Ea as rs, Et as ls, Gi as is, H as ns, In as cs, J as ms, Jt as Is, K as ds, Ka as gs, La as Cs, Li as Ss, Mn as Rs, N as ps, Na as us, Nr as Ls, Oa as Ts, Oi as Es, On as hs, Or as ks, Q as ys, Qr as bs, Qt as fs, R as Fs, Ra as Os, Ri as Us, Rt as xs, Si as As, T as Ps, Tt as Ns, Un as Ds, Ut as _s, Vt as vs, Wi as Ms, Wt as Bs, Xn as Ks, Xr as ws, Xt as Ws, Y as Vs, Ya as js, Yt as zs, Z as Gs, Zi as Hs, _a as Xs, _n as Ys, an as Qs, b as qs, bn as Js, bt as Zs, ci as $s, di as ae, do as se, dr as ee, dt as oe, ei as te, en as re, er as le, f as ie, ft as ne, ga as ce, h as me, ho as Ie, ii as de, in as ge, ka as Ce, kn as Se, ln as Re, lt as pe, mi as ue, mt as Le, o as Te, oo as Ee, ot as he, pa as ke, qi as ye, sa as be, sn as fe, ta as Fe, tn as Oe, wt as Ue, zt as xe } from "./DTXRsv2Ww7WbIwCb.js";
12
- import { n as Ae, r as Pe } from "./uoUKT9hTrwZ2INHN.js";
13
- import { A as Ne, C as De, D as _e, E as ve, F as Me, I as Be, L as Ke, M as we, N as We, O as Ve, P as je, R as ze, S as Ge, T as He, _ as Xe, a as Ye, b as Qe, c as qe, d as Je, f as Ze, g as $e, h as ao, i as so, j as eo, k as oo, l as to, m as ro, n as lo, o as io, p as no, r as co, s as mo, t as Io, u as go, v as Co, w as So, x as Ro, y as po, z as uo } from "./DsSlUklPSAsh9DhW.js";
14
- export { Ks as AbstractCollection, ka as AbstractMovableContent, se as AddressUtils, o as AnchorLocation, ve as ArrayBackingStore, Ys as AutoFill, ia as AxisSelection, io as BUILD_DATE, q as BufferLogger, ua as BufferUtils, Ss as CellControlRegistry, ts as CellImage, Rs as CellImageKind, U as ChainedError, qs as ChartElementSelection, Pe as ChartKinds, be as CheckboxKind, u as ClipboardUtils, Aa as Color, x as CommonMessages, z as CommonUtils, oe as Condition, g as ConsoleLogger, S as ConsoleNotifier, ea as CoordUtils, $a as DEFAULT_LOCALE_PROFILE, R as DEFAULT_LOG_TIMEOUT_MS, w as DOMUtils, ae as DateUtils, L as DefaultLanguagePackService, Qe as DefaultWorkbookIO, l as Deferred, Ra as Direction, W as ENGLISH_TAG, Re as EXTERNAL_LINK_PATH_REL_TYPE, Sa as ErrorUtils, Ia as ExpectedError, Je as ExternalRangeClipboardItem, Be as FONTS_KIND, go as Fetcher, Da as FontUtils, Qa as FormulaContext, es as FormulaError, de as FormulaText, Ro as FunctionDeclarations, ms as GeomUtils, ps as Hyperlink, xe as HyperlinkKind, ne as IAnchored, Ua as IBorders, gs as ICalculation, Ls as ICell, Ve as ICellHeaderRange, Ms as ICellRange, we as ICellRanges, Va as ICellStyle, Na as IColor, Xs as ICondition, Fs as IConditionalFormat, lo as ICustomProperty, Ts as IDataValidation, to as IDropDown, xa as IEffect, Fa as IFill, Oa as IFont, ee as IFontCollection, ba as IFontStyle, Ke as IFormControl, wa as IGeometry, Ye as IMovable, Js as IPageLayout, eo as IPicture, Cs as IPivotTable, Za as IRange, Ga as IRangeStats, We as IResource, ks as IRichDataKind, Hs as IScript, fa as IShape, Te as ISheet, Ns as ISlicerStyle, so as ISort, js as ISparklineGroup, Wa as IStroke, Ce as ITable, Us as ITableStyle, Ws as IText, Ka as ITextFrame, Me as ITheme, us as IThemeCollection, $e as IWorkbookIO, po as IWorkbookView, Is as IWorksheetView, _ as ImageUtils, M as InternalClipboard, Xa as InteropScalarType, t as InvalidPasswordError, Ge as LOCALES_KIND, n as LOG_TIMEOUT_ENV, na as LazyLoadError, La as LazyModules, ue as LicenseManager, E as MimeType, ie as MovableContentRegistry, cs as NamedStyleCollection, ta as NotImplementedError, m as Notifier, G as NullNotAllowedError, va as NumberFormat, as as Observable, F as OutOfBoundsError, j as OverlappingRange, Ae as PaintUtils, O as PartialError, N as PasswordRequiredError, uo as PersonCollection, e as ProtectedError, p as RangeAxis, mo as RangeClipboardItem, y as RangeSweep, Io as RectAlignment, ke as Registry, ns as Resource, Vs as ResourceCollection, ds as RichArray, Oe as RichArrayKind, $s as RichDataCollection, pe as RichDataRegistry, As as RichRecord, Ps as RichText, Es as RichTextKind, He as SHEETXL_RESOURCE_KINDS, Pa as SYSTEM_COLOR_CSS_PREFIX, Ja as Scalar, Ha as ScalarType, qa as ScopedFormulaContext, Q as SelectionTraversalUtils, Ba as ShapeStyleUtils, Gs as SimpleFontFace, Qs as SlicerStyleCollection, Bs as Sort, fe as StringCollection, ss as StubbedFormulaContext, Ie as StyleCollection, no as Table, zs as TableStyleCollection, he as TextRotation, me as TextStacked, Ds as TextUtils, vs as Theme, hs as ThemeCollection, ma as TimerUtils, ya as TransactionConflictError, qe as TransactionSaveStateManager, ha as TransactionStore, co as TransactionUndoManager, Fe as Tuple, s as TypedError, J as TypedObject, r as TypesUtils, c as UndoManager, ze as VERSION, za as ValueKind, Ya as WildCard, je as Workbook, Ne as WorkbookIO, Xe as WorkbookOrigin, ro as WorkbookView, Ue as Worksheet, H as addResourceRoot, So as builtInStyleNameDisplay, ge as createCellRangeCounts, Co as createChart, P as createLanguagePackService, b as createLogChannels, ca as createPieceStore, sa as createSeededRandom, I as defineLazyModule, ys as externalBookClosedName, re as externalBookFileName, le as externalBookLocation, ce as externalBookOpenName, f as fetchLocaleResource, C as fetchLocaleResourceAll, ws as findLabel, D as formatMessage, _e as getBuiltInFunctionNames, Ee as getLanguagePack, Ma as getLocaleProfile, i as getLocaleResourceBase, bs as getScriptRuntime, Ze as getScriptingApi, oo as getScriptingDeclarations, d as growInt32, a as growPieces, T as hashText, pa as instantiateWasmBindgen, K as instantiateWasmBindgenSync, $ as interpolate, ja as isLazyValue, la as keyedRandom, h as listLocaleResources, X as listResources, aa as loadPackageLocales, Z as loadResource, _s as localizeBoolean, xs as localizeErrorLabel, _a as makeLocaleProfile, ga as mergeMessageFiles, da as messageKey, Os as normalizeLabel, Y as onResourceRootsChange, Se as parseBooleanLocal, ls as parseErrorLocal, Le as parseExternalScope, De as parseFormulaLiteral, V as parseLogTimeout, rs as pivotBoxOf, te as pivotCellFormatsOf, ye as pivotControlsIn, os as pivotFieldAt, ao as pivotStylePreviewOf, Ca as registerPackageMessages, fs as registerSdkLocales, Ta as releaseChannel, k as resolveLocaleChain, A as resolveLocaleResource, Ea as resolveLogTimeout, B as setLocaleResourceBase, Zs as sourceEntryFromPath, oa as t, v as trackLocaleRegistration, ra as whenLocalesRegistered, is as withScriptRuntime };
@@ -1 +0,0 @@
1
- import{n as e}from"./CbXtAM7H-Jg_J0dk.js";import{i as t,t as n}from"./-cpi3yOZYn6GsYN4.js";import{n as r}from"./DKVB6ddRfDJatYid.js";import{t as i}from"./CXUO3vYip3JPSJ7A.js";import{W as a,k as o,n as s}from"./D23_69pojBfIh4nV.js";var c=e(t(),1),l=n(),u=(0,c.memo)((0,c.forwardRef)((e,t)=>{let{children:n,disabled:r,style:a,movable:u,zoom:d=1,description:f,isDragging:p,onHide:m,onShow:h,onDragZone:g,adornmentHost:_,flip:v,gesture:y,...b}=e;(0,c.useEffect)(()=>{},[f]);let x=s(t,()=>({isEmptyFrame:()=>!0}),[]),[S,{height:C,width:w}]=o(),T=i([x,S]);return(0,l.jsx)(`div`,{className:`unknown-editor`,...b,ref:T,style:{width:`100%`,height:`100%`,border:`var(--sxl-color-neutral, grey) solid 1px`,backgroundColor:`var(--sxl-color-base-100, white)`,backgroundImage:`var(--sxl-image-background)`,alignItems:`center`,justifyContent:`center`,zoom:d,display:`flex`,position:`relative`,filter:r?`blur(1px)`:void 0,boxShadow:p?`1px 1px 2px var(--sxl-color-shadow, rgba(0,0,0,.15))`:void 0,overflow:`hidden`,wordBreak:`break-word`,...a},children:f})})),d=r({ErrorContentFrame:()=>p,UnsupportedContentFrame:()=>m}),f=Object.freeze({border:`var(--sxl-color-error, red) solid 2px`}),p=(0,c.memo)(e=>{let t=a(),n=e.movable.getContent(),r=n.getError(),i=r?.message??String(r);return(0,l.jsx)(u,{...e,style:f,description:t(`movable.contentError`,{type:n.getOriginalType(),message:i})})}),m=(0,c.memo)(e=>{let t=a();return(0,l.jsx)(u,{...e,style:f,description:t(`movable.unsupportedType`,{type:e.movable.getContent().getType()})})});export{m as n,d as r,u as t};
@@ -1 +0,0 @@
1
- import{u as e,y as t}from"./ChSvXfVMLxZsP9zG.js";import{Jt as n,L as r,an as i,qt as a}from"./DuYb_otrRZZDq6-f.js";import{i as o}from"./CQukCzhuewMuFOlO.js";import{Br as s,Dr as c,Hi as l,Hn as u,Ht as d,Ir as f,Jr as p,Ki as m,Kn as h,Mi as g,Mr as _,Nn as v,Nr as y,Nt as b,Pi as x,Q as S,Qi as C,Ta as w,Vi as T,Vr as E,Wr as D,Yn as O,a as k,bn as A,f as j,gi as M,i as N,ia as P,ii as F,it as I,ln as L,lr as R,mr as z,qt as B,si as V,tn as H,vt as U,wt as W,xr as G,zi as K}from"./Bf9AN5sYHaxae0vV.js";import{c as ee,n as q,r as te,s as J,t as ne}from"./BnPHZ_1rjv6kQgsL.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=h(e.records,n.length);if(!n.some(B))return r;let i=h(e.items,n.length),a=e.recordCount??0,o=r.slice();for(let e=0;e<n.length;e++){let s=n[e];if(!B(s))continue;let c=s.group,l=r[c.base]??[],u=i[c.base]??[],d=new Int32Array(u.length);for(let e=0;e<u.length;e++){let n=c.range?re(c.range,c.items.length,V(u[e]),t):c.discrete?.[e]??null;d[e]=n??-1}let f=Array(a);for(let e=0;e<a;e++){let t=d[l[e]];if(t===void 0||t<0)return null;f[e]=t}o[e]=f}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=>f(t.name,e));return t>=0&&c.push(t),t>=0?``:null});for(let i of c)if(m(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(m(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=>f(t.name,e));return i>=0?le(m(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=F.peek(),a=e.fields,o=t.fields;if(!i||!a||!o||a.length!==o.length)return null;if(A(e))return{cells:[],...S,rowPageCount:0,columnPageCount:0,header:d(e),rowLines:[],columnLines:[],viewValues:[],firstKey:null,...r?.roles?{roles:new Map}:{}};let s=x(e,o),c=s?r?.filters:null;if(s&&!c)return null;let l=a.some(e=>e.items?.some(e=>e.calculated));if(l&&!c?.calculatedRecords)return null;let u=fe(e,t);if(!u||u.measures.length>0&&!c?.fieldValues||(e.dataFields??[]).some(e=>Pe[e.showDataAs??`normal`]===void 0||De[e.subtotal??`sum`]===void 0))return null;let f=Ie(e,t,n,c?.calculatedRecords,u.operands);if(!f)return null;let{items:p,records:m,values:h,n:g}=f,_=e=>!!e&&(!e.noRecords||B(e)),v=e.form??`compact`,y=e=>{let t=[];for(let n of e??[]){if(n===Z){t.push({field:n,form:v});continue}let e=a[n],r=e?.subtotals;if(!e||!_(o[n])||l&&r&&r.some(e=>e!=="default"))return null;t.push({field:n,form:e.form??`compact`})}return t},b=y(e.rowFields),C=y(e.columnFields),w=e.pageFields??[];if(!b||!C||w.some(e=>!_(o[e.field])))return null;let T=L(e,r?.slicerFields);return T.pageFields?.some(e=>!_(o[e.field]))?null:We(e,t,p,b,C,Be(i,T,p,m,h,b,C,g,c?.keep,c?.records,u.operands.length,c?.fieldValues,!0),n,!0===r?.roles,r?.cellOrder===`columns`)},Ie=(e,t,n,r,i=[])=>{let a=t.fields?.length??0,o=E(t);if(!t.records)return null;let s=ie(t,n.isDate1904());if(!s)return null;let c=!0===t.fields?.some(B),l=c?h(t.items,a):o,u=c?h(t.records,a):s,d=t.recordCount??0,f=r?.count??0,p=d+f,m=(e,n)=>{let r=!t.fields?.[e]?.noRecords,i=r?u[e]:s[e]??[],a=r?l[e]:o[e],c=Array(p);for(let e=0;e<d;e++)c[e]=V(a[i[e]]);for(let e=0;e<f;e++)c[d+e]=n?.[e]??null;return c},g=[...(e.dataFields??[]).map((e,t)=>m(e.field,r?.values[t])),...i.map(e=>m(e))];return{items:o,records:r?s.map((e,t)=>e.concat(r.ids[t]??[])):s,values:g,n:p}},Le=async(e,t,n,r,i,a,o,s,c)=>{let l=F.peek(),u=e.dataFields?.[i];if(!l||!e.fields||!u||De[u.subtotal??`sum`]===void 0)return null;let d=[e.rowFields,e.columnFields].map(e=>(e??[]).filter(e=>e!==Z)),f=d.findIndex(e=>e.includes(r)),p=d[f];if(!p)return null;let m=p.slice(0,p.indexOf(r)),h=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:g,..._}=e,{showDataAs:v,...y}=u,b={..._,fields:h,rowFields:[...m,r],columnFields:[],dataFields:[y],rowGrandTotals:!1},x=s&&{...s,values:[s.values[i]??[]]},S=fe(b,t);if(!S||S.measures.length>0&&!c)return null;let C=Ie(b,t,n,x,S.operands);if(!C)return null;let{items:w,records:T,values:E,n:D}=C,O=b.rowFields.map(e=>({field:e,form:`compact`})),k;if(o){let e=f===0?1:2;k=new Uint8Array(D);for(let t=0;t<D;t++){let n=o[t];k[t]=(n&e?1:0)|(n===3?2:0)}}let A=S.measures.length>0?await ze(l,S,b,w,T,E,O,[],D,a,k,c):void 0,j=Be(l,b,w,T,E,O,[],D,a,k,S.operands.length,A),M=(t,n)=>e.fields[t].items?.[n]?.item??n,N=new Map,P=j.columns.length;return j.rows.forEach((e,t)=>{if(e.kind!==xe||e.path.length!==m.length+1)return;let n=m.map((t,n)=>M(t,e.path[n])).join(`,`),i=N.get(n);i||N.set(n,i={ids:[],totals:[]}),i.ids.push(M(r,e.path[m.length])),i.totals.push(j.values[t*P])}),{outer:m,groups:N,records:T}},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,c,u,f,p)=>{let m=e.fields,h=t.fields,_=e.dataFields??[],y=t=>t===Z?e.valuesCaption??`Values`:m[t].name??h[t].name,b=(e,t)=>{if(e===Z)return _[t]?.name??``;let r=m[e].items?.[t];if(r?.name!==void 0)return r.name;let i=V(n[e][r?.item??t]);return i===null?v:i},x=(e,t)=>{let n=b(e,t);if(typeof n==`number`){let r=m[e].items?.[t]?.item??t,a=(m[e].numberFormat??h[e].numberFormat)===void 0&&l(h[e],r);return i(u,a?T(R(h[e],r),u):(e=>T(m[e].numberFormat??h[e].numberFormat,u))(e),n)}return o.isError(n)?n.getLabel():typeof n==`boolean`?n?`TRUE`:`FALSE`:String(n)},S=e=>{if(e.item!==void 0)return b(e.field,e.item);let t=m[e.field].items??[];if(!t.some(e=>e.hidden))return`(All)`;let n=t.flatMap((e,t)=>O(e)&&!e.hidden?[t]:[]);return n.length===1?b(e.field,n[0]):`(Multiple Items)`},C=e.grandTotalCaption??`Grand Total`,w=f?new Map:null,E=(e,t)=>e===Z?{kind:`dataCaption`,data:t}:{kind:`item`,field:e,rank:t},D=e=>e===Z?null:{kind:`fieldCaption`,field:e},k=(e,t)=>e.kind===Ce&&t===C?{kind:`grandTotal`}:null,A=r.length===0&&a.length===0&&_.length===0,j=A?{firstHeaderRow:0,firstDataRow:0,firstDataCol:0}:d(e),M=A?[]:Ue(c.rows,c.functions),P=A?[]:Ue(c.columns,c.functions),F=N({...e,header:j,rowLines:M,columnLines:P}),I=c.columns.length,L=e=>e===`row`?r:a,z=t=>{switch(t.kind){case`pageCaption`:{let n=e.pageFields[t.page].field;return[y(n),{kind:`fieldCaption`,field:n}]}case`pageItem`:{let n=e.pageFields[t.page];return[S(n),{kind:`pageItem`,page:t.page}]}case`dataCaption`:return[_[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=L(t.axis)[t.level].field;return[y(e),D(e)]}case`label`:{let e=L(t.axis)[t.level].field,n=t.line.path[t.level];return[b(e,n),E(e,n)]}case`total`:{let e=(t.axis===`row`?c.rows:c.columns)[t.line.index],n=((e,t)=>{let n=e.findIndex(e=>e.field===Z)>=t.path.length&&t.data!==null,r=n?_[t.data]?.name??``:``;if(t.kind===Ce)return n?`Total ${r}`:C;let i=t.path.length-1,a=e[i].field,o=x(a,t.path[i]);if(t.function!==null){let e=Ae[c.functions[t.function]];return(n||t.across)&&t.data!==null?`${o} ${e} of ${y(_[t.data].field)}`:`${o} ${e}`}return m[a]?.subtotalCaption??(n?`${o} ${r}`:`${o} Total`)})(L(t.axis),e);return[n,k(e,n)]}case`value`:{let n=t.row.index*I+t.column.index,r=c.states[n],i=null;return r===Te?(i=c.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,U=F.top,W=F.pages.reduce((e,t)=>Math.max(e,t.column+2),0),G=(e,t)=>{let n=s(F,e,t);if(!n)return;let[r,i]=z(n);((e,t,n)=>{w&&n&&w.set(e+`,`+t,n)})(e-U,t,i),r!==null&&(p?B.pushAt(t,e-U,r):B.pushAt(e-U,t,r))};if(p){let e=Math.max(W,F.columns.length);for(let t=0;t<e;t++)for(let e=0;e<F.rows.length;e++)t<(e<U?W:F.columns.length)&&G(e,t)}else for(let e=0;e<F.rows.length;e++){let t=e<U?W:F.columns.length;for(let n=0;n<t;n++)G(e,n)}if(A){let t=g(e);return{cells:B.build()?.tuples??[],rows:1,columns:1,rowPageCount:t.rows,columnPageCount:t.columns,header:j,rowLines:[],columnLines:[],viewValues:[],firstKey:null,...w?{roles:w}:{}}}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]=c.rows,[J]=c.columns,ne=q&&J&&q.kind!==we&&J.kind!==we?ee(q,J):null,Y=[],X=e=>e.kind===Se&&e.function!==null;c.rows.forEach((t,n)=>{t.kind===we||X(t)||(K(r,t),c.columns.forEach((r,i)=>{let a=c.states[n*I+i];if(r.kind===we||X(r)||a!==Te&&a!==Ee)return;let s=a===Te?c.values[n*I+i]:0;e.showError&&o.isError(s)&&(s=e.errorCaption||0),Y.push([ee(t,r),s])}))});let re=g(e);return{cells:B.build()?.tuples??[],rows:F.rows.length-U,columns:F.columns.length,rowPageCount:re.rows,columnPageCount:re.columns,header:j,rowLines:M,columnLines:P,viewValues:Y,firstKey:ne,...w?{roles:w}:{}}},Ge=(e,t,n,r,a=!1,s,c)=>{let u=Fe(e,t,r,{filters:s,slicerFields:c});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 h={rowStart:p-d,colStart:m,rowEnd:p+u.rows-1,colEnd:m+Math.max(u.columns,f)-1},g=e.fields,_=t.fields,v=E(t),y=(e,t)=>{let n=g[e],a=n.numberFormat??_[e].numberFormat,s=T(a,r),c=B(_[e]),u=v[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=V(u[t.item]),d=l(_[e],t.item),f=n===null?`(blank)`:typeof n==`number`?i(r,d?(p=t.item,a===void 0?T(R(_[e],p),r):s):s,n):o.isError(n)?n.getLabel():typeof n==`boolean`?n?`TRUE`:`FALSE`:String(n);var p;let m=c&&d?f:n;return t.name===void 0?{value:m,text:f}:{value:m,text:f,name:t.name}}),m={name:n.name??_[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},b=e=>(e??[]).filter(e=>e!==-2);return{view:{range:h,dataFields:(e.dataFields??[]).map(e=>({name:e.name,sourceName:_[e.field].name})),fields:[...b(e.rowFields).map(e=>y(e)),...b(e.columnFields).map(e=>y(e)),...(e.pageFields??[]).map(e=>y(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=>c(t)||e.rowFields?.includes(t.field)||e.columnFields?.includes(t.field)),u=e.fields?.some(e=>e.items?.some(e=>e.calculated)),d=e.dataFields?.some(e=>m(t.fields?.[e.field]));if(s.length===0&&!u&&!d)return{keep:a};let p=E(t);for(let i of s.filter(c)){let o=i.field,s=p[o];if(!s)continue;let c=k(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]:V(s[e]);let u=await Je(i.condition,l,n,r),d=a.get(o);if(d)for(let e=0;e<u.length;e++)d[e]&=u[e];else a.set(o,u)}let h=u&&r?await(async(e,t,n,r,a)=>{let s=t.fields??[],c=e.fields??[],u=s.flatMap((e,t)=>e.calculatedItems?.length?[t]:[]),d=e.dataFields??[];if(u.length!==1||d.some(e=>m(s[e.field])||!pe.has(e.subtotal??`sum`)))return null;let p=u[0],h=s[p].calculatedItems,g=ie(t,n.isDate1904());if(!g)return null;let _=E(t),y=E({...t,fields:s.map(({group:e,...t})=>t)}),b=(e.rowFields??[]).filter(e=>e>=0),x=(e.columnFields??[]).filter(e=>e>=0),S=b.includes(p)?b:x.includes(p)?x:null;if(!S)return null;let C=S.slice(0,S.indexOf(p)),w=[...S.slice(S.indexOf(p)+1),...S===b?x:b],D=[...C,...w],O=t.recordCount??0,k=(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)},A=(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},j=e.pageFields??[],M=T(s[p].numberFormat??14,n),N=e=>_[p].findIndex((t,r)=>{let a=V(t);return typeof a==`number`&&(s[p].dates||l(s[p],r))?f(i(n,M,a),e):f(a===null?v:z(a),e)}),P=new Map,F=new Map(h.map(e=>[e.item,e.formula])),I=e=>{let t=P.get(e);return t===void 0&&P.set(e,t=P.size),t};for(let e of h)if(ce(e.formula,(e,t)=>{if(t===null||!f(s[p].name,e))return null;let n=N(t);return n<0?null:(F.has(n)||I(n),``)})===null)return null;let L=new Map,R=new Map,B=d.map(e=>({column:g[e.field],values:y[e.field],fold:e.subtotal??`sum`})),H=P.size;for(let e=0;e<O;e++){if(!j.every(t=>A(t,g[t.field][e]))||!D.every(t=>k(t,g[t][e])))continue;let t=``;for(let n of C)t+=g[n][e]+`,`;R.has(t)||R.set(t,e);let n=P.get(g[p][e]);if(n===void 0)continue;let r=t;for(let t of w)r+=g[t][e]+`,`;let i=L.get(r);i||(i={sums:d.map(()=>Array(H).fill(0)),errors:d.map(()=>Array(H).fill(void 0))},L.set(r,i));let{sums:a,errors:s}=i;B.forEach(({column:t,values:r,fold:i},c)=>{let l=V(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 U=w.map(e=>{let t=c[e]?.items;return t?t.flatMap(t=>t.item!==void 0&&t.type===void 0&&!t.missing&&k(e,t.item)?[t.item]:[]):_[e].map((e,t)=>t)});if(U.reduce((e,t)=>e*t.length,R.size)>5e5)return null;let W=[];for(let[e,t]of R){let n=(e,r,i)=>{if(e!==U.length)for(let t of U[e])n(e+1,[...r,t],i+t+`,`);else W.push({exemplar:t,path:r,key:i})};n(0,[],e)}let G=W.length;if(G===0)return{count:0,ids:s.map(()=>[]),values:d.map(()=>[])};let K=d.length*H,ee=(e,t)=>e*H+t,q=(e,t)=>K+e*h.length+t,te=[];for(let e=0;e<d.length;e++)for(let t=0;t<H;t++)te.push(W.map(({key:n})=>{let r=L.get(n);return r?r.errors[e][t]??r.sums[e][t]:0}));let J=[];for(let e=0;e<d.length;e++)for(let t=0;t<h.length;t++){let n=ce(h[t].formula,(t,n)=>{if(n===null)return null;let r=N(n),i=h.findIndex(e=>e.item===r);return le(i>=0?q(e,i):ee(e,P.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=d.map(()=>[]),re=(e,t,n,r)=>{g.forEach((n,r)=>{let i=w.indexOf(r);Y[r].push(r===p?t:i>=0?e.path[i]:n[e.exemplar]??0)}),X.forEach((e,t)=>{e.push(t===n?r:null)})};return W.forEach((e,t)=>{h.forEach(({item:n},r)=>{d.forEach((i,a)=>{let o=ne[a*h.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,g=s.filter(e=>!c(e)).map((e,t)=>({filter:e,index:t})).sort((e,t)=>(e.filter.evalOrder??-1)-(t.filter.evalOrder??-1)||e.index-t.index),_=(t.recordCount??0)+(h?.count??0),y,b=e.rowFields??[];for(let{filter:i}of g){let o=await Le(e,t,n,i.field,i.dataField,a,y,h,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;y??=new Uint8Array(_).fill(3);let c=o.outer.map(e=>o.records[e]),l=o.records[i.field],u=b.includes(i.field)?1:2;for(let e=0;e<_;e++){if(!(y[e]&u))continue;let t=``;for(let n=0;n<c.length;n++)t+=(n>0?`,`:``)+c[n][e];s.has(`${t}|${l[e]}`)&&(y[e]&=~u)}}let x=d&&r?await(async(e,t,n,r,i,a,o)=>{let s=F.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,y,h):void 0;return{keep:a,...y?{records:y}:{},...h?{calculatedRecords:h}:{},...x?{fieldValues:x}:{}}},qe=(e,t)=>{let n=e.filters;if(!n)return e;let r=!1,i=n.map(e=>{let n=e.condition&&K(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 u;for(let e=0;e<i;e++)t[e]!==null&&o.setValueAt(e,0,t[e]);let s=!1;return await D({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 u=s?.numberFormat??t.fields?.[r]?.numberFormat,d=T(u,a),f=e=>u===void 0?T(R(t.fields?.[r],e),a):d,p=Array(n.length);for(let e=0;e<n.length;e++){let s=c.get(e);if(s!==void 0){p[e]=s;continue}let u=V(n[e]);u===null?p[e]=v:typeof u==`number`?p[e]=i(a,l(t.fields?.[r],e)?f(e):d,u):typeof u==`boolean`?p[e]=u?`TRUE`:`FALSE`:o.isError(u)?p[e]=u.getLabel():p[e]=String(u)}return p},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:`:``)+y(V(e)),rt=(e,t,n,r=!1)=>{let i=e.fields??[],a=h(e.items,i.length),o=/\smissingItemsLimit="0"/.test(e.rest??``),s=(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)),c=new Map;i.forEach((e,t)=>{let n=e.name.toLocaleLowerCase();e.noRecords||c.has(n)||c.set(n,t)});let u=t.recordCount,d=i.map(()=>-1),f=i.map((e,t)=>a[t].map(()=>-1)),p=[],g=[],_=[],v=[],y=[],b=[],x=[],S=(e,t,n)=>{v[t]=n.items,b[t]=n.items.length,x[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=c.get(s[t].toLocaleLowerCase());n!==void 0&&(c.delete(s[t].toLocaleLowerCase()),d[n]=t);let m=new Int32Array(e.values.length).fill(-1),h=[],C=[],w=Array(u);for(let t=0;t<u;t++){let n=e.ids[t],r=m[n];r<0&&(r=m[n]=h.length,h.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||l(i[n],e)),E=h.length,D=n===void 0?h.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(h[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(h[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=h.length,h.push(r),C.push(T(i)),O.push(s),e.set(a,s)),f[n][i]=s??-1})}let k={name:s[t]};D&&(k.inline=!0),e.numberFormat!==void 0&&(k.numberFormat=e.numberFormat);let A=[],j=!1;h.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),y[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 N=n===void 0?void 0:i[n].calculatedItems;N?.length&&(k.calculatedItems=N.map(({item:e,formula:t})=>{let r=h.length;return h.push(a[n][e]),f[n][e]=r,{item:r,formula:t}})),p.push(k),g.push([t,[[0,h]]]),_.push([t,[[0,w]]]),v.push(h),b.push(E),x.push(!1);let P=n===void 0?void 0:i[n].group;if(P?.range&&P.base===n){let e=se(P,h.slice(0,E).map(V),r);e?(k.group={...e,base:t},S(n,t,e)):f[n]=a[n].map(()=>-1)}else P&&!B(i[n])&&(k.group=P)}),i.forEach((e,t)=>{if(!e.noRecords)return;if(m(e))return d[t]=p.length,p.push(e),v.push([]),b.push(0),void x.push(!1);let n=e.group;if(!n)return;let i=d[n.base];if(i===void 0||i<0)return;let a=v[i],o,s=[];if(n.range)o=se(n,a.slice(0,b[i]).map(V),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}}),v.push(o.items),y[c]=o.dateItems?new Set(o.dateItems):void 0,b.push(o.items.length),x.push(!1),n.range?S(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}:B(e)?e.group=a:delete e.group,e.group&&!B(e)&&(e.group={...e.group,base:t})});let{cacheId:C,part:w,partFormats:T,fields:E,items:D,records:O,...k}=e;return{model:{...k,source:n??e.source,fields:p,items:g,records:_,recordCount:u},remap:{fields:d,items:f,newItems:v,usedCounts:b,inItemOrder:x,dateItems:y}}},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),u=e.items.map((e,t)=>i.has(t)?(c.has(t)&&s.push(o.length),o.push(e),o.length-1):-1),d=a.map((e,t)=>e>=0?u[e]:((r.dates||l(r,t))&&s.push(o.length),o.push(n[t]),o.length-1)),{dateItems:f,...p}=e;return{group:{...p,items:o,discrete:d,...s.length>0?{dateItems:s}:{}},itemMap:u}},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(!O(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=>!O(e.item)),a=[...[...r.filter(e=>O(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(P(e,n),V(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=>O(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=>!O(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(O(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=E(t)[n]??[],o=t.fields?.[n],s=o?.group?.range!==void 0,c=e=>e.name===void 0&&l(o,e.item),u=i.map((e,t)=>({item:e,at:t})),d=u.filter(e=>O(e.item));d.sort((e,t)=>s?e.item.item-t.item.item:at(P(e.item,a),P(t.item,a),c(e.item),c(t.item))),r===`descending`&&d.reverse();let f=0,p=dt(e,n,u.map(e=>O(e.item)?d[f++]:e).map(e=>e.at));return{...p,fields:p.fields.map((e,t)=>t===n?{...e,sort:{order:r}}:e)}},pt=(n,r,i)=>{let a=n.fields?.[r]?.items?.[i];if(!a||!O(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=E(r)[i]??[],u=e=>{let t=V(l[e.item]);return t===null?v:z(t)};if(c.some((e,t)=>t!==a&&O(e)&&f(e.name??u(e),o)))throw new e(t(`error.pivotTable.itemNameExists`,{name:o}));let{name:d,...p}=s,m=o===u(s)?p:{...s,name:o};if(m.name===s.name)return n;let h={...n,fields:n.fields.map((e,t)=>t===i?{...e,items:c.map((e,t)=>t===a?m:e)}:e)},g=n.fields[i].sort;return g&&g.dataField===void 0?ft(h,r,i,g.order):h},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=z(a),s=n.fields,c=r.fields,l=n.dataFields??[],u=E(r),d=(e,t)=>{if(t.name!==void 0)return t.name;let n=V(u[e][t.item]);return n===null?v:z(n)},p=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(W(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&&O(n)&&f(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 p({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 p({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(!f(o,`(All)`)&&(c=(s[a.field].items??[]).findIndex(e=>O(e)&&f(d(a.field,e),o)),c<0))throw new e(t(`error.pivotTable.notAnItem`,{name:o}));let{item:l,...u}=a,p=c===void 0?u:{...a,item:c};return{...n,pageFields:r.map((e,t)=>t===i.page?p: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=E(e)[t],i=r.map((e,t)=>t);B(n)||i.sort((e,t)=>at(V(r[e]),V(r[t]),l(n,e),l(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`?r(n)!==void 0:n!==``&&a.isValidFormat(n)))throw new e(t(`error.pivotTable.notANumberFormat`,{name:String(n)}))},St=(n,r,i,a)=>{let o=a?.function??((e,t)=>C(e,t)===`number`?`sum`:`count`)(r.fields[i],E(r)[i]),s=U[o];if(!s)throw new e(t(`error.pivotTable.notAFunction`,{name:o}));let c=a?.name;if(c===void 0)c=W(n,r,`${s} of ${_(n,r,i)}`);else if(W(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=>f(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,p=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}),m=c(`column`);l.length>1&&m.push(-2);let h={fields:p,style:{name:r?.style??`PivotStyleLight16`,showRowHeaders:!0,showColumnHeaders:!0,showRowStripes:!1,showColumnStripes:!1,showLastColumn:!0}},g=c(`row`);g.length>0&&(h.rowFields=g),m.length>0&&(h.columnFields=m);let _=c(`page`);return _.length>0&&(h.pageFields=_.map(e=>({field:e}))),l.length>0&&(h.dataFields=l),d&&(h.form=d),h},wt=(e,t)=>t.map(t=>{let n=t.sort?.scope;if(!n)return t;let r=((t.axis===I.Axis.Row?e.columnFields:t.axis===I.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=I.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 u=a?G(n,a).filter(e=>e!==i):[];if(o!==void 0&&(!Number.isInteger(o)||o<1||o>u.length+1))throw new e(t(`error.pivotTable.fieldPosition`));let d=(o??u.length+1)-1;if(a===l&&(o===void 0||G(n,a)[d]===i))return n;u.splice(d,0,i);let{rowFields:f,columnFields:p,pageFields:m,...h}=n,g={},_=e=>(e??[]).filter(e=>e!==i),v=a===s.Row?u:_(n.rowFields),y=a===s.Column?u:_(n.columnFields),b=a===s.Page?u.map(e=>n.pageFields?.find(t=>t.field===e)??{field:e}):(n.pageFields??[]).filter(e=>e.field!==i);v.length>0&&(g.rowFields=v),y.length>0&&(g.columnFields=y),b.length>0&&(g.pageFields=b);let x={...h,...g};a===s.Page&&l!==s.Page&&(x=M(x,i,()=>!0));let S={...n.fields?.[i]};a?S.axis=a:delete S.axis,a&&!S.items&&c&&(S.items=j(bt(r,i),S.subtotals)),a&&S.numberFormat===void 0&&c?.dates&&c.numberFormat!==void 0&&(S.numberFormat=c.numberFormat),a===s.Page&&S.items?.some(e=>e.hidden)&&(S.multipleItemSelection=!0);let C=(n.fields??[]).map((e,t)=>t===i?S:e);if(x={...x,fields:wt(x,C)},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}=x;x=e.length>0?{...r,formats:e}:r}return x},$=-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=>p(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=b(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,...p}=o,m={...p};c!==`normal`&&(m.showDataAs=c);let h=o.baseField,g=o.baseItem;if(a?.baseField!==void 0){let i=a.baseField,o=(r.fields??[]).findIndex((e,t)=>f(_(n,r,t),i));if(o<0)throw new e(t(`error.pivotTable.notAField`,{name:i}));o!==h&&(h=o,g=0)}if(a?.baseItem!==void 0){let i=h??0;if(f(a.baseItem,`(previous)`))g=`previous`;else if(f(a.baseItem,`(next)`))g=`next`;else{let o=n.fields?.[i]?.items?n:{fields:(n.fields??[]).map((e,t)=>t===i?{...e,items:bt(r,i)}:e)},s=w(o,r,i).findIndex(e=>e!==null&&f(e,a.baseItem));if(s<0)throw new e(t(`error.pivotTable.notAnItem`,{name:a.baseItem}));g=s}}if(h!==void 0&&(m.baseField=h),g!==void 0&&(m.baseItem=g),c===s)return m.baseField===o.baseField&&m.baseItem===o.baseItem?n:Mt(n,i,()=>m);let v=kt(o.numberFormat,s,c);return v===o.numberFormat?Mt(n,i,()=>m):Mt(jt(n,i),i,()=>Nt(m,v))},Bt=(e,t,n)=>{xt(n);let r=p(n),i=e.dataFields[t],a=e.formats?.[e.formats.length-1];if(p(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=I.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=G(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||G(n,r)[c]===$))return n;s.splice(c,0,$);let{rowFields:l,columnFields:u,valuesOnRows:d,...f}=n,p=G(n,r===a.Row?a.Column:a.Row).filter(e=>e!==$),m={...f},h=r===a.Row?s:p,g=r===a.Column?s:p;return h.length>0&&(m.rowFields=[...h]),g.length>0&&(m.columnFields=[...g]),r===a.Row&&(m.valuesOnRows=!0),m},Ht=(n,r,i)=>{if(i===(n.valuesCaption??`Values`))return n;let{valuesCaption:a,...o}=n,s={...o,valuesCaption:`\0`};if(W(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,c 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{I as e}from"./ChSvXfVMLxZsP9zG.js";import{C as t,D as n,K as r,Ot as i,Z as a,ht as o,t as s}from"./DuYb_otrRZZDq6-f.js";import{c,i as l}from"./CQukCzhuewMuFOlO.js";import{Ca as u,M as d,Xr as f,tn as p,zn as m}from"./Bf9AN5sYHaxae0vV.js";import{An as h,Ar as g,Cn as _,D as v,En as ee,Et as te,Hr as ne,K as re,Kt as ie,Ln as ae,Lr as oe,N as y,On as b,Or as x,Pn as se,Qt as ce,R as S,Rr as le,Rt as ue,Sn as de,V as C,Vt as fe,Xt as w,b as T,br as pe,bt as E,c as D,en as O,et as k,hr as A,it as j,jt as me,lt as M,on as he,pn as ge,r as N,sn as P,tn as F,vn as I,w as L,z as _e}from"./Bh2PQ0zsoGtMKWp1.js";import"./zSnM7GhGzLu1MM_u.js";import{a as ve,c as R,o as ye,s as be,t as xe}from"./CXmrXx6MZ5ApF3co.js";var Se=class{constructor(e){this.list=e}get length(){return this.list.length}item(e){return this.list[e]}forEach(e,t){let n=this.list,r=n.length;for(let t=0;t<r;t++)e(n[t],t,this)}entries(){return this.list.entries()}keys(){return this.list.keys()}values(){return this.list.values()}[Symbol.iterator](){return this.list.values()}},Ce=e=>!0===e||e===`1`||e===`on`||e===`true`||!1!==e&&e!==`0`&&e!==`off`&&e!==`false`&&null,we=e=>{let t=parseInt(e);return isNaN(t)?null:t},Te=e=>{let t=parseFloat(e);return isNaN(t)?null:t},Ee=new Map,z=class{constructor(t,n,r,i,a,o=null,s=e.EmptyObject){this._fileLocation=``;let c=(e,t,n)=>s?.getRef?.(e,t,n,s?.parsedRefs),l=e=>s?.getRefs?.(e,s?.parsedRefs);this._parent=t,this.sharedShared=n,this.currentPath=r,this.elemRoot=i,this.jsonRoot=a,t?(this._fileLocation=t._fileLocation,this._getRef=t._getRef,this._getRefs=t._getRefs,this._serializeElement=t._serializeElement,this._readEmbeddedPart=t._readEmbeddedPart):(o&&(this._fileLocation=o),s?.getRef&&(this._getRef=c),s?.getRefs&&(this._getRefs=l),this._onWarning=s?.onWarning,this._addPerson=s?.addPerson,this._serializeElement=s?.serializeElement,this._readEmbeddedPart=s?.readEmbeddedPart)}getRef(e,t=!1){return this._getRef?.(e,this._fileLocation,t)??null}readEmbeddedPart(e){return this._readEmbeddedPart?.(e,this._fileLocation)??null}getRelationships(){return this._getRefs?.(this._fileLocation)??Ee}getPath(){return this.currentPath}getFileLocation(){return this._fileLocation}getElemRoot(){return this.elemRoot}getJsonRoot(){return this.jsonRoot}warn(e,t){this._raiseWarning(e,this.getFileLocation(),t?.onceKey)}_raiseWarning(e,t,n){this._onWarning?this._onWarning(e,t,n):this._parent?this._parent._raiseWarning(e,t,n):console.warn(e)}serializeElement(e){return this._serializeElement?.(e)??null}addPerson(e){return typeof e==`string`&&(e={displayName:e}),this._addPerson?this._addPerson(e):this._parent?this._parent?._addPerson?.(e)??null:null}getVisitorParamsState(){return this.sharedShared.getVisitorParamsState()}evaluate(e,t){if(!e)return t;let n=[t],r=e.split(`/`),i=r.length;for(let e=0;e<i;e++){let t=r[e];if(t===``||t===`.`)continue;let a=[],o=(t===`*`||t===`**`)&&e!==i-1;for(let i of n)if(i){if(o){let t=r[e+1];t&&t!==``&&t!==`.`&&(this._findDescendants(i,t,a),e++)}else if(t===`*`||t===`**`){if(!i.childNodes)continue;let e=i.childNodes,t=e.length;for(let n=0;n<t;n++){let t=e[n];t.nodeType===1&&a.push(t)}}else{if(!i.childNodes)continue;let e=i.childNodes,n=e.length;for(let r=0;r<n;r++){let n=e[r];if(n.nodeType!==1)continue;let i=n;this._matchesElementName(i,t)&&a.push(i)}}}if(n=a,n.length===0)return null}return n.length===1?n[0]:n.length===0?null:new Se(n)}_matchesElementName(e,t){return t.includes(`:`)?(e.tagName||e.nodeName)===t:e.localName===t}_findDescendants(e,t,n){if(!e||!e.childNodes)return;let r=e.childNodes,i=r.length;for(let e=0;e<i;e++){let i=r[e];if(i.nodeType!==1)continue;let a=i;this._matchesElementName(a,t)&&n.push(a),this._findDescendants(a,t,n)}}getFromPath(t,n){return e.getFromPath(t,n)}setToPath(t,n,r){return e.setToPath(t,n,r)}getValAttrAsString(e,t){let n=this.evaluate(e,t);return n&&n.hasAttribute(`val`)?n.getAttribute(`val`)??null:null}getValAttrAsBoolean(e,t,n=!1){let r=this.evaluate(e,t);if(!r)return null;let i=r.hasAttribute(`val`)?r.getAttribute(`val`):void 0;return i==null?n:i===`1`||i===`on`||i===`true`||i!==`0`&&i!==`off`&&i!==`false`&&n}getValAttrAsInteger(e,t){let n=this.evaluate(e,t);return n&&n.hasAttribute(`val`)?parseInt(n.getAttribute(`val`))??null:null}getValAttrAsFloat(e,t){let n=this.evaluate(e,t);return n&&n.hasAttribute(`val`)?parseFloat(n.getAttribute(`val`))??null:null}get BOOLEAN_COPY(){return Ce}get INT_COPY(){return we}get FLOAT_COPY(){return Te}copyFromAttribute(e,t,n,r=t,i=null){if(!e||!n||!e.hasAttribute(t))return;let a=e.getAttribute(t);if(i){if(Array.isArray(i)){let e=i.length;for(let t=0;t<e;t++)if(a==null||(a=i[t](a),a==null))return}else if(a==null||(a=i(a),a==null))return}this.setToPath(n,r,a)}},B=(e,t)=>{let n=[],r=e.childNodes,i=r.length;for(let e=0;e<i;e++){let i=r.item(e);i.nodeType===1&&i.localName===t&&n.push(i)}return n},De=[[`fillRef`,`fill`],[`lnRef`,`stroke`],[`effectRef`,`effect`]],V=(e,t)=>{let n=new j,r={};for(let[i,a]of De){let o=e.evaluate(i,t);if(!o)continue;let s={index:parseInt(o.getAttribute(`idx`)??`0`,10)||0},c=n.processAdjColor(e,o);c&&(s.color=c),r[a]=s}let i=e.evaluate(`fontRef`,t);if(i){let t={index:i.getAttribute(`idx`)??`none`},a=n.processAdjColor(e,i);a&&(t.color=a),r.font=t}return r},H=class{visit(e,t,n){if(!t)return;let r=e.evaluate(`*/cNvPr`,t);return r.item&&(r=r.item(0)),r&&(e.copyFromAttribute(r,`name`,n),e.copyFromAttribute(r,`descr`,n,`description`),e.copyFromAttribute(r,`hidden`,n,`hidden`,e.BOOLEAN_COPY),this.readNonVisualDetails(e,r,n),e.copyFromAttribute(r,`id`,n)),n}readNonVisualDetails(e,t,n){t.hasAttribute(`title`)&&(n.title=t.getAttribute(`title`));let r=e.evaluate(`hlinkClick`,t);r&&(n.hyperlink=y(e,r));let i=e.evaluate(`hlinkHover`,t);i&&(n.hoverHyperlink=y(e,i));let a=e.evaluate(`extLst`,t),o=a?e.serializeElement(a):null;o&&(n.extLst={...n.extLst,nonVisual:o})}setContent(e,t){let n=e;n.name!==void 0&&(t.name=n.name,delete n.name),n.description!==void 0&&(t.description=n.description,delete n.description);for(let e of[`title`,`hyperlink`,`hoverHyperlink`,`extLst`])n[e]!==void 0&&(t.json&&(t.json[e]=n[e]),delete n[e]);e.content=t}isGroupContent(e){return Array.isArray(e?.members)}readMemberHeader(e,t,n){let r={},i={anchor:void 0,content:{type:n,json:r}},a=e.evaluate(`*/cNvPr`,t);if(a?.item&&(a=a.item(0)),a){let n=a.getAttribute(`name`);n!==null&&(i.content.name=n);let o=a.getAttribute(`descr`);o&&(i.content.description=o),e.copyFromAttribute(a,`hidden`,i,`hidden`,e.BOOLEAN_COPY),this.readNonVisualDetails(e,a,r);let s=this.readSourceId(e,t);s!==void 0&&(r.sourceId=s)}return{movable:i,content:r}}readStyleRefs(e,t,n){let r=e.evaluate(`style`,t);if(!r)return void(n.style=null);let i=V(e,r),o=a.withoutDefaultStyleRefs({...n,style:i});o&&(n.style=o)}readLocks(e){let t=e?.attributes;if(!t||t.length===0)return;let n={};for(let e=0;e<t.length;e++){let r=t.item(e);r.name.startsWith(`xmlns`)||(n[r.localName??r.name]=A(r.value))}return Object.keys(n).length>0?n:void 0}readSourceId(e,t){let n=e.evaluate(`*/cNvPr`,t);n?.item&&(n=n.item(0));let r=n?.getAttribute?.(`id`),i=r?parseInt(r,10):void 0;return i===void 0||isNaN(i)?void 0:i}},Oe=[[`spDef`,`shape`],[`lnDef`,`line`],[`txDef`,`text`]],U=(e,t)=>{let n=t.getAttribute(`dxfId`);if(n===null)return;let r=parseInt(n);return e.getVisitorParamsState().get(`dxfs`)?.get(r)||(e.warn(`A color filter or sort names a format that does not exist (dxfId '${n}').`),{})},W=e=>e===`1`||e===`true`,G=class{visit(e,t,n){}processDataBarColor(e,t,n,r,i=`auto`){if(!t)return;let a=v(e=>t.getAttribute(e),i);return a&&(n[r]=a),n}processFonts(e,t,n){if(!t)return;let r=t.childNodes,i=0,a=r.length;for(let t=0;t<a;t++){let a=r.item(t);if(a.nodeType===1&&a.localName===`font`){let t={};this.processFont(e,a,t),n[i++]=t}}return n}processFont(e,t,r){e.getValAttrAsBoolean(`b`,t,!0)&&(r.weight=700),e.getValAttrAsBoolean(`i`,t,!0)&&(r.style=n.Style.Italic),e.getValAttrAsBoolean(`strike`,t,!0)&&(r.strike=M(!0));let i=e.evaluate(`u`,t);if(i){let e=i.getAttribute(`val`);r.underline=E(e)}let a=k(e.evaluate(`vertAlign`,t)?.getAttribute(`val`));a!==void 0&&(r.baseline=a),P(e,t,r,`sz`,`size`);let o=e.evaluate(`color`,t);this.processDataBarColor(e,o,r,`color`),r.color||=`auto`,w(e,t,r,`name`,`family`),w(e,t,r,`rFont`,`family`);let s=e.evaluate(`family`,t);if(s){let e=s.getAttribute(`val`);if(e)switch(e){case`1`:r.fallbacks=[`serif`];break;case`2`:r.fallbacks=[`sans-serif`];break;case`3`:r.fallbacks=[`monospace`];break;case`4`:r.fallbacks=[`cursive`];break;case`5`:r.fallbacks=[`fantasy`]}}D(r,e.evaluate(`scheme`,t)?.getAttribute(`val`)),x(e,t,r,`shadow`,`shadow`,!0),x(e,t,r,`outline`,`outline`,!0);for(let n of[`condense`,`extend`]){let i=C(n,!!e.getValAttrAsBoolean(n,t,!0));i!==void 0&&(r.letterSpacing=i)}return le(e,t,r,`charset`,`charset`),r}processFills(e,t,n){if(!t)return;let r=t.childNodes,i=0,a=r.length;for(let t=0;t<a;t++){let a=r.item(t);a.nodeType===1&&a.localName===`fill`&&this.processFill(e,a,n,i++)}return n}processFill(e,t,n,i){let a={type:r.Type.None},o=t.childNodes,s=!1,c=o.length;for(let t=0;!s&&t<c;t++){let n=o.item(t);n.nodeType===1&&(n.localName===`gradientFill`?(this.processGradientFill(e,n,a),s=!0):n.localName===`patternFill`&&(this.processPatternFill(e,n,a),s=!0))}return n[i]=a,n}processGradientFill(e,t,n){if(!t)return;n.type=r.Type.Gradient;let i=[];n.stops=i;let a=t.getAttribute(`type`);a&&(n.gradientType=a);let o=t.hasAttribute(`degree`)?parseFloat(t.getAttribute(`degree`)):0;(o+90)%360!=0&&(n.angle=(o+90)%360),(t.hasAttribute(`left`)||t.hasAttribute(`top`)||t.hasAttribute(`right`)||t.hasAttribute(`bottom`))&&(n.focus={left:K(t.getAttribute(`left`)),top:K(t.getAttribute(`top`)),right:K(t.getAttribute(`right`)),bottom:K(t.getAttribute(`bottom`))});let s=t.childNodes,c=s.length;for(let t=0;t<c;t++){let n=s.item(t);if(n.nodeType===1&&n.localName===`stop`){let t={};i.push(t),t.offset=parseFloat(n.getAttribute(`position`)??``);let r=e.evaluate(`color`,n);this.processDataBarColor(e,r,t,`color`)}}return n}processPatternFill(e,t,n){if(!t)return;let i=e.getVisitorParamsState().get(`processingDXFs`),a=t.getAttribute(`patternType`)||(i?r.BuiltInSheetPattern.Solid:r.BuiltInSheetPattern.None);if(a===r.BuiltInSheetPattern.None)return{none:!0};n.type=r.Type.Pattern,a&&(n.patternType=a);let o=`foreground`,s=`background`,c=n.patternType===r.BuiltInSheetPattern.Solid&&i,l=c?`dk1`:`lt1`,u=c?`lt1`:`dk1`;if(c){let e=o;o=s,s=e}let d=e.evaluate(`fgColor`,t);this.processDataBarColor(e,d,n,o,l);let f=e.evaluate(`bgColor`,t);return this.processDataBarColor(e,f,n,s,u),c&&(n.foreground||=`lt1`,n.background||=`dk1`),n}processBorders(e,t,n,r){if(!t)return;let i=t.childNodes,a=0,o=i.length;for(let t=0;t<o;t++){let o=i.item(t);o.nodeType===1&&o.localName===`border`&&this.processBorder(e,o,n,a++,r)}return n}processBorder(e,t,n,r,a){if(!t)return;let o={};this.processBorderStroke(e,t,o,i.Edge.Left),this.processBorderStroke(e,t,o,i.Edge.Right),a?(o.right||o.left)&&(o.vertical=o.right?{...o.right}:{...o.left}):this.processBorderStroke(e,t,o,i.Edge.Vertical),this.processBorderStroke(e,t,o,i.Edge.Top),this.processBorderStroke(e,t,o,i.Edge.Bottom),a?(o.bottom||o.top)&&(o.horizontal=o.bottom?{...o.bottom}:{...o.top}):this.processBorderStroke(e,t,o,i.Edge.Horizontal);let s=this.processBorderStroke(e,t,{},`diagonal`);return s&&(W(t.getAttribute(`diagonalUp`))&&(o.diagonalUp={...s}),W(t.getAttribute(`diagonalDown`))&&(o.diagonalDown={...s})),n[r]=o,n}processBorderStroke(e,t,n,r){if(!t)return;let a=e.evaluate(r,t);if(!a)return;let o={};a.hasAttribute(`style`)?o.style=a.getAttribute(`style`):e.getVisitorParamsState().get(`processingDXFs`)&&(o.style=i.StrokeStyle.None);let s=e.evaluate(`color`,a);return s&&this.processDataBarColor(e,s,o,`color`),Object.keys(o).length>0?n[r]=o:null}},K=e=>{if(!e)return 0;let t=parseFloat(e);return isNaN(t)?0:t},q=(e,t)=>{if(!e||e.nodeType!==1)return null;let n=e.childNodes;for(let e=0;e<n.length;e++){let r=n.item(e);if(r.nodeType===1&&r.localName===t)return r}return null},ke=new Set(Object.values(d.ElementType).filter(e=>e!==d.ElementType.WholeTable&&e!==d.ElementType.HeaderRow)),Ae={auto:`auto`,autoNoTable:`automaticExceptTables`,manual:`manual`},J=[`tableId`,`columnId`,`cacheName`,`cachePath`,`sourceName`,`sortOrder`,`customListSort`,`crossFilter`,`pivotTables`,`pivotCacheId`,`pivotBody`,`tabular`,`pivotData`,`showMissing`],je=new Set([`name`,`xr10:uid`,`cache`,`caption`]),Y=(e,t)=>{let n=e.content,r=n?.json;if(r){if(n.type===`shape`||n.type===`picture`){let{rotation:n,flipH:i,flipV:a,bounds:o}=r;delete r.rotation,delete r.flipH,delete r.flipV,delete r.bounds,n!==void 0&&n!==0&&(e.rotation=n),i&&(e.flipH=!0),a&&(e.flipV=!0),t&&o&&(e.anchor={tl:{x:o.x,y:o.y},br:{x:o.width,y:o.height}})}if(n.type===`group`)for(let e of r.members??[])Y(e,!0)}},X=class extends H{visit(e,t,n){if(t)return this.visitShape(e,t,n,`sp`,`nvSpPr/cNvSpPr/spLocks`)}visitShape(e,n,r,i,a){let o=F[i];if(this.isGroupContent(r)){if(e.getPath().includes(`Fallback`))return{};let{movable:s,content:c}=this.readMemberHeader(e,n,`shape`);o!==t.Type.Shape&&(c.type=o),this.readShapeDetails(e,n,i,a,c),this.readStyleRefs(e,n,c);let l=e.evaluate(a,n);l?.hasAttribute?.(`noChangeAspect`)&&(s.lockAspect=l.getAttribute(`noChangeAspect`)===`1`);let u=this.readTwinOf(e,n);return u!==void 0&&Object.assign(c,{twinOf:u}),r.members.push(s),c}if(e.getPath().includes(`Fallback`)&&r.content){let i=r.content.json;if(r.content.type===`shape`&&i&&(i.type??t.Type.Shape)===o){let t=e.evaluate(`txBody`,n),r=t?new O().readTextBody(e,t):null;r&&ie(r)!==``&&(i.text=r)}return{}}r=super.visit(e,n,r);let s=e.evaluate(a,n);s?.hasAttribute?.(`noChangeAspect`)&&(r.lockAspect=s.getAttribute(`noChangeAspect`)===`1`);let c=o===t.Type.Shape?{}:{type:o},l=this.readSourceId(e,n);l!==void 0&&(c.sourceId=l),this.readShapeDetails(e,n,i,a,c),this.readStyleRefs(e,n,c);let u=this.readTwinOf(e,n);return u!==void 0&&Object.assign(c,{twinOf:u}),this.setContent(r,{type:`shape`,json:c}),c}readTwinOf(e,t){let n=e.evaluate(`*/cNvPr/extLst/ext/compatExt`,t);n?.item&&(n=n.item(0));let r=/^_x0000_s(\d+)$/.exec(n?.getAttribute?.(`spid`)??``);return r?parseInt(r[1],10):void 0}readShapeDetails(e,t,n,r,i){let a=t.getAttribute(`macro`);a&&(i.macro=a);let o=t.getAttribute(`textlink`);o&&(i.textLink=o),t.hasAttribute(`fLocksText`)&&(i.locksText=A(t.getAttribute(`fLocksText`))),t.hasAttribute(`fPublished`)&&(i.published=A(t.getAttribute(`fPublished`)));let s=r.slice(0,r.lastIndexOf(`/`)),c=e.evaluate(s,t);c?.getAttribute?.(`txBox`)===`1`&&(i.textBox=!0);let l=this.readLocks(e.evaluate(r,t));if(l&&(i.locks=l),n===`cxnSp`&&c){let t=t=>{let n=e.evaluate(t,c);if(n?.getAttribute)return{id:parseInt(n.getAttribute(`id`)??`0`,10)||0,index:parseInt(n.getAttribute(`idx`)??`0`,10)||0}},n=t(`stCxn`),r=t(`endCxn`);(n||r)&&(i.connectorEnds={},n&&(i.connectorEnds.start=n),r&&(i.connectorEnds.end=r))}}},Me=/^<a:extLst(?:\s+xmlns:a="[^"]*")?><a:ext uri="\{28A0092B-C50C-407E-A947-70E740481C1C\}"><a14:useLocalDpi(?:\s+xmlns:a14="[^"]*")?\s+val="0"\s*\/><\/a:ext><\/a:extLst>$/,Z=(e,t,n,r)=>{let i=e.evaluate(n,t),a=e.evaluate(r,t);return i||a?{x:h(i?.getAttribute(`x`)??null)??0,y:h(i?.getAttribute(`y`)??null)??0,width:h(a?.getAttribute(`cx`)??null)??0,height:h(a?.getAttribute(`cy`)??null)??0}:null},Ne={Checkbox:`checkbox`},Q=e=>{let t=e.getAttribute(`val`);return t!==`0`&&t!==`false`},Pe={1:`serif`,2:`sans-serif`,3:`monospace`,4:`cursive`,5:`fantasy`};function Fe(e){let t={},r=e.childNodes;for(let e=0;e<r.length;e++){let i=r.item(e);if(i.nodeType===1)switch(i.localName){case`b`:t.weight=Q(i)?700:400;break;case`i`:t.style=Q(i)?n.Style.Italic:n.Style.Normal;break;case`strike`:t.strike=M(Q(i));break;case`outline`:t.outline=Q(i);break;case`shadow`:t.shadow=Q(i);break;case`condense`:case`extend`:{let e=C(i.localName,Q(i));e!==void 0&&(t.letterSpacing=e);break}case`u`:t.underline=E(i.getAttribute(`val`));break;case`vertAlign`:{let e=k(i.getAttribute(`val`));e!==void 0&&(t.baseline=e);break}case`sz`:{let e=parseFloat(i.getAttribute(`val`)??``);isNaN(e)||(t.size=e);break}case`rFont`:{let e=i.getAttribute(`val`);e&&(t.family=e);break}case`family`:{let e=Pe[i.getAttribute(`val`)??``];e&&(t.fallbacks=[e]);break}case`charset`:{let e=parseInt(i.getAttribute(`val`)??``,10);isNaN(e)||(t.charset=e);break}case`scheme`:D(t,i.getAttribute(`val`));break;case`color`:{let e=i.getAttribute(`rgb`);if(e&&!i.hasAttribute(`theme`)){t.color=`#`+(e.length===8?e.substring(2):e).toUpperCase();break}let n=v(e=>i.getAttribute(e));n&&(t.color=n);break}}}return Object.keys(t).length>0?t:null}var $={RelsVisitor:class{visit(e,t,n){if(!t)return;let r=t.childNodes,i=r.length;for(let t=0;t<i;t++){let i=r.item(t);i.nodeType===1&&i.localName===`Relationship`&&this.processRelationship(e,i,n)}return n}processRelationship(e,t,n){let r={};e.copyFromAttribute(t,`Target`,r,`target`),e.copyFromAttribute(t,`Type`,r,`type`),e.copyFromAttribute(t,`TargetMode`,r,`targetMode`),n[t.getAttribute(`Id`)]=r}},CorePropertiesVisitor:class{visit(e,t,n){let r=[],i=t.childNodes,a=i.length;for(let t=0;t<a;t++){let n=i.item(t);if(n.nodeType!==1)continue;let a=this.processProperty(e,n);a&&r.push(a)}return r.length>0&&(n.properties=r),r}processProperty(e,t){if(t)return t.getAttribute(`xsi:type`),{key:t.localName,value:t.textContent||``}}},AppPropertiesVisitor:class{visit(e,t,n){let r=t.childNodes,i=r.length;for(let e=0;e<i;e++)if(r.item(e).localName===`property`)return this.visitCustom(t,n);let a=[];for(let t=0;t<i;t++){let n=r.item(t);if(n.nodeType!==1)continue;let i=this.processProperty(e,n);i&&a.push(i)}return a.length>0&&(n.properties=a),a}visitCustom(e,t){let n=[],r=e.childNodes,i=r.length;for(let e=0;e<i;e++){let t=r.item(e);if(t.nodeType!==1||t.localName!==`property`)continue;let i=t.getAttribute(`name`);if(!i)continue;let a=null;for(let e=0;e<t.childNodes.length&&!a;e++){let n=t.childNodes.item(e);n.nodeType===1&&(a=n)}let o={key:i,kind:a?.localName??null,value:a?.textContent??``},s=t.getAttribute(`linkTarget`);s&&(o.linkTarget=s),n.push(o)}return n.length>0&&(t.custom=n),n}processProperty(e,t){if(t)return{key:t.localName,value:t.textContent||``}}},ShapePropertiesVisitor:S,TextPropertiesVisitor:re,ShapeTextVisitor:O,ThemeVisitor:class{visit(e,t,n){n.name=t.getAttribute(`name`),n.objectDefaults={};let r=B(t,`custClrLst`)[0];if(r){let t=new j,i=[];for(let n of B(r,`custClr`)){let r=t.processAdjColor(e,n);if(!r)continue;let a={color:r},o=n.getAttribute(`name`);o&&(a.name=o),i.push(a)}i.length&&(n.customColors=i)}for(let e of B(t,`extLst`))for(let t of B(e,`ext`)){if(t.getAttribute(`uri`)!==`{05A4C25C-085E-4340-85A3-A5531E510DB2}`)continue;let e=B(t,`themeFamily`)[0],r=e?.getAttribute(`id`);if(!r)continue;let i={name:e.getAttribute(`name`)??``,id:r},a=e.getAttribute(`vid`);a&&(i.vid=a),n.family=i}return n}},ClrSchemeVisitor:class extends j{visit(e,t,n){let r={};r.name=t.getAttribute(`name`);let i=t.childNodes,a=i.length;for(let n=0;n<a;n++){let a=i.item(n);if(a.nodeType===1){let n=a.localName,i=e.evaluate(n,t);r[n]=this.processAdjColor(e,i)}}return Object.keys(r).length>0&&(n.colors=r),r}},FontSchemeVisitor:class{visit(e,t,n){let r={};r.name=t.getAttribute(`name`);let i=this.processFontCollection(e,e.evaluate(`majorFont`,t));i&&(r.major=i);let a=this.processFontCollection(e,e.evaluate(`minorFont`,t));return a&&(r.minor=a),n.fonts=r,r}processFontCollection(e,t){if(!t)return;let n={},r=e.evaluate(`latin`,t),i=r?.getAttribute(`typeface`);i&&(n.latin=i);let a=r?.getAttribute(`panose`);a&&(n.panose=a);let o=e.evaluate(`ea`,t)?.getAttribute(`typeface`);o&&(n.eastAsian=o);let s=e.evaluate(`cs`,t)?.getAttribute(`typeface`),c;s&&(n.complexScript=s);let l=t.childNodes,u=l.length;for(let e=0;e<u;e++){let t=l.item(e);if(t.nodeType!==1||t.localName!==`font`)continue;let n=t.getAttribute(`script`);n&&((c??={})[n]=t.getAttribute(`typeface`)??``)}return c&&(n.scripts=c),n}},ObjectDefaultsVisitor:class{visit(e,t,n){let r={};for(let[n,i]of Oe){let a=e.evaluate(n,t);a&&(r[i]=this.processDefault(e,a))}return n.objectDefaults=r,{}}processDefault(e,t){let n={},r=e.evaluate(`spPr`,t);r&&new S().visit(e,r,n);let i=new O().readTextBody(e,t);(i.body||i.listStyle)&&(n.text=i);let a=e.evaluate(`style`,t);return a&&(n.style=V(e,a)),n}},FmtSchemeVisitor:class extends j{visit(e,t,n){let r=this.parseFillList(e,t,`fillStyleLst`),i=this.parseLnList(e,t,`lnStyleLst`),a=this.parseEffectStyleList(e,t,`effectStyleLst`),o=this.parseFillList(e,t,`bgFillStyleLst`);if(r&&(n.fillStyleLst=r),i&&(n.lnStyleLst=i),a&&(n.effectStyleLst=a),o&&(n.bgFillStyleLst=o),r&&i&&a&&o)return;let s=e.serializeElement(t);s&&(n.formatSchemeXml=s)}parseFillList(e,t,n){let r=e.evaluate(n,t);if(!r)return;let i=[],a=r.childNodes,o=a.length;for(let t=0;t<o;t++){let n=a.item(t);if(n.nodeType!==1)continue;let r=this.parseFillListItem(e,n);if(r===void 0)return;i.push(r)}return i}parseFillListItem(e,t){switch(t.localName){case`noFill`:return{type:r.Type.None};case`solidFill`:{let n=this.processAdjColor(e,t);return n?{type:r.Type.Solid,color:n}:void 0}case`gradFill`:return this.processGradFill(e,t);case`pattFill`:return this.processPatternFill(e,t);default:return}}parseLnList(e,t,n){let r=e.evaluate(n,t);if(!r)return;let i=[],a=r.childNodes,o=a.length;for(let t=0;t<o;t++){let n=a.item(t);n.nodeType===1&&i.push(this.parseLn(e,n))}return i}parseEffectStyleList(e,t,n){let r=e.evaluate(n,t);if(!r)return;let i=[],a=r.childNodes,o=a.length;for(let t=0;t<o;t++){let n=a.item(t);if(n.nodeType!==1)continue;if(e.evaluate(`scene3d`,n)||e.evaluate(`sp3d`,n))return;let r=this.getEffects(e,n);if(r===void 0)return;i.push(r??[])}return i}},AutoFilterVisitor:class{visit(e,t,n){if(!t)return;let r={},i=[];return this.processFilterColumns(e,t,i,n),i.length>0&&(r.conditions=i),Object.keys(r).length>0&&(n.filter=r),n}processColorFilter(e,t){let n={},r={operator:m.BuiltInOperatorNames.Color,param:n};e.copyFromAttribute(t,`cellColor`,n,`cellColor`,e.BOOLEAN_COPY);let i=U(e,t);return i&&(n.style=i),r}processCustomFilter(e,t){return oe({operator:t.getAttribute(`operator`),val:t.getAttribute(`val`)},t=>e.warn(t))}processCustomFilters(e,t){let n=t.getAttribute(`and`),r=n===`and`||n===`1`;t.getAttribute(`val`);let i=[],a={operator:r?m.BuiltInOperatorNames.And:m.BuiltInOperatorNames.Or,param:i},o=t.childNodes,s=o.length;for(let t=0;t<s;t++){let n=o.item(t);if(n.nodeType!==1)continue;let r=null;n.localName===`customFilter`&&(r=this.processCustomFilter(e,n)),r&&i.push(r)}return i.length===1?i[0]:he(a)}processDynamicFilter(e,t){return N(t.getAttribute(`type`),t.getAttribute(`val`),t.getAttribute(`maxVal`))}processDateGroupItem(e,t){let n={};return e.copyFromAttribute(t,`dateTimeGrouping`,n,`group`),e.copyFromAttribute(t,`day`,n,`day`,e.INT_COPY),e.copyFromAttribute(t,`hour`,n,`hour`,e.INT_COPY),e.copyFromAttribute(t,`minute`,n,`minute`,e.INT_COPY),e.copyFromAttribute(t,`month`,n,`month`,e.INT_COPY),e.copyFromAttribute(t,`second`,n,`second`,e.INT_COPY),e.copyFromAttribute(t,`year`,n,`year`,e.INT_COPY),n}processFilterItem(e,t){if(t.hasAttribute(`val`))return t.getAttribute(`val`)}processFilters(e,t){let n={},r={operator:m.BuiltInOperatorNames.InSet,param:n};r.selector=m.BuiltInSelectorNames.Display,e.copyFromAttribute(t,`blank`,n,`blank`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`calendarType`,n,`calendarType`);let i=[],a=[],o=t.childNodes,s=o.length;for(let t=0;t<s;t++){let n=o.item(t);if(n.nodeType===1){if(n.localName===`dateGroupItem`){let t=this.processDateGroupItem(e,n);t&&i.push(t)}else if(n.localName===`filter`){let t=this.processFilterItem(e,n);t!==void 0&&a.push(t)}}}return i.length>0&&(n.dateGroups=i),a.length>0&&(n.items=a),r}processIcon(e,t){let n={},r={operator:m.BuiltInOperatorNames.Icon,param:n};return e.copyFromAttribute(t,`iconId`,n,`iconId`,e.INT_COPY),e.copyFromAttribute(t,`iconSet`,n),r}processTop10(e,t){let n={},r={operator:m.BuiltInOperatorNames.TopN,param:n};return e.copyFromAttribute(t,`filterVal`,n,`filterVal`,e.FLOAT_COPY),e.copyFromAttribute(t,`percent`,n,`percent`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`top`,n,`top`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`val`,n,`limit`,e.FLOAT_COPY),r}processFilterColumnExt(e,t){let n=t.childNodes;for(let t=0;t<n.length;t++){let r=n.item(t);if(r.nodeType!==1||r.localName!==`ext`||b(r.getAttribute(`uri`))!==b(`{1AD28BCE-077C-4C59-8B6E-1921CE8616D4}`))continue;let i=r.childNodes;for(let t=0;t<i.length;t++){let n=i.item(t);if(n.nodeType!==1||n.localName!==`filterColumn`)continue;let r=n.childNodes;for(let t=0;t<r.length;t++){let n=r.item(t);if(n.nodeType===1&&n.localName===`filters`)return this.processFilters(e,n)}}}}processFilterCriteria(e,t){if(!t)return;let n=t.childNodes,r,i=n.length;for(let t=0;t<i;t++){let i=n.item(t);i.nodeType===1&&(i.localName===`colorFilter`?r=this.processColorFilter(e,i):i.localName===`customFilters`?r=this.processCustomFilters(e,i):i.localName===`dynamicFilter`?r=this.processDynamicFilter(e,i):i.localName===`filters`?r=this.processFilters(e,i):i.localName===`iconFilter`?r=this.processIcon(e,i):i.localName===`top10`?r=this.processTop10(e,i):i.localName===`extLst`&&(r=this.processFilterColumnExt(e,i)??r))}return r}processFilterColumn(e,t,n){if(!t)return null;if(!t.hasAttribute(`colId`))return;let r=parseInt(t.getAttribute(`colId`)),i=!1;if(t.hasAttribute(`hiddenButton`)&&(i=A(t.getAttribute(`hiddenButton`))),i&&n){let e=n.hiddenButtons;e||(e=[],n.hiddenButtons=e),e.push(r)}let a=!1;if(t.hasAttribute(`showButton`)&&(a=A(t.getAttribute(`showButton`))),a&&n){let e=n.showButtons;!0!==e&&(e||(e=[],n.showButtons=e),e[r]=!0)}let o=this.processFilterCriteria(e,t);return o?(o.index=r,o):null}processFilterColumns(e,t,n,r){if(!t)return;let i=t.childNodes,a=i.length;for(let t=0;t<a;t++){let a=i.item(t);if(a.nodeType===1&&a.localName===`filterColumn`){let t=this.processFilterColumn(e,a,r);t&&n.push(t)}}return n}},SortStateVisitor:class{visit(e,t,n){if(!t)return;let r=t.getAttribute(`ref`),i={};t.hasAttribute(`caseSensitive`)&&(i.collatorOptions=A(t.getAttribute(`caseSensitive`))?f.CaseSensitiveOptions:f.CaseInsensitiveOptions);let a=t.getAttribute(`sortMethod`);a!=null&&a!==`none`&&(a===`stroke`?i.collatorOptions={...i.collatorOptions,collation:`stroke`}:a===`pinYin`&&(i.collatorOptions={...i.collatorOptions,collation:`pinyin`}));let o={};t.hasAttribute(`columnSort`)&&A(t.getAttribute(`columnSort`))&&(o.axis=c.Axis.Column);let s=u.fastStringToRange(r),l=[],d=[];this.processSortConditions(e,t,l,s,i,d),l.length>0&&(o.sorts=l);let p=e.getVisitorParamsState().get(`ref`);if(p&&r){let e=u.fastStringToRange(p);o.extent={range:g(e,s),sorts:d.map(t=>L(e,s,t))}}return Object.keys(l).length>0&&(n.sort=o),o}processSortCondition(e,t,n,r,i){if(!t)return null;let a={};if(!t.hasAttribute(`ref`))return void e.warn(`A sort condition has no ref; it was dropped.`,{onceKey:`xlsx.sheet.sort.noRef`});if(t.hasAttribute(`ref`)){let e=t.getAttribute(`ref`),r=u.fastStringToRange(e);a.index=n?r.colStart-n.colStart:r.colStart,i?.push(r)}let o={...r};a.criteria=o,o.reverse=!1,t.hasAttribute(`descending`)&&(o.reverse=A(t.getAttribute(`descending`)));let s=te(t.getAttribute(`sortBy`));s&&(o.sortOn=s);let c=U(e,t);return c&&(o.style=c),e.copyFromAttribute(t,`iconSet`,o),e.copyFromAttribute(t,`customList`,o),a}processSortConditions(e,t,n,r,i,a){if(!t)return;let o=t.childNodes,s=o.length;for(let t=0;t<s;t++){let s=o.item(t);if(s.nodeType===1&&s.localName===`sortCondition`){let t=this.processSortCondition(e,s,r,i,a);t&&n.push(t)}}}},SheetStyleVisitor:class extends G{visit(e,t,n){this.processNumFmts(e,e.evaluate(`numFmts`,t),null),e.getVisitorParamsState().set(`colorsToProcess`,new Set);let a={fills:{},fonts:{},borders:{}},o=e.evaluate(`fonts`,t);this.processFonts(e,o,a.fonts);let s=a.fonts[this.normalFontId(e,t)],c={declared:[`1`,`true`].includes(o?.getAttribute(`x14ac:knownFonts`)??``),normalIsThemeFont:ae(s?.family),faces:de(Object.values(a.fonts).map(e=>({...e,family:se(e?.family,e?.fallbacks,null,!1).name})))};e.getVisitorParamsState().set(ge,c),s&&e.getVisitorParamsState().set(`defaultFont`,s),this.processFills(e,e.evaluate(`fills`,t),a.fills),this.processBorders(e,e.evaluate(`borders`,t),a.borders,!0),a.fills[0]={type:r.Type.None},a.fills[1]={type:r.Type.Pattern,patternType:r.BuiltInSheetPattern.Gray125},a.borders[0]={bottom:{style:i.StrokeStyle.None},left:{style:i.StrokeStyle.None},right:{style:i.StrokeStyle.None},top:{style:i.StrokeStyle.None}};let l=[];this.processXFs(e,e.evaluate(`cellStyleXfs`,t),l,a,null,!1);let u=new Map;if(l.length>0){let r=[];this.processCellStyles(e,e.evaluate(`cellStyles`,t),r,l,u),n.named=r}let d=[];this.processXFs(e,e.evaluate(`cellXfs`,t),d,a,u),Object.keys(d).length>0&&(n.direct=d);let f=this.collectHiddenXfs(e.evaluate(`cellXfs`,t));f.size>0&&e.getVisitorParamsState().set(`hiddenXfs`,f);let p=this.collectPivotButtonXfs(e.evaluate(`cellXfs`,t));p.size>0&&e.getVisitorParamsState().set(`pivotButtonXfs`,p);let m=this.collectXfComplements(e.evaluate(`cellXfs`,t));m.size>0&&e.getVisitorParamsState().set(`xfComplements`,m);let h=[];return this.processDXFs(e,e.evaluate(`dxfs`,t),h),this.processTableStyles(e,e.evaluate(`tableStyles`,t),n,h),this.processSlicerStyles(e,e.evaluate(`extLst`,t),n),this.processIndexColors(e,e.evaluate(`colors/indexedColors`,t),n),this.processMruColors(e,e.evaluate(`colors/mruColors`,t),n),n}normalFontId(e,t){let n=e.evaluate(`cellStyles`,t)?.childNodes,r=0;for(let e=0;e<(n?.length??0);e++){let t=n.item(e);if(t.nodeType===1&&t.getAttribute(`builtinId`)===`0`){r=parseInt(t.getAttribute(`xfId`)??`0`,10)||0;break}}let i=e.evaluate(`cellStyleXfs`,t)?.childNodes,a=0;for(let e=0;e<(i?.length??0);e++){let t=i.item(e);if(t.nodeType===1&&a++===r)return parseInt(t.getAttribute(`fontId`)??`0`,10)||0}return 0}processIndexColors(e,t,n){if(!t)return;let r=[],i=t.childNodes,a=i.length;for(let t=0;t<a;t++){let n=i.item(t);if(n.nodeType===1&&n.localName===`rgbColor`){let t={color:null};this.processDataBarColor(e,n,t,`color`),t.color&&r.push(t.color)}}n.indexedColors=r}processMruColors(e,t,n){if(!t)return;let r=[],i=t.childNodes,a=i.length;for(let t=0;t<a;t++){let n=i.item(t);if(n.nodeType===1&&n.localName===`color`){let t={color:null};this.processDataBarColor(e,n,t,`color`),t.color&&r.push(t.color)}}r.length>0&&(n.mruColors=r)}processNumFmts(e,t,n){if(!t)return;let r=new Map;if(e.getVisitorParamsState().set(`numFmts`,r),!t)return;let i=t.childNodes,a=i.length;for(let e=0;e<a;e++){let t=i.item(e);if(t.nodeType===1&&t.localName===`numFmt`){let e=t.getAttribute(`numFmtId`),n=t.getAttribute(`formatCode`);if(e&&n){let t=n;r.set(parseInt(e),t)}}}}processXFs(e,t,n,r,i=null,a=!0){if(!t)return;let o=t.childNodes,s=o.length;for(let t=0;t<s;t++){let s=o.item(t);if(s.nodeType===1&&s.localName===`xf`){let t={};this.processXF(e,s,t,r,i,a),n.push(t)}}}processXF(e,t,n,r,i,a){if(!t)return;let o=t.getAttribute(`xfId`);if(o&&i){let e=i.get(parseInt(o));e&&e!==s.BuiltInName.Normal&&(n.named=e)}let c=e=>!(!a&&t.hasAttribute(e))||A(t.getAttribute(e)),l=e=>!a||t.hasAttribute(e)&&A(t.getAttribute(e)),u=a?`0`:void 0;if(c(`applyFont`)){let e=t.getAttribute(`fontId`)??u;if(e!==void 0&&(e!==`0`||l(`applyFont`))){let t=r.fonts[e];t!==void 0&&(n.font=t)}}if(c(`applyFill`)){let e=t.getAttribute(`fillId`)??u;if(e!==void 0&&(e!==`0`||l(`applyFill`))){let t=r.fills[e];t!==void 0&&Object.keys(t).length>0&&(n.fill=t)}}if(c(`applyBorder`)){let e=t.getAttribute(`borderId`)??u;if(e!==void 0&&(e!==`0`||l(`applyBorder`))){let t=r.borders[e];t!==void 0&&(n.borders=t)}}if(c(`applyNumberFormat`)){let r=t.getAttribute(`numFmtId`)??u;if(r!==void 0&&(r!==`0`||l(`applyNumberFormat`))){let t=parseInt(r),i,a=e.getVisitorParamsState();if(a){let e=a.get(`numFmts`);e&&(i=e.get(t)),n.numberFormat=i??t}else e.warn(`Number formats were unavailable; a cell format was not read.`,{onceKey:`xlsx.style.numberFormat.state`})}}if(c(`applyAlignment`)){let r=e.evaluate(`alignment`,t);(r||l(`applyAlignment`))&&this.processAlignment(e,r,n)}if(c(`applyProtection`)){let r=e.evaluate(`protection`,t);(r||l(`applyProtection`))&&this.processProtection(e,r,n)}let d=A(t.getAttribute(`quotePrefix`)??``);d&&(n.quotePrefix=d)}processAlignment(e,t,n){let r={};if(r.horizontal=t?.hasAttribute(`horizontal`)?t.getAttribute(`horizontal`):o.HorizontalAlignment.General,r.vertical=t?.hasAttribute(`vertical`)?t.getAttribute(`vertical`):o.VerticalAlignment.Bottom,r.indent=t?.hasAttribute(`indent`)?parseInt(t.getAttribute(`indent`)):0,r.relativeIndent=t?.hasAttribute(`relativeIndent`)?parseInt(t.getAttribute(`relativeIndent`)):0,r.overflow=A(t?.getAttribute(`wrapText`)??``)?o.Overflow.Wrap:o.Overflow.Visible,A(t?.getAttribute(`shrinkToFit`)??``)&&(r.overflow=o.Overflow.Shrink),t?.hasAttribute(`textRotation`)){let e=parseFloat(t.getAttribute(`textRotation`));e>0&&e<=90?e=360-e:e>90&&e<=180?e-=90:e===255&&(e=0,r.stacked=!0),r.rotation=e}else r.rotation=0;t?.hasAttribute(`justifyLastLine`)&&(r.justifyLastLine=A(t.getAttribute(`justifyLastLine`)));let i=t?.getAttribute(`readingOrder`);return i&&(i===`0`?r.readingDirection=o.ReadingDirection.Auto:i===`1`?r.readingDirection=o.ReadingDirection.LeftToRight:i===`2`?r.readingDirection=o.ReadingDirection.RightToLeft:e.warn(`Invalid readingOrder '${i}'; the direction was left automatic.`,{onceKey:`xlsx.style.readingOrder`})),Object.keys(r).length>0&&(n.alignment=r),n}collectHiddenXfs(e){let t=new Set;if(!e)return t;let n=e.childNodes,r=0;for(let e=0;e<n.length;e++){let i=n.item(e);if(i.nodeType!==1||i.localName!==`xf`)continue;let a=i.childNodes;for(let e=0;e<a.length;e++){let n=a.item(e);n.nodeType===1&&n.localName===`protection`&&A(n.getAttribute(`hidden`)??``)&&t.add(r)}r++}return t}collectPivotButtonXfs(e){let t=new Set;if(!e)return t;let n=e.childNodes,r=0;for(let e=0;e<n.length;e++){let i=n.item(e);i.nodeType===1&&i.localName===`xf`&&(A(i.getAttribute(`pivotButton`)??``)&&t.add(r),r++)}return t}collectXfComplements(e){let t=new Map;if(!e)return t;let n=e.childNodes,r=0;for(let e=0;e<n.length;e++){let i=n.item(e);if(i.nodeType!==1||i.localName!==`xf`)continue;let a=q(i,`extLst`);if(a){let e=a.childNodes;for(let n=0;n<e.length;n++){let i=q(e.item(n),`xfComplement`),a=parseInt(i?.getAttribute(`i`)??``,10);isNaN(a)||t.set(r,a)}}r++}return t}processProtection(e,t,n){if(!t)return;let r=t.getAttribute(`locked`);return n.protection={alwaysUnlocked:!!r&&!A(r)},n}processDXF(e,t,n){if(!t)return;let r=t.childNodes,i=r.length;for(let t=0;t<i;t++){let i=r.item(t);if(i.nodeType===1&&i.localName===`font`){let t={};this.processFont(e,i,t),n.font=t}else if(i.nodeType===1&&i.localName===`fill`){let t=[];this.processFill(e,i,t,0),t.length>0&&t[0]&&(n.fill=t[0])}else if(i.nodeType===1&&i.localName===`border`){let t=[];this.processBorder(e,i,t,0,!1),t.length>0&&t[0]&&(n.borders=t[0])}else if(i.nodeType===1&&i.localName===`numFmt`){let e=i.getAttribute(`formatCode`);if(e)n.numberFormat=e;else{let e=i.getAttribute(`numFmtId`);e&&(n.numberFormat=Number(e))}}else i.nodeType===1&&i.localName===`alignment`&&this.processAlignment(e,i,n)}}processDXFs(e,t,n){if(!t)return;e.getVisitorParamsState().set(`processingDXFs`,!0);let r=new Map;e.getVisitorParamsState().set(`dxfs`,r);let i=t.childNodes,a=i.length;for(let t=0;t<a;t++){let a=i.item(t);if(a.nodeType===1&&a.localName===`dxf`){let t={};this.processDXF(e,a,t);let i=n.length;r.set(i,t),n.push(t)}}e.getVisitorParamsState().delete(`processingDXFs`)}processSlicerStyles(e,t,n){if(!t)return;let r=null,i=null,a=t.childNodes;for(let e=0;e<a.length;e++){let t=a.item(e);if(t.nodeType!==1||t.localName!==`ext`)continue;let n=t.childNodes;for(let e=0;e<n.length;e++){let t=n.item(e);t.nodeType===1&&(t.localName===`dxfs`?r=t:t.localName===`slicerStyles`&&(i=t))}}if(!i)return;let o=[];if(r){e.getVisitorParamsState().set(`processingDXFs`,!0);let t=r.childNodes;for(let n=0;n<t.length;n++){let r=t.item(n);if(r.nodeType!==1||r.localName!==`dxf`)continue;let i={};this.processDXF(e,r,i),o.push(i)}e.getVisitorParamsState().delete(`processingDXFs`)}let s={},c=i.getAttribute(`defaultSlicerStyle`);c&&c!==`SlicerStyleLight1`&&(s.defaultSlicerStyle=c);let l=n.tables?.styles,u=i.childNodes;for(let t=0;t<u.length;t++){let n=u.item(t);if(n.nodeType!==1||n.localName!==`slicerStyle`)continue;let r=n.getAttribute(`name`);if(!r)continue;let i={},a=l?.[r];a&&!1===a.table&&!a.pivot&&(a.wholeTable&&(i.wholeTable=a.wholeTable),a.headerRow&&(i.headerRow=a.headerRow),delete l[r]);let c=e.evaluate(`slicerStyleElements`,n)?.childNodes,d=c?.length??0;for(let t=0;t<d;t++){let n=c.item(t);if(n.nodeType!==1||n.localName!==`slicerStyleElement`)continue;let r=n.getAttribute(`type`);if(!r||!ke.has(r))continue;let a=n.getAttribute(`dxfId`),s=a==null?void 0:o[parseInt(a)];s?i[r]=s:e.warn(`A slicer style names a format that does not exist (dxfId '${a}').`,{onceKey:`xlsx.style.slicerStyle.dxf`})}(s.styles??={})[r]=i}l&&Object.keys(l).length===0&&(delete n.tables.styles,Object.keys(n.tables).length===0&&delete n.tables),Object.keys(s).length>0&&(n.slicers=s)}processTableStyle(e,t,n,r,i=!1){let a=t.getAttribute(`name`),o={name:a};t.hasAttribute(`table`)&&(o.table=A(t.getAttribute(`table`))),o.pivot=!t.hasAttribute(`pivot`)||A(t.getAttribute(`pivot`)),i&&!o.pivot&&r.unshift(null);let s=t.childNodes,c=s.length;for(let t=0;t<c;t++){let n=s.item(t);if(n.nodeType===1&&n.localName===`tableStyleElement`){let t=n.getAttribute(`type`),i=n.getAttribute(`dxfId`),a=i==null?void 0:r?.[i];a||=(e.warn(`A table style names a format that does not exist (dxfId '${i}').`,{onceKey:`xlsx.style.tableStyle.dxf`}),{}),o[t]=a;let s=null;n.hasAttribute(`size`)&&(s=parseInt(n.getAttribute(`size`))),s&&!isNaN(s)&&(a.size=s)}}delete o.name,n[a]=o}processTableStyles(e,t,n,r,i){if(!t)return;let a={},o=t.getAttribute(`defaultTableStyle`);o&&(a.defaultTableStyle=o);let s=t.getAttribute(`defaultPivotStyle`);s&&(a.defaultPivotStyle=s);let c=t.childNodes,l={},u=c.length;for(let t=0;t<u;t++){let n=c.item(t);n.nodeType===1&&n.localName===`tableStyle`&&this.processTableStyle(e,n,l,r,i)}return Object.keys(l).length>0&&(a.styles=l),Object.keys(a).length>0&&(n.tables=a),n}processCellStyles(e,t,n,r,i){if(!t)return;let a=t.childNodes,o=a.length;for(let e=0;e<o;e++){let t=a.item(e);if(t.nodeType===1&&t.localName===`cellStyle`){let e=parseInt(t.getAttribute(`xfId`)??``),a=t.getAttribute(`name`),o=t.getAttribute(`builtinId`),c=a;if(o!==null){let e=s.builtInNameFromId(parseInt(o));e!==void 0&&(c=e)}if(i.set(e,c),!r[e])continue;let l={name:c,style:r[e]};t.getAttribute(`hidden`)&&(l.hidden=A(t.getAttribute(`hidden`))),t.getAttribute(`iLevel`)&&(l.iLevel=parseInt(t.getAttribute(`iLevel`))),o!==null&&A(t.getAttribute(`customBuiltin`)??`0`)&&(l.customized=!0),n.push(l)}}}afterVisit(e,t,n){}},WorkbookVisitor:class extends G{visit(e,t,n){return this.processSheetRefs(e,e.evaluate(`sheets`,t),n),this.processExternalReferences(e,e.evaluate(`externalReferences`,t),n),this.processBookViews(e,e.evaluate(`bookViews`,t),n),this.processDefinedNames(e,e.evaluate(`definedNames`,t),n),this.processCalcPr(e,e.evaluate(`calcPr`,t),n),this.processPivotCaches(e,e.evaluate(`pivotCaches`,t),n),this.processWorkbookProtection(e,e.evaluate(`workbookProtection`,t),n),this.processWorkbookPr(e,e.evaluate(`workbookPr`,t),n),n}processPassword(e,t,n,r=`workbook`,i=`password`){if(!t)return;let a={};e.copyFromAttribute(t,`${r}AlgorithmName`,a,`algorithm`),e.copyFromAttribute(t,`${r}HashValue`,a,`hash`),e.copyFromAttribute(t,`${r}SaltValue`,a,`salt`),e.copyFromAttribute(t,`${r}SpinCount`,a,`spinCount`,e.INT_COPY),e.copyFromAttribute(t,`${r}Password`,a,`legacyHash`),Object.keys(a).length>0&&(n[i]=a)}processWorkbookProtection(e,t,n){if(!t)return;let r={};this.processPassword(e,t,r,`workbook`,`password`),this.processPassword(e,t,r,`revisions`,`revisionsPassword`);for(let e of ue)r[e.key]=_e(e,t.getAttribute(e.attribute));return n.protection=r,n}processCalcPr(e,t,n){if(!t)return;let r={};e.copyFromAttribute(t,`calcMode`,r,`calcMode`,e=>Ae[e]??null),e.copyFromAttribute(t,`fullCalcOnLoad`,r,`fullCalcOnLoad`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`calcOnSave`,r,`calcOnSave`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`calcCompleted`,r,`calcCompleted`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`fullPrecision`,r,`fullPrecision`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`forceFullCalc`,r,`forceFullCalc`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`concurrentCalc`,r,`concurrentCalc`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`concurrentManualCount`,r,`concurrentManualCount`,e.INT_COPY),e.copyFromAttribute(t,`refMode`,r,`refMode`),e.copyFromAttribute(t,`iterate`,r,`iterate`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`iterateCount`,r,`maxIteration`,e.INT_COPY),e.copyFromAttribute(t,`iterateDelta`,r,`maxIterateChange`,e.FLOAT_COPY);let i=t.getAttribute(`calcId`);i!==null&&e.getVisitorParamsState().set(`calcId`,i),n.calc=r}processSheetRefs(e,t,n){if(!t)return;let r=[],i=t.childNodes,a=i.length;for(let t=0;t<a;t++){let n=i.item(t);n.nodeType===1&&n.localName===`sheet`&&this.processSheetRef(e,n,r)}n.sheets=r}processSheetRef(e,t,n){let r={};e.copyFromAttribute(t,`name`,r,`name`),e.copyFromAttribute(t,`state`,r,`visibility`),e.copyFromAttribute(t,`sheetId`,r,`sheetId`,e.INT_COPY);let i=t.getAttribute(`r:id`),a=i?ne(e.getRelationships().get(i)?.type):null;if(a){let t=e.readEmbeddedPart(i);if(t?.xml){let e={part:t},i=fe(t.xml),o=i?v(e=>i.get(e)):void 0;o&&(e.tabColor=o),r.kind=a,r.sheet=e,n.push(r);return}e.warn(`The ${a} sheet '${r.name}' could not be read and was loaded as an empty worksheet.`),n.push(r);return}let o=i?e.getRef(i):null;o&&(r.sheet=o),n.push(r)}processExternalReferences(e,t,n){if(!t)return;let r=[],i=t.childNodes,a=i.length;for(let t=0;t<a;t++){let n=i.item(t);if(n.nodeType===1&&n.localName===`externalReference`){let t=n.getAttribute(`r:id`),i=t?e.getRef(t):null;r.push(i??null)}}r.length>0&&(n.externalBooks=r)}processPivotCaches(e,t,n){if(!t)return;let r=[],i=e.evaluate(`workbookPr`,t.parentNode)?.getAttribute?.(`date1904`),a=i===`1`||i===`true`,o=pe(e.getVisitorParamsState().get(`numFmts`),void 0),s=t.childNodes,c=s.length;for(let t=0;t<c;t++){let n=s.item(t);if(n.nodeType!==1||n.localName!==`pivotCache`)continue;let i=parseInt(n.getAttribute(`cacheId`)??``,10),c=n.getAttribute(`r:id`);if(isNaN(i)||!c)continue;let l=e.readEmbeddedPart(c);if(!l)continue;let u=be(l,a,e=>o.numberFormat(e)),d=!u&&l.xml?ce(l.xml,o):void 0,f=!u&&l.xml?ye(l.xml):void 0;r.push({cacheId:i,part:l,...d?{partFormats:d}:{},...f?{source:f}:{},...u})}r.length>0&&(n.pivotCaches=r)}processBookViews(e,t,n){if(!t)return;let r=t.childNodes,i=0,a=r.length;for(let t=0;i<1&&t<a;t++){let a=r.item(t);a.nodeType===1&&a.localName===`workbookView`&&(this.processWorkbookView(e,a,n),i++)}}processWorkbookView(e,t,n){if(!t)return;let r={},i=[`xWindow`,`yWindow`,`windowWidth`,`windowHeight`].map(e=>parseInt(t.getAttribute(e)??``,10));if(i.some(e=>Number.isFinite(e))){let[e,t,n,a]=i.map(e=>Number.isFinite(e)?e:0);r.windowBounds={left:e,top:t,width:n,height:a}}e.copyFromAttribute(t,`activeTab`,r,`activeSheetId`,[e.INT_COPY,e=>e]),t.hasAttribute(`activeTab`)||(r.activeSheetId=0),e.copyFromAttribute(t,`showHorizontalScroll`,r,`showHorizontalScrollbar`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`showVerticalScroll`,r,`showVerticalScrollbar`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`showSheetTabs`,r,`showTabs`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`tabRatio`,r,`tabRatio`,[e.FLOAT_COPY,e=>e]),e.copyFromAttribute(t,`firstSheet`,r,`firstTab`,[e.INT_COPY,e=>e]),e.copyFromAttribute(t,`minimized`,r,`minimized`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`autoFilterDateGrouping`,r,`autoFilterDateGrouping`,e.BOOLEAN_COPY);let a=t.getAttribute(`visibility`);a!==`hidden`&&a!==`veryHidden`||(r.visibility=a),Object.keys(r).length>0&&(n.view=r)}processDefineName(e,t,n,r){if(!t)return;let i={},a=t.firstChild;if(a&&a.nodeType===3&&(i.ref=a.textContent),e.copyFromAttribute(t,`name`,i),e.copyFromAttribute(t,`comment`,i),e.copyFromAttribute(t,`hidden`,i,`hidden`,e.BOOLEAN_COPY),t.hasAttribute(`localSheetId`)){let n=t.getAttribute(`localSheetId`);if(!r[n]?.name)return void e.warn(`Defined name '${t.getAttribute(`name`)}' references a sheet with localSheetId '${n}' which does not exist.`);i.scope=r[n].name}let o={};for(let n of ve)e.copyFromAttribute(t,n,o);for(let e of R){let n=t.getAttribute(e);n!==`1`&&n!==`true`||(o[e]=!0)}e.copyFromAttribute(t,`functionGroupId`,o,`functionGroupId`,e.INT_COPY),Object.keys(o).length>0&&(i.fileAttributes=o),Object.keys(i).length>0&&n.push(i)}processDefinedNames(e,t,n){if(!t)return;let r=[],i=t.childNodes,a=i.length;for(let t=0;t<a;t++){let a=i.item(t);a.nodeType===1&&a.localName===`definedName`&&this.processDefineName(e,a,r,n.sheets)}r.length>0&&(n.names=r)}processWorkbookPr(e,t,n){if(!t)return;e.copyFromAttribute(t,`date1904`,n,`date1904`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`codeName`,n,`codeName`),e.copyFromAttribute(t,`updateLinks`,n,`updateLinks`);let r=t.getAttribute(`hidePivotFieldList`);r!==`1`&&r!==`true`||(n.hiddenPivotFieldList=!0)}afterVisit(e,t,n){}},TableVisitor:class{visit(e,t,n){let r={};return e.copyFromAttribute(t,`ref`,n,`r`),e.getVisitorParamsState().set(`ref`,n.r),n.v=r,e.copyFromAttribute(t,`name`,r),e.copyFromAttribute(t,`displayName`,r,`name`),e.copyFromAttribute(t,`headerRowCount`,r,`headerRowCount`,e.INT_COPY),e.copyFromAttribute(t,`totalsRowCount`,r,`totalsRowCount`,e.INT_COPY),this.processTableColumns(e,t,r),this.processTableStyleInfo(e,t,r),e.copyFromAttribute(t,`id`,r),e.copyFromAttribute(t,`comment`,r,`description`),e.copyFromAttribute(t,`connectionId`,r,`connectionId`,e.INT_COPY),e.copyFromAttribute(t,`tableType`,r),e.copyFromAttribute(t,`published`,r,`published`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`insertRow`,r,`insertRow`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`insertRowShift`,r,`insertRowShift`,e.BOOLEAN_COPY),r.totalsRowShown=t.getAttribute(`totalsRowShown`)!==`0`,r}afterVisit(e,t,n){let r=n.v;if(e.evaluate(`autoFilter`,t)){if(Array.isArray(r.hiddenButtons)){let e=r.hiddenButtons.length;e===0?r.hiddenButtons=!1:e===r.columns?.length&&(r.hiddenButtons=!0)}}else r.hiddenButtons=!0,r.showButtons=!1;return r}processTableStyleInfo(e,t,n){if(!t)return;let r=t.childNodes,i={},a=r.length;for(let t=0;t<a;t++){let n=r.item(t);n.nodeType===1&&n.localName===`tableStyleInfo`&&(e.copyFromAttribute(n,`name`,i),e.copyFromAttribute(n,`showColumnStripes`,i,`showColumnStripes`,e.BOOLEAN_COPY),e.copyFromAttribute(n,`showFirstColumn`,i,`showFirstColumn`,e.BOOLEAN_COPY),e.copyFromAttribute(n,`showLastColumn`,i,`showLastColumn`,e.BOOLEAN_COPY),e.copyFromAttribute(n,`showRowStripes`,i,`showRowStripes`,e.BOOLEAN_COPY))}Object.keys(i).length>0&&(n.style=i)}processTableColumn(e,t,n){if(!t)return null;let r=t.childNodes,i=r.length;for(let t=0;t<i;t++){let i=r.item(t);if(i.nodeType===1&&i.localName===`tableColumn`){let t={};e.copyFromAttribute(i,`name`,t),e.copyFromAttribute(i,`id`,t),e.copyFromAttribute(i,`uniqueName`,t),e.copyFromAttribute(i,`queryTableFieldId`,t),e.copyFromAttribute(i,`totalsRowLabel`,t);let r=i.getAttribute(`totalsRowFunction`);if(r!==null){if(r===`custom`){let n=e.evaluate(`totalsRowFormula`,i);n&&(t.totalsRowFormula=n.textContent)}else t.totalsRowFormula=r}e.copyFromAttribute(i,`totalsRowLabel`,t);let a=e.evaluate(`calculatedColumnFormula`,i);a?.textContent&&(t.calculatedColumnFormula=a.textContent),n.push(t)}}return n}processTableColumns(e,t,n){let r=t.childNodes,i=[],a=r.length;for(let t=0;t<a;t++){let n=r.item(t);n.nodeType===1&&n.localName===`tableColumns`&&this.processTableColumn(e,n,i)}i.length>0&&(n.columns=i)}},TableX14Visitor:class{visit(e,t,n){let r=e.getVisitorParamsState().get(`ref`);if(r){let n=e.getVisitorParamsState().get(`descriptions`);n&&(n.add(r,t.getAttribute(`altText`)),n.add(r,t.getAttribute(`altTextSummary`)))}return e.copyFromAttribute(t,`altText`,n),e.copyFromAttribute(t,`altTextSummary`,n),n}},ExternalLinkVisitor:class{visit(e,t,n){let r=t.childNodes,i=r.length,a=null;for(let e=0;e<i;e++){let t=r.item(e);if(t.nodeType===1){t.localName===`externalBook`&&(a=t);break}}if(!a)return n;t.getAttribute(`mc:Ignorable`)&&(n.mceIgnorable=!0);let o=a.getAttribute(`r:id`);o&&(n.__bookRelId=o);let s=this._findAbsoluteUrlRelId(a);return s&&(n.__absoluteUrlRelId=s),n.sheetNames=[],this.processSheetNames(e,a,n),this.processDefinedNames(e,a,n),this.processSheetDataSet(e,a,n),n}processSheetNames(e,t,n){let r=this._findChild(t,`sheetNames`);if(!r)return;let i=r.childNodes,a=i.length;for(let e=0;e<a;e++){let t=i.item(e);t.nodeType===1&&t.localName===`sheetName`&&n.sheetNames.push(t.getAttribute(`val`)??``)}}processDefinedNames(e,t,n){let r=this._findChild(t,`definedNames`);if(!r)return;let i=[],a=r.childNodes,o=a.length;for(let e=0;e<o;e++){let t=a.item(e);if(t.nodeType!==1||t.localName!==`definedName`)continue;let n=t.getAttribute(`name`);if(!n)continue;let r={name:n,refersTo:t.getAttribute(`refersTo`)??``},o=t.getAttribute(`sheetId`);o!==null&&(r.sheetIndex=parseInt(o,10)),i.push(r)}i.length>0&&(n.definedNames=i)}processSheetDataSet(e,t,n){let r=this._findChild(t,`sheetDataSet`);if(!r)return;let i=[],a=r.childNodes,o=a.length;for(let t=0;t<o;t++){let n=a.item(t);if(n.nodeType!==1||n.localName!==`sheetData`)continue;let r=n.getAttribute(`sheetId`);if(r===null)continue;let o=this.processSheetData(e,n);o.sheetIndex=parseInt(r,10),n.getAttribute(`refreshError`)===`1`&&(o.refreshError=!0),i.push(o)}i.length>0&&(n.sheetDataSet=i)}processSheetData(e,t){let n=new p.Builder,r=t.childNodes,i=r.length;for(let e=0;e<i;e++){let t=r.item(e);if(t.nodeType!==1||t.localName!==`row`)continue;let i=t.childNodes,a=i.length;for(let e=0;e<a;e++){let t=i.item(e);if(t.nodeType!==1||t.localName!==`cell`)continue;let r=t.getAttribute(`r`);if(!r)continue;let a=u.fastStringToCell(r);if(a?.rowIndex===void 0||a?.colIndex===void 0)continue;let o=this._readCellValue(t);o!==void 0&&n.pushAt(a.rowIndex,a.colIndex,o)}}return{sheetIndex:-1,data:n.build()?.tuples??[]}}_readCellValue(e){let t=this._findChild(e,`v`)?.textContent?.trim();if(t!==void 0&&t!==``)switch(e.getAttribute(`t`)){case null:case`n`:return parseFloat(t);case`b`:return t===`1`||t===`true`;case`str`:default:return t;case`e`:{let e=l.getBuiltInByLabel(t);return e?{t:`e`,v:e.getCode()}:t}}}_findChild(e,t){let n=e.childNodes,r=n.length;for(let e=0;e<r;e++){let r=n.item(e);if(r.nodeType===1&&r.localName===t)return r}return null}_findAbsoluteUrlRelId(e){let t=this._findChild(e,`alternateUrls`);return t?this._findChild(t,`absoluteUrl`)?.getAttribute(`r:id`)??null:null}},SlicerCacheDefinitionVisitor:class{visit(e,t,n){e.copyFromAttribute(t,`name`,n,`cacheName`),e.copyFromAttribute(t,`sourceName`,n);let r=e.evaluate(`*/tableSlicerCache`,t);return r?(e.copyFromAttribute(r,`tableId`,n),e.copyFromAttribute(r,`column`,n,`columnId`),e.copyFromAttribute(r,`sortOrder`,n),e.copyFromAttribute(r,`customListSort`,n,`customListSort`,e.BOOLEAN_COPY),e.copyFromAttribute(r,`crossFilter`,n),n):(this.processPivot(e,t,n),n)}processPivot(e,t,n){let r=[],i=``,a=t.childNodes;for(let t=0;t<a.length;t++){let o=a.item(t);if(o.nodeType!==1)continue;if(o.localName===`pivotTables`){let e=o.childNodes;for(let t=0;t<e.length;t++){let n=e.item(t);n.nodeType===1&&n.localName===`pivotTable`&&r.push({tabId:n.getAttribute(`tabId`)??``,name:n.getAttribute(`name`)??``})}continue}let s=o.getAttribute(`pivotCacheId`);if(s&&(n.pivotCacheId=s),o.localName===`state`||o.localName===`timelinePivotFilter`){n.tabular=!0,n.pivotData=(n.pivotData??``)+(e.serializeElement(o)??``);continue}if(o.localName===`data`){let t=null,r=o.childNodes;for(let e=0;e<r.length;e++){let i=r.item(e);if(i.nodeType!==1)continue;let a=i.getAttribute(`pivotCacheId`);a&&(n.pivotCacheId=a),i.localName===`tabular`&&(t=i)}if(t){n.tabular=!0,e.copyFromAttribute(t,`sortOrder`,n),e.copyFromAttribute(t,`customListSort`,n,`customListSort`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`crossFilter`,n),e.copyFromAttribute(t,`showMissing`,n,`showMissing`,e.BOOLEAN_COPY),n.pivotData=e.serializeElement(o)??void 0;continue}}let c=e.serializeElement(o);if(c===null)return;i+=c}n.pivotTables=r,n.pivotBody=i}},SlicersVisitor:class{visit(e,t,n){let r=n.slicers;r||(r={},n.slicers=r);let i=t.childNodes,a=i.length;for(let t=0;t<a;t++){let n=i.item(t);n.nodeType===1&&n.localName===`slicer`&&this.processSlicer(e,n,r)}return r}processSlicer(e,t,n){if(!t)return;let r={};n[t.getAttribute(`name`)]=r,e.copyFromAttribute(t,`xr10:uid`,r,`uid`);let i=t.getAttribute(`cache`),a=e.getVisitorParamsState().get(`slicerCaches`),o=i?a?.get(i):void 0;if(o)for(let e=0;e<J.length;e++){let t=J[e];o[t]!==void 0&&(r[t]=o[t])}e.copyFromAttribute(t,`caption`,r),e.copyFromAttribute(t,`startItem`,r,`startItem`,e.INT_COPY),e.copyFromAttribute(t,`columnCount`,r,`columnCount`,e.INT_COPY),e.copyFromAttribute(t,`showCaption`,r,`showCaption`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`level`,r,`level`,e.INT_COPY),e.copyFromAttribute(t,`style`,r),e.copyFromAttribute(t,`lockedPosition`,r,`lockedPosition`,e.BOOLEAN_COPY),e.copyFromAttribute(t,`rowHeight`,r,`rowHeight`,e.INT_COPY)}},TimelinesVisitor:class{visit(e,t,n){let r=n.slicers;r||(r={},n.slicers=r);let i=t.childNodes;for(let t=0;t<i.length;t++){let n=i.item(t);n.nodeType===1&&n.localName===`timeline`&&this.processTimeline(e,n,r)}return r}processTimeline(e,t,n){let r={};n[t.getAttribute(`name`)]=r,e.copyFromAttribute(t,`xr10:uid`,r,`uid`);let i=t.getAttribute(`cache`),a=e.getVisitorParamsState().get(`slicerCaches`),o=i?a?.get(i):void 0;if(o)for(let e=0;e<J.length;e++){let t=J[e];o[t]!==void 0&&(r[t]=o[t])}e.copyFromAttribute(t,`caption`,r);let s={};for(let e=0;e<t.attributes.length;e++){let n=t.attributes.item(e);je.has(n.name)||n.name.startsWith(`xmlns`)||(s[n.name]=n.value)}r.timelineAttributes=s;let c=``,l=t.childNodes;for(let t=0;t<l.length;t++){let n=l.item(t);n.nodeType===1&&(c+=e.serializeElement(n)??``)}r.timelineBody=c}},FormControlPrVisitor:class{visit(e,t,n){let r={},i=t.attributes;for(let e=0;e<i.length;e++){let t=i.item(e),n=t.name;n===`xmlns`||n.startsWith(`xmlns:`)||(r[n]=t.value)}let a=[],o,s=t.childNodes;for(let t=0;t<s.length;t++){let n=s.item(t);if(n.nodeType===1){if(n.localName===`itemLst`){let e=n.childNodes;for(let t=0;t<e.length;t++){let n=e.item(t);n.nodeType===1&&n.localName===`item`&&a.push(n.getAttribute(`val`)??``)}}else n.localName===`extLst`&&(o=e.serializeElement(n)??void 0)}}let c=me(r,a,o);return n.formControl=c,c}},DrawingVisitor:class{visit(e,t,n){return n}afterVisit(e,t,n){for(let e of n?.movables??[])Y(e,!1)}},DrawingAnchorVisitor:class{visit(e,t,n){if(!t)return;let r={};e.copyFromAttribute(t,`editAs`,r,`anchorType`),r.anchor={},t.localName===`absoluteAnchor`?(r.anchorType=`absolute`,this.processAbsoluteCoord(e,e.evaluate(`pos`,t),r.anchor,`from`,`x`,`y`),this.processAbsoluteCoord(e,e.evaluate(`ext`,t),r.anchor,`to`,`cx`,`cy`)):t.localName===`oneCellAnchor`?(this.processOffsetCoord(e,e.evaluate(`from`,t),r.anchor,`from`),this.processAbsoluteCoord(e,e.evaluate(`ext`,t),r.anchor,`to`,`cx`,`cy`)):(this.processOffsetCoord(e,e.evaluate(`from`,t),r.anchor,`from`),this.processOffsetCoord(e,e.evaluate(`to`,t),r.anchor,`to`));let i=e.evaluate(`clientData`,t),a=e=>{let t=i?.getAttribute(e);return t===`0`||t===`false`};return a(`fPrintsWithSheet`)&&(r.noPrint=!0),a(`fLocksWithSheet`)&&(r.unlocked=!0),n.movables||=[],n.movables.push(r),r}processAbsoluteCoord(e,t,n,r,i,a){if(!t)return;let o={x:0,y:0};return o.x=h(t.getAttribute(i)),o.y=h(t.getAttribute(a)),r===`from`?n.tl=o:n.br=o,n}processOffsetCoord(e,t,n,r){if(!t)return;let i={c:0,r:0,x:0,y:0};return e.evaluate(`col`,t)&&(i.c=parseInt(e.evaluate(`col`,t).textContent)),e.evaluate(`row`,t)&&(i.r=parseInt(e.evaluate(`row`,t).textContent)),e.evaluate(`colOff`,t)&&(i.x=h(e.evaluate(`colOff`,t).textContent)),e.evaluate(`rowOff`,t)&&(i.y=h(e.evaluate(`rowOff`,t).textContent)),r===`from`?n.tl=i:n.br=i,n}},DrawingGraphicFrameVisitor:class extends H{visit(e,t,n){if(!t)return;if(this.isGroupContent(n)){if(e.getPath().includes(`Fallback`))return{};let{movable:r}=this.readMemberHeader(e,t,`graphicFrame`),i=e.evaluate(`xfrm`,t);if(i){_(i,r);let t=e.evaluate(`off`,i),n=e.evaluate(`ext`,i);r.anchor={tl:{x:h(t?.getAttribute(`x`)??null)??0,y:h(t?.getAttribute(`y`)??null)??0},br:{x:h(n?.getAttribute(`cx`)??null)??0,y:h(n?.getAttribute(`cy`)??null)??0}}}let a=this.readGraphic(e,t),o=a.type===`chart`?{...r.content.json,...a.json}:a.json;return r.content={...r.content,type:a.type,json:o},n.members.push(r),a.json}n=super.visit(e,t,n);let r=e.evaluate(`nvGraphicFramePr/cNvGraphicFramePr`,t);if(r){let t=e.evaluate(`graphicFrameLocks`,r);t&&t.hasAttribute(`noChangeAspect`)&&(n.lockAspect=t.getAttribute(`noChangeAspect`)===`1`)}let i=this.readGraphic(e,t);return this.setContent(n,i),i}readGraphic(e,t){let n=e.evaluate(`graphic/graphicData`,t),r={type:`graphicFrame`,json:{}};if(!n)return r;let i=n.childNodes,a=i.length;for(let n=0;n<a;n++){let a=i.item(n);if(a.nodeType===1)try{let n=a.localName;n===`chart`?n=`chart`:n!==`slicer`&&n!==`timeslicer`||(n=`slicer`),r.type=n;let i=a.getAttribute(`r:id`);if(n===`chart`&&i){let n=this.readSourceId(e,t),a=e.readEmbeddedPart(i)??void 0,o;try{let t=a?.xml?xe(a.xml):null;o=t?.model,t?.lossy&&e.warn(`A chart states something its model does not; it is saved as it was until it is changed.`,{onceKey:`xlsx.chart.lossy`})}catch(t){e.warn(`A chart could not be read into the chart model; it is kept as its markup: ${t?.message??t}`,{onceKey:`xlsx.chart.model`})}r.json={sourceId:n,part:a,model:o}}else if(n===`slicer`){let n=this.readSourceId(e,t);n!==void 0&&(r.json={sourceId:n})}else i&&(r.json=e.getRef(i))}catch(t){e.warn(`Unable to read a graphic frame: ${t?.message??t}`,{onceKey:`xlsx.drawing.graphicFrame`})}}return r}},DrawingSpVisitor:X,DrawingPicVisitor:class extends H{visit(e,t,n){if(!t)return;if(this.isGroupContent(n)){if(e.getPath().includes(`Fallback`))return{};let{movable:r,content:i}=this.readMemberHeader(e,t,`picture`),a=this.readImage(e,t);return a?(this.readPictureDetails(e,t,a,r,i),n.members.push(r),i):{}}let r=super.visit(e,t,n),i=this.readImage(e,t);if(i===null)return;let a={},o=this.readSourceId(e,t);return o!==void 0&&(a.sourceId=o),this.readPictureDetails(e,t,i,r,a),this.setContent(r,{type:`picture`,json:a}),a}readPictureDetails(e,t,n,r,i){n?.resId!==void 0&&(i.resId=n.resId),n?.image&&(i.image=n.image);let a=t.getAttribute(`macro`);a&&(i.macro=a),t.hasAttribute(`fPublished`)&&(i.published=A(t.getAttribute(`fPublished`)));let o=e.evaluate(`nvPicPr/cNvPicPr`,t);if(o?.getAttribute){o.getAttribute(`preferRelativeResize`)===`0`&&(i.noRelativeResize=!0);let t=this.readLocks(e.evaluate(`picLocks`,o));t&&(i.locks=t),r.lockAspect=t?.noChangeAspect??!1}}readImage(e,t){let n=e.evaluate(`blipFill`,t),r=n?e.evaluate(`blip`,n):null;if(!r)return;if(!(r.getAttribute(`r:embed`)??r.getAttribute(`embed`)??r.getAttribute(`r:link`)??r.getAttribute(`link`)))return e.warn(`A picture names no image; it was not imported.`,{onceKey:`xlsx.drawing.picture.noRel`}),null;let{type:i,resId:a,...o}=new j().processImageFill(e,n);return!o.tile&&o.stretch&&Object.keys(o.stretch).length===0&&delete o.stretch,o.extLst&&Me.test(o.extLst)&&delete o.extLst,{resId:a,image:Object.keys(o).length>0?o:void 0}}},DrawingGrpSpVisitor:class extends H{constructor(...e){super(...e),this._fills=new j}visit(e,t,n){if(!t)return;let r=this.isGroupContent(n),i,a;if(r){if(e.getPath().includes(`Fallback`))return{};let r=this.readMemberHeader(e,t,`group`);i=r.movable,a=r.content,n.members.push(i)}else{if(e.getPath().includes(`Fallback`)&&n.content)return{};i=super.visit(e,t,n),a={};let r=this.readSourceId(e,t);r!==void 0&&(a.sourceId=r),this.setContent(i,{type:`group`,json:a})}a.members=[];let o=e.evaluate(`nvGrpSpPr/cNvGrpSpPr/grpSpLocks`,t);o?.hasAttribute?.(`noChangeAspect`)&&(i.lockAspect=o.getAttribute(`noChangeAspect`)===`1`);let s=this.readLocks(o);s&&(a.locks=s);let c=e.evaluate(`grpSpPr`,t);if(c){let t=e.evaluate(`xfrm`,c);if(t){_(t,i),t.getAttribute(`flipH`)===`1`&&(i.flipH=!0),t.getAttribute(`flipV`)===`1`&&(i.flipV=!0);let n=Z(e,t,`off`,`ext`),o=Z(e,t,`chOff`,`chExt`)??n;o&&(a.childBounds=o),r&&n&&(i.anchor={tl:{x:n.x,y:n.y},br:{x:n.width,y:n.height}})}let n=this._fills.getFill(e,c);n&&Object.keys(n).length>0&&(a.fill=n);let o=this._fills.getEffects(e,c);o&&(a.effects=o);let s=e.evaluate(`scene3d`,c),l=s?e.serializeElement(s):null;l&&(a.scene3d=l);let u=e.evaluate(`extLst`,c),d=u?e.serializeElement(u):null;d&&(a.extLst={...a.extLst,properties:d})}return a}},DrawingCxnSpVisitor:class extends X{visit(e,t,n){if(t)return this.visitShape(e,t,n,`cxnSp`,`nvCxnSpPr/cNvCxnSpPr/cxnSpLocks`)}},MetadataVisitor:class{visit(e,t,n){let r=[],i=new Map,a={cells:[],values:[]},o=t.childNodes;for(let e=0;e<o.length;e++){let t=o.item(e);if(t.nodeType===1)switch(t.localName){case`metadataTypes`:this._parseMetadataTypes(t,r,i);break;case`futureMetadata`:this._attachFutureMetadata(t,i);break;case`cellMetadata`:this._resolveBlocks(t,r,a.cells);break;case`valueMetadata`:this._resolveBlocks(t,r,a.values)}}return n.metadata=a,a}_parseMetadataTypes(e,t,n){let r=e.childNodes;for(let e=0;e<r.length;e++){let i=r.item(e);if(i.nodeType===1&&i.localName===`metadataType`){let e=this._parseMetadataType(i);t.push(e),n.set(e.name,e)}}}_parseMetadataType(e){let t={name:e.getAttribute(`name`)??``,_blocks:[]},n=e.getAttribute(`minSupportedVersion`);n!=null&&(t.minSupportedVersion=Number(n));for(let n of[`copy`,`pasteAll`,`pasteValues`,`merge`,`splitFirst`,`splitAll`,`rowColShift`,`clearFormats`,`clearComments`,`assign`,`coerce`,`cellMeta`,`adjust`,`trans`,`delete`,`edit`])e.getAttribute(n)===`1`&&(t[n]=!0);return t}_attachFutureMetadata(e,t){let n=e.getAttribute(`name`)??``,r=t.get(n);if(!r)return;let i=e.childNodes;for(let e=0;e<i.length;e++){let t=i.item(e);t.nodeType===1&&t.localName===`bk`&&r._blocks.push(this._parseFutureBlock(t))}}_parseFutureBlock(e){let t={},n=e.childNodes;for(let e=0;e<n.length;e++){let r=n.item(e);if(r.nodeType!==1||r.localName!==`extLst`)continue;let i=r.childNodes;for(let e=0;e<i.length;e++){let n=i.item(e);if(n.nodeType!==1||n.localName!==`ext`)continue;let r=n.childNodes;for(let e=0;e<r.length;e++){let n=r.item(e);n.nodeType===1&&(n.localName===`dynamicArrayProperties`?(t.fDynamic=n.getAttribute(`fDynamic`)===`1`,t.fCollapsed=n.getAttribute(`fCollapsed`)===`1`):n.localName===`rvb`&&(t.richValueIndex=Number(n.getAttribute(`i`)??`0`)))}}}return t}_resolveBlocks(e,t,n){let r=e.childNodes;for(let e=0;e<r.length;e++){let i=r.item(e);i.nodeType===1&&i.localName===`bk`&&n.push(this._resolveBlock(i,t))}}_resolveBlock(e,t){let n=new Map,r=e.childNodes;for(let e=0;e<r.length;e++){let i=r.item(e);if(i.nodeType!==1||i.localName!==`rc`)continue;let a=Number(i.getAttribute(`t`)),o=Number(i.getAttribute(`v`)),s=t[a-1];if(!s)continue;let{_blocks:c,...l}=s,u={...l};for(let e of Object.keys(u))u[e]===void 0&&delete u[e];let d=c[o];d&&(d.fDynamic!==void 0&&(u.fDynamic=d.fDynamic,u.fCollapsed=d.fCollapsed??!1),d.richValueIndex!==void 0&&(u.richValueIndex=d.richValueIndex)),n.set(s.name,u)}return n}},FeaturePropertyBagVisitor:class{visit(e,t,n){let r=[],i=t.childNodes;for(let e=0;e<i.length;e++){let t=i.item(e);t.nodeType===1&&t.localName===`bag`&&r.push(this._readBag(t))}let a=[],o=r.find(e=>e.type===`XFComplements`)?.arrays.get(`MappedFeaturePropertyBags`)??[];for(let t=0;t<o.length;t++){let n=r[o[t]]?.ids.get(`XFControls`),i=n===void 0?void 0:r[n]?.ids.get(`CellControl`),s=i===void 0?void 0:r[i]?.type,c=s?Ne[s]:void 0;c||e.warn(`A cell format's feature '${s??`unknown`}' is not read; its cells keep their values.`),a.push(c?{type:c}:null)}let s={controls:a};return n.featurePropertyBag=s,s}_readBag(e){let t={type:e.getAttribute(`type`)??``,ids:new Map,arrays:new Map},n=e.childNodes;for(let e=0;e<n.length;e++){let r=n.item(e);if(r.nodeType!==1)continue;let i=r.getAttribute(`k`)??``;if(r.localName===`bagId`){let e=parseInt(r.textContent??``,10);isNaN(e)||t.ids.set(i,e)}else if(r.localName===`a`){let e=[],n=r.childNodes;for(let t=0;t<n.length;t++){let r=n.item(t);if(r.nodeType!==1||r.localName!==`bagId`)continue;let i=parseInt(r.textContent??``,10);isNaN(i)||e.push(i)}t.arrays.set(i,e)}}return t}},CommentsVisitor:class{visit(e,t,n){if(!t)return;let r=[];this.processAuthors(e,e.evaluate(`authors`,t),r),r.length>0&&(n.authors=r);let i=[];return n.comments=i,i}processAuthors(e,t,n){if(!t)return;let r=t.childNodes,i=r.length;for(let e=0;e<i;e++){let t=r.item(e);if(t.nodeType===1&&t.localName===`author`){let e=t.firstChild;e&&e.nodeType===3&&n.push(e.textContent)}}}},CommentVisitor:class{visit(e,t,n){if(!t)return;let r=t.getAttribute(`ref`);if(!r)return;let i={content:``};if(t.hasAttribute(`authorId`)){let e=parseInt(t.getAttribute(`authorId`),10);isNaN(e)||(i.authorId=e)}return i.content=function(e){if(!e)return``;let t=[],n=!0,r=e.childNodes;for(let e=0;e<r.length;e++){let i=r.item(e);if(i.nodeType===1){if(i.localName===`t`)t.push({text:i.textContent??``});else if(i.localName===`r`){let e={text:``},r=i.childNodes;for(let t=0;t<r.length;t++){let n=r.item(t);if(n.nodeType===1){if(n.localName===`t`)e.text+=n.textContent??``;else if(n.localName===`rPr`){let t=Fe(n);t&&(e.font=t)}}}e.font&&(n=!1),t.push(e)}}}return t.length===0?e.textContent??``:n?t.map(e=>e.text).join(``):{runs:t}}(e.evaluate(`text`,t)),n.push({r,v:i}),i}},ThreadedCommentsVisitor:class{visit(e,t,n){if(!t)return;let r=[];return n.comments=r,r}},ThreadedCommentVisitor:class{visit(e,t,n){if(!t)return;let r={};e.copyFromAttribute(t,`id`,r,`id`,T);let i=t.getAttribute(`ref`);e.copyFromAttribute(t,`personId`,r,`personId`,T),e.copyFromAttribute(t,`parentId`,r,`parentId`,T);let a=t.getAttribute(`dT`);a&&(r.dt=function(e){let t=/^(.*T\d{2}:\d{2}:\d{2})(?:\.(\d+))?(Z|[+-]\d{2}:?\d{2})?$/i.exec(e.trim());if(!t)return e;let[,n,r,i]=t;return`${n}${r?`.${(r+`00`).substring(0,3)}`:``}${i??`Z`}`}(a)),t.hasAttribute(`done`)&&(r.done=A(t.getAttribute(`done`)));let o=function(e){let t,n=e.childNodes;for(let e=0;e<n.length;e++){let r=n.item(e);if(r.nodeType!==1||r.localName!==`mentions`)continue;let i=r.childNodes;for(let e=0;e<i.length;e++){let n=i.item(e);if(n.nodeType!==1||n.localName!==`mention`)continue;let r=n.getAttribute(`mentionId`),a=n.getAttribute(`mentionpersonId`);if(!r||!a)continue;let o={id:T(r),personId:T(a)},s=parseInt(n.getAttribute(`startIndex`)??``,10);isNaN(s)||(o.startIndex=s);let c=parseInt(n.getAttribute(`length`)??``,10);isNaN(c)||(o.length=c),(t??=[]).push(o)}}return t}(t);return o&&(r.mentions=o),n.push({r:i,v:r}),r}},PersonListVisitor:class{visit(e,t,n){let r=[],i=t.childNodes,a=i.length;for(let t=0;t<a;t++){let n=i.item(t);if(n.nodeType===1&&n.localName===`person`){let t={};e.copyFromAttribute(n,`id`,t,`id`,T),e.copyFromAttribute(n,`displayName`,t),e.copyFromAttribute(n,`userId`,t,`userId`,T),e.copyFromAttribute(n,`providerId`,t),r.push(t)}}return r.length>0&&(n.persons=r),r}}},Ie=class{constructor(e,t){this.path=e,this.visitor=t}},Le=class{constructor(){this.visitorsByXmlTagName=new Map,this.scopedVisitorsByXmlTagName=new Map,this.visitorParamsState=null,this.registerVisitor(`Relationships`,new $.RelsVisitor),this.registerVisitor(`cp:coreProperties`,new $.CorePropertiesVisitor),this.registerVisitor(`Properties`,new $.AppPropertiesVisitor),this.registerVisitor(`spPr`,new $.ShapePropertiesVisitor),this.registerVisitor(`txBody`,new $.ShapeTextVisitor),this.registerVisitor(`txPr`,new $.TextPropertiesVisitor),this.registerVisitor(`a:theme`,new $.ThemeVisitor),this.registerVisitor(`a:theme`,new $.ClrSchemeVisitor,`themeElements/clrScheme`),this.registerVisitor(`a:theme`,new $.FontSchemeVisitor,`themeElements/fontScheme`),this.registerVisitor(`a:theme`,new $.FmtSchemeVisitor,`themeElements/fmtScheme`),this.registerVisitor(`a:theme`,new $.ObjectDefaultsVisitor,`objectDefaults`),this.registerVisitor(`autoFilter`,new $.AutoFilterVisitor),this.registerVisitor(`sortState`,new $.SortStateVisitor),this.registerVisitor(`s:workbook`,new $.WorkbookVisitor),this.registerVisitor(`styleSheet`,new $.SheetStyleVisitor),this.registerVisitor(`x14:table`,new $.TableX14Visitor),this.registerVisitor(`table`,new $.TableVisitor),this.registerVisitor(`externalLink`,new $.ExternalLinkVisitor),this.registerVisitor(`wsDr`,new $.DrawingVisitor),this.registerVisitor(`twoCellAnchor`,new $.DrawingAnchorVisitor),this.registerVisitor(`oneCellAnchor`,new $.DrawingAnchorVisitor),this.registerVisitor(`absoluteAnchor`,new $.DrawingAnchorVisitor),this.registerVisitor(`graphicFrame`,new $.DrawingGraphicFrameVisitor),this.registerVisitor(`sp`,new $.DrawingSpVisitor),this.registerVisitor(`grpSp`,new $.DrawingGrpSpVisitor),this.registerVisitor(`cxnSp`,new $.DrawingCxnSpVisitor),this.registerVisitor(`pic`,new $.DrawingPicVisitor),this.registerVisitor(`metadata`,new $.MetadataVisitor),this.registerVisitor(`FeaturePropertyBags`,new $.FeaturePropertyBagVisitor),this.registerVisitor(`comments`,new $.CommentsVisitor),this.registerVisitor(`comment`,new $.CommentVisitor),this.registerVisitor(`ThreadedComments`,new $.ThreadedCommentsVisitor),this.registerVisitor(`threadedComment`,new $.ThreadedCommentVisitor),this.registerVisitor(`threadedComment`,new $.TextPropertiesVisitor(`content`),`text`),this.registerVisitor(`personList`,new $.PersonListVisitor),this.registerVisitor(`slicerCacheDefinition`,new $.SlicerCacheDefinitionVisitor),this.registerVisitor(`slicers`,new $.SlicersVisitor),this.registerVisitor(`timelineCacheDefinition`,new $.SlicerCacheDefinitionVisitor),this.registerVisitor(`timelines`,new $.TimelinesVisitor),this.registerVisitor(`formControlPr`,new $.FormControlPrVisitor)}registerVisitor(e,t,n=null){e.indexOf(`:`)===-1&&(e=`*:`+e);let r=e.split(`:`),i=r.length>1?r[1]:r[0];if(!n)return this.visitorsByXmlTagName.set(i,t),void this.visitorsByXmlTagName.set(e,t);let a=this.scopedVisitorsByXmlTagName.get(i);a||(a=[],this.scopedVisitorsByXmlTagName.set(i,a),this.scopedVisitorsByXmlTagName.set(e,a)),a.push(new Ie(n,t))}parseDxf(t,n=``,r=e.EmptyObject){this.visitorParamsState||=new Map;let i=this.visitorParamsState,a=i.get(`processingDXFs`);i.set(`processingDXFs`,!0);try{let e=new z(null,this,`/dxf`,t,{},n,r),i={};return new $.SheetStyleVisitor().processDXF(e,t,i),i}finally{a===void 0?i.delete(`processingDXFs`):i.set(`processingDXFs`,a)}}getVisitorParamsState(){return this.visitorParamsState}transform(t,n,r=e.EmptyObject){let i=t.documentElement;this.visitorParamsState&&!r?.paramMap||(this.visitorParamsState=r?.paramMap??new Map);let a={},o=this.visitorsByXmlTagName.get(i.nodeName);if(o||=this.visitorsByXmlTagName.get(i.localName),!o)throw Error(`A visitor for the root element: '${i.nodeName}' or '${i.localName}' must be registered.`);let s=`/`+i.localName,c=new z(null,this,s,i,a,n,r),l=[];this._doWalk(o,c,l,i,a,n,r);let u=l.length;for(let e=0;e<u;e++){let t=l[e];try{t.visitor?.afterVisit?.(t.context,t.elemParent,t.jsonParent)}catch(e){t.context.warn(`Unable to finish reading '${t.context.getPath()}': ${e?.message??e}`,{onceKey:`xlsx.transform.afterVisit`})}}return a}_walkScoped(e,t,n,r,i,a,o){let s=this.scopedVisitorsByXmlTagName.get(e),c=s?s.length:0;for(let l=0;l<c;l++){let c=s[l],u=null;try{u=t.evaluate(c.path,r)}catch{t.warn(`Invalid path '${c.path}' for '${e}'.`,{onceKey:`xlsx.transform.invalidPath`})}if(!u)continue;let d=e=>{let s=e.localName,l=e.parentNode;for(;l&&l!==r;)s=l.localName+`/`+s,l=l.parentNode;let u=t.getPath()+`/`+s;if(c.visitor){let r=new z(t,this,u,t.getElemRoot(),t.getJsonRoot(),a,o);this._doWalk(c.visitor,r,n,e,i,a,o)}};if(u.length>0){let e=u,t=e.length;for(let n=0;n<t;n++)d(e.item(n))}else d(u)}}_doWalk(e,t,n,r,i,a,o){let s=null;e&&(n.push({visitor:e,context:t,elemParent:r,jsonParent:i}),s=e.visit(t,r,i)),s||=i;let c=r.localName;this._walkScoped(c,t,n,r,s,a,o);let l=this.visitorsByXmlTagName,u=t.getElemRoot(),d=t.getJsonRoot(),f=r.childNodes,p=f.length;for(let e=0;e<p;e++){let r=f.item(e);if(r.nodeType!==1)continue;let c=r,p=c.nodeName,m=l.get(p);m||=(p=c.localName,l.get(p));let h=t.getPath()+`/`+p,g=new z(t,this,h,u,d,a,o);this._doWalk(m,g,n,c,s??i,a,o)}return s}};export{Le as DOMTransformer,z as ExecutionContext,I as NumberUtils,ee as VisitorUtils};