@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
@@ -382,4 +382,5 @@ function throwIfAborted(signal) {
382
382
 
383
383
 
384
384
 
385
- exports.FARM_SERVER_FN_FAILURE_SYMBOL = FARM_SERVER_FN_FAILURE_SYMBOL; exports.ServerFnFailure = ServerFnFailure; exports.ServerActionError = ServerActionError; exports.isServerFnFailure = isServerFnFailure; exports.createServerFnTransportError = createServerFnTransportError; exports.DEFAULT_SERVER_ACTION_BODY_SIZE_LIMIT = DEFAULT_SERVER_ACTION_BODY_SIZE_LIMIT; exports.ServerActionRequestError = ServerActionRequestError; exports.resolveServerActionsConfig = resolveServerActionsConfig; exports.validateServerActionRequest = validateServerActionRequest; exports.prepareServerActionRequest = prepareServerActionRequest; exports.createServerActionRequestErrorResponse = createServerActionRequestErrorResponse; exports.sanitizeServerActionError = sanitizeServerActionError; exports.runWithServerActionRequest = runWithServerActionRequest; exports.getServerActionExecutionContext = getServerActionExecutionContext; exports.getServerActionSignal = getServerActionSignal; exports.getServerActionInvalidations = getServerActionInvalidations;
385
+
386
+ exports.FARM_SERVER_FN_FAILURE_SYMBOL = FARM_SERVER_FN_FAILURE_SYMBOL; exports.ServerFnFailure = ServerFnFailure; exports.ServerActionError = ServerActionError; exports.isServerFnFailure = isServerFnFailure; exports.serializeServerFnFailure = serializeServerFnFailure; exports.createServerFnTransportError = createServerFnTransportError; exports.DEFAULT_SERVER_ACTION_BODY_SIZE_LIMIT = DEFAULT_SERVER_ACTION_BODY_SIZE_LIMIT; exports.ServerActionRequestError = ServerActionRequestError; exports.resolveServerActionsConfig = resolveServerActionsConfig; exports.validateServerActionRequest = validateServerActionRequest; exports.prepareServerActionRequest = prepareServerActionRequest; exports.createServerActionRequestErrorResponse = createServerActionRequestErrorResponse; exports.sanitizeServerActionError = sanitizeServerActionError; exports.runWithServerActionRequest = runWithServerActionRequest; exports.getServerActionExecutionContext = getServerActionExecutionContext; exports.getServerActionSignal = getServerActionSignal; exports.getServerActionInvalidations = getServerActionInvalidations;
@@ -370,6 +370,7 @@ export {
370
370
  ServerFnFailure,
371
371
  ServerActionError,
372
372
  isServerFnFailure,
373
+ serializeServerFnFailure,
373
374
  createServerFnTransportError,
374
375
  DEFAULT_SERVER_ACTION_BODY_SIZE_LIMIT,
375
376
  ServerActionRequestError,
@@ -52,10 +52,11 @@ async function findProgrammaticRouteSourceFiles(srcRoot) {
52
52
  return [];
53
53
  }
54
54
  try {
55
- const glob = await import("fast-glob");
56
- return await glob.default("**/*.{ts,tsx,js,jsx}", {
55
+ const { glob } = await import("tinyglobby");
56
+ return await glob("**/*.{ts,tsx,js,jsx}", {
57
57
  cwd: srcRoot,
58
58
  absolute: true,
59
+ expandDirectories: false,
59
60
  ignore: [
60
61
  "**/*.d.ts",
61
62
  "**/node_modules/**",
@@ -0,0 +1,358 @@
1
+ // src/server-fn-transform.ts
2
+ var SERVER_FUNCTION_FACTORY_IMPORT_RE = /\bimport\s+(?:type\s+)?(?:[A-Za-z_$][\w$]*\s*,\s*)?(\{[^}]*\})\s+from\s*["']@farm.js\/core(?:\/(?:server-fn|server-query))?["']\s*;?/g;
3
+ var EXPORT_SERVER_FUNCTION_FACTORY_RE = /\bexport\s+(?:const|let|var)\s+([A-Za-z_$][\w$]*)\s*=\s*([A-Za-z_$][\w$]*)\s*(?:<[^<>]*(?:<[^<>]*>[^<>]*)*>)?\s*\(/g;
4
+ var EXPORT_DEFAULT_SERVER_FUNCTION_FACTORY_RE = /\bexport\s+default\s+([A-Za-z_$][\w$]*)\s*(?:<[^<>]*(?:<[^<>]*>[^<>]*)*>)?\s*\(/g;
5
+ var SERVER_FUNCTION_DECLARATION_RE = /(?<![.\w$])([A-Za-z_$][\w$]*)\s*=\s*([A-Za-z_$][\w$]*)\s*(?:<[^<>]*(?:<[^<>]*>[^<>]*)*>)?\s*\(/g;
6
+ var LOCAL_EXPORT_CLAUSE_RE = /\bexport\s*\{([^}]*)\}/g;
7
+ var EXPORT_DEFAULT_ALIAS_RE = /\bexport\s+default\s+([A-Za-z_$][\w$]*)\s*(?:;|(?=[\r\n])|$)/g;
8
+ var EXPORT_BINDING_ALIAS_RE = /\bexport\s+(?:const|let|var)\s+([A-Za-z_$][\w$]*)\s*=\s*([A-Za-z_$][\w$]*)\s*(?:;|(?=[,\r\n])|$)/g;
9
+ var MODULE_EXT_RE = /\.[cm]?[jt]sx?$/;
10
+ var DECLARATION_RE = /(^|\n)\s*["']([^"']+)["']\s*;?/g;
11
+ var FARM_SERVER_FN_BOUNDARY_QUERY = "?farm-server-fns";
12
+ function transformFarmServerFns(code, id, options = {}) {
13
+ const analysis = analyzeServerFnModule(code, id);
14
+ if (!analysis) return null;
15
+ const { replacements } = analysis;
16
+ const exports = replacements.map((replacement) => replacement.exportName);
17
+ if (hasModuleDirective(code, "use server")) {
18
+ return { code: applyReplacements(code, replacements, "wrapper"), exports };
19
+ }
20
+ const boundaryId = JSON.stringify(serverFnBoundaryId(id));
21
+ if (options.environment !== void 0 && options.environment !== "rsc") {
22
+ return {
23
+ code: `export { ${exports.join(", ")} } from ${boundaryId};
24
+ `,
25
+ exports
26
+ };
27
+ }
28
+ const imports = replacements.map(
29
+ (replacement) => replacement.exportName === "default" ? "default as $$farm_server_fn_boundary_default" : replacement.exportName
30
+ );
31
+ const reExports = replacements.map(
32
+ (replacement) => replacement.exportName === "default" ? "$$farm_server_fn_boundary_default as default" : replacement.exportName
33
+ );
34
+ const privateNames = replacements.map((replacement) => replacement.privateName);
35
+ return {
36
+ code: applyReplacements(code, replacements, "private") + `
37
+ import { ${imports.join(", ")} } from ${boundaryId};
38
+ export { ${[...reExports, ...privateNames].join(", ")} };
39
+ `,
40
+ exports
41
+ };
42
+ }
43
+ function createFarmServerFnBoundaryModule(code, id) {
44
+ if (hasModuleDirective(code, "use server")) return null;
45
+ const analysis = analyzeServerFnModule(code, id);
46
+ if (!analysis) return null;
47
+ const sourceId = JSON.stringify(id.split("?", 1)[0].replace(/\\/g, "/"));
48
+ const privateNames = analysis.replacements.map((replacement) => replacement.privateName);
49
+ let output = `"use server";
50
+ import { ${privateNames.join(", ")} } from ${sourceId};
51
+ `;
52
+ for (const replacement of analysis.replacements) {
53
+ const declaration = replacement.exportName === "default" ? "export default async function" : "export async function";
54
+ output += `${declaration} ${replacement.wrapperName}(input) {
55
+ return ${replacement.privateName}(input);
56
+ }
57
+ ${copyServerFunctionDescriptor(replacement.wrapperName, replacement.privateName, true)}
58
+ `;
59
+ }
60
+ return output;
61
+ }
62
+ function isFarmServerFnBoundaryId(id) {
63
+ return /[?&]farm-server-fns(?:&|$)/.test(id);
64
+ }
65
+ function serverFnBoundaryId(id) {
66
+ return `${id.split("?", 1)[0].replace(/\\/g, "/")}${FARM_SERVER_FN_BOUNDARY_QUERY}`;
67
+ }
68
+ function applyReplacements(code, replacements, mode) {
69
+ let output = code;
70
+ for (const replacement of [...replacements].sort((a, b) => b.start - a.start)) {
71
+ const declaration = `const ${replacement.privateName} = ${replacement.callExpression};
72
+ `;
73
+ const wrapper = mode === "private" ? "" : `${replacement.exportName === "default" ? "export default async function" : "export async function"} ${replacement.wrapperName}(input) {
74
+ return ${replacement.privateName}(input);
75
+ }
76
+ ${copyServerFunctionDescriptor(replacement.wrapperName, replacement.privateName, false)}`;
77
+ output = output.slice(0, replacement.start) + declaration + wrapper + output.slice(replacement.end);
78
+ }
79
+ return output;
80
+ }
81
+ function analyzeServerFnModule(code, id) {
82
+ if (!isTransformableModule(id) || !code.includes("createServerFn") && !code.includes("createServerQuery")) {
83
+ return null;
84
+ }
85
+ const factoryNames = findServerFunctionFactoryImportNames(code);
86
+ if (factoryNames.size === 0) return null;
87
+ const reExport = findServerFnReExport(code, factoryNames);
88
+ if (reExport) {
89
+ const factoryName = reExport.factory === "fn" ? "createServerFn" : "createServerQuery";
90
+ const escape = reExport.form === "clause" ? "with an export clause" : reExport.form === "default" ? "as the default export" : "through another exported binding";
91
+ const inlineForm = reExport.form === "default" ? `export default ${factoryName}(...)` : `export const ${reExport.exportName} = ${factoryName}(...)`;
92
+ throw new Error(
93
+ `Server function "${reExport.localName}" cannot be re-exported ${escape}. Export it inline instead: ${inlineForm}.`
94
+ );
95
+ }
96
+ const replacements = findServerFnExportReplacements(code, factoryNames);
97
+ if (replacements.length === 0) return null;
98
+ if (hasModuleDirective(code, "use client")) {
99
+ throw new Error(
100
+ "createServerFn and createServerQuery exports must live in a server module. Move them out of the 'use client' file."
101
+ );
102
+ }
103
+ return { replacements };
104
+ }
105
+ function isTransformableModule(id) {
106
+ const cleanId = id.split("?", 1)[0];
107
+ return MODULE_EXT_RE.test(cleanId) && !/\.d\.[cm]?ts$/.test(cleanId);
108
+ }
109
+ function findServerFunctionFactoryImportNames(code) {
110
+ const names = /* @__PURE__ */ new Map();
111
+ for (const match of code.matchAll(SERVER_FUNCTION_FACTORY_IMPORT_RE)) {
112
+ const importClause = match[1] ?? "";
113
+ const namedStart = importClause.indexOf("{");
114
+ const namedEnd = importClause.lastIndexOf("}");
115
+ if (namedStart === -1 || namedEnd === -1 || namedEnd <= namedStart) continue;
116
+ const namedImports = importClause.slice(namedStart + 1, namedEnd).split(",");
117
+ for (const specifier of namedImports) {
118
+ const normalized = specifier.trim().replace(/^type\s+/, "");
119
+ const specifierMatch = normalized.match(
120
+ /^(createServerFn|createServerQuery)(?:\s+as\s+([A-Za-z_$][\w$]*))?$/
121
+ );
122
+ if (specifierMatch) {
123
+ const factory = specifierMatch[1];
124
+ names.set(specifierMatch[2] ?? factory, factory === "createServerFn" ? "fn" : "query");
125
+ }
126
+ }
127
+ }
128
+ return names;
129
+ }
130
+ function findServerFnReExport(code, factoryNames) {
131
+ const scannable = stripCommentsAndStrings(code);
132
+ const declarations = /* @__PURE__ */ new Map();
133
+ for (const match of scannable.matchAll(SERVER_FUNCTION_DECLARATION_RE)) {
134
+ const localName = match[1];
135
+ const factoryName = match[2];
136
+ const factory = factoryName ? factoryNames.get(factoryName) : void 0;
137
+ if (localName && factory) declarations.set(localName, factory);
138
+ }
139
+ if (declarations.size === 0) return null;
140
+ for (const match of scannable.matchAll(LOCAL_EXPORT_CLAUSE_RE)) {
141
+ const clause = match[1] ?? "";
142
+ const clauseEnd = (match.index ?? 0) + match[0].length;
143
+ if (scannable.slice(clauseEnd).trimStart().startsWith("from")) continue;
144
+ for (const specifier of clause.split(",")) {
145
+ const parts = specifier.trim().split(/\s+as\s+/);
146
+ const localName = parts[0]?.trim();
147
+ if (!localName || !declarations.has(localName)) continue;
148
+ return {
149
+ localName,
150
+ exportName: parts[1]?.trim() || localName,
151
+ factory: declarations.get(localName),
152
+ form: "clause"
153
+ };
154
+ }
155
+ }
156
+ for (const match of scannable.matchAll(EXPORT_DEFAULT_ALIAS_RE)) {
157
+ const localName = match[1];
158
+ if (!localName || !declarations.has(localName)) continue;
159
+ return {
160
+ localName,
161
+ exportName: "default",
162
+ factory: declarations.get(localName),
163
+ form: "default"
164
+ };
165
+ }
166
+ for (const match of scannable.matchAll(EXPORT_BINDING_ALIAS_RE)) {
167
+ const exportName = match[1];
168
+ const localName = match[2];
169
+ if (!exportName || !localName || !declarations.has(localName)) continue;
170
+ return {
171
+ localName,
172
+ exportName,
173
+ factory: declarations.get(localName),
174
+ form: "binding"
175
+ };
176
+ }
177
+ return null;
178
+ }
179
+ function stripCommentsAndStrings(code) {
180
+ const output = code.split("");
181
+ let quote = null;
182
+ let lineComment = false;
183
+ let blockComment = false;
184
+ let escaped = false;
185
+ for (let index = 0; index < code.length; index++) {
186
+ const char = code[index];
187
+ const next = code[index + 1];
188
+ if (lineComment) {
189
+ if (char === "\n" || char === "\r") lineComment = false;
190
+ else output[index] = " ";
191
+ continue;
192
+ }
193
+ if (blockComment) {
194
+ if (char === "*" && next === "/") {
195
+ blockComment = false;
196
+ output[index] = " ";
197
+ output[index + 1] = " ";
198
+ index++;
199
+ } else if (char !== "\n") {
200
+ output[index] = " ";
201
+ }
202
+ continue;
203
+ }
204
+ if (quote) {
205
+ if (escaped) {
206
+ escaped = false;
207
+ output[index] = " ";
208
+ continue;
209
+ }
210
+ if (char === "\\") {
211
+ escaped = true;
212
+ output[index] = " ";
213
+ continue;
214
+ }
215
+ if (char === quote) {
216
+ quote = null;
217
+ continue;
218
+ }
219
+ if (char !== "\n") output[index] = " ";
220
+ continue;
221
+ }
222
+ if (char === "/" && next === "/") {
223
+ lineComment = true;
224
+ output[index] = " ";
225
+ continue;
226
+ }
227
+ if (char === "/" && next === "*") {
228
+ blockComment = true;
229
+ output[index] = " ";
230
+ continue;
231
+ }
232
+ if (char === "'" || char === '"' || char === "`") {
233
+ quote = char;
234
+ }
235
+ }
236
+ return output.join("");
237
+ }
238
+ function findServerFnExportReplacements(code, factoryNames) {
239
+ const replacements = [];
240
+ for (const match of code.matchAll(EXPORT_SERVER_FUNCTION_FACTORY_RE)) {
241
+ const exportName = match[1];
242
+ const calleeName = match[2];
243
+ const factory = calleeName ? factoryNames.get(calleeName) : void 0;
244
+ if (!exportName || !calleeName || !factory) continue;
245
+ const openParenIndex = (match.index ?? 0) + match[0].length - 1;
246
+ const callEnd = findMatchingParen(code, openParenIndex);
247
+ if (callEnd === -1) continue;
248
+ let declarationEnd = callEnd + 1;
249
+ while (/\s/.test(code[declarationEnd] ?? "")) declarationEnd++;
250
+ if (code[declarationEnd] === ";") declarationEnd++;
251
+ const calleeIndex = code.indexOf(calleeName, match.index);
252
+ replacements.push({
253
+ start: match.index ?? 0,
254
+ end: declarationEnd,
255
+ exportName,
256
+ privateName: `$$farm_server_${factory}_${exportName}`,
257
+ wrapperName: exportName,
258
+ callExpression: code.slice(calleeIndex, callEnd + 1)
259
+ });
260
+ }
261
+ for (const match of code.matchAll(EXPORT_DEFAULT_SERVER_FUNCTION_FACTORY_RE)) {
262
+ const calleeName = match[1];
263
+ const factory = calleeName ? factoryNames.get(calleeName) : void 0;
264
+ if (!calleeName || !factory) continue;
265
+ const openParenIndex = (match.index ?? 0) + match[0].length - 1;
266
+ const callEnd = findMatchingParen(code, openParenIndex);
267
+ if (callEnd === -1) continue;
268
+ let declarationEnd = callEnd + 1;
269
+ while (/\s/.test(code[declarationEnd] ?? "")) declarationEnd++;
270
+ if (code[declarationEnd] === ";") declarationEnd++;
271
+ const calleeIndex = code.indexOf(calleeName, match.index);
272
+ const privateName = `$$farm_server_${factory}_default`;
273
+ replacements.push({
274
+ start: match.index ?? 0,
275
+ end: declarationEnd,
276
+ exportName: "default",
277
+ privateName,
278
+ wrapperName: `${privateName}_export`,
279
+ callExpression: code.slice(calleeIndex, callEnd + 1)
280
+ });
281
+ }
282
+ return replacements;
283
+ }
284
+ function copyServerFunctionDescriptor(target, source, lazy) {
285
+ const key = 'Symbol.for("farm.server-function.descriptor")';
286
+ return lazy ? `Object.defineProperty(${target}, ${key}, { get: () => ${source}[${key}] });` : `Object.defineProperty(${target}, ${key}, { value: ${source}[${key}] });`;
287
+ }
288
+ function hasModuleDirective(code, directive) {
289
+ for (const match of code.matchAll(DECLARATION_RE)) {
290
+ const value = match[2];
291
+ if (value === directive) return true;
292
+ if (value !== "use strict" && value !== "use client" && value !== "use server") return false;
293
+ }
294
+ return false;
295
+ }
296
+ function findMatchingParen(code, openParenIndex) {
297
+ let depth = 0;
298
+ let quote = null;
299
+ let lineComment = false;
300
+ let blockComment = false;
301
+ let escaped = false;
302
+ for (let index = openParenIndex; index < code.length; index++) {
303
+ const char = code[index];
304
+ const next = code[index + 1];
305
+ if (lineComment) {
306
+ if (char === "\n" || char === "\r") lineComment = false;
307
+ continue;
308
+ }
309
+ if (blockComment) {
310
+ if (char === "*" && next === "/") {
311
+ blockComment = false;
312
+ index++;
313
+ }
314
+ continue;
315
+ }
316
+ if (quote) {
317
+ if (escaped) {
318
+ escaped = false;
319
+ continue;
320
+ }
321
+ if (char === "\\") {
322
+ escaped = true;
323
+ continue;
324
+ }
325
+ if (char === quote) {
326
+ quote = null;
327
+ }
328
+ continue;
329
+ }
330
+ if (char === "/" && next === "/") {
331
+ lineComment = true;
332
+ index++;
333
+ continue;
334
+ }
335
+ if (char === "/" && next === "*") {
336
+ blockComment = true;
337
+ index++;
338
+ continue;
339
+ }
340
+ if (char === "'" || char === '"' || char === "`") {
341
+ quote = char;
342
+ continue;
343
+ }
344
+ if (char === "(") depth++;
345
+ if (char === ")") {
346
+ depth--;
347
+ if (depth === 0) return index;
348
+ }
349
+ }
350
+ return -1;
351
+ }
352
+
353
+ export {
354
+ FARM_SERVER_FN_BOUNDARY_QUERY,
355
+ transformFarmServerFns,
356
+ createFarmServerFnBoundaryModule,
357
+ isFarmServerFnBoundaryId
358
+ };
@@ -16,7 +16,27 @@ function searchParamsToObject(searchParams) {
16
16
  });
17
17
  return output;
18
18
  }
19
+ var RESERVED_SEARCH_KEYS = /* @__PURE__ */ new Set([
20
+ "then",
21
+ "catch",
22
+ "finally",
23
+ "__proto__",
24
+ "constructor",
25
+ "prototype"
26
+ ]);
27
+ function createFarmSearchParams(search) {
28
+ const promise = Promise.resolve(search);
29
+ for (const key of Object.keys(search)) {
30
+ if (RESERVED_SEARCH_KEYS.has(key)) continue;
31
+ Object.defineProperty(promise, key, {
32
+ value: search[key],
33
+ enumerable: true
34
+ });
35
+ }
36
+ return promise;
37
+ }
19
38
 
20
39
  export {
21
- searchParamsToObject
40
+ searchParamsToObject,
41
+ createFarmSearchParams
22
42
  };
@@ -4,13 +4,13 @@
4
4
 
5
5
 
6
6
 
7
- var _chunkRWT2BTJTcjs = require('./chunk-RWT2BTJT.cjs');
7
+ var _chunk2IAPKPEBcjs = require('./chunk-2IAPKPEB.cjs');
8
8
 
9
9
 
10
10
  var _chunkMPU5DOXXcjs = require('./chunk-MPU5DOXX.cjs');
11
11
 
12
12
 
13
- var _chunk6QA2SXVHcjs = require('./chunk-6QA2SXVH.cjs');
13
+ var _chunkFK25QSVCcjs = require('./chunk-FK25QSVC.cjs');
14
14
 
15
15
 
16
16
 
@@ -32,7 +32,7 @@ function createServerQuery(options) {
32
32
  throw new TypeError("createServerQuery requires a key function");
33
33
  }
34
34
  const staleTime = normalizeServerQueryStaleTime(options.staleTime);
35
- const execute = _chunkRWT2BTJTcjs.createServerFn.call(void 0, {
35
+ const execute = _chunk2IAPKPEBcjs.createServerFn.call(void 0, {
36
36
  input: options.input,
37
37
  middleware: options.middleware,
38
38
  handler: async (context) => {
@@ -42,7 +42,7 @@ function createServerQuery(options) {
42
42
  const cacheKey = _chunkDXUXQP2Tcjs.createFarmCacheKey.call(void 0, ["route-data", routeKey]);
43
43
  const producer = async () => {
44
44
  const value = await options.handler(context);
45
- return _chunkRWT2BTJTcjs._parseServerFnSchema.call(void 0, options.output, value, "output", "createServerQuery");
45
+ return _chunk2IAPKPEBcjs._parseServerFnSchema.call(void 0, options.output, value, "output", "createServerQuery");
46
46
  };
47
47
  let data;
48
48
  let updatedAt;
@@ -67,7 +67,7 @@ function createServerQuery(options) {
67
67
  });
68
68
  const query = async (input) => {
69
69
  const result = await execute(input);
70
- return _chunk6QA2SXVHcjs.getServerActionExecutionContext.call(void 0, ) ? result : result.data;
70
+ return _chunkFK25QSVCcjs.getServerActionExecutionContext.call(void 0, ) ? result : result.data;
71
71
  };
72
72
  Object.defineProperties(query, {
73
73
  [FARM_SERVER_QUERY_SYMBOL]: {
@@ -87,10 +87,10 @@ function createServerQuery(options) {
87
87
  enumerable: false
88
88
  }
89
89
  });
90
- _chunkRWT2BTJTcjs._attachServerFunctionDescriptor.call(void 0,
90
+ _chunk2IAPKPEBcjs._attachServerFunctionDescriptor.call(void 0,
91
91
  query,
92
- _chunkRWT2BTJTcjs.createServerFunctionDescriptor.call(void 0, "query", options, async (value) => {
93
- const result = await _chunkRWT2BTJTcjs._runServerFunctionForCaller.call(void 0,
92
+ _chunk2IAPKPEBcjs.createServerFunctionDescriptor.call(void 0, "query", options, async (value) => {
93
+ const result = await _chunk2IAPKPEBcjs._runServerFunctionForCaller.call(void 0,
94
94
  execute,
95
95
  value
96
96
  );