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

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 (252) hide show
  1. package/README.md +163 -3
  2. package/dist/{agent-mcp-9BMbRgg_.d.ts → agent-mcp-BBMfNpsC.d.ts} +1 -1
  3. package/dist/{agent-mcp-CIMH324y.d.mts → agent-mcp-D44ip11f.d.mts} +1 -1
  4. package/dist/agent-runtime.d.mts +1 -1
  5. package/dist/agent-runtime.d.ts +1 -1
  6. package/dist/{analyzer-DDW34OMC.mjs → analyzer-HOUCQR3K.mjs} +1 -1
  7. package/dist/{analyzer-CN7C74WX.cjs → analyzer-VKUDHNDF.cjs} +2 -2
  8. package/dist/api/route-manager.cjs +5 -5
  9. package/dist/api/route-manager.d.mts +3 -3
  10. package/dist/api/route-manager.d.ts +3 -3
  11. package/dist/api/route-manager.mjs +4 -4
  12. package/dist/api/runtime.d.mts +2 -2
  13. package/dist/api/runtime.d.ts +2 -2
  14. package/dist/api.cjs +6 -6
  15. package/dist/api.d.mts +3 -3
  16. package/dist/api.d.ts +3 -3
  17. package/dist/api.mjs +5 -5
  18. package/dist/{app-BWibTHVT.d.ts → app-CourU3rQ.d.ts} +4 -4
  19. package/dist/{app-DVJ13FPA.d.mts → app-aeD4s_mg.d.mts} +4 -4
  20. package/dist/{app-manifest-CQDJOKL2.d.mts → app-manifest-BC6mFn5A.d.mts} +1 -1
  21. package/dist/{app-manifest-D0kaXdwu.d.ts → app-manifest-LzjoNPeq.d.ts} +1 -1
  22. package/dist/app-markdown.d.mts +2 -2
  23. package/dist/app-markdown.d.ts +2 -2
  24. package/dist/base-path-BOUV5ozD.d.mts +10 -0
  25. package/dist/base-path-BOUV5ozD.d.ts +10 -0
  26. package/dist/{chunk-RWT2BTJT.cjs → chunk-2IAPKPEB.cjs} +6 -6
  27. package/dist/{chunk-2G63BIRL.mjs → chunk-2KVDHNQS.mjs} +8 -11
  28. package/dist/{chunk-76R5GJER.mjs → chunk-3HA7PP72.mjs} +2 -2
  29. package/dist/{chunk-NJVFPJ2Y.cjs → chunk-3OWVWZ6R.cjs} +28 -2
  30. package/dist/{chunk-KO2NWUKN.mjs → chunk-4GJJ65RB.mjs} +9 -1
  31. package/dist/{chunk-GERUXONA.cjs → chunk-5A77OEIG.cjs} +4 -1
  32. package/dist/{chunk-4HBKBHVP.mjs → chunk-5ENW27SL.mjs} +1 -1
  33. package/dist/{chunk-MTB57GOK.mjs → chunk-724WT3NI.mjs} +4 -2
  34. package/dist/{chunk-VCKGOXFI.cjs → chunk-76GHW3WI.cjs} +7 -1
  35. package/dist/{chunk-ZIBIE7AH.mjs → chunk-7UPCJDB5.mjs} +7 -1
  36. package/dist/{chunk-CPXDDWGL.mjs → chunk-AER5I65K.mjs} +1 -1
  37. package/dist/{chunk-WB6XES4V.mjs → chunk-ALEUMLJN.mjs} +34 -5
  38. package/dist/{chunk-WVBUXNBX.mjs → chunk-AMRK3P6W.mjs} +123 -47
  39. package/dist/{chunk-L6QDME5Z.cjs → chunk-B3GZAQSC.cjs} +3 -3
  40. package/dist/chunk-CKPTIEDX.cjs +12 -0
  41. package/dist/{chunk-B5S2JS6M.cjs → chunk-DWW3AMJX.cjs} +288 -255
  42. package/dist/{chunk-EQMTJBB7.cjs → chunk-DZZHTMWM.cjs} +35 -6
  43. package/dist/{chunk-3ATXWZPH.cjs → chunk-E36C43IX.cjs} +13 -16
  44. package/dist/{chunk-J2ZEVDEK.cjs → chunk-EHB77D5U.cjs} +3 -3
  45. package/dist/{chunk-WQGRD5BJ.cjs → chunk-EX6ZSN5P.cjs} +1 -16
  46. package/dist/{chunk-474FO3UE.cjs → chunk-F42U3R4F.cjs} +170 -163
  47. package/dist/{chunk-6QA2SXVH.cjs → chunk-FK25QSVC.cjs} +2 -1
  48. package/dist/{chunk-BW6SCVYX.mjs → chunk-FSQMN2MQ.mjs} +1 -0
  49. package/dist/{chunk-2H3FJYY6.mjs → chunk-FSXSQQTV.mjs} +3 -2
  50. package/dist/chunk-GNZIAJGB.mjs +358 -0
  51. package/dist/{chunk-TXK4D46O.mjs → chunk-H3ASZDT7.mjs} +21 -1
  52. package/dist/{chunk-B6PREBN6.cjs → chunk-HASX6DC7.cjs} +8 -8
  53. package/dist/{chunk-ZLOQQ2UF.mjs → chunk-I2ZA5SXS.mjs} +60 -27
  54. package/dist/{chunk-X2EL3BLH.cjs → chunk-IOUOGRDX.cjs} +11 -3
  55. package/dist/{chunk-CBJKDB6F.mjs → chunk-IRSS4HS4.mjs} +1 -1
  56. package/dist/{chunk-GOOK2J2W.cjs → chunk-J22JD5YJ.cjs} +2 -2
  57. package/dist/{chunk-2DEPNLXK.mjs → chunk-JF5CNHHF.mjs} +4 -4
  58. package/dist/{chunk-VOZ5DI7D.mjs → chunk-JWI5PUO2.mjs} +6 -2
  59. package/dist/{chunk-YAXOEAND.cjs → chunk-KHXAJ2KA.cjs} +6 -6
  60. package/dist/{chunk-WXHDVXJE.mjs → chunk-KY32FWK7.mjs} +2 -2
  61. package/dist/{chunk-EQWWOQTK.cjs → chunk-LEIXUFJN.cjs} +6 -2
  62. package/dist/{chunk-2GLQSIZD.mjs → chunk-LMFJCXDD.mjs} +1 -1
  63. package/dist/{chunk-IXSMFKZ2.cjs → chunk-LNM57D3H.cjs} +4 -4
  64. package/dist/{chunk-5V4KZOZO.mjs → chunk-LZ4SB57H.mjs} +2 -2
  65. package/dist/{chunk-E2BMCNMJ.cjs → chunk-MMEEXMUQ.cjs} +2 -2
  66. package/dist/chunk-N4AQNEXR.cjs +17 -0
  67. package/dist/{chunk-JZMZKABS.cjs → chunk-NWUHS6GV.cjs} +3 -2
  68. package/dist/{chunk-LYWAGXXW.cjs → chunk-O3MMJPC2.cjs} +12 -12
  69. package/dist/{chunk-FACTMUPI.cjs → chunk-PDJSL7PL.cjs} +30 -19
  70. package/dist/{chunk-XLLVWLWO.mjs → chunk-PIHKO25G.mjs} +1 -1
  71. package/dist/chunk-PIUTGRDI.cjs +358 -0
  72. package/dist/{chunk-KGP76FSV.mjs → chunk-PPDHCRTC.mjs} +1 -1
  73. package/dist/{chunk-C73RIAEF.mjs → chunk-QI5AQMEE.mjs} +17 -6
  74. package/dist/{chunk-F5LERVY3.cjs → chunk-QK3HBOTG.cjs} +10 -10
  75. package/dist/{chunk-Q3UU2KXC.mjs → chunk-QMDU6QHN.mjs} +4 -1
  76. package/dist/{chunk-JJOWY3XD.mjs → chunk-R5P4KFPM.mjs} +1 -1
  77. package/dist/{chunk-IWJKJDNW.mjs → chunk-S5ZA2T2W.mjs} +35 -28
  78. package/dist/{chunk-PXEXOQ5R.mjs → chunk-SHS6KXOZ.mjs} +1 -1
  79. package/dist/{chunk-ETF5C6HR.cjs → chunk-SJ23LJ3N.cjs} +3 -3
  80. package/dist/{chunk-KZH6YLND.cjs → chunk-SO3T6T4I.cjs} +427 -351
  81. package/dist/{chunk-JHXJBNLY.cjs → chunk-SUCDVKUB.cjs} +21 -1
  82. package/dist/{chunk-7ONZDKVY.mjs → chunk-T4EW7AAD.mjs} +2 -2
  83. package/dist/{chunk-UY6HS5PF.cjs → chunk-USL2ANCB.cjs} +8 -8
  84. package/dist/{chunk-4T25YCZ5.cjs → chunk-VIFPE5RG.cjs} +14 -14
  85. package/dist/{chunk-HYN3LLG7.cjs → chunk-VO6NLTV4.cjs} +3 -3
  86. package/dist/{chunk-XN2MB4QZ.cjs → chunk-VQJYGZNX.cjs} +4 -4
  87. package/dist/{chunk-5PKDHKQP.cjs → chunk-WFVSAT7Y.cjs} +6 -4
  88. package/dist/{chunk-X3HOVNHI.mjs → chunk-WSY2JD7O.mjs} +6 -6
  89. package/dist/{chunk-SHJJM6OG.mjs → chunk-WVX3BUNJ.mjs} +1 -1
  90. package/dist/chunk-X3EFRVXY.mjs +12 -0
  91. package/dist/{chunk-UCQ52TJY.mjs → chunk-X3JNB2TB.mjs} +1 -1
  92. package/dist/{chunk-RHOR2J6V.cjs → chunk-X5BCMLGP.cjs} +1 -1
  93. package/dist/{chunk-IQXGHGZF.cjs → chunk-XB24LZWI.cjs} +5 -5
  94. package/dist/{chunk-BNMHXVLL.mjs → chunk-XMHERKSE.mjs} +0 -15
  95. package/dist/{chunk-CGCJ2TJU.cjs → chunk-XPMC4E2G.cjs} +3 -3
  96. package/dist/{chunk-HWCHIBJZ.mjs → chunk-XWC5NAHV.mjs} +4 -4
  97. package/dist/{chunk-C7425KDG.cjs → chunk-XYL4HSVC.cjs} +2 -2
  98. package/dist/{chunk-2SVJGOAX.mjs → chunk-Y3N5BFRJ.mjs} +3 -3
  99. package/dist/{chunk-IUBDMDZZ.cjs → chunk-Y7TLL65B.cjs} +4 -4
  100. package/dist/{chunk-M7LKA632.mjs → chunk-YLNBWUVS.mjs} +1 -1
  101. package/dist/chunk-Z5A6CNV2.mjs +60 -0
  102. package/dist/chunk-Z64V4WZI.mjs +17 -0
  103. package/dist/{chunk-2VCC3GVC.mjs → chunk-ZF3GX4O7.mjs} +1 -1
  104. package/dist/{client-plugins-BPfltM5m.d.ts → client-plugins-CFBEfVPO.d.ts} +20 -3
  105. package/dist/{client-plugins-D4RO59f0.d.mts → client-plugins-cqy_dQd0.d.mts} +20 -3
  106. package/dist/client-plugins.d.mts +1 -1
  107. package/dist/client-plugins.d.ts +1 -1
  108. package/dist/client.cjs +5 -4
  109. package/dist/client.d.mts +6 -6
  110. package/dist/client.d.ts +6 -6
  111. package/dist/client.mjs +4 -3
  112. package/dist/config.d.mts +1 -1
  113. package/dist/config.d.ts +1 -1
  114. package/dist/cron.cjs +4 -4
  115. package/dist/cron.mjs +3 -3
  116. package/dist/desktop.d.mts +2 -2
  117. package/dist/desktop.d.ts +2 -2
  118. package/dist/{devtools-STG7HPRV.mjs → devtools-4MLL3RAL.mjs} +6 -6
  119. package/dist/{devtools-N5XTOECL.cjs → devtools-4ZLMD454.cjs} +8 -8
  120. package/dist/docs.cjs +10 -10
  121. package/dist/docs.d.mts +2 -2
  122. package/dist/docs.d.ts +2 -2
  123. package/dist/docs.mjs +9 -9
  124. package/dist/{index-k8o8eUOd.d.mts → index-BYkNbeQV.d.mts} +1 -1
  125. package/dist/{index-C-N3Pwg-.d.ts → index-BxjN_UDZ.d.ts} +1 -1
  126. package/dist/index.cjs +42 -40
  127. package/dist/index.d.mts +16 -16
  128. package/dist/index.d.ts +16 -16
  129. package/dist/index.mjs +41 -39
  130. package/dist/integrations.d.mts +1 -1
  131. package/dist/integrations.d.ts +1 -1
  132. package/dist/internal/app-markdown-runtime.d.mts +2 -2
  133. package/dist/internal/app-markdown-runtime.d.ts +2 -2
  134. package/dist/internal/build-runtime.cjs +32 -31
  135. package/dist/internal/build-runtime.d.mts +3 -3
  136. package/dist/internal/build-runtime.d.ts +3 -3
  137. package/dist/internal/build-runtime.mjs +31 -30
  138. package/dist/internal/cli-runtime.cjs +15 -15
  139. package/dist/internal/cli-runtime.mjs +14 -14
  140. package/dist/internal/client-error-overlay.cjs +4 -4
  141. package/dist/internal/client-error-overlay.mjs +1 -1
  142. package/dist/internal/client-runtime.cjs +4 -2
  143. package/dist/internal/client-runtime.d.mts +5 -5
  144. package/dist/internal/client-runtime.d.ts +5 -5
  145. package/dist/internal/client-runtime.mjs +3 -1
  146. package/dist/internal/compression-runtime.d.mts +1 -1
  147. package/dist/internal/compression-runtime.d.ts +1 -1
  148. package/dist/internal/config-runtime.cjs +8 -8
  149. package/dist/internal/config-runtime.d.mts +3 -3
  150. package/dist/internal/config-runtime.d.ts +3 -3
  151. package/dist/internal/config-runtime.mjs +7 -7
  152. package/dist/internal/form-actions.cjs +4 -3
  153. package/dist/internal/form-actions.mjs +3 -2
  154. package/dist/internal/infra-analytics-runtime.cjs +5 -5
  155. package/dist/internal/infra-analytics-runtime.mjs +3 -3
  156. package/dist/internal/islands-runtime.cjs +56 -0
  157. package/dist/internal/islands-runtime.mjs +57 -1
  158. package/dist/internal/product-telemetry-runtime.cjs +2 -2
  159. package/dist/internal/product-telemetry-runtime.mjs +1 -1
  160. package/dist/internal/production-runtime.cjs +11 -8
  161. package/dist/internal/production-runtime.d.mts +24 -11
  162. package/dist/internal/production-runtime.d.ts +24 -11
  163. package/dist/internal/production-runtime.mjs +10 -7
  164. package/dist/internal/server-fn-transform.cjs +13 -0
  165. package/dist/internal/server-fn-transform.d.mts +24 -0
  166. package/dist/internal/server-fn-transform.d.ts +24 -0
  167. package/dist/internal/server-fn-transform.mjs +13 -0
  168. package/dist/markdown.d.mts +1 -1
  169. package/dist/markdown.d.ts +1 -1
  170. package/dist/middleware.cjs +7 -7
  171. package/dist/middleware.d.mts +3 -3
  172. package/dist/middleware.d.ts +3 -3
  173. package/dist/middleware.mjs +6 -6
  174. package/dist/mobile.d.mts +30 -3
  175. package/dist/mobile.d.ts +30 -3
  176. package/dist/{navigation-delegate-8xg3Zvp4.d.ts → navigation-delegate-BU4xqdnw.d.ts} +1 -1
  177. package/dist/{navigation-delegate-ji6elCKy.d.mts → navigation-delegate-DLhbfEN4.d.mts} +1 -1
  178. package/dist/navigation.d.mts +4 -4
  179. package/dist/navigation.d.ts +4 -4
  180. package/dist/{nitro-YPSZBYDK.cjs → nitro-CK7M4RMY.cjs} +11 -11
  181. package/dist/{nitro-2Q5NVY7L.mjs → nitro-R444AF3O.mjs} +7 -7
  182. package/dist/plugin.cjs +25 -23
  183. package/dist/plugin.d.mts +3 -3
  184. package/dist/plugin.d.ts +3 -3
  185. package/dist/plugin.mjs +24 -22
  186. package/dist/{production-runtime-TdKaYRj0.d.ts → production-runtime-C78A8YgK.d.ts} +1 -1
  187. package/dist/{production-runtime-DXnQQkQf.d.mts → production-runtime-DLA4J5WG.d.mts} +1 -1
  188. package/dist/{programmatic-routes-client-BwiTndEC.d.ts → programmatic-routes-client-CBqkNhBy.d.ts} +2 -2
  189. package/dist/{programmatic-routes-client-Dh1SDLSM.d.mts → programmatic-routes-client-NpqGBn-i.d.mts} +2 -2
  190. package/dist/{render-plan-BvCGXF6K.d.mts → render-plan-C9sWvDTv.d.mts} +1 -1
  191. package/dist/{render-plan-BPbwRbuN.d.ts → render-plan-CrqcBbnV.d.ts} +1 -1
  192. package/dist/renderer-client.cjs +8 -6
  193. package/dist/renderer-client.d.mts +4 -4
  194. package/dist/renderer-client.d.ts +4 -4
  195. package/dist/renderer-client.mjs +4 -2
  196. package/dist/{request-B8PGTZNR.d.ts → request-BizeuqD7.d.ts} +1 -1
  197. package/dist/{request-C_xTkJib.d.mts → request-WwB1-Uim.d.mts} +1 -1
  198. package/dist/request.d.mts +2 -2
  199. package/dist/request.d.ts +2 -2
  200. package/dist/{route-rendering-RNtcj607.d.ts → route-rendering-BGhJN64l.d.ts} +1 -1
  201. package/dist/{route-rendering-DlddURL1.d.mts → route-rendering-S6NFjnx4.d.mts} +1 -1
  202. package/dist/{router-B97eB0Mq.d.mts → router-BIheIy9G.d.mts} +1 -1
  203. package/dist/{router-qUVaoEN8.d.ts → router-BUD_j2EL.d.ts} +1 -1
  204. package/dist/routes.cjs +3 -2
  205. package/dist/routes.d.mts +2 -2
  206. package/dist/routes.d.ts +2 -2
  207. package/dist/routes.mjs +2 -1
  208. package/dist/{rsc-pipeline-L4XOZ2TE.cjs → rsc-pipeline-JRGUZBYM.cjs} +11 -11
  209. package/dist/{rsc-pipeline-T3775JUA.mjs → rsc-pipeline-OLAVIKI3.mjs} +10 -10
  210. package/dist/{runtime-C8GUnNeP.d.ts → runtime-CWP-21hP.d.ts} +1 -1
  211. package/dist/{runtime-CaDswfWi.d.mts → runtime-CgJwe6H_.d.mts} +1 -1
  212. package/dist/{runtime-BIBGJO7V.cjs → runtime-G23RSLEK.cjs} +14 -14
  213. package/dist/{runtime-HRSFC4ZC.mjs → runtime-OGCHDACZ.mjs} +12 -12
  214. package/dist/{schema-dev-notice-LZ5NXGLN.mjs → schema-dev-notice-F6QYSOAI.mjs} +2 -2
  215. package/dist/{schema-dev-notice-XV7GZ3QJ.cjs → schema-dev-notice-UU7DMZEU.cjs} +3 -3
  216. package/dist/{search-client-BTXL5XWD.mjs → search-client-OXH6GBNO.mjs} +5 -3
  217. package/dist/search-client-ZZLKVO5R.cjs +15 -0
  218. package/dist/server-action-security.cjs +2 -2
  219. package/dist/server-action-security.mjs +1 -1
  220. package/dist/server-fn.cjs +3 -3
  221. package/dist/server-fn.mjs +2 -2
  222. package/dist/server-plugins.d.mts +2 -2
  223. package/dist/server-plugins.d.ts +2 -2
  224. package/dist/server-query-client.cjs +4 -3
  225. package/dist/server-query-client.mjs +3 -2
  226. package/dist/server-query.cjs +4 -4
  227. package/dist/server-query.mjs +3 -3
  228. package/dist/server.cjs +57 -55
  229. package/dist/server.d.mts +9 -9
  230. package/dist/server.d.ts +9 -9
  231. package/dist/server.mjs +34 -32
  232. package/dist/{spa-router-Dlv5ofg0.d.mts → spa-router-CVOL0Vrq.d.mts} +2 -2
  233. package/dist/{spa-router-qapSboKz.d.ts → spa-router-Kytv4jSB.d.ts} +2 -2
  234. package/dist/testing.cjs +12 -11
  235. package/dist/testing.d.mts +1 -1
  236. package/dist/testing.d.ts +1 -1
  237. package/dist/testing.mjs +9 -8
  238. package/dist/{utils-A-cYF81u.d.ts → utils-DbyXlzaj.d.ts} +1 -1
  239. package/dist/{utils-DyvlSxFk.d.mts → utils-Dsa1HZ7X.d.mts} +1 -1
  240. package/dist/version.cjs +2 -2
  241. package/dist/version.mjs +1 -1
  242. package/dist/vite.cjs +25 -23
  243. package/dist/vite.d.mts +4 -4
  244. package/dist/vite.d.ts +4 -4
  245. package/dist/vite.mjs +24 -22
  246. package/dist/workflows.cjs +4 -4
  247. package/dist/workflows.mjs +3 -3
  248. package/package.json +8 -3
  249. package/dist/base-path-leyrqXbX.d.mts +0 -19
  250. package/dist/base-path-leyrqXbX.d.ts +0 -19
  251. package/dist/chunk-OTOOJIUB.mjs +0 -34
  252. package/dist/search-client-QCYAL6AY.cjs +0 -13
