@farm.js/core 0.1.0-beta.1 → 0.1.0-beta.11

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 (310) hide show
  1. package/README.md +1 -1
  2. package/dist/agent-runtime.d.mts +3 -2
  3. package/dist/agent-runtime.d.ts +3 -2
  4. package/dist/api/route-manager.cjs +410 -15
  5. package/dist/api/route-manager.cjs.map +1 -1
  6. package/dist/api/route-manager.d.mts +7 -5
  7. package/dist/api/route-manager.d.ts +7 -5
  8. package/dist/api/route-manager.mjs +9 -8
  9. package/dist/api/runtime.cjs +748 -9
  10. package/dist/api/runtime.cjs.map +1 -1
  11. package/dist/api/runtime.d.mts +3 -16
  12. package/dist/api/runtime.d.ts +3 -16
  13. package/dist/api/runtime.mjs +8 -1
  14. package/dist/api.cjs +1243 -342
  15. package/dist/api.cjs.map +1 -1
  16. package/dist/api.d.mts +8 -150
  17. package/dist/api.d.ts +8 -150
  18. package/dist/api.mjs +51 -21
  19. package/dist/{app-BiX4qb-d.d.mts → app-BNE2FoZ4.d.mts} +42 -5
  20. package/dist/{app-CFRNJXP1.d.ts → app-DRGUmJ3s.d.ts} +42 -5
  21. package/dist/app-markdown.cjs +32 -8
  22. package/dist/app-markdown.cjs.map +1 -1
  23. package/dist/app-markdown.d.mts +3 -2
  24. package/dist/app-markdown.d.ts +3 -2
  25. package/dist/app-markdown.mjs +2 -1
  26. package/dist/cache.cjs +414 -12
  27. package/dist/cache.cjs.map +1 -1
  28. package/dist/cache.d.mts +120 -6
  29. package/dist/cache.d.ts +120 -6
  30. package/dist/cache.mjs +11 -3
  31. package/dist/{chunk-QF4PHCMA.mjs → chunk-2ED5Q2GH.mjs} +3 -3
  32. package/dist/chunk-2ED5Q2GH.mjs.map +1 -0
  33. package/dist/{chunk-GZP5W4K3.mjs → chunk-32W4QEJP.mjs} +1 -1
  34. package/dist/chunk-32W4QEJP.mjs.map +1 -0
  35. package/dist/{chunk-G3B5BRDY.mjs → chunk-4677KXB7.mjs} +646 -86
  36. package/dist/chunk-4677KXB7.mjs.map +1 -0
  37. package/dist/{chunk-3QJO55ZF.mjs → chunk-4LND3PXF.mjs} +30 -38
  38. package/dist/chunk-4LND3PXF.mjs.map +1 -0
  39. package/dist/chunk-5EVQFRL2.mjs +10 -0
  40. package/dist/chunk-5EVQFRL2.mjs.map +1 -0
  41. package/dist/{chunk-25D7G34K.mjs → chunk-65A7QIKI.mjs} +5 -5
  42. package/dist/{chunk-25D7G34K.mjs.map → chunk-65A7QIKI.mjs.map} +1 -1
  43. package/dist/{chunk-CHFHNEMO.mjs → chunk-77BOAQHI.mjs} +1972 -188
  44. package/dist/chunk-77BOAQHI.mjs.map +1 -0
  45. package/dist/{chunk-LLC7BNXW.mjs → chunk-7FBJLMQH.mjs} +73 -10
  46. package/dist/chunk-7FBJLMQH.mjs.map +1 -0
  47. package/dist/{chunk-TRORP7E4.mjs → chunk-7N62DNSO.mjs} +2 -2
  48. package/dist/chunk-ALCLXXTY.mjs +187 -0
  49. package/dist/chunk-ALCLXXTY.mjs.map +1 -0
  50. package/dist/chunk-AW6I64AP.mjs +25 -0
  51. package/dist/chunk-AW6I64AP.mjs.map +1 -0
  52. package/dist/{chunk-B6N4ZB2H.mjs → chunk-C2ROET2V.mjs} +3 -3
  53. package/dist/{chunk-BHG3LVHH.mjs → chunk-CGIXMLSY.mjs} +15 -7
  54. package/dist/chunk-CGIXMLSY.mjs.map +1 -0
  55. package/dist/{chunk-C3DLZMBU.mjs → chunk-DJSGLHCN.mjs} +2 -2
  56. package/dist/{chunk-JN3UU635.mjs → chunk-EJ7T4TPB.mjs} +2 -2
  57. package/dist/chunk-EJ7T4TPB.mjs.map +1 -0
  58. package/dist/{chunk-ZJQNATYV.mjs → chunk-FRPWCMMG.mjs} +3 -3
  59. package/dist/chunk-FRPWCMMG.mjs.map +1 -0
  60. package/dist/{chunk-QM6VV26B.mjs → chunk-GQVGIUSN.mjs} +3 -3
  61. package/dist/{chunk-QM6VV26B.mjs.map → chunk-GQVGIUSN.mjs.map} +1 -1
  62. package/dist/{chunk-UREJA4GZ.mjs → chunk-GXASWWJU.mjs} +1 -1
  63. package/dist/{chunk-UREJA4GZ.mjs.map → chunk-GXASWWJU.mjs.map} +1 -1
  64. package/dist/chunk-I4CUBGVF.mjs +93 -0
  65. package/dist/chunk-I4CUBGVF.mjs.map +1 -0
  66. package/dist/{chunk-HXP3ZSPC.mjs → chunk-J5YWQVI5.mjs} +4 -4
  67. package/dist/chunk-J5YWQVI5.mjs.map +1 -0
  68. package/dist/{chunk-PRNYWD7K.mjs → chunk-JDEOUK5V.mjs} +67 -239
  69. package/dist/chunk-JDEOUK5V.mjs.map +1 -0
  70. package/dist/{chunk-UHE2TTLK.mjs → chunk-K5ZTUF22.mjs} +34 -17
  71. package/dist/chunk-K5ZTUF22.mjs.map +1 -0
  72. package/dist/{chunk-O3HADRW6.mjs → chunk-MIUW47JX.mjs} +2 -2
  73. package/dist/{chunk-O3HADRW6.mjs.map → chunk-MIUW47JX.mjs.map} +1 -1
  74. package/dist/chunk-PFE6GMNE.mjs +603 -0
  75. package/dist/chunk-PFE6GMNE.mjs.map +1 -0
  76. package/dist/{chunk-RKI6TN3A.mjs → chunk-QM746KUO.mjs} +9 -2
  77. package/dist/chunk-QM746KUO.mjs.map +1 -0
  78. package/dist/{chunk-TU4YJICB.mjs → chunk-QTZZ2ISQ.mjs} +41 -16
  79. package/dist/chunk-QTZZ2ISQ.mjs.map +1 -0
  80. package/dist/chunk-RBRLLZL5.mjs +81 -0
  81. package/dist/chunk-RBRLLZL5.mjs.map +1 -0
  82. package/dist/{chunk-RSKVYESE.mjs → chunk-RQ633A5I.mjs} +1 -1
  83. package/dist/chunk-RQ633A5I.mjs.map +1 -0
  84. package/dist/{chunk-6XDUHOEM.mjs → chunk-TQAEEJB4.mjs} +3 -3
  85. package/dist/{chunk-AGS7UJ52.mjs → chunk-UB5UOSHB.mjs} +24 -12
  86. package/dist/chunk-UB5UOSHB.mjs.map +1 -0
  87. package/dist/{chunk-SXZTEK3V.mjs → chunk-UXUAWNO5.mjs} +2 -2
  88. package/dist/chunk-V3XURYJO.mjs +756 -0
  89. package/dist/chunk-V3XURYJO.mjs.map +1 -0
  90. package/dist/{chunk-JLWMCADZ.mjs → chunk-VY2UYN5R.mjs} +24 -4
  91. package/dist/chunk-VY2UYN5R.mjs.map +1 -0
  92. package/dist/{chunk-QFQRHRZS.mjs → chunk-W2CRQFF6.mjs} +151 -23
  93. package/dist/chunk-W2CRQFF6.mjs.map +1 -0
  94. package/dist/{chunk-Y7A27276.mjs → chunk-WDU6QXNK.mjs} +349 -15
  95. package/dist/chunk-WDU6QXNK.mjs.map +1 -0
  96. package/dist/{chunk-Y2OJJD7R.mjs → chunk-XIVV5IWN.mjs} +7 -9
  97. package/dist/chunk-XIVV5IWN.mjs.map +1 -0
  98. package/dist/{chunk-OYXO65LI.mjs → chunk-YW7OBE6Q.mjs} +4 -4
  99. package/dist/chunk-YW7OBE6Q.mjs.map +1 -0
  100. package/dist/{chunk-YHU7SS6L.mjs → chunk-Z5CQMP54.mjs} +11 -11
  101. package/dist/{chunk-S2XHZS7W.mjs → chunk-ZVWA4ZQ3.mjs} +18 -9
  102. package/dist/chunk-ZVWA4ZQ3.mjs.map +1 -0
  103. package/dist/{chunk-SOU3Q3ZA.mjs → chunk-ZZ57EH5Z.mjs} +1 -1
  104. package/dist/chunk-ZZ57EH5Z.mjs.map +1 -0
  105. package/dist/{client-D_yUjVhe.d.mts → client-BT1mFQas.d.mts} +55 -10
  106. package/dist/{client-Dkc03WP8.d.ts → client-Nn0q4eO4.d.ts} +55 -10
  107. package/dist/{client-plugins-BZnpeTGA.d.ts → client-plugins-Bc5jHcNr.d.ts} +85 -6
  108. package/dist/{client-plugins-g4bzuCmo.d.mts → client-plugins-jsk-ZLzJ.d.mts} +85 -6
  109. package/dist/client-plugins.d.mts +3 -2
  110. package/dist/client-plugins.d.ts +3 -2
  111. package/dist/client.cjs +922 -91
  112. package/dist/client.cjs.map +1 -1
  113. package/dist/client.d.mts +124 -6
  114. package/dist/client.d.ts +124 -6
  115. package/dist/client.mjs +23 -16
  116. package/dist/config.d.mts +3 -2
  117. package/dist/config.d.ts +3 -2
  118. package/dist/cron.cjs.map +1 -1
  119. package/dist/cron.mjs +1 -1
  120. package/dist/{devtools-AE4RVXCM.mjs → devtools-A22KUJZT.mjs} +13 -12
  121. package/dist/{devtools-AE4RVXCM.mjs.map → devtools-A22KUJZT.mjs.map} +1 -1
  122. package/dist/{devtools-client-6WPY2AQU.mjs → devtools-client-3XRTBND5.mjs} +2 -11
  123. package/dist/devtools-client-3XRTBND5.mjs.map +1 -0
  124. package/dist/docs.cjs +65 -58
  125. package/dist/docs.cjs.map +1 -1
  126. package/dist/docs.mjs +13 -12
  127. package/dist/env-types.cjs +14 -5
  128. package/dist/env-types.cjs.map +1 -1
  129. package/dist/env-types.d.mts +2 -1
  130. package/dist/env-types.d.ts +2 -1
  131. package/dist/env-types.mjs +3 -1
  132. package/dist/env.cjs.map +1 -1
  133. package/dist/env.d.mts +1 -1
  134. package/dist/env.d.ts +1 -1
  135. package/dist/env.mjs +1 -1
  136. package/dist/font.cjs +47 -0
  137. package/dist/font.cjs.map +1 -0
  138. package/dist/font.d.mts +70 -0
  139. package/dist/font.d.ts +70 -0
  140. package/dist/font.mjs +10 -0
  141. package/dist/font.mjs.map +1 -0
  142. package/dist/i18n/client.d.mts +2 -2
  143. package/dist/i18n/client.d.ts +2 -2
  144. package/dist/i18n/index.d.mts +3 -3
  145. package/dist/i18n/index.d.ts +3 -3
  146. package/dist/i18n/server.cjs +2 -2
  147. package/dist/i18n/server.cjs.map +1 -1
  148. package/dist/i18n/server.d.mts +5 -5
  149. package/dist/i18n/server.d.ts +5 -5
  150. package/dist/i18n/server.mjs +1 -1
  151. package/dist/index.cjs +5016 -1108
  152. package/dist/index.cjs.map +1 -1
  153. package/dist/index.d.mts +23 -19
  154. package/dist/index.d.ts +23 -19
  155. package/dist/index.mjs +177 -121
  156. package/dist/index.mjs.map +1 -1
  157. package/dist/integrations.d.mts +3 -2
  158. package/dist/integrations.d.ts +3 -2
  159. package/dist/internal/build-runtime.cjs +3504 -581
  160. package/dist/internal/build-runtime.cjs.map +1 -1
  161. package/dist/internal/build-runtime.d.mts +5 -4
  162. package/dist/internal/build-runtime.d.ts +5 -4
  163. package/dist/internal/build-runtime.mjs +32 -29
  164. package/dist/internal/client-runtime.cjs.map +1 -1
  165. package/dist/internal/client-runtime.mjs +1 -1
  166. package/dist/internal/config-runtime.cjs +148 -41
  167. package/dist/internal/config-runtime.cjs.map +1 -1
  168. package/dist/internal/config-runtime.d.mts +4 -3
  169. package/dist/internal/config-runtime.d.ts +4 -3
  170. package/dist/internal/config-runtime.mjs +12 -11
  171. package/dist/internal/production-runtime.cjs +300 -9
  172. package/dist/internal/production-runtime.cjs.map +1 -1
  173. package/dist/internal/production-runtime.d.mts +10 -8
  174. package/dist/internal/production-runtime.d.ts +10 -8
  175. package/dist/internal/production-runtime.mjs +27 -9
  176. package/dist/internal/production-runtime.mjs.map +1 -1
  177. package/dist/markdown.cjs +73 -8
  178. package/dist/markdown.cjs.map +1 -1
  179. package/dist/markdown.d.mts +19 -2
  180. package/dist/markdown.d.ts +19 -2
  181. package/dist/markdown.mjs +5 -1
  182. package/dist/{metadata-C9NZxMDW.d.mts → metadata-7ffpT3jr.d.mts} +1 -1
  183. package/dist/{metadata-DAXRaOHx.d.ts → metadata-JHn-8eht.d.ts} +1 -1
  184. package/dist/middleware.cjs +2 -2
  185. package/dist/middleware.cjs.map +1 -1
  186. package/dist/middleware.d.mts +5 -4
  187. package/dist/middleware.d.ts +5 -4
  188. package/dist/middleware.mjs +3 -3
  189. package/dist/navigation.cjs +40 -15
  190. package/dist/navigation.cjs.map +1 -1
  191. package/dist/navigation.mjs +3 -3
  192. package/dist/{nitro-KME62MWG.mjs → nitro-QO5LV6QK.mjs} +11 -13
  193. package/dist/{nitro-KME62MWG.mjs.map → nitro-QO5LV6QK.mjs.map} +1 -1
  194. package/dist/plugin.cjs +2854 -590
  195. package/dist/plugin.cjs.map +1 -1
  196. package/dist/plugin.d.mts +3 -2
  197. package/dist/plugin.d.ts +3 -2
  198. package/dist/plugin.mjs +28 -25
  199. package/dist/{production-runtime-DRkCHUvJ.d.ts → production-runtime-9KG7GuvW.d.ts} +2 -2
  200. package/dist/{production-runtime-flrjp_nC.d.mts → production-runtime-B-fweKts.d.mts} +2 -2
  201. package/dist/{request-BrFBuc8G.d.mts → request-Dsq4kGW0.d.mts} +1 -1
  202. package/dist/{request-BslSZIRz.d.ts → request-udtobOLv.d.ts} +1 -1
  203. package/dist/request.d.mts +2 -2
  204. package/dist/request.d.ts +2 -2
  205. package/dist/{resolver-DlOPpjkB.d.mts → resolver-DJqjLMg_.d.mts} +1 -1
  206. package/dist/{resolver-C6iecsDV.d.ts → resolver-IH4RmPEl.d.ts} +1 -1
  207. package/dist/routes.cjs +276 -6
  208. package/dist/routes.cjs.map +1 -1
  209. package/dist/routes.d.mts +2 -2
  210. package/dist/routes.d.ts +2 -2
  211. package/dist/routes.mjs +4 -4
  212. package/dist/runtime-9nQjVM7X.d.mts +206 -0
  213. package/dist/{runtime-DeAAZ6gO.d.mts → runtime-Cxpq6xZN.d.mts} +2 -2
  214. package/dist/runtime-DgeS2skB.d.ts +206 -0
  215. package/dist/{runtime-B6GvwDS1.d.ts → runtime-bv63eUiO.d.ts} +2 -2
  216. package/dist/server-action-security.cjs +28 -10
  217. package/dist/server-action-security.cjs.map +1 -1
  218. package/dist/server-action-security.d.mts +2 -1
  219. package/dist/server-action-security.d.ts +2 -1
  220. package/dist/server-action-security.mjs +2 -2
  221. package/dist/server-fn-client.cjs.map +1 -1
  222. package/dist/server-fn-client.d.mts +1 -0
  223. package/dist/server-fn-client.d.ts +1 -0
  224. package/dist/server-fn-client.mjs +1 -1
  225. package/dist/server-fn.cjs +785 -3
  226. package/dist/server-fn.cjs.map +1 -1
  227. package/dist/server-fn.d.mts +10 -1
  228. package/dist/server-fn.d.ts +10 -1
  229. package/dist/server-fn.mjs +6 -3
  230. package/dist/server-plugins.d.mts +4 -3
  231. package/dist/server-plugins.d.ts +4 -3
  232. package/dist/server-query-client.cjs +279 -8
  233. package/dist/server-query-client.cjs.map +1 -1
  234. package/dist/server-query-client.mjs +4 -4
  235. package/dist/server-query.cjs +381 -10
  236. package/dist/server-query.cjs.map +1 -1
  237. package/dist/server-query.mjs +5 -5
  238. package/dist/server.cjs +3319 -841
  239. package/dist/server.cjs.map +1 -1
  240. package/dist/server.d.mts +12 -11
  241. package/dist/server.d.ts +12 -11
  242. package/dist/server.mjs +57 -36
  243. package/dist/server.mjs.map +1 -1
  244. package/dist/testing.cjs +436 -25
  245. package/dist/testing.cjs.map +1 -1
  246. package/dist/testing.d.mts +5 -4
  247. package/dist/testing.d.ts +5 -4
  248. package/dist/testing.mjs +19 -18
  249. package/dist/testing.mjs.map +1 -1
  250. package/dist/transport-BmbGTXA5.d.mts +49 -0
  251. package/dist/transport-BmbGTXA5.d.ts +49 -0
  252. package/dist/{types-BH1lhg5G.d.ts → types-BMxWr97v.d.mts} +2 -2
  253. package/dist/{types-BH1lhg5G.d.mts → types-BMxWr97v.d.ts} +2 -2
  254. package/dist/{utils-DA1yo54_.d.ts → utils-CA0z0c-2.d.ts} +1 -1
  255. package/dist/{utils-DOXXivjL.d.mts → utils-mYVkSOt2.d.mts} +1 -1
  256. package/dist/version.cjs +36 -0
  257. package/dist/version.cjs.map +1 -0
  258. package/dist/version.d.mts +3 -0
  259. package/dist/version.d.ts +3 -0
  260. package/dist/version.mjs +8 -0
  261. package/dist/version.mjs.map +1 -0
  262. package/dist/vite.cjs +2938 -668
  263. package/dist/vite.cjs.map +1 -1
  264. package/dist/vite.d.mts +3 -2
  265. package/dist/vite.d.ts +3 -2
  266. package/dist/vite.mjs +26 -23
  267. package/dist/workflows.cjs +6 -8
  268. package/dist/workflows.cjs.map +1 -1
  269. package/dist/workflows.mjs +1 -1
  270. package/package.json +22 -6
  271. package/types/api.d.ts +44 -0
  272. package/types/client.d.ts +221 -17
  273. package/types/image.d.ts +4 -0
  274. package/types/images.d.ts +59 -0
  275. package/dist/chunk-3QJO55ZF.mjs.map +0 -1
  276. package/dist/chunk-4PTK6KT4.mjs +0 -364
  277. package/dist/chunk-4PTK6KT4.mjs.map +0 -1
  278. package/dist/chunk-AGS7UJ52.mjs.map +0 -1
  279. package/dist/chunk-BHG3LVHH.mjs.map +0 -1
  280. package/dist/chunk-CHFHNEMO.mjs.map +0 -1
  281. package/dist/chunk-EVGBEZDF.mjs +0 -215
  282. package/dist/chunk-EVGBEZDF.mjs.map +0 -1
  283. package/dist/chunk-G3B5BRDY.mjs.map +0 -1
  284. package/dist/chunk-GZP5W4K3.mjs.map +0 -1
  285. package/dist/chunk-HXP3ZSPC.mjs.map +0 -1
  286. package/dist/chunk-JLWMCADZ.mjs.map +0 -1
  287. package/dist/chunk-JN3UU635.mjs.map +0 -1
  288. package/dist/chunk-LLC7BNXW.mjs.map +0 -1
  289. package/dist/chunk-OYXO65LI.mjs.map +0 -1
  290. package/dist/chunk-PRNYWD7K.mjs.map +0 -1
  291. package/dist/chunk-QF4PHCMA.mjs.map +0 -1
  292. package/dist/chunk-QFQRHRZS.mjs.map +0 -1
  293. package/dist/chunk-RKI6TN3A.mjs.map +0 -1
  294. package/dist/chunk-RSKVYESE.mjs.map +0 -1
  295. package/dist/chunk-S2XHZS7W.mjs.map +0 -1
  296. package/dist/chunk-SOU3Q3ZA.mjs.map +0 -1
  297. package/dist/chunk-TU4YJICB.mjs.map +0 -1
  298. package/dist/chunk-TXCFGOHW.mjs +0 -42
  299. package/dist/chunk-TXCFGOHW.mjs.map +0 -1
  300. package/dist/chunk-UHE2TTLK.mjs.map +0 -1
  301. package/dist/chunk-Y2OJJD7R.mjs.map +0 -1
  302. package/dist/chunk-Y7A27276.mjs.map +0 -1
  303. package/dist/chunk-ZJQNATYV.mjs.map +0 -1
  304. package/dist/devtools-client-6WPY2AQU.mjs.map +0 -1
  305. /package/dist/{chunk-TRORP7E4.mjs.map → chunk-7N62DNSO.mjs.map} +0 -0
  306. /package/dist/{chunk-B6N4ZB2H.mjs.map → chunk-C2ROET2V.mjs.map} +0 -0
  307. /package/dist/{chunk-C3DLZMBU.mjs.map → chunk-DJSGLHCN.mjs.map} +0 -0
  308. /package/dist/{chunk-6XDUHOEM.mjs.map → chunk-TQAEEJB4.mjs.map} +0 -0
  309. /package/dist/{chunk-SXZTEK3V.mjs.map → chunk-UXUAWNO5.mjs.map} +0 -0
  310. /package/dist/{chunk-YHU7SS6L.mjs.map → chunk-Z5CQMP54.mjs.map} +0 -0
