@farm.js/core 0.1.35 → 0.1.37

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 (285) hide show
  1. package/dist/{metadata-BnLDsUOS.d.ts → agent-mcp-BC0bAGVF.d.mts} +45 -2
  2. package/dist/agent-mcp-handler-LPJ2CADR.mjs +19 -0
  3. package/dist/agent-mcp-handler-SJAHFSPI.cjs +19 -0
  4. package/dist/{metadata-WGpBYcGn.d.mts → agent-mcp-jyDHbQKe.d.ts} +45 -2
  5. package/dist/agent-runtime.cjs +6 -4
  6. package/dist/agent-runtime.d.mts +1 -1
  7. package/dist/agent-runtime.d.ts +1 -1
  8. package/dist/agent-runtime.mjs +5 -3
  9. package/dist/api/client.cjs +3 -3
  10. package/dist/api/client.mjs +2 -2
  11. package/dist/api/route-manager.cjs +9 -9
  12. package/dist/api/route-manager.d.mts +10 -4
  13. package/dist/api/route-manager.d.ts +10 -4
  14. package/dist/api/route-manager.mjs +8 -8
  15. package/dist/api/runtime.cjs +6 -6
  16. package/dist/api/runtime.d.mts +4 -62
  17. package/dist/api/runtime.d.ts +4 -62
  18. package/dist/api/runtime.mjs +5 -5
  19. package/dist/api.cjs +13 -12
  20. package/dist/api.d.mts +3 -3
  21. package/dist/api.d.ts +3 -3
  22. package/dist/api.mjs +12 -11
  23. package/dist/{app-BXB3JZYc.d.ts → app-CKO3iN1c.d.ts} +17 -3
  24. package/dist/{app-D_j9AAVL.d.mts → app-Cbkj9ufe.d.mts} +17 -3
  25. package/dist/app-markdown.cjs +6 -4
  26. package/dist/app-markdown.d.mts +3 -3
  27. package/dist/app-markdown.d.ts +3 -3
  28. package/dist/app-markdown.mjs +5 -3
  29. package/dist/{chunk-F7JZENPF.cjs → chunk-3A4KGQYI.cjs} +38 -30
  30. package/dist/{chunk-4MMGO7YW.cjs → chunk-3IP27TCG.cjs} +43 -32
  31. package/dist/{chunk-FDR64H6B.mjs → chunk-3KGDJLJK.mjs} +41 -2
  32. package/dist/{chunk-UJD4PHYB.mjs → chunk-4E5WBPEG.mjs} +72 -354
  33. package/dist/{chunk-KXWRO25S.cjs → chunk-4GPOC4LN.cjs} +3 -3
  34. package/dist/{chunk-Z2HLU4IX.cjs → chunk-4GWRFP22.cjs} +23 -2
  35. package/dist/{chunk-4KU5Q7C2.mjs → chunk-4P6ULFMD.mjs} +253 -67
  36. package/dist/chunk-4WQ6PGSJ.cjs +367 -0
  37. package/dist/{chunk-SMHH4VDG.mjs → chunk-4WVJLURN.mjs} +1 -1
  38. package/dist/{chunk-2F2ER724.cjs → chunk-5BXGGEC7.cjs} +27 -22
  39. package/dist/{chunk-3BHT4WMP.cjs → chunk-5D2JIPLH.cjs} +8 -8
  40. package/dist/{chunk-AHGECQEW.mjs → chunk-666CKENS.mjs} +1 -1
  41. package/dist/{chunk-GFHLGIYC.cjs → chunk-6LGFV2CQ.cjs} +8 -8
  42. package/dist/chunk-6SJ2KJTA.mjs +314 -0
  43. package/dist/{chunk-PFQKNERH.cjs → chunk-6TJITR2B.cjs} +457 -218
  44. package/dist/{chunk-73MC7ZL6.cjs → chunk-75X755YZ.cjs} +2 -2
  45. package/dist/{chunk-3UH7MRCP.cjs → chunk-7DWNJI73.cjs} +13 -13
  46. package/dist/{chunk-7L5V3KQO.cjs → chunk-7O5M4UKW.cjs} +2 -2
  47. package/dist/{chunk-BJPBQNIE.cjs → chunk-7SQ5SGYZ.cjs} +2 -2
  48. package/dist/{chunk-27ZWSI3W.cjs → chunk-ADOAUDQ6.cjs} +2 -2
  49. package/dist/{chunk-CP6X4AEU.mjs → chunk-AJQTP4OO.mjs} +1 -1
  50. package/dist/{chunk-YKX5BK66.cjs → chunk-ATWHHSY2.cjs} +7 -7
  51. package/dist/{chunk-EFCQPQMG.cjs → chunk-B5PFZLKV.cjs} +89 -8
  52. package/dist/{chunk-FNO7A7CM.cjs → chunk-BHY547NB.cjs} +34 -16
  53. package/dist/{chunk-JHWOVJ3M.mjs → chunk-BUGNQIHC.mjs} +5 -0
  54. package/dist/{chunk-7GLPRTTF.cjs → chunk-CGBDNNSM.cjs} +2 -2
  55. package/dist/chunk-CI6E3UOH.cjs +314 -0
  56. package/dist/{chunk-2G2NNLE2.mjs → chunk-CQMVIOYP.mjs} +5 -5
  57. package/dist/{chunk-X6W5FFH6.cjs → chunk-CVH2BXPY.cjs} +8 -8
  58. package/dist/{chunk-TKSCR644.cjs → chunk-D3C5LBQY.cjs} +2 -2
  59. package/dist/{chunk-PZNL3WEG.mjs → chunk-DMEPTZTI.mjs} +22 -11
  60. package/dist/chunk-DTSROJ5J.mjs +367 -0
  61. package/dist/{chunk-DBNKI4NF.cjs → chunk-ECKF2BAM.cjs} +6 -2
  62. package/dist/{chunk-GQ3Z3IZI.cjs → chunk-EMMQ64QW.cjs} +18 -18
  63. package/dist/{chunk-6DU6UFUE.mjs → chunk-EXG5LD6B.mjs} +16 -8
  64. package/dist/{chunk-HUMR6LSU.mjs → chunk-F5QO4FNE.mjs} +1 -1
  65. package/dist/{chunk-YULD7ICZ.mjs → chunk-FBOJ55OM.mjs} +1 -1
  66. package/dist/{chunk-IHNMMXHV.mjs → chunk-FGRYBX5X.mjs} +15 -10
  67. package/dist/{chunk-D227TIEN.cjs → chunk-FWE7LEQC.cjs} +13 -13
  68. package/dist/{chunk-3BU22U3M.cjs → chunk-G2TEB74S.cjs} +5 -2
  69. package/dist/{chunk-G5RT7EXW.mjs → chunk-HEVMCTSR.mjs} +21 -6
  70. package/dist/{chunk-W7LF2J2S.mjs → chunk-HMRSWN47.mjs} +1 -1
  71. package/dist/{chunk-JG6DJF5A.mjs → chunk-HZFM2LWQ.mjs} +22 -1
  72. package/dist/{chunk-UAORZ7QA.mjs → chunk-IAIYV4RZ.mjs} +2 -2
  73. package/dist/{chunk-F2SE2VDO.mjs → chunk-IHQIOZLC.mjs} +1 -1
  74. package/dist/{chunk-2NNMOPDN.mjs → chunk-J3ANCZKA.mjs} +4 -1
  75. package/dist/{chunk-C4SPBWFM.cjs → chunk-JEZO6VUR.cjs} +10 -1
  76. package/dist/{chunk-SC2WYWPF.mjs → chunk-JPNFPAZ4.mjs} +3 -3
  77. package/dist/{chunk-F6Z3Y5KL.mjs → chunk-K3SAEIM3.mjs} +5 -2
  78. package/dist/{chunk-QAU5JD57.mjs → chunk-K4I4O5TS.mjs} +289 -50
  79. package/dist/{chunk-KN7K4VQN.mjs → chunk-KDTBF3UU.mjs} +1 -1
  80. package/dist/{chunk-OMVAU7NT.cjs → chunk-KIIMAWOJ.cjs} +11 -1
  81. package/dist/{chunk-43FMW62B.mjs → chunk-KMTGADN3.mjs} +28 -0
  82. package/dist/{chunk-QORUJDIV.mjs → chunk-KPFKMDM7.mjs} +2 -2
  83. package/dist/{chunk-YSCV4SJF.cjs → chunk-L5H2GSUC.cjs} +4 -4
  84. package/dist/{chunk-YDQZGSDS.mjs → chunk-LBDP3YT3.mjs} +1 -1
  85. package/dist/{chunk-6ETPZTJI.mjs → chunk-LBGILORX.mjs} +116 -55
  86. package/dist/{chunk-IPXLADVO.cjs → chunk-LOFKRKO7.cjs} +122 -61
  87. package/dist/{chunk-ULAWS2PA.cjs → chunk-LPFV45AY.cjs} +29 -26
  88. package/dist/{chunk-3KZS4SUS.mjs → chunk-MCIZVNOQ.mjs} +1 -1
  89. package/dist/{chunk-RU3M2FIK.cjs → chunk-MRMI32SN.cjs} +87 -369
  90. package/dist/{chunk-XCMCS4DA.mjs → chunk-ND2CWPOD.mjs} +2 -2
  91. package/dist/{chunk-XCACDAZZ.cjs → chunk-NDILNQ4L.cjs} +25 -10
  92. package/dist/{chunk-6TJOML4E.mjs → chunk-NFMDCAOS.mjs} +14 -11
  93. package/dist/{chunk-UXFQ3UDA.cjs → chunk-NICDYKBS.cjs} +42 -3
  94. package/dist/{chunk-EZDQRNQ7.mjs → chunk-NNSAQX3U.mjs} +23 -5
  95. package/dist/{chunk-YC6V7PWE.cjs → chunk-NQ6QFZWD.cjs} +1 -1
  96. package/dist/{chunk-PDOCJ6RY.mjs → chunk-O6WAEAX3.mjs} +1 -1
  97. package/dist/{chunk-U4KT7QP3.cjs → chunk-OW67PDDS.cjs} +14 -1
  98. package/dist/{chunk-77GNHH2Z.cjs → chunk-PMQHMWZU.cjs} +3 -3
  99. package/dist/chunk-PTZ2TVNE.cjs +178 -0
  100. package/dist/{chunk-6WCPV6G2.mjs → chunk-Q2KB32T4.mjs} +1 -1
  101. package/dist/{chunk-ICUQICNC.cjs → chunk-Q5FYSK45.cjs} +718 -532
  102. package/dist/{chunk-5SJWVY6R.mjs → chunk-QHSH7IH4.mjs} +9 -0
  103. package/dist/{chunk-Q3VLETLE.mjs → chunk-RRMVL6CJ.mjs} +4 -4
  104. package/dist/{chunk-IZY3V5XW.mjs → chunk-S3VWVTVA.mjs} +14 -1
  105. package/dist/{chunk-FFFW3OQ7.cjs → chunk-S6FJO323.cjs} +2 -2
  106. package/dist/{chunk-VFQT3LAO.cjs → chunk-SDOTRX3V.cjs} +5 -5
  107. package/dist/chunk-SGBZPZUW.mjs +75 -0
  108. package/dist/{chunk-BMWDEBXO.cjs → chunk-SHLXACIO.cjs} +31 -3
  109. package/dist/{chunk-ZXGAFZDO.cjs → chunk-T5OJPTVN.cjs} +2 -2
  110. package/dist/{chunk-2ELDTQRN.mjs → chunk-TDNWPAVR.mjs} +1 -1
  111. package/dist/{chunk-VZJR7UTG.cjs → chunk-TE2G5ION.cjs} +2 -2
  112. package/dist/{chunk-IHNIDL6H.cjs → chunk-TO4GJ56K.cjs} +22 -11
  113. package/dist/{chunk-4JHOT46A.mjs → chunk-TPLJVC7E.mjs} +86 -5
  114. package/dist/{chunk-NRSN7G7E.mjs → chunk-TW4GYDBJ.mjs} +1 -1
  115. package/dist/{chunk-XBML5KMG.cjs → chunk-U6MPZ35Q.cjs} +24 -14
  116. package/dist/chunk-UH6QN5NL.mjs +178 -0
  117. package/dist/{chunk-FTFYRMQQ.cjs → chunk-UJZLSXUB.cjs} +53 -28
  118. package/dist/chunk-UXHS27O6.cjs +75 -0
  119. package/dist/{chunk-DQQOKWYA.cjs → chunk-VR4GD5I3.cjs} +3 -3
  120. package/dist/{chunk-22LTEMGQ.mjs → chunk-VXAWRDK7.mjs} +14 -4
  121. package/dist/{chunk-62XKI4Z3.cjs → chunk-W2YDNK66.cjs} +6 -3
  122. package/dist/{chunk-VPTDD5XF.cjs → chunk-WBKEZXWE.cjs} +5 -0
  123. package/dist/{chunk-EJQT6KZN.cjs → chunk-WC5UV2HQ.cjs} +2 -2
  124. package/dist/{chunk-SAZVVAJH.mjs → chunk-WQ7T2263.mjs} +18 -7
  125. package/dist/chunk-WRPHYQVY.mjs +109 -0
  126. package/dist/chunk-WT4TGLXT.cjs +109 -0
  127. package/dist/{chunk-SOMHP6GF.mjs → chunk-XOPOIFTJ.mjs} +2 -2
  128. package/dist/{chunk-3PXS2MHU.mjs → chunk-YCKO6FRS.mjs} +1 -1
  129. package/dist/{chunk-C35ZBVRD.mjs → chunk-YWMZUGIS.mjs} +6 -2
  130. package/dist/{chunk-HMIJDL7S.mjs → chunk-Z5BEWYVO.mjs} +31 -6
  131. package/dist/{chunk-OKZUAXHF.mjs → chunk-Z7LA7MHQ.mjs} +1 -1
  132. package/dist/{chunk-Y7RKTKYI.mjs → chunk-ZMMBIVQM.mjs} +10 -0
  133. package/dist/{client-plugins-HIyulDym.d.ts → client-plugins-C8DjftDF.d.ts} +112 -5
  134. package/dist/{client-plugins-CvIslxWi.d.mts → client-plugins-CV4eJ9De.d.mts} +112 -5
  135. package/dist/client-plugins.d.mts +1 -1
  136. package/dist/client-plugins.d.ts +1 -1
  137. package/dist/client.cjs +8 -8
  138. package/dist/client.d.mts +5 -5
  139. package/dist/client.d.ts +5 -5
  140. package/dist/client.mjs +7 -7
  141. package/dist/config.d.mts +1 -1
  142. package/dist/config.d.ts +1 -1
  143. package/dist/{devtools-EAUY43BS.cjs → devtools-JXFQNWSH.cjs} +11 -10
  144. package/dist/{devtools-EE5RIBTH.mjs → devtools-KVOY2TCZ.mjs} +10 -9
  145. package/dist/docs.cjs +13 -12
  146. package/dist/docs.d.mts +2 -2
  147. package/dist/docs.d.ts +2 -2
  148. package/dist/docs.mjs +12 -11
  149. package/dist/headers.cjs +4 -4
  150. package/dist/headers.mjs +3 -3
  151. package/dist/i18n/client.cjs +11 -11
  152. package/dist/i18n/client.mjs +3 -3
  153. package/dist/image/server.cjs +3 -3
  154. package/dist/image/server.mjs +2 -2
  155. package/dist/image/sharp.cjs +10 -10
  156. package/dist/image/sharp.mjs +2 -2
  157. package/dist/index.cjs +61 -54
  158. package/dist/index.d.mts +14 -14
  159. package/dist/index.d.ts +14 -14
  160. package/dist/index.mjs +60 -53
  161. package/dist/integrations.cjs +8 -4
  162. package/dist/integrations.d.mts +1 -1
  163. package/dist/integrations.d.ts +1 -1
  164. package/dist/integrations.mjs +7 -3
  165. package/dist/internal/app-markdown-runtime.cjs +5 -3
  166. package/dist/internal/app-markdown-runtime.d.mts +19 -5
  167. package/dist/internal/app-markdown-runtime.d.ts +19 -5
  168. package/dist/internal/app-markdown-runtime.mjs +4 -2
  169. package/dist/internal/build-runtime.cjs +38 -34
  170. package/dist/internal/build-runtime.d.mts +3 -3
  171. package/dist/internal/build-runtime.d.ts +3 -3
  172. package/dist/internal/build-runtime.mjs +37 -33
  173. package/dist/internal/cli-runtime.cjs +17 -16
  174. package/dist/internal/cli-runtime.mjs +16 -15
  175. package/dist/internal/client-error-overlay.cjs +4 -4
  176. package/dist/internal/client-error-overlay.mjs +1 -1
  177. package/dist/internal/client-runtime.cjs +2 -2
  178. package/dist/internal/client-runtime.mjs +1 -1
  179. package/dist/internal/compression-runtime.d.mts +1 -1
  180. package/dist/internal/compression-runtime.d.ts +1 -1
  181. package/dist/internal/config-runtime.cjs +11 -10
  182. package/dist/internal/config-runtime.d.mts +2 -2
  183. package/dist/internal/config-runtime.d.ts +2 -2
  184. package/dist/internal/config-runtime.mjs +10 -9
  185. package/dist/internal/infra-analytics-runtime.cjs +5 -5
  186. package/dist/internal/infra-analytics-runtime.mjs +3 -3
  187. package/dist/internal/isolated-boundary.cjs +2 -2
  188. package/dist/internal/isolated-boundary.d.mts +0 -1
  189. package/dist/internal/isolated-boundary.d.ts +0 -1
  190. package/dist/internal/isolated-boundary.mjs +1 -1
  191. package/dist/internal/metadata-image-runtime.cjs +3 -3
  192. package/dist/internal/metadata-image-runtime.mjs +2 -2
  193. package/dist/internal/product-telemetry-runtime.cjs +2 -2
  194. package/dist/internal/product-telemetry-runtime.mjs +1 -1
  195. package/dist/internal/production-runtime.cjs +27 -48
  196. package/dist/internal/production-runtime.d.mts +67 -27
  197. package/dist/internal/production-runtime.d.ts +67 -27
  198. package/dist/internal/production-runtime.mjs +34 -55
  199. package/dist/{layers-BRQF5ETU.mjs → layers-UTB43B7A.mjs} +1 -1
  200. package/dist/layers-VUWIOFEO.cjs +18 -0
  201. package/dist/markdown.cjs +1 -1
  202. package/dist/markdown.d.mts +1 -1
  203. package/dist/markdown.d.ts +1 -1
  204. package/dist/markdown.mjs +1 -1
  205. package/dist/middleware.cjs +10 -10
  206. package/dist/middleware.d.mts +6 -4
  207. package/dist/middleware.d.ts +6 -4
  208. package/dist/middleware.mjs +9 -9
  209. package/dist/navigation.cjs +7 -7
  210. package/dist/navigation.d.mts +4 -4
  211. package/dist/navigation.d.ts +4 -4
  212. package/dist/navigation.mjs +6 -6
  213. package/dist/{nitro-OVPLKPE2.cjs → nitro-7F65EZZS.cjs} +3 -3
  214. package/dist/{nitro-MXRDCXWZ.mjs → nitro-MPZJGPXK.mjs} +2 -2
  215. package/dist/plugin.cjs +31 -28
  216. package/dist/plugin.d.mts +1 -1
  217. package/dist/plugin.d.ts +1 -1
  218. package/dist/plugin.mjs +30 -27
  219. package/dist/{production-runtime-Crq6CJ-2.d.ts → production-runtime-C2kkrPVZ.d.ts} +1 -1
  220. package/dist/{production-runtime-0sRnuYc-.d.mts → production-runtime-Du_FHb2-.d.mts} +1 -1
  221. package/dist/query/client.cjs +9 -9
  222. package/dist/query/client.mjs +4 -4
  223. package/dist/{render-plan-8ozZh2Qv.d.ts → render-plan-BnnPTpus.d.ts} +1 -1
  224. package/dist/{render-plan-gs9GGPzw.d.mts → render-plan-Cgx7v8tJ.d.mts} +1 -1
  225. package/dist/renderer/react/server.cjs +3 -3
  226. package/dist/renderer/react/server.mjs +1 -1
  227. package/dist/renderer-client.cjs +12 -12
  228. package/dist/renderer-client.d.mts +3 -3
  229. package/dist/renderer-client.d.ts +3 -3
  230. package/dist/renderer-client.mjs +4 -4
  231. package/dist/{request-B5G8rLBH.d.ts → request-BNWr7r5e.d.ts} +1 -1
  232. package/dist/{request-fkhiynXe.d.mts → request-sKayKcop.d.mts} +1 -1
  233. package/dist/request.cjs +3 -3
  234. package/dist/request.d.mts +2 -2
  235. package/dist/request.d.ts +2 -2
  236. package/dist/request.mjs +2 -2
  237. package/dist/{route-rendering-lS5nUMua.d.ts → route-rendering-Bx4Auw6Q.d.ts} +1 -1
  238. package/dist/{route-rendering-CLnS7AZj.d.mts → route-rendering-DWFp3Yq4.d.mts} +1 -1
  239. package/dist/{router-ifU8Dui1.d.mts → router-BK6K42Ij.d.mts} +1 -1
  240. package/dist/{router-4iuiYnOW.d.ts → router-DnW_2tQi.d.ts} +1 -1
  241. package/dist/routes.cjs +2 -2
  242. package/dist/routes.d.mts +1 -1
  243. package/dist/routes.d.ts +1 -1
  244. package/dist/routes.mjs +1 -1
  245. package/dist/runtime-CA3Ei5k_.d.ts +69 -0
  246. package/dist/runtime-DJDaCMd_.d.mts +69 -0
  247. package/dist/server-action-security.cjs +3 -3
  248. package/dist/server-action-security.mjs +2 -2
  249. package/dist/server-fn.cjs +5 -5
  250. package/dist/server-fn.mjs +4 -4
  251. package/dist/server-plugins.cjs +5 -5
  252. package/dist/server-plugins.d.mts +2 -2
  253. package/dist/server-plugins.d.ts +2 -2
  254. package/dist/server-plugins.mjs +4 -4
  255. package/dist/server-query.cjs +6 -6
  256. package/dist/server-query.mjs +5 -5
  257. package/dist/server.cjs +57 -54
  258. package/dist/server.d.mts +7 -7
  259. package/dist/server.d.ts +7 -7
  260. package/dist/server.mjs +35 -32
  261. package/dist/{spa-router-Bq7VCOwx.d.mts → spa-router-D6fUA4Rn.d.mts} +2 -2
  262. package/dist/{spa-router-DaJk5Re4.d.ts → spa-router-Mwbd7g2L.d.ts} +2 -2
  263. package/dist/testing.cjs +13 -13
  264. package/dist/testing.d.mts +1 -1
  265. package/dist/testing.d.ts +1 -1
  266. package/dist/testing.mjs +10 -10
  267. package/dist/theme/server.cjs +4 -4
  268. package/dist/theme/server.mjs +3 -3
  269. package/dist/{utils-BXLmFsVR.d.ts → utils-BwVcAfUR.d.ts} +1 -1
  270. package/dist/{utils-XJn0c9bj.d.mts → utils-p9Hs-jCc.d.mts} +1 -1
  271. package/dist/version.cjs +2 -2
  272. package/dist/version.mjs +1 -1
  273. package/dist/vite.cjs +31 -28
  274. package/dist/vite.d.mts +1 -1
  275. package/dist/vite.d.ts +1 -1
  276. package/dist/vite.mjs +30 -27
  277. package/dist/workflows.cjs +3 -3
  278. package/dist/workflows.mjs +2 -2
  279. package/package.json +1 -1
  280. package/types/middleware.d.ts +5 -1
  281. package/dist/chunk-FXEF4PPL.mjs +0 -47
  282. package/dist/chunk-XD32KALF.cjs +0 -47
  283. package/dist/layers-4PNE2HOY.cjs +0 -18
  284. /package/dist/{chunk-SJNMVDDF.cjs → chunk-FUCSUGDM.cjs} +0 -0
  285. /package/dist/{chunk-UDNPLXW7.mjs → chunk-MYIZXDZA.mjs} +0 -0
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-CBBLJMR5.mjs";
13
13
  import {
14
14
  resolveFarmRequestURL
15
- } from "./chunk-FDR64H6B.mjs";
15
+ } from "./chunk-3KGDJLJK.mjs";
16
16
  import {
17
17
  __name
18
18
  } from "./chunk-LPEX4YW6.mjs";
