@sheetxl/mcp 0.8.0-beta.25 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/assets/{CDiutOsLAzu4c0Ej.js → 1d-8AAcf1UmC2qIz.js} +1 -1
  2. package/assets/{V4pGXJr6fe-CPg7i.js → 30KXHiLfwl0cbsxL.js} +1 -1
  3. package/assets/{CCOaNx5_BfWCc9yz.js → 3o7I8loKRGynHrNq.js} +1 -1
  4. package/assets/{Brlza6Jd2oGGX9vB.js → 648qV0v861jvyZWm.js} +1 -1
  5. package/assets/{GfAXkT_vctdRX_9f.js → 7khlPnFFCrE8gnT_.js} +12 -12
  6. package/assets/{CX-KrjVgXM-7o--S.js → 8hUUTZ62hbxY0TOp.js} +2 -2
  7. package/assets/{DaB9iRVJj3TmKH92.js → B1Vm5y0E-TPSYFya.js} +3 -3
  8. package/assets/{B6e_DsVO4i91IYEO.js → B6ToyMcYe9lyaeDk.js} +3 -3
  9. package/assets/{DB2MrmDLZ-OzVRQu.js → B6pS096VwbWaj1Zz.js} +2 -2
  10. package/assets/{DwmlBb640xWfAMV2.js → B9V6AFTTnbPscv11.js} +2 -2
  11. package/assets/{DHCl7HWDbT3xqx8W.js → BESu-5sZSIJqkrWN.js} +2 -2
  12. package/assets/{BSJ_L1gNOejEih6N.js → BHhPtFpb3YfV6_44.js} +32 -32
  13. package/assets/{u8xtjHo43n-S_O6j.js → BMAAmO8LPIe4VJ77.js} +1 -1
  14. package/assets/{C9DvPNfuz_0hun6C.js → BMVu89mdcVSqJDDE.js} +1 -1
  15. package/assets/{DBgHcEP-FcgSHLvx.js → BRB5-fXJFU7Kq2wm.js} +314 -314
  16. package/assets/{CD2yoEhIT8DyXBou.js → BRI3D42tlMkZdYb2.js} +37 -37
  17. package/assets/{DgE30NwKzEjZI1W6.js → BVzogMoyaicBEKBk.js} +3 -3
  18. package/assets/{DXDhH3F4N4OOigqN.js → BWpLQNKC3n8bXJUk.js} +1 -1
  19. package/assets/{Cmf4eJow6AIuPH_w.js → Baa8cmJsilboM0DW.js} +1 -1
  20. package/assets/{irrAIfw6CnCOHmPE.js → BcDNXTGASDvptqc-.js} +1 -1
  21. package/assets/{Djl7cjJyCIS_Qvbd.js → Bme_PT3UqwTbGLWd.js} +1 -1
  22. package/assets/{DZTVTdrwu05fNZk_.js → BnxajOeIasx1G3OB.js} +1 -1
  23. package/assets/{cTLYCAhDs2fR2ITC.js → BousX61zAjBfjlsV.js} +1 -1
  24. package/assets/{DAnTpFc2vx3CmP8e.js → Bp73VL7f5DEt88Cn.js} +26 -26
  25. package/assets/{DLW76uSURiQM07DD.js → BppAvnmuJbbYBQUy.js} +1 -1
  26. package/assets/{DvkgborRc2vRq8E-.js → BtoBfR_4n1u37HmC.js} +1 -1
  27. package/assets/{H40qXR3Gazmnq4Mv.js → BuLAeGM4AvHCge4x.js} +1 -1
  28. package/assets/{45FAgD1JyG2a1Rti.js → Buxo11Ux7uxzoy_7.js} +2 -2
  29. package/assets/{u9le-qZ3tbYKK1kU.js → BwTF2TRqzXsf0H1I.js} +2 -2
  30. package/assets/{m9BgbF-NgPIYW4kc.js → BzCwrG3Zdv-Trzi_.js} +1 -1
  31. package/assets/{H_6CBe3t27jHlBHk.js → C00qhh0-m0B0JP9Y.js} +140 -140
  32. package/assets/{C6Vsz4e_ASJdx3LP.js → C5VvbPUAfrVKmXXs.js} +1 -1
  33. package/assets/{Cu4ok_jTnQif8QtX.js → C85xBYGjAzNmVNwL.js} +1 -1
  34. package/assets/{Duw8QQGcrPmesb-M.js → C880pTyOMof_fzPO.js} +1 -1
  35. package/assets/{70weNsvW2LMx5QcW.js → C88UXFOnR1Uc-nw2.js} +1 -1
  36. package/assets/{CYtkZMCX6dyEqjb9.js → C8G6iJz_vsgbNYq9.js} +4 -4
  37. package/assets/{DX94YgmfoL_ngS60.js → CAQgJMpje7ORQ5lt.js} +1 -1
  38. package/assets/CBSyNN4Fk5WsVStK.js +14 -0
  39. package/assets/{BktUuVP0Jew8_-ff.js → CCeqR45x9p-GG8Pi.js} +1 -1
  40. package/assets/{xSUMX6J9-MJIGgmG.js → CEDsCeYCSlY7wYe1.js} +2 -2
  41. package/assets/{CfWSdzSpbErVA_1h.js → CFWHwEc3dKMmNzUp.js} +338 -338
  42. package/assets/{CGS7apShLtnlmF8D.js → CK9LWUZdZ93t3GkS.js} +1 -1
  43. package/assets/{V_VVW06vjWkmlbdh.js → CL-BRusnISEAzebz.js} +527 -527
  44. package/assets/{C-FJab2sVwBbOTiA.js → CLvFlk5-KU2jnQ5r.js} +1 -1
  45. package/assets/{ClRgSo0axU3lAOwR.js → CUhCIQjymULgXquN.js} +1 -1
  46. package/assets/{Cb7FKT3S78r6IYHi.js → CboWvqCV0yix3-yP.js} +1 -1
  47. package/assets/{COZ-bhj463kGINFA.js → Ci4AUhBajQMJs1Ty.js} +1 -1
  48. package/assets/{eCD6fmcTsgv76IZm.js → CkQT1G_6bvMixZ8e.js} +4 -4
  49. package/assets/{DFd0JAiw5dkbnULM.js → CkqsYktaMF9p014y.js} +1 -1
  50. package/assets/{CSMsn9bKgR9kWG0m.js → CkuL4Ed6oRGAhIS9.js} +1 -1
  51. package/assets/{COXWiXy3DCfmXSm5.js → Cm41HVr6Xyz53jHz.js} +1 -1
  52. package/assets/{DQlLgxA592HvgKzh.js → CoY2sE2RG-Nd8TMR.js} +1 -1
  53. package/assets/{DZOzgVEOXfHTE3YC.js → CuRvGO_2tG0PUhCM.js} +1 -1
  54. package/assets/{ckvxz2tZRlY1UPpg.js → CvqpsTll6ngbdHgx.js} +9731 -9750
  55. package/assets/{BAowTO-7Utmg0UvM.js → Cvs9i2VUl7wXWZup.js} +3 -3
  56. package/assets/{CFrOPd_UcD7qclCq.js → Cy2uazuc6KpkbYg-.js} +1 -1
  57. package/assets/{cU78RT4WJKAp5mU_.js → CybNjXi6cOFKyGuH.js} +1 -1
  58. package/assets/{BHIi-cAKnh_sAifV.js → CzPMiqbNDm6TDPGJ.js} +1 -1
  59. package/assets/{D6qQAWN_5p3FAshK.js → CzYXLEVIoCfQ1AMM.js} +157 -157
  60. package/assets/{D7NjohknztgMLqhT.js → D-BWtxIGXTCMLoio.js} +2 -2
  61. package/assets/{C-Vt758qtn8QeCrw.js → D0Ly34TqieVSOIbh.js} +1 -1
  62. package/assets/{Abkx7KJ6_X5avkR4.js → D0M0EWP28g5rQaei.js} +3 -3
  63. package/assets/{D053O1kZ7JtMwiqh.js → D4NBYfzSZ3cU-3ao.js} +1 -1
  64. package/assets/{DG9KGapq8eHlcTC7.js → D4NcXlPRmR6NaoGS.js} +1 -1
  65. package/assets/{DRvzD5Tkcb2OU0G2.js → D4jXxO1LUEQ6erA9.js} +1 -1
  66. package/assets/{DfaQvLAaU7HHPnSe.js → DAx-VOBmi1xAMhhX.js} +29 -29
  67. package/assets/{BbfSzxx5EzAvn-_F.js → DBcXAdUaNGrlah12.js} +15 -15
  68. package/assets/{DQBqVPRLkZFb2P_x.js → DFdAxnoXGn_8ge3l.js} +2 -2
  69. package/assets/{BtNEVWQWEp_Ie1nT.js → DFjfZCMPfQfwC4cF.js} +581 -581
  70. package/assets/{Cplall3oc-_3AhCB.js → DG0Dzgf1kAxN3AIk.js} +1 -1
  71. package/assets/{CcTDxlAqw6HuYmmm.js → DGv-dTePYQ8_yif4.js} +66 -66
  72. package/assets/{HLtC2gb8SfNmJU5q.js → DIaD0BL0JLTaJTS3.js} +5 -5
  73. package/assets/{C2kYWrsx5mg4XOES.js → DIimDQiJDW-4lkZT.js} +1 -1
  74. package/assets/{BzU8BhgrkSoh-XJF.js → DK8DWNMTOmCg6zAI.js} +8 -8
  75. package/assets/{DlOCT6DI5bhPtQ8j.js → DKox8guOumZMOdq8.js} +29 -29
  76. package/assets/{BNvsIyBwweYnfUz3.js → DMHiZKWwm6puHV6p.js} +1 -1
  77. package/assets/{BzLwCwXsh7eXQpeK.js → DMyq3L2ibjMlHuDa.js} +1 -1
  78. package/assets/{UdhH9UX9jQ4IV11J.js → DOKXQpGyzXCoSLdJ.js} +1 -1
  79. package/assets/{D8wjcRGgRdU34Ata.js → DOXriXo-7WmTAKbN.js} +1 -1
  80. package/assets/{CJubVukzHBNJb_Wf.js → DRfsB4kS28fPXv6K.js} +105 -105
  81. package/assets/{DkS3EQvuEuPDvCws.js → DSmARJ0owmwmr2FA.js} +2 -2
  82. package/assets/{DYx_I-o0yjx056Dq.js → DUM6h3BEreCilg32.js} +1 -1
  83. package/assets/{DpGFb3hbAT5Murcv.js → DXp5V2__VY2opctz.js} +1 -1
  84. package/assets/{TqxFLhPz3zbgi95t.js → D_YBc6vHBL-ajwvB.js} +1 -1
  85. package/assets/{D5aWcMLJ2wyLm9Ws.js → Dc8BQsPlwN6i6OU7.js} +1 -1
  86. package/assets/{B_GZxEqqpKtEPbWC.js → DcnNIdrilJHfl_CQ.js} +1 -1
  87. package/assets/{B0FfnXdiZxExcdjB.js → DdIufax_qSuWVGQK.js} +2 -2
  88. package/assets/{DkT0-_t9Xgp4l-Mh.js → DeNqXaM_dHSswRuE.js} +1 -1
  89. package/assets/{O8YGVK4vtz39jQ84.js → DfVHW5vbnRNXHrCi.js} +1 -1
  90. package/assets/{D8cqT2lbcP5Yp1Or.js → Dfc9_XsqSeh48YeK.js} +11 -11
  91. package/assets/{DbHVXEt9qwlb8Gou.js → DiXodb_hLvUDIGb6.js} +29 -29
  92. package/assets/{CVWoX7wNwrZwm5XB.js → Dn531BWCDZ2noJix.js} +2 -2
  93. package/assets/{B940vbTfpMYACpDE.js → DnAuLAqQLmAf9Gls.js} +2 -2
  94. package/assets/{BV13tLgNXZ8MDaE_.js → Do8K2GlFXIiMX9TB.js} +1 -1
  95. package/assets/{DXVfJfT6ftWk5kYi.js → Dt8hWBnnqlpJOazW.js} +138 -138
  96. package/assets/{DUfrvQDZKh_22F91.js → DuBbSpdXZuAFvxpr.js} +1 -1
  97. package/assets/{ixHQtoul8ubEJfWS.js → DvAq2cPI7-lfSn0x.js} +1 -1
  98. package/assets/{CGdayif_qNMtoATI.js → DzCZGtlg3pJO91l9.js} +1 -1
  99. package/assets/{DcHvH_I64hbnNh9G.js → DzRBnJpz972o277m.js} +1 -1
  100. package/assets/{LQNEL4KjDxwZNwWq.js → EohzUi0uCnSF2q2D.js} +156 -156
  101. package/assets/{Bwk-CZuGiTRT2ox_.js → KSagTSkIvZSpUF1c.js} +4 -4
  102. package/assets/{BD3Bc7ZHxenj4S7Q.js → LOFAyr5OoT3oZGMV.js} +1 -1
  103. package/assets/{BBccc8pDH-6AJdoT.js → LbZNDu6C9XPMEXCN.js} +5 -5
  104. package/assets/{DJlQxf99HCszeCCD.js → NwtEz6ZaVT8p8wOh.js} +1 -1
  105. package/assets/{VkeNTI1TMsA1ZbGz.js → PD_i17-cebq3-_Gn.js} +3 -3
  106. package/assets/{Bb7ZxgjHwiKgARXs.js → Q-BvS_P_qM8EvP92.js} +1 -1
  107. package/assets/{BW8ReYzx-CEJ-lAG.js → YRKAYjRpPkjhxGSS.js} +1 -1
  108. package/assets/{kmiMiNIUc6rS8DG8.js → _-kNP8Q4FxBYPY4u.js} +4 -4
  109. package/assets/{Ci3R5B7bLke8NZRo.js → aEDyynzUuzMysLwT.js} +6 -6
  110. package/assets/{DunKnm-bQd0oHn9n.js → cTnKNFayqlXisspN.js} +2 -2
  111. package/assets/{DZBfVpnngvY9Ra3C.js → eEh1r_BS7Y0FXPqk.js} +1 -1
  112. package/assets/{BHeXL-Lo390ZSNV0.js → g4vz4gc43eat7Hd2.js} +1 -1
  113. package/assets/{CAI8p60cuWlgnlko.js → jUzhn1PeDLWXOuJO.js} +14 -14
  114. package/assets/{DbXqd8hGNQEyS-s0.js → kIzQWtiHNHvh8HLF.js} +1 -1
  115. package/assets/{BXxUz-sB48Z9nSFi.js → mIM-JksHd3Zl5INF.js} +1 -1
  116. package/assets/{s56uiNHMGbBV6xgZ.js → mirSoZ8QDsYUMjYu.js} +1 -1
  117. package/assets/{APcHum0Riw3QhLBQ.js → ooSNLnHLIYTBL5JD.js} +1 -1
  118. package/assets/{BFKj2ik7h-yM6oCR.js → tp75fiKc1r-jdPPN.js} +1 -1
  119. package/assets/{DcHo7BC8Ny3hWq0j.js → xltGcIbWkjqNtCty.js} +2 -2
  120. package/assets/{xMi-tFxI2s6e18L1.js → zbOvcGIPi-MDlJKE.js} +1 -1
  121. package/index.js +118 -118
  122. package/lib.js +1 -1
  123. package/licenses/dependencies.txt +35 -35
  124. package/package.json +17 -2
  125. package/screenshot-page/assets/{Da_VIghRFdNrmfZT.js → 37HIsN_8LEsOWyOO.js} +1 -1
  126. package/screenshot-page/assets/4I9gFq1IdumstDHq.js +2 -0
  127. package/screenshot-page/assets/6j6xGn4csAcfcFMQ.js +1 -0
  128. package/screenshot-page/assets/{hB5riGkPy0wXVIig.js → 7N8xCpYVBHFqfoAg.js} +1 -1
  129. package/screenshot-page/assets/{D8EmNst-H2v0eWcf.js → 97qOXULGlJqaTCIL.js} +1 -1
  130. package/screenshot-page/assets/B6dFVtErFelDd62E.js +2 -0
  131. package/screenshot-page/assets/{BCmGLxQEUabeee6Q.js → B6i6Xi9OafEvNRAm.js} +2 -2
  132. package/screenshot-page/assets/B7uNU6WWjJaco6ho.js +1 -0
  133. package/screenshot-page/assets/{DqOrgSpuJhQRhMoG.js → BGoGxqwlpgXt8CMd.js} +2 -2
  134. package/screenshot-page/assets/{0P0DnZolMnjPhiea.js → BXss42mPBQnnt0Rh.js} +1 -1
  135. package/screenshot-page/assets/{D53hpXNHxIgSWl80.js → BbhwsC3eMdzP2PeH.js} +1 -1
  136. package/screenshot-page/assets/Beaq1eo3pAjlfcba.js +1 -0
  137. package/screenshot-page/assets/Bf3eJLndwyxuVR-_.js +1 -0
  138. package/screenshot-page/assets/{CKdQfdZJGJFgnrr9.js → BqJRJVrx7XkIPgo7.js} +11 -11
  139. package/screenshot-page/assets/C-qNpEaGV5amWPml.js +13 -0
  140. package/screenshot-page/assets/{CCYEWK5QyGSnUAfh.js → CB-bJVu0a2zAElNH.js} +1 -1
  141. package/screenshot-page/assets/CGvyz3VVFiHbYHM0.js +3 -0
  142. package/screenshot-page/assets/{DTAKTGn53yF_B621.js → CKbXhNyUiI18JA_C.js} +1 -1
  143. package/screenshot-page/assets/{DkTX5ZjGNQ5SrwJa.js → CVEUOXnI1pTa-GKp.js} +1 -1
  144. package/screenshot-page/assets/C_RHXqyejSa8gd9x.js +1 -0
  145. package/screenshot-page/assets/{Bt7fKk5ZupUuo_xD.js → CbTBuiF_Jn72hoj1.js} +2 -2
  146. package/screenshot-page/assets/{C-2hBFk27roWkIrQ.js → CraI-__UdtaIvbNn.js} +1 -1
  147. package/screenshot-page/assets/{CMryHLEhCyKGuRSW.js → Cyu6g5rRtEGOHaQS.js} +4 -4
  148. package/screenshot-page/assets/{CL_hAngRQwm_KGdR.js → D1KqgZwk5MjDhk5i.js} +1 -1
  149. package/screenshot-page/assets/DGr8M07ioDfKXLHD.js +57 -0
  150. package/screenshot-page/assets/DMbhlzvflyxF5Clt.js +39 -0
  151. package/screenshot-page/assets/{D-jd_TJCN7AAn125.js → DQxI7bShZ7TKpL0V.js} +9 -9
  152. package/screenshot-page/assets/{BpJaTpbR_CQzXj9M.js → DSB_SKy2lKI_VGik.js} +1 -1
  153. package/screenshot-page/assets/DWkISZdhmV2PBk-k.js +1 -0
  154. package/screenshot-page/assets/{BVnzv_sY_58zEJyM.js → DfmEx82r_NbillHk.js} +1 -1
  155. package/screenshot-page/assets/{MqGbtsji4DVGCAMR.js → DsZcJUWTmqcp2aI-.js} +1 -1
  156. package/screenshot-page/assets/{jteb4n23QwBT9m_4.js → DszZ1A807YzTc0ek.js} +1 -1
  157. package/screenshot-page/assets/{DJebrQ5mu8uxpX3b.js → DwHci99xcnRTEcv5.js} +2 -2
  158. package/screenshot-page/assets/Ojp2B5i2-AJeD4mV.js +1 -0
  159. package/screenshot-page/assets/{CRtk9ixuBWxhPfPU.js → PRYQO22Y2LgMUg77.js} +1 -1
  160. package/screenshot-page/assets/{CZaKvnrRdlLj1_X8.js → RHcyaEfxJB7O3alo.js} +1 -1
  161. package/screenshot-page/assets/TA9YjsgX-_8fRRdZ.js +1 -0
  162. package/screenshot-page/assets/cUY9GpQPVTLSprfW.js +1 -0
  163. package/screenshot-page/assets/{Bne-AygyF1USkPAy.js → m48xmzGgNgwXSEgQ.js} +1 -1
  164. package/screenshot-page/assets/mVfCz3bXIjqEVPEo.js +1 -0
  165. package/screenshot-page/assets/{CFS0h-wE9YlZRk_1.js → putBhJCWgRos_Fmk.js} +1 -1
  166. package/screenshot-page/assets/{DbnmgPTSEii4OGkB.js → uyInkZWFnMwX-BSC.js} +1 -1
  167. package/screenshot-page/assets/{D98PlIA4qQ_6ciCu.js → xiJthTXsasYVOHWE.js} +2 -2
  168. package/screenshot-page/index.html +8 -8
  169. package/types/scripting.d.ts +1 -1
  170. package/assets/CehVpkp73IfWGN_b.js +0 -14
  171. package/screenshot-page/assets/3L7CY5dA_kT2UBjv.js +0 -1
  172. package/screenshot-page/assets/B6UwT0pG4sQeG7fA.js +0 -3
  173. package/screenshot-page/assets/BH2IWQ-8AfNbhYZJ.js +0 -39
  174. package/screenshot-page/assets/BkU12U7IqW7qjopk.js +0 -13
  175. package/screenshot-page/assets/Bs-IXwX9BKsCxwcJ.js +0 -2
  176. package/screenshot-page/assets/C7MXfx6zf_uTwcpu.js +0 -1
  177. package/screenshot-page/assets/CUQsrLir5jYpnRPM.js +0 -1
  178. package/screenshot-page/assets/CUgX7ETRCJsvqa2x.js +0 -1
  179. package/screenshot-page/assets/CfD1bn6b-NM38iZV.js +0 -1
  180. package/screenshot-page/assets/Ck5onwb1w_19WrtG.js +0 -1
  181. package/screenshot-page/assets/CvBPH5c-gnUG8Jen.js +0 -1
  182. package/screenshot-page/assets/DmIjTb4kKfUHxWaF.js +0 -57
  183. package/screenshot-page/assets/Dz_yLNMXKWGx1O6V.js +0 -2
  184. package/screenshot-page/assets/eR9_DaySoB72PvMo.js +0 -1
  185. package/screenshot-page/assets/hHvAGynpTvAb97GX.js +0 -1
  186. package/screenshot-page/assets/x1O923k1mN-CduO_.js +0 -1