package/dist/server.d.mts CHANGED
@@ -1,13 +1,13 @@
1
- export { F as FarmApp, R as RouteManager, S as ServerRenderer, c as createFarmApp } from './app-BiX4qb-d.mjs';
2
- import { F as FarmConfig } from './client-plugins-g4bzuCmo.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-g4bzuCmo.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-DOXXivjL.mjs';
1
+ export { F as FarmApp, R as RouteManager, S as ServerRenderer, c as createFarmApp } from './app-BNE2FoZ4.mjs';
2
+ import { F as FarmConfig } from './client-plugins-jsk-ZLzJ.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-jsk-ZLzJ.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-mYVkSOt2.mjs';
5
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 { FarmCacheEntry, FarmCacheOptions, FarmCacheSetOptions, FarmDataCache, GetFarmCacheEntryOptions, RevalidateTagProfile, RouteDataCacheKey, applyFarmCacheInvalidations, createFarmCacheKey, createPathCacheTag, createRouteDataCacheKey, createRouteDataCacheTag, getFarmDataCache, invalidate, invalidateRouteData, normalizeRevalidatePath, revalidatePath, revalidateTag, unstable_cache, updateTag } from './cache.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
7
  export { AfterCallback, FarmAfterPlatformContext, _runWithAfterNodeResponse, _runWithAfterRequest, _withAfterNodeMiddleware, after } from './after.mjs';
