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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (441) hide show
  1. package/dist/internal/build-runtime.cjs +1 -1
  2. package/dist/internal/build-runtime.cjs.map +1 -1
  3. package/dist/internal/build-runtime.mjs +5 -5
  4. package/dist/plugin.cjs.map +1 -1
  5. package/dist/plugin.mjs +4 -4
  6. package/dist/server-query-client.cjs +1 -1
  7. package/dist/server-query-client.cjs.map +1 -1
  8. package/dist/server-query-client.mjs +1 -1
  9. package/dist/server.cjs +1 -1
  10. package/dist/server.cjs.map +1 -1
  11. package/dist/server.mjs +4 -4
  12. package/dist/version.cjs +1 -1
  13. package/dist/version.cjs.map +1 -1
  14. package/dist/version.mjs +1 -1
  15. package/dist/vite.cjs +1 -1
  16. package/dist/vite.cjs.map +1 -1
  17. package/dist/vite.mjs +4 -4
  18. package/package.json +1 -1
  19. package/dist/after.cjs +0 -227
  20. package/dist/after.cjs.map +0 -1
  21. package/dist/after.d.mts +0 -25
  22. package/dist/after.d.ts +0 -25
  23. package/dist/after.mjs +0 -14
  24. package/dist/after.mjs.map +0 -1
  25. package/dist/agent-runtime.cjs +0 -2379
  26. package/dist/agent-runtime.cjs.map +0 -1
  27. package/dist/agent-runtime.d.mts +0 -94
  28. package/dist/agent-runtime.d.ts +0 -94
  29. package/dist/agent-runtime.mjs +0 -479
  30. package/dist/agent-runtime.mjs.map +0 -1
  31. package/dist/api/route-manager.d.mts +0 -66
  32. package/dist/api/route-manager.d.ts +0 -66
  33. package/dist/api/runtime.d.mts +0 -3
  34. package/dist/api/runtime.d.ts +0 -3
  35. package/dist/api.cjs +0 -4100
  36. package/dist/api.cjs.map +0 -1
  37. package/dist/api.d.mts +0 -48
  38. package/dist/api.d.ts +0 -48
  39. package/dist/api.mjs +0 -93
  40. package/dist/api.mjs.map +0 -1
  41. package/dist/app-BjN-da13.d.ts +0 -300
  42. package/dist/app-CakAr8Be.d.mts +0 -300
  43. package/dist/app-markdown.cjs +0 -220
  44. package/dist/app-markdown.cjs.map +0 -1
  45. package/dist/app-markdown.d.mts +0 -22
  46. package/dist/app-markdown.d.ts +0 -22
  47. package/dist/app-markdown.mjs +0 -26
  48. package/dist/app-markdown.mjs.map +0 -1
  49. package/dist/cache.cjs +0 -945
  50. package/dist/cache.cjs.map +0 -1
  51. package/dist/cache.d.mts +0 -192
  52. package/dist/cache.d.ts +0 -192
  53. package/dist/cache.mjs +0 -46
  54. package/dist/cache.mjs.map +0 -1
  55. package/dist/chunk-2CUKEMVR.mjs +0 -872
  56. package/dist/chunk-2CUKEMVR.mjs.map +0 -1
  57. package/dist/chunk-2ED5Q2GH.mjs +0 -422
  58. package/dist/chunk-2ED5Q2GH.mjs.map +0 -1
  59. package/dist/chunk-32W4QEJP.mjs +0 -158
  60. package/dist/chunk-32W4QEJP.mjs.map +0 -1
  61. package/dist/chunk-3U3ZUQAQ.mjs +0 -41
  62. package/dist/chunk-3U3ZUQAQ.mjs.map +0 -1
  63. package/dist/chunk-3XNTL3FQ.mjs +0 -452
  64. package/dist/chunk-3XNTL3FQ.mjs.map +0 -1
  65. package/dist/chunk-44ZCFSKE.mjs +0 -84
  66. package/dist/chunk-44ZCFSKE.mjs.map +0 -1
  67. package/dist/chunk-4S3ORGFA.mjs +0 -44
  68. package/dist/chunk-4S3ORGFA.mjs.map +0 -1
  69. package/dist/chunk-5BY76U2M.mjs +0 -1
  70. package/dist/chunk-5BY76U2M.mjs.map +0 -1
  71. package/dist/chunk-5ZGPRGWV.mjs +0 -136
  72. package/dist/chunk-5ZGPRGWV.mjs.map +0 -1
  73. package/dist/chunk-65A7QIKI.mjs +0 -142
  74. package/dist/chunk-65A7QIKI.mjs.map +0 -1
  75. package/dist/chunk-74YTBPTY.mjs +0 -450
  76. package/dist/chunk-74YTBPTY.mjs.map +0 -1
  77. package/dist/chunk-7HO6AEOP.mjs +0 -74
  78. package/dist/chunk-7HO6AEOP.mjs.map +0 -1
  79. package/dist/chunk-7MABZJIM.mjs +0 -29
  80. package/dist/chunk-7MABZJIM.mjs.map +0 -1
  81. package/dist/chunk-7ZY5AIJO.mjs +0 -161
  82. package/dist/chunk-7ZY5AIJO.mjs.map +0 -1
  83. package/dist/chunk-AJWRO5WE.mjs +0 -6241
  84. package/dist/chunk-AJWRO5WE.mjs.map +0 -1
  85. package/dist/chunk-ALCLXXTY.mjs +0 -187
  86. package/dist/chunk-ALCLXXTY.mjs.map +0 -1
  87. package/dist/chunk-AOBXKNS5.mjs +0 -7631
  88. package/dist/chunk-AOBXKNS5.mjs.map +0 -1
  89. package/dist/chunk-AZ7YUVNR.mjs +0 -65
  90. package/dist/chunk-AZ7YUVNR.mjs.map +0 -1
  91. package/dist/chunk-B232I2GP.mjs +0 -163
  92. package/dist/chunk-B232I2GP.mjs.map +0 -1
  93. package/dist/chunk-BHG3LVHH.mjs +0 -176
  94. package/dist/chunk-BHG3LVHH.mjs.map +0 -1
  95. package/dist/chunk-C2ROET2V.mjs +0 -718
  96. package/dist/chunk-C2ROET2V.mjs.map +0 -1
  97. package/dist/chunk-C3DLZMBU.mjs +0 -597
  98. package/dist/chunk-C3DLZMBU.mjs.map +0 -1
  99. package/dist/chunk-CGILA3WO.mjs +0 -14
  100. package/dist/chunk-CGILA3WO.mjs.map +0 -1
  101. package/dist/chunk-E2MPIBRE.mjs +0 -149
  102. package/dist/chunk-E2MPIBRE.mjs.map +0 -1
  103. package/dist/chunk-E6EPN5BT.mjs +0 -203
  104. package/dist/chunk-E6EPN5BT.mjs.map +0 -1
  105. package/dist/chunk-EJ7T4TPB.mjs +0 -622
  106. package/dist/chunk-EJ7T4TPB.mjs.map +0 -1
  107. package/dist/chunk-FQYDHKKU.mjs +0 -128
  108. package/dist/chunk-FQYDHKKU.mjs.map +0 -1
  109. package/dist/chunk-FRPWCMMG.mjs +0 -299
  110. package/dist/chunk-FRPWCMMG.mjs.map +0 -1
  111. package/dist/chunk-GN72QAIH.mjs +0 -146
  112. package/dist/chunk-GN72QAIH.mjs.map +0 -1
  113. package/dist/chunk-GQVGIUSN.mjs +0 -149
  114. package/dist/chunk-GQVGIUSN.mjs.map +0 -1
  115. package/dist/chunk-GS6K5OCM.mjs +0 -407
  116. package/dist/chunk-GS6K5OCM.mjs.map +0 -1
  117. package/dist/chunk-GXASWWJU.mjs +0 -364
  118. package/dist/chunk-GXASWWJU.mjs.map +0 -1
  119. package/dist/chunk-GY2STC2S.mjs +0 -180
  120. package/dist/chunk-GY2STC2S.mjs.map +0 -1
  121. package/dist/chunk-H2FA2SBS.mjs +0 -51
  122. package/dist/chunk-H2FA2SBS.mjs.map +0 -1
  123. package/dist/chunk-HNIQFZKB.mjs +0 -3550
  124. package/dist/chunk-HNIQFZKB.mjs.map +0 -1
  125. package/dist/chunk-ITN462YM.mjs +0 -98
  126. package/dist/chunk-ITN462YM.mjs.map +0 -1
  127. package/dist/chunk-J23HNLFY.mjs +0 -72
  128. package/dist/chunk-J23HNLFY.mjs.map +0 -1
  129. package/dist/chunk-J4FNJ5IU.mjs +0 -179
  130. package/dist/chunk-J4FNJ5IU.mjs.map +0 -1
  131. package/dist/chunk-JDEOUK5V.mjs +0 -427
  132. package/dist/chunk-JDEOUK5V.mjs.map +0 -1
  133. package/dist/chunk-JK25YEN6.mjs +0 -219
  134. package/dist/chunk-JK25YEN6.mjs.map +0 -1
  135. package/dist/chunk-K4667E2Q.mjs +0 -1916
  136. package/dist/chunk-K4667E2Q.mjs.map +0 -1
  137. package/dist/chunk-LGHEOHBU.mjs +0 -218
  138. package/dist/chunk-LGHEOHBU.mjs.map +0 -1
  139. package/dist/chunk-LLC7BNXW.mjs +0 -275
  140. package/dist/chunk-LLC7BNXW.mjs.map +0 -1
  141. package/dist/chunk-LM2YNO4U.mjs +0 -24
  142. package/dist/chunk-LM2YNO4U.mjs.map +0 -1
  143. package/dist/chunk-MIUW47JX.mjs +0 -639
  144. package/dist/chunk-MIUW47JX.mjs.map +0 -1
  145. package/dist/chunk-NM3CRAAL.mjs +0 -467
  146. package/dist/chunk-NM3CRAAL.mjs.map +0 -1
  147. package/dist/chunk-NNLCAVB6.mjs +0 -391
  148. package/dist/chunk-NNLCAVB6.mjs.map +0 -1
  149. package/dist/chunk-P7QDS5AT.mjs +0 -191
  150. package/dist/chunk-P7QDS5AT.mjs.map +0 -1
  151. package/dist/chunk-PFE6GMNE.mjs +0 -603
  152. package/dist/chunk-PFE6GMNE.mjs.map +0 -1
  153. package/dist/chunk-QGOHVJ6J.mjs +0 -63
  154. package/dist/chunk-QGOHVJ6J.mjs.map +0 -1
  155. package/dist/chunk-QGQX7SFC.mjs +0 -180
  156. package/dist/chunk-QGQX7SFC.mjs.map +0 -1
  157. package/dist/chunk-QKVUNGAH.mjs +0 -39
  158. package/dist/chunk-QKVUNGAH.mjs.map +0 -1
  159. package/dist/chunk-QM746KUO.mjs +0 -56
  160. package/dist/chunk-QM746KUO.mjs.map +0 -1
  161. package/dist/chunk-RBRLLZL5.mjs +0 -81
  162. package/dist/chunk-RBRLLZL5.mjs.map +0 -1
  163. package/dist/chunk-RHIFZZUI.mjs +0 -69
  164. package/dist/chunk-RHIFZZUI.mjs.map +0 -1
  165. package/dist/chunk-RSKVYESE.mjs +0 -187
  166. package/dist/chunk-RSKVYESE.mjs.map +0 -1
  167. package/dist/chunk-SADGIRS2.mjs +0 -211
  168. package/dist/chunk-SADGIRS2.mjs.map +0 -1
  169. package/dist/chunk-SCFX4UTD.mjs +0 -28
  170. package/dist/chunk-SCFX4UTD.mjs.map +0 -1
  171. package/dist/chunk-SL6HTIOK.mjs +0 -66
  172. package/dist/chunk-SL6HTIOK.mjs.map +0 -1
  173. package/dist/chunk-SPBBQLXI.mjs +0 -207
  174. package/dist/chunk-SPBBQLXI.mjs.map +0 -1
  175. package/dist/chunk-T4QJQK76.mjs +0 -459
  176. package/dist/chunk-T4QJQK76.mjs.map +0 -1
  177. package/dist/chunk-TQAEEJB4.mjs +0 -157
  178. package/dist/chunk-TQAEEJB4.mjs.map +0 -1
  179. package/dist/chunk-UB5UOSHB.mjs +0 -458
  180. package/dist/chunk-UB5UOSHB.mjs.map +0 -1
  181. package/dist/chunk-USWZZUEH.mjs +0 -25
  182. package/dist/chunk-USWZZUEH.mjs.map +0 -1
  183. package/dist/chunk-UVCIEUJC.mjs +0 -16
  184. package/dist/chunk-UVCIEUJC.mjs.map +0 -1
  185. package/dist/chunk-UXUAWNO5.mjs +0 -396
  186. package/dist/chunk-UXUAWNO5.mjs.map +0 -1
  187. package/dist/chunk-V3XURYJO.mjs +0 -756
  188. package/dist/chunk-V3XURYJO.mjs.map +0 -1
  189. package/dist/chunk-V6WE6JSZ.mjs +0 -352
  190. package/dist/chunk-V6WE6JSZ.mjs.map +0 -1
  191. package/dist/chunk-V7RBCSDJ.mjs +0 -170
  192. package/dist/chunk-V7RBCSDJ.mjs.map +0 -1
  193. package/dist/chunk-VCANOYFI.mjs +0 -588
  194. package/dist/chunk-VCANOYFI.mjs.map +0 -1
  195. package/dist/chunk-VVKWFZAH.mjs +0 -753
  196. package/dist/chunk-VVKWFZAH.mjs.map +0 -1
  197. package/dist/chunk-VY2UYN5R.mjs +0 -224
  198. package/dist/chunk-VY2UYN5R.mjs.map +0 -1
  199. package/dist/chunk-W2CRQFF6.mjs +0 -1352
  200. package/dist/chunk-W2CRQFF6.mjs.map +0 -1
  201. package/dist/chunk-W4UIVMVI.mjs +0 -10
  202. package/dist/chunk-W4UIVMVI.mjs.map +0 -1
  203. package/dist/chunk-WZ5QFROO.mjs +0 -23
  204. package/dist/chunk-WZ5QFROO.mjs.map +0 -1
  205. package/dist/chunk-XIVV5IWN.mjs +0 -541
  206. package/dist/chunk-XIVV5IWN.mjs.map +0 -1
  207. package/dist/chunk-YW7OBE6Q.mjs +0 -119
  208. package/dist/chunk-YW7OBE6Q.mjs.map +0 -1
  209. package/dist/chunk-Z5CQMP54.mjs +0 -365
  210. package/dist/chunk-Z5CQMP54.mjs.map +0 -1
  211. package/dist/chunk-ZBE6MLHL.mjs +0 -230
  212. package/dist/chunk-ZBE6MLHL.mjs.map +0 -1
  213. package/dist/chunk-ZZ57EH5Z.mjs +0 -173
  214. package/dist/chunk-ZZ57EH5Z.mjs.map +0 -1
  215. package/dist/client-BT1mFQas.d.mts +0 -447
  216. package/dist/client-Nn0q4eO4.d.ts +0 -447
  217. package/dist/client-cache-CIlyBlmx.d.ts +0 -6
  218. package/dist/client-cache-D-EZ7XVW.d.mts +0 -6
  219. package/dist/client-plugins-Cw4qUGsw.d.ts +0 -1855
  220. package/dist/client-plugins-DQQ1adXM.d.mts +0 -1855
  221. package/dist/client-plugins.cjs +0 -415
  222. package/dist/client-plugins.cjs.map +0 -1
  223. package/dist/client-plugins.d.mts +0 -22
  224. package/dist/client-plugins.d.ts +0 -22
  225. package/dist/client-plugins.mjs +0 -10
  226. package/dist/client-plugins.mjs.map +0 -1
  227. package/dist/client.cjs +0 -5402
  228. package/dist/client.cjs.map +0 -1
  229. package/dist/client.d.mts +0 -447
  230. package/dist/client.d.ts +0 -447
  231. package/dist/client.mjs +0 -110
  232. package/dist/client.mjs.map +0 -1
  233. package/dist/config.cjs +0 -38
  234. package/dist/config.cjs.map +0 -1
  235. package/dist/config.d.mts +0 -29
  236. package/dist/config.d.ts +0 -29
  237. package/dist/config.mjs +0 -10
  238. package/dist/config.mjs.map +0 -1
  239. package/dist/cron.cjs +0 -406
  240. package/dist/cron.cjs.map +0 -1
  241. package/dist/cron.d.mts +0 -78
  242. package/dist/cron.d.ts +0 -78
  243. package/dist/cron.mjs +0 -30
  244. package/dist/cron.mjs.map +0 -1
  245. package/dist/deferred.cjs +0 -438
  246. package/dist/deferred.cjs.map +0 -1
  247. package/dist/deferred.d.mts +0 -42
  248. package/dist/deferred.d.ts +0 -42
  249. package/dist/deferred.mjs +0 -28
  250. package/dist/deferred.mjs.map +0 -1
  251. package/dist/deployment.cjs +0 -199
  252. package/dist/deployment.cjs.map +0 -1
  253. package/dist/deployment.d.mts +0 -34
  254. package/dist/deployment.d.ts +0 -34
  255. package/dist/deployment.mjs +0 -38
  256. package/dist/deployment.mjs.map +0 -1
  257. package/dist/devtools-LVC3VB5P.mjs +0 -370
  258. package/dist/devtools-LVC3VB5P.mjs.map +0 -1
  259. package/dist/devtools-client-3XRTBND5.mjs +0 -216
  260. package/dist/devtools-client-3XRTBND5.mjs.map +0 -1
  261. package/dist/devtools-ui-NJKFORTG.mjs +0 -1349
  262. package/dist/devtools-ui-NJKFORTG.mjs.map +0 -1
  263. package/dist/docs.cjs +0 -5553
  264. package/dist/docs.cjs.map +0 -1
  265. package/dist/docs.d.mts +0 -69
  266. package/dist/docs.d.ts +0 -69
  267. package/dist/docs.mjs +0 -46
  268. package/dist/docs.mjs.map +0 -1
  269. package/dist/env-types.cjs +0 -223
  270. package/dist/env-types.cjs.map +0 -1
  271. package/dist/env-types.d.mts +0 -11
  272. package/dist/env-types.d.ts +0 -11
  273. package/dist/env-types.mjs +0 -9
  274. package/dist/env-types.mjs.map +0 -1
  275. package/dist/env.cjs +0 -215
  276. package/dist/env.cjs.map +0 -1
  277. package/dist/env.d.mts +0 -45
  278. package/dist/env.d.ts +0 -45
  279. package/dist/env.mjs +0 -22
  280. package/dist/env.mjs.map +0 -1
  281. package/dist/environment/vite.d.mts +0 -22
  282. package/dist/environment/vite.d.ts +0 -22
  283. package/dist/environment.cjs +0 -96
  284. package/dist/environment.cjs.map +0 -1
  285. package/dist/environment.d.mts +0 -18
  286. package/dist/environment.d.ts +0 -18
  287. package/dist/environment.mjs +0 -14
  288. package/dist/environment.mjs.map +0 -1
  289. package/dist/headers.cjs +0 -126
  290. package/dist/headers.cjs.map +0 -1
  291. package/dist/headers.d.mts +0 -22
  292. package/dist/headers.d.ts +0 -22
  293. package/dist/headers.mjs +0 -12
  294. package/dist/headers.mjs.map +0 -1
  295. package/dist/i18n/client.d.mts +0 -32
  296. package/dist/i18n/client.d.ts +0 -32
  297. package/dist/i18n/index.d.mts +0 -20
  298. package/dist/i18n/index.d.ts +0 -20
  299. package/dist/i18n/server.d.mts +0 -30
  300. package/dist/i18n/server.d.ts +0 -30
  301. package/dist/image/server.d.mts +0 -37
  302. package/dist/image/server.d.ts +0 -37
  303. package/dist/image/sharp.d.mts +0 -7
  304. package/dist/image/sharp.d.ts +0 -7
  305. package/dist/image-config-Duob7wER.d.mts +0 -50
  306. package/dist/image-config-Duob7wER.d.ts +0 -50
  307. package/dist/image.cjs +0 -209
  308. package/dist/image.cjs.map +0 -1
  309. package/dist/image.d.mts +0 -39
  310. package/dist/image.d.ts +0 -39
  311. package/dist/image.mjs +0 -165
  312. package/dist/image.mjs.map +0 -1
  313. package/dist/index.cjs +0 -41822
  314. package/dist/index.cjs.map +0 -1
  315. package/dist/index.d.mts +0 -452
  316. package/dist/index.d.ts +0 -452
  317. package/dist/index.mjs +0 -973
  318. package/dist/index.mjs.map +0 -1
  319. package/dist/integration-api-CHT2OKAf.d.mts +0 -93
  320. package/dist/integration-api-CHT2OKAf.d.ts +0 -93
  321. package/dist/integration-orm-GQLGU66X.mjs +0 -13
  322. package/dist/integration-orm-GQLGU66X.mjs.map +0 -1
  323. package/dist/integrations.cjs +0 -2820
  324. package/dist/integrations.cjs.map +0 -1
  325. package/dist/integrations.d.mts +0 -22
  326. package/dist/integrations.d.ts +0 -22
  327. package/dist/integrations.mjs +0 -51
  328. package/dist/integrations.mjs.map +0 -1
  329. package/dist/internal/build-runtime.d.mts +0 -39
  330. package/dist/internal/build-runtime.d.ts +0 -39
  331. package/dist/internal/client-runtime.d.mts +0 -2
  332. package/dist/internal/client-runtime.d.ts +0 -2
  333. package/dist/internal/config-runtime.d.mts +0 -39
  334. package/dist/internal/config-runtime.d.ts +0 -39
  335. package/dist/internal/production-node-env.d.mts +0 -12
  336. package/dist/internal/production-node-env.d.ts +0 -12
  337. package/dist/internal/production-runtime.d.mts +0 -39
  338. package/dist/internal/production-runtime.d.ts +0 -39
  339. package/dist/layers-VWVDTPUZ.mjs +0 -16
  340. package/dist/layers-VWVDTPUZ.mjs.map +0 -1
  341. package/dist/manager-THKFTOFE.mjs +0 -10
  342. package/dist/manager-THKFTOFE.mjs.map +0 -1
  343. package/dist/markdown.cjs +0 -299
  344. package/dist/markdown.cjs.map +0 -1
  345. package/dist/markdown.d.mts +0 -43
  346. package/dist/markdown.d.ts +0 -43
  347. package/dist/markdown.mjs +0 -14
  348. package/dist/markdown.mjs.map +0 -1
  349. package/dist/metadata-BAPg_Nmo.d.ts +0 -22
  350. package/dist/metadata-_6i9oFG3.d.mts +0 -22
  351. package/dist/middleware.cjs +0 -2148
  352. package/dist/middleware.cjs.map +0 -1
  353. package/dist/middleware.d.mts +0 -164
  354. package/dist/middleware.d.ts +0 -164
  355. package/dist/middleware.mjs +0 -49
  356. package/dist/middleware.mjs.map +0 -1
  357. package/dist/navigation-errors-Dvwpzaer.d.mts +0 -13
  358. package/dist/navigation-errors-Dvwpzaer.d.ts +0 -13
  359. package/dist/navigation.cjs +0 -1329
  360. package/dist/navigation.cjs.map +0 -1
  361. package/dist/navigation.d.mts +0 -14
  362. package/dist/navigation.d.ts +0 -14
  363. package/dist/navigation.mjs +0 -33
  364. package/dist/navigation.mjs.map +0 -1
  365. package/dist/nitro-QO5LV6QK.mjs +0 -689
  366. package/dist/nitro-QO5LV6QK.mjs.map +0 -1
  367. package/dist/observability.cjs +0 -186
  368. package/dist/observability.cjs.map +0 -1
  369. package/dist/observability.d.mts +0 -335
  370. package/dist/observability.d.ts +0 -335
  371. package/dist/observability.mjs +0 -16
  372. package/dist/observability.mjs.map +0 -1
  373. package/dist/params-BALtrRim.d.ts +0 -15
  374. package/dist/params-ry-lxqmy.d.mts +0 -15
  375. package/dist/plugin-BJDf43dc.d.mts +0 -165
  376. package/dist/plugin-BJDf43dc.d.ts +0 -165
  377. package/dist/plugin.cjs +0 -23225
  378. package/dist/plugin.d.mts +0 -22
  379. package/dist/plugin.d.ts +0 -22
  380. package/dist/production-runtime-BoJDc5mc.d.ts +0 -79
  381. package/dist/production-runtime-C_B79w2P.d.mts +0 -28
  382. package/dist/production-runtime-DDEM1D2q.d.ts +0 -28
  383. package/dist/production-runtime-DPfgMV9Y.d.mts +0 -79
  384. package/dist/query/client.d.mts +0 -61
  385. package/dist/query/client.d.ts +0 -61
  386. package/dist/query/index.d.mts +0 -90
  387. package/dist/query/index.d.ts +0 -90
  388. package/dist/query/parsers.d.mts +0 -25
  389. package/dist/query/parsers.d.ts +0 -25
  390. package/dist/query/server.d.mts +0 -55
  391. package/dist/query/server.d.ts +0 -55
  392. package/dist/request-BrFBuc8G.d.mts +0 -6
  393. package/dist/request-BslSZIRz.d.ts +0 -6
  394. package/dist/request.d.mts +0 -2
  395. package/dist/request.d.ts +0 -2
  396. package/dist/resolver-C6iecsDV.d.ts +0 -14
  397. package/dist/resolver-DlOPpjkB.d.mts +0 -14
  398. package/dist/route-runtime-DoOHzCAD.d.mts +0 -38
  399. package/dist/route-runtime-DoOHzCAD.d.ts +0 -38
  400. package/dist/router.d.mts +0 -36
  401. package/dist/router.d.ts +0 -36
  402. package/dist/routes.d.mts +0 -224
  403. package/dist/routes.d.ts +0 -224
  404. package/dist/runtime-9nQjVM7X.d.mts +0 -206
  405. package/dist/runtime-B6GvwDS1.d.ts +0 -27
  406. package/dist/runtime-DeAAZ6gO.d.mts +0 -27
  407. package/dist/runtime-DgeS2skB.d.ts +0 -206
  408. package/dist/server-action-security.d.mts +0 -43
  409. package/dist/server-action-security.d.ts +0 -43
  410. package/dist/server-fn-client.d.mts +0 -32
  411. package/dist/server-fn-client.d.ts +0 -32
  412. package/dist/server-fn.d.mts +0 -93
  413. package/dist/server-fn.d.ts +0 -93
  414. package/dist/server-plugins.d.mts +0 -55
  415. package/dist/server-plugins.d.ts +0 -55
  416. package/dist/server-query-client.d.mts +0 -50
  417. package/dist/server-query-client.d.ts +0 -50
  418. package/dist/server-query.d.mts +0 -36
  419. package/dist/server-query.d.ts +0 -36
  420. package/dist/server.d.mts +0 -48
  421. package/dist/server.d.ts +0 -48
  422. package/dist/storage.d.mts +0 -52
  423. package/dist/storage.d.ts +0 -52
  424. package/dist/testing.d.mts +0 -101
  425. package/dist/testing.d.ts +0 -101
  426. package/dist/transport-BmbGTXA5.d.mts +0 -49
  427. package/dist/transport-BmbGTXA5.d.ts +0 -49
  428. package/dist/types-BH1lhg5G.d.mts +0 -81
  429. package/dist/types-BH1lhg5G.d.ts +0 -81
  430. package/dist/types-C9N-nk5R.d.mts +0 -53
  431. package/dist/types-C9N-nk5R.d.ts +0 -53
  432. package/dist/types-D1A6-XvH.d.mts +0 -73
  433. package/dist/types-D1A6-XvH.d.ts +0 -73
  434. package/dist/utils-CHXlMDkg.d.mts +0 -23
  435. package/dist/utils-Drsyz1Vj.d.ts +0 -23
  436. package/dist/version.d.mts +0 -3
  437. package/dist/version.d.ts +0 -3
  438. package/dist/vite.d.mts +0 -22
  439. package/dist/vite.d.ts +0 -22
  440. package/dist/workflows.d.mts +0 -110
  441. package/dist/workflows.d.ts +0 -110
