@farm.js/core 0.1.0-beta.97 → 0.1.0-beta.99

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 (269) hide show
  1. package/dist/after.cjs.map +1 -0
  2. package/dist/agent-runtime.cjs +7 -3
  3. package/dist/agent-runtime.cjs.map +1 -0
  4. package/dist/agent-runtime.d.mts +2 -2
  5. package/dist/agent-runtime.d.ts +2 -2
  6. package/dist/agent-runtime.mjs +2 -1
  7. package/dist/agent-runtime.mjs.map +1 -1
  8. package/dist/api/route-manager.cjs.map +1 -0
  9. package/dist/api/route-manager.d.mts +2 -2
  10. package/dist/api/route-manager.d.ts +2 -2
  11. package/dist/api/runtime.cjs.map +1 -0
  12. package/dist/api.cjs +26 -1
  13. package/dist/api.cjs.map +1 -0
  14. package/dist/api.d.mts +3 -3
  15. package/dist/api.d.ts +3 -3
  16. package/dist/api.mjs +2 -2
  17. package/dist/{app-CIOx3LvY.d.ts → app-CGjrKNoN.d.ts} +4 -4
  18. package/dist/{app-DBd6437H.d.mts → app-DOcLs_iq.d.mts} +4 -4
  19. package/dist/app-markdown.cjs +21 -0
  20. package/dist/app-markdown.cjs.map +1 -0
  21. package/dist/app-markdown.d.mts +19 -4
  22. package/dist/app-markdown.d.ts +19 -4
  23. package/dist/app-markdown.mjs +7 -1
  24. package/dist/cache.cjs.map +1 -0
  25. package/dist/{chunk-VMCHLH3Y.mjs → chunk-26BCDVJS.mjs} +19 -1
  26. package/dist/chunk-26BCDVJS.mjs.map +1 -0
  27. package/dist/{chunk-FP5Q67FO.mjs → chunk-2HYYZCCI.mjs} +308 -19
  28. package/dist/chunk-2HYYZCCI.mjs.map +1 -0
  29. package/dist/{chunk-WKDAA6V2.mjs → chunk-3BTAMIQE.mjs} +100 -41
  30. package/dist/chunk-3BTAMIQE.mjs.map +1 -0
  31. package/dist/{chunk-WD2EBM3I.mjs → chunk-3CQJV3NC.mjs} +2 -2
  32. package/dist/{chunk-I3OOUWO5.mjs → chunk-3GDRV7SG.mjs} +2 -2
  33. package/dist/{chunk-YIBV77KZ.mjs → chunk-4WLAVHCY.mjs} +2 -2
  34. package/dist/{chunk-KDP5ZSWP.mjs → chunk-7PS5NKOM.mjs} +26 -11
  35. package/dist/chunk-7PS5NKOM.mjs.map +1 -0
  36. package/dist/{chunk-X4SFHKFH.mjs → chunk-BU65A3LZ.mjs} +10 -6
  37. package/dist/chunk-BU65A3LZ.mjs.map +1 -0
  38. package/dist/{chunk-WMJGA32P.mjs → chunk-BXVOHG6B.mjs} +27 -2
  39. package/dist/{chunk-WMJGA32P.mjs.map → chunk-BXVOHG6B.mjs.map} +1 -1
  40. package/dist/{chunk-BZAIS65C.mjs → chunk-DIHNOVZZ.mjs} +40 -13
  41. package/dist/chunk-DIHNOVZZ.mjs.map +1 -0
  42. package/dist/{chunk-ISSFLGJ5.mjs → chunk-FDWECN3W.mjs} +8 -4
  43. package/dist/chunk-FDWECN3W.mjs.map +1 -0
  44. package/dist/chunk-FDWXXTWR.mjs +114 -0
  45. package/dist/chunk-FDWXXTWR.mjs.map +1 -0
  46. package/dist/{chunk-FSIXEIOB.mjs → chunk-L7FSTPGS.mjs} +2 -2
  47. package/dist/{chunk-J3MPQ4MQ.mjs → chunk-LG4XB6RN.mjs} +2 -2
  48. package/dist/{chunk-J3MPQ4MQ.mjs.map → chunk-LG4XB6RN.mjs.map} +1 -1
  49. package/dist/{chunk-AAC66ILR.mjs → chunk-LXXG3K2Y.mjs} +61 -2
  50. package/dist/chunk-LXXG3K2Y.mjs.map +1 -0
  51. package/dist/{chunk-GJ7W6LNK.mjs → chunk-N5RK4LK6.mjs} +3 -3
  52. package/dist/{chunk-D7F7YZ7L.mjs → chunk-NCVFPT67.mjs} +100 -40
  53. package/dist/{chunk-D7F7YZ7L.mjs.map → chunk-NCVFPT67.mjs.map} +1 -1
  54. package/dist/{chunk-UMUWR5XA.mjs → chunk-PURU7FXR.mjs} +2 -2
  55. package/dist/{chunk-2SKCXYLB.mjs → chunk-QQCCBMTH.mjs} +60 -6
  56. package/dist/chunk-QQCCBMTH.mjs.map +1 -0
  57. package/dist/chunk-RKUPOYQV.mjs +28 -0
  58. package/dist/chunk-RKUPOYQV.mjs.map +1 -0
  59. package/dist/{chunk-52BR7LTX.mjs → chunk-STSPSJUI.mjs} +3 -3
  60. package/dist/{chunk-EPDIF432.mjs → chunk-UOGX6UNO.mjs} +37 -17
  61. package/dist/chunk-UOGX6UNO.mjs.map +1 -0
  62. package/dist/{chunk-IZBX2TEU.mjs → chunk-VQG3QWWK.mjs} +2 -2
  63. package/dist/{chunk-35NPLKQJ.mjs → chunk-XWM2C267.mjs} +21 -105
  64. package/dist/chunk-XWM2C267.mjs.map +1 -0
  65. package/dist/{chunk-7ZVN3YZI.mjs → chunk-Z5ARESQG.mjs} +43 -1
  66. package/dist/chunk-Z5ARESQG.mjs.map +1 -0
  67. package/dist/client/lifecycle.cjs.map +1 -0
  68. package/dist/client/lifecycle.mjs +2 -2
  69. package/dist/{client-plugins-B6-07YmP.d.mts → client-plugins-BqtHoJ9C.d.mts} +91 -3
  70. package/dist/{client-plugins-By6MVUX-.d.ts → client-plugins-DYprkCKN.d.ts} +91 -3
  71. package/dist/client-plugins.cjs +1 -1
  72. package/dist/client-plugins.cjs.map +1 -0
  73. package/dist/client-plugins.d.mts +2 -2
  74. package/dist/client-plugins.d.ts +2 -2
  75. package/dist/client-plugins.mjs +2 -2
  76. package/dist/client.cjs +61 -16
  77. package/dist/client.cjs.map +1 -0
  78. package/dist/client.d.mts +5 -5
  79. package/dist/client.d.ts +5 -5
  80. package/dist/client.mjs +7 -7
  81. package/dist/config.cjs.map +1 -0
  82. package/dist/config.d.mts +2 -2
  83. package/dist/config.d.ts +2 -2
  84. package/dist/cron.cjs +48 -12
  85. package/dist/cron.cjs.map +1 -0
  86. package/dist/cron.mjs +2 -1
  87. package/dist/deferred.cjs.map +1 -0
  88. package/dist/deployment.cjs.map +1 -0
  89. package/dist/{devtools-XWZX6CCL.mjs → devtools-24N3U5IG.mjs} +9 -7
  90. package/dist/{devtools-XWZX6CCL.mjs.map → devtools-24N3U5IG.mjs.map} +1 -1
  91. package/dist/docs.cjs +7 -3
  92. package/dist/docs.cjs.map +1 -0
  93. package/dist/docs.mjs +9 -7
  94. package/dist/env-types.cjs.map +1 -0
  95. package/dist/env.cjs.map +1 -0
  96. package/dist/environment/vite.cjs.map +1 -0
  97. package/dist/environment.cjs.map +1 -0
  98. package/dist/font.cjs.map +1 -0
  99. package/dist/headers.cjs.map +1 -0
  100. package/dist/i18n/client.cjs.map +1 -0
  101. package/dist/i18n/index.cjs.map +1 -0
  102. package/dist/i18n/server.cjs.map +1 -0
  103. package/dist/image/server.cjs +99 -40
  104. package/dist/image/server.cjs.map +1 -0
  105. package/dist/image/server.d.mts +6 -0
  106. package/dist/image/server.d.ts +6 -0
  107. package/dist/image/server.mjs +1 -1
  108. package/dist/image/sharp.cjs +1 -0
  109. package/dist/image/sharp.cjs.map +1 -0
  110. package/dist/image/sharp.d.mts +1 -1
  111. package/dist/image/sharp.d.ts +1 -1
  112. package/dist/image/sharp.mjs +1 -1
  113. package/dist/image/sharp.mjs.map +1 -1
  114. package/dist/image.cjs.map +1 -0
  115. package/dist/index.cjs +943 -231
  116. package/dist/index.cjs.map +1 -0
  117. package/dist/index.d.mts +11 -11
  118. package/dist/index.d.ts +11 -11
  119. package/dist/index.mjs +38 -24
  120. package/dist/index.mjs.map +1 -1
  121. package/dist/instrumentation.cjs.map +1 -0
  122. package/dist/{integration-orm-LLW6WZNK.mjs → integration-orm-G5BPBT5X.mjs} +3 -3
  123. package/dist/integrations.cjs +168 -5
  124. package/dist/integrations.cjs.map +1 -0
  125. package/dist/integrations.d.mts +2 -2
  126. package/dist/integrations.d.ts +2 -2
  127. package/dist/integrations.mjs +10 -3
  128. package/dist/internal/build-runtime.cjs +745 -139
  129. package/dist/internal/build-runtime.cjs.map +1 -0
  130. package/dist/internal/build-runtime.d.mts +4 -4
  131. package/dist/internal/build-runtime.d.ts +4 -4
  132. package/dist/internal/build-runtime.mjs +16 -14
  133. package/dist/internal/client-runtime.cjs +7 -2
  134. package/dist/internal/client-runtime.cjs.map +1 -0
  135. package/dist/internal/client-runtime.mjs +8 -3
  136. package/dist/internal/client-runtime.mjs.map +1 -1
  137. package/dist/internal/config-runtime.cjs +59 -42
  138. package/dist/internal/config-runtime.cjs.map +1 -0
  139. package/dist/internal/config-runtime.d.mts +3 -3
  140. package/dist/internal/config-runtime.d.ts +3 -3
  141. package/dist/internal/config-runtime.mjs +8 -6
  142. package/dist/internal/isolated-boundary.cjs.map +1 -0
  143. package/dist/internal/metadata-image-runtime.cjs.map +1 -0
  144. package/dist/internal/product-telemetry-runtime.cjs +52 -5
  145. package/dist/internal/product-telemetry-runtime.cjs.map +1 -0
  146. package/dist/internal/product-telemetry-runtime.d.mts +12 -1
  147. package/dist/internal/product-telemetry-runtime.d.ts +12 -1
  148. package/dist/internal/product-telemetry-runtime.mjs +50 -5
  149. package/dist/internal/product-telemetry-runtime.mjs.map +1 -1
  150. package/dist/internal/production-node-env.cjs.map +1 -0
  151. package/dist/internal/production-runtime.cjs +56 -10
  152. package/dist/internal/production-runtime.cjs.map +1 -0
  153. package/dist/internal/production-runtime.d.mts +8 -8
  154. package/dist/internal/production-runtime.d.ts +8 -8
  155. package/dist/internal/production-runtime.mjs +2 -2
  156. package/dist/markdown.cjs.map +1 -0
  157. package/dist/{metadata-route-8_V3UonT.d.ts → metadata-route-D2be_0kC.d.ts} +17 -2
  158. package/dist/{metadata-route-CWP_HjGU.d.mts → metadata-route-Dw5CrDIZ.d.mts} +17 -2
  159. package/dist/middleware.cjs.map +1 -0
  160. package/dist/middleware.d.mts +4 -4
  161. package/dist/middleware.d.ts +4 -4
  162. package/dist/navigation.cjs.map +1 -0
  163. package/dist/{nitro-EGRNOB5P.mjs → nitro-YJEP3FWM.mjs} +4 -3
  164. package/dist/{nitro-EGRNOB5P.mjs.map → nitro-YJEP3FWM.mjs.map} +1 -1
  165. package/dist/observability.cjs.map +1 -0
  166. package/dist/plugin.cjs +599 -104
  167. package/dist/plugin.cjs.map +1 -0
  168. package/dist/plugin.d.mts +2 -2
  169. package/dist/plugin.d.ts +2 -2
  170. package/dist/plugin.mjs +13 -11
  171. package/dist/{production-runtime-CdmzsDax.d.ts → production-runtime-CTqpD1C8.d.ts} +2 -2
  172. package/dist/{production-runtime-BGRH1dKG.d.mts → production-runtime-HNqNZd4D.d.mts} +2 -2
  173. package/dist/query/client.cjs.map +1 -0
  174. package/dist/query/index.cjs.map +1 -0
  175. package/dist/query/parsers.cjs.map +1 -0
  176. package/dist/query/server.cjs.map +1 -0
  177. package/dist/{render-plan-DLxJYAA5.d.mts → render-plan-COscpW-i.d.mts} +1 -1
  178. package/dist/{render-plan-0GeHiGVZ.d.ts → render-plan-Z4kSxaT_.d.ts} +1 -1
  179. package/dist/renderer/react/client.cjs.map +1 -0
  180. package/dist/renderer/react/server.cjs.map +1 -0
  181. package/dist/renderer/react/vite.cjs.map +1 -0
  182. package/dist/renderer-client.cjs +26 -1
  183. package/dist/renderer-client.cjs.map +1 -0
  184. package/dist/renderer-client.d.mts +4 -4
  185. package/dist/renderer-client.d.ts +4 -4
  186. package/dist/renderer-client.mjs +2 -2
  187. package/dist/renderer.cjs.map +1 -0
  188. package/dist/{request-BstWbZ6O.d.ts → request-BEDb2jE9.d.ts} +1 -1
  189. package/dist/{request-BCNXSXLh.d.mts → request-CbIAqJY9.d.mts} +1 -1
  190. package/dist/request.cjs.map +1 -0
  191. package/dist/request.d.mts +3 -3
  192. package/dist/request.d.ts +3 -3
  193. package/dist/router.cjs.map +1 -0
  194. package/dist/routes.cjs.map +1 -0
  195. package/dist/routes.d.mts +2 -2
  196. package/dist/routes.d.ts +2 -2
  197. package/dist/server-action-security.cjs +117 -104
  198. package/dist/server-action-security.cjs.map +1 -0
  199. package/dist/server-action-security.mjs +2 -1
  200. package/dist/server-fn-client.cjs.map +1 -0
  201. package/dist/server-fn.cjs.map +1 -0
  202. package/dist/server-fn.mjs +3 -2
  203. package/dist/server-plugins.cjs.map +1 -0
  204. package/dist/server-plugins.d.mts +3 -3
  205. package/dist/server-plugins.d.ts +3 -3
  206. package/dist/server-query-client.cjs +26 -1
  207. package/dist/server-query-client.cjs.map +1 -0
  208. package/dist/server-query-client.mjs +3 -3
  209. package/dist/server-query.cjs.map +1 -0
  210. package/dist/server-query.mjs +4 -3
  211. package/dist/server.cjs +686 -170
  212. package/dist/server.cjs.map +1 -0
  213. package/dist/server.d.mts +8 -8
  214. package/dist/server.d.ts +8 -8
  215. package/dist/server.mjs +16 -14
  216. package/dist/server.mjs.map +1 -1
  217. package/dist/{spa-router-COgu4txb.d.ts → spa-router-CjeQites.d.ts} +1 -1
  218. package/dist/{spa-router-BeyAVSc6.d.mts → spa-router-FJbNou1a.d.mts} +1 -1
  219. package/dist/storage.cjs +7 -3
  220. package/dist/storage.cjs.map +1 -0
  221. package/dist/storage.mjs +1 -1
  222. package/dist/testing.cjs.map +1 -0
  223. package/dist/testing.d.mts +2 -2
  224. package/dist/testing.d.ts +2 -2
  225. package/dist/testing.mjs +2 -1
  226. package/dist/testing.mjs.map +1 -1
  227. package/dist/theme/client.cjs.map +1 -0
  228. package/dist/theme/index.cjs.map +1 -0
  229. package/dist/theme/runtime.cjs.map +1 -0
  230. package/dist/theme/server.cjs.map +1 -0
  231. package/dist/{utils-DL2VwDQl.d.mts → utils-BiMJv9Ys.d.mts} +1 -1
  232. package/dist/{utils-DkU2c_1B.d.ts → utils-BpnKRFv9.d.ts} +1 -1
  233. package/dist/version.cjs +1 -1
  234. package/dist/version.cjs.map +1 -0
  235. package/dist/version.mjs +1 -1
  236. package/dist/vite.cjs +599 -104
  237. package/dist/vite.cjs.map +1 -0
  238. package/dist/vite.d.mts +2 -2
  239. package/dist/vite.d.ts +2 -2
  240. package/dist/vite.mjs +13 -11
  241. package/dist/{workflows-ChyK_oTu.d.mts → workflows-BantWytQ.d.mts} +7 -0
  242. package/dist/{workflows-ChyK_oTu.d.ts → workflows-BantWytQ.d.ts} +7 -0
  243. package/dist/workflows.cjs +73 -5
  244. package/dist/workflows.cjs.map +1 -0
  245. package/dist/workflows.d.mts +1 -1
  246. package/dist/workflows.d.ts +1 -1
  247. package/dist/workflows.mjs +2 -1
  248. package/package.json +17 -17
  249. package/dist/chunk-2SKCXYLB.mjs.map +0 -1
  250. package/dist/chunk-35NPLKQJ.mjs.map +0 -1
  251. package/dist/chunk-7ZVN3YZI.mjs.map +0 -1
  252. package/dist/chunk-AAC66ILR.mjs.map +0 -1
  253. package/dist/chunk-BZAIS65C.mjs.map +0 -1
  254. package/dist/chunk-EPDIF432.mjs.map +0 -1
  255. package/dist/chunk-FP5Q67FO.mjs.map +0 -1
  256. package/dist/chunk-ISSFLGJ5.mjs.map +0 -1
  257. package/dist/chunk-KDP5ZSWP.mjs.map +0 -1
  258. package/dist/chunk-VMCHLH3Y.mjs.map +0 -1
  259. package/dist/chunk-WKDAA6V2.mjs.map +0 -1
  260. package/dist/chunk-X4SFHKFH.mjs.map +0 -1
  261. /package/dist/{chunk-WD2EBM3I.mjs.map → chunk-3CQJV3NC.mjs.map} +0 -0
  262. /package/dist/{chunk-I3OOUWO5.mjs.map → chunk-3GDRV7SG.mjs.map} +0 -0
  263. /package/dist/{chunk-YIBV77KZ.mjs.map → chunk-4WLAVHCY.mjs.map} +0 -0
  264. /package/dist/{chunk-FSIXEIOB.mjs.map → chunk-L7FSTPGS.mjs.map} +0 -0
  265. /package/dist/{chunk-GJ7W6LNK.mjs.map → chunk-N5RK4LK6.mjs.map} +0 -0
  266. /package/dist/{chunk-UMUWR5XA.mjs.map → chunk-PURU7FXR.mjs.map} +0 -0
  267. /package/dist/{chunk-52BR7LTX.mjs.map → chunk-STSPSJUI.mjs.map} +0 -0
  268. /package/dist/{chunk-IZBX2TEU.mjs.map → chunk-VQG3QWWK.mjs.map} +0 -0
  269. /package/dist/{integration-orm-LLW6WZNK.mjs.map → integration-orm-G5BPBT5X.mjs.map} +0 -0