8
8
  export { FARM_SERVER_QUERY_SYMBOL, ServerQuery, ServerQueryKey, ServerQueryOptions, ServerQueryOutputOptions, ServerQueryStaleTime, createServerQuery } from './server-query.mjs';
9
9
  import { ViteDevServer } from 'vite';
10
- export { g as getCurrentRequest } from './request-BrFBuc8G.mjs';
10
+ export { g as getCurrentRequest } from './request-Dsq4kGW0.mjs';
11
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
12
  export { FarmEnvironment, FarmEnvironmentError, FarmIsomorphicFnOptions, createClientOnlyFn, createIsomorphicFn, createServerOnlyFn } from './environment.mjs';
13
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';
@@ -22,10 +22,10 @@ import './image-config-Duob7wER.mjs';
22
22
  import './routes.mjs';
23
23
  import './route-runtime-DoOHzCAD.mjs';
24
24
  import 'react';
25
- import './metadata-C9NZxMDW.mjs';
26
- import './types-BH1lhg5G.mjs';
27
- import './runtime-DeAAZ6gO.mjs';
28
- import './resolver-DlOPpjkB.mjs';
25
+ import './metadata-7ffpT3jr.mjs';
26
+ import './types-BMxWr97v.mjs';
27
+ import './runtime-Cxpq6xZN.mjs';
28
+ import './resolver-DJqjLMg_.mjs';
29
29
  import './plugin-BJDf43dc.mjs';
