@farm.js/core 0.1.51-beta.0 → 0.1.51-beta.1

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 (295) hide show
  1. package/dist/{agent-mcp-D44ip11f.d.mts → agent-mcp.d-BPzpKBHQ.d.mts} +1 -1
  2. package/dist/{agent-mcp-BBMfNpsC.d.ts → agent-mcp.d-ZuuNgrkQ.d.ts} +1 -1
  3. package/dist/agent-runtime.cjs +3 -3
  4. package/dist/agent-runtime.d.mts +13 -13
  5. package/dist/agent-runtime.d.ts +13 -13
  6. package/dist/agent-runtime.mjs +2 -2
  7. package/dist/{analyzer-VKUDHNDF.cjs → analyzer-AZULAOPL.cjs} +2 -2
  8. package/dist/{analyzer-HOUCQR3K.mjs → analyzer-V74FTD2F.mjs} +1 -1
  9. package/dist/api/client.d.mts +4 -4
  10. package/dist/api/client.d.ts +4 -4
  11. package/dist/api/route-manager.d.mts +19 -19
  12. package/dist/api/route-manager.d.ts +19 -19
  13. package/dist/api/runtime.d.mts +15 -15
  14. package/dist/api/runtime.d.ts +15 -15
  15. package/dist/{api-client-CvI5oOBE.d.ts → api-client.d-BWcqZciH.d.ts} +3 -3
  16. package/dist/{api-client-CFdv-Xgh.d.mts → api-client.d-CeA6tNA6.d.mts} +3 -3
  17. package/dist/api.cjs +3 -3
  18. package/dist/api.d.mts +21 -21
  19. package/dist/api.d.ts +21 -21
  20. package/dist/api.mjs +2 -2
  21. package/dist/{app-manifest-LzjoNPeq.d.ts → app-manifest.d-BJDcZn3W.d.mts} +1 -1
  22. package/dist/{app-manifest-BC6mFn5A.d.mts → app-manifest.d-HWhqbP2X.d.ts} +1 -1
  23. package/dist/app-markdown.d.mts +14 -14
  24. package/dist/app-markdown.d.ts +14 -14
  25. package/dist/{app-CourU3rQ.d.ts → app.d-B5EWdob-.d.ts} +12 -10
  26. package/dist/{app-aeD4s_mg.d.mts → app.d-DOGW1KI8.d.mts} +12 -10
  27. package/dist/{chunk-DWW3AMJX.cjs → chunk-2756SHCI.cjs} +282 -248
  28. package/dist/{chunk-AMRK3P6W.mjs → chunk-5A5GAZ75.mjs} +182 -68
  29. package/dist/{chunk-PDJSL7PL.cjs → chunk-5IONBVJY.cjs} +3 -3
  30. package/dist/{chunk-IOUOGRDX.cjs → chunk-5N7QAGEA.cjs} +25 -6
  31. package/dist/{chunk-DGOLAZLV.cjs → chunk-65Y5SIBH.cjs} +1 -1
  32. package/dist/{chunk-QI5AQMEE.mjs → chunk-72NBDVWQ.mjs} +1 -1
  33. package/dist/{chunk-X5BCMLGP.cjs → chunk-AGR7VJH2.cjs} +1 -1
  34. package/dist/{chunk-OD6WM3I7.mjs → chunk-AV26KHTG.mjs} +1 -1
  35. package/dist/{chunk-I2ZA5SXS.mjs → chunk-BSEKNTMS.mjs} +53 -19
  36. package/dist/{chunk-WAPQWAE6.cjs → chunk-CECUDGXQ.cjs} +9 -8
  37. package/dist/{chunk-IUQLRTTO.mjs → chunk-CO6UYM2D.mjs} +14 -1
  38. package/dist/{chunk-WVX3BUNJ.mjs → chunk-CZ35L6PL.mjs} +8 -1
  39. package/dist/{chunk-4GJJ65RB.mjs → chunk-EIMK7D2D.mjs} +24 -5
  40. package/dist/{chunk-CY7H5KS4.cjs → chunk-EKJYE4Y7.cjs} +2 -2
  41. package/dist/{chunk-ZF3GX4O7.mjs → chunk-EOSFVNXZ.mjs} +1 -1
  42. package/dist/{chunk-S5ZA2T2W.mjs → chunk-EWC76P5D.mjs} +21 -7
  43. package/dist/{chunk-3HA7PP72.mjs → chunk-I3EFXUAR.mjs} +60 -13
  44. package/dist/{chunk-VO6NLTV4.cjs → chunk-IFBINMI4.cjs} +3 -3
  45. package/dist/{chunk-VIFPE5RG.cjs → chunk-JVBNKWLV.cjs} +81 -34
  46. package/dist/{chunk-JF5CNHHF.mjs → chunk-KMB5BMFX.mjs} +118 -8
  47. package/dist/{chunk-YLNBWUVS.mjs → chunk-KU7MBLDZ.mjs} +1 -1
  48. package/dist/{chunk-J37KTQIA.cjs → chunk-NK2VWS7P.cjs} +52 -3
  49. package/dist/{chunk-WSY2JD7O.mjs → chunk-NN3MOPSI.mjs} +1 -1
  50. package/dist/{chunk-R5P4KFPM.mjs → chunk-QAIAFCRZ.mjs} +8 -6
  51. package/dist/{chunk-75WWOZ5C.mjs → chunk-QOSDWGKT.mjs} +1 -1
  52. package/dist/{chunk-J22JD5YJ.cjs → chunk-RMPNYUGT.cjs} +9 -7
  53. package/dist/{chunk-XWC5NAHV.mjs → chunk-SCRC5AMM.mjs} +2 -2
  54. package/dist/{chunk-QK3HBOTG.cjs → chunk-TT66CP3P.cjs} +5 -5
  55. package/dist/{chunk-Y7TLL65B.cjs → chunk-UQHIWZZ6.cjs} +11 -4
  56. package/dist/{chunk-O3MMJPC2.cjs → chunk-VITZRYW3.cjs} +119 -9
  57. package/dist/{chunk-PPDHCRTC.mjs → chunk-VS7EHLLW.mjs} +1 -1
  58. package/dist/{chunk-USL2ANCB.cjs → chunk-X2AMN2WV.cjs} +2 -2
  59. package/dist/{chunk-F42U3R4F.cjs → chunk-X2M4XN4V.cjs} +55 -41
  60. package/dist/{chunk-SO3T6T4I.cjs → chunk-XY4DYGSU.cjs} +358 -244
  61. package/dist/{chunk-HHFMECFO.mjs → chunk-Y2G5SJFB.mjs} +2 -1
  62. package/dist/{chunk-Z5MZDFX4.cjs → chunk-YIHRZBD7.cjs} +14 -1
  63. package/dist/{chunk-MMEEXMUQ.cjs → chunk-ZOWNWHK6.cjs} +2 -2
  64. package/dist/{chunk-C5JXCUKR.mjs → chunk-ZQ5BDNKW.mjs} +51 -2
  65. package/dist/client/lifecycle.d.mts +1 -1
  66. package/dist/client/lifecycle.d.ts +1 -1
  67. package/dist/{client-plugins-CFBEfVPO.d.ts → client-plugins.d-C0n8Yhh-.d.ts} +41 -12
  68. package/dist/{client-plugins-cqy_dQd0.d.mts → client-plugins.d-C_3CdALC.d.mts} +41 -12
  69. package/dist/client-plugins.d.mts +13 -13
  70. package/dist/client-plugins.d.ts +13 -13
  71. package/dist/client.d.mts +24 -24
  72. package/dist/client.d.ts +24 -24
  73. package/dist/config.d.mts +13 -13
  74. package/dist/config.d.ts +13 -13
  75. package/dist/desktop.d.mts +14 -14
  76. package/dist/desktop.d.ts +14 -14
  77. package/dist/{dev-guard-YLO5DE3H.cjs → dev-guard-2UW2KERP.cjs} +2 -2
  78. package/dist/{dev-guard-4PFQNXQX.mjs → dev-guard-ONNMVQUN.mjs} +1 -1
  79. package/dist/{devtools-4MLL3RAL.mjs → devtools-BU5IT2PD.mjs} +3 -3
  80. package/dist/{devtools-4ZLMD454.cjs → devtools-KJFUE5FO.cjs} +4 -4
  81. package/dist/docs.cjs +8 -6
  82. package/dist/docs.d.mts +23 -15
  83. package/dist/docs.d.ts +23 -15
  84. package/dist/docs.mjs +7 -5
  85. package/dist/environment/vite.cjs +2 -2
  86. package/dist/environment/vite.d.mts +1 -1
  87. package/dist/environment/vite.d.ts +1 -1
  88. package/dist/environment/vite.mjs +1 -1
  89. package/dist/{generate-route-types-TF5Wwtvz.d.mts → generate-route-types.d-BL2pq6xC.d.ts} +1 -1
  90. package/dist/{generate-route-types-DQP0cUzk.d.ts → generate-route-types.d-BoVDU8qX.d.mts} +1 -1
  91. package/dist/i18n/client.d.mts +2 -2
  92. package/dist/i18n/client.d.ts +2 -2
  93. package/dist/i18n/index.d.mts +3 -3
  94. package/dist/i18n/index.d.ts +3 -3
  95. package/dist/i18n/server.d.mts +5 -5
  96. package/dist/i18n/server.d.ts +5 -5
  97. package/dist/image/server.d.mts +1 -1
  98. package/dist/image/server.d.ts +1 -1
  99. package/dist/image/sharp.d.mts +1 -1
  100. package/dist/image/sharp.d.ts +1 -1
  101. package/dist/image.d.mts +1 -1
  102. package/dist/image.d.ts +1 -1
  103. package/dist/index.cjs +19 -17
  104. package/dist/{index-BYkNbeQV.d.mts → index.d-B6M_8kmo.d.ts} +2 -2
  105. package/dist/{index-D3l4tREW.d.ts → index.d-BNNDpql4.d.ts} +2 -2
  106. package/dist/{index-DPUAPho_.d.mts → index.d-BqcfqJvt.d.mts} +2 -2
  107. package/dist/{index-BxjN_UDZ.d.ts → index.d-CsGxS-hZ.d.mts} +2 -2
  108. package/dist/index.d.mts +42 -42
  109. package/dist/index.d.ts +42 -42
  110. package/dist/index.mjs +18 -16
  111. package/dist/instrumentation.d.mts +2 -2
  112. package/dist/instrumentation.d.ts +2 -2
  113. package/dist/integrations.cjs +3 -3
  114. package/dist/integrations.d.mts +13 -13
  115. package/dist/integrations.d.ts +13 -13
  116. package/dist/integrations.mjs +2 -2
  117. package/dist/internal/app-markdown-runtime.d.mts +14 -14
  118. package/dist/internal/app-markdown-runtime.d.ts +14 -14
  119. package/dist/internal/build-runtime.cjs +15 -15
  120. package/dist/internal/build-runtime.d.mts +16 -16
  121. package/dist/internal/build-runtime.d.ts +16 -16
  122. package/dist/internal/build-runtime.mjs +14 -14
  123. package/dist/internal/cli-runtime.cjs +7 -7
  124. package/dist/internal/cli-runtime.mjs +6 -6
  125. package/dist/internal/client-error-overlay.cjs +4 -4
  126. package/dist/internal/client-error-overlay.mjs +1 -1
  127. package/dist/internal/client-runtime.d.mts +21 -21
  128. package/dist/internal/client-runtime.d.ts +21 -21
  129. package/dist/internal/compression-runtime.d.mts +13 -13
  130. package/dist/internal/compression-runtime.d.ts +13 -13
  131. package/dist/internal/config-runtime.cjs +5 -5
  132. package/dist/internal/config-runtime.d.mts +18 -18
  133. package/dist/internal/config-runtime.d.ts +18 -18
  134. package/dist/internal/config-runtime.mjs +4 -4
  135. package/dist/internal/form-actions.d.mts +1 -1
  136. package/dist/internal/form-actions.d.ts +1 -1
  137. package/dist/internal/infra-analytics-runtime.cjs +5 -5
  138. package/dist/internal/infra-analytics-runtime.mjs +3 -3
  139. package/dist/internal/island-value-store.d.mts +1 -1
  140. package/dist/internal/island-value-store.d.ts +1 -1
  141. package/dist/internal/islands-runtime.d.mts +1 -1
  142. package/dist/internal/islands-runtime.d.ts +1 -1
  143. package/dist/internal/isolated-boundary.d.mts +2 -2
  144. package/dist/internal/isolated-boundary.d.ts +2 -2
  145. package/dist/internal/product-telemetry-runtime.cjs +2 -2
  146. package/dist/internal/product-telemetry-runtime.mjs +1 -1
  147. package/dist/internal/production-runtime.cjs +7 -3
  148. package/dist/internal/production-runtime.d.mts +33 -30
  149. package/dist/internal/production-runtime.d.ts +33 -30
  150. package/dist/internal/production-runtime.mjs +6 -2
  151. package/dist/internal/server-tree.d.mts +1 -1
  152. package/dist/internal/server-tree.d.ts +1 -1
  153. package/dist/markdown.d.mts +13 -13
  154. package/dist/markdown.d.ts +13 -13
  155. package/dist/middleware.cjs +4 -4
  156. package/dist/middleware.d.mts +15 -15
  157. package/dist/middleware.d.ts +15 -15
  158. package/dist/middleware.mjs +3 -3
  159. package/dist/mobile.d.mts +7 -7
  160. package/dist/mobile.d.ts +7 -7
  161. package/dist/{navigation-delegate-DLhbfEN4.d.mts → navigation-delegate.d-C0BbdUgN.d.mts} +1 -1
  162. package/dist/{navigation-delegate-BU4xqdnw.d.ts → navigation-delegate.d-jArRF0ZP.d.ts} +1 -1
  163. package/dist/navigation.d.mts +17 -17
  164. package/dist/navigation.d.ts +17 -17
  165. package/dist/observability.d.mts +1 -1
  166. package/dist/observability.d.ts +1 -1
  167. package/dist/plugin.cjs +11 -11
  168. package/dist/plugin.d.mts +17 -17
  169. package/dist/plugin.d.ts +17 -17
  170. package/dist/plugin.mjs +10 -10
  171. package/dist/{production-runtime-DLA4J5WG.d.mts → production-runtime.d-DFaQ1qaV.d.mts} +3 -3
  172. package/dist/{production-runtime-C78A8YgK.d.ts → production-runtime.d-UnXmSS_S.d.ts} +3 -3
  173. package/dist/{programmatic-routes-client-NpqGBn-i.d.mts → programmatic-routes-client.d-BIowUXQC.d.mts} +10 -2
  174. package/dist/{programmatic-routes-client-CBqkNhBy.d.ts → programmatic-routes-client.d-VZ0qcbH4.d.ts} +10 -2
  175. package/dist/query/client.d.mts +1 -1
  176. package/dist/query/client.d.ts +1 -1
  177. package/dist/query/index.d.mts +1 -1
  178. package/dist/query/index.d.ts +1 -1
  179. package/dist/query/server.d.mts +1 -1
  180. package/dist/query/server.d.ts +1 -1
  181. package/dist/{render-plan-C9sWvDTv.d.mts → render-plan.d-BB6KrYjP.d.ts} +2 -2
  182. package/dist/{render-plan-CrqcBbnV.d.ts → render-plan.d-BNeqyPyJ.d.mts} +2 -2
  183. package/dist/renderer-client.d.mts +19 -19
  184. package/dist/renderer-client.d.ts +19 -19
  185. package/dist/{request-WwB1-Uim.d.mts → request.d-BV1munmx.d.mts} +1 -1
  186. package/dist/{request-BizeuqD7.d.ts → request.d-Bxhghm76.d.ts} +1 -1
  187. package/dist/request.d.mts +14 -14
  188. package/dist/request.d.ts +14 -14
  189. package/dist/{resolver-CJ-D9nP-.d.ts → resolver.d-BHyZgpa7.d.ts} +1 -1
  190. package/dist/{resolver-TDyZKgKI.d.mts → resolver.d-JnZKKsc5.d.mts} +1 -1
  191. package/dist/response.d-BolW0Vx_.d.mts +10 -0
  192. package/dist/response.d-BolW0Vx_.d.ts +10 -0
  193. package/dist/{route-rendering-BGhJN64l.d.ts → route-rendering.d-BIf7zE9d.d.ts} +1 -1
  194. package/dist/{route-rendering-S6NFjnx4.d.mts → route-rendering.d-DShqKlgK.d.mts} +1 -1
  195. package/dist/{route-2_yXC6gv.d.mts → route.d-BaVH3V0w.d.mts} +1 -1
  196. package/dist/{route-DFhZj6jN.d.ts → route.d-DBTEqifW.d.ts} +1 -1
  197. package/dist/{router-BIheIy9G.d.mts → router.d-BE7i84fb.d.mts} +1 -1
  198. package/dist/{router-BUD_j2EL.d.ts → router.d-Bw3K3b0a.d.ts} +1 -1
  199. package/dist/{routes-8PT9cl60.d.ts → routes.d-DVZQL0-H.d.ts} +3 -3
  200. package/dist/{routes-kEUsXHx3.d.mts → routes.d-_5tBQexL.d.mts} +3 -3
  201. package/dist/routes.d.mts +13 -13
  202. package/dist/routes.d.ts +13 -13
  203. package/dist/{rsc-pipeline-OLAVIKI3.mjs → rsc-pipeline-FBM6NFYY.mjs} +5 -5
  204. package/dist/{rsc-pipeline-JRGUZBYM.cjs → rsc-pipeline-IQI5XQLS.cjs} +6 -6
  205. package/dist/{runtime-OGCHDACZ.mjs → runtime-2JYIDUON.mjs} +4 -4
  206. package/dist/{runtime-G23RSLEK.cjs → runtime-DXEVFYLE.cjs} +6 -6
  207. package/dist/{runtime-CihDZ2Rn.d.mts → runtime.d-3iJAKptR.d.mts} +2 -2
  208. package/dist/{runtime-C4CmlOOh.d.ts → runtime.d-BtL3PCL3.d.ts} +2 -2
  209. package/dist/{runtime-CWP-21hP.d.ts → runtime.d-CQgoYR0Q.d.mts} +4 -4
  210. package/dist/{runtime-CgJwe6H_.d.mts → runtime.d-CfhaLPl-.d.ts} +4 -4
  211. package/dist/server-action-security.d.mts +1 -1
  212. package/dist/server-action-security.d.ts +1 -1
  213. package/dist/server-fn-client.d.mts +5 -5
  214. package/dist/server-fn-client.d.ts +5 -5
  215. package/dist/server-fn.d.mts +3 -3
  216. package/dist/server-fn.d.ts +3 -3
  217. package/dist/server-plugins.d.mts +14 -14
  218. package/dist/server-plugins.d.ts +14 -14
  219. package/dist/server-query-client.d.mts +5 -5
  220. package/dist/server-query-client.d.ts +5 -5
  221. package/dist/server-query.d.mts +2 -2
  222. package/dist/server-query.d.ts +2 -2
  223. package/dist/server.cjs +31 -31
  224. package/dist/server.d.mts +28 -29
  225. package/dist/server.d.ts +28 -29
  226. package/dist/server.mjs +13 -13
  227. package/dist/{spa-router-CVOL0Vrq.d.mts → spa-router.d-C5opIgXg.d.ts} +5 -5
  228. package/dist/{spa-router-Kytv4jSB.d.ts → spa-router.d-D63jb6nX.d.mts} +5 -5
  229. package/dist/storage.d.mts +2 -2
  230. package/dist/storage.d.ts +2 -2
  231. package/dist/testing.d.mts +14 -14
  232. package/dist/testing.d.ts +14 -14
  233. package/dist/theme/client.d.mts +1 -1
  234. package/dist/theme/client.d.ts +1 -1
  235. package/dist/theme/index.d.mts +2 -2
  236. package/dist/theme/index.d.ts +2 -2
  237. package/dist/theme/runtime.d.mts +1 -1
  238. package/dist/theme/runtime.d.ts +1 -1
  239. package/dist/theme/server.d.mts +1 -1
  240. package/dist/theme/server.d.ts +1 -1
  241. package/dist/{utils-Dsa1HZ7X.d.mts → utils.d-CO-U4OVZ.d.mts} +1 -1
  242. package/dist/{utils-DbyXlzaj.d.ts → utils.d-CkpTqTsC.d.ts} +1 -1
  243. package/dist/version.cjs +2 -2
  244. package/dist/version.mjs +1 -1
  245. package/dist/vite.cjs +11 -11
  246. package/dist/vite.d.mts +20 -19
  247. package/dist/vite.d.ts +20 -19
  248. package/dist/vite.mjs +10 -10
  249. package/dist/workflows.d.mts +1 -1
  250. package/dist/workflows.d.ts +1 -1
  251. package/package.json +3 -3
  252. /package/dist/{base-path-BOUV5ozD.d.mts → base-path.d-BOUV5ozD.d.mts} +0 -0
  253. /package/dist/{base-path-BOUV5ozD.d.ts → base-path.d-BOUV5ozD.d.ts} +0 -0
  254. /package/dist/{chunk-recovery-lnQFzcQP.d.mts → chunk-recovery.d-lnQFzcQP.d.mts} +0 -0
  255. /package/dist/{chunk-recovery-lnQFzcQP.d.ts → chunk-recovery.d-lnQFzcQP.d.ts} +0 -0
  256. /package/dist/{client-cache-Deoqq-nM.d.ts → client-cache.d-Deoqq-nM.d.ts} +0 -0
  257. /package/dist/{client-cache-di_Nasxa.d.mts → client-cache.d-di_Nasxa.d.mts} +0 -0
  258. /package/dist/{config-CnhyvvmT.d.mts → config.d-CnhyvvmT.d.mts} +0 -0
  259. /package/dist/{config-CnhyvvmT.d.ts → config.d-CnhyvvmT.d.ts} +0 -0
  260. /package/dist/{endpoint-BgHn0lhl.d.ts → endpoint.d-BgHn0lhl.d.ts} +0 -0
  261. /package/dist/{endpoint-BkMSCRf6.d.mts → endpoint.d-BkMSCRf6.d.mts} +0 -0
  262. /package/dist/{image-config-CeDgNyX4.d.mts → image-config.d-CeDgNyX4.d.mts} +0 -0
  263. /package/dist/{image-config-CeDgNyX4.d.ts → image-config.d-CeDgNyX4.d.ts} +0 -0
  264. /package/dist/{instrumentation-runtime-CX9Zh-16.d.mts → instrumentation-runtime.d-CX9Zh-16.d.mts} +0 -0
  265. /package/dist/{instrumentation-runtime-CX9Zh-16.d.ts → instrumentation-runtime.d-CX9Zh-16.d.ts} +0 -0
  266. /package/dist/{island-value-protocol-BRayRghM.d.mts → island-value-protocol.d-BRayRghM.d.mts} +0 -0
  267. /package/dist/{island-value-protocol-BRayRghM.d.ts → island-value-protocol.d-BRayRghM.d.ts} +0 -0
  268. /package/dist/{island-CfGru1MO.d.mts → island.d-CfGru1MO.d.mts} +0 -0
  269. /package/dist/{island-CfGru1MO.d.ts → island.d-CfGru1MO.d.ts} +0 -0
  270. /package/dist/{layers-CcS42OGR.d.mts → layers.d-CcS42OGR.d.mts} +0 -0
  271. /package/dist/{layers-CcS42OGR.d.ts → layers.d-CcS42OGR.d.ts} +0 -0
  272. /package/dist/{lifecycle-C2aLBOwu.d.mts → lifecycle.d-C2aLBOwu.d.mts} +0 -0
  273. /package/dist/{lifecycle-C2aLBOwu.d.ts → lifecycle.d-C2aLBOwu.d.ts} +0 -0
  274. /package/dist/{observability-B2363jB6.d.mts → observability.d-B2363jB6.d.mts} +0 -0
  275. /package/dist/{observability-B2363jB6.d.ts → observability.d-B2363jB6.d.ts} +0 -0
  276. /package/dist/{params-BALtrRim.d.ts → params.d-BALtrRim.d.ts} +0 -0
  277. /package/dist/{params-ry-lxqmy.d.mts → params.d-ry-lxqmy.d.mts} +0 -0
  278. /package/dist/{production-vite-BQFAlG7n.d.mts → production-vite.d-BQFAlG7n.d.mts} +0 -0
  279. /package/dist/{production-vite-BQFAlG7n.d.ts → production-vite.d-BQFAlG7n.d.ts} +0 -0
  280. /package/dist/{route-pattern-CVsVbq5n.d.mts → route-pattern.d-CVsVbq5n.d.mts} +0 -0
  281. /package/dist/{route-pattern-CVsVbq5n.d.ts → route-pattern.d-CVsVbq5n.d.ts} +0 -0
  282. /package/dist/{server-client-bridge-DKWDl5NB.d.mts → server-client-bridge.d-DKWDl5NB.d.mts} +0 -0
  283. /package/dist/{server-client-bridge-DKWDl5NB.d.ts → server-client-bridge.d-DKWDl5NB.d.ts} +0 -0
  284. /package/dist/{server-fn-error-DrcH9cc1.d.mts → server-fn-error.d-DrcH9cc1.d.mts} +0 -0
  285. /package/dist/{server-fn-error-DrcH9cc1.d.ts → server-fn-error.d-DrcH9cc1.d.ts} +0 -0
  286. /package/dist/{server-query-runtime-DXRNhX_3.d.ts → server-query-runtime.d-DXRNhX_3.d.ts} +0 -0
  287. /package/dist/{server-query-runtime-aP52iuL5.d.mts → server-query-runtime.d-aP52iuL5.d.mts} +0 -0
  288. /package/dist/{types-BnIqOn9w.d.mts → types.d-BnIqOn9w.d.mts} +0 -0
  289. /package/dist/{types-BnIqOn9w.d.ts → types.d-BnIqOn9w.d.ts} +0 -0
  290. /package/dist/{types-C41ePjvP.d.mts → types.d-C41ePjvP.d.mts} +0 -0
  291. /package/dist/{types-C41ePjvP.d.ts → types.d-C41ePjvP.d.ts} +0 -0
  292. /package/dist/{types-DQnyD3VD.d.mts → types.d-DQnyD3VD.d.mts} +0 -0
  293. /package/dist/{types-DQnyD3VD.d.ts → types.d-DQnyD3VD.d.ts} +0 -0
  294. /package/dist/{workflows-CRMzQZ3k.d.mts → workflows.d-CRMzQZ3k.d.mts} +0 -0
  295. /package/dist/{workflows-CRMzQZ3k.d.ts → workflows.d-CRMzQZ3k.d.ts} +0 -0
