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

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 (447) hide show
  1. package/dist/after.cjs +227 -0
  2. package/dist/after.cjs.map +1 -0
  3. package/dist/after.d.mts +25 -0
  4. package/dist/after.d.ts +25 -0
  5. package/dist/after.mjs +14 -0
  6. package/dist/after.mjs.map +1 -0
  7. package/dist/agent-runtime.cjs +2379 -0
  8. package/dist/agent-runtime.cjs.map +1 -0
  9. package/dist/agent-runtime.d.mts +94 -0
  10. package/dist/agent-runtime.d.ts +94 -0
  11. package/dist/agent-runtime.mjs +479 -0
  12. package/dist/agent-runtime.mjs.map +1 -0
  13. package/dist/api/route-manager.d.mts +66 -0
  14. package/dist/api/route-manager.d.ts +66 -0
  15. package/dist/api/runtime.d.mts +3 -0
  16. package/dist/api/runtime.d.ts +3 -0
  17. package/dist/api.cjs +4100 -0
  18. package/dist/api.cjs.map +1 -0
  19. package/dist/api.d.mts +48 -0
  20. package/dist/api.d.ts +48 -0
  21. package/dist/api.mjs +93 -0
  22. package/dist/api.mjs.map +1 -0
  23. package/dist/app-BWtqQu3R.d.mts +302 -0
  24. package/dist/app-markdown.cjs +244 -0
  25. package/dist/app-markdown.cjs.map +1 -0
  26. package/dist/app-markdown.d.mts +22 -0
  27. package/dist/app-markdown.d.ts +22 -0
  28. package/dist/app-markdown.mjs +27 -0
  29. package/dist/app-markdown.mjs.map +1 -0
  30. package/dist/app-xltejvLY.d.ts +302 -0
  31. package/dist/cache.cjs +945 -0
  32. package/dist/cache.cjs.map +1 -0
  33. package/dist/cache.d.mts +192 -0
  34. package/dist/cache.d.ts +192 -0
  35. package/dist/cache.mjs +46 -0
  36. package/dist/cache.mjs.map +1 -0
  37. package/dist/chunk-2ED5Q2GH.mjs +422 -0
  38. package/dist/chunk-2ED5Q2GH.mjs.map +1 -0
  39. package/dist/chunk-32W4QEJP.mjs +158 -0
  40. package/dist/chunk-32W4QEJP.mjs.map +1 -0
  41. package/dist/chunk-3XNTL3FQ.mjs +452 -0
  42. package/dist/chunk-3XNTL3FQ.mjs.map +1 -0
  43. package/dist/chunk-44ZCFSKE.mjs +84 -0
  44. package/dist/chunk-44ZCFSKE.mjs.map +1 -0
  45. package/dist/chunk-4MGVSBRP.mjs +7787 -0
  46. package/dist/chunk-4MGVSBRP.mjs.map +1 -0
  47. package/dist/chunk-4S3ORGFA.mjs +44 -0
  48. package/dist/chunk-4S3ORGFA.mjs.map +1 -0
  49. package/dist/chunk-5BY76U2M.mjs +1 -0
  50. package/dist/chunk-5BY76U2M.mjs.map +1 -0
  51. package/dist/chunk-5ZGPRGWV.mjs +136 -0
  52. package/dist/chunk-5ZGPRGWV.mjs.map +1 -0
  53. package/dist/chunk-65A7QIKI.mjs +142 -0
  54. package/dist/chunk-65A7QIKI.mjs.map +1 -0
  55. package/dist/chunk-74YTBPTY.mjs +450 -0
  56. package/dist/chunk-74YTBPTY.mjs.map +1 -0
  57. package/dist/chunk-7FBJLMQH.mjs +338 -0
  58. package/dist/chunk-7FBJLMQH.mjs.map +1 -0
  59. package/dist/chunk-7HO6AEOP.mjs +74 -0
  60. package/dist/chunk-7HO6AEOP.mjs.map +1 -0
  61. package/dist/chunk-7MABZJIM.mjs +29 -0
  62. package/dist/chunk-7MABZJIM.mjs.map +1 -0
  63. package/dist/chunk-7N62DNSO.mjs +41 -0
  64. package/dist/chunk-7N62DNSO.mjs.map +1 -0
  65. package/dist/chunk-7ZY5AIJO.mjs +161 -0
  66. package/dist/chunk-7ZY5AIJO.mjs.map +1 -0
  67. package/dist/chunk-ALCLXXTY.mjs +187 -0
  68. package/dist/chunk-ALCLXXTY.mjs.map +1 -0
  69. package/dist/chunk-AZ7YUVNR.mjs +65 -0
  70. package/dist/chunk-AZ7YUVNR.mjs.map +1 -0
  71. package/dist/chunk-B232I2GP.mjs +163 -0
  72. package/dist/chunk-B232I2GP.mjs.map +1 -0
  73. package/dist/chunk-B4W3BNTL.mjs +483 -0
  74. package/dist/chunk-B4W3BNTL.mjs.map +1 -0
  75. package/dist/chunk-C2ROET2V.mjs +718 -0
  76. package/dist/chunk-C2ROET2V.mjs.map +1 -0
  77. package/dist/chunk-CGILA3WO.mjs +14 -0
  78. package/dist/chunk-CGILA3WO.mjs.map +1 -0
  79. package/dist/chunk-CGIXMLSY.mjs +184 -0
  80. package/dist/chunk-CGIXMLSY.mjs.map +1 -0
  81. package/dist/chunk-DJSGLHCN.mjs +597 -0
  82. package/dist/chunk-DJSGLHCN.mjs.map +1 -0
  83. package/dist/chunk-E2MPIBRE.mjs +149 -0
  84. package/dist/chunk-E2MPIBRE.mjs.map +1 -0
  85. package/dist/chunk-E6EPN5BT.mjs +203 -0
  86. package/dist/chunk-E6EPN5BT.mjs.map +1 -0
  87. package/dist/chunk-EI43C4RA.mjs +6277 -0
  88. package/dist/chunk-EI43C4RA.mjs.map +1 -0
  89. package/dist/chunk-EJ7T4TPB.mjs +622 -0
  90. package/dist/chunk-EJ7T4TPB.mjs.map +1 -0
  91. package/dist/chunk-FQYDHKKU.mjs +128 -0
  92. package/dist/chunk-FQYDHKKU.mjs.map +1 -0
  93. package/dist/chunk-FRPWCMMG.mjs +299 -0
  94. package/dist/chunk-FRPWCMMG.mjs.map +1 -0
  95. package/dist/chunk-GN72QAIH.mjs +146 -0
  96. package/dist/chunk-GN72QAIH.mjs.map +1 -0
  97. package/dist/chunk-GQVGIUSN.mjs +149 -0
  98. package/dist/chunk-GQVGIUSN.mjs.map +1 -0
  99. package/dist/chunk-GS6K5OCM.mjs +407 -0
  100. package/dist/chunk-GS6K5OCM.mjs.map +1 -0
  101. package/dist/chunk-GXASWWJU.mjs +364 -0
  102. package/dist/chunk-GXASWWJU.mjs.map +1 -0
  103. package/dist/chunk-GY2STC2S.mjs +180 -0
  104. package/dist/chunk-GY2STC2S.mjs.map +1 -0
  105. package/dist/chunk-H2FA2SBS.mjs +51 -0
  106. package/dist/chunk-H2FA2SBS.mjs.map +1 -0
  107. package/dist/chunk-I4CUBGVF.mjs +93 -0
  108. package/dist/chunk-I4CUBGVF.mjs.map +1 -0
  109. package/dist/chunk-ITN462YM.mjs +98 -0
  110. package/dist/chunk-ITN462YM.mjs.map +1 -0
  111. package/dist/chunk-J23HNLFY.mjs +72 -0
  112. package/dist/chunk-J23HNLFY.mjs.map +1 -0
  113. package/dist/chunk-J4FNJ5IU.mjs +179 -0
  114. package/dist/chunk-J4FNJ5IU.mjs.map +1 -0
  115. package/dist/chunk-J5YWQVI5.mjs +211 -0
  116. package/dist/chunk-J5YWQVI5.mjs.map +1 -0
  117. package/dist/chunk-JDEOUK5V.mjs +427 -0
  118. package/dist/chunk-JDEOUK5V.mjs.map +1 -0
  119. package/dist/chunk-JK25YEN6.mjs +219 -0
  120. package/dist/chunk-JK25YEN6.mjs.map +1 -0
  121. package/dist/chunk-K4667E2Q.mjs +1916 -0
  122. package/dist/chunk-K4667E2Q.mjs.map +1 -0
  123. package/dist/chunk-LGHEOHBU.mjs +218 -0
  124. package/dist/chunk-LGHEOHBU.mjs.map +1 -0
  125. package/dist/chunk-LM2YNO4U.mjs +24 -0
  126. package/dist/chunk-LM2YNO4U.mjs.map +1 -0
  127. package/dist/chunk-ME4MO2RJ.mjs +3540 -0
  128. package/dist/chunk-ME4MO2RJ.mjs.map +1 -0
  129. package/dist/chunk-MIUW47JX.mjs +639 -0
  130. package/dist/chunk-MIUW47JX.mjs.map +1 -0
  131. package/dist/chunk-NNLCAVB6.mjs +391 -0
  132. package/dist/chunk-NNLCAVB6.mjs.map +1 -0
  133. package/dist/chunk-P7QDS5AT.mjs +191 -0
  134. package/dist/chunk-P7QDS5AT.mjs.map +1 -0
  135. package/dist/chunk-PFE6GMNE.mjs +603 -0
  136. package/dist/chunk-PFE6GMNE.mjs.map +1 -0
  137. package/dist/chunk-QGOHVJ6J.mjs +63 -0
  138. package/dist/chunk-QGOHVJ6J.mjs.map +1 -0
  139. package/dist/chunk-QKVUNGAH.mjs +39 -0
  140. package/dist/chunk-QKVUNGAH.mjs.map +1 -0
  141. package/dist/chunk-QM746KUO.mjs +56 -0
  142. package/dist/chunk-QM746KUO.mjs.map +1 -0
  143. package/dist/chunk-QTZZ2ISQ.mjs +753 -0
  144. package/dist/chunk-QTZZ2ISQ.mjs.map +1 -0
  145. package/dist/chunk-RBRLLZL5.mjs +81 -0
  146. package/dist/chunk-RBRLLZL5.mjs.map +1 -0
  147. package/dist/chunk-RHIFZZUI.mjs +69 -0
  148. package/dist/chunk-RHIFZZUI.mjs.map +1 -0
  149. package/dist/chunk-RQ633A5I.mjs +187 -0
  150. package/dist/chunk-RQ633A5I.mjs.map +1 -0
  151. package/dist/chunk-SCFX4UTD.mjs +28 -0
  152. package/dist/chunk-SCFX4UTD.mjs.map +1 -0
  153. package/dist/chunk-SL6HTIOK.mjs +66 -0
  154. package/dist/chunk-SL6HTIOK.mjs.map +1 -0
  155. package/dist/chunk-SPBBQLXI.mjs +207 -0
  156. package/dist/chunk-SPBBQLXI.mjs.map +1 -0
  157. package/dist/chunk-SSA7THPX.mjs +10 -0
  158. package/dist/chunk-SSA7THPX.mjs.map +1 -0
  159. package/dist/chunk-T4QJQK76.mjs +459 -0
  160. package/dist/chunk-T4QJQK76.mjs.map +1 -0
  161. package/dist/chunk-TQAEEJB4.mjs +157 -0
  162. package/dist/chunk-TQAEEJB4.mjs.map +1 -0
  163. package/dist/chunk-UB5UOSHB.mjs +458 -0
  164. package/dist/chunk-UB5UOSHB.mjs.map +1 -0
  165. package/dist/chunk-USWZZUEH.mjs +25 -0
  166. package/dist/chunk-USWZZUEH.mjs.map +1 -0
  167. package/dist/chunk-UVCIEUJC.mjs +16 -0
  168. package/dist/chunk-UVCIEUJC.mjs.map +1 -0
  169. package/dist/chunk-UXUAWNO5.mjs +396 -0
  170. package/dist/chunk-UXUAWNO5.mjs.map +1 -0
  171. package/dist/chunk-V3XURYJO.mjs +756 -0
  172. package/dist/chunk-V3XURYJO.mjs.map +1 -0
  173. package/dist/chunk-V6WE6JSZ.mjs +352 -0
  174. package/dist/chunk-V6WE6JSZ.mjs.map +1 -0
  175. package/dist/chunk-V7RBCSDJ.mjs +170 -0
  176. package/dist/chunk-V7RBCSDJ.mjs.map +1 -0
  177. package/dist/chunk-VCANOYFI.mjs +588 -0
  178. package/dist/chunk-VCANOYFI.mjs.map +1 -0
  179. package/dist/chunk-VY2UYN5R.mjs +224 -0
  180. package/dist/chunk-VY2UYN5R.mjs.map +1 -0
  181. package/dist/chunk-W2CRQFF6.mjs +1352 -0
  182. package/dist/chunk-W2CRQFF6.mjs.map +1 -0
  183. package/dist/chunk-WDU6QXNK.mjs +872 -0
  184. package/dist/chunk-WDU6QXNK.mjs.map +1 -0
  185. package/dist/chunk-WZ5QFROO.mjs +23 -0
  186. package/dist/chunk-WZ5QFROO.mjs.map +1 -0
  187. package/dist/chunk-XIVV5IWN.mjs +541 -0
  188. package/dist/chunk-XIVV5IWN.mjs.map +1 -0
  189. package/dist/chunk-YW7OBE6Q.mjs +119 -0
  190. package/dist/chunk-YW7OBE6Q.mjs.map +1 -0
  191. package/dist/chunk-Z5CQMP54.mjs +365 -0
  192. package/dist/chunk-Z5CQMP54.mjs.map +1 -0
  193. package/dist/chunk-ZBE6MLHL.mjs +230 -0
  194. package/dist/chunk-ZBE6MLHL.mjs.map +1 -0
  195. package/dist/chunk-ZVWA4ZQ3.mjs +189 -0
  196. package/dist/chunk-ZVWA4ZQ3.mjs.map +1 -0
  197. package/dist/chunk-ZZ57EH5Z.mjs +173 -0
  198. package/dist/chunk-ZZ57EH5Z.mjs.map +1 -0
  199. package/dist/client-BT1mFQas.d.mts +447 -0
  200. package/dist/client-Nn0q4eO4.d.ts +447 -0
  201. package/dist/client-cache-CIlyBlmx.d.ts +6 -0
  202. package/dist/client-cache-D-EZ7XVW.d.mts +6 -0
  203. package/dist/client-plugins-BI2R6Eae.d.mts +1926 -0
  204. package/dist/client-plugins-DU9oMspX.d.ts +1926 -0
  205. package/dist/client-plugins.cjs +415 -0
  206. package/dist/client-plugins.cjs.map +1 -0
  207. package/dist/client-plugins.d.mts +22 -0
  208. package/dist/client-plugins.d.ts +22 -0
  209. package/dist/client-plugins.mjs +10 -0
  210. package/dist/client-plugins.mjs.map +1 -0
  211. package/dist/client.cjs +5402 -0
  212. package/dist/client.cjs.map +1 -0
  213. package/dist/client.d.mts +447 -0
  214. package/dist/client.d.ts +447 -0
  215. package/dist/client.mjs +110 -0
  216. package/dist/client.mjs.map +1 -0
  217. package/dist/config.cjs +38 -0
  218. package/dist/config.cjs.map +1 -0
  219. package/dist/config.d.mts +29 -0
  220. package/dist/config.d.ts +29 -0
  221. package/dist/config.mjs +10 -0
  222. package/dist/config.mjs.map +1 -0
  223. package/dist/cron.cjs +406 -0
  224. package/dist/cron.cjs.map +1 -0
  225. package/dist/cron.d.mts +78 -0
  226. package/dist/cron.d.ts +78 -0
  227. package/dist/cron.mjs +30 -0
  228. package/dist/cron.mjs.map +1 -0
  229. package/dist/deferred.cjs +438 -0
  230. package/dist/deferred.cjs.map +1 -0
  231. package/dist/deferred.d.mts +42 -0
  232. package/dist/deferred.d.ts +42 -0
  233. package/dist/deferred.mjs +28 -0
  234. package/dist/deferred.mjs.map +1 -0
  235. package/dist/deployment.cjs +199 -0
  236. package/dist/deployment.cjs.map +1 -0
  237. package/dist/deployment.d.mts +34 -0
  238. package/dist/deployment.d.ts +34 -0
  239. package/dist/deployment.mjs +38 -0
  240. package/dist/deployment.mjs.map +1 -0
  241. package/dist/devtools-REQTS3I7.mjs +371 -0
  242. package/dist/devtools-REQTS3I7.mjs.map +1 -0
  243. package/dist/devtools-client-3XRTBND5.mjs +216 -0
  244. package/dist/devtools-client-3XRTBND5.mjs.map +1 -0
  245. package/dist/devtools-ui-NJKFORTG.mjs +1349 -0
  246. package/dist/devtools-ui-NJKFORTG.mjs.map +1 -0
  247. package/dist/docs.cjs +5548 -0
  248. package/dist/docs.cjs.map +1 -0
  249. package/dist/docs.d.mts +69 -0
  250. package/dist/docs.d.ts +69 -0
  251. package/dist/docs.mjs +47 -0
  252. package/dist/docs.mjs.map +1 -0
  253. package/dist/env-types.cjs +232 -0
  254. package/dist/env-types.cjs.map +1 -0
  255. package/dist/env-types.d.mts +12 -0
  256. package/dist/env-types.d.ts +12 -0
  257. package/dist/env-types.mjs +11 -0
  258. package/dist/env-types.mjs.map +1 -0
  259. package/dist/env.cjs +215 -0
  260. package/dist/env.cjs.map +1 -0
  261. package/dist/env.d.mts +45 -0
  262. package/dist/env.d.ts +45 -0
  263. package/dist/env.mjs +22 -0
  264. package/dist/env.mjs.map +1 -0
  265. package/dist/environment/vite.d.mts +22 -0
  266. package/dist/environment/vite.d.ts +22 -0
  267. package/dist/environment.cjs +96 -0
  268. package/dist/environment.cjs.map +1 -0
  269. package/dist/environment.d.mts +18 -0
  270. package/dist/environment.d.ts +18 -0
  271. package/dist/environment.mjs +14 -0
  272. package/dist/environment.mjs.map +1 -0
  273. package/dist/headers.cjs +126 -0
  274. package/dist/headers.cjs.map +1 -0
  275. package/dist/headers.d.mts +22 -0
  276. package/dist/headers.d.ts +22 -0
  277. package/dist/headers.mjs +12 -0
  278. package/dist/headers.mjs.map +1 -0
  279. package/dist/i18n/client.d.mts +32 -0
  280. package/dist/i18n/client.d.ts +32 -0
  281. package/dist/i18n/index.d.mts +20 -0
  282. package/dist/i18n/index.d.ts +20 -0
  283. package/dist/i18n/server.d.mts +30 -0
  284. package/dist/i18n/server.d.ts +30 -0
  285. package/dist/image/server.d.mts +37 -0
  286. package/dist/image/server.d.ts +37 -0
  287. package/dist/image/sharp.d.mts +7 -0
  288. package/dist/image/sharp.d.ts +7 -0
  289. package/dist/image-config-Duob7wER.d.mts +50 -0
  290. package/dist/image-config-Duob7wER.d.ts +50 -0
  291. package/dist/image.cjs +209 -0
  292. package/dist/image.cjs.map +1 -0
  293. package/dist/image.d.mts +39 -0
  294. package/dist/image.d.ts +39 -0
  295. package/dist/image.mjs +165 -0
  296. package/dist/image.mjs.map +1 -0
  297. package/dist/index.cjs +42186 -0
  298. package/dist/index.cjs.map +1 -0
  299. package/dist/index.d.mts +454 -0
  300. package/dist/index.d.ts +454 -0
  301. package/dist/index.mjs +980 -0
  302. package/dist/index.mjs.map +1 -0
  303. package/dist/integration-api-CHT2OKAf.d.mts +93 -0
  304. package/dist/integration-api-CHT2OKAf.d.ts +93 -0
  305. package/dist/integration-orm-GQLGU66X.mjs +13 -0
  306. package/dist/integration-orm-GQLGU66X.mjs.map +1 -0
  307. package/dist/integrations.cjs +2820 -0
  308. package/dist/integrations.cjs.map +1 -0
  309. package/dist/integrations.d.mts +22 -0
  310. package/dist/integrations.d.ts +22 -0
  311. package/dist/integrations.mjs +51 -0
  312. package/dist/integrations.mjs.map +1 -0
  313. package/dist/internal/build-runtime.cjs +643 -322
  314. package/dist/internal/build-runtime.cjs.map +1 -1
  315. package/dist/internal/build-runtime.d.mts +39 -0
  316. package/dist/internal/build-runtime.d.ts +39 -0
  317. package/dist/internal/build-runtime.mjs +11 -10
  318. package/dist/internal/client-runtime.d.mts +2 -0
  319. package/dist/internal/client-runtime.d.ts +2 -0
  320. package/dist/internal/config-runtime.cjs +135 -39
  321. package/dist/internal/config-runtime.cjs.map +1 -1
  322. package/dist/internal/config-runtime.d.mts +39 -0
  323. package/dist/internal/config-runtime.d.ts +39 -0
  324. package/dist/internal/config-runtime.mjs +5 -4
  325. package/dist/internal/production-node-env.d.mts +12 -0
  326. package/dist/internal/production-node-env.d.ts +12 -0
  327. package/dist/internal/production-runtime.d.mts +39 -0
  328. package/dist/internal/production-runtime.d.ts +39 -0
  329. package/dist/layers-VWVDTPUZ.mjs +16 -0
  330. package/dist/layers-VWVDTPUZ.mjs.map +1 -0
  331. package/dist/manager-THKFTOFE.mjs +10 -0
  332. package/dist/manager-THKFTOFE.mjs.map +1 -0
  333. package/dist/markdown.cjs +364 -0
  334. package/dist/markdown.cjs.map +1 -0
  335. package/dist/markdown.d.mts +60 -0
  336. package/dist/markdown.d.ts +60 -0
  337. package/dist/markdown.mjs +18 -0
  338. package/dist/markdown.mjs.map +1 -0
  339. package/dist/metadata-Cm9ujH4I.d.ts +22 -0
  340. package/dist/metadata-DacXbnLA.d.mts +22 -0
  341. package/dist/middleware.cjs +2148 -0
  342. package/dist/middleware.cjs.map +1 -0
  343. package/dist/middleware.d.mts +164 -0
  344. package/dist/middleware.d.ts +164 -0
  345. package/dist/middleware.mjs +49 -0
  346. package/dist/middleware.mjs.map +1 -0
  347. package/dist/navigation-errors-Dvwpzaer.d.mts +13 -0
  348. package/dist/navigation-errors-Dvwpzaer.d.ts +13 -0
  349. package/dist/navigation.cjs +1329 -0
  350. package/dist/navigation.cjs.map +1 -0
  351. package/dist/navigation.d.mts +14 -0
  352. package/dist/navigation.d.ts +14 -0
  353. package/dist/navigation.mjs +33 -0
  354. package/dist/navigation.mjs.map +1 -0
  355. package/dist/nitro-QO5LV6QK.mjs +689 -0
  356. package/dist/nitro-QO5LV6QK.mjs.map +1 -0
  357. package/dist/observability.cjs +186 -0
  358. package/dist/observability.cjs.map +1 -0
  359. package/dist/observability.d.mts +335 -0
  360. package/dist/observability.d.ts +335 -0
  361. package/dist/observability.mjs +16 -0
  362. package/dist/observability.mjs.map +1 -0
  363. package/dist/params-BALtrRim.d.ts +15 -0
  364. package/dist/params-ry-lxqmy.d.mts +15 -0
  365. package/dist/plugin-BJDf43dc.d.mts +165 -0
  366. package/dist/plugin-BJDf43dc.d.ts +165 -0
  367. package/dist/plugin.cjs +23470 -0
  368. package/dist/plugin.cjs.map +1 -1
  369. package/dist/plugin.d.mts +22 -0
  370. package/dist/plugin.d.ts +22 -0
  371. package/dist/plugin.mjs +8 -7
  372. package/dist/production-runtime-4KKq1AVC.d.mts +79 -0
  373. package/dist/production-runtime-C_B79w2P.d.mts +28 -0
  374. package/dist/production-runtime-DDEM1D2q.d.ts +28 -0
  375. package/dist/production-runtime-DRsWDN2x.d.ts +79 -0
  376. package/dist/query/client.d.mts +61 -0
  377. package/dist/query/client.d.ts +61 -0
  378. package/dist/query/index.d.mts +90 -0
  379. package/dist/query/index.d.ts +90 -0
  380. package/dist/query/parsers.d.mts +25 -0
  381. package/dist/query/parsers.d.ts +25 -0
  382. package/dist/query/server.d.mts +55 -0
  383. package/dist/query/server.d.ts +55 -0
  384. package/dist/request-Dsq4kGW0.d.mts +6 -0
  385. package/dist/request-udtobOLv.d.ts +6 -0
  386. package/dist/request.d.mts +2 -0
  387. package/dist/request.d.ts +2 -0
  388. package/dist/resolver-DJqjLMg_.d.mts +14 -0
  389. package/dist/resolver-IH4RmPEl.d.ts +14 -0
  390. package/dist/route-runtime-DoOHzCAD.d.mts +38 -0
  391. package/dist/route-runtime-DoOHzCAD.d.ts +38 -0
  392. package/dist/router.d.mts +36 -0
  393. package/dist/router.d.ts +36 -0
  394. package/dist/routes.d.mts +224 -0
  395. package/dist/routes.d.ts +224 -0
  396. package/dist/runtime-9nQjVM7X.d.mts +206 -0
  397. package/dist/runtime-Cxpq6xZN.d.mts +27 -0
  398. package/dist/runtime-DgeS2skB.d.ts +206 -0
  399. package/dist/runtime-bv63eUiO.d.ts +27 -0
  400. package/dist/server-action-security.d.mts +43 -0
  401. package/dist/server-action-security.d.ts +43 -0
  402. package/dist/server-fn-client.d.mts +32 -0
  403. package/dist/server-fn-client.d.ts +32 -0
  404. package/dist/server-fn.d.mts +93 -0
  405. package/dist/server-fn.d.ts +93 -0
  406. package/dist/server-plugins.d.mts +55 -0
  407. package/dist/server-plugins.d.ts +55 -0
  408. package/dist/server-query-client.d.mts +50 -0
  409. package/dist/server-query-client.d.ts +50 -0
  410. package/dist/server-query.d.mts +36 -0
  411. package/dist/server-query.d.ts +36 -0
  412. package/dist/server.cjs +731 -447
  413. package/dist/server.cjs.map +1 -1
  414. package/dist/server.d.mts +48 -0
  415. package/dist/server.d.ts +48 -0
  416. package/dist/server.mjs +9 -8
  417. package/dist/server.mjs.map +1 -1
  418. package/dist/storage.d.mts +52 -0
  419. package/dist/storage.d.ts +52 -0
  420. package/dist/testing.d.mts +101 -0
  421. package/dist/testing.d.ts +101 -0
  422. package/dist/transport-BmbGTXA5.d.mts +49 -0
  423. package/dist/transport-BmbGTXA5.d.ts +49 -0
  424. package/dist/types-BMxWr97v.d.mts +81 -0
  425. package/dist/types-BMxWr97v.d.ts +81 -0
  426. package/dist/types-C9N-nk5R.d.mts +53 -0
  427. package/dist/types-C9N-nk5R.d.ts +53 -0
  428. package/dist/types-D1A6-XvH.d.mts +73 -0
  429. package/dist/types-D1A6-XvH.d.ts +73 -0
  430. package/dist/utils-B-cUHwoK.d.ts +23 -0
  431. package/dist/utils-Cm41AefV.d.mts +23 -0
  432. package/dist/version.cjs +1 -1
  433. package/dist/version.cjs.map +1 -1
  434. package/dist/version.d.mts +3 -0
  435. package/dist/version.d.ts +3 -0
  436. package/dist/version.mjs +1 -1
  437. package/dist/vite.cjs +682 -437
  438. package/dist/vite.cjs.map +1 -1
  439. package/dist/vite.d.mts +22 -0
  440. package/dist/vite.d.ts +22 -0
  441. package/dist/vite.mjs +6 -5
  442. package/dist/workflows.d.mts +110 -0
  443. package/dist/workflows.d.ts +110 -0
  444. package/package.json +3 -2
  445. package/types/client.d.ts +1 -1
  446. package/types/image.d.ts +4 -0
  447. package/types/images.d.ts +59 -0