30
30
  import 'http';
31
31
  import './integration-api-CHT2OKAf.mjs';
@@ -35,6 +35,7 @@ import './env.mjs';
35
35
  import 'node:http';
36
36
  import './server-fn.mjs';
37
37
 
38
+ declare const DEFAULT_FARM_DEV_SERVER_PORT = 3000;
38
39
  /**
39
40
  * Create a Vite development server with Farm.js integration
40
41
  */
@@ -44,4 +45,4 @@ declare function createServer(config?: FarmConfig): Promise<ViteDevServer>;
44
45
  */
45
46
  declare function startDevServer(config?: FarmConfig, port?: number): Promise<ViteDevServer>;
46
47
 
47
- export { FarmConfig, createServer, startDevServer };
48
+ export { DEFAULT_FARM_DEV_SERVER_PORT, FarmConfig, createServer, startDevServer };
package/dist/server.d.ts CHANGED
@@ -1,13 +1,13 @@
1
- export { F as FarmApp, R as RouteManager, S as ServerRenderer, c as createFarmApp } from './app-CFRNJXP1.js';
2
- import { F as FarmConfig } from './client-plugins-BZnpeTGA.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-BZnpeTGA.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-DA1yo54_.js';
1
+ export { F as FarmApp, R as RouteManager, S as ServerRenderer, c as createFarmApp } from './app-DRGUmJ3s.js';
2
+ import { F as FarmConfig } from './client-plugins-Bc5jHcNr.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-Bc5jHcNr.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-CA0z0c-2.js';
5
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 { FarmCacheEntry, FarmCacheOptions, FarmCacheSetOptions, FarmDataCache, GetFarmCacheEntryOptions, RevalidateTagProfile, RouteDataCacheKey, applyFarmCacheInvalidations, createFarmCacheKey, createPathCacheTag, createRouteDataCacheKey, createRouteDataCacheTag, getFarmDataCache, invalidate, invalidateRouteData, normalizeRevalidatePath, revalidatePath, revalidateTag, unstable_cache, updateTag } from './cache.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
7
  export { AfterCallback, FarmAfterPlatformContext, _runWithAfterNodeResponse, _runWithAfterRequest, _withAfterNodeMiddleware, after } from './after.js';
