@farm.js/core 0.1.0-beta.4 → 0.1.0-beta.6

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 (441) hide show
  1. package/dist/internal/build-runtime.cjs +1 -1
  2. package/dist/internal/build-runtime.cjs.map +1 -1
  3. package/dist/internal/build-runtime.mjs +5 -5
  4. package/dist/plugin.cjs.map +1 -1
  5. package/dist/plugin.mjs +4 -4
  6. package/dist/server-query-client.cjs +1 -1
  7. package/dist/server-query-client.cjs.map +1 -1
  8. package/dist/server-query-client.mjs +1 -1
  9. package/dist/server.cjs +1 -1
  10. package/dist/server.cjs.map +1 -1
  11. package/dist/server.mjs +4 -4
  12. package/dist/version.cjs +1 -1
  13. package/dist/version.cjs.map +1 -1
  14. package/dist/version.mjs +1 -1
  15. package/dist/vite.cjs +1 -1
  16. package/dist/vite.cjs.map +1 -1
  17. package/dist/vite.mjs +4 -4
  18. package/package.json +1 -1
  19. package/dist/after.cjs +0 -227
  20. package/dist/after.cjs.map +0 -1
  21. package/dist/after.d.mts +0 -25
  22. package/dist/after.d.ts +0 -25
  23. package/dist/after.mjs +0 -14
  24. package/dist/after.mjs.map +0 -1
  25. package/dist/agent-runtime.cjs +0 -2379
  26. package/dist/agent-runtime.cjs.map +0 -1
  27. package/dist/agent-runtime.d.mts +0 -94
  28. package/dist/agent-runtime.d.ts +0 -94
  29. package/dist/agent-runtime.mjs +0 -479
  30. package/dist/agent-runtime.mjs.map +0 -1
  31. package/dist/api/route-manager.d.mts +0 -66
  32. package/dist/api/route-manager.d.ts +0 -66
  33. package/dist/api/runtime.d.mts +0 -3
  34. package/dist/api/runtime.d.ts +0 -3
  35. package/dist/api.cjs +0 -4100
  36. package/dist/api.cjs.map +0 -1
  37. package/dist/api.d.mts +0 -48
  38. package/dist/api.d.ts +0 -48
  39. package/dist/api.mjs +0 -93
  40. package/dist/api.mjs.map +0 -1
  41. package/dist/app-BjN-da13.d.ts +0 -300
  42. package/dist/app-CakAr8Be.d.mts +0 -300
  43. package/dist/app-markdown.cjs +0 -220
  44. package/dist/app-markdown.cjs.map +0 -1
  45. package/dist/app-markdown.d.mts +0 -22
  46. package/dist/app-markdown.d.ts +0 -22
  47. package/dist/app-markdown.mjs +0 -26
  48. package/dist/app-markdown.mjs.map +0 -1
  49. package/dist/cache.cjs +0 -945
  50. package/dist/cache.cjs.map +0 -1
  51. package/dist/cache.d.mts +0 -192
  52. package/dist/cache.d.ts +0 -192
  53. package/dist/cache.mjs +0 -46
  54. package/dist/cache.mjs.map +0 -1
  55. package/dist/chunk-2CUKEMVR.mjs +0 -872
  56. package/dist/chunk-2CUKEMVR.mjs.map +0 -1
  57. package/dist/chunk-2ED5Q2GH.mjs +0 -422
  58. package/dist/chunk-2ED5Q2GH.mjs.map +0 -1
  59. package/dist/chunk-32W4QEJP.mjs +0 -158
  60. package/dist/chunk-32W4QEJP.mjs.map +0 -1
  61. package/dist/chunk-3U3ZUQAQ.mjs +0 -41
  62. package/dist/chunk-3U3ZUQAQ.mjs.map +0 -1
  63. package/dist/chunk-3XNTL3FQ.mjs +0 -452
  64. package/dist/chunk-3XNTL3FQ.mjs.map +0 -1
  65. package/dist/chunk-44ZCFSKE.mjs +0 -84
  66. package/dist/chunk-44ZCFSKE.mjs.map +0 -1
  67. package/dist/chunk-4S3ORGFA.mjs +0 -44
  68. package/dist/chunk-4S3ORGFA.mjs.map +0 -1
  69. package/dist/chunk-5BY76U2M.mjs +0 -1
  70. package/dist/chunk-5BY76U2M.mjs.map +0 -1
  71. package/dist/chunk-5ZGPRGWV.mjs +0 -136
  72. package/dist/chunk-5ZGPRGWV.mjs.map +0 -1
  73. package/dist/chunk-65A7QIKI.mjs +0 -142
  74. package/dist/chunk-65A7QIKI.mjs.map +0 -1
  75. package/dist/chunk-74YTBPTY.mjs +0 -450
  76. package/dist/chunk-74YTBPTY.mjs.map +0 -1
  77. package/dist/chunk-7HO6AEOP.mjs +0 -74
  78. package/dist/chunk-7HO6AEOP.mjs.map +0 -1
  79. package/dist/chunk-7MABZJIM.mjs +0 -29
  80. package/dist/chunk-7MABZJIM.mjs.map +0 -1
  81. package/dist/chunk-7ZY5AIJO.mjs +0 -161
  82. package/dist/chunk-7ZY5AIJO.mjs.map +0 -1
  83. package/dist/chunk-AJWRO5WE.mjs +0 -6241
  84. package/dist/chunk-AJWRO5WE.mjs.map +0 -1
  85. package/dist/chunk-ALCLXXTY.mjs +0 -187
  86. package/dist/chunk-ALCLXXTY.mjs.map +0 -1
  87. package/dist/chunk-AOBXKNS5.mjs +0 -7631
  88. package/dist/chunk-AOBXKNS5.mjs.map +0 -1
  89. package/dist/chunk-AZ7YUVNR.mjs +0 -65
  90. package/dist/chunk-AZ7YUVNR.mjs.map +0 -1
  91. package/dist/chunk-B232I2GP.mjs +0 -163
  92. package/dist/chunk-B232I2GP.mjs.map +0 -1
  93. package/dist/chunk-BHG3LVHH.mjs +0 -176
  94. package/dist/chunk-BHG3LVHH.mjs.map +0 -1
  95. package/dist/chunk-C2ROET2V.mjs +0 -718
  96. package/dist/chunk-C2ROET2V.mjs.map +0 -1
  97. package/dist/chunk-C3DLZMBU.mjs +0 -597
  98. package/dist/chunk-C3DLZMBU.mjs.map +0 -1
  99. package/dist/chunk-CGILA3WO.mjs +0 -14
  100. package/dist/chunk-CGILA3WO.mjs.map +0 -1
  101. package/dist/chunk-E2MPIBRE.mjs +0 -149
  102. package/dist/chunk-E2MPIBRE.mjs.map +0 -1
  103. package/dist/chunk-E6EPN5BT.mjs +0 -203
  104. package/dist/chunk-E6EPN5BT.mjs.map +0 -1
  105. package/dist/chunk-EJ7T4TPB.mjs +0 -622
  106. package/dist/chunk-EJ7T4TPB.mjs.map +0 -1
  107. package/dist/chunk-FQYDHKKU.mjs +0 -128
  108. package/dist/chunk-FQYDHKKU.mjs.map +0 -1
  109. package/dist/chunk-FRPWCMMG.mjs +0 -299
  110. package/dist/chunk-FRPWCMMG.mjs.map +0 -1
  111. package/dist/chunk-GN72QAIH.mjs +0 -146
  112. package/dist/chunk-GN72QAIH.mjs.map +0 -1
  113. package/dist/chunk-GQVGIUSN.mjs +0 -149
  114. package/dist/chunk-GQVGIUSN.mjs.map +0 -1
  115. package/dist/chunk-GS6K5OCM.mjs +0 -407
  116. package/dist/chunk-GS6K5OCM.mjs.map +0 -1
  117. package/dist/chunk-GXASWWJU.mjs +0 -364
  118. package/dist/chunk-GXASWWJU.mjs.map +0 -1
  119. package/dist/chunk-GY2STC2S.mjs +0 -180
  120. package/dist/chunk-GY2STC2S.mjs.map +0 -1
  121. package/dist/chunk-H2FA2SBS.mjs +0 -51
  122. package/dist/chunk-H2FA2SBS.mjs.map +0 -1
  123. package/dist/chunk-HNIQFZKB.mjs +0 -3550
  124. package/dist/chunk-HNIQFZKB.mjs.map +0 -1
  125. package/dist/chunk-ITN462YM.mjs +0 -98
  126. package/dist/chunk-ITN462YM.mjs.map +0 -1
  127. package/dist/chunk-J23HNLFY.mjs +0 -72
  128. package/dist/chunk-J23HNLFY.mjs.map +0 -1
  129. package/dist/chunk-J4FNJ5IU.mjs +0 -179
  130. package/dist/chunk-J4FNJ5IU.mjs.map +0 -1
  131. package/dist/chunk-JDEOUK5V.mjs +0 -427
  132. package/dist/chunk-JDEOUK5V.mjs.map +0 -1
  133. package/dist/chunk-JK25YEN6.mjs +0 -219
  134. package/dist/chunk-JK25YEN6.mjs.map +0 -1
  135. package/dist/chunk-K4667E2Q.mjs +0 -1916
  136. package/dist/chunk-K4667E2Q.mjs.map +0 -1
  137. package/dist/chunk-LGHEOHBU.mjs +0 -218
  138. package/dist/chunk-LGHEOHBU.mjs.map +0 -1
  139. package/dist/chunk-LLC7BNXW.mjs +0 -275
  140. package/dist/chunk-LLC7BNXW.mjs.map +0 -1
  141. package/dist/chunk-LM2YNO4U.mjs +0 -24
  142. package/dist/chunk-LM2YNO4U.mjs.map +0 -1
  143. package/dist/chunk-MIUW47JX.mjs +0 -639
  144. package/dist/chunk-MIUW47JX.mjs.map +0 -1
  145. package/dist/chunk-NM3CRAAL.mjs +0 -467
  146. package/dist/chunk-NM3CRAAL.mjs.map +0 -1
  147. package/dist/chunk-NNLCAVB6.mjs +0 -391
  148. package/dist/chunk-NNLCAVB6.mjs.map +0 -1
  149. package/dist/chunk-P7QDS5AT.mjs +0 -191
  150. package/dist/chunk-P7QDS5AT.mjs.map +0 -1
  151. package/dist/chunk-PFE6GMNE.mjs +0 -603
  152. package/dist/chunk-PFE6GMNE.mjs.map +0 -1
  153. package/dist/chunk-QGOHVJ6J.mjs +0 -63
  154. package/dist/chunk-QGOHVJ6J.mjs.map +0 -1
  155. package/dist/chunk-QGQX7SFC.mjs +0 -180
  156. package/dist/chunk-QGQX7SFC.mjs.map +0 -1
  157. package/dist/chunk-QKVUNGAH.mjs +0 -39
  158. package/dist/chunk-QKVUNGAH.mjs.map +0 -1
  159. package/dist/chunk-QM746KUO.mjs +0 -56
  160. package/dist/chunk-QM746KUO.mjs.map +0 -1
  161. package/dist/chunk-RBRLLZL5.mjs +0 -81
  162. package/dist/chunk-RBRLLZL5.mjs.map +0 -1
  163. package/dist/chunk-RHIFZZUI.mjs +0 -69
  164. package/dist/chunk-RHIFZZUI.mjs.map +0 -1
  165. package/dist/chunk-RSKVYESE.mjs +0 -187
  166. package/dist/chunk-RSKVYESE.mjs.map +0 -1
  167. package/dist/chunk-SADGIRS2.mjs +0 -211
  168. package/dist/chunk-SADGIRS2.mjs.map +0 -1
  169. package/dist/chunk-SCFX4UTD.mjs +0 -28
  170. package/dist/chunk-SCFX4UTD.mjs.map +0 -1
  171. package/dist/chunk-SL6HTIOK.mjs +0 -66
  172. package/dist/chunk-SL6HTIOK.mjs.map +0 -1
  173. package/dist/chunk-SPBBQLXI.mjs +0 -207
  174. package/dist/chunk-SPBBQLXI.mjs.map +0 -1
  175. package/dist/chunk-T4QJQK76.mjs +0 -459
  176. package/dist/chunk-T4QJQK76.mjs.map +0 -1
  177. package/dist/chunk-TQAEEJB4.mjs +0 -157
  178. package/dist/chunk-TQAEEJB4.mjs.map +0 -1
  179. package/dist/chunk-UB5UOSHB.mjs +0 -458
  180. package/dist/chunk-UB5UOSHB.mjs.map +0 -1
  181. package/dist/chunk-USWZZUEH.mjs +0 -25
  182. package/dist/chunk-USWZZUEH.mjs.map +0 -1
  183. package/dist/chunk-UVCIEUJC.mjs +0 -16
  184. package/dist/chunk-UVCIEUJC.mjs.map +0 -1
  185. package/dist/chunk-UXUAWNO5.mjs +0 -396
  186. package/dist/chunk-UXUAWNO5.mjs.map +0 -1
  187. package/dist/chunk-V3XURYJO.mjs +0 -756
  188. package/dist/chunk-V3XURYJO.mjs.map +0 -1
  189. package/dist/chunk-V6WE6JSZ.mjs +0 -352
  190. package/dist/chunk-V6WE6JSZ.mjs.map +0 -1
  191. package/dist/chunk-V7RBCSDJ.mjs +0 -170
  192. package/dist/chunk-V7RBCSDJ.mjs.map +0 -1
  193. package/dist/chunk-VCANOYFI.mjs +0 -588
  194. package/dist/chunk-VCANOYFI.mjs.map +0 -1
  195. package/dist/chunk-VVKWFZAH.mjs +0 -753
  196. package/dist/chunk-VVKWFZAH.mjs.map +0 -1
  197. package/dist/chunk-VY2UYN5R.mjs +0 -224
  198. package/dist/chunk-VY2UYN5R.mjs.map +0 -1
  199. package/dist/chunk-W2CRQFF6.mjs +0 -1352
  200. package/dist/chunk-W2CRQFF6.mjs.map +0 -1
  201. package/dist/chunk-W4UIVMVI.mjs +0 -10
  202. package/dist/chunk-W4UIVMVI.mjs.map +0 -1
  203. package/dist/chunk-WZ5QFROO.mjs +0 -23
  204. package/dist/chunk-WZ5QFROO.mjs.map +0 -1
  205. package/dist/chunk-XIVV5IWN.mjs +0 -541
  206. package/dist/chunk-XIVV5IWN.mjs.map +0 -1
  207. package/dist/chunk-YW7OBE6Q.mjs +0 -119
  208. package/dist/chunk-YW7OBE6Q.mjs.map +0 -1
  209. package/dist/chunk-Z5CQMP54.mjs +0 -365
  210. package/dist/chunk-Z5CQMP54.mjs.map +0 -1
  211. package/dist/chunk-ZBE6MLHL.mjs +0 -230
  212. package/dist/chunk-ZBE6MLHL.mjs.map +0 -1
  213. package/dist/chunk-ZZ57EH5Z.mjs +0 -173
  214. package/dist/chunk-ZZ57EH5Z.mjs.map +0 -1
  215. package/dist/client-BT1mFQas.d.mts +0 -447
  216. package/dist/client-Nn0q4eO4.d.ts +0 -447
  217. package/dist/client-cache-CIlyBlmx.d.ts +0 -6
  218. package/dist/client-cache-D-EZ7XVW.d.mts +0 -6
  219. package/dist/client-plugins-Cw4qUGsw.d.ts +0 -1855
  220. package/dist/client-plugins-DQQ1adXM.d.mts +0 -1855
  221. package/dist/client-plugins.cjs +0 -415
  222. package/dist/client-plugins.cjs.map +0 -1
  223. package/dist/client-plugins.d.mts +0 -22
  224. package/dist/client-plugins.d.ts +0 -22
  225. package/dist/client-plugins.mjs +0 -10
  226. package/dist/client-plugins.mjs.map +0 -1
  227. package/dist/client.cjs +0 -5402
  228. package/dist/client.cjs.map +0 -1
  229. package/dist/client.d.mts +0 -447
  230. package/dist/client.d.ts +0 -447
  231. package/dist/client.mjs +0 -110
  232. package/dist/client.mjs.map +0 -1
  233. package/dist/config.cjs +0 -38
  234. package/dist/config.cjs.map +0 -1
  235. package/dist/config.d.mts +0 -29
  236. package/dist/config.d.ts +0 -29
  237. package/dist/config.mjs +0 -10
  238. package/dist/config.mjs.map +0 -1
  239. package/dist/cron.cjs +0 -406
  240. package/dist/cron.cjs.map +0 -1
  241. package/dist/cron.d.mts +0 -78
  242. package/dist/cron.d.ts +0 -78
  243. package/dist/cron.mjs +0 -30
  244. package/dist/cron.mjs.map +0 -1
  245. package/dist/deferred.cjs +0 -438
  246. package/dist/deferred.cjs.map +0 -1
  247. package/dist/deferred.d.mts +0 -42
  248. package/dist/deferred.d.ts +0 -42
  249. package/dist/deferred.mjs +0 -28
  250. package/dist/deferred.mjs.map +0 -1
  251. package/dist/deployment.cjs +0 -199
  252. package/dist/deployment.cjs.map +0 -1
  253. package/dist/deployment.d.mts +0 -34
  254. package/dist/deployment.d.ts +0 -34
  255. package/dist/deployment.mjs +0 -38
  256. package/dist/deployment.mjs.map +0 -1
  257. package/dist/devtools-LVC3VB5P.mjs +0 -370
  258. package/dist/devtools-LVC3VB5P.mjs.map +0 -1
  259. package/dist/devtools-client-3XRTBND5.mjs +0 -216
  260. package/dist/devtools-client-3XRTBND5.mjs.map +0 -1
  261. package/dist/devtools-ui-NJKFORTG.mjs +0 -1349
  262. package/dist/devtools-ui-NJKFORTG.mjs.map +0 -1
  263. package/dist/docs.cjs +0 -5553
  264. package/dist/docs.cjs.map +0 -1
  265. package/dist/docs.d.mts +0 -69
  266. package/dist/docs.d.ts +0 -69
  267. package/dist/docs.mjs +0 -46
  268. package/dist/docs.mjs.map +0 -1
  269. package/dist/env-types.cjs +0 -223
  270. package/dist/env-types.cjs.map +0 -1
  271. package/dist/env-types.d.mts +0 -11
  272. package/dist/env-types.d.ts +0 -11
  273. package/dist/env-types.mjs +0 -9
  274. package/dist/env-types.mjs.map +0 -1
  275. package/dist/env.cjs +0 -215
  276. package/dist/env.cjs.map +0 -1
  277. package/dist/env.d.mts +0 -45
  278. package/dist/env.d.ts +0 -45
  279. package/dist/env.mjs +0 -22
  280. package/dist/env.mjs.map +0 -1
  281. package/dist/environment/vite.d.mts +0 -22
  282. package/dist/environment/vite.d.ts +0 -22
  283. package/dist/environment.cjs +0 -96
  284. package/dist/environment.cjs.map +0 -1
  285. package/dist/environment.d.mts +0 -18
  286. package/dist/environment.d.ts +0 -18
  287. package/dist/environment.mjs +0 -14
  288. package/dist/environment.mjs.map +0 -1
  289. package/dist/headers.cjs +0 -126
  290. package/dist/headers.cjs.map +0 -1
  291. package/dist/headers.d.mts +0 -22
  292. package/dist/headers.d.ts +0 -22
  293. package/dist/headers.mjs +0 -12
  294. package/dist/headers.mjs.map +0 -1
  295. package/dist/i18n/client.d.mts +0 -32
  296. package/dist/i18n/client.d.ts +0 -32
  297. package/dist/i18n/index.d.mts +0 -20
  298. package/dist/i18n/index.d.ts +0 -20
  299. package/dist/i18n/server.d.mts +0 -30
  300. package/dist/i18n/server.d.ts +0 -30
  301. package/dist/image/server.d.mts +0 -37
  302. package/dist/image/server.d.ts +0 -37
  303. package/dist/image/sharp.d.mts +0 -7
  304. package/dist/image/sharp.d.ts +0 -7
  305. package/dist/image-config-Duob7wER.d.mts +0 -50
  306. package/dist/image-config-Duob7wER.d.ts +0 -50
  307. package/dist/image.cjs +0 -209
  308. package/dist/image.cjs.map +0 -1
  309. package/dist/image.d.mts +0 -39
  310. package/dist/image.d.ts +0 -39
  311. package/dist/image.mjs +0 -165
  312. package/dist/image.mjs.map +0 -1
  313. package/dist/index.cjs +0 -41822
  314. package/dist/index.cjs.map +0 -1
  315. package/dist/index.d.mts +0 -452
  316. package/dist/index.d.ts +0 -452
  317. package/dist/index.mjs +0 -973
  318. package/dist/index.mjs.map +0 -1
  319. package/dist/integration-api-CHT2OKAf.d.mts +0 -93
  320. package/dist/integration-api-CHT2OKAf.d.ts +0 -93
  321. package/dist/integration-orm-GQLGU66X.mjs +0 -13
  322. package/dist/integration-orm-GQLGU66X.mjs.map +0 -1
  323. package/dist/integrations.cjs +0 -2820
  324. package/dist/integrations.cjs.map +0 -1
  325. package/dist/integrations.d.mts +0 -22
  326. package/dist/integrations.d.ts +0 -22
  327. package/dist/integrations.mjs +0 -51
  328. package/dist/integrations.mjs.map +0 -1
  329. package/dist/internal/build-runtime.d.mts +0 -39
  330. package/dist/internal/build-runtime.d.ts +0 -39
  331. package/dist/internal/client-runtime.d.mts +0 -2
  332. package/dist/internal/client-runtime.d.ts +0 -2
  333. package/dist/internal/config-runtime.d.mts +0 -39
  334. package/dist/internal/config-runtime.d.ts +0 -39
  335. package/dist/internal/production-node-env.d.mts +0 -12
  336. package/dist/internal/production-node-env.d.ts +0 -12
  337. package/dist/internal/production-runtime.d.mts +0 -39
  338. package/dist/internal/production-runtime.d.ts +0 -39
  339. package/dist/layers-VWVDTPUZ.mjs +0 -16
  340. package/dist/layers-VWVDTPUZ.mjs.map +0 -1
  341. package/dist/manager-THKFTOFE.mjs +0 -10
  342. package/dist/manager-THKFTOFE.mjs.map +0 -1
  343. package/dist/markdown.cjs +0 -299
  344. package/dist/markdown.cjs.map +0 -1
  345. package/dist/markdown.d.mts +0 -43
  346. package/dist/markdown.d.ts +0 -43
  347. package/dist/markdown.mjs +0 -14
  348. package/dist/markdown.mjs.map +0 -1
  349. package/dist/metadata-BAPg_Nmo.d.ts +0 -22
  350. package/dist/metadata-_6i9oFG3.d.mts +0 -22
  351. package/dist/middleware.cjs +0 -2148
  352. package/dist/middleware.cjs.map +0 -1
  353. package/dist/middleware.d.mts +0 -164
  354. package/dist/middleware.d.ts +0 -164
  355. package/dist/middleware.mjs +0 -49
  356. package/dist/middleware.mjs.map +0 -1
  357. package/dist/navigation-errors-Dvwpzaer.d.mts +0 -13
  358. package/dist/navigation-errors-Dvwpzaer.d.ts +0 -13
  359. package/dist/navigation.cjs +0 -1329
  360. package/dist/navigation.cjs.map +0 -1
  361. package/dist/navigation.d.mts +0 -14
  362. package/dist/navigation.d.ts +0 -14
  363. package/dist/navigation.mjs +0 -33
  364. package/dist/navigation.mjs.map +0 -1
  365. package/dist/nitro-QO5LV6QK.mjs +0 -689
  366. package/dist/nitro-QO5LV6QK.mjs.map +0 -1
  367. package/dist/observability.cjs +0 -186
  368. package/dist/observability.cjs.map +0 -1
  369. package/dist/observability.d.mts +0 -335
  370. package/dist/observability.d.ts +0 -335
  371. package/dist/observability.mjs +0 -16
  372. package/dist/observability.mjs.map +0 -1
  373. package/dist/params-BALtrRim.d.ts +0 -15
  374. package/dist/params-ry-lxqmy.d.mts +0 -15
  375. package/dist/plugin-BJDf43dc.d.mts +0 -165
  376. package/dist/plugin-BJDf43dc.d.ts +0 -165
  377. package/dist/plugin.cjs +0 -23225
  378. package/dist/plugin.d.mts +0 -22
  379. package/dist/plugin.d.ts +0 -22
  380. package/dist/production-runtime-BoJDc5mc.d.ts +0 -79
  381. package/dist/production-runtime-C_B79w2P.d.mts +0 -28
  382. package/dist/production-runtime-DDEM1D2q.d.ts +0 -28
  383. package/dist/production-runtime-DPfgMV9Y.d.mts +0 -79
  384. package/dist/query/client.d.mts +0 -61
  385. package/dist/query/client.d.ts +0 -61
  386. package/dist/query/index.d.mts +0 -90
  387. package/dist/query/index.d.ts +0 -90
  388. package/dist/query/parsers.d.mts +0 -25
  389. package/dist/query/parsers.d.ts +0 -25
  390. package/dist/query/server.d.mts +0 -55
  391. package/dist/query/server.d.ts +0 -55
  392. package/dist/request-BrFBuc8G.d.mts +0 -6
  393. package/dist/request-BslSZIRz.d.ts +0 -6
  394. package/dist/request.d.mts +0 -2
  395. package/dist/request.d.ts +0 -2
  396. package/dist/resolver-C6iecsDV.d.ts +0 -14
  397. package/dist/resolver-DlOPpjkB.d.mts +0 -14
  398. package/dist/route-runtime-DoOHzCAD.d.mts +0 -38
  399. package/dist/route-runtime-DoOHzCAD.d.ts +0 -38
  400. package/dist/router.d.mts +0 -36
  401. package/dist/router.d.ts +0 -36
  402. package/dist/routes.d.mts +0 -224
  403. package/dist/routes.d.ts +0 -224
  404. package/dist/runtime-9nQjVM7X.d.mts +0 -206
  405. package/dist/runtime-B6GvwDS1.d.ts +0 -27
  406. package/dist/runtime-DeAAZ6gO.d.mts +0 -27
  407. package/dist/runtime-DgeS2skB.d.ts +0 -206
  408. package/dist/server-action-security.d.mts +0 -43
  409. package/dist/server-action-security.d.ts +0 -43
  410. package/dist/server-fn-client.d.mts +0 -32
  411. package/dist/server-fn-client.d.ts +0 -32
  412. package/dist/server-fn.d.mts +0 -93
  413. package/dist/server-fn.d.ts +0 -93
  414. package/dist/server-plugins.d.mts +0 -55
  415. package/dist/server-plugins.d.ts +0 -55
  416. package/dist/server-query-client.d.mts +0 -50
  417. package/dist/server-query-client.d.ts +0 -50
  418. package/dist/server-query.d.mts +0 -36
  419. package/dist/server-query.d.ts +0 -36
  420. package/dist/server.d.mts +0 -48
  421. package/dist/server.d.ts +0 -48
  422. package/dist/storage.d.mts +0 -52
  423. package/dist/storage.d.ts +0 -52
  424. package/dist/testing.d.mts +0 -101
  425. package/dist/testing.d.ts +0 -101
  426. package/dist/transport-BmbGTXA5.d.mts +0 -49
  427. package/dist/transport-BmbGTXA5.d.ts +0 -49
  428. package/dist/types-BH1lhg5G.d.mts +0 -81
  429. package/dist/types-BH1lhg5G.d.ts +0 -81
  430. package/dist/types-C9N-nk5R.d.mts +0 -53
  431. package/dist/types-C9N-nk5R.d.ts +0 -53
  432. package/dist/types-D1A6-XvH.d.mts +0 -73
  433. package/dist/types-D1A6-XvH.d.ts +0 -73
  434. package/dist/utils-CHXlMDkg.d.mts +0 -23
  435. package/dist/utils-Drsyz1Vj.d.ts +0 -23
  436. package/dist/version.d.mts +0 -3
  437. package/dist/version.d.ts +0 -3
  438. package/dist/vite.d.mts +0 -22
  439. package/dist/vite.d.ts +0 -22
  440. package/dist/workflows.d.mts +0 -110
  441. package/dist/workflows.d.ts +0 -110