@@ -7,11 +7,11 @@ var _chunkSJ23LJ3Ncjs = require('./chunk-SJ23LJ3N.cjs');
7
7
  var _chunkXPMC4E2Gcjs = require('./chunk-XPMC4E2G.cjs');
8
8
 
9
9
 
10
- var _chunkO3MMJPC2cjs = require('./chunk-O3MMJPC2.cjs');
10
+ var _chunkVITZRYW3cjs = require('./chunk-VITZRYW3.cjs');
11
11
 
12
12
 
13
13
 
14
- var _chunkDGOLAZLVcjs = require('./chunk-DGOLAZLV.cjs');
14
+ var _chunk65Y5SIBHcjs = require('./chunk-65Y5SIBH.cjs');
15
15
 
16
16
 
17
17
  var _chunkLNM57D3Hcjs = require('./chunk-LNM57D3H.cjs');
@@ -91,7 +91,7 @@ async function createFarmRscViteConfig(userConfig, options) {
91
91
  for (const key of FARM_RSC_CONFIG_KEYS) {
92
92
  if (userConfig[key] !== void 0) rscConfig[key] = userConfig[key];
93
93
  }
94
- const createReactPlugin = hasPluginNamed(vitePlugins, "vite:react") ? void 0 : await _asyncNullishCoalesce(await _asyncOptionalChain([viteReact, 'optionalAccess', async _2 => _2.default]), async () => ( (options.command === "serve" ? (await _chunkDGOLAZLVcjs.loadFarmReactPlugin.call(void 0, )).default : void 0)));
94
+ const createReactPlugin = hasPluginNamed(vitePlugins, "vite:react") ? void 0 : await _asyncNullishCoalesce(await _asyncOptionalChain([viteReact, 'optionalAccess', async _2 => _2.default]), async () => ( (options.command === "serve" ? (await _chunk65Y5SIBHcjs.loadFarmReactPlugin.call(void 0, )).default : void 0)));
95
95
  const tailwind = hasPluginNamed(vitePlugins, "@tailwindcss/vite") ? void 0 : await _chunkLNM57D3Hcjs.loadTailwindVitePlugin.call(void 0, );
96
96
  const farmConfig = pluginRsc.defineConfig({
97
97
  ...rscConfig,
@@ -99,7 +99,7 @@ async function createFarmRscViteConfig(userConfig, options) {
99
99
  port: _nullishCoalesce(options.port, () => ( _optionalChain([userConfig, 'access', _3 => _3.server, 'optionalAccess', _4 => _4.port]))),
100
100
  plugins: [
101
101
  ...options.command === "serve" && _chunkAQLHD6HZcjs.resolveFarmPlatform.call(void 0, ) === "desktop" ? [
102
- _chunkDGOLAZLVcjs.farmDesktopDevGuardPlugin.call(void 0,
102
+ _chunk65Y5SIBHcjs.farmDesktopDevGuardPlugin.call(void 0,
103
103
  typeof userConfig.basePath === "string" ? userConfig.basePath : void 0
104
104
  )
105
105
  ] : [],
@@ -111,7 +111,7 @@ async function createFarmRscViteConfig(userConfig, options) {
111
111
  server: { environmentName: "rsc" },
112
112
  config: {
113
113
  preset: options.preset,
114
- outputDir: options.outputDir && _chunkO3MMJPC2cjs.resolveDeployOutputPath.call(void 0, root, options.outputDir)
114
+ outputDir: options.outputDir && _chunkVITZRYW3cjs.resolveDeployOutputPath.call(void 0, root, options.outputDir)
115
115
  }
116
116
  })
117
117
  ]
@@ -407,6 +407,7 @@ async function collectSSGPages(routes, loadModule, options = {}) {
407
407
  const ssgPages = [];
408
408
  const ssrRoutes = [];
409
409
  const staticCandidateRoutes = [];
410
+ let staticCandidateDocsPages = 0;
410
411
  for (const route of routes) {
411
412
  try {
412
413
  const mod = await loadModule(route.filePath);
@@ -453,7 +454,8 @@ async function collectSSGPages(routes, loadModule, options = {}) {
453
454
  } else {
454
455
  ssrRoutes.push(route.path);
455
456
  if (options.suggestStaticRendering !== false && analyzeStaticRouteCandidate(mod, source, { isDynamic: route.isDynamic }).candidate) {
456
- staticCandidateRoutes.push(route.path);
457
+ if (_optionalChain([options, 'access', _41 => _41.docsAdapterRoutes, 'optionalAccess', _42 => _42.owns, 'call', _43 => _43(route.path)])) staticCandidateDocsPages += 1;
458
+ else staticCandidateRoutes.push(route.path);
457
459
  }
458
460
  }
459
461
  } catch (error) {
@@ -472,6 +474,11 @@ async function collectSSGPages(routes, loadModule, options = {}) {
472
474
  Add \`export const dynamic = "force-static";\` after verifying that imported code does not read cookies, headers, authentication, or other request data.`
473
475
  );
474
476
  }
477
+ if (staticCandidateDocsPages > 0 && !_optionalChain([options, 'access', _44 => _44.docsAdapterRoutes, 'optionalAccess', _45 => _45.prerender])) {
478
+ console.warn(
479
+ `[Farm.js] ${staticCandidateDocsPages} docs page${staticCandidateDocsPages === 1 ? " renders" : "s render"} on each request. Set \`docs.prerender: true\` in farm.config.ts to prerender docs pages on Node and serverless targets.`
480
+ );
481
+ }
475
482
  return { ssg: ssgPages, ssr: ssrRoutes };
476
483
  }
477
484
  function isSSGModule(mod) {
@@ -749,7 +756,7 @@ function fieldTsType(field) {
749
756
  case "json":
750
757
  return "unknown";
751
758
  case "enum":
752
- return _optionalChain([field, 'access', _41 => _41.values, 'optionalAccess', _42 => _42.length]) ? field.values.map((value) => JSON.stringify(value)).join(" | ") : "string";
759
+ return _optionalChain([field, 'access', _46 => _46.values, 'optionalAccess', _47 => _47.length]) ? field.values.map((value) => JSON.stringify(value)).join(" | ") : "string";
753
760
  // id, uuid, string, text, datetime all travel as strings over JSON.
754
761
  default:
755
762
  return "string";
@@ -773,7 +780,7 @@ async function generateFarmTypeArtifacts(options) {
773
780
  const shouldGenerateApi = options.api !== false;
774
781
  const shouldGenerateEnv = options.env !== false;
775
782
  const shouldGenerateImages = options.images !== false;
776
- const shouldGenerateI18n = options.i18n !== false && _optionalChain([options, 'access', _43 => _43.i18nConfig, 'optionalAccess', _44 => _44.enabled]);
783
+ const shouldGenerateI18n = options.i18n !== false && _optionalChain([options, 'access', _48 => _48.i18nConfig, 'optionalAccess', _49 => _49.enabled]);
777
784
  const sourceRoots = _chunk5Y2P454Ocjs.getFarmSourceRoots.call(void 0, { root, srcDir, layers: options.layers });
778
785
  const appDirs = _chunk5Y2P454Ocjs.getFarmAppDirectories.call(void 0, { root, srcDir, layers: options.layers });
779
786
  const result = {
@@ -893,7 +900,7 @@ async function generateFarmTypeArtifacts(options) {
893
900
  });
894
901
  }
895
902
  }
896
- if (shouldRefreshUnifiedTypes && _optionalChain([options, 'access', _45 => _45.i18nConfig, 'optionalAccess', _46 => _46.enabled]) && !options.i18nTypesOutFile) {
903
+ if (shouldRefreshUnifiedTypes && _optionalChain([options, 'access', _50 => _50.i18nConfig, 'optionalAccess', _51 => _51.enabled]) && !options.i18nTypesOutFile) {
897
904
  const { signatures } = await _chunkBBPDJGCUcjs.readFarmI18nCatalogs.call(void 0, options.i18nConfig);
898
905
  unifiedSections.push(renderFarmI18nTypes(options.i18nConfig.locales, signatures));
899
906
  result.i18nTypesPath = unifiedTypesPath;
@@ -71,7 +71,7 @@ var _chunkWT6RAN2Icjs = require('./chunk-WT6RAN2I.cjs');
71
71
  var _chunkWJFFPXCVcjs = require('./chunk-WJFFPXCV.cjs');
72
72
 
73
73
 
74
- var _chunkWAPQWAE6cjs = require('./chunk-WAPQWAE6.cjs');
74
+ var _chunkCECUDGXQcjs = require('./chunk-CECUDGXQ.cjs');
75
75
 
76
76
 
77
77
  var _chunk5DX3O6TTcjs = require('./chunk-5DX3O6TT.cjs');
@@ -565,29 +565,35 @@ async function resolveDocsConfig(userDocs, options = {}) {
565
565
  config: { entry: "docs", docsPath: "/docs" }
566
566
  };
567
567
  }
568
- const inlineDocsConfig = sanitizeDocsConfig(docsOptions.config || {});
568
+ const fileDocsConfig = omitDocsRoots(_optionalChain([loadedConfig, 'optionalAccess', _24 => _24.config]));
569
+ const inlineRawDocsConfig = omitDocsRoots(docsOptions.config);
570
+ const inlineDocsConfig = sanitizeDocsConfig(inlineRawDocsConfig);
569
571
  const directDocsConfig = sanitizeDocsConfig({
570
572
  ...docsOptions,
571
573
  adapter: void 0,
572
574
  enabled: void 0,
575
+ prerender: void 0,
573
576
  config: void 0,
574
- configPath: void 0
577
+ configPath: void 0,
578
+ roots: void 0
575
579
  });
576
- const loadedDocsConfig = sanitizeDocsConfig(_optionalChain([loadedConfig, 'optionalAccess', _24 => _24.config]) || {});
580
+ const loadedDocsConfig = sanitizeDocsConfig(fileDocsConfig);
577
581
  const mergedDocsConfig = {
578
582
  ...loadedDocsConfig,
579
583
  ...inlineDocsConfig,
580
584
  ...directDocsConfig
581
585
  };
582
586
  const runtimeDocsConfig = {
583
- ..._optionalChain([loadedConfig, 'optionalAccess', _25 => _25.config]) || {},
584
- ...isRecord(docsOptions.config) ? docsOptions.config : {},
587
+ ...fileDocsConfig,
588
+ ...inlineRawDocsConfig,
585
589
  ...omitUndefined({
586
590
  ...docsOptions,
587
591
  adapter: void 0,
588
592
  enabled: void 0,
593
+ prerender: void 0,
589
594
  config: void 0,
590
- configPath: void 0
595
+ configPath: void 0,
596
+ roots: void 0
591
597
  })
592
598
  };
593
599
  const explicitRoute = typeof docsOptions.entry === "string" ? docsOptions.entry : void 0;
@@ -601,10 +607,33 @@ async function resolveDocsConfig(userDocs, options = {}) {
601
607
  docsOptions.contentDir || mergedDocsConfig.contentDir
602
608
  );
603
609
  const contentDir = configuredContentDir || await inferDocsContentDir(root, options.srcDir || "src", docsEntry);
610
+ const configOverrides = { ...inlineDocsConfig, ...directDocsConfig };
611
+ const configFileName = loadedConfig ? _path2.default.relative(root, loadedConfig.configPath) || loadedConfig.configPath : "the docs config";
612
+ const roots = await resolveDocsRoots(
613
+ [
614
+ { field: `roots in ${configFileName}`, roots: docsRootsOf(_optionalChain([loadedConfig, 'optionalAccess', _25 => _25.config])), file: true },
615
+ { field: "docs.config.roots", roots: docsRootsOf(docsOptions.config) },
616
+ { field: "docs.roots", roots: docsOptions.roots }
617
+ ],
618
+ {
619
+ root,
620
+ srcDir: options.srcDir || "src",
621
+ mainEntry: entryRoute,
622
+ mergedDocsConfig,
623
+ runtimeDocsConfig,
624
+ configOverrides
625
+ }
626
+ );
627
+ if (roots.length > 0 && !(docsOptions.adapter && docsOptions.adapter.server && docsOptions.adapter.react)) {
628
+ throw new Error(
629
+ `Docs roots require a docs adapter such as @farming-labs/farmjs; Farm's built-in docs renderer serves a single docs root. Install the adapter, or remove the roots from ${configFileName} and docs.roots.`
630
+ );
631
+ }
604
632
  return {
605
633
  enabled: true,
606
634
  entry: entryRoute,
607
635
  ...docsOptions.adapter ? { adapter: docsOptions.adapter } : {},
636
+ ...docsOptions.prerender === true ? { prerender: true } : {},
608
637
  contentDir,
609
638
  configPath: _optionalChain([loadedConfig, 'optionalAccess', _26 => _26.configPath]),
610
639
  config: {
@@ -619,9 +648,90 @@ async function resolveDocsConfig(userDocs, options = {}) {
619
648
  docsPath: entryRoute,
620
649
  ...contentDir ? { contentDir } : {}
621
650
  },
622
- configOverrides: { ...inlineDocsConfig, ...directDocsConfig }
651
+ configOverrides,
652
+ ...roots.length > 0 ? { roots } : {}
623
653
  };
624
654
  }
655
+ function docsRootsOf(config) {
656
+ return isRecord(config) ? config.roots : void 0;
657
+ }
658
+ function omitDocsRoots(config) {
659
+ if (!isRecord(config)) return {};
660
+ const { roots: _roots, ...rest } = config;
661
+ return rest;
662
+ }
663
+ function omitKeys(value, keys) {
664
+ const output = { ...value };
665
+ for (const key of keys) delete output[key];
666
+ return output;
667
+ }
668
+ async function resolveDocsRoots(sources, options) {
669
+ const declared = /* @__PURE__ */ new Map();
670
+ for (const source of sources) {
671
+ if (source.roots === void 0) continue;
672
+ if (!Array.isArray(source.roots)) throw new Error(`${source.field} must be an array.`);
673
+ const seen = /* @__PURE__ */ new Set();
674
+ for (const [index, rootInput] of source.roots.entries()) {
675
+ const field = `${source.field}[${index}].entry`;
676
+ if (!isRecord(rootInput) || typeof rootInput.entry !== "string" || !rootInput.entry.trim()) {
677
+ throw new Error(`${field} must be a route such as "/guides/docs".`);
678
+ }
679
+ const entryRoute = normalizeDocsRoute(rootInput.entry);
680
+ if (entryRoute === "/") {
681
+ throw new Error(
682
+ `${field} cannot be "/"; a docs root at "/" leaves no route for the others.`
683
+ );
684
+ }
685
+ if (entryRoute === options.mainEntry || seen.has(entryRoute)) {
686
+ throw new Error(
687
+ `${field} ${JSON.stringify(entryRoute)} is already served by another docs root.`
688
+ );
689
+ }
690
+ seen.add(entryRoute);
691
+ const { entry: _entry, ...fields } = rootInput;
692
+ const layers = _nullishCoalesce(declared.get(entryRoute), () => ( { file: {}, overrides: {} }));
693
+ if (source.file) layers.file = fields;
694
+ else layers.overrides = { ...layers.overrides, ...fields };
695
+ declared.set(entryRoute, layers);
696
+ }
697
+ }
698
+ const roots = [];
699
+ for (const [entryRoute, { file, overrides }] of declared) {
700
+ const docsEntry = docsRouteToEntry(entryRoute);
701
+ const contentDir = normalizeDocsContentDir(
702
+ typeof overrides.contentDir === "string" && overrides.contentDir || typeof file.contentDir === "string" && file.contentDir || void 0
703
+ ) || await inferDocsContentDir(options.root, options.srcDir, docsEntry);
704
+ const routeConfig = {
705
+ entry: docsEntry,
706
+ docsPath: entryRoute,
707
+ contentDir
708
+ };
709
+ const rootOverrides = sanitizeDocsConfig(overrides);
710
+ roots.push({
711
+ entry: entryRoute,
712
+ contentDir,
713
+ config: omitUndefined({
714
+ ...options.mergedDocsConfig,
715
+ ...sanitizeDocsConfig(file),
716
+ ...rootOverrides,
717
+ ...routeConfig
718
+ }),
719
+ runtimeConfig: omitUndefined({
720
+ ...options.runtimeDocsConfig,
721
+ ...file,
722
+ ...overrides,
723
+ ...routeConfig
724
+ }),
725
+ // The adapter reads the config file's own root from the config module, so the main
726
+ // root's overrides leave out whatever that root sets itself.
727
+ configOverrides: {
728
+ ...omitKeys(options.configOverrides, Object.keys(file)),
729
+ ...rootOverrides
730
+ }
731
+ });
732
+ }
733
+ return roots;
734
+ }
625
735
  function validateRedirectConfigs(redirects, field) {
626
736
  for (const [index, redirect] of redirects.entries()) {
627
737
  _chunk6XQSPIN6cjs.validateConfigRouteSource.call(void 0, redirect.source, `${field}[${index}].source`);
@@ -772,7 +882,7 @@ async function resolveConfig(userConfig, mode) {
772
882
  agent: resolveFarmAgentConfig(userConfig.agent, { docs: docs.enabled }),
773
883
  desktop: _nullishCoalesce(_optionalChain([desktopSetup, 'optionalAccess', _40 => _40.desktop]), () => ( null)),
774
884
  plugins: [
775
- ..._chunkWAPQWAE6cjs.resolveIntegrationPlugins.call(void 0, integrations),
885
+ ..._chunkCECUDGXQcjs.resolveIntegrationPlugins.call(void 0, integrations),
776
886
  ...nativeMCPPlugin ? [nativeMCPPlugin] : [],
777
887
  ...userConfig.plugins || []
778
888
  ],
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  MiddlewareManager
3
- } from "./chunk-WSY2JD7O.mjs";
3
+ } from "./chunk-NN3MOPSI.mjs";
4
4
  import {
5
5
  matchesMiddlewarePredicate
6
6
  } from "./chunk-EDPENAVO.mjs";
@@ -33,7 +33,7 @@ var _chunkVQJYGZNXcjs = require('./chunk-VQJYGZNX.cjs');
33
33
  var _chunkEVIWKPJVcjs = require('./chunk-EVIWKPJV.cjs');
34
34
 
35
35
 
36
- var _chunkZ5MZDFX4cjs = require('./chunk-Z5MZDFX4.cjs');
36
+ var _chunkYIHRZBD7cjs = require('./chunk-YIHRZBD7.cjs');
37
37
 
38
38
 
39
39
  var _chunkB5BBTPJQcjs = require('./chunk-B5BBTPJQ.cjs');
@@ -443,7 +443,7 @@ var MiddlewareManager = class {
443
443
  ...middlewareEvent,
444
444
  status: response.status
445
445
  });
446
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0, res, response);
446
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0, res, response);
447
447
  return true;
448
448
  }
449
449
  if (ctx._handled || res.headersSent || res.writableEnded) {
@@ -5,7 +5,7 @@ var _chunkAQLHD6HZcjs = require('./chunk-AQLHD6HZ.cjs');
5
5
 
6
6
 
7
7
 
8
- var _chunkY7TLL65Bcjs = require('./chunk-Y7TLL65B.cjs');
8
+ var _chunkUQHIWZZ6cjs = require('./chunk-UQHIWZZ6.cjs');
9
9
 
10
10
 
11
11
 
@@ -33,7 +33,7 @@ var _chunkY7TLL65Bcjs = require('./chunk-Y7TLL65B.cjs');
33
33
  var _chunk76GHW3WIcjs = require('./chunk-76GHW3WI.cjs');
34
34
 
35
35
 
36
- var _chunkJ22JD5YJcjs = require('./chunk-J22JD5YJ.cjs');
36
+ var _chunkRMPNYUGTcjs = require('./chunk-RMPNYUGT.cjs');
37
37
 
38
38
 
39
39
 
@@ -60,7 +60,7 @@ var _chunk7KJJ4SBScjs = require('./chunk-7KJJ4SBS.cjs');
60
60
 
61
61
 
62
62
 
63
- var _chunkJ37KTQIAcjs = require('./chunk-J37KTQIA.cjs');
63
+ var _chunkNK2VWS7Pcjs = require('./chunk-NK2VWS7P.cjs');
64
64
 
65
65
 
66
66
 
@@ -164,7 +164,7 @@ var _chunkX333W5KVcjs = require('./chunk-X333W5KV.cjs');
164
164
 
165
165
 
166
166
 
167
- var _chunkWAPQWAE6cjs = require('./chunk-WAPQWAE6.cjs');
167
+ var _chunkCECUDGXQcjs = require('./chunk-CECUDGXQ.cjs');
168
168
 
169
169
 
170
170
 
@@ -241,7 +241,7 @@ var _chunkSUCDVKUBcjs = require('./chunk-SUCDVKUB.cjs');
241
241
  var _chunkEVIWKPJVcjs = require('./chunk-EVIWKPJV.cjs');
242
242
 
243
243
 
244
- var _chunkZ5MZDFX4cjs = require('./chunk-Z5MZDFX4.cjs');
244
+ var _chunkYIHRZBD7cjs = require('./chunk-YIHRZBD7.cjs');
245
245
 
246
246
 
247
247
 
@@ -254,7 +254,7 @@ var _chunkJYT7AN37cjs = require('./chunk-JYT7AN37.cjs');
254
254
  var _chunkB5BBTPJQcjs = require('./chunk-B5BBTPJQ.cjs');
255
255
 
256
256
 
257
- var _chunkX5BCMLGPcjs = require('./chunk-X5BCMLGP.cjs');
257
+ var _chunkAGR7VJH2cjs = require('./chunk-AGR7VJH2.cjs');
258
258
 
259
259
 
260
260
 
@@ -1874,7 +1874,7 @@ var RouteManager = class {
1874
1874
  this.redirects = /* @__PURE__ */ new Map();
1875
1875
  this.programmaticPages = /* @__PURE__ */ new Map();
1876
1876
  this.programmaticLayouts = /* @__PURE__ */ new Map();
1877
- this.programmaticClientRoutes = _chunkJ37KTQIAcjs.mergeProgrammaticClientRoutes.call(void 0, []);
1877
+ this.programmaticClientRoutes = _chunkNK2VWS7Pcjs.mergeProgrammaticClientRoutes.call(void 0, []);
1878
1878
  this.reportedIslandsErrors = /* @__PURE__ */ new Set();
1879
1879
  this.config = config;
1880
1880
  this.viteServer = viteServer;
@@ -1906,7 +1906,7 @@ var RouteManager = class {
1906
1906
  await this.discoverFileRoutes(source);
1907
1907
  await this.discoverProgrammaticRoutes(source, programmaticClientRoutes);
1908
1908
  }
1909
- this.programmaticClientRoutes = _chunkJ37KTQIAcjs.mergeProgrammaticClientRoutes.call(void 0, programmaticClientRoutes);
1909
+ this.programmaticClientRoutes = _chunkNK2VWS7Pcjs.mergeProgrammaticClientRoutes.call(void 0, programmaticClientRoutes);
1910
1910
  for (const slot of this.routeSlots.values()) {
1911
1911
  if (slot.interception && !this.pageRouteShapes.has(_chunkYTVSWXEZcjs.getRoutePatternShape.call(void 0, slot.pattern))) {
1912
1912
  throw new (0, _chunkYTVSWXEZcjs.AmbiguousRouteError)(
@@ -2168,7 +2168,7 @@ var RouteManager = class {
2168
2168
  }
2169
2169
  return absolutePath;
2170
2170
  };
2171
- const integrationProviders = _chunkWAPQWAE6cjs.getIntegrationProviders.call(void 0, this.config.integrations).filter(
2171
+ const integrationProviders = _chunkCECUDGXQcjs.getIntegrationProviders.call(void 0, this.config.integrations).filter(
2172
2172
  (provider) => provider.component || provider.type === "clerk"
2173
2173
  );
2174
2174
  const unsupportedIntegrationProvider = integrationProviders.find(
@@ -2675,11 +2675,11 @@ var RouteManager = class {
2675
2675
  srcDir: source.srcDir,
2676
2676
  loadModule: (filePath) => this.loadProgrammaticRoutesModule(filePath)
2677
2677
  });
2678
- const graph = this.viteServer ? _chunkJ37KTQIAcjs.createEvaluatedRouteGraph.call(void 0, this.viteServer) : void 0;
2678
+ const graph = this.viteServer ? _chunkNK2VWS7Pcjs.createEvaluatedRouteGraph.call(void 0, this.viteServer) : void 0;
2679
2679
  for (const { filePath, manifest } of manifests) {
2680
2680
  if (graph) {
2681
2681
  clientRoutes.push(
2682
- _chunkJ37KTQIAcjs.resolveProgrammaticClientRoutes.call(void 0, {
2682
+ _chunkNK2VWS7Pcjs.resolveProgrammaticClientRoutes.call(void 0, {
2683
2683
  graph,
2684
2684
  routesFile: toRealPath(filePath),
2685
2685
  routes: manifest.routes,
@@ -2868,6 +2868,18 @@ var RouteManager = class {
2868
2868
  }
2869
2869
  }
2870
2870
  }
2871
+ /** The page routes a docs adapter answers before Farm's own page rendering. */
2872
+ getDocsAdapterRoutes() {
2873
+ const docs = this.config.docs;
2874
+ if (!docs || typeof docs !== "object" || !docs.enabled || !docs.adapter || !docs.adapter.server || !docs.adapter.react || !_chunkRD623KW4cjs.isReactRenderer.call(void 0, this.config.renderer)) {
2875
+ return void 0;
2876
+ }
2877
+ const entry = `/${String(docs.entry || "docs").replace(/^\/+|\/+$/g, "")}`;
2878
+ return {
2879
+ owns: (routePath) => entry === "/" || routePath === entry || routePath.startsWith(`${entry}/`),
2880
+ prerender: docs.prerender === true
2881
+ };
2882
+ }
2871
2883
  /**
2872
2884
  * Collect SSG pages for static generation
2873
2885
  *
@@ -2882,8 +2894,10 @@ var RouteManager = class {
2882
2894
  pattern: entry.pattern
2883
2895
  }));
2884
2896
  const i18n = this.getI18nConfig();
2885
- const result = await _chunkY7TLL65Bcjs.collectSSGPages.call(void 0, routes, (filePath) => this.loadRouteModule(filePath), {
2886
- suggestStaticRendering: shouldSuggestStaticRenderingForI18n(i18n)
2897
+ const docsAdapterRoutes = this.getDocsAdapterRoutes();
2898
+ const result = await _chunkUQHIWZZ6cjs.collectSSGPages.call(void 0, routes, (filePath) => this.loadRouteModule(filePath), {
2899
+ suggestStaticRendering: shouldSuggestStaticRenderingForI18n(i18n),
2900
+ ...docsAdapterRoutes ? { docsAdapterRoutes } : {}
2887
2901
  });
2888
2902
  if (!i18n) {
2889
2903
  return result;
@@ -2927,7 +2941,7 @@ var RouteManager = class {
2927
2941
  async isRouteSSG(modulePath) {
2928
2942
  try {
2929
2943
  const mod = await this.loadRouteModule(modulePath);
2930
- const rendering = await _chunkY7TLL65Bcjs.resolveRouteRenderingConfigFromFile.call(void 0, mod, modulePath);
2944
+ const rendering = await _chunkUQHIWZZ6cjs.resolveRouteRenderingConfigFromFile.call(void 0, mod, modulePath);
2931
2945
  return rendering.ssg;
2932
2946
  } catch (e8) {
2933
2947
  return false;
@@ -2939,7 +2953,7 @@ var RouteManager = class {
2939
2953
  async hasRouteISR(modulePath) {
2940
2954
  try {
2941
2955
  const mod = await this.loadRouteModule(modulePath);
2942
- const rendering = await _chunkY7TLL65Bcjs.resolveRouteRenderingConfigFromFile.call(void 0, mod, modulePath);
2956
+ const rendering = await _chunkUQHIWZZ6cjs.resolveRouteRenderingConfigFromFile.call(void 0, mod, modulePath);
2943
2957
  return rendering.ssg && typeof rendering.revalidate === "number" && rendering.revalidate > 0;
2944
2958
  } catch (e9) {
2945
2959
  return false;
@@ -2951,7 +2965,7 @@ var RouteManager = class {
2951
2965
  async getRouteRevalidateInterval(modulePath) {
2952
2966
  try {
2953
2967
  const mod = await this.loadRouteModule(modulePath);
2954
- const rendering = await _chunkY7TLL65Bcjs.resolveRouteRenderingConfigFromFile.call(void 0, mod, modulePath);
2968
+ const rendering = await _chunkUQHIWZZ6cjs.resolveRouteRenderingConfigFromFile.call(void 0, mod, modulePath);
2955
2969
  return rendering.revalidate;
2956
2970
  } catch (e10) {
2957
2971
  return void 0;
@@ -4084,7 +4098,7 @@ function generateFarmIntegrationProviderClientCode(providers, root, rendererComp
4084
4098
  let hasClerkProvider = false;
4085
4099
  renderedProviders.forEach((provider, index) => {
4086
4100
  let componentExpression = "null";
4087
- if (_chunkWAPQWAE6cjs.isFarmIntegrationProviderComponentReference.call(void 0, provider.component)) {
4101
+ if (_chunkCECUDGXQcjs.isFarmIntegrationProviderComponentReference.call(void 0, provider.component)) {
4088
4102
  const namespace = `FarmIntegrationProviderModule${index}`;
4089
4103
  imports.push(
4090
4104
  `import * as ${namespace} from ${JSON.stringify(resolveProviderModule(provider.component.module, root))};`
@@ -4141,7 +4155,7 @@ function generateFarmIntegrationProviderServerModules(providers, root, rendererC
4141
4155
  const entries = [];
4142
4156
  let needsMarkHelper = false;
4143
4157
  providers.forEach((provider, index) => {
4144
- if (!_chunkWAPQWAE6cjs.isFarmIntegrationProviderComponentReference.call(void 0, provider.component)) return;
4158
+ if (!_chunkCECUDGXQcjs.isFarmIntegrationProviderComponentReference.call(void 0, provider.component)) return;
4145
4159
  const namespace = `FarmServerIntegrationProviderModule${index}`;
4146
4160
  imports.push(
4147
4161
  `import * as ${namespace} from ${JSON.stringify(resolveProviderModule(provider.component.module, root))};`
@@ -5009,7 +5023,7 @@ var ServerRenderer = class {
5009
5023
  * Check if a path should be served from SSG cache
5010
5024
  */
5011
5025
  async shouldServeSSG(pathname) {
5012
- const ssgPage = _chunkY7TLL65Bcjs.matchSSGPage.call(void 0, pathname, this.ssgManifest);
5026
+ const ssgPage = _chunkUQHIWZZ6cjs.matchSSGPage.call(void 0, pathname, this.ssgManifest);
5013
5027
  if (!ssgPage) return null;
5014
5028
  const cached = await this.getCachedSSGPage(pathname);
5015
5029
  if (cached && await this.dataCache.isStaleAsync(cached)) {
@@ -5392,7 +5406,7 @@ var ServerRenderer = class {
5392
5406
  _chunkFK25QSVCcjs.resolveServerActionsConfig.call(void 0, this.config.serverActions)
5393
5407
  );
5394
5408
  if (actionResponse) {
5395
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0, res, actionResponse);
5409
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0, res, actionResponse);
5396
5410
  completeRender(actionResponse.status, route.pattern);
5397
5411
  return;
5398
5412
  }
@@ -5459,7 +5473,7 @@ var ServerRenderer = class {
5459
5473
  throw error;
5460
5474
  }
5461
5475
  }
5462
- const renderingConfig = await _chunkY7TLL65Bcjs.resolveRouteRenderingConfigFromFile.call(void 0,
5476
+ const renderingConfig = await _chunkUQHIWZZ6cjs.resolveRouteRenderingConfigFromFile.call(void 0,
5463
5477
  routeModule,
5464
5478
  route.modulePath,
5465
5479
  { experimentalPPR: _optionalChain([this, 'access', _196 => _196.config, 'access', _197 => _197.experimental, 'optionalAccess', _198 => _198.ppr]) === true }
@@ -5847,7 +5861,7 @@ var ServerRenderer = class {
5847
5861
  let error = caughtError;
5848
5862
  if (isWebResponse(error)) {
5849
5863
  if (!res.headersSent && !res.writableEnded) {
5850
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0, res, error);
5864
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0, res, error);
5851
5865
  } else if (!res.writableEnded) {
5852
5866
  res.end();
5853
5867
  }
@@ -5929,7 +5943,7 @@ var ServerRenderer = class {
5929
5943
  }
5930
5944
  }
5931
5945
  async wrapWithIntegrationProviders(element) {
5932
- const providers = _chunkWAPQWAE6cjs.getIntegrationProviders.call(void 0, this.config.integrations);
5946
+ const providers = _chunkCECUDGXQcjs.getIntegrationProviders.call(void 0, this.config.integrations);
5933
5947
  let wrapped = element;
5934
5948
  for (let i = providers.length - 1; i >= 0; i--) {
5935
5949
  const provider = providers[i];
@@ -5947,7 +5961,7 @@ var ServerRenderer = class {
5947
5961
  }
5948
5962
  let ProviderComponent;
5949
5963
  let providerSourceModule;
5950
- if (_chunkWAPQWAE6cjs.isFarmIntegrationProviderComponentReference.call(void 0, provider.component)) {
5964
+ if (_chunkCECUDGXQcjs.isFarmIntegrationProviderComponentReference.call(void 0, provider.component)) {
5951
5965
  providerSourceModule = provider.component.module;
5952
5966
  const providerModuleId = provider.component.module.startsWith(".") ? _chunkVQJYGZNXcjs.toViteModuleId.call(void 0,
5953
5967
  path9.resolve(this.config.root, provider.component.module),
@@ -6125,10 +6139,10 @@ var ServerRenderer = class {
6125
6139
  method,
6126
6140
  request: request2
6127
6141
  });
6128
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0, res, response);
6142
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0, res, response);
6129
6143
  } catch (error) {
6130
6144
  _chunkVQJYGZNXcjs.logger.error(`Metadata route render failed for ${match.metadata.modulePath}: ${error}`);
6131
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0,
6145
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0,
6132
6146
  res,
6133
6147
  new Response("Internal Server Error", {
6134
6148
  status: 500,
@@ -6155,7 +6169,7 @@ var ServerRenderer = class {
6155
6169
  origin: new URL(request2.url).origin,
6156
6170
  readMarkdown: context.markdown
6157
6171
  }) : context.defaults;
6158
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0,
6172
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0,
6159
6173
  res,
6160
6174
  _chunk76GHW3WIcjs.createFarmMetadataRouteResponse.call(void 0,
6161
6175
  kind,
@@ -6166,7 +6180,7 @@ var ServerRenderer = class {
6166
6180
  );
6167
6181
  } catch (error) {
6168
6182
  _chunkVQJYGZNXcjs.logger.error(`Generated ${kind}.txt failed: ${error}`);
6169
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0,
6183
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0,
6170
6184
  res,
6171
6185
  new Response("Internal Server Error", {
6172
6186
  status: 500,
@@ -6190,13 +6204,13 @@ var ServerRenderer = class {
6190
6204
  metadataBase: _optionalChain([rootMetadata, 'optionalAccess', _242 => _242.metadataBase]),
6191
6205
  basePath: this.config.basePath
6192
6206
  });
6193
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0,
6207
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0,
6194
6208
  res,
6195
6209
  _chunk76GHW3WIcjs.createFarmMetadataRouteResponse.call(void 0, "robots", robots, {}, { method: req.method })
6196
6210
  );
6197
6211
  } catch (error) {
6198
6212
  _chunkVQJYGZNXcjs.logger.error(`Generated robots.txt failed: ${error}`);
6199
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0,
6213
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0,
6200
6214
  res,
6201
6215
  new Response("Internal Server Error", {
6202
6216
  status: 500,
@@ -6234,13 +6248,13 @@ var ServerRenderer = class {
6234
6248
  metadataBase: _optionalChain([rootMetadata, 'optionalAccess', _252 => _252.metadataBase]),
6235
6249
  basePath: this.config.basePath
6236
6250
  });
6237
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0,
6251
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0,
6238
6252
  res,
6239
6253
  _chunk76GHW3WIcjs.createFarmMetadataRouteResponse.call(void 0, "sitemap", sitemap, {}, { method: req.method })
6240
6254
  );
6241
6255
  } catch (error) {
6242
6256
  _chunkVQJYGZNXcjs.logger.error(`Generated sitemap.xml failed: ${error}`);
6243
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0,
6257
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0,
6244
6258
  res,
6245
6259
  new Response("Internal Server Error", {
6246
6260
  status: 500,
@@ -6279,7 +6293,7 @@ var ServerRenderer = class {
6279
6293
  if (this.routeManager.matchRoute(_chunkSBABQKPTcjs.FARM_DEFAULT_MCP_PATH).route) return void 0;
6280
6294
  _nullishCoalesce(this.defaultMCPServer, () => ( (this.defaultMCPServer = _chunkSBABQKPTcjs.createFarmDefaultMCPServer.call(void 0,
6281
6295
  readAppPackageIdentity(this.config.root),
6282
- _chunkX5BCMLGPcjs.FARM_VERSION
6296
+ _chunkAGR7VJH2cjs.FARM_VERSION
6283
6297
  ))));
6284
6298
  return _chunkSBABQKPTcjs.resolveFarmDefaultMCPServer.call(void 0, this.defaultMCPServer);
6285
6299
  }
@@ -6310,10 +6324,10 @@ var ServerRenderer = class {
6310
6324
  // Pages are read through this server's own socket, with no cookies, as llms-full.txt does.
6311
6325
  readMarkdown: this.createDevMarkdownReader(req)
6312
6326
  });
6313
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0, res, response);
6327
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0, res, response);
6314
6328
  } catch (error) {
6315
6329
  _chunkVQJYGZNXcjs.logger.error(`Default MCP server failed: ${error}`);
6316
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0,
6330
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0,
6317
6331
  res,
6318
6332
  new Response(
6319
6333
  JSON.stringify({
@@ -6361,7 +6375,7 @@ var ServerRenderer = class {
6361
6375
  pages,
6362
6376
  config,
6363
6377
  rootMetadata,
6364
- mcp: _optionalChain([this, 'access', _266 => _266.config, 'access', _267 => _267.agent, 'optionalAccess', _268 => _268.aiCatalog]) === false ? [] : _chunkJ22JD5YJcjs.listFarmMCPLlmsTxtLinks.call(void 0, origin, {
6378
+ mcp: _optionalChain([this, 'access', _266 => _266.config, 'access', _267 => _267.agent, 'optionalAccess', _268 => _268.aiCatalog]) === false ? [] : _chunkRMPNYUGTcjs.listFarmMCPLlmsTxtLinks.call(void 0, origin, {
6365
6379
  basePath: this.config.basePath,
6366
6380
  apiServerBasePath: _chunkB5BBTPJQcjs.resolveFarmAPIServerBasePath.call(void 0,
6367
6381
  _chunkIWFV5ZEDcjs.normalizeFarmAPIConfig.call(void 0,
@@ -6439,7 +6453,7 @@ var ServerRenderer = class {
6439
6453
  ifNoneMatch: Array.isArray(ifNoneMatch) ? ifNoneMatch[0] : ifNoneMatch,
6440
6454
  renderer: _chunkRD623KW4cjs.isReactRenderer.call(void 0, this.config.renderer) ? void 0 : this.rendererRuntime
6441
6455
  });
6442
- await _chunkZ5MZDFX4cjs.sendWebResponse.call(void 0, res, response);
6456
+ await _chunkYIHRZBD7cjs.sendWebResponse.call(void 0, res, response);
6443
6457
  }
6444
6458
  async writeStaticMetadataImageResponse(req, res, image) {
6445
6459
  const method = (req.method || "GET").toUpperCase();
@@ -6626,7 +6640,7 @@ window.__FARM_ISLAND_STRATEGY__ = ${JSON.stringify(req.__FARM_ISLAND_STRATEGY__
6626
6640
  window.__FARM_PAGE_MODULE__ = ${JSON.stringify(relativePath)};
6627
6641
  window.__FARM_LOADING_MODULE__ = ${JSON.stringify(req.__FARM_LOADING_MODULE_PATH__ || null)};
6628
6642
  window.__FARM_MANIFEST__ = ${JSON.stringify(clientManifest)};
6629
- window.__FARM_INTEGRATION_API_MANIFEST__ = ${JSON.stringify(_chunkWAPQWAE6cjs.getRegisteredIntegrationAPIManifest.call(void 0, ))};
6643
+ window.__FARM_INTEGRATION_API_MANIFEST__ = ${JSON.stringify(_chunkCECUDGXQcjs.getRegisteredIntegrationAPIManifest.call(void 0, ))};
6630
6644
  window.__FARM_I18N__ = ${_chunkRVGLYMJMcjs.getFarmI18nClientSnapshot.call(void 0, ) ? serializeInlineValue(_chunkRVGLYMJMcjs.getFarmI18nClientSnapshot.call(void 0, )) : "null"};
6631
6645
  </script>`);
6632
6646
  const deferredScript = farmScripts(createDeferredHydrationScript(deferredProps.records));
@@ -6886,7 +6900,7 @@ window.__FARM_LOADING_MODULE__ = ${JSON.stringify(
6886
6900
  req.__FARM_LOADING_MODULE_PATH__ || null
6887
6901
  )};
6888
6902
  window.__FARM_MANIFEST__ = ${JSON.stringify(clientManifest)};
6889
- window.__FARM_INTEGRATION_API_MANIFEST__ = ${JSON.stringify(_chunkWAPQWAE6cjs.getRegisteredIntegrationAPIManifest.call(void 0, ))};
6903
+ window.__FARM_INTEGRATION_API_MANIFEST__ = ${JSON.stringify(_chunkCECUDGXQcjs.getRegisteredIntegrationAPIManifest.call(void 0, ))};
6890
6904
  window.__FARM_I18N__ = ${_chunkRVGLYMJMcjs.getFarmI18nClientSnapshot.call(void 0, ) ? serializeInlineValue(_chunkRVGLYMJMcjs.getFarmI18nClientSnapshot.call(void 0, )) : "null"};
6891
6905
  </script>`;
6892
6906
  const hydrationClickQueueScript = isClientComponent || req.__FARM_SHOULD_HYDRATE__ === true || req.__FARM_HAS_HYDRATABLE_ROUTE_SLOTS__ === true ? createPreHydrationClickQueueScript() : "";
@@ -7342,7 +7356,7 @@ window.__FARM_I18N__ = ${_chunkRVGLYMJMcjs.getFarmI18nClientSnapshot.call(void 0
7342
7356
  stack: _optionalChain([diagnostics, 'optionalAccess', _322 => _322.stack]),
7343
7357
  sourceFrame: _optionalChain([diagnostics, 'optionalAccess', _323 => _323.sourceFrame]),
7344
7358
  development: isDev,
7345
- farmVersion: _chunkX5BCMLGPcjs.FARM_VERSION,
7359
+ farmVersion: _chunkAGR7VJH2cjs.FARM_VERSION,
7346
7360
  nodeVersion: process.version,
7347
7361
  mode: isDev ? "development" : "production"
7348
7362
  })
@@ -7379,7 +7393,7 @@ window.__FARM_I18N__ = ${_chunkRVGLYMJMcjs.getFarmI18nClientSnapshot.call(void 0
7379
7393
  const viteClientScript = farmScripts(`<script type="module" src="/@vite/client"></script>`);
7380
7394
  const integrationManifestScript = farmScripts(`<script>
7381
7395
  window.__FARM_DEPLOYMENT_ID__ = ${serializeInlineValue(this.getDeploymentId())};
7382
- window.__FARM_INTEGRATION_API_MANIFEST__ = ${JSON.stringify(_chunkWAPQWAE6cjs.getRegisteredIntegrationAPIManifest.call(void 0, ))};
7396
+ window.__FARM_INTEGRATION_API_MANIFEST__ = ${JSON.stringify(_chunkCECUDGXQcjs.getRegisteredIntegrationAPIManifest.call(void 0, ))};
7383
7397
  ${i18nSnapshot ? `window.__FARM_I18N__ = ${serializeInlineValue(i18nSnapshot)};` : ""}
7384
7398
  </script>`);
7385
7399
  const alternateLinks = i18nSnapshot ? renderI18nAlternateLinks(