@@ -0,0 +1,48 @@
1
+ export { F as FarmApp, R as RouteManager, S as ServerRenderer, c as createFarmApp } from './app-BWtqQu3R.mjs';
2
+ import { F as FarmConfig } from './client-plugins-BI2R6Eae.mjs';
3
+ export { B as BuildOptions, o as ErrorBoundary, E as ErrorProps, h as FarmAppContext, g as FarmContextFactory, e as FarmContextFactoryInput, A as FarmLayerEntry, H as FarmLayerResolution, a as FarmMigrationCommand, b as FarmMigrationsConfig, c as FarmMigrationsUserConfig, t as FarmRequest, u as FarmResponse, D as FarmSourceRoot, m as Layout, r as LayoutModule, k as LayoutProps, n as Loading, L as LoadingProps, s as Metadata, M as MiddlewareProps, N as NitroPreset, l as Page, i as PageProps, j as PagePropsWithMiddleware, x as ParsedRoute, P as PluginContextProps, G as ResolveFarmLayersOptions, C as ResolvedFarmLayer, R as ResolvedFarmMigrationsConfig, p as RouteModule, w as RouteSegment, z as SSGCollectionResult, y as SSGPage, v as ServerAction, q as StaticPathParams, S as StaticPathPrimitive, d as defineConfig, f as farmPlugin, K as getFarmAppDirectories, O as getFarmLayerAliases, J as getFarmSourceRoots, Q as loadFarmConfigFile, I as resolveFarmLayers } from './client-plugins-BI2R6Eae.mjs';
4
+ export { f as fileExists, g as globFiles, l as logger, m as matchRoute, p as parseRoutePath, a as parseSearchParams, r as resolveAppPath, s as segmentsToPattern, t as toViteModuleId } from './utils-Cm41AefV.mjs';
5
+ export { createFarmStorage, createStorageClient, databaseStorage, defineStorageClient, disposeStorage, driverStorage, getStorage, initStorage, libsqlStorage, localStorage, memoryStorage, mongodbStorage, mysql2Storage, mysqlStorage, netlifyBlobsStorage, pgStorage, pgliteStorage, planetscaleStorage, postgresStorage, redisStorage, resolveStorageRuntimeClient, s3Storage, sqliteStorage, upstashStorage, vercelBlobStorage, vercelKVStorage } from './storage.mjs';
6
+ export { CacheKeyFactory, DefinedCacheKey, FarmCacheAdapter, FarmCacheEntry, FarmCacheInvalidationTarget, FarmCacheOptions, FarmCacheSetOptions, FarmCacheStorage, FarmCacheUserConfig, FarmDataCache, GetFarmCacheEntryOptions, InferCacheKeyData, RevalidateTagProfile, RouteDataCacheKey, StorageFarmCacheAdapterOptions, applyFarmCacheInvalidationTargets, applyFarmCacheInvalidations, configureFarmCache, createFarmCacheKey, createPathCacheTag, createRouteDataCacheKey, createRouteDataCacheTag, defineCacheKey, getFarmDataCache, invalidate, invalidateRouteData, normalizeRevalidatePath, revalidatePath, revalidateTag, storageCacheAdapter, unstable_cache, updateTag } from './cache.mjs';
7
+ export { AfterCallback, FarmAfterPlatformContext, _runWithAfterNodeResponse, _runWithAfterRequest, _withAfterNodeMiddleware, after } from './after.mjs';
8
+ export { FARM_SERVER_QUERY_SYMBOL, ServerQuery, ServerQueryKey, ServerQueryOptions, ServerQueryOutputOptions, ServerQueryStaleTime, createServerQuery } from './server-query.mjs';
9
+ import { ViteDevServer } from 'vite';
10
+ export { g as getCurrentRequest } from './request-Dsq4kGW0.mjs';
11
+ export { DEFAULT_SERVER_ACTION_BODY_SIZE_LIMIT, FarmServerActionsConfig, PreparedServerActionRequest, ResolvedFarmServerActionsConfig, SanitizedServerActionError, ServerActionRequestError, ServerActionRequestKind, createServerActionRequestErrorResponse, getServerActionExecutionContext, getServerActionInvalidations, getServerActionSignal, prepareServerActionRequest, resolveServerActionsConfig, runWithServerActionRequest, sanitizeServerActionError, validateServerActionRequest } from './server-action-security.mjs';
12
+ export { FarmEnvironment, FarmEnvironmentError, FarmIsomorphicFnOptions, createClientOnlyFn, createIsomorphicFn, createServerOnlyFn } from './environment.mjs';
13
+ export { F as FarmStorageBuiltinDriverConfig, a as FarmStorageClient, b as FarmStorageClientConfig, c as FarmStorageConfigObject, d as FarmStorageCustomDriverConfig, e as FarmStorageDatabaseConfig, f as FarmStorageDatabaseDriverName, g as FarmStorageLocalDriverConfig, i as FarmStorageMountConfig, j as FarmStorageMounts, h as FarmStorageRuntimeClient, k as FarmStorageUserConfig } from './types-D1A6-XvH.mjs';
14
+ export { BuiltinDriverName, BuiltinDriverOptions, Driver, Storage, StorageMeta, StorageValue, TransactionOptions } from 'unstorage';
15
+ export { ConnectorName, ConnectorOptions, Database } from 'db0';
16
+ import './types-C9N-nk5R.mjs';
17
+ import '@farming-labs/docs';
18
+ import './markdown.mjs';
19
+ import './workflows.mjs';
20
+ import './cron.mjs';
21
+ import './image-config-Duob7wER.mjs';
22
+ import './routes.mjs';
23
+ import './route-runtime-DoOHzCAD.mjs';
24
+ import 'react';
25
+ import './metadata-DacXbnLA.mjs';
26
+ import './types-BMxWr97v.mjs';
27
+ import './runtime-Cxpq6xZN.mjs';
28
+ import './resolver-DJqjLMg_.mjs';
29
+ import './plugin-BJDf43dc.mjs';
30
+ import 'http';
31
+ import './integration-api-CHT2OKAf.mjs';
32
+ import '@farming-labs/orm';
33
+ import './observability.mjs';
34
+ import './env.mjs';
35
+ import 'node:http';
36
+ import './server-fn.mjs';
37
+
38
+ declare const DEFAULT_FARM_DEV_SERVER_PORT = 3000;
39
+ /**
40
+ * Create a Vite development server with Farm.js integration
41
+ */
42
+ declare function createServer(config?: FarmConfig): Promise<ViteDevServer>;
43
+ /**
44
+ * Start the development server
45
+ */
46
+ declare function startDevServer(config?: FarmConfig, port?: number): Promise<ViteDevServer>;
47
+
48
+ export { DEFAULT_FARM_DEV_SERVER_PORT, FarmConfig, createServer, startDevServer };
@@ -0,0 +1,48 @@
1
+ export { F as FarmApp, R as RouteManager, S as ServerRenderer, c as createFarmApp } from './app-xltejvLY.js';
2
+ import { F as FarmConfig } from './client-plugins-DU9oMspX.js';
3
+ export { B as BuildOptions, o as ErrorBoundary, E as ErrorProps, h as FarmAppContext, g as FarmContextFactory, e as FarmContextFactoryInput, A as FarmLayerEntry, H as FarmLayerResolution, a as FarmMigrationCommand, b as FarmMigrationsConfig, c as FarmMigrationsUserConfig, t as FarmRequest, u as FarmResponse, D as FarmSourceRoot, m as Layout, r as LayoutModule, k as LayoutProps, n as Loading, L as LoadingProps, s as Metadata, M as MiddlewareProps, N as NitroPreset, l as Page, i as PageProps, j as PagePropsWithMiddleware, x as ParsedRoute, P as PluginContextProps, G as ResolveFarmLayersOptions, C as ResolvedFarmLayer, R as ResolvedFarmMigrationsConfig, p as RouteModule, w as RouteSegment, z as SSGCollectionResult, y as SSGPage, v as ServerAction, q as StaticPathParams, S as StaticPathPrimitive, d as defineConfig, f as farmPlugin, K as getFarmAppDirectories, O as getFarmLayerAliases, J as getFarmSourceRoots, Q as loadFarmConfigFile, I as resolveFarmLayers } from './client-plugins-DU9oMspX.js';
4
+ export { f as fileExists, g as globFiles, l as logger, m as matchRoute, p as parseRoutePath, a as parseSearchParams, r as resolveAppPath, s as segmentsToPattern, t as toViteModuleId } from './utils-B-cUHwoK.js';
5
+ export { createFarmStorage, createStorageClient, databaseStorage, defineStorageClient, disposeStorage, driverStorage, getStorage, initStorage, libsqlStorage, localStorage, memoryStorage, mongodbStorage, mysql2Storage, mysqlStorage, netlifyBlobsStorage, pgStorage, pgliteStorage, planetscaleStorage, postgresStorage, redisStorage, resolveStorageRuntimeClient, s3Storage, sqliteStorage, upstashStorage, vercelBlobStorage, vercelKVStorage } from './storage.js';
6
+ export { CacheKeyFactory, DefinedCacheKey, FarmCacheAdapter, FarmCacheEntry, FarmCacheInvalidationTarget, FarmCacheOptions, FarmCacheSetOptions, FarmCacheStorage, FarmCacheUserConfig, FarmDataCache, GetFarmCacheEntryOptions, InferCacheKeyData, RevalidateTagProfile, RouteDataCacheKey, StorageFarmCacheAdapterOptions, applyFarmCacheInvalidationTargets, applyFarmCacheInvalidations, configureFarmCache, createFarmCacheKey, createPathCacheTag, createRouteDataCacheKey, createRouteDataCacheTag, defineCacheKey, getFarmDataCache, invalidate, invalidateRouteData, normalizeRevalidatePath, revalidatePath, revalidateTag, storageCacheAdapter, unstable_cache, updateTag } from './cache.js';
7
+ export { AfterCallback, FarmAfterPlatformContext, _runWithAfterNodeResponse, _runWithAfterRequest, _withAfterNodeMiddleware, after } from './after.js';
8
+ export { FARM_SERVER_QUERY_SYMBOL, ServerQuery, ServerQueryKey, ServerQueryOptions, ServerQueryOutputOptions, ServerQueryStaleTime, createServerQuery } from './server-query.js';
9
+ import { ViteDevServer } from 'vite';
10
+ export { g as getCurrentRequest } from './request-udtobOLv.js';
11
+ export { DEFAULT_SERVER_ACTION_BODY_SIZE_LIMIT, FarmServerActionsConfig, PreparedServerActionRequest, ResolvedFarmServerActionsConfig, SanitizedServerActionError, ServerActionRequestError, ServerActionRequestKind, createServerActionRequestErrorResponse, getServerActionExecutionContext, getServerActionInvalidations, getServerActionSignal, prepareServerActionRequest, resolveServerActionsConfig, runWithServerActionRequest, sanitizeServerActionError, validateServerActionRequest } from './server-action-security.js';
12
+ export { FarmEnvironment, FarmEnvironmentError, FarmIsomorphicFnOptions, createClientOnlyFn, createIsomorphicFn, createServerOnlyFn } from './environment.js';
13
+ export { F as FarmStorageBuiltinDriverConfig, a as FarmStorageClient, b as FarmStorageClientConfig, c as FarmStorageConfigObject, d as FarmStorageCustomDriverConfig, e as FarmStorageDatabaseConfig, f as FarmStorageDatabaseDriverName, g as FarmStorageLocalDriverConfig, i as FarmStorageMountConfig, j as FarmStorageMounts, h as FarmStorageRuntimeClient, k as FarmStorageUserConfig } from './types-D1A6-XvH.js';
14
+ export { BuiltinDriverName, BuiltinDriverOptions, Driver, Storage, StorageMeta, StorageValue, TransactionOptions } from 'unstorage';
15
+ export { ConnectorName, ConnectorOptions, Database } from 'db0';
16
+ import './types-C9N-nk5R.js';
17
+ import '@farming-labs/docs';
18
+ import './markdown.js';
19
+ import './workflows.js';
20
+ import './cron.js';
21
+ import './image-config-Duob7wER.js';
22
+ import './routes.js';
23
+ import './route-runtime-DoOHzCAD.js';
24
+ import 'react';
25
+ import './metadata-Cm9ujH4I.js';
26
+ import './types-BMxWr97v.js';
27
+ import './runtime-bv63eUiO.js';
28
+ import './resolver-IH4RmPEl.js';
29
+ import './plugin-BJDf43dc.js';
30
+ import 'http';
31
+ import './integration-api-CHT2OKAf.js';
32
+ import '@farming-labs/orm';
33
+ import './observability.js';
34
+ import './env.js';
35
+ import 'node:http';
36
+ import './server-fn.js';
37
+
38
+ declare const DEFAULT_FARM_DEV_SERVER_PORT = 3000;
39
+ /**
40
+ * Create a Vite development server with Farm.js integration
41
+ */
42
+ declare function createServer(config?: FarmConfig): Promise<ViteDevServer>;
43
+ /**
44
+ * Start the development server
45
+ */
46
+ declare function startDevServer(config?: FarmConfig, port?: number): Promise<ViteDevServer>;
47
+
48
+ export { DEFAULT_FARM_DEV_SERVER_PORT, FarmConfig, createServer, startDevServer };
package/dist/server.mjs CHANGED
@@ -15,12 +15,12 @@ import "./chunk-VY2UYN5R.mjs";
15
15
  import {
16
16
  loadConfig,
17
17
  resolveConfig
18
- } from "./chunk-NM3CRAAL.mjs";
18
+ } from "./chunk-B4W3BNTL.mjs";
19
19
  import "./chunk-UVCIEUJC.mjs";