package/lib.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license @sheetxl/mcp - MCP server exposing SheetXL spreadsheet operations as tools and resources. - v0.8.0-beta.25
2
+ * @license @sheetxl/mcp - MCP server exposing SheetXL spreadsheet operations as tools and resources. - v1.0.2
3
3
  *
4
4
  * (C) 2026-present SheetXL Inc. & Michael T. Ford
5
5
  * License: SheetXL EULA — https://www.sheetxl.com/eula
@@ -1,5 +1,5 @@
1
1
  Name: @sheetxl/scripting
2
- Version: 0.8.0-beta.25
2
+ Version: 1.0.2
3
3
  License: SEE LICENSE IN LICENSE.md
4
4
  Private: false
5
5
  Description: Scripting - Scripting engine for Macros and formulas; includes TypeScript and EsBuild.
@@ -24,7 +24,7 @@ Third-party components bundled in this package remain under their own licenses,
24
24
  ---
25
25
 
26
26
  Name: @sheetxl/sdk
27
- Version: 0.8.0-beta.25
27
+ Version: 1.0.2
28
28
  License: SEE LICENSE IN LICENSE.md
29
29
  Private: false
30
30
  Description: SDK - A high-performance, embeddable spreadsheet engine.
@@ -49,7 +49,7 @@ Third-party components bundled in this package remain under their own licenses,
49
49
  ---
50
50
 
51
51
  Name: @sheetxl/formulas
52
- Version: 0.8.0-beta.25
52
+ Version: 1.0.2
53
53
  License: MIT
54
54
  Private: false
55
55
  Description: Formulas - TypeScript formulas compatible with Excel built-ins.
@@ -83,7 +83,7 @@ SOFTWARE.
83
83
  ---
84
84
 
85
85
  Name: @sheetxl/formulas-extended
86
- Version: 0.8.0-beta.25
86
+ Version: 1.0.2
87
87
  License: SEE LICENSE IN LICENSE.md
88
88
  Private: false
89
89
  Description: Formulas Enterprise - TypeScript formulas compatible with Excel built-ins.