@@ -1,689 +0,0 @@
1
- import {
2
- routeRulesToNitroRouteRules
3
- } from "./chunk-YW7OBE6Q.mjs";
4
- import {
5
- prepareFarmWorkflowsForNitro
6
- } from "./chunk-XIVV5IWN.mjs";
7
- import {
8
- createFarmCronCloudflareConfig,
9
- mergeScheduledTasks,
10
- prepareFarmCronForNitro
11
- } from "./chunk-GXASWWJU.mjs";
12
- import "./chunk-GQVGIUSN.mjs";
13
- import {
14
- __name
15
- } from "./chunk-CGILA3WO.mjs";
16
-
17
- // src/nitro/index.ts
18
- import path from "path";
19
- async function createNitroConfig(config, routeManager, apiRouteManager, serverRenderer, preset = "node-server") {
20
- const root = config.root || process.cwd();
21
- const srcDir = config.srcDir || "src";
22
- const distDir = ".farm";
23
- const nitroBuildDir = path.join(root, distDir, ".nitro");
24
- const outputDir = path.join(root, distDir, ".output");
25
- const serverDir = path.join(nitroBuildDir, "server");
26
- const { mkdir, writeFile } = await import("fs/promises");
27
- await mkdir(serverDir, { recursive: true });
28
- await mkdir(path.join(serverDir, "api"), { recursive: true });
29
- await mkdir(path.join(serverDir, "routes"), { recursive: true });
30
- const farmWorkflows = await prepareFarmWorkflowsForNitro({
31
- ...config,
32
- distDir
33
- });
34
- const farmCron = await prepareFarmCronForNitro({
35
- ...config,
36
- distDir
37
- });
38
- const scheduledTasks = mergeScheduledTasks(farmWorkflows.scheduledTasks, farmCron.scheduledTasks);
39
- const cloudflareCronConfig = createFarmCronCloudflareConfig(farmCron.jobs);
40
- const registryFile = path.join(serverDir, "farm-registry.ts");
41
- const routePaths = {};
42
- for (const [pattern, entry] of routeManager.getRoutes()) {
43
- const bundledPath = entry.modulePath.replace(/.*\/src\/app\//, "").replace(/\.(tsx?|jsx?)$/, ".js");
44
- routePaths[pattern] = bundledPath;
45
- }
46
- const clientManifestPath = path.join(root, distDir, "client", "farm-client-manifest.json");
47
- await writeFile(
48
- registryFile,
49
- `
50
- // Auto-generated by Farm.js
51
- // Runtime registry for route managers and renderers
52
- export const farmRegistry: {
53
- apiRouteManager?: any;
54
- routeManager?: any;
55
- serverRenderer?: any;
56
- env?: any;
57
- deploymentId?: string;
58
- basePath?: string;
59
- clientManifest?: any;
60
- routePaths?: Record<string, string>;
61
- } = {
62
- env: ${JSON.stringify(config.env || { server: {}, public: {} }, null, 2)},
63
- deploymentId: ${JSON.stringify(config.deploymentId)},
64
- basePath: ${JSON.stringify(config.basePath)},
65
- routePaths: ${JSON.stringify(routePaths, null, 2)},
66
- };
67
- `,
68
- "utf-8"
69
- );
70
- const apiHandlerFile = path.join(serverDir, "api", "[...].ts");
71
- await mkdir(path.dirname(apiHandlerFile), { recursive: true });
72
- await writeFile(
73
- apiHandlerFile,
74
- `
75
- // Auto-generated by Farm.js
76
- // This handler intercepts all /api/* requests
77
- import { defineEventHandler, getHeaders, readBody, sendWebResponse, setResponseStatus, getRequestURL } from 'h3';
78
- import type { H3Event } from 'h3';
79
- import { farmRegistry } from '../farm-registry';
80
-
81
- export default defineEventHandler(async (event: H3Event) => {
82
- // Get URL using H3's abstraction (works in all environments)
83
- const url = getRequestURL(event);
84
- const urlPath = url.pathname;
85
-
86
- // Only handle API routes - for Vercel, Nitro routes /api/* to this handler
87
- // According to https://nitro.build/deploy/providers/vercel
88
- // This handler should process all /api/* routes
89
- if (!urlPath.startsWith('/api/')) {
90
- // Return undefined to let Nitro's routing system handle non-API routes
91
- return undefined;
92
- }
93
-
94
- // Ensure registry is populated (lazy initialization)
95
- // In serverless environments, the registry needs to be initialized at runtime
96
- if (!farmRegistry.apiRouteManager) {
97
- // Try to initialize from global if available (set during build)
98
- if (typeof globalThis !== 'undefined' && (globalThis as any).__FARM_REGISTRY__) {
99
- Object.assign(farmRegistry, (globalThis as any).__FARM_REGISTRY__);
100
- }
101
- // If still not available, try the init function (if it exists)
102
- if (!farmRegistry.apiRouteManager && (farmRegistry as any).__INIT__) {
103
- (farmRegistry as any).__INIT__();
104
- }
105
- }
106
-
107
- const apiRouteManager = farmRegistry.apiRouteManager;
108
- if (!apiRouteManager) {
109
- console.error('API route manager not initialized. Registry keys:', Object.keys(farmRegistry));
110
- setResponseStatus(event, 500);
111
- return { error: 'API route manager not initialized. Please check server logs.' };
112
- }
113
-
114
- const startTime = Date.now();
115
- const method = event.method || 'GET';
116
- const host = url.host || 'localhost';
117
-
118
- // Log API request (only in development)
119
- if (process.env.NODE_ENV === 'development' || !process.env.NODE_ENV) {
120
- try {
121
- const pc = await import('picocolors');
122
- const log = [
123
- pc.default.dim('[') + pc.default.bold(pc.default.blue('FARM')) + pc.default.dim(']'),
124
- pc.default.dim('[') + pc.default.bold(pc.default.white(method.padEnd(3))) + pc.default.dim(']'),
125
- pc.default.cyan('[API]'),
126
- pc.default.gray(\`\${url.protocol}//\${host}\${urlPath}\`),
127
- ].join(' ');
128
- console.log(log);
129
- } catch {
130
- // picocolors not available, use simple log
131
- console.log(\`[FARM] [\${method}] [API] \${urlPath}\`);
132
- }
133
- }
134
-
135
- try {
136
- // Convert H3 event to Web Request using H3 abstractions
137
- const protocol = url.protocol.replace(':', '') || 'http';
138
- const host = url.host || 'localhost';
139
- const fullUrl = url.toString();
140
-
141
- const headers = new Headers();
142
- const h3Headers = getHeaders(event);
143
-
144
- for (const [key, value] of Object.entries(h3Headers)) {
145
- if (value) {
146
- headers.set(key, Array.isArray(value) ? value.join(', ') : String(value));
147
- }
148
- }
149
-
150
- // Get body
151
- let body: string | undefined;
152
- const method = event.method || 'GET';
153
- if (method !== 'GET' && method !== 'HEAD') {
154
- const bodyData = await readBody(event).catch(() => undefined);
155
- if (bodyData) {
156
- body = typeof bodyData === 'string' ? bodyData : JSON.stringify(bodyData);
157
- }
158
- }
159
-
160
- // Create Web Request
161
- const request = new Request(fullUrl, {
162
- method,
163
- headers,
164
- body: body || undefined,
165
- });
166
-
167
- // Call better-call handler
168
- const betterCallHandler = apiRouteManager.getHandler();
169
- if (!betterCallHandler) {
170
- setResponseStatus(event, 404);
171
- return { error: 'API handler not found' };
172
- }
173
-
174
- const response = await betterCallHandler(request);
175
-
176
- // Log API response (only in development)
177
- if (process.env.NODE_ENV === 'development' || !process.env.NODE_ENV) {
178
- const duration = Date.now() - startTime;
179
- const status = response.status;
180
- try {
181
- const pc = await import('picocolors');
182
- let statusColor = pc.default.green;
183
- if (status >= 500) statusColor = pc.default.red;
184
- else if (status >= 400) statusColor = pc.default.yellow;
185
- else if (status >= 300) statusColor = pc.default.cyan;
186
-
187
- const log = [
188
- pc.default.dim('[') + pc.default.bold(pc.default.blue('FARM')) + pc.default.dim(']'),
189
- status >= 400 ? pc.default.red('\u2717') : pc.default.green('\u2713'),
190
- pc.default.cyan('[API]'),
191
- pc.default.gray(urlPath),
192
- pc.default.dim('-'),
193
- statusColor(status.toString()),
194
- pc.default.dim(\`(\${duration}ms)\`),
195
- ].join(' ');
196
- console.log(log);
197
- } catch {
198
- // picocolors not available, use simple log
199
- console.log(\`[FARM] [\${method}] [API] \${urlPath} - \${response.status} (\${duration}ms)\`);
200
- }
201
- }
202
-
203
- return sendWebResponse(response);
204
- } catch (error: any) {
205
- console.error('API handler error:', error);
206
- setResponseStatus(event, 500);
207
- return {
208
- error: error.message || 'Internal Server Error',
209
- };
210
- }
211
- });
212
- `,
213
- "utf-8"
214
- );
215
- const ssrHandlerFile = path.join(serverDir, "routes", "[...].ts");
216
- await mkdir(path.dirname(ssrHandlerFile), { recursive: true });
217
- await writeFile(
218
- ssrHandlerFile,
219
- `
220
- // Auto-generated by Farm.js
221
- // This handler handles all page routes (SSR)
222
- import { defineEventHandler, setResponseStatus, getRequestURL, setHeader, getHeaders, readBody, sendWebResponse, setCookie } from 'h3';
223
- import type { H3Event } from 'h3';
224
- import { farmRegistry } from '../farm-registry';
225
- import React from 'react';
226
- import { renderToString } from 'react-dom/server';
227
-
228
- export default defineEventHandler(async (event: H3Event) => {
229
- try {
230
- // Ensure registry is populated (lazy initialization)
231
- // In serverless environments, the registry needs to be initialized at runtime
232
- if (!farmRegistry.routeManager || !farmRegistry.serverRenderer) {
233
- // Try to initialize from global if available (set during build)
234
- if (typeof globalThis !== 'undefined' && (globalThis as any).__FARM_REGISTRY__) {
235
- Object.assign(farmRegistry, (globalThis as any).__FARM_REGISTRY__);
236
- }
237
- // If still not available, try the init function (if it exists)
238
- if ((!farmRegistry.routeManager || !farmRegistry.serverRenderer) && (farmRegistry as any).__INIT__) {
239
- (farmRegistry as any).__INIT__();
240
- }
241
- }
242
-
243
- const routeManager = farmRegistry.routeManager;
244
- const serverRenderer = farmRegistry.serverRenderer;
245
-
246
- if (!routeManager || !serverRenderer) {
247
- console.error('Route manager or renderer not initialized. Registry keys:', Object.keys(farmRegistry));
248
- setResponseStatus(event, 500);
249
- setHeader(event, 'Content-Type', 'text/html; charset=utf-8');
250
- return '<!DOCTYPE html><html><head><title>Error</title></head><body><h1>500 Internal Server Error</h1><p>Route manager or renderer not initialized. Please check server logs.</p></body></html>';
251
- }
252
-
253
- // Get URL from H3 event
254
- const url = getRequestURL(event);
255
- const pathname = url.pathname;
256
- const redirectMatch = routeManager.matchRedirect(pathname);
257
- if (redirectMatch) {
258
- setResponseStatus(event, redirectMatch.statusCode);
259
- setHeader(event, 'Location', redirectMatch.destination);
260
- return \`Redirecting to \${redirectMatch.destination}\`;
261
- }
262
- const apiRouteManager = farmRegistry.apiRouteManager;
263
-
264
- if (apiRouteManager?.matchRoute(pathname)) {
265
- const handler = apiRouteManager.getHandler();
266
- if (!handler) {
267
- setResponseStatus(event, 404);
268
- return { error: 'API handler not found' };
269
- }
270
-
271
- const headers = new Headers();
272
- const h3Headers = getHeaders(event);
273
- for (const [key, value] of Object.entries(h3Headers)) {
274
- if (value) {
275
- headers.set(key, Array.isArray(value) ? value.join(', ') : String(value));
276
- }
277
- }
278
-
279
- let body: string | undefined;
280
- const method = event.method || 'GET';
281
- if (method !== 'GET' && method !== 'HEAD') {
282
- const bodyData = await readBody(event).catch(() => undefined);
283
- if (bodyData) {
284
- body = typeof bodyData === 'string' ? bodyData : JSON.stringify(bodyData);
285
- }
286
- }
287
-
288
- const response = await handler(new Request(url.toString(), {
289
- method,
290
- headers,
291
- body: body || undefined,
292
- }));
293
-
294
- return sendWebResponse(response);
295
- }
296
-
297
- // Skip API routes - let the API handler process them
298
- if (pathname.startsWith('/api/')) {
299
- // Return undefined to let Nitro's API handler process
300
- return undefined;
301
- }
302
-
303
- // Skip static assets - let Nitro serve them
304
- // Only skip if it's clearly a static file (has extension and not in root)
305
- if (pathname.startsWith('/assets/') || (pathname.includes('.') && !pathname.startsWith('/api/'))) {
306
- // Check if it's a static file by extension
307
- const staticExtensions = ['.js', '.css', '.png', '.jpg', '.jpeg', '.gif', '.svg', '.ico', '.woff', '.woff2', '.ttf', '.eot'];
308
- const hasStaticExtension = staticExtensions.some(ext => pathname.toLowerCase().endsWith(ext));
309
- if (hasStaticExtension) {
310
- return; // Let Nitro's static file handler process
311
- }
312
- }
313
-
314
- // Try to use Node.js req/res if available (for node-server preset)
315
- if (event.node && event.node.req && event.node.res) {
316
- await serverRenderer.renderPage(event.node.req as any, event.node.res as any);
317
- return undefined; // Response already sent
318
- }
319
-
320
- if (farmRegistry.deploymentId) {
321
- setHeader(event, 'x-farm-deployment-id', farmRegistry.deploymentId);
322
- setCookie(event, '__farm_deployment', farmRegistry.deploymentId, {
323
- httpOnly: true,
324
- sameSite: 'lax',
325
- secure: url.protocol === 'https:',
326
- path: farmRegistry.basePath || '/',
327
- });
328
- }
329
-
330
- // For serverless (Vercel), render to string and send HTML
331
- try {
332
- // Match route
333
- const { route, params, layouts } = routeManager.matchRoute(pathname);
334
-
335
- if (!route) {
336
- setResponseStatus(event, 404);
337
- setHeader(event, 'Content-Type', 'text/html; charset=utf-8');
338
- return '<!DOCTYPE html><html><head><title>404 Not Found</title></head><body><h1>404 Not Found</h1></body></html>';
339
- }
340
-
341
- // Get search params
342
- const searchParamsObject: Record<string, string | string[] | undefined> = {};
343
- url.searchParams.forEach((value, key) => {
344
- const existing = searchParamsObject[key];
345
- if (existing) {
346
- if (Array.isArray(existing)) {
347
- existing.push(value);
348
- } else {
349
- searchParamsObject[key] = [existing, value];
350
- }
351
- } else {
352
- searchParamsObject[key] = value;
353
- }
354
- });
355
-
356
- // Load route module - in production, use bundled SSR output
357
- // Get bundled path from registry or construct it
358
- let routeModule;
359
- const routePaths = farmRegistry.routePaths || {};
360
- const bundledPath = routePaths[pathname] || route.modulePath
361
- .replace(/.*\\/src\\/app\\//, '')
362
- .replace(/\\.(tsx?|jsx?)$/, '.js');
363
-
364
- try {
365
- // Try to load from bundled SSR output (copied to Nitro's server/farm directory)
366
- // Nitro bundles everything, so we need to use the correct import path
367
- routeModule = await import('./farm/' + bundledPath);
368
- } catch (importError) {
369
- // Fallback: try route manager's load method (for node-server preset)
370
- try {
371
- routeModule = await routeManager.loadRouteModule(route.modulePath);
372
- } catch (loadError) {
373
- // Last resort: try just the filename
374
- const bundledName = bundledPath.split('/').pop() || 'page.js';
375
- try {
376
- routeModule = await import('./farm/' + bundledName);
377
- } catch {
378
- throw new Error(\`Failed to load route module: \${route.modulePath}. Tried: ./farm/\${bundledPath}, ./farm/\${bundledName}\`);
379
- }
380
- }
381
- }
382
-
383
- if (!routeModule.default) {
384
- throw new Error(\`Route module \${route.modulePath} does not export a default component\`);
385
- }
386
-
387
- // Load layout modules
388
- const layoutModules = await Promise.all(
389
- layouts.map(async (layout) => {
390
- const bundledPath = layout.modulePath
391
- .replace(/.*\\/src\\/app\\//, '')
392
- .replace(/\\.(tsx?|jsx?)$/, '.js');
393
-
394
- try {
395
- // Try to load from bundled SSR output
396
- return await import('./farm/' + bundledPath);
397
- } catch {
398
- // Fallback to route manager's load method
399
- try {
400
- return await routeManager.loadLayoutModule(layout.modulePath);
401
- } catch {
402
- // Last resort: try just the filename
403
- const bundledName = bundledPath.split('/').pop() || 'layout.js';
404
- try {
405
- return await import('./farm/' + bundledName);
406
- } catch {
407
- // Return a dummy layout if all fails
408
- return { default: ({ children }: any) => children };
409
- }
410
- }
411
- }
412
- })
413
- );
414
-
415
- // Create page props
416
- const rawPageProps = {
417
- params,
418
- searchParams: Promise.resolve(searchParamsObject),
419
- path: pathname,
420
- };
421
- const pageProps = routeModule.__farmResolveRouteProps
422
- ? await routeModule.__farmResolveRouteProps(rawPageProps)
423
- : (() => {
424
- const routeSchemas = routeModule.__farmRouteParsesProps
425
- ? {}
426
- : routeModule.__farmRouteSchemas || {};
427
- const parsedParams = routeSchemas.params?.parse
428
- ? routeSchemas.params.parse(params)
429
- : params;
430
- const parsedSearch = routeSchemas.search?.parse
431
- ? routeSchemas.search.parse(searchParamsObject)
432
- : searchParamsObject;
433
- return {
434
- ...rawPageProps,
435
- params: parsedParams,
436
- search: parsedSearch,
437
- searchParams: Promise.resolve(parsedSearch),
438
- };
439
- })();
440
-
441
- // Create page element
442
- const PageComponent = routeModule.default;
443
- let pageElement;
444
- if (PageComponent.constructor.name === "AsyncFunction" || PageComponent.toString().includes("async")) {
445
- pageElement = await PageComponent(pageProps);
446
- } else {
447
- pageElement = React.createElement(PageComponent, pageProps);
448
- }
449
-
450
- // Wrap with layouts
451
- for (let i = layoutModules.length - 1; i >= 0; i--) {
452
- const layoutModule = layoutModules[i];
453
- const LayoutComponent = layoutModule.default;
454
- pageElement = React.createElement(LayoutComponent, {
455
- children: pageElement,
456
- params,
457
- } as any);
458
- }
459
-
460
- // Render to string
461
- const html = renderToString(pageElement);
462
-
463
- // Get client script path from manifest
464
- const clientManifest = farmRegistry.clientManifest || {};
465
- // Find the client script for this route - check manifest structure
466
- let clientScript = '/assets/page-wbYjx1yQ.js'; // Default fallback
467
- if (clientManifest && typeof clientManifest === 'object') {
468
- // Manifest structure: { "assets/page-xxx.js": { ... } }
469
- const manifestEntry = Object.values(clientManifest).find((entry: any) =>
470
- entry && entry.name === 'page'
471
- ) as any;
472
- if (manifestEntry && manifestEntry.chunks && manifestEntry.chunks[0]) {
473
- clientScript = '/' + manifestEntry.chunks[0];
474
- } else if (Object.keys(clientManifest).length > 0) {
475
- // Fallback to first asset in manifest
476
- clientScript = '/' + Object.keys(clientManifest)[0];
477
- }
478
- }
479
-
480
- // Build full HTML
481
- const serializedDeploymentId = JSON.stringify(farmRegistry.deploymentId || '').replace(/</g, '\\u003c');
482
- const fullHtml = \`<!DOCTYPE html>
483
- <html lang="en">
484
- <head>
485
- <meta charset="utf-8">
486
- <meta name="viewport" content="width=device-width, initial-scale=1">
487
- <link rel="icon" href="data:,">
488
- <title>Farm.js App</title>
489
- <script>
490
- window.__FARM_DEPLOYMENT_ID__ = \${serializedDeploymentId};
491
- window.__FARM_PROPS__ = \${JSON.stringify(pageProps)};
492
- window.__FARM_PATH__ = \${JSON.stringify(pathname)};
493
- </script>
494
- </head>
495
- <body>
496
- <div id="root">\${html}</div>
497
- <script type="module" src="\${clientScript}"></script>
498
- </body>
499
- </html>\`;
500
-
501
- setHeader(event, 'Content-Type', 'text/html; charset=utf-8');
502
- return fullHtml;
503
-
504
- } catch (renderError: any) {
505
- setResponseStatus(event, 500);
506
- setHeader(event, 'Content-Type', 'text/html; charset=utf-8');
507
- return \`<!DOCTYPE html><html><head><title>Error</title></head><body><h1>Error</h1><p>\${renderError.message || 'Internal Server Error'}</p></body></html>\`;
508
- }
509
- } catch (error: any) {
510
- setResponseStatus(event, 500);
511
- setHeader(event, 'Content-Type', 'text/html; charset=utf-8');
512
- return \`<!DOCTYPE html><html><head><title>Error</title></head><body><h1>Error</h1><p>\${error.message || 'Internal Server Error'}</p></body></html>\`;
513
- }
514
- });
515
- `,
516
- "utf-8"
517
- );
518
- const nitroConfig = {
519
- preset,
520
- // rootDir must be the project root for Nitro to correctly resolve paths
521
- rootDir: root,
522
- // srcDir should point to where source files are (for scanning)
523
- // But we're using scanDirs to point to our server directory
524
- srcDir: root,
525
- // buildDir is where Nitro builds (temporary working directory)
526
- buildDir: nitroBuildDir,
527
- // output.dir is where the final deployable output goes
528
- // This ensures everything ends up in .farm/.output
529
- compatibilityDate: "2024-12-01",
530
- // Vercel-specific configuration
531
- ...preset === "vercel" ? {
532
- vercel: {
533
- // Ensure proper function configuration
534
- config: {}
535
- }
536
- } : {},
537
- // Tell Nitro to scan the server directory we created
538
- // This ensures our handlers are discovered by Nitro
539
- scanDirs: [serverDir],
540
- tasks: {
541
- ...farmWorkflows.tasks,
542
- ...farmCron.tasks
543
- },
544
- scheduledTasks,
545
- ...preset === "cloudflare-module" && cloudflareCronConfig ? {
546
- cloudflare: cloudflareCronConfig
547
- } : {},
548
- handlers: farmWorkflows.handlerPath ? [
549
- {
550
- route: `${config.workflows.route}/**`,
551
- handler: farmWorkflows.handlerPath
552
- }
553
- ] : [],
554
- // Route rules for Vercel
555
- routeRules: {
556
- "/api/**": {
557
- cors: true,
558
- headers: {
559
- "Access-Control-Allow-Origin": "*",
560
- "Access-Control-Allow-Methods": "*",
561
- "Access-Control-Allow-Headers": "*"
562
- }
563
- },
564
- "/**": {
565
- prerender: false
566
- },
567
- ...routeRulesToNitroRouteRules(config.routeRules)
568
- },
569
- // // Exclude certain directories from scanning
570
- // scanDirsExclude: [
571
- // '**/node_modules/**',
572
- // '**/.git/**',
573
- // '**/.output/**',
574
- // '**/.nitro/**',
575
- // ],
576
- output: {
577
- // CRITICAL: All output MUST go to .farm/.output (NOT .nitro/.output)
578
- // This ensures consistency and that deployment always uses .farm/.output
579
- // By explicitly setting dir, serverDir, and publicDir, we prevent Nitro
580
- // from creating its own .output directory inside .nitro
581
- dir: outputDir,
582
- // .farm/.output
583
- serverDir: path.join(outputDir, "server"),
584
- // .farm/.output/server
585
- publicDir: path.join(outputDir, "public")
586
- // .farm/.output/public
587
- },
588
- // Use Nitro hooks to populate the runtime registry
589
- // This allows us to pass complex objects (route managers, renderers) at runtime
590
- hooks: {
591
- "build:before": /* @__PURE__ */ __name(async (nitro) => {
592
- const registryPath = path.join(serverDir, "farm-registry.ts");
593
- const { farmRegistry } = await import(
594
- /* @vite-ignore */
595
- registryPath
596
- );
597
- const routePaths2 = {};
598
- for (const [pattern, entry] of routeManager.getRoutes()) {
599
- const bundledPath = entry.modulePath.replace(/.*\/src\/app\//, "").replace(/\.(tsx?|jsx?)$/, ".js");
600
- routePaths2[pattern] = bundledPath;
601
- }
602
- farmRegistry.routePaths = routePaths2;
603
- try {
604
- const clientManifestPath2 = path.join(
605
- root,
606
- distDir,
607
- "client",
608
- "farm-client-manifest.json"
609
- );
610
- const { readFile } = await import("fs/promises");
611
- const manifestContent = await readFile(clientManifestPath2, "utf-8");
612
- farmRegistry.clientManifest = JSON.parse(manifestContent);
613
- } catch (error) {
614
- farmRegistry.clientManifest = {};
615
- }
616
- farmRegistry.__INIT__ = () => {
617
- farmRegistry.apiRouteManager = apiRouteManager;
618
- farmRegistry.routeManager = routeManager;
619
- farmRegistry.serverRenderer = serverRenderer;
620
- farmRegistry.env = config.env || { server: {}, public: {} };
621
- farmRegistry.deploymentId = config.deploymentId;
622
- farmRegistry.basePath = config.basePath;
623
- };
624
- if (typeof globalThis !== "undefined") {
625
- globalThis.__FARM_REGISTRY__ = {
626
- apiRouteManager,
627
- routeManager,
628
- serverRenderer,
629
- env: farmRegistry.env,
630
- deploymentId: farmRegistry.deploymentId,
631
- basePath: farmRegistry.basePath,
632
- clientManifest: farmRegistry.clientManifest,
633
- routePaths: farmRegistry.routePaths
634
- };
635
- }
636
- }, "build:before")
637
- },
638
- // API base URL (default is /api)
639
- apiBaseURL: "/api",
640
- // Include public directory and client build
641
- publicAssets: [
642
- {
643
- baseURL: "/",
644
- dir: path.join(root, "public")
645
- },
646
- // Include client build assets
647
- {
648
- baseURL: "/",
649
- dir: path.join(root, distDir, "client")
650
- }
651
- ],
652
- // Build configuration
653
- minify: process.env.NODE_ENV === "production",
654
- sourceMap: true,
655
- // Bundle all dependencies to avoid workspace issues on Vercel
656
- // This ensures all farm package code is bundled into the serverless function
657
- // so it doesn't need to resolve workspace dependencies at runtime
658
- // This is similar to how Next.js and Nuxt bundle their core packages
659
- // bundle: true,
660
- // External dependencies that should NOT be bundled (provided by runtime)
661
- // We exclude React/ReactDOM to reduce bundle size (they're in node_modules)
662
- externals: {
663
- external: ["react", "react-dom"]
664
- // Keep React external - it's in the serverless function's node_modules
665
- // This reduces bundle size significantly
666
- },
667
- // Runtime config
668
- runtimeConfig: {
669
- public: {}
670
- },
671
- // Experimental features
672
- experimental: {
673
- tasks: farmWorkflows.workflows.length > 0 || farmCron.jobs.length > 0,
674
- wasm: false
675
- // Disable for now to avoid issues
676
- }
677
- };
678
- return nitroConfig;
679
- }
680
- __name(createNitroConfig, "createNitroConfig");
681
- function getNitroPreset(preset) {
682
- return preset || "node-server";
683
- }
684
- __name(getNitroPreset, "getNitroPreset");
685
- export {
686
- createNitroConfig,
687
- getNitroPreset
688
- };
689
- //# sourceMappingURL=nitro-QO5LV6QK.mjs.map