@@ -118,6 +118,15 @@ var DEFAULT_FARM_SERVER_REQUEST_TIMEOUT = 3e5;
118
118
  var DEFAULT_FARM_SERVER_KEEP_ALIVE_TIMEOUT = 5e3;
119
119
  var DEFAULT_FARM_SERVER_GRACEFUL_SHUTDOWN_TIMEOUT = 3e4;
120
120
  var MAX_FARM_SERVER_TIMEOUT = 2147483647;
121
+ function createFarmWeakETag(body) {
122
+ let hash = 2166136261;
123
+ for (let index = 0; index < body.length; index++) {
124
+ hash ^= body.charCodeAt(index);
125
+ hash = Math.imul(hash, 16777619);
126
+ }
127
+ return `W/"${(hash >>> 0).toString(16).padStart(8, "0")}"`;
128
+ }
129
+ _chunkS3JO3N4Hcjs.__name.call(void 0, createFarmWeakETag, "createFarmWeakETag");
121
130
  function matchesFarmIfNoneMatch(value, etag) {
122
131
  const expected = parseEntityTag(trimOptionalWhitespace(etag));
123
132
  if (!expected) return false;
@@ -492,4 +501,5 @@ _chunkS3JO3N4Hcjs.__name.call(void 0, throwIfAborted, "throwIfAborted");
492
501
 
493
502
 
494
503
 
495
- exports.setRequestContext = setRequestContext; exports.getRequestContext = getRequestContext; exports.hasRequestContext = hasRequestContext; exports.deleteRequestContext = deleteRequestContext; exports.clearRequestContext = clearRequestContext; exports.getRequestContextSnapshot = getRequestContextSnapshot; exports.copyRequestContext = copyRequestContext; exports.createFarmNodeRequestAbortSignal = createFarmNodeRequestAbortSignal; exports.DEFAULT_FARM_SERVER_BODY_SIZE_LIMIT = DEFAULT_FARM_SERVER_BODY_SIZE_LIMIT; exports.matchesFarmIfNoneMatch = matchesFarmIfNoneMatch; exports.resolveFarmServerConfig = resolveFarmServerConfig; exports.parseBodySizeLimit = parseBodySizeLimit; exports.cloneFarmRequestWithContext = cloneFarmRequestWithContext; exports.bufferFarmRequestBody = bufferFarmRequestBody; exports.readFarmRequestBody = readFarmRequestBody; exports.readNodeRequestBody = readNodeRequestBody; exports.createFarmNodeRequestBodyStream = createFarmNodeRequestBodyStream; exports.createFarmRequestBodyErrorResponse = createFarmRequestBodyErrorResponse;
504
+
505
+ exports.setRequestContext = setRequestContext; exports.getRequestContext = getRequestContext; exports.hasRequestContext = hasRequestContext; exports.deleteRequestContext = deleteRequestContext; exports.clearRequestContext = clearRequestContext; exports.getRequestContextSnapshot = getRequestContextSnapshot; exports.copyRequestContext = copyRequestContext; exports.createFarmNodeRequestAbortSignal = createFarmNodeRequestAbortSignal; exports.DEFAULT_FARM_SERVER_BODY_SIZE_LIMIT = DEFAULT_FARM_SERVER_BODY_SIZE_LIMIT; exports.createFarmWeakETag = createFarmWeakETag; exports.matchesFarmIfNoneMatch = matchesFarmIfNoneMatch; exports.resolveFarmServerConfig = resolveFarmServerConfig; exports.parseBodySizeLimit = parseBodySizeLimit; exports.cloneFarmRequestWithContext = cloneFarmRequestWithContext; exports.bufferFarmRequestBody = bufferFarmRequestBody; exports.readFarmRequestBody = readFarmRequestBody; exports.readNodeRequestBody = readNodeRequestBody; exports.createFarmNodeRequestBodyStream = createFarmNodeRequestBodyStream; exports.createFarmRequestBodyErrorResponse = createFarmRequestBodyErrorResponse;
@@ -34,6 +34,33 @@ async function loadFarmDevModule(server, id, environmentName = "ssr") {
34
34
  }
35
35
  }
