@farm.js/core 0.1.40 → 0.1.42

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 (238) hide show
  1. package/dist/{agent-mcp-DRlXq3lM.d.ts → agent-mcp-SSD6L3VZ.d.ts} +8 -2
  2. package/dist/{agent-mcp-XNF4JqHw.d.mts → agent-mcp-ssVy_tea.d.mts} +8 -2
  3. package/dist/agent-runtime.d.mts +2 -2
  4. package/dist/agent-runtime.d.ts +2 -2
  5. package/dist/api/client.cjs +3 -3
  6. package/dist/api/client.mjs +2 -2
  7. package/dist/api/route-manager.cjs +8 -8
  8. package/dist/api/route-manager.d.mts +4 -4
  9. package/dist/api/route-manager.d.ts +4 -4
  10. package/dist/api/route-manager.mjs +7 -7
  11. package/dist/api/runtime.cjs +6 -6
  12. package/dist/api/runtime.d.mts +3 -3
  13. package/dist/api/runtime.d.ts +3 -3
  14. package/dist/api/runtime.mjs +5 -5
  15. package/dist/api.cjs +10 -10
  16. package/dist/api.d.mts +4 -4
  17. package/dist/api.d.ts +4 -4
  18. package/dist/api.mjs +9 -9
  19. package/dist/{app-CWjCklhF.d.mts → app-1h3lVT4a.d.mts} +5 -5
  20. package/dist/{app-CDJHPqZn.d.ts → app-KjFzdCqy.d.ts} +5 -5
  21. package/dist/app-manifest-D3RkVNuS.d.mts +120 -0
  22. package/dist/app-manifest-DaW8-tvX.d.ts +120 -0
  23. package/dist/app-markdown.d.mts +3 -3
  24. package/dist/app-markdown.d.ts +3 -3
  25. package/dist/cache.cjs +3 -3
  26. package/dist/cache.mjs +2 -2
  27. package/dist/{chunk-UM3ZV5EP.mjs → chunk-24SP5TGU.mjs} +1 -1
  28. package/dist/{chunk-B6IMBBOS.cjs → chunk-25LPIZSX.cjs} +3 -3
  29. package/dist/{chunk-WW374SGU.mjs → chunk-26RUNDIR.mjs} +1 -1
  30. package/dist/{chunk-B77AUCBV.cjs → chunk-2FUIT2G2.cjs} +3 -3
  31. package/dist/{chunk-IMQO6ZUU.mjs → chunk-2JZHQDUY.mjs} +2 -2
  32. package/dist/{chunk-BPGO2IEP.mjs → chunk-35WS7P2V.mjs} +24 -126
  33. package/dist/{chunk-XKIUHXHW.mjs → chunk-375K2ZVU.mjs} +46 -52
  34. package/dist/{chunk-MNUSIXGS.mjs → chunk-4KQDHTWX.mjs} +1 -1
  35. package/dist/{chunk-DATEWH3W.cjs → chunk-6IZWX6ES.cjs} +22 -8
  36. package/dist/{chunk-Y6LRPO2K.mjs → chunk-6LVRDOAW.mjs} +19 -5
  37. package/dist/{chunk-UMQAK3KP.cjs → chunk-6MVFHNYZ.cjs} +2 -2
  38. package/dist/{chunk-OLQ73ZO5.mjs → chunk-6PKXK4TY.mjs} +3 -3
  39. package/dist/{chunk-PYQ3ZG4Z.mjs → chunk-724JLMS4.mjs} +4 -4
  40. package/dist/{chunk-PNCM5MFD.mjs → chunk-7UEEHAW7.mjs} +1 -1
  41. package/dist/{chunk-EW4MEVLE.cjs → chunk-7YHSD3Z6.cjs} +82 -118
  42. package/dist/{chunk-DKU6NXRK.cjs → chunk-AHFRQMRX.cjs} +1 -1
  43. package/dist/{chunk-7VAJSSPG.mjs → chunk-B2GSRB3P.mjs} +1 -1
  44. package/dist/{chunk-JXB6DVCO.mjs → chunk-BPNRQ5BA.mjs} +1 -1
  45. package/dist/{chunk-FLZ4H25A.cjs → chunk-BXJ5HJTJ.cjs} +13 -12
  46. package/dist/{chunk-GNVEJUT5.cjs → chunk-C5KVWHIH.cjs} +21 -21
  47. package/dist/chunk-COABSY3U.mjs +196 -0
  48. package/dist/{chunk-Y2GNNXGV.cjs → chunk-D64OPY6A.cjs} +5 -5
  49. package/dist/{chunk-BYQVROIP.mjs → chunk-DMRPN25V.mjs} +69 -0
  50. package/dist/{chunk-I64GEPOB.cjs → chunk-FEYQCYT7.cjs} +3 -3
  51. package/dist/{chunk-AXB5P7BK.mjs → chunk-FIAPD365.mjs} +1 -1
  52. package/dist/{chunk-7FHZ3E6D.cjs → chunk-GB7LDGY5.cjs} +2 -2
  53. package/dist/{chunk-45UZKX2J.mjs → chunk-HJ64F4GS.mjs} +2 -2
  54. package/dist/{chunk-IRYK4Z5M.cjs → chunk-I5MG3TKE.cjs} +2 -2
  55. package/dist/{chunk-YR2P74F7.cjs → chunk-IFWSR7YZ.cjs} +2 -2
  56. package/dist/{chunk-5E65AL7P.mjs → chunk-IN6RCKLL.mjs} +5 -4
  57. package/dist/{chunk-CKFK3Z2V.mjs → chunk-IVQY6UTY.mjs} +1 -1
  58. package/dist/{chunk-3TB5QGUW.cjs → chunk-JAXDRRRC.cjs} +70 -1
  59. package/dist/{chunk-EORXKFLR.cjs → chunk-JEIG3EWE.cjs} +1 -1
  60. package/dist/{chunk-54QWHSNR.cjs → chunk-JG3MEQUH.cjs} +150 -156
  61. package/dist/{chunk-TFX4RTH2.mjs → chunk-JOW4HDJO.mjs} +1 -1
  62. package/dist/{chunk-H44XGLFU.cjs → chunk-L6A26QT5.cjs} +9 -9
  63. package/dist/{chunk-OZN4XL6L.cjs → chunk-LIZTLA5F.cjs} +7 -6
  64. package/dist/{chunk-62DY5GKS.mjs → chunk-LLUA2LSC.mjs} +2 -2
  65. package/dist/{chunk-LDPKAYVS.cjs → chunk-LYIZHJTK.cjs} +2 -2
  66. package/dist/{chunk-2DMWQWNJ.mjs → chunk-MEASUNVY.mjs} +1 -1
  67. package/dist/{chunk-T4II4MMW.mjs → chunk-MHHCLYXU.mjs} +1 -1
  68. package/dist/{chunk-SHFXCE5A.cjs → chunk-MHN4UR5U.cjs} +4 -4
  69. package/dist/{chunk-5JEC43MQ.cjs → chunk-MN4TQJ3W.cjs} +9 -9
  70. package/dist/{chunk-5XS5NCVM.cjs → chunk-MY5PZYAD.cjs} +4 -4
  71. package/dist/{chunk-2JG2LJDI.cjs → chunk-NBPNUQYO.cjs} +2 -2
  72. package/dist/{chunk-4XO5GSD6.cjs → chunk-NFG4PUPI.cjs} +2 -2
  73. package/dist/{chunk-Y4QVEU67.mjs → chunk-NU25TRIO.mjs} +5 -4
  74. package/dist/{chunk-5LL6TKII.mjs → chunk-O7USYJ4U.mjs} +1 -1
  75. package/dist/{chunk-VBN3UAPQ.mjs → chunk-P2UJF4SS.mjs} +1 -1
  76. package/dist/{chunk-T6DLMX5V.mjs → chunk-PIZXONIS.mjs} +73 -109
  77. package/dist/{chunk-KK22JPQM.cjs → chunk-QEILRWVV.cjs} +30 -132
  78. package/dist/{chunk-UXMIFB44.cjs → chunk-QIBP5EFA.cjs} +5 -5
  79. package/dist/{chunk-TAKG7ZCD.cjs → chunk-QKZMB7LY.cjs} +14 -14
  80. package/dist/{chunk-FCOLU5P6.mjs → chunk-QTEJGB5A.mjs} +39 -16
  81. package/dist/{chunk-QJM7A4CR.cjs → chunk-S7MTDRYA.cjs} +10 -10
  82. package/dist/{chunk-ACLPN56I.mjs → chunk-SGB4IW7K.mjs} +1 -1
  83. package/dist/{chunk-GKQL726H.cjs → chunk-TCJ4A4A2.cjs} +78 -82
  84. package/dist/{chunk-ZKVJYQPO.mjs → chunk-TUL355PH.mjs} +13 -17
  85. package/dist/{chunk-H56MQYEG.mjs → chunk-U2UC7UGP.mjs} +1 -1
  86. package/dist/{chunk-I63UCMXW.mjs → chunk-ULQOP5UI.mjs} +2 -2
  87. package/dist/{chunk-HBEBV7OZ.mjs → chunk-UQUEANTY.mjs} +1 -1
  88. package/dist/chunk-VHRS3MCW.cjs +196 -0
  89. package/dist/{chunk-WCWV25PG.mjs → chunk-VTBXE6QG.mjs} +2 -2
  90. package/dist/{chunk-E55H6UKH.cjs → chunk-WLHA5USH.cjs} +9 -9
  91. package/dist/{chunk-YJBWB6GF.mjs → chunk-WMBRZI5V.mjs} +1 -1
  92. package/dist/{chunk-AGR7F3LA.cjs → chunk-WROEFVNO.cjs} +3 -3
  93. package/dist/{chunk-CA62IQY3.cjs → chunk-WU7ZS3EM.cjs} +2 -2
  94. package/dist/{chunk-ZOABCQGT.mjs → chunk-X3NGFVRF.mjs} +37 -22
  95. package/dist/{chunk-XJAEZCT6.mjs → chunk-XUC6CFLE.mjs} +1 -1
  96. package/dist/{chunk-6ILGLCXF.cjs → chunk-YWCYV7QC.cjs} +8 -8
  97. package/dist/{chunk-T36UJS3X.mjs → chunk-YYQVGKO5.mjs} +2 -2
  98. package/dist/{chunk-EGCT3AHF.cjs → chunk-ZATTDMBW.cjs} +127 -104
  99. package/dist/{chunk-PGW7HZE2.cjs → chunk-ZS6HDNOM.cjs} +6 -6
  100. package/dist/{chunk-XVIEGKTT.cjs → chunk-ZTP3BJG6.cjs} +41 -26
  101. package/dist/{client-plugins-B_5QbNrp.d.mts → client-plugins-C9Py_50W.d.mts} +79 -7
  102. package/dist/{client-plugins-DgSfIWIF.d.ts → client-plugins-DIem0I0W.d.ts} +79 -7
  103. package/dist/client-plugins.d.mts +2 -2
  104. package/dist/client-plugins.d.ts +2 -2
  105. package/dist/client.cjs +5 -5
  106. package/dist/client.d.mts +6 -6
  107. package/dist/client.d.ts +6 -6
  108. package/dist/client.mjs +4 -4
  109. package/dist/client.react-server.mjs +2 -0
  110. package/dist/config.d.mts +2 -2
  111. package/dist/config.d.ts +2 -2
  112. package/dist/{devtools-ANJ7JAPQ.cjs → devtools-2RY3EKHL.cjs} +6 -6
  113. package/dist/{devtools-VEQQDVHE.mjs → devtools-Q3LBNUJ7.mjs} +5 -5
  114. package/dist/docs.cjs +8 -8
  115. package/dist/docs.d.mts +3 -3
  116. package/dist/docs.d.ts +3 -3
  117. package/dist/docs.mjs +7 -7
  118. package/dist/headers.cjs +4 -4
  119. package/dist/headers.mjs +3 -3
  120. package/dist/image/server.d.mts +1 -1
  121. package/dist/image/server.d.ts +1 -1
  122. package/dist/image/sharp.d.mts +1 -1
  123. package/dist/image/sharp.d.ts +1 -1
  124. package/dist/{image-config-Duob7wER.d.ts → image-config-BpH1q5R8.d.mts} +4 -1
  125. package/dist/{image-config-Duob7wER.d.mts → image-config-BpH1q5R8.d.ts} +4 -1
  126. package/dist/image.d.mts +1 -1
  127. package/dist/image.d.ts +1 -1
  128. package/dist/index.cjs +40 -38
  129. package/dist/index.d.mts +16 -135
  130. package/dist/index.d.ts +16 -135
  131. package/dist/index.mjs +39 -37
  132. package/dist/integrations.d.mts +2 -2
  133. package/dist/integrations.d.ts +2 -2
  134. package/dist/internal/app-markdown-runtime.d.mts +3 -3
  135. package/dist/internal/app-markdown-runtime.d.ts +3 -3
  136. package/dist/internal/build-runtime.cjs +23 -23
  137. package/dist/internal/build-runtime.d.mts +4 -4
  138. package/dist/internal/build-runtime.d.ts +4 -4
  139. package/dist/internal/build-runtime.mjs +22 -22
  140. package/dist/internal/cli-runtime.cjs +13 -13
  141. package/dist/internal/cli-runtime.mjs +12 -12
  142. package/dist/internal/client-error-overlay.cjs +4 -4
  143. package/dist/internal/client-error-overlay.mjs +1 -1
  144. package/dist/internal/compression-runtime.d.mts +2 -2
  145. package/dist/internal/compression-runtime.d.ts +2 -2
  146. package/dist/internal/config-runtime.cjs +6 -6
  147. package/dist/internal/config-runtime.d.mts +3 -3
  148. package/dist/internal/config-runtime.d.ts +3 -3
  149. package/dist/internal/config-runtime.mjs +5 -5
  150. package/dist/internal/docs-precompiled-runtime.cjs +3 -3
  151. package/dist/internal/docs-precompiled-runtime.mjs +2 -2
  152. package/dist/internal/infra-analytics-runtime.cjs +5 -5
  153. package/dist/internal/infra-analytics-runtime.mjs +3 -3
  154. package/dist/internal/product-telemetry-runtime.cjs +2 -2
  155. package/dist/internal/product-telemetry-runtime.mjs +1 -1
  156. package/dist/internal/production-runtime.cjs +21 -13
  157. package/dist/internal/production-runtime.d.mts +29 -126
  158. package/dist/internal/production-runtime.d.ts +29 -126
  159. package/dist/internal/production-runtime.mjs +21 -13
  160. package/dist/markdown.d.mts +2 -2
  161. package/dist/markdown.d.ts +2 -2
  162. package/dist/middleware.cjs +7 -7
  163. package/dist/middleware.d.mts +4 -4
  164. package/dist/middleware.d.ts +4 -4
  165. package/dist/middleware.mjs +6 -6
  166. package/dist/navigation.cjs +4 -4
  167. package/dist/navigation.d.mts +5 -5
  168. package/dist/navigation.d.ts +5 -5
  169. package/dist/navigation.mjs +3 -3
  170. package/dist/{nitro-NFG2LBRC.mjs → nitro-KDACKNHU.mjs} +1 -1
  171. package/dist/{nitro-S2QABUFA.cjs → nitro-NPGU6VBT.cjs} +2 -2
  172. package/dist/plugin.cjs +21 -21
  173. package/dist/plugin.d.mts +4 -3
  174. package/dist/plugin.d.ts +4 -3
  175. package/dist/plugin.mjs +20 -20
  176. package/dist/{production-runtime-j_WCfuwB.d.mts → production-runtime-CHFKIgpW.d.mts} +1 -1
  177. package/dist/{production-runtime-DfknD3g_.d.ts → production-runtime-bjjWq-DA.d.ts} +1 -1
  178. package/dist/query/client.cjs +2 -2
  179. package/dist/query/client.mjs +3 -3
  180. package/dist/{render-plan-CFIhcYYS.d.ts → render-plan-B2UndB4x.d.ts} +1 -1
  181. package/dist/{render-plan-ChUtsymc.d.mts → render-plan-DOHg6wdO.d.mts} +1 -1
  182. package/dist/renderer-client.d.mts +4 -4
  183. package/dist/renderer-client.d.ts +4 -4
  184. package/dist/{request-F4HRwzSd.d.mts → request-DQcGfdgQ.d.mts} +1 -1
  185. package/dist/{request-RJvelT8L.d.ts → request-DVNXRQrI.d.ts} +1 -1
  186. package/dist/request.cjs +3 -3
  187. package/dist/request.d.mts +3 -3
  188. package/dist/request.d.ts +3 -3
  189. package/dist/request.mjs +2 -2
  190. package/dist/{route-rendering-D4coJ-kw.d.ts → route-rendering-B_6fj-GG.d.ts} +1 -1
  191. package/dist/{route-rendering-3a4fbNyC.d.mts → route-rendering-CEX4mFn-.d.mts} +1 -1
  192. package/dist/{router-WLEW3Te1.d.ts → router-CHEMHm1P.d.ts} +1 -1
  193. package/dist/{router-DqIssGRO.d.mts → router-CKHPBKXX.d.mts} +1 -1
  194. package/dist/routes.cjs +4 -4
  195. package/dist/routes.d.mts +2 -2
  196. package/dist/routes.d.ts +2 -2
  197. package/dist/routes.mjs +3 -3
  198. package/dist/{runtime-BrNdLOq9.d.ts → runtime-Br2ZDTAv.d.ts} +1 -1
  199. package/dist/{runtime-CmE_j-js.d.mts → runtime-jj8TKNsy.d.mts} +1 -1
  200. package/dist/server-fn.cjs +4 -4
  201. package/dist/server-fn.mjs +3 -3
  202. package/dist/server-plugins.cjs +5 -5
  203. package/dist/server-plugins.d.mts +3 -3
  204. package/dist/server-plugins.d.ts +3 -3
  205. package/dist/server-plugins.mjs +4 -4
  206. package/dist/server-query.cjs +5 -5
  207. package/dist/server-query.mjs +4 -4
  208. package/dist/server.cjs +46 -46
  209. package/dist/server.d.mts +10 -9
  210. package/dist/server.d.ts +10 -9
  211. package/dist/server.mjs +25 -25
  212. package/dist/{spa-router-C41zjnFl.d.mts → spa-router-BEvS9Erj.d.mts} +2 -2
  213. package/dist/{spa-router-D_0VXqPC.d.ts → spa-router-DmCuH5B7.d.ts} +2 -2
  214. package/dist/ssg-57v6cZcW.d.mts +184 -0
  215. package/dist/ssg-gT093ETk.d.ts +184 -0
  216. package/dist/testing.cjs +11 -11
  217. package/dist/testing.d.mts +2 -2
  218. package/dist/testing.d.ts +2 -2
  219. package/dist/testing.mjs +8 -8
  220. package/dist/theme/server.cjs +4 -4
  221. package/dist/theme/server.mjs +3 -3
  222. package/dist/{utils-YYcWsOJp.d.ts → utils-CCTKvR-P.d.ts} +1 -1
  223. package/dist/{utils-BKWSe3S7.d.mts → utils-raHHQVyL.d.mts} +1 -1
  224. package/dist/version.cjs +2 -2
  225. package/dist/version.mjs +1 -1
  226. package/dist/vite.cjs +38 -22
  227. package/dist/vite.d.mts +41 -4
  228. package/dist/vite.d.ts +41 -4
  229. package/dist/vite.mjs +38 -22
  230. package/dist/workflows.cjs +2 -2
  231. package/dist/workflows.mjs +1 -1
  232. package/package.json +2 -1
  233. package/dist/chunk-DAO7JGTS.mjs +0 -73
  234. package/dist/chunk-SYQ3MOWW.cjs +0 -73
  235. package/dist/programmatic-routes-client-DcoxEaLe.d.mts +0 -55
  236. package/dist/programmatic-routes-client-DcoxEaLe.d.ts +0 -55
  237. /package/dist/{chunk-MOSYH4CY.mjs → chunk-FWCGUVVL.mjs} +0 -0
  238. /package/dist/{chunk-4A3YUB4D.cjs → chunk-KF6VDJH7.cjs} +0 -0