@@ -9,7 +9,7 @@ import {
9
9
  FARM_DOCS_LAST_MODIFIED_MANIFEST,
10
10
  createFarmDocsLastModifiedManifest,
11
11
  getFarmDocsRouteTypeEntries
12
- } from "./chunk-YIBV77KZ.mjs";
12
+ } from "./chunk-4WLAVHCY.mjs";
13
13
  import {
14
14
  generateFarmDocsSearchClientRuntime,
15
15
  isFarmDocsSearchEnabled,
@@ -20,7 +20,7 @@ import {
20
20
  getDeployTargetForPreset,
21
21
  hasCustomFarmRouteContext,
22
22
  resolveDeployOutputPath
23
- } from "./chunk-X4SFHKFH.mjs";
23
+ } from "./chunk-BU65A3LZ.mjs";
24
24
  import {
25
25
  resolveFarmInstrumentationFile
26
26
  } from "./chunk-5NAM3OTS.mjs";
@@ -45,7 +45,7 @@ import {
45
45
  resolveFarmIsolatedClientHydrationMode,
46
46
  resolveFarmNotFoundComponentPath,
47
47
  resolveRouteRenderingConfigFromFile
48
- } from "./chunk-FP5Q67FO.mjs";
48
+ } from "./chunk-2HYYZCCI.mjs";
49
49
  import {
50
50
  farmEnvironmentFunctionsPlugin
51
51
  } from "./chunk-V6WE6JSZ.mjs";