@@ -108,7 +108,7 @@ Third-party components bundled in this package remain under their own licenses,
108
108
  ---
109
109
 
110
110
  Name: @sheetxl/io
111
- Version: 0.8.0-beta.25
111
+ Version: 1.0.2
112
112
  License: MIT
113
113
  Private: false
114
114
  Description: SheetXL - Import/Export Formats.
@@ -142,7 +142,7 @@ SOFTWARE.
142
142
  ---
143
143
 
144
144
  Name: @sheetxl/utils-node
145
- Version: 0.8.0-beta.25
145
+ Version: 1.0.2
146
146
  License: MIT
147
147
  Private: false
148
148
  Description: SheetXL - Node-only utilities: terminal presentation, environment reporting, tool logging
@@ -176,7 +176,7 @@ SOFTWARE.
176
176
  ---
177
177
 
178
178
  Name: @sheetxl/query
179
- Version: 0.8.0-beta.25
179
+ Version: 1.0.2
180
180
  License: SEE LICENSE IN LICENSE.md
181
181
  Private: false
182
182
  Description: SheetXL - Workbook read surface and renderers (grep, reports) — capabilities declared once, adapted by any host surface
@@ -201,7 +201,7 @@ Third-party components bundled in this package remain under their own licenses,
201
201
  ---
202
202
 
203
203
  Name: @sheetxl/runner
204
- Version: 0.8.0-beta.25
204
+ Version: 1.0.2
205
205
  License: MIT
206
206
  Private: false
207
207
  Description: SheetXL - Programmatic execution for SheetXL scripts
@@ -234,31 +234,6 @@ SOFTWARE.
234
234
 
235
235
  ---
236
236
 
237
- Name: @sheetxl/io-xlsx
238
- Version: 0.8.0-beta.25
239
- License: SEE LICENSE IN LICENSE.md
240
- Private: false
241
- Description: SheetXL - Import/Export from/to Excel
242
- Repository: https://github.com/sheetxl/sheetxl.git
243
- Homepage: https://sheetxl.com
244
- License Text:
245
- ===
246
-
247
- # License
248
-
249
- Copyright (c) 2026-present SheetXL Inc. & Michael T. Ford. All rights reserved.
250
-
251
- This package is commercial software, licensed under the SheetXL End-User License Agreement:
252
- https://www.sheetxl.com/eula
253
-
254
- A free Community License covers evaluation, learning and non-commercial use. Commercial use
255
- requires a paid license — see https://www.sheetxl.com/pricing.
256
-
257
- Third-party components bundled in this package remain under their own licenses, listed in
258
- `licenses/dependencies.txt`.
259
-
260
- ---
261
-
262
237
  Name: bessel
263
238
  Version: 1.0.2
264
239
  License: Apache-2.0
@@ -321,6 +296,31 @@ SOFTWARE.
321
296
 
322
297
  ---
323
298
 
299
+ Name: @sheetxl/io-xlsx
300
+ Version: 1.0.2
301
+ License: SEE LICENSE IN LICENSE.md
302
+ Private: false
303
+ Description: SheetXL - Import/Export from/to Excel
304
+ Repository: https://github.com/sheetxl/sheetxl.git
305
+ Homepage: https://sheetxl.com
306
+ License Text:
307
+ ===
308
+
309
+ # License
310
+
311
+ Copyright (c) 2026-present SheetXL Inc. & Michael T. Ford. All rights reserved.
312
+
313
+ This package is commercial software, licensed under the SheetXL End-User License Agreement:
314
+ https://www.sheetxl.com/eula
315
+
316
+ A free Community License covers evaluation, learning and non-commercial use. Commercial use
317
+ requires a paid license — see https://www.sheetxl.com/pricing.
318
+
319
+ Third-party components bundled in this package remain under their own licenses, listed in
320
+ `licenses/dependencies.txt`.
321
+
322
+ ---
323
+
324
324
  Name: papaparse
325
325
  Version: 5.7.0
326
326
  License: MIT
@@ -502,7 +502,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
502
502
  ---
503
503
 
504
504
  Name: @sheetxl/primitives
505
- Version: 0.8.0-beta.25
505
+ Version: 1.0.2
506
506
  License: MIT
507
507
  Private: false
508
508
  Description: Primitives - Base types for SheetXL functions.
@@ -536,7 +536,7 @@ SOFTWARE.
536
536
  ---
537
537
 
538
538
  Name: @sheetxl/utils
539
- Version: 0.8.0-beta.25
539
+ Version: 1.0.2
540
540
  License: MIT
541
541
  Private: false
542
542
  Description: Utils - Utilities used by most SheetXL components.
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "@sheetxl/mcp",
3
3
  "description": "MCP server exposing SheetXL spreadsheet operations as tools and resources.",
4
- "version": "0.8.0-beta.25",
4
+ "version": "1.0.2",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
+ "mcpName": "io.github.sheetxl/sheetxl",
6
7
  "bin": {
7
8
  "sheetxl-mcp": "./index.js"
8
9
  },
@@ -31,9 +32,23 @@
31
32
  "bugs": {
32
33
  "url": "https://github.com/sheetxl/sheetxl/issues"
33
34
  },