@@ -1,29 +1,29 @@
1
1
  export { _runWithAfterRequest } from '../after.js';
2
- export { c as createFarmAppManifestResponse } from '../app-manifest-D0kaXdwu.js';
3
- import { aO as ResolvedFarmConfig, dp as FarmIntegrationsUserConfig, bk as StaticPathParams, eF as ResolvedFarmMCPConfig, aS as FarmMCPServerRegistration, fY as FarmLlmsTxtLink, F as FarmPlugin, aU as FarmConfig, a_ as FarmContextFactoryInput } from '../client-plugins-BPfltM5m.js';
4
- export { fZ as FarmLlmsTxtUserConfig, f_ as ResolvedFarmLlmsTxtConfig, f$ as applyFarmCspNonceToResponse, g0 as collectFarmLlmsTxtPages, g1 as createFarmAgentRobots, g2 as createFarmCspNonce, g3 as createFarmDefaultLlmsTxt, g4 as createFarmDefaultSitemap, g5 as createFarmLlmsFullRenderer, g6 as createFarmLlmsMarkdownReader, g7 as createFarmMetadataRouteResponse, E as getFarmRedirectError, G as isFarmNotFoundError, H as isFarmRedirectError, g8 as manageFarmDocumentPreloads, g9 as manageFarmHtmlPreloads, ga as manageFarmLinkHeaderPreloads, bt as registerFarmMCPServer, gb as renderFarmLlmsFullTxt, gc as reportFarmPreloadWarnings, gd as resolveFarmLlmsTxtConfig, ge as resolveFarmSecurityConfig, gf as stampFarmCspNonce } from '../client-plugins-BPfltM5m.js';
5
- export { m as mergeRouteRenderingDirectiveConfig } from '../route-rendering-RNtcj607.js';
2
+ export { c as createFarmAppManifestResponse } from '../app-manifest-LzjoNPeq.js';
3
+ import { f$ as MiddlewareMatcher, aP as ResolvedFarmConfig, ds as FarmIntegrationsUserConfig, bl as StaticPathParams, eI as ResolvedFarmMCPConfig, aT as FarmMCPServerRegistration, g0 as FarmLlmsTxtLink, F as FarmPlugin, aV as FarmConfig, a$ as FarmContextFactoryInput } from '../client-plugins-CFBEfVPO.js';
4
+ export { g1 as FarmLlmsTxtUserConfig, g2 as ResolvedFarmLlmsTxtConfig, g3 as applyFarmCspNonceToResponse, g4 as collectFarmLlmsTxtPages, g5 as createFarmAgentRobots, g6 as createFarmCspNonce, g7 as createFarmDefaultLlmsTxt, g8 as createFarmDefaultSitemap, g9 as createFarmLlmsFullRenderer, ga as createFarmLlmsMarkdownReader, gb as createFarmMetadataRouteResponse, bM as createFarmSearchParams, G as getFarmRedirectError, H as isFarmNotFoundError, I as isFarmRedirectError, gc as manageFarmDocumentPreloads, gd as manageFarmHtmlPreloads, ge as manageFarmLinkHeaderPreloads, bu as registerFarmMCPServer, gf as renderFarmLlmsFullTxt, gg as reportFarmPreloadWarnings, gh as resolveFarmLlmsTxtConfig, gi as resolveFarmSecurityConfig, bN as searchParamsToObject, gj as stampFarmCspNonce } from '../client-plugins-CFBEfVPO.js';
5
+ export { m as mergeRouteRenderingDirectiveConfig } from '../route-rendering-BGhJN64l.js';
6
6
  import { R as ResolvedFarmServerConfig } from '../workflows-CRMzQZ3k.js';