@@ -67,21 +67,21 @@ import {
67
67
  } from "./chunk-5EZRXIFH.mjs";
68
68
  import {
69
69
  isFarmMarkdownPageFile
70
- } from "./chunk-VMCHLH3Y.mjs";
70
+ } from "./chunk-26BCDVJS.mjs";
71
71
  import {
72
72
  applyFarmWorkflowVercelCrons,
73
73
  prepareFarmWorkflowsForNitro
74
- } from "./chunk-2SKCXYLB.mjs";
74
+ } from "./chunk-QQCCBMTH.mjs";
75
75
  import {
76
76
  applyFarmCronVercelCrons,
77
77
  createFarmCronCloudflareConfig,
78
78
  mergeScheduledTasks,
79
79
  prepareFarmCronForNitro
80
- } from "./chunk-BZAIS65C.mjs";
80
+ } from "./chunk-DIHNOVZZ.mjs";
81
81
  import {
82
82
  getFarmIntegrationPluginServerRuntime,
83
83
  getIntegrationProviders
84
- } from "./chunk-AAC66ILR.mjs";
84
+ } from "./chunk-LXXG3K2Y.mjs";
85
85
  import {
86
86
  appendMiddlewareRoutePath
87
87
  } from "./chunk-4X57GXQA.mjs";