35
+ "keywords": [
36
+ "sheetxl",
37
+ "mcp",
38
+ "model-context-protocol",
39
+ "mcp-server",
40
+ "spreadsheet",
41
+ "excel",
42
+ "xlsx",
43
+ "csv",
44
+ "formulas",
45
+ "agent",
46
+ "ai",
47
+ "claude"
48
+ ],
34
49
  "dependencies": {
35
50
  "@modelcontextprotocol/sdk": "^1.32.2",
36
- "@sheetxl/skills": "0.8.0-beta.25",
51
+ "@sheetxl/skills": "1.0.2",
37
52
  "configstore": "^8.0.0",
38
53
  "esbuild-wasm": "^0.28.2",
39
54
  "typescript": "^5.9.0 || ^6.0.0",
@@ -1 +1 @@
1
- import{n as e}from"./CbXtAM7H-Jg_J0dk.js";import{i as t,t as n}from"./gU2zeJaXoNh7QI_e.js";import{t as r}from"./YH1wNXzhQbkuWxeS.js";import{Z as i,y as a}from"./D4RZZdlItfrgQHcE.js";import{q as o}from"./DJebrQ5mu8uxpX3b.js";import{r as s,t as c}from"./C-2hBFk27roWkIrQ.js";import{t as l}from"./C9SC-cEIt6gdhZRw.js";var u=e(t(),1),d=n(),f=(0,u.memo)((0,u.forwardRef)((e,t)=>{let{children:n,disabled:i,style:a,chart:l,zoom:f=1,isDragging:p,movable:m,onHide:h,onShow:g,onDragZone:_,onTap:v,adornmentHost:y,flip:b,gesture:x,...S}=e,C=o(t,()=>({isChartEditor:()=>!0}),[]),w=(0,u.useRef)(null),T=r([C,w]),E=s(),D=m?.getRange()?.getWorksheet()?.getView()?.getChartElementSelection()??null;(0,u.useLayoutEffect)(()=>{_?.(e=>{let t=`touches`in e?e.touches[0]:e;if(!t)return!0;let n=w.current?.getElementAt(t.clientX,t.clientY)??null;return!n||n.getElementType()===`chartArea`})},[_]);let O=(0,u.useCallback)(e=>{!i&&e.element&&e.element.getElementType()!==`chartArea`&&(e.event.stopPropagation(),m&&!m.isSelected()&&m.select())},[m,i]);if(!l.isDeleted())return(0,d.jsx)(c,{...S,chart:l,zoom:f,colorScheme:E,selection:i?null:D,onElementPress:O,style:{...a,filter:i?`blur(1px)`:void 0,boxShadow:p?`1px 1px 2px var(--sxl-color-shadow, rgba(0,0,0,.15))`:void 0},ref:T})}));f.displayName=`ChartEditor`;var p=new Set([`waterfall`,`histogram`,`pareto`,`boxwhisker`,`treemap`,`sunburst`,`funnel`,`regionMap`]),m=[{key:`chartTitleToggle`,state:e=>e.getTitle().getVisible(),show:[`chartTitleAboveChart`],hide:[`chartTitleNone`]},{key:`chartLegendToggle`,state:e=>e.getLegend().getVisible(),show:[`legendRight`],hide:[`legendNone`]},{key:`chartDataLabelsToggle`,state:e=>e.getDataLabels().getVisible(),show:[`dataLabelShow`],hide:[`dataLabelNone`]},{key:`chartDataTableToggle`,state:e=>e.getDataTable().getVisible(),show:[`dataTableShow`],hide:[`dataTableNone`]},{key:`chartGridlinesToggle`,state:e=>e.getAxes().getValueAxis()?.getMajorGridlines().getVisible()??!1,show:[`primaryValueGridLinesMajor`],hide:[`primaryValueGridLinesNone`]},{key:`chartAxisTitlesToggle`,state:e=>e.getAxes().getItems().some(e=>e.getAxisGroup()===`primary`&&e.getTitle().getVisible()),show:[`primaryCategoryAxisTitleAdjacentToAxis`,`primaryValueAxisTitleRotated`],hide:[`primaryCategoryAxisTitleNone`,`primaryValueAxisTitleNone`]}],h={renderer:e=>(0,d.jsx)(f,{...e,chart:e.movable.getContent()}),commands:(e,t)=>{let{sheet:n,movable:r,notifier:o}=t,s=r.getContent();e.use(l({transaction:n,notifier:o}));let c=()=>({chart:()=>s}),u=()=>s.isReadOnly()?[i(`reason.sheetProtected`)]:[],d=()=>{let t=s.isReadOnly()?[i(`reason.sheetProtected`)]:p.has(s.getChartType())?[i(`reason.chartTypeNotEditable`)]:[];e.updateCommand(`chartChangeType`,{callback:e=>{let t=typeof e==`string`?e:e?.type;t&&s.setChartType(t)},state:s.getChartType(),context:c,disabledReasons:t}),e.updateCommand(`chartSwitchRowColumn`,{callback:()=>{s.setSeriesBy(s.getSeriesBy()===`rows`?`columns`:`rows`)},state:s.getSeriesBy(),context:c,disabledReasons:t}),e.updateCommand(`chartSelectData`,{tags:[`noTransaction`,`noRepeat`],callback:async e=>{if(!e){let t=await o?.showInput?.({title:a(`dialog.chartSelectData.title`),description:a(`dialog.chartSelectData.description`),inputLabel:a(`dialog.chartSelectData.inputLabel`),initialValue:s.getSeries()[0]?.getValuesRange()?.getAddress()??``,options:[{id:`Select`,label:()=>a(`dialog.select`)}]});if(!t||t.option!==`Select`||!t.input)return;e=t.input}s.setData(e)},context:c,disabledReasons:t}),e.updateCommand(`chartAddElement`,{callback:e=>{e&&s.setElement(e)},context:c,disabledReasons:t});for(let n of m){let r=n.state(s);e.updateCommand(n.key,{callback:()=>{for(let e of r?n.hide:n.show)s.setElement(e)},state:r,context:c,disabledReasons:n.key===`chartTitleToggle`||n.key===`chartLegendToggle`?u():t})}};return d(),s.addListeners({onAnyChange:d})}};export{h as ChartKind};
1
+ import{n as e}from"./CbXtAM7H-Jg_J0dk.js";import{i as t,t as n}from"./gU2zeJaXoNh7QI_e.js";import{t as r}from"./YH1wNXzhQbkuWxeS.js";import{Z as i,y as a}from"./D4RZZdlItfrgQHcE.js";import{q as o}from"./DwHci99xcnRTEcv5.js";import{r as s,t as c}from"./CraI-__UdtaIvbNn.js";import{t as l}from"./C9SC-cEIt6gdhZRw.js";var u=e(t(),1),d=n(),f=(0,u.memo)((0,u.forwardRef)((e,t)=>{let{children:n,disabled:i,style:a,chart:l,zoom:f=1,isDragging:p,movable:m,onHide:h,onShow:g,onDragZone:_,onTap:v,adornmentHost:y,flip:b,gesture:x,...S}=e,C=o(t,()=>({isChartEditor:()=>!0}),[]),w=(0,u.useRef)(null),T=r([C,w]),E=s(),D=m?.getRange()?.getWorksheet()?.getView()?.getChartElementSelection()??null;(0,u.useLayoutEffect)(()=>{_?.(e=>{let t=`touches`in e?e.touches[0]:e;if(!t)return!0;let n=w.current?.getElementAt(t.clientX,t.clientY)??null;return!n||n.getElementType()===`chartArea`})},[_]);let O=(0,u.useCallback)(e=>{!i&&e.element&&e.element.getElementType()!==`chartArea`&&(e.event.stopPropagation(),m&&!m.isSelected()&&m.select())},[m,i]);if(!l.isDeleted())return(0,d.jsx)(c,{...S,chart:l,zoom:f,colorScheme:E,selection:i?null:D,onElementPress:O,style:{...a,filter:i?`blur(1px)`:void 0,boxShadow:p?`1px 1px 2px var(--sxl-color-shadow, rgba(0,0,0,.15))`:void 0},ref:T})}));f.displayName=`ChartEditor`;var p=new Set([`waterfall`,`histogram`,`pareto`,`boxwhisker`,`treemap`,`sunburst`,`funnel`,`regionMap`]),m=[{key:`chartTitleToggle`,state:e=>e.getTitle().getVisible(),show:[`chartTitleAboveChart`],hide:[`chartTitleNone`]},{key:`chartLegendToggle`,state:e=>e.getLegend().getVisible(),show:[`legendRight`],hide:[`legendNone`]},{key:`chartDataLabelsToggle`,state:e=>e.getDataLabels().getVisible(),show:[`dataLabelShow`],hide:[`dataLabelNone`]},{key:`chartDataTableToggle`,state:e=>e.getDataTable().getVisible(),show:[`dataTableShow`],hide:[`dataTableNone`]},{key:`chartGridlinesToggle`,state:e=>e.getAxes().getValueAxis()?.getMajorGridlines().getVisible()??!1,show:[`primaryValueGridLinesMajor`],hide:[`primaryValueGridLinesNone`]},{key:`chartAxisTitlesToggle`,state:e=>e.getAxes().getItems().some(e=>e.getAxisGroup()===`primary`&&e.getTitle().getVisible()),show:[`primaryCategoryAxisTitleAdjacentToAxis`,`primaryValueAxisTitleRotated`],hide:[`primaryCategoryAxisTitleNone`,`primaryValueAxisTitleNone`]}],h={renderer:e=>(0,d.jsx)(f,{...e,chart:e.movable.getContent()}),commands:(e,t)=>{let{sheet:n,movable:r,notifier:o}=t,s=r.getContent();e.use(l({transaction:n,notifier:o}));let c=()=>({chart:()=>s}),u=()=>s.isReadOnly()?[i(`reason.sheetProtected`)]:[],d=()=>{let t=s.isReadOnly()?[i(`reason.sheetProtected`)]:p.has(s.getChartType())?[i(`reason.chartTypeNotEditable`)]:[];e.updateCommand(`chartChangeType`,{callback:e=>{let t=typeof e==`string`?e:e?.type;t&&s.setChartType(t)},state:s.getChartType(),context:c,disabledReasons:t}),e.updateCommand(`chartSwitchRowColumn`,{callback:()=>{s.setSeriesBy(s.getSeriesBy()===`rows`?`columns`:`rows`)},state:s.getSeriesBy(),context:c,disabledReasons:t}),e.updateCommand(`chartSelectData`,{tags:[`noTransaction`,`noRepeat`],callback:async e=>{if(!e){let t=await o?.showInput?.({title:a(`dialog.chartSelectData.title`),description:a(`dialog.chartSelectData.description`),inputLabel:a(`dialog.chartSelectData.inputLabel`),initialValue:s.getSeries()[0]?.getValuesRange()?.getAddress()??``,options:[{id:`Select`,label:()=>a(`dialog.select`)}]});if(!t||t.option!==`Select`||!t.input)return;e=t.input}s.setData(e)},context:c,disabledReasons:t}),e.updateCommand(`chartAddElement`,{callback:e=>{e&&s.setElement(e)},context:c,disabledReasons:t});for(let n of m){let r=n.state(s);e.updateCommand(n.key,{callback:()=>{for(let e of r?n.hide:n.show)s.setElement(e)},state:r,context:c,disabledReasons:n.key===`chartTitleToggle`||n.key===`chartLegendToggle`?u():t})}};return d(),s.addListeners({onAnyChange:d})}};export{h as ChartKind};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./CB-bJVu0a2zAElNH.js","./BGoGxqwlpgXt8CMd.js","./HclGiUj8dZXDFmoM.js","./D4RZZdlItfrgQHcE.js","./3Ls_kOvlQseMV8Q0.js","./BQTLEc84Eql61S2m.js","./COL9dj40ytErlGak.js","./nHThFXCAZFOM_npq.js","./CQukCzhuewMuFOlO.js","./BqJRJVrx7XkIPgo7.js","./BQnELVV0uR4T4ItQ.js","./CnXLpFE_vFrJ5Jbf.js","./Np3jWxG724t5hLHZ.js","./Cenh1POxiGMxIQlv.js","./-i_fTASJeu9NdNH_.js","./putBhJCWgRos_Fmk.js","./9w0ECZmzGUyk3F_O.js","./KoxRo2J_cwB_yOd5.js"])))=>i.map(i=>d[i]);
2
+ import{t as e}from"./HclGiUj8dZXDFmoM.js";import{B as t}from"./D4RZZdlItfrgQHcE.js";import{n}from"./xiJthTXsasYVOHWE.js";import{r}from"./9w0ECZmzGUyk3F_O.js";var i=r({MAX_WORKBOOK_NAME_SIZE:()=>96,isReservedFileNameChar:()=>s,isValidFileName:()=>c}),a=/^(con|prn|aux|nul|com\d|lpt\d)$/i,o=/[<>:"/\\|?*\u0000-\u001F]/,s=e=>o.test(e),c=e=>!(!e||e.length>255)&&!o.test(e)&&!a.test(e)&&e!==`.`&&e!==`..`,l=t(`io:sxlReader`,()=>e(()=>import(`./CB-bJVu0a2zAElNH.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13]),import.meta.url)),u=t(`io:sxlWriter`,()=>e(()=>import(`./-i_fTASJeu9NdNH_.js`),__vite__mapDeps([14,13]),import.meta.url)),d=async(e,t)=>(await l.load()).readSXL(e,t),f=e=>async(t,n)=>(await u.load()).writeSXL(t,{...n,compress:n?.compress??e.compress,whiteSpace:n?.whiteSpace??e.whiteSpace}),p={key:`SheetXL`,description:`SheetXL Workbook`,mimeType:`application/vnd.sheetxl.sheet`,exts:[`sxl`],handler:d},m={key:`JSON`,description:`SheetXL Workbook (JSON)`,mimeType:`application/json`,exts:[`json`],handler:d},h={key:`SheetXL`,mimeType:`application/vnd.sheetxl.sheet`,description:`SheetXL Workbook`,exts:[`sxl`],handler:f({compress:!0,whiteSpace:0})},g={key:`JSON`,mimeType:`application/json`,description:`SheetXL Workbook (JSON)`,exts:[`json`],advanced:!0,handler:f({compress:!1,whiteSpace:2})},_={name:`SXLPlugin`,version:`1.0.2`,description:`Import and export SXL format`,author:`SheetXL`,async register(e){await e.registerReadFormat(p),await e.registerReadFormat(m),await e.registerWriteFormat(h),await e.registerWriteFormat(g)}},v=t(`io:csvReader`,()=>e(()=>import(`./putBhJCWgRos_Fmk.js`),__vite__mapDeps([15,2,8,1,3,4,5,6,7,9,10,11,12,16]),import.meta.url)),y=t(`io:csvWriter`,()=>e(()=>import(`./KoxRo2J_cwB_yOd5.js`),__vite__mapDeps([17,2,16]),import.meta.url)),b={key:`CSV`,description:`Comma Separated Values`,mimeType:`text/csv`,exts:[`csv`],handler:async(e,t)=>(await v.load()).readCSV(e,t)},x={key:`CSV`,mimeType:`text/csv`,description:`Comma Separated Values`,exts:[`csv`],handler:async(e,t)=>(await y.load()).writeCSV(e,t)},S={name:`CSVPlugin`,version:`1.0.2`,description:`Import and export CSV format`,author:`SheetXL`,async register(e){await e.registerReadFormat(b),await e.registerWriteFormat(x)}},C={name:`@sheetxl/io`,version:`1.0.2`,description:`Built-in I/O formats for SheetXL`,author:`SheetXL`,async register(e){await _.register(e),await S.register(e),await n.register(e)}};export{S as CSVPlugin,C as IOPlugin,i as IOUtils,_ as SXLPlugin};
@@ -0,0 +1 @@
1
+ import{Cr as e,Jn as t,Ln as n,Ut as r,Xt as i,Yr as a,ci as o,jn as s,pn as c,rt as l}from"./BqJRJVrx7XkIPgo7.js";var u=Symbol(`sheetxl.formulaNode.internal`),d=Symbol(`sheetxl.formulaNode.value`),f=Symbol(`sheetxl.formulaNode.replaced`),p={canonical:!0},m=(e,t)=>{let n=e.inputs,r=null;if(n){let e=n.length;r=Array(e);for(let i=0;i<e;i++){let e=n[i];r[i]=e&&m(e,t)}}let i=((e,t)=>{let n=e.type,r=e.value;if(n===c.Named){let n=r,i=n?.nameId,a=n?.scope??null;return t&&(i=t.resolve(l.NamedFormula,i)?.toString()??i,a&&=t.resolve(l.Sheet,a)?.toString()??a),e.binding?.declaration&&e.binding.optional?{name:i,scope:a,optional:!0}:{name:i,scope:a}}if(n===c.TableReference){let e=typeof r==`string`?r:r?.tableId;return e?t?t.resolve(l.Table,e)?.toString()??e:e:``}if(!t)return r;switch(n){case c.Function:return t.resolve(l.Function,r,p)?.toString()??r;case c.TableColumn:return t.resolve(l.TableColumn,r)?.toString()??r;case c.Cell:{let e=r;if(e?.scope){let n=t.resolve(l.Sheet,e.scope)?.toString()??e.scope;return{...e,scope:n}}return r}case c.Error:{let e=r;if(e?.scope){let n=t.resolve(l.Sheet,e.scope)?.toString()??e.scope;return{...e,scope:n}}return r}default:return r}})(e,t);return{type:e.type,value:i,inputs:r,isReference:e.isReference,[u]:e,[d]:i}},h=(e,t,n)=>{let r=e.inputs,i;if(r){let t=r.length;for(let a=0;a<t;a++){let t=r[a];if(!t)continue;let o=h(t,e,n);o!==t&&(i||=[...r],i[a]=o)}}let a=e;i&&(a={...e,inputs:i});let o=n(a,t);return o==null||o===a?a:(o[u]===void 0&&a[u]!==void 0&&(o[f]=a[u]),o)},g=[`:`,`.:.`,`.:`,`:.`,` `],_=(o,l)=>{let u=o.type,d=o.value;switch(u){case c.Function:return r(String(d),l);case c.Infix:return n(d,l[0],l[1],o.isReference??g.includes(d));case c.Prefix:return i(d,l?.[0],o.isReference??d===`@`);case c.Postfix:return t(d,l?.[0],o.isReference??d===`#`);case c.Named:{let t=e(typeof d==`string`?d:d?.name),n=typeof d==`object`?d?.scope:null;return n&&(t.value={...t.value,scope:n}),typeof d==`object`&&!0===d?.optional&&(t.value={...t.value,optional:!0}),t}case c.Cell:return a(d);case c.TableReference:return{type:c.TableReference,value:d,inputs:l??null,isReference:!0};case c.TableSpecifier:return{type:c.TableSpecifier,value:d,image:`[${d}]`,inputs:null,isReference:!0};case c.TableColumn:{let e=typeof d==`string`&&d.startsWith(`[`)?d:`[${s(String(d))}]`;return{type:c.TableColumn,value:d,image:e,inputs:null,isReference:!0}}case c.String:case c.Number:case c.Boolean:return{type:u,value:d,inputs:null,isLiteral:!0};default:return{type:u,value:d,inputs:l??null,isReference:o.isReference}}},v=e=>{let t=e[u],n=e.inputs,r=null;if(n){let e=n.length;r=Array(e);for(let t=0;t<e;t++){let e=n[t];r[t]=e&&v(e)}}if(t){let n=e.value!==e[d],i=!1,a=t.inputs;if(r&&a&&r.length===a.length){for(let e=0;e<r.length;e++)if(r[e]!==a[e]){i=!0;break}}else i=r===null!=(a==null)||(r?.length??0)!==(a?.length??0);if(!n&&!i)return t;if(!n)return{...t,inputs:r};let o=_(e,r);return y(o,t),o}let i=_(e,r),a=e[f];return a&&y(i,a),i},y=(e,t)=>{o(e,t),e.type!==t.type&&e.image!==void 0&&(e.image=void 0)};function b(e,t){return m(e,t)}function x(e,t){return e&&typeof t==`function`?h(e,void 0,t):e}function S(e){let t=v(e);return!0===e.legacyIntersect&&(t.legacyIntersect=!0),t}export{b as n,x as r,S as t};
@@ -1 +1 @@
1
- import{n as e}from"./CbXtAM7H-Jg_J0dk.js";import{i as t,t as n}from"./gU2zeJaXoNh7QI_e.js";import{n as r}from"./CQ-33-es3XJ56pR4.js";import{t as i}from"./Bdb0azxGoCh6NBDk.js";import{$ as a,L as o,Z as s,q as c}from"./DJebrQ5mu8uxpX3b.js";import{n as l}from"./D72Rp__0TEqJ972a.js";import{A as u}from"./jteb4n23QwBT9m_4.js";import{i as ee,n as te,r as ne}from"./D8EmNst-H2v0eWcf.js";var d=e(t(),1),f=n(),p=e=>Math.round(1e3*e)/1e3,m=(e,t,n)=>{let r=p(50*(1-e.width/(n*t.width))),i=p(50*(1-e.height/(n*t.height)));return{left:r,right:r,top:i,bottom:i}},h=(e,t)=>m(e,t,Math.max(e.width/t.width,e.height/t.height)),g=(e,t)=>m(e,t,Math.min(e.width/t.width,e.height/t.height)),_=(e,t,n)=>{let r=Math.min(e.width,e.height*n),i=r/n,{left:a=0,top:o=0,right:s=0,bottom:c=0}=t,l=(e.width-r)/2/e.width*(100-a-s),u=(e.height-i)/2/e.height*(100-o-c);return{bounds:{x:e.x+(e.width-r)/2,y:e.y+(e.height-i)/2,width:r,height:i},crop:{left:p(a+l),right:p(s+l),top:p(o+u),bottom:p(c+u)}}},v=`data:image/webp;base64,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`,y={left:`0%`,top:`0%`,width:`100%`,height:`100%`},b={position:`absolute`,left:0,top:0,width:`100%`,height:`100%`,display:`block`,pointerEvents:`none`},re=(0,d.memo)((0,d.forwardRef)((e,t)=>{let{children:n,disabled:p,style:m,picture:h,movable:g,zoom:_=1,gesture:re,description:ie,tile:x,offsetX:S=0,offsetY:C=0,isDragging:w,onHide:ae,onShow:oe,onDragZone:se,onTap:T,adornmentHost:ce,flip:E,onKeyDownCapture:le,onFocus:ue,onBlur:de,loadingPanel:fe,...pe}=e,[D,O]=(0,d.useState)(!1),[k,me]=(0,d.useState)(null),[A,j]=(0,d.useState)(null),[M,N]=(0,d.useState)(null),[he,P]=(0,d.useReducer)(e=>e+1,0);r(h,{onAnyChange:P}),r(g??null,{onBoundsChange:P,onSelectionChange:P});let ge=i(),F=o(),I=h.toJSON(),{width:L,height:R,rotation:z}=te(g),B=L>0&&R>0,V=!!I.fill||!!I.stroke||I.geometry!==void 0&&I.geometry!==`rect`,_e=I.adjustments?JSON.stringify(I.adjustments):``,[H,U]=(0,d.useState)(null),[ve,W]=(0,d.useState)(!1);(0,d.useEffect)(()=>{if(!V||!B)return U(null),void W(!1);let e=!0;return h.getGeometry(L,R).then(t=>{e&&(U(t),W(!0))},()=>{e&&(U(null),W(!0))}),()=>{e=!1}},[h,V,B,I.geometry,_e]);let G=(0,d.useMemo)(()=>H&&B?H.getWidth()===L&&H.getHeight()===R?H:H.resize(L,R):null,[H,B,L,R]),[ye,be]=(0,d.useState)(null);(0,d.useEffect)(()=>{if(!x||!A)return;let e=!0,t=new Image;return t.src=A,(typeof t.decode==`function`?t.decode():Promise.resolve()).catch(()=>{}).then(()=>{e&&be(A)}),()=>{e=!1}},[x,A]),s(!D&&(x?ye!==A||!A:!k)||V&&B&&!ve);let K=ge?.getStyles()??null,q=(0,d.useMemo)(()=>V?ne({fill:I.fill,stroke:I.stroke,style:null},K):null,[V,I.fill,I.stroke,K]),J=`${(0,d.useId)().replace(/[^A-Za-z0-9_-]/g,``)}-clip`,Y=(0,d.useMemo)(()=>{if(!G||I.geometry===void 0||I.geometry===`rect`)return null;let e=[];return G.forEachPath(t=>{t.layer===`fill`&&e.push(t.d)}),e.length>0?e.join(` `):null},[G,I.geometry]),xe=E?.horizontal??!1,Se=E?.vertical??!1,Ce=(0,d.useMemo)(()=>z%360==0&&B?{dpr:a.getDevicePixelRatio(),zoom:_,width:L,height:R,flipH:xe,flipV:Se}:null,[z,B,_,L,R,xe,Se]),X=h.getHyperlink?.()??null,Z=u(l,null),Q=(0,d.useRef)(null);(0,d.useEffect)(()=>()=>{Q.current?.(),Z(e=>e===h?null:e)},[h,Z]),(0,d.useEffect)(()=>{X||Z(e=>e===h?null:e)},[!X,h,Z]);let $=(0,d.useCallback)(e=>{g?.unselect(),e.open().catch(e=>{F.showError?.(e instanceof Error?e:String(e))})},[g,F]);(0,d.useEffect)(()=>{T?.(()=>{let e=h.getHyperlink?.();return!!e&&($(e),!0)})},[T,h,$]),(0,d.useEffect)(()=>{j(null),h.getDetails().then(e=>{O(!1),j(e.asUrl()),N(e.asSVGText?.()||null)}).catch(e=>{console.warn(e),O(!0),j(v),N(null)})},[h,he]);let we=c(t,()=>({isPictureEditor:()=>!0}),[]),Te=I.image?.sourceRect,Ee=(0,d.useMemo)(()=>(e=>{let{left:t=0,top:n=0,right:r=0,bottom:i=0}=e??{},a=(100-t-r)/100,o=(100-n-i)/100;return{left:-t/a+`%`,top:-n/o+`%`,width:100/a+`%`,height:100/o+`%`}})(Te),[Te]),De=(0,d.useMemo)(()=>{if(A||M)return x?(0,f.jsx)(`div`,{style:{backgroundPosition:`${S}px ${C}px`,backgroundImage:`url(${A})`,backgroundRepeat:`repeat`,backgroundSize:`auto`,width:`100%`,height:`100%`,filter:`var(--_sxl-image-filter)`}}):(0,f.jsx)(`img`,{style:{position:`absolute`,...D?y:Ee,border:D?`var(--sxl-color-neutral, grey) solid 1px`:void 0,backgroundColor:D?`var(--sxl-color-base-100, white)`:void 0,boxShadow:D?`0px 0px 3px var(--sxl-color-error, red)`:void 0,objectFit:D?`contain`:void 0,opacity:+!!k,filter:`var(--_sxl-image-filter)`},draggable:!1,src:A??void 0,onLoad:()=>{me(!0)},onError:({currentTarget:e})=>{console.log(`error`),e.onerror=null,j(v),O(!0)},alt:ie??`${h.getType()}`})},[k,h,A,M,w,x,S,C,Ee,D,ie]);if(h.isDeleted())return;let Oe=E&&(E.horizontal||E.vertical)?`scale(${E.horizontal?-1:1}, ${E.vertical?-1:1})`:void 0,ke=m?.pointerEvents===`none`?`none`:`visiblePainted`,{left:Ae=0,top:je=0,right:Me=0,bottom:Ne=0}=I.image?.stretch??{};return(0,f.jsxs)(`div`,{className:`sxl-picture-editor`,style:{position:`relative`,display:`flex`,flex:`1 1 100%`,filter:w?`drop-shadow(1px 1px 1.5px var(--sxl-color-shadow, rgba(0, 0, 0, .25)))`:void 0,transform:Oe,transformOrigin:`center`,...m,pointerEvents:`none`,width:`100%`,height:`100%`},...pe,onPointerDownCapture:X?e=>{if(e.button!==0||e.ctrlKey||e.metaKey||e.shiftKey||!g||g.isSelected())return;Q.current?.();let t=e.currentTarget.ownerDocument,{pointerId:n,clientX:r,clientY:i,timeStamp:a}=e.nativeEvent,o=e=>{if(e.pointerId!==n||(Q.current?.(),!(Math.abs(e.clientX-r)<=4&&Math.abs(e.clientY-i)<=4&&e.timeStamp-a<=500)))return;let t=h.getHyperlink();t&&$(t)},s=e=>{e.pointerId===n&&Q.current?.()};t.addEventListener(`pointerup`,o),t.addEventListener(`pointercancel`,s),Q.current=()=>{Q.current=null,t.removeEventListener(`pointerup`,o),t.removeEventListener(`pointercancel`,s)}}:void 0,onPointerEnter:X?()=>{Z(h)}:void 0,onPointerLeave:X?()=>{Z(e=>e===h?null:e)}:void 0,onKeyDownCapture:e=>{le?.(e)},ref:we,children:[G&&q?(0,f.jsx)(`svg`,{className:`sxl-picture-fill`,viewBox:`0 0 ${L} ${R}`,preserveAspectRatio:`none`,overflow:`visible`,style:b,children:(0,f.jsx)(ee,{geometry:G,style:{...q,stroke:null,strokeGradient:void 0,strokeWidth:0},zoom:_,grid:Ce,hit:ke})}):null,Y?(0,f.jsx)(`svg`,{width:0,height:0,style:{position:`absolute`},"aria-hidden":!0,children:(0,f.jsx)(`defs`,{children:(0,f.jsx)(`clipPath`,{id:J,clipPathUnits:`objectBoundingBox`,children:(0,f.jsx)(`path`,{d:Y,transform:`scale(${1/L} ${1/R})`})})})}):null,(0,f.jsx)(`div`,{className:`sxl-picture-clip`,style:{position:`absolute`,...y,clipPath:Y?`url(#${J})`:void 0,pointerEvents:m?.pointerEvents??`auto`,cursor:X&&!g?.isSelected()?`pointer`:void 0},children:(0,f.jsxs)(`div`,{className:`sxl-picture-image`,style:{position:`absolute`,left:`${Ae}%`,top:`${je}%`,right:`${Me}%`,bottom:`${Ne}%`,overflow:`hidden`},children:[k||D?void 0:fe,De]})}),G&&q&&q.strokeWidth>0?(0,f.jsx)(`svg`,{className:`sxl-picture-border`,viewBox:`0 0 ${L} ${R}`,preserveAspectRatio:`none`,overflow:`visible`,style:b,children:(0,f.jsx)(ee,{geometry:G,style:{...q,fill:null,gradient:void 0,image:void 0},zoom:_,grid:Ce,hit:ke})}):null]})}));re.displayName=`PictureEditor`;export{_ as i,g as n,h as r,re as t};
1
+ import{n as e}from"./CbXtAM7H-Jg_J0dk.js";import{i as t,t as n}from"./gU2zeJaXoNh7QI_e.js";import{n as r}from"./CQ-33-es3XJ56pR4.js";import{t as i}from"./Bdb0azxGoCh6NBDk.js";import{$ as a,L as o,Z as s,q as c}from"./DwHci99xcnRTEcv5.js";import{n as l}from"./D72Rp__0TEqJ972a.js";import{A as u}from"./DszZ1A807YzTc0ek.js";import{i as ee,n as te,r as ne}from"./97qOXULGlJqaTCIL.js";var d=e(t(),1),f=n(),p=e=>Math.round(1e3*e)/1e3,m=(e,t,n)=>{let r=p(50*(1-e.width/(n*t.width))),i=p(50*(1-e.height/(n*t.height)));return{left:r,right:r,top:i,bottom:i}},h=(e,t)=>m(e,t,Math.max(e.width/t.width,e.height/t.height)),g=(e,t)=>m(e,t,Math.min(e.width/t.width,e.height/t.height)),_=(e,t,n)=>{let r=Math.min(e.width,e.height*n),i=r/n,{left:a=0,top:o=0,right:s=0,bottom:c=0}=t,l=(e.width-r)/2/e.width*(100-a-s),u=(e.height-i)/2/e.height*(100-o-c);return{bounds:{x:e.x+(e.width-r)/2,y:e.y+(e.height-i)/2,width:r,height:i},crop:{left:p(a+l),right:p(s+l),top:p(o+u),bottom:p(c+u)}}},v=`data:image/webp;base64,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`,y={left:`0%`,top:`0%`,width:`100%`,height:`100%`},b={position:`absolute`,left:0,top:0,width:`100%`,height:`100%`,display:`block`,pointerEvents:`none`},re=(0,d.memo)((0,d.forwardRef)((e,t)=>{let{children:n,disabled:p,style:m,picture:h,movable:g,zoom:_=1,gesture:re,description:ie,tile:x,offsetX:S=0,offsetY:C=0,isDragging:w,onHide:ae,onShow:oe,onDragZone:se,onTap:T,adornmentHost:ce,flip:E,onKeyDownCapture:le,onFocus:ue,onBlur:de,loadingPanel:fe,...pe}=e,[D,O]=(0,d.useState)(!1),[k,me]=(0,d.useState)(null),[A,j]=(0,d.useState)(null),[M,N]=(0,d.useState)(null),[he,P]=(0,d.useReducer)(e=>e+1,0);r(h,{onAnyChange:P}),r(g??null,{onBoundsChange:P,onSelectionChange:P});let ge=i(),F=o(),I=h.toJSON(),{width:L,height:R,rotation:z}=te(g),B=L>0&&R>0,V=!!I.fill||!!I.stroke||I.geometry!==void 0&&I.geometry!==`rect`,_e=I.adjustments?JSON.stringify(I.adjustments):``,[H,U]=(0,d.useState)(null),[ve,W]=(0,d.useState)(!1);(0,d.useEffect)(()=>{if(!V||!B)return U(null),void W(!1);let e=!0;return h.getGeometry(L,R).then(t=>{e&&(U(t),W(!0))},()=>{e&&(U(null),W(!0))}),()=>{e=!1}},[h,V,B,I.geometry,_e]);let G=(0,d.useMemo)(()=>H&&B?H.getWidth()===L&&H.getHeight()===R?H:H.resize(L,R):null,[H,B,L,R]),[ye,be]=(0,d.useState)(null);(0,d.useEffect)(()=>{if(!x||!A)return;let e=!0,t=new Image;return t.src=A,(typeof t.decode==`function`?t.decode():Promise.resolve()).catch(()=>{}).then(()=>{e&&be(A)}),()=>{e=!1}},[x,A]),s(!D&&(x?ye!==A||!A:!k)||V&&B&&!ve);let K=ge?.getStyles()??null,q=(0,d.useMemo)(()=>V?ne({fill:I.fill,stroke:I.stroke,style:null},K):null,[V,I.fill,I.stroke,K]),J=`${(0,d.useId)().replace(/[^A-Za-z0-9_-]/g,``)}-clip`,Y=(0,d.useMemo)(()=>{if(!G||I.geometry===void 0||I.geometry===`rect`)return null;let e=[];return G.forEachPath(t=>{t.layer===`fill`&&e.push(t.d)}),e.length>0?e.join(` `):null},[G,I.geometry]),xe=E?.horizontal??!1,Se=E?.vertical??!1,Ce=(0,d.useMemo)(()=>z%360==0&&B?{dpr:a.getDevicePixelRatio(),zoom:_,width:L,height:R,flipH:xe,flipV:Se}:null,[z,B,_,L,R,xe,Se]),X=h.getHyperlink?.()??null,Z=u(l,null),Q=(0,d.useRef)(null);(0,d.useEffect)(()=>()=>{Q.current?.(),Z(e=>e===h?null:e)},[h,Z]),(0,d.useEffect)(()=>{X||Z(e=>e===h?null:e)},[!X,h,Z]);let $=(0,d.useCallback)(e=>{g?.unselect(),e.open().catch(e=>{F.showError?.(e instanceof Error?e:String(e))})},[g,F]);(0,d.useEffect)(()=>{T?.(()=>{let e=h.getHyperlink?.();return!!e&&($(e),!0)})},[T,h,$]),(0,d.useEffect)(()=>{j(null),h.getDetails().then(e=>{O(!1),j(e.asUrl()),N(e.asSVGText?.()||null)}).catch(e=>{console.warn(e),O(!0),j(v),N(null)})},[h,he]);let we=c(t,()=>({isPictureEditor:()=>!0}),[]),Te=I.image?.sourceRect,Ee=(0,d.useMemo)(()=>(e=>{let{left:t=0,top:n=0,right:r=0,bottom:i=0}=e??{},a=(100-t-r)/100,o=(100-n-i)/100;return{left:-t/a+`%`,top:-n/o+`%`,width:100/a+`%`,height:100/o+`%`}})(Te),[Te]),De=(0,d.useMemo)(()=>{if(A||M)return x?(0,f.jsx)(`div`,{style:{backgroundPosition:`${S}px ${C}px`,backgroundImage:`url(${A})`,backgroundRepeat:`repeat`,backgroundSize:`auto`,width:`100%`,height:`100%`,filter:`var(--_sxl-image-filter)`}}):(0,f.jsx)(`img`,{style:{position:`absolute`,...D?y:Ee,border:D?`var(--sxl-color-neutral, grey) solid 1px`:void 0,backgroundColor:D?`var(--sxl-color-base-100, white)`:void 0,boxShadow:D?`0px 0px 3px var(--sxl-color-error, red)`:void 0,objectFit:D?`contain`:void 0,opacity:+!!k,filter:`var(--_sxl-image-filter)`},draggable:!1,src:A??void 0,onLoad:()=>{me(!0)},onError:({currentTarget:e})=>{console.log(`error`),e.onerror=null,j(v),O(!0)},alt:ie??`${h.getType()}`})},[k,h,A,M,w,x,S,C,Ee,D,ie]);if(h.isDeleted())return;let Oe=E&&(E.horizontal||E.vertical)?`scale(${E.horizontal?-1:1}, ${E.vertical?-1:1})`:void 0,ke=m?.pointerEvents===`none`?`none`:`visiblePainted`,{left:Ae=0,top:je=0,right:Me=0,bottom:Ne=0}=I.image?.stretch??{};return(0,f.jsxs)(`div`,{className:`sxl-picture-editor`,style:{position:`relative`,display:`flex`,flex:`1 1 100%`,filter:w?`drop-shadow(1px 1px 1.5px var(--sxl-color-shadow, rgba(0, 0, 0, .25)))`:void 0,transform:Oe,transformOrigin:`center`,...m,pointerEvents:`none`,width:`100%`,height:`100%`},...pe,onPointerDownCapture:X?e=>{if(e.button!==0||e.ctrlKey||e.metaKey||e.shiftKey||!g||g.isSelected())return;Q.current?.();let t=e.currentTarget.ownerDocument,{pointerId:n,clientX:r,clientY:i,timeStamp:a}=e.nativeEvent,o=e=>{if(e.pointerId!==n||(Q.current?.(),!(Math.abs(e.clientX-r)<=4&&Math.abs(e.clientY-i)<=4&&e.timeStamp-a<=500)))return;let t=h.getHyperlink();t&&$(t)},s=e=>{e.pointerId===n&&Q.current?.()};t.addEventListener(`pointerup`,o),t.addEventListener(`pointercancel`,s),Q.current=()=>{Q.current=null,t.removeEventListener(`pointerup`,o),t.removeEventListener(`pointercancel`,s)}}:void 0,onPointerEnter:X?()=>{Z(h)}:void 0,onPointerLeave:X?()=>{Z(e=>e===h?null:e)}:void 0,onKeyDownCapture:e=>{le?.(e)},ref:we,children:[G&&q?(0,f.jsx)(`svg`,{className:`sxl-picture-fill`,viewBox:`0 0 ${L} ${R}`,preserveAspectRatio:`none`,overflow:`visible`,style:b,children:(0,f.jsx)(ee,{geometry:G,style:{...q,stroke:null,strokeGradient:void 0,strokeWidth:0},zoom:_,grid:Ce,hit:ke})}):null,Y?(0,f.jsx)(`svg`,{width:0,height:0,style:{position:`absolute`},"aria-hidden":!0,children:(0,f.jsx)(`defs`,{children:(0,f.jsx)(`clipPath`,{id:J,clipPathUnits:`objectBoundingBox`,children:(0,f.jsx)(`path`,{d:Y,transform:`scale(${1/L} ${1/R})`})})})}):null,(0,f.jsx)(`div`,{className:`sxl-picture-clip`,style:{position:`absolute`,...y,clipPath:Y?`url(#${J})`:void 0,pointerEvents:m?.pointerEvents??`auto`,cursor:X&&!g?.isSelected()?`pointer`:void 0},children:(0,f.jsxs)(`div`,{className:`sxl-picture-image`,style:{position:`absolute`,left:`${Ae}%`,top:`${je}%`,right:`${Me}%`,bottom:`${Ne}%`,overflow:`hidden`},children:[k||D?void 0:fe,De]})}),G&&q&&q.strokeWidth>0?(0,f.jsx)(`svg`,{className:`sxl-picture-border`,viewBox:`0 0 ${L} ${R}`,preserveAspectRatio:`none`,overflow:`visible`,style:b,children:(0,f.jsx)(ee,{geometry:G,style:{...q,fill:null,gradient:void 0,image:void 0},zoom:_,grid:Ce,hit:ke})}):null]})}));re.displayName=`PictureEditor`;export{_ as i,g as n,h as r,re as t};
@@ -1 +1 @@
1
- import{n as e}from"./CbXtAM7H-Jg_J0dk.js";import{i as t,t as n}from"./gU2zeJaXoNh7QI_e.js";import{F as r}from"./D4RZZdlItfrgQHcE.js";import{$ as i}from"./DJebrQ5mu8uxpX3b.js";import{L as a}from"./jteb4n23QwBT9m_4.js";import{$ as o,G as s,Q as c,bt as l,rt as u}from"./COL9dj40ytErlGak.js";import{r as d}from"./DYYzsN95gWMsxOaj.js";var f=e(t(),1),p=n(),m=e=>{let[t]=a(`movable-drag`,null),n=e?t?.[e.getId()]:void 0,r=n?.bounds??e?.getBounds();return{width:r?.width??0,height:r?.height??0,rotation:n?.rotation??(e?.getRotation()||0),content:n?.content??null}},h=96/72,g=(e,t)=>{if(typeof e!=`string`||!e)return null;try{return(t?t.parseColor(e):new l(e))?.toCSS(`adaptive`)??null}catch{return null}},_=e=>{if(!e)return null;switch(e.type){case c.Type.Solid:return e.color??null;case c.Type.Gradient:{let t=e.stops?.[0];return(typeof t==`string`?t:t?.color)??null}case c.Type.Pattern:return e.foreground??e.background??null;case c.Type.Image:default:return null}},v=e=>Math.max(0,Math.min(1,e??0)),y=e=>{let t=e.stops??[];if(t.length<2)return null;let n=t.length-1,r=[];for(let e=0;e<t.length;e++){let i=t[e],a=typeof i==`string`?i:i?.color;if(!a)return null;let o=typeof i==`object`&&typeof i.offset==`number`?i.offset:e/n;r.push({offset:v(o),color:a})}if(r.sort((e,t)=>e.offset-t.offset),(e.gradientType??c.GradientType.Linear)===c.GradientType.Linear)return{kind:`linear`,angle:(((e.angle??0)-90)%360+360)%360,scaled:e.scaled??!0,stops:r};let i=e.focus,a=v(i?.left),o=v(i?.top),s=v(i?.right),l=v(i?.bottom);if(a>s||o>l)return null;let u=(a+s)/2,d=(o+l)/2,f=Math.max(u,1-u),p=Math.max(d,1-d);return{kind:`radial`,cx:u,cy:d,r:Math.hypot(f,p),stops:r}},b=s.inheritedGroupFill,x=(e,t,n,r)=>{let i=null;try{i=t?.getTheme()?.toJSON()??null}catch{i=null}let a=s.resolve(e,i,r),{stroke:o}=a,l=e=>g(e,t),f=d.toConcreteFill(a.fill,l),p=d.toConcreteFill(o?.fill,l),m=_(p),v=p?.type===c.Type.Gradient?y(p)??void 0:void 0,b=_(f),x=f?.type===c.Type.Gradient?y(f)??void 0:void 0,S;if(f?.type===c.Type.Image){let e=f.resId===void 0?null:n?.(f.resId)??null;e&&(S={resource:e,fill:f})}return{fill:b,gradient:x,image:S,stroke:m,strokeGradient:v,strokeWidth:m?Math.max(0,a.strokeWidth)*h:0,lineJoin:o?.lineJoin??`miter`,lineCap:o?.lineCap??`butt`,miterLimit:typeof o?.miterLimit==`number`?o.miterLimit:18.5,dash:u.toDashLengths(o?.dash),textColor:g(a.fontColor,t)}},S=/[MLQCAZ]|[-+]?(?:\d+\.?\d*|\.\d+)(?:[eE][-+]?\d+)?/g,C={M:1,L:1,Q:2,C:3,A:1,Z:0},w=e=>String(Math.round(1e5*e)/1e5),T=e=>{let t=e.match(S)??[],n=[],r=[],i=[],a={x:0,y:0},o=null,s=0,c=null;for(;s<t.length;){let e=t[s];if(C[e]!==void 0)c=e,s++;else if(c===`M`)c=`L`;else if(c===null||c===`Z`)break;if(c===`Z`){o&&=(r.push({from:a,to:o}),i.push(a),n.push({c,pts:[]}),a=o,null);continue}let l=c===`A`?t.slice(s,s+5):void 0;l&&(s+=5);let u=[];for(let e=0;e<C[c];e++)u.push({x:Number(t[s++]),y:Number(t[s++])});let d=u[u.length-1];if(!d||Number.isNaN(d.x)||Number.isNaN(d.y))break;c===`M`?(o&&i.push(a),o=d,i.push(d)):(c===`L`&&r.push({from:a,to:d}),o||(o=a,i.push(a))),n.push({c,pts:u,arc:l}),a=d}return o&&i.push(a),{cmds:n,straight:r,ends:i}},E=e=>{let t=[];for(let n of e){let e=n.pts.map(e=>`${w(e.x)} ${w(e.y)}`).join(` `);t.push(n.c===`Z`?`Z`:`${n.c}${n.arc?`${n.arc.join(` `)} `:``}${e}`)}return t.join(` `)},D=1e-6,O=(e,t,n,r,a)=>{let o=r?(a-e)*t.zoom:e*t.zoom,s=i.snapLineCenter(o,n,t.dpr);return r?a-s/t.zoom:s/t.zoom},k=(e,t,n)=>{let r=T(e),i=r.ends.map(e=>({x:e.x,y:e.y})),a=n*t.zoom,o=[];for(let e of r.straight){let t=Math.abs(e.to.y-e.from.y)<D;t!==Math.abs(e.to.x-e.from.x)<D&&o.push({seg:e,level:t,at:t?e.from.y:e.from.x})}for(let{seg:e,level:n,at:r}of o)n?e.from.y=e.to.y=O(r,t,a,t.flipV,t.height):e.from.x=e.to.x=O(r,t,a,t.flipH,t.width);let s=[];return r.ends.forEach((e,t)=>{let n={x:e.x-i[t].x,y:e.y-i[t].y};n.x===0&&n.y===0||s.push({at:i[t],by:n})}),{d:E(r.cmds),ends:s}},A=(e,t)=>{if(t.length===0)return e;let n=T(e),r=[],i=null,a=new Set,o=()=>{if(!i)return;let e=null,n=1/0;for(let r of t){let t=Math.hypot(r.at.x-i.x,r.at.y-i.y);t<n&&(e=r,n=t)}for(let t of r)a.has(t)||(a.add(t),t.x+=e.by.x,t.y+=e.by.y);r=[],i=null};for(let e of n.cmds){e.c===`M`&&(o(),i=e.pts[0]);for(let t of e.pts)r.push(t)}return o(),E(n.cmds)},j=new WeakMap,M={filter:`var(--_sxl-image-filter)`},N=e=>{let[t,n]=(0,f.useState)(null);return(0,f.useEffect)(()=>{if(!e)return;let t=!0;return(e=>{let t=j.get(e);return t||(t=(async()=>{let t=await e.getExternalURI();if(t)return t;let[n,i]=await Promise.all([e.toBuffer(),e.getType()]);return`data:${i?.mime??`image/png`};base64,${r.arrayBufferToBase64(n)}`})(),j.set(e,t)),t})(e).then(r=>{t&&n({resource:e,url:r})},()=>{}),()=>{t=!1}},[e]),e&&t?.resource===e?t.url:null},P=(e,t,n,r)=>{let i=t.stops.map((e,t)=>(0,p.jsx)(`stop`,{offset:e.offset,stopColor:e.color},t));if(t.kind===`linear`){let a=t.angle*Math.PI/180,o=Math.cos(a),s=Math.sin(a);if(t.scaled){o*=n,s*=r;let e=Math.hypot(o,s)||1;o/=e,s/=e}let c=(Math.abs(n*o)+Math.abs(r*s))/2,l=n/2,u=r/2;return(0,p.jsx)(`linearGradient`,{id:e,gradientUnits:`userSpaceOnUse`,x1:l-c*o,y1:u-c*s,x2:l+c*o,y2:u+c*s,children:i},e)}return(0,p.jsx)(`radialGradient`,{id:e,gradientUnits:`userSpaceOnUse`,cx:t.cx*n,cy:t.cy*n,r:t.r*n,gradientTransform:`scale(1 ${r/n})`,children:i},e)},F=(0,f.memo)(({paths:e,style:t,width:n,height:r,zoom:a,grid:s,hit:c})=>{let l=(0,f.useId)().replace(/[^A-Za-z0-9_-]/g,``),u=N(t.image?.resource??null),d=((e,t,n=1)=>{let r=(t>0?t:1)*(n>0?n:1);return Math.max(1,Math.round(Math.max(0,e||0)*r))/r})(t.strokeWidth,a,s?.dpr??i.getDevicePixelRatio()),m=n>0&&r>0,h=m?t.gradient??null:null,g=m?t.strokeGradient??null:null,_=t.image?u?`url(#${l}-image)`:null:h?`url(#${l}-fill)`:t.fill,v=g?`url(#${l}-stroke)`:t.stroke,y=t.stroke!==null&&d>0,b=y?((e,t,n)=>{if(!(e&&t>0))return;let r=n!==`butt`,i=e.map((e,n)=>{let i=e*t;return r?n%2==0?Math.max(0,i-t):i+t:i});return i.length%2==1&&i.push(r?t:0),i.map(e=>+e.toFixed(3)).join(` `)})(t.dash,d,t.lineCap):void 0,x=(0,f.useMemo)(()=>((e,t,n)=>{let r=new Map;if(!t)return r;let i=new Map,a=[];for(let s of e){if(s.layer!==o.PathLayer.Stroke)continue;let e=i.get(s.d);if(e===void 0){let r=k(s.d,t,n);e=r.d,i.set(s.d,e),a.push(...r.ends)}r.set(s.index,e)}for(let t of e)if(t.layer===o.PathLayer.Fill){let e=i.get(t.d);e!==void 0&&r.set(t.index,e)}else t.layer===o.PathLayer.Marker&&r.set(t.index,A(t.d,a));return r})(e,y?s:null,d),[e,y,s,d]),S=new Set,C=[];for(let n of e){let e=`p${n.index}`,r=x.get(n.index)??n.d;switch(n.layer){case o.PathLayer.Fill:if(_===null)break;n.fill!==`norm`&&S.add(n.fill),C.push((0,p.jsx)(`path`,{d:r,fill:_,filter:n.fill===`norm`?void 0:`url(#${l}-${n.fill})`,stroke:`none`,pointerEvents:c},e));break;case o.PathLayer.Stroke:{if(!y)break;let n=8/(a>0?a:1);c!==`none`&&n>d&&C.push((0,p.jsx)(`path`,{className:`sxl-shape-hit`,d:r,fill:`none`,stroke:`transparent`,strokeWidth:n,strokeLinejoin:`round`,strokeLinecap:`round`,pointerEvents:`stroke`},`${e}-hit`)),C.push((0,p.jsx)(`path`,{d:r,fill:`none`,stroke:v,strokeWidth:d,strokeLinejoin:t.lineJoin,strokeLinecap:t.lineCap,strokeMiterlimit:t.lineJoin===`miter`?t.miterLimit:void 0,strokeDasharray:b,pointerEvents:c===`none`?`none`:`visibleStroke`},e));break}case o.PathLayer.Marker:y&&C.push((0,p.jsx)(`path`,{d:r,fill:v,stroke:`none`,pointerEvents:c},e))}}let w=[];for(let e of S){let[t,n]=o.FillTransfer[e];w.push((0,p.jsx)(`filter`,{id:`${l}-${e}`,colorInterpolationFilters:`sRGB`,children:(0,p.jsxs)(`feComponentTransfer`,{children:[(0,p.jsx)(`feFuncR`,{type:`linear`,slope:t,intercept:n}),(0,p.jsx)(`feFuncG`,{type:`linear`,slope:t,intercept:n}),(0,p.jsx)(`feFuncB`,{type:`linear`,slope:t,intercept:n})]})},e))}if(h&&!t.image&&w.push(P(`${l}-fill`,h,n,r)),g&&y&&w.push(P(`${l}-stroke`,g,n,r)),t.image&&u){let e=t.image.fill.stretch??{},i=n*(e.left??0)/100,a=r*(e.top??0)/100,o=Math.max(0,n-i-n*(e.right??0)/100),s=Math.max(0,r-a-r*(e.bottom??0)/100);w.push((0,p.jsx)(`pattern`,{id:`${l}-image`,patternUnits:`userSpaceOnUse`,x:0,y:0,width:Math.max(n,1),height:Math.max(r,1),children:(0,p.jsx)(`image`,{href:u,x:i,y:a,width:o,height:s,preserveAspectRatio:`none`,style:M})},`image`))}return(0,p.jsxs)(p.Fragment,{children:[w.length>0?(0,p.jsx)(`defs`,{children:w}):null,C]})});F.displayName=`PathRun`;var I=(0,f.memo)(({geometry:e,style:t,zoom:n,grid:r=null,hit:i})=>{let a=(0,f.useMemo)(()=>{let t=[];return e.forEachPath(e=>t.push(e)),t},[e]);return(0,p.jsx)(F,{paths:a,style:t,width:e.getWidth(),height:e.getHeight(),zoom:n,grid:r,hit:i})});I.displayName=`ShapePaths`;export{I as i,m as n,x as r,b as t};
1
+ import{n as e}from"./CbXtAM7H-Jg_J0dk.js";import{i as t,t as n}from"./gU2zeJaXoNh7QI_e.js";import{F as r}from"./D4RZZdlItfrgQHcE.js";import{$ as i}from"./DwHci99xcnRTEcv5.js";import{L as a}from"./DszZ1A807YzTc0ek.js";import{$ as o,G as s,Q as c,bt as l,rt as u}from"./COL9dj40ytErlGak.js";import{r as d}from"./DYYzsN95gWMsxOaj.js";var f=e(t(),1),p=n(),m=e=>{let[t]=a(`movable-drag`,null),n=e?t?.[e.getId()]:void 0,r=n?.bounds??e?.getBounds();return{width:r?.width??0,height:r?.height??0,rotation:n?.rotation??(e?.getRotation()||0),content:n?.content??null}},h=96/72,g=(e,t)=>{if(typeof e!=`string`||!e)return null;try{return(t?t.parseColor(e):new l(e))?.toCSS(`adaptive`)??null}catch{return null}},_=e=>{if(!e)return null;switch(e.type){case c.Type.Solid:return e.color??null;case c.Type.Gradient:{let t=e.stops?.[0];return(typeof t==`string`?t:t?.color)??null}case c.Type.Pattern:return e.foreground??e.background??null;case c.Type.Image:default:return null}},v=e=>Math.max(0,Math.min(1,e??0)),y=e=>{let t=e.stops??[];if(t.length<2)return null;let n=t.length-1,r=[];for(let e=0;e<t.length;e++){let i=t[e],a=typeof i==`string`?i:i?.color;if(!a)return null;let o=typeof i==`object`&&typeof i.offset==`number`?i.offset:e/n;r.push({offset:v(o),color:a})}if(r.sort((e,t)=>e.offset-t.offset),(e.gradientType??c.GradientType.Linear)===c.GradientType.Linear)return{kind:`linear`,angle:(((e.angle??0)-90)%360+360)%360,scaled:e.scaled??!0,stops:r};let i=e.focus,a=v(i?.left),o=v(i?.top),s=v(i?.right),l=v(i?.bottom);if(a>s||o>l)return null;let u=(a+s)/2,d=(o+l)/2,f=Math.max(u,1-u),p=Math.max(d,1-d);return{kind:`radial`,cx:u,cy:d,r:Math.hypot(f,p),stops:r}},b=s.inheritedGroupFill,x=(e,t,n,r)=>{let i=null;try{i=t?.getTheme()?.toJSON()??null}catch{i=null}let a=s.resolve(e,i,r),{stroke:o}=a,l=e=>g(e,t),f=d.toConcreteFill(a.fill,l),p=d.toConcreteFill(o?.fill,l),m=_(p),v=p?.type===c.Type.Gradient?y(p)??void 0:void 0,b=_(f),x=f?.type===c.Type.Gradient?y(f)??void 0:void 0,S;if(f?.type===c.Type.Image){let e=f.resId===void 0?null:n?.(f.resId)??null;e&&(S={resource:e,fill:f})}return{fill:b,gradient:x,image:S,stroke:m,strokeGradient:v,strokeWidth:m?Math.max(0,a.strokeWidth)*h:0,lineJoin:o?.lineJoin??`miter`,lineCap:o?.lineCap??`butt`,miterLimit:typeof o?.miterLimit==`number`?o.miterLimit:18.5,dash:u.toDashLengths(o?.dash),textColor:g(a.fontColor,t)}},S=/[MLQCAZ]|[-+]?(?:\d+\.?\d*|\.\d+)(?:[eE][-+]?\d+)?/g,C={M:1,L:1,Q:2,C:3,A:1,Z:0},w=e=>String(Math.round(1e5*e)/1e5),T=e=>{let t=e.match(S)??[],n=[],r=[],i=[],a={x:0,y:0},o=null,s=0,c=null;for(;s<t.length;){let e=t[s];if(C[e]!==void 0)c=e,s++;else if(c===`M`)c=`L`;else if(c===null||c===`Z`)break;if(c===`Z`){o&&=(r.push({from:a,to:o}),i.push(a),n.push({c,pts:[]}),a=o,null);continue}let l=c===`A`?t.slice(s,s+5):void 0;l&&(s+=5);let u=[];for(let e=0;e<C[c];e++)u.push({x:Number(t[s++]),y:Number(t[s++])});let d=u[u.length-1];if(!d||Number.isNaN(d.x)||Number.isNaN(d.y))break;c===`M`?(o&&i.push(a),o=d,i.push(d)):(c===`L`&&r.push({from:a,to:d}),o||(o=a,i.push(a))),n.push({c,pts:u,arc:l}),a=d}return o&&i.push(a),{cmds:n,straight:r,ends:i}},E=e=>{let t=[];for(let n of e){let e=n.pts.map(e=>`${w(e.x)} ${w(e.y)}`).join(` `);t.push(n.c===`Z`?`Z`:`${n.c}${n.arc?`${n.arc.join(` `)} `:``}${e}`)}return t.join(` `)},D=1e-6,O=(e,t,n,r,a)=>{let o=r?(a-e)*t.zoom:e*t.zoom,s=i.snapLineCenter(o,n,t.dpr);return r?a-s/t.zoom:s/t.zoom},k=(e,t,n)=>{let r=T(e),i=r.ends.map(e=>({x:e.x,y:e.y})),a=n*t.zoom,o=[];for(let e of r.straight){let t=Math.abs(e.to.y-e.from.y)<D;t!==Math.abs(e.to.x-e.from.x)<D&&o.push({seg:e,level:t,at:t?e.from.y:e.from.x})}for(let{seg:e,level:n,at:r}of o)n?e.from.y=e.to.y=O(r,t,a,t.flipV,t.height):e.from.x=e.to.x=O(r,t,a,t.flipH,t.width);let s=[];return r.ends.forEach((e,t)=>{let n={x:e.x-i[t].x,y:e.y-i[t].y};n.x===0&&n.y===0||s.push({at:i[t],by:n})}),{d:E(r.cmds),ends:s}},A=(e,t)=>{if(t.length===0)return e;let n=T(e),r=[],i=null,a=new Set,o=()=>{if(!i)return;let e=null,n=1/0;for(let r of t){let t=Math.hypot(r.at.x-i.x,r.at.y-i.y);t<n&&(e=r,n=t)}for(let t of r)a.has(t)||(a.add(t),t.x+=e.by.x,t.y+=e.by.y);r=[],i=null};for(let e of n.cmds){e.c===`M`&&(o(),i=e.pts[0]);for(let t of e.pts)r.push(t)}return o(),E(n.cmds)},j=new WeakMap,M={filter:`var(--_sxl-image-filter)`},N=e=>{let[t,n]=(0,f.useState)(null);return(0,f.useEffect)(()=>{if(!e)return;let t=!0;return(e=>{let t=j.get(e);return t||(t=(async()=>{let t=await e.getExternalURI();if(t)return t;let[n,i]=await Promise.all([e.toBuffer(),e.getType()]);return`data:${i?.mime??`image/png`};base64,${r.arrayBufferToBase64(n)}`})(),j.set(e,t)),t})(e).then(r=>{t&&n({resource:e,url:r})},()=>{}),()=>{t=!1}},[e]),e&&t?.resource===e?t.url:null},P=(e,t,n,r)=>{let i=t.stops.map((e,t)=>(0,p.jsx)(`stop`,{offset:e.offset,stopColor:e.color},t));if(t.kind===`linear`){let a=t.angle*Math.PI/180,o=Math.cos(a),s=Math.sin(a);if(t.scaled){o*=n,s*=r;let e=Math.hypot(o,s)||1;o/=e,s/=e}let c=(Math.abs(n*o)+Math.abs(r*s))/2,l=n/2,u=r/2;return(0,p.jsx)(`linearGradient`,{id:e,gradientUnits:`userSpaceOnUse`,x1:l-c*o,y1:u-c*s,x2:l+c*o,y2:u+c*s,children:i},e)}return(0,p.jsx)(`radialGradient`,{id:e,gradientUnits:`userSpaceOnUse`,cx:t.cx*n,cy:t.cy*n,r:t.r*n,gradientTransform:`scale(1 ${r/n})`,children:i},e)},F=(0,f.memo)(({paths:e,style:t,width:n,height:r,zoom:a,grid:s,hit:c})=>{let l=(0,f.useId)().replace(/[^A-Za-z0-9_-]/g,``),u=N(t.image?.resource??null),d=((e,t,n=1)=>{let r=(t>0?t:1)*(n>0?n:1);return Math.max(1,Math.round(Math.max(0,e||0)*r))/r})(t.strokeWidth,a,s?.dpr??i.getDevicePixelRatio()),m=n>0&&r>0,h=m?t.gradient??null:null,g=m?t.strokeGradient??null:null,_=t.image?u?`url(#${l}-image)`:null:h?`url(#${l}-fill)`:t.fill,v=g?`url(#${l}-stroke)`:t.stroke,y=t.stroke!==null&&d>0,b=y?((e,t,n)=>{if(!(e&&t>0))return;let r=n!==`butt`,i=e.map((e,n)=>{let i=e*t;return r?n%2==0?Math.max(0,i-t):i+t:i});return i.length%2==1&&i.push(r?t:0),i.map(e=>+e.toFixed(3)).join(` `)})(t.dash,d,t.lineCap):void 0,x=(0,f.useMemo)(()=>((e,t,n)=>{let r=new Map;if(!t)return r;let i=new Map,a=[];for(let s of e){if(s.layer!==o.PathLayer.Stroke)continue;let e=i.get(s.d);if(e===void 0){let r=k(s.d,t,n);e=r.d,i.set(s.d,e),a.push(...r.ends)}r.set(s.index,e)}for(let t of e)if(t.layer===o.PathLayer.Fill){let e=i.get(t.d);e!==void 0&&r.set(t.index,e)}else t.layer===o.PathLayer.Marker&&r.set(t.index,A(t.d,a));return r})(e,y?s:null,d),[e,y,s,d]),S=new Set,C=[];for(let n of e){let e=`p${n.index}`,r=x.get(n.index)??n.d;switch(n.layer){case o.PathLayer.Fill:if(_===null)break;n.fill!==`norm`&&S.add(n.fill),C.push((0,p.jsx)(`path`,{d:r,fill:_,filter:n.fill===`norm`?void 0:`url(#${l}-${n.fill})`,stroke:`none`,pointerEvents:c},e));break;case o.PathLayer.Stroke:{if(!y)break;let n=8/(a>0?a:1);c!==`none`&&n>d&&C.push((0,p.jsx)(`path`,{className:`sxl-shape-hit`,d:r,fill:`none`,stroke:`transparent`,strokeWidth:n,strokeLinejoin:`round`,strokeLinecap:`round`,pointerEvents:`stroke`},`${e}-hit`)),C.push((0,p.jsx)(`path`,{d:r,fill:`none`,stroke:v,strokeWidth:d,strokeLinejoin:t.lineJoin,strokeLinecap:t.lineCap,strokeMiterlimit:t.lineJoin===`miter`?t.miterLimit:void 0,strokeDasharray:b,pointerEvents:c===`none`?`none`:`visibleStroke`},e));break}case o.PathLayer.Marker:y&&C.push((0,p.jsx)(`path`,{d:r,fill:v,stroke:`none`,pointerEvents:c},e))}}let w=[];for(let e of S){let[t,n]=o.FillTransfer[e];w.push((0,p.jsx)(`filter`,{id:`${l}-${e}`,colorInterpolationFilters:`sRGB`,children:(0,p.jsxs)(`feComponentTransfer`,{children:[(0,p.jsx)(`feFuncR`,{type:`linear`,slope:t,intercept:n}),(0,p.jsx)(`feFuncG`,{type:`linear`,slope:t,intercept:n}),(0,p.jsx)(`feFuncB`,{type:`linear`,slope:t,intercept:n})]})},e))}if(h&&!t.image&&w.push(P(`${l}-fill`,h,n,r)),g&&y&&w.push(P(`${l}-stroke`,g,n,r)),t.image&&u){let e=t.image.fill.stretch??{},i=n*(e.left??0)/100,a=r*(e.top??0)/100,o=Math.max(0,n-i-n*(e.right??0)/100),s=Math.max(0,r-a-r*(e.bottom??0)/100);w.push((0,p.jsx)(`pattern`,{id:`${l}-image`,patternUnits:`userSpaceOnUse`,x:0,y:0,width:Math.max(n,1),height:Math.max(r,1),children:(0,p.jsx)(`image`,{href:u,x:i,y:a,width:o,height:s,preserveAspectRatio:`none`,style:M})},`image`))}return(0,p.jsxs)(p.Fragment,{children:[w.length>0?(0,p.jsx)(`defs`,{children:w}):null,C]})});F.displayName=`PathRun`;var I=(0,f.memo)(({geometry:e,style:t,zoom:n,grid:r=null,hit:i})=>{let a=(0,f.useMemo)(()=>{let t=[];return e.forEachPath(e=>t.push(e)),t},[e]);return(0,p.jsx)(F,{paths:a,style:t,width:e.getWidth(),height:e.getHeight(),zoom:n,grid:r,hit:i})});I.displayName=`ShapePaths`;export{I as i,m as n,x as r,b as t};