7
7
  export { f as FarmServerConfig, z as bufferFarmRequestBody, A as cloneFarmRequestWithContext, c as createFarmNodeRequestAbortSignal, B as createFarmRequestBodyErrorResponse, C as matchesFarmIfNoneMatch, E as readFarmRequestBody, G as readNodeRequestBody, H as resolveFarmServerConfig } from '../workflows-CRMzQZ3k.js';
8
8
  export { _registerFarmStorageModules, disposeStorage as disposeFarmStorage, initStorage as initFarmStorage } from '../storage.js';
9
- export { _ as _getRequestReadCount, a as _runWithCurrentRequest, b as _runWithFarmCspNonce, g as getCurrentRequest, r as resolveFarmWebRequestOrigin } from '../request-B8PGTZNR.js';
9
+ export { _ as _getRequestReadCount, a as _runWithCurrentRequest, b as _runWithFarmCspNonce, g as getCurrentRequest, r as resolveFarmWebRequestOrigin } from '../request-BizeuqD7.js';
10
10
  import { A as APIRequestRuntime } from '../server-client-bridge-DKWDl5NB.js';
11
11
  export { configureFarmCache, createFarmCacheKey, getFarmDataCache, normalizeRevalidatePath } from '../cache.js';
12
12
  import { k as FarmI18nUserConfig, R as ResolvedFarmI18nConfig } from '../types-C41ePjvP.js';
13
13
  export { c as createFarmLocaleCookie, g as getFarmLocaleVaryHeaders } from '../resolver-CJ-D9nP-.js';
14
14
  import { F as FarmLocalePathConfig } from '../index-D3l4tREW.js';
15
15
  export { l as localizeFarmHref, a as localizeFarmPathname, s as stripFarmLocaleFromPathname } from '../index-D3l4tREW.js';
16
- import { F as FarmDefaultMCPPage } from '../agent-mcp-9BMbRgg_.js';
17
- export { a as addMetadataImageReference, b as addMetadataMarkdownAlternate, d as collectFarmDefaultMCPPages, m as mergeMetadata, e as mergeModuleViewport, r as renderMetadataHead, f as renderViewportHead, g as resolveFarmDefaultMCPServer, h as resolveFarmNotFoundMetadata, i as resolveMetadataTitle } from '../agent-mcp-9BMbRgg_.js';
18
- export { _ as _runWithMiddlewareContext, a as _runWithMiddlewareData, f as _withFarmGuardedResponseCache, b as applyProductionMiddlewareHeaders, c as createProductionMiddlewareRunner } from '../production-runtime-TdKaYRj0.js';
16
+ import { F as FarmDefaultMCPPage } from '../agent-mcp-BBMfNpsC.js';
17
+ export { a as addMetadataImageReference, b as addMetadataMarkdownAlternate, d as collectFarmDefaultMCPPages, m as mergeMetadata, e as mergeModuleViewport, r as renderMetadataHead, f as renderViewportHead, g as resolveFarmDefaultMCPServer, h as resolveFarmNotFoundMetadata, i as resolveMetadataTitle } from '../agent-mcp-BBMfNpsC.js';
18
+ export { _ as _runWithMiddlewareContext, a as _runWithMiddlewareData, f as _withFarmGuardedResponseCache, b as applyProductionMiddlewareHeaders, c as createProductionMiddlewareRunner } from '../production-runtime-C78A8YgK.js';
19
19
  export { H as configureFarmObservability, J as emitFarmEvent, P as runWithFarmRequestSpan } from '../observability-B2363jB6.js';