@@ -3796,7 +3796,9 @@ async function buildSSRInMemory(productionVite, config, root, routeManager, apiR
3796
3796
  }
3797
3797
  openAPIReference = {
3798
3798
  route: config.openapi.route,
3799
- html: renderOpenAPIReferenceHTML(spec, config.openapi)
3799
+ html: renderOpenAPIReferenceHTML(spec, config.openapi),
3800
+ spec,
3801
+ specRoute: config.openapi.specRoute || null
3800
3802
  };
3801
3803
  }
3802
3804
  const middlewareRoutes = await discoverMiddlewareRoutes(appDirs);
@@ -4418,6 +4420,7 @@ import { dirname as farmDocsDirname, join as farmDocsJoin } from "node:path";
4418
4420
  import { fileURLToPath as farmDocsFileURLToPath } from "node:url";` : "";
4419
4421
  const markdownHandlerImport = config.md?.enabled ? `import { applyMarkdownNegotiationHeaders, createMarkdownMirrorResponse } from "@farm.js/core/markdown";` : "";
4420
4422
  const appMarkdownImport = hasMarkdownPages ? `import { createFarmMarkdownRouteModule, createFarmMarkdownSourceResponse } from "@farm.js/core/app-markdown";` : "const createFarmMarkdownSourceResponse = null;";
4423
+ const markdownErrorImport = `import { FARM_MARKDOWN_CONTENT_TYPE, createFarmMarkdownErrorBody, farmRequestWantsMarkdown } from "@farm.js/core/app-markdown";`;
4421
4424
  const mdxComponentsPath = typeof config.mdx?.components === "string" ? path4.isAbsolute(config.mdx.components) ? config.mdx.components : path4.join(config.root, config.mdx.components) : null;
4422
4425
  const mdxComponentsImport = mdxComponentsPath ? `import * as FarmMdxComponentsModule from ${toVirtualEntryImportSpecifier(mdxComponentsPath)};` : "";
4423
4426
  const layerConfigPaths = (config.layers || []).map((layer) => layer.configFile).filter((configFile) => Boolean(configFile)).filter((configFile) => configFile !== configModulePath);
@@ -4560,6 +4563,7 @@ ${docsFontImport}
4560
4563
  ${docsRuntimeImport}
4561
4564
  ${markdownHandlerImport}
4562
4565
  ${appMarkdownImport}
4566
+ ${markdownErrorImport}
4563
4567
  ${mdxComponentsImport}
4564
4568
  ${integrationImports}
4565
4569
  ${providerServerImports}
@@ -6103,12 +6107,38 @@ async function handleFarmRequestInContext(
6103
6107
  }
6104
6108
  ` : ""}