@@ -4,14 +4,14 @@
4
4
 
5
5
 
6
6
 
7
- var _chunk5XS5NCVMcjs = require('./chunk-5XS5NCVM.cjs');
7
+ var _chunkMY5PZYADcjs = require('./chunk-MY5PZYAD.cjs');
8
8
 
9
9
 
10
10
 
11
11
  var _chunkIK6LVLKCcjs = require('./chunk-IK6LVLKC.cjs');
12
12
 
13
13
 
14
- var _chunkFLZ4H25Acjs = require('./chunk-FLZ4H25A.cjs');
14
+ var _chunkBXJ5HJTJcjs = require('./chunk-BXJ5HJTJ.cjs');
15
15
 
16
16
 
17
17
 
@@ -30,7 +30,7 @@ function hasFarmDocsRuntimeAdapter(docs) {
30
30
  _chunkS3JO3N4Hcjs.__name.call(void 0, hasFarmDocsRuntimeAdapter, "hasFarmDocsRuntimeAdapter");
31
31
  function assertFarmDocsAdapterServesNoGuardedPages(docs, options, isPathGuarded) {
32
32
  if (!isPathGuarded || !hasFarmDocsRuntimeAdapter(docs)) return;
33
- const guarded = _chunk5XS5NCVMcjs.discoverFarmDocsPages.call(void 0, _chunk5XS5NCVMcjs.resolveFarmDocsContentDir.call(void 0, docs, options), docs).filter((page) => isPathGuarded(page.href) || isPathGuarded(_chunk5XS5NCVMcjs.getFarmDocsMarkdownPath.call(void 0, page.href))).map((page) => page.href);
33
+ const guarded = _chunkMY5PZYADcjs.discoverFarmDocsPages.call(void 0, _chunkMY5PZYADcjs.resolveFarmDocsContentDir.call(void 0, docs, options), docs).filter((page) => isPathGuarded(page.href) || isPathGuarded(_chunkMY5PZYADcjs.getFarmDocsMarkdownPath.call(void 0, page.href))).map((page) => page.href);
34
34
  if (guarded.length === 0) return;
35
35
  throw new Error(
36
36
  `Docs pages behind a path guard (${guarded.join(", ")}) would be public: the docs adapter ${JSON.stringify(docs.adapter.id)} serves their content in llms-full.txt, search, Markdown, and MCP without running the app's guards. Move those pages out of the docs content directory, or set docs.adapter = false to use Farm's built-in docs runtime, which keeps guarded pages off anonymous surfaces.`
@@ -50,7 +50,7 @@ function createFarmDocsAdapterRuntimeConfig(docs, options, moduleConfig) {
50
50
  ...moduleConfig ? { ...moduleConfig, ...docs.configOverrides } : _nullishCoalesce(docs.runtimeConfig, () => ( docs.config)),
51
51
  entry: docs.config.entry || docs.entry.replace(/^\/+|\/+$/g, "") || "docs",
52
52
  docsPath: docs.entry,
53
- contentDir: _chunk5XS5NCVMcjs.resolveFarmDocsContentDir.call(void 0, docs, options)
53
+ contentDir: _chunkMY5PZYADcjs.resolveFarmDocsContentDir.call(void 0, docs, options)
54
54
  };
55
55
  }
56
56
  _chunkS3JO3N4Hcjs.__name.call(void 0, createFarmDocsAdapterRuntimeConfig, "createFarmDocsAdapterRuntimeConfig");
@@ -288,25 +288,25 @@ function getDocsDescription(docs) {
288
288
  }
289
289
  _chunkS3JO3N4Hcjs.__name.call(void 0, getDocsDescription, "getDocsDescription");
290
290
  function getLoadedDocsPages(context) {
291
- return _chunk5XS5NCVMcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs).filter((page) => !context.isPathGuarded(page.href)).map((page) => _chunk5XS5NCVMcjs.loadFarmDocsPage.call(void 0, context.contentDir, context.docs, page.slug)).filter((page) => Boolean(page));
291
+ return _chunkMY5PZYADcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs).filter((page) => !context.isPathGuarded(page.href)).map((page) => _chunkMY5PZYADcjs.loadFarmDocsPage.call(void 0, context.contentDir, context.docs, page.slug)).filter((page) => Boolean(page));
292
292
  }