20
20
  import {
21
21
  PluginManager
22
- } from "./chunk-C3DLZMBU.mjs";
23
- import "./chunk-RSKVYESE.mjs";
22
+ } from "./chunk-DJSGLHCN.mjs";
23
+ import "./chunk-RQ633A5I.mjs";
24
24
  import "./chunk-SCFX4UTD.mjs";
25
25
  import {
26
26
  FarmApp,
@@ -30,17 +30,18 @@ import {
30
30
  defineConfig,
31
31
  farmI18nClientBridgePlugin,
32
32
  farmPlugin
33
- } from "./chunk-A2LUXHD2.mjs";
33
+ } from "./chunk-4MGVSBRP.mjs";
34
34
  import "./chunk-LGHEOHBU.mjs";
35
35
  import "./chunk-FRPWCMMG.mjs";
36
36
  import {
37
37
  farmEnvironmentFunctionsPlugin
38
38
  } from "./chunk-V6WE6JSZ.mjs";
39
39
  import "./chunk-3XNTL3FQ.mjs";
40
- import "./chunk-BHG3LVHH.mjs";
40
+ import "./chunk-CGIXMLSY.mjs";
41
41
  import "./chunk-USWZZUEH.mjs";
42
42
  import "./chunk-7N62DNSO.mjs";