20
20
  export { f as createFarmInstrumentationLifecycle, r as resolveFarmInstrumentationRuntime } from '../instrumentation-runtime-CX9Zh-16.js';
21
21
  export { _setDefaultFarmThemeConfig, getTheme } from '../theme/server.js';
22
22
  import { c as FarmThemeRuntime, d as FarmThemeConfig, R as ResolvedFarmThemeConfig, a as FarmThemePreference } from '../types-DQnyD3VD.js';
23
- export { d as applyFarmBasePath, r as resolveFarmTrailingSlashRedirect, s as searchParamsToObject, a as setFarmBasePath, b as setFarmTrailingSlashPreference, c as stripFarmBasePath } from '../base-path-leyrqXbX.js';
24
- export { m as matchFarmPageRoute, p as parseRoutePath } from '../utils-A-cYF81u.js';
23
+ export { m as matchFarmPageRoute, p as parseRoutePath } from '../utils-DbyXlzaj.js';
24
+ export { c as applyFarmBasePath, r as resolveFarmTrailingSlashRedirect, s as setFarmBasePath, a as setFarmTrailingSlashPreference, b as stripFarmBasePath } from '../base-path-BOUV5ozD.js';
25
25
  export { handleFarmFormActionRequest } from './form-actions.js';
26
- export { g as getSharedLayoutPrefixLength, p as parseFarmLayoutChainHeader } from '../render-plan-BPbwRbuN.js';
26
+ export { g as getSharedLayoutPrefixLength, p as parseFarmLayoutChainHeader } from '../render-plan-CrqcBbnV.js';
27
27
  import 'node:http';
28
28
  import '../lifecycle-C2aLBOwu.js';
29
29
  import '../route-DFhZj6jN.js';
@@ -54,6 +54,18 @@ import '../font.js';
54
54
  import '@opentelemetry/api';
55
55
  import '../island-CfGru1MO.js';
56
56
 
57
+ /**
58
+ * The `config` a middleware file exports, read from its source at build time so prerendering
59
+ * knows which paths the file's own `matcher` leaves alone. Only literal matchers count (strings,
60
+ * regular expressions, arrays of them): anything computed, or a request-aware function, may match
61
+ * any path, so it reads as unknown and the page stays server-handled.
62
+ */
63
+
64
+ interface StaticMiddlewareConfig {
65
+ matcher?: MiddlewareMatcher | MiddlewareMatcher[];
66
+ exclude?: Array<string | RegExp>;
67
+ }
68
+
57
69
  /**
58
70
  * Whether config middleware may run for a path. This reuses the runtime matcher: a
59
71
  * separate copy drifted (`/members/(.*)` kept its trailing slash and never met
@@ -66,6 +78,7 @@ declare function configMiddlewareMayHandlePath(config: ResolvedFarmConfig["middl
66
78
  /** @internal File middleware counterpart of `configMiddlewareMayHandlePath`. */
67
79
  declare function appMiddlewareMayHandlePath(middlewareRoutes: readonly {
68
80
  path: string;
81
+ config?: StaticMiddlewareConfig | null | "unknown";
69
82
  }[], pathname: string): boolean;
70
83
  /**
71
84
  * Whether a guard written for this page's path covers it: middleware.ts in the page's
@@ -32,7 +32,7 @@ import {
32
32
  parseFarmLayoutChainHeader,
33
33
  renderFarmLocaleAlternateLinks,
34
34
  resolveDefaultErrorStatus
35
- } from "../chunk-ZIBIE7AH.mjs";
35
+ } from "../chunk-7UPCJDB5.mjs";
36
36
  import {
37
37
  _farmPluginsKeepResponsesPrivate
38
38
  } from "../chunk-UUMKLGUU.mjs";
@@ -53,7 +53,7 @@ import {
53
53
  resolveFarmMCPRouteLabel,
54
54
  resolveFarmMarkdownRouteLabel,
55
55
  setFarmRouteLabel
56
- } from "../chunk-JJOWY3XD.mjs";
56
+ } from "../chunk-R5P4KFPM.mjs";
57
57
  import {
58
58
  collectFarmDefaultMCPPages,
59
59
  resolveFarmDefaultMCPServer
@@ -64,7 +64,8 @@ import {
64
64
  } from "../chunk-A4PWGL46.mjs";
65
65
  import {
66
66
  handleFarmFormActionRequest
67
- } from "../chunk-OTOOJIUB.mjs";
67
+ } from "../chunk-Z5A6CNV2.mjs";
68
+ import "../chunk-X3EFRVXY.mjs";
68
69
  import "../chunk-XAXTTBUT.mjs";
69
70
  import "../chunk-MNIR7I7B.mjs";
70
71
  import {
@@ -95,7 +96,7 @@ import {
95
96
  resolveFarmSecurityConfig,
96
97
  stampFarmCspNonce
97
98
  } from "../chunk-22W4FNTG.mjs";
98
- import "../chunk-BW6SCVYX.mjs";
99
+ import "../chunk-FSQMN2MQ.mjs";
99
100
  import "../chunk-YWPNIYUP.mjs";
100
101
  import "../chunk-N77JBPLC.mjs";
101
102
  import {
@@ -139,10 +140,11 @@ import {
139
140
  import {
140
141
  matchRoute,
141
142
  parseRoutePath
142
- } from "../chunk-2SVJGOAX.mjs";
143
+ } from "../chunk-Y3N5BFRJ.mjs";
143
144
  import {
145
+ createFarmSearchParams,
144
146
  searchParamsToObject
145
- } from "../chunk-TXK4D46O.mjs";
147
+ } from "../chunk-H3ASZDT7.mjs";
146
148
  import {
147
149
  configureFarmObservability,
148
150
  emitFarmEvent,
@@ -160,7 +162,7 @@ import {
160
162
  } from "../chunk-GFT5AHAT.mjs";
161
163
  import "../chunk-D2LCAV6L.mjs";
162
164
  import "../chunk-LM2YOGDK.mjs";
163
- import "../chunk-2VCC3GVC.mjs";
165
+ import "../chunk-ZF3GX4O7.mjs";
164
166
  import {
165
167
  resolveFarmTrailingSlashRedirect,
166
168
  setFarmTrailingSlashPreference
@@ -572,6 +574,7 @@ export {
572
574
  createFarmNodeRequestAbortSignal,
573
575
  createFarmProductionLifecycle,
574
576
  createFarmRequestBodyErrorResponse,
577
+ createFarmSearchParams,
575
578
  createFarmThemeDocumentParts,
576
579
  createLateNotFoundRecovery,
577
580
  createLateRedirectRecovery,
@@ -0,0 +1,13 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+ var _chunkPIUTGRDIcjs = require('../chunk-PIUTGRDI.cjs');
7
+ require('../chunk-BTZ5O6VM.cjs');
8
+
9
+
10
+
11
+
12
+
13
+ exports.FARM_SERVER_FN_BOUNDARY_QUERY = _chunkPIUTGRDIcjs.FARM_SERVER_FN_BOUNDARY_QUERY; exports.createFarmServerFnBoundaryModule = _chunkPIUTGRDIcjs.createFarmServerFnBoundaryModule; exports.isFarmServerFnBoundaryId = _chunkPIUTGRDIcjs.isFarmServerFnBoundaryId; exports.transformFarmServerFns = _chunkPIUTGRDIcjs.transformFarmServerFns;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Query that marks the generated "use server" boundary of a module whose server
3
+ * functions were found implicitly. Only the server functions are exported from
4
+ * it, so @vitejs/plugin-rsc registers nothing else from the source module.
5
+ */
6
+ declare const FARM_SERVER_FN_BOUNDARY_QUERY = "?farm-server-fns";
7
+ type FarmServerFnTransformOptions = {
8
+ /** Vite environment being transformed. Anything other than "rsc" gets the client view. */
9
+ environment?: string;
10
+ };
11
+ type FarmServerFnTransformResult = {
12
+ code: string;
13
+ exports: string[];
14
+ };
15
+ declare function transformFarmServerFns(code: string, id: string, options?: FarmServerFnTransformOptions): FarmServerFnTransformResult | null;
16
+ /**
17
+ * Source of the generated boundary for a module without an explicit
18
+ * "use server". Its wrappers call the source module's private bindings lazily,
19
+ * so the import cycle between the two modules is safe in any load order.
20
+ */
21
+ declare function createFarmServerFnBoundaryModule(code: string, id: string): string | null;
22
+ declare function isFarmServerFnBoundaryId(id: string): boolean;
23
+
24
+ export { FARM_SERVER_FN_BOUNDARY_QUERY, type FarmServerFnTransformOptions, type FarmServerFnTransformResult, createFarmServerFnBoundaryModule, isFarmServerFnBoundaryId, transformFarmServerFns };
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Query that marks the generated "use server" boundary of a module whose server
3
+ * functions were found implicitly. Only the server functions are exported from
4
+ * it, so @vitejs/plugin-rsc registers nothing else from the source module.
5
+ */
6
+ declare const FARM_SERVER_FN_BOUNDARY_QUERY = "?farm-server-fns";
7
+ type FarmServerFnTransformOptions = {
8
+ /** Vite environment being transformed. Anything other than "rsc" gets the client view. */
9
+ environment?: string;
10
+ };
11
+ type FarmServerFnTransformResult = {
12
+ code: string;
13
+ exports: string[];
14
+ };
15
+ declare function transformFarmServerFns(code: string, id: string, options?: FarmServerFnTransformOptions): FarmServerFnTransformResult | null;
16
+ /**
17
+ * Source of the generated boundary for a module without an explicit
18
+ * "use server". Its wrappers call the source module's private bindings lazily,
19
+ * so the import cycle between the two modules is safe in any load order.
20
+ */
21
+ declare function createFarmServerFnBoundaryModule(code: string, id: string): string | null;
22
+ declare function isFarmServerFnBoundaryId(id: string): boolean;
23
+
24
+ export { FARM_SERVER_FN_BOUNDARY_QUERY, type FarmServerFnTransformOptions, type FarmServerFnTransformResult, createFarmServerFnBoundaryModule, isFarmServerFnBoundaryId, transformFarmServerFns };
@@ -0,0 +1,13 @@
1
+ import {
2
+ FARM_SERVER_FN_BOUNDARY_QUERY,
3
+ createFarmServerFnBoundaryModule,
4
+ isFarmServerFnBoundaryId,
5
+ transformFarmServerFns
6
+ } from "../chunk-GNZIAJGB.mjs";
7
+ import "../chunk-Y6FXYEAI.mjs";
8
+ export {
9
+ FARM_SERVER_FN_BOUNDARY_QUERY,
10
+ createFarmServerFnBoundaryModule,
11
+ isFarmServerFnBoundaryId,
12
+ transformFarmServerFns
13
+ };
@@ -1,4 +1,4 @@
1
- export { bR as ApplyMarkdownNegotiationHeadersOptions, bV as CreateMarkdownMirrorResponseOptions, j as FARM_MARKDOWN_CONTENT_TYPE, c2 as FARM_MARKDOWN_PAGE_CHECK_HEADER, dJ as FarmMarkdownMirrorTarget, aT as FarmMarkdownResolvedConfig, dK as FarmMarkdownResolvedRoute, dL as FarmMarkdownRouteInput, dM as FarmMarkdownUserConfig, dN as FarmPageFormAction, dO as FarmPageFormField, dP as FarmPageFormOption, dQ as FarmPageFormSubmit, eC as ResolveMarkdownMirrorTargetOptions, eJ as _getFarmMarkdownPageCheckToken, eK as _isFarmMarkdownPageCheck, eL as applyMarkdownNegotiationHeaders, k as createFarmMarkdownErrorBody, eQ as createMarkdownMirrorResponse, eY as extractFarmPageActions, eZ as farmAcceptQuality, l as farmRequestWantsMarkdown, f7 as getFarmMarkdownAlternatePath, f8 as getFarmMarkdownMirrorPath, fl as htmlToMarkdown, fq as isFarmMarkdownMirrorExposed, fu as matchesFarmMarkdownRoutePattern, fD as requestAcceptsMarkdown, fN as resolveMarkdownConfig, fO as resolveMarkdownMirrorTarget } from './client-plugins-D4RO59f0.mjs';
1
+ export { bU as ApplyMarkdownNegotiationHeadersOptions, bY as CreateMarkdownMirrorResponseOptions, j as FARM_MARKDOWN_CONTENT_TYPE, c5 as FARM_MARKDOWN_PAGE_CHECK_HEADER, dM as FarmMarkdownMirrorTarget, aU as FarmMarkdownResolvedConfig, dN as FarmMarkdownResolvedRoute, dO as FarmMarkdownRouteInput, dP as FarmMarkdownUserConfig, dQ as FarmPageFormAction, dR as FarmPageFormField, dS as FarmPageFormOption, dT as FarmPageFormSubmit, eF as ResolveMarkdownMirrorTargetOptions, eM as _getFarmMarkdownPageCheckToken, eN as _isFarmMarkdownPageCheck, eO as applyMarkdownNegotiationHeaders, k as createFarmMarkdownErrorBody, eT as createMarkdownMirrorResponse, e$ as extractFarmPageActions, f0 as farmAcceptQuality, l as farmRequestWantsMarkdown, fa as getFarmMarkdownAlternatePath, fb as getFarmMarkdownMirrorPath, fo as htmlToMarkdown, ft as isFarmMarkdownMirrorExposed, fx as matchesFarmMarkdownRoutePattern, fG as requestAcceptsMarkdown, fQ as resolveMarkdownConfig, fR as resolveMarkdownMirrorTarget } from './client-plugins-cqy_dQd0.mjs';
2
2
  import './lifecycle-C2aLBOwu.mjs';