@@ -1,69 +0,0 @@
1
- import {
2
- _setCurrentRequestResolver
3
- } from "./chunk-LM2YNO4U.mjs";
4
- import {
5
- __name
6
- } from "./chunk-CGILA3WO.mjs";
7
-
8
- // src/server/request.ts
9
- import { AsyncLocalStorage } from "async_hooks";
10
- var REQUEST_STORAGE_KEY = /* @__PURE__ */ Symbol.for("@farm.js/core/request-storage");
11
- function getRequestStore() {
12
- const runtime = globalThis;
13
- const existing = runtime[REQUEST_STORAGE_KEY];
14
- if (existing instanceof AsyncLocalStorage) {
15
- return existing;
16
- }
17
- const storage = new AsyncLocalStorage();
18
- runtime[REQUEST_STORAGE_KEY] = storage;
19
- return storage;
20
- }
21
- __name(getRequestStore, "getRequestStore");
22
- var requestStore = getRequestStore();
23
- _setCurrentRequestResolver(() => requestStore.getStore());
24
- function createWebRequestFromFarmRequest(req) {
25
- const forwardedHost = req.headers["x-forwarded-host"];
26
- const host = Array.isArray(forwardedHost) ? forwardedHost[0] : forwardedHost || req.headers.host || "localhost";
27
- const forwardedProto = req.headers["x-forwarded-proto"];
28
- const proto = Array.isArray(forwardedProto) ? forwardedProto[0] : forwardedProto || "http";
29
- const fullUrl = new URL(req.url || "/", `${proto}://${host}`).toString();
30
- const headers = new Headers();
31
- for (const [key, value] of Object.entries(req.headers)) {
32
- if (value == null) {
33
- continue;
34
- }
35
- if (Array.isArray(value)) {
36
- for (const item of value) {
37
- headers.append(key, item);
38
- }
39
- continue;
40
- }
41
- headers.set(key, value);
42
- }
43
- return new Request(fullUrl, {
44
- method: req.method,
45
- headers
46
- });
47
- }
48
- __name(createWebRequestFromFarmRequest, "createWebRequestFromFarmRequest");
49
- async function _runWithCurrentRequest(request, fn) {
50
- return requestStore.run(request, fn);
51
- }
52
- __name(_runWithCurrentRequest, "_runWithCurrentRequest");
53
- function getCurrentRequest() {
54
- const request = requestStore.getStore();
55
- if (!request) {
56
- throw new Error(
57
- "No current request is available. getCurrentRequest() can only be used during server rendering."
58
- );
59
- }
60
- return request;
61
- }
62
- __name(getCurrentRequest, "getCurrentRequest");
63
-
64
- export {
65
- createWebRequestFromFarmRequest,
66
- _runWithCurrentRequest,
67
- getCurrentRequest
68
- };
69
- //# sourceMappingURL=chunk-RHIFZZUI.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/server/request.ts"],"sourcesContent":["import { AsyncLocalStorage } from \"node:async_hooks\";\nimport type { FarmRequest } from \"../types\";\nimport { _setCurrentRequestResolver } from \"./request-bridge\";\n\nconst REQUEST_STORAGE_KEY = Symbol.for(\"@farm.js/core/request-storage\");\n\nfunction getRequestStore(): AsyncLocalStorage<Request> {\n const runtime = globalThis as typeof globalThis & Record<PropertyKey, unknown>;\n const existing = runtime[REQUEST_STORAGE_KEY];\n if (existing instanceof AsyncLocalStorage) {\n return existing as AsyncLocalStorage<Request>;\n }\n\n const storage = new AsyncLocalStorage<Request>();\n runtime[REQUEST_STORAGE_KEY] = storage;\n return storage;\n}\n\nconst requestStore = getRequestStore();\n\n_setCurrentRequestResolver(() => requestStore.getStore());\n\nexport function createWebRequestFromFarmRequest(req: FarmRequest): Request {\n const forwardedHost = req.headers[\"x-forwarded-host\"];\n const host = Array.isArray(forwardedHost)\n ? forwardedHost[0]\n : forwardedHost || req.headers.host || \"localhost\";\n const forwardedProto = req.headers[\"x-forwarded-proto\"];\n const proto = Array.isArray(forwardedProto) ? forwardedProto[0] : forwardedProto || \"http\";\n const fullUrl = new URL(req.url || \"/\", `${proto}://${host}`).toString();\n\n const headers = new Headers();\n for (const [key, value] of Object.entries(req.headers)) {\n if (value == null) {\n continue;\n }\n\n if (Array.isArray(value)) {\n for (const item of value) {\n headers.append(key, item);\n }\n continue;\n }\n\n headers.set(key, value);\n }\n\n return new Request(fullUrl, {\n method: req.method,\n headers,\n });\n}\n\nexport async function _runWithCurrentRequest<T>(\n request: Request,\n fn: () => Promise<T> | T,\n): Promise<T> {\n return requestStore.run(request, fn);\n}\n\nexport function getCurrentRequest(): Request {\n const request = requestStore.getStore();\n if (!request) {\n throw new Error(\n \"No current request is available. getCurrentRequest() can only be used during server rendering.\",\n );\n }\n\n return request;\n}\n"],"mappings":";;;;;;;;AAAA,SAAS,yBAAyB;AAIlC,IAAM,sBAAsB,uBAAO,IAAI,+BAA+B;AAEtE,SAAS,kBAA8C;AACrD,QAAM,UAAU;AAChB,QAAM,WAAW,QAAQ,mBAAmB;AAC5C,MAAI,oBAAoB,mBAAmB;AACzC,WAAO;AAAA,EACT;AAEA,QAAM,UAAU,IAAI,kBAA2B;AAC/C,UAAQ,mBAAmB,IAAI;AAC/B,SAAO;AACT;AAVS;AAYT,IAAM,eAAe,gBAAgB;AAErC,2BAA2B,MAAM,aAAa,SAAS,CAAC;AAEjD,SAAS,gCAAgC,KAA2B;AACzE,QAAM,gBAAgB,IAAI,QAAQ,kBAAkB;AACpD,QAAM,OAAO,MAAM,QAAQ,aAAa,IACpC,cAAc,CAAC,IACf,iBAAiB,IAAI,QAAQ,QAAQ;AACzC,QAAM,iBAAiB,IAAI,QAAQ,mBAAmB;AACtD,QAAM,QAAQ,MAAM,QAAQ,cAAc,IAAI,eAAe,CAAC,IAAI,kBAAkB;AACpF,QAAM,UAAU,IAAI,IAAI,IAAI,OAAO,KAAK,GAAG,KAAK,MAAM,IAAI,EAAE,EAAE,SAAS;AAEvE,QAAM,UAAU,IAAI,QAAQ;AAC5B,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,IAAI,OAAO,GAAG;AACtD,QAAI,SAAS,MAAM;AACjB;AAAA,IACF;AAEA,QAAI,MAAM,QAAQ,KAAK,GAAG;AACxB,iBAAW,QAAQ,OAAO;AACxB,gBAAQ,OAAO,KAAK,IAAI;AAAA,MAC1B;AACA;AAAA,IACF;AAEA,YAAQ,IAAI,KAAK,KAAK;AAAA,EACxB;AAEA,SAAO,IAAI,QAAQ,SAAS;AAAA,IAC1B,QAAQ,IAAI;AAAA,IACZ;AAAA,EACF,CAAC;AACH;AA7BgB;AA+BhB,eAAsB,uBACpB,SACA,IACY;AACZ,SAAO,aAAa,IAAI,SAAS,EAAE;AACrC;AALsB;AAOf,SAAS,oBAA6B;AAC3C,QAAM,UAAU,aAAa,SAAS;AACtC,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;AATgB;","names":[]}
@@ -1,187 +0,0 @@
1
- import {
2
- __name
3
- } from "./chunk-CGILA3WO.mjs";
4
-
5
- // src/env.ts
6
- var FARM_ENV_SYMBOL = /* @__PURE__ */ Symbol.for("farm.env");
7
- var farmEnvGlobal = globalThis;
8
- var currentEnv = getInitialEnv();
9
- function resolveEnv(config, source = getProcessEnv()) {
10
- const resolved = {
11
- server: resolveEnvScope(config?.server, source, "server"),
12
- public: resolveEnvScope(config?.public, source, "public")
13
- };
14
- return resolved;
15
- }
16
- __name(resolveEnv, "resolveEnv");
17
- function setEnv(env2) {
18
- currentEnv = normalizeResolvedEnv(env2);
19
- if (typeof window === "undefined") {
20
- farmEnvGlobal[FARM_ENV_SYMBOL] = currentEnv;
21
- }
22
- }
23
- __name(setEnv, "setEnv");
24
- function getResolvedEnv() {
25
- return getCurrentEnv();
26
- }
27
- __name(getResolvedEnv, "getResolvedEnv");
28
- function getEnv(key) {
29
- assertServerEnvAccess();
30
- if (key === void 0) {
31
- return getCurrentEnv().server;
32
- }
33
- return getCurrentEnv().server[key];
34
- }
35
- __name(getEnv, "getEnv");
36
- function getPublicEnv(key) {
37
- if (key === void 0) {
38
- return getCurrentEnv().public;
39
- }
40
- return getCurrentEnv().public[key];
41
- }
42
- __name(getPublicEnv, "getPublicEnv");
43
- var env = createEnvProxy("server");
44
- var serverEnv = env;
45
- var publicEnv = createEnvProxy("public");
46
- function resolveEnvScope(shape, source, scope) {
47
- if (!shape) {
48
- return {};
49
- }
50
- const resolved = {};
51
- for (const [key, parser] of Object.entries(shape)) {
52
- try {
53
- resolved[key] = parseEnvValue(parser, source[key], key, scope);
54
- } catch (error) {
55
- const message = error instanceof Error ? error.message : String(error);
56
- throw new Error(`Invalid ${scope} env "${key}": ${message}`);
57
- }
58
- }
59
- return resolved;
60
- }
61
- __name(resolveEnvScope, "resolveEnvScope");
62
- function parseEnvValue(parser, value, key, scope) {
63
- if (typeof parser === "function") {
64
- return parser(value, { key, scope });
65
- }
66
- if (parser && typeof parser.parse === "function") {
67
- return parser.parse(value);
68
- }
69
- throw new Error("expected a parser function or schema with parse()");
70
- }
71
- __name(parseEnvValue, "parseEnvValue");
72
- function createEnvProxy(scope) {
73
- return new Proxy(
74
- {},
75
- {
76
- get(_target, property) {
77
- if (typeof property === "symbol") {
78
- return void 0;
79
- }
80
- const env2 = getEnvScope(scope);
81
- return env2[property];
82
- },
83
- ownKeys() {
84
- return Reflect.ownKeys(getEnvScope(scope));
85
- },
86
- getOwnPropertyDescriptor(_target, property) {
87
- const env2 = getEnvScope(scope);
88
- if (!(property in env2)) {
89
- return void 0;
90
- }
91
- return {
92
- enumerable: true,
93
- configurable: true,
94
- value: env2[property]
95
- };
96
- },
97
- has(_target, property) {
98
- return property in getEnvScope(scope);
99
- }
100
- }
101
- );
102
- }
103
- __name(createEnvProxy, "createEnvProxy");
104
- function getEnvScope(scope) {
105
- if (scope === "server") {
106
- assertServerEnvAccess();
107
- }
108
- return getCurrentEnv()[scope] || {};
109
- }
110
- __name(getEnvScope, "getEnvScope");
111
- function assertServerEnvAccess() {
112
- if (typeof window !== "undefined") {
113
- throw new Error("Farm server env is not available in the browser. Use publicEnv.");
114
- }
115
- }
116
- __name(assertServerEnvAccess, "assertServerEnvAccess");
117
- function getInitialEnv() {
118
- const injectedEnv = getInjectedEnv();
119
- if (injectedEnv) {
120
- return injectedEnv;
121
- }
122
- if (typeof window === "undefined" && farmEnvGlobal[FARM_ENV_SYMBOL]) {
123
- return normalizeResolvedEnv(farmEnvGlobal[FARM_ENV_SYMBOL]);
124
- }
125
- return {
126
- server: {},
127
- public: getInjectedPublicEnv()
128
- };
129
- }
130
- __name(getInitialEnv, "getInitialEnv");
131
- function getCurrentEnv() {
132
- if (typeof window === "undefined" && farmEnvGlobal[FARM_ENV_SYMBOL]) {
133
- return farmEnvGlobal[FARM_ENV_SYMBOL];
134
- }
135
- return currentEnv;
136
- }
137
- __name(getCurrentEnv, "getCurrentEnv");
138
- function getInjectedEnv() {
139
- try {
140
- if (typeof __FARM_ENV__ !== "undefined" && __FARM_ENV__) {
141
- return normalizeResolvedEnv(__FARM_ENV__);
142
- }
143
- } catch {
144
- }
145
- return null;
146
- }
147
- __name(getInjectedEnv, "getInjectedEnv");
148
- function getInjectedPublicEnv() {
149
- try {
150
- if (typeof __FARM_PUBLIC_ENV__ !== "undefined" && __FARM_PUBLIC_ENV__) {
151
- return __FARM_PUBLIC_ENV__;
152
- }
153
- } catch {
154
- }
155
- return {};
156
- }
157
- __name(getInjectedPublicEnv, "getInjectedPublicEnv");
158
- function normalizeResolvedEnv(env2) {
159
- return {
160
- server: isRecord(env2.server) ? env2.server : {},
161
- public: isRecord(env2.public) ? env2.public : {}
162
- };
163
- }
164
- __name(normalizeResolvedEnv, "normalizeResolvedEnv");
165
- function isRecord(value) {
166
- return !!value && typeof value === "object" && !Array.isArray(value);
167
- }
168
- __name(isRecord, "isRecord");
169
- function getProcessEnv() {
170
- if (typeof process !== "undefined" && process.env) {
171
- return process.env;
172
- }
173
- return {};
174
- }
175
- __name(getProcessEnv, "getProcessEnv");
176
-
177
- export {
178
- resolveEnv,
179
- setEnv,
180
- getResolvedEnv,
181
- getEnv,
182
- getPublicEnv,
183
- env,
184
- serverEnv,
185
- publicEnv
186
- };
187
- //# sourceMappingURL=chunk-RSKVYESE.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/env.ts"],"sourcesContent":["export interface EnvSchema<TOutput = unknown> {\n parse(value: unknown): TOutput;\n}\n\nexport type EnvParser<TOutput = unknown> =\n | EnvSchema<TOutput>\n | ((value: string | undefined, context: { key: string; scope: \"server\" | \"public\" }) => TOutput);\n\nexport type EnvShape = Record<string, EnvParser<any>>;\n\nexport type InferEnvParser<TParser> =\n TParser extends EnvSchema<infer TOutput>\n ? TOutput\n : TParser extends (value: string | undefined, context: any) => infer TOutput\n ? TOutput\n : never;\n\nexport type InferEnvShape<TShape> = TShape extends EnvShape\n ? { [K in keyof TShape]: InferEnvParser<TShape[K]> }\n : {};\n\nexport interface FarmEnvConfig<\n TServer extends EnvShape = EnvShape,\n TPublic extends EnvShape = EnvShape,\n> {\n server?: TServer;\n public?: TPublic;\n}\n\nexport interface ResolvedFarmEnv<\n TServer extends Record<string, any> = Record<string, unknown>,\n TPublic extends Record<string, any> = Record<string, unknown>,\n> {\n server: TServer;\n public: TPublic;\n}\n\nexport type InferEnv<TConfig> =\n TConfig extends FarmEnvConfig<infer TServer, infer TPublic>\n ? ResolvedFarmEnv<InferEnvShape<TServer>, InferEnvShape<TPublic>>\n : ResolvedFarmEnv;\n\n/**\n * Augmented by generated src/farm-env.d.ts for project-specific autocomplete.\n */\nexport interface FarmEnvTypes {}\n\nexport type FarmServerEnv = FarmEnvTypes extends { server: infer TServer }\n ? TServer extends Record<string, any>\n ? TServer\n : Record<string, unknown>\n : Record<string, unknown>;\n\nexport type FarmPublicEnv = FarmEnvTypes extends { public: infer TPublic }\n ? TPublic extends Record<string, any>\n ? TPublic\n : Record<string, unknown>\n : Record<string, unknown>;\n\nexport type FarmTypedEnv = ResolvedFarmEnv<FarmServerEnv, FarmPublicEnv>;\n\ndeclare const __FARM_PUBLIC_ENV__: Record<string, unknown> | undefined;\ndeclare const __FARM_ENV__: ResolvedFarmEnv | undefined;\n\nconst FARM_ENV_SYMBOL = Symbol.for(\"farm.env\");\nconst farmEnvGlobal = globalThis as typeof globalThis & {\n [FARM_ENV_SYMBOL]?: ResolvedFarmEnv;\n};\nlet currentEnv: ResolvedFarmEnv = getInitialEnv();\n\nexport function resolveEnv<TConfig extends FarmEnvConfig<any, any> | undefined>(\n config: TConfig,\n source: Record<string, string | undefined> = getProcessEnv(),\n): InferEnv<NonNullable<TConfig>> {\n const resolved = {\n server: resolveEnvScope(config?.server, source, \"server\"),\n public: resolveEnvScope(config?.public, source, \"public\"),\n } as InferEnv<NonNullable<TConfig>>;\n\n return resolved;\n}\n\nexport function setEnv(env: ResolvedFarmEnv): void {\n currentEnv = normalizeResolvedEnv(env);\n if (typeof window === \"undefined\") {\n farmEnvGlobal[FARM_ENV_SYMBOL] = currentEnv;\n }\n}\n\nexport function getResolvedEnv<TEnv extends ResolvedFarmEnv = FarmTypedEnv>(): TEnv {\n return getCurrentEnv() as TEnv;\n}\n\nexport function getEnv<TServer extends Record<string, any> = FarmServerEnv>(): TServer;\nexport function getEnv<TKey extends Extract<keyof FarmServerEnv, string>>(\n key: TKey,\n): FarmServerEnv[TKey];\nexport function getEnv(key?: string): unknown {\n assertServerEnvAccess();\n if (key === undefined) {\n return getCurrentEnv().server;\n }\n\n return getCurrentEnv().server[key];\n}\n\nexport function getPublicEnv<TPublic extends Record<string, any> = FarmPublicEnv>(): TPublic;\nexport function getPublicEnv<TKey extends Extract<keyof FarmPublicEnv, string>>(\n key: TKey,\n): FarmPublicEnv[TKey];\nexport function getPublicEnv(key?: string): unknown {\n if (key === undefined) {\n return getCurrentEnv().public;\n }\n\n return getCurrentEnv().public[key];\n}\n\nexport const env = createEnvProxy(\"server\") as FarmServerEnv;\nexport const serverEnv = env;\nexport const publicEnv = createEnvProxy(\"public\") as FarmPublicEnv;\n\nfunction resolveEnvScope(\n shape: EnvShape | undefined,\n source: Record<string, string | undefined>,\n scope: \"server\" | \"public\",\n): Record<string, unknown> {\n if (!shape) {\n return {};\n }\n\n const resolved: Record<string, unknown> = {};\n\n for (const [key, parser] of Object.entries(shape)) {\n try {\n resolved[key] = parseEnvValue(parser, source[key], key, scope);\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error);\n throw new Error(`Invalid ${scope} env \"${key}\": ${message}`);\n }\n }\n\n return resolved;\n}\n\nfunction parseEnvValue(\n parser: EnvParser<any>,\n value: string | undefined,\n key: string,\n scope: \"server\" | \"public\",\n): unknown {\n if (typeof parser === \"function\") {\n return parser(value, { key, scope });\n }\n\n if (parser && typeof parser.parse === \"function\") {\n return parser.parse(value);\n }\n\n throw new Error(\"expected a parser function or schema with parse()\");\n}\n\nfunction createEnvProxy(scope: \"server\" | \"public\"): Record<string, unknown> {\n return new Proxy(\n {},\n {\n get(_target, property) {\n if (typeof property === \"symbol\") {\n return undefined;\n }\n\n const env = getEnvScope(scope);\n return env[property];\n },\n ownKeys() {\n return Reflect.ownKeys(getEnvScope(scope));\n },\n getOwnPropertyDescriptor(_target, property) {\n const env = getEnvScope(scope);\n if (!(property in env)) {\n return undefined;\n }\n\n return {\n enumerable: true,\n configurable: true,\n value: env[property as keyof typeof env],\n };\n },\n has(_target, property) {\n return property in getEnvScope(scope);\n },\n },\n );\n}\n\nfunction getEnvScope(scope: \"server\" | \"public\"): Record<string, unknown> {\n if (scope === \"server\") {\n assertServerEnvAccess();\n }\n\n return getCurrentEnv()[scope] || {};\n}\n\nfunction assertServerEnvAccess(): void {\n if (typeof window !== \"undefined\") {\n throw new Error(\"Farm server env is not available in the browser. Use publicEnv.\");\n }\n}\n\nfunction getInitialEnv(): ResolvedFarmEnv {\n const injectedEnv = getInjectedEnv();\n if (injectedEnv) {\n return injectedEnv;\n }\n\n if (typeof window === \"undefined\" && farmEnvGlobal[FARM_ENV_SYMBOL]) {\n return normalizeResolvedEnv(farmEnvGlobal[FARM_ENV_SYMBOL]);\n }\n\n return {\n server: {},\n public: getInjectedPublicEnv(),\n };\n}\n\nfunction getCurrentEnv(): ResolvedFarmEnv {\n if (typeof window === \"undefined\" && farmEnvGlobal[FARM_ENV_SYMBOL]) {\n return farmEnvGlobal[FARM_ENV_SYMBOL];\n }\n\n return currentEnv;\n}\n\nfunction getInjectedEnv(): ResolvedFarmEnv | null {\n try {\n if (typeof __FARM_ENV__ !== \"undefined\" && __FARM_ENV__) {\n return normalizeResolvedEnv(__FARM_ENV__);\n }\n } catch {\n // The compile-time global is only defined in Farm server bundles.\n }\n\n return null;\n}\n\nfunction getInjectedPublicEnv(): Record<string, unknown> {\n try {\n if (typeof __FARM_PUBLIC_ENV__ !== \"undefined\" && __FARM_PUBLIC_ENV__) {\n return __FARM_PUBLIC_ENV__;\n }\n } catch {\n // The compile-time global is only defined in Farm browser bundles.\n }\n\n return {};\n}\n\nfunction normalizeResolvedEnv(env: ResolvedFarmEnv): ResolvedFarmEnv {\n return {\n server: isRecord(env.server) ? env.server : {},\n public: isRecord(env.public) ? env.public : {},\n };\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return !!value && typeof value === \"object\" && !Array.isArray(value);\n}\n\nfunction getProcessEnv(): Record<string, string | undefined> {\n if (typeof process !== \"undefined\" && process.env) {\n return process.env;\n }\n\n return {};\n}\n"],"mappings":"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","names":["env"]}
@@ -1,211 +0,0 @@
1
- import {
2
- getFarmClientDataCache
3
- } from "./chunk-TQAEEJB4.mjs";
4
- import {
5
- isFarmServerQueryResult
6
- } from "./chunk-SCFX4UTD.mjs";
7
- import {
8
- createFarmCacheKey
9
- } from "./chunk-V3XURYJO.mjs";
10
- import {
11
- __name
12
- } from "./chunk-CGILA3WO.mjs";
13
-
14
- // src/server-query-client.ts
15
- import { useCallback, useEffect, useRef, useSyncExternalStore } from "react";
16
- var FARM_SERVER_QUERY_CLIENT_STATE = /* @__PURE__ */ Symbol.for("farm.serverQueryClientState");
17
- var serverQueryClientGlobal = globalThis;
18
- var serverQueryClientState = serverQueryClientGlobal[FARM_SERVER_QUERY_CLIENT_STATE] ?? (serverQueryClientGlobal[FARM_SERVER_QUERY_CLIENT_STATE] = {
19
- functionIds: /* @__PURE__ */ new WeakMap(),
20
- nextFunctionId: 0,
21
- active: []
22
- });
23
- function beginFarmServerQueryAction(actionId, args) {
24
- const active = serverQueryClientState.active.at(-1);
25
- return {
26
- actionId,
27
- args,
28
- provisionalKey: active?.provisionalKey
29
- };
30
- }
31
- __name(beginFarmServerQueryAction, "beginFarmServerQueryAction");
32
- function completeFarmServerQueryAction(invocation, value) {
33
- if (!isFarmServerQueryResult(value)) return value;
34
- const cache = getFarmClientDataCache();
35
- const metadata = value.__farmServerQuery;
36
- if (invocation.provisionalKey) {
37
- cache.alias(invocation.provisionalKey, metadata.key);
38
- }
39
- cache.set(metadata.key, {
40
- data: value.data,
41
- updatedAt: metadata.updatedAt,
42
- staleAt: metadata.staleTime === false ? Number.POSITIVE_INFINITY : metadata.updatedAt + metadata.staleTime,
43
- status: "success",
44
- error: null,
45
- fetching: false
46
- });
47
- return value.data;
48
- }
49
- __name(completeFarmServerQueryAction, "completeFarmServerQueryAction");
50
- async function fetchServerQuery(query, input, options = {}) {
51
- const cache = getFarmClientDataCache();
52
- const provisionalKey = createServerQueryCallKey(query, input);
53
- const entry = cache.get(provisionalKey);
54
- const stale = cache.isStale(provisionalKey);
55
- const inflight = cache.getInflight(provisionalKey);
56
- if (inflight) return inflight;
57
- if (!options.force && entry && !stale && entry.status !== "error") {
58
- return entry.data;
59
- }
60
- if (!options.force && entry && stale && entry.status !== "pending" && entry.status !== "error" && (options.swr ?? true)) {
61
- void executeServerQuery(query, input, provisionalKey, options).catch(() => void 0);
62
- return entry.data;
63
- }
64
- return executeServerQuery(query, input, provisionalKey, options);
65
- }
66
- __name(fetchServerQuery, "fetchServerQuery");
67
- function prefetchServerQuery(query, input, options = {}) {
68
- return fetchServerQuery(query, input, options);
69
- }
70
- __name(prefetchServerQuery, "prefetchServerQuery");
71
- function useServerQuery(query, input, options = {}) {
72
- const cache = getFarmClientDataCache();
73
- const key = createServerQueryCallKey(query, input);
74
- const inputRef = useRef(input);
75
- const optionsRef = useRef(options);
76
- const mountedKeyRef = useRef();
77
- inputRef.current = input;
78
- optionsRef.current = options;
79
- const subscribe = useCallback(
80
- (listener) => cache.subscribe(key, listener),
81
- [cache, key]
82
- );
83
- const getSnapshot = useCallback(() => cache.get(key), [cache, key]);
84
- const entry = useSyncExternalStore(subscribe, getSnapshot, () => void 0);
85
- const run = useCallback(
86
- (force = false) => fetchServerQuery(query, inputRef.current, {
87
- ...optionsRef.current,
88
- force
89
- }),
90
- [query]
91
- );
92
- useEffect(() => {
93
- if (options.enabled === false) return;
94
- const firstReadForKey = mountedKeyRef.current !== key;
95
- if (firstReadForKey) mountedKeyRef.current = key;
96
- if (firstReadForKey && (!entry || cache.isStale(key)) || entry?.invalidatedAt !== void 0 && !entry.fetching) {
97
- void run().catch(() => void 0);
98
- }
99
- }, [cache, entry, key, options.enabled, run]);
100
- useEffect(() => {
101
- if (options.enabled === false || typeof window === "undefined") return;
102
- const refreshIfStale = /* @__PURE__ */ __name(() => {
103
- if (cache.isStale(key)) void run().catch(() => void 0);
104
- }, "refreshIfStale");
105
- const onFocus = options.refetchOnWindowFocus === false ? void 0 : refreshIfStale;
106
- const onOnline = options.refetchOnReconnect === false ? void 0 : refreshIfStale;
107
- if (onFocus) window.addEventListener("focus", onFocus);
108
- if (onOnline) window.addEventListener("online", onOnline);
109
- return () => {
110
- if (onFocus) window.removeEventListener("focus", onFocus);
111
- if (onOnline) window.removeEventListener("online", onOnline);
112
- };
113
- }, [cache, key, options.enabled, options.refetchOnReconnect, options.refetchOnWindowFocus, run]);
114
- const status = entry?.status ?? (entry ? "success" : "idle");
115
- const fetching = entry?.fetching ?? false;
116
- return {
117
- data: entry?.data,
118
- error: entry?.error ?? null,
119
- status,
120
- pending: status === "pending" && (entry?.updatedAt ?? 0) === 0,
121
- fetching,
122
- stale: cache.isStale(key),
123
- refetch: /* @__PURE__ */ __name(() => run(true), "refetch")
124
- };
125
- }
126
- __name(useServerQuery, "useServerQuery");
127
- function createServerQueryCallKey(query, input) {
128
- let id = serverQueryClientState.functionIds.get(query);
129
- if (!id) {
130
- id = ++serverQueryClientState.nextFunctionId;
131
- serverQueryClientState.functionIds.set(query, id);
132
- }
133
- return createFarmCacheKey(["server-query-call", id, input]);
134
- }
135
- __name(createServerQueryCallKey, "createServerQueryCallKey");
136
- async function executeServerQuery(query, input, provisionalKey, options) {
137
- const cache = getFarmClientDataCache();
138
- const inflight = cache.getInflight(provisionalKey);
139
- if (inflight) return inflight;
140
- const previous = cache.get(provisionalKey);
141
- cache.set(provisionalKey, {
142
- data: previous?.data,
143
- updatedAt: previous?.updatedAt ?? 0,
144
- staleAt: previous?.staleAt ?? 0,
145
- gcAt: previous?.gcAt,
146
- invalidatedAt: previous?.invalidatedAt,
147
- status: "pending",
148
- error: null,
149
- fetching: true
150
- });
151
- const promise = (async () => {
152
- try {
153
- serverQueryClientState.active.push({ provisionalKey });
154
- let pending;
155
- try {
156
- pending = query(input);
157
- } finally {
158
- serverQueryClientState.active.pop();
159
- }
160
- const data = await pending;
161
- const transported = cache.get(provisionalKey);
162
- if (!transported || transported.fetching) {
163
- const updatedAt = Date.now();
164
- cache.set(provisionalKey, {
165
- data,
166
- updatedAt,
167
- staleAt: options.staleTime === false ? Number.POSITIVE_INFINITY : updatedAt + (options.staleTime ?? 0),
168
- status: "success",
169
- error: null,
170
- fetching: false
171
- });
172
- }
173
- return data;
174
- } catch (cause) {
175
- const error = normalizeServerQueryError(cause);
176
- const current = cache.get(provisionalKey);
177
- cache.set(provisionalKey, {
178
- data: current?.data,
179
- updatedAt: current?.updatedAt ?? 0,
180
- staleAt: current?.staleAt ?? 0,
181
- gcAt: current?.gcAt,
182
- invalidatedAt: current?.invalidatedAt,
183
- status: "error",
184
- error,
185
- fetching: false
186
- });
187
- throw error;
188
- } finally {
189
- cache.deleteInflight(provisionalKey);
190
- }
191
- })();
192
- cache.setInflight(provisionalKey, promise);
193
- return promise;
194
- }
195
- __name(executeServerQuery, "executeServerQuery");
196
- function normalizeServerQueryError(cause) {
197
- if (cause instanceof Error) return cause;
198
- const error = new Error(typeof cause === "string" ? cause : "Server query failed");
199
- error.cause = cause;
200
- return error;
201
- }
202
- __name(normalizeServerQueryError, "normalizeServerQueryError");
203
-
204
- export {
205
- beginFarmServerQueryAction,
206
- completeFarmServerQueryAction,
207
- fetchServerQuery,
208
- prefetchServerQuery,
209
- useServerQuery
210
- };
211
- //# sourceMappingURL=chunk-SADGIRS2.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/server-query-client.ts"],"sourcesContent":["\"use client\";\n\nimport { useCallback, useEffect, useRef, useSyncExternalStore } from \"react\";\nimport { createFarmCacheKey } from \"./cache\";\nimport {\n getFarmClientDataCache,\n type FarmClientCacheEntry,\n type FarmClientCacheStatus,\n} from \"./client-cache\";\nimport type { ServerQuery } from \"./server-query\";\nimport { isFarmServerQueryResult, type FarmServerQueryResult } from \"./server-query-protocol\";\n\nexport type ServerQueryFetchOptions = {\n /** Used only when a non-Farm transport returns plain data. Farm transports use the declaration. */\n staleTime?: number | false;\n /** Return stale data immediately while refreshing it in the background. Default true. */\n swr?: boolean;\n /** Always wait for a new result. */\n force?: boolean;\n};\n\nexport type UseServerQueryOptions = ServerQueryFetchOptions & {\n enabled?: boolean;\n refetchOnWindowFocus?: boolean;\n refetchOnReconnect?: boolean;\n};\n\nexport type UseServerQueryResult<TData> = {\n data: TData | undefined;\n error: Error | null;\n status: FarmClientCacheStatus;\n pending: boolean;\n fetching: boolean;\n stale: boolean;\n refetch: () => Promise<TData>;\n};\n\nexport type FarmServerQueryActionInvocation = {\n actionId: string;\n args: readonly unknown[];\n provisionalKey?: string;\n};\n\ntype ActiveServerQueryInvocation = {\n provisionalKey: string;\n};\n\ntype ServerQueryClientState = {\n functionIds: WeakMap<Function, number>;\n nextFunctionId: number;\n active: ActiveServerQueryInvocation[];\n};\n\nconst FARM_SERVER_QUERY_CLIENT_STATE = Symbol.for(\"farm.serverQueryClientState\");\nconst serverQueryClientGlobal = globalThis as typeof globalThis & {\n [FARM_SERVER_QUERY_CLIENT_STATE]?: ServerQueryClientState;\n};\nconst serverQueryClientState = (serverQueryClientGlobal[FARM_SERVER_QUERY_CLIENT_STATE] ??= {\n functionIds: new WeakMap(),\n nextFunctionId: 0,\n active: [],\n});\n\nexport function beginFarmServerQueryAction(\n actionId: string,\n args: readonly unknown[],\n): FarmServerQueryActionInvocation {\n const active = serverQueryClientState.active.at(-1);\n return {\n actionId,\n args,\n provisionalKey: active?.provisionalKey,\n };\n}\n\nexport function completeFarmServerQueryAction<TData>(\n invocation: FarmServerQueryActionInvocation,\n value: TData | FarmServerQueryResult<TData>,\n): TData {\n if (!isFarmServerQueryResult(value)) return value as TData;\n\n const cache = getFarmClientDataCache();\n const metadata = value.__farmServerQuery;\n if (invocation.provisionalKey) {\n cache.alias(invocation.provisionalKey, metadata.key);\n }\n\n cache.set(metadata.key, {\n data: value.data,\n updatedAt: metadata.updatedAt,\n staleAt:\n metadata.staleTime === false\n ? Number.POSITIVE_INFINITY\n : metadata.updatedAt + metadata.staleTime,\n status: \"success\",\n error: null,\n fetching: false,\n });\n\n return value.data as TData;\n}\n\nexport async function fetchServerQuery<TInput, TData>(\n query: ServerQuery<TInput, TData>,\n input: TInput,\n options: ServerQueryFetchOptions = {},\n): Promise<TData> {\n const cache = getFarmClientDataCache();\n const provisionalKey = createServerQueryCallKey(query, input);\n const entry = cache.get<TData>(provisionalKey);\n const stale = cache.isStale(provisionalKey);\n const inflight = cache.getInflight<TData>(provisionalKey);\n\n if (inflight) return inflight;\n\n if (!options.force && entry && !stale && entry.status !== \"error\") {\n return entry.data;\n }\n\n if (\n !options.force &&\n entry &&\n stale &&\n entry.status !== \"pending\" &&\n entry.status !== \"error\" &&\n (options.swr ?? true)\n ) {\n void executeServerQuery(query, input, provisionalKey, options).catch(() => undefined);\n return entry.data;\n }\n\n return executeServerQuery(query, input, provisionalKey, options);\n}\n\nexport function prefetchServerQuery<TInput, TData>(\n query: ServerQuery<TInput, TData>,\n input: TInput,\n options: Omit<ServerQueryFetchOptions, \"force\"> = {},\n): Promise<TData> {\n return fetchServerQuery(query, input, options);\n}\n\nexport function useServerQuery<TInput, TData>(\n query: ServerQuery<TInput, TData>,\n input: TInput,\n options: UseServerQueryOptions = {},\n): UseServerQueryResult<TData> {\n const cache = getFarmClientDataCache();\n const key = createServerQueryCallKey(query, input);\n const inputRef = useRef(input);\n const optionsRef = useRef(options);\n const mountedKeyRef = useRef<string>();\n inputRef.current = input;\n optionsRef.current = options;\n\n const subscribe = useCallback(\n (listener: () => void) => cache.subscribe(key, listener),\n [cache, key],\n );\n const getSnapshot = useCallback(() => cache.get<TData>(key), [cache, key]);\n const entry = useSyncExternalStore(subscribe, getSnapshot, () => undefined);\n\n const run = useCallback(\n (force = false) =>\n fetchServerQuery(query, inputRef.current, {\n ...optionsRef.current,\n force,\n }),\n [query],\n );\n\n useEffect(() => {\n if (options.enabled === false) return;\n\n const firstReadForKey = mountedKeyRef.current !== key;\n if (firstReadForKey) mountedKeyRef.current = key;\n\n if (\n (firstReadForKey && (!entry || cache.isStale(key))) ||\n (entry?.invalidatedAt !== undefined && !entry.fetching)\n ) {\n void run().catch(() => undefined);\n }\n }, [cache, entry, key, options.enabled, run]);\n\n useEffect(() => {\n if (options.enabled === false || typeof window === \"undefined\") return;\n\n const refreshIfStale = () => {\n if (cache.isStale(key)) void run().catch(() => undefined);\n };\n const onFocus = options.refetchOnWindowFocus === false ? undefined : refreshIfStale;\n const onOnline = options.refetchOnReconnect === false ? undefined : refreshIfStale;\n\n if (onFocus) window.addEventListener(\"focus\", onFocus);\n if (onOnline) window.addEventListener(\"online\", onOnline);\n return () => {\n if (onFocus) window.removeEventListener(\"focus\", onFocus);\n if (onOnline) window.removeEventListener(\"online\", onOnline);\n };\n }, [cache, key, options.enabled, options.refetchOnReconnect, options.refetchOnWindowFocus, run]);\n\n const status = entry?.status ?? (entry ? \"success\" : \"idle\");\n const fetching = entry?.fetching ?? false;\n\n return {\n data: entry?.data,\n error: entry?.error ?? null,\n status,\n pending: status === \"pending\" && (entry?.updatedAt ?? 0) === 0,\n fetching,\n stale: cache.isStale(key),\n refetch: () => run(true),\n };\n}\n\nfunction createServerQueryCallKey<TInput, TData>(\n query: ServerQuery<TInput, TData>,\n input: TInput,\n): string {\n let id = serverQueryClientState.functionIds.get(query);\n if (!id) {\n id = ++serverQueryClientState.nextFunctionId;\n serverQueryClientState.functionIds.set(query, id);\n }\n return createFarmCacheKey([\"server-query-call\", id, input]);\n}\n\nasync function executeServerQuery<TInput, TData>(\n query: ServerQuery<TInput, TData>,\n input: TInput,\n provisionalKey: string,\n options: ServerQueryFetchOptions,\n): Promise<TData> {\n const cache = getFarmClientDataCache();\n const inflight = cache.getInflight<TData>(provisionalKey);\n if (inflight) return inflight;\n\n const previous = cache.get<TData>(provisionalKey);\n cache.set(provisionalKey, {\n data: previous?.data as TData,\n updatedAt: previous?.updatedAt ?? 0,\n staleAt: previous?.staleAt ?? 0,\n gcAt: previous?.gcAt,\n invalidatedAt: previous?.invalidatedAt,\n status: \"pending\",\n error: null,\n fetching: true,\n });\n\n const promise = (async () => {\n try {\n serverQueryClientState.active.push({ provisionalKey });\n let pending: Promise<TData>;\n try {\n pending = query(input);\n } finally {\n serverQueryClientState.active.pop();\n }\n\n const data = await pending;\n const transported = cache.get<TData>(provisionalKey);\n if (!transported || transported.fetching) {\n const updatedAt = Date.now();\n cache.set(provisionalKey, {\n data,\n updatedAt,\n staleAt:\n options.staleTime === false\n ? Number.POSITIVE_INFINITY\n : updatedAt + (options.staleTime ?? 0),\n status: \"success\",\n error: null,\n fetching: false,\n });\n }\n return data;\n } catch (cause) {\n const error = normalizeServerQueryError(cause);\n const current = cache.get<TData>(provisionalKey);\n cache.set(provisionalKey, {\n data: current?.data as TData,\n updatedAt: current?.updatedAt ?? 0,\n staleAt: current?.staleAt ?? 0,\n gcAt: current?.gcAt,\n invalidatedAt: current?.invalidatedAt,\n status: \"error\",\n error,\n fetching: false,\n });\n throw error;\n } finally {\n cache.deleteInflight(provisionalKey);\n }\n })();\n\n cache.setInflight(provisionalKey, promise);\n return promise;\n}\n\nfunction normalizeServerQueryError(cause: unknown): Error {\n if (cause instanceof Error) return cause;\n const error = new Error(typeof cause === \"string\" ? cause : \"Server query failed\");\n (error as Error & { cause?: unknown }).cause = cause;\n return error;\n}\n"],"mappings":"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","names":[]}
@@ -1,28 +0,0 @@
1
- import {
2
- __name
3
- } from "./chunk-CGILA3WO.mjs";
4
-
5
- // src/server-query-protocol.ts
6
- var FARM_SERVER_QUERY_RESULT_VERSION = 1;
7
- function createFarmServerQueryResult(data, metadata) {
8
- return {
9
- __farmServerQuery: {
10
- version: FARM_SERVER_QUERY_RESULT_VERSION,
11
- ...metadata
12
- },
13
- data
14
- };
15
- }
16
- __name(createFarmServerQueryResult, "createFarmServerQueryResult");
17
- function isFarmServerQueryResult(value) {
18
- if (!value || typeof value !== "object") return false;
19
- const metadata = value.__farmServerQuery;
20
- return metadata?.version === FARM_SERVER_QUERY_RESULT_VERSION && typeof metadata.key === "string" && (metadata.staleTime === false || typeof metadata.staleTime === "number") && typeof metadata.updatedAt === "number" && "data" in value;
21
- }
22
- __name(isFarmServerQueryResult, "isFarmServerQueryResult");
23
-
24
- export {
25
- createFarmServerQueryResult,
26
- isFarmServerQueryResult
27
- };
28
- //# sourceMappingURL=chunk-SCFX4UTD.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/server-query-protocol.ts"],"sourcesContent":["export const FARM_SERVER_QUERY_RESULT_VERSION = 1 as const;\n\nexport type FarmServerQueryResult<TData> = {\n __farmServerQuery: {\n version: typeof FARM_SERVER_QUERY_RESULT_VERSION;\n key: string;\n staleTime: number | false;\n updatedAt: number;\n };\n data: TData;\n};\n\nexport function createFarmServerQueryResult<TData>(\n data: TData,\n metadata: Omit<FarmServerQueryResult<TData>[\"__farmServerQuery\"], \"version\">,\n): FarmServerQueryResult<TData> {\n return {\n __farmServerQuery: {\n version: FARM_SERVER_QUERY_RESULT_VERSION,\n ...metadata,\n },\n data,\n };\n}\n\nexport function isFarmServerQueryResult(value: unknown): value is FarmServerQueryResult<unknown> {\n if (!value || typeof value !== \"object\") return false;\n\n const metadata = (value as Partial<FarmServerQueryResult<unknown>>).__farmServerQuery;\n return (\n metadata?.version === FARM_SERVER_QUERY_RESULT_VERSION &&\n typeof metadata.key === \"string\" &&\n (metadata.staleTime === false || typeof metadata.staleTime === \"number\") &&\n typeof metadata.updatedAt === \"number\" &&\n \"data\" in value\n );\n}\n"],"mappings":";;;;;AAAO,IAAM,mCAAmC;AAYzC,SAAS,4BACd,MACA,UAC8B;AAC9B,SAAO;AAAA,IACL,mBAAmB;AAAA,MACjB,SAAS;AAAA,MACT,GAAG;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAXgB;AAaT,SAAS,wBAAwB,OAAyD;AAC/F,MAAI,CAAC,SAAS,OAAO,UAAU,SAAU,QAAO;AAEhD,QAAM,WAAY,MAAkD;AACpE,SACE,UAAU,YAAY,oCACtB,OAAO,SAAS,QAAQ,aACvB,SAAS,cAAc,SAAS,OAAO,SAAS,cAAc,aAC/D,OAAO,SAAS,cAAc,YAC9B,UAAU;AAEd;AAXgB;","names":[]}
@@ -1,66 +0,0 @@
1
- import {
2
- __name
3
- } from "./chunk-CGILA3WO.mjs";
4
-
5
- // src/build/production-vite.ts
6
- function canUseRolldownForRouteDiscovery(viteConfig) {
7
- return !viteConfig || Object.keys(viteConfig).length === 0;
8
- }
9
- __name(canUseRolldownForRouteDiscovery, "canUseRolldownForRouteDiscovery");
10
- function supportsRolldownVite(nodeVersion = process.versions.node) {
11
- const [major = 0, minor = 0] = nodeVersion.split(".").map(Number);
12
- return major === 20 && minor >= 19 || major > 22 || major === 22 && minor >= 12;
13
- }
14
- __name(supportsRolldownVite, "supportsRolldownVite");
15
- function requestedProductionViteBuilder() {
16
- const requested = process.env.FARM_VITE_BUILDER?.trim().toLowerCase();
17
- if (!requested) return void 0;
18
- if (requested === "rollup" || requested === "rolldown") return requested;
19
- throw new Error('FARM_VITE_BUILDER must be either "rolldown" or "rollup"');
20
- }
21
- __name(requestedProductionViteBuilder, "requestedProductionViteBuilder");
22
- async function loadRollupVite() {
23
- const runtime = await import("vite");
24
- return {
25
- build: runtime.build,
26
- createServer: runtime.createServer,
27
- loadEnv: runtime.loadEnv,
28
- builder: "rollup"
29
- };
30
- }
31
- __name(loadRollupVite, "loadRollupVite");
32
- async function loadFarmProductionVite() {
33
- const requested = requestedProductionViteBuilder();
34
- if (requested === "rollup" || !supportsRolldownVite()) {
35
- if (requested === "rolldown") {
36
- throw new Error(
37
- "FARM_VITE_BUILDER=rolldown requires Node 20.19+, Node 22.12+, or a newer release"
38
- );
39
- }
40
- return loadRollupVite();
41
- }
42
- try {
43
- const runtime = await import("vite-rolldown");
44
- return {
45
- build: runtime.build,
46
- createServer: runtime.createServer,
47
- loadEnv: runtime.loadEnv,
48
- builder: "rolldown"
49
- };
50
- } catch (error) {
51
- if (requested === "rolldown") {
52
- const detail = error instanceof Error ? `: ${error.message}` : "";
53
- throw new Error(
54
- `FARM_VITE_BUILDER=rolldown was requested, but the optional Vite Rolldown runtime could not be loaded${detail}`
55
- );
56
- }
57
- return loadRollupVite();
58
- }
59
- }
60
- __name(loadFarmProductionVite, "loadFarmProductionVite");
61
-
62
- export {
63
- canUseRolldownForRouteDiscovery,
64
- loadFarmProductionVite
65
- };
66
- //# sourceMappingURL=chunk-SL6HTIOK.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/build/production-vite.ts"],"sourcesContent":["import type {\n build as viteBuild,\n createServer as createViteServer,\n loadEnv as viteLoadEnv,\n} from \"vite\";\n\nexport type FarmProductionViteBuilder = \"rollup\" | \"rolldown\";\n\nexport interface FarmProductionViteRuntime {\n build: typeof viteBuild;\n createServer: typeof createViteServer;\n loadEnv: typeof viteLoadEnv;\n builder: FarmProductionViteBuilder;\n}\n\nexport function canUseRolldownForRouteDiscovery(viteConfig: object | undefined): boolean {\n return !viteConfig || Object.keys(viteConfig).length === 0;\n}\n\nexport function supportsRolldownVite(nodeVersion = process.versions.node): boolean {\n const [major = 0, minor = 0] = nodeVersion.split(\".\").map(Number);\n return (major === 20 && minor >= 19) || major > 22 || (major === 22 && minor >= 12);\n}\n\nfunction requestedProductionViteBuilder(): FarmProductionViteBuilder | undefined {\n const requested = process.env.FARM_VITE_BUILDER?.trim().toLowerCase();\n if (!requested) return undefined;\n if (requested === \"rollup\" || requested === \"rolldown\") return requested;\n throw new Error('FARM_VITE_BUILDER must be either \"rolldown\" or \"rollup\"');\n}\n\nasync function loadRollupVite(): Promise<FarmProductionViteRuntime> {\n const runtime = await import(\"vite\");\n return {\n build: runtime.build,\n createServer: runtime.createServer,\n loadEnv: runtime.loadEnv,\n builder: \"rollup\",\n };\n}\n\n/**\n * Prefer Vite's Rolldown-powered production builder on supported Node releases.\n * Vite 5 remains the compatibility path for Node 18, --no-optional installs,\n * and projects that explicitly request Rollup.\n */\nexport async function loadFarmProductionVite(): Promise<FarmProductionViteRuntime> {\n const requested = requestedProductionViteBuilder();\n if (requested === \"rollup\" || !supportsRolldownVite()) {\n if (requested === \"rolldown\") {\n throw new Error(\n \"FARM_VITE_BUILDER=rolldown requires Node 20.19+, Node 22.12+, or a newer release\",\n );\n }\n return loadRollupVite();\n }\n\n try {\n const runtime = (await import(\"vite-rolldown\")) as unknown as typeof import(\"vite\");\n return {\n build: runtime.build,\n createServer: runtime.createServer,\n loadEnv: runtime.loadEnv,\n builder: \"rolldown\",\n };\n } catch (error) {\n if (requested === \"rolldown\") {\n const detail = error instanceof Error ? `: ${error.message}` : \"\";\n throw new Error(\n `FARM_VITE_BUILDER=rolldown was requested, but the optional Vite Rolldown runtime could not be loaded${detail}`,\n );\n }\n return loadRollupVite();\n }\n}\n"],"mappings":";;;;;AAeO,SAAS,gCAAgC,YAAyC;AACvF,SAAO,CAAC,cAAc,OAAO,KAAK,UAAU,EAAE,WAAW;AAC3D;AAFgB;AAIT,SAAS,qBAAqB,cAAc,QAAQ,SAAS,MAAe;AACjF,QAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,YAAY,MAAM,GAAG,EAAE,IAAI,MAAM;AAChE,SAAQ,UAAU,MAAM,SAAS,MAAO,QAAQ,MAAO,UAAU,MAAM,SAAS;AAClF;AAHgB;AAKhB,SAAS,iCAAwE;AAC/E,QAAM,YAAY,QAAQ,IAAI,mBAAmB,KAAK,EAAE,YAAY;AACpE,MAAI,CAAC,UAAW,QAAO;AACvB,MAAI,cAAc,YAAY,cAAc,WAAY,QAAO;AAC/D,QAAM,IAAI,MAAM,yDAAyD;AAC3E;AALS;AAOT,eAAe,iBAAqD;AAClE,QAAM,UAAU,MAAM,OAAO,MAAM;AACnC,SAAO;AAAA,IACL,OAAO,QAAQ;AAAA,IACf,cAAc,QAAQ;AAAA,IACtB,SAAS,QAAQ;AAAA,IACjB,SAAS;AAAA,EACX;AACF;AARe;AAef,eAAsB,yBAA6D;AACjF,QAAM,YAAY,+BAA+B;AACjD,MAAI,cAAc,YAAY,CAAC,qBAAqB,GAAG;AACrD,QAAI,cAAc,YAAY;AAC5B,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AACA,WAAO,eAAe;AAAA,EACxB;AAEA,MAAI;AACF,UAAM,UAAW,MAAM,OAAO,eAAe;AAC7C,WAAO;AAAA,MACL,OAAO,QAAQ;AAAA,MACf,cAAc,QAAQ;AAAA,MACtB,SAAS,QAAQ;AAAA,MACjB,SAAS;AAAA,IACX;AAAA,EACF,SAAS,OAAO;AACd,QAAI,cAAc,YAAY;AAC5B,YAAM,SAAS,iBAAiB,QAAQ,KAAK,MAAM,OAAO,KAAK;AAC/D,YAAM,IAAI;AAAA,QACR,uGAAuG,MAAM;AAAA,MAC/G;AAAA,IACF;AACA,WAAO,eAAe;AAAA,EACxB;AACF;AA5BsB;","names":[]}