6105
6109
 
6110
+ ${hasMiddlewareRuntime ? `
6111
+ const requestBeforeMiddleware = request;
6112
+ const middlewareResult = await farmMiddlewareRunner(request);
6113
+ if (middlewareResult.response) {
6114
+ return middlewareResult.response;
6115
+ }
6116
+ request = middlewareResult.request;
6117
+ const middlewareData = middlewareResult.data;
6118
+ const middlewareContext = middlewareResult.context;
6119
+ const middlewareHeaders = middlewareResult.headers;
6120
+ url = new URL(request.url);
6121
+ pathname = url.pathname;
6122
+ routePathname = getFarmRoutePathname(pathname);
6123
+
6124
+ // Middleware may replace the Request when it rewrites a URL. Re-enter the
6125
+ // request store so pages, layouts, and route context observe that rewritten
6126
+ // request instead of the original outer-handler value.
6127
+ const runResolvedRequest = async () => {
6128
+ ` : `
6129
+ const middlewareData = undefined;
6130
+ const middlewareContext = undefined;
6131
+ const middlewareHeaders = undefined;
6132
+ `}
6133
+
6106
6134
  ${config.docs?.enabled ? `
6135
+ // Docs responses are served after app middleware so route guards and
6136
+ // middleware headers apply to the docs engine like any other page content.
6107
6137
  if (farmDocsHandler) {
6108
6138
  const docsResponse = await farmDocsHandler(request.clone());
6109
6139
  if (docsResponse) {
6110
6140
  if (!docsResponse.headers.get("content-type")?.toLowerCase().includes("text/html")) {
6111
- return docsResponse;
6141
+ return applyProductionMiddlewareHeaders(docsResponse, middlewareHeaders);
6112
6142
  }
6113
6143
  const wrappedDocsResponse = await wrapFarmDocsResponseWithLayouts(
6114
6144
  request,
@@ -6116,16 +6146,18 @@ async function handleFarmRequestInContext(
6116
6146
  );
6117
6147
  const docsHeaders = new Headers(wrappedDocsResponse.headers);
6118
6148
  docsHeaders.set("x-farm-preload-buffered", "1");
6119
- return new Response(wrappedDocsResponse.body, {
6149
+ return applyProductionMiddlewareHeaders(new Response(wrappedDocsResponse.body, {
6120
6150
  status: wrappedDocsResponse.status,
6121
6151
  statusText: wrappedDocsResponse.statusText,
6122
6152
  headers: docsHeaders,
6123
- });
6153
+ }), middlewareHeaders);
6124
6154
  }
6125
6155
  }
6126
6156
  ` : ""}