3
3
  import './route-2_yXC6gv.mjs';
4
4
  import './endpoint-BkMSCRf6.mjs';
@@ -1,4 +1,4 @@
1
- export { bR as ApplyMarkdownNegotiationHeadersOptions, bV as CreateMarkdownMirrorResponseOptions, j as FARM_MARKDOWN_CONTENT_TYPE, c2 as FARM_MARKDOWN_PAGE_CHECK_HEADER, dJ as FarmMarkdownMirrorTarget, aT as FarmMarkdownResolvedConfig, dK as FarmMarkdownResolvedRoute, dL as FarmMarkdownRouteInput, dM as FarmMarkdownUserConfig, dN as FarmPageFormAction, dO as FarmPageFormField, dP as FarmPageFormOption, dQ as FarmPageFormSubmit, eC as ResolveMarkdownMirrorTargetOptions, eJ as _getFarmMarkdownPageCheckToken, eK as _isFarmMarkdownPageCheck, eL as applyMarkdownNegotiationHeaders, k as createFarmMarkdownErrorBody, eQ as createMarkdownMirrorResponse, eY as extractFarmPageActions, eZ as farmAcceptQuality, l as farmRequestWantsMarkdown, f7 as getFarmMarkdownAlternatePath, f8 as getFarmMarkdownMirrorPath, fl as htmlToMarkdown, fq as isFarmMarkdownMirrorExposed, fu as matchesFarmMarkdownRoutePattern, fD as requestAcceptsMarkdown, fN as resolveMarkdownConfig, fO as resolveMarkdownMirrorTarget } from './client-plugins-BPfltM5m.js';
1
+ export { bU as ApplyMarkdownNegotiationHeadersOptions, bY as CreateMarkdownMirrorResponseOptions, j as FARM_MARKDOWN_CONTENT_TYPE, c5 as FARM_MARKDOWN_PAGE_CHECK_HEADER, dM as FarmMarkdownMirrorTarget, aU as FarmMarkdownResolvedConfig, dN as FarmMarkdownResolvedRoute, dO as FarmMarkdownRouteInput, dP as FarmMarkdownUserConfig, dQ as FarmPageFormAction, dR as FarmPageFormField, dS as FarmPageFormOption, dT as FarmPageFormSubmit, eF as ResolveMarkdownMirrorTargetOptions, eM as _getFarmMarkdownPageCheckToken, eN as _isFarmMarkdownPageCheck, eO as applyMarkdownNegotiationHeaders, k as createFarmMarkdownErrorBody, eT as createMarkdownMirrorResponse, e$ as extractFarmPageActions, f0 as farmAcceptQuality, l as farmRequestWantsMarkdown, fa as getFarmMarkdownAlternatePath, fb as getFarmMarkdownMirrorPath, fo as htmlToMarkdown, ft as isFarmMarkdownMirrorExposed, fx as matchesFarmMarkdownRoutePattern, fG as requestAcceptsMarkdown, fQ as resolveMarkdownConfig, fR as resolveMarkdownMirrorTarget } from './client-plugins-CFBEfVPO.js';
2
2
  import './lifecycle-C2aLBOwu.js';
3
3
  import './route-DFhZj6jN.js';
4
4
  import './endpoint-BgHn0lhl.js';
@@ -7,7 +7,7 @@
7
7
 
8
8
 
9
9
 
10
- var _chunkE2BMCNMJcjs = require('./chunk-E2BMCNMJ.cjs');
10
+ var _chunkMMEEXMUQcjs = require('./chunk-MMEEXMUQ.cjs');
11
11
 
12
12
 
13
13
 
@@ -16,14 +16,14 @@ var _chunkSUV6YO4Qcjs = require('./chunk-SUV6YO4Q.cjs');
16
16
 
17
17
 
18
18
 
19
- var _chunkUY6HS5PFcjs = require('./chunk-UY6HS5PF.cjs');
20
- require('./chunk-L6QDME5Z.cjs');
21
- require('./chunk-J2ZEVDEK.cjs');
19
+ var _chunkUSL2ANCBcjs = require('./chunk-USL2ANCB.cjs');
22
20
 
23
21
 
24
22
 
25
23
 
26
24
  var _chunkUPYIFH2Hcjs = require('./chunk-UPYIFH2H.cjs');
25
+ require('./chunk-B3GZAQSC.cjs');
26
+ require('./chunk-EHB77D5U.cjs');
27
27
 
28
28
 
29
29
 
@@ -36,8 +36,8 @@ require('./chunk-Y3WG64CP.cjs');
36
36
  require('./chunk-SNP33A33.cjs');