43
43
  import "./chunk-7HO6AEOP.mjs";
44
+ import "./chunk-I4CUBGVF.mjs";
44
45
  import {
45
46
  getFarmAppDirectories,
46
47
  getFarmLayerAliases,
@@ -64,8 +65,8 @@ import {
64
65
  sanitizeServerActionError,
65
66
  validateServerActionRequest
66
67
  } from "./chunk-UB5UOSHB.mjs";
67
- import "./chunk-LLC7BNXW.mjs";
68
- import "./chunk-QGQX7SFC.mjs";
68
+ import "./chunk-ZVWA4ZQ3.mjs";
69
+ import "./chunk-7FBJLMQH.mjs";
69
70
  import "./chunk-XIVV5IWN.mjs";
70
71
  import "./chunk-GXASWWJU.mjs";
71
72
  import "./chunk-K4667E2Q.mjs";
@@ -131,7 +132,7 @@ import {
131
132
  import "./chunk-LM2YNO4U.mjs";
132
133
  import {
133
134
  FARM_VERSION
134
- } from "./chunk-EEABSBKK.mjs";
135
+ } from "./chunk-SSA7THPX.mjs";
135
136
  import "./chunk-QTZZ2ISQ.mjs";
136
137
  import "./chunk-ITN462YM.mjs";
137
138
  import "./chunk-B232I2GP.mjs";
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/create-server.ts"],"sourcesContent":["import { createServer as createViteServer, type ViteDevServer } from \"vite\";\nimport type { FarmConfig } from \"../types\";\nimport { farmI18nClientBridgePlugin, farmPlugin } from \"../vite\";\nimport { logger } from \"../utils\";\nimport { loadConfig, resolveConfig } from \"../config\";\nimport { PluginManager } from \"../plugin\";\nimport { farmEnvironmentFunctionsPlugin } from \"../environment-vite\";\nimport fs from \"fs\";\nimport path from \"path\";\nimport {\n createRedirectsPlugin,\n createHeadersPlugin,\n createRewritesPlugin,\n createCompressionPlugin,\n createLoggerPlugin,\n} from \"../plugins\";\nimport { mergeFarmViteConfig } from \"./vite-config\";\nimport { FARM_VERSION } from \"../version\";\n\nexport const DEFAULT_FARM_DEV_SERVER_PORT = 3000;\n\n// Farm.js branding plugin for createServer\nfunction createBrandingPlugin() {\n let serverStarted = false;\n let startTime = Date.now();\n\n const getColors = () => {\n const id = (s: string) => s;\n try {\n const pc = typeof require === \"function\" ? require(\"picocolors\") : null;\n if (pc && typeof pc.createColors === \"function\") return pc.createColors(true);\n if (pc) return pc;\n } catch {}\n return {\n dim: id,\n bold: id,\n green: id,\n cyan: id,\n gray: id,\n };\n };\n\n return {\n name: \"farm:branding\",\n enforce: \"pre\" as const,\n configureServer(server: ViteDevServer) {\n startTime = Date.now();\n\n const originalListen = server.listen.bind(server);\n server.listen = async (port?: number, ...args: any[]) => {\n const result = await originalListen(port, ...args);\n if (!serverStarted) {\n serverStarted = true;\n const elapsed = Date.now() - startTime;\n const address = server.httpServer?.address();\n const resolvedPort =\n typeof address === \"object\" && address\n ? address.port\n : server.config.server.port || port || 3000;\n\n const pc = getColors();\n console.log(\"\");\n console.log(\n ` ${pc.bold(pc.green(\"Farm.js\"))} ${pc.dim(`v${FARM_VERSION}`)} ${pc.dim(`ready in ${elapsed}ms`)}`,\n );\n console.log(\"\");\n console.log(\n ` ${pc.dim(\"➜\")} ${pc.bold(\"Local:\")} ${pc.cyan(`http://localhost:${resolvedPort}/`)}`,\n );\n console.log(` ${pc.dim(\"➜\")} ${pc.bold(\"Network:\")} ${pc.dim(\"use --host to expose\")}`);\n console.log(\"\");\n }\n return result;\n };\n },\n };\n}\n\nfunction hasProjectPostcssConfig(root: string): boolean {\n const candidates = [\n \"postcss.config.js\",\n \"postcss.config.cjs\",\n \"postcss.config.mjs\",\n \"postcss.config.ts\",\n \"postcss.config.json\",\n \".postcssrc\",\n \".postcssrc.json\",\n \".postcssrc.js\",\n \".postcssrc.cjs\",\n \".postcssrc.mjs\",\n \".postcssrc.ts\",\n ];\n\n return candidates.some((file) => fs.existsSync(path.join(root, file)));\n}\n\nfunction createDevDependencyStubsPlugin() {\n const stubs: Record<string, string> = {\n \"supports-color\":\n \"const disabled = false; export default { stdout: disabled, stderr: disabled }; export const stdout = disabled; export const stderr = disabled;\",\n };\n\n return {\n name: \"farm:dev-dependency-stubs\",\n enforce: \"pre\" as const,\n resolveId(id: string) {\n if (id in stubs) {\n return `\\0farm-dev-dependency-stub:${id}`;\n }\n return null;\n },\n load(id: string) {\n if (!id.startsWith(\"\\0farm-dev-dependency-stub:\")) {\n return null;\n }\n\n const moduleName = id.slice(\"\\0farm-dev-dependency-stub:\".length);\n return stubs[moduleName] || null;\n },\n };\n}\n\n/**\n * Create a Vite development server with Farm.js integration\n */\nexport async function createServer(config: FarmConfig = {}) {\n let pluginManager: PluginManager | null = null;\n try {\n const root = config.root || process.cwd();\n\n // Load farm.config.ts if it exists\n const mode = process.env.NODE_ENV === \"production\" ? \"production\" : \"development\";\n const userConfig = await loadConfig(root, undefined, mode);\n\n const resolvedConfig = userConfig ? await resolveConfig(userConfig, mode) : null;\n\n // Initialize plugin manager\n pluginManager = new PluginManager({\n config: resolvedConfig || config,\n isDev: mode === \"development\",\n isProd: mode === \"production\",\n });\n\n // Add built-in plugins if config is available\n if (resolvedConfig) {\n const redirects = await resolvedConfig.redirects();\n const headers = await resolvedConfig.headers();\n const rewrites = await resolvedConfig.rewrites();\n\n if (redirects.length > 0) {\n pluginManager.addPlugin(createRedirectsPlugin(redirects));\n }\n\n if (headers.length > 0) {\n pluginManager.addPlugin(createHeadersPlugin(headers));\n }\n\n if (rewrites.length > 0) {\n pluginManager.addPlugin(createRewritesPlugin(rewrites));\n }\n\n // Compression is applied by production adapters. Its hook is a no-op in\n // development, so do not put every dev response through that lifecycle.\n if (resolvedConfig.compress && mode === \"production\") {\n pluginManager.addPlugin(createCompressionPlugin());\n }\n\n if (resolvedConfig.plugins) {\n pluginManager.addPlugins(resolvedConfig.plugins);\n }\n }\n\n if (mode === \"development\") {\n const hasLogger = pluginManager.getPlugins().some((p) => p.name === \"farm:logger\");\n if (!hasLogger) {\n pluginManager.addPlugin(createLoggerPlugin());\n }\n }\n\n // Run config hooks\n await pluginManager.runHookParallel(\"init\");\n\n let finalConfig = resolvedConfig || config;\n finalConfig = await pluginManager.runHookSerial(\"config\", finalConfig);\n const projectRoot = finalConfig.root || process.cwd();\n\n let tailwindVitePlugin: any = undefined;\n const shouldUseProjectPostcss = hasProjectPostcssConfig(projectRoot);\n if (shouldUseProjectPostcss) {\n logger.info(\"📦 Using project PostCSS/Tailwind configuration\");\n } else {\n try {\n const tailwindcss = (await import(\"@tailwindcss/vite\")).default;\n tailwindVitePlugin = tailwindcss();\n logger.info(\"📦 Enabled built-in Tailwind support (@tailwindcss/vite)\");\n } catch (error) {\n logger.warn(\n `Tailwind plugin auto-enable failed; continuing without it: ${(error as Error).message}`,\n );\n }\n }\n\n const server = await createViteServer(\n mergeFarmViteConfig(\n {\n root: projectRoot,\n css: shouldUseProjectPostcss ? undefined : { postcss: { plugins: [] } },\n plugins: [\n ...(tailwindVitePlugin ? [tailwindVitePlugin] : []),\n createDevDependencyStubsPlugin(),\n farmI18nClientBridgePlugin(),\n farmPlugin(finalConfig, pluginManager),\n farmEnvironmentFunctionsPlugin(),\n createBrandingPlugin(),\n ],\n server: {\n middlewareMode: false,\n port: DEFAULT_FARM_DEV_SERVER_PORT,\n strictPort: true,\n },\n resolve: {\n // Keep framework and application modules on one React runtime.\n dedupe: [\"react\", \"react-dom\"],\n },\n optimizeDeps: {\n // Avoid Vite scanning server/native-only deps from framework internals.\n noDiscovery: true,\n include: [\n \"react\",\n \"react-dom\",\n \"react-dom/client\",\n \"react/jsx-runtime\",\n \"react/jsx-dev-runtime\",\n ],\n exclude: [\n \"@farm.js/core/server\",\n \"@farm.js/core/api\",\n \"@farm.js/core/middleware\",\n \"@farm.js/core/config\",\n \"nitro\",\n \"h3\",\n \"vite\",\n \"esbuild\",\n \"rollup\",\n \"fsevents\",\n \"nf3\",\n \"better-call\",\n \"zod\",\n \"supports-color\",\n \"node-fetch\",\n \"consola\",\n \"mock-aws-s3\",\n \"aws-sdk\",\n \"nock\",\n \"lightningcss\",\n \"@tailwindcss/oxide\",\n ],\n },\n ssr: {\n noExternal: [\"farm\"],\n },\n customLogger: {\n info: () => {},\n warn: () => {},\n warnOnce: () => {},\n error: (msg) => logger.error(String(msg)),\n clearScreen: () => {},\n hasErrorLogged: () => false,\n hasWarned: false,\n },\n },\n finalConfig.vite,\n ),\n );\n\n (server as any).__farmPluginManager = pluginManager;\n\n // Update plugin manager with vite server\n pluginManager.updateContext({ config: finalConfig, viteServer: server });\n await pluginManager.setupPlugins();\n await pluginManager.runHookParallel(\"devServerCreated\", server);\n\n // Run configResolved hooks\n await pluginManager.runHookParallel(\"configResolved\", finalConfig);\n\n // Run buildStart hooks\n await pluginManager.runHookParallel(\"buildStart\");\n\n return server;\n } catch (error) {\n if (pluginManager) {\n await pluginManager.runHookParallel(\"onError\", {\n phase: \"createServer\",\n error,\n });\n }\n logger.error(`Failed to create server: ${error}`);\n throw error;\n }\n}\n\n/**\n * Start the development server\n */\nexport async function startDevServer(config: FarmConfig = {}, port?: number) {\n const server = await createServer(config);\n await server.listen(port);\n const pluginManager = (server as any).__farmPluginManager as PluginManager | undefined;\n if (pluginManager) {\n await pluginManager.startRuntime();\n server.httpServer?.once(\"close\", () => {\n pluginManager.closeRuntime(\"dev-server-closed\").catch(() => {});\n });\n }\n // Branding is handled by farmBrandingPlugin in vite.ts\n return server;\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/server/create-server.ts"],"sourcesContent":["import { createServer as createViteServer, type ViteDevServer } from \"vite\";\nimport type { FarmConfig } from \"../types\";\nimport { farmI18nClientBridgePlugin, farmPlugin } from \"../vite\";\nimport { logger } from \"../utils\";\nimport { loadConfig, resolveConfig } from \"../config\";\nimport { PluginManager } from \"../plugin\";\nimport { farmEnvironmentFunctionsPlugin } from \"../environment-vite\";\nimport fs from \"fs\";\nimport path from \"path\";\nimport {\n createRedirectsPlugin,\n createHeadersPlugin,\n createRewritesPlugin,\n createCompressionPlugin,\n createLoggerPlugin,\n} from \"../plugins\";\nimport { mergeFarmViteConfig } from \"./vite-config\";\nimport { FARM_VERSION } from \"../version\";\n\nexport const DEFAULT_FARM_DEV_SERVER_PORT = 3000;\n\n// Farm.js branding plugin for createServer\nfunction createBrandingPlugin() {\n let serverStarted = false;\n let startTime = Date.now();\n\n const getColors = () => {\n const id = (s: string) => s;\n try {\n const pc = typeof require === \"function\" ? require(\"picocolors\") : null;\n if (pc && typeof pc.createColors === \"function\") return pc.createColors(true);\n if (pc) return pc;\n } catch {}\n return {\n dim: id,\n bold: id,\n green: id,\n cyan: id,\n gray: id,\n };\n };\n\n return {\n name: \"farm:branding\",\n enforce: \"pre\" as const,\n configureServer(server: ViteDevServer) {\n startTime = Date.now();\n\n const originalListen = server.listen.bind(server);\n server.listen = async (port?: number, ...args: any[]) => {\n const result = await originalListen(port, ...args);\n if (!serverStarted) {\n serverStarted = true;\n const elapsed = Date.now() - startTime;\n const address = server.httpServer?.address();\n const resolvedPort =\n typeof address === \"object\" && address\n ? address.port\n : server.config.server.port || port || 3000;\n\n const pc = getColors();\n console.log(\"\");\n console.log(\n ` ${pc.bold(pc.green(\"Farm.js\"))} ${pc.dim(`v${FARM_VERSION}`)} ${pc.dim(`ready in ${elapsed}ms`)}`,\n );\n console.log(\"\");\n console.log(\n ` ${pc.dim(\"➜\")} ${pc.bold(\"Local:\")} ${pc.cyan(`http://localhost:${resolvedPort}/`)}`,\n );\n console.log(` ${pc.dim(\"➜\")} ${pc.bold(\"Network:\")} ${pc.dim(\"use --host to expose\")}`);\n console.log(\"\");\n }\n return result;\n };\n },\n };\n}\n\nfunction hasProjectPostcssConfig(root: string): boolean {\n const candidates = [\n \"postcss.config.js\",\n \"postcss.config.cjs\",\n \"postcss.config.mjs\",\n \"postcss.config.ts\",\n \"postcss.config.json\",\n \".postcssrc\",\n \".postcssrc.json\",\n \".postcssrc.js\",\n \".postcssrc.cjs\",\n \".postcssrc.mjs\",\n \".postcssrc.ts\",\n ];\n\n return candidates.some((file) => fs.existsSync(path.join(root, file)));\n}\n\nfunction createDevDependencyStubsPlugin() {\n const stubs: Record<string, string> = {\n \"supports-color\":\n \"const disabled = false; export default { stdout: disabled, stderr: disabled }; export const stdout = disabled; export const stderr = disabled;\",\n };\n\n return {\n name: \"farm:dev-dependency-stubs\",\n enforce: \"pre\" as const,\n resolveId(id: string) {\n if (id in stubs) {\n return `\\0farm-dev-dependency-stub:${id}`;\n }\n return null;\n },\n load(id: string) {\n if (!id.startsWith(\"\\0farm-dev-dependency-stub:\")) {\n return null;\n }\n\n const moduleName = id.slice(\"\\0farm-dev-dependency-stub:\".length);\n return stubs[moduleName] || null;\n },\n };\n}\n\n/**\n * Create a Vite development server with Farm.js integration\n */\nexport async function createServer(config: FarmConfig = {}) {\n let pluginManager: PluginManager | null = null;\n try {\n const root = config.root || process.cwd();\n\n // Load farm.config.ts if it exists\n const mode = process.env.NODE_ENV === \"production\" ? \"production\" : \"development\";\n const userConfig = await loadConfig(root, undefined, mode);\n\n const resolvedConfig = userConfig ? await resolveConfig(userConfig, mode) : null;\n\n // Initialize plugin manager\n pluginManager = new PluginManager({\n config: resolvedConfig || config,\n isDev: mode === \"development\",\n isProd: mode === \"production\",\n });\n\n // Add built-in plugins if config is available\n if (resolvedConfig) {\n const redirects = await resolvedConfig.redirects();\n const headers = await resolvedConfig.headers();\n const rewrites = await resolvedConfig.rewrites();\n\n if (redirects.length > 0) {\n pluginManager.addPlugin(createRedirectsPlugin(redirects));\n }\n\n if (headers.length > 0) {\n pluginManager.addPlugin(createHeadersPlugin(headers));\n }\n\n if (rewrites.length > 0) {\n pluginManager.addPlugin(createRewritesPlugin(rewrites));\n }\n\n // Compression is applied by production adapters. Its hook is a no-op in\n // development, so do not put every dev response through that lifecycle.\n if (resolvedConfig.compress && mode === \"production\") {\n pluginManager.addPlugin(createCompressionPlugin());\n }\n\n if (resolvedConfig.plugins) {\n pluginManager.addPlugins(resolvedConfig.plugins);\n }\n }\n\n if (mode === \"development\") {\n const hasLogger = pluginManager.getPlugins().some((p) => p.name === \"farm:logger\");\n if (!hasLogger) {\n pluginManager.addPlugin(createLoggerPlugin());\n }\n }\n\n // Run config hooks\n await pluginManager.runHookParallel(\"init\");\n\n let finalConfig = resolvedConfig || config;\n finalConfig = await pluginManager.runHookSerial(\"config\", finalConfig);\n const projectRoot = finalConfig.root || process.cwd();\n\n let tailwindVitePlugin: any = undefined;\n const shouldUseProjectPostcss = hasProjectPostcssConfig(projectRoot);\n if (shouldUseProjectPostcss) {\n logger.info(\"📦 Using project PostCSS/Tailwind configuration\");\n } else {\n try {\n const tailwindcss = (await import(\"@tailwindcss/vite\")).default;\n tailwindVitePlugin = tailwindcss();\n logger.info(\"📦 Enabled built-in Tailwind support (@tailwindcss/vite)\");\n } catch (error) {\n logger.warn(\n `Tailwind plugin auto-enable failed; continuing without it: ${(error as Error).message}`,\n );\n }\n }\n\n const server = await createViteServer(\n mergeFarmViteConfig(\n {\n root: projectRoot,\n css: shouldUseProjectPostcss ? undefined : { postcss: { plugins: [] } },\n plugins: [\n ...(tailwindVitePlugin ? [tailwindVitePlugin] : []),\n createDevDependencyStubsPlugin(),\n farmI18nClientBridgePlugin(),\n farmPlugin(finalConfig, pluginManager),\n farmEnvironmentFunctionsPlugin(),\n createBrandingPlugin(),\n ],\n server: {\n middlewareMode: false,\n port: DEFAULT_FARM_DEV_SERVER_PORT,\n strictPort: true,\n },\n resolve: {\n // Keep framework and application modules on one React runtime.\n dedupe: [\"react\", \"react-dom\"],\n },\n optimizeDeps: {\n // Avoid Vite scanning server/native-only deps from framework internals.\n noDiscovery: true,\n include: [\n \"react\",\n \"react-dom\",\n \"react-dom/client\",\n \"react/jsx-runtime\",\n \"react/jsx-dev-runtime\",\n ],\n exclude: [\n \"@farm.js/core/server\",\n \"@farm.js/core/api\",\n \"@farm.js/core/middleware\",\n \"@farm.js/core/config\",\n \"nitro\",\n \"h3\",\n \"vite\",\n \"esbuild\",\n \"rollup\",\n \"fsevents\",\n \"nf3\",\n \"better-call\",\n \"zod\",\n \"supports-color\",\n \"node-fetch\",\n \"consola\",\n \"mock-aws-s3\",\n \"aws-sdk\",\n \"nock\",\n \"lightningcss\",\n \"@tailwindcss/oxide\",\n ],\n },\n ssr: {\n noExternal: [\"farm\"],\n },\n customLogger: {\n info: () => {},\n warn: () => {},\n warnOnce: () => {},\n error: (msg) => logger.error(String(msg)),\n clearScreen: () => {},\n hasErrorLogged: () => false,\n hasWarned: false,\n },\n },\n finalConfig.vite,\n ),\n );\n\n (server as any).__farmPluginManager = pluginManager;\n\n // Update plugin manager with vite server\n pluginManager.updateContext({ config: finalConfig, viteServer: server });\n await pluginManager.setupPlugins();\n await pluginManager.runHookParallel(\"devServerCreated\", server);\n\n // Run configResolved hooks\n await pluginManager.runHookParallel(\"configResolved\", finalConfig);\n\n // Run buildStart hooks\n await pluginManager.runHookParallel(\"buildStart\");\n\n return server;\n } catch (error) {\n if (pluginManager) {\n await pluginManager.runHookParallel(\"onError\", {\n phase: \"createServer\",\n error,\n });\n }\n logger.error(`Failed to create server: ${error}`);\n throw error;\n }\n}\n\n/**\n * Start the development server\n */\nexport async function startDevServer(config: FarmConfig = {}, port?: number) {\n const server = await createServer(config);\n await server.listen(port);\n const pluginManager = (server as any).__farmPluginManager as PluginManager | undefined;\n if (pluginManager) {\n await pluginManager.startRuntime();\n server.httpServer?.once(\"close\", () => {\n pluginManager.closeRuntime(\"dev-server-closed\").catch(() => {});\n });\n }\n // Branding is handled by farmBrandingPlugin in vite.ts\n return server;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,gBAAgB,wBAA4C;AAOrE,OAAO,QAAQ;AACf,OAAO,UAAU;AAWV,IAAM,+BAA+B;AAG5C,SAAS,uBAAuB;AAC9B,MAAI,gBAAgB;AACpB,MAAI,YAAY,KAAK,IAAI;AAEzB,QAAM,YAAY,6BAAM;AACtB,UAAM,KAAK,wBAAC,MAAc,GAAf;AACX,QAAI;AACF,YAAM,KAAK,OAAO,cAAY,aAAa,UAAQ,YAAY,IAAI;AACnE,UAAI,MAAM,OAAO,GAAG,iBAAiB,WAAY,QAAO,GAAG,aAAa,IAAI;AAC5E,UAAI,GAAI,QAAO;AAAA,IACjB,QAAQ;AAAA,IAAC;AACT,WAAO;AAAA,MACL,KAAK;AAAA,MACL,MAAM;AAAA,MACN,OAAO;AAAA,MACP,MAAM;AAAA,MACN,MAAM;AAAA,IACR;AAAA,EACF,GAdkB;AAgBlB,SAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,gBAAgB,QAAuB;AACrC,kBAAY,KAAK,IAAI;AAErB,YAAM,iBAAiB,OAAO,OAAO,KAAK,MAAM;AAChD,aAAO,SAAS,OAAO,SAAkB,SAAgB;AACvD,cAAM,SAAS,MAAM,eAAe,MAAM,GAAG,IAAI;AACjD,YAAI,CAAC,eAAe;AAClB,0BAAgB;AAChB,gBAAM,UAAU,KAAK,IAAI,IAAI;AAC7B,gBAAM,UAAU,OAAO,YAAY,QAAQ;AAC3C,gBAAM,eACJ,OAAO,YAAY,YAAY,UAC3B,QAAQ,OACR,OAAO,OAAO,OAAO,QAAQ,QAAQ;AAE3C,gBAAM,KAAK,UAAU;AACrB,kBAAQ,IAAI,EAAE;AACd,kBAAQ;AAAA,YACN,KAAK,GAAG,KAAK,GAAG,MAAM,SAAS,CAAC,CAAC,IAAI,GAAG,IAAI,IAAI,YAAY,EAAE,CAAC,IAAI,GAAG,IAAI,YAAY,OAAO,IAAI,CAAC;AAAA,UACpG;AACA,kBAAQ,IAAI,EAAE;AACd,kBAAQ;AAAA,YACN,KAAK,GAAG,IAAI,QAAG,CAAC,KAAK,GAAG,KAAK,QAAQ,CAAC,MAAM,GAAG,KAAK,oBAAoB,YAAY,GAAG,CAAC;AAAA,UAC1F;AACA,kBAAQ,IAAI,KAAK,GAAG,IAAI,QAAG,CAAC,KAAK,GAAG,KAAK,UAAU,CAAC,IAAI,GAAG,IAAI,sBAAsB,CAAC,EAAE;AACxF,kBAAQ,IAAI,EAAE;AAAA,QAChB;AACA,eAAO;AAAA,MACT;AAAA,IACF;AAAA,EACF;AACF;AAtDS;AAwDT,SAAS,wBAAwB,MAAuB;AACtD,QAAM,aAAa;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,SAAO,WAAW,KAAK,CAAC,SAAS,GAAG,WAAW,KAAK,KAAK,MAAM,IAAI,CAAC,CAAC;AACvE;AAhBS;AAkBT,SAAS,iCAAiC;AACxC,QAAM,QAAgC;AAAA,IACpC,kBACE;AAAA,EACJ;AAEA,SAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IACT,UAAU,IAAY;AACpB,UAAI,MAAM,OAAO;AACf,eAAO,8BAA8B,EAAE;AAAA,MACzC;AACA,aAAO;AAAA,IACT;AAAA,IACA,KAAK,IAAY;AACf,UAAI,CAAC,GAAG,WAAW,6BAA6B,GAAG;AACjD,eAAO;AAAA,MACT;AAEA,YAAM,aAAa,GAAG,MAAM,8BAA8B,MAAM;AAChE,aAAO,MAAM,UAAU,KAAK;AAAA,IAC9B;AAAA,EACF;AACF;AAxBS;AA6BT,eAAsB,aAAa,SAAqB,CAAC,GAAG;AAC1D,MAAI,gBAAsC;AAC1C,MAAI;AACF,UAAM,OAAO,OAAO,QAAQ,QAAQ,IAAI;AAGxC,UAAM,OAAO,QAAQ,IAAI,aAAa,eAAe,eAAe;AACpE,UAAM,aAAa,MAAM,WAAW,MAAM,QAAW,IAAI;AAEzD,UAAM,iBAAiB,aAAa,MAAM,cAAc,YAAY,IAAI,IAAI;AAG5E,oBAAgB,IAAI,cAAc;AAAA,MAChC,QAAQ,kBAAkB;AAAA,MAC1B,OAAO,SAAS;AAAA,MAChB,QAAQ,SAAS;AAAA,IACnB,CAAC;AAGD,QAAI,gBAAgB;AAClB,YAAM,YAAY,MAAM,eAAe,UAAU;AACjD,YAAM,UAAU,MAAM,eAAe,QAAQ;AAC7C,YAAM,WAAW,MAAM,eAAe,SAAS;AAE/C,UAAI,UAAU,SAAS,GAAG;AACxB,sBAAc,UAAU,sBAAsB,SAAS,CAAC;AAAA,MAC1D;AAEA,UAAI,QAAQ,SAAS,GAAG;AACtB,sBAAc,UAAU,oBAAoB,OAAO,CAAC;AAAA,MACtD;AAEA,UAAI,SAAS,SAAS,GAAG;AACvB,sBAAc,UAAU,qBAAqB,QAAQ,CAAC;AAAA,MACxD;AAIA,UAAI,eAAe,YAAY,SAAS,cAAc;AACpD,sBAAc,UAAU,wBAAwB,CAAC;AAAA,MACnD;AAEA,UAAI,eAAe,SAAS;AAC1B,sBAAc,WAAW,eAAe,OAAO;AAAA,MACjD;AAAA,IACF;AAEA,QAAI,SAAS,eAAe;AAC1B,YAAM,YAAY,cAAc,WAAW,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,aAAa;AACjF,UAAI,CAAC,WAAW;AACd,sBAAc,UAAU,mBAAmB,CAAC;AAAA,MAC9C;AAAA,IACF;AAGA,UAAM,cAAc,gBAAgB,MAAM;AAE1C,QAAI,cAAc,kBAAkB;AACpC,kBAAc,MAAM,cAAc,cAAc,UAAU,WAAW;AACrE,UAAM,cAAc,YAAY,QAAQ,QAAQ,IAAI;AAEpD,QAAI,qBAA0B;AAC9B,UAAM,0BAA0B,wBAAwB,WAAW;AACnE,QAAI,yBAAyB;AAC3B,aAAO,KAAK,wDAAiD;AAAA,IAC/D,OAAO;AACL,UAAI;AACF,cAAM,eAAe,MAAM,OAAO,mBAAmB,GAAG;AACxD,6BAAqB,YAAY;AACjC,eAAO,KAAK,iEAA0D;AAAA,MACxE,SAAS,OAAO;AACd,eAAO;AAAA,UACL,8DAA+D,MAAgB,OAAO;AAAA,QACxF;AAAA,MACF;AAAA,IACF;AAEA,UAAM,SAAS,MAAM;AAAA,MACnB;AAAA,QACE;AAAA,UACE,MAAM;AAAA,UACN,KAAK,0BAA0B,SAAY,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE;AAAA,UACtE,SAAS;AAAA,YACP,GAAI,qBAAqB,CAAC,kBAAkB,IAAI,CAAC;AAAA,YACjD,+BAA+B;AAAA,YAC/B,2BAA2B;AAAA,YAC3B,WAAW,aAAa,aAAa;AAAA,YACrC,+BAA+B;AAAA,YAC/B,qBAAqB;AAAA,UACvB;AAAA,UACA,QAAQ;AAAA,YACN,gBAAgB;AAAA,YAChB,MAAM;AAAA,YACN,YAAY;AAAA,UACd;AAAA,UACA,SAAS;AAAA;AAAA,YAEP,QAAQ,CAAC,SAAS,WAAW;AAAA,UAC/B;AAAA,UACA,cAAc;AAAA;AAAA,YAEZ,aAAa;AAAA,YACb,SAAS;AAAA,cACP;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,YACF;AAAA,YACA,SAAS;AAAA,cACP;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,YACF;AAAA,UACF;AAAA,UACA,KAAK;AAAA,YACH,YAAY,CAAC,MAAM;AAAA,UACrB;AAAA,UACA,cAAc;AAAA,YACZ,MAAM,6BAAM;AAAA,YAAC,GAAP;AAAA,YACN,MAAM,6BAAM;AAAA,YAAC,GAAP;AAAA,YACN,UAAU,6BAAM;AAAA,YAAC,GAAP;AAAA,YACV,OAAO,wBAAC,QAAQ,OAAO,MAAM,OAAO,GAAG,CAAC,GAAjC;AAAA,YACP,aAAa,6BAAM;AAAA,YAAC,GAAP;AAAA,YACb,gBAAgB,6BAAM,OAAN;AAAA,YAChB,WAAW;AAAA,UACb;AAAA,QACF;AAAA,QACA,YAAY;AAAA,MACd;AAAA,IACF;AAEA,IAAC,OAAe,sBAAsB;AAGtC,kBAAc,cAAc,EAAE,QAAQ,aAAa,YAAY,OAAO,CAAC;AACvE,UAAM,cAAc,aAAa;AACjC,UAAM,cAAc,gBAAgB,oBAAoB,MAAM;AAG9D,UAAM,cAAc,gBAAgB,kBAAkB,WAAW;AAGjE,UAAM,cAAc,gBAAgB,YAAY;AAEhD,WAAO;AAAA,EACT,SAAS,OAAO;AACd,QAAI,eAAe;AACjB,YAAM,cAAc,gBAAgB,WAAW;AAAA,QAC7C,OAAO;AAAA,QACP;AAAA,MACF,CAAC;AAAA,IACH;AACA,WAAO,MAAM,4BAA4B,KAAK,EAAE;AAChD,UAAM;AAAA,EACR;AACF;AA9KsB;AAmLtB,eAAsB,eAAe,SAAqB,CAAC,GAAG,MAAe;AAC3E,QAAM,SAAS,MAAM,aAAa,MAAM;AACxC,QAAM,OAAO,OAAO,IAAI;AACxB,QAAM,gBAAiB,OAAe;AACtC,MAAI,eAAe;AACjB,UAAM,cAAc,aAAa;AACjC,WAAO,YAAY,KAAK,SAAS,MAAM;AACrC,oBAAc,aAAa,mBAAmB,EAAE,MAAM,MAAM;AAAA,MAAC,CAAC;AAAA,IAChE,CAAC;AAAA,EACH;AAEA,SAAO;AACT;AAZsB;","names":[]}
@@ -0,0 +1,52 @@
1
+ import { Driver, Storage } from 'unstorage';
2
+ export { BuiltinDriverName, BuiltinDriverOptions, Driver, Storage, StorageMeta, StorageValue, TransactionOptions } from 'unstorage';
3
+ import { Database } from 'db0';
4
+ export { ConnectorName, ConnectorOptions, Database } from 'db0';
5
+ import { a as FarmStorageClient, b as FarmStorageClientConfig, g as FarmStorageLocalDriverConfig, e as FarmStorageDatabaseConfig, k as FarmStorageUserConfig } from './types-D1A6-XvH.mjs';
6
+ export { F as FarmStorageBuiltinDriverConfig, c as FarmStorageConfigObject, d as FarmStorageCustomDriverConfig, f as FarmStorageDatabaseDriverName, i as FarmStorageMountConfig, j as FarmStorageMounts, h as FarmStorageRuntimeClient } from './types-D1A6-XvH.mjs';
7
+
8
+ type DriverResolver = () => Driver | Promise<Driver>;
9
+ declare function defineStorageClient(resolveDriver: DriverResolver): FarmStorageClient;
10
+ declare function createStorageClient(config: FarmStorageClientConfig): FarmStorageClient;
11
+ declare function driverStorage(driver: Driver | (() => Driver | Promise<Driver>)): FarmStorageClient;
12
+ declare function databaseStorage(database: Database, options?: {
13
+ tableName?: string;
14
+ }): FarmStorageClient;
15
+ declare function memoryStorage(): FarmStorageClient;
16
+ declare function localStorage(options?: Omit<FarmStorageLocalDriverConfig, "driver">): FarmStorageClient;
17
+ declare function sqliteStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
18
+ declare function mysqlStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
19
+ declare function mysql2Storage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
20
+ declare function postgresStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
21
+ declare function pgStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
22
+ declare function pgliteStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
23
+ declare function planetscaleStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
24
+ declare function libsqlStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
25
+ declare function redisStorage(options: Omit<Extract<FarmStorageClientConfig, {
26
+ driver: "redis";
27
+ }>, "driver">): FarmStorageClient;
28
+ declare function s3Storage(options: Omit<Extract<FarmStorageClientConfig, {
29
+ driver: "s3";
30
+ }>, "driver">): FarmStorageClient;
31
+ declare function mongodbStorage(options: Omit<Extract<FarmStorageClientConfig, {
32
+ driver: "mongodb";
33
+ }>, "driver">): FarmStorageClient;
34
+ declare function upstashStorage(options: Omit<Extract<FarmStorageClientConfig, {
35
+ driver: "upstash";
36
+ }>, "driver">): FarmStorageClient;
37
+ declare function netlifyBlobsStorage(options: Omit<Extract<FarmStorageClientConfig, {
38
+ driver: "netlify-blobs";
39
+ }>, "driver">): FarmStorageClient;
40
+ declare function vercelKVStorage(options: Omit<Extract<FarmStorageClientConfig, {
41
+ driver: "vercel-kv";
42
+ }>, "driver">): FarmStorageClient;
43
+ declare function vercelBlobStorage(options: Omit<Extract<FarmStorageClientConfig, {
44
+ driver: "vercel-blob";
45
+ }>, "driver">): FarmStorageClient;
46
+ declare function createFarmStorage(config?: FarmStorageUserConfig): Promise<Storage>;
47
+ declare function resolveStorageRuntimeClient(config: FarmStorageUserConfig | undefined): Promise<unknown | undefined>;
48
+ declare function initStorage(config?: FarmStorageUserConfig): Promise<Storage>;
49
+ declare function getStorage(namespace?: string): Storage;
50
+ declare function disposeStorage(): Promise<void>;
51
+
52
+ export { FarmStorageClient, FarmStorageClientConfig, FarmStorageDatabaseConfig, FarmStorageLocalDriverConfig, FarmStorageUserConfig, createFarmStorage, createStorageClient, databaseStorage, defineStorageClient, disposeStorage, driverStorage, getStorage, initStorage, libsqlStorage, localStorage, memoryStorage, mongodbStorage, mysql2Storage, mysqlStorage, netlifyBlobsStorage, pgStorage, pgliteStorage, planetscaleStorage, postgresStorage, redisStorage, resolveStorageRuntimeClient, s3Storage, sqliteStorage, upstashStorage, vercelBlobStorage, vercelKVStorage };
@@ -0,0 +1,52 @@
1
+ import { Driver, Storage } from 'unstorage';
2
+ export { BuiltinDriverName, BuiltinDriverOptions, Driver, Storage, StorageMeta, StorageValue, TransactionOptions } from 'unstorage';
3
+ import { Database } from 'db0';
4
+ export { ConnectorName, ConnectorOptions, Database } from 'db0';
5
+ import { a as FarmStorageClient, b as FarmStorageClientConfig, g as FarmStorageLocalDriverConfig, e as FarmStorageDatabaseConfig, k as FarmStorageUserConfig } from './types-D1A6-XvH.js';
6
+ export { F as FarmStorageBuiltinDriverConfig, c as FarmStorageConfigObject, d as FarmStorageCustomDriverConfig, f as FarmStorageDatabaseDriverName, i as FarmStorageMountConfig, j as FarmStorageMounts, h as FarmStorageRuntimeClient } from './types-D1A6-XvH.js';
7
+
8
+ type DriverResolver = () => Driver | Promise<Driver>;
9
+ declare function defineStorageClient(resolveDriver: DriverResolver): FarmStorageClient;
10
+ declare function createStorageClient(config: FarmStorageClientConfig): FarmStorageClient;
11
+ declare function driverStorage(driver: Driver | (() => Driver | Promise<Driver>)): FarmStorageClient;
12
+ declare function databaseStorage(database: Database, options?: {
13
+ tableName?: string;
14
+ }): FarmStorageClient;
15
+ declare function memoryStorage(): FarmStorageClient;
16
+ declare function localStorage(options?: Omit<FarmStorageLocalDriverConfig, "driver">): FarmStorageClient;
17
+ declare function sqliteStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
18
+ declare function mysqlStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
19
+ declare function mysql2Storage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
20
+ declare function postgresStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
21
+ declare function pgStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
22
+ declare function pgliteStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
23
+ declare function planetscaleStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
24
+ declare function libsqlStorage(options: Omit<FarmStorageDatabaseConfig, "driver">): FarmStorageClient;
25
+ declare function redisStorage(options: Omit<Extract<FarmStorageClientConfig, {
26
+ driver: "redis";
27
+ }>, "driver">): FarmStorageClient;
28
+ declare function s3Storage(options: Omit<Extract<FarmStorageClientConfig, {
29
+ driver: "s3";
30
+ }>, "driver">): FarmStorageClient;
31
+ declare function mongodbStorage(options: Omit<Extract<FarmStorageClientConfig, {
32
+ driver: "mongodb";
33
+ }>, "driver">): FarmStorageClient;
34
+ declare function upstashStorage(options: Omit<Extract<FarmStorageClientConfig, {
35
+ driver: "upstash";
36
+ }>, "driver">): FarmStorageClient;
37
+ declare function netlifyBlobsStorage(options: Omit<Extract<FarmStorageClientConfig, {
38
+ driver: "netlify-blobs";
39
+ }>, "driver">): FarmStorageClient;
40
+ declare function vercelKVStorage(options: Omit<Extract<FarmStorageClientConfig, {
41
+ driver: "vercel-kv";
42
+ }>, "driver">): FarmStorageClient;
43
+ declare function vercelBlobStorage(options: Omit<Extract<FarmStorageClientConfig, {
44
+ driver: "vercel-blob";
45
+ }>, "driver">): FarmStorageClient;
46
+ declare function createFarmStorage(config?: FarmStorageUserConfig): Promise<Storage>;
47
+ declare function resolveStorageRuntimeClient(config: FarmStorageUserConfig | undefined): Promise<unknown | undefined>;
48
+ declare function initStorage(config?: FarmStorageUserConfig): Promise<Storage>;
49
+ declare function getStorage(namespace?: string): Storage;
50
+ declare function disposeStorage(): Promise<void>;
51
+
52
+ export { FarmStorageClient, FarmStorageClientConfig, FarmStorageDatabaseConfig, FarmStorageLocalDriverConfig, FarmStorageUserConfig, createFarmStorage, createStorageClient, databaseStorage, defineStorageClient, disposeStorage, driverStorage, getStorage, initStorage, libsqlStorage, localStorage, memoryStorage, mongodbStorage, mysql2Storage, mysqlStorage, netlifyBlobsStorage, pgStorage, pgliteStorage, planetscaleStorage, postgresStorage, redisStorage, resolveStorageRuntimeClient, s3Storage, sqliteStorage, upstashStorage, vercelBlobStorage, vercelKVStorage };
@@ -0,0 +1,101 @@
1
+ import { ReactElement } from 'react';
2
+ import './types-BMxWr97v.mjs';
3
+ import { b as APIRouteParams } from './runtime-9nQjVM7X.mjs';
4
+ import { ProgrammaticPageRoute, InferProgrammaticRouteData, ProgrammaticRouteComponentProps, ProgrammaticApiRoute } from './routes.mjs';
5
+ import { FarmRouterQueryValue, FarmRouterPathParams } from './router.mjs';
6
+ import { ServerFn } from './server-fn.mjs';
7
+ import { g as FarmContextFactory, M as MiddlewareProps, P as PluginContextProps, p as RouteModule } from './client-plugins-BI2R6Eae.mjs';
8
+ import './cache.mjs';
9
+ import './transport-BmbGTXA5.mjs';
10
+ import './route-runtime-DoOHzCAD.mjs';
11
+ import './plugin-BJDf43dc.mjs';
12
+ import 'http';
13
+ import './types-D1A6-XvH.mjs';
14
+ import 'db0';
15
+ import 'unstorage';
16
+ import './integration-api-CHT2OKAf.mjs';
17
+ import '@farming-labs/orm';
18
+ import './types-C9N-nk5R.mjs';
19
+ import '@farming-labs/docs';
20
+ import './markdown.mjs';
21
+ import './observability.mjs';
22
+ import 'vite';
23
+ import './workflows.mjs';
24
+ import './cron.mjs';
25
+ import './env.mjs';
26
+ import './server-action-security.mjs';
27
+ import './image-config-Duob7wER.mjs';
28
+
29
+ type FarmTestQuery = URLSearchParams | Record<string, FarmRouterQueryValue>;
30
+ type FarmTestPathParams = FarmRouterPathParams;
31
+ type FarmTestFormValues = Record<string, FormDataEntryValue | readonly FormDataEntryValue[]>;
32
+ interface FarmTestRequestOptions extends Omit<RequestInit, "body" | "headers"> {
33
+ origin?: string;
34
+ headers?: HeadersInit;
35
+ query?: FarmTestQuery;
36
+ cookies?: Record<string, string>;
37
+ json?: unknown;
38
+ form?: FormData | FarmTestFormValues;
39
+ body?: BodyInit | null;
40
+ }
41
+ interface FarmTestHarnessOptions<TContext = unknown> {
42
+ origin?: string;
43
+ headers?: HeadersInit;
44
+ cookies?: Record<string, string>;
45
+ context?: FarmContextFactory<TContext>;
46
+ }
47
+ type AnyProgrammaticPageRoute = ProgrammaticPageRoute<any, any, any, any>;
48
+ type InferFarmTestRouteParams<TRoute> = TRoute extends ProgrammaticPageRoute<infer TParams, any, any, any> ? TParams : never;
49
+ type InferFarmTestRouteSearch<TRoute> = TRoute extends ProgrammaticPageRoute<any, infer TSearch, any, any> ? TSearch : never;
50
+ type InferFarmTestRouteData<TRoute> = TRoute extends ProgrammaticPageRoute<any, any, infer TDataHooks, any> ? InferProgrammaticRouteData<TDataHooks> : never;
51
+ type FarmTestRouteProps<TRoute extends AnyProgrammaticPageRoute> = ProgrammaticRouteComponentProps<InferFarmTestRouteParams<TRoute>, InferFarmTestRouteSearch<TRoute>, InferFarmTestRouteData<TRoute>>;
52
+ type FarmTestRouteParamsInput<TRoute> = InferFarmTestRouteParams<TRoute> extends Record<string, unknown> ? Partial<InferFarmTestRouteParams<TRoute>> : FarmTestPathParams;
53
+ type FarmTestRouteSearchInput<TRoute> = InferFarmTestRouteSearch<TRoute> extends Record<string, unknown> ? Partial<InferFarmTestRouteSearch<TRoute>> | URLSearchParams : FarmTestQuery;
54
+ interface FarmTestRouteOptions<TRoute extends AnyProgrammaticPageRoute, TContext = unknown> extends Pick<FarmTestRequestOptions, "origin" | "headers" | "cookies" | "signal"> {
55
+ path?: string | URL;
56
+ params?: FarmTestRouteParamsInput<TRoute>;
57
+ search?: FarmTestRouteSearchInput<TRoute>;
58
+ context?: TContext;
59
+ middleware?: MiddlewareProps;
60
+ pluginContext?: PluginContextProps;
61
+ }
62
+ interface FarmTestRouteResult<TRoute extends AnyProgrammaticPageRoute> {
63
+ route: TRoute;
64
+ module: RouteModule;
65
+ request: Request;
66
+ props: FarmTestRouteProps<TRoute>;
67
+ element: ReactElement;
68
+ canonicalPath?: string;
69
+ }
70
+ interface FarmTestApiOptions extends FarmTestRequestOptions {
71
+ path?: string | URL;
72
+ params?: FarmTestPathParams;
73
+ throwOnError?: boolean;
74
+ }
75
+ interface FarmTestEndpointOptions extends FarmTestRequestOptions {
76
+ path?: string | URL;
77
+ params?: APIRouteParams;
78
+ throwOnError?: boolean;
79
+ }
80
+ interface FarmTestServerFnOptions extends Pick<FarmTestRequestOptions, "origin" | "headers" | "cookies" | "signal"> {
81
+ path?: string | URL;
82
+ request?: Request;
83
+ }
84
+ type FarmTestServerFnArguments<TInput> = [unknown] extends [TInput] ? [input?: TInput | FormData, options?: FarmTestServerFnOptions] : [input: TInput | FormData, options?: FarmTestServerFnOptions];
85
+ interface FarmTestHarness<TContext = unknown> {
86
+ request(path?: string | URL, options?: FarmTestRequestOptions): Request;
87
+ route<TRoute extends AnyProgrammaticPageRoute>(route: TRoute, options?: FarmTestRouteOptions<TRoute, TContext>): Promise<FarmTestRouteResult<TRoute>>;
88
+ api(route: ProgrammaticApiRoute, options?: FarmTestApiOptions): Promise<Response>;
89
+ endpoint(endpoint: unknown, options?: FarmTestEndpointOptions): Promise<Response>;
90
+ serverFn<TInput, TResult>(serverFn: ServerFn<TInput, TResult>, ...args: FarmTestServerFnArguments<TInput>): Promise<TResult>;
91
+ clearCache(): void;
92
+ }
93
+ /** Create a deterministic Web Request without depending on a test runner. */
94
+ declare function createTestRequest(path?: string | URL, options?: FarmTestRequestOptions): Request;
95
+ /**
96
+ * Create test helpers that exercise Farm's real route, API, and server-function runtimes.
97
+ * The harness has no dependency on Vitest, Jest, or a DOM environment.
98
+ */
99
+ declare function createFarmTestHarness<TContext = unknown>(options?: FarmTestHarnessOptions<TContext>): FarmTestHarness<TContext>;
100
+
101
+ export { type FarmTestApiOptions, type FarmTestEndpointOptions, type FarmTestFormValues, type FarmTestHarness, type FarmTestHarnessOptions, type FarmTestPathParams, type FarmTestQuery, type FarmTestRequestOptions, type FarmTestRouteOptions, type FarmTestRouteProps, type FarmTestRouteResult, type FarmTestServerFnArguments, type FarmTestServerFnOptions, type InferFarmTestRouteData, type InferFarmTestRouteParams, type InferFarmTestRouteSearch, createFarmTestHarness, createTestRequest };
@@ -0,0 +1,101 @@
1
+ import { ReactElement } from 'react';
2
+ import './types-BMxWr97v.js';
3
+ import { b as APIRouteParams } from './runtime-DgeS2skB.js';
4
+ import { ProgrammaticPageRoute, InferProgrammaticRouteData, ProgrammaticRouteComponentProps, ProgrammaticApiRoute } from './routes.js';
5
+ import { FarmRouterQueryValue, FarmRouterPathParams } from './router.js';
6
+ import { ServerFn } from './server-fn.js';
7
+ import { g as FarmContextFactory, M as MiddlewareProps, P as PluginContextProps, p as RouteModule } from './client-plugins-DU9oMspX.js';
8
+ import './cache.js';
9
+ import './transport-BmbGTXA5.js';
10
+ import './route-runtime-DoOHzCAD.js';
11
+ import './plugin-BJDf43dc.js';
12
+ import 'http';
13
+ import './types-D1A6-XvH.js';
14
+ import 'db0';
15
+ import 'unstorage';
16
+ import './integration-api-CHT2OKAf.js';
17
+ import '@farming-labs/orm';
18
+ import './types-C9N-nk5R.js';
19
+ import '@farming-labs/docs';
20
+ import './markdown.js';
21
+ import './observability.js';
22
+ import 'vite';
23
+ import './workflows.js';
24
+ import './cron.js';
25
+ import './env.js';
26
+ import './server-action-security.js';
27
+ import './image-config-Duob7wER.js';
28
+
29
+ type FarmTestQuery = URLSearchParams | Record<string, FarmRouterQueryValue>;
30
+ type FarmTestPathParams = FarmRouterPathParams;
31
+ type FarmTestFormValues = Record<string, FormDataEntryValue | readonly FormDataEntryValue[]>;
32
+ interface FarmTestRequestOptions extends Omit<RequestInit, "body" | "headers"> {
33
+ origin?: string;
34
+ headers?: HeadersInit;
35
+ query?: FarmTestQuery;
36
+ cookies?: Record<string, string>;
37
+ json?: unknown;
38
+ form?: FormData | FarmTestFormValues;
39
+ body?: BodyInit | null;
40
+ }
41
+ interface FarmTestHarnessOptions<TContext = unknown> {
42
+ origin?: string;
43
+ headers?: HeadersInit;
44
+ cookies?: Record<string, string>;
45
+ context?: FarmContextFactory<TContext>;
46
+ }
47
+ type AnyProgrammaticPageRoute = ProgrammaticPageRoute<any, any, any, any>;
48
+ type InferFarmTestRouteParams<TRoute> = TRoute extends ProgrammaticPageRoute<infer TParams, any, any, any> ? TParams : never;
49
+ type InferFarmTestRouteSearch<TRoute> = TRoute extends ProgrammaticPageRoute<any, infer TSearch, any, any> ? TSearch : never;
50
+ type InferFarmTestRouteData<TRoute> = TRoute extends ProgrammaticPageRoute<any, any, infer TDataHooks, any> ? InferProgrammaticRouteData<TDataHooks> : never;
51
+ type FarmTestRouteProps<TRoute extends AnyProgrammaticPageRoute> = ProgrammaticRouteComponentProps<InferFarmTestRouteParams<TRoute>, InferFarmTestRouteSearch<TRoute>, InferFarmTestRouteData<TRoute>>;
52
+ type FarmTestRouteParamsInput<TRoute> = InferFarmTestRouteParams<TRoute> extends Record<string, unknown> ? Partial<InferFarmTestRouteParams<TRoute>> : FarmTestPathParams;
53
+ type FarmTestRouteSearchInput<TRoute> = InferFarmTestRouteSearch<TRoute> extends Record<string, unknown> ? Partial<InferFarmTestRouteSearch<TRoute>> | URLSearchParams : FarmTestQuery;
54
+ interface FarmTestRouteOptions<TRoute extends AnyProgrammaticPageRoute, TContext = unknown> extends Pick<FarmTestRequestOptions, "origin" | "headers" | "cookies" | "signal"> {
55
+ path?: string | URL;
56
+ params?: FarmTestRouteParamsInput<TRoute>;
57
+ search?: FarmTestRouteSearchInput<TRoute>;
58
+ context?: TContext;
59
+ middleware?: MiddlewareProps;
60
+ pluginContext?: PluginContextProps;
61
+ }
62
+ interface FarmTestRouteResult<TRoute extends AnyProgrammaticPageRoute> {
63
+ route: TRoute;
64
+ module: RouteModule;
65
+ request: Request;
66
+ props: FarmTestRouteProps<TRoute>;
67
+ element: ReactElement;
68
+ canonicalPath?: string;
69
+ }
70
+ interface FarmTestApiOptions extends FarmTestRequestOptions {
71
+ path?: string | URL;
72
+ params?: FarmTestPathParams;
73
+ throwOnError?: boolean;
74
+ }
75
+ interface FarmTestEndpointOptions extends FarmTestRequestOptions {
76
+ path?: string | URL;
77
+ params?: APIRouteParams;
78
+ throwOnError?: boolean;
79
+ }
80
+ interface FarmTestServerFnOptions extends Pick<FarmTestRequestOptions, "origin" | "headers" | "cookies" | "signal"> {
81
+ path?: string | URL;
82
+ request?: Request;
83
+ }
84
+ type FarmTestServerFnArguments<TInput> = [unknown] extends [TInput] ? [input?: TInput | FormData, options?: FarmTestServerFnOptions] : [input: TInput | FormData, options?: FarmTestServerFnOptions];
85
+ interface FarmTestHarness<TContext = unknown> {
86
+ request(path?: string | URL, options?: FarmTestRequestOptions): Request;
87
+ route<TRoute extends AnyProgrammaticPageRoute>(route: TRoute, options?: FarmTestRouteOptions<TRoute, TContext>): Promise<FarmTestRouteResult<TRoute>>;
88
+ api(route: ProgrammaticApiRoute, options?: FarmTestApiOptions): Promise<Response>;
89
+ endpoint(endpoint: unknown, options?: FarmTestEndpointOptions): Promise<Response>;
90
+ serverFn<TInput, TResult>(serverFn: ServerFn<TInput, TResult>, ...args: FarmTestServerFnArguments<TInput>): Promise<TResult>;
91
+ clearCache(): void;
92
+ }
93
+ /** Create a deterministic Web Request without depending on a test runner. */
94
+ declare function createTestRequest(path?: string | URL, options?: FarmTestRequestOptions): Request;
95
+ /**
96
+ * Create test helpers that exercise Farm's real route, API, and server-function runtimes.
97
+ * The harness has no dependency on Vitest, Jest, or a DOM environment.
98
+ */
99
+ declare function createFarmTestHarness<TContext = unknown>(options?: FarmTestHarnessOptions<TContext>): FarmTestHarness<TContext>;
100
+
101
+ export { type FarmTestApiOptions, type FarmTestEndpointOptions, type FarmTestFormValues, type FarmTestHarness, type FarmTestHarnessOptions, type FarmTestPathParams, type FarmTestQuery, type FarmTestRequestOptions, type FarmTestRouteOptions, type FarmTestRouteProps, type FarmTestRouteResult, type FarmTestServerFnArguments, type FarmTestServerFnOptions, type InferFarmTestRouteData, type InferFarmTestRouteParams, type InferFarmTestRouteSearch, createFarmTestHarness, createTestRequest };
@@ -0,0 +1,49 @@
1
+ type MultipartField = string | number | boolean | bigint | Blob | Date | null | undefined;
2
+ type MultipartValues = Record<string, MultipartField | readonly MultipartField[]>;
3
+ /**
4
+ * A real FormData value that retains the submitted value shape for generated
5
+ * API-client inference.
6
+ */
7
+ type TypedFormData<TValues> = FormData & {
8
+ readonly __farmMultipartInput: TValues;
9
+ };
10
+ type MultipartSchema<TSchema> = TSchema & {
11
+ readonly __farmMultipartSchema: true;
12
+ };
13
+ type FarmStreamResponse<TItem> = Response & {
14
+ readonly __farmStreamItem: TItem;
15
+ };
16
+ interface FarmAPIStream<TItem> extends AsyncIterable<TItem> {
17
+ readonly response: Response;
18
+ cancel(reason?: unknown): Promise<void>;
19
+ }
20
+ type SchemaLike = {
21
+ parse(data: unknown): unknown;
22
+ };
23
+ /**
24
+ * Mark a body schema as multipart. The handler still receives the schema's
25
+ * parsed object; generated clients require `toFormData(...)` for the request.
26
+ */
27
+ declare function multipart<TSchema extends SchemaLike>(schema: TSchema): MultipartSchema<TSchema>;
28
+ declare function isMultipartSchema(value: unknown): value is MultipartSchema<SchemaLike>;
29
+ /**
30
+ * Encode a typed object as multipart FormData without converting File or Blob
31
+ * values to JSON or base64.
32
+ */
33
+ declare function toFormData<TValues extends MultipartValues>(values: TValues): TypedFormData<TValues>;
34
+ /**
35
+ * Stream JSON values as newline-delimited JSON. Each source value becomes one
36
+ * independently decodable item instead of buffering the whole response.
37
+ */
38
+ declare function jsonStream<TItem>(source: AsyncIterable<TItem> | Iterable<TItem>, init?: ResponseInit): FarmStreamResponse<TItem>;
39
+ declare function isJSONStreamResponse(response: {
40
+ headers?: Pick<Headers, "get"> | null;
41
+ }): boolean;
42
+ /**
43
+ * Decode a Farm JSON stream lazily. The response body is read only as the
44
+ * consumer advances the async iterator, preserving fetch backpressure.
45
+ */
46
+ declare function readJSONStream<TItem>(response: Response): FarmAPIStream<TItem>;
47
+ declare function isFarmAPIStream(value: unknown): value is FarmAPIStream<unknown>;
48
+
49
+ export { type FarmAPIStream as F, type MultipartSchema as M, type TypedFormData as T, type MultipartField as a, type MultipartValues as b, type FarmStreamResponse as c, isJSONStreamResponse as d, isFarmAPIStream as e, isMultipartSchema as i, jsonStream as j, multipart as m, readJSONStream as r, toFormData as t };