@sheetxl/studio-vanilla 0.8.0-beta.1 → 0.8.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/esm/-LoBx7J6imeqaxCq.mjs +236 -0
- package/browser/esm/8-jmVNNbOHuXFdVQ.mjs +392 -0
- package/browser/esm/{CJPemkFUzhcAD_qR.mjs → B00ixdmb8-O5ijEp.mjs} +1 -1
- package/{cdn/assets/Bv_96nwOEMHN9Sa0.js → browser/esm/B0Wjc3lwtjKMwnvn.mjs} +27 -29
- package/browser/esm/B3Ii8x6RquHW1jMc.mjs +299 -0
- package/{cdn/assets/C_Io1QC4CeLGRBrz.js → browser/esm/B7iV5qzlmJlM2nQv.mjs} +179 -202
- package/{cdn/assets/D_t53-8k73CNpV-p2.js → browser/esm/BAH_cWcQEIBKWnl6.mjs} +94 -74
- package/browser/esm/BAdRecWK1maKGOZd.mjs +142 -0
- package/browser/esm/BBjgqNlHm-ssbSAG.mjs +47 -0
- package/browser/esm/BCWTI3jdTPG37r8W.mjs +46 -0
- package/browser/esm/{Dnx3_xXfRlD6ECfZ2.mjs → BMlPFJ1glExv-70Z.mjs} +5 -5
- package/browser/esm/{DBL3Qp5jyPrFg7KI2.mjs → BN2d5U1nw7pRtOrn.mjs} +1 -1
- package/browser/esm/BNIInlJQbJjH8B6G.mjs +84250 -0
- package/browser/esm/BPrHgyAsm2Htx15h.mjs +67 -0
- package/browser/esm/BRfat1fV3oGLwvin.mjs +76 -0
- package/browser/esm/{8V-VceXEjpADM8qK2.mjs → BSCja5yvevmKZPBB.mjs} +1 -1
- package/browser/esm/BThOwSja2ra4xejQ.mjs +6306 -0
- package/browser/esm/BVJUL2HhoedhbwVy.mjs +77 -0
- package/browser/esm/{CfvrjQGuf7vXiQCB.mjs → BWo1N4YbK_zGU0nu.mjs} +1 -1
- package/browser/esm/B_HB4y7AA88Z775Z.mjs +91 -0
- package/browser/esm/BaEZmurTZnX_yfKD.mjs +1082 -0
- package/browser/esm/BeMLfv6hWo15VCIL.mjs +239 -0
- package/{cdn/assets/C1ZePT2B182vSnxW.js → browser/esm/BhkeuRcx8RlLCQ5E.mjs} +1 -1
- package/browser/esm/Bi5-feQLtwpV6Ai8.mjs +57 -0
- package/browser/esm/BlPn_DXaEXOPxMxC.mjs +540 -0
- package/browser/esm/{B4iT_CduJeJunwBc.mjs → BsUrrzAgfyAdcCJW.mjs} +28 -13
- package/browser/esm/{47Yv4X226-93If7L.mjs → BtGmrIqU9W1L8zfZ.mjs} +1 -1
- package/browser/esm/BtdRr6IbtO6Gypsk.mjs +27 -0
- package/browser/esm/BwOxnbR61WFJwy0A.mjs +607 -0
- package/browser/esm/BxhKgo_rPQ2d12HT.mjs +35 -0
- package/browser/esm/By3a43qwWICwXRmw.mjs +8035 -0
- package/browser/esm/{BqTFwWLbXXJ0Fu-X2.mjs → ByUcqyCNfqi5Mm7w.mjs} +2 -2
- package/browser/esm/{Blc1T4zLkp8bRC_n2.mjs → ByqhqEMBLrnkaPKE.mjs} +28 -27
- package/{cdn/assets/8f9hCbpXTTYEgG31.js → browser/esm/C-0viTjg1dT2F-sk.mjs} +2 -2
- package/{cdn/assets/BMRav2VAqEzDSp3r.js → browser/esm/C3r_9RqlWrEmlXZ1.mjs} +37 -3
- package/browser/esm/C4VT6lNbpaDXCpBb.mjs +8820 -0
- package/browser/esm/{Be4QC65cR8N84rTn.mjs → C5EKgE9Owsc_juw-.mjs} +1 -1
- package/browser/esm/{1guzFZp1LHz_FwfL.mjs → C9NyIoUahFiyRCxP.mjs} +2 -2
- package/{cdn/assets/BykiUmcpDgSRNQI1.js → browser/esm/CBdNC7BOfc5TewHU.mjs} +1 -1
- package/browser/esm/CCd192S7yVpc6iOe.mjs +118 -0
- package/browser/esm/{BLcn1kGRsjURZSzk.mjs → CDsuiN--qdALFyql.mjs} +179 -202
- package/{cdn/assets/BDkVAo0CDCTE04ZJ.js → browser/esm/CFvKDDbrL3wpXnQH.mjs} +1 -1
- package/browser/esm/{CH0of3GZTzHviuQV.mjs → CHMqT9DzYKTxPfP6.mjs} +2 -2
- package/browser/esm/{CEN8dYSpN2oew8HH.mjs → CMxbiQ5J79M3n1tk.mjs} +604 -405
- package/browser/esm/{vcRSnmAqjwKglEkY.mjs → CQOyeq_-pg3CM-uA.mjs} +6 -7
- package/browser/esm/CQuv-nk5jtXUfu7C.mjs +7 -0
- package/browser/esm/CRAzVh3CaAa16avf.mjs +521 -0
- package/{cdn/assets/hFSDx-LnUOObv-6h.js → browser/esm/CSEMxasVyGCekxKf.mjs} +6 -7
- package/browser/esm/CTI-mCJbJzitJZwj.mjs +25 -0
- package/{cdn/assets/CdMv3f8Gyxh8q2RR.js → browser/esm/CTdFZ_I-41Vr6Dy4.mjs} +1 -1
- package/browser/esm/CVcCUfSRsiZ1-6hs.mjs +119 -0
- package/browser/esm/CVxlfyE-gnJM8hOz.mjs +177 -0
- package/browser/esm/CWJzHmEgahdOfNjH.mjs +527 -0
- package/browser/esm/CWoPWWRwMgkGPFFP.mjs +7393 -0
- package/browser/esm/CZOJogyZqMfUxcXj.mjs +1141 -0
- package/{cdn/assets/DLEdaT0MmrOxMa2h2.js → browser/esm/CaS8_J5HfBRk5_Nw.mjs} +94 -94
- package/browser/esm/CdeXXPCp5cCYvGyD.mjs +14 -0
- package/browser/esm/{BVRzmIk5PujkT_Ap.mjs → CfltjY8hY-RPwwpd.mjs} +582 -551
- package/browser/esm/Chr_TXM-48IsK8Va.mjs +155 -0
- package/browser/esm/{DTaVECXVrgvC48BE.mjs → ClJvUf8aR8vNC_3Z.mjs} +6 -6
- package/browser/esm/Clx8vvGDOTWK_M2l.mjs +484 -0
- package/browser/esm/CnWNviK4qlX2GVl6.mjs +73 -0
- package/browser/esm/{CQM87ZBN7Yzn4Yxr.mjs → Cpza4AeltEVHASij.mjs} +3 -3
- package/browser/esm/{BceIETi6JJRW6Ss62.mjs → CqoHxlGpZ3yzPj5V.mjs} +22 -21
- package/{cdn/assets/iXWgTu3qpYZHcx1J.js → browser/esm/CtZPEkaldpJpoGtW.mjs} +2197 -2013
- package/browser/esm/CvWGtHslTdesJik-.mjs +69 -0
- package/browser/esm/Cw-4uoMuq_m7ziA3.mjs +36 -0
- package/browser/esm/CxCipDFamYSOctBo.mjs +299 -0
- package/browser/esm/Cy00y9b9j17Txyv1.mjs +466 -0
- package/browser/esm/D-55MlIn7Wo_hdjI.mjs +905 -0
- package/browser/esm/D-9f1NKcpuYSgond.mjs +412 -0
- package/browser/esm/D-KZpU6HMaP4VUva.mjs +357 -0
- package/browser/esm/D0r2MPlWLnStWJNW.mjs +622 -0
- package/browser/esm/{9_bymSfTn_rR_v6W.mjs → D2aQPiGg0ZoMYzuf.mjs} +22 -21
- package/{cdn/assets/DKeLjEJPO9nT3bpr.js → browser/esm/D2coM-dNrlLpnUu5.mjs} +1000 -1010
- package/browser/esm/D7CGuQcwpkiuesEI.mjs +229 -0
- package/browser/esm/{RW23HF8taEtW8q9D.mjs → D7DWH3-5fBNx8jtc.mjs} +182 -132
- package/browser/esm/D7kkzIFPqKBK94kO.mjs +17952 -0
- package/browser/esm/D88StfSjZJi5E8Xb.mjs +5153 -0
- package/browser/esm/D8exjrado9TJrBp-.mjs +1946 -0
- package/browser/esm/DAE3Kv0Vs0VuBecT.mjs +32 -0
- package/browser/esm/DAprxR00V9qvNLL2.mjs +6607 -0
- package/browser/esm/DEvZj68igS7Q8SZE.mjs +763 -0
- package/browser/esm/DG3BfxRsbjey-B7E.mjs +441 -0
- package/browser/esm/DGCOPbZbEmt0x9z0.mjs +155 -0
- package/browser/esm/DGcvio2uhlrsE3ZY.mjs +236 -0
- package/browser/esm/DGuynZFJ9tqziqQs.mjs +92 -0
- package/browser/esm/DJqj66SnUcx0QmSN.mjs +15 -0
- package/browser/esm/DLhK_oSGg71ry6-m.mjs +86 -0
- package/{cdn/assets/D9-wpGVbTS9rRpxx.js → browser/esm/DLqc11Pf8vaE4Q5B.mjs} +2 -2
- package/browser/esm/DNCqTF9EbT-U1TdV.mjs +20 -0
- package/browser/esm/{R5bs6kCQSZmsCXz-.mjs → DNaPo7BQu6hr1fWq.mjs} +1 -1
- package/browser/esm/{BCkXtOM3yKocv7L-2.mjs → DQEjvIGMgEkiaP6J.mjs} +1 -1
- package/{cdn/assets/CAPgMrAKg07EREFD2.js → browser/esm/DQIRFXG4MveFkK3I.mjs} +1 -1
- package/browser/esm/{DrUEYcXg6N2D2s1Z2.mjs → DRm1R4uVOkaMfXNI.mjs} +51 -11
- package/browser/esm/DSf-Db1h8rlW2A6n.mjs +122 -0
- package/browser/esm/DSviq1TNoiIAGW7W.mjs +32 -0
- package/{cdn/assets/UYgwKnPX3US3Cj2k2.js → browser/esm/DTn9oYyiIYgyijAk.mjs} +110 -83
- package/{cdn/assets/Clfp7SznkOrJoQvL.js → browser/esm/DVpi1vC8ixXvUQG_.mjs} +3 -3
- package/browser/esm/{BOl4FzJRD7MplCU72.mjs → DWgp4t9N9u0eWthH.mjs} +1 -1
- package/{cdn/assets/B5ZqqASTcBEV5L9K.js → browser/esm/DXo8mR6t5HGsmTcu.mjs} +1 -1
- package/browser/esm/DZRmBfjn2TgOTu5e.mjs +3604 -0
- package/browser/esm/{DVZ_UnchuMRveDG32.mjs → D_7BWdsu8yejhUxy.mjs} +184 -11
- package/browser/esm/D_thhK0vSez8Yfle.mjs +798 -0
- package/browser/esm/DaMKWQQTgIF08cT7.mjs +105 -0
- package/browser/esm/Db6Tvr45TS9J5Qsb.mjs +259 -0
- package/{cdn/assets/EwzqnZl1lTr56hH-.js → browser/esm/Dc2ZwgbIEgYWwAsF.mjs} +1 -1
- package/{cdn/assets/DQ4o4dG7gWbL1X8F.js → browser/esm/DeUXRggj8Oz9ru_i.mjs} +2 -2
- package/{cdn/assets/DRc_Wi5c7WdKHTVN.js → browser/esm/DfESVLC8CAi8m8A7.mjs} +6 -6
- package/browser/esm/{D3G3tI3DVCUF3Gdk.mjs → DjdkGy-EI1kSo226.mjs} +7 -5
- package/browser/esm/DjtXfgbmXjUAoG0y.mjs +58 -0
- package/browser/esm/DlOVZD0OiAjouS6-.mjs +3563 -0
- package/browser/esm/Dme0qpRinBnhzp53.mjs +519 -0
- package/browser/esm/DnyZmrwPxShyeUjm.mjs +849 -0
- package/browser/esm/DoS1sE431fEhdOQb.mjs +216 -0
- package/browser/esm/DqBj-9o7UdXu4qhb.mjs +33 -0
- package/browser/esm/{DZbR5R1fNikjgqYb.mjs → DrI_S0A9TQvriTua.mjs} +1 -1
- package/browser/esm/Dv2z0548SZRGTN3l.mjs +149 -0
- package/browser/esm/{D6SKy2BtcWkhfiA02.mjs → Dv8aQFTTaQBJKDDk.mjs} +2 -5
- package/browser/esm/DvWCBuY0jAL-RmJV.mjs +3363 -0
- package/browser/esm/Dwxz0s23ra1tRtsH.mjs +7 -0
- package/browser/esm/{Cbw0JeJURvQyxIoa.mjs → DxcRLd7wmBGDgJsA.mjs} +1 -1
- package/{cdn/assets/DOsbSsKsexrBoeXa2.js → browser/esm/DxwprgjYhcmfDbXH.mjs} +24 -24
- package/browser/esm/{Dc0BDcQUGy_WIVFa.mjs → Dy44qJVkwNseMG-3.mjs} +1 -1
- package/browser/esm/DyeY6XwMQ_XNUHiW.mjs +89 -0
- package/browser/esm/{BD7RxHQgrqy_4tb5.mjs → ErIXJFPDFXwGEL8V.mjs} +2 -2
- package/{cdn/assets/COA_SZY2x8q6t4BD.js → browser/esm/FO1Jezau486fH4kN.mjs} +7 -6
- package/browser/esm/FjNOhkR7-JAIaRP6.mjs +19 -0
- package/browser/esm/H-JnJQMcZQbpvjdb.mjs +2706 -0
- package/browser/esm/J9i3r1fU0H10b2hX.mjs +1001 -0
- package/browser/esm/LAbUYeLiPG8z9cmA.mjs +277 -0
- package/browser/esm/M7RYrx20B_Yl_euJ.mjs +400 -0
- package/browser/esm/{Gy0CHZTvn4hY-rkx2.mjs → PtGiIWFBYP-ujLmf.mjs} +1 -1
- package/browser/esm/RLU85PsAYtKPUf6N.mjs +71 -0
- package/browser/esm/{qG5zdZZAe6mQIJo32.mjs → RfHd1JATBlcsfLPv.mjs} +5 -5
- package/{cdn/assets/CtXoSHbCUKMY-tSJ2.js → browser/esm/SNze-adFJwKuGSQW.mjs} +48 -2
- package/browser/esm/UTZcodQydbuMfCOS.mjs +171 -0
- package/browser/esm/{BHmYoIIbNW3GdcqV2.mjs → VwGokBaawZfZiV2X.mjs} +1 -1
- package/browser/esm/WMYR09ZOR8JbZEnx.mjs +4748 -0
- package/browser/esm/{DW72HwfnJtQxzoGa.mjs → ZbGPiRN9j0629JJQ.mjs} +2 -2
- package/browser/esm/{CR3jgkduTLczbMjH2.mjs → ZxsFYopF0_WWqw4Q.mjs} +1 -1
- package/browser/esm/_MPToH4oMe4rhTdZ.mjs +63 -0
- package/{cdn/assets/BHBJtVTiQByD_y9j2.js → browser/esm/_t0Mx-mUFVtmVNkU.mjs} +2 -2
- package/browser/esm/{B0HA_dHcr0kKfudQ.mjs → _zRV52yhE4gPf3XI.mjs} +213 -190
- package/browser/esm/aUREGNA8H7p4BpMK.mjs +33 -0
- package/browser/esm/cwuYkcKwsKkPe3gG.mjs +598 -0
- package/browser/esm/{NekeSGoazNCraGNC2.mjs → djM9mJznx8GzVq51.mjs} +16 -15
- package/browser/esm/{DuPdSe-EXFTx9dsc2.mjs → f1OJemsiZnbwnds-.mjs} +16 -15
- package/{cdn/assets/DQ-0yyFAwoWtxmhV2.js → browser/esm/i0P63Wd0RRlgJotb.mjs} +1 -1
- package/browser/esm/{B4vYIE3kSPTxCgpf2.mjs → iC69oOND5T8khIWf.mjs} +18 -17
- package/browser/esm/index.mjs +644 -48
- package/browser/esm/{7rixDGGrR72lXkMV.mjs → kVBPUUnVyZfb8pf3.mjs} +52 -52
- package/{cdn/assets/BCZjYGV8AqIZghBH.js → browser/esm/lqknEt3DTma5Juxs.mjs} +69 -4
- package/browser/esm/mZ92wNrHVpYdli1U.mjs +182 -0
- package/browser/esm/{DtXC6uPF2LLktqFE.mjs → pKc_RPdZPLAgvNDh.mjs} +2 -2
- package/browser/esm/{BPv6Pw1hW-sV5Fya.mjs → pc49xtHdprXZLW2X.mjs} +1 -1
- package/browser/esm/px-aQ8dMjiWag_pV.mjs +167 -0
- package/browser/esm/qYca4mdySLkACfo1.mjs +37 -0
- package/browser/esm/r2Az2Yc4_qj2-sn0.mjs +398 -0
- package/browser/esm/{DXWmgQSeh0_HDxZj.mjs → rY-dC3WB558TIbum.mjs} +4 -4
- package/browser/esm/rkTVQiYG3wd8oPom.mjs +2452 -0
- package/browser/esm/sDVzjXC1mS5rucF5.mjs +2447 -0
- package/browser/esm/sxxbiJiCMOW2Eivd.mjs +24952 -0
- package/{cdn/assets/CopfZ7Y1Zn_PDNXK.js → browser/esm/vGKTE7yjY8y-XnsW.mjs} +16 -11
- package/browser/esm/{CG5v2hAwGR5Ptufn.mjs → x6GcENwqoUVbd60j.mjs} +1 -1
- package/{cdn/assets/CGqvy5LwQ4z9J2oD.js → browser/esm/ycmpAs4kQfeh78Pa.mjs} +1 -1
- package/browser/esm/ztqpWR65YYMZ3EPk.mjs +811 -0
- package/cdn/assets/0vqRTRN0wEzWao1c.js +522 -0
- package/cdn/assets/514mXPTuNvdNgw35.js +412 -0
- package/{browser/esm/DVQNQmjI2PKkwiOw2.mjs → cdn/assets/7Sg0ht_ZCMJkPurt.js} +89 -87
- package/cdn/assets/{mtrwY1hjJeYlmzC-.js → 7i4WSxDsu2ApJJ2_.js} +6 -6
- package/cdn/assets/AjMG7Fb9r4Fk7Hsf.js +78 -0
- package/cdn/assets/{CJPemkFUzhcAD_qR.js → B00ixdmb8-O5ijEp.js} +1 -1
- package/{browser/esm/Bv_96nwOEMHN9Sa02.mjs → cdn/assets/B0Wjc3lwtjKMwnvn.js} +27 -29
- package/cdn/assets/B27vTQlxbHhSQJx8.js +24953 -0
- package/cdn/assets/B3NWCYKXucbHhOix.js +93 -0
- package/{browser/esm/D_t53-8k73CNpV-p.mjs → cdn/assets/BAH_cWcQEIBKWnl6.js} +94 -74
- package/cdn/assets/BAdRecWK1maKGOZd.js +142 -0
- package/cdn/assets/BB4MW8sSYEXjPvvf.js +64 -0
- package/cdn/assets/BBjgqNlHm-ssbSAG.js +47 -0
- package/cdn/assets/BI6afPOpgNYkzIWv.js +6609 -0
- package/cdn/assets/{CF8m5SqeMaRkGIYM.js → BIsbcP5RXRU2XPfx.js} +2 -2
- package/cdn/assets/{Dnx3_xXfRlD6ECfZ.js → BMlPFJ1glExv-70Z.js} +5 -5
- package/cdn/assets/{DBL3Qp5jyPrFg7KI.js → BN2d5U1nw7pRtOrn.js} +1 -1
- package/cdn/assets/BNsqqoZY7a4N1wWC.js +905 -0
- package/cdn/assets/BPrHgyAsm2Htx15h.js +67 -0
- package/cdn/assets/{8V-VceXEjpADM8qK.js → BSCja5yvevmKZPBB.js} +1 -1
- package/cdn/assets/{CfvrjQGuf7vXiQCB2.js → BWo1N4YbK_zGU0nu.js} +1 -1
- package/cdn/assets/B_3Musz0q2MSZ5H-.js +799 -0
- package/cdn/assets/Ba8taVvLslFcKS72.js +119 -0
- package/cdn/assets/{CBuvbUg67ah_3BOZ.js → BeQ95CzwR65il0CK.js} +2 -2
- package/cdn/assets/BelX6bvQPsGuo-x3.js +7 -0
- package/cdn/assets/{C8mUyjJ26jsHGl_D.js → Bgbi7BFR3rN5qj51.js} +22 -21
- package/cdn/assets/BgyY4zVPZSXljoCZ.js +14 -0
- package/{browser/esm/C1ZePT2B182vSnxW2.mjs → cdn/assets/BhkeuRcx8RlLCQ5E.js} +1 -1
- package/cdn/assets/BlIZ30huelIxNo6S.js +91 -0
- package/cdn/assets/BlPn_DXaEXOPxMxC.js +540 -0
- package/cdn/assets/BoFx07POTorOb5g-.js +7393 -0
- package/cdn/assets/{-2S675KWulPRlVNb2.js → BpZ7P0CO148rR4zW.js} +23 -22
- package/cdn/assets/BsTFy_iJXJYmaO3Z.js +763 -0
- package/cdn/assets/{j8nXVEYbO2kPuEYQ.js → Bsn-tUx172sEG2kR.js} +59 -47
- package/cdn/assets/{47Yv4X226-93If7L2.js → BtGmrIqU9W1L8zfZ.js} +1 -1
- package/cdn/assets/BuYS_ZjSlcvWZ1JC.js +8035 -0
- package/cdn/assets/BvlfKrfrDhE9Jw4d.js +598 -0
- package/cdn/assets/BwOxnbR61WFJwy0A.js +607 -0
- package/cdn/assets/BxqXOiOyI_XiOmvN.js +156 -0
- package/cdn/assets/{BqTFwWLbXXJ0Fu-X.js → ByUcqyCNfqi5Mm7w.js} +2 -2
- package/{browser/esm/CsufM5aF6VTLKDWM.mjs → cdn/assets/BzbP4jaN13wC9aSi.js} +58 -55
- package/{browser/esm/8f9hCbpXTTYEgG312.mjs → cdn/assets/C-0viTjg1dT2F-sk.js} +2 -2
- package/cdn/assets/C0CeCYdLWLjySEFe.js +123 -0
- package/cdn/assets/{B55nrhIK6gAAu4ZA.js → C32co-XulWTkEKrW.js} +2 -2
- package/{browser/esm/BMRav2VAqEzDSp3r2.mjs → cdn/assets/C3r_9RqlWrEmlXZ1.js} +37 -3
- package/cdn/assets/{Be4QC65cR8N84rTn2.js → C5EKgE9Owsc_juw-.js} +1 -1
- package/cdn/assets/C6INLvBy8kdzFpsX.js +2447 -0
- package/cdn/assets/C7fu6LrSMBlHqwUy.js +46 -0
- package/{browser/esm/DMX-ZlC_ljcf7oUN.mjs → cdn/assets/C9NyIoUahFiyRCxP.js} +2 -2
- package/{browser/esm/BykiUmcpDgSRNQI12.mjs → cdn/assets/CBdNC7BOfc5TewHU.js} +1 -1
- package/cdn/assets/{DZDynaLqNeVaDoiH2.js → CCvBdPu7W2ZF6A9J.js} +3 -3
- package/cdn/assets/{Chq4BwbjH0sbIkJN2.js → CDAYVaQYywqaxg4O.js} +28 -13
- package/cdn/assets/CEYyp6Qrr_IopxpL.js +22597 -0
- package/cdn/assets/CFBgmXap8kmumhoz.js +622 -0
- package/{browser/esm/BDkVAo0CDCTE04ZJ2.mjs → cdn/assets/CFvKDDbrL3wpXnQH.js} +1 -1
- package/cdn/assets/{1guzFZp1LHz_FwfL2.js → CHMqT9DzYKTxPfP6.js} +2 -2
- package/cdn/assets/CILUMtSddGz7WXEv.js +240 -0
- package/cdn/assets/{DnzDlqizzNkbhJP7.js → CIyaijfp6itgRpFM.js} +95 -87
- package/cdn/assets/{DW7JlG-SQEdLYNar2.js → CL6Tgu_rUO6G-fyq.js} +183 -10
- package/cdn/assets/CMVTwWHsRgyfSEDM.js +300 -0
- package/cdn/assets/{CEN8dYSpN2oew8HH2.js → CMxbiQ5J79M3n1tk.js} +604 -405
- package/cdn/assets/COMOqucXq7X1vi0P.js +230 -0
- package/cdn/assets/{vcRSnmAqjwKglEkY2.js → CQOyeq_-pg3CM-uA.js} +6 -7
- package/cdn/assets/{c6VvwMHfXubjjtyj.js → CRXSrbGNABtzf532.js} +141 -126
- package/{browser/esm/hFSDx-LnUOObv-6h2.mjs → cdn/assets/CSEMxasVyGCekxKf.js} +6 -7
- package/cdn/assets/CSIZpJClc66_20kP.js +849 -0
- package/cdn/assets/CTI-mCJbJzitJZwj.js +25 -0
- package/{browser/esm/CdMv3f8Gyxh8q2RR2.mjs → cdn/assets/CTdFZ_I-41Vr6Dy4.js} +1 -1
- package/cdn/assets/CTvPIYWTcjwlJeEA.js +237 -0
- package/cdn/assets/CU5cKipVT1X8Xz7F.js +156 -0
- package/cdn/assets/CVcCUfSRsiZ1-6hs.js +119 -0
- package/cdn/assets/CWJzHmEgahdOfNjH.js +527 -0
- package/cdn/assets/CZOJogyZqMfUxcXj.js +1141 -0
- package/{browser/esm/D4VqLbEWag8lTWzC2.mjs → cdn/assets/CakrxSS_RXtKmcUX.js} +123 -94
- package/{browser/esm/Bl6bX86tSq8hfyb2.mjs → cdn/assets/CbTN0q6XnYGJqyEp.js} +2215 -2027
- package/cdn/assets/{gspQcUnmlRIwG609.js → Cfg4Dtndwurxv9LM.js} +8 -8
- package/cdn/assets/{BhDLR-jtbOOG-tl12.js → ChAKLV5zrGAHAof2.js} +28 -27
- package/cdn/assets/{CpnA5TZRkPDt4HnM2.js → CsrTRThObSryov1b.js} +182 -132
- package/cdn/assets/Cv5PLuhEmh5IDHjb.js +75 -0
- package/cdn/assets/Cw-4uoMuq_m7ziA3.js +36 -0
- package/cdn/assets/Cw7AJWd0S2sjRmr6.js +6309 -0
- package/cdn/assets/CwqRA5h1u92Cyit-.js +7 -0
- package/cdn/assets/Cy00y9b9j17Txyv1.js +466 -0
- package/cdn/assets/{CT3G9YRPVfKtHWwf2.js → D-bNmX0QsA8SuT0m.js} +32 -31
- package/{browser/esm/Dg5wjQp0fArKXlM3.mjs → cdn/assets/D-yz3V2UC54rwctD.js} +16 -11
- package/cdn/assets/D32D_biNXRCZ24vG.js +87 -0
- package/cdn/assets/D8DghdqjOtBzO2Wx.js +35 -0
- package/cdn/assets/DAE3Kv0Vs0VuBecT.js +32 -0
- package/cdn/assets/DCnWyVXikb_8Dat3.js +61 -0
- package/cdn/assets/DHH_uKVzQ_kRYO2N.js +57 -0
- package/cdn/assets/DHugYwX4_ZyqGn-C.js +1947 -0
- package/cdn/assets/DJqj66SnUcx0QmSN.js +15 -0
- package/cdn/assets/{R5bs6kCQSZmsCXz-2.js → DNaPo7BQu6hr1fWq.js} +1 -1
- package/cdn/assets/DOHh3pUXxMM09UY5.js +3604 -0
- package/cdn/assets/DONxZZT2Iwu7psS5.js +27 -0
- package/cdn/assets/{BCkXtOM3yKocv7L-.js → DQEjvIGMgEkiaP6J.js} +1 -1
- package/{browser/esm/CAPgMrAKg07EREFD.mjs → cdn/assets/DQIRFXG4MveFkK3I.js} +1 -1
- package/cdn/assets/DQjxp9lDP9DzP8ah.js +357 -0
- package/cdn/assets/{DrUEYcXg6N2D2s1Z.js → DRm1R4uVOkaMfXNI.js} +51 -11
- package/cdn/assets/DSXJHEORGmMQX_Mb.js +8391 -0
- package/cdn/assets/DSviq1TNoiIAGW7W.js +32 -0
- package/{browser/esm/Clfp7SznkOrJoQvL.mjs → cdn/assets/DVpi1vC8ixXvUQG_.js} +3 -3
- package/cdn/assets/{BOl4FzJRD7MplCU7.js → DWgp4t9N9u0eWthH.js} +1 -1
- package/{browser/esm/B5ZqqASTcBEV5L9K2.mjs → cdn/assets/DXo8mR6t5HGsmTcu.js} +1 -1
- package/cdn/assets/DYvBgX17ZerZSHEJ.js +300 -0
- package/cdn/assets/DZRm4H75lnEtOG8e.js +260 -0
- package/cdn/assets/D_pMOq6FdH4RSBLc.js +3364 -0
- package/{browser/esm/EwzqnZl1lTr56hH-2.mjs → cdn/assets/Dc2ZwgbIEgYWwAsF.js} +1 -1
- package/cdn/assets/DckmFyHxGX4Y1gOq.js +70 -0
- package/{browser/esm/oYdWyqsKo9ejAdVm.mjs → cdn/assets/De2z8LdHaWRFiR5T.js} +179 -202
- package/{browser/esm/DQ4o4dG7gWbL1X8F2.mjs → cdn/assets/DeUXRggj8Oz9ru_i.js} +2 -2
- package/{browser/esm/DRc_Wi5c7WdKHTVN2.mjs → cdn/assets/DfESVLC8CAi8m8A7.js} +6 -6
- package/cdn/assets/DicTo_3G-KZyWDiE.js +1084 -0
- package/cdn/assets/{D3G3tI3DVCUF3Gdk2.js → DjdkGy-EI1kSo226.js} +7 -5
- package/cdn/assets/DjtXfgbmXjUAoG0y.js +58 -0
- package/cdn/assets/DlpgIJxNq2V4gdDq.js +74 -0
- package/cdn/assets/{DaBczM5xU9ev5_or.js → Dp-GJXOMz_b8qAxD.js} +2 -2
- package/cdn/assets/DqBj-9o7UdXu4qhb.js +33 -0
- package/cdn/assets/{DZbR5R1fNikjgqYb.js → DrI_S0A9TQvriTua.js} +1 -1
- package/cdn/assets/DuAbY54w5gJpQgss.js +84250 -0
- package/cdn/assets/{D6SKy2BtcWkhfiA0.js → Dv8aQFTTaQBJKDDk.js} +2 -5
- package/cdn/assets/DviEoeWW0EvDg1hr.js +149 -0
- package/cdn/assets/{Cbw0JeJURvQyxIoa.js → DxcRLd7wmBGDgJsA.js} +1 -1
- package/cdn/assets/DxisV9_27l_WU-nk.js +21 -0
- package/cdn/assets/{Dc0BDcQUGy_WIVFa.js → Dy44qJVkwNseMG-3.js} +1 -1
- package/cdn/assets/ENtt4kmaU9mJfVEp.js +236 -0
- package/{browser/esm/COA_SZY2x8q6t4BD.mjs → cdn/assets/FO1Jezau486fH4kN.js} +7 -6
- package/cdn/assets/FjNOhkR7-JAIaRP6.js +19 -0
- package/cdn/assets/{DbEGszSW_J_k96KJ.js → G5z0uVlyF6CLw_PA.js} +179 -202
- package/cdn/assets/H-JnJQMcZQbpvjdb.js +2706 -0
- package/cdn/assets/J3hutJxqQiHENpIe.js +392 -0
- package/cdn/assets/J9i3r1fU0H10b2hX.js +1001 -0
- package/cdn/assets/{Gy0CHZTvn4hY-rkx.js → PtGiIWFBYP-ujLmf.js} +1 -1
- package/cdn/assets/PzWqv-oXxEuzKdaT.js +484 -0
- package/cdn/assets/QJ4AkDD269D1MzmI.js +89 -0
- package/cdn/assets/{qG5zdZZAe6mQIJo3.js → RfHd1JATBlcsfLPv.js} +5 -5
- package/{browser/esm/CtXoSHbCUKMY-tSJ.mjs → cdn/assets/SNze-adFJwKuGSQW.js} +48 -2
- package/cdn/assets/UTZcodQydbuMfCOS.js +171 -0
- package/{browser/esm/DzDwSOBdJh_lx_NM.mjs → cdn/assets/VCiu_neIjCTg2NUa.js} +998 -1006
- package/cdn/assets/{BHmYoIIbNW3GdcqV.js → VwGokBaawZfZiV2X.js} +1 -1
- package/cdn/assets/W1d6GQyySAHrtjEu.js +3563 -0
- package/cdn/assets/ZSYS1J3uR7UQuHwZ.js +217 -0
- package/cdn/assets/{CR3jgkduTLczbMjH.js → ZxsFYopF0_WWqw4Q.js} +1 -1
- package/{browser/esm/BHBJtVTiQByD_y9j.mjs → cdn/assets/_t0Mx-mUFVtmVNkU.js} +2 -2
- package/cdn/assets/aHTKr1ijZ6bRi3Zg.js +33 -0
- package/cdn/assets/anQDUZhHMDPi1eha.js +812 -0
- package/cdn/assets/{tVOVNvOs6ro8FXqa2.js → dn69mDhY7Xcc91kF.js} +20 -19
- package/cdn/assets/fm3mUdTDo-STB36M.js +4749 -0
- package/cdn/assets/gpQ4FdJMbIScKnS_.js +400 -0
- package/cdn/assets/{EjOJX5m8OEL-IjPB.js → hg8WYI0Yy4WPPPoP.js} +28 -27
- package/{browser/esm/DQ-0yyFAwoWtxmhV2.mjs → cdn/assets/i0P63Wd0RRlgJotb.js} +1 -1
- package/cdn/assets/lWY3TbG2NDscy9He.js +72 -0
- package/{browser/esm/BCZjYGV8AqIZghBH.mjs → cdn/assets/lqknEt3DTma5Juxs.js} +69 -4
- package/cdn/assets/mK8HcIZyXkOTvL6E.js +2453 -0
- package/cdn/assets/{BPv6Pw1hW-sV5Fya.js → pc49xtHdprXZLW2X.js} +1 -1
- package/cdn/assets/px-aQ8dMjiWag_pV.js +167 -0
- package/cdn/assets/qYca4mdySLkACfo1.js +37 -0
- package/{browser/esm/BqwvP0318zI2izeL2.mjs → cdn/assets/w5IQWbJETgHhqMsY.js} +33 -31
- package/cdn/assets/wM7DzeOpoEGBVDBe.js +441 -0
- package/cdn/assets/{CG5v2hAwGR5Ptufn2.js → x6GcENwqoUVbd60j.js} +1 -1
- package/cdn/assets/xlXDq-qoj7eOE6_T.js +5153 -0
- package/{browser/esm/CGqvy5LwQ4z9J2oD2.mjs → cdn/assets/ycmpAs4kQfeh78Pa.js} +1 -1
- package/cdn/index.js +2 -2
- package/package.json +13 -14
- package/browser/cjs/1XrWGMP3GmsQOMIX2.cjs +0 -1
- package/browser/cjs/2zXD3NPfuQT2KSZq.cjs +0 -7
- package/browser/cjs/49_x589Na12sizKK.cjs +0 -1
- package/browser/cjs/4nReftSsKWmnRdtf2.cjs +0 -1
- package/browser/cjs/507hQYooKKjnRzsZ2.cjs +0 -1
- package/browser/cjs/B19QM3SGmPKKwD_o.cjs +0 -1
- package/browser/cjs/B4JJfKSI4ppwU8552.cjs +0 -1
- package/browser/cjs/B5YBx0GqLor3i0O1.cjs +0 -1
- package/browser/cjs/B7_pDFYCVzt-3hUs.cjs +0 -1
- package/browser/cjs/B9EI7wviSkHS9ZkH.cjs +0 -1
- package/browser/cjs/BAxVLKkxFgI6cXnR.cjs +0 -1
- package/browser/cjs/BC2gCQkR1iykfAuC.cjs +0 -1
- package/browser/cjs/BEJFcqVMDMKOvs11.cjs +0 -1
- package/browser/cjs/BEVqcFGFU6Ri9y8T.cjs +0 -5
- package/browser/cjs/BEzaum_kgG4yAOx0.cjs +0 -1
- package/browser/cjs/BF-38Z7Z0FZOPl192.cjs +0 -1
- package/browser/cjs/BIQZDBQfv3Qm5iC8.cjs +0 -4
- package/browser/cjs/BK0SCfN_VZYqBxoQ2.cjs +0 -1
- package/browser/cjs/BSCgCfORdZz1Ii5S.cjs +0 -2
- package/browser/cjs/BWDfauDHqB6U_2ka2.cjs +0 -1
- package/browser/cjs/BZr-IqNS1skh1hr6.cjs +0 -21
- package/browser/cjs/B_WV3e3yexp3dKaz.cjs +0 -9
- package/browser/cjs/BfzzZ9IR27ZPzj-8.cjs +0 -3
- package/browser/cjs/Bgke3PtMSF2Iaen4.cjs +0 -1
- package/browser/cjs/BnccBYHCCq9TGFx4.cjs +0 -8
- package/browser/cjs/Btc0Nzu40VYOpzLX.cjs +0 -1
- package/browser/cjs/BvG8N7G_8CXIAlT-.cjs +0 -1
- package/browser/cjs/BwLx9ix5Sq7suAYP2.cjs +0 -1
- package/browser/cjs/BziOCn_XEGT4ynN5.cjs +0 -1
- package/browser/cjs/C-HOJozu5NgCil1q.cjs +0 -1
- package/browser/cjs/C-bW8lKUTFFUVap4.cjs +0 -1
- package/browser/cjs/C2oTW2DjZypuqq7x.cjs +0 -1
- package/browser/cjs/C2uDl8VIJqh58YF_.cjs +0 -1
- package/browser/cjs/C5rQELB0TUeXY6VM.cjs +0 -1
- package/browser/cjs/C6yxQPAEgcGWAhYR.cjs +0 -33
- package/browser/cjs/C9C-pr-T_ThweQX92.cjs +0 -1
- package/browser/cjs/CHFOXPbNUaeZbrXn.cjs +0 -1
- package/browser/cjs/CHMgm0vAbEBS1mVW.cjs +0 -1
- package/browser/cjs/CJYewYJ5Z3iojl7J.cjs +0 -1
- package/browser/cjs/CPcBvw4ZPwHVTUZF.cjs +0 -1
- package/browser/cjs/CPgCih_KEqnUZ9Rv.cjs +0 -3
- package/browser/cjs/CRx1WvmgBjT8WVyB2.cjs +0 -1
- package/browser/cjs/CSNCOmYEOR-iTJ7K.cjs +0 -5
- package/browser/cjs/CV4KQsHluMqo1I2Q.cjs +0 -1
- package/browser/cjs/CW-b31_-r-_raT8Y2.cjs +0 -1
- package/browser/cjs/CXlzsh_WHCOsErJ12.cjs +0 -1
- package/browser/cjs/C_7w8EJZpHw8ueuq.cjs +0 -1
- package/browser/cjs/C_IEgjM-hSJCv6Gm.cjs +0 -1
- package/browser/cjs/CbLXP9WY38wTcGn5.cjs +0 -10
- package/browser/cjs/CcneNtiqtKppCa-p.cjs +0 -57
- package/browser/cjs/CeF0DZ-k4DB8M47I.cjs +0 -1
- package/browser/cjs/Ci8Uu7_b4lwwRLAD2.cjs +0 -1
- package/browser/cjs/Clu7XiAsCB48GDXN2.cjs +0 -1
- package/browser/cjs/Cm21F18ga8TluA9h.cjs +0 -1
- package/browser/cjs/CnZfa45XxA-9Jhmp.cjs +0 -1
- package/browser/cjs/CojEXZgX08waZOoq.cjs +0 -1
- package/browser/cjs/CpJJh4UnFl1_qFui.cjs +0 -1
- package/browser/cjs/CrDTTLE9EvaGDSD4.cjs +0 -88
- package/browser/cjs/CrZlUtdX1h2RUnCP.cjs +0 -1
- package/browser/cjs/Cty5pi0fwToP1GWe.cjs +0 -7
- package/browser/cjs/CvV18ZJgssoHMkdf2.cjs +0 -2
- package/browser/cjs/Cy-4IMt-AbR-ifP3.cjs +0 -126
- package/browser/cjs/CyGzzWYDy-IniKCq2.cjs +0 -7
- package/browser/cjs/CzgwTfy2072Dmt5u.cjs +0 -1
- package/browser/cjs/D19RglhKiroWfpQn2.cjs +0 -1
- package/browser/cjs/D8-KovdJ0LjxqCe2.cjs +0 -1
- package/browser/cjs/DCIlWcGDrp-5PDoA.cjs +0 -1
- package/browser/cjs/DDnGLOLTqLFsdUDS2.cjs +0 -1
- package/browser/cjs/DEOu_cHJ1FfTA9R_2.cjs +0 -1
- package/browser/cjs/DFHxNnJ-lHtv0hIq.cjs +0 -1
- package/browser/cjs/DG-AY_xO8RKHtEBE.cjs +0 -2
- package/browser/cjs/DG2kqsWRUtVugjay2.cjs +0 -1
- package/browser/cjs/DH3WXPfGHwWJW0nH.cjs +0 -1
- package/browser/cjs/DIbdDzNf_3S2RYZN.cjs +0 -1
- package/browser/cjs/DLYEQZzAGuSAmJsp.cjs +0 -6
- package/browser/cjs/DM7-R_ltoLbA9jde2.cjs +0 -1
- package/browser/cjs/DNCC-QNp2I7saV-I.cjs +0 -1
- package/browser/cjs/DNKyaSruDogoBd2H2.cjs +0 -1
- package/browser/cjs/DNy-UU3NKNqQQngF.cjs +0 -1
- package/browser/cjs/DPjEO7dwhCFd8DHR2.cjs +0 -2
- package/browser/cjs/DYqvGm5rx1DB53p7.cjs +0 -1
- package/browser/cjs/DZSvmqU8nRas1uz62.cjs +0 -1
- package/browser/cjs/DfMJOaJ0GcUiSn4Q.cjs +0 -1
- package/browser/cjs/DiZDRPIgbO3sQ8Vb.cjs +0 -1
- package/browser/cjs/DsFZgtSQpC75d1M02.cjs +0 -1
- package/browser/cjs/DsIHLUKUrSrYhFHl.cjs +0 -1
- package/browser/cjs/Du4jBiFxRIF1OjD4.cjs +0 -1
- package/browser/cjs/DvSvfeo9V0Abfd3q2.cjs +0 -1
- package/browser/cjs/Dx79LP1-YCQg8B87.cjs +0 -1
- package/browser/cjs/DxQkFYAFNZubVdn22.cjs +0 -1
- package/browser/cjs/E-IqDztfMb_xdszH.cjs +0 -1
- package/browser/cjs/EeOVMRq7TuptFKTc2.cjs +0 -1
- package/browser/cjs/ElcoSB--cCpS6i7R2.cjs +0 -1
- package/browser/cjs/JfM6P_qoQQTWakZf.cjs +0 -1
- package/browser/cjs/KNCocKN9uPR0tvUS.cjs +0 -1
- package/browser/cjs/Kr8f1inOTt-MICaP2.cjs +0 -1
- package/browser/cjs/Kvn916ebqGc4t6hv2.cjs +0 -1
- package/browser/cjs/NcNz8RfT5V889CMT.cjs +0 -10
- package/browser/cjs/PM3PrEWG3WHKxaDx.cjs +0 -1
- package/browser/cjs/YG320hBA20Dl3HoU2.cjs +0 -1
- package/browser/cjs/Ytzw6iUYx5f19wfK.cjs +0 -9
- package/browser/cjs/_H5j4dU7HOBYTawU.cjs +0 -1
- package/browser/cjs/a0Z-SXs_N71CtqYb2.cjs +0 -1
- package/browser/cjs/aONv0Ys3C8xmnaR82.cjs +0 -1
- package/browser/cjs/aYuNpndpwcZG5eik2.cjs +0 -20
- package/browser/cjs/bGMaev70Zd_NXqLM2.cjs +0 -1
- package/browser/cjs/bIaGoYEDSBCrAaB6.cjs +0 -1
- package/browser/cjs/bM25C5avKgBAJVfk2.cjs +0 -1
- package/browser/cjs/fqTQ_p3ehzUvc1tF2.cjs +0 -1
- package/browser/cjs/h3dw1jAp2J5Pu4p32.cjs +0 -1
- package/browser/cjs/hzUo76TXMOBqsI3U2.cjs +0 -1
- package/browser/cjs/i2VboqjlOcozI9MQ.cjs +0 -12
- package/browser/cjs/index.cjs +0 -79
- package/browser/cjs/jev6VGWTdgEgm4Yk2.cjs +0 -1
- package/browser/cjs/lEQC21-Sk4lwHy2r2.cjs +0 -1
- package/browser/cjs/ppSJKdLn646BZOzg.cjs +0 -1
- package/browser/cjs/xBcvszV6x7ys-m532.cjs +0 -1
- package/browser/cjs/xQ6-wbTw5UzZUM1Y.cjs +0 -1
- package/browser/cjs/z_rZE1OHFPpdGBh42.cjs +0 -1
- package/browser/esm/-vgNEEXiEad4bltZ.mjs +0 -28782
- package/browser/esm/3y_bCend8tkaewDG2.mjs +0 -106
- package/browser/esm/At60x9FEPePwPP_J.mjs +0 -51151
- package/browser/esm/B1NoGosH2YQh01g7.mjs +0 -105
- package/browser/esm/B4h6iO7hQ9lCR7kj.mjs +0 -11273
- package/browser/esm/BBtOlJMVlsWorNJH.mjs +0 -824
- package/browser/esm/BQDXkeSabbxB5DUB2.mjs +0 -47
- package/browser/esm/BUCKq_2lHPd1ndvw.mjs +0 -149
- package/browser/esm/BVjXdv_wkL1x_8ZJ2.mjs +0 -1149
- package/browser/esm/BX4f6i2WMBMKFVCq.mjs +0 -99
- package/browser/esm/BZsx0QHg1RZlM9ZN.mjs +0 -15
- package/browser/esm/BhxX7CZWSOlV2Dsz.mjs +0 -224
- package/browser/esm/BhzLZRz2N8RxjQ_U.mjs +0 -34
- package/browser/esm/BjTf3XA9Swj0ngpH.mjs +0 -7813
- package/browser/esm/BkSb_vyWe-AhyEDa.mjs +0 -4423
- package/browser/esm/Bp9qFBIcpIGXvMgo.mjs +0 -134
- package/browser/esm/C0rS1uBqfsj-gPR8.mjs +0 -152
- package/browser/esm/C6CK_4GD9IpxKglV2.mjs +0 -6713
- package/browser/esm/CGGJWgWSPZ0aP_C3.mjs +0 -87
- package/browser/esm/CGyydD3tRb0ik50l2.mjs +0 -20
- package/browser/esm/CPUlpDM6aAzZzCat2.mjs +0 -471
- package/browser/esm/CU1d8OvDv5TU6fSd.mjs +0 -2211
- package/browser/esm/CY1zykikO58_ADk8.mjs +0 -3188
- package/browser/esm/CZWIS7FuqNjbheSw.mjs +0 -235
- package/browser/esm/Cb-FUOYcyRSkHG6u2.mjs +0 -238
- package/browser/esm/Cc5IufffX4N-8QpE.mjs +0 -6104
- package/browser/esm/Cd8HXAJlflkkTXxc.mjs +0 -53
- package/browser/esm/CfuhUkrvOq11d9FR.mjs +0 -44
- package/browser/esm/Ckl3FLCOeqw7yhkP2.mjs +0 -82
- package/browser/esm/CpjX81WsWJbXMUoT.mjs +0 -3655
- package/browser/esm/D9-wpGVbTS9rRpxx.mjs +0 -24
- package/browser/esm/DDOO4tcrO4OfMUDe.mjs +0 -25
- package/browser/esm/DDUYQ8FPeh1TJU24.mjs +0 -538
- package/browser/esm/DFdU1DsC1lXOrejZ.mjs +0 -8260
- package/browser/esm/DMLwXmjo28k_iNEU.mjs +0 -4740
- package/browser/esm/DVJd6McdAG5udItH.mjs +0 -27
- package/browser/esm/D_zNx76HGunFi7xJ.mjs +0 -509
- package/browser/esm/DfRGH6mEtIVDWEYN2.mjs +0 -304
- package/browser/esm/DnuaqN0xfgqzl8qG.mjs +0 -2687
- package/browser/esm/fJ1McMt7xzRA_lUX.mjs +0 -383
- package/browser/esm/nguMxPB9LKexKBRX.mjs +0 -219
- package/browser/esm/qzhFT2j-mpQEQnKs.mjs +0 -16386
- package/cdn/assets/2CuCH0wi9XPgVzE42.js +0 -44
- package/cdn/assets/2UHIeioUPXrwtZy-2.js +0 -83
- package/cdn/assets/BAhvL7M7ZcgZ8eDc2.js +0 -48
- package/cdn/assets/BJEpPEyFWtLzMIq-2.js +0 -3655
- package/cdn/assets/BKEzd89UphJ8q1pp2.js +0 -2211
- package/cdn/assets/BM7OqAUEUk-up7_82.js +0 -134
- package/cdn/assets/BNuoKAzs4zkxSocG2.js +0 -44
- package/cdn/assets/BNybEGR813e3aNIv.js +0 -8263
- package/cdn/assets/BU6uQhQhpaLElTT82.js +0 -225
- package/cdn/assets/BVgTMDEoPgsWFmku.js +0 -510
- package/cdn/assets/BVjXdv_wkL1x_8ZJ2.js +0 -1149
- package/cdn/assets/BWlMK76Aj2d4ygsH.js +0 -538
- package/cdn/assets/BZsx0QHg1RZlM9ZN2.js +0 -15
- package/cdn/assets/BixsQGDDf3Iv_PtW2.js +0 -4740
- package/cdn/assets/Bl6C6xWT8E6b7OwJ2.js +0 -239
- package/cdn/assets/BzUU8y1IFjREzgog2.js +0 -107
- package/cdn/assets/CGyydD3tRb0ik50l.js +0 -20
- package/cdn/assets/CH0of3GZTzHviuQV.js +0 -24
- package/cdn/assets/CH0of3GZTzHviuQV2.js +0 -24
- package/cdn/assets/CHttngK66Ido5dWW.js +0 -106
- package/cdn/assets/Ce5A_D4YBgi_s2KF.js +0 -176
- package/cdn/assets/CpYlf4dXa_V2v-iS2.js +0 -3188
- package/cdn/assets/Crkvq5j5KIa6eTLI2.js +0 -51151
- package/cdn/assets/Cv-KXN9kl0UeMezQ.js +0 -824
- package/cdn/assets/CvtkpvGzCHhNuwTm.js +0 -16386
- package/cdn/assets/D-fJXasEYyfRUcj2.js +0 -6104
- package/cdn/assets/D1MA2ed2cLMt7hV9.js +0 -236
- package/cdn/assets/D9gETGi23d14kT7u2.js +0 -99
- package/cdn/assets/D9joTG0Z2zdWHAEa2.js +0 -4423
- package/cdn/assets/DC9obE_EVmxtvXCf.js +0 -11275
- package/cdn/assets/DCnA2-zB7W_QB-tD2.js +0 -2199
- package/cdn/assets/DDNivpFWzQ3AIJia.js +0 -2687
- package/cdn/assets/DDOO4tcrO4OfMUDe.js +0 -25
- package/cdn/assets/DEUY_zuVwmptMX4l.js +0 -150
- package/cdn/assets/DIQf1pX-j-dWQu_e.js +0 -472
- package/cdn/assets/DJwQ9abZkyFO9Doy.js +0 -7404
- package/cdn/assets/DTCtbG90ip7Z7LaG.js +0 -220
- package/cdn/assets/DVS_5oDniuAFH3vT2.js +0 -6715
- package/cdn/assets/D_HeH7AJqWoxehn52.js +0 -53
- package/cdn/assets/DfRGH6mEtIVDWEYN.js +0 -304
- package/cdn/assets/DvItgGbf8IOWPyxd.js +0 -28784
- package/cdn/assets/DvlpP6sUZ9Qzl9s22.js +0 -616
- package/cdn/assets/WLUhtyUNK5QJ7Pff.js +0 -34
- package/cdn/assets/c7aIqKLOO4pvUsV12.js +0 -220
- package/cdn/assets/mtI43hWjdp4E3Z_-.js +0 -152
- package/cdn/assets/nmR_PgTW7GrlbHHZ.js +0 -27
- package/cdn/assets/vTCuFafvRlSaT9wy.js +0 -87
|
@@ -0,0 +1,763 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.8.0-beta.10
|
|
3
|
+
*
|
|
4
|
+
* (C) 2026-present SheetXL Inc. & Michael T. Ford
|
|
5
|
+
* License: The license can be found at https://www.sheetxl.com/license.
|
|
6
|
+
*/
|
|
7
|
+
import { P as e } from "./CMxbiQ5J79M3n1tk.js";
|
|
8
|
+
import { c as t, o as n, t as r } from "./BAH_cWcQEIBKWnl6.js";
|
|
9
|
+
var i = Object.freeze({
|
|
10
|
+
NoBody: "SXL1001",
|
|
11
|
+
Anonymous: "SXL1002",
|
|
12
|
+
ParseError: "SXL1003",
|
|
13
|
+
InvalidParamType: "SXL2001",
|
|
14
|
+
InvalidReturnType: "SXL2002",
|
|
15
|
+
UndefinedInput: "SXL2003",
|
|
16
|
+
MissingType: "SXL2004",
|
|
17
|
+
UntypedArray: "SXL2005",
|
|
18
|
+
GenericArity: "SXL2006",
|
|
19
|
+
MultipleModifiers: "SXL2007",
|
|
20
|
+
ContextNotFirst: "SXL2010",
|
|
21
|
+
MultipleLambda: "SXL2020",
|
|
22
|
+
LambdaNotLast: "SXL2021",
|
|
23
|
+
LambdaScalarMismatch: "SXL2022",
|
|
24
|
+
LambdaReturn: "SXL2023",
|
|
25
|
+
FunctionReturn: "SXL2024",
|
|
26
|
+
LambdaArity: "SXL2025",
|
|
27
|
+
ArrayDepth: "SXL2030",
|
|
28
|
+
RepeatingPosition: "SXL2040",
|
|
29
|
+
MultipleRepeating: "SXL2041",
|
|
30
|
+
RepeatingSlots: "SXL2042",
|
|
31
|
+
RepeatingOptional: "SXL2043",
|
|
32
|
+
RepeatingMax: "SXL2044",
|
|
33
|
+
EnumMixed: "SXL2050",
|
|
34
|
+
EnumMemberNotConstant: "SXL2051",
|
|
35
|
+
EnumNotLocal: "SXL2052",
|
|
36
|
+
EnumMissingAlias: "SXL2053",
|
|
37
|
+
EnumPosition: "SXL2054",
|
|
38
|
+
EnumOmittedValue: "SXL2055",
|
|
39
|
+
NoExports: "SXL3001",
|
|
40
|
+
UnknownParam: "SXL3002",
|
|
41
|
+
BuiltInName: "SXL3003",
|
|
42
|
+
UnknownReturnKind: "SXL3005",
|
|
43
|
+
InvalidName: "SXL3006",
|
|
44
|
+
DuplicateName: "SXL3007",
|
|
45
|
+
MissingSummary: "SXL9001",
|
|
46
|
+
MissingParamDescription: "SXL9002",
|
|
47
|
+
MissingReturns: "SXL9003",
|
|
48
|
+
EnumDuplicateValue: "SXL9004",
|
|
49
|
+
EnumMemberUndocumented: "SXL9005"
|
|
50
|
+
}), a = [
|
|
51
|
+
{
|
|
52
|
+
name: "param",
|
|
53
|
+
group: "jsdoc",
|
|
54
|
+
description: "Document a parameter. A string union type becomes a dropdown of allowed options.",
|
|
55
|
+
snippet: "param ${1:name} ${2:description}"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
name: "returns",
|
|
59
|
+
aliases: ["return"],
|
|
60
|
+
group: "jsdoc",
|
|
61
|
+
description: "Describe the return value."
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
name: "category",
|
|
65
|
+
group: "sheetxl",
|
|
66
|
+
description: "Group the function under a category in the function list.",
|
|
67
|
+
snippet: "category ${1:name}"
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
name: "name",
|
|
71
|
+
group: "sheetxl",
|
|
72
|
+
description: "A name an identifier cannot spell: the name formulas call a function by (MY.FUNC), or an enum member's label.",
|
|
73
|
+
snippet: "name ${1:NAME}"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
name: "description",
|
|
77
|
+
group: "sheetxl",
|
|
78
|
+
description: "A longer description of the function."
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
name: "deprecated",
|
|
82
|
+
group: "sheetxl",
|
|
83
|
+
standalone: !0,
|
|
84
|
+
description: "Mark the function as deprecated (optionally with a reason)."
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
name: "hidden",
|
|
88
|
+
group: "sheetxl",
|
|
89
|
+
standalone: !0,
|
|
90
|
+
description: "Hide the function from the function list."
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
name: "returnkind",
|
|
94
|
+
group: "sheetxl",
|
|
95
|
+
description: "Declare the value kind of the return (a ValueKind word, e.g. `number`, `array`, `reference`) where the type spelling cannot say it (a union return collapses to any).",
|
|
96
|
+
snippet: "returnKind ${1:number}"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: "example",
|
|
100
|
+
group: "jsdoc",
|
|
101
|
+
description: "Provide a usage example."
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
name: "see",
|
|
105
|
+
group: "jsdoc",
|
|
106
|
+
description: "Reference a related function or link."
|
|
107
|
+
}
|
|
108
|
+
], o = (() => {
|
|
109
|
+
let e = /* @__PURE__ */ new Map();
|
|
110
|
+
for (let t of a) if (e.set(t.name, t), t.aliases) for (let n of t.aliases) e.set(n, t);
|
|
111
|
+
return e;
|
|
112
|
+
})();
|
|
113
|
+
function s(e) {
|
|
114
|
+
return !0 === function(e) {
|
|
115
|
+
if (!e) return;
|
|
116
|
+
let t = (e.startsWith("@") ? e.slice(1) : e).toLowerCase();
|
|
117
|
+
return o.get(t);
|
|
118
|
+
}(e)?.standalone;
|
|
119
|
+
}
|
|
120
|
+
var c = /* @__PURE__ */ new Map([["IReferenceRange", "p"], ["IRange", "r"]]), l = new Set(Object.values(t).filter((e) => e !== t.Omitted)), u = /* @__PURE__ */ new Map([
|
|
121
|
+
["IWorkbook", "workbook"],
|
|
122
|
+
["ISheet", "sheet"],
|
|
123
|
+
["ICellRanges", "ranges"],
|
|
124
|
+
["ICellRange", "range"]
|
|
125
|
+
]), d = Array.from(u.keys()), f = (e, t) => {
|
|
126
|
+
Array.from(t.keys()).forEach((n) => {
|
|
127
|
+
let r = t.get(n);
|
|
128
|
+
t.set(`${e}.${n}`, r);
|
|
129
|
+
});
|
|
130
|
+
}, p = /* @__PURE__ */ new Map([
|
|
131
|
+
["Scalar", "*"],
|
|
132
|
+
["Lambda", "l"],
|
|
133
|
+
["FormulaError.Known", r.Error],
|
|
134
|
+
["Date", n.Date],
|
|
135
|
+
["IRichData", n.RichData]
|
|
136
|
+
]), m = /* @__PURE__ */ new Map([["Repeating", "repeating"]]), h = /* @__PURE__ */ new Set(["Flatten", "SheetXL.Flatten"]), g = /* @__PURE__ */ new Set(["AcceptError"]), _ = /* @__PURE__ */ new Set(["Omittable"]), v = /* @__PURE__ */ new Set(["NoLift"]), y = /* @__PURE__ */ new Set(["NoFilter"]), b = /* @__PURE__ */ new Set(["Lazy"]), x = /* @__PURE__ */ new Set(["ReportType"]), S = /^[a-zA-Z_-][a-zA-Z0-9_.-]*$/, C = /^([a-z]{1,3})([0-9]+)$/i, w = /^r[0-9]*c[0-9]*$/i, T = "SheetXL", E = (e) => {
|
|
137
|
+
let t = e.typeName.getText();
|
|
138
|
+
return t.startsWith(`${T}.`) ? t.slice(8) : t;
|
|
139
|
+
};
|
|
140
|
+
f(T, c), f(T, u), f(T, m), g.add(T + ".AcceptError"), _.add(`${T}.Omittable`), v.add(`${T}.NoLift`), y.add(`${T}.NoFilter`), b.add(`${T}.Lazy`), x.add(`${T}.ReportType`);
|
|
141
|
+
var D = /* @__PURE__ */ new Map([
|
|
142
|
+
["Promise", () => ({ async: !0 })],
|
|
143
|
+
["Observable", () => ({ stream: !0 })],
|
|
144
|
+
["Volatile", () => ({ volatile: !0 })],
|
|
145
|
+
[`${T}.Volatile`, () => ({ volatile: !0 })]
|
|
146
|
+
]), O = "__scriptContext__", k = "script", A = /* @__PURE__ */ new Set([
|
|
147
|
+
"IScript.ScriptContext",
|
|
148
|
+
`${T}.IScript.ScriptContext`,
|
|
149
|
+
"ScriptContext"
|
|
150
|
+
]), j = (e, t) => {
|
|
151
|
+
let n = t.literal;
|
|
152
|
+
if (n === void 0) return;
|
|
153
|
+
let r = e.SyntaxKind;
|
|
154
|
+
switch (n.kind) {
|
|
155
|
+
case r.StringLiteral: return n.text;
|
|
156
|
+
case r.NumericLiteral: return parseFloat(n.text);
|
|
157
|
+
case r.TrueKeyword: return !0;
|
|
158
|
+
case r.FalseKeyword: return !1;
|
|
159
|
+
case r.NullKeyword: return null;
|
|
160
|
+
case r.PrefixUnaryExpression: return n.operator === r.MinusToken && n.operand?.kind === r.NumericLiteral ? -parseFloat(n.operand.text) : void 0;
|
|
161
|
+
default: return;
|
|
162
|
+
}
|
|
163
|
+
}, M = (e) => {
|
|
164
|
+
if (!e || e.length === 0) return "";
|
|
165
|
+
let t = "";
|
|
166
|
+
for (let n = 0; n < e.length; n++) {
|
|
167
|
+
let r = e[n], i = r.kind;
|
|
168
|
+
if (i !== "link") {
|
|
169
|
+
if (i === "linkName") {
|
|
170
|
+
let i = e[n + 1];
|
|
171
|
+
if (i?.kind === "linkText" && i.text.trim()) continue;
|
|
172
|
+
t += r.text;
|
|
173
|
+
continue;
|
|
174
|
+
}
|
|
175
|
+
t += i === "linkText" ? r.text.trim() : r.text;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
return t.replace(/\r\n?/g, "\n").split(/\n[^\S\n]*\n\s*/).map((e) => e.split("\n").map((e) => e.trim()).filter(Boolean).join(" ")).filter(Boolean).join("\n").trim();
|
|
179
|
+
};
|
|
180
|
+
function N(t, n, a, o) {
|
|
181
|
+
let f = o?.builtInNames?.length ? new Set(o.builtInNames.map((e) => e.toUpperCase())) : null, N = [], P = /* @__PURE__ */ new Map(), F = [], I = null, L = (e, t, n, r) => {
|
|
182
|
+
let { start: i, length: a } = ((e) => {
|
|
183
|
+
if (!e || typeof e.getStart != "function") return {
|
|
184
|
+
start: 0,
|
|
185
|
+
length: 0
|
|
186
|
+
};
|
|
187
|
+
try {
|
|
188
|
+
return {
|
|
189
|
+
start: e.getStart(),
|
|
190
|
+
length: e.getWidth()
|
|
191
|
+
};
|
|
192
|
+
} catch {
|
|
193
|
+
return {
|
|
194
|
+
start: 0,
|
|
195
|
+
length: 0
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
})(e);
|
|
199
|
+
F.push({
|
|
200
|
+
start: i,
|
|
201
|
+
length: a,
|
|
202
|
+
severity: n,
|
|
203
|
+
code: t,
|
|
204
|
+
message: r
|
|
205
|
+
});
|
|
206
|
+
}, R = (e, t, n) => {
|
|
207
|
+
L(e, t, "error", n);
|
|
208
|
+
}, z = (e) => e?.parent?.name?.escapedText, B = (e, t, n, r, a = !1, o = !1, s = !1) => {
|
|
209
|
+
let c = { count: 0 }, l = Z(e, t, n, r, c, a, o, s);
|
|
210
|
+
c.count >= 2 && (t.range || (t.range = "m", c.count -= 2), !r && c.count >= 1 && (--c.count, c.count > 0 && R(e, i.ArrayDepth, `Arrays of more than 2 dimensions are not supported: '${z(e)}'.`))), c.count > 0 && (t.arrayDepth = c.count);
|
|
211
|
+
let u = t.enum;
|
|
212
|
+
return u && (c.count > +!!s || t.range) && !K.has(t) && (t.valueOrRange || (R(e, i.EnumPosition, `A list cannot hold the enum '${u.id}': '${t.name ?? z(e)}'. Its members reach the body as they are, so nothing checks them against the enum. Take one value per argument ('...x: ${u.id}[]'), or type the list by its scalar ('${u.type}').`), delete t.enum)), l;
|
|
213
|
+
}, V = (e, n, r, i, a) => {
|
|
214
|
+
if (n !== "Lambda" && n !== `${T}.Lambda`) return !1;
|
|
215
|
+
let o = e.typeArguments, s = "*";
|
|
216
|
+
if (o && o.length === 2) {
|
|
217
|
+
if (a && o[0].kind === t.SyntaxKind.TupleType && (r.lambdaArity = o[0].elements.length), o[1].kind === t.SyntaxKind.AnyKeyword) s = "raw";
|
|
218
|
+
else {
|
|
219
|
+
let e = {};
|
|
220
|
+
Z(o[1], e, i, !1, { count: 0 }), s = e.scalar ?? "*";
|
|
221
|
+
}
|
|
222
|
+
} else if (o && o.length === 1 && o[0].kind !== t.SyntaxKind.TupleType && o[0].kind !== t.SyntaxKind.ArrayType) {
|
|
223
|
+
if (a && (r.lambdaArity = 2), o[0].kind === t.SyntaxKind.AnyKeyword) s = "raw";
|
|
224
|
+
else {
|
|
225
|
+
let e = {};
|
|
226
|
+
Z(o[0], e, i, !1, { count: 0 }), s = e.scalar ?? "*";
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
return r.lambda = s, !0;
|
|
230
|
+
}, H = /* @__PURE__ */ new Map(), U = /* @__PURE__ */ new Map(), W = /* @__PURE__ */ new Map(), G = /* @__PURE__ */ new Set(), K = /* @__PURE__ */ new WeakSet(), q = (e) => e !== void 0 && e.getSourceFile() === n, J = (t, n = !1) => t.getJsDocTags(a).find((e) => e.name === "name")?.text?.map((e) => e.text).join("").trim() || (n ? e.camelToPrettyCase(t.name) : t.name), Y = (e) => {
|
|
231
|
+
let t = e.getJsDocTags(a).find((e) => e.name === "deprecated");
|
|
232
|
+
if (t) return t.text?.map((e) => e.text).join("").trim() || !0;
|
|
233
|
+
}, X = (e, o) => {
|
|
234
|
+
let s = t.isTypeReferenceNode(e) ? e.typeName : void 0, c = s ? a.getSymbolAtLocation(s) : void 0, l = c?.declarations?.length ? c : void 0;
|
|
235
|
+
if (s) {
|
|
236
|
+
if (l && l.flags & t.SymbolFlags.Alias) return void R(e, i.EnumNotLocal, `'${s.getText()}' is imported, so its declaration cannot be read: '${o}'. An enum must be declared in the module that uses it.`);
|
|
237
|
+
if (!(l && l.flags & t.SymbolFlags.Type)) {
|
|
238
|
+
let r = s.getText();
|
|
239
|
+
return (l ? (l.flags & t.SymbolFlags.Variable) !== 0 : n.statements.some((e) => t.isVariableStatement(e) && e.declarationList.declarations.some((e) => t.isIdentifier(e.name) && e.name.text === r))) ? void R(e, i.EnumMissingAlias, `'${r}' is a value, not a type: '${o}'. Pair the object with a same-name type — 'type ${r} = typeof ${r}[keyof typeof ${r}];' — or declare it as 'enum ${r} { … }'.`) : null;
|
|
240
|
+
}
|
|
241
|
+
let r = H.get(l);
|
|
242
|
+
if (r !== void 0) return r;
|
|
243
|
+
if (G.has(l)) return;
|
|
244
|
+
}
|
|
245
|
+
let u = [], d = !1;
|
|
246
|
+
if (l && l.flags & t.SymbolFlags.Enum) {
|
|
247
|
+
if (!l.declarations?.some(q)) return void R(e, i.EnumNotLocal, `'${l.name}' is not declared in this module: '${o}'. An enum must be declared in the module that uses it.`);
|
|
248
|
+
d = !0;
|
|
249
|
+
let n = !1;
|
|
250
|
+
if (l.exports?.forEach((e) => {
|
|
251
|
+
let r = e.valueDeclaration;
|
|
252
|
+
if (!r || !t.isEnumMember(r)) return;
|
|
253
|
+
let o = a.getConstantValue(r);
|
|
254
|
+
if (o === void 0) return R(r, i.EnumMemberNotConstant, `'${l.name}.${e.name}' is not a constant number or string. A formula passes the VALUE, so every member needs one that can be read at compile time.`), void (n = !0);
|
|
255
|
+
u.push([
|
|
256
|
+
J(e, !0),
|
|
257
|
+
o,
|
|
258
|
+
r,
|
|
259
|
+
M(e.getDocumentationComment(a)),
|
|
260
|
+
Y(e)
|
|
261
|
+
]);
|
|
262
|
+
}), n) return void G.add(l);
|
|
263
|
+
} else {
|
|
264
|
+
let n = a.getTypeFromTypeNode(e), r = t.TypeFlags.Null | t.TypeFlags.Undefined | t.TypeFlags.Void, i = (n.isUnion() ? n.types : [n]).filter((e) => !(e.flags & r)), o = [];
|
|
265
|
+
for (let e of i) {
|
|
266
|
+
if (!(e.flags & (t.TypeFlags.NumberLiteral | t.TypeFlags.StringLiteral))) return l && H.set(l, null), null;
|
|
267
|
+
o.push(e.value);
|
|
268
|
+
}
|
|
269
|
+
if (o.length === 0) return null;
|
|
270
|
+
let s = l?.declarations?.find((e) => t.isTypeAliasDeclaration(e)), c = t.isUnionTypeNode(e) ? e : s?.type;
|
|
271
|
+
if (c && t.isUnionTypeNode(c)) {
|
|
272
|
+
let e = c.types.map((e) => {
|
|
273
|
+
let t = a.getTypeFromTypeNode(e);
|
|
274
|
+
return t.isLiteral() ? t.value : void 0;
|
|
275
|
+
}), t = (t) => {
|
|
276
|
+
let n = e.indexOf(t);
|
|
277
|
+
return n < 0 ? e.length : n;
|
|
278
|
+
};
|
|
279
|
+
o.sort((e, n) => t(e) - t(n));
|
|
280
|
+
}
|
|
281
|
+
let f = l && l.flags & t.SymbolFlags.Variable ? l.valueDeclaration : void 0, p = new Set(o);
|
|
282
|
+
if (l && f && q(f)) for (let e of a.getTypeOfSymbolAtLocation(l, f).getProperties()) {
|
|
283
|
+
let n = e.valueDeclaration, r = a.getTypeOfSymbolAtLocation(e, n ?? f);
|
|
284
|
+
if (!(r.flags & (t.TypeFlags.NumberLiteral | t.TypeFlags.StringLiteral))) continue;
|
|
285
|
+
let i = r.value;
|
|
286
|
+
o.includes(i) && (d = !0, p.delete(i), u.push([
|
|
287
|
+
J(e, !0),
|
|
288
|
+
i,
|
|
289
|
+
n,
|
|
290
|
+
M(e.getDocumentationComment(a)),
|
|
291
|
+
Y(e)
|
|
292
|
+
]));
|
|
293
|
+
}
|
|
294
|
+
for (let e of o) p.has(e) && u.push([
|
|
295
|
+
String(e),
|
|
296
|
+
e,
|
|
297
|
+
void 0,
|
|
298
|
+
null
|
|
299
|
+
]);
|
|
300
|
+
}
|
|
301
|
+
if (u.length === 0) return null;
|
|
302
|
+
let f = typeof u[0][1] == "number";
|
|
303
|
+
if (u.some(([, e]) => typeof e == "number" !== f)) return void R(e, i.EnumMixed, `'${l?.name ?? e.getText()}' mixes number and string members: '${o}'. A parameter has one type, so an enum is all numbers or all strings.`);
|
|
304
|
+
let p = l ? J(l) : u.map(([, e]) => String(e)).join("|"), m = l ? void 0 : U.get(p);
|
|
305
|
+
if (m) return m;
|
|
306
|
+
if (d) {
|
|
307
|
+
let t = /* @__PURE__ */ new Map();
|
|
308
|
+
for (let [n, r, a, o] of u) {
|
|
309
|
+
let s = a?.name?.getText() ?? n, c = t.get(r);
|
|
310
|
+
c === void 0 ? t.set(r, s) : L(a ?? e, i.EnumDuplicateValue, "warning", `'${p}.${s}' has the same value as '${p}.${c}' (${JSON.stringify(r)}). A formula passes the value, so the two cannot be told apart.`), o === "" && L(a ?? e, i.EnumMemberUndocumented, "warning", `'${p}.${s}' is missing a description. Add a doc comment above the member — it is what the argument dropdown shows.`);
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
let h = {
|
|
314
|
+
id: p,
|
|
315
|
+
type: f ? r.Number : r.String,
|
|
316
|
+
members: u.map(([e, t, , , n]) => n ? [
|
|
317
|
+
e,
|
|
318
|
+
t,
|
|
319
|
+
n
|
|
320
|
+
] : [e, t])
|
|
321
|
+
};
|
|
322
|
+
l ? H.set(l, h) : U.set(p, h);
|
|
323
|
+
let g = l ? M(l.getDocumentationComment(a)) : "", _ = {};
|
|
324
|
+
for (let [e, , , t] of u) t && (_[e] = { description: t });
|
|
325
|
+
if (g || Object.keys(_).length > 0) {
|
|
326
|
+
let e = {};
|
|
327
|
+
g && (e.summary = g), Object.keys(_).length > 0 && (e.members = _), W.set(h, e);
|
|
328
|
+
}
|
|
329
|
+
return h;
|
|
330
|
+
}, Z = (e, n, a, o, s, l = !1, f = !1, S = !1) => {
|
|
331
|
+
if (e) {
|
|
332
|
+
if (e.kind === t.SyntaxKind.ParenthesizedType) return Z(e.type, n, a, o, s, l, f, S);
|
|
333
|
+
if (e.kind === t.SyntaxKind.UnionType) {
|
|
334
|
+
let r = (e) => e.kind === t.SyntaxKind.UndefinedKeyword || e.kind === t.SyntaxKind.VoidKeyword || e.kind === t.SyntaxKind.NullKeyword || e.kind === t.SyntaxKind.LiteralType && e.literal?.kind === t.SyntaxKind.NullKeyword, u = e.types.filter((e) => !r(e));
|
|
335
|
+
if (u.length === 1) return Z(u[0], n, a, o, s, l, f, S);
|
|
336
|
+
let d = X(e, n.name ?? z(e));
|
|
337
|
+
if (d === void 0) return;
|
|
338
|
+
if (d !== null) return n.scalar = d.type, void (o && (n.enum = d));
|
|
339
|
+
if (!o) return void (n.scalar = "*");
|
|
340
|
+
if (u.length === 2) {
|
|
341
|
+
let e = (e) => e.kind === t.SyntaxKind.TypeReference && t.isTypeReferenceNode(e) && E(e) === "Lambda", r = u.findIndex(e);
|
|
342
|
+
if (r >= 0 && !e(u[1 - r])) return Z(u[1 - r], n, a, o, s, l, f, S), void V(u[r], E(u[r]), n, a, o);
|
|
343
|
+
}
|
|
344
|
+
if (o && u.length === 2) {
|
|
345
|
+
let e = (e) => {
|
|
346
|
+
if (e.kind === t.SyntaxKind.TypeReference && !e.typeArguments?.length) return c.get(E(e));
|
|
347
|
+
}, r = u.findIndex((t) => e(t) !== void 0);
|
|
348
|
+
if (r >= 0 && e(u[1 - r]) === void 0) {
|
|
349
|
+
let t = {}, i = s.count;
|
|
350
|
+
if (Z(u[1 - r], t, a, o, s, l, !1), t.scalar && !t.range && t.lambda == null && s.count === i) {
|
|
351
|
+
n.range = e(u[r]), n.scalar = t.scalar, n.valueOrRange = !0;
|
|
352
|
+
let i = t.enum;
|
|
353
|
+
i && (n.enum = i);
|
|
354
|
+
return;
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
if (o && u.length === 2) {
|
|
359
|
+
let r = (e) => e.kind === t.SyntaxKind.TypeReference && !e.typeArguments?.length && E(e) === "Scalar", i = u.findIndex(r);
|
|
360
|
+
if (i >= 0 && !r(u[1 - i])) {
|
|
361
|
+
let t = X(u[1 - i], n.name ?? z(e));
|
|
362
|
+
if (t === void 0) return;
|
|
363
|
+
if (t !== null) return n.scalar = "*", void (n.enum = t);
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
R(e, i.InvalidParamType, `Union parameter types are not supported: '${z(e)}'. Use a single type, optionally with '| null' or '| undefined', 'T | Lambda<…>' for a value-or-lambda slot, 'IRange | Scalar' for a value-or-range slot, or 'E | Scalar' for an uncoerced slot whose values an enum documents.`);
|
|
367
|
+
return;
|
|
368
|
+
}
|
|
369
|
+
if (e.kind === t.SyntaxKind.NumberKeyword) n.scalar = r.Number;
|
|
370
|
+
else if (e.kind === t.SyntaxKind.StringKeyword) n.scalar = r.String;
|
|
371
|
+
else if (e.kind === t.SyntaxKind.BooleanKeyword) n.scalar = r.Boolean;
|
|
372
|
+
else if (e.kind === t.SyntaxKind.UndefinedKeyword || e.kind === t.SyntaxKind.NullKeyword || e.kind === t.SyntaxKind.VoidKeyword) {
|
|
373
|
+
if (o) return void R(e, i.UndefinedInput, `'undefined' is not a valid type for input: '${z(e)}'.`);
|
|
374
|
+
n.scalar = r.Null;
|
|
375
|
+
} else if (e.kind === t.SyntaxKind.BigIntKeyword) n.scalar = r.Number;
|
|
376
|
+
else if (e.kind === t.SyntaxKind.AnyKeyword) o && (n.range = "*");
|
|
377
|
+
else if (e.kind === t.SyntaxKind.ArrayType) {
|
|
378
|
+
let t = e.elementType;
|
|
379
|
+
if (!t) return void R(e, i.UntypedArray, `'Array' must be typed: '${z(e)}'.`);
|
|
380
|
+
if (o && f) {
|
|
381
|
+
let r = n, i = r.name ?? z(e) ?? "parameter", o = r.acceptError;
|
|
382
|
+
delete r.acceptError;
|
|
383
|
+
let s = { name: i };
|
|
384
|
+
B(t, s, a, !0), o && !s.acceptError && (s.acceptError = !0), r.repeating = [s];
|
|
385
|
+
return;
|
|
386
|
+
}
|
|
387
|
+
s.count++, Z(t, n, a, o, s);
|
|
388
|
+
} else if (e.kind !== t.SyntaxKind.TupleType) {
|
|
389
|
+
if (e.kind === t.SyntaxKind.TypeReference) {
|
|
390
|
+
let r = E(e);
|
|
391
|
+
if (g.has(r)) {
|
|
392
|
+
let t = z(e);
|
|
393
|
+
if (!o) return void R(e, i.InvalidReturnType, `'${r}' is not a valid return type: '${t}'. It describes how an ARGUMENT is received.`);
|
|
394
|
+
let c = n;
|
|
395
|
+
if (c.acceptError) return void R(e, i.InvalidParamType, `'${t}' declares 'AcceptError' more than once.`);
|
|
396
|
+
let u = e.typeArguments;
|
|
397
|
+
return u && u.length === 1 ? (c.acceptError = !0, Z(u[0], n, a, o, s, l, f, S)) : void R(e, i.GenericArity, `'${r}' must be typed with exactly 1 type: '${t}'.`);
|
|
398
|
+
}
|
|
399
|
+
if (x.has(r)) {
|
|
400
|
+
let t = n.name ?? z(e);
|
|
401
|
+
if (!o) return void R(e, i.InvalidReturnType, `'ReportType' is not a valid return type: '${t}'. It describes how an ARGUMENT is received.`);
|
|
402
|
+
let c = e.typeArguments;
|
|
403
|
+
return c && c.length === 1 ? (n.reportType = !0, Z(c[0], n, a, o, s, l, f, S)) : void R(e, i.GenericArity, `'${r}' must be typed with exactly 1 type: '${t}'.`);
|
|
404
|
+
}
|
|
405
|
+
if (v.has(r)) {
|
|
406
|
+
let t = n.name ?? z(e);
|
|
407
|
+
if (!o) return void R(e, i.InvalidReturnType, `'NoLift' is not a valid return type: '${t}'. It describes how an ARGUMENT is received.`);
|
|
408
|
+
let c = e.typeArguments;
|
|
409
|
+
if (!c || c.length !== 1) return void R(e, i.GenericArity, `'${r}' must be typed with exactly 1 type: '${t}'.`);
|
|
410
|
+
let u = n;
|
|
411
|
+
u.noLift = !0;
|
|
412
|
+
let d = s.count;
|
|
413
|
+
Z(c[0], n, a, o, s, l, f, S), (u.range || u.lambda != null || u.repeating || s.count !== d) && R(e, i.InvalidParamType, `'${t}': 'NoLift' applies to a SCALAR parameter only - a range, list, repeating or lambda slot never lifts.`);
|
|
414
|
+
return;
|
|
415
|
+
}
|
|
416
|
+
if (y.has(r)) {
|
|
417
|
+
let t = n.name ?? z(e);
|
|
418
|
+
if (!o) return void R(e, i.InvalidReturnType, `'NoFilter' is not a valid return type: '${t}'. It describes how an ARGUMENT is received.`);
|
|
419
|
+
let c = e.typeArguments;
|
|
420
|
+
if (!c || c.length !== 1) return void R(e, i.GenericArity, `'${r}' must be typed with exactly 1 type: '${t}'.`);
|
|
421
|
+
let u = n;
|
|
422
|
+
u.noFilter = !0;
|
|
423
|
+
let d = s.count;
|
|
424
|
+
if (Z(c[0], n, a, o, s, l, f, S), u.range || u.lambda != null || s.count !== d) return void R(e, i.InvalidParamType, `'${t}': 'NoFilter' applies to a SCALAR slot only - a range, list or lambda slot has no members to coerce.`);
|
|
425
|
+
let p = u.repeating;
|
|
426
|
+
if (p) {
|
|
427
|
+
if (delete u.noFilter, p.length !== 1) return void R(e, i.InvalidParamType, `'${t}': 'NoFilter' over a repeating group applies to a period-1 group only - write it on the slot that takes the members.`);
|
|
428
|
+
p[0].noFilter = !0;
|
|
429
|
+
} else f && R(e, i.InvalidParamType, `'${t}': 'NoFilter' applies to a REPEATING slot only - a single scalar argument has no members to coerce.`);
|
|
430
|
+
return;
|
|
431
|
+
}
|
|
432
|
+
if (_.has(r)) {
|
|
433
|
+
let c = n.name ?? z(e);
|
|
434
|
+
if (!o) return void R(e, i.InvalidReturnType, `'Omittable' is not a valid return type: '${c}'. It describes how an ARGUMENT is received.`);
|
|
435
|
+
let u = e.typeArguments;
|
|
436
|
+
if (!u || u.length < 1 || u.length > 2) return void R(e, i.GenericArity, `'${r}' must be typed with 1 or 2 types: '${c}'.`);
|
|
437
|
+
let d = n;
|
|
438
|
+
if (d.omittable = !0, u.length === 2) {
|
|
439
|
+
let n = j(t, u[1]);
|
|
440
|
+
if (n === void 0) return void R(e, i.InvalidParamType, `'${c}' declares '${r}' with a second type that is not a literal value. Use a number, string, boolean or null - the engine substitutes it for an omitted argument.`);
|
|
441
|
+
d.omittedValue = n;
|
|
442
|
+
}
|
|
443
|
+
let p = Z(u[0], n, a, o, s, l, f, S), m = d.omittedValue;
|
|
444
|
+
return d.enum && m != null && !d.enum.members.some(([, e]) => e === m) && R(u[1], i.EnumOmittedValue, `'${c}': ${JSON.stringify(m)} is not a member of '${d.enum.id}'. An omitted argument must mean a member (${d.enum.members.map(([, e]) => JSON.stringify(e)).join(", ")}) or null.`), p;
|
|
445
|
+
}
|
|
446
|
+
if (b.has(r)) {
|
|
447
|
+
let c = n.name ?? z(e);
|
|
448
|
+
if (!o) return void R(e, i.InvalidReturnType, `'Lazy' is not a valid return type: '${c}'. It describes how an ARGUMENT is received.`);
|
|
449
|
+
let u = n;
|
|
450
|
+
if (u.lazy) return void R(e, i.InvalidParamType, `'${c}' declares 'Lazy' more than once.`);
|
|
451
|
+
let d = e.typeArguments;
|
|
452
|
+
if (!d || d.length < 1 || d.length > 2) return void R(e, i.GenericArity, `'${r}' must be typed with 1 or 2 types: '${c}'.`);
|
|
453
|
+
if (u.lazy = !0, d.length === 2) {
|
|
454
|
+
let n = j(t, d[1]);
|
|
455
|
+
if (n === void 0) return void R(e, i.InvalidParamType, `'${c}' declares '${r}' with a second type that is not a literal value. Use a number, string, boolean or null - the engine substitutes it for an absent argument.`);
|
|
456
|
+
u.optional = !0, u.defaultValue = n;
|
|
457
|
+
}
|
|
458
|
+
Z(d[0], n, a, o, s, l, f, S), u.enum ? (R(e, i.EnumPosition, `'${c}': 'Lazy' cannot hold the enum '${u.enum.id}'. The argument may never be evaluated, so there is no point at which it could be checked against the members.`), delete u.enum) : u.lambda == null ? u.repeating && R(e, i.InvalidParamType, `'${c}': 'Lazy' applies to a VALUE, not to a repeating group - mark the group's slots instead.`) : R(e, i.InvalidParamType, `'${c}': 'Lazy' cannot be combined with a Lambda parameter - a callable slot is already the body's to call, or not.`);
|
|
459
|
+
return;
|
|
460
|
+
}
|
|
461
|
+
if (h.has(r)) {
|
|
462
|
+
let t = n.name ?? z(e);
|
|
463
|
+
if (!o) return void R(e, i.InvalidReturnType, `'Flatten' is not a valid return type: '${t}'. It describes how an ARGUMENT is received.`);
|
|
464
|
+
let c = e.typeArguments;
|
|
465
|
+
return c && c.length === 1 ? (s.count++, Z(c[0], n, a, o, s, l)) : void R(e, i.GenericArity, `'${r}' must be typed with exactly 1 type: '${t}'.`);
|
|
466
|
+
}
|
|
467
|
+
if (m.get(r) === "repeating") {
|
|
468
|
+
let c = n.name ?? z(e);
|
|
469
|
+
if (!o) return void R(e, i.RepeatingPosition, `'Repeating' is not a valid return type: '${c}'.`);
|
|
470
|
+
if (s.count !== 0) return void R(e, i.RepeatingPosition, `'Repeating' cannot be nested inside another type: '${c}'.`);
|
|
471
|
+
let u = n, d = e.typeArguments;
|
|
472
|
+
if (!d || d.length < 1 || d.length > 2) return void R(e, i.GenericArity, `'${r}' must be typed with 1 type, optionally followed by a maximum argument count: '${c}'.`);
|
|
473
|
+
let p;
|
|
474
|
+
if (d.length === 2) {
|
|
475
|
+
let e = d[1], n = e.kind === t.SyntaxKind.LiteralType ? e.literal : null, o = n && n.kind === t.SyntaxKind.NumericLiteral ? Number(n.text) : NaN;
|
|
476
|
+
if (!Number.isInteger(o) || o < 1 || o > 255) return void R(e, i.RepeatingMax, `'${c}': '${r}'’s maximum must be a whole number between 1 and 255.`);
|
|
477
|
+
p = o, a.maxArguments = o;
|
|
478
|
+
}
|
|
479
|
+
if (S) return p === void 0 ? void R(e, i.RepeatingPosition, `'${c}' is a rest parameter and a repeating group. A group already repeats — drop the '...', or give the group a maximum ('Repeating<T, 254>') if the ceiling is all you meant.`) : Z(d[0], n, a, o, s, l, f);
|
|
480
|
+
let m = u.acceptError;
|
|
481
|
+
delete u.acceptError;
|
|
482
|
+
let h = ((e, n, r, a) => {
|
|
483
|
+
let o = (e, t, n) => {
|
|
484
|
+
let i = { name: e };
|
|
485
|
+
return B(t, i, r, !0), n && (i.optional = !0), a && !i.acceptError && (i.acceptError = !0), i;
|
|
486
|
+
};
|
|
487
|
+
if (e.kind !== t.SyntaxKind.TupleType) return [o(n, e, !1)];
|
|
488
|
+
let s = e.elements;
|
|
489
|
+
if (s.length < 2) return R(e, i.RepeatingSlots, `'${n}': a repeating group of period ${s.length} must be spelled 'Repeating<T>' without the tuple.`), null;
|
|
490
|
+
let c = [];
|
|
491
|
+
for (let e = 0; e < s.length; e++) {
|
|
492
|
+
let r = s[e];
|
|
493
|
+
if (r.kind !== t.SyntaxKind.NamedTupleMember) return R(r, i.RepeatingSlots, `'${n}': every slot of a repeating group must be labelled, e.g. 'Repeating<[criteriaRange: IRange, criteria: Scalar]>'.`), null;
|
|
494
|
+
let a = !!r.questionToken;
|
|
495
|
+
if (a && e !== s.length - 1) return R(r, i.RepeatingOptional, `'${n}': only the LAST slot of a repeating group may be optional (slot '${r.name?.getText?.()}' is not).`), null;
|
|
496
|
+
c.push(o(r.name?.getText?.() ?? `${e}`, r.type, a));
|
|
497
|
+
}
|
|
498
|
+
return c;
|
|
499
|
+
})(d[0], c ?? "parameter", a, m);
|
|
500
|
+
h && (u.repeating = h);
|
|
501
|
+
return;
|
|
502
|
+
}
|
|
503
|
+
let C = c.get(r), w = !1;
|
|
504
|
+
C && (n.range = C, w = !0);
|
|
505
|
+
let k = p.get(r);
|
|
506
|
+
if (k && (n.scalar = k), k !== void 0 && (w = !0), V(e, r, n, a, o)) return;
|
|
507
|
+
if (o) {
|
|
508
|
+
if (r === "Volatile" || r === `${T}.Volatile`) return void R(e, i.InvalidParamType, `'Volatile' is not a valid parameter type: '${z(e)}'. It describes the function's RESULT, so it belongs on the return type.`);
|
|
509
|
+
if (A.has(r)) return O;
|
|
510
|
+
let t = u.get(r);
|
|
511
|
+
if (t) return t;
|
|
512
|
+
} else {
|
|
513
|
+
let t = D.get(r);
|
|
514
|
+
if (t) {
|
|
515
|
+
let a = Object.assign(n, t()), o = 0;
|
|
516
|
+
if (a.async && o++, a.stream && o++, o > 1) return void R(e, i.MultipleModifiers, `'${r}' cannot have multiple modifiers: '${z(e)}'.`);
|
|
517
|
+
w = !0;
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
if (!w) {
|
|
521
|
+
let t = X(e, n.name ?? z(e));
|
|
522
|
+
if (t === void 0) return;
|
|
523
|
+
if (t !== null) return n.scalar = t.type, void (o && (n.enum = t));
|
|
524
|
+
}
|
|
525
|
+
if (!w) {
|
|
526
|
+
let t = "number, string, boolean, Scalar, Lambda, Date, FormulaError.Known, IRichData, IRange, IReferenceRange (and arrays of these; optionally wrapped in AcceptError<T>, or grouped with Repeating<T>)", n;
|
|
527
|
+
n = o ? l ? `'${r}' is not a valid first parameter: '${z(e)}'. The first parameter is EITHER a macro target (making this a macro) OR a calculation input (making this a calculation function). Allowed: ${d.join(", ")} (macro target); ${t} (calculation input).` : `'${r}' is not a valid parameter type: '${z(e)}'. Allowed: ${t}.` : `'${r}' is not a valid return type: '${z(e)}'. Allowed: number, string, boolean, Scalar, Date, FormulaError.Known, IRichData, IRange, Promise<T>, Observable<T>, Volatile<T> (and arrays of these).`, R(e, o ? i.InvalidParamType : i.InvalidReturnType, n);
|
|
528
|
+
return;
|
|
529
|
+
}
|
|
530
|
+
let M = e.typeArguments;
|
|
531
|
+
if (M) {
|
|
532
|
+
if (M.length !== 1) return void R(e, i.GenericArity, `'${r}' must be typed with exactly 1 type: '${z(e)}'.`);
|
|
533
|
+
let s = M[0], c = o && t.isTypeReferenceNode(s) && x.has(E(s)), l = n.reportType;
|
|
534
|
+
c && K.add(n), B(s, n, a, o), c && l === void 0 && delete n.reportType;
|
|
535
|
+
let u = n.enum;
|
|
536
|
+
u && !c && (R(M[0], i.EnumPosition, `'${r}' cannot hold the enum '${u.id}': '${z(e)}'. The members of a range reach the body as they are, so nothing checks them against the enum. Take the enum as a value, or type the range by its scalar ('${r}<${u.type}>').`), delete n.enum);
|
|
537
|
+
}
|
|
538
|
+
} else e.kind === t.SyntaxKind.FunctionType && ((e, n, r, a) => {
|
|
539
|
+
if (!a) return void R(e, i.FunctionReturn, `Function type is not a valid return type: '${z(e)}'. Declare a 'Lambda' return instead.`);
|
|
540
|
+
let o = e.type, s = {}, c = "*";
|
|
541
|
+
o && (o.kind === t.SyntaxKind.AnyKeyword ? c = "raw" : (Z(o, s, r, !1, { count: 0 }), c = s.scalar ?? "*"));
|
|
542
|
+
let l = e.parameters;
|
|
543
|
+
l && !l.some((e) => e.dotDotDotToken) && (n.lambdaArity = l.length), n.lambda = c;
|
|
544
|
+
})(e, n, a, o);
|
|
545
|
+
}
|
|
546
|
+
} else R(e, i.MissingType, `Type is not defined for '${n?.name ?? "return"}'.`);
|
|
547
|
+
};
|
|
548
|
+
try {
|
|
549
|
+
t.forEachChild(n, (e) => {
|
|
550
|
+
if (r = e, (t.getCombinedModifierFlags(r) & t.ModifierFlags.Export) !== 0 && t.isFunctionDeclaration(e)) {
|
|
551
|
+
let r = e?.name?.getText();
|
|
552
|
+
if (!e.body) return void R(e, i.NoBody, `'${r}': function has no body.`);
|
|
553
|
+
if (!r) return void R(e, i.Anonymous, "Anonymous exported functions are not allowed.");
|
|
554
|
+
let c = {}, u = { parameters: {} };
|
|
555
|
+
try {
|
|
556
|
+
c.name = r;
|
|
557
|
+
let d = M(a.getSymbolAtLocation(e.name)?.getDocumentationComment(a));
|
|
558
|
+
d && (u.summary = d);
|
|
559
|
+
let p = {};
|
|
560
|
+
B(e.type, p, c, !1), c.returnType = p;
|
|
561
|
+
let m = {};
|
|
562
|
+
n = e, (t.getCombinedModifierFlags(n) & t.ModifierFlags.Default) !== 0 && (m.default = !0, I = r), c.parameters = [];
|
|
563
|
+
let h = /* @__PURE__ */ new Map(), g = /* @__PURE__ */ new Map(), _ = /* @__PURE__ */ new Set(), v = null, y = null, b = null, x = 0, T = !1, E = 0;
|
|
564
|
+
for (let n = 0; n < e.parameters.length; n++) {
|
|
565
|
+
let r = e.parameters[n], s = {};
|
|
566
|
+
s.name = r.name?.getText();
|
|
567
|
+
let l = c.parameters.length === 0;
|
|
568
|
+
if (o?.lenient && n === 0 && !r.type && m.default) {
|
|
569
|
+
c.context = k;
|
|
570
|
+
continue;
|
|
571
|
+
}
|
|
572
|
+
let d = B(r.type, s, c, !0, l, !r.dotDotDotToken, !!r.dotDotDotToken);
|
|
573
|
+
if (d === O) {
|
|
574
|
+
n === 0 && c.context === void 0 && (c.context = k);
|
|
575
|
+
continue;
|
|
576
|
+
}
|
|
577
|
+
if (d) {
|
|
578
|
+
if (c.parameters.length !== 0) return void R(r, i.ContextNotFirst, `'${c.name}' contexts must be the first parameter: '${s.name}'.`);
|
|
579
|
+
c.context = d;
|
|
580
|
+
continue;
|
|
581
|
+
}
|
|
582
|
+
if (s.lambda !== void 0) {
|
|
583
|
+
if (v !== null) return void R(r, i.MultipleLambda, `'${c.name}' has more than one Lambda parameter ('${v}' and '${s.name}'). Only one Lambda parameter is allowed.`);
|
|
584
|
+
v = s.name;
|
|
585
|
+
} else if (v !== null) return void R(r, i.LambdaNotLast, `'${c.name}' Lambda parameter ('${v}') must be the last parameter, but '${s.name}' follows it.`);
|
|
586
|
+
let f = !0 === s.optional || r.initializer !== void 0 && r.initializer !== null || r.questionToken !== void 0 && r.questionToken !== null, p;
|
|
587
|
+
if (f && (s.optional = !0, r.initializer)) try {
|
|
588
|
+
if (r.initializer.kind === t.SyntaxKind.StringLiteral) p = r.initializer.text;
|
|
589
|
+
else if (r.initializer.kind === t.SyntaxKind.NumericLiteral) p = parseFloat(r.initializer.text);
|
|
590
|
+
else if (r.initializer.kind === t.SyntaxKind.TrueKeyword || r.initializer.kind === t.SyntaxKind.FalseKeyword) p = r.initializer.kind === t.SyntaxKind.TrueKeyword;
|
|
591
|
+
else if (r.initializer.kind === t.SyntaxKind.NullKeyword) p = null;
|
|
592
|
+
else if (t.isPrefixUnaryExpression(r.initializer) && r.initializer.operator === t.SyntaxKind.MinusToken && r.initializer.operand.kind === t.SyntaxKind.NumericLiteral) p = -parseFloat(r.initializer.operand.text);
|
|
593
|
+
else if (t.isPropertyAccessExpression(r.initializer) || t.isElementAccessExpression(r.initializer)) {
|
|
594
|
+
let e = a.getTypeAtLocation(r.initializer);
|
|
595
|
+
e.flags & (t.TypeFlags.NumberLiteral | t.TypeFlags.StringLiteral) && (p = e.value);
|
|
596
|
+
}
|
|
597
|
+
} catch (e) {
|
|
598
|
+
console.warn(`Couldn't extract default value for parameter '${s.name}'`, e);
|
|
599
|
+
}
|
|
600
|
+
r.dotDotDotToken && (s.rest = !0);
|
|
601
|
+
let S = s.repeating;
|
|
602
|
+
if (S) {
|
|
603
|
+
if (s.rest) return void R(r, i.RepeatingPosition, `'${c.name}' parameter '${s.name}' is both a rest parameter and a repeating group. A group already repeats — drop the '...'.`);
|
|
604
|
+
if (f && S.length === 1) return void R(r, i.RepeatingOptional, `'${c.name}' parameter '${s.name}' cannot be an optional repeating group. Use '...${s.name}: T[]' for zero-or-more, or drop the '?' for one-or-more.`);
|
|
605
|
+
if (y !== null) return void R(r, i.MultipleRepeating, `'${c.name}' has more than one repeating group ('${y}' and '${s.name}'). Only one is allowed — two would make the argument count ambiguous.`);
|
|
606
|
+
if (b !== null) return void R(r, i.RepeatingOptional, `'${c.name}' parameter '${b}' is optional and precedes the repeating group '${s.name}'. Every parameter outside a group must be required.`);
|
|
607
|
+
y = s.name, x = S.length, T = !0 === S[S.length - 1].optional;
|
|
608
|
+
} else {
|
|
609
|
+
if (y !== null && s.rest) return void R(r, i.RepeatingOptional, `'${c.name}' parameter '${s.name}' is a rest parameter and follows the repeating group '${y}'. Two variadic tails would make the argument count ambiguous.`);
|
|
610
|
+
if (y !== null && f) {
|
|
611
|
+
if (E >= x - 1) return void R(r, i.RepeatingOptional, x === 1 ? `'${c.name}' parameter '${s.name}' is optional and follows the period-1 repeating group '${y}'. One more argument is indistinguishable from one more repetition — make it required, or give the group a period.` : `'${c.name}' has ${E + 1} optional parameters after the repeating group '${y}', which has period ${x}. At most ${x - 1} may be optional, or the argument count no longer decides the parse.`);
|
|
612
|
+
if (T) return void R(r, i.RepeatingOptional, `'${c.name}' parameter '${s.name}' is optional and follows '${y}', whose own last slot is already optional. Both omissions reach the same argument count — drop one.`);
|
|
613
|
+
E++;
|
|
614
|
+
}
|
|
615
|
+
}
|
|
616
|
+
f && !S && (b = s.name);
|
|
617
|
+
let C = (s.range ? 2 : 0) + (s.arrayDepth ?? 0), w = s.range === "r" || s.range === "p" || s.range === "*", D = s.rest || w ? 3 : 2;
|
|
618
|
+
if (C > D) return void R(r, i.ArrayDepth, `'${c.name}' parameter '${s.name}' has an array depth of ${C}; the maximum is ${D}${s.rest ? " for a rest parameter" : " (use a rest parameter for one more level, or an IRange)"}.`);
|
|
619
|
+
c.parameters.push(s);
|
|
620
|
+
let A = { description: "" };
|
|
621
|
+
u.parameters[s.name] = A, A.description = M(a.getSymbolAtLocation(r.name)?.getDocumentationComment(a)), p !== void 0 && (s.defaultValue = p);
|
|
622
|
+
for (let e of [s, ...s.repeating ?? []]) {
|
|
623
|
+
let t = e.enum ? W.get(e.enum) : void 0;
|
|
624
|
+
t && ((u.enums ??= {})[e.enum.id] = t);
|
|
625
|
+
}
|
|
626
|
+
if (h.set(s.name, s), g.set(s.name, r), S && S.length > 1) {
|
|
627
|
+
_.add(s.name);
|
|
628
|
+
for (let e of S) {
|
|
629
|
+
let t = `${s.name}.${e.name}`;
|
|
630
|
+
u.parameters[t] = { description: "" }, h.set(t, e), g.set(t, r);
|
|
631
|
+
}
|
|
632
|
+
}
|
|
633
|
+
}
|
|
634
|
+
let D = c.maxArguments;
|
|
635
|
+
if (D !== void 0) {
|
|
636
|
+
let t = c.parameters ?? [];
|
|
637
|
+
if (!t.some((e) => !0 === e.rest || e.repeating !== void 0)) return void R(e, i.RepeatingMax, `'${c.name}' declares a maximum of ${D} arguments but takes a fixed ${t.length}. A maximum only means something on a variadic tail.`);
|
|
638
|
+
let n = 0;
|
|
639
|
+
for (let e of t) !0 !== e.rest && !0 !== e.optional && (n += e.repeating ? e.repeating.length : 1);
|
|
640
|
+
if (D < n) return void R(e, i.RepeatingMax, `'${c.name}' declares a maximum of ${D} arguments but requires ${n}.`);
|
|
641
|
+
}
|
|
642
|
+
if (e.jsDoc && e.jsDoc.length > 0) {
|
|
643
|
+
let t = e.jsDoc, n = t.length;
|
|
644
|
+
for (let e = 0; e < n; e++) {
|
|
645
|
+
let n = t[e]?.tags;
|
|
646
|
+
if (!n) continue;
|
|
647
|
+
let a = n.length;
|
|
648
|
+
for (let e = 0; e < a; e++) {
|
|
649
|
+
let t = n[e], a = t?.tagName?.text;
|
|
650
|
+
if (!a) continue;
|
|
651
|
+
a = a.toLowerCase();
|
|
652
|
+
let o = t.comment, d = s(a);
|
|
653
|
+
if (typeof o == "string" || d) {
|
|
654
|
+
if (typeof o == "string" && (o = o.replace(/\r\n?/g, "\n").trim()), d || !o || (o = o.split("\n")[0].trim(), o && o.length !== 0)) {
|
|
655
|
+
if (o && typeof o == "string") {
|
|
656
|
+
let e = /\{@link(code|plain)?\s+([^}|]+)(?:\s*\|\s*([^}]+))?\}/g, t, n = o, r = [];
|
|
657
|
+
for (; (t = e.exec(o)) !== null;) {
|
|
658
|
+
let [e, n, r, i] = t, a = [r.trim()];
|
|
659
|
+
i && a.push(i.trim());
|
|
660
|
+
}
|
|
661
|
+
o = n, r.length > 0 && a === "see" && (u.links ||= [], u.links.push(...r));
|
|
662
|
+
}
|
|
663
|
+
if (a === "name") {
|
|
664
|
+
let e = o;
|
|
665
|
+
e !== r && (u.name = e);
|
|
666
|
+
} else if (a !== "description") {
|
|
667
|
+
if (a === "param") {
|
|
668
|
+
let e = t.name?.getText?.() ?? t.name?.text;
|
|
669
|
+
if (!h.get(e)) {
|
|
670
|
+
R(t, i.UnknownParam, `Parameter '${e}' not found in function '${r}'.`);
|
|
671
|
+
continue;
|
|
672
|
+
}
|
|
673
|
+
let n = u.parameters?.[e];
|
|
674
|
+
n && !n.description && typeof o == "string" && o && (n.description = o);
|
|
675
|
+
} else if (a === "returns" || a === "return") c.returnType.description = o;
|
|
676
|
+
else if (a === "returnkind") {
|
|
677
|
+
let e = (o ?? "").trim().toLowerCase();
|
|
678
|
+
l.has(e) ? c.returnType.kind = e : R(t, i.UnknownReturnKind, `'@returnKind ${e}' is not a known value kind. Known: ${[...l].map((e) => `'${e}'`).join(", ")}.`);
|
|
679
|
+
} else if (a === "category") u.category = o;
|
|
680
|
+
else if (a === "deprecated" || a === "hidden") {
|
|
681
|
+
let e = !0, t = o?.toLowerCase();
|
|
682
|
+
t === "false" ? e = !1 : t !== "true" && (e = o), !1 !== e && (u.deprecated = e ?? !0, c.hidden = !0);
|
|
683
|
+
}
|
|
684
|
+
}
|
|
685
|
+
}
|
|
686
|
+
} else a === "returnkind" && R(t, i.UnknownReturnKind, `'@returnKind' needs a value kind. Known: ${[...l].map((e) => `'${e}'`).join(", ")}.`);
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
}
|
|
690
|
+
Object.keys(c.returnType).length === 0 && delete c.returnType, Object.keys(m).length > 0 && (c.behavior = m), u.summary || L(e.name ?? e, i.MissingSummary, "warning", `'${r}': missing a description. Add a JSDoc comment above the function.`);
|
|
691
|
+
let A = !c.context, j = A && u.name || r;
|
|
692
|
+
if (A && !S.test(j)) {
|
|
693
|
+
let t = u.name ? `'@name ${u.name}'` : `'${j}'`;
|
|
694
|
+
R(e.name ?? e, i.InvalidName, `'${r}': ${t} cannot be called from a formula. A function name starts with a letter or '_', and continues with letters, digits, '_' or '.'.` + (u.name ? "" : " Add an '@name' tag to register it under another name."));
|
|
695
|
+
return;
|
|
696
|
+
}
|
|
697
|
+
if (A && !o?.isBuiltIn && ((e) => {
|
|
698
|
+
if (w.test(e)) return !0;
|
|
699
|
+
let t = C.exec(e);
|
|
700
|
+
if (!t) return !1;
|
|
701
|
+
let n = 0;
|
|
702
|
+
for (let e of t[1].toUpperCase()) n = 26 * n + (e.charCodeAt(0) - 64);
|
|
703
|
+
let r = Number(t[2]);
|
|
704
|
+
return n <= 16384 && r >= 1 && r <= 1048576;
|
|
705
|
+
})(j)) {
|
|
706
|
+
let t = u.name ? `'@name ${u.name}'` : `'${j}'`;
|
|
707
|
+
R(e.name ?? e, i.InvalidName, `'${r}': ${t} cannot be called from a formula. It reads as a cell address.` + (u.name ? "" : " Add an '@name' tag to register it under another name."));
|
|
708
|
+
return;
|
|
709
|
+
}
|
|
710
|
+
let F = P.get(j.toUpperCase());
|
|
711
|
+
if (F !== void 0) return void R(e.name ?? e, i.DuplicateName, `'${r}': '${j}' is already the name of '${F}' in this module.`);
|
|
712
|
+
if (P.set(j.toUpperCase(), r), A && f?.has(j.toUpperCase())) return void R(e.name ?? e, i.BuiltInName, `'${j}' is a built-in function. Choose a different name - a calculation function cannot replace a built-in.`);
|
|
713
|
+
if (A) {
|
|
714
|
+
let e = u.parameters ?? {};
|
|
715
|
+
for (let [t, n] of Object.entries(e)) if (!_.has(t) && !n.description) {
|
|
716
|
+
let e = g.get(t);
|
|
717
|
+
L(e, i.MissingParamDescription, "warning", `'${r}': parameter '${t}' is missing a description. Add an '@param ${t}' tag.`);
|
|
718
|
+
}
|
|
719
|
+
}
|
|
720
|
+
N.push([c, u]);
|
|
721
|
+
} catch (t) {
|
|
722
|
+
R(e, i.ParseError, `'${r}': ${t.message}`);
|
|
723
|
+
}
|
|
724
|
+
}
|
|
725
|
+
var n, r;
|
|
726
|
+
});
|
|
727
|
+
} catch (e) {
|
|
728
|
+
R(void 0, i.ParseError, `Unable to analyze module: ${e?.message ?? e}`);
|
|
729
|
+
}
|
|
730
|
+
return {
|
|
731
|
+
functions: N,
|
|
732
|
+
autoRun: I,
|
|
733
|
+
diagnostics: F
|
|
734
|
+
};
|
|
735
|
+
}
|
|
736
|
+
function P(e, t, n) {
|
|
737
|
+
let r = "script.ts", i = "lib.d.ts", a = {
|
|
738
|
+
[r]: t ?? "",
|
|
739
|
+
[i]: ""
|
|
740
|
+
}, o = e.createProgram([r], {
|
|
741
|
+
allowJs: !0,
|
|
742
|
+
noResolve: !0,
|
|
743
|
+
noLib: !0,
|
|
744
|
+
isolatedModules: !0,
|
|
745
|
+
module: 99,
|
|
746
|
+
target: e.ScriptTarget.ES2020
|
|
747
|
+
}, {
|
|
748
|
+
getSourceFile: (t) => {
|
|
749
|
+
let n = a[t];
|
|
750
|
+
if (n !== void 0) return e.createSourceFile(t, n, e.ScriptTarget.Latest, !0);
|
|
751
|
+
},
|
|
752
|
+
fileExists: (e) => a[e] !== void 0,
|
|
753
|
+
readFile: (e) => a[e],
|
|
754
|
+
writeFile: () => {},
|
|
755
|
+
getCurrentDirectory: () => "./",
|
|
756
|
+
getCanonicalFileName: (e) => e,
|
|
757
|
+
useCaseSensitiveFileNames: () => !0,
|
|
758
|
+
getDefaultLibFileName: () => i,
|
|
759
|
+
getNewLine: () => "\n"
|
|
760
|
+
}), s = o.getTypeChecker(), c = o.getSourceFile(r);
|
|
761
|
+
return c ? N(e, c, s, n).diagnostics : [];
|
|
762
|
+
}
|
|
763
|
+
export { N as analyzeModule, P as lintScript, i as t };
|