37
37
  require('./chunk-JYNNIGQO.cjs');
38
38
  require('./chunk-LNVGXUL3.cjs');
39
- require('./chunk-XN2MB4QZ.cjs');
40
- require('./chunk-JHXJBNLY.cjs');
39
+ require('./chunk-VQJYGZNX.cjs');
40
+ require('./chunk-SUCDVKUB.cjs');
41
41
  require('./chunk-EVIWKPJV.cjs');
42
42
  require('./chunk-Z5MZDFX4.cjs');
43
43
  require('./chunk-LIFUPCXW.cjs');
@@ -81,4 +81,4 @@ require('./chunk-BTZ5O6VM.cjs');
81
81
 
82
82
 
83
83
 
84
- exports.MiddlewareManager = _chunkUY6HS5PFcjs.MiddlewareManager; exports.UnsupportedRateLimitStorageError = _chunkE2BMCNMJcjs.UnsupportedRateLimitStorageError; exports._runWithMiddlewareContext = _chunkYDXLC4DWcjs._runWithMiddlewareContext; exports._runWithMiddlewareData = _chunkYDXLC4DWcjs._runWithMiddlewareData; exports.applyProductionMiddlewareHeaders = _chunkSUV6YO4Qcjs.applyProductionMiddlewareHeaders; exports.canonicalizeRequestPathSegments = _chunk6CTFVBATcjs.canonicalizeRequestPathSegments; exports.canonicalizeRequestPathname = _chunk6CTFVBATcjs.canonicalizeRequestPathname; exports.createContext = _chunkUY6HS5PFcjs.createContext; exports.createProductionMiddlewareRunner = _chunkSUV6YO4Qcjs.createProductionMiddlewareRunner; exports.farmMiddlewarePlugin = _chunkE2BMCNMJcjs.farmMiddlewarePlugin; exports.getFromMiddleware = _chunkE2BMCNMJcjs.getFromMiddleware; exports.getMiddlewareContext = _chunkYDXLC4DWcjs.getMiddlewareContext; exports.getMiddlewareData = _chunkYDXLC4DWcjs.getMiddlewareData; exports.getMiddlewareValue = _chunkYDXLC4DWcjs.getMiddlewareValue; exports.getRateLimitStatus = _chunkE2BMCNMJcjs.getRateLimitStatus; exports.hasMiddlewareData = _chunkE2BMCNMJcjs.hasMiddlewareData; exports.matchesMiddlewareConfig = _chunkSUV6YO4Qcjs.matchesMiddlewareConfig; exports.memoryRateLimitStorage = _chunkE2BMCNMJcjs.memoryRateLimitStorage; exports.middleware = _chunkE2BMCNMJcjs.middleware; exports.parseMiddlewareCookieHeader = _chunkUPYIFH2Hcjs.parseMiddlewareCookieHeader; exports.serializeMiddlewareCookie = _chunkUPYIFH2Hcjs.serializeMiddlewareCookie; exports.serializeMiddlewareCookieDeletion = _chunkUPYIFH2Hcjs.serializeMiddlewareCookieDeletion; exports.unwrapMiddleware = _chunkE2BMCNMJcjs.unwrapMiddleware;
84
+ exports.MiddlewareManager = _chunkUSL2ANCBcjs.MiddlewareManager; exports.UnsupportedRateLimitStorageError = _chunkMMEEXMUQcjs.UnsupportedRateLimitStorageError; exports._runWithMiddlewareContext = _chunkYDXLC4DWcjs._runWithMiddlewareContext; exports._runWithMiddlewareData = _chunkYDXLC4DWcjs._runWithMiddlewareData; exports.applyProductionMiddlewareHeaders = _chunkSUV6YO4Qcjs.applyProductionMiddlewareHeaders; exports.canonicalizeRequestPathSegments = _chunk6CTFVBATcjs.canonicalizeRequestPathSegments; exports.canonicalizeRequestPathname = _chunk6CTFVBATcjs.canonicalizeRequestPathname; exports.createContext = _chunkUSL2ANCBcjs.createContext; exports.createProductionMiddlewareRunner = _chunkSUV6YO4Qcjs.createProductionMiddlewareRunner; exports.farmMiddlewarePlugin = _chunkMMEEXMUQcjs.farmMiddlewarePlugin; exports.getFromMiddleware = _chunkMMEEXMUQcjs.getFromMiddleware; exports.getMiddlewareContext = _chunkYDXLC4DWcjs.getMiddlewareContext; exports.getMiddlewareData = _chunkYDXLC4DWcjs.getMiddlewareData; exports.getMiddlewareValue = _chunkYDXLC4DWcjs.getMiddlewareValue; exports.getRateLimitStatus = _chunkMMEEXMUQcjs.getRateLimitStatus; exports.hasMiddlewareData = _chunkMMEEXMUQcjs.hasMiddlewareData; exports.matchesMiddlewareConfig = _chunkSUV6YO4Qcjs.matchesMiddlewareConfig; exports.memoryRateLimitStorage = _chunkMMEEXMUQcjs.memoryRateLimitStorage; exports.middleware = _chunkMMEEXMUQcjs.middleware; exports.parseMiddlewareCookieHeader = _chunkUPYIFH2Hcjs.parseMiddlewareCookieHeader; exports.serializeMiddlewareCookie = _chunkUPYIFH2Hcjs.serializeMiddlewareCookie; exports.serializeMiddlewareCookieDeletion = _chunkUPYIFH2Hcjs.serializeMiddlewareCookieDeletion; exports.unwrapMiddleware = _chunkMMEEXMUQcjs.unwrapMiddleware;
@@ -1,10 +1,10 @@
1
- import { ey as RateLimitStorage, ex as RateLimitStatus, em as MemoryRateLimitStorageOptions, ep as MiddlewareChain, aM as MiddlewareContext, aJ as FarmMiddlewareConfig, er as MiddlewareFunction, aL as MiddlewareConfig, aE as MiddlewareProps, bT as CookieOptions } from './client-plugins-D4RO59f0.mjs';
2
- export { bS as CookieJar, es as MiddlewareResult, et as MiddlewareStore, eu as NextFunction, ev as RateLimitConfig, ew as RateLimitIncrementResult, aI as ReadonlyMiddlewareStore, eA as RequestMiddleware, eB as RequestMiddlewareContext } from './client-plugins-D4RO59f0.mjs';
1
+ import { eB as RateLimitStorage, eA as RateLimitStatus, ep as MemoryRateLimitStorageOptions, es as MiddlewareChain, aN as MiddlewareContext, aK as FarmMiddlewareConfig, eu as MiddlewareFunction, aM as MiddlewareConfig, aF as MiddlewareProps, bW as CookieOptions } from './client-plugins-cqy_dQd0.mjs';
2
+ export { bV as CookieJar, ev as MiddlewareResult, ew as MiddlewareStore, ex as NextFunction, ey as RateLimitConfig, ez as RateLimitIncrementResult, aJ as ReadonlyMiddlewareStore, eD as RequestMiddleware, eE as RequestMiddlewareContext } from './client-plugins-cqy_dQd0.mjs';
3
3
  import { IncomingMessage, ServerResponse } from 'http';
4
4
  import { ViteDevServer, Plugin } from 'vite';
5
5
  import { f as FarmServerConfig, R as ResolvedFarmServerConfig } from './workflows-CRMzQZ3k.mjs';
6
6
  import { R as ResolvedFarmI18nConfig } from './types-C41ePjvP.mjs';
7
- export { _ as _runWithMiddlewareContext, a as _runWithMiddlewareData, b as applyProductionMiddlewareHeaders, c as createProductionMiddlewareRunner, g as getMiddlewareContext, d as getMiddlewareData, e as getMiddlewareValue, m as matchesMiddlewareConfig } from './production-runtime-DXnQQkQf.mjs';
7
+ export { _ as _runWithMiddlewareContext, a as _runWithMiddlewareData, b as applyProductionMiddlewareHeaders, c as createProductionMiddlewareRunner, g as getMiddlewareContext, d as getMiddlewareData, e as getMiddlewareValue, m as matchesMiddlewareConfig } from './production-runtime-DLA4J5WG.mjs';
8
8
  import './lifecycle-C2aLBOwu.mjs';
9
9
  import './route-2_yXC6gv.mjs';
10
10
  import './endpoint-BkMSCRf6.mjs';
@@ -1,10 +1,10 @@
1
- import { ey as RateLimitStorage, ex as RateLimitStatus, em as MemoryRateLimitStorageOptions, ep as MiddlewareChain, aM as MiddlewareContext, aJ as FarmMiddlewareConfig, er as MiddlewareFunction, aL as MiddlewareConfig, aE as MiddlewareProps, bT as CookieOptions } from './client-plugins-BPfltM5m.js';
2
- export { bS as CookieJar, es as MiddlewareResult, et as MiddlewareStore, eu as NextFunction, ev as RateLimitConfig, ew as RateLimitIncrementResult, aI as ReadonlyMiddlewareStore, eA as RequestMiddleware, eB as RequestMiddlewareContext } from './client-plugins-BPfltM5m.js';
1
+ import { eB as RateLimitStorage, eA as RateLimitStatus, ep as MemoryRateLimitStorageOptions, es as MiddlewareChain, aN as MiddlewareContext, aK as FarmMiddlewareConfig, eu as MiddlewareFunction, aM as MiddlewareConfig, aF as MiddlewareProps, bW as CookieOptions } from './client-plugins-CFBEfVPO.js';
2
+ export { bV as CookieJar, ev as MiddlewareResult, ew as MiddlewareStore, ex as NextFunction, ey as RateLimitConfig, ez as RateLimitIncrementResult, aJ as ReadonlyMiddlewareStore, eD as RequestMiddleware, eE as RequestMiddlewareContext } from './client-plugins-CFBEfVPO.js';
3
3
  import { IncomingMessage, ServerResponse } from 'http';