8
8
  export { FARM_SERVER_QUERY_SYMBOL, ServerQuery, ServerQueryKey, ServerQueryOptions, ServerQueryOutputOptions, ServerQueryStaleTime, createServerQuery } from './server-query.js';
9
9
  import { ViteDevServer } from 'vite';
10
- export { g as getCurrentRequest } from './request-BslSZIRz.js';
10
+ export { g as getCurrentRequest } from './request-udtobOLv.js';
11
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
12
  export { FarmEnvironment, FarmEnvironmentError, FarmIsomorphicFnOptions, createClientOnlyFn, createIsomorphicFn, createServerOnlyFn } from './environment.js';
13
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';
@@ -22,10 +22,10 @@ import './image-config-Duob7wER.js';
22
22
  import './routes.js';
23
23
  import './route-runtime-DoOHzCAD.js';
24
24
  import 'react';
25
- import './metadata-DAXRaOHx.js';
26
- import './types-BH1lhg5G.js';
27
- import './runtime-B6GvwDS1.js';
28
- import './resolver-C6iecsDV.js';
25
+ import './metadata-JHn-8eht.js';
26
+ import './types-BMxWr97v.js';
27
+ import './runtime-bv63eUiO.js';
28
+ import './resolver-IH4RmPEl.js';
29
29
  import './plugin-BJDf43dc.js';
