@sheetxl/mcp 0.8.0-beta.17 → 0.8.0-beta.18
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.
- package/assets/{COa691om4fLN4CUy.js → 10d0ZbYF23zeF8_1.js} +1 -1
- package/assets/{DDhPOQPc-lpyZrUJ.js → 8hZAYFV_v2KmJ_NL.js} +4 -4
- package/assets/{B3mh2tuvP-lMP6f_.js → 9rJMq-cyOmajlBEQ.js} +1 -1
- package/assets/{oJNJQJEDQCsjHSmo.js → ARPN5UhoadZC1yqE.js} +1 -1
- package/assets/{Bj4BFLBC9Tf6SGSt.js → B-6CmVJvxPNZB9bE.js} +1 -1
- package/assets/{BjhAYfsKC8iEbtgn.js → B2C5njsdPylyQOCM.js} +30 -30
- package/assets/{CyI1eGGzJX8nJXaT.js → B74Ls4nlmyBxWanf.js} +2 -2
- package/assets/{7TRx0dMYnL2i4tqL.js → B7GE-6NROw0onnLD.js} +254 -254
- package/assets/{C46RpMrfF6FiEFI7.js → BCeSyFXflYgNP_ES.js} +1 -1
- package/assets/{B9J8nV-dh6jHpzZI.js → BDNqot_JWBuVW_pC.js} +1 -1
- package/assets/{Cz4H3Qge2u8er3Ny.js → BEtUOCupmeICfGE1.js} +3 -3
- package/assets/{Jd71-QCmFEcDcYSw.js → BFGVZsstQm2MWi7Y.js} +1 -1
- package/assets/{C7iHn3y3HVBHflpA.js → BFcxaubQp1WMeknL.js} +33 -33
- package/assets/{iBgLe32XErisaUSr.js → BM-ax5N1GzF9KkI4.js} +1 -1
- package/assets/{PbBzI4PlKpCgULLd.js → BMc-Hsrp_iifxzG_.js} +1 -1
- package/assets/{B9M_sgHpoc-op6FF.js → BOdkvYo03yZ96iZt.js} +1 -1
- package/assets/{BSY9Tbmz6VEY_F_x.js → BQ76ntZm9YFicjXj.js} +1 -1
- package/assets/{Bw_FtA-1886HMCLJ.js → BQeb2zXfAs5lRoGt.js} +3 -3
- package/assets/{Xe7sA_mEwDQpJjcF.js → BQsLqKWy17wy3znE.js} +2 -2
- package/assets/{4qMP71Fe1Ep8kbOX.js → BQzUK7KiJeJpu-rK.js} +1 -1
- package/assets/{Bcak_hZpcIkB2gJD.js → BRQd_GNkeaBTl3Zr.js} +1 -1
- package/assets/{Mgs_OJP41a-Nfac3.js → BSvHkSY0R0EU0gC4.js} +1 -1
- package/assets/{B7Nqa7V-v0cxGBux.js → BV11qLZKVWxFwVGV.js} +1 -1
- package/assets/{BMJhHHX2LWgOJWGz.js → BatIfPAYElNTXVzb.js} +1 -1
- package/assets/{APP8AzsNgQXHTalA.js → BedBCvJP064ZYuO8.js} +2 -2
- package/assets/{lcIaYgz4tQGBlzlo.js → BgGFX6QJ30T3seyX.js} +109 -109
- package/assets/{Dzz3yrKbECzg6caR.js → BhHneZZ7gq4dRaEJ.js} +1 -1
- package/assets/{BjnQVl1lb1KEbt2D.js → BhJ1mH7pUONJScU7.js} +39 -39
- package/assets/{Cl7HHR6Vc9S4n3AP.js → Bi4pI6e3AwTjn-lQ.js} +1 -1
- package/assets/{BX5xFncPLyeN7TqA.js → Bi8ct8GYvMDKHCE3.js} +5 -5
- package/assets/{Bz1ImBvJwPwBrA5j.js → Bqq5Sl5E9ytcPJ3J.js} +1 -1
- package/assets/{DidhZpf9qJAei29Y.js → BrwNVveK5LvYkoGk.js} +1 -1
- package/assets/{D0OQ6ka8so0BWPwL.js → BsYVa-oRhTLH6wnH.js} +1 -1
- package/assets/{CUbCBf24Ie4A2l4R.js → BwQM6Q6HHQTXznpy.js} +2 -2
- package/assets/{BgldX21zhey2aR9D.js → BxizypreLEtLqpIc.js} +1 -1
- package/assets/{BBC_WF8BcAH-k_cQ.js → Byd5zSRU6LWfL2No.js} +1 -1
- package/assets/{B2UxLSteMiPlg8Uu.js → Bz5ioWvl-Xl3xspC.js} +1 -1
- package/assets/{CMRLNLqYkiqCLMRa.js → C3PZVWI_SEXYrzVk.js} +3 -3
- package/assets/{CfA8o-FNret9-D6Y.js → CDqOifqA400y7KQY.js} +1 -1
- package/assets/{BJBoygm-gY68bLAP.js → CGGpkGg85FZsnYHc.js} +15 -15
- package/assets/{BQYpVYbvfWuUJgdx.js → CJoWPN_DsFbaGAiE.js} +1 -1
- package/assets/{z24-oIqP_fu2hsOt.js → CL4BYdfIXgFQA8nY.js} +1 -1
- package/assets/{YQtUMMGmb1_WFsh_.js → CLBxNjtPjuGX1KnU.js} +1 -1
- package/assets/{DF7-oRscXc_vkMo8.js → CLsD7YwSKAsliRZy.js} +1 -1
- package/assets/{dcvgOfBmWFTsXoT8.js → CMXukie7sxP12H2E.js} +4 -4
- package/assets/{z7nDK_gfX7G37XbZ.js → CNE-erNKNIT7bUb1.js} +109 -109
- package/assets/{BKRLtOdVOUTrLjQN.js → CPa4og3WQ7BgHrsO.js} +3 -3
- package/assets/{D336KioeSjd-T8n3.js → CPkGFumcwSKh5zea.js} +2 -2
- package/assets/{DeEZvPW-VvlE28oE.js → CQBFUsemb94zMBo6.js} +3 -3
- package/assets/{DPKeRb9GKmh_WCPv.js → CT6kRDlkfvKq8XGZ.js} +1 -1
- package/assets/{DV6WSFmSEKfb3d2s.js → CWuPUrDsnBxboJ02.js} +4 -4
- package/assets/{C4deMY87Q_haYyLF.js → CYUerpa6WB0Hc3fs.js} +1 -1
- package/assets/{nQbVdQrfdz3osBdi.js → CYcb-DojX92VNGzd.js} +3 -3
- package/assets/{8cVPexxAVrFJ9QLX.js → C_UAskmm-u2Iw9Nl.js} +1 -1
- package/assets/{BdijGsy5W7yZ_I_n.js → CcB4xmoUFWBbSISF.js} +1 -1
- package/assets/{Dkg-LQVsZlrHk7A8.js → CiKd3BnRjhac2Hik.js} +1 -1
- package/assets/{DsCNtBR5jCeqmLBS.js → CkO0JR629W2kcDMd.js} +2 -2
- package/assets/{UH_biJmLrI9SvckA.js → CmlxzZYM5hOAAcx5.js} +3 -3
- package/assets/{BKjovBsLpX2Fkhov.js → CnCtLKkz0bdXIxn2.js} +92 -92
- package/assets/{CJF3P7U7yBQVF2Cg.js → CnLLwj7OCz4U71wa.js} +1 -1
- package/assets/{qgW-p2sFhMtuu5yw.js → CoQFpWEh4CUgcdwe.js} +1 -1
- package/assets/{CqwEHSKivMYw7tRZ.js → Ct8BhGWuqN5yOpUF.js} +1 -1
- package/assets/{Dre79rTMoYYikNuB.js → Cv8UXBL7O7h1uMR8.js} +19 -19
- package/assets/{CLgvdaqeFlESLvbF.js → CvkibaXI8SOD22pw.js} +1 -1
- package/assets/{BT8AGlSg2t7V1QNj.js → CzoexWLhnn08u05j.js} +577 -577
- package/assets/{BUV7BlOZcuPgDZ__.js → D0-I0aLr6w8IvxFD.js} +1 -1
- package/assets/{DoBvgI3Ry8DlGzwQ.js → D1pD8u8nRprUvn-u.js} +1 -1
- package/assets/{CLze192iF2o-aETZ.js → D2IMjoGcj5oz1Kr7.js} +1 -1
- package/assets/{Bni-y4FJS4rkFYtn.js → D2sRTakzE5POMnhF.js} +2215 -2109
- package/assets/{Bxkx8QokmRNyXbOI.js → D49iRcrfnODORRNC.js} +5 -5
- package/assets/{BlbxiLf1zD6_fWZs.js → D5nleqRNvTcmN5_9.js} +1 -1
- package/assets/{BS4ZsfH5D6aemSpO.js → D5wI7O_L6QVNXj5I.js} +1 -1
- package/assets/{C2NPIWe0pLs3PAZM.js → DCHjwIx59QhiV2Zx.js} +2 -2
- package/assets/{BGZ_ltNFYvnAmbVR.js → DH7Rur7rNOYzv35r.js} +1 -1
- package/assets/{CaJ9j3l0cERnYqDS.js → DI_SAQ7hesioI9TW.js} +1 -1
- package/assets/{AnF1Kh3Vo2AniIYO.js → DKnwIboAj_Sg9aVP.js} +2 -2
- package/assets/{Dgi2xwb2DN2Gybj3.js → DL3ms6Hf2uEGaMgH.js} +2 -2
- package/assets/{D_peM8fbRgGaWvpq.js → DMGq2icilGiyfBTM.js} +1 -1
- package/assets/{BSAdmOdx3brRE9LW.js → DMnhlFBJ2AlVx2_t.js} +1 -1
- package/assets/{D6ON3ZLcTAXV3fO6.js → DN4zv4AjDxTsLFsA.js} +11097 -9112
- package/assets/{D5L35C8cbX16BSCF.js → DP-FzazhSKAvylUa.js} +1132 -1067
- package/assets/{BodrfKIAhDFD-X3t.js → DSDlxGN059KmkCxT.js} +1 -1
- package/assets/{0kfwZuOHUkJmVjg6.js → DWK-OKV0MErx-IrU.js} +6 -6
- package/assets/{CqjNsZ2OB4Kx6J3s.js → DY1x1ZN7ZyE4OR1-.js} +8 -8
- package/assets/{DE4xC78p5UtS7wH6.js → DafqFM-FGeZJ_fzg.js} +1 -1
- package/assets/{BebXDUnlrDDRGW60.js → DbwDQlhCuGoasVUz.js} +2 -2
- package/assets/{CWLleOolFzyT0COW.js → DcjJ_zTfdh6RqmVZ.js} +1 -1
- package/assets/{DnTfXqCnRCe-1QYI.js → Del35nO_1HyjItI0.js} +59 -59
- package/assets/{BvDcHHJvQMRHthm-.js → Dh2iae-q0IngEeyH.js} +1 -1
- package/assets/{B6NnxkSmEzCGZEZA.js → Dhg0yeTmVfmRV5rK.js} +1 -1
- package/assets/{kpS1vY0DcE9p8JnI.js → DjoFujVwGRAxviCF.js} +2 -2
- package/assets/{Cr6lm0oXZJaaoAmD.js → DlWRvc1pLGPCRMwi.js} +1 -1
- package/assets/{B2BfjRdJGZs6afVL.js → DmCRCUmmkoRNCS9J.js} +2 -2
- package/assets/{CsiIgnb_L2x2Go6g.js → DmUCKxOYIBM6DX64.js} +1 -1
- package/assets/{-cMvbaW1kvHslPKX.js → Du9_Ajy9KvnwHApK.js} +2 -2
- package/assets/{D5VFuX1h50V2jLmZ.js → DwOPJ5TXttTx69oF.js} +226 -225
- package/assets/{OHBzl-tZOi9Ni8YV.js → DzEJwSC-_aavYiFd.js} +1 -1
- package/assets/{1feDuXw6tBXu2XFg.js → EDEUvF-L72a6fMCK.js} +1 -1
- package/assets/{DMuOMpgIhVgB3eG8.js → F0HGXXl9AizCAcFy.js} +1 -1
- package/assets/{DSsH28SW8CMrSL-q.js → Iv_Zbm3pMLOK2uxf.js} +1 -1
- package/assets/LLdkCOYvtc1-vOsy.js +14 -0
- package/assets/{B7OyFSpBb1eBvMVd.js → MfkAFluI0ZyU0UDV.js} +13 -13
- package/assets/{BOx4Ut_Rme7NH34X.js → NZeFs1MV5h-uMZqJ.js} +1 -1
- package/assets/{B8JX7a6VZlBNA_Bd.js → Rpi4k7hMH8wPAIcB.js} +14 -14
- package/assets/{BhCbCEPpDzhg5nqL.js → SCOKwiDu6SYiQrQ0.js} +1 -1
- package/assets/{DYJcfrNUUJQtxXWX.js → VL-vwx7Pyw1zqIx9.js} +1 -1
- package/assets/{G2Wjyx_ETCAcofwm.js → VcmpHRbBIrw6av3U.js} +1290 -1263
- package/assets/{CshK6Ew7OQ7mngI3.js → XDQBri0_cS5paHej.js} +2 -2
- package/assets/{CtmrBbpapaNwjwNB.js → gAg9rL3U8fWUDeEb.js} +25 -25
- package/assets/{CwRhhoL5ynbe78dB.js → hLMlKg3lU36xZ6G6.js} +1 -1
- package/assets/{DrHVew6gwOB6oxCn.js → hvCnPO_Fu7Nqz0rs.js} +1 -1
- package/assets/{BmM-nHMAAuNatCcN.js → nPoObUd0MvWI-j0F.js} +1 -1
- package/assets/{BJdWgj1hv57eGVl4.js → nnqtgWxMIc_Nc-IP.js} +594 -594
- package/assets/{C2ZX6ffXsMaEr2d2.js → o9G5KuG1VkSazTvI.js} +383 -383
- package/assets/{IGAV8DdYH32cW8XU.js → pg7E7B7ouG2qdZve.js} +1 -1
- package/assets/{MW2nt7se27FlH9Yb.js → r9WSFw3a-_a5hlPm.js} +1 -1
- package/assets/{Ljri8sTW3dWT4clD.js → rIReGgfQ90pzLAbU.js} +1 -1
- package/assets/{FvxN6PPps-rNPDo8.js → vXZw1AmMzswOZMiP.js} +1 -1
- package/assets/{C3Q-fjiZZ15waCq_.js → wZ-GQhOhikv-_3iQ.js} +2 -2
- package/assets/{YFiGplEq1G4XdCJ2.js → yBFl0kPv-nwFtG4Z.js} +1 -1
- package/index.js +1175 -1104
- package/lib.js +1 -1
- package/licenses/dependencies.txt +11 -11
- package/package.json +2 -2
- package/resources/locales/@sheetxl/sdk/de/model.msg.json +15 -0
- package/resources/locales/@sheetxl/sdk/en/model.msg.json +15 -0
- package/screenshot-page/assets/{Djl40tfWoPJSvqtv.js → 2XWoSsrRz2kognCK.js} +1 -1
- package/screenshot-page/assets/{CT7cY57t9j1sBhAy.js → 5TxlmdZxlCDkawVW.js} +1 -1
- package/screenshot-page/assets/{CSMEGhAHxl5-4FxB.js → B7u12-Sf0HF7g4wI.js} +1 -1
- package/screenshot-page/assets/BCOjWc-VhkuVoCVf.js +1 -0
- package/screenshot-page/assets/BqQ2A9WL6mcRxbSt.js +2 -0
- package/screenshot-page/assets/Bw4kRw8JKyNRlLE2.js +1 -0
- package/screenshot-page/assets/BwF-LAYFu91KqvJ8.js +2 -0
- package/screenshot-page/assets/{D_rtIYQ7FDC2CoEn.js → Bwk0ScujWaYYqx5G.js} +1 -1
- package/screenshot-page/assets/ByehV0cOs5aIySS-.js +13 -0
- package/screenshot-page/assets/{CUZobZ3mfNAdEisS.js → C0F9BL11dkgzjp7Y.js} +1 -1
- package/screenshot-page/assets/{Bh33WyohJvbKZVQN.js → C1lrvl0Ad1-NjWKG.js} +2 -2
- package/screenshot-page/assets/{B1W17rc9ilPFCh31.js → C3KvRJ_eXd6xnmlO.js} +1 -1
- package/screenshot-page/assets/C3QIYFX-vF_1DVmi.js +586 -0
- package/screenshot-page/assets/C6vseMcEu3To1U6k.js +4 -0
- package/screenshot-page/assets/CM9cBiCjJIY64PWg.js +1 -0
- package/screenshot-page/assets/{CTjUtxDw6Z2I9OGc.js → CNFMt4XhKy4tlsUn.js} +1 -1
- package/screenshot-page/assets/COpZTXe_J1mSpeYD.js +5 -0
- package/screenshot-page/assets/{BMwQInar0xVS5FRu.js → CafJ2T5GCjkumgLh.js} +1 -1
- package/screenshot-page/assets/CaiPDssAQqXac5AG.js +3 -0
- package/screenshot-page/assets/Cfs_rQCXBMVhJgat.js +1 -0
- package/screenshot-page/assets/CijzqW2bsxOQdDxl.js +2 -0
- package/screenshot-page/assets/{BKwVcuWOKeH2xREA.js → CpZHZoz3xpJMDWI0.js} +1 -1
- package/screenshot-page/assets/{DXaM3CulPA3aPGV1.js → Csjis_Fk8q4mSqdp.js} +2 -2
- package/screenshot-page/assets/{CB2mQ5rbaSw2W4ik.js → D1TqM0Bt65K6svMS.js} +23 -23
- package/screenshot-page/assets/D5kEl0N4l6MzdmTG.js +1 -0
- package/screenshot-page/assets/{B8qybUclSjEYP5FJ.js → D6WTzLygjgK85siu.js} +2 -2
- package/screenshot-page/assets/D7e00cCBTtcIRmjV.js +1 -0
- package/screenshot-page/assets/{-N4OYIMgf6f5vgNy.js → DGB9wBuDWt0bzTNE.js} +1 -1
- package/screenshot-page/assets/{CfkssmHURDicfYvR.js → DNoZea7QMO9zB6D5.js} +1 -1
- package/screenshot-page/assets/DZ2zDgzt-mnhg3Kd.js +1 -0
- package/screenshot-page/assets/DaVBDkeZxbXnuyGz.js +42 -0
- package/screenshot-page/assets/{Cbcv49b9jWyY4HKj.js → DgNbqKuVd-Q170VZ.js} +2 -2
- package/screenshot-page/assets/{C71ZZMVLfHdPl441.js → Di8Yn8O-rD9idC2h.js} +1 -1
- package/screenshot-page/assets/DjtXY9uxB3QP6hU3.js +1 -0
- package/screenshot-page/assets/DknSteOdQ6CdF0RT.js +1 -0
- package/screenshot-page/assets/Dv-4mfeFKIoD5jaY.js +3 -0
- package/screenshot-page/assets/DzlbsQ0qqdQEl80f.js +1 -0
- package/screenshot-page/assets/F6yLCIlSWZ1lAUEp.js +2 -0
- package/screenshot-page/assets/HZAIE0lHXXFqlb2v.js +1 -0
- package/screenshot-page/assets/Lr2MYBmoCKMLBl_6.js +5 -0
- package/screenshot-page/assets/{BD96fN2dSVuoME09.js → NDzpWLUA0pbyI-Rd.js} +3 -3
- package/screenshot-page/assets/O-S3tcMip6iXUjQF.js +1 -0
- package/screenshot-page/assets/eV_6j-vFozPgfcjz.js +1 -0
- package/screenshot-page/assets/{DcUOAH274IbYOuK1.js → iAWaCU0XkY0ktnNk.js} +1 -1
- package/screenshot-page/assets/it1wnIFQtbJ4Dm8N.js +1 -0
- package/screenshot-page/assets/mCyh2440vZi8s1uY.js +39 -0
- package/screenshot-page/assets/{DdXSKhFUAsKUsQ1u.js → t4FRkJl27a0itCt6.js} +1 -1
- package/screenshot-page/assets/{D0koRjO2KnWQ1fNV.js → tPEJNcr51GaPfk3O.js} +1 -1
- package/screenshot-page/assets/zEVoxCTt-ZW8Aowg.js +16 -0
- package/screenshot-page/index.html +10 -9
- package/screenshot-page/resources/locales/@sheetxl/sdk/de/model.msg.json +15 -0
- package/screenshot-page/resources/locales/@sheetxl/sdk/en/model.msg.json +15 -0
- package/types/scripting-api.json +11445 -11299
- package/types/scripting-enums.json +22 -1
- package/types/scripting.d.ts +623 -0
- package/assets/CSLLHl-zum7m1CJl.js +0 -14
- package/screenshot-page/assets/7Xk_eQAcM_HgWrOC.js +0 -1
- package/screenshot-page/assets/B8UkvH0o9n_G5UO9.js +0 -3
- package/screenshot-page/assets/BE8ea8S0Q-qogeEs.js +0 -2
- package/screenshot-page/assets/BNMBa8EZgWX2Eb3c.js +0 -1
- package/screenshot-page/assets/BQCyH9YbEgnH78Ke.js +0 -2
- package/screenshot-page/assets/BcDxaEii3arJqOym.js +0 -1
- package/screenshot-page/assets/Be-rukvcufhLamH5.js +0 -1
- package/screenshot-page/assets/C2ty_K_uix4ooip6.js +0 -1
- package/screenshot-page/assets/C9mUKjQ3yEzRu9j2.js +0 -2
- package/screenshot-page/assets/CCVAsuUimIJOkBnk.js +0 -1
- package/screenshot-page/assets/CFfgJlXaIS8QMx5O.js +0 -1
- package/screenshot-page/assets/CN8u05DjKwNHbUHN.js +0 -5
- package/screenshot-page/assets/COoMVTzF50qBNFEu.js +0 -39
- package/screenshot-page/assets/C_OuKbe6z1it80cj.js +0 -1
- package/screenshot-page/assets/CtZFqwLoeJOvwFrl.js +0 -42
- package/screenshot-page/assets/Cz6KFmsp267l_VZS.js +0 -1
- package/screenshot-page/assets/DCP8JXEeiwAMiVD2.js +0 -1
- package/screenshot-page/assets/DQAZPADvH5lhlMnK.js +0 -1
- package/screenshot-page/assets/DQBUH0j44Vtrykua.js +0 -13
- package/screenshot-page/assets/DRncpwDkZZX8rL9S.js +0 -20
- package/screenshot-page/assets/DSKOOgcJQeqIc9Us.js +0 -3
- package/screenshot-page/assets/LYyM_ig973jLdOU0.js +0 -2
- package/screenshot-page/assets/TCImIYUUdVD4Z35I.js +0 -1
- package/screenshot-page/assets/Tph2vYqw17-NBCtd.js +0 -1
- package/screenshot-page/assets/dQsis-90Up-pIkSq.js +0 -4
- package/screenshot-page/assets/dXn1GWWjYmuLb1HF.js +0 -586
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{K as e,Kt as t,W as n}from"./DuYb_otrRZZDq6-f.js";import{i as r}from"./BMf827t1Ul65MHd5.js";import{An as i,W as a,l as o,q as s}from"./COoMVTzF50qBNFEu.js";var c=[`customMenu`,`description`,`help`,`statusBar`,`shortcutKey`],l=[`function`,`vbProcedure`,`xlm`,`publishToServer`,`workbookParameter`],u=`http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotCacheRecords`,d=class extends Error{},f=()=>{throw new d},p={t:`z`,v:0},m=/<([snbdemx])((?:\s+[^\s=/>]+\s*=\s*(?:"[^"]*"|'[^']*'))*)\s*(\/?)>/g,h=(e,t,n)=>{try{return _(e,t,n)}catch(e){if(e instanceof d)return null;throw e}},g=e=>{let t=i(e,`cacheSource`);if(!t||a(t.attributes).get(`type`)!==`worksheet`)return;let n=i(e,`worksheetSource`,t.contentStart,t.end);if(!n)return;let r=a(n.attributes);if(r.has(`r:id`))return;let o={};for(let e of[`ref`,`sheet`,`name`]){let t=r.get(e);t!==void 0&&(o[e]=t)}return o},_=(e,t,n)=>{let r=e.xml??f(),o=ee(r,`pivotCacheDefinition`)??f(),c=a(o.attributes),l=c.get(`r:id`),u=e.parts?.find(e=>e.id===l&&e.type===`http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotCacheRecords`)?.xml??null;l!==void 0&&u===null&&f();let d=g(r)??f(),p=i(r,`cacheSource`)??f(),m=i(r,`worksheetSource`,p.contentStart,p.end)??f(),h=i(r,`cacheFields`)??f(),_=[],re=h.contentStart;for(;;){let e=i(r,`cacheField`,re,h.contentEnd);if(!e)break;_.push(ne(r,e,_.length,t,n)),re=e.end}let v=i(r,`calculatedItems`);v&&te(r,v,_);let ie=u===null?parseInt(c.get(`recordCount`)??`0`,10):y(u,_.filter(e=>e.records!==null),t),b=[],ae=[];for(let e=0;e<_.length;e++){let t=_[e];t.hasDate&&t.hasNumber?t.json.dateItems=t.dateItems:t.hasDate&&(t.json.dates=!0),t.items.length>0&&b.push([e,[[0,t.items]]]),t.records&&t.records.length>0&&ae.push([e,[[0,t.records]]])}let oe=v?r.substring(0,v.start)+r.substring(v.end):r,se=i(oe,`cacheFields`)??f(),x=oe.substring(0,se.start)+oe.substring(se.end),S=r.substring(m.start,m.start+m.attributes.length+16);x=x.replace(S,()=>`<worksheetSource`+s(m.attributes,[`ref`,`sheet`,`name`])),x=x.replace(o.tag,()=>`<pivotCacheDefinition`+s(o.attributes,[`r:id`,`recordCount`,`refreshOnLoad`]));let C={source:d,fields:_.map(e=>e.json),items:b,recordCount:ie,rest:x};u!==null&&(C.records=ae);let ce=c.get(`refreshOnLoad`);return ce!==`1`&&ce!==`true`||(C.refreshOnLoad=!0),C},ee=(e,t)=>{let n=RegExp(`<${t}((?:\\s+[^\\s=/>]+\\s*=\\s*(?:"[^"]*"|'[^']*'))*)`).exec(e);return n?{tag:n[0],attributes:n[1]}:null},te=(e,t,n)=>{let r=t.contentStart;for(;;){let o=i(e,`calculatedItem`,r,t.contentEnd);if(!o)break;r=o.end;let s=a(o.attributes).get(`formula`)??f(),c=[...e.substring(o.contentStart,o.contentEnd).matchAll(/<reference\s[^>]*?field="(\d+)"[^>]*>\s*<x(?:\s+v="(\d+)")?\s*\/>\s*<\/reference>/g)];c.length!==1&&f();let l=n[parseInt(c[0][1],10)]??f();(l.json.calculatedItems??=[]).push({item:c[0][2]?parseInt(c[0][2],10):0,formula:s})}},ne=(e,t,n,r,c)=>{let l=a(t.attributes),u={name:l.get(`name`)??f()},d=l.get(`numFmtId`),p=d===void 0?void 0:c(parseInt(d,10));p!==void 0&&(u.numberFormat=p);let h=l.get(`databaseField`)===`0`;h&&(u.noRecords=!0);let g=l.get(`formula`);g!==void 0&&(u.formula=g);let _=i(e,`fieldGroup`,t.contentStart,t.contentEnd);_&&(u.group=((e,t,n,r)=>{let s=a(t.attributes),c=e=>e===void 0?void 0:parseInt(e,10),l={base:c(s.get(`base`))??n,items:[]},u=c(s.get(`par`));u!==void 0&&(l.parent=u);let d=i(e,`groupItems`,t.contentStart,t.contentEnd);if(d){let t=e.substring(d.contentStart,d.contentEnd);m.lastIndex=0;let n,i=0,o={items:l.items,hasDate:!1,hasNumber:!1,dateItems:[]};for(;n=m.exec(t);)(n[3]!==`/`||t.substring(i,n.index).trim())&&f(),l.items.push(v(n[1],a(n[2]).get(`v`),o,r)),i=m.lastIndex;t.substring(i).trim()&&f(),o.hasDate&&(l.dateItems=o.dateItems)}let p=i(e,`rangePr`,t.contentStart,t.contentEnd);if(p){let e=a(p.attributes),t=e.get(`groupBy`)??`range`,n=t!==`range`,i=t=>{let i=e.get(`${t}${n?`Date`:`Num`}`)??f(),a=n?o(i,r):Number(i);return a!==null&&Number.isFinite(a)?a:f()},s={by:n?t:`numbers`,start:i(`start`),end:i(`end`)},c=e.get(`groupInterval`);c!==void 0&&(s.interval=Number(c)),e.get(`autoStart`)===`0`&&(s.fixedStart=!0),e.get(`autoEnd`)===`0`&&(s.fixedEnd=!0),l.range=s}let h=i(e,`discretePr`,t.contentStart,t.contentEnd);if(h){let t=e.substring(h.contentStart,h.contentEnd);l.discrete=Array.from(t.matchAll(/<x((?:\s+[^\s=/>]+\s*=\s*(?:"[^"]*"|'[^']*'))*)\s*\/>/g),e=>c(a(e[1]).get(`v`))??0)}return l})(e,_,n,r));let ee=h?null:i(e,`sharedItems`,t.contentStart,t.contentEnd),te={json:u,items:[],byValue:null,records:h?null:[],hasDate:!1,hasNumber:!1,dateItems:[]},ne=[ee,_].filter(e=>!!e).sort((e,t)=>e.start-t.start),y=``,ie=t.contentStart;for(let t of ne)y+=e.substring(ie,t.start),ie=t.end;y+=e.substring(ie,t.contentEnd),ee&&re(e.substring(ee.contentStart,ee.contentEnd),te,r),h||te.items.length!==0||(u.inline=!0,te.byValue=new Map);let b=s(t.attributes,[`name`,`numFmtId`,`databaseField`,`formula`]);return(b.trim()||y.trim())&&(u.rest=y.trim()?`<cacheField${b}>${y}</cacheField>`:`<cacheField${b}/>`),te},re=(e,t,n)=>{m.lastIndex=0;let r,i=0;for(;r=m.exec(e);){e.substring(i,r.index).trim()&&f();let[,o,s,c]=r;c===`/`&&o!==`x`||f();let l=a(s);for(let e of l.keys())e!==`v`&&e!==`u`&&e!==`f`&&f();let u=l.get(`u`);u!==`1`&&u!==`true`||(t.json.unused??=[]).push(t.items.length),t.items.push(v(o,l.get(`v`),t,n)),i=m.lastIndex}e.substring(i).trim()&&f()},v=(e,t,n,i)=>{switch(e){case`m`:return p;case`s`:return t??f();case`n`:{let e=t===void 0?NaN:Number(t);return Number.isFinite(e)||f(),n.hasNumber=!0,e}case`d`:{let e=t===void 0?null:o(t,i);return e===null&&f(),n.hasDate=!0,n.dateItems.push(n.items.length),e}case`b`:return t===`1`||t===`true`;case`e`:{let e=t===void 0?void 0:r.getBuiltInByLabel(t);return e||f(),{t:`e`,v:e.getCode()}}default:return f()}},y=(e,t,n)=>{let r=i(e,`pivotCacheRecords`)??f(),a=e.substring(r.contentStart,r.contentEnd),o=/<r>([\s\S]*?)<\/r>|<r\/>/g,s,c=0,l=0;for(;s=o.exec(a);)a.substring(l,s.index).trim()&&f(),ie(s[1]??``,t,n),c++,l=o.lastIndex;return a.substring(l).trim()&&f(),c},ie=(e,t,n)=>{m.lastIndex=0;let r,i=0,o=0;for(;r=m.exec(e);){e.substring(o,r.index).trim()&&f();let[,s,c,l]=r;l!==`/`&&f();let u=t[i++]??f(),d=a(c);for(let e of d.keys())e!==`v`&&f();let p=d.get(`v`);if(s===`x`){let e=p===void 0?NaN:Number(p);(u.byValue||!Number.isInteger(e)||e<0||e>=u.items.length)&&f(),u.records.push(e)}else{let e=u.byValue??f(),t=s+(p??``),r=e.get(t);r===void 0&&(r=u.items.length,u.items.push(v(s,p,u,n)),e.set(t,r)),u.records.push(r)}o=m.lastIndex}(e.substring(o).trim()||i!==t.length)&&f()},b=/<!\[CDATA\[([\s\S]*?)\]\]>|<!--[\s\S]*?-->|<\?[\s\S]*?\?>|<!DOCTYPE[^>]*>|<(\/?)([^\s/>]+)((?:\s+[^\s=/>]+\s*=\s*(?:"[^"]*"|'[^']*'))*)\s*(\/?)>|([^<]+)/g,ae={amp:`&`,lt:`<`,gt:`>`,quot:`"`,apos:`'`},oe=e=>e.indexOf(`&`)===-1?e:e.replace(/&(#x[0-9a-fA-F]+|#\d+|\w+);/g,(e,t)=>{if(t[0]!==`#`)return ae[t]??e;let n=t[1]===`x`?parseInt(t.slice(2),16):parseInt(t.slice(1),10);return Number.isFinite(n)?String.fromCodePoint(n):e}),se=e=>{let t=e.indexOf(`:`);return t===-1?e:e.slice(t+1)},x=e=>{let t={name:``,qname:``,attrs:``,children:[],start:0,end:e.length,contentStart:0,contentEnd:e.length},n=[t];b.lastIndex=0;for(let t=b.exec(e);t;t=b.exec(e)){let e=n[n.length-1];if(t[1]!==void 0)e.children.push(t[1]);else if(t[6]!==void 0)e.children.push(oe(t[6]));else if(t[3]!==void 0){if(t[2]){if(n.length>1){let e=n.pop();e.contentEnd=t.index,e.end=t.index+t[0].length}continue}let r=t.index+t[0].length,i={name:se(t[3]),qname:t[3],attrs:t[4]??``,children:[],start:t.index,end:r,contentStart:r,contentEnd:r};e.children.push(i),t[5]||n.push(i)}}return t.children.find(e=>typeof e!=`string`)??null},S=e=>e.children.filter(e=>typeof e!=`string`),C=e=>{let t=``;for(let n of e.children)typeof n==`string`&&(t+=n);return t},ce=`http://schemas.openxmlformats.org/drawingml/2006/chart`,le=`http://purl.oclc.org/ooxml/drawingml/chart`,ue=`http://schemas.openxmlformats.org/drawingml/2006/main`,de=`http://purl.oclc.org/ooxml/drawingml/main`,fe=`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,pe=`http://schemas.microsoft.com/office/drawing/2012/chart`,me=`http://schemas.microsoft.com/office/drawing/2014/chartex`,he=`http://www.w3.org/XML/1998/namespace`,w={c:`c`,a:`a`,r:`r`,c15:`c15`,cx:`cx`},ge=e=>e===ce||e===le,_e=e=>e===ue||e===de,ve=e=>e===me,ye=Object.freeze({xml:he}),be=/([^\s=]+)\s*=\s*(?:"([^"]*)"|'([^']*)')/g,T=e=>{let t=[];be.lastIndex=0;for(let n=be.exec(e.attrs);n;n=be.exec(e.attrs))t.push([n[1],oe(n[2]??n[3]??``)]);return t},xe=(e,t)=>{let n=null;for(let[r,i]of T(e))r===`xmlns`?(n??={...t})[``]=i:r.startsWith(`xmlns:`)&&((n??={...t})[r.slice(6)]=i);return n??t},Se=(e,t)=>t[(e=>{let t=e.indexOf(`:`);return t===-1?``:e.slice(0,t)})(e.qname)],Ce=class{constructor(){this._parts=[]}open(e,t,n=!1){let r=`<`+e;if(t)for(let[e,n]of t)r+=` ${e}="${we(n)}"`;return this._parts.push(r+(n?`/>`:`>`)),this}close(e){return this._parts.push(`</${e}>`),this}val(e,t){return this.open(e,[[`val`,t]],!0)}text(e){return this._parts.push((e=>e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`))(e)),this}raw(e){return this._parts.push(e),this}toString(){return this._parts.join(``)}},we=e=>e.replace(/&/g,`&`).replace(/</g,`<`).replace(/"/g,`"`),E=e=>e===`1`||e===`true`||e!==`0`&&e!==`false`&&null,D=e=>e?`1`:`0`,Te=/^[-+]?(?:\d+\.?\d*|\.\d+)(?:[eE][-+]?\d+)?$/,O=e=>{let t=E(e);return t===null?Te.test(e)?String(Number(e)):e:D(t)},Ee=new Set(`date1904.roundedCorners.autoTitleDeleted.plotVisOnly.showDLblsOverMax.varyColors.marker.smooth.invertIfNegative.bubble3D.delete.showLegendKey.showVal.showCatName.showSerName.showPercent.showBubbleSize.showLeaderLines.overlay.rAngAx.showHorzBorder.showVertBorder.showOutline.showKeys.auto.noMultiLvlLbl.wireframe.showNegBubbles.autoUpdate.applyToFront.applyToSides.applyToEnd.chartObject.data.formatting.selection.userInterface`.split(`.`)),De=(e,t,n=!1)=>{let r=xe(e,t),i=Se(e,r)??``,a=[];for(let[t,n]of T(e)){if(t===`xmlns`||t.startsWith(`xmlns:`))continue;let e=t.indexOf(`:`),i=e===-1?t:`{${r[t.slice(0,e)]??t.slice(0,e)}}${t.slice(e+1)}`;a.push(`${i}=${JSON.stringify(O(n))}`)}let o=S(e),s=o.length===0?e.children.join(``):``;a.length===0&&o.length===0&&s===``&&ge(i)&&Ee.has(e.name)&&a.push(`val="1"`),a.sort();let c=`<{${i}}${e.name}${a.length?` `+a.join(` `):``}>`;if(o.length>0){let t=[];for(let i of e.children)typeof i==`string`?i.trim()!==``&&t.push(JSON.stringify(i)):t.push(De(i,r,n));n&&t.sort(),c+=t.join(``)}else s!==``&&(c+=JSON.stringify(s));return c+`</>`},Oe=class{constructor(e,t){this.xml=e,this.rootScope=t,this.kept=0,this.reordered=0;let n=Object.values(t).find(ge)??ce,r=_e(t[w.a])?t[w.a]:ue;this.writeScope={...t,[w.c]:n,[w.cx]:me,[w.a]:r,[w.r]:t[w.r]??fe}}markupOf(e,t){let n=this.xml.slice(e.start,e.end),r=new Set(T(e).map(([e])=>e).filter(e=>e===`xmlns`||e.startsWith(`xmlns:`))),i=``;for(let e of Object.keys(t))e!==`xml`&&t[e]!==this.rootScope[e]&&(r.has(e===``?`xmlns`:`xmlns:${e}`)||(i+=e===``?` xmlns="${t[e]}"`:` xmlns:${e}="${t[e]}"`));if(i){let t=1+e.qname.length;n=n.slice(0,t)+i+n.slice(t)}return n}},ke=(e,t)=>{switch(e){case`c`:return ge(t);case`c15`:return t===pe;case`cx`:return ve(t);default:return _e(t)}},k=(e,t,n,r)=>{let i=xe(e,n),a={},o,s;for(let[n,r]of T(e)){let e=t.attributes?.find(e=>e.name===n),i=e?e.read(r):void 0;e&&i!==void 0&&O(e.write(i))===O(r)?a[e.key]=i:(o??={})[n]=r}let c=-1,l=``,u={};for(let n of S(e)){let e=xe(n,i),o=Se(n,e),d=t.fields.findIndex(e=>e.tags.includes(n.name)&&ke(e.ns,o)),f=d===-1?null:t.fields[d],p=f&&!f.many?f.get?f.get(a):a[f.key]:void 0,m=d>c||d===c&&!!f?.many;if(f&&p===void 0&&(m||!f.many)){let t=f.read(n,e,r);if(t!==void 0){f.many?(a[f.key]??=[]).push(t):f.set?f.set(a,t):a[f.key]=t,u[f.key]=(u[f.key]??0)+1,m?(c=d,l=n.name):r.reordered++;continue}}let h=c===-1?null:t.fields[c],g={after:l,xml:r.markupOf(n,i)};h?.many&&(g.at=u[h.key]),(s??=[]).push(g)}return(o||s)&&(a.unknown={},s&&(a.unknown.elements=s),o&&(a.unknown.attributes=o)),t.afterRead?.(a,e,i,r),a},A=(e,t,n,r)=>{let i=[];for(let e of r.attributes??[]){let t=n[e.key];t!==void 0&&i.push([e.name,e.write(t)])}let a=n.unknown;if(a?.attributes)for(let e of Object.keys(a.attributes))i.push([e,a.attributes[e]]);for(let e of r.declares?.(n)??[])i.some(([t])=>t===e[0])||i.push(e);let o=new Ce,s=a?.elements?[...a.elements]:[],c=e=>{for(let t=0;t<s.length;t++)e(s[t])&&(o.raw(s[t].xml),s.splice(t--,1))};c(e=>e.after===``);for(let e of r.fields){let t=e.get?e.get(n):n[e.key],r=t=>e.tags.includes(t.after);if(e.many){let n=t??[];for(let t=0;t<n.length;t++)e.write(o,n[t]),c(e=>r(e)&&e.at===t+1)}else t!==void 0&&e.write(o,t);c(r)}c(()=>!0);let l=o.toString();l===``?e.open(t,i,!0):e.open(t,i).raw(l).close(t)},j=(e,t)=>`${w[e]}:${t}`,M=(e,t,n=e,r=`c`)=>({tags:[e],key:n,ns:r,read:e=>{let n=(e=>{if(S(e).length>0)return;let t=null;for(let[n,r]of T(e)){if(n!==`val`)return;t=r}return t})(e);if(n===void 0)return;if(t===`bool`)return n===null||(E(n)??void 0);if(n===null)return;if(t===`str`)return n;let r=Number(n);return Number.isFinite(r)&&(t!==`int`||Number.isInteger(r))&&O(String(r))===O(n)?r:void 0},write:(n,i)=>{n.val(j(r,e),t===`bool`?D(i):String(i))}}),N=(e,t=e,n=`c`)=>({tags:[e],key:t,ns:n,read:e=>{if(!(S(e).length>0||T(e).some(([e])=>!e.startsWith(`xmlns`))))return C(e)},write:(t,r)=>{let i=j(n,e);r===``?t.open(i,null,!0):t.open(i).text(r).close(i)}}),P=(e,t,n=e,r)=>{let i=r?.ns??`c`,a=typeof t==`function`?t:()=>t;return{tags:[e],key:n,ns:i,many:r?.many,read:(e,t,n)=>k(e,a(),t,n),write:(t,n)=>A(t,j(i,e),n,a())}},F=(e,t,n=e,r=1)=>({name:e,key:n,read:e=>{if(t===`str`)return e;if(t===`bool`)return E(e)??void 0;let n=Number(e);return Number.isFinite(n)&&(t!==`int`||Number.isInteger(n))?r===1?n:n/r:void 0},write:e=>t===`bool`?D(e):t===`str`?e:String(r===1?e:Math.round(e*r))}),Ae=(e,t,n,r)=>({name:e,key:t,read:n,write:r}),je=e=>({...e,read:(t,n,r)=>{let i=e.read(t,n,r);if(i===void 0)return;let a=new Ce;e.write(a,i);let o=((e,t)=>{let n=x(e);return n?De(n,t):null})(a.toString(),r.writeScope)===De(t,n);return o||r.kept++,o?i:void 0}}),I=e=>`a:${e}`,Me=new Set([`bg1`,`tx1`,`bg2`,`tx2`,`accent1`,`accent2`,`accent3`,`accent4`,`accent5`,`accent6`,`hlink`,`folHlink`,`phClr`,`dk1`,`lt1`,`dk2`,`lt2`]),Ne=new Set(`scrollBar.background.activeCaption.inactiveCaption.menu.window.windowFrame.menuText.windowText.captionText.activeBorder.inactiveBorder.appWorkspace.highlight.highlightText.btnFace.btnShadow.grayText.btnText.inactiveCaptionText.btnHighlight.3dDkShadow.3dLight.infoText.infoBk.hotLight.gradientActiveCaption.gradientInactiveCaption.menuHighlight.menuBar`.split(`.`)),Pe=[`scrgbClr`,`srgbClr`,`hslClr`,`sysClr`,`schemeClr`,`prstClr`],Fe=e=>e===`hue`||e===`hueOff`||e===`hueMod`?6e4:e===`alpha`||e===`alphaOff`||e===`alphaMod`?1e5:1e3,L=(e,t)=>{let n={};for(let[r,i]of T(e)){if(!t.includes(r))return null;n[r]=i}return n},R=/^-?\d+$/,Ie=e=>{let t=S(e);return t.length===0?null:t.length>1||!Pe.includes(t[0].name)?void 0:(e=>{let t;switch(e.name){case`scrgbClr`:{let n=L(e,[`r`,`g`,`b`]);if(!(n&&R.test(n.r??``)&&R.test(n.g??``)&&R.test(n.b??``)))return;t=`lrgb(${Number(n.r)/1e3},${Number(n.g)/1e3},${Number(n.b)/1e3})`;break}case`hslClr`:{let n=L(e,[`hue`,`sat`,`lum`]);if(!(n&&R.test(n.hue??``)&&R.test(n.sat??``)&&R.test(n.lum??``)))return;t=`hsl(${Number(n.hue)/6e4},${Number(n.sat)/1e3},${Number(n.lum)/1e3})`;break}case`sysClr`:{let n=L(e,[`val`,`lastClr`]);if(!n?.val||!Ne.has(n.val))return;t=n.lastClr===void 0?n.val:`${n.val} lastClr ${n.lastClr}`;break}default:{let n=L(e,[`val`]);if(!n?.val||/\s/.test(n.val)||(Me.has(n.val)?`schemeClr`:/^[0-9A-Fa-f]{6}$/.test(n.val)?`srgbClr`:`prstClr`)!==e.name)return;t=n.val}}for(let n of S(e)){if(S(n).length>0)return;let e=L(n,[`val`]);if(!e)return;if(e.val!==void 0){if(!R.test(e.val))return;t+=` ${n.name} ${Number(e.val)/Fe(n.name)}`}else t+=` ${n.name}`}return t})(t[0])},Le=/^-?(?:\d+\.?\d*|\.\d+)(?:e[-+]?\d+)?$/i,Re=(e,n)=>{let r=(e=>{let t=e.trim(),n=/^[a-z]+\([^)]*\)|^[^\s,]+/i.exec(t)?.[0]??t,r=t.slice(n.length).split(/\s*,\s*|\s+/).filter(e=>e!==``);return[n.replace(/\s+/g,``),...r]})(n),i=r.shift(),a,o,s=/^(lrgb|hsl)\(([^,]+),([^,]+),([^)]+)\)$/.exec(i);if(s?.[1]===`lrgb`)a=`scrgbClr`,o=[[`r`,String(Math.round(1e3*Number(s[2])))],[`g`,String(Math.round(1e3*Number(s[3])))],[`b`,String(Math.round(1e3*Number(s[4])))]];else if(s?.[1]===`hsl`)a=`hslClr`,o=[[`hue`,String(Math.round(6e4*Number(s[2])))],[`sat`,String(Math.round(1e3*Number(s[3])))],[`lum`,String(Math.round(1e3*Number(s[4])))]];else if(r[0]===`lastClr`||Ne.has(i))a=`sysClr`,o=[[`val`,i]],r[0]===`lastClr`&&(r.shift(),o.push([`lastClr`,r.shift()]));else{let e=(e=>{if(Me.has(e)||/^[0-9A-Fa-f]{6}$/.test(e)||/^[a-z]+$/i.test(e))return null;let n;try{n=new t(e)}catch{return null}let r=n.getType();return r===`hex`||r===`rgb`||r===`hsl`?n.toHex().toString(!1).replace(`#`,``).toUpperCase():null})(i);a=e?`srgbClr`:Me.has(i)?`schemeClr`:/^[0-9A-Fa-f]{6}$/.test(i)?`srgbClr`:`prstClr`,o=[[`val`,e??i]]}if(r.length!==0){e.open(I(a),o);for(let t=0;t<r.length;t++){let n=r[t];t+1<r.length&&Le.test(r[t+1])?e.val(I(n),String(Math.round(Number(r[++t])*Fe(n)))):e.open(I(n),null,!0)}e.close(I(a))}else e.open(I(a),o,!0)},ze=(e,t,n,r)=>{n===void 0?e.open(I(t),r,!0):(e.open(I(t),r),Re(e,n),e.close(I(t)))},Be=[`noFill`,`solidFill`,`gradFill`,`pattFill`,`grpFill`],Ve=e=>{let t=L(e,[`l`,`t`,`r`,`b`]);if(!t)return;let n={};return t.l!==void 0&&(n.left=Number(t.l)/1e3),t.t!==void 0&&(n.top=Number(t.t)/1e3),t.r!==void 0&&(n.right=Number(t.r)/1e3),t.b!==void 0&&(n.bottom=Number(t.b)/1e3),n},He=(e,t,n)=>{let r=[];n.left!==void 0&&r.push([`l`,String(Math.round(1e3*n.left))]),n.top!==void 0&&r.push([`t`,String(Math.round(1e3*n.top))]),n.right!==void 0&&r.push([`r`,String(Math.round(1e3*n.right))]),n.bottom!==void 0&&r.push([`b`,String(Math.round(1e3*n.bottom))]),e.open(I(t),r,!0)},Ue=t=>{switch(t.name){case`noFill`:return S(t).length===0&&T(t).length===0?{type:e.Type.None}:void 0;case`grpFill`:return S(t).length===0&&T(t).length===0?{type:e.Type.Group}:void 0;case`solidFill`:{if(T(t).length>0)return;let n=Ie(t);return n===void 0?void 0:n===null?{type:e.Type.Solid}:{type:e.Type.Solid,color:n}}case`gradFill`:return(t=>{let n=L(t,[`rotWithShape`,`flip`]);if(!n)return;let r={type:e.Type.Gradient};if(n.rotWithShape!==void 0){let e=E(n.rotWithShape);if(e===null)return;r.isRotatedWithShape=e}n.flip!==void 0&&(r.flip=n.flip);for(let n of S(t))if(n.name===`gsLst`){let e=[];for(let t of S(n)){let n=t.name===`gs`?L(t,[`pos`]):null,r=n&&R.test(n.pos??``)?Ie(t):void 0;if(!r)return;e.push({offset:Number(n.pos)/1e5,color:r})}r.stops=e}else if(n.name===`lin`){let t=L(n,[`ang`,`scaled`]);if(!t||S(n).length>0)return;if(r.gradientType=e.GradientType.Linear,t.ang!==void 0){if(!R.test(t.ang))return;r.angle=(Number(t.ang)/6e4+90)%360}if(t.scaled!==void 0){let e=E(t.scaled);if(e===null)return;r.scaled=e}}else if(n.name===`path`){let t=L(n,[`path`]);if(!t)return;r.gradientType=t.path===`circle`?e.GradientType.Path:t.path;let i=S(n);if(i.length>1||i.length===1&&i[0].name!==`fillToRect`)return;if(i.length===1){let e=Ve(i[0]);if(!e)return;r.focus={left:(e.left??0)/100,top:(e.top??0)/100,right:1-(e.right??0)/100,bottom:1-(e.bottom??0)/100}}}else{if(n.name!==`tileRect`)return;{let e=Ve(n);if(!e)return;r.tileRect=e}}return r})(t);case`pattFill`:{let n=L(t,[`prst`]);if(!n)return;let r={type:e.Type.Pattern};n.prst!==void 0&&(r.patternType=n.prst);for(let e of S(t)){let t=e.name===`fgClr`||e.name===`bgClr`?Ie(e):void 0;if(!t)return;e.name===`fgClr`?r.foreground=t:r.background=t}return r}}},We=(t,n)=>{switch(n.type){case e.Type.None:t.open(I(`noFill`),null,!0);return;case e.Type.Group:t.open(I(`grpFill`),null,!0);return;case e.Type.Solid:ze(t,`solidFill`,n.color);return;case e.Type.Gradient:((t,n)=>{let r=[];if(n.flip!==void 0&&r.push([`flip`,n.flip]),n.isRotatedWithShape!==void 0&&r.push([`rotWithShape`,D(n.isRotatedWithShape)]),t.open(I(`gradFill`),r),n.stops){t.open(I(`gsLst`));for(let e of n.stops){let{offset:n,color:r}=typeof e==`string`?{offset:0,color:e}:e;ze(t,`gs`,r,[[`pos`,String(Math.round(1e5*(n??0)))]])}t.close(I(`gsLst`))}if(n.gradientType===e.GradientType.Linear){let e=[];n.angle!==void 0&&e.push([`ang`,String(Math.round((n.angle-90+360)%360*6e4))]),n.scaled!==void 0&&e.push([`scaled`,D(n.scaled)]),t.open(I(`lin`),e,!0)}else if(n.gradientType!==void 0){let r=n.gradientType===e.GradientType.Path?`circle`:n.gradientType;n.focus?(t.open(I(`path`),[[`path`,r]]),He(t,`fillToRect`,{left:100*n.focus.left,top:100*n.focus.top,right:100*(1-n.focus.right),bottom:100*(1-n.focus.bottom)}),t.close(I(`path`))):t.open(I(`path`),[[`path`,r]],!0)}n.tileRect&&He(t,`tileRect`,n.tileRect),t.close(I(`gradFill`))})(t,n);return;case e.Type.Pattern:{let e=n,r=e.patternType===void 0?[]:[[`prst`,e.patternType]];e.foreground===void 0&&e.background===void 0?t.open(I(`pattFill`),r,!0):(t.open(I(`pattFill`),r),e.foreground!==void 0&&ze(t,`fgClr`,e.foreground),e.background!==void 0&&ze(t,`bgClr`,e.background),t.close(I(`pattFill`)));return}}throw Error(`A chart cannot write a fill of type '${n.type}'.`)},Ge=e=>je({tags:Be,key:e,ns:`a`,read:e=>Ue(e),write:(e,t)=>We(e,t)}),Ke={tags:[`effectLst`],key:`effects`,ns:`a`,read:e=>S(e).length===0&&T(e).length===0?[]:void 0,write:(e,t)=>{if(t.length>0)throw Error(`A chart cannot write effects yet.`);e.open(I(`effectLst`),null,!0)}},qe={rnd:`round`,flat:`butt`,sq:`square`},Je=(e,t)=>({tags:[e],key:`${t}Type`,ns:`a`,read:e=>{let t=L(e,[`type`,`w`,`len`]);if(t&&!(S(e).length>0)&&Object.keys(t).length!==0)return t},write:(t,n)=>{let r=[];for(let e of[`type`,`w`,`len`])n[e]!==void 0&&r.push([e,n[e]]);t.open(I(e),r,!0)},get:e=>{let n={};return e[`${t}Type`]!==void 0&&(n.type=e[`${t}Type`]),e[`${t}Width`]!==void 0&&(n.w=e[`${t}Width`]),e[`${t}Length`]!==void 0&&(n.len=e[`${t}Length`]),Object.keys(n).length>0?n:void 0},set:(e,n)=>{n.type!==void 0&&(e[`${t}Type`]=n.type),n.w!==void 0&&(e[`${t}Width`]=n.w),n.len!==void 0&&(e[`${t}Length`]=n.len)}}),Ye={attributes:[F(`w`,`int`,`width`,12700),Ae(`cap`,`lineCap`,e=>qe[e],e=>Object.keys(qe).find(t=>qe[t]===e)),F(`cmpd`,`str`,`compound`),F(`algn`,`str`,`align`)],fields:[Ge(`fill`),{tags:[`prstDash`,`custDash`],key:`dash`,ns:`a`,read:e=>{if(e.name===`prstDash`){let t=L(e,[`val`]);return t?.val!==void 0&&S(e).length===0?t.val:void 0}if(T(e).length>0)return;let t=[];for(let n of S(e)){let e=n.name===`ds`?L(n,[`d`,`sp`]):null;if(!e||!R.test(e.d??``)||!R.test(e.sp??``))return;t.push(Number(e.d)/1e3,Number(e.sp)/1e3)}return t},write:(e,t)=>{if(typeof t!=`string`){e.open(I(`custDash`));for(let n=0;n<t.length;n+=2)e.open(I(`ds`),[[`d`,String(Math.round(1e3*t[n]))],[`sp`,String(Math.round(1e3*t[n+1]))]],!0);e.close(I(`custDash`))}else e.val(I(`prstDash`),t)}},{tags:[`round`,`bevel`,`miter`],key:`lineJoin`,ns:`a`,read:e=>{let t=L(e,e.name===`miter`?[`lim`]:[]);if(t&&!(S(e).length>0)&&(t.lim===void 0||R.test(t.lim)))return{join:e.name,limit:t.lim===void 0?void 0:Number(t.lim)/1e5}},write:(e,t)=>{e.open(I(t.join),t.limit===void 0?null:[[`lim`,String(Math.round(1e5*t.limit))]],!0)},get:e=>e.lineJoin?{join:e.lineJoin,limit:e.miterLimit}:void 0,set:(e,t)=>{e.lineJoin=t.join,t.limit!==void 0&&(e.miterLimit=t.limit)}},Je(`headEnd`,`head`),Je(`tailEnd`,`tail`)]},Xe=e=>je(P(`ln`,Ye,e,{ns:`a`})),Ze={fields:[Ge(`fill`),Xe(`stroke`),Ke]},Qe=(e,t,r)=>({tags:[e],key:t,ns:`a`,read:e=>{let t=L(e,[`typeface`]);if(!(t?.typeface===void 0||S(e).length>0))return r&&t.typeface===`+mn-${r}`?n.ThemeFamily.Body:r&&t.typeface===`+mj-${r}`?n.ThemeFamily.Heading:t.typeface},write:(t,i)=>{let a=r?i===n.ThemeFamily.Body?`+mn-${r}`:i===n.ThemeFamily.Heading?`+mj-${r}`:i:i;t.open(I(e),[[`typeface`,a]],!0)}}),$e=(e,t,n)=>{let r=Object.fromEntries(Object.entries(n).map(([e,t])=>[t,e]));return Ae(e,t,e=>r[e],e=>n[e]??e)},et={attributes:[F(`lang`,`str`,`language`),F(`altLang`,`str`,`alternateLanguage`),F(`sz`,`int`,`size`,100),Ae(`b`,`weight`,e=>{let t=E(e);return t===null?void 0:t?700:400},e=>D(e>=600)),Ae(`i`,`style`,e=>{let t=E(e);return t===null?void 0:t?`italic`:`normal`},e=>D(e===`italic`)),$e(`u`,`underline`,{none:`none`,words:`words`,single:`sng`,double:`dbl`,heavy:`heavy`,dotted:`dotted`,dottedHeavy:`dottedHeavy`,dash:`dash`,dashHeavy:`dashHeavy`,dashLong:`dashLong`,dashLongHeavy:`dashLongHeavy`,dotDash:`dotDash`,dotDashHeavy:`dotDashHeavy`,dotDotDash:`dotDotDash`,dotDotDashHeavy:`dotDotDashHeavy`,wavy:`wavy`,wavyHeavy:`wavyHeavy`,wavyDouble:`wavyDbl`}),$e(`strike`,`strike`,{none:`noStrike`,single:`sngStrike`,double:`dblStrike`}),F(`kern`,`int`,`kerning`,100),$e(`cap`,`capitals`,{none:`none`,small:`small`,all:`all`}),F(`spc`,`int`,`letterSpacing`,100),F(`normalizeH`,`bool`,`normalizeHeight`),F(`baseline`,`int`,`baseline`,1e3)],fields:[Xe(`outline`),Ge(`color`),Ke,Qe(`latin`,`latin`,`lt`),Qe(`ea`,`eastAsian`,`ea`),Qe(`cs`,`complexScript`,`cs`),Qe(`sym`,`symbol`)]},tt={attributes:[F(`algn`,`str`,`align`),F(`rtl`,`bool`,`rtl`)],fields:[P(`defRPr`,et,`defaultRun`,{ns:`a`})]},nt={fields:[P(`rPr`,et,`rPr`,{ns:`a`}),{tags:[`t`],key:`text`,ns:`a`,read:e=>{if(S(e).length>0)return;let t=!1;for(let[n,r]of T(e))if(n!==`xmlns`&&!n.startsWith(`xmlns:`)){if(n!==`xml:space`||r!==`preserve`)return;t=!0}return{text:C(e),preserve:t}},get:e=>e.text===void 0?void 0:{text:e.text,preserve:!0===e.preserveSpace},set:(e,t)=>{e.text=t.text,t.preserve&&(e.preserveSpace=!0)},write:(e,t)=>{let n=I(`t`),r=t.preserve?[[`xml:space`,`preserve`]]:null;t.text===``?e.open(n,r,!0):e.open(n,r).text(t.text).close(n)}}]},rt={attributes:[F(`id`,`str`,`id`),F(`type`,`str`,`type`)],fields:nt.fields},it={fields:[P(`rPr`,et,`rPr`,{ns:`a`})]},at={fields:[P(`pPr`,tt,`pPr`,{ns:`a`}),{tags:[`r`,`br`,`fld`],key:`runs`,ns:`a`,many:!0,read:(e,t,n)=>{if(e.name===`br`)return{...k(e,it,t,n),text:`
|
|
2
|
-
`,break:!0};if(e.name===`r`){let r=k(e,nt,t,n);return r.text===void 0?void 0:r}let{id:r,type:i,...a}=k(e,rt,t,n);return r===void 0?void 0:(a.text??=``,a.field=i===void 0?{id:r}:{id:r,type:i},a)},write:(e,t)=>{if(t.break){let{text:n,break:r,...i}=t;A(e,I(`br`),i,it)}else if(t.field){let{field:n,...r}=t;A(e,I(`fld`),{...r,id:n.id,type:n.type},rt)}else A(e,I(`r`),t,nt)}},P(`endParaRPr`,et,`endRun`,{ns:`a`})]},ot={fields:[P(`bodyPr`,{attributes:[F(`rot`,`int`,`rotation`,6e4),F(`spcFirstLastPara`,`bool`,`spcFirstLastPara`),F(`vertOverflow`,`str`,`vertOverflow`),F(`horzOverflow`,`str`,`horzOverflow`),F(`vert`,`str`,`vert`),F(`wrap`,`str`,`wrap`),F(`lIns`,`int`,`lIns`),F(`tIns`,`int`,`tIns`),F(`rIns`,`int`,`rIns`),F(`bIns`,`int`,`bIns`),F(`anchor`,`str`,`anchor`),F(`anchorCtr`,`bool`,`anchorCtr`)],fields:[]},`bodyPr`,{ns:`a`}),P(`lstStyle`,{fields:[]},`lstStyle`,{ns:`a`}),P(`p`,at,`paragraphs`,{ns:`a`,many:!0})]},z=()=>P(`spPr`,Ze),B=()=>P(`txPr`,ot),st={attributes:[F(`idx`,`int`),F(`formatCode`,`str`)],fields:[N(`v`)]},ct={fields:[N(`formatCode`),M(`ptCount`,`int`),P(`pt`,st,`points`,{many:!0})]},lt={fields:[M(`ptCount`,`int`),P(`pt`,st,`points`,{many:!0})]},ut={fields:[M(`ptCount`,`int`),P(`lvl`,{fields:[P(`pt`,st,`points`,{many:!0})]},`levels`,{many:!0})]},dt={fields:[N(`f`),P(`numCache`,ct,`cache`)]},ft={fields:[N(`f`),P(`strCache`,lt,`cache`)]},pt={fields:[N(`f`),P(`multiLvlStrCache`,ut,`cache`)]},mt=P(`datalabelsRange`,{fields:[N(`f`,`f`,`c15`),P(`dlblRangeCache`,lt,`cache`,{ns:`c15`})]},`datalabelsRange`,{ns:`c15`}),ht={...mt,read:(e,t,n)=>t[w.c15]===pe?mt.read(e,t,n):void 0},gt=M(`showDataLabelsRange`,`bool`,`showDataLabelsRange`,`c15`),_t={...gt,read:(e,t,n)=>t[w.c15]===pe?gt.read(e,t,n):void 0},vt={fields:[P(`ext`,{attributes:[F(`uri`,`str`)],fields:[ht,_t],declares:e=>e.datalabelsRange!==void 0||e.showDataLabelsRange!==void 0?[[`xmlns:${w.c15}`,pe]]:[]},`extensions`,{many:!0})]},yt={fields:[P(`multiLvlStrRef`,pt),P(`numRef`,dt),P(`numLit`,ct),P(`strRef`,ft),P(`strLit`,lt)]},bt={fields:[P(`strRef`,ft),N(`v`)]},xt={fields:[P(`strRef`,ft),P(`rich`,ot)]},St={attributes:[F(`formatCode`,`str`),F(`sourceLinked`,`bool`)],fields:[]},V={fields:[P(`manualLayout`,{fields:[M(`layoutTarget`,`str`),M(`xMode`,`str`),M(`yMode`,`str`),M(`wMode`,`str`),M(`hMode`,`str`),M(`x`,`num`),M(`y`,`num`),M(`w`,`num`),M(`h`,`num`)]})]},Ct={fields:[P(`tx`,xt),P(`layout`,V),M(`overlay`,`bool`),z(),B()]},wt={fields:[z()]},Tt={fields:[M(`symbol`,`str`),M(`size`,`int`),z()]},Et={fields:[M(`idx`,`int`),M(`invertIfNegative`,`bool`),P(`marker`,Tt),M(`bubble3D`,`bool`),M(`explosion`,`int`),z()]},Dt=()=>[P(`numFmt`,St),z(),B(),M(`dLblPos`,`str`),M(`showLegendKey`,`bool`),M(`showVal`,`bool`),M(`showCatName`,`bool`),M(`showSerName`,`bool`),M(`showPercent`,`bool`),M(`showBubbleSize`,`bool`),N(`separator`)],Ot={fields:[P(`dLbl`,{fields:[M(`idx`,`int`),M(`delete`,`bool`),P(`layout`,V),P(`tx`,xt),...Dt(),P(`extLst`,vt)]},`labels`,{many:!0}),M(`delete`,`bool`),...Dt(),M(`showLeaderLines`,`bool`),P(`leaderLines`,wt),P(`extLst`,vt)]},kt={fields:[P(`layout`,V),P(`tx`,xt),P(`numFmt`,St),z(),B()]},At={fields:[N(`name`),z(),M(`trendlineType`,`str`),M(`order`,`int`),M(`period`,`int`),M(`forward`,`num`),M(`backward`,`num`),M(`intercept`,`num`),M(`dispRSqr`,`bool`),M(`dispEq`,`bool`),P(`trendlineLbl`,kt)]},jt={fields:[M(`errDir`,`str`),M(`errBarType`,`str`),M(`errValType`,`str`),M(`noEndCap`,`bool`),P(`plus`,yt),P(`minus`,yt),M(`val`,`num`),z(),P(`extLst`,vt)]},Mt={fields:[M(`gapWidth`,`int`),P(`upBars`,wt),P(`downBars`,wt)]},H=()=>[M(`idx`,`int`),M(`order`,`int`),P(`tx`,bt),z()],U=()=>P(`dPt`,Et,`points`,{many:!0}),W=()=>P(`dLbls`,Ot),Nt=()=>P(`trendline`,At,`trendlines`,{many:!0}),Pt=()=>P(`errBars`,jt,`errBars`,{many:!0}),G=e=>P(e,yt),K=()=>P(`extLst`,vt),Ft={bar:{fields:[...H(),M(`invertIfNegative`,`bool`),U(),W(),Nt(),Pt(),G(`cat`),G(`val`),M(`shape`,`str`),K()]},line:{fields:[...H(),P(`marker`,Tt),U(),W(),Nt(),Pt(),G(`cat`),G(`val`),M(`smooth`,`bool`),K()]},area:{fields:[...H(),U(),W(),Nt(),Pt(),G(`cat`),G(`val`),K()]},pie:{fields:[...H(),M(`explosion`,`int`),U(),W(),G(`cat`),G(`val`),K()]},scatter:{fields:[...H(),P(`marker`,Tt),U(),W(),Nt(),Pt(),G(`xVal`),G(`yVal`),M(`smooth`,`bool`),K()]},bubble:{fields:[...H(),M(`invertIfNegative`,`bool`),U(),W(),Nt(),Pt(),G(`xVal`),G(`yVal`),G(`bubbleSize`),M(`bubble3D`,`bool`),K()]},radar:{fields:[...H(),P(`marker`,Tt),U(),W(),G(`cat`),G(`val`),K()]},surface:{fields:[...H(),G(`cat`),G(`val`),K()]}},q=e=>P(`ser`,Ft[e],`series`,{many:!0}),J=()=>({...M(`axId`,`int`,`axIds`),many:!0}),Y=(e,t)=>P(e,wt,e,{many:t}),It={tags:[`custSplit`],key:`custSplit`,ns:`c`,read:(e,t,n)=>{let r=k(e,{fields:[{...M(`secondPiePt`,`int`,`points`),many:!0}]},t,n);return r.unknown?void 0:r.points??[]},write:(e,t)=>{A(e,`c:custSplit`,{points:t},{fields:[{...M(`secondPiePt`,`int`,`points`),many:!0}]})}},Lt={fields:[M(`idx`,`int`),z()]},Rt={tags:[`bandFmts`],key:`bandFmts`,ns:`c`,read:(e,t,n)=>{let r=k(e,{fields:[P(`bandFmt`,Lt,`formats`,{many:!0})]},t,n);return r.unknown?void 0:r.formats??[]},write:(e,t)=>{A(e,`c:bandFmts`,{formats:t},{fields:[P(`bandFmt`,Lt,`formats`,{many:!0})]})}},zt={areaChart:{type:`area`,codec:{fields:[M(`grouping`,`str`),M(`varyColors`,`bool`),q(`area`),W(),Y(`dropLines`),J()]}},area3DChart:{type:`area`,is3D:!0,codec:{fields:[M(`grouping`,`str`),M(`varyColors`,`bool`),q(`area`),W(),Y(`dropLines`),M(`gapDepth`,`int`),J()]}},lineChart:{type:`line`,codec:{fields:[M(`grouping`,`str`),M(`varyColors`,`bool`),q(`line`),W(),Y(`dropLines`),Y(`hiLowLines`),P(`upDownBars`,Mt),M(`marker`,`bool`),M(`smooth`,`bool`),J()]}},line3DChart:{type:`line`,is3D:!0,codec:{fields:[M(`grouping`,`str`),M(`varyColors`,`bool`),q(`line`),W(),Y(`dropLines`),M(`gapDepth`,`int`),J()]}},stockChart:{type:`stock`,codec:{fields:[q(`line`),W(),Y(`dropLines`),Y(`hiLowLines`),P(`upDownBars`,Mt),J()]}},radarChart:{type:`radar`,codec:{fields:[M(`radarStyle`,`str`),M(`varyColors`,`bool`),q(`radar`),W(),J()]}},scatterChart:{type:`scatter`,codec:{fields:[M(`scatterStyle`,`str`),M(`varyColors`,`bool`),q(`scatter`),W(),J()]}},pieChart:{type:`pie`,codec:{fields:[M(`varyColors`,`bool`),q(`pie`),W(),M(`firstSliceAng`,`int`)]}},pie3DChart:{type:`pie`,is3D:!0,codec:{fields:[M(`varyColors`,`bool`),q(`pie`),W()]}},doughnutChart:{type:`doughnut`,codec:{fields:[M(`varyColors`,`bool`),q(`pie`),W(),M(`firstSliceAng`,`int`),M(`holeSize`,`int`)]}},barChart:{type:`bar`,codec:{fields:[M(`barDir`,`str`),M(`grouping`,`str`),M(`varyColors`,`bool`),q(`bar`),W(),M(`gapWidth`,`int`),M(`overlap`,`int`),Y(`serLines`,!0),J()]}},bar3DChart:{type:`bar`,is3D:!0,codec:{fields:[M(`barDir`,`str`),M(`grouping`,`str`),M(`varyColors`,`bool`),q(`bar`),W(),M(`gapWidth`,`int`),M(`gapDepth`,`int`),M(`shape`,`str`),J()]}},ofPieChart:{type:`ofPie`,codec:{fields:[M(`ofPieType`,`str`),M(`varyColors`,`bool`),q(`pie`),W(),M(`gapWidth`,`int`),M(`splitType`,`str`),M(`splitPos`,`num`),It,M(`secondPieSize`,`int`),Y(`serLines`,!0)]}},surfaceChart:{type:`surface`,codec:{fields:[M(`wireframe`,`bool`),q(`surface`),Rt,J()]}},surface3DChart:{type:`surface`,is3D:!0,codec:{fields:[M(`wireframe`,`bool`),q(`surface`),Rt,J()]}},bubbleChart:{type:`bubble`,codec:{fields:[M(`varyColors`,`bool`),q(`bubble`),W(),M(`bubble3D`,`bool`),M(`bubbleScale`,`int`),M(`showNegBubbles`,`bool`),M(`sizeRepresents`,`str`),J()]}}},Bt={tags:Object.keys(zt),key:`groups`,ns:`c`,many:!0,read:(e,t,n)=>{let{type:r,is3D:i,codec:a}=zt[e.name],o=k(e,a,t,n);return o.series??=[],o.axIds??=[],i?{type:r,is3D:i,...o}:{type:r,...o}},write:(e,t)=>{let n=(e=>`${e.type}${e.is3D?`3D`:``}Chart`)(t),{type:r,is3D:i,...a}=Wt(t);A(e,`c:${n}`,a,zt[n].codec)}},Vt=[`ctr`,`l`,`r`,`t`,`b`],Ht=e=>{switch(e.type){case`bar`:return e.is3D?[]:e.grouping===`stacked`||e.grouping===`percentStacked`?[`ctr`,`inEnd`,`inBase`]:[`ctr`,`inEnd`,`inBase`,`outEnd`];case`line`:return e.is3D?[]:Vt;case`stock`:case`scatter`:case`bubble`:return Vt;case`pie`:case`ofPie`:return[`ctr`,`inEnd`,`outEnd`,`bestFit`];default:return[]}},Ut=(e,t)=>t?.dLblPos!==void 0&&!e.includes(t.dLblPos),Wt=e=>{let t=Ht(e),n=e=>{if(!Ut(t,e))return e;let{dLblPos:n,...r}=e;return r},r=e=>e.labels?{...n(e),labels:e.labels.map(n)}:n(e);return{...e,...e.dLbls?{dLbls:r(e.dLbls)}:{},series:e.series.map(e=>e.dLbls?{...e,dLbls:r(e.dLbls)}:e)}},Gt={fields:[M(`logBase`,`num`),M(`orientation`,`str`),M(`max`,`num`),M(`min`,`num`)]},Kt={fields:[P(`layout`,V),P(`tx`,xt),z(),B()]},qt={fields:[M(`custUnit`,`num`),M(`builtInUnit`,`str`),P(`dispUnitsLbl`,Kt)]},Jt=()=>[M(`axId`,`int`),P(`scaling`,Gt),M(`delete`,`bool`),M(`axPos`,`str`),Y(`majorGridlines`),Y(`minorGridlines`),P(`title`,Ct),P(`numFmt`,St),M(`majorTickMark`,`str`),M(`minorTickMark`,`str`),M(`tickLblPos`,`str`),z(),B(),M(`crossAx`,`int`),M(`crosses`,`str`),M(`crossesAt`,`num`)],Yt={valAx:{type:`val`,codec:{fields:[...Jt(),M(`crossBetween`,`str`),M(`majorUnit`,`num`),M(`minorUnit`,`num`),P(`dispUnits`,qt)]}},catAx:{type:`cat`,codec:{fields:[...Jt(),M(`auto`,`bool`),M(`lblAlgn`,`str`),M(`lblOffset`,`int`),M(`tickLblSkip`,`int`),M(`tickMarkSkip`,`int`),M(`noMultiLvlLbl`,`bool`)]}},dateAx:{type:`date`,codec:{fields:[...Jt(),M(`auto`,`bool`),M(`lblOffset`,`int`),M(`baseTimeUnit`,`str`),M(`majorUnit`,`num`),M(`majorTimeUnit`,`str`),M(`minorUnit`,`num`),M(`minorTimeUnit`,`str`)]}},serAx:{type:`ser`,codec:{fields:[...Jt(),M(`tickLblSkip`,`int`),M(`tickMarkSkip`,`int`)]}}},Xt={tags:Object.keys(Yt),key:`axes`,ns:`c`,many:!0,read:(e,t,n)=>({type:Yt[e.name].type,...k(e,Yt[e.name].codec,t,n)}),write:(e,t)=>{let{type:n,...r}=t,i=`${n}Ax`;A(e,`c:${i}`,r,Yt[i].codec)}},Zt={fields:[M(`showHorzBorder`,`bool`),M(`showVertBorder`,`bool`),M(`showOutline`,`bool`),M(`showKeys`,`bool`),z(),B()]},Qt={fields:[P(`layout`,V),Bt,Xt,P(`dTable`,Zt),z()],afterRead:e=>{e.groups??=[],e.axes??=[]}},$t={fields:[M(`rotX`,`int`),M(`hPercent`,`int`),M(`rotY`,`int`),M(`depthPercent`,`int`),M(`rAngAx`,`bool`),M(`perspective`,`int`)]},en={fields:[M(`thickness`,`int`),z()]},tn={fields:[M(`idx`,`int`),M(`delete`,`bool`),B()]},nn={fields:[M(`legendPos`,`str`),P(`legendEntry`,tn,`entries`,{many:!0}),P(`layout`,V),M(`overlay`,`bool`),z(),B()]},rn={fields:[P(`title`,Ct),M(`autoTitleDeleted`,`bool`),P(`view3D`,$t),P(`floor`,en),P(`sideWall`,en),P(`backWall`,en),P(`plotArea`,Qt),P(`legend`,nn),M(`plotVisOnly`,`bool`),M(`dispBlanksAs`,`str`),M(`showDLblsOverMax`,`bool`)]},an={fields:[N(`name`),M(`fmtId`,`int`)]},on={fields:[M(`date1904`,`bool`),M(`lang`,`str`),M(`roundedCorners`,`bool`),M(`style`,`int`),P(`pivotSource`,an),P(`chart`,rn),z(),B()]},sn=e=>{let t=x(e);if(!t||t.name!==`chartSpace`)return null;let n=xe(t,ye);if(!ge(Se(t,n)))return null;let r=new Oe(e,n);return{model:k(t,on,ye,r),kept:r.kept,reordered:r.reordered}},cn=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r
|
|
3
|
-
`,ln=e=>{let t={...e.unknown?.attributes},n=(e,n)=>{t[`xmlns:${e}`]??=n};n(w.c,ce),n(w.a,ue),n(w.r,fe);let r=new Ce().raw(cn);return((e,t)=>{A(e,`c:chartSpace`,t,on)})(r,{...e,unknown:{...e.unknown,attributes:t}}),r.toString()},un=(e,t)=>{if(t&&(n=e,!(n.chart?.plotArea?.groups??[]).some(e=>{let t=Ht(e),n=e=>Ut(t,e)||!!e?.labels?.some(e=>Ut(t,e));return n(e.dLbls)||e.series.some(e=>n(e.dLbls))}))){let n=sn(t);if(n&&JSON.stringify(n.model)===JSON.stringify(e))return t}var n;return ln(e)},X=(e,t,n=e,r)=>P(e,t,n,{ns:`cx`,many:r}),Z=()=>X(`spPr`,Ze),Q=()=>X(`txPr`,ot),dn=()=>X(`numFmt`,St),fn=e=>({name:e,key:e,read:e=>{if(e===`auto`)return`auto`;let t=Number(e);return e.trim()!==``&&Number.isFinite(t)?t:void 0},write:e=>String(e)}),pn=e=>T(e).filter(([e])=>e!==`xmlns`&&!e.startsWith(`xmlns:`)),mn=e=>({tags:[e],key:e,ns:`cx`,read:e=>{if(S(e).length>0)return;let t={f:C(e)};for(let[n,r]of pn(e)){if(n!==`dir`||r!==`col`&&r!==`row`)return;t.dir=r}return t.f===``?void 0:t},write:(t,n)=>{let r=j(`cx`,e);t.open(r,n.dir?[[`dir`,n.dir]]:null).text(n.f).close(r)}}),hn={attributes:[F(`ptCount`,`int`),F(`formatCode`,`str`),F(`name`,`str`)],fields:[{tags:[`pt`],key:`points`,ns:`cx`,many:!0,read:e=>{if(S(e).length>0)return;let t=pn(e);if(t.length!==1||t[0][0]!==`idx`)return;let n=Number(t[0][1]);return Number.isInteger(n)&&O(String(n))===O(t[0][1])?{idx:n,v:C(e)}:void 0},write:(e,t)=>{let n=j(`cx`,`pt`);t.v===``?e.open(n,[[`idx`,String(t.idx)]],!0):e.open(n,[[`idx`,String(t.idx)]]).text(t.v).close(n)}}]},gn={attributes:[F(`type`,`str`)],fields:[mn(`f`),mn(`nf`),X(`lvl`,hn,`levels`,!0)]},_n=new Set([`val`,`x`,`y`,`size`,`colorVal`]),vn=new Set([`cat`,`colorStr`,`entityId`]),yn={fields:[X(`data`,{attributes:[F(`id`,`int`)],fields:[{tags:[`numDim`,`strDim`],key:`dimensions`,ns:`cx`,many:!0,read:(e,t,n)=>{let r=k(e,gn,t,n);return(e.name===`numDim`?_n:vn).has(r.type)?r:void 0},write:(e,t)=>{A(e,j(`cx`,_n.has(t.type)?`numDim`:`strDim`),t,gn)}}],afterRead:e=>{e.dimensions??=[]}},`data`,!0)],afterRead:e=>{e.data??=[]}},bn={fields:[X(`txData`,{fields:[mn(`f`),N(`v`,`v`,`cx`)]}),X(`rich`,ot)]},xn=()=>[F(`pos`,`str`),F(`align`,`str`),F(`overlay`,`bool`)],Sn={attributes:xn(),fields:[X(`tx`,bn),Z(),Q()]},Cn={attributes:xn(),fields:[Z(),Q()]},wn={attributes:[F(`seriesName`,`bool`),F(`categoryName`,`bool`),F(`value`,`bool`)],fields:[]},Tn=()=>[dn(),Z(),Q(),X(`visibility`,wn),N(`separator`,`separator`,`cx`)],En={attributes:[F(`idx`,`int`),F(`pos`,`str`)],fields:Tn()},Dn={attributes:[F(`idx`,`int`)],fields:[]},On={attributes:[F(`pos`,`str`)],fields:[...Tn(),X(`dataLabel`,En,`labels`,!0),X(`dataLabelHidden`,Dn,`hiddenLabels`,!0)]},kn={attributes:[F(`idx`,`int`)],fields:[Z()]},An={attributes:[`connectorLines`,`meanLine`,`meanMarker`,`nonoutliers`,`outliers`].map(e=>F(e,`bool`)),fields:[]},jn={attributes:[F(`intervalClosed`,`str`),fn(`underflow`),fn(`overflow`)],fields:[M(`binSize`,`num`,`binSize`,`cx`),M(`binCount`,`int`,`binCount`,`cx`)]},Mn={fields:[{...M(`idx`,`int`,`indexes`,`cx`),many:!0}]},Nn={fields:[M(`parentLabelLayout`,`str`,`parentLabelLayout`,`cx`),M(`regionLabelLayout`,`str`,`regionLabelLayout`,`cx`),X(`visibility`,An),X(`aggregation`,{fields:[]}),X(`binning`,jn),X(`statistics`,{attributes:[F(`quartileMethod`,`str`)],fields:[]}),{tags:[`subtotals`],key:`subtotals`,ns:`cx`,read:(e,t,n)=>{let r=k(e,Mn,t,n);return r.unknown?void 0:r.indexes??[]},write:(e,t)=>{A(e,j(`cx`,`subtotals`),{indexes:t},Mn)}}]},Pn={attributes:[F(`layoutId`,`str`),F(`hidden`,`bool`),F(`ownerIdx`,`int`),F(`uniqueId`,`str`),F(`formatIdx`,`int`)],fields:[X(`tx`,bn),Z(),X(`dataPt`,kn,`points`,!0),X(`dataLabels`,On),M(`dataId`,`int`,`dataId`,`cx`),X(`layoutPr`,Nn),{...M(`axisId`,`int`,`axisIds`,`cx`),many:!0}]},Fn={fields:[X(`plotSurface`,{fields:[Z()]}),X(`series`,Pn,`series`,!0)],afterRead:e=>{e.series??=[]}},In={fields:[X(`tx`,bn),Z(),Q()]},Ln={fields:[Z()]},Rn={attributes:[F(`type`,`str`)],fields:[]},zn={attributes:[F(`id`,`int`),F(`hidden`,`bool`)],fields:[X(`catScaling`,{attributes:[F(`gapWidth`,`num`)],fields:[]}),X(`valScaling`,{attributes:[`max`,`min`,`majorUnit`,`minorUnit`].map(e=>F(e,`num`)),fields:[]}),X(`title`,In),X(`units`,{attributes:[F(`unit`,`str`)],fields:[X(`unitsLabel`,In)]}),X(`majorGridlines`,Ln),X(`minorGridlines`,Ln),X(`majorTickMarks`,Rn),X(`minorTickMarks`,Rn),X(`tickLabels`,{fields:[]}),dn(),Z(),Q()]},Bn={fields:[X(`plotAreaRegion`,Fn),X(`axis`,zn,`axes`,!0),Z()],afterRead:e=>{e.axes??=[]}},Vn={fields:[X(`title`,Sn),X(`plotArea`,Bn),X(`legend`,Cn)]},Hn={fields:[X(`chartData`,yn),X(`chart`,Vn),Z(),Q()]},Un={waterfall:`waterfall`,clusteredColumn:`histogram`,boxWhisker:`boxWhisker`,treemap:`treemap`,sunburst:`sunburst`,funnel:`funnel`,regionMap:`regionMap`},Wn=Object.fromEntries(Object.entries(Un).map(([e,t])=>[t,e])),Gn=new Set(Object.values(Un)),Kn=`paretoLine`,qn={cat:`cat`,val:`val`,x:`xVal`,y:`yVal`,size:`bubbleSize`,colorVal:`color`,colorStr:`color`,entityId:`entityId`},Jn=new Set([`val`,`x`,`y`,`size`,`colorVal`]),Yn=[`cat`,`colorStr`,`entityId`,`x`,`y`,`val`,`size`,`colorVal`],$=e=>{for(let t of Object.keys(e))e[t]===void 0&&delete e[t];return e},Xn=e=>$({f:e.f,dir:e.dir}),Zn=e=>e&&$({strRef:e.txData?.f?Xn(e.txData.f):void 0,v:e.txData?.v,rich:e.rich,unknown:e.unknown}),Qn=e=>e&&$({tx:Zn(e.tx),overlay:e.overlay,spPr:e.spPr,txPr:e.txPr,pos:e.pos,align:e.align,unknown:e.unknown}),$n=e=>$({numFmt:e.numFmt,spPr:e.spPr,txPr:e.txPr,dLblPos:e.pos,showSerName:e.visibility?.seriesName,showCatName:e.visibility?.categoryName,showVal:e.visibility?.value,separator:e.separator,unknown:e.unknown}),er=e=>{if(!e)return;let t=$n(e),n=[...(e.labels??[]).map(e=>({idx:e.idx,...$n(e)})),...(e.hiddenLabels??[]).map(e=>({idx:e.idx,delete:!0}))];return n.length>0&&(t.labels=n),t},tr=(e,t)=>{let n=(e??[]).map(e=>({...e}));for(let e of[...t??[]].sort((e,t)=>e-t)){let t=n.find(t=>t.idx===e);t?t.subtotal=!0:n.push({idx:e,subtotal:!0})}return n.length>0?n:void 0},nr=e=>{if(!e)return;let{subtotals:t,...n}=e;return Object.keys(n).length>0?n:void 0},rr=e=>$({ptCount:e.ptCount,formatCode:e.formatCode,name:e.name,points:(e.points??[]).map(e=>({idx:e.idx,v:e.v})),unknown:e.unknown}),ir=e=>{let t=Jn.has(e.type),n=e.levels?.map(rr),r={};return e.f?r[t?`numRef`:`strRef`]=$({...Xn(e.f),cache:n?{levels:n}:void 0}):r[t?`numLit`:`strLit`]=$({levels:n}),e.nf&&(r.nf=Xn(e.nf)),e.unknown&&(r.unknown=e.unknown),r},ar=(e,t)=>{let n=$({idx:e.formatIdx,hidden:e.hidden,uniqueId:e.uniqueId,tx:Zn(e.tx),spPr:e.spPr,points:tr(e.points,e.layoutPr?.subtotals),dLbls:er(e.dataLabels),layoutPr:nr(e.layoutPr),unknown:e.unknown});for(let e of t?.dimensions??[]){let t=qn[e.type];t&&!n[t]&&(n[t]=ir(e))}return n},or=e=>$({idx:e.formatIdx,hidden:e.hidden,uniqueId:e.uniqueId,tx:Zn(e.tx),spPr:e.spPr,points:tr(e.points,e.layoutPr?.subtotals),dLbls:er(e.dataLabels),layoutPr:nr(e.layoutPr),axIds:e.axisIds,unknown:e.unknown}),sr=(e,t)=>{let n=new Map(t.map(e=>[e.id,e])),r=[],i=[],a=null;for(let t of e?.series??[]){if(t.layoutId===Kn){let e=t.ownerIdx===void 0?null:i[t.ownerIdx];e&&!e.cumulativeLine&&(e.cumulativeLine=or(t)),i.push(null);continue}let e=Un[t.layoutId]??t.layoutId,o=t.axisIds??[];a&&a.type===e&&JSON.stringify(a.axIds)===JSON.stringify(o)||(a={type:e,series:[],axIds:o},r.push(a));let s=ar(t,t.dataId===void 0?void 0:n.get(t.dataId));a.series.push(s),i.push(s)}return r},cr=e=>{let t=e.catScaling??e.valScaling;return $({type:e.catScaling||!e.valScaling?`cat`:`val`,axId:e.id,scaling:$({max:e.valScaling?.max,min:e.valScaling?.min,gapWidth:e.catScaling?.gapWidth,unknown:t?.unknown}),delete:e.hidden,majorGridlines:e.majorGridlines,minorGridlines:e.minorGridlines,title:Qn(e.title),numFmt:e.numFmt,majorTickMark:e.majorTickMarks?.type,minorTickMark:e.minorTickMarks?.type,tickLblPos:e.tickLabels?void 0:`none`,spPr:e.spPr,txPr:e.txPr,majorUnit:e.valScaling?.majorUnit,minorUnit:e.valScaling?.minorUnit,dispUnits:e.units&&$({builtInUnit:e.units.unit,dispUnitsLbl:Qn(e.units.unitsLabel),unknown:e.units.unknown}),unknown:e.unknown})},lr=e=>e&&$({txData:e.strRef||e.v!==void 0?$({f:e.strRef?Xn(e.strRef):void 0,v:e.v}):void 0,rich:e.rich,unknown:e.unknown}),ur=e=>e&&$({tx:lr(e.tx),spPr:e.spPr,txPr:e.txPr,unknown:e.unknown}),dr=e=>{let t=e.showSerName!==void 0||e.showCatName!==void 0||e.showVal!==void 0;return $({pos:e.dLblPos,numFmt:e.numFmt,spPr:e.spPr,txPr:e.txPr,visibility:t?$({seriesName:e.showSerName,categoryName:e.showCatName,value:e.showVal}):void 0,separator:e.separator,unknown:e.unknown})},fr=e=>!0===e.delete&&Object.keys(e).every(e=>e===`idx`||e===`delete`),pr=e=>{if(!e)return;let t=dr(e),n=(e.labels??[]).filter(e=>!fr(e)).map(e=>({idx:e.idx,...dr(e)})),r=(e.labels??[]).filter(fr).map(e=>({idx:e.idx}));return n.length>0&&(t.labels=n),r.length>0&&(t.hiddenLabels=r),t},mr=e=>{let t=(e??[]).filter(e=>Object.keys(e).some(e=>e!==`idx`&&e!==`subtotal`)).map(({subtotal:e,...t})=>t);return t.length>0?t:void 0},hr=(e,t,n)=>{let r=(t??[]).filter(e=>e.subtotal).map(e=>e.idx).sort((e,t)=>e-t);return r.length!==0||n?{...e,subtotals:r}:e},gr=e=>$({ptCount:e.ptCount,formatCode:e.formatCode,name:e.name,points:e.points.length>0?e.points.map(e=>({idx:e.idx,v:e.v})):void 0,unknown:e.unknown}),_r=(e,t)=>e===`color`?t.strRef||t.strLit?`colorStr`:`colorVal`:Object.keys(qn).find(t=>qn[t]===e),vr=e=>{let t=[];for(let n of[`cat`,`val`,`xVal`,`yVal`,`bubbleSize`,`color`,`entityId`]){let r=e[n];if(!r)continue;let i=r.numRef??r.strRef,a=(i?i.cache:r.numLit??r.strLit)?.levels;t.push($({type:_r(n,r),f:i?Xn(i):void 0,nf:r.nf?Xn(r.nf):void 0,levels:a&&a.length>0?a.map(gr):void 0,unknown:r.unknown}))}return t.sort((e,t)=>Yn.indexOf(e.type)-Yn.indexOf(t.type))},yr=e=>{let t=e.scaling??{},n=e.type===`cat`||e.type===`date`;return $({id:e.axId,hidden:e.delete,catScaling:n?$({gapWidth:t.gapWidth,unknown:t.unknown}):void 0,valScaling:n?void 0:$({max:t.max,min:t.min,majorUnit:e.majorUnit,minorUnit:e.minorUnit,unknown:t.unknown}),title:ur(e.title),units:e.dispUnits&&$({unit:e.dispUnits.builtInUnit,unitsLabel:ur(e.dispUnits.dispUnitsLbl),unknown:e.dispUnits.unknown}),majorGridlines:e.majorGridlines,minorGridlines:e.minorGridlines,majorTickMarks:e.majorTickMark?{type:e.majorTickMark}:void 0,minorTickMarks:e.minorTickMark?{type:e.minorTickMark}:void 0,tickLabels:e.tickLblPos===`none`?void 0:{},numFmt:e.numFmt,spPr:e.spPr,txPr:e.txPr,unknown:e.unknown})},br=e=>{let t=e.chart,n=t?.plotArea,r=[],i=[],a=[];for(let e of n?.groups??[]){let t=Wn[e.type];if(t)for(let n of e.series){let o=vr(n),s;if(o.length>0){let e=JSON.stringify(o);s=a.indexOf(e),s===-1&&(s=i.length,i.push({id:s,dimensions:o}),a.push(e))}let c=r.length;r.push($({layoutId:t,hidden:n.hidden,uniqueId:n.uniqueId,formatIdx:n.idx,tx:lr(n.tx),spPr:n.spPr,points:mr(n.points),dataLabels:pr(n.dLbls),dataId:s,layoutPr:hr(n.layoutPr,n.points,e.type===`waterfall`),axisIds:e.axIds.length>0?e.axIds:void 0,unknown:n.unknown}));let l=n.cumulativeLine;l&&r.push($({layoutId:Kn,hidden:l.hidden,ownerIdx:c,uniqueId:l.uniqueId,formatIdx:l.idx,tx:lr(l.tx),spPr:l.spPr,points:mr(l.points),dataLabels:pr(l.dLbls),layoutPr:hr(l.layoutPr,l.points,!1),axisIds:l.axIds,unknown:l.unknown}))}}let o=t?.legend;return $({chartData:{data:i},chart:$({title:(s=t?.title,s&&$({pos:s.pos,align:s.align,overlay:s.overlay,tx:lr(s.tx),spPr:s.spPr,txPr:s.txPr,unknown:s.unknown})),plotArea:$({plotAreaRegion:$({plotSurface:n?.plotSurface,series:r}),axes:(n?.axes??[]).map(yr),spPr:n?.spPr,unknown:n?.unknown}),legend:o&&$({pos:o.legendPos===`tr`?`r`:o.legendPos,align:o.align,overlay:o.overlay,spPr:o.spPr,txPr:o.txPr,unknown:o.unknown}),unknown:t?.unknown}),spPr:e.spPr,txPr:e.txPr,unknown:e.unknown});var s},xr=(e,t)=>{if(e===t)return!0;if(typeof e!=`object`||typeof t!=`object`||e===null||t===null||Array.isArray(e)!==Array.isArray(t))return!1;let n=e=>Object.keys(e).filter(t=>e[t]!==void 0),r=n(e),i=n(t);return r.length===i.length&&r.every(n=>xr(e[n],t[n]))},Sr=(e,t)=>xr(e,br(t)),Cr=e=>{let t=x(e);if(!t||t.name!==`chartSpace`)return null;let n=xe(t,ye);if(!ve(Se(t,n)))return null;let r=new Oe(e,n),i=k(t,Hn,ye,r),a=(e=>{let t=e.chart,n=t?.plotArea,r=t?.legend;return $({chart:$({title:Qn(t?.title),plotArea:$({groups:sr(n?.plotAreaRegion,e.chartData?.data??[]),axes:(n?.axes??[]).map(cr),spPr:n?.spPr,plotSurface:n?.plotAreaRegion?.plotSurface,unknown:n?.unknown}),legend:r&&$({legendPos:r.pos,align:r.align,overlay:r.overlay,spPr:r.spPr,txPr:r.txPr,unknown:r.unknown}),unknown:t?.unknown}),spPr:e.spPr,txPr:e.txPr,unknown:e.unknown})})(i);return{model:a,kept:r.kept,reordered:r.reordered,lossy:!Sr(i,a)}},wr=e=>{let t={...e.unknown?.attributes},n=(e,n)=>{t[`xmlns:${e}`]??=n};n(w.a,ue),n(w.r,fe),n(w.cx,me);let r=br(e),i=new Ce().raw(cn);return((e,t)=>{A(e,j(`cx`,`chartSpace`),t,Hn)})(i,{...r,unknown:{...r.unknown,attributes:t}}),i.toString()},Tr=(e,t)=>{if(t){let n=Cr(t);if(n&&JSON.stringify(n.model)===JSON.stringify(e))return t}return wr(e)},Er={chart:{relType:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart`,contentType:`application/vnd.openxmlformats-officedocument.drawingml.chart+xml`,path:`../charts/chart{n}.xml`,graphicUri:ce},chartEx:{relType:`http://schemas.microsoft.com/office/2014/relationships/chartEx`,contentType:`application/vnd.ms-office.chartex+xml`,path:`../charts/chartEx{n}.xml`,graphicUri:me}},Dr=new Set([`area`,`bar`,`line`,`pie`,`doughnut`,`ofPie`,`scatter`,`bubble`,`radar`,`stock`,`surface`]),Or=e=>e===Er.chartEx.relType?`chartEx`:e===Er.chart.relType?`chart`:null,kr=e=>Dr.has(e)?`chart`:Gn.has(e)?`chartEx`:null,Ar=e=>{let t=sn(e);if(t)return{model:t.model,family:`chart`,kept:t.kept,lossy:!1};let n=Cr(e);return n?{model:n.model,family:`chartEx`,kept:n.kept,lossy:n.lossy}:null},jr=e=>{if(Array.isArray(e))return e.map(jr);if(typeof e!=`object`||!e)return e;let t={};for(let[n,r]of Object.entries(e))n!==`unknown`&&(t[n]=jr(r));return t},Mr=(e,t)=>{let n=e.chart?.plotArea?.groups??[],r=n.map(e=>kr(e.type)).find(e=>e!==null)??t?.family??`chart`,i=n.filter(e=>kr(e.type)!==r).map(e=>e.type),a=e;if(i.length>0){let t={...e.chart.plotArea,groups:n.filter(e=>kr(e.type)===r)};a={...e,chart:{...e.chart,plotArea:t}}}let o=(t?.family??r)===r;o||(a=jr(a));let s=o?t?.xml:void 0;return{family:r,leftOut:i,xml:r===`chartEx`?Tr(a,s):un(a,s)}};export{c as a,l as c,Or as i,u as l,Er as n,g as o,Mr as r,h as s,Ar as t};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DRncpwDkZZX8rL9S.js","./DKVB6ddRfDJatYid.js","./DuYb_otrRZZDq6-f.js","./HclGiUj8dZXDFmoM.js","./ChSvXfVMLxZsP9zG.js","./3Ls_kOvlQseMV8Q0.js","./nHThFXCAZFOM_npq.js","./BftXEPOuf5Uwxpud.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{n as e}from"./CbXtAM7H-Jg_J0dk.js";import{i as t,t as n}from"./-cpi3yOZYn6GsYN4.js";import{t as r}from"./CXUO3vYip3JPSJ7A.js";import{t as i}from"./HclGiUj8dZXDFmoM.js";import{B as a,I as o}from"./ChSvXfVMLxZsP9zG.js";import{$ as s,d as c,i as ee,l,r as u}from"./CN8u05DjKwNHbUHN.js";var d=e(t(),1),f=n(),p={Mode:`themeMode`,DarkGrid:`enableDarkGrid`,DarkImages:`enableDarkImages`},m={[p.Mode]:null,[p.DarkGrid]:!1,[p.DarkImages]:!1},h=e=>{let[t]=c(p.Mode,m[p.Mode]),[n]=c(p.DarkGrid,m[p.DarkGrid]),{themeMode:r}=l({mode:e??t??void 0});return e||(r===`dark`&&n?`dark`:`light`)},g=()=>{let[e]=c(p.Mode,m[p.Mode]),{themeMode:t}=l({mode:e??void 0});return t},_=a(`chart:paint`,()=>i(()=>import(`./DRncpwDkZZX8rL9S.js`),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url)),v=(e,t)=>{let n=e.getElementType();if(n===`point`){let n=e.getParent();return t===n||t?.getElementType()===`point`&&t.getParent()===n?e:n}if(n===`legendEntry`){let n=e.getParent();return t===n||t?.getElementType()===`legendEntry`?e:n}if(n===`dataLabel`){let n=e.getParent()?.getParent(),r=n?.getDataLabels();return r?t===r||t?.getElementType()===`dataLabel`&&t.getParent()?.getParent()===n?e:r:e}return e},y={boxes:[],handles:[]},b=(0,d.memo)((0,d.forwardRef)((e,t)=>{let{children:n,style:i,chart:a,onChartChange:c,zoom:l=1,width:p,height:m,selection:h=null,colorScheme:b,onElementPress:x,onPointerDown:S,...C}=e,[w,T]=(0,d.useState)(()=>o.isPromiseLike(a)?null:a),[E,te]=(0,d.useState)(null),D=(0,d.useRef)(c);D.current=c;let O=(0,d.useRef)(null);(0,d.useEffect)(()=>{let e=!0,t=(e,t)=>{te(t),T(e),O.current!==e&&(O.current=e,D.current?.(e))};if(o.isPromiseLike(a))return a.then(n=>{e&&t(n,null)},n=>{e&&t(null,n)}),()=>{e=!1};t(a,null)},[a]);let[ne,k]=ee(),A=typeof p==`number`?p:k.width,j=typeof m==`number`?m:k.height,M=A?Math.round(A/l):0,N=j?Math.round(j/l):0,P=(0,d.useRef)({width:M,height:N});P.current={width:M,height:N};let F=g(),I=(b??F)===`dark`,L=(0,d.useCallback)(async e=>{let t=P.current;if(!w||!t.width||!t.height)return null;let n=w.getLayout(t);return n?(await _.load()).renderChartToSVG(n,{darkMode:e?.darkMode??!1}):null},[w]),R=(0,d.useRef)(null),z=(0,d.useRef)(null),B=(0,d.useRef)(l);B.current=l;let V=(0,d.useCallback)((e,t)=>{let n=R.current;if(!n)return null;let r=n.getBoundingClientRect(),i=B.current||1;return{x:(e-r.left)/i,y:(t-r.top)/i}},[]),H=(0,d.useCallback)((e,t)=>{let n=z.current,r=V(e,t);return w&&n&&r?w.getElementAt(r,n):null},[w,V]),U=u(t,()=>({isChartElement:()=>!0,getChart:()=>w,toSVG:L,getElementAt:H}),[w,L,H]),W=r([U,ne,R]),G=(0,d.useRef)(null),K=(0,d.useRef)(null),[q,J]=(0,d.useState)(()=>_.peek()??null),[Y,X]=(0,d.useState)(null),[re,ie]=(0,d.useState)(0),[Z,ae]=(0,d.useState)(y);(0,d.useEffect)(()=>w?.addListeners({onLayoutChange:()=>ie(e=>e+1)}),[w]),s(!(Y||E||q&&w)),(0,d.useEffect)(()=>{if(q)return;let e=!0;return _.load().then(t=>{e&&J(t)},t=>{e&&X(t)}),()=>{e=!1}},[q]);let Q=(0,d.useCallback)(()=>{let e=z.current;ae(w&&e&&h&&!h.isEmpty()?((e,t,n)=>{let r=[],i=[];for(let a of n.getItems()){if(a.getChart()!==e)continue;let o=a.getElementType();if(o===`series`||o===`dataLabels`){let n=o===`series`?a:a.getParent(),i=o===`series`?n.getPoints():n.getPoints().map(e=>e.getDataLabel());for(let n of i){let i=e.getElementBounds(n,t);i&&r.push(i)}if(r.length>0)continue}let s=e.getElementBounds(a,t);if(s&&(r.push(s),n.getItems().length===1)){let e=[s.x,s.x+s.width/2,s.x+s.width],t=[s.y,s.y+s.height/2,s.y+s.height];for(let n of e)for(let r of t)n===e[1]&&r===t[1]||i.push({x:n,y:r})}}return{boxes:r,handles:i}})(w,e,h):y)},[w,h]);(0,d.useEffect)(()=>h?.addListeners({onChange:Q}),[h,Q]),(0,d.useLayoutEffect)(()=>{let e=G.current;if(!(q&&e&&w&&M&&N))return;let t=w.getLayout({width:M,height:N});if(z.current=t,!t)return K.current?.dispose(),K.current=null,e.style.backgroundColor=``,void Q();let n=t.chartArea.fill===void 0;e.style.backgroundColor=n?`var(--sxl-color-base-100, ${I?`#121212`:`#FFFFFF`})`:``,e.style.borderRadius=n?`${t.chartArea.cornerRadius}px`:``;let r={darkMode:I,background:`transparent`};K.current?K.current.update(t,r):K.current=q.mountChart(e,t,r),Q()},[q,w,M,N,re,I,Q]),(0,d.useEffect)(()=>()=>{K.current?.dispose(),K.current=null,z.current=null},[w]);let oe=(0,d.useCallback)(e=>{if(S?.(e),e.button!==0&&e.button!==2)return;let t=z.current,n=V(e.clientX,e.clientY);if(!w||!t||!n)return;let r=w.getElementAt(n,t);if(x?.({element:r,point:n,event:e}),!h)return;if(!r||r.getElementType()===`chartArea`)return void h.clear();let i=v(r,h.getActive());h.isSelected(i)&&h.getItems().length===1||h.select([i])},[w,h,x,S,V]);if(w?.isDeleted())return;let $=Y??E;return(0,f.jsxs)(`div`,{...C,onPointerDown:oe,style:{...p===void 0?{}:{width:p},...m===void 0?{}:{height:m},...i,overflow:`hidden`},ref:W,children:[$?(0,f.jsx)(`div`,{className:`chart-element-error`,style:{padding:`8px`,fontSize:`12px`,color:`var(--sxl-color-error, #b00020)`},children:$.message}):null,(0,f.jsx)(`div`,{className:`chart-element`,ref:G,style:{width:M||`100%`,height:N||`100%`,zoom:l,position:`relative`}}),Z.boxes.length>0?(0,f.jsxs)(`div`,{className:`chart-element-selection`,style:{position:`absolute`,left:0,top:0,width:M,height:N,zoom:l,pointerEvents:`none`},children:[Z.boxes.map((e,t)=>(0,f.jsx)(`div`,{style:{position:`absolute`,left:e.x-1,top:e.y-1,width:Math.max(0,e.width),height:Math.max(0,e.height),border:`1px solid var(--sxl-color-primary, #1a73e8)`,boxSizing:`content-box`}},`box-${t}`)),Z.handles.map((e,t)=>(0,f.jsx)(`div`,{style:{position:`absolute`,left:e.x-3,top:e.y-3,width:6,height:6,background:`var(--sxl-color-base-100, #fff)`,border:`1px solid var(--sxl-color-primary, #1a73e8)`,boxSizing:`border-box`}},`handle-${t}`))]}):null]})}));b.displayName=`ChartElement`;export{p as a,m as i,g as n,h as r,b 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"./BMf827t1Ul65MHd5.js";import{$r as s,Di as c,Fn as l,Gn as u,In as d,Jr as f,Ki as p,Ot as m,Qn as h,S as g,Si as _,Sn as v,Un as y,Ur as b,Ut as x,Z as S,Zi as C,ai as w,c as T,d as E,di as D,ea as O,ft as k,hi as A,jt as j,ka as M,kn as N,kr as P,mi as F,or as I,ra as L,rt as R,ui as z,ut as ee,vn as te,xr as B,yi as V,yn as H,z as U,zr as W}from"./dXn1GWWjYmuLb1HF.js";import{c as G,n as K,r as ne,s as q,t as re}from"./Djl40tfWoPJSvqtv.js";var J=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],Y=[31,29,31,30,31,30,31,31,30,31,30,31],X=(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+=Y[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=N(e.records,n.length);if(!n.some(v))return r;let i=N(e.items,n.length),a=e.recordCount??0,o=r.slice();for(let e=0;e<n.length;e++){let s=n[e];if(!v(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?X(c.range,c.items.length,p(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 Y.forEach((t,n)=>{for(let r=1;r<=t;r++)e.push(`${r}-${J[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:J.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 l=[];ce(n[e].formula,e=>{let t=n.findIndex(t=>c(t.name,e));return t>=0&&l.push(t),t>=0?``:null});for(let i of l)if(T(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},l=[];for(let[t,r]of(e.dataFields??[]).entries())if(T(n[r.field])){if(!s(r.field,[]))return null;l.push({data:t,formula:a.get(r.field)})}let u=(e,t)=>{if(t!==null)return null;let i=n.findIndex(t=>c(t.name,e));return i>=0?le(T(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),u);if(t===null)return null;e.expression=t}return{operands:r,formulas:i,measures:l}},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=m.peek(),a=e.fields,o=t.fields;if(!i||!a||!o||a.length!==o.length)return null;if(M(e))return{cells:[],...j,rowPageCount:0,columnPageCount:0,header:te(e),rowLines:[],columnLines:[],viewValues:[],firstKey:null,...r?.roles?{roles:new Map}:{}};let s=C(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 d=Ie(e,t,n,c?.calculatedRecords,u.operands);if(!d)return null;let{items:f,records:p,values:h,n:_}=d,y=e=>!!e&&(!e.noRecords||v(e)),b=e.form??`compact`,x=e=>{let t=[];for(let n of e??[]){if(n===Z){t.push({field:n,form:b});continue}let e=a[n],r=e?.subtotals;if(!e||!y(o[n])||l&&r&&r.some(e=>e!=="default"))return null;t.push({field:n,form:e.form??`compact`})}return t},S=x(e.rowFields),w=x(e.columnFields),T=e.pageFields??[];if(!S||!w||T.some(e=>!y(o[e.field])))return null;let E=g(e,r?.slicerFields);return E.pageFields?.some(e=>!y(o[e.field]))?null:We(e,t,f,S,w,Be(i,E,f,p,h,S,w,_,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=A(t);if(!t.records)return null;let s=ie(t,n.isDate1904());if(!s)return null;let c=!0===t.fields?.some(v),l=c?N(t.items,a):o,u=c?N(t.records,a):s,d=t.recordCount??0,f=r?.count??0,m=d+f,h=(e,n)=>{let r=!t.fields?.[e]?.noRecords,i=r?u[e]:s[e]??[],a=r?l[e]:o[e],c=Array(m);for(let e=0;e<d;e++)c[e]=p(a[i[e]]);for(let e=0;e<f;e++)c[d+e]=n?.[e]??null;return c},g=[...(e.dataFields??[]).map((e,t)=>h(e.field,r?.values[t])),...i.map(e=>h(e))];return{items:o,records:r?s.map((e,t)=>e.concat(r.ids[t]??[])):s,values:g,n:m}},Le=async(e,t,n,r,i,a,o,s,c)=>{let l=m.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 h=p.slice(0,p.indexOf(r)),g=e.fields.map(e=>{let{blankRowAfter:t,showItemsWithNoData:n,sort:r,...i}=e;return{...i,items:e.items?.map(e=>{if(!e.collapsed)return e;let{collapsed:t,...n}=e;return n})}}),{columnGrandTotals:_,...v}=e,{showDataAs:y,...b}=u,x={...v,fields:g,rowFields:[...h,r],columnFields:[],dataFields:[b],rowGrandTotals:!1},S=s&&{...s,values:[s.values[i]??[]]},C=fe(x,t);if(!C||C.measures.length>0&&!c)return null;let w=Ie(x,t,n,S,C.operands);if(!w)return null;let{items:T,records:E,values:D,n:O}=w,k=x.rowFields.map(e=>({field:e,form:`compact`})),A;if(o){let e=f===0?1:2;A=new Uint8Array(O);for(let t=0;t<O;t++){let n=o[t];A[t]=(n&e?1:0)|(n===3?2:0)}}let j=C.measures.length>0?await ze(l,C,x,T,E,D,k,[],O,a,A,c):void 0,M=Be(l,x,T,E,D,k,[],O,a,A,C.operands.length,j),N=(t,n)=>e.fields[t].items?.[n]?.item??n,P=new Map,F=M.columns.length;return M.rows.forEach((e,t)=>{if(e.kind!==xe||e.path.length!==h.length+1)return;let n=h.map((t,n)=>N(t,e.path[n])).join(`,`),i=P.get(n);i||P.set(n,i={ids:[],totals:[]}),i.ids.push(N(r,e.path[h.length])),i.totals.push(M.values[t*F])}),{outer:h,groups:P,records:E}},Re=(e,t,n)=>{let r=new Uint32Array(t).fill(me),i=new Uint8Array(t),a=e.items;if(a)a.forEach((e,n)=>{e.item===void 0||e.type!==void 0||e.item>=t||(r[e.item]=n,i[e.item]=+!!e.hidden|(e.collapsed?2:0))});else for(let e=0;e<t;e++)r[e]=e;if(n)for(let e=0;e<t;e++)n[e]||(i[e]|=1);return{ranks:r,flags:i}},ze=async(e,t,n,r,i,a,s,c,l,u,d,f)=>{let{request:p,errors:m}=Ve(e,n,r,i,a,s,c,l,u,d,t.operands.length),h=0,g=[];try{let r=p.operands(0,m.codeOf(o.BuiltIn.NA),m.codeOf(o.BuiltIn.Null));try{h=r.cell_count();let i=n.dataFields?.length??0;t.operands.forEach((t,n)=>{let a=r.values(i+n);try{let t=K(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=K(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 re;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++)G(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++)G(r,t,e[t],w,i)}return{request:m,errors:w}},He=(e,t)=>{let n=[],r=7+t;for(let t=0;t+r<=e.length;t+=r){let r=e[t+1],i=e[t+3],a=e[t+5];n.push({kind:e[t],path:Array.from(e.subarray(t+7,t+7+r)),data:i===be?null:i,function:a===be?null:a,across:e[t+6]===1})}return n},Ue=(e,t)=>{let n=[];return e.map(e=>{let r={items:[]};if(e.kind===xe){let t=0;for(;t<e.path.length-1&&t<n.length&&e.path[t]===n[t];)t++;t>0&&(r.repeat=t),r.items=e.path.slice(t),n=e.path}else r.type=e.kind===Se?e.function===null?`default`:t[e.function]:e.kind===Ce?`grand`:`blank`,r.items=e.kind===Ce?[0]:e.path.slice();return e.data!==null&&e.data>0&&(r.dataField=e.data),r})},We=(e,t,n,r,a,s,c,u,d)=>{let f=e.fields,m=t.fields,g=e.dataFields??[],v=t=>t===Z?e.valuesCaption??`Values`:f[t].name??m[t].name,y=(e,t)=>{if(e===Z)return g[t]?.name??``;let r=f[e].items?.[t];if(r?.name!==void 0)return r.name;let i=p(n[e][r?.item??t]);return i===null?S:i},x=(e,t)=>{let n=y(e,t);if(typeof n==`number`){let r=f[e].items?.[t]?.item??t,a=(f[e].numberFormat??m[e].numberFormat)===void 0&&h(m[e],r);return i(c,a?b(_(m[e],r),c):(e=>b(f[e].numberFormat??m[e].numberFormat,c))(e),n)}return o.isError(n)?n.getLabel():typeof n==`boolean`?n?`TRUE`:`FALSE`:String(n)},C=e=>{if(e.item!==void 0)return y(e.field,e.item);let t=f[e.field].items??[];if(!t.some(e=>e.hidden))return`(All)`;let n=t.flatMap((e,t)=>W(e)&&!e.hidden?[t]:[]);return n.length===1?y(e.field,n[0]):`(Multiple Items)`},w=e.grandTotalCaption??`Grand Total`,T=u?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},O=(e,t)=>e.kind===Ce&&t===w?{kind:`grandTotal`}:null,k=r.length===0&&a.length===0&&g.length===0,A=k?{firstHeaderRow:0,firstDataRow:0,firstDataCol:0}:te(e),j=k?[]:Ue(s.rows,s.functions),M=k?[]:Ue(s.columns,s.functions),N=l({...e,header:A,rowLines:j,columnLines:M}),P=s.columns.length,I=e=>e===`row`?r:a,L=t=>{switch(t.kind){case`pageCaption`:{let n=e.pageFields[t.page].field;return[v(n),{kind:`fieldCaption`,field:n}]}case`pageItem`:{let n=e.pageFields[t.page];return[C(n),{kind:`pageItem`,page:t.page}]}case`dataCaption`:return[g[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=I(t.axis)[t.level].field;return[v(e),D(e)]}case`label`:{let e=I(t.axis)[t.level].field,n=t.line.path[t.level];return[y(e,n),E(e,n)]}case`total`:{let e=(t.axis===`row`?s.rows:s.columns)[t.line.index],n=((e,t)=>{let n=e.findIndex(e=>e.field===Z)>=t.path.length&&t.data!==null,r=n?g[t.data]?.name??``:``;if(t.kind===Ce)return n?`Total ${r}`:w;let i=t.path.length-1,a=e[i].field,o=x(a,t.path[i]);if(t.function!==null){let e=Ae[s.functions[t.function]];return(n||t.across)&&t.data!==null?`${o} ${e} of ${v(g[t.data].field)}`:`${o} ${e}`}return f[a]?.subtotalCaption??(n?`${o} ${r}`:`${o} Total`)})(I(t.axis),e);return[n,O(e,n)]}case`value`:{let n=t.row.index*P+t.column.index,r=s.states[n],i=null;return r===Te?(i=s.values[n],e.showError&&o.isError(i)&&(i=e.errorCaption??``)):r===Ee&&(i=!1===e.showEmpty?0:(e=>{if(e===void 0)return null;let t=e.trim();if(!/^[+-]?\d*(?:\.\d*)?$/.test(t))return e;let n=Number(t.replace(/^([+-]?)\.?$/,`$10`));return Number.isFinite(n)?n+0:e})(e.emptyCaption)),[i,null]}}},R=new ee.Builder,z=N.top,B=N.pages.reduce((e,t)=>Math.max(e,t.column+2),0),V=(e,t)=>{let n=F(N,e,t);if(!n)return;let[r,i]=L(n);((e,t,n)=>{T&&n&&T.set(e+`,`+t,n)})(e-z,t,i),r!==null&&(d?R.pushAt(t,e-z,r):R.pushAt(e-z,t,r))};if(d){let e=Math.max(B,N.columns.length);for(let t=0;t<e;t++)for(let e=0;e<N.rows.length;e++)t<(e<z?B:N.columns.length)&&V(e,t)}else for(let e=0;e<N.rows.length;e++){let t=e<z?B:N.columns.length;for(let n=0;n<t;n++)V(e,n)}if(k){let t=U(e);return{cells:R.build()?.tuples??[],rows:1,columns:1,rowPageCount:t.rows,columnPageCount:t.columns,header:A,rowLines:[],columnLines:[],viewValues:[],firstKey:null,...T?{roles:T}:{}}}let H=(e,t)=>{let n=[];return e.forEach((e,r)=>{e.field!==Z&&n.push(r<t.path.length?t.path[r]:-1)}),n},G=(e,t)=>ne(e.data??t.data??0,[...H(r,e),...H(a,t)]),[K]=s.rows,[q]=s.columns,re=K&&q&&K.kind!==we&&q.kind!==we?G(K,q):null,J=[],Y=e=>e.kind===Se&&e.function!==null;s.rows.forEach((t,n)=>{t.kind===we||Y(t)||(H(r,t),s.columns.forEach((r,i)=>{let a=s.states[n*P+i];if(r.kind===we||Y(r)||a!==Te&&a!==Ee)return;let c=a===Te?s.values[n*P+i]:0;e.showError&&o.isError(c)&&(c=e.errorCaption||0),J.push([G(t,r),c])}))});let X=U(e);return{cells:R.build()?.tuples??[],rows:N.rows.length-z,columns:N.columns.length,rowPageCount:X.rows,columnPageCount:X.columns,header:A,rowLines:j,columnLines:M,viewValues:J,firstKey:re,...T?{roles:T}:{}}},Ge=(e,t,n,r,a=!1,s,c)=>{let l=Fe(e,t,r,{filters:s,slicerFields:c});if(!l)return null;let u=l.rowPageCount>0?l.rowPageCount+1:0,d=l.rowPageCount>0?3*l.columnPageCount-1:0,{rowStart:f,colStart:m}=n;if(f-u<0)return null;let g={rowStart:f-u,colStart:m,rowEnd:f+l.rows-1,colEnd:m+Math.max(l.columns,d)-1},y=e.fields,x=t.fields,S=A(t),C=(e,t)=>{let n=y[e],a=n.numberFormat??x[e].numberFormat,s=b(a,r),c=v(x[e]),l=S[e],u=(n.items??[]).filter(e=>e.item!==void 0&&e.type===void 0),d=u.length>0?u:l.map((e,t)=>({item:t})),f=d.map(t=>{let n=p(l[t.item]),u=h(x[e],t.item),d=n===null?`(blank)`:typeof n==`number`?i(r,u?(f=t.item,a===void 0?b(_(x[e],f),r):s):s,n):o.isError(n)?n.getLabel():typeof n==`boolean`?n?`TRUE`:`FALSE`:String(n);var f;let m=c&&u?d:n;return t.name===void 0?{value:m,text:d}:{value:m,text:d,name:t.name}}),m={name:n.name??x[e].name,items:f};if(t){let e=t.item===void 0?void 0:(n.items??[])[t.item]?.item;m.page=e===void 0?-1:d.findIndex(t=>t.item===e)}return m},w=e=>(e??[]).filter(e=>e!==-2);return{view:{range:g,dataFields:(e.dataFields??[]).map(e=>({name:e.name,sourceName:x[e.field].name})),fields:[...w(e.rowFields).map(e=>C(e)),...w(e.columnFields).map(e=>C(e)),...(e.pageFields??[]).map(e=>C(e.field,e))],values:l.viewValues,block:{anchor:{row:f,column:m},...a?{blocked:!0}:{},...l.firstKey===null?{}:{first:l.firstKey}}},size:{rows:l.rows,columns:l.columns}}},Ke=async(e,t,n,r)=>{let a=new Map,s=(e.filters??[]).filter(t=>L(t)||e.rowFields?.includes(t.field)||e.columnFields?.includes(t.field)),l=e.fields?.some(e=>e.items?.some(e=>e.calculated)),u=e.dataFields?.some(e=>T(t.fields?.[e.field]));if(s.length===0&&!l&&!u)return{keep:a};let f=A(t);for(let i of s.filter(L)){let o=i.field,s=f[o];if(!s)continue;let c=d(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]:p(s[e]);let u=await Je(i.condition,l,n,r),m=a.get(o);if(m)for(let e=0;e<u.length;e++)m[e]&=u[e];else a.set(o,u)}let g=l&&r?await(async(e,t,n,r,a)=>{let s=t.fields??[],l=e.fields??[],u=s.flatMap((e,t)=>e.calculatedItems?.length?[t]:[]),d=e.dataFields??[];if(u.length!==1||d.some(e=>T(s[e.field])||!pe.has(e.subtotal??`sum`)))return null;let f=u[0],m=s[f].calculatedItems,g=ie(t,n.isDate1904());if(!g)return null;let _=A(t),v=A({...t,fields:s.map(({group:e,...t})=>t)}),y=(e.rowFields??[]).filter(e=>e>=0),x=(e.columnFields??[]).filter(e=>e>=0),C=y.includes(f)?y:x.includes(f)?x:null;if(!C)return null;let E=C.slice(0,C.indexOf(f)),D=[...C.slice(C.indexOf(f)+1),...C===y?x:y],O=[...E,...D],k=t.recordCount??0,j=(e,t)=>{let n=l[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)},M=(e,t)=>{let n=l[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},N=e.pageFields??[],P=b(s[f].numberFormat??14,n),F=e=>_[f].findIndex((t,r)=>{let a=p(t);return typeof a==`number`&&(s[f].dates||h(s[f],r))?c(i(n,P,a),e):c(a===null?S:w(a),e)}),I=new Map,L=new Map(m.map(e=>[e.item,e.formula])),R=e=>{let t=I.get(e);return t===void 0&&I.set(e,t=I.size),t};for(let e of m)if(ce(e.formula,(e,t)=>{if(t===null||!c(s[f].name,e))return null;let n=F(t);return n<0?null:(L.has(n)||R(n),``)})===null)return null;let z=new Map,ee=new Map,te=d.map(e=>({column:g[e.field],values:v[e.field],fold:e.subtotal??`sum`})),B=I.size;for(let e=0;e<k;e++){if(!N.every(t=>M(t,g[t.field][e]))||!O.every(t=>j(t,g[t][e])))continue;let t=``;for(let n of E)t+=g[n][e]+`,`;ee.has(t)||ee.set(t,e);let n=I.get(g[f][e]);if(n===void 0)continue;let r=t;for(let t of D)r+=g[t][e]+`,`;let i=z.get(r);i||(i={sums:d.map(()=>Array(B).fill(0)),errors:d.map(()=>Array(B).fill(void 0))},z.set(r,i));let{sums:a,errors:s}=i;te.forEach(({column:t,values:r,fold:i},c)=>{let l=p(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 V=D.map(e=>{let t=l[e]?.items;return t?t.flatMap(t=>t.item!==void 0&&t.type===void 0&&!t.missing&&j(e,t.item)?[t.item]:[]):_[e].map((e,t)=>t)});if(V.reduce((e,t)=>e*t.length,ee.size)>5e5)return null;let H=[];for(let[e,t]of ee){let n=(e,r,i)=>{if(e!==V.length)for(let t of V[e])n(e+1,[...r,t],i+t+`,`);else H.push({exemplar:t,path:r,key:i})};n(0,[],e)}let U=H.length;if(U===0)return{count:0,ids:s.map(()=>[]),values:d.map(()=>[])};let W=d.length*B,G=(e,t)=>e*B+t,K=(e,t)=>W+e*m.length+t,ne=[];for(let e=0;e<d.length;e++)for(let t=0;t<B;t++)ne.push(H.map(({key:n})=>{let r=z.get(n);return r?r.errors[e][t]??r.sums[e][t]:0}));let q=[];for(let e=0;e<d.length;e++)for(let t=0;t<m.length;t++){let n=ce(m[t].formula,(t,n)=>{if(n===null)return null;let r=F(n),i=m.findIndex(e=>e.item===r);return le(i>=0?K(e,i):G(e,I.get(r)))});if(n===null)return null;q.push({expression:n,coords:ue(K(e,t),U)})}let re=await r.evaluateBatch({values:de(ne,U),formulas:q}),J=s.map(()=>[]),Y=d.map(()=>[]),X=(e,t,n,r)=>{g.forEach((n,r)=>{let i=D.indexOf(r);J[r].push(r===f?t:i>=0?e.path[i]:n[e.exemplar]??0)}),Y.forEach((e,t)=>{e.push(t===n?r:null)})};return H.forEach((e,t)=>{m.forEach(({item:n},r)=>{d.forEach((i,a)=>{let o=re[a*m.length+r].getValueAt(t,0)??0;if((i.subtotal??`sum`)!==`sum`&&typeof o==`number`)for(let t=0;t<Math.round(o);t++)X(e,n,a,1);else X(e,n,a,o)})})}),{count:J[0]?.length??0,ids:J,values:Y}})(e,t,n,r,a):void 0,_=s.filter(e=>!L(e)).map((e,t)=>({filter:e,index:t})).sort((e,t)=>(e.filter.evalOrder??-1)-(t.filter.evalOrder??-1)||e.index-t.index),v=(t.recordCount??0)+(g?.count??0),y,x=e.rowFields??[];for(let{filter:i}of _){let o=await Le(e,t,n,i.field,i.dataField,a,y,g,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(v).fill(3);let c=o.outer.map(e=>o.records[e]),l=o.records[i.field],u=x.includes(i.field)?1:2;for(let e=0;e<v;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 C=u&&r?await(async(e,t,n,r,i,a,o)=>{let s=m.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,g):void 0;return{keep:a,...y?{records:y}:{},...g?{calculatedRecords:g}:{},...C?{fieldValues:C}:{}}},qe=(e,t)=>{let n=e.filters;if(!n)return e;let r=!1,i=n.map(e=>{let n=e.condition&&O(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 H;for(let e=0;e<i;e++)t[e]!==null&&o.setValueAt(e,0,t[e]);let s=!1;return await V({conditions:[e],runtime:n,calculation:r??null,values:o,coords:{rowStart:0,rowEnd:i-1,colStart:0,colEnd:0},onTrue:e=>{s=!0,a[e.rowIndex]=1},onFalse:()=>{s=!0},onBlank:e=>{s=!0;for(let n=0;n<i;n++)t[n]===null&&e(n,0)&&(a[n]=1)}}),s||a.fill(1),a},Ye=(e,t,n,r,a)=>{let s=e.fields?.[r],c=new Map;for(let e of s?.items??[])e.item!==void 0&&e.type===void 0&&e.name!==void 0&&c.set(e.item,e.name);let l=s?.numberFormat??t.fields?.[r]?.numberFormat,u=b(l,a),d=e=>l===void 0?b(_(t.fields?.[r],e),a):u,f=Array(n.length);for(let e=0;e<n.length;e++){let s=c.get(e);if(s!==void 0){f[e]=s;continue}let l=p(n[e]);l===null?f[e]=S:typeof l==`number`?f[e]=i(a,h(t.fields?.[r],e)?d(e):u,l):typeof l==`boolean`?f[e]=l?`TRUE`:`FALSE`:o.isError(l)?f[e]=l.getLabel():f[e]=String(l)}return f},Xe=e=>{let t=e.getCoords(),n=t.colEnd-t.colStart+1,r=t.rowEnd-t.rowStart,i=e.getWorksheet(),a=i.getRange({rowStart:t.rowStart,rowEnd:t.rowStart,colStart:t.colStart,colEnd:t.colEnd}).getValues()[0]??[],o=[];for(let e=0;e<n;e++){let n=a[e]??null,s=new q,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:`:``)+D(p(e)),rt=(e,t,n,r=!1)=>{let i=e.fields??[],a=N(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 l=t.recordCount,u=i.map(()=>-1),d=i.map((e,t)=>a[t].map(()=>-1)),f=[],m=[],g=[],_=[],y=[],b=[],x=[],S=(e,t,n)=>{_[t]=n.items,b[t]=n.items.length,x[t]=!0,d[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()),u[n]=t);let C=new Int32Array(e.values.length).fill(-1),w=[],T=[],E=Array(l);for(let t=0;t<l;t++){let n=e.ids[t],r=C[n];r<0&&(r=C[n]=w.length,w.push(tt(e.values[n])),T.push(e.dates||!!e.dateIds?.has(n))),E[t]=r}let D=e=>n!==void 0&&(!!i[n].dates||h(i[n],e)),O=w.length,k=n===void 0?w.every(e=>typeof e==`number`||typeof e==`object`&&e?.t===`z`):!0===i[n].inline,A=[];if(n!==void 0&&k){let e=new Map;for(let t=0;t<O;t++)e.set(nt(w[t],T[t]),t);a[n].forEach((t,r)=>{d[n][r]=e.get(nt(t,D(r)))??-1})}else if(n!==void 0){let e=new Map;for(let t=0;t<O;t++)e.set(nt(w[t],T[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,D(i)),s=e.get(a);s!==void 0||o||D(i)||(s=w.length,w.push(r),T.push(D(i)),A.push(s),e.set(a,s)),d[n][i]=s??-1})}let j={name:s[t]};k&&(j.inline=!0),e.numberFormat!==void 0&&(j.numberFormat=e.numberFormat);let M=[],N=!1;w.forEach((e,t)=>{typeof e==`number`&&(T[t]?M.push(t):N=!0)}),M.length>0&&!N?j.dates=!0:M.length>0&&(j.dateItems=M),y[t]=j.dateItems?new Set(j.dateItems):void 0,A.length>0&&(j.unused=A);let P=n===void 0?void 0:i[n].rest;P&&(j.rest=P);let F=n===void 0?void 0:i[n].calculatedItems;F?.length&&(j.calculatedItems=F.map(({item:e,formula:t})=>{let r=w.length;return w.push(a[n][e]),d[n][e]=r,{item:r,formula:t}})),f.push(j),m.push([t,[[0,w]]]),g.push([t,[[0,E]]]),_.push(w),b.push(O),x.push(!1);let I=n===void 0?void 0:i[n].group;if(I?.range&&I.base===n){let e=se(I,w.slice(0,O).map(p),r);e?(j.group={...e,base:t},S(n,t,e)):d[n]=a[n].map(()=>-1)}else I&&!v(i[n])&&(j.group=I)}),i.forEach((e,t)=>{if(!e.noRecords)return;if(T(e))return u[t]=f.length,f.push(e),_.push([]),b.push(0),void x.push(!1);let n=e.group;if(!n)return;let i=u[n.base];if(i===void 0||i<0)return;let a=_[i],o,s=[];if(n.range)o=se(n,a.slice(0,b[i]).map(p),r);else{let e=it(n,d[n.base],a,f[i]);o=e.group,s=e.itemMap}if(!o)return;let c=f.length;u[t]=c,f.push({...e,group:{...o,base:i}}),_.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):d[t]=s}),f.forEach((e,t)=>{let n=e.group;if(n?.parent===void 0)return;let r=u[n.parent],{parent:i,...a}=n;r!==void 0&&r>=0?e.group={...n,parent:r}:v(e)?e.group=a:delete e.group,e.group&&!v(e)&&(e.group={...e.group,base:t})});let{cacheId:C,part:w,partFormats:E,fields:D,items:O,records:k,...A}=e;return{model:{...A,source:n??e.source,fields:f,items:m,records:g,recordCount:l},remap:{fields:u,items:d,newItems:_,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),l=e.items.map((e,t)=>i.has(t)?(c.has(t)&&s.push(o.length),o.push(e),o.length-1):-1),u=a.map((e,t)=>e>=0?l[e]:((r.dates||h(r,t))&&s.push(o.length),o.push(n[t]),o.length-1)),{dateItems:d,...f}=e;return{group:{...f,items:o,discrete:u,...s.length>0?{dateItems:s}:{}},itemMap:l}},at=(e,t,n=!1,r=!1)=>{let i=(e,t)=>e===null?5:typeof e==`number`?t?3:0:typeof e==`string`?1:typeof e==`boolean`?2:4,a=i(e,n),o=i(t,r);return a===o?a===0||a===3?e-t:a===1?e.localeCompare(t,void 0,{sensitivity:`base`}):a===2?Number(e)-Number(t):a===4?e.getCode()-t.getCode():0:a-o},ot=(e,t)=>{let n=e.fields??[],r=t.newItems.length,i=e=>e<0?e:t.fields[e]??-1,a=e=>e<0||i(e)>=0,o=e.dataFields??[],s=[],c=[];o.forEach(e=>{if(!a(e.field))return void s.push(-1);s.push(c.length);let t={...e,field:i(e.field)};e.baseField!==void 0&&(a(e.baseField)?t.baseField=i(e.baseField):delete t.baseField),c.push(t)});let l=n.map(()=>null),u=[];for(let e=0;e<r;e++)u.push({});n.forEach((e,n)=>{let r=i(n);if(r<0)return;let a={...e};if(e.sort?.dataField!==void 0){let t=s[e.sort.dataField];a.sort=t>=0?{...e.sort,dataField:t}:{order:e.sort.order}}if(e.items){let{items:i,positions:o}=st(e,t.items[n],t.newItems[r],t.usedCounts[r],t.inItemOrder[r],t.dateItems[r]);a.items=i,l[n]=o}u[r]=a}),n.forEach((e,t)=>{let n=e.sort?.scope,r=i(t);if(!n||r<0||u[r].sort?.scope===void 0)return;let a=n.items.map(e=>({field:i(e.field),item:l[e.field]?.[e.item]??-1}));a.some(e=>e.field<0||e.item<0)?delete u[r].sort:u[r].sort={...u[r].sort,scope:{...n,items:a}}});let d=e=>{if(!e)return;let t=e.filter(a).map(i);return c.length<2&&(t=t.filter(e=>e!==-2)),t.length>0?t:void 0},f={...e,fields:u};Q(f,`rowFields`,d(e.rowFields)),Q(f,`columnFields`,d(e.columnFields)),Q(f,`dataFields`,c.length>0?c:void 0),o.forEach((e,t)=>{let n=s[t];if(n<0||e.baseField===void 0||typeof e.baseItem!=`number`)return;let r=l[e.baseField]?.[e.baseItem];r!==void 0&&r>=0&&(c[n].baseItem=r)});let p=(e.pageFields??[]).flatMap(e=>{if(!a(e.field))return[];let t={field:i(e.field)};if(e.item!==void 0){let n=lt(u[t.field].items??[],l[e.field]?.[e.item]??-1);n!==void 0&&(t.item=n)}return[t]});Q(f,`pageFields`,p.length>0?p:void 0);let m=(e.filters??[]).flatMap(e=>{if(!a(e.field))return[];let t={...e,field:i(e.field)};if(e.dataField!==void 0){let n=s[e.dataField];if(n===void 0||n<0)return[];t.dataField=n}return[t]});Q(f,`filters`,m.length>0?m:void 0);let h=e=>ut(e,i,a,l,s),g=(e.formats??[]).flatMap(e=>{let t=h(e.area);return t?[{...e,area:t}]:[]});Q(f,`formats`,g.length>0?g:void 0);let _=(e.conditionalFormats??[]).flatMap(e=>{let t=e.areas.flatMap(e=>{let t=h(e);return t?[t]:[]});return t.length>0?[{...e,areas:t}]:[]});return Q(f,`conditionalFormats`,_.length>0?_:void 0),f},Q=(e,t,n)=>{n===void 0?delete e[t]:e[t]=n},st=(e,t,n,r,i=!1,a)=>{let o=e.items??[],s=[],c=[],l=new Set;for(let e of o){if(!W(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=>!W(e.item)),a=[...[...r.filter(e=>W(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),p(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=>W(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=>!W(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(W(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=A(t)[n]??[],o=t.fields?.[n],s=o?.group?.range!==void 0,c=e=>e.name===void 0&&h(o,e.item),l=i.map((e,t)=>({item:e,at:t})),u=l.filter(e=>W(e.item));u.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`&&u.reverse();let d=0,f=dt(e,n,l.map(e=>W(e.item)?u[d++]:e).map(e=>e.at));return{...f,fields:f.fields.map((e,t)=>t===n?{...e,sort:{order:r}}:e)}},pt=(n,r,i)=>{let a=n.fields?.[r]?.items?.[i];if(!a||!W(a))throw new e(t(`error.pivotTable.changePart`));return a},mt=(n,r,i,a,o)=>{let s=pt(n,i,a),l=n.fields[i].items,u=A(r)[i]??[],d=e=>{let t=p(u[e.item]);return t===null?S:w(t)};if(l.some((e,t)=>t!==a&&W(e)&&c(e.name??d(e),o)))throw new e(t(`error.pivotTable.itemNameExists`,{name:o}));let{name:f,...m}=s,h=o===d(s)?m:{...s,name:o};if(h.name===s.name)return n;let g={...n,fields:n.fields.map((e,t)=>t===i?{...e,items:l.map((e,t)=>t===a?h:e)}:e)},_=n.fields[i].sort;return _&&_.dataField===void 0?ft(g,r,i,_.order):g},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=w(a),s=n.fields,l=r.fields,u=n.dataFields??[],d=A(r),m=(e,t)=>{if(t.name!==void 0)return t.name;let n=p(d[e][t.item]);return n===null?S:w(n)},h=i=>{if(i.field!==void 0&&o===(s[i.field].name??l[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(f(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&&W(n)&&c(m(e,n),o));return a>=0?ht(n,e,a,t):mt(n,r,e,t,o)}case`fieldCaption`:{let{field:e}=i;return h({field:e}),((e,t)=>({...n,fields:s.map((n,r)=>r===e?t(n):n)}))(e,t=>{let{name:n,...r}=t;return o===l[e].name?r:{...t,name:o}})}case`dataCaption`:{let{data:e}=i;return h({data:e}),{...n,dataFields:u.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],l;if(!c(o,`(All)`)&&(l=(s[a.field].items??[]).findIndex(e=>W(e)&&c(m(a.field,e),o)),l<0))throw new e(t(`error.pivotTable.notAnItem`,{name:o}));let{item:u,...d}=a,f=l===void 0?d:{...a,item:l};return{...n,pageFields:r.map((e,t)=>t===i.page?f:e)}}}},_t=(e,t,n)=>rt({cacheId:0,fields:[]},e,t,n).model,vt=(e,t)=>t.some(t=>e.fields?.[t]?.inline)?{...e,fields:e.fields.map((e,n)=>{if(!e.inline||!t.includes(n))return e;let{inline:r,...i}=e;return i})}:e,yt=e=>[...e.rowFields??[],...e.columnFields??[],...(e.pageFields??[]).map(e=>e.field)].filter(e=>e>=0),bt=(e,t)=>{let n=e.fields[t],r=A(e)[t],i=r.map((e,t)=>t);v(n)||i.sort((e,t)=>at(p(r[e]),p(r[t]),h(n,e),h(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)=>I(e,t)===`number`?`sum`:`count`)(r.fields[i],A(r)[i]),s=E[o];if(!s)throw new e(t(`error.pivotTable.notAFunction`,{name:o}));let c=a?.name;if(c===void 0)c=f(n,r,`${s} of ${z(n,r,i)}`);else if(f(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=>c(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 l=e=>[...o].filter(([,t])=>t===e).map(([e])=>e),u=[];for(let e of r?.values??[]){let{field:t,...r}=typeof e==`string`?{field:e}:e;u.push(St({dataFields:u},n,a(t),r))}let d=new Set(u.map(e=>e.field)),f=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)),d.has(t)&&(r.dataField=!0),f&&(r.form=f),e.dates&&e.numberFormat!==void 0&&(r.numberFormat=e.numberFormat),r}),m=l(`column`);u.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=l(`row`);g.length>0&&(h.rowFields=g),m.length>0&&(h.columnFields=m);let _=l(`page`);return _.length>0&&(h.pageFields=_.map(e=>({field:e}))),u.length>0&&(h.dataFields=u),f&&(h.form=f),h},wt=(e,t)=>t.map(t=>{let n=t.sort?.scope;if(!n)return t;let r=((t.axis===R.Axis.Row?e.columnFields:t.axis===R.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=R.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?x(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||x(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),b=a===s.Column?u:_(n.columnFields),S=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),b.length>0&&(g.columnFields=b),S.length>0&&(g.pageFields=S);let C={...h,...g};a===s.Page&&l!==s.Page&&(C=B(C,i,()=>!0));let w={...n.fields?.[i]};a?w.axis=a:delete w.axis,a&&!w.items&&c&&(w.items=y(bt(r,i),w.subtotals)),a&&w.numberFormat===void 0&&c?.dates&&c.numberFormat!==void 0&&(w.numberFormat=c.numberFormat),a===s.Page&&w.items?.some(e=>e.hidden)&&(w.multipleItemSelection=!0);let T=(n.fields??[]).map((e,t)=>t===i?w:e);if(C={...C,fields:wt(C,T)},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}=C;C=e.length>0?{...r,formats:e}:r}return C},$=-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=>s(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=k(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`,l=a?.kind??`normal`;if(a&&!Ot.has(a.kind))throw new e(t(`error.pivotTable.notAShowAs`,{name:a.kind}));let{showDataAs:d,baseField:f,baseItem:p,...m}=o,h={...m};l!==`normal`&&(h.showDataAs=l);let g=o.baseField,_=o.baseItem;if(a?.baseField!==void 0){let i=a.baseField,o=(r.fields??[]).findIndex((e,t)=>c(z(n,r,t),i));if(o<0)throw new e(t(`error.pivotTable.notAField`,{name:i}));o!==g&&(g=o,_=0)}if(a?.baseItem!==void 0){let i=g??0;if(c(a.baseItem,`(previous)`))_=`previous`;else if(c(a.baseItem,`(next)`))_=`next`;else{let o=n.fields?.[i]?.items?n:{fields:(n.fields??[]).map((e,t)=>t===i?{...e,items:bt(r,i)}:e)},s=u(o,r,i).findIndex(e=>e!==null&&c(e,a.baseItem));if(s<0)throw new e(t(`error.pivotTable.notAnItem`,{name:a.baseItem}));_=s}}if(g!==void 0&&(h.baseField=g),_!==void 0&&(h.baseItem=_),l===s)return h.baseField===o.baseField&&h.baseItem===o.baseItem?n:Mt(n,i,()=>h);let v=kt(o.numberFormat,s,l);return v===o.numberFormat?Mt(n,i,()=>h):Mt(jt(n,i),i,()=>Nt(h,v))},Bt=(e,t,n)=>{xt(n);let r=s(n),i=e.dataFields[t],a=e.formats?.[e.formats.length-1];if(s(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=R.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=x(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||x(n,r)[c]===$))return n;s.splice(c,0,$);let{rowFields:l,columnFields:u,valuesOnRows:d,...f}=n,p=x(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(f(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,L 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
|
-
export{r as t}from"./C71ZZMVLfHdPl441.js";
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./D6CzedWHXTesD55R.js","./CnXLpFE_vFrJ5Jbf.js","./DgtqX4DiBgkepVZZ.js","./ChSvXfVMLxZsP9zG.js","./HclGiUj8dZXDFmoM.js","./BMf827t1Ul65MHd5.js","./DtihumgXQ7ETaN0A.js","./CnPgk3HcIziOcskY.js","./3Ls_kOvlQseMV8Q0.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{t as e}from"./HclGiUj8dZXDFmoM.js";import{C as t,F as n,I as r,O as i,Z as a,_ as o,d as s,f as c,g as l,k as u,m as d,o as f,r as p,t as m,u as h,w as g,y as _}from"./ChSvXfVMLxZsP9zG.js";import{t as v}from"./3Ls_kOvlQseMV8Q0.js";import{c as y,i as b,s as x}from"./DcrVJCyDwGKeil2U.js";import{D as S,Dt as C,G as w,K as T,Kt as ee,Ut as te,W as E,Yt as D,d as ne,et as re,ht as O,k as ie,m as ae,rn as oe,rt as se,t as ce,v as le,xt as ue,yt as de}from"./DuYb_otrRZZDq6-f.js";import{i as k,t as A}from"./BMf827t1Ul65MHd5.js";import{$i as fe,$t as pe,Aa as me,Ar as he,Bt as ge,Dn as _e,Ei as ve,En as ye,Er as be,Fi as j,G as xe,Gi as Se,Gt as Ce,H as M,Hn as we,Ht as N,It as Te,K as Ee,L as P,Li as De,Ln as Oe,Mr as ke,Oi as Ae,Or as je,Pn as Me,Rt as Ne,St as Pe,Ta as Fe,Tn as Ie,Ui as F,V as Le,Vi as Re,Yi as ze,_i as Be,an as Ve,ar as I,b as He,ba as Ue,bi as We,br as L,cn as Ge,ct as Ke,di as qe,dt as Je,et as Ye,gn as Xe,ha as Ze,ji as R,jr as Qe,k as $e,ki as z,lt as et,mn as tt,ot as nt,pa as rt,qr as it,r as at,sa as ot,tt as st,u as ct,un as lt,vi as B,vr as ut,wa as dt,wn as ft,xn as pt,xt as mt,zt as ht}from"./dXn1GWWjYmuLb1HF.js";var gt,_t=class extends u{constructor(e,t=50){super(t),this._transactions=e,this._floorId=e?e.getCurrentCommit(!1).getId():null,this._removeListener=e?.addListener({onCommitChange:()=>this._notifyOnStackChange()})}_undoCommits(e=this.maxStack){let t=this._transactions;if(!t)return[];let n=t.getLog(t.getCurrentCommit(!1).getId(),2**53-1),r=[];for(let t=0;t<n.length&&r.length<e;t++){let e=n[t];if(e.getId()===this._floorId||t===n.length-1)break;e.getDescription()&&r.push(e)}return r}_redoCommits(e=this.maxStack){let t=this._transactions;if(!t)return[];let n=t.getCurrentCommit(!1).getId(),r=t.getTipCommit().getId();if(r===n)return[];let i=t.getLog(r,2**53-1),a=[],o=!1;for(let e of i){if(e.getId()===n){o=!0;break}a.push(e)}if(!o)return[];a.reverse();let s=[];for(let t of a)if(t.getDescription()&&s.push(t),s.length>=e)break;return s}undo(e=1){let t=this._transactions;if(!t)return;let n=!1;try{for(let r=0;r<e;r++){let[e]=this._undoCommits(1);if(!e)break;t.revert(e.getId()),n=!0}}finally{n&&this._notifyOnStackChange()}}redo(e=1){let t=this._transactions;if(!t)return;let n=!1;try{for(let r=0;r<e;r++){let[e]=this._redoCommits(1);if(!e){r===0&&this._repeatOperation?.repeat();break}t.restore(e.getId()),n=!0}}finally{n&&this._notifyOnStackChange()}}hasUndo(){return this._undoCommits(1).length>0}hasRedo(){return this._redoCommits(1).length>0||this._repeatOperation!==null}getTopUndoDescription(){return this._undoCommits(1)[0]?.getDescription()??null}getTopRedoDescription(){return this._repeatOperation===null?this._redoCommits(1)[0]?.getDescription()??null:this._repeatOperation.description}getUndoDescriptions(){return this._undoCommits().map(e=>e.getDescription())}getRedoDescriptions(){let e=this._redoCommits().map(e=>e.getDescription());return e.length===0&&this._repeatOperation!==null&&e.push(this._repeatOperation.description),Object.freeze(e)}getUndoEntries(){return this._undoCommits().map(yt)}getRedoEntries(){let e=this._redoCommits().map(yt);return e.length===0&&this._repeatOperation!==null&&e.push({description:this._repeatOperation.description,author:null,meta:vt}),Object.freeze(e)}addUndoOperation(){throw Error(`TransactionUndoManager derives its stack from the commit log; commit a described transaction instead.`)}clear(e=!0){this._transactions&&(this._floorId=this._transactions.getCurrentCommit(!1).getId()),super.clear(e)}close(){this._removeListener?.()}},vt=Object.freeze({}),yt=e=>({description:e.getDescription(),author:e.getAuthor(),meta:e.getMeta()??vt});gt||={};var bt,V=class e{constructor(t,n={}){this._password=null,this._emitter=new b(this),this._path=t??null,this._name=n.name??null,this._format=n.format??null,this._size=n.size??null,this._lastModified=n.lastModified??null,this._canWrite=n.canWrite??e._defaultCanWrite(this._path),this._encryption=n.encryption??null}static _defaultCanWrite(e){return!!e&&!/^(https?:|data:|blob:)/i.test(e)}_cleanPath(){return this._path?this._path.split(/[?#]/)[0]:null}getName(){if(this._name!==null&&this._name!==void 0)return this._name;let e=this._cleanPath();return e&&F(e)||null}getPath(){return this._path}getFormat(){return this._format?this._format:this.getExtension()}getExtension(){let e=this._cleanPath();if(!e)return null;let t=B(e);return t?t.toLowerCase():null}getEncryption(){return this._encryption}isEncrypted(){return this._encryption!==null||this._password!==null}setPassword(e){this._password!==(e??null)&&(this._password=e??null,this._password===null&&(this._encryption=null),this._emitter.notify(`onChange`))}getPassword(){return this._password}getSize(){return this._size}getLastModified(){return this._lastModified}canWrite(){return this._canWrite}setName(e){this.update({name:e})}update(e){let t=!1;return e.lastModified!==void 0&&e.lastModified!==this._lastModified&&(this._lastModified=e.lastModified,t=!0),e.name!==void 0&&e.name!==this._name&&(this._name=e.name,t=!0),e.format!==void 0&&e.format!==this._format&&(this._format=e.format,t=!0),e.size!==void 0&&e.size!==this._size&&(this._size=e.size,t=!0),e.canWrite!==void 0&&e.canWrite!==this._canWrite&&(this._canWrite=e.canWrite,t=!0),e.encryption!==void 0&&e.encryption!==this._encryption&&(this._encryption=e.encryption,t=!0),t&&this._emitter.notify(`onChange`),this}addListeners(e,t){return this._emitter.addListeners(e,t)}get[Symbol.toStringTag](){return`[Origin]`}toString(){let e=this._cleanPath(),t=e?e.split(/[/\\]/).pop()||e:this._name??`(unbound)`,n=this._size;if(n==null)return t;if(n<1024)return`${t} ${n}B`;let r=Math.floor(Math.log(n)/Math.log(1024)),i=[`B`,`KB`,`MB`,`GB`,`TB`];return`${t} ${(n/1024**r).toFixed(2)}${i[Math.min(r,i.length-1)]}`}},H=new WeakMap,U=new Set,xt=e=>H.get(e)??null,St=()=>Array.from(U,e=>e.getOrigin()),Ct=class e{constructor(t){this._released=!1,e._assertFree(t),this._emitter=new b(this),this._origin=t,H.set(t,this),U.add(this)}getOrigin(){return this._origin}setOrigin(t){t!==this._origin&&(e._assertFree(t),this._released||(H.delete(this._origin),H.set(t,this)),this._origin=t,this._emitter.notify(`onOriginChange`))}release(){this._released||(this._released=!0,H.get(this._origin)===this&&H.delete(this._origin),U.delete(this))}addListeners(e,t){return this._emitter.addListeners(e,t)}static _assertFree(e){if(H.has(e))throw Error(`This origin already backs an open workbook; an origin backs one workbook at a time.`)}},wt=class{constructor(){this._defaultStringSourceType=`filepath`}async read(e){let t=e.options??{},r=e.source;if(typeof r==`function`&&(r=r()),r&&typeof r==`object`&&typeof r.then==`function`&&(r=await Promise.resolve(r)),r==null&&(r=await this.resolveSource(e),r==null))return null;let i=r,a=await this.fileFromHandle(r);a&&(r=a);let o=t.format,s=this._detectSourceType(r);if(!s)throw Error(`Unable to detect source type from provided input.`);let c,l,u=!1;if(s===`filepath`){let e=typeof r==`string`&&r.startsWith(`file://`)?r.slice(7):r;r=await this.filePathToFile(e),s=`file`,u=!0}switch(s){case`file`:{let e=r,n=e?.name,i=n?`${F(n)}`:``;c=await e.arrayBuffer(),l={format:o,ext:B(n),name:i,absolutePath:n,size:e.size,lastModified:e.lastModified,canWrite:!t.asCopy&&(!!a||u&&this._canWriteLocalPath())};break}case`blob`:{let e=r;c=await e.arrayBuffer(),l={format:o,size:e.size};break}case`base64`:{let e;if(r&&typeof r==`object`&&`base64`in r)e=r.base64;else if(typeof r==`string`&&r.startsWith(`data:`)){let[,t]=r.split(`,`);e=t}else e=r;c=n.base64ToArrayBuffer(e),l={format:o,size:e.length};break}case`fetch`:{let e,t,n;if(typeof r==`string`)e=r;else{if(!r||typeof r!=`object`||!(`input`in r))throw Error(`Invalid fetch source provided.`);{let i=r;e=i.input,t=i.init,n=i.timeout}}let i=n||3e4,a=new AbortController,s=setTimeout(()=>a.abort(),i),u=typeof e==`string`?e:e.toString(),d=B(u);try{let n=await fetch(e,{...t,signal:a.signal});if(clearTimeout(s),!n.ok)throw Error(`Failed to fetch: ${n.status} ${n.statusText}`);let r=await n.arrayBuffer();if(!r)throw Error(`Unable to fetched content: ${u}`);c=r,l={format:o,ext:d,name:F(u,!0),absolutePath:u}}catch(e){throw clearTimeout(s),e.name===`AbortError`?Error(`Fetch timeout after ${i}ms: ${u}`):e}break}case`buffer`:c=r,l={format:o};break;case`stream`:{let e=r.getReader(),t=[],n=0;try{for(;;){let{done:r,value:i}=await e.read();if(r)break;t.push(i),n+=i.length}}finally{e.releaseLock()}let i=new ArrayBuffer(n),a=new Uint8Array(i),s=0;for(let e of t)a.set(e,s),s+=e.length;c=i,l={format:o};break}default:throw Error(`Unsupported source type: ${s}`)}l.canWrite&&await this.findOpenOrigin(i,l)&&(l.canWrite=!1);let d=await e.decode(c,{sourceType:s,...l});return d?(await this.onWorkbookRead(d,i),d):null}async findOpenOrigin(e,t){return t.absolutePath?this.findOpenPath(t.absolutePath):null}findOpenPath(e,t){return St().find(n=>{if(n===t||!n.canWrite())return!1;let r=n.getPath();return!!r&&this.isSamePath(r,e)})??null}isSamePath(e,t){return e===t}async fileFromHandle(e){return null}async resolveSource(e){return null}async onWorkbookRead(e,t){}_canWriteLocalPath(){return!1}_detectSourceType(e){if(e&&typeof e==`object`&&`base64`in e)return`base64`;if(e&&typeof e==`object`&&`input`in e)return`fetch`;if(typeof e==`string`){if(e.startsWith(`data:`))return`base64`;if(e.startsWith(`http://`)||e.startsWith(`https://`))return`fetch`;if(e.startsWith(`file://`))return`filepath`;let t=this._defaultStringSourceType;return e.startsWith(`./`)||e.startsWith(`../`)||e.startsWith(`/`)||/^[a-zA-Z]:[/\\]/.test(e),t}if(typeof File<`u`&&e instanceof File)return`file`;if(typeof Blob<`u`&&e instanceof Blob)return`blob`;let t=e instanceof ArrayBuffer||Object.prototype.toString.call(e)===`[object ArrayBuffer]`,r=ArrayBuffer.isView(e),i=n.isNodeBuffer(e);return t||r||i?`buffer`:typeof ReadableStream<`u`&&e instanceof ReadableStream||Object.prototype.toString.call(e)===`[object ReadableStream]`||e&&typeof e.getReader==`function`&&e.locked!==void 0?`stream`:null}},Tt=class extends wt{constructor(e,t){super(),this._getWriteFormats=e,this._getReadFormats=t,this._defaultStringSourceType=`fetch`,this._handleCache=new WeakMap}async fileFromHandle(e){return W(e)?e.getFile():null}async resolveSource(){let e=await this._getReadFormats?.()??[];if(typeof globalThis.showOpenFilePicker==`function`)try{let t=function(e){let t=Et(e);if(t.length<=1)return t;let n=new Set,r={};for(let e of t)for(let[t,i]of Object.entries(e.accept))for(let e of i)n.has(e)||(n.add(e),(r[t]??=[]).push(e));return[{description:`All Supported`,accept:r},...t]}(e),[n]=await globalThis.showOpenFilePicker(t.length?{types:t}:void 0);return n}catch(e){if(e?.name===`AbortError`)return null;throw e}let n=e.flatMap(e=>e.exts.map(e=>`.`+e)).join(`, `);return t.openFileDialog(n)}async findOpenOrigin(e){return W(e)?this._findOpenHandle(e):null}async _findOpenHandle(e,t){for(let n of St()){if(n===t||!n.canWrite())continue;let r=this._handleCache.get(n);if(r&&typeof r.isSameEntry==`function`&&await r.isSameEntry(e))return n}return null}async onWorkbookRead(e,t){if(!W(t))return;let n=e.getOrigin?.();n?.canWrite()&&this._handleCache.set(n,t)}async filePathToFile(e){throw Error(`Cannot read local file path '${e}' in browser environment. Use a file input element or fetch for remote URLs.`)}async write(e){let{origin:t,suggestedName:n,format:r,encode:i,prompt:a}=e,o=[r,...(await this._getWriteFormats()).filter(e=>e.key!==r.key)],s=typeof globalThis.showSaveFilePicker==`function`,c=!a&&t.canWrite()?this._handleCache.get(t):void 0;if(s)try{if(c){let e=await async function(e){try{if(typeof e.queryPermission!=`function`)return`granted`;let t={mode:`readwrite`};return await e.queryPermission(t)===`granted`||await e.requestPermission(t)===`granted`?`granted`:`denied`}catch{return`unavailable`}}(c);if(e===`denied`)return null;e!==`granted`&&(c=void 0)}let a=!!c;if(!a){c=await globalThis.showSaveFilePicker({suggestedName:n,types:Et(o)});let t=await this._findOpenHandle(c,e.workbook?.getOrigin?.());if(t)throw new h(_(`error.io.openElsewhere`,{name:t.getName()??c.name??``}))}let s=Ot(c.name??n),l=o.find(e=>e.exts.some(e=>e.toLowerCase()===s))??r,u=a?t:new V(c.name??n,{format:l.key,canWrite:!0}),d=await i(l.key,u);if(!d)return null;let f=new Blob([Dt(d)],{type:l.mimeType||`application/octet-stream`}),p=await c.createWritable();if(await p.write(f),await p.close(),this._handleCache.set(u,c),u instanceof V){let e=await Promise.resolve(c.getFile?.()).then(e=>e?.lastModified??null,()=>null);u.update({size:f.size,lastModified:e})}return u}catch(e){if(e?.name===`AbortError`)return null;if(e instanceof h)throw e}let l=t.getPath(),u=l?l.split(/[/\\]/).pop():null,d=u&&r.exts.some(e=>e.toLowerCase()===Ot(u))?u:n,f=l!==d||t.canWrite()?new V(d,{format:r.key,canWrite:!1}):t,p=await i(r.key,f);if(!p)return null;let m=new Blob([Dt(p)],{type:r.mimeType||`application/octet-stream`});return function(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.style.display=`none`,r.href=n,r.download=t,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n)}(m,d),f instanceof V&&f.update({size:m.size}),f}};function Et(e){return e.map(e=>{let t=e.mimeType&&e.mimeType.includes(`/`)?e.mimeType:`application/octet-stream`;return{description:e.description??e.key,accept:{[t]:e.exts.map(e=>`.`+e)}}})}function W(e){return!!e&&e.kind===`file`&&typeof e.getFile==`function`}function Dt(e){if(typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer){let t=new ArrayBuffer(e.byteLength);return new Uint8Array(t).set(new Uint8Array(e)),t}return e}function Ot(e){let t=e.lastIndexOf(`.`);return t>=0?e.slice(t+1).toLowerCase():``}(bt||={}).SortOn={Value:`value`,FillColor:`fillColor`,FontColor:`fontColor`,Icon:`icon`};var kt={TopLeft:`tl`,Top:`t`,TopRight:`tr`,Left:`l`,Center:`ctr`,Right:`r`,BottomLeft:`bl`,Bottom:`b`,BottomRight:`br`},G=ce.BuiltInName;G.Normal,a(`style.builtin.normal`),G.Comma,a(`style.builtin.comma`),G.Currency,a(`style.builtin.currency`),G.Percent,a(`style.builtin.percent`),G.Comma0,a(`style.builtin.comma0`),G.Currency0,a(`style.builtin.currency0`),G.Hyperlink,a(`style.builtin.hyperlink`),G.FollowedHyperlink,a(`style.builtin.followedHyperlink`),G.Note,a(`style.builtin.note`),G.WarningText,a(`style.builtin.warningText`),G.Title,a(`style.builtin.title`),G.Input,a(`style.builtin.input`),G.Output,a(`style.builtin.output`),G.Calculation,a(`style.builtin.calculation`),G.CheckCell,a(`style.builtin.checkCell`),G.LinkedCell,a(`style.builtin.linkedCell`),G.Total,a(`style.builtin.total`),G.Good,a(`style.builtin.good`),G.Bad,a(`style.builtin.bad`),G.Neutral,a(`style.builtin.neutral`),G.ExplanatoryText,a(`style.builtin.explanatoryText`),a(`style.builtin.heading`),a(`style.builtin.accent`),a(`style.builtin.accentTint`);var At,jt,Mt,Nt,Pt=(e,t,n,r,i)=>{let a=JSON.parse(JSON.stringify(e.definition));a.adjs||=[];let o=``,s=0,c=0;t>0?(c=t,s=100-t,o=_(`op.lighterPercent`,{percent:t})):t<0&&(s=100+t,o=_(`op.darkerPercent`,{percent:-t})),s&&a.adjs.push({[le.AdjustmentType.LumMod]:s}),c&&a.adjs.push({[le.AdjustmentType.LumOff]:c});let l=new ee({val:a.val,adjs:a.adjs},n),u=l.toString();r?.set(u,l);let d=l.toRGBA().toString();return i?.set(d,l),{description:e.description+`, `+o,definition:a}};function Ft(e,t,n,r){let i=[];for(let a=0;a<e.length;a++){let o=[];i.push(o);let s=i=>{for(let s=0;s<i.length;s++)o.push(Pt(e[a],i[s],t,n,r))},c=new ee({val:e[a].definition.val,adjs:e[a].definition.adjs},t).toHSLA().lum;s(c===0?[50,35,25,15,5]:c===100?[-5,-15,-25,-35,-50]:c<=20?[90,75,50,25,10]:c>=80?[-10,-25,-50,-75,-90]:[80,60,40,-25,-50])}return i}(At||={}).buildPalette=Ft,jt||={},Mt||={},Nt||={};var It;function Lt(e){return he.peek()?.readFormulaLiteral(e)}function Rt(e,t){let n=zt(e),r=zt(t);return n===r?e===t?0:typeof e==`number`&&typeof t==`number`?e<t?-1:1:typeof e==`string`&&typeof t==`string`?e<t?-1:+(e>t):typeof e==`boolean`?e?1:-1:k.isError(e)&&k.isError(t)?e.getCode()-t.getCode():0:n-r}function zt(e){if(e===null)return 0;switch(typeof e){case`number`:return 1;case`string`:return 2;case`boolean`:return 3;default:return k.isError(e)?4:5}}(function(e){function t(e){return he.peek()?.getFunctionDeclaration(e)??null}e.get=t,e.has=function(e){return t(e)!==null}})(It||={});var Bt=class{constructor(e){this._children=e}getCoords(){let e=this._children,t=null;for(let n=0;n<e.length;n++){let r=e[n].getCoords();r&&(t=t?{rowStart:Math.min(t.rowStart,r.rowStart),colStart:Math.min(t.colStart,r.colStart),rowEnd:Math.max(t.rowEnd,r.rowEnd),colEnd:Math.max(t.colEnd,r.colEnd)}:r)}return t}getSize(){let e=this._children,t=e.length,n=0;for(let r=0;r<t;r++)n+=e[r].getSize();return n}getCount(){let e=this._children,t=e.length,n=0;for(let r=0;r<t;r++)n+=e[r].getCount();return n}getAggregates(e){if(e)return this._mergeAggregates(e);let t=this._aggregates;return t||(t=this._mergeAggregates(),this._aggregates=t),t}getSnappedSum(e){let t=e??this.getAggregates().sum??0,n=this._children;for(let e=n.length-1;e>=0;e--)if(n[e].getAggregates().numericalCount>0)return n[e].getSnappedSum(t);return t}getSortedNumbers(){let e=this._sortedNumbers;if(!e){let t=this._children,n=t.length,r=[];for(let e=0;e<n;e++){let n=t[e].getSortedNumbers().getValues();n.length>0&&r.push(n)}e=new be(function(e){let t=e.length;if(t===0)return Vt;if(t===1)return e[0];let n=e[0];for(let r=1;r<t;r++)n=Ht(n,e[r]);return Object.freeze(n)}(r)),this._sortedNumbers=e}return e}getRanked(e){return ve(this._children,e,Rt)[Symbol.iterator]()}getFrequencies(e){if(e)return this._mergeFrequencies(e);let t=this._frequencies;return t||(t=this._mergeFrequencies(),this._frequencies=t),t}_mergeFrequencies(e){let t=e?.keyFn??qe,n=e?.limit,r=new Map,i=this._children,a=i.length,o=0,s=0,c=!1;for(let l=0;l<a;l++){let a=i[l].getFrequencies(e);o+=a.getVisitedCount(),s+=a.getTotalCount(),c||=a.isTruncated();let u=a.getValueCounts(),d=u.next();for(;!d.done;){let[e,i]=d.value,a=t(e),o=r.get(a);o?o.count+=i:n===void 0||r.size<n?r.set(a,{value:e,count:i}):c=!0,d=u.next()}}return Ae.fromGroups(r,t,e,Rt,o,s,c)}getTypedCounts(e){let t=this._typedCounts;if(!t){let e={[A.Number]:0,[A.String]:0,[A.Boolean]:0,[A.Error]:0,[A.RichData]:0,[A.Null]:0},n=this._children,r=n.length;for(let t=0;t<r;t++){let r=n[t].getTypedCounts();e[A.Number]+=r[A.Number]??0,e[A.String]+=r[A.String]??0,e[A.Boolean]+=r[A.Boolean]??0,e[A.Error]+=r[A.Error]??0,e[A.RichData]+=r[A.RichData]??0,e[A.Null]+=r[A.Null]??0}t=Object.freeze(e),this._typedCounts=t}if(e===void 0)return t;let n={},r=e.length;for(let i=0;i<r;i++)n[e[i]]=t[e[i]]??0;return n}get isIRangeStats(){return!0}_mergeAggregates(e){let t=this._children,n=t.length,r={count:0,min:void 0,max:void 0,numericalCount:0,sum:0,sumSq:0,typed:{[A.Number]:0,[A.String]:0,[A.Boolean]:0,[A.Error]:0,[A.RichData]:0,[A.Null]:0}};for(let i=0;i<n;i++){let n=t[i].getAggregates(e);r.count+=n.count;let a=n.numericalCount;a<=0||(r.numericalCount+=a,r.sum+=n.sum,r.sumSq+=n.varP*a+n.sum*n.sum/a,(r.min===void 0||n.min<r.min)&&(r.min=n.min),(r.max===void 0||n.max>r.max)&&(r.max=n.max))}return De(r)}},Vt=Object.freeze([]);function Ht(e,t){let n=e.length,r=t.length,i=Array(n+r),a=0,o=0,s=0;for(;a<n&&o<r;)i[s++]=e[a]<=t[o]?e[a++]:t[o++];for(;a<n;)i[s++]=e[a++];for(;o<r;)i[s++]=t[o++];return i}var K,q=class e{constructor(e,t){this._source=null,this._fresh=new WeakSet,this._unwatch=null,this.cacheId=e,this._store=t,this._fresh.add(t.get())}static dataOf(t,n){let r=e.modelOf(t);return{part:j.fromJSON(t.part,n),model:r,partFormats:!r&&t.partFormats?t.partFormats:null,source:!r&&t.source?t.source:null}}static modelOf(e){if(!e.fields)return null;let{cacheId:t,part:n,partFormats:r,...i}=e;return i}get part(){return this._store.get().part}get _model(){return this._store.get().model}_getData(){return this._store.get()}_replace(e){let t={part:null,model:e,partFormats:null,source:null};this._store.set(t),this._fresh.add(t)}_restate(e){let t=this._fresh.has(this._store.get()),n={part:null,model:e,partFormats:null,source:null};this._store.set(n),t&&this._fresh.add(n)}_hold(e,t){if(this._source)return;let{ref:n,sheet:r,name:i}=this._sourceAsRead()??{},a=null,o=null;if(n&&r&&!n.includes(`#REF!`)?(a=e(r),o=`${nt(r)}!${xe(n)}`):!i||n||r?i&&r&&!n&&(a=e(r),o=`${nt(r)}!${i}`):(a=t(i),o=`${i}[#All]`),!a||!o)return;let s={formula:null,wired:null,last:null};this._source=s,a(o,e=>{s.formula=e.formula;let t=e.formula.getExpression();s.wired??=t,e.formula.hasRefError()||(s.last=t)})}_sourceAsRead(){let e=this._model?.source??this._store.get().source;return e?{ref:e.ref??null,sheet:e.sheet??null,name:e.name??null}:null}_watchSource(e,t,n){if(this._unwatch)return;let{ref:r,sheet:i,name:a}=this._sourceAsRead()??{},o=null,s=null;if(r&&i&&!r.includes(`#REF!`)?s=e(i,r):a&&!r&&(o=i?null:t(a),s=o?.getRange()??n(a,i??null)),!s||s.isInvalid())return;let c=e=>`${e.getRowCount()}x${e.getColumnCount()}`,l=c(s),u=[],d=()=>{this._fresh=new WeakSet},f=e=>{let t=l;return l=c(e),l!==t};u.push(s.addListener(e=>{if(e.getTrigger()===`data`)return void(e.getCommit()!==null&&d());let t=e.getSource();(t.isInvalid()||f(t))&&d()},{transactional:!1})),o&&u.push(s.getWorksheet().addListeners({onTablesChange:()=>{!o.isDeleted()&&f(o.getRange())&&d()}})),this._unwatch=()=>{this._unwatch=null;for(let e of u)e()}}_isStale(){return!this._fresh.has(this._store.get())}_moved(){let e=this._source;if(!e?.formula)return null;let t=e.formula.hasRefError()?e.last:e.formula.getExpression();if(t===null||t===e.wired)return null;let n=this._sourceAsRead();if(n?.name&&n.sheet){let e=I(t)?.sheet;return e?{sheet:e}:null}let r=/^(.+)\[#All\]$/.exec(t)?.[1];if(r)return{name:r};let i=I(t);return i?{name:null,ref:Ge(i.reference),sheet:i.sheet}:{ref:Ge(t)}}_getSource(){let e=this._sourceAsRead();if(!e)return null;let t={};e.ref&&(t.ref=e.ref),e.sheet&&(t.sheet=e.sheet),e.name&&(t.name=e.name);let n=this._moved();if(n)for(let e of[`ref`,`sheet`,`name`]){let r=n[e];r===null?delete t[e]:r!==void 0&&(t[e]=r)}return t}toJSON(e){let t={cacheId:this.cacheId},n=j.toJSON(this.part,e);if(n){t.part=n;let e=this._store.get().partFormats;e&&(t.partFormats=e)}let r=this._model;r&&Object.assign(t,r);let i=this._getSource();return i&&(t.source=i),t}},Ut=class{constructor(e,t){this._deleted=!1,this._json={...e},this._deleteFromCollection=t??null}getId(){return this._json.id}getDisplayName(){return this._json.displayName}getUserId(){return this._json.userId??null}getProviderId(){return this._json.providerId??null}delete(){this._deleted||(this._deleted=!0,this._deleteFromCollection?.(this))}isDeleted(){return this._deleted}toJSON(){return{...this._json}}get[Symbol.toStringTag](){return`[Person]`}toString(){return`Person:${this.getDisplayName()}`}get isIPerson(){return!0}},Wt=class extends we{constructor(e){super(),this._byId=new Map,this._byDisplayName=new Map,this._items=null,this._current=null,e&&this.fromJSON(e)}_getItems(){return this._items??=Array.from(this._byId.values())}getCount(){return this._byId.size}add(e){let t=typeof e==`string`?{displayName:e}:e,n=t.id;if(n){let e=this._byId.get(n);if(e)return e}let i=t.displayName??``;if(!n){let e=this._byDisplayName.get(i);if(e)return e}let a=new Ut({...t,displayName:i,id:n??r.uuidV4().toUpperCase()},e=>this._remove(e));return this._byId.set(a.getId(),a),i&&!this._byDisplayName.has(i)&&this._byDisplayName.set(i,a),this._items=null,this._notifyCollectionChange(),a}getById(e){return typeof e==`string`?this._byId.get(e)??null:null}getByDisplayName(e){return typeof e==`string`?this._byDisplayName.get(e)??null:null}getCurrent(){return this._current??=this.add(`Author`)}setCurrent(e){if(e!==null){if(typeof e==`object`&&e.isIPerson){let t=e;this._current=this.getById(t.getId())??this.add(t.toJSON());return}this._current=this.add(e)}else this._current=null}_remove(e){this._byId.get(e.getId())===e&&(this._byId.delete(e.getId()),this._byDisplayName.get(e.getDisplayName())===e&&this._byDisplayName.delete(e.getDisplayName()),this._current===e&&(this._current=null),this._items=null,this._notifyCollectionChange())}toJSON(){return this._byId.size===0?null:this._getItems().map(e=>e.toJSON())}fromJSON(e){if(!e)return;let t=e.length;for(let n=0;n<t;n++){let t=e[n];t&&typeof t.id==`string`&&this.add(t)}}get isIPersonCollection(){return!0}},Gt=(e,t)=>{let n=[0];for(let t=0;t<e.length;t++)e[t]===`
|
|
3
|
-
`&&n.push(t+1);let r=t.map(e=>` ${(e=>{let t=0,r=n.length-1;for(;t<r;){let i=t+r+1>>1;n[i]<=e?t=i:r=i-1}return`${t+1}:${e-n[t]+1}`})(e.start)} ${e.code}: ${e.message}`),i=t.length;return`Script has ${i} compile error${i===1?``:`s`}:\n${r.join(`
|
|
4
|
-
`)}`},Kt=class{constructor(e){this._options=e,this._emitter=new b(this),this._initState()}_initState(){}getModules(){return this._modules}_builtInNames(){try{let e=this._options.getBuiltInFunctions?.();if(!e)return r.EmptyArray;let t=[];for(let n of e.getItems({includeHidden:!0}))n.isBuiltIn()&&t.push(n.getName());return t}catch{return r.EmptyArray}}async createModule(t){let n=await(await e(async()=>{let{ScriptCompiler:e}=await import(`./D6CzedWHXTesD55R.js`);return{ScriptCompiler:e}},__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url)).ScriptCompiler.compile({builtInNames:this._builtInNames(),minify:!0,...t});return n.module?await z(ye.DEFAULT_MODULE,n.module,t?.declarationsOnly??!1,n.diagnostics):null}addModule(e,t,n){this._modules.add(e,t,n)}async addModuleFromJSON(e,t,n){let r=await z(e,t);return this.addModule(e,r,n),r}async executeMacro(e,t,n){await R.assertUsable(`scripts`);let r=this._modules.getItems({name:t}),i=r.length;for(let t=0;t<i;t++){let i=r[t].getFunctions().getByName(e);if(i)return i.execute(this._options.workbook,{applyResult:!0,...n})}throw Error(`No macro ${e} found.`)}async run(e,t){try{await R.assertUsable(`scripts`);let n=typeof e==`string`?await this.createModule({source:e}):await z(ye.DEFAULT_MODULE,e),r=typeof e==`string`?e:e?.source??``;return await this._runModule(n,r,t)}catch(e){return{ok:!1,error:e}}}async _runModule(e,t,n){let r=this._options?.workbook;if(!e)return{ok:!1,error:Error(`The script did not compile to a module.`)};let i=e.getDiagnostics(),a=i.filter(e=>e.severity===`error`);if(a.length>0){let e=Error(Gt(t,a));return e.diagnostics=a,{ok:!1,error:e,diagnostics:i}}let o=e.getFunctions(),s=o.getItems({type:`autoRun`,includeHidden:!0})[0]??o.getItems({type:`macro`,includeHidden:!0})[0]??null;if(!s)return{ok:!1,error:Error("The script has no runnable entry. Export a default function taking the script context, e.g. `export default function run(ctx: IScript.ScriptContext) { ... }` (the workbook is `ctx.wb`; a macro may instead take its target first, e.g. `(sheet: IWorksheet, ctx)`).")};let c=await s.execute(r,n);return{ok:!0,result:c?.results,commitId:c?.commitId,diagnostics:i}}_searchable(e){let t=this._modules;return t&&t.getCount()!==0?(e?t.getItems({name:e}):t.getItems()).map(e=>e.getFunctions()):r.EmptyArray}async searchFunctions(e){await this._emitter.notify(`onBeforeSearch`,{async:!0});let t=this._searchable(e?.moduleName);if(t.length===0)return r.EmptyArray;if(t.length===1)return t[0].search(e);let n=e?.limit,i=n===void 0?e:{...e,limit:void 0},a,o=new Set;for(let e=0;e<t.length;e++){let n=await t[e].search(i);if(n.length!==0){a||=[];for(let e=0;e<n.length;e++){let t=n[e],r=t.getName().toUpperCase();o.has(r)||(o.add(r),a.push(t))}}}if(!a||a.length===0)return r.EmptyArray;let s=e?.text?e.text.trim().toUpperCase():null;return s?We(a,s):a.sort((e,t)=>{let n=e.getName().toUpperCase(),r=t.getName().toUpperCase();return n<r?-1:+(n>r)}),n!==void 0&&a.length>n?a.slice(0,n):a}async start(){return this._startPromise||(this._startPromise=this._doStart(),this._startPromise.catch(()=>{this._startPromise=void 0})),this._startPromise}_load(){return this._loadPromise||(this._loadPromise=this._doLoad(),this._loadPromise.catch(()=>{this._loadPromise=void 0})),this._loadPromise}async _doStart(){await this._load();let e=this._options?.workbook,t=this._modules.getItems(),n=t.length;for(let r=0;r<n;r++){let n=t[r];try{let t=n.getFunctions().getItems({type:`autoRun`,includeHidden:!0}),r=t.length;for(let n=0;n<r;n++)await t[n].execute(e)}catch(e){m.error(`Error executing autoRun script:`,e)}}}async _doLoad(){let e=this._options?.workbook,t=this._options?.json,n={};if(t){let r=Object.keys(t);for(let i=0;i<r.length;i++){let a=r[i],o=t[a];try{n[a]=await z(a,o,!1,[],o?.scope===`workbook`?e:null)}catch(e){m.error(`Could not load script '${a}'; it will be unavailable.`,e)}}}let r=this,i=new He({transactions:this._options?.transactions,initial:n,isReadOnly:()=>r.isReadOnly(),onRemove:(e,t)=>{r._options?.onRemove?.(e,t)},onAdd:(e,t)=>{r._emitter.notify(`onChange`),r._options?.onAdd?.(e,t)}});this._modules=i}addListeners(e,t){return this._emitter.addListeners(e,t)}isReadOnly(){return this._options.workbook?._isStructureProtected?.()??!1}toJSON(){this._emitter.notify(`onBeforeSave`);let e=this._modules;if(!e)throw Error(`Scripts is initializing.`);return e.toJSON()}get isIScript(){return!0}},qt=/^([a-z][a-z0-9+.-]*):/i,Jt=e=>{let t=e.toLowerCase();return t.endsWith(`:`)?t:t+`:`},Yt=async(e,t)=>{try{return await globalThis.fetch(e,t)}catch(n){throw n instanceof TypeError&&await(async(e,t)=>{let n=globalThis.location;if(!n||t?.method&&t.method.toUpperCase()!==`GET`)return!1;let r=new AbortController,i=setTimeout(()=>r.abort(),5e3);try{return new URL(e,n.href).origin!==n.origin&&(await globalThis.fetch(e,{mode:`no-cors`,credentials:`omit`,signal:r.signal}),!0)}catch{return!1}finally{clearTimeout(i),r.abort()}})(e,t)?new k.Blocked(`This site is restricted: it doesn't allow web apps to read its data, so the browser blocked the request for security.`,{cause:n}):n}},Xt=class{constructor(){this._handlers=new Map([[`http:`,Yt],[`https:`,Yt]])}fetch(e,t){let n=qt.exec(e)?.[1],r=this._handlers.get(n?Jt(n):`https:`);if(!r)return Promise.reject(TypeError(`No fetcher serves '${n}:'.`));try{return r(e,t)}catch(e){return Promise.reject(e)}}register(e,t){let n=Jt(e),r=this._handlers.get(n);return this._handlers.set(n,t),()=>{this._handlers.get(n)===t&&(r?this._handlers.set(n,r):this._handlers.delete(n))}}get isIFetcher(){return!0}},Zt=new Set([101,103,204,205,304]),J=e=>new Response(Zt.has(e.status)?null:e.body,{status:e.status,statusText:e.statusText,headers:e.headers}),Qt=class{constructor(e,t){this._kept=new Map,this._cached=new Map,this._inFlight=new Map,this._resources=e,this._fetcher=t}getFetcher(){return this._fetcher}async fetch(e,t){if((e=>!e||(!e.method||e.method.toUpperCase()===`GET`)&&!e.body)(t)&&t?.cache!==`reload`){let n=this._kept.get(e)??this._findHeld(e);if(n&&!n.isClosed())return this._fromKept(n);let r=this._cached.get(e);if(r)return J(r);let i=this._inFlight.get(e);return i||(i=this._request(e,{...t,signal:void 0}).finally(()=>{this._inFlight.delete(e)}),this._inFlight.set(e,i)),J(await((e,t)=>t?t.aborted?Promise.reject(t.reason):new Promise((n,r)=>{let i=()=>r(t.reason);t.addEventListener(`abort`,i,{once:!0}),e.then(n,r).finally(()=>t.removeEventListener(`abort`,i))}):e)(i,t?.signal))}return J(await this._request(e,t))}adopt(e){for(let t of e){let e=t.getFetchedFrom();e&&!t.isClosed()&&this.keep(e,t)}}keep(e,t){let n=this._kept.get(e);n!==t&&(t.addReference(this),this._kept.set(e,t),n&&!n.isClosed()&&n.deleteReference(this))}_findHeld(e){for(let t of this._resources.getItems())if(t.getFetchedFrom()===e&&!t.isClosed())return this.keep(e,t),t;return null}async _fromKept(e){let[t,n]=await Promise.all([e.toBuffer(),e.getType()]);return J({status:200,statusText:`OK`,headers:n?[[`content-type`,n.mime]]:[],body:t})}async _request(e,t){let n=await this._fetcher.fetch(e,t),r=Zt.has(n.status)?null:await n.arrayBuffer(),i=[];n.headers.forEach((e,t)=>{i.push([t,e])});let a={status:n.status,statusText:n.statusText,headers:i,body:r};if(n.ok&&r&&r.byteLength>0){let t=await new mt({source:{buffer:r}}).getType();t?.mime.startsWith(`image/`)?(a.headers=i.filter(([e])=>e.toLowerCase()!==`content-type`),a.headers.push([`content-type`,t.mime])):this._cached.set(e,a)}return a}},$t=class{constructor(e,t,n,r){this._mergedReading=[],this._colsReading=[],this._rowsReading=[],this._styles=n,this._topLeft=t??o.EmptyCell,this._sheet=new Ue({runtime:e,styles:this._styles,calcOnLoad:`none`,container:{getName:()=>r,getIndex:()=>1}}),this._builder=this._sheet.getEntireRange().createSparseBuilder()}applyCSSStyle(e,t){let n=!1;e.style||(e.style={},n=!0);let r=e.style,i={...t};if(t.msoIgnore){let e=t.msoIgnore.split(`,`),n=Object.keys(i);for(let t=0;t<n.length;t++){let r=n[t];e.includes(r)&&delete i[r]}}let a=oe(i.fontFamily);r.font={},a&&(r.font.family=a.family,r.font.fallbacks=a.fallbacks,r.font.size=a.size),r.font.size=i.fontSize,r.font.weight=i.fontWeight,r.font.style=i.fontStyle,r.font.color=i.color;let o=w(i.textDecoration);r.font.underline=o.underline,r.font.strike=o.strike?S.StrikeStyle.Single:S.StrikeStyle.None,i.textUnderlineStyle&&(r.font.underline=ae(i.textUnderlineStyle)),r.alignment={},i?.textAlign&&(r.alignment.horizontal=te(i.textAlign)),i?.textAlign&&!r.alignment.horizontal&&i?.textAlign!==`general`&&(i.textAlign===`center-across`?r.alignment.horizontal=O.HorizontalAlignment.CenterContinuous:i.textAlign===`fill`?r.alignment.horizontal=O.HorizontalAlignment.Fill:i.textAlign===`121`||i.textAlign===`010`?(r.alignment.horizontal=O.HorizontalAlignment.Distributed,r.alignment.justifyLastLine=i.textAlign===`121`):console.warn(`unknown text-align`,i.textAlign)),i.verticalAlign&&(i.verticalAlign.toLowerCase()===`super`?r.font.baseline=E.Baseline.Superscript:i.verticalAlign.toLowerCase()===`sub`?r.font.baseline=E.Baseline.Subscript:r.alignment.vertical=re(i.verticalAlign),r.alignment.vertical||(i.verticalAlign===`121`?r.alignment.vertical=O.VerticalAlignment.Distributed:console.warn(`unknown vertical-align`,i.verticalAlign))),i.msoCharIndentCount&&(r.alignment.indent=i.msoCharIndentCount),i.whiteSpace&&(r.alignment.overflow=i.whiteSpace===`no-wrap`||i.whiteSpace===`nowrap`?O.Overflow.Visible:O.Overflow.Wrap),i.msoTextControl===`shrinktofit`&&(r.alignment.overflow=O.Overflow.Shrink);let s=null;if(i.background?s=i.background:i.backgroundColor&&(s=i.backgroundColor),s&&(r.fill={color:s}),i.msoPattern){let e=ue(i.msoPattern);e&&(e.patternType===T.BuiltInSheetPattern.Solid?r.fill={color:e.foreground}:e.patternType!==T.BuiltInSheetPattern.None&&(s&&(e.background=s),r.fill=e))}i.layoutFlow===`vertical`||i.layoutFlow===`vertical-ideographic`?r.alignment.stacked=!0:i.msoRotate!==void 0&&(r.alignment.rotation=se(i.msoRotate));let c=(e,t)=>{e&&(r.borders||={},r.borders[e]=t)};i.border&&i.border!==`none`&&(c(`top`,i.border),c(`left`,i.border),c(`right`,i.border),c(`bottom`,i.border)),i.borderTop&&c(`top`,i.borderTop),i.borderLeft&&c(`left`,i.borderLeft),i.borderRight&&c(`right`,i.borderRight),i.borderBottom&&c(`bottom`,i.borderBottom),i.msoDiagonalUp&&c(`diagonalUp`,i.msoDiagonalUp),i.msoDiagonalDown&&c(`diagonalDown`,i.msoDiagonalDown);let l=r.numberFormat;i.msoNumberFormat&&(l=C(i.msoNumberFormat),l.includes(`\\`)?l=null:l===`Fixed`?l=D.Styles.lookupStyle(r.numberFormat).formatType===D.Type.Number?null:D.Type.Number:l===`Percent`&&(l=D.Styles.lookupStyle(r.numberFormat).formatType===D.Type.Percentage?null:D.Type.Percentage)),l&&(r.numberFormat=l),e.style=this._styles.normalize(r),n&&Object.keys(e.style).length===0&&delete e.style}onCell(e,t,n,r,i){let a=r(i),s={value:t===void 0?n??``:t};if(typeof s.value==`string`&&s.value.length===0&&(s.value=void 0),a&&this.applyCSSStyle(s,a),typeof s.value==`string`&&/^#+$/.test(s.value)){let e=s.style?.numberFormat;e&&(ne(e)||ie(e))&&(s.value=k.BuiltIn.Num)}if(i?.tagName.toUpperCase()===`TD`){let e=s.style,t=e?.font??{};(i.querySelectorAll(`s`).length>0||i.querySelectorAll(`strike`).length>0)&&(t.strike=S.StrikeStyle.Single),i.querySelectorAll(`sub`).length>0&&(t.baseline=E.Baseline.Subscript),i.querySelectorAll(`sup`).length>0&&(t.baseline=E.Baseline.Superscript),(i.querySelectorAll(`b`).length>0||i.querySelectorAll(`strong`).length>0)&&(t.weight=700),i.querySelectorAll(`i`).length>0&&(t.style=S.Style.Italic),i.querySelectorAll(`u`).length>0&&(t.underline=S.UnderlineStyle.Single),Object.keys(t).length>0&&(e||(e={},s.style=e),e.font||(e.font=t));let n=i.querySelectorAll(`a`);if(n.length>0){let e=n[0].getAttribute(`href`);e&&(s.hyperlink=e)}}if(!o.isSingleCell(e)){let t={rowStart:this._topLeft.rowIndex+e.rowStart,colStart:this._topLeft.colIndex+e.colStart,rowEnd:this._topLeft.rowIndex+e.rowEnd,colEnd:this._topLeft.colIndex+e.colEnd};this._mergedReading.push(t)}if(s.value===void 0&&!s.style&&Object.keys(s).length<=1)return;let c=this._builder,l=this._topLeft;if(c.pushAt(l.rowIndex+e.rowStart,l.colIndex+e.colStart,s),!o.isSingleCell(e)&&a.msoIgnore){if(a.msoIgnore.includes(`colspan`)){let t={};a&&this.applyCSSStyle(t,a);let n=e.colEnd-e.colStart,r=l.rowIndex+e.rowStart;for(let i=1;i<=n;i++)c.pushAt(r,l.colIndex+e.colStart+i,t);e={...e,colEnd:e.colStart}}a.msoIgnore.includes(`rowspan`)&&(e={...e,rowEnd:e.rowStart})}}onNoTable(e,t,n){this.onCell({rowStart:this._topLeft.rowIndex,colStart:this._topLeft.colIndex,rowEnd:this._topLeft.rowIndex,colEnd:this._topLeft.colIndex},e,null,t,n)}onRowStart(e,t,n,r){let i=n(r);if(i.msoHeightSource!==`userset`||!r)return;let a=r.getAttribute(`height`)??i.height,o=null;if(a&&(o=de(a,this._styles.getNormal().getFont().getSize(),`px`)),o===null)for(let e=0;e<r.cells.length;e++){let t=r.cells[e],i=t.getAttribute(`height`)??n(t).height,a=de(i,this._styles.getNormal().getFont().getSize(),`px`);a!==null&&(o=Math.max(a,o??0))}o!==null&&this._rowsReading.push({address:{min:this._topLeft.rowIndex+e,max:this._topLeft.rowIndex+e+t-1},update:{size:o*S.getDeviceScale()}})}onColumn(e,t,n,r){let i=n(r);if(i.msoWidthSource!==`userset`||!r)return;let a=r.getAttribute(`width`)??i.width,o=null;a&&(o=de(a,this._styles.getNormal().getFont().getSize(),`px`)),o!==null&&this._colsReading.push({address:{min:this._topLeft.colIndex+e,max:this._topLeft.colIndex+e+t-1},update:{size:o*S.getDeviceScale()}})}onDone(){this._colsReading.length>0&&this._sheet.getColumnHeaders().updateHeaderPairs(this._colsReading),this._rowsReading.length>0&&this._sheet.getRowHeaders().updateHeaderPairs(this._rowsReading),this._sheet.doBatch(()=>{this._builder.apply()}),this._mergedReading.length>0&&this._sheet.getRanges(this._mergedReading).merge()}sheet(){return this._sheet}},en=class{constructor(e){if(!e)throw new s(`snapshot is required.`);this._snapshot=e}getItemType(){return`range`}getItem(){return this._snapshot}editMode(){return this._snapshot?.getMarkOptions().editMode??null}isCut(){return this._snapshot?.getMarkOptions().isCut??!1}getName(){return this._snapshot.getName()}toText(){return this._snapshot.toText()}toHtml(){return this._snapshot.toHtml()}toImage(){return this._snapshot.toImage()}get isClipboardItem(){return!0}},tn=class{constructor(e,t,n,r,i){if(this._parsed=void 0,this._runtime=e,!t)throw new s(`nativeItems are required.`);this._topLeft=n??o.EmptyCell,this._native=t,this._markOptions=Object.freeze(r??{}),this._styles=i}getItemType(){return`range`}isCut(){return!1}toText(){return this._native?.text}toHtml(){return this._native?.html?.documentElement.outerHTML||null}toImage(){return this._native?.image}getItem(){let e=this._parsed;if(e===void 0)throw Error(`Must call 'parse()' before getItem().`);if(e===null)return null;if(this._snapshot)return this._snapshot;let t=this;return this._snapshot={prepare:(n,r)=>e.prepare?.(n,{...t._markOptions,...r}),copyTo:(n,r)=>e.copyTo(n,{...t._markOptions,...r}),getMarkOptions:()=>t._markOptions,getName:()=>e?.getName()??`Clipboard Data`,getCoords:()=>e?.getCoords?.()??null,toText:()=>t.toText(),toHtml:()=>t.toHtml(),toImage:()=>t.toImage(),getSource:()=>e?.getSource?.()??null,isISnapshot:!0},this._snapshot}async parse(){let e,t=this._native?.text,n=this._native.html;if(n===null&&t&&t.includes(`<table`))try{let e=new DOMParser().parseFromString(t,p.Html),r=e.querySelector(`parsererror`);if(r)throw new h(`Unable to parse: `+r);n=e,t=null}catch{console.warn(`Discovered text as html table but could could not parse.`)}try{let r=new $t(this._runtime,this._topLeft,this._styles,n?`HTML`:`Text`),i=await Promise.resolve(t?lt(t):[[]]),a;if(Xe(n,i,r)?(e=r.sheet(),a=e.getUsedRange()):n=null,a){let t=a.getSnapshot();return this._parsed={prepare:(e,n)=>t.prepare?.(e,n),copyTo:(e,n)=>t.copyTo(e,n),getCoords:()=>a.getCoords(),getSource:()=>e,getName:()=>e.getName()},!0}}catch(e){throw e}if(!t&&!n&&this._native.image){let e=await this._native.image.arrayBuffer(),t=i.getPngStatedSize(e),n=null;return this._parsed={async prepare(r){let i=r.getWorksheet();n={sheet:i,options:await i.getMovables()._preparePicture({source:{buffer:e}},{type:`picture`,description:a(`op.copyImageFromClipboard`),autoSelect:!0,...t&&{bounds:t}})}},copyTo(e,t){let r=e.getWorksheet();if(n?.sheet!==r)throw Error(`The image was not prepared for this sheet.`);return r.getMovables()._insertNow(n.options),null},getName:()=>`Image`},!0}return this._parsed=null,!1}get isClipboardItem(){return!0}},nn=class{constructor(e){this._closed=!1,this._kind=e.kind,this._id=e.id,this._part=e.part,this._styles=e.styles,this._tabColor=e.tabColor?this._styles.parseColor(e.tabColor):null,this._transactions=e.transactions,this._workbook=e.workbook??null,this._container=e.container,this._emitter=new b(this,this._transactions)}getKind(){return this._kind}getId(){return this._id}getName(){return this._container.getName()}setName(e,t){return this._assertOpen(),this._container.setName(e,t),this}getVisibility(){return this._closed?N.Visibility.VeryHidden:this._container.getVisibility()}setVisibility(e=!0,t){let n;return this._assertOpen(),n=!0===e?N.Visibility.Visible:!1===e?N.Visibility.Hidden:e,this._container.setVisibility(n,t),this}getIndex(){return this._container.getIndex()}setIndex(e,t){return this._assertOpen(),this._container.setIndex(e,t),this}getTabColor(){return this._tabColor}setTabColor(e){return this._assertOpen(),this._tabColor=typeof e==`string`?this._styles.parseColor(e):e??null,this._notify(`onTabColorChange`),this}getWorkbook(){return this._workbook}async select(e){return await this._container.requestSelect(e),this}delete(){if(this._closed)return;let e=this._transactions.beginCommit({description:_(`op.deleteSheet`,{name:this.getName()})});try{try{this._notify(`onBeforeDelete`)}catch(e){throw e instanceof Error?e:new h(e?.message??_(`error.sheet.modelDelete`))}this._notify(`onDelete`),e.commit()}catch(t){throw e.rollback(),t}}isDeleted(){return!this._container.isAttached()}addListeners(e,t){return this._emitter.addListeners(e,t)}close(){this._closed||=(this._notify(`onClose`),this._emitter.close(),!0)}isClosed(){return this._closed}_getPart(){return this._part}_notify(e){this._emitter.notify(e)}_assertOpen(){if(this._closed)throw Error(_(`error.sheet.modelClosed`))}get[Symbol.toStringTag](){return`[OpaqueSheet]`}toString(){return`[${this.getName()??`(untitled)`}]`}get isISheet(){return!0}get isIOpaqueSheet(){return!0}};(K||={}).Visibility={Visible:`visible`,Hidden:`hidden`,VeryHidden:`veryHidden`};var Y,X={showFormulaBar:!0,showTabs:!0,tabRatio:600,showHorizontalScrollbar:!0,showVerticalScrollbar:!0,showStatusBar:!0,activeSheetId:0,firstTab:0,windowBounds:null,minimized:!1,visibility:K.Visibility.Visible,autoFilterDateGrouping:!0},rn=class{constructor(e){this._id=r.uuidV4(),this._emitter=new b(this),this._state={...X},e?.json&&this._fromJSON(e?.json)}getId(){return this._id}isShowFormulaBar(){return this._state.showFormulaBar}setShowFormulaBar(e){return this._state.showFormulaBar=e,this._emitter.notify(`onViewChange`),this}isShowTabs(){return this._state.showTabs}setShowTabs(e){return this._state.showTabs=e,this._emitter.notify(`onViewChange`),this}getTabRatio(){return this._state.tabRatio}setTabRatio(e){return this._state.tabRatio=e,this._emitter.notify(`onViewChange`),this}isShowHorizontalScrollbar(){return this._state.showHorizontalScrollbar}setShowHorizontalScrollbar(e){return this._state.showHorizontalScrollbar=e,this._emitter.notify(`onViewChange`),this}isShowVerticalScrollbar(){return this._state.showVerticalScrollbar}setShowVerticalScrollbar(e){return this._state.showVerticalScrollbar=e,this._emitter.notify(`onViewChange`),this}isShowStatusBar(){return this._state.showStatusBar}setShowStatusBar(e){return this._state.showStatusBar=e,this._emitter.notify(`onViewChange`),this}getActiveSheetId(){return this._state.activeSheetId}setActiveSheetId(e){let t=this._state,n=t.activeSheetId;return t.activeSheetId=e,n!==e&&this._emitter.notify(`onViewChange`),this}getFirstTab(){return this._state.firstTab}setFirstTab(e){return this._set(`firstTab`,Math.max(0,Math.trunc(e)))}getWindowBounds(){return this._state.windowBounds}setWindowBounds(e){return this._set(`windowBounds`,e?Object.freeze({...e}):null)}isMinimized(){return this._state.minimized}setMinimized(e){return this._set(`minimized`,e)}getVisibility(){return this._state.visibility}setVisibility(e){return this._set(`visibility`,e)}isAutoFilterDateGrouping(){return this._state.autoFilterDateGrouping}setAutoFilterDateGrouping(e){return this._set(`autoFilterDateGrouping`,e)}_set(e,t){return this._state[e]===t||(this._state[e]=t,this._emitter.notify(`onViewChange`)),this}addListeners(e,t){return this._emitter.addListeners(e,t)}toJSON(){let e={},t=Object.keys(this._state),n=t.length;for(let r=0;r<n;r++){let n=t[r],i=this._state[n];i!=null&&i!==X[n]&&(e[n]=i)}return Object.keys(e).length===0&&(e=null),e}_fromJSON(e,t=!0){let n=e||{};this.update(n,t)}update(e,t=!0){this._state={...X,...this._state,...e},t&&this._emitter.notify(`onViewChange`)}get[Symbol.toStringTag](){return`[WorkbookView]`}toString(){let e=this.toJSON();return e?JSON.stringify(e):`DefaultWorkbookView`}get isIWorkbookView(){return!0}},an=Object.freeze({structure:!1,windows:!1,revision:!0,password:null,revisionsPassword:null}),on=class extends ke{isWindowsAllowed(){return this._isPropertyAllowed(`windows`)}isRevisionAllowed(){return this.isLocked()&&this._properties?.revision===void 0?!this._isReadOnly:this._isPropertyAllowed(`revision`)}isStructureAllowed(){return this._isPropertyAllowed(`structure`)}_getAllowedKey(){return`workbook`}_fromJSON(e){this._properties=e}_toJSON(e){let t=this._properties;if(t){let n=Object.keys(t),r=n.length;for(let i=0;i<r;i++){let r=n[i],a=t[r];a!=null&&a!==an[r]&&(e[r]=a)}}return super._toJSON(e)}get[Symbol.toStringTag](){return`[WorkbookProtection]`}get isIWorkbookProtection(){return!0}};(Y||={}).Type={Number:`number`,Boolean:`boolean`,Date:`date`,String:`string`,Float:`float`};var sn=e=>{if(typeof e==`string`)return{type:Y.Type.String,value:e};if(typeof e==`boolean`)return{type:Y.Type.Boolean,value:e};if(typeof e==`number`){if(!Number.isFinite(e))throw Error(`A custom property value must be a finite number.`);return{type:Number.isInteger(e)&&e>=-2147483648&&e<=2147483647?Y.Type.Number:Y.Type.Float,value:e}}if(e instanceof Date){if(isNaN(e.getTime()))throw Error(`A custom property value must be a valid date.`);return{type:Y.Type.Date,value:e.toISOString()}}throw Error(`A custom property value must be a string, number, boolean or Date.`)},cn=class{constructor(e,t){this._json=e,this._owner=t}getKey(){return this._json.key}getType(){return this._json.type}getLinkTarget(){return this._json.linkTarget??null}getValue(){let{type:e,value:t}=this._json;return e===Y.Type.Date?new Date(t):t}setValue(e){this._owner._assertCustomEditable(this),this._json={...this._json,...sn(e)}}delete(){this._owner._removeCustom(this)}toJSON(){return{...this._json}}},ln=class{constructor(e){this._json={},this._custom=[],this._assertOpen=e}_text(e){return this._json[e]??null}_setText(e,t){return this._assertOpen(),t==null||t===``?delete this._json[e]:this._json[e]=t,this}getAuthor(){return this._text(`author`)}setAuthor(e){return this._setText(`author`,e)}getCategory(){return this._text(`category`)}setCategory(e){return this._setText(`category`,e)}getComments(){return this._text(`comments`)}setComments(e){return this._setText(`comments`,e)}getCompany(){return this._text(`company`)}setCompany(e){return this._setText(`company`,e)}getContentStatus(){return this._text(`contentStatus`)}setContentStatus(e){return this._setText(`contentStatus`,e)}getCreationDate(){let e=this._json.creationDate;if(!e)return null;let t=new Date(e);return isNaN(t.getTime())?null:t}getKeywords(){return this._text(`keywords`)}setKeywords(e){return this._setText(`keywords`,e)}getLastAuthor(){return this._json.lastAuthor??null}getManager(){return this._text(`manager`)}setManager(e){return this._setText(`manager`,e)}getRevisionNumber(){return this._json.revisionNumber??null}setRevisionNumber(e){return this._assertOpen(),e!=null&&Number.isFinite(e)?this._json.revisionNumber=e:delete this._json.revisionNumber,this}getSubject(){return this._text(`subject`)}setSubject(e){return this._setText(`subject`,e)}getTitle(){return this._text(`title`)}setTitle(e){return this._setText(`title`,e)}getCustom(){return this._custom.slice()}getCustomProperty(e){let t=e.toLowerCase();return this._custom.find(e=>e.getKey().toLowerCase()===t)}addCustomProperty(e,t){if(this._assertOpen(),typeof e!=`string`||e===``)throw Error(`A custom property needs a name.`);let n=this.getCustomProperty(e);if(n)return n.setValue(t),n;let r=new cn({key:e,...sn(t)},this);return this._custom.push(r),r}deleteAllCustomProperties(){this._assertOpen(),this._custom=[]}_assertCustomEditable(e){if(this._assertOpen(),!this._custom.includes(e))throw Error(`The custom property has been deleted.`)}_removeCustom(e){this._assertCustomEditable(e),this._custom=this._custom.filter(t=>t!==e)}fromJSON(e){let{custom:t,...n}=e??{};this._json=n,this._custom=(t??[]).map(e=>new cn({...e},this))}toJSON(){let e={...this._json};return this._custom.length>0&&(e.custom=this._custom.map(e=>e.toJSON())),e}};function Z(e){return _(`error.workbook.invalidSheetKey`,{key:e})}function un(e){return _(`error.workbook.sheetNameNotFound`,{sheetName:e})}function Q(e,t){return _(t===`chart`?`error.workbook.sheetIsChart`:t===`macro`?`error.workbook.sheetIsMacro`:`error.workbook.sheetIsDialog`,{sheetName:e})}function dn(e,t){return t===`chart`?_(`error.workbook.selectedIsChart`,{sheetName:e}):t===`macro`?_(`error.workbook.selectedIsMacro`,{sheetName:e}):t===`dialog`?_(`error.workbook.selectedIsDialog`,{sheetName:e}):_(`error.workbook.noWorksheet`)}var fn=class extends we{constructor(e,t,n,r){super(),this._add=e,this._get=t,this._addListeners=n,this._getSelected=r}getActive(){return this._getSelected()}getAt(e){return this.getItems()[e]??null}getByIndex(e){return this.getItems()[e]??null}getAll(){return this.getItems()}add(e){return this._add(e)}_getItems(e){return this._get(e?.name,e?.visibility)}getByName(e){return this._get(e)?.[0]??null}addListeners(e,t){return this._addListeners(e,t)}get isIWorksheetCollection(){return!0}},pn=new RegExp(/[\\/\\*?:[\]]+/),mn=new RegExp(/\(((\d+)(?!.*\d))\)$/,`g`);function hn(e){let t=_(a(`workbook.defaultSheetName`),{n:e+1});return t===`workbook.defaultSheetName`?`Sheet${e+1}`:t}function gn(e,t){return{...Se,getWorksheet:()=>null,toString:()=>P(e,t)}}function _n(e,t=!1){if(!e)throw Error(_(`error.workbook.sheetNameBlank`));if(pn.test(e)){if(!t)throw Error(function(e){return e?_(`error.workbook.sheetNameInvalidCharsNamed`,{sheetName:e}):_(`error.workbook.sheetNameInvalidChars`)}(e));e=e.replace(pn,``)}if(e.length===0)throw Error(_(`error.workbook.sheetNameBlank`));let n=e.length;if(n>31){if(!t)throw Error(_(`error.workbook.sheetNameTooLong`));e=e.substring(0,31)}if(e.charAt(0)===`'`||e.charAt(n-1)===`'`){if(!t)throw Error(_(`error.workbook.sheetNameQuotes`));e=e.replace(/^'|'$/g,``)}return e}var vn=`workbook.activeSheet`,yn=class e extends st{constructor(e,t,n,r){super(e,t,r),this._workbook=n}getSource(){return this._workbook}_createRanges(t,n){let r=this._options;return n&&(r={...this._options,getOptions:M(this._options?.getOptions,n)}),new e(t,this._internal,this._workbook,r)}_createRange(e,t){let n=e?{...e}:null,r=this._workbook,i=n?r._getSheetRef(n.scope,N.Visibility.VeryHidden):null;if(i&&!i.sheet.isIWorksheet)throw new h(Q(i.name,i.sheet.getKind()));if(!i){let e=r._anchorWorksheet();return delete n?.scope,gn(n,n?{scope:Qe,...e.getEntireRange().getCoords()}:null)}let a=this._options;return t&&(a={...this._options,getOptions:M(this._options.getOptions,t)}),new bn(e,L(i.sheet),this._workbook,a)}async select(e){let t=[],n=null,r=this.getCoords();for(let e=0;e<r.length;e++){let i=r[e];i&&(n||=i.scope,i&&i.scope===n&&t.push(i))}n||=this._workbook.getWorksheet().getName();let i=this._workbook.getWorksheets().getByName(n);if(!i)return;let a=await i.getRanges(t).select(e),o=this._workbook._rangesAddressToCoords(a.getCoords());return this._createRanges(o)}addListener(e,t){if(!this.getCoords())return()=>{};let n=this._workbook._sheetToWBEvent(e);return super.addListener(n,t)}get[Symbol.toStringTag](){return`[WorkbookRanges]`}getAddress(e){let t=this._internal.getSheet(),n=t.getEntireRange().getCoords();return ge(this.getCoords(),{...n,scope:t.getName()},P,Ee,e)}toString(){return this.getAddress()}},bn=class e extends ut{constructor(e,t,n,r){super(e,t,r),this._workbook=n}_createRanges(e,t){let n=this._options;return t&&(n={...this._options,getOptions:M(this._options?.getOptions,t)}),new yn(e,this._internal,this._workbook,n)}_createRange(t,n){let r=this._internal;if(!t)return je(r.getSheet(),r.getSheet().getEntireCoords());if(r.validateCoords(t),r.getSheet().isClosed())return je(null,r.getSheet().getEntireCoords(),t);let i=this._options;return n&&(i={...this._options,getOptions:M(this._options?.getOptions,n)}),new e(t,this._internal,this._workbook,i)}addListener(e,t){if(!this.getCoords())return()=>{};let n=this._workbook._sheetToWBEvent(e);return super.addListener(n,t)}get[Symbol.toStringTag](){return`[WorkbookRange]`}getAddress(e){let t=this._internal.getSheet(),n=t?.getEntireRange().getCoords()??null;return P(this.getCoords(),{...n,scope:t.getName()})}toString(){return this.getAddress()}},xn=e=>!!e&&typeof e==`object`&&typeof e.getOrigin==`function`,Sn=class{constructor(t){this._isLoadingSheets=!1,this._lastTransactionUUID=null,this._starting=null,this._closed=!1,this._listenerOriginProvider=null,this._listenerOrigin=null,this._lastOriginName=null,this._initializing=!0,this._pivotCaches=[],this._pivotTableCollection=new at(()=>{let e=[];for(let t of this.getWorksheets().getItems({visibility:N.Visibility.VeryHidden}))e.push(...t.getPivotTables());return e},(e,t)=>this.doBatch(e,t)),this._people=new Wt,this._commentCollection=new $e(null,(e,t,n)=>{let r=[];for(let i of this.getWorksheets().getItems({visibility:N.Visibility.VeryHidden}))r.push(...i.getComments().getItems(e?{address:e,ignoreHidden:t,fullyContained:n}:{ignoreHidden:t,fullyContained:n}));return r},(e,t)=>this.addListeners({onSheetsChange:e.onCollectionChange?()=>{e.onCollectionChange(this._commentCollection)}:void 0},t)),this._isDate1904=!1,this._codeName=null,this._updateLinks=null,this._hiddenPivotFieldList=!1,this._documentProperties=new ln(()=>{if(this._closed)throw Error(_(`error.workbook.modelClosed`))}),this._locale=null,this._localeOverrides=null,this._startModules=new WeakSet;let n=typeof t==`string`?{origin:t}:{...t},i=n.origin;this._ownOriginProvider=!xn(i),this._originProvider=xn(i)?i:new Ct(typeof i==`string`?new V(null,{name:i}):i??new V(null)),delete n.origin,this._bindOrigin(this._originProvider.getOrigin()),this._listenerOriginProvider=this._originProvider.addListeners({onOriginChange:()=>this._onOriginChange()});let o=n.json;delete n.json,this._transactions=n.transactions??new x,this._id=this._transactions.create(),this._ownTransactions=!n.transactions,this._emitter=new b(this,this._transactions),this._runtime=n.runtime??new ht(`Workbook Runtime`,{isDate1904:()=>this._isDate1904,getNow:()=>this._transactions.getCurrentCommit().getTimestamp(),getLocale:()=>this._locale??Oe()??Ie(),getLocaleOverrides:()=>this._localeOverrides}),this._listenerLanguage=g.addChangeListener(()=>{this._closed||this._notifyAllChange()});let s=this,c=this._beginCommit({description:a(o?`op.openWorkbook`:`op.newWorkbook`)});try{this._strings=n.strings??new Ce,this._ownStrings=!n.strings,this._richValues=n.richData??new ft,this._resources=n.resources??new Ke,this._ownResources=!n.resources,this._fetch=new Qt(this._resources,n.fetcher??new Xt),this._createSheetName=n.createSheetNameCallback??hn;let t=n.createWorksheetCallback;t||=e=>new Ue(e),this._sheetOnNameChange=new Map,this._sheetOnVisibilityChange=new Map,this._sheetOnIndexChange=new Map,this._createSheet=(e,n,r,i,a,o,c)=>{let l=null,u={runtime:s._runtime,readonly:s._options.readonly??!1,disableLoadAutoFit:s._options.disableLoadAutoFit??!1,opener:s._options.opener,transactions:s._transactions,styles:s._styles,strings:s._strings,richData:s._richValues,resources:s._resources,names:s._names,workbook:s,calculation:s._calculation,resolveRange:e=>s._options.resolveRange?.(e)??s.getRange(e),container:{beforeFromJSON:t=>{l=t,s._addSheetRef({name:n,id:e,visibility:r??N.Visibility.Visible,sheetId:a,sheet:t},i)},getName:()=>{let e=s._getSheetRef(l);return e?e.name:n},setName:(e,t)=>{s._getSheetRef(l)&&s._setSheetName(l,e,t)},setNameChangeCallback:t=>{s._sheetOnNameChange.set(e,t)},getVisibility:()=>{let e=s._getSheetRef(l);return e?e.visibility:N.Visibility.Visible},setVisibility:(e,t)=>{s._setSheetVisibility(l,e,t)},setVisibilityCallback:t=>{s._sheetOnVisibilityChange.set(e,t)},duplicate:()=>s._duplicateSheet(l),getIndex:()=>{let e=s._getSheetRef(l);return e?s._getOffsetForId(e.id,s._getSheetRefs(N.Visibility.VeryHidden)):i},setIndex:(e,t)=>{let n=s._getSheetRef(l,N.Visibility.VeryHidden);return!!n&&(s._moveSheet(n,e,t),!0)},setIndexCallback:t=>{s._sheetOnIndexChange.set(e,t)},requestSelect:()=>s._requestSelect(l)}};return o&&(u.json=o),c!==void 0&&(u.uid=()=>c),l=t(u,n,i,r),l},this._namedTableSource=new Be({getSheets:()=>s._sheets?s.getWorksheets().getItems({visibility:N.Visibility.VeryHidden}):r.EmptyArray,addSheetsListener:(e,t)=>s.addListeners({onSheetsChange:e},t)}),this._names=n.names??new tt({addressToRanges:e=>s.getRanges(e),getCurrentScope:()=>s.getSelectedWorksheet()?.getName()??null,isReadOnly:()=>(s._options.readonly??!1)||s._isStructureProtected(),transactions:s._transactions,getSources:()=>s._calculation?[s._calculation.getNamedFormulas(),s._namedTableSource]:r.EmptyArray}),this._ownNames=!n.names,this._calculation=n.calculation??new Ye({runtime:s._runtime,functions:n.functions,json:o?.calc,isNamesReadOnly:()=>s._isStructureProtected(),getActiveCell:()=>{let e=s.getSelectedWorksheet(),t=e?.getSelectedRange()?.getCoords();return e&&t?{rowIndex:t.rowStart,colIndex:t.colStart,scope:e.getId()}:null},getRange:s.getRange.bind(s),getRanges:s.getRanges.bind(s),createGraphRanges:(e,t)=>s._createGraphRanges(e,t),getSheetIndex:e=>{if(e===void 0){let e=s.getSelectedSheet();return e?this._getSheetRefs(N.Visibility.VeryHidden).findIndex(t=>t.sheet===e):-1}let t=this._getSheetRefs(N.Visibility.VeryHidden);e=e.toLowerCase();let n=t.length;for(let r=0;r<n;r++)if(t[r].name.toLowerCase()===e)return r;try{Cn.address=e;let t=this._names.getItems(Cn);if(!t||t.length===0)return-1;let n=t[0].getRanges?.()?.getCoords()?.[0]?.scope;if(!n)return-1;let r=this._getSheetRefs(N.Visibility.VeryHidden);n=n.toLowerCase();let i=r.length;for(let e=0;e<i;e++)if(r[e].name.toLowerCase()===n)return e}catch{return-1}return-1},getSheetCount:()=>s._getSheetRefs(N.Visibility.VeryHidden).length,externalBooks:o?.externalBooks,externalBookResolver:n.externalBookResolver,namedCollection:s._names,strings:s._strings,get resources(){return s._resources},fetch:(e,t)=>s._fetch.fetch(e,t),parseText:(t,n)=>(async(t,n,r)=>{let i=await e(()=>import(`./CnPgk3HcIziOcskY.js`).then(e=>v(e.default,1)),__vite__mapDeps([7,8]),import.meta.url),a=(i.default??i).parse(n,{delimiter:r?.delimiter??`,`,skipEmptyLines:!1}).data,o=a.length,s=a[o-1];s&&s.length===1&&s[0]===``&&o--;let c=0;for(let e=0;e<o;e++)a[e].length>c&&(c=a[e].length);let l=Array(o);for(let e=0;e<o;e++){let n=a[e],r=Array(c);for(let e=0;e<c;e++){let i=n[e];r[e]=i===void 0||i===``?null:ct(t,i).value}l[e]=r}return l})(s._runtime,t,n),startFunctions:()=>s._startFunctions(),transactions:s._transactions,names:o?.names}),this._ownCalculation=!n.calculation,this._scripts=this._createScripts(o?.modules),this._ownNames=!n.names,this._options=Object.freeze({...n});let i=o?.sheets?.length?o.sheets.map(e=>e.name):[this._createSheetName(0)],a=i.map(e=>e+`-`+r.uuidV4()),l=e=>{let t=o?.sheets?.[e]?.kind;return!!t&&t!==N.Kind.Worksheet};this._calculation._setSheets(i.map((e,t)=>l(t)?[a[t],e,!0]:[a[t],e]));let u=n.calcOnLoad??`auto`,d=!1,f=(async()=>{try{if(this._ownCalculation&&u!==`none`&&(u===`full`||u===`auto`&&!0===o?.calc?.fullCalcOnLoad?await this._calculation._calculateForLoad():await this._calculation.start(),this._closed||(await this._refreshPivotCachesOnLoad(),this._closed)))return;await this._scripts.start()}finally{d=!0,this._starting=null}})();d||(this._starting=f),this._starting?.catch(()=>{}),o?this._fromJSON(o,a):(this._initState(),this._addSheet(!1,i[0],null,a[0])),this._sheets=new fn(e=>s._addSheetOptions(e),(e,t)=>{if(e){let n=this._getSheetRef(e,t);return n&&$(n)?[n.sheet]:r.EmptyArray}return this._getWorksheets(t)},(e,t)=>{let n=e.onCollectionChange,r=e.onInvalidated;return s._emitter.addListeners({onSheetsChange:n?()=>{n(s._sheets)}:void 0,onInvalidated:r?()=>{r(s._sheets)}:void 0},t)},()=>s.getSelectedWorksheet()),this._ownCalculation&&(n.calcOnLoad??`auto`)!==`none`&&(this._calculation.hydrateNames(),this._holdPivotCaches()),this._emitter.notify(`onLoad`),this._ownTransactions?c.amend():c.commit()}catch(e){throw c.rollback(),e}this._initializing=!1}_initState(){let e=this._getSheetRefs();for(let t=(e?e.length:0)-1;t>=0;t--);let t=this._options;this._isDate1904=t.runtime?.isDate1904()??!1,this._locale=null,this._localeOverrides=null,this._theme=t.theme??new rt().getDefaultTheme(),this._styles=t?.styles??new Pe(this._theme),this._ownStyles=!t.styles,this._styles.getTheme()||this._styles.setTheme(this.getTheme()),this._activeSheetOffset=0,this.setView(new rn),this._listenerProtection?.(),this._protection=new on(void 0,this._options.readonly??!1),this._listenerProtection=this._protection.addListeners({onChange:e=>{n._emitter.notify(`onProtectionChange`)}});let n=this;this._transactionsRemoveListener=this._transactions.addStateListener(this._id,{async onAfterStateChange(e,t,r,i,a){let o=n._view,s=a?.[vn],c=r?s?.before:s?.after,l=s?.viewId===o.getId()&&c!=null,u=l?c:o.getActiveSheetId(),d=l&&t.getId()===n._lastTransactionUUID?n._getSheetRef({id:u}):null;d?await d.sheet.select():n._resyncActiveSheet(u,e),n._lastTransactionUUID=t.getId(),(r||i)&&n._emitter.notify(`onSheetsChange`),n._emitter.notify(`onSelectedSheetChange`),n._emitter.notify(`onViewChange`)},onRestoreOrRevert(){n._ownCalculation,n._emitter.notify(`onInvalidated`)}});let r=this._getState();r?.listenersSheets&&(r?.listenersSheets.forEach(e=>{e()}),r?.listenersSheets.clear()),this._updateState({sheetRefsAll:[],sheetRefsVisibleAndHidden:[],sheetRefsVisible:[],refsById:new Map,sheetsById:new Map,refsByLowerCaseName:new Map,sheetsByLowerCaseName:new Map,refsByInstance:new Map,lastId:-1,sheetsCreated:new Set,listenersSheets:new Map,pivotCacheData:new Map})}getId(){return this._id}getVersionId(){return this._transactions.getVersionId(this._id)}getName(){return this._closed?null:this._origin.getName()}getOrigin(){return this._originProvider.getOrigin()}_onOriginChange(){if(this._closed)return;let e=this._originProvider.getOrigin();if(e===this._origin)return;this._listenerOrigin?.();let t=this._lastOriginName;this._bindOrigin(e),this._emitter.notify(`onOriginChange`),this._lastOriginName!==t&&this._emitter.notify(`onNameChange`)}_bindOrigin(e){this._origin=e,this._lastOriginName=e.getName(),this._listenerOrigin=e.addListeners({onChange:()=>{if(this._closed)return;let t=e.getName();t!==this._lastOriginName&&(this._lastOriginName=t,this._emitter.notify(`onNameChange`))}})}getView(){return this._view}setView(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));if(!e)throw new h(_(`error.sheet.emptyView`));this._listenerWorkbookView?.();let t=this,n=-1;return this._listenerWorkbookView=e.addListeners({onViewChange:e=>{let r=t._getState(),i=this._view.getActiveSheetId(),a=r.sheetRefsVisible,o=this._getOffsetForId(i,a);this._activeSheetOffset=o,t._emitter.notify(`onViewChange`),n!==i&&(t._emitter.notify(`onSelectionChange`),t._emitter.notify(`onSelectedSheetChange`)),n=i}}),this._view=e,t._emitter.notify(`onViewChange`),this}getRuntime(){return this._runtime}setDate1904(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));return this._isDate1904===e||(this._isDate1904=e,this._emitter.notify(`onRegionalChange`)),this}getLocale(){return this._runtime.getLocale()}getPinnedLocale(){return this._locale}setLocale(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));if(e)try{new Intl.Locale(e)}catch{throw Error(_(`error.workbook.invalidLocale`,{locale:e}))}return this._locale===e||(this._locale=e,this._emitter.notify(`onRegionalChange`)),this}getLocaleOverrides(){return this._localeOverrides}setLocaleOverrides(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));let t=e&&Object.keys(e).length>0?e:null;return this._localeOverrides=t,this._emitter.notify(`onRegionalChange`),this}getStyles(){return this._styles}getResources(){return this._resources}getFetcher(){return this._fetch.getFetcher()}fetch(e,t){return this._fetch.fetch(e,t)}getTransactions(){return this._transactions}getChanges(e){let t=this._transactions,[n,r]=t.getLog(e??t.getCurrentCommit(!1).getId(),2),i=[],a=this.getWorksheets().getItems({visibility:N.Visibility.VeryHidden});for(let e=0;e<a.length;e++){let t=a[e];t instanceof Ue&&i.push(...t._changeEventsOf(n,r??null))}return i}getStrings(){return this._strings}getExternalBooks(){return this._calculation.getExternalBooks()}getUpdateLinks(){return this._updateLinks}setUpdateLinks(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));return this._updateLinks=e,this}getPivotTables(){return this._pivotTableCollection}getComments(){return this._commentCollection}getPeople(){return this._people}getTheme(){return this._theme}setTheme(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));if(!e)throw new h(_(`error.workbook.notSetValue`));let t=this._theme;return this._theme=e,this.getStyles().setTheme(e),this._emitter.notify(`onThemeChange`),t}getSelectedSheetIndex(){return this._activeSheetOffset}getSelectedSheet(){let e=this._getSheetRef(this.getSelectedSheetIndex());return e?e.sheet:null}getSelectedWorksheet(){let e=this._getSheetRef(this.getSelectedSheetIndex());return e&&$(e)?e.sheet:null}getActiveSheet(){return this.getSelectedWorksheet()}getActiveWorksheet(){return this.getSelectedWorksheet()}getSheets(e){let t=this._getSheetRefs(e?.visibility??N.Visibility.Visible),n=Array(t.length);for(let e=0;e<t.length;e++)n[e]=t[e].sheet;return n}getSheet(e){if(e===void 0)return this.getSelectedSheet();if(!e)throw Error(_(`error.workbook.sheetNameNotProvided`));let t=this._getSheetRef(e);if(!t)throw new d(un(e));return t.sheet}getWorksheet(e,t=N.Visibility.Visible){if(typeof e==`number`)return this.getWorksheetAt(e,t);if(e===void 0)return this._requireSelectedWorksheet();if(!e)throw Error(_(`error.workbook.sheetNameNotProvided`));let n=this._getSheetRef(e,t);if(!n)throw new d(un(e));if(!$(n))throw new d(Q(n.name,n.sheet.getKind()));return n.sheet}getWorksheetAt(e,t=N.Visibility.Visible){let n=this._getWorksheets(t)[e];if(!n)throw new d(function(e){return _(`error.workbook.sheetIndexNotFound`,{index:e})}(e));return n}_requireSelectedWorksheet(){let e=this.getSelectedWorksheet();if(e)return e;let t=this.getSelectedSheet();throw new h(dn(t?.getName()??``,t?.getKind()??N.Kind.Worksheet))}_anchorWorksheet(){return this.getSelectedWorksheet()||(this._getWorksheets(N.Visibility.VeryHidden)[0]??null)}getWorksheets(){return this._sheets}addWorksheet(e){return this.getWorksheets().add(e)}_getWorksheets(e=N.Visibility.Visible){let t=this._getSheetRefs(e),n=[],r=t.length;for(let e=0;e<r;e++){let r=t[e];$(r)&&n.push(r.sheet)}return n}_getSheetRefs(e=N.Visibility.Visible){let t=this._getState();return t?e===N.Visibility.Visible?t.sheetRefsVisible:e===N.Visibility.Hidden?t.sheetRefsVisibleAndHidden:e===N.Visibility.VeryHidden?t.sheetRefsAll:r.EmptyArray:[]}_getSheetRef(e,t=N.Visibility.Visible){let n=null;return typeof e==`number`?this._getSheetRefs(t)[e]:(typeof e==`string`?n=this._getState().refsByLowerCaseName.get(e.toLowerCase()):!0===e?.isISheet?n=this._getState().refsByInstance.get(e):e?.id!==void 0&&(n=this._getState().refsById.get(e.id)),n)}_validateNewSheetName(e,t=!0){if(e==null)return e;if(_n(e),t&&this._getState().sheetsByLowerCaseName.has(e.toLowerCase()))throw new h(_(`error.workbook.nameTaken`));return e.substring(0,31)}findValidSheetName(e){e&&=_n(e,!0);try{return function(e,t){try{if(t(e))return e}catch{}let n,r,i=mn.exec(e);for(i===null?(n=e+` `,r=1):(n=e.substring(0,i.index),r=parseFloat(i[1]));r<256;){r++;let e=`(`+r+`)`,i=n.substring(0,31-e.length)+e;try{if(t(i))return i}catch{}}throw Error(e+` is not a valid sheet name`)}(e,e=>this._validateNewSheetName(e))}catch{return this._nextSheetName()}}isValidSheetNameCharacter(e){return!pn.test(e)}_isStructureProtected(){return!this._initializing&&!this.getProtection().isStructureAllowed()}_addSheetOptions(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new c(_(`error.workbook.protection`));let t,n=null;t=typeof e==`string`?{name:e}:typeof e==`number`?{index:e}:e,t={...t,description:t?.description??a(`op.addSheet`)};let r=this.beginCommit(t);try{let e=t?.autoSelect??!1;n=this._addSheet(!0,t.name,t.index??null);let i=this.getView().getActiveSheetId();if(e&&this._recordActiveSheet(r,i,this._getSheetRef(n).id),r.commit({description:_(`op.addSheetNamed`,{name:n.getName()})}),!1!==e){let t=typeof e==`boolean`?void 0:e;n.select(t)}}catch(e){throw r.rollback(),e}return n}_nextSheetName(e=null){let t=e?e.toLowerCase():null,n=this._getState(),r=n.sheetsByLowerCaseName;if(e&&r.has(t))throw new h(function(e){return _(`error.workbook.nameDuplicate`,{sheetName:e})}(e));t=(e=this._validateNewSheetName(e))?e.toLowerCase():null;let i=n.lastId+1;for(;!e;){let t=this._createSheetName(i),n=t.toLowerCase();r.has(n)?i++:e=t}return this._updateState({lastId:i}),e}_addSheet(e,t=null,n=null,r){t=this._nextSheetName(t);let i=this._getState(),a=this._createSheet(i.lastId,t,N.Visibility.Visible,n,void 0,null,r);if(!a)throw new h(_(`error.workbook.sheetNameBlank`));return e&&(this._tellSheets(),this._emitter.notify(`onSheetsChange`)),a}_createOpaqueSheet(e,t,n,i,a,o,s,c,l){let u=this,d=null;return d=new nn({kind:o,id:l??t+`-`+r.uuidV4(),part:s,tabColor:c,styles:this._styles,transactions:this._transactions,workbook:this,container:{getName:()=>u._getSheetRef(d)?.name??t,setName:(e,t)=>{u._setSheetName(d,e,t)},getVisibility:()=>u._getSheetRef(d,N.Visibility.VeryHidden)?.visibility??N.Visibility.Visible,setVisibility:(e,t)=>{u._setSheetVisibility(d,e,t)},getIndex:()=>{let e=u._getSheetRef(d,N.Visibility.VeryHidden);return e?u._getOffsetForId(e.id,u._getSheetRefs(N.Visibility.VeryHidden)):-1},setIndex:(e,t)=>{let n=u._getSheetRef(d,N.Visibility.VeryHidden);n&&u._moveSheet(n,e,t)},requestSelect:()=>u._requestSelect(d),isAttached:()=>!!u._getSheetRef(d,N.Visibility.VeryHidden)}}),this._sheetOnNameChange.set(e,()=>d._notify(`onNameChange`)),this._sheetOnVisibilityChange.set(e,()=>d._notify(`onVisibilityChange`)),this._sheetOnIndexChange.set(e,()=>d._notify(`onIndexChange`)),this._addSheetRef({name:t,id:e,visibility:n??N.Visibility.Visible,sheetId:a,sheet:d},i),d}async _requestSelect(e){return this._setSelectedSheet(e),await this._emitter.notify(`onRequestSelect`,{source:this,params:e,async:!0}),this.getSelectedSheet()===e}_updateSheetRefStates(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));if(!this._initializing&&!this.getProtection().isStructureAllowed())throw new c(_(`error.workbook.protection`));let t=e,n=[],r=[],i=t.length;for(let e=0;e<i;e++)t[e].visibility===N.Visibility.Visible?(n.push(t[e]),r.push(t[e])):t[e].visibility===N.Visibility.Hidden&&r.push(t[e]);this._updateState({sheetRefsAll:t,sheetRefsVisible:n,sheetRefsVisibleAndHidden:r})}_tellSheets(){if(this._isLoadingSheets)return;let e=this._getState().sheetRefsAll;this._calculation._setSheets(e.map(e=>$(e)?[e.sheet.getId(),e.name]:[e.sheet.getId(),e.name,!0]))}_addSheetRef(e,t=null){let n=this._getState(),r=n.sheetRefsAll,i=Math.max(0,Math.min(r.length,t??r.length)),a=[...r.slice(0,i),e,...r.slice(i)];this._updateSheetRefStates(a);let o=e.sheet,s=e.name.toLowerCase(),c=new Map(n.refsById);c.set(e.id,e);let l=new Map(n.refsByLowerCaseName);l.set(s,e);let u=new Map(n.refsByInstance);u.set(o,e);let d=new Map(n.sheetsById);d.set(e.id,o);let f=new Map(n.sheetsByLowerCaseName);f.set(s,o);let p=this,m=n.listenersSheets;if(o!==void 0){let t=o.addListeners({onBeforeDelete:e=>{p._validateDeleteSheet(e)},onDelete(e){let t=p._getSheetRef(e,N.Visibility.VeryHidden);if(!t)return;let n=p._beginCommit({description:_(`op.deleteSheet`,{name:t.name})});try{let r=p._getState(),i=r.sheetRefsAll,a=p._getOffsetForId(t.id,i),s=[...i];s.splice(a,1),p._updateSheetRefStates(s);let c=new Map(r.refsById);c.delete(t.id);let l=new Map(r.sheetsById);l.delete(t.id);let u=t.name.toLowerCase(),d=new Map(r.refsByLowerCaseName);d.delete(u);let f=new Map(r.sheetsByLowerCaseName);f.delete(u);let m=new Map(r.refsByInstance);m.delete(e),r.listenersSheets.get(t.id)();let h=new Map(r.listenersSheets);h.delete(t.id),p._adjustRemoveSelectionIfRequired(a,t.id),p._adjustSheetNamesIfRequired(),p._sheetOnNameChange.delete(t.id),p._sheetOnVisibilityChange.delete(t.id),p._sheetOnIndexChange.delete(t.id),p._tellSheets(),p._emitter.notify(`onSheetsChange`);let g=new Set(r.sheetsCreated);g.has(o)&&g.delete(o),p._updateState({refsById:c,sheetsById:l,refsByLowerCaseName:d,sheetsByLowerCaseName:f,refsByInstance:m,sheetsCreated:g,listenersSheets:h}),n.commit()}catch(e){throw n.rollback(),e}}},{transactional:!0}),r=$(e)?e.sheet.addListeners({onSelectionChange:e=>{p.getView().getActiveSheetId()===p._getSheetRef(e)?.id&&p._emitter.notify(`onSelectionChange`,{source:p,params:e})}},{transactional:!1}):null;m=new Map(n.listenersSheets),m.set(e.id,()=>{t(),r?.()})}let h=n.lastId;h!==-1&&(h=Math.max(h,e.id)),this._updateState({lastId:h}),this._updateState({refsById:c,refsByLowerCaseName:l,refsByInstance:u,sheetsById:d,sheetsByLowerCaseName:f,listenersSheets:m}),this._adjustSheetNamesIfRequired();let g=new Set(this._getState().sheetsCreated);return g.add(e.sheet),this._updateState({sheetsCreated:g}),this._tellSheets(),e}_recordActiveSheet(e,t,n){let r=this.getView().getId();e.setIntent(vn,e=>({viewId:r,before:e?.before??t,after:n}))}_resyncActiveSheet(e,t){let n=t?.sheetRefsVisible;if(!n?.length)return;let r=-1,i=n.length;for(let t=0;t<i;t++)if(n[t].id===e){r=t;break}r===-1&&(r=Math.min(Math.max(this._activeSheetOffset,0),i-1));let a=n[r].id;this._view.getActiveSheetId()===a?this._activeSheetOffset=r:this._view.setActiveSheetId(a)}_adjustRemoveSelectionIfRequired(e,t){if(this._view.getActiveSheetId()===t){let t,n=this._getState().sheetRefsVisible;t=e<n.length?n[e].id:n[e-1].id,this._view.setActiveSheetId(t)}}_adjustSheetNamesIfRequired(){let e=this._getState(),t=e.lastId;if(t===-1)return;let n=this._view.getActiveSheetId();n??=(this._view.setActiveSheetId(t),t);let r=e.refsById.get(n);r||(this._view.setActiveSheetId(t),r=e.refsById.get(t),n=t),r.visibility===N.Visibility.Visible&&(this._activeSheetOffset=this._getOffsetForId(n,e.sheetRefsVisible))}_validateDeleteSheet(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new c(_(`error.workbook.protection`));let t=this._getSheetRef(e);if(!t)throw new h(function(e){return _(`error.workbook.deleteKey`,{key:e})}(e));let n=this._getState().sheetRefsVisible;if(n.length===1&&n[0].id===t.id)throw new h(_(`error.workbook.sheetOne`))}_getOffsetForId(e,t){let n=t.length;for(let r=0;r<n;r++)if(t[r].id===e)return r;throw new h(_(`error.workbook.noVisibleRefs`))}find(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));let t=this._getWorksheets();if(t.length===0)return{next:()=>Fe};if(t.length===1)return t[0].find(e);typeof e==`string`&&(e={text:e});let n=!e?.reverse,r=e?.disableWrap??!1,i=this._worksheetOffsetFrom(this.getSelectedSheetIndex(),t),a=i,s=t[a],c=!1;e={...e,disableWrap:!0};let l,u=s.find(e),d=u.next(),f=!1;if(e?.from){let t=this._rangesAddressToCoords(e?.from);l={colIndex:t[0].colStart,rowIndex:t[0].rowStart}}let p=o.createCellComparator(e?.axis,e?.reverse);delete(e={...e}).from;let m=()=>{if(!f&&d.done&&(c&&a===i?f=!0:n?(a++,a>t.length-1&&(a=0,c=!0)):(a--,a<0&&(a=t.length-1,c=!0)),r&&c&&(f=!0),f||l||!c||a!==i||(f=!0),!f)){s=t[a],u=s.find(e);let n=d;return d=u.next(),n}if(!f&&c&&a===i&&(d.done||!l||!d.done&&p(d.value.getCoords(),l)>=0)&&(f=!0),f){let e=d;return d=Fe,e}let o=d;return d=u.next(),o};return{next:()=>{let e=m();for(;!f&&e.done;)e=m();return e}}}replace(e,t,n){let r=0,i=null,o=typeof t==`function`,s=n?.maxCount??2**53-1,c=!n?.maxCount,l=``,u=typeof t==`string`?ze(t):null,d=n?.description??a(`op.replace`),f=this._transactions.beginCommit({description:d});try{let d=null,p=null,m=e.next();for(;!m.done&&r<s;){let a=m.value,s=a.getWorksheet();s!==d&&(d=s,p!==null&&p.apply(),p=d.getEntireRange().createSparseBuilder({axis:n?.axis,allowUnorderedWrites:!0}));let c=o?t(a):t;c!==void 0&&c!==a&&(p.push(a,c),r++,i=a),m=e.next()}p?.apply(),r===1&&s===1&&i&&(l=i.getAddress()),r===0?f.rollback():f.commit({description:n?.description??(c?u===null?a(`op.replaceAll`):_(`op.replaceAllWith`,{value:u}):l?u===null?_(`op.replaceAt`,{address:l}):_(`op.replaceAtWith`,{address:l,value:u}):u===null?a(`op.replace`):_(`op.replaceWith`,{value:u}))})}catch(e){throw f.rollback(),e}return{count:r,last:i}}_nextSheetIndex(e,t=this._getSheetRefs()){let n=t.length;return n===1?0:(e===void 0&&(e=this.getSelectedSheetIndex()),(e=Math.max(0,Math.min(e,n-1)))>=n-1?0:e+1)}_prevSheetIndex(e,t=this._getSheetRefs()){let n=t.length;return n===1?0:(e===void 0&&(e=this.getSelectedSheetIndex()),(e=Math.max(0,Math.min(e,n-1)))<=0?n-1:e-1)}_worksheetOffsetFrom(e,t){let n=this._getSheetRefs(),r=n.length;for(let i=0;i<r;i++){let a=n[(e+i)%r];if(!$(a))continue;let o=t.indexOf(a.sheet);if(o!==-1)return o}return 0}getNextSheet(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));let t=this._getSheetRefs();return t[this._nextSheetIndex(e,t)]?.sheet??null}getPreviousSheet(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));let t=this._getSheetRefs();return t[this._prevSheetIndex(e,t)]?.sheet??null}async _duplicateSheet(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new c(_(`error.workbook.protection`));let t=this._getSheetRefs(),n=this.getSelectedSheetIndex(),r=null;if(e){if(r=this._getSheetRef(e),!r)throw new h(Z(r))}else r=t[n];if(!r)return null;if(!$(r))throw new h((i=r.name,_(`error.workbook.sheetNotDuplicable`,{sheetName:i})));var i;let a=r.sheet,o=t.indexOf(r),s=this._strings.beginPersist(),l=this.getResources().beginPersist(),u=this.getStyles().beginPersist(),d=this._richValues.beginPersist(),f=null,p=this.beginCommit(_(`op.duplicateNamed`,{name:a.getName()}));try{let e=this._getState().refsByInstance.get(a),n=await a.toJSON(),r=t.length+1,i=this.findValidSheetName(e.name),s=this._createSheet(r,i,e.visibility,o,void 0,n);this._tellSheets(),this._emitter.notify(`onSheetsChange`),f=s,p.commit()}catch(e){throw p.rollback(),e}finally{d.endPersist(),u.endPersist(),l.endPersist(),s.endPersist()}return f}_createRange(e,t){let n=e?{...e}:null,r=n?this._getSheetRef(n.scope,N.Visibility.VeryHidden):null;if(r&&!$(r))throw new h(Q(r.name,r.sheet.getKind()));if(!r){let e=this._anchorWorksheet();return e?(delete n?.scope,gn(n,n?{scope:Qe,...e.getEntireRange().getCoords()}:null)):void console.warn(_(`error.workbook.noVisibleRefs`))}let i=r.sheet,a=null;return t&&(a={getOptions:t}),new bn(e,L(i),this,a)}_createRanges(e,t){let n=this._anchorWorksheet();if(!n)throw new h(dn(``,N.Kind.Worksheet));let r=null;return t&&(r={getOptions:t}),new yn(e,L(n),this,r)}getRange(e,t){if(e===void 0)return this.getSelectedRange(t);typeof e==`number`&&(e=fe(arguments),t=void 0);try{let n=this._rangesAddressToCoords(e);if(n.length!==1)throw new h(_(`error.address.singleRangeOnlyAlt`));return this._createRange(n[0],t)}catch(t){throw t instanceof d?new d(t.message):new h(t.message??dt(e))}}getCell(e){if(e===void 0)return this.getSelectedCell();let t=this.getRange(e);if(t.size>1)throw new h(_(`error.address.singleCellOnly`));return t.getCell()}getRanges(e,t){let n=this._rangesAddressToCoords(e);if(n.length===0)throw new h(dt(e));return this._createRanges(n,t)}_createGraphRanges(e,t){let n=[],r=this.getCalculation()?.getNamedFormulas()??null;for(let e=0;e<t.length;e++){let i=t[e],a=i.sheetName?this._getSheetRef(i.sheetName,N.Visibility.VeryHidden):null,o=a&&$(a)?a.sheet:this._anchorWorksheet();o&&n.push(new it(i,r,L(o),null))}for(let t=0;t<e.length;t++)n.push(e[t]);let i=this._anchorWorksheet();return n.length!==0&&i?new yn(n,L(i),this,null):null}getAnomalies(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));let t=Me(e),n=this._getWorksheets(N.Visibility.VeryHidden).map(e=>{let t=L(e);return{bounds:t.getSheet().getEntireCoords(),internal:t,qualified:!0}});return new Ne(n,()=>(this.getSelectedWorksheet()??this._getWorksheets(N.Visibility.VeryHidden)[0]).getEntireRange(),t)}getStats(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));let t=this._getWorksheets(N.Visibility.VeryHidden),n=t.length;if(n===1)return t[0].getStats(e);let r=Array(n);for(let i=0;i<n;i++)r[i]=t[i].getStats(e);return new Bt(r)}_activeRangeCoords(){let e=this._requireSelectedWorksheet(),t=e.getSelection().getRanges().getCoords(),n=e.getName(),r=t.length,i=Array(r);for(let e=0;e<r;e++){let r=t[e];i[e]={colStart:r.colStart,colEnd:r.colEnd,rowStart:r.rowStart,rowEnd:r.rowEnd,scope:n}}return i}getSelectedRange(e){return this.getRange(this._activeRangeCoords()[0],e)}getSelectedRanges(e){return this.getRanges(this._activeRangeCoords(),e)}getSelectedCell(){return this._requireSelectedWorksheet().getSelectedCell()}_rangesAddressToCoords(e,t=!0,n=N.Visibility.Hidden){if(!e)throw new h(_(`error.address.noAddress`));let r=this.getSelectedWorksheet(),i={...(r??this._anchorWorksheet())?.getEntireRange().getCoords()},a=r?.getName();if(a&&(i.scope=a),typeof e==`string`){let t=e.trim().toLowerCase();if(t===`r`||t===`c`){let n=this.getSelectedCell().getCoords(),r={};t===`r`?r.rowStart=r.rowEnd=n.rowIndex:r.colStart=r.colEnd=n.colIndex,e=r}}let o=this,s=Re(e,i,_e,e=>{if(!t)return null;if(typeof e==`string`){let t=Ve(e,{getTable:e=>Le(o.getNames().getByName(e)),getAnchor:()=>r?{sheet:r,coords:r.getSelectedCell().getCoords()}:null});if(t)return[t];let n=o.getNames().getByName(e)?.getRanges?.();if(n)return n.getCoords()}throw new h(`Invalid sheet reference '${e}'.`)}),c=s.length;for(let e=0;e<c;e++)this._validateCoords(s[e],n);return s}_validateCoords(e,t=N.Visibility.Visible,n=_(`error.sheet.oobRange`)){if(e===null)return;let r=this.getWorksheet(e.scope??void 0,t).getEntireRange().getCoords();if(!o.isRangeWithinRange(e,r))throw new d(n);if(e.rowEnd<e.rowStart||e.colEnd<e.colStart)throw new h(_(`error.address.invalidRangeInverted`))}_updateSheetRef(e,t){let n=this._getState(),r=[...n.sheetRefsAll];r[this._getOffsetForId(e.id,n.sheetRefsAll)]=t,this._updateSheetRefStates(r);let i=new Map(n.refsById);i.set(e.id,t);let a=e.name.toLowerCase(),o=t.name.toLowerCase(),s=new Map(n.refsByLowerCaseName);s.delete(a),s.set(o,t);let c=new Map(n.sheetsByLowerCaseName),l=c.get(a);c.delete(a),c.set(o,l);let u=new Map(n.refsByInstance);return u.set(l,t),this._updateState({refsById:i,refsByLowerCaseName:s,sheetsByLowerCaseName:c,refsByInstance:u}),this._tellSheets(),t}_setSheetName(e,t,n){if(this._closed)throw Error(_(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new c(_(`error.workbook.protection`));let r=this._getSheetRef(e);if(!r)throw new h(Z(e));if(t===r.name)return r.sheet;if((t=this._validateNewSheetName(t))==null)throw new h(_(`error.workbook.sheetNameNotProvided`));let i=Object.freeze({...r,name:t}),o=null,s=this.beginCommit(a(`op.renameSheet`));try{let e=this._updateSheetRef(r,i);this._adjustSheetNamesIfRequired(),this._sheetOnNameChange.forEach((e,t)=>{r.id===t&&e()}),this._emitter.notify(`onSheetsChange`),r.id===this.getView().getActiveSheetId()&&this._emitter.notify(`onSelectionChange`),o=e.sheet,s.commit(n)}catch(e){throw s.rollback(),e}return o}_setSheetVisibility(e,t=N.Visibility.Visible,n){if(this._closed)throw Error(_(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new c(_(`error.workbook.protection`));let r=this._getSheetRef(e,N.Visibility.VeryHidden);if(!r)return null;if(t===r.visibility)return;let i=null,o=``;t===N.Visibility.Visible?o=a(`op.unhideSheet`):t===N.Visibility.Hidden?o=a(`op.hideSheet`):t===N.Visibility.VeryHidden&&(o=a(`op.veryHideSheet`));let s=this.beginCommit(o);try{let e=this._getState().sheetRefsVisible;if(t!==N.Visibility.Visible&&e.length===1&&e[0].id===r.id)throw new h(_(`error.workbook.sheetOne`));let a={...r,visibility:t},o=-1;t!==N.Visibility.Visible&&(o=this._getOffsetForId(r.id,e)),i=this._updateSheetRef(r,a).sheet,t!==N.Visibility.Visible&&this._adjustRemoveSelectionIfRequired(o,r.id),this._adjustSheetNamesIfRequired(),s.commit(n)}catch(e){throw s.rollback(),e}return this._sheetOnVisibilityChange.forEach((e,t)=>{r.id===t&&e()}),this._emitter.notify(`onSheetsChange`),i}_moveSheet(e,t,n){if(this._closed)throw Error(_(`error.workbook.modelClosed`));if(!this.getProtection().isStructureAllowed())throw new c(_(`error.workbook.protection`));let r=null,i=this.beginCommit(_(`op.moveSheetNamed`,{name:e.name}));try{let a=this._getState(),o=a.sheetRefsVisible;if(t<0||t>o.length-1)throw new h(`Invalid to index: ${t}`);let s=this.getView().getActiveSheetId(),c=a.sheetRefsAll,l=this._getOffsetForId(e.id,c),u=this._getOffsetForId(o[t].id,c);if(l===u)return;let d=c[l],f=[...c];f.splice(l,1),f.splice(u,0,d),this._updateSheetRefStates(f),this._calculation._replaceSheetSpans?.(c.map(e=>e.sheet.getId()),f.map(e=>e.sheet.getId()),d.sheet.getId()),this._adjustSheetNamesIfRequired(),this._sheetOnIndexChange.forEach((e,t)=>{t>=l&&t<=u&&e()}),this._tellSheets(),this._emitter.notify(`onSheetsChange`),r=d.sheet,this._recordActiveSheet(i,s,this.getView().getActiveSheetId()),i.commit(n)}catch(e){throw i.rollback(),e}return r}_setSelectedSheet(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));let t=this._getSheetRef(e);if(!t)throw new h(Z(e));let n=null;return t.visibility!==N.Visibility.Visible&&this._setSheetVisibility(t,N.Visibility.Visible),this._view.setActiveSheetId(t.id),n=t.sheet,n}getProtection(){return this._protection}getProperties(){return this._documentProperties}getCodeName(){return this._codeName}getNames(){return this._names}getCalculation(){return this._calculation}getFonts(){return et.getShared()}createFormula(e,t,n){return this.getCalculation().createFormula(e,t,n)}evaluate(e,t){return this.getCalculation().evaluate(e,t)}async whenCalculationReady(){let e=this._starting;return e?e.then(()=>this.getCalculation().ready()):this.getCalculation().ready()}whenFontsReady(){return this.getFonts().whenReady()}async whenReady(){await Promise.all([this.whenCalculationReady(),this.whenFontsReady()])}getScripts(){return this._scripts||=this._createScripts(),this._scripts}getModules(){return this.getScripts().getModules()}_notifyAllChange(){this._emitter.notify(`onSheetsChange`),this._emitter.notify(`onSelectedSheetChange`),this._emitter.notify(`onViewChange`)}addListeners(e,t){return this._emitter.addListeners(e,t)}_sheetToWBEvent(e){let t=this,n=e=>{if(e.isInvalid())return e;let n=e.getWorksheet().getName();if(e.isICellRanges){let r=e.getCoords().map(e=>e.scope?e:{...e,scope:n});return t.getRanges(r)}let r=e.getCoords();return t.getRange(r.scope?r:{...r,scope:n})};return t=>{e({getSource:()=>n(t.getSource()),getRanges:()=>{let e=t.getRanges();return e?n(e):null},getPreviousAddress:()=>t.getPreviousAddress(),getTrigger:()=>t.getTrigger(),isUndo:()=>t.isUndo(),getCommit:()=>t.getCommit(),toString:()=>`WorkbookRangeEvent: ('${t.getTrigger()}', ${n(t.getSource()).toString()})`,getTimeStamp:()=>t.getTimeStamp()})}}_holdPivotCaches(){let e=this._pivotCaches;if(e.length===0)return;let t=e=>{let t=this._getSheetRef(e),n=t&&$(t)?t.sheet:null;return n?n._contentAddWatch(()=>null):null},n=e=>{for(let t of this._getSheetRefs(N.Visibility.VeryHidden)){if(!$(t))continue;let n=t.sheet;if(n.getTables().getByName(e))return n._contentAddWatch(()=>null)}return null},r=(e,t)=>{let n=this._getSheetRef(e);return n&&$(n)?n.sheet.getRange(t):null},i=e=>{for(let t of this._getSheetRefs(N.Visibility.VeryHidden)){if(!$(t))continue;let n=t.sheet.getTables().getByName(e);if(n)return n}return null},a=(e,t)=>{let n=this._pivotSourceNamed(e,t)?.getValue(),i=typeof n==`string`?I(n):null;return i&&/^\$?[A-Za-z]+\$?\d+(?::\$?[A-Za-z]+\$?\d+)?$/.test(i.reference)?r(i.sheet,i.reference.replaceAll(`$`,``)):null};for(let o=0;o<e.length;o++)this._getState().pivotCacheData.has(e[o].cacheId)&&(e[o]._hold(t,n),e[o]._watchSource(r,i,a))}_pivotCacheStore(e){return{get:()=>this._getState().pivotCacheData.get(e),set:t=>{this._updateState(n=>({...n,pivotCacheData:new Map(n.pivotCacheData).set(e,t)}),a(`op.refreshPivotTable`))}}}_getPivotCache(e){return this._getState().pivotCacheData.has(e)?this._pivotCaches.find(t=>t.cacheId===e)??null:null}_pivotSourceOf(e,t){if(e.isITable)return{name:e.getName()};let n=null;if(typeof e==`string`){for(let t of this._getSheetRefs(N.Visibility.VeryHidden))if($(t)&&t.sheet.getTables().getByName(e))return{name:e};if(this.getNames().getByName(e))return{name:e};if(t.getNames().getByName(e)?.getScope())return{name:e,sheet:t.getName()};let r=I(e),i=r?this._getSheetRef(r.sheet):null;if(r&&(!i||!$(i)))return null;try{n=r?i.sheet.getRange(r.reference):t.getRange(e)}catch(e){if(!(e instanceof h))throw e;return null}}else n=e.isICellRange?e:t.getRange(e);if(!n||n.isInvalid())return null;let{rowStart:r,colStart:i,rowEnd:a,colEnd:o}=n.getCoords();return{ref:me({rowStart:r,colStart:i,rowEnd:a,colEnd:o}),sheet:n.getWorksheet().getName()}}_findPivotCache(e){let t=(e,t)=>(e??``).toLocaleLowerCase()===(t??``).toLocaleLowerCase();return this._pivotCaches.find(n=>{if(!this._getPivotCache(n.cacheId)||!n._getData().model||n._isStale())return!1;let r=n._getSource();return!!r&&t(r.ref,e.ref)&&t(r.sheet,e.sheet)&&t(r.name,e.name)})??null}_addPivotCache(e){let t=this._pivotCaches.reduce((e,t)=>Math.max(e,t.cacheId),-1)+1,n=this._pivotCacheStore(t);n.set({part:null,model:e,partFormats:null,source:null});let r=new q(t,n);return this._pivotCaches.push(r),this._holdPivotCaches(),r}async _refreshPivotCaches(e,t){let n=[];for(let t of this._getSheetRefs(N.Visibility.VeryHidden))if($(t))for(let r of t.sheet.getPivotTables().getItems())e.has(r.getCacheId())&&n.push(r);for(let e of n)e._assertRefreshAllowed();for(let r of e){let e=this._getPivotCache(r),i=e?await this._pivotSourceRangeOf(e._getSource()):null;if(!e||!i)throw new h(_(`error.pivotTable.refreshSourceUnsupported`));if(i.getRowCount()<2)throw new h(_(`error.pivotTable.refreshSourceTooSmall`));i.getWorksheet()._cellBuffer?.release();let a=e.toJSON();if(!a.fields)throw new h(_(`error.pivotTable.refreshSourceUnsupported`));let{model:o,remap:s}=t.refreshPivotCache(a,t.readPivotSource(i),e._getSource()??void 0,this._isDate1904);e._replace(o);for(let e of n)e.getCacheId()===r&&e._remapCache(s,t)}for(let e of n)await e._prepareRelayout(t);for(let e of n)e._refresh(t)}async _refreshPivotCachesOnLoad(){let e=this._pivotCaches.filter(e=>!!e._getData().model?.refreshOnLoad);if(e.length===0)return;let t=await ot.load();for(let n of e){if(this._closed)return;try{await this._transactions.doBatch(()=>this._refreshPivotCaches(new Set([n.cacheId]),t))}catch(e){if(!(e instanceof h||e instanceof c))throw e}}}async _pivotSourceRangeOf(e){if(!e)return null;if(e.ref){if(!e.sheet||e.ref.includes(`#REF!`))return null;let t=this._getSheetRef(e.sheet);return t&&$(t)?t.sheet.getRange(e.ref):null}if(!e.name)return null;if(!e.sheet)for(let t of this._getSheetRefs(N.Visibility.VeryHidden)){if(!$(t))continue;let n=t.sheet.getTables().getByName(e.name);if(!n||n.isDeleted())continue;let{rowEnd:r}=n.getDataRange().getCoords();return t.sheet.getRange({...n.getRange().getCoords(),rowEnd:r})}let t=await this._pivotSourceNamed(e.name,e.sheet??null)?.evaluate(),n=t?.isIReferenceRange?t.getCoords():null;if(!n?.scope)return null;let r=this._getSheetRef(n.scope);return r&&$(r)?r.sheet.getRange(n):null}_pivotSourceNamed(e,t){if(!t)return this.getNames().getByName(e);let n=this._getSheetRef(t);if(!n||!$(n))return null;let r=n.sheet.getNames().getByName(e);return r?.getScope()?r:null}_holdPivotSlicers(){let e=(e,t)=>{let n=this._getSheetRef(e);return(n&&$(n)?n.sheet:null)?.getPivotTables().getByName(t)??null};for(let t of this._getSheetRefs(N.Visibility.VeryHidden)){if(!$(t))continue;let n=t.sheet.getMovables().getItems();for(let t=0;t<n.length;t++){let r=n[t].getContent();r.isISlicer&&r._holdPivotTables(e)}}}_fromJSON(e,t){if(this._emitter.notify(`onBeforeLoad`,{params:e}),this._initState(),!e.sheets||e.sheets.length===0)throw new h(_(`error.workbook.sheetOne`));e.theme&&(this._theme=new pe(e.theme),this._styles.setTheme(this._theme));let n=this._strings.beginPersist(),r=this._resources.beginPersist(),i=this._styles.beginPersist(),a=this._richValues.beginPersist();try{n.fromJSON(e.strings),r.fromJSON(e.resources),this._fetch.adopt(this._resources.getItems()),i.fromJSON(e.styles),a.fromJSON(e.richData,{resources:this._resources,strings:this._strings,fromResourceId:e=>r.fromResourceId(e)??null},e.richTypes),e.date1904&&(this._isDate1904=!0),this._codeName=e.codeName??null,this._updateLinks=e.updateLinks??null,this._hiddenPivotFieldList=!0===e.hiddenPivotFieldList,this._documentProperties.fromJSON(e.properties),e.locale&&(this._locale=e.locale),e.localeOverrides&&(this._localeOverrides=e.localeOverrides),e.view||={};let o=[],s=new Map,c=e.pivotCaches;if(c){let e=r.fromResourceId.bind(r);for(let t=0;t<c.length;t++){let n=c[t];n&&typeof n.cacheId==`number`&&!s.has(n.cacheId)&&s.set(n.cacheId,q.dataOf(n,e))}}this._updateState({pivotCacheData:s});for(let e of s.keys())o.push(new q(e,this._pivotCacheStore(e)));this._pivotCaches=o,this._people.fromJSON(e.people);let l=e.sheets,u=l.length,d=e.view.activeSheetId??null;d!==null&&(d=Math.min(Math.max(0,d),u-1));let f=null,p=null;this._isLoadingSheets=!0;for(let e=0;e<u;e++){let n=l[e],i=n.visibility||N.Visibility.Visible,a=e;p=a,i===N.Visibility.Visible?f===null&&(f=a):d!==null&&d===a&&(d=null);try{let o=n.kind??N.Kind.Worksheet;if(o!==N.Kind.Worksheet){let s=n.sheet,c=j.fromJSON(s?.part,r.fromResourceId.bind(r));if(!c)throw new h(_(`error.workbook.sheetPartMissing`,{sheetName:n.name}));this._createOpaqueSheet(a,n.name,i,e,n.sheetId,o,c,s?.tabColor??null,t?.[e])}else this._createSheet(a,n.name,i,e,n.sheetId,n.sheet,t?.[e])}catch(e){throw this._isLoadingSheets=!1,e}}this._isLoadingSheets=!1,this._tellSheets(),this._holdPivotCaches(),this._holdPivotSlicers();for(let e of this._getSheetRefs(N.Visibility.VeryHidden))$(e)&&e.sheet._tellPivots();this._updateState({lastId:p}),e.view.activeSheetId=d??f,this.setView(new rn({json:e.view})),this._adjustSheetNamesIfRequired(),this._listenerProtection?.();let m=this;this._protection=new on(e?.protection,this._options?.readonly),this._listenerProtection=this._protection.addListeners({onChange:e=>{m._emitter.notify(`onProtectionChange`,{source:e})}}),this._emitter.notify(`onLoad`)}finally{a.endPersist(),i.endPersist(),r.endPersist(),n.endPersist()}}async _startFunctions(){let e=this._scripts;if(!e)return r.EmptyArray;await e._load();let t=[];for(let n of e.getModules().getItems())this._startModules.add(n),t.push(...n.getFunctions().getItems({type:`formula`,includeHidden:!0}));return t}_createScripts(e){let t=this;return new Kt({transactions:this._transactions,json:e,workbook:t,getBuiltInFunctions:()=>t._calculation?.getFunctions(),onAdd:(e,n)=>{let r=t._calculation;r.getStatus()!==Te.Status.Off&&r.start().then(async()=>{if(t._startModules.has(n))return;let e=n.getFunctions().getItems({type:`formula`,includeHidden:!0}),r=e.length;for(let t=0;t<r;t++){let n=e[t];try{await this._calculation.getFunctions().add(n)}catch(e){m.error(e?.message??String(e),e)}}}).catch(()=>{})},onRemove:(e,t)=>{}})}async toJSON(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));await Promise.resolve(this._starting);let t=this.getCalculation();t.getStatus()!==Te.Status.Off&&(await t.ready(),await t._whenRequestsSettled?.()),await this._emitter.notify(`onBeforeSave`,{async:!0});let n={sheets:[]},r=e?.ignoreStyles??!1;if(!r){let e=this._theme.toJSON();(e?Object.keys(e).length:0)>0&&(n.theme=e)}if(this._scripts){let e=this._scripts.toJSON();e&&Object.keys(e).length>0&&(n.modules=e)}this._isDate1904&&(n.date1904=!0),this._codeName&&(n.codeName=this._codeName),this._updateLinks&&(n.updateLinks=this._updateLinks),this._hiddenPivotFieldList&&(n.hiddenPivotFieldList=!0);let i=this._documentProperties.toJSON();Object.keys(i).length>0&&(n.properties=i),this._locale&&(n.locale=this._locale),this._localeOverrides&&(n.localeOverrides=this._localeOverrides);let a=e?.resources??`embed`,o=a===`ignore`,s=this._strings.beginPersist(),c=o?null:this._resources.beginPersist(),l=this._styles.beginPersist(),u=this._richValues.beginPersist();try{let t=this._getSheetRef(this.getSelectedSheetIndex()).id,i=t,d=null,f=this._getState(),p=f.sheetRefsAll,m=f.sheetsById,h=p.length;for(let r=0;r<h;r++){let a=p[r],o=r+1,s,l=m.get(a.id);if($(a))s={name:a.name,sheet:await a.sheet.toJSON(e)};else{let e=l,t=c?c.toResourceId.bind(c):()=>null,n={part:j.toJSON(e._getPart(),t)},r=e.getTabColor();r&&(n.tabColor=r.toString()),s={name:a.name,kind:e.getKind(),sheet:n}}a.sheetId!==void 0&&(s.sheetId=a.sheetId),a.visibility===N.Visibility.Visible?d===null&&(d=o):s.visibility=a.visibility,a.id===t&&(i=o),n.sheets.push(s)}if(!r){let e=l.toJSON();e&&Object.keys(e).length>0&&(n.styles=e)}let g=this.getProtection().toJSON();g&&(n.protection=g);let _=this._calculation.toJSON();Object.keys(_).length>0&&(n.calc=_);let v=await s.toJSONAsync();v&&v.length>0&&(n.strings=v);let y=await u.toJSONAsync(c?c.toResourceId.bind(c):void 0);if(y.length>0){n.richData=y;let e=u.toKindsJSON();e.length>0&&(n.richTypes=e)}let b=this._calculation.getExternalBooks().toJSON();b&&(n.externalBooks=b);let x=this._pivotCaches;if(x.length>0){let e=c?c.toResourceId.bind(c):()=>null,t=new Set;for(let e of this.getPivotTables())t.add(e.getCacheId());let r=Je(this);for(let e=0;e<r.length;e++){let n=r[e].toJSON()?.pivot?.cacheId;n!==void 0&&t.add(n)}let i=[];for(let n=0;n<x.length;n++)t.has(x[n].cacheId)&&i.push(x[n].toJSON(e));i.length>0&&(n.pivotCaches=i)}let S=this._people.toJSON();if(S&&(n.people=S),!o){let e=await c.toJSONAsync(typeof a==`function`?a:void 0);e&&e.length>0&&(n.resources=e)}let C=this._calculation.getNamedFormulas().toJSON();C&&C.length>0&&(n.names=C);let w=this._view.toJSON();w&&(i===d?delete w.activeSheetId:w.activeSheetId=i,Object.keys(w).length>0&&(n.view=w))}finally{u.endPersist(),l.endPersist(),o||c.endPersist(),s.endPersist()}return this._emitter.notify(`onSave`,{params:n}),n}isClosed(){return this._closed}close(){if(this._closed)return;this._emitter.notify(`onClose`);let e=this._getState();e.listenersSheets.forEach(e=>{e()}),e.listenersSheets.clear();let t=e.sheetRefsAll;for(let e=t.length-1;e>=0;e--)try{t[e].sheet.close()}catch(e){console.warn(`error on close`,e)}this._ownResources,this._ownNames&&this._names.close(),this._ownCalculation&&this._calculation.close(),this._ownStyles,this._transactionsRemoveListener?.(),this._listenerLanguage?.(),this._listenerOrigin?.(),this._listenerOriginProvider?.(),this._ownOriginProvider&&this._originProvider instanceof Ct&&this._originProvider.release(),this._closed=!0}beginCommit(e){if(this._closed)throw Error(_(`error.workbook.modelClosed`));return this._beginCommit(typeof e==`string`?{description:e}:e)}doBatch(e,t){let n=this;t=typeof t==`string`?{description:t}:{description:a(`op.updateWorkbook`),...t};let r=y.bind(this._transactions,this,e);return this._transactions.doBatch(r.callback,{...t,onChildCommit:r.onChildCommit},(e,t)=>{r.close(),e.getDepth()===0&&(n._lastTransactionUUID=e.getId())})}_beginCommit(e){let t=this;return this._transactions.beginCommit(typeof e==`string`?{description:e}:e,e=>{e.getDepth()===0&&(t._lastTransactionUUID=e.getId())})}_getState(){return this._transactions.getState(this._id)}_updateState(e,t=a(`op.updateWorkbook`),n){if(!e)return;let r=this._beginCommit(t);try{r.updateState(this._id,e),r.commit(n)}catch(e){throw r.rollback(),e}}get options(){return this._options}get[Symbol.toStringTag](){return`[Workbook]`}toString(){return`[${this.getName()??`(untitled)`}]`}get isIWorkbook(){return!0}},Cn={address:null},$=e=>e.sheet.getKind()===N.Kind.Worksheet,wn=class{constructor(){this._readFormats=[],this._writeFormats=[],this._encryptions=[]}async registerReadFormat(e){this._readFormats=await this._registerFormatType(e,this._readFormats)}async registerWriteFormat(e){this._writeFormats=await this._registerFormatType(e,this._writeFormats)}async registerEncryption(e){if(!e)throw Error(`encryption must be provided.`);if(!e.key)throw Error(`encryption.key must be provided.`);let t=e.key.toLowerCase(),n=this._encryptions.findIndex(e=>e.key.toLowerCase()===t);if(n!==-1){let t=[...this._encryptions];t[n]=e,this._encryptions=Object.freeze(t)}else this._encryptions=Object.freeze([...this._encryptions,e])}async getEncryption(e){return this.peekEncryption(e)}peekEncryption(e){if(!e)return this._encryptions[0]??null;let t=e.toLowerCase();return this._encryptions.find(e=>e.key.toLowerCase()===t)??null}async detectEncryption(e){for(let t of this._encryptions)if(await t.detect(e))return t;return null}async getReadFormats(e){return e?this._filterFormats(e,this._readFormats):[...this._readFormats]}async getWriteFormats(e){return this._writeFormats?e?this._filterFormats(e,this._writeFormats):[...this._writeFormats]:[]}async _registerFormatType(e,t){return this._registerFormatTypeSync(e,t)}_registerFormatTypeSync(e,t){if(!e)throw Error(`format must be provided.`);if(!e.key)throw Error(`format.key must be provided.`);let n=e.key.toLowerCase(),r=t.findIndex(e=>e.key.toLowerCase()===n);if(r!==-1){let n=[...t];return n[r]=e,Object.freeze(n)}return Object.freeze([...t,e])}_filterFormats(e,t,n){if(!e||Object.keys(e).length===0){if(!n)return[...t];e={ext:n}}let r=e.search?.toLocaleLowerCase();return t.filter(t=>{if(r){let e=t.key.toLocaleLowerCase().includes(r),n=!!t.exts&&t.exts.some(e=>e.toLocaleLowerCase().includes(r)),i=!!t.mimeType&&t.mimeType.toLocaleLowerCase().includes(r),a=!!t.tags&&t.tags.some(e=>e.toLocaleLowerCase().includes(r)),o=!!t.description&&t.description.toLocaleLowerCase().includes(r);if(!(e||n||i||a||o))return!1}let i=e.ext||n;if(i){let e=i.toLocaleLowerCase();if(!t.exts.some(t=>t.toLocaleLowerCase()===e))return!1}if(e.mimeType&&t.mimeType!==e.mimeType||e.key&&t.key.toLocaleLowerCase()!==e.key.toLocaleLowerCase())return!1;if(e.tags){let n=t.tags||[];if(!(typeof e.tags==`string`?[e.tags]:e.tags).every(e=>n.includes(e)))return!1}return!0})}},Tn=new WeakMap,En=e=>!!e&&typeof e==`object`&&typeof e.getPath==`function`&&typeof e.canWrite==`function`,Dn=new class{constructor(){this._setInstalled=new WeakSet,this._backingStore=null,this._emitter=new b(this),this._registry=new wn,this._defaultStore=new Tt(()=>this.getWriteFormats(),()=>this.getReadFormats())}getBackingStore(){return this._backingStore??this._defaultStore}setBackingStore(e){this._backingStore=e??null}canWrite(){return typeof this.getBackingStore().write==`function`}canRead(){return typeof this.getBackingStore().read==`function`}async install(e){this._setInstalled.has(e)||(await e.register(this._registry),this._setInstalled.add(e))}addListeners(e,t){return this._emitter.addListeners(e,t)}addCommitListener(e){return this._emitter.addListeners({onWrite:(t,n)=>{n.save&&e.onCommit?.({store:n.workbook.getTransactions(),commitId:n.commitId})}})}async getReadFormats(e){return this._registry.getReadFormats(e)}async getWriteFormats(e){return this._registry.getWriteFormats(e)}getOrigin(e){return new V(e)}async read(e){let t=null;if(typeof e==`string`)e={source:e};else if(En(e)){let n=e.getPath();if(!n)throw Error(`Cannot read from an unbound origin (no path).`);xt(e)?e={source:n,asCopy:!0}:(t=e,e={source:n})}let n=e??{},{source:r=null,...i}=n,a=this.getBackingStore();return(a.read?a:this._defaultStore).read({source:r,options:i,decode:(e,r)=>this._decodeBuffer(e,r,n,t)})}async _decodeBuffer(e,t={},n,r=null){let i=t.format,a=t.ext;if(!i&&!a)throw Error(`Either format or file extension must be provided to determine read type.`);let o=(await this._registry.getReadFormats(i?{search:i}:{ext:a}))[0];if(!o)throw new h(_(`error.io.readFormatUnavailable`,{format:i??a}));let s=n?.typedCreateWorkbookOptions,c=s?Object.keys(s).find(e=>e.toLowerCase()===o.key.toLowerCase()):void 0,l={...n,...c===void 0?void 0:s[c]};delete l.typedCreateWorkbookOptions,delete l.source,delete l.asCopy;let u=r??new V(t.absolutePath??null,{name:t.name??null,format:o.key,size:t.size??null,lastModified:t.lastModified??null,canWrite:t.canWrite??!1});r instanceof V&&r.update({format:o.key,size:t.size??null,lastModified:t.lastModified??null}),l.createWorkbookOptions={...l.createWorkbookOptions||{},origin:u},l.readonly!==void 0&&(l.createWorkbookOptions={readonly:l.readonly,...l.createWorkbookOptions},delete l.readonly),l.calcOnly&&(l.createWorkbookOptions={disableLoadAutoFit:!0,...l.createWorkbookOptions});let d=await this._decrypt(e,u,l);if(d===null)return null;e=d.bytes;let f=l?.progress?.onStart?.bind(l.progress);f&&await Promise.resolve(f(u,t.size));try{let t=await this._readArrayBuffer(e,o,l);return d.password!==null&&u.setPassword(d.password),l?.progress?.onComplete?.(u),this._emitter.notify(`onRead`,{params:{workbook:t,origin:u},transactional:!1}),t}catch(e){throw l?.progress?.onError?.(e),l?.progress?.onComplete?.(null),e}}async _decrypt(e,t,n){let r=await this._registry.detectEncryption(e);if(t instanceof V&&t.update({encryption:r?r.key:null}),!r)return{bytes:e,password:null};let i=null,a=async t=>{try{return i=await r.decode(e,t),!0}catch(e){if(!(e instanceof f))throw e;return!1}};if(n?.password&&await a(n.password))return{bytes:i,password:n.password};if(!n?.onPassword){let e=t.getName();throw new l(e?_(`error.io.passwordRequired`,{name:e}):_(`error.io.passwordRequiredUnnamed`))}let o=await Promise.resolve(n.onPassword({origin:t,encryption:r.key,validate:a}));if(o==null)return null;if(i!==null||await a(o))return{bytes:i,password:o};throw new f(_(`error.io.passwordIncorrect`))}async writeArrayBuffer(e,t){if(!t?.format)throw Error(`A format must be specified to write to an ArrayBuffer (e.g. { format: 'xlsx' }).`);let n=(await this._registry.getWriteFormats({search:t.format}))[0];if(!n)throw new h(_(`error.io.writeFormatUnavailable`,{format:t.format}));return this._writeArrayBuffer(e,n,t)}async write(e,t,n){return typeof t==`string`||En(t)?this._write(e,t,!1,n):this._write(e,e?.getOrigin?.(),!0,t??n)}async writeAs(e,t,n){if(!t)throw Error(`A target must be provided for writeAs (use write(workbook) for a plain save).`);return this._write(e,t,!0,n)}async _write(e,t,n,r){if(!e)throw Error(`Workbook must be provided.`);if(!e.isIWorkbook)throw Error(`Invalid workbook model provided. Must be an instance of IWorkbook.`);let i=typeof t==`string`?this.getOrigin(t):t,a=i.getFormat(),o;if((r?.format||a)&&(o=(await this._registry.getWriteFormats({search:r?.format??a??void 0}))[0]),o||i.getPath()&&i.canWrite()&&i.getExtension()||(o=(await this._registry.getWriteFormats({ext:`sxl`}))[0]??(await this._registry.getWriteFormats())[0]),!o)throw new h(_(`error.io.writeFormatUnresolved`));let s=i.getExtension();if(r?.format&&s&&i.getPath()&&i.canWrite()&&!o.exts.includes(s)){let e=(await this._registry.getWriteFormats({ext:s}))[0];if(e&&e.key!==o.key){let e=i.getPath().split(/[/\\]/).pop();throw new h(_(`error.io.writeFormatMismatch`,{format:r.format,file:e}))}}if(typeof t==`string`){let e=i.getPath();i=new V(B(e)?e:`${e}.${o.exts[0]}`,{format:o.key})}let c=i.getEncryption(),u=e.getOrigin?.(),d=(i instanceof V?i.getPassword():null)??(u instanceof V?u.getPassword():null),f=i.isEncrypted()||(u?.isEncrypted()??!1),p=r?.password===void 0?d??(f?void 0:null):r.password,m=null;if(p===void 0){if(f){let e=i.getName();throw new l(e?_(`error.io.passwordRequiredSave`,{name:e}):_(`error.io.passwordRequiredSaveUnnamed`))}}else if(p!==null&&(m=await this._registry.getEncryption(c),!m))throw new h(_(`error.io.encryptionUnavailable`));let g=`${i.getName()??_(`workbook.defaultName`)}.${o.exts[0]}`,v=r?.progress,y=!i.getPath()||!i.canWrite()||!!r?.prompt,b=!1,x=this,S=null,C=[],w={workbook:e,format:o,origin:i,suggestedName:g,prompt:r?.prompt,async encode(t,a){let s=a??i;await(async e=>{b||(b=!0,v?.onStart&&await Promise.resolve(v.onStart(e)))})(s),S=e.getTransactions?.()?.getCurrentCommit()??S;let c=t?(await x._registry.getWriteFormats({search:t}))[0]??o:o,l=[],u=((e,t)=>({onStart:e?.onStart?(t,n)=>e.onStart(t,n):void 0,onProgress:e?.onProgress?(t,n)=>e.onProgress(t,n):void 0,onError:e?.onError?t=>e.onError(t):void 0,onComplete:e?.onComplete?t=>e.onComplete(t):void 0,onWarning:(n,r)=>{t.push({message:n??``,context:r}),e?.onWarning?.(n,r)}}))(v,l),d=await x._writeArrayBuffer(e,c,{...r,progress:u}),f=Tn.get(s);if(l.some(e=>!f?.has(e.message))&&r?.onWarnings){let t=await Promise.resolve(r.onWarnings({workbook:e,origin:s,warnings:l,save:n,canCancel:!y}));if(!y&&!1===t)return null}return C=l,m?m.encode(d,p):d}},T=null;try{let t=this.getBackingStore();if(!t.write)throw Error(`The active backing store is read-only (no write implementation).`);if(T=await t.write(w),T){if(p!==void 0&&T instanceof V&&(T.setPassword(p),T.update({encryption:m?m.key:null})),C.length){let e=Tn.get(T)??new Set;for(let t of C)e.add(t.message);Tn.set(T,e)}n&&T!==e.getOrigin()&&xt(e.getOrigin())?.setOrigin(T);let t=S??e.getTransactions?.()?.getCurrentCommit()??null;this._emitter.notify(`onWrite`,{params:{workbook:e,origin:T,commitId:t?.getId()??null,save:n},transactional:!1})}v?.onComplete&&await Promise.resolve(v.onComplete(T))}catch(e){let t=e instanceof Error?e:Error(String(e));throw v?.onError&&await Promise.resolve(v.onError(t)),v?.onComplete&&await Promise.resolve(v.onComplete(null)),t instanceof h?t:Error(_(`error.io.writeFailed`,{reason:t.message}),{cause:e})}return T}_stripExtension(e){let t=B(e);return t?e.slice(0,e.length-t.length-1):e}_baseName(e){if(!e)return null;let t=e.split(/[?#]/)[0],n=t.split(/[/\\]/).pop()??t;return this._stripExtension(n)||null}async _writeArrayBuffer(e,t,n){if(!t)throw Error(`A write format must be provided.`);let r=t.handler;if(!r)throw Error(`Unable to resolve a write handler for '${t.key}'.`);return pt(t.key)||await R.assertUsable(`exports`,0),r(e,{...n,format:t.key})}async _readArrayBuffer(e,t,n){if(!e)throw Error(`ArrayBuffer must be specified.`);if(!t)throw Error(`format must be specified.`);if(e.byteLength===0)return new Sn(n?.createWorkbookOptions);let r=t.handler;if(!r)throw Error(`Unable to resolve a read handler for '${t.key}'.`);let i;try{i=await r(e,n)}catch(e){throw e instanceof h?e:new h(_(`error.io.readFailed`,{format:t.description??t.key,reason:e?.message??String(e)}),{cause:e})}return await Ze(),i}get isIWorkbookIO(){return!0}},On=[`.woff2`,`.woff`,`.ttf`,`.otf`,`.ttc`,`.otc`].map(e=>({suffix:e,place:(e,t)=>t?`${t}/${e}`:e})),kn={suffix:`.metrics.json`,async extract(e){let t=await e.readJson();return t?.format===`sheetxl-font-metrics/1`?{family:t.family,weight:t.weight,italic:t.italic}:null},place:(e,t)=>t?`${t}/${e}`:e};[kn.place,kn.place,...On];var An;An||={};var jn,Mn,Nn;jn||={},(Mn||={}).Type={Button:`button`,CheckBox:`checkBox`,OptionButton:`optionButton`,ListBox:`listBox`,DropDown:`dropDown`,ScrollBar:`scrollBar`,Spinner:`spinner`,GroupBox:`groupBox`,Label:`label`,EditBox:`editBox`,Dialog:`dialog`,Unknown:`formControl`},(Nn||={}).DropStyle={Combo:`combo`,ComboEdit:`comboEdit`,Simple:`simple`};export{bt as a,Dn as c,kt as d,It as f,V as i,Wt as l,K as n,Y as o,en as p,_t as r,Lt as s,tn as t,Sn as u};
|