36
36
  __name(loadFarmDevModule, "loadFarmDevModule");
37
+ function invalidateFarmDevDependents(server, file, targets, environmentName = "ssr") {
38
+ const environment = server.environments[environmentName];
39
+ const graph = environment?.moduleGraph;
40
+ if (!graph || targets.size === 0) return [];
41
+ const posix = /* @__PURE__ */ __name((filePath) => filePath.replace(/\\/g, "/"), "posix");
42
+ const byFile = new Map([...targets].map((target) => [posix(target), target]));
43
+ const reached = /* @__PURE__ */ new Set();
44
+ const seen = /* @__PURE__ */ new Set();
45
+ const queue = [...graph.getModulesByFile(posix(file)) ?? []];
46
+ while (queue.length > 0) {
47
+ const node = queue.pop();
48
+ if (seen.has(node)) continue;
49
+ seen.add(node);
50
+ const target = node.file ? byFile.get(posix(node.file)) : void 0;
51
+ if (target) reached.add(target);
52
+ queue.push(...node.importers);
53
+ }
54
+ if (reached.size === 0) return [];
55
+ const evaluatedModules = environment.runner?.evaluatedModules;
56
+ for (const node of seen) {
57
+ graph.invalidateModule(node);
58
+ const evaluated = node.id ? evaluatedModules?.getModuleById(node.id) : void 0;
59
+ if (evaluated) evaluatedModules.invalidateModule(evaluated);
60
+ }
61
+ return [...reached];
62
+ }
63
+ __name(invalidateFarmDevDependents, "invalidateFarmDevDependents");
37
64
  function invalidateFailedFarmDevModules(server) {
38
65
  for (const entry of Object.values(server.environments)) {
39
66
  const environment = entry;
@@ -62,6 +89,7 @@ __name(toFileModuleUrl, "toFileModuleUrl");
62
89
  export {
63
90
  FarmDevEnvironmentError,
64
91
  loadFarmDevModule,
92
+ invalidateFarmDevDependents,
65
93
  invalidateFailedFarmDevModules,
66
94
  toFileModuleUrl
67
95
  };
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  useRouter
3
- } from "./chunk-SC2WYWPF.mjs";
3
+ } from "./chunk-JPNFPAZ4.mjs";
4
4
  import {
5
5
  getRouter
6
- } from "./chunk-XCMCS4DA.mjs";
6
+ } from "./chunk-ND2CWPOD.mjs";
7
7
  import {
8
8
  applyFarmBasePath
9
9
  } from "./chunk-4RB44K6Z.mjs";
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
2
2
 