4
4
  import { ViteDevServer, Plugin } from 'vite';
5
5
  import { f as FarmServerConfig, R as ResolvedFarmServerConfig } from './workflows-CRMzQZ3k.js';
6
6
  import { R as ResolvedFarmI18nConfig } from './types-C41ePjvP.js';
7
- export { _ as _runWithMiddlewareContext, a as _runWithMiddlewareData, b as applyProductionMiddlewareHeaders, c as createProductionMiddlewareRunner, g as getMiddlewareContext, d as getMiddlewareData, e as getMiddlewareValue, m as matchesMiddlewareConfig } from './production-runtime-TdKaYRj0.js';
7
+ export { _ as _runWithMiddlewareContext, a as _runWithMiddlewareData, b as applyProductionMiddlewareHeaders, c as createProductionMiddlewareRunner, g as getMiddlewareContext, d as getMiddlewareData, e as getMiddlewareValue, m as matchesMiddlewareConfig } from './production-runtime-C78A8YgK.js';
8
8
  import './lifecycle-C2aLBOwu.js';
9
9
  import './route-DFhZj6jN.js';
10
10
  import './endpoint-BgHn0lhl.js';
@@ -7,7 +7,7 @@ import {
7
7
  memoryRateLimitStorage,
8
8
  middleware,
9
9
  unwrapMiddleware
10
- } from "./chunk-KGP76FSV.mjs";
10
+ } from "./chunk-PPDHCRTC.mjs";
11
11
  import {
12
12
  applyProductionMiddlewareHeaders,
13
13
  createProductionMiddlewareRunner,
@@ -16,14 +16,14 @@ import {
16
16
  import {
17
17
  MiddlewareManager,
18
18
  createContext
19
- } from "./chunk-X3HOVNHI.mjs";
20
- import "./chunk-4HBKBHVP.mjs";
21
- import "./chunk-CBJKDB6F.mjs";
19
+ } from "./chunk-WSY2JD7O.mjs";
22
20
  import {
23
21
  parseMiddlewareCookieHeader,
24
22
  serializeMiddlewareCookie,
25
23
  serializeMiddlewareCookieDeletion
26
24
  } from "./chunk-KPAJWD3N.mjs";
25
+ import "./chunk-5ENW27SL.mjs";
26
+ import "./chunk-IRSS4HS4.mjs";
27
27
  import {
28
28
  _runWithMiddlewareContext,
29
29
  _runWithMiddlewareData,
@@ -36,8 +36,8 @@ import "./chunk-IGL6CO6M.mjs";
36
36
  import "./chunk-VHIXGZYH.mjs";
37
37
  import "./chunk-TUOO6IK3.mjs";
38
38
  import "./chunk-MU5V7XHL.mjs";
39
- import "./chunk-2SVJGOAX.mjs";
40
- import "./chunk-TXK4D46O.mjs";
39
+ import "./chunk-Y3N5BFRJ.mjs";
40
+ import "./chunk-H3ASZDT7.mjs";
41
41
  import "./chunk-2DA7CLY7.mjs";
42
42
  import "./chunk-IUQLRTTO.mjs";
43
43
  import "./chunk-GFT5AHAT.mjs";
package/dist/mobile.d.mts CHANGED
@@ -9,7 +9,7 @@ import 'rolldown/utils';
9
9
  import 'rolldown';
10
10
 
11
11
  /**
12
- * `@farm.js/core/mobile`: the interface mobile shell packages (such as `@farm.js/mobile/android`)
12
+ * `@farm.js/core/mobile`: the interface mobile shell packages (`@farm.js/mobile/android`, `/ios`)
13
13
  * implement, and the types a page's `export const mobile` and a `mobile` block use. Types and an
14
14
  * identity helper only; nothing here runs in a web build.
15
15
  */
@@ -22,6 +22,27 @@ interface MobileGeneratedFile {
22
22
  /** Written with the executable bit, such as `gradlew`. */
23
23
  executable?: boolean;
24
24
  }
25
+ /**
26
+ * The React Native screens of a build (RFC 0004, 7.2). Absent when no route resolves to one, and
27
+ * then a shell adds no JS engine, dependency, or asset for them.
28
+ */
29
+ interface MobileNativeScreens {
30
+ engine: "react-native";
31
+ /** The app's `react-native` version, which picks the native artifacts. */
32
+ reactNativeVersion: string;
33
+ /** The Hermes version that React Native release ships. */
34
+ hermesVersion: string;
35
+ /** Module ids with a React Native screen, such as `app/map`. */
36
+ modules: string[];
37
+ /** `farm build --mobile`: the screens' Hermes bytecode, bundled into the app. */
38
+ bundle?: string;
39
+ /** `farm dev --mobile`: the Metro server the debug app loads the screens from. */
40
+ devServer?: {
41
+ port: number;
42
+ /** The entry's path from the app root without `.js`, such as `.farm/output/mobile/native/index`. */
43
+ mainModule: string;
44
+ };
45
+ }
25
46
  interface MobileShellContext {
26
47
  /** App root. */
27
48
  root: string;
@@ -35,6 +56,8 @@ interface MobileShellContext {
35
56
  manifest: FarmMobileRouteManifest;
36
57
  /** Directory the native project is written to, such as `.farm/output/mobile/android`. */
37
58
  projectDir: string;
59
+ /** React Native screens, when at least one route resolves to one on this OS. */
60
+ native?: MobileNativeScreens;
38
61
  }
39
62
  interface MobilePackageContext extends MobileShellContext {
40
63
  /** Directory for built apps (`.farm/output/mobile/dist`). */
@@ -56,12 +79,16 @@ interface MobileShell {
56
79
  * connected. Resolves with `launched: false` and the next commands when none is.
57
80
  */
58
81
  run(context: MobileShellContext): Promise<MobileRunResult>;
59
- /** Build an installable app from the generated project, such as a debug APK. */
82
+ /**
83
+ * Build an installable app from the generated project, such as a debug APK. `message` says
84
+ * what to do next, or why nothing was built (such as no Xcode for an iOS simulator app).
85
+ */
60
86
  package(context: MobilePackageContext): Promise<{
61
87
  files: string[];
88
+ message?: string;
62
89
  }>;
63
90
  }
64
91
  /** Typed helper for mobile shell packages. */
65
92
  declare function defineMobileShell(shell: MobileShell): MobileShell;
66
93
 
67
- export { FarmMobileOS, FarmMobileRouteManifest, type MobileGeneratedFile, type MobilePackageContext, type MobileRunResult, type MobileShell, type MobileShellContext, ResolvedFarmMobileConfig, defineMobileShell };
94
+ export { FarmMobileOS, FarmMobileRouteManifest, type MobileGeneratedFile, type MobileNativeScreens, type MobilePackageContext, type MobileRunResult, type MobileShell, type MobileShellContext, ResolvedFarmMobileConfig, defineMobileShell };
package/dist/mobile.d.ts CHANGED
@@ -9,7 +9,7 @@ import 'rolldown/utils';
9
9
  import 'rolldown';
10
10
 
11
11
  /**
12
- * `@farm.js/core/mobile`: the interface mobile shell packages (such as `@farm.js/mobile/android`)
12
+ * `@farm.js/core/mobile`: the interface mobile shell packages (`@farm.js/mobile/android`, `/ios`)
13
13
  * implement, and the types a page's `export const mobile` and a `mobile` block use. Types and an
14
14
  * identity helper only; nothing here runs in a web build.
15
15
  */
@@ -22,6 +22,27 @@ interface MobileGeneratedFile {
22
22
  /** Written with the executable bit, such as `gradlew`. */
23
23
  executable?: boolean;
24
24
  }
25
+ /**
26
+ * The React Native screens of a build (RFC 0004, 7.2). Absent when no route resolves to one, and
27
+ * then a shell adds no JS engine, dependency, or asset for them.
28
+ */
29
+ interface MobileNativeScreens {
30
+ engine: "react-native";
31
+ /** The app's `react-native` version, which picks the native artifacts. */
32
+ reactNativeVersion: string;
33
+ /** The Hermes version that React Native release ships. */
34
+ hermesVersion: string;
35
+ /** Module ids with a React Native screen, such as `app/map`. */
36
+ modules: string[];
37
+ /** `farm build --mobile`: the screens' Hermes bytecode, bundled into the app. */
38
+ bundle?: string;
39
+ /** `farm dev --mobile`: the Metro server the debug app loads the screens from. */
40
+ devServer?: {
41
+ port: number;
42
+ /** The entry's path from the app root without `.js`, such as `.farm/output/mobile/native/index`. */
43
+ mainModule: string;
44
+ };
45
+ }
25
46
  interface MobileShellContext {
26
47
  /** App root. */
27
48
  root: string;
@@ -35,6 +56,8 @@ interface MobileShellContext {
35
56
  manifest: FarmMobileRouteManifest;
36
57
  /** Directory the native project is written to, such as `.farm/output/mobile/android`. */
37
58
  projectDir: string;
59
+ /** React Native screens, when at least one route resolves to one on this OS. */
60
+ native?: MobileNativeScreens;
38
61
  }
39
62
  interface MobilePackageContext extends MobileShellContext {
40
63
  /** Directory for built apps (`.farm/output/mobile/dist`). */
@@ -56,12 +79,16 @@ interface MobileShell {
56
79
  * connected. Resolves with `launched: false` and the next commands when none is.
57
80
  */
58
81
  run(context: MobileShellContext): Promise<MobileRunResult>;
59
- /** Build an installable app from the generated project, such as a debug APK. */
82
+ /**
83
+ * Build an installable app from the generated project, such as a debug APK. `message` says
84
+ * what to do next, or why nothing was built (such as no Xcode for an iOS simulator app).
85
+ */
60
86
  package(context: MobilePackageContext): Promise<{
61
87
  files: string[];
88
+ message?: string;
62
89
  }>;
63
90
  }
64
91
  /** Typed helper for mobile shell packages. */
65
92
  declare function defineMobileShell(shell: MobileShell): MobileShell;
66
93
 
67
- export { FarmMobileOS, FarmMobileRouteManifest, type MobileGeneratedFile, type MobilePackageContext, type MobileRunResult, type MobileShell, type MobileShellContext, ResolvedFarmMobileConfig, defineMobileShell };
94
+ export { FarmMobileOS, FarmMobileRouteManifest, type MobileGeneratedFile, type MobileNativeScreens, type MobilePackageContext, type MobileRunResult, type MobileShell, type MobileShellContext, ResolvedFarmMobileConfig, defineMobileShell };
@@ -1,4 +1,4 @@
1
- import { F as FarmNavigationBlockerContext } from './spa-router-qapSboKz.js';
1
+ import { F as FarmNavigationBlockerContext } from './spa-router-Kytv4jSB.js';
2
2
 
3
3
  /** A navigation offered to a delegate, after every blocker let it through. */
4
4
  interface FarmNavigationDelegateContext extends FarmNavigationBlockerContext {
@@ -1,4 +1,4 @@
1
- import { F as FarmNavigationBlockerContext } from './spa-router-Dlv5ofg0.mjs';
1
+ import { F as FarmNavigationBlockerContext } from './spa-router-CVOL0Vrq.mjs';
2
2
 
3
3
  /** A navigation offered to a delegate, after every blocker let it through. */
4
4
  interface FarmNavigationDelegateContext extends FarmNavigationBlockerContext {
@@ -1,12 +1,12 @@
1
- import { F as FarmRouterNavigateOptions } from './router-B97eB0Mq.mjs';
2
- export { C as FarmRedirectSignal, D as FarmRedirectStatus, E as getFarmRedirectError, G as isFarmNotFoundError, H as isFarmRedirectError, I as notFound, J as permanentRedirect, K as redirect } from './client-plugins-D4RO59f0.mjs';
1
+ import { F as FarmRouterNavigateOptions } from './router-BIheIy9G.mjs';
2
+ export { D as FarmRedirectSignal, E as FarmRedirectStatus, G as getFarmRedirectError, H as isFarmNotFoundError, I as isFarmRedirectError, J as notFound, K as permanentRedirect, N as redirect } from './client-plugins-cqy_dQd0.mjs';
3
3
  import 'react';
4
4
  import './router.mjs';
5
- import './spa-router-Dlv5ofg0.mjs';
5
+ import './spa-router-CVOL0Vrq.mjs';
6
6
  import './lifecycle-C2aLBOwu.mjs';
7
7
  import './types-C41ePjvP.mjs';
8
8
  import './island-CfGru1MO.mjs';
9
- import './render-plan-BvCGXF6K.mjs';
9
+ import './render-plan-C9sWvDTv.mjs';
10
10
  import './route-2_yXC6gv.mjs';
11
11
  import './endpoint-BkMSCRf6.mjs';
12
12
  import './cache.mjs';
@@ -1,12 +1,12 @@
1
- import { F as FarmRouterNavigateOptions } from './router-qUVaoEN8.js';
2
- export { C as FarmRedirectSignal, D as FarmRedirectStatus, E as getFarmRedirectError, G as isFarmNotFoundError, H as isFarmRedirectError, I as notFound, J as permanentRedirect, K as redirect } from './client-plugins-BPfltM5m.js';
1
+ import { F as FarmRouterNavigateOptions } from './router-BUD_j2EL.js';
2
+ export { D as FarmRedirectSignal, E as FarmRedirectStatus, G as getFarmRedirectError, H as isFarmNotFoundError, I as isFarmRedirectError, J as notFound, K as permanentRedirect, N as redirect } from './client-plugins-CFBEfVPO.js';
3
3
  import 'react';
4
4
  import './router.js';
5
- import './spa-router-qapSboKz.js';
5
+ import './spa-router-Kytv4jSB.js';
6
6
  import './lifecycle-C2aLBOwu.js';
7
7
  import './types-C41ePjvP.js';
8
8
  import './island-CfGru1MO.js';
9
- import './render-plan-BPbwRbuN.js';
9
+ import './render-plan-CrqcBbnV.js';
10
10
  import './route-DFhZj6jN.js';
11
11
  import './endpoint-BgHn0lhl.js';
12
12
  import './cache.js';
@@ -6,17 +6,17 @@ var _chunkV56632LAcjs = require('./chunk-V56632LA.cjs');
6
6
  var _chunk3EIPOTZVcjs = require('./chunk-3EIPOTZV.cjs');
7
7
 
8
8
 
9
- var _chunkIQXGHGZFcjs = require('./chunk-IQXGHGZF.cjs');
9
+ var _chunkXB24LZWIcjs = require('./chunk-XB24LZWI.cjs');
10
10
 
11
11
 
12
12
 
13
13
 
14
- var _chunkC7425KDGcjs = require('./chunk-C7425KDG.cjs');
14
+ var _chunkXYL4HSVCcjs = require('./chunk-XYL4HSVC.cjs');
15
15
  require('./chunk-2KMIJDY6.cjs');
16
16
  require('./chunk-SHIWRBFI.cjs');
17
17
  require('./chunk-OYZXVBZP.cjs');
18
- require('./chunk-XN2MB4QZ.cjs');
19
- require('./chunk-JHXJBNLY.cjs');
18
+ require('./chunk-VQJYGZNX.cjs');
19
+ require('./chunk-SUCDVKUB.cjs');
20
20
  require('./chunk-LIFUPCXW.cjs');
21
21
  require('./chunk-JYT7AN37.cjs');
22
22
 
@@ -45,16 +45,16 @@ async function createNitroConfig(config, routeManager, apiRouteManager, serverRe
45
45
  await mkdir(serverDir, { recursive: true });
46
46
  await mkdir(_path2.default.join(serverDir, "api"), { recursive: true });
47
47
  await mkdir(_path2.default.join(serverDir, "routes"), { recursive: true });
48
- const farmWorkflows = await _chunkIQXGHGZFcjs.prepareFarmWorkflowsForNitro.call(void 0, {
48
+ const farmWorkflows = await _chunkXB24LZWIcjs.prepareFarmWorkflowsForNitro.call(void 0, {
49
49
  ...config,
50
50
  distDir
51
51
  });
52
- const farmCron = await _chunkC7425KDGcjs.prepareFarmCronForNitro.call(void 0, {
52
+ const farmCron = await _chunkXYL4HSVCcjs.prepareFarmCronForNitro.call(void 0, {
53
53
  ...config,
54
54
  distDir
55
55
  });
56
- const scheduledTasks = _chunkC7425KDGcjs.mergeScheduledTasks.call(void 0, farmWorkflows.scheduledTasks, farmCron.scheduledTasks);
57
- const cloudflareCronConfig = _chunkC7425KDGcjs.createFarmCronCloudflareConfig.call(void 0, farmCron.jobs);
56
+ const scheduledTasks = _chunkXYL4HSVCcjs.mergeScheduledTasks.call(void 0, farmWorkflows.scheduledTasks, farmCron.scheduledTasks);
57
+ const cloudflareCronConfig = _chunkXYL4HSVCcjs.createFarmCronCloudflareConfig.call(void 0, farmCron.jobs);
58
58
  const registryFile = _path2.default.join(serverDir, "farm-registry.ts");
59
59
  const routePaths = {};
60
60
  for (const [pattern, entry] of routeManager.getRoutes()) {
@@ -233,7 +233,7 @@ import type { H3Event } from 'h3';
233
233
  import { farmRegistry } from '../farm-registry';
234
234
  import React from 'react';
235
235
  import { renderToString } from 'react-dom/server';
236
- import { searchParamsToObject } from '@farm.js/core/internal/production-runtime';
236
+ import { createFarmSearchParams, searchParamsToObject } from '@farm.js/core/internal/production-runtime';
237
237
  import { createFarmLegacyRequest, renderFarmLegacyErrorHtml, renderFarmLegacyHtml } from '@farm.js/core/internal/production-runtime';
238
238
 
239
239
  export default defineEventHandler(async (event: H3Event) => {
@@ -405,7 +405,7 @@ export default defineEventHandler(async (event: H3Event) => {
405
405
  // Create page props
406
406
  const rawPageProps = {
407
407
  params,
408
- searchParams: Promise.resolve(searchParamsObject),
408
+ searchParams: createFarmSearchParams(searchParamsObject),
409
409
  path: pathname,
410
410
  };
411
411
  const pageProps = routeModule.__farmResolveRouteProps
@@ -424,7 +424,7 @@ export default defineEventHandler(async (event: H3Event) => {
424
424
  ...rawPageProps,
425
425
  params: parsedParams,
426
426
  search: parsedSearch,
427
- searchParams: Promise.resolve(parsedSearch),
427
+ searchParams: createFarmSearchParams(parsedSearch),
428
428
  };
429
429
  })();
430
430