30
30
  import 'http';
31
31
  import './integration-api-CHT2OKAf.js';
@@ -35,6 +35,7 @@ import './env.js';
35
35
  import 'node:http';
36
36
  import './server-fn.js';
37
37
 
38
+ declare const DEFAULT_FARM_DEV_SERVER_PORT = 3000;
38
39
  /**
39
40
  * Create a Vite development server with Farm.js integration
40
41
  */
@@ -44,4 +45,4 @@ declare function createServer(config?: FarmConfig): Promise<ViteDevServer>;
44
45
  */
45
46
  declare function startDevServer(config?: FarmConfig, port?: number): Promise<ViteDevServer>;
46
47
 
47
- export { FarmConfig, createServer, startDevServer };
48
+ export { DEFAULT_FARM_DEV_SERVER_PORT, FarmConfig, createServer, startDevServer };
package/dist/server.mjs CHANGED
@@ -1,26 +1,26 @@
1
1
  import {
2
2
  mergeFarmViteConfig
3
- } from "./chunk-RKI6TN3A.mjs";
4
- import {
5
- FARM_SERVER_QUERY_SYMBOL,
6
- createServerQuery
7
- } from "./chunk-25D7G34K.mjs";
3
+ } from "./chunk-QM746KUO.mjs";
8
4
  import {
9
5
  FarmEnvironmentError,
10
6
  createClientOnlyFn,
11
7
  createIsomorphicFn,
12
8
  createServerOnlyFn
13
9
  } from "./chunk-J23HNLFY.mjs";