6127
6157
 
6128
6158
  ${hasMarkdownPages ? `
6159
+ // The raw markdown source of a page route is the page's content in another
6160
+ // representation; middleware guarding the route must run before serving it.
6129
6161
  const markdownSourceResponse = await createFarmMarkdownSourceResponse?.({
6130
6162
  request: request.clone(),
6131
6163
  config: farmMdxConfig,
@@ -6135,7 +6167,7 @@ async function handleFarmRequestInContext(
6135
6167
  },
6136
6168
  });
6137
6169
  if (markdownSourceResponse) {
6138
- return markdownSourceResponse;
6170
+ return applyProductionMiddlewareHeaders(markdownSourceResponse, middlewareHeaders);
6139
6171
  }
6140
6172
  ` : ""}
6141
6173
 
@@ -6149,35 +6181,11 @@ async function handleFarmRequestInContext(
6149
6181
  renderPage: (targetRequest) => handleFarmRequest(targetRequest),
6150
6182
  });
6151
6183
  if (markdownResponse) {
6152
- return markdownResponse;
6184
+ return applyProductionMiddlewareHeaders(markdownResponse, middlewareHeaders);
6153
6185
  }
6154
6186
  }
6155
6187
  ` : ""}
6156
6188
 
6157
- ${hasMiddlewareRuntime ? `
6158
- const requestBeforeMiddleware = request;
6159
- const middlewareResult = await farmMiddlewareRunner(request);
6160
- if (middlewareResult.response) {
6161
- return middlewareResult.response;
6162
- }
6163
- request = middlewareResult.request;
6164
- const middlewareData = middlewareResult.data;
6165
- const middlewareContext = middlewareResult.context;
6166
- const middlewareHeaders = middlewareResult.headers;
6167
- url = new URL(request.url);
6168
- pathname = url.pathname;
6169
- routePathname = getFarmRoutePathname(pathname);
6170
-
6171
- // Middleware may replace the Request when it rewrites a URL. Re-enter the
6172
- // request store so pages, layouts, and route context observe that rewritten
6173
- // request instead of the original outer-handler value.
6174
- const runResolvedRequest = async () => {
6175
- ` : `
6176
- const middlewareData = undefined;
6177
- const middlewareContext = undefined;
6178
- const middlewareHeaders = undefined;
6179
- `}
6180
-
6181
6189
  ${apiRoutes.length > 0 ? `
6182
6190
  const apiResponse = await handleAPIRequest(request.clone());
6183
6191
  if (apiResponse) {
@@ -6185,6 +6193,31 @@ async function handleFarmRequestInContext(
6185
6193
  }
6186
6194
  ` : ""}
6187
6195
 
6196
+ if (
6197
+ farmOpenAPIReference &&
6198
+ farmOpenAPIReference.specRoute &&
6199
+ normalizeRuntimePath(pathname) === normalizeRuntimePath(farmOpenAPIReference.specRoute)
6200
+ ) {
6201
+ const method = request.method.toUpperCase();
6202
+ const specResponse = method === "GET" || method === "HEAD"
6203
+ ? new Response(method === "HEAD" ? null : JSON.stringify(farmOpenAPIReference.spec), {
6204
+ status: 200,
6205
+ headers: {
6206
+ "Content-Type": "application/json; charset=utf-8",
6207
+ "Cache-Control": "public, max-age=0, must-revalidate",
6208
+ "X-Content-Type-Options": "nosniff",
6209
+ },
6210
+ })
6211
+ : new Response("Method Not Allowed", {
6212
+ status: 405,
6213
+ headers: {
6214
+ "Allow": "GET, HEAD",
6215
+ "Content-Type": "text/plain; charset=utf-8",
6216
+ },
6217
+ });
6218
+ return applyProductionMiddlewareHeaders(specResponse, middlewareHeaders);
6219
+ }
6220
+
6188
6221
  if (
6189
6222
  farmOpenAPIReference &&
6190
6223
  normalizeRuntimePath(pathname) === normalizeRuntimePath(farmOpenAPIReference.route)
@@ -6657,7 +6690,7 @@ async function handleFarmRequestInContext(
6657
6690
  }
6658
6691
  }
6659
6692
 
6660
- const renderedMetadata = renderMetadataHead(mergedMetadata);
6693
+ const renderedMetadata = renderMetadataHead(mergedMetadata, { pathname, jsonLd: ${JSON.stringify(config.agent?.jsonLd ?? false)} });
6661
6694
  const title = renderedMetadata.title;
6662
6695
  const metaTags = renderedMetadata.tags;
6663
6696
  const hasFavicon = renderedMetadata.hasFavicon;
@@ -7033,6 +7066,30 @@ async function handleFarmRequestInContext(
7033
7066
 
7034
7067
  // 404 fallback - render proper HTML page
7035
7068
  emitFarmEvent({ type: "route.notFound", pathname });
7069
+
7070
+ // Agents that navigate in Markdown (a \`.md\` URL or \`Accept: text/markdown\`)
7071
+ // get a Markdown error body instead of the HTML not-found shell.
7072
+ if (farmRequestWantsMarkdown(pathname, request.headers.get("accept"))) {
7073
+ emitFarmEvent({
7074
+ type: "render.complete",
7075
+ route: pathname,
7076
+ pathname,
7077
+ status: 404,
7078
+ durationMs: Date.now() - requestStartTime,
7079
+ });
7080
+ return applyProductionMiddlewareHeaders(new Response(
7081
+ createFarmMarkdownErrorBody(404, pathname, applyFarmBasePath("/", farmResolvedRuntimeConfig.basePath)),
7082
+ {
7083
+ status: 404,
7084
+ headers: {
7085
+ "Content-Type": FARM_MARKDOWN_CONTENT_TYPE,
7086
+ "X-Farm-Markdown-Error": "404",
7087
+ "Cache-Control": "no-store",
7088
+ },
7089
+ }
7090
+ ), middlewareHeaders);
7091
+ }
7092
+
7036
7093
  try {
7037
7094
  const defaultNotFoundHomeHref = applyFarmBasePath("/", farmResolvedRuntimeConfig.basePath);
7038
7095
  // Default 404 page component
@@ -7272,6 +7329,9 @@ async function handleFarmFetch(request, context) {
7272
7329
  const healthResponse = await farmProductionLifecycle.handleHealthRequest(request);
7273
7330
  if (healthResponse) return healthResponse;
7274
7331
 
7332
+ const productionSiteAttestation = farmProductionSiteTelemetry?.handleAttestation(request);
7333
+ if (productionSiteAttestation) return productionSiteAttestation;
7334
+
7275
7335
  farmProductionSiteTelemetry?.report(
7276
7336
  request.url,
7277
7337
  typeof context?.waitUntil === "function" ? context.waitUntil.bind(context) : undefined,
@@ -8515,7 +8575,7 @@ function resolveLegacyPageEntry(config, root, srcDir) {
8515
8575
  __name(resolveLegacyPageEntry, "resolveLegacyPageEntry");
8516
8576
  async function buildNitro(config, routeManager, apiRouteManager, serverRenderer, preset, root, distDir, pluginManager) {
8517
8577
  const [{ createNitroConfig }, { createNitro, build: nitroBuild }] = await Promise.all([
8518
- import("./nitro-EGRNOB5P.mjs"),
8578
+ import("./nitro-YJEP3FWM.mjs"),
8519
8579
  import("nitro")
8520
8580
  ]);
8521
8581
  let nitroConfig = await createNitroConfig(
@@ -8608,4 +8668,4 @@ __name(buildNitro, "buildNitro");
8608
8668
  export {
8609
8669
  build
8610
8670
  };
8611
- //# sourceMappingURL=chunk-D7F7YZ7L.mjs.map
8671
+ //# sourceMappingURL=chunk-NCVFPT67.mjs.map