3
3
 
4
- var _chunkFFFW3OQ7cjs = require('./chunk-FFFW3OQ7.cjs');
4
+ var _chunkS6FJO323cjs = require('./chunk-S6FJO323.cjs');
5
5
 
6
6
 
7
7
  var _chunkS3JO3N4Hcjs = require('./chunk-S3JO3N4H.cjs');
@@ -14,10 +14,10 @@ var translate = /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, (key, valu
14
14
  const message = readOwnMessage(snapshot.messages, key);
15
15
  if (message === void 0) return key;
16
16
  const cacheKey = `${snapshot.locale}\0${key}\0${message}`;
17
- let formatter = _chunkFFFW3OQ7cjs.compiledFarmI18nMessages.get(cacheKey);
17
+ let formatter = _chunkS6FJO323cjs.compiledFarmI18nMessages.get(cacheKey);
18
18
  if (!formatter) {
19
19
  formatter = new (0, _intlmessageformat2.default)(message, snapshot.locale);
20
- _chunkFFFW3OQ7cjs.compiledFarmI18nMessages.set(cacheKey, formatter);
20
+ _chunkS6FJO323cjs.compiledFarmI18nMessages.set(cacheKey, formatter);
21
21
  }
22
22
  const result = formatter.format(values);
23
23
  if (rich) return Array.isArray(result) && result.length === 1 ? result[0] : result;
@@ -35,7 +35,7 @@ function createFarmClientTranslator() {
35
35
  }
36
36
  _chunkS3JO3N4Hcjs.__name.call(void 0, createFarmClientTranslator, "createFarmClientTranslator");
37
37
  function requireSnapshot() {
38
- const snapshot = _chunkFFFW3OQ7cjs.getFarmI18nClientState.call(void 0, );
38
+ const snapshot = _chunkS6FJO323cjs.getFarmI18nClientState.call(void 0, );
39
39
  if (!snapshot) {
40
40
  throw new Error("Farm i18n is not configured or has not been hydrated.");
41
41
  }
@@ -34,7 +34,7 @@ import {
34
34
  } from "./chunk-4SIYUGRY.mjs";
35
35
  import {
36
36
  _resolveCurrentRequest
37
- } from "./chunk-IZY3V5XW.mjs";
37
+ } from "./chunk-S3VWVTVA.mjs";
38
38
  import {
39
39
  __name
40
40
  } from "./chunk-LPEX4YW6.mjs";
@@ -1,9 +1,12 @@
1
+ import {
2
+ FARM_DEFAULT_MCP_TOOLS
3
+ } from "./chunk-UH6QN5NL.mjs";
1
4
  import {
2
5
  DEFAULT_ERROR_STYLES
3
6
  } from "./chunk-XAXTTBUT.mjs";
4
7
  import {
5
8
  serializeFarmLlmsTxt
6
- } from "./chunk-UJD4PHYB.mjs";
9
+ } from "./chunk-DTSROJ5J.mjs";
7
10
  import {
8
11
  emitFarmAgentRead
9
12
  } from "./chunk-MVL2RAJW.mjs";