293
293
  _chunkS3JO3N4Hcjs.__name.call(void 0, getLoadedDocsPages, "getLoadedDocsPages");
294
294
  function toDocsSourcePage(page) {
295
295
  return {
296
- ..._chunk5XS5NCVMcjs.toFarmDocsMarkdownPage.call(void 0, page),
296
+ ..._chunkMY5PZYADcjs.toFarmDocsMarkdownPage.call(void 0, page),
297
297
  sourcePath: page.sourcePath
298
298
  };
299
299
  }
300
300
  _chunkS3JO3N4Hcjs.__name.call(void 0, toDocsSourcePage, "toDocsSourcePage");
301
301
  function toDocsSitemapPage(page) {
302
302
  return {
303
- ..._chunk5XS5NCVMcjs.toFarmDocsMarkdownPage.call(void 0, page),
303
+ ..._chunkMY5PZYADcjs.toFarmDocsMarkdownPage.call(void 0, page),
304
304
  sourcePath: page.sourcePath
305
305
  };
306
306
  }
307
307
  _chunkS3JO3N4Hcjs.__name.call(void 0, toDocsSitemapPage, "toDocsSitemapPage");
308
308
  function toDocsLlmsPage(page) {
309
- return _chunk5XS5NCVMcjs.toFarmDocsMarkdownPage.call(void 0, page);
309
+ return _chunkMY5PZYADcjs.toFarmDocsMarkdownPage.call(void 0, page);
310
310
  }