10
+ import {
11
+ FARM_SERVER_QUERY_SYMBOL,
12
+ createServerQuery
13
+ } from "./chunk-65A7QIKI.mjs";
14
+ import "./chunk-VY2UYN5R.mjs";
14
15
  import {
15
16
  loadConfig,
16
17
  resolveConfig
17
- } from "./chunk-UHE2TTLK.mjs";
18
+ } from "./chunk-K5ZTUF22.mjs";
18
19
  import "./chunk-UVCIEUJC.mjs";
19
- import "./chunk-JLWMCADZ.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,15 +30,19 @@ import {
30
30
  defineConfig,
31
31
  farmI18nClientBridgePlugin,
32
32
  farmPlugin
33
- } from "./chunk-CHFHNEMO.mjs";
33
+ } from "./chunk-77BOAQHI.mjs";
34
34
  import "./chunk-LGHEOHBU.mjs";
35
- import "./chunk-ZJQNATYV.mjs";
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
+ import "./chunk-7N62DNSO.mjs";
43
+ import "./chunk-7HO6AEOP.mjs";
44
+ import "./chunk-I4CUBGVF.mjs";
45
+ import "./chunk-YW7OBE6Q.mjs";
42
46
  import {
43
47
  getFarmAppDirectories,
44
48
  getFarmLayerAliases,
@@ -47,12 +51,7 @@ import {
47
51
  resolveFarmLayers
48
52
  } from "./chunk-74YTBPTY.mjs";
49
53
  import "./chunk-7MABZJIM.mjs";
50
- import "./chunk-OYXO65LI.mjs";
51
54
  import "./chunk-GY2STC2S.mjs";
52
- import "./chunk-LLC7BNXW.mjs";
53
- import "./chunk-S2XHZS7W.mjs";
54
- import "./chunk-Y2OJJD7R.mjs";
55
- import "./chunk-UREJA4GZ.mjs";
56
55
  import {
57
56
  DEFAULT_SERVER_ACTION_BODY_SIZE_LIMIT,
58
57
  ServerActionRequestError,
@@ -65,11 +64,13 @@ import {
65
64
  runWithServerActionRequest,
66
65
  sanitizeServerActionError,
67
66
  validateServerActionRequest
68
- } from "./chunk-AGS7UJ52.mjs";
67
+ } from "./chunk-UB5UOSHB.mjs";
68
+ import "./chunk-ZVWA4ZQ3.mjs";
69
+ import "./chunk-7FBJLMQH.mjs";
70
+ import "./chunk-XIVV5IWN.mjs";
71
+ import "./chunk-GXASWWJU.mjs";
69
72
  import "./chunk-K4667E2Q.mjs";
70
- import "./chunk-TRORP7E4.mjs";
71
- import "./chunk-7HO6AEOP.mjs";
72
- import "./chunk-O3HADRW6.mjs";
73
+ import "./chunk-MIUW47JX.mjs";
73
74
  import "./chunk-P7QDS5AT.mjs";
74
75
  import {
75
76
  createFarmStorage,
@@ -106,10 +107,13 @@ import {
106
107
  after
107
108
  } from "./chunk-E6EPN5BT.mjs";
108
109
  import "./chunk-QGOHVJ6J.mjs";
109
- import "./chunk-YHU7SS6L.mjs";
110
- import "./chunk-QF4PHCMA.mjs";
110
+ import "./chunk-Z5CQMP54.mjs";
111
+ import "./chunk-2ED5Q2GH.mjs";
111
112
  import "./chunk-GN72QAIH.mjs";
112
113
  import "./chunk-FQYDHKKU.mjs";
114
+ import "./chunk-C2ROET2V.mjs";
115
+ import "./chunk-QKVUNGAH.mjs";
116
+ import "./chunk-GQVGIUSN.mjs";
113
117
  import {
114
118
  fileExists,
115
119
  globFiles,
@@ -121,41 +125,46 @@ import {
121
125
  segmentsToPattern,
122
126
  toViteModuleId
123
127
  } from "./chunk-J4FNJ5IU.mjs";
124
- import "./chunk-EVGBEZDF.mjs";
128
+ import "./chunk-PFE6GMNE.mjs";
125
129
  import {
126
130
  getCurrentRequest
127
131
  } from "./chunk-RHIFZZUI.mjs";
128
132
  import "./chunk-LM2YNO4U.mjs";
129
- import "./chunk-B6N4ZB2H.mjs";
130
- import "./chunk-QKVUNGAH.mjs";
131
- import "./chunk-QM6VV26B.mjs";
132
- import "./chunk-JK25YEN6.mjs";
133
- import "./chunk-TU4YJICB.mjs";
133
+ import {
134
+ FARM_VERSION
135
+ } from "./chunk-5EVQFRL2.mjs";
136
+ import "./chunk-QTZZ2ISQ.mjs";
134
137
  import "./chunk-ITN462YM.mjs";
135
138
  import "./chunk-B232I2GP.mjs";
139
+ import "./chunk-JK25YEN6.mjs";
136
140
  import "./chunk-GS6K5OCM.mjs";
137
141
  import "./chunk-44ZCFSKE.mjs";
138
- import "./chunk-ZBE6MLHL.mjs";
142
+ import "./chunk-ALCLXXTY.mjs";
139
143
  import {
140
144
  FarmDataCache,
145
+ applyFarmCacheInvalidationTargets,
146
+ configureFarmCache,
141
147
  createFarmCacheKey,
142
148
  createPathCacheTag,
143
149
  createRouteDataCacheKey,
144
150
  createRouteDataCacheTag,
151
+ defineCacheKey,
145
152
  getFarmDataCache,
146
153
  invalidate,
147
154
  invalidateRouteData,
148
155
  normalizeRevalidatePath,
149
156
  revalidatePath,
150
157
  revalidateTag,
158
+ storageCacheAdapter,
151
159
  unstable_cache,
152
160
  updateTag
153
- } from "./chunk-4PTK6KT4.mjs";
161
+ } from "./chunk-V3XURYJO.mjs";
162
+ import "./chunk-WZ5QFROO.mjs";
154
163
  import {
155
164
  applyFarmCacheInvalidations
156
- } from "./chunk-TXCFGOHW.mjs";
157
- import "./chunk-WZ5QFROO.mjs";
165
+ } from "./chunk-RBRLLZL5.mjs";
158
166
  import "./chunk-7ZY5AIJO.mjs";
167
+ import "./chunk-ZBE6MLHL.mjs";
159
168
  import {
160
169
  createCompressionPlugin,
161
170
  createHeadersPlugin,
@@ -172,6 +181,7 @@ import {
172
181
  import { createServer as createViteServer } from "vite";
173
182
  import fs from "fs";
174
183
  import path from "path";
184
+ var DEFAULT_FARM_DEV_SERVER_PORT = 3e3;
175
185
  function createBrandingPlugin() {
176
186
  let serverStarted = false;
177
187
  let startTime = Date.now();
@@ -207,7 +217,7 @@ function createBrandingPlugin() {
207
217
  const pc = getColors();
208
218
  console.log("");
209
219
  console.log(
210
- ` ${pc.bold(pc.green("Farm.js"))} ${pc.dim("v1.0.0")} ${pc.dim(`ready in ${elapsed}ms`)}`
220
+ ` ${pc.bold(pc.green("Farm.js"))} ${pc.dim(`v${FARM_VERSION}`)} ${pc.dim(`ready in ${elapsed}ms`)}`
211
221
  );
212
222
  console.log("");
213
223
  console.log(
@@ -333,7 +343,13 @@ async function createServer(config = {}) {
333
343
  createBrandingPlugin()
334
344
  ],
335
345
  server: {
336
- middlewareMode: false
346
+ middlewareMode: false,
347
+ port: DEFAULT_FARM_DEV_SERVER_PORT,
348
+ strictPort: true
349
+ },
350
+ resolve: {
351
+ // Keep framework and application modules on one React runtime.
352
+ dedupe: ["react", "react-dom"]
337
353
  },
338
354
  optimizeDeps: {
339
355
  // Avoid Vite scanning server/native-only deps from framework internals.
@@ -408,7 +424,7 @@ async function createServer(config = {}) {
408
424
  }
409
425
  }
410
426
  __name(createServer, "createServer");
411
- async function startDevServer(config = {}, port = 3e3) {
427
+ async function startDevServer(config = {}, port) {
412
428
  const server = await createServer(config);
413
429
  await server.listen(port);
414
430
  const pluginManager = server.__farmPluginManager;
@@ -423,6 +439,7 @@ async function startDevServer(config = {}, port = 3e3) {
423
439
  }
424
440
  __name(startDevServer, "startDevServer");
425
441
  export {
442
+ DEFAULT_FARM_DEV_SERVER_PORT,
426
443
  DEFAULT_SERVER_ACTION_BODY_SIZE_LIMIT,
427
444
  FARM_SERVER_QUERY_SYMBOL,
428
445
  FarmApp,
@@ -435,7 +452,9 @@ export {
435
452
  _runWithAfterRequest,
436
453
  _withAfterNodeMiddleware,
437
454
  after,
455
+ applyFarmCacheInvalidationTargets,
438
456
  applyFarmCacheInvalidations,
457
+ configureFarmCache,
439
458
  createClientOnlyFn,
440
459
  createFarmApp,
441
460
  createFarmCacheKey,
@@ -450,6 +469,7 @@ export {
450
469
  createServerQuery,
451
470
  createStorageClient,
452
471
  databaseStorage,
472
+ defineCacheKey,
453
473
  defineConfig,
454
474
  defineStorageClient,
455
475
  disposeStorage,
@@ -500,6 +520,7 @@ export {
500
520
  segmentsToPattern,
501
521
  sqliteStorage,
502
522
  startDevServer,
523
+ storageCacheAdapter,
503
524
  toViteModuleId,
504
525
  unstable_cache,
505
526
  updateTag,
@@ -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\";\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(\"v1.0.0\")} ${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 },\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 = 3000) {\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;AAWjB,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,QAAQ,CAAC,IAAI,GAAG,IAAI,YAAY,OAAO,IAAI,CAAC;AAAA,UAC1F;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,UAClB;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;AAxKsB;AA6KtB,eAAsB,eAAe,SAAqB,CAAC,GAAG,OAAO,KAAM;AACzE,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":[]}
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":[]}