@@ -18,15 +21,16 @@ import {
18
21
  _listFarmRegisteredMCPServers
19
22
  } from "./chunk-ZLAT2CWY.mjs";
20
23
  import {
24
+ createFarmWeakETag,
21
25
  matchesFarmIfNoneMatch
22
- } from "./chunk-Y7RKTKYI.mjs";
26
+ } from "./chunk-ZMMBIVQM.mjs";
23
27
  import {
24
28
  resolveFarmAPIServerBasePath,
25
29
  resolveFarmAPIServerRoutePath
26
30
  } from "./chunk-BTHHUD7Q.mjs";
27
31
  import {
28
32
  FARM_VERSION
29
- } from "./chunk-3PXS2MHU.mjs";
33
+ } from "./chunk-YCKO6FRS.mjs";
30
34
  import {
31
35
  localizeFarmPathname
32
36
  } from "./chunk-L3KT7IXV.mjs";
@@ -153,7 +157,7 @@ function ensureFarmDocumentHead(markup) {
153
157
  }
154
158
  __name(ensureFarmDocumentHead, "ensureFarmDocumentHead");
155
159
  function ensureFarmDocumentRoot(markup) {
156
- if (/\sid=["']root["']/i.test(markup)) return markup;
160
+ if (/<body\b[^>]*>\s*<div\b[^>]*\sid=["']root["']/i.test(markup)) return markup;
157
161
  return markup.replace(
158
162
  /<body\b([^>]*)>/i,
159
163
  (_match, attributes) => `<body${attributes}><div id="root">`
@@ -436,6 +440,13 @@ function listFarmMCPServerSources(input) {
436
440
  if (sources.has(endpoint)) continue;
437
441
  sources.set(endpoint, { ...server, endpoint, local: Boolean(server.path) });
438
442
  }
443
+ if (sources.size === 0 && input.defaultMCP) {
444
+ const server = input.defaultMCP();
445
+ if (server) {
446
+ const endpoint = applyFarmBasePath(server.path, input.basePath);
447
+ sources.set(endpoint, { ...server, endpoint, local: true });
448
+ }
449
+ }
439
450
  return [...sources.values()];
440
451
  }
441
452
  __name(listFarmMCPServerSources, "listFarmMCPServerSources");
@@ -526,7 +537,7 @@ function createFarmAiCatalogResponse(request, input = {}, requestUrl) {
526
537
  const body = JSON.stringify(
527
538
  card ? card.card : { specVersion: "1.0", entries: servers.map(({ entry }) => entry) }
528
539
  );
529
- const etag = `W/"${fnv1a(body)}"`;
540
+ const etag = createFarmWeakETag(body);
530
541
  const headers = {
531
542
  ...corsHeaders(),
532
543
  "Content-Type": card ? `${SERVER_CARD_TYPE}; charset=utf-8` : ard ? "application/json; charset=utf-8" : `${AI_CATALOG_TYPE}; charset=utf-8`,
@@ -565,15 +576,6 @@ function truncate(text) {
565
576
  return text.length <= CARD_DESCRIPTION_MAX ? text : `${text.slice(0, CARD_DESCRIPTION_MAX - 1).trimEnd()}\u2026`;
566
577
  }
567
578
  __name(truncate, "truncate");
568
- function fnv1a(value) {
569
- let hash = 2166136261;
570
- for (let index = 0; index < value.length; index++) {
571
- hash ^= value.charCodeAt(index);
572
- hash = Math.imul(hash, 16777619);
573
- }
574
- return (hash >>> 0).toString(16).padStart(8, "0");
575
- }
576
- __name(fnv1a, "fnv1a");
577
579
 
578
580
  // src/components/error-page.ts
579
581
  var ERROR_STATUS_TEXT = {
@@ -868,7 +870,12 @@ function createFarmApiCatalogResponse(method, input, request) {
868
870
  __name(createFarmApiCatalogResponse, "createFarmApiCatalogResponse");
869
871
 
870
872
  // src/app-manifest.ts
871
- var FARM_APP_MANIFEST_PATH = "/.well-known/farmjs";
873
+ var FARM_APP_MANIFEST_PATH = "/.well-known/farmjs.json";
874
+ var FARM_APP_MANIFEST_LEGACY_PATH = "/.well-known/farmjs";
875
+ function isFarmAppManifestPath(pathname) {
876
+ return pathname === FARM_APP_MANIFEST_PATH || pathname === FARM_APP_MANIFEST_LEGACY_PATH;
877
+ }
878
+ __name(isFarmAppManifestPath, "isFarmAppManifestPath");
872
879
  var FARM_INFRA_SIGNATURE_HEADER = "farmjs-infra-signature";
873
880
  var SIGNED_PURPOSE = "farmjs-manifest-v1";
874
881
  var SIGNATURE_WINDOW_SECONDS = 300;
@@ -901,8 +908,8 @@ var SOURCES = {
901
908
  standalone: "defineTool",
902
909
  serverFunction: "serverFunction"
903
910
  };
904
- function createFarmAppManifest(input) {
905
- return {
911
+ function createFarmAppManifest(input, { full = false } = {}) {
912
+ const manifest = {
906
913
  schemaVersion: 1,
907
914
  app: {
908
915
  farm: FARM_VERSION,
@@ -912,37 +919,69 @@ function createFarmAppManifest(input) {
912
919
  },
913
920
  packages: input.packages,
914
921
  mcp: {
915
- servers: _listFarmMCPCatalogs().map(({ server, tools, details }) => ({
916
- name: server.name,
917
- version: server.version,
918
- path: server.path,
919
- resources: [...details?.resources ?? []],
920
- prompts: [...details?.prompts ?? []],
921
- tools: tools.map((tool) => {
922
- const schemas = details?.schemas?.[tool.name];
923
- const hints = Object.fromEntries(
924
- ["readOnlyHint", "destructiveHint", "idempotentHint", "openWorldHint"].filter((hint) => typeof tool[hint] === "boolean").map((hint) => [hint, tool[hint]])
925
- );
926
- return {
927
- name: tool.name,
928
- ...tool.title ? { title: tool.title } : {},
929
- ...tool.description ? { description: tool.description } : {},
930
- source: SOURCES[tool.kind],
931
- ...tool.kind === "endpoint" ? { method: tool.method, path: tool.path } : {},
932
- ...hints,
933
- ...schemas ? { inputSchema: schemas.input } : {},
934
- ...schemas?.output ? { outputSchema: schemas.output } : {}
935
- };
936
- })
937
- }))
922
+ servers: _listFarmMCPCatalogs().map(({ server, tools, details }) => {
923
+ const listed = full || details?.public === true;
924
+ return {
925
+ name: server.name,
926
+ version: server.version,
927
+ path: server.path,
928
+ authorization: details?.public === true ? "none" : "required",
929
+ resources: listed ? [...details?.resources ?? []] : [],
930
+ prompts: listed ? [...details?.prompts ?? []] : [],
931
+ tools: (listed ? tools : []).map((tool) => {
932
+ const schemas = details?.schemas?.[tool.name];
933
+ const hints = Object.fromEntries(
934
+ ["readOnlyHint", "destructiveHint", "idempotentHint", "openWorldHint"].filter((hint) => typeof tool[hint] === "boolean").map((hint) => [hint, tool[hint]])
935
+ );
936
+ return {
937
+ name: tool.name,
938
+ ...tool.title ? { title: tool.title } : {},
939
+ ...tool.description ? { description: tool.description } : {},
940
+ source: SOURCES[tool.kind],
941
+ // MCP clients never see the route behind a tool; only Infra's view names it.
942
+ ...full && tool.kind === "endpoint" ? { method: tool.method, path: tool.path } : {},
943
+ ...hints,
944
+ ...schemas ? { inputSchema: schemas.input } : {},
945
+ ...schemas?.output ? { outputSchema: schemas.output } : {}
946
+ };
947
+ })
948
+ };
949
+ })
938
950
  },
939
951
  webmcp: input.webmcp,
940
952
  integrations: input.integrations,
941
953
  agent: input.agent,
942
954
  plugins: input.plugins
943
955
  };
956
+ manifest.mcp.servers.push(...listDefaultServer(input));
957
+ return manifest;
944
958
  }
945
959
  __name(createFarmAppManifest, "createFarmAppManifest");
960
+ function listDefaultServer(input) {
961
+ const server = input.defaultMCP?.();
962
+ if (!server) return [];
963
+ return [
964
+ {
965
+ name: server.name,
966
+ version: server.version,
967
+ path: server.path,
968
+ authorization: "none",
969
+ resources: [],
970
+ prompts: [],
971
+ tools: FARM_DEFAULT_MCP_TOOLS.map((tool) => ({
972
+ name: tool.name,
973
+ title: tool.title,
974
+ description: tool.description,
975
+ // Standalone tools with no endpoint behind them, like defineTool's.
976
+ source: "defineTool",
977
+ ...tool.annotations,
978
+ inputSchema: tool.inputSchema,
979
+ ..."outputSchema" in tool ? { outputSchema: tool.outputSchema } : {}
980
+ }))
981
+ }
982
+ ];
983
+ }
984
+ __name(listDefaultServer, "listDefaultServer");
946
985
  var encoder = new TextEncoder();
947
986
  var hex = /* @__PURE__ */ __name((bytes) => [...new Uint8Array(bytes)].map((byte) => byte.toString(16).padStart(2, "0")).join(""), "hex");
948
987
  async function sha256Hex(value) {
@@ -987,22 +1026,41 @@ function processEnv() {
987
1026
  return globalThis.process?.env ?? {};
988
1027
  }
989
1028
  __name(processEnv, "processEnv");
990
- async function createFarmAppManifestResponse(request, input, options) {
991
- if (request.method !== "GET" && request.method !== "HEAD") return null;
992
- if (!options.development) {
993
- const key = (options.env ?? processEnv()).FARMJS_API_KEY?.trim();
994
- if (!input.analytics || !key) return null;
995
- const signed = await verifyFarmInfraManifestSignature(
996
- request.headers.get(FARM_INFRA_SIGNATURE_HEADER),
997
- key
998
- );
999
- if (!signed)
1000
- return new Response(null, { status: 404, headers: { "cache-control": "no-store" } });
1029
+ var CORS_HEADERS = {
1030
+ "access-control-allow-origin": "*",
1031
+ "access-control-allow-methods": "GET, HEAD, OPTIONS",
1032
+ "access-control-allow-headers": `If-None-Match, ${FARM_INFRA_SIGNATURE_HEADER}`,
1033
+ "access-control-expose-headers": "ETag"
1034
+ };
1035
+ async function createFarmAppManifestResponse(request, input, options = {}) {
1036
+ const method = request.method.toUpperCase();
1037
+ if (method === "OPTIONS") return new Response(null, { status: 204, headers: CORS_HEADERS });
1038
+ if (method !== "GET" && method !== "HEAD") {
1039
+ return new Response("Method Not Allowed", {
1040
+ status: 405,
1041
+ headers: { ...CORS_HEADERS, allow: "GET, HEAD, OPTIONS", "content-type": "text/plain" }
1042
+ });
1001
1043
  }
1002
- const body = JSON.stringify(createFarmAppManifest(input));
1003
- return new Response(request.method === "HEAD" ? null : body, {
1004
- headers: { "content-type": "application/json", "cache-control": "private, no-store" }
1005
- });
1044
+ const signature = request.headers.get(FARM_INFRA_SIGNATURE_HEADER);
1045
+ const key = input.analytics ? (options.env ?? processEnv()).FARMJS_API_KEY?.trim() : void 0;
1046
+ const full = Boolean(
1047
+ signature && key && await verifyFarmInfraManifestSignature(signature, key)
1048
+ );
1049
+ const body = JSON.stringify(createFarmAppManifest(input, { full }));
1050
+ const etag = createFarmWeakETag(body);
1051
+ const headers = {
1052
+ ...CORS_HEADERS,
1053
+ "content-type": "application/json; charset=utf-8",
1054
+ // The full view is for Infra alone; shared caches keep the two views apart.
1055
+ "cache-control": full ? "private, no-store" : "public, max-age=0, must-revalidate",
1056
+ vary: FARM_INFRA_SIGNATURE_HEADER,
1057
+ etag,
1058
+ "x-content-type-options": "nosniff"
1059
+ };
1060
+ if (!full && matchesFarmIfNoneMatch(request.headers.get("if-none-match"), etag)) {
1061
+ return new Response(null, { status: 304, headers });
1062
+ }
1063
+ return new Response(method === "HEAD" ? null : body, { status: 200, headers });
1006
1064
  }
1007
1065
  __name(createFarmAppManifestResponse, "createFarmAppManifestResponse");
1008
1066
 
@@ -1035,6 +1093,9 @@ export {
1035
1093
  resolveFarmApiCatalogInput,
1036
1094
  createFarmApiCatalogResponse,
1037
1095
  FARM_APP_MANIFEST_PATH,
1096
+ FARM_APP_MANIFEST_LEGACY_PATH,
1097
+ isFarmAppManifestPath,
1098
+ FARM_INFRA_SIGNATURE_HEADER,
1038
1099
  resolveFarmAppManifestInput,
1039
1100
  createFarmAppManifestResponse
1040
1101
  };