311
311
  _chunkS3JO3N4Hcjs.__name.call(void 0, toDocsLlmsPage, "toDocsLlmsPage");
312
312
  function getDocsLlmsOptions(context, request) {
@@ -400,7 +400,7 @@ _chunkS3JO3N4Hcjs.__name.call(void 0, renderAgentsDocument, "renderAgentsDocumen
400
400
  function buildAgentSpec(context, request) {
401
401
  const url = new URL(request.url);
402
402
  const origin = url.origin;
403
- const pages = _chunk5XS5NCVMcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs).filter(
403
+ const pages = _chunkMY5PZYADcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs).filter(
404
404
  (page) => !context.isPathGuarded(page.href)
405
405
  );
406
406
  const spec = _chunkIK6LVLKCcjs.docsEngine.call(void 0, ).buildDocsAgentDiscoverySpec(getDocsDiscoveryOptions(context, request));
@@ -492,7 +492,7 @@ function buildPublicConfig(context) {
492
492
  }
493
493
  _chunkS3JO3N4Hcjs.__name.call(void 0, buildPublicConfig, "buildPublicConfig");
494
494
  function buildDiagnostics(context) {
495
- const pages = _chunk5XS5NCVMcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs);
495
+ const pages = _chunkMY5PZYADcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs);
496
496
  const diagnostics = _chunkIK6LVLKCcjs.docsEngine.call(void 0, ).buildDocsDiagnostics(context.docs.config, {
497
497
  entry: context.docs.entry,
498
498
  mcp: {
@@ -564,13 +564,13 @@ async function resolveAPIContext(options) {
564
564
  config: options.config,
565
565
  configPath: options.configPath
566
566
  }));
567
- const docs = isResolvedDocsConfig(docsInput) ? docsInput : await _chunkFLZ4H25Acjs.resolveDocsConfig.call(void 0, docsInput, { root, srcDir });
567
+ const docs = isResolvedDocsConfig(docsInput) ? docsInput : await _chunkBXJ5HJTJcjs.resolveDocsConfig.call(void 0, docsInput, { root, srcDir });
568
568
  const guardedPaths = new Set(_nullishCoalesce(_optionalChain([runtimeConfig, 'optionalAccess', _20 => _20.guardedPaths]), () => ( [])));
569
569
  return {
570
570
  root,
571
571
  srcDir,
572
572
  docs,
573
- contentDir: _chunk5XS5NCVMcjs.resolveFarmDocsContentDir.call(void 0, docs, { root, srcDir }),
573
+ contentDir: _chunkMY5PZYADcjs.resolveFarmDocsContentDir.call(void 0, docs, { root, srcDir }),
574
574
  diagnostics: options.diagnostics === true,
575
575
  isPathGuarded: _nullishCoalesce(options.isPathGuarded, () => ( ((pathname) => guardedPaths.has(pathname))))
576
576
  };
@@ -630,12 +630,12 @@ async function handleDocsAPIGet(request, context) {
630
630
  if (format === "markdown" || url.pathname.endsWith(".md")) {
631
631
  const pathParam = url.searchParams.get("path") || url.searchParams.get("slug");
632
632
  const slug = normalizeDocsApiSlug(_nullishCoalesce(_nullishCoalesce(pathParam, () => ( pathTarget.slug)), () => ( "")), context.docs);
633
- const page = _chunk5XS5NCVMcjs.loadFarmDocsPage.call(void 0, context.contentDir, context.docs, slug);
633
+ const page = _chunkMY5PZYADcjs.loadFarmDocsPage.call(void 0, context.contentDir, context.docs, slug);
634
634
  if (!page || context.isPathGuarded(page.href)) {
635
635
  return text("Docs page not found\n", "text/plain; charset=utf-8", { status: 404 });
636
636
  }
637
637
  return text(
638
- _chunkIK6LVLKCcjs.docsEngine.call(void 0, ).renderDocsMarkdownDocument(_chunk5XS5NCVMcjs.toFarmDocsMarkdownPage.call(void 0, page), {
638
+ _chunkIK6LVLKCcjs.docsEngine.call(void 0, ).renderDocsMarkdownDocument(_chunkMY5PZYADcjs.toFarmDocsMarkdownPage.call(void 0, page), {
639
639
  origin: new URL(request.url).origin,
640
640
  llms: getDocsLlmsOptions(context, request),
641
641
  sitemap: context.docs.config.sitemap
@@ -2,7 +2,7 @@ import {
2
2
  collectSSGPages,
3
3
  matchSSGPage,
4
4
  resolveRouteRenderingConfigFromFile
5
- } from "./chunk-BPGO2IEP.mjs";
5
+ } from "./chunk-35WS7P2V.mjs";
6
6
  import {
7
7
  classifyFarmDocumentPrefix,
8
8
  composeFarmFullDocument,
@@ -24,7 +24,7 @@ import {
24
24
  renderFarmLocaleAlternateLinks,
25
25
  resolveDefaultErrorStatus,
26
26
  routeBoundaryCoversDirectory
27
- } from "./chunk-T6DLMX5V.mjs";
27
+ } from "./chunk-PIZXONIS.mjs";
28
28
  import {
29
29
  FARM_DEFAULT_MCP_PATH,
30
30
  collectFarmDefaultMCPPages,
@@ -48,7 +48,7 @@ import {
48
48
  import {
49
49
  _setDefaultFarmThemeConfig,
50
50
  getTheme
51
- } from "./chunk-AXB5P7BK.mjs";
51
+ } from "./chunk-FIAPD365.mjs";
52
52
  import {
53
53
  isSecretDocsConfigKey
54
54
  } from "./chunk-J7K2NZD6.mjs";
@@ -81,7 +81,7 @@ import {
81
81
  resolveFarmAgentCrawlers,
82
82
  resolveFarmAgentSitemap,
83
83
  resolveFarmPerformanceConfig
84
- } from "./chunk-BYQVROIP.mjs";
84
+ } from "./chunk-DMRPN25V.mjs";
85
85
  import {
86
86
  collectFarmLlmsTxtPages,
87
87
  createFarmDefaultLlmsTxt,
@@ -96,7 +96,7 @@ import {
96
96
  getFarmSecurityHeader,
97
97
  resolveFarmSecurityConfig,
98
98
  stampFarmCspNonce
99
- } from "./chunk-PNCM5MFD.mjs";
99
+ } from "./chunk-7UEEHAW7.mjs";
100
100
  import {
101
101
  getFarmAppDirectories,
102
102
  getFarmSourceRoots
@@ -132,7 +132,7 @@ import {
132
132
  } from "./chunk-I6UVKUYK.mjs";
133
133
  import {
134
134
  resolveWorkflowsConfig
135
- } from "./chunk-JXB6DVCO.mjs";
135
+ } from "./chunk-BPNRQ5BA.mjs";
136
136
  import {
137
137
  initStorage
138
138
  } from "./chunk-JGHCKIRI.mjs";
@@ -161,7 +161,7 @@ import {
161
161
  import {
162
162
  findProgrammaticRouteFiles,
163
163
  loadProgrammaticRouteManifests
164
- } from "./chunk-MOSYH4CY.mjs";
164
+ } from "./chunk-FWCGUVVL.mjs";
165
165
  import {
166
166
  _runWithFarmI18nRequest,
167
167
  _setDefaultFarmI18nRuntime,
@@ -191,7 +191,7 @@ import {
191
191
  configureFarmCache,
192
192
  getFarmDataCache,
193
193
  normalizeRevalidatePath
194
- } from "./chunk-7VAJSSPG.mjs";
194
+ } from "./chunk-B2GSRB3P.mjs";
195
195
  import {
196
196
  toFileModuleUrl
197
197
  } from "./chunk-7GNWGLWB.mjs";
@@ -237,7 +237,7 @@ import {
237
237
  } from "./chunk-P7XDC7UJ.mjs";
238
238
  import {
239
239
  FARM_VERSION
240
- } from "./chunk-H56MQYEG.mjs";
240
+ } from "./chunk-U2UC7UGP.mjs";
241
241
  import {
242
242
  resolveFarmTrailingSlashRedirect,
243
243
  setFarmTrailingSlashPreference
@@ -284,11 +284,11 @@ import {
284
284
  createWebRequestFromFarmRequest,
285
285
  getCurrentRequestOrNull,
286
286
  resolveFarmRequestURL
287
- } from "./chunk-ZOABCQGT.mjs";
287
+ } from "./chunk-X3NGFVRF.mjs";
288
288
  import {
289
- _resolveCurrentCspNonce,
290
- _resolveCurrentRequest
291
- } from "./chunk-Y6LRPO2K.mjs";
289
+ _peekCurrentRequest,
290
+ _resolveCurrentCspNonce
291
+ } from "./chunk-6LVRDOAW.mjs";
292
292
  import {
293
293
  localizeFarmHref,
294
294
  localizeFarmPathname,
@@ -3179,6 +3179,7 @@ function farmFontImportsPlugin(options = {}) {
3179
3179
  id,
3180
3180
  root,
3181
3181
  production,
3182
+ importCss: options.importCss,
3182
3183
  parse: /* @__PURE__ */ __name((source) => this.parse(source), "parse"),
3183
3184
  register: /* @__PURE__ */ __name((moduleId, calls) => registry.register(moduleId, calls, production), "register")
3184
3185
  });
@@ -3219,7 +3220,7 @@ async function transformFarmFontCalls(options) {
3219
3220
  new Set(calls.map((call) => call.binding).filter((value) => Boolean(value)))
3220
3221
  )
3221
3222
  );
3222
- const imports = options.production ? "" : Array.from(new Set(fonts.map((font) => font.id))).map((id) => `import ${JSON.stringify(`virtual:farm-font-css/${id}.css`)};`).join("\n");
3223
+ const imports = options.production && !options.importCss ? "" : Array.from(new Set(fonts.map((font) => font.id))).map((id) => `import ${JSON.stringify(`virtual:farm-font-css/${id}.css`)};`).join("\n");
3223
3224
  return {
3224
3225
  code: `${applyReplacements(options.code, replacements)}
3225
3226
  ${imports}
@@ -5555,7 +5556,7 @@ var _ServerRenderer = class _ServerRenderer {
5555
5556
  key: pprCacheKey
5556
5557
  });
5557
5558
  }
5558
- const outerRequest = _resolveCurrentRequest();
5559
+ const outerRequest = _peekCurrentRequest();
5559
5560
  const countRequestReads = /* @__PURE__ */ __name(() => (outerRequest ? _getRequestReadCount(outerRequest) : 0) + _getRequestReadCount(currentRequest), "countRequestReads");
5560
5561
  const requestReadsBeforeRender = countRequestReads();
5561
5562
  let LoadingFallbackComponent = null;
@@ -7642,6 +7643,19 @@ function resolveFarmImageProviderForRuntime(images, options) {
7642
7643
  return Object.freeze({ ...images, provider: "none" });
7643
7644
  }
7644
7645
  __name(resolveFarmImageProviderForRuntime, "resolveFarmImageProviderForRuntime");
7646
+ function resolveFarmImageServerRuntime(images, preset) {
7647
+ const provider = images.provider ?? "auto";
7648
+ if (provider === "none") return "none";
7649
+ const cloudflarePreset = CLOUDFLARE_IMAGE_PRESETS.has(preset);
7650
+ if (provider === "node" && cloudflarePreset) {
7651
+ throw new Error('images.provider "node" cannot run in a Cloudflare deployment');
7652
+ }
7653
+ if (provider === "cloudflare" && !cloudflarePreset) {
7654
+ throw new Error('images.provider "cloudflare" requires a Cloudflare deployment preset');
7655
+ }
7656
+ return provider === "cloudflare" || provider === "auto" && cloudflarePreset ? "cloudflare" : "node";
7657
+ }
7658
+ __name(resolveFarmImageServerRuntime, "resolveFarmImageServerRuntime");
7645
7659
 
7646
7660
  // src/app-manifest-packages.ts
7647
7661
  import fs6 from "fs";
@@ -8205,9 +8219,17 @@ function farmLayoutComponentKey(Component) {
8205
8219
  return key;
8206
8220
  }
8207
8221
 
8222
+ // React.Children is React's own; other renderers (Preact) hand children over as plain arrays.
8223
+ function farmChildrenToArray(children) {
8224
+ if (React.Children) return React.Children.toArray(children);
8225
+ return [children].flat(Infinity).filter(function (child) {
8226
+ return child !== null && child !== undefined && typeof child !== "boolean";
8227
+ });
8228
+ }
8229
+
8208
8230
  function unwrapFarmDocumentElement(node) {
8209
8231
  if (!React.isValidElement(node) || node.type !== "html") return undefined;
8210
- const children = React.Children.toArray(node.props.children);
8232
+ const children = farmChildrenToArray(node.props.children);
8211
8233
  const body = children.find(function (child) {
8212
8234
  return React.isValidElement(child) && child.type === "body";
8213
8235
  });
@@ -8675,6 +8697,7 @@ export {
8675
8697
  createFarmApp,
8676
8698
  SHARP_INSTALL_HINT,
8677
8699
  resolveFarmImageProviderForRuntime,
8700
+ resolveFarmImageServerRuntime,
8678
8701
  resolveFarmAppPackages,
8679
8702
  collectFarmWebMCPTools,
8680
8703
  generateFarmClientPluginEntryCode,
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
- var _chunk4A3YUB4Dcjs = require('./chunk-4A3YUB4D.cjs');
3
+ var _chunkKF6VDJH7cjs = require('./chunk-KF6VDJH7.cjs');
4
4
 
5
5
 
6
6
  var _chunk2CQ74SP6cjs = require('./chunk-2CQ74SP6.cjs');
@@ -17,7 +17,7 @@ var _chunkLYLEZIG3cjs = require('./chunk-LYLEZIG3.cjs');
17
17
 
18
18
 
19
19
 
20
- var _chunkUXMIFB44cjs = require('./chunk-UXMIFB44.cjs');
20
+ var _chunkQIBP5EFAcjs = require('./chunk-QIBP5EFA.cjs');
21
21
 
22
22
 
23
23
  var _chunkWMAPPDMMcjs = require('./chunk-WMAPPDMM.cjs');
@@ -104,7 +104,7 @@ var _APIRouteManager = class _APIRouteManager {
104
104
  await this.loadProgrammaticApiRoutes(appDir);
105
105
  }
106
106
  this.routes = new Map(
107
- _chunkUXMIFB44cjs.mergePluginAPIRoutes.call(void 0, [...this.routes.values()], this.plugins, void 0, {
107
+ _chunkQIBP5EFAcjs.mergePluginAPIRoutes.call(void 0, [...this.routes.values()], this.plugins, void 0, {
108
108
  bodySizeLimit: this.bodySizeLimit,
109
109
  dispatch: this.dispatch
110
110
  }).map((route) => [route.path, route])
@@ -152,7 +152,7 @@ var _APIRouteManager = class _APIRouteManager {
152
152
  const routeModule = await this.loadModule(filePath);
153
153
  const endpoints = {};
154
154
  const availableMethods = [];
155
- for (const method of _chunkUXMIFB44cjs.API_ROUTE_METHODS) {
155
+ for (const method of _chunkQIBP5EFAcjs.API_ROUTE_METHODS) {
156
156
  if (routeModule[method]) {
157
157
  endpoints[method] = routeModule[method];
158
158
  availableMethods.push(method);
@@ -222,7 +222,7 @@ var _APIRouteManager = class _APIRouteManager {
222
222
  async loadProgrammaticApiRoutes(appDir) {
223
223
  const candidateRoots = [path.dirname(appDir), appDir];
224
224
  const routeFiles = Array.from(
225
- new Set(candidateRoots.flatMap((srcRoot) => _chunk4A3YUB4Dcjs.findProgrammaticRouteFilesInDir.call(void 0, srcRoot)))
225
+ new Set(candidateRoots.flatMap((srcRoot) => _chunkKF6VDJH7cjs.findProgrammaticRouteFilesInDir.call(void 0, srcRoot)))
226
226
  );
227
227
  if (routeFiles.length === 0) return;
228
228
  const { getProgrammaticRouteManifest } = await import("./routes.cjs");
@@ -334,7 +334,7 @@ var _APIRouteManager = class _APIRouteManager {
334
334
  const url = new URL(request.url);
335
335
  const pathname = url.pathname;
336
336
  const method = request.method.toUpperCase();
337
- const match = _chunkUXMIFB44cjs.matchAPIRouteAtBasePath.call(void 0, this.routes, pathname, this.basePath);
337
+ const match = _chunkQIBP5EFAcjs.matchAPIRouteAtBasePath.call(void 0, this.routes, pathname, this.basePath);
338
338
  if (!match) {
339
339
  return new Response(JSON.stringify({ error: "Not Found" }), {
340
340
  status: 404,
@@ -342,19 +342,19 @@ var _APIRouteManager = class _APIRouteManager {
342
342
  });
343
343
  }
344
344
  const { route, params } = match;
345
- const endpoint = _chunkUXMIFB44cjs.resolveAPIRouteEndpoint.call(void 0, route, method);
345
+ const endpoint = _chunkQIBP5EFAcjs.resolveAPIRouteEndpoint.call(void 0, route, method);
346
346
  if (!endpoint) {
347
347
  return new Response(JSON.stringify({ error: "Method Not Allowed" }), {
348
348
  status: 405,
349
349
  headers: {
350
- Allow: _chunkUXMIFB44cjs.getAllowedAPIRouteMethods.call(void 0, route).join(", "),
350
+ Allow: _chunkQIBP5EFAcjs.getAllowedAPIRouteMethods.call(void 0, route).join(", "),
351
351
  "Content-Type": "application/json"
352
352
  }
353
353
  });
354
354
  }
355
355
  const invoke = /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, async () => {
356
356
  try {
357
- return await _chunkUXMIFB44cjs.invokeAPIRouteEndpoint.call(void 0, endpoint, request, params, this.bodySizeLimit);
357
+ return await _chunkQIBP5EFAcjs.invokeAPIRouteEndpoint.call(void 0, endpoint, request, params, this.bodySizeLimit);
358
358
  } catch (error) {
359
359
  if (options.throwOnError) throw error;
360
360
  console.error(`[API Error] ${pathname}:`, error);
@@ -376,7 +376,7 @@ var _APIRouteManager = class _APIRouteManager {
376
376
  return Boolean(this.matchRoute(pathname));
377
377
  }
378
378
  matchRoute(pathname) {
379
- return _chunkUXMIFB44cjs.matchAPIRouteAtBasePath.call(void 0, this.routes, pathname, this.basePath);
379
+ return _chunkQIBP5EFAcjs.matchAPIRouteAtBasePath.call(void 0, this.routes, pathname, this.basePath);
380
380
  }
381
381
  /**
382
382
  * Get all routes for client type generation
@@ -3,7 +3,7 @@ import {
3
3
  parseMiddlewareCookieHeader,
4
4
  serializeMiddlewareCookie,
5
5
  serializeMiddlewareCookieDeletion
6
- } from "./chunk-TFX4RTH2.mjs";
6
+ } from "./chunk-JOW4HDJO.mjs";
7
7
  import {
8
8
  compileMiddlewareConfig,
9
9
  compileMiddlewareRoute,