@farm.js/core 0.1.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (549) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +11 -0
  3. package/dist/after.cjs +227 -0
  4. package/dist/after.cjs.map +1 -0
  5. package/dist/after.d.mts +25 -0
  6. package/dist/after.d.ts +25 -0
  7. package/dist/after.mjs +14 -0
  8. package/dist/after.mjs.map +1 -0
  9. package/dist/agent-runtime.cjs +2379 -0
  10. package/dist/agent-runtime.cjs.map +1 -0
  11. package/dist/agent-runtime.d.mts +93 -0
  12. package/dist/agent-runtime.d.ts +93 -0
  13. package/dist/agent-runtime.mjs +479 -0
  14. package/dist/agent-runtime.mjs.map +1 -0
  15. package/dist/api/route-manager.cjs +1196 -0
  16. package/dist/api/route-manager.cjs.map +1 -0
  17. package/dist/api/route-manager.d.mts +64 -0
  18. package/dist/api/route-manager.d.ts +64 -0
  19. package/dist/api/route-manager.mjs +34 -0
  20. package/dist/api/route-manager.mjs.map +1 -0
  21. package/dist/api/runtime.cjs +272 -0
  22. package/dist/api/runtime.cjs.map +1 -0
  23. package/dist/api/runtime.d.mts +16 -0
  24. package/dist/api/runtime.d.ts +16 -0
  25. package/dist/api/runtime.mjs +16 -0
  26. package/dist/api/runtime.mjs.map +1 -0
  27. package/dist/api.cjs +3199 -0
  28. package/dist/api.cjs.map +1 -0
  29. package/dist/api.d.mts +190 -0
  30. package/dist/api.d.ts +190 -0
  31. package/dist/api.mjs +63 -0
  32. package/dist/api.mjs.map +1 -0
  33. package/dist/app-BiX4qb-d.d.mts +265 -0
  34. package/dist/app-CFRNJXP1.d.ts +265 -0
  35. package/dist/app-markdown.cjs +220 -0
  36. package/dist/app-markdown.cjs.map +1 -0
  37. package/dist/app-markdown.d.mts +21 -0
  38. package/dist/app-markdown.d.ts +21 -0
  39. package/dist/app-markdown.mjs +26 -0
  40. package/dist/app-markdown.mjs.map +1 -0
  41. package/dist/cache.cjs +543 -0
  42. package/dist/cache.cjs.map +1 -0
  43. package/dist/cache.d.mts +78 -0
  44. package/dist/cache.d.ts +78 -0
  45. package/dist/cache.mjs +38 -0
  46. package/dist/cache.mjs.map +1 -0
  47. package/dist/chunk-25D7G34K.mjs +142 -0
  48. package/dist/chunk-25D7G34K.mjs.map +1 -0
  49. package/dist/chunk-3QJO55ZF.mjs +3548 -0
  50. package/dist/chunk-3QJO55ZF.mjs.map +1 -0
  51. package/dist/chunk-3XNTL3FQ.mjs +452 -0
  52. package/dist/chunk-3XNTL3FQ.mjs.map +1 -0
  53. package/dist/chunk-44ZCFSKE.mjs +84 -0
  54. package/dist/chunk-44ZCFSKE.mjs.map +1 -0
  55. package/dist/chunk-4PTK6KT4.mjs +364 -0
  56. package/dist/chunk-4PTK6KT4.mjs.map +1 -0
  57. package/dist/chunk-4S3ORGFA.mjs +44 -0
  58. package/dist/chunk-4S3ORGFA.mjs.map +1 -0
  59. package/dist/chunk-5BY76U2M.mjs +1 -0
  60. package/dist/chunk-5BY76U2M.mjs.map +1 -0
  61. package/dist/chunk-5ZGPRGWV.mjs +136 -0
  62. package/dist/chunk-5ZGPRGWV.mjs.map +1 -0
  63. package/dist/chunk-6XDUHOEM.mjs +157 -0
  64. package/dist/chunk-6XDUHOEM.mjs.map +1 -0
  65. package/dist/chunk-74YTBPTY.mjs +450 -0
  66. package/dist/chunk-74YTBPTY.mjs.map +1 -0
  67. package/dist/chunk-7HO6AEOP.mjs +74 -0
  68. package/dist/chunk-7HO6AEOP.mjs.map +1 -0
  69. package/dist/chunk-7MABZJIM.mjs +29 -0
  70. package/dist/chunk-7MABZJIM.mjs.map +1 -0
  71. package/dist/chunk-7ZY5AIJO.mjs +161 -0
  72. package/dist/chunk-7ZY5AIJO.mjs.map +1 -0
  73. package/dist/chunk-AGS7UJ52.mjs +446 -0
  74. package/dist/chunk-AGS7UJ52.mjs.map +1 -0
  75. package/dist/chunk-AZ7YUVNR.mjs +65 -0
  76. package/dist/chunk-AZ7YUVNR.mjs.map +1 -0
  77. package/dist/chunk-B232I2GP.mjs +163 -0
  78. package/dist/chunk-B232I2GP.mjs.map +1 -0
  79. package/dist/chunk-B6N4ZB2H.mjs +718 -0
  80. package/dist/chunk-B6N4ZB2H.mjs.map +1 -0
  81. package/dist/chunk-BHG3LVHH.mjs +176 -0
  82. package/dist/chunk-BHG3LVHH.mjs.map +1 -0
  83. package/dist/chunk-C3DLZMBU.mjs +597 -0
  84. package/dist/chunk-C3DLZMBU.mjs.map +1 -0
  85. package/dist/chunk-CGILA3WO.mjs +14 -0
  86. package/dist/chunk-CGILA3WO.mjs.map +1 -0
  87. package/dist/chunk-CHFHNEMO.mjs +7088 -0
  88. package/dist/chunk-CHFHNEMO.mjs.map +1 -0
  89. package/dist/chunk-E2MPIBRE.mjs +149 -0
  90. package/dist/chunk-E2MPIBRE.mjs.map +1 -0
  91. package/dist/chunk-E6EPN5BT.mjs +203 -0
  92. package/dist/chunk-E6EPN5BT.mjs.map +1 -0
  93. package/dist/chunk-EVGBEZDF.mjs +215 -0
  94. package/dist/chunk-EVGBEZDF.mjs.map +1 -0
  95. package/dist/chunk-FQYDHKKU.mjs +128 -0
  96. package/dist/chunk-FQYDHKKU.mjs.map +1 -0
  97. package/dist/chunk-G3B5BRDY.mjs +5763 -0
  98. package/dist/chunk-G3B5BRDY.mjs.map +1 -0
  99. package/dist/chunk-GN72QAIH.mjs +146 -0
  100. package/dist/chunk-GN72QAIH.mjs.map +1 -0
  101. package/dist/chunk-GS6K5OCM.mjs +407 -0
  102. package/dist/chunk-GS6K5OCM.mjs.map +1 -0
  103. package/dist/chunk-GY2STC2S.mjs +180 -0
  104. package/dist/chunk-GY2STC2S.mjs.map +1 -0
  105. package/dist/chunk-GZP5W4K3.mjs +158 -0
  106. package/dist/chunk-GZP5W4K3.mjs.map +1 -0
  107. package/dist/chunk-H2FA2SBS.mjs +51 -0
  108. package/dist/chunk-H2FA2SBS.mjs.map +1 -0
  109. package/dist/chunk-HXP3ZSPC.mjs +211 -0
  110. package/dist/chunk-HXP3ZSPC.mjs.map +1 -0
  111. package/dist/chunk-ITN462YM.mjs +98 -0
  112. package/dist/chunk-ITN462YM.mjs.map +1 -0
  113. package/dist/chunk-J23HNLFY.mjs +72 -0
  114. package/dist/chunk-J23HNLFY.mjs.map +1 -0
  115. package/dist/chunk-J4FNJ5IU.mjs +179 -0
  116. package/dist/chunk-J4FNJ5IU.mjs.map +1 -0
  117. package/dist/chunk-JK25YEN6.mjs +219 -0
  118. package/dist/chunk-JK25YEN6.mjs.map +1 -0
  119. package/dist/chunk-JLWMCADZ.mjs +204 -0
  120. package/dist/chunk-JLWMCADZ.mjs.map +1 -0
  121. package/dist/chunk-JN3UU635.mjs +622 -0
  122. package/dist/chunk-JN3UU635.mjs.map +1 -0
  123. package/dist/chunk-K4667E2Q.mjs +1916 -0
  124. package/dist/chunk-K4667E2Q.mjs.map +1 -0
  125. package/dist/chunk-LGHEOHBU.mjs +218 -0
  126. package/dist/chunk-LGHEOHBU.mjs.map +1 -0
  127. package/dist/chunk-LLC7BNXW.mjs +275 -0
  128. package/dist/chunk-LLC7BNXW.mjs.map +1 -0
  129. package/dist/chunk-LM2YNO4U.mjs +24 -0
  130. package/dist/chunk-LM2YNO4U.mjs.map +1 -0
  131. package/dist/chunk-NNLCAVB6.mjs +391 -0
  132. package/dist/chunk-NNLCAVB6.mjs.map +1 -0
  133. package/dist/chunk-O3HADRW6.mjs +639 -0
  134. package/dist/chunk-O3HADRW6.mjs.map +1 -0
  135. package/dist/chunk-OYXO65LI.mjs +119 -0
  136. package/dist/chunk-OYXO65LI.mjs.map +1 -0
  137. package/dist/chunk-P7QDS5AT.mjs +191 -0
  138. package/dist/chunk-P7QDS5AT.mjs.map +1 -0
  139. package/dist/chunk-PRNYWD7K.mjs +599 -0
  140. package/dist/chunk-PRNYWD7K.mjs.map +1 -0
  141. package/dist/chunk-QF4PHCMA.mjs +422 -0
  142. package/dist/chunk-QF4PHCMA.mjs.map +1 -0
  143. package/dist/chunk-QFQRHRZS.mjs +1224 -0
  144. package/dist/chunk-QFQRHRZS.mjs.map +1 -0
  145. package/dist/chunk-QGOHVJ6J.mjs +63 -0
  146. package/dist/chunk-QGOHVJ6J.mjs.map +1 -0
  147. package/dist/chunk-QKVUNGAH.mjs +39 -0
  148. package/dist/chunk-QKVUNGAH.mjs.map +1 -0
  149. package/dist/chunk-QM6VV26B.mjs +149 -0
  150. package/dist/chunk-QM6VV26B.mjs.map +1 -0
  151. package/dist/chunk-RHIFZZUI.mjs +69 -0
  152. package/dist/chunk-RHIFZZUI.mjs.map +1 -0
  153. package/dist/chunk-RKI6TN3A.mjs +49 -0
  154. package/dist/chunk-RKI6TN3A.mjs.map +1 -0
  155. package/dist/chunk-RSKVYESE.mjs +187 -0
  156. package/dist/chunk-RSKVYESE.mjs.map +1 -0
  157. package/dist/chunk-S2XHZS7W.mjs +180 -0
  158. package/dist/chunk-S2XHZS7W.mjs.map +1 -0
  159. package/dist/chunk-SCFX4UTD.mjs +28 -0
  160. package/dist/chunk-SCFX4UTD.mjs.map +1 -0
  161. package/dist/chunk-SL6HTIOK.mjs +66 -0
  162. package/dist/chunk-SL6HTIOK.mjs.map +1 -0
  163. package/dist/chunk-SOU3Q3ZA.mjs +173 -0
  164. package/dist/chunk-SOU3Q3ZA.mjs.map +1 -0
  165. package/dist/chunk-SPBBQLXI.mjs +207 -0
  166. package/dist/chunk-SPBBQLXI.mjs.map +1 -0
  167. package/dist/chunk-SXZTEK3V.mjs +396 -0
  168. package/dist/chunk-SXZTEK3V.mjs.map +1 -0
  169. package/dist/chunk-T4QJQK76.mjs +459 -0
  170. package/dist/chunk-T4QJQK76.mjs.map +1 -0
  171. package/dist/chunk-TRORP7E4.mjs +41 -0
  172. package/dist/chunk-TRORP7E4.mjs.map +1 -0
  173. package/dist/chunk-TU4YJICB.mjs +728 -0
  174. package/dist/chunk-TU4YJICB.mjs.map +1 -0
  175. package/dist/chunk-TXCFGOHW.mjs +42 -0
  176. package/dist/chunk-TXCFGOHW.mjs.map +1 -0
  177. package/dist/chunk-UHE2TTLK.mjs +466 -0
  178. package/dist/chunk-UHE2TTLK.mjs.map +1 -0
  179. package/dist/chunk-UREJA4GZ.mjs +364 -0
  180. package/dist/chunk-UREJA4GZ.mjs.map +1 -0
  181. package/dist/chunk-USWZZUEH.mjs +25 -0
  182. package/dist/chunk-USWZZUEH.mjs.map +1 -0
  183. package/dist/chunk-UVCIEUJC.mjs +16 -0
  184. package/dist/chunk-UVCIEUJC.mjs.map +1 -0
  185. package/dist/chunk-V6WE6JSZ.mjs +352 -0
  186. package/dist/chunk-V6WE6JSZ.mjs.map +1 -0
  187. package/dist/chunk-V7RBCSDJ.mjs +170 -0
  188. package/dist/chunk-V7RBCSDJ.mjs.map +1 -0
  189. package/dist/chunk-VCANOYFI.mjs +588 -0
  190. package/dist/chunk-VCANOYFI.mjs.map +1 -0
  191. package/dist/chunk-WZ5QFROO.mjs +23 -0
  192. package/dist/chunk-WZ5QFROO.mjs.map +1 -0
  193. package/dist/chunk-Y2OJJD7R.mjs +543 -0
  194. package/dist/chunk-Y2OJJD7R.mjs.map +1 -0
  195. package/dist/chunk-Y7A27276.mjs +538 -0
  196. package/dist/chunk-Y7A27276.mjs.map +1 -0
  197. package/dist/chunk-YHU7SS6L.mjs +365 -0
  198. package/dist/chunk-YHU7SS6L.mjs.map +1 -0
  199. package/dist/chunk-ZBE6MLHL.mjs +230 -0
  200. package/dist/chunk-ZBE6MLHL.mjs.map +1 -0
  201. package/dist/chunk-ZJQNATYV.mjs +299 -0
  202. package/dist/chunk-ZJQNATYV.mjs.map +1 -0
  203. package/dist/client-D_yUjVhe.d.mts +402 -0
  204. package/dist/client-Dkc03WP8.d.ts +402 -0
  205. package/dist/client-cache-CIlyBlmx.d.ts +6 -0
  206. package/dist/client-cache-D-EZ7XVW.d.mts +6 -0
  207. package/dist/client-plugins-BZnpeTGA.d.ts +1848 -0
  208. package/dist/client-plugins-g4bzuCmo.d.mts +1848 -0
  209. package/dist/client-plugins.cjs +415 -0
  210. package/dist/client-plugins.cjs.map +1 -0
  211. package/dist/client-plugins.d.mts +21 -0
  212. package/dist/client-plugins.d.ts +21 -0
  213. package/dist/client-plugins.mjs +10 -0
  214. package/dist/client-plugins.mjs.map +1 -0
  215. package/dist/client.cjs +4571 -0
  216. package/dist/client.cjs.map +1 -0
  217. package/dist/client.d.mts +329 -0
  218. package/dist/client.d.ts +329 -0
  219. package/dist/client.mjs +103 -0
  220. package/dist/client.mjs.map +1 -0
  221. package/dist/config.cjs +38 -0
  222. package/dist/config.cjs.map +1 -0
  223. package/dist/config.d.mts +28 -0
  224. package/dist/config.d.ts +28 -0
  225. package/dist/config.mjs +10 -0
  226. package/dist/config.mjs.map +1 -0
  227. package/dist/cron.cjs +406 -0
  228. package/dist/cron.cjs.map +1 -0
  229. package/dist/cron.d.mts +78 -0
  230. package/dist/cron.d.ts +78 -0
  231. package/dist/cron.mjs +30 -0
  232. package/dist/cron.mjs.map +1 -0
  233. package/dist/deferred.cjs +438 -0
  234. package/dist/deferred.cjs.map +1 -0
  235. package/dist/deferred.d.mts +42 -0
  236. package/dist/deferred.d.ts +42 -0
  237. package/dist/deferred.mjs +28 -0
  238. package/dist/deferred.mjs.map +1 -0
  239. package/dist/deployment.cjs +199 -0
  240. package/dist/deployment.cjs.map +1 -0
  241. package/dist/deployment.d.mts +34 -0
  242. package/dist/deployment.d.ts +34 -0
  243. package/dist/deployment.mjs +38 -0
  244. package/dist/deployment.mjs.map +1 -0
  245. package/dist/devtools-AE4RVXCM.mjs +370 -0
  246. package/dist/devtools-AE4RVXCM.mjs.map +1 -0
  247. package/dist/devtools-client-6WPY2AQU.mjs +225 -0
  248. package/dist/devtools-client-6WPY2AQU.mjs.map +1 -0
  249. package/dist/devtools-ui-NJKFORTG.mjs +1349 -0
  250. package/dist/devtools-ui-NJKFORTG.mjs.map +1 -0
  251. package/dist/docs.cjs +5541 -0
  252. package/dist/docs.cjs.map +1 -0
  253. package/dist/docs.d.mts +69 -0
  254. package/dist/docs.d.ts +69 -0
  255. package/dist/docs.mjs +46 -0
  256. package/dist/docs.mjs.map +1 -0
  257. package/dist/env-types.cjs +223 -0
  258. package/dist/env-types.cjs.map +1 -0
  259. package/dist/env-types.d.mts +11 -0
  260. package/dist/env-types.d.ts +11 -0
  261. package/dist/env-types.mjs +9 -0
  262. package/dist/env-types.mjs.map +1 -0
  263. package/dist/env.cjs +215 -0
  264. package/dist/env.cjs.map +1 -0
  265. package/dist/env.d.mts +45 -0
  266. package/dist/env.d.ts +45 -0
  267. package/dist/env.mjs +22 -0
  268. package/dist/env.mjs.map +1 -0
  269. package/dist/environment/vite.cjs +374 -0
  270. package/dist/environment/vite.cjs.map +1 -0
  271. package/dist/environment/vite.d.mts +22 -0
  272. package/dist/environment/vite.d.ts +22 -0
  273. package/dist/environment/vite.mjs +10 -0
  274. package/dist/environment/vite.mjs.map +1 -0
  275. package/dist/environment.cjs +96 -0
  276. package/dist/environment.cjs.map +1 -0
  277. package/dist/environment.d.mts +18 -0
  278. package/dist/environment.d.ts +18 -0
  279. package/dist/environment.mjs +14 -0
  280. package/dist/environment.mjs.map +1 -0
  281. package/dist/headers.cjs +126 -0
  282. package/dist/headers.cjs.map +1 -0
  283. package/dist/headers.d.mts +22 -0
  284. package/dist/headers.d.ts +22 -0
  285. package/dist/headers.mjs +12 -0
  286. package/dist/headers.mjs.map +1 -0
  287. package/dist/i18n/client.cjs +283 -0
  288. package/dist/i18n/client.cjs.map +1 -0
  289. package/dist/i18n/client.d.mts +32 -0
  290. package/dist/i18n/client.d.ts +32 -0
  291. package/dist/i18n/client.mjs +121 -0
  292. package/dist/i18n/client.mjs.map +1 -0
  293. package/dist/i18n/index.cjs +130 -0
  294. package/dist/i18n/index.cjs.map +1 -0
  295. package/dist/i18n/index.d.mts +20 -0
  296. package/dist/i18n/index.d.ts +20 -0
  297. package/dist/i18n/index.mjs +22 -0
  298. package/dist/i18n/index.mjs.map +1 -0
  299. package/dist/i18n/server.cjs +637 -0
  300. package/dist/i18n/server.cjs.map +1 -0
  301. package/dist/i18n/server.d.mts +30 -0
  302. package/dist/i18n/server.d.ts +30 -0
  303. package/dist/i18n/server.mjs +32 -0
  304. package/dist/i18n/server.mjs.map +1 -0
  305. package/dist/image/server.cjs +477 -0
  306. package/dist/image/server.cjs.map +1 -0
  307. package/dist/image/server.d.mts +37 -0
  308. package/dist/image/server.d.ts +37 -0
  309. package/dist/image/server.mjs +16 -0
  310. package/dist/image/server.mjs.map +1 -0
  311. package/dist/image/sharp.cjs +135 -0
  312. package/dist/image/sharp.cjs.map +1 -0
  313. package/dist/image/sharp.d.mts +7 -0
  314. package/dist/image/sharp.d.ts +7 -0
  315. package/dist/image/sharp.mjs +75 -0
  316. package/dist/image/sharp.mjs.map +1 -0
  317. package/dist/image-config-Duob7wER.d.mts +50 -0
  318. package/dist/image-config-Duob7wER.d.ts +50 -0
  319. package/dist/image.cjs +209 -0
  320. package/dist/image.cjs.map +1 -0
  321. package/dist/image.d.mts +39 -0
  322. package/dist/image.d.ts +39 -0
  323. package/dist/image.mjs +165 -0
  324. package/dist/image.mjs.map +1 -0
  325. package/dist/index.cjs +39433 -0
  326. package/dist/index.cjs.map +1 -0
  327. package/dist/index.d.mts +451 -0
  328. package/dist/index.d.ts +451 -0
  329. package/dist/index.mjs +930 -0
  330. package/dist/index.mjs.map +1 -0
  331. package/dist/integration-api-CHT2OKAf.d.mts +93 -0
  332. package/dist/integration-api-CHT2OKAf.d.ts +93 -0
  333. package/dist/integration-orm-GQLGU66X.mjs +13 -0
  334. package/dist/integration-orm-GQLGU66X.mjs.map +1 -0
  335. package/dist/integrations.cjs +2820 -0
  336. package/dist/integrations.cjs.map +1 -0
  337. package/dist/integrations.d.mts +21 -0
  338. package/dist/integrations.d.ts +21 -0
  339. package/dist/integrations.mjs +51 -0
  340. package/dist/integrations.mjs.map +1 -0
  341. package/dist/internal/build-runtime.cjs +31340 -0
  342. package/dist/internal/build-runtime.cjs.map +1 -0
  343. package/dist/internal/build-runtime.d.mts +38 -0
  344. package/dist/internal/build-runtime.d.ts +38 -0
  345. package/dist/internal/build-runtime.mjs +73 -0
  346. package/dist/internal/build-runtime.mjs.map +1 -0
  347. package/dist/internal/client-runtime.cjs +579 -0
  348. package/dist/internal/client-runtime.cjs.map +1 -0
  349. package/dist/internal/client-runtime.d.mts +2 -0
  350. package/dist/internal/client-runtime.d.ts +2 -0
  351. package/dist/internal/client-runtime.mjs +12 -0
  352. package/dist/internal/client-runtime.mjs.map +1 -0
  353. package/dist/internal/config-runtime.cjs +4172 -0
  354. package/dist/internal/config-runtime.cjs.map +1 -0
  355. package/dist/internal/config-runtime.d.mts +38 -0
  356. package/dist/internal/config-runtime.d.ts +38 -0
  357. package/dist/internal/config-runtime.mjs +38 -0
  358. package/dist/internal/config-runtime.mjs.map +1 -0
  359. package/dist/internal/production-node-env.cjs +65 -0
  360. package/dist/internal/production-node-env.cjs.map +1 -0
  361. package/dist/internal/production-node-env.d.mts +12 -0
  362. package/dist/internal/production-node-env.d.ts +12 -0
  363. package/dist/internal/production-node-env.mjs +8 -0
  364. package/dist/internal/production-node-env.mjs.map +1 -0
  365. package/dist/internal/production-runtime.cjs +1896 -0
  366. package/dist/internal/production-runtime.cjs.map +1 -0
  367. package/dist/internal/production-runtime.d.mts +39 -0
  368. package/dist/internal/production-runtime.d.ts +39 -0
  369. package/dist/internal/production-runtime.mjs +79 -0
  370. package/dist/internal/production-runtime.mjs.map +1 -0
  371. package/dist/layers-VWVDTPUZ.mjs +16 -0
  372. package/dist/layers-VWVDTPUZ.mjs.map +1 -0
  373. package/dist/manager-THKFTOFE.mjs +10 -0
  374. package/dist/manager-THKFTOFE.mjs.map +1 -0
  375. package/dist/markdown.cjs +299 -0
  376. package/dist/markdown.cjs.map +1 -0
  377. package/dist/markdown.d.mts +43 -0
  378. package/dist/markdown.d.ts +43 -0
  379. package/dist/markdown.mjs +14 -0
  380. package/dist/markdown.mjs.map +1 -0
  381. package/dist/metadata-C9NZxMDW.d.mts +22 -0
  382. package/dist/metadata-DAXRaOHx.d.ts +22 -0
  383. package/dist/middleware.cjs +2148 -0
  384. package/dist/middleware.cjs.map +1 -0
  385. package/dist/middleware.d.mts +163 -0
  386. package/dist/middleware.d.ts +163 -0
  387. package/dist/middleware.mjs +49 -0
  388. package/dist/middleware.mjs.map +1 -0
  389. package/dist/navigation-errors-Dvwpzaer.d.mts +13 -0
  390. package/dist/navigation-errors-Dvwpzaer.d.ts +13 -0
  391. package/dist/navigation.cjs +1304 -0
  392. package/dist/navigation.cjs.map +1 -0
  393. package/dist/navigation.d.mts +14 -0
  394. package/dist/navigation.d.ts +14 -0
  395. package/dist/navigation.mjs +33 -0
  396. package/dist/navigation.mjs.map +1 -0
  397. package/dist/nitro-KME62MWG.mjs +691 -0
  398. package/dist/nitro-KME62MWG.mjs.map +1 -0
  399. package/dist/observability.cjs +186 -0
  400. package/dist/observability.cjs.map +1 -0
  401. package/dist/observability.d.mts +335 -0
  402. package/dist/observability.d.ts +335 -0
  403. package/dist/observability.mjs +16 -0
  404. package/dist/observability.mjs.map +1 -0
  405. package/dist/params-BALtrRim.d.ts +15 -0
  406. package/dist/params-ry-lxqmy.d.mts +15 -0
  407. package/dist/plugin-BJDf43dc.d.mts +165 -0
  408. package/dist/plugin-BJDf43dc.d.ts +165 -0
  409. package/dist/plugin.cjs +22285 -0
  410. package/dist/plugin.cjs.map +1 -0
  411. package/dist/plugin.d.mts +21 -0
  412. package/dist/plugin.d.ts +21 -0
  413. package/dist/plugin.mjs +60 -0
  414. package/dist/plugin.mjs.map +1 -0
  415. package/dist/production-runtime-C_B79w2P.d.mts +28 -0
  416. package/dist/production-runtime-DDEM1D2q.d.ts +28 -0
  417. package/dist/production-runtime-DRkCHUvJ.d.ts +79 -0
  418. package/dist/production-runtime-flrjp_nC.d.mts +79 -0
  419. package/dist/query/client.cjs +560 -0
  420. package/dist/query/client.cjs.map +1 -0
  421. package/dist/query/client.d.mts +61 -0
  422. package/dist/query/client.d.ts +61 -0
  423. package/dist/query/client.mjs +364 -0
  424. package/dist/query/client.mjs.map +1 -0
  425. package/dist/query/index.cjs +226 -0
  426. package/dist/query/index.cjs.map +1 -0
  427. package/dist/query/index.d.mts +90 -0
  428. package/dist/query/index.d.ts +90 -0
  429. package/dist/query/index.mjs +31 -0
  430. package/dist/query/index.mjs.map +1 -0
  431. package/dist/query/parsers.cjs +178 -0
  432. package/dist/query/parsers.cjs.map +1 -0
  433. package/dist/query/parsers.d.mts +25 -0
  434. package/dist/query/parsers.d.ts +25 -0
  435. package/dist/query/parsers.mjs +24 -0
  436. package/dist/query/parsers.mjs.map +1 -0
  437. package/dist/query/server.cjs +301 -0
  438. package/dist/query/server.cjs.map +1 -0
  439. package/dist/query/server.d.mts +55 -0
  440. package/dist/query/server.d.ts +55 -0
  441. package/dist/query/server.mjs +105 -0
  442. package/dist/query/server.mjs.map +1 -0
  443. package/dist/request-BrFBuc8G.d.mts +6 -0
  444. package/dist/request-BslSZIRz.d.ts +6 -0
  445. package/dist/request.cjs +71 -0
  446. package/dist/request.cjs.map +1 -0
  447. package/dist/request.d.mts +2 -0
  448. package/dist/request.d.ts +2 -0
  449. package/dist/request.mjs +9 -0
  450. package/dist/request.mjs.map +1 -0
  451. package/dist/resolver-C6iecsDV.d.ts +14 -0
  452. package/dist/resolver-DlOPpjkB.d.mts +14 -0
  453. package/dist/route-runtime-DoOHzCAD.d.mts +38 -0
  454. package/dist/route-runtime-DoOHzCAD.d.ts +38 -0
  455. package/dist/router.cjs +254 -0
  456. package/dist/router.cjs.map +1 -0
  457. package/dist/router.d.mts +36 -0
  458. package/dist/router.d.ts +36 -0
  459. package/dist/router.mjs +14 -0
  460. package/dist/router.mjs.map +1 -0
  461. package/dist/routes.cjs +1213 -0
  462. package/dist/routes.cjs.map +1 -0
  463. package/dist/routes.d.mts +224 -0
  464. package/dist/routes.d.ts +224 -0
  465. package/dist/routes.mjs +52 -0
  466. package/dist/routes.mjs.map +1 -0
  467. package/dist/runtime-B6GvwDS1.d.ts +27 -0
  468. package/dist/runtime-DeAAZ6gO.d.mts +27 -0
  469. package/dist/search-client-6OXIBNYQ.mjs +14 -0
  470. package/dist/search-client-6OXIBNYQ.mjs.map +1 -0
  471. package/dist/server-action-security.cjs +492 -0
  472. package/dist/server-action-security.cjs.map +1 -0
  473. package/dist/server-action-security.d.mts +42 -0
  474. package/dist/server-action-security.d.ts +42 -0
  475. package/dist/server-action-security.mjs +29 -0
  476. package/dist/server-action-security.mjs.map +1 -0
  477. package/dist/server-fn-client.cjs +180 -0
  478. package/dist/server-fn-client.cjs.map +1 -0
  479. package/dist/server-fn-client.d.mts +31 -0
  480. package/dist/server-fn-client.d.ts +31 -0
  481. package/dist/server-fn-client.mjs +9 -0
  482. package/dist/server-fn-client.mjs.map +1 -0
  483. package/dist/server-fn.cjs +284 -0
  484. package/dist/server-fn.cjs.map +1 -0
  485. package/dist/server-fn.d.mts +84 -0
  486. package/dist/server-fn.d.ts +84 -0
  487. package/dist/server-fn.mjs +17 -0
  488. package/dist/server-fn.mjs.map +1 -0
  489. package/dist/server-plugins.cjs +235 -0
  490. package/dist/server-plugins.cjs.map +1 -0
  491. package/dist/server-plugins.d.mts +54 -0
  492. package/dist/server-plugins.d.ts +54 -0
  493. package/dist/server-plugins.mjs +18 -0
  494. package/dist/server-plugins.mjs.map +1 -0
  495. package/dist/server-query-client.cjs +792 -0
  496. package/dist/server-query-client.cjs.map +1 -0
  497. package/dist/server-query-client.d.mts +50 -0
  498. package/dist/server-query-client.d.ts +50 -0
  499. package/dist/server-query-client.mjs +23 -0
  500. package/dist/server-query-client.mjs.map +1 -0
  501. package/dist/server-query.cjs +804 -0
  502. package/dist/server-query.cjs.map +1 -0
  503. package/dist/server-query.d.mts +36 -0
  504. package/dist/server-query.d.ts +36 -0
  505. package/dist/server-query.mjs +18 -0
  506. package/dist/server-query.mjs.map +1 -0
  507. package/dist/server.cjs +25739 -0
  508. package/dist/server.cjs.map +1 -0
  509. package/dist/server.d.mts +47 -0
  510. package/dist/server.d.ts +47 -0
  511. package/dist/server.mjs +511 -0
  512. package/dist/server.mjs.map +1 -0
  513. package/dist/storage.cjs +515 -0
  514. package/dist/storage.cjs.map +1 -0
  515. package/dist/storage.d.mts +52 -0
  516. package/dist/storage.d.ts +52 -0
  517. package/dist/storage.mjs +58 -0
  518. package/dist/storage.mjs.map +1 -0
  519. package/dist/testing.cjs +1882 -0
  520. package/dist/testing.cjs.map +1 -0
  521. package/dist/testing.d.mts +100 -0
  522. package/dist/testing.d.ts +100 -0
  523. package/dist/testing.mjs +324 -0
  524. package/dist/testing.mjs.map +1 -0
  525. package/dist/types-BH1lhg5G.d.mts +81 -0
  526. package/dist/types-BH1lhg5G.d.ts +81 -0
  527. package/dist/types-C9N-nk5R.d.mts +53 -0
  528. package/dist/types-C9N-nk5R.d.ts +53 -0
  529. package/dist/types-D1A6-XvH.d.mts +73 -0
  530. package/dist/types-D1A6-XvH.d.ts +73 -0
  531. package/dist/utils-DA1yo54_.d.ts +23 -0
  532. package/dist/utils-DOXXivjL.d.mts +23 -0
  533. package/dist/vite.cjs +22684 -0
  534. package/dist/vite.cjs.map +1 -0
  535. package/dist/vite.d.mts +21 -0
  536. package/dist/vite.d.ts +21 -0
  537. package/dist/vite.mjs +59 -0
  538. package/dist/vite.mjs.map +1 -0
  539. package/dist/workflows.cjs +586 -0
  540. package/dist/workflows.cjs.map +1 -0
  541. package/dist/workflows.d.mts +110 -0
  542. package/dist/workflows.d.ts +110 -0
  543. package/dist/workflows.mjs +32 -0
  544. package/dist/workflows.mjs.map +1 -0
  545. package/package.json +523 -0
  546. package/types/api.d.ts +88 -0
  547. package/types/client.d.ts +1171 -0
  548. package/types/index.d.ts +17 -0
  549. package/types/middleware.d.ts +266 -0
@@ -0,0 +1,21 @@
1
+ import 'vite';
2
+ export { d as defineConfig, cZ as farmI18nClientBridgePlugin, f as farmPlugin, c_ as rewriteEarlySsrRelativeImports } from './client-plugins-g4bzuCmo.mjs';
3
+ import './plugin-BJDf43dc.mjs';
4
+ import 'react';
5
+ import 'http';
6
+ import './types-D1A6-XvH.mjs';
7
+ import 'db0';
8
+ import 'unstorage';
9
+ import './integration-api-CHT2OKAf.mjs';
10
+ import '@farming-labs/orm';
11
+ import './types-C9N-nk5R.mjs';
12
+ import '@farming-labs/docs';
13
+ import './markdown.mjs';
14
+ import './observability.mjs';
15
+ import './workflows.mjs';
16
+ import './cron.mjs';
17
+ import './env.mjs';
18
+ import './server-action-security.mjs';
19
+ import './image-config-Duob7wER.mjs';
20
+ import './types-BH1lhg5G.mjs';
21
+ import './route-runtime-DoOHzCAD.mjs';
package/dist/vite.d.ts ADDED
@@ -0,0 +1,21 @@
1
+ import 'vite';
2
+ export { d as defineConfig, cZ as farmI18nClientBridgePlugin, f as farmPlugin, c_ as rewriteEarlySsrRelativeImports } from './client-plugins-BZnpeTGA.js';
3
+ import './plugin-BJDf43dc.js';
4
+ import 'react';
5
+ import 'http';
6
+ import './types-D1A6-XvH.js';
7
+ import 'db0';
8
+ import 'unstorage';
9
+ import './integration-api-CHT2OKAf.js';
10
+ import '@farming-labs/orm';
11
+ import './types-C9N-nk5R.js';
12
+ import '@farming-labs/docs';
13
+ import './markdown.js';
14
+ import './observability.js';
15
+ import './workflows.js';
16
+ import './cron.js';
17
+ import './env.js';
18
+ import './server-action-security.js';
19
+ import './image-config-Duob7wER.js';
20
+ import './types-BH1lhg5G.js';
21
+ import './route-runtime-DoOHzCAD.js';
package/dist/vite.mjs ADDED
@@ -0,0 +1,59 @@
1
+ import {
2
+ defineConfig,
3
+ farmI18nClientBridgePlugin,
4
+ farmPlugin,
5
+ rewriteEarlySsrRelativeImports
6
+ } from "./chunk-CHFHNEMO.mjs";
7
+ import "./chunk-LGHEOHBU.mjs";
8
+ import "./chunk-ZJQNATYV.mjs";
9
+ import "./chunk-V6WE6JSZ.mjs";
10
+ import "./chunk-3XNTL3FQ.mjs";
11
+ import "./chunk-BHG3LVHH.mjs";
12
+ import "./chunk-USWZZUEH.mjs";
13
+ import "./chunk-74YTBPTY.mjs";
14
+ import "./chunk-7MABZJIM.mjs";
15
+ import "./chunk-OYXO65LI.mjs";
16
+ import "./chunk-GY2STC2S.mjs";
17
+ import "./chunk-LLC7BNXW.mjs";
18
+ import "./chunk-S2XHZS7W.mjs";
19
+ import "./chunk-Y2OJJD7R.mjs";
20
+ import "./chunk-UREJA4GZ.mjs";
21
+ import "./chunk-AGS7UJ52.mjs";
22
+ import "./chunk-K4667E2Q.mjs";
23
+ import "./chunk-TRORP7E4.mjs";
24
+ import "./chunk-7HO6AEOP.mjs";
25
+ import "./chunk-O3HADRW6.mjs";
26
+ import "./chunk-P7QDS5AT.mjs";
27
+ import "./chunk-T4QJQK76.mjs";
28
+ import "./chunk-E6EPN5BT.mjs";
29
+ import "./chunk-QGOHVJ6J.mjs";
30
+ import "./chunk-YHU7SS6L.mjs";
31
+ import "./chunk-QF4PHCMA.mjs";
32
+ import "./chunk-GN72QAIH.mjs";
33
+ import "./chunk-FQYDHKKU.mjs";
34
+ import "./chunk-J4FNJ5IU.mjs";
35
+ import "./chunk-EVGBEZDF.mjs";
36
+ import "./chunk-RHIFZZUI.mjs";
37
+ import "./chunk-LM2YNO4U.mjs";
38
+ import "./chunk-B6N4ZB2H.mjs";
39
+ import "./chunk-QKVUNGAH.mjs";
40
+ import "./chunk-QM6VV26B.mjs";
41
+ import "./chunk-JK25YEN6.mjs";
42
+ import "./chunk-TU4YJICB.mjs";
43
+ import "./chunk-ITN462YM.mjs";
44
+ import "./chunk-B232I2GP.mjs";
45
+ import "./chunk-GS6K5OCM.mjs";
46
+ import "./chunk-44ZCFSKE.mjs";
47
+ import "./chunk-ZBE6MLHL.mjs";
48
+ import "./chunk-4PTK6KT4.mjs";
49
+ import "./chunk-TXCFGOHW.mjs";
50
+ import "./chunk-WZ5QFROO.mjs";
51
+ import "./chunk-7ZY5AIJO.mjs";
52
+ import "./chunk-CGILA3WO.mjs";
53
+ export {
54
+ defineConfig,
55
+ farmI18nClientBridgePlugin,
56
+ farmPlugin,
57
+ rewriteEarlySsrRelativeImports
58
+ };
59
+ //# sourceMappingURL=vite.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,586 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
9
+ var __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from))
16
+ if (!__hasOwnProp.call(to, key) && key !== except)
17
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
+ }
19
+ return to;
20
+ };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+
31
+ // src/workflows.ts
32
+ var workflows_exports = {};
33
+ __export(workflows_exports, {
34
+ DEFAULT_FARM_WORKFLOW_DIRS: () => DEFAULT_FARM_WORKFLOW_DIRS,
35
+ DEFAULT_FARM_WORKFLOW_ROUTE: () => DEFAULT_FARM_WORKFLOW_ROUTE,
36
+ DEFAULT_FARM_WORKFLOW_SECRET_ENV: () => DEFAULT_FARM_WORKFLOW_SECRET_ENV,
37
+ applyFarmWorkflowVercelCrons: () => applyFarmWorkflowVercelCrons,
38
+ createFarmWorkflowRequestHandler: () => createFarmWorkflowRequestHandler,
39
+ createFarmWorkflowVercelCrons: () => createFarmWorkflowVercelCrons,
40
+ defineCron: () => defineCron,
41
+ defineTask: () => defineTask,
42
+ defineWorkflow: () => defineWorkflow,
43
+ discoverFarmWorkflows: () => discoverFarmWorkflows,
44
+ prepareFarmWorkflowsForNitro: () => prepareFarmWorkflowsForNitro,
45
+ resolveWorkflowsConfig: () => resolveWorkflowsConfig,
46
+ runFarmWorkflowModule: () => runFarmWorkflowModule
47
+ });
48
+ module.exports = __toCommonJS(workflows_exports);
49
+ var DEFAULT_FARM_WORKFLOW_DIRS = ["src/jobs", "src/workflows", "src/cron"];
50
+ var DEFAULT_FARM_WORKFLOW_ROUTE = "/api/_farm/workflows";
51
+ var DEFAULT_FARM_WORKFLOW_SECRET_ENV = "CRON_SECRET";
52
+ function defineWorkflow(definition) {
53
+ return {
54
+ ...definition,
55
+ kind: "farm-workflow"
56
+ };
57
+ }
58
+ __name(defineWorkflow, "defineWorkflow");
59
+ function defineTask(definition) {
60
+ return defineWorkflow(definition);
61
+ }
62
+ __name(defineTask, "defineTask");
63
+ function defineCron(definition) {
64
+ return {
65
+ ...definition,
66
+ kind: "farm-workflow"
67
+ };
68
+ }
69
+ __name(defineCron, "defineCron");
70
+ function resolveWorkflowsConfig(workflows) {
71
+ if (workflows === false) {
72
+ return {
73
+ enabled: false,
74
+ dirs: [...DEFAULT_FARM_WORKFLOW_DIRS],
75
+ route: DEFAULT_FARM_WORKFLOW_ROUTE,
76
+ secretEnv: DEFAULT_FARM_WORKFLOW_SECRET_ENV
77
+ };
78
+ }
79
+ const options = workflows && typeof workflows === "object" ? workflows : {};
80
+ const dirs = normalizeWorkflowDirs(options);
81
+ return {
82
+ enabled: options.enabled ?? true,
83
+ dirs,
84
+ route: normalizeWorkflowRoute(options.route || DEFAULT_FARM_WORKFLOW_ROUTE),
85
+ secretEnv: options.secretEnv || DEFAULT_FARM_WORKFLOW_SECRET_ENV,
86
+ secret: options.secret
87
+ };
88
+ }
89
+ __name(resolveWorkflowsConfig, "resolveWorkflowsConfig");
90
+ async function discoverFarmWorkflows(config, options = {}) {
91
+ const workflowConfig = isResolvedWorkflowConfig(config.workflows) ? config.workflows : resolveWorkflowsConfig(config.workflows);
92
+ if (!workflowConfig.enabled) return [];
93
+ const root = config.root || process.cwd();
94
+ const files = await findWorkflowFiles(root, workflowConfig.dirs);
95
+ const workflows = [];
96
+ const seenIds = /* @__PURE__ */ new Map();
97
+ for (const filePath of files) {
98
+ const module2 = options.loadModule ? await options.loadModule(filePath) : await loadWorkflowModule(filePath, root);
99
+ const definition = resolveWorkflowDefinition(module2);
100
+ if (!definition) continue;
101
+ const id = normalizeWorkflowId(definition.id || workflowIdFromFile(root, filePath));
102
+ const previousPath = seenIds.get(id);
103
+ if (previousPath) {
104
+ throw new Error(
105
+ `Duplicate Farm workflow id "${id}" found in ${relativePath(root, previousPath)} and ${relativePath(root, filePath)}.`
106
+ );
107
+ }
108
+ seenIds.set(id, filePath);
109
+ workflows.push({
110
+ id,
111
+ filePath,
112
+ description: definition.description,
113
+ schedule: normalizeSchedule(definition.schedule),
114
+ timezone: definition.timezone,
115
+ routePath: joinRoute(workflowConfig.route, encodeURIComponent(id))
116
+ });
117
+ }
118
+ return workflows;
119
+ }
120
+ __name(discoverFarmWorkflows, "discoverFarmWorkflows");
121
+ function createFarmWorkflowRequestHandler(options) {
122
+ const workflowsById = new Map(options.workflows.map((workflow) => [workflow.id, workflow]));
123
+ return /* @__PURE__ */ __name(async function handleFarmWorkflowRequest(request) {
124
+ const url = new URL(request.url);
125
+ const route = normalizeWorkflowRoute(options.config.route);
126
+ if (url.pathname !== route && !url.pathname.startsWith(`${route}/`)) {
127
+ return null;
128
+ }
129
+ if (url.pathname === route) {
130
+ const secretError2 = verifyWorkflowSecret(request, options.config);
131
+ if (secretError2) return secretError2;
132
+ return Response.json({
133
+ workflows: options.workflows.map(toWorkflowMetadata)
134
+ });
135
+ }
136
+ const id = decodeURIComponent(url.pathname.slice(route.length + 1));
137
+ const workflow = workflowsById.get(id);
138
+ if (!workflow) {
139
+ return Response.json({ error: `Workflow "${id}" was not found.` }, { status: 404 });
140
+ }
141
+ const secretError = verifyWorkflowSecret(request, options.config);
142
+ if (secretError) return secretError;
143
+ const payload = await readWorkflowPayload(request);
144
+ const module2 = await options.loadModule(workflow);
145
+ const result = await runFarmWorkflowModule(module2, {
146
+ id: workflow.id,
147
+ name: workflow.id,
148
+ payload,
149
+ request,
150
+ scheduledTime: readScheduledTime(payload)
151
+ });
152
+ return Response.json({
153
+ id: workflow.id,
154
+ ok: true,
155
+ result: result ?? null
156
+ });
157
+ }, "handleFarmWorkflowRequest");
158
+ }
159
+ __name(createFarmWorkflowRequestHandler, "createFarmWorkflowRequestHandler");
160
+ async function runFarmWorkflowModule(module2, context) {
161
+ const definition = resolveWorkflowDefinition(module2);
162
+ if (!definition) {
163
+ throw new Error(`Farm workflow "${context.id}" does not export a workflow definition.`);
164
+ }
165
+ return await definition.run({
166
+ id: context.id,
167
+ name: context.name || context.id,
168
+ payload: context.payload,
169
+ scheduledTime: context.scheduledTime,
170
+ request: context.request,
171
+ event: context.event,
172
+ env: context.env || process.env,
173
+ data: /* @__PURE__ */ new Map(),
174
+ log: console
175
+ });
176
+ }
177
+ __name(runFarmWorkflowModule, "runFarmWorkflowModule");
178
+ async function prepareFarmWorkflowsForNitro(config) {
179
+ const workflowConfig = isResolvedWorkflowConfig(config.workflows) ? config.workflows : resolveWorkflowsConfig(config.workflows);
180
+ const workflows = await discoverFarmWorkflows({
181
+ root: config.root,
182
+ workflows: workflowConfig
183
+ });
184
+ if (workflows.length === 0) {
185
+ return {
186
+ workflows,
187
+ tasks: {},
188
+ scheduledTasks: {}
189
+ };
190
+ }
191
+ const root = config.root || process.cwd();
192
+ const distDir = config.distDir || ".farm";
193
+ const fs = await import("fs/promises");
194
+ const path = await import("path");
195
+ const generatedDir = path.join(root, distDir, ".nitro", "farm-workflows");
196
+ await fs.mkdir(generatedDir, { recursive: true });
197
+ const tasks = {};
198
+ const scheduledTasks = createScheduledTasks(workflows);
199
+ for (const workflow of workflows) {
200
+ const wrapperPath = path.join(generatedDir, `${safeFileName(workflow.id)}.mjs`);
201
+ await fs.writeFile(wrapperPath, createNitroTaskWrapper(workflow), "utf8");
202
+ tasks[workflow.id] = {
203
+ handler: wrapperPath,
204
+ description: workflow.description || `Farm workflow ${workflow.id}`
205
+ };
206
+ }
207
+ const handlerPath = path.join(generatedDir, "http-handler.mjs");
208
+ await fs.writeFile(handlerPath, createNitroWorkflowHTTPHandler(workflowConfig, workflows), "utf8");
209
+ const manifestPath = path.join(generatedDir, "manifest.json");
210
+ await fs.writeFile(
211
+ manifestPath,
212
+ JSON.stringify(
213
+ {
214
+ route: workflowConfig.route,
215
+ secretEnv: workflowConfig.secretEnv,
216
+ trigger: {
217
+ method: "GET",
218
+ authorization: `Bearer $${workflowConfig.secretEnv}`
219
+ },
220
+ workflows: workflows.map(toWorkflowMetadata)
221
+ },
222
+ null,
223
+ 2
224
+ ),
225
+ "utf8"
226
+ );
227
+ return {
228
+ workflows,
229
+ tasks,
230
+ scheduledTasks,
231
+ handlerPath,
232
+ manifestPath
233
+ };
234
+ }
235
+ __name(prepareFarmWorkflowsForNitro, "prepareFarmWorkflowsForNitro");
236
+ function createFarmWorkflowVercelCrons(workflows) {
237
+ return workflows.flatMap(
238
+ (workflow) => workflow.schedule.map((schedule) => ({
239
+ path: workflow.routePath,
240
+ schedule
241
+ }))
242
+ );
243
+ }
244
+ __name(createFarmWorkflowVercelCrons, "createFarmWorkflowVercelCrons");
245
+ function applyFarmWorkflowVercelCrons(vercelConfig, workflows) {
246
+ const crons = createFarmWorkflowVercelCrons(workflows);
247
+ if (crons.length === 0) return vercelConfig;
248
+ const existingCrons = Array.isArray(vercelConfig.crons) ? vercelConfig.crons : [];
249
+ const seen = new Set(existingCrons.map((cron) => `${cron.path}:${cron.schedule}`));
250
+ const nextCrons = [...existingCrons];
251
+ for (const cron of crons) {
252
+ const key = `${cron.path}:${cron.schedule}`;
253
+ if (seen.has(key)) continue;
254
+ seen.add(key);
255
+ nextCrons.push(cron);
256
+ }
257
+ return {
258
+ ...vercelConfig,
259
+ crons: nextCrons
260
+ };
261
+ }
262
+ __name(applyFarmWorkflowVercelCrons, "applyFarmWorkflowVercelCrons");
263
+ function isResolvedWorkflowConfig(value) {
264
+ return !!value && typeof value === "object" && "dirs" in value && Array.isArray(value.dirs) && typeof value.route === "string";
265
+ }
266
+ __name(isResolvedWorkflowConfig, "isResolvedWorkflowConfig");
267
+ function normalizeWorkflowDirs(options) {
268
+ const rawDirs = options.dirs || (Array.isArray(options.dir) ? options.dir : options.dir ? [options.dir] : void 0);
269
+ const dirs = rawDirs && rawDirs.length > 0 ? rawDirs : DEFAULT_FARM_WORKFLOW_DIRS;
270
+ return [...new Set(dirs.map((dir) => trimSlashes(dir)).filter(Boolean))];
271
+ }
272
+ __name(normalizeWorkflowDirs, "normalizeWorkflowDirs");
273
+ function normalizeWorkflowRoute(route) {
274
+ const trimmed = route.trim();
275
+ if (!trimmed || trimmed === "/") return DEFAULT_FARM_WORKFLOW_ROUTE;
276
+ return `/${trimSlashes(trimmed)}`;
277
+ }
278
+ __name(normalizeWorkflowRoute, "normalizeWorkflowRoute");
279
+ function normalizeWorkflowId(id) {
280
+ const normalized = id.replace(/\\/g, "/").replace(/\.(tsx?|jsx?|mjs|cjs)$/, "").replace(/\/index$/, "").replace(/[^a-zA-Z0-9._/-]+/g, "-").replace(/^\/+|\/+$/g, "").replace(/\/+/g, "/");
281
+ return normalized || "workflow";
282
+ }
283
+ __name(normalizeWorkflowId, "normalizeWorkflowId");
284
+ function normalizeSchedule(schedule) {
285
+ if (!schedule) return [];
286
+ return (Array.isArray(schedule) ? schedule : [schedule]).map((value) => value.trim()).filter(Boolean);
287
+ }
288
+ __name(normalizeSchedule, "normalizeSchedule");
289
+ function resolveWorkflowDefinition(module2) {
290
+ const candidates = [
291
+ module2.default,
292
+ module2.workflow,
293
+ module2.cron,
294
+ module2.task,
295
+ module2.job
296
+ ];
297
+ for (const candidate of candidates) {
298
+ if (candidate && typeof candidate === "object" && typeof candidate.run === "function") {
299
+ return candidate;
300
+ }
301
+ }
302
+ return null;
303
+ }
304
+ __name(resolveWorkflowDefinition, "resolveWorkflowDefinition");
305
+ async function findWorkflowFiles(root, dirs) {
306
+ const fs = await import("fs/promises");
307
+ const path = await import("path");
308
+ const files = [];
309
+ for (const dir of dirs) {
310
+ const absoluteDir = path.isAbsolute(dir) ? dir : path.join(root, dir);
311
+ if (!await pathExists(absoluteDir)) continue;
312
+ await walkWorkflowDir(absoluteDir, files);
313
+ }
314
+ return files.sort();
315
+ }
316
+ __name(findWorkflowFiles, "findWorkflowFiles");
317
+ async function walkWorkflowDir(dir, files) {
318
+ const fs = await import("fs/promises");
319
+ const path = await import("path");
320
+ const entries = await fs.readdir(dir, { withFileTypes: true });
321
+ for (const entry of entries) {
322
+ const filePath = path.join(dir, entry.name);
323
+ if (entry.isDirectory()) {
324
+ if (entry.name === "node_modules" || entry.name.startsWith(".")) continue;
325
+ await walkWorkflowDir(filePath, files);
326
+ continue;
327
+ }
328
+ if (isWorkflowFile(entry.name)) {
329
+ files.push(filePath);
330
+ }
331
+ }
332
+ }
333
+ __name(walkWorkflowDir, "walkWorkflowDir");
334
+ async function pathExists(filePath) {
335
+ const fs = await import("fs/promises");
336
+ return fs.access(filePath).then(() => true).catch(() => false);
337
+ }
338
+ __name(pathExists, "pathExists");
339
+ function isWorkflowFile(fileName) {
340
+ return /\.(?:ts|tsx|js|jsx|mjs|cjs)$/.test(fileName) && !/\.d\.[cm]?ts$/.test(fileName);
341
+ }
342
+ __name(isWorkflowFile, "isWorkflowFile");
343
+ async function loadWorkflowModule(filePath, root) {
344
+ const fs = await import("fs/promises");
345
+ const path = await import("path");
346
+ const { pathToFileURL } = await import("url");
347
+ const { build } = await import("esbuild");
348
+ const outDir = path.join(root, ".farm", ".workflow-loader");
349
+ await fs.mkdir(outDir, { recursive: true });
350
+ const outfile = path.join(
351
+ outDir,
352
+ `workflow-${Date.now()}-${Math.random().toString(36).slice(2)}.mjs`
353
+ );
354
+ await build({
355
+ absWorkingDir: root,
356
+ entryPoints: [filePath],
357
+ outfile,
358
+ bundle: true,
359
+ format: "esm",
360
+ platform: "node",
361
+ target: `node${process.versions.node.split(".")[0]}`,
362
+ packages: "external",
363
+ external: ["@farm.js/core", "@farm.js/core/*", "nitro", "nitro/*"],
364
+ jsx: "automatic",
365
+ logLevel: "silent",
366
+ sourcemap: "inline"
367
+ });
368
+ try {
369
+ return await import(
370
+ /* @vite-ignore */
371
+ `${pathToFileURL(outfile).href}?t=${Date.now()}`
372
+ );
373
+ } finally {
374
+ await fs.unlink(outfile).catch(() => void 0);
375
+ }
376
+ }
377
+ __name(loadWorkflowModule, "loadWorkflowModule");
378
+ function workflowIdFromFile(root, filePath) {
379
+ const normalizedRoot = root.replace(/\\/g, "/");
380
+ const normalizedFile = filePath.replace(/\\/g, "/");
381
+ const relative = normalizedFile.startsWith(`${normalizedRoot}/`) ? normalizedFile.slice(normalizedRoot.length + 1) : normalizedFile;
382
+ return normalizeWorkflowId(
383
+ relative.replace(/^src\/(?:jobs|workflows|cron)\//, "").replace(/\.(tsx?|jsx?|mjs|cjs)$/, "")
384
+ );
385
+ }
386
+ __name(workflowIdFromFile, "workflowIdFromFile");
387
+ function createScheduledTasks(workflows) {
388
+ const scheduleMap = /* @__PURE__ */ new Map();
389
+ for (const workflow of workflows) {
390
+ for (const schedule of workflow.schedule) {
391
+ const taskIds = scheduleMap.get(schedule) || [];
392
+ taskIds.push(workflow.id);
393
+ scheduleMap.set(schedule, taskIds);
394
+ }
395
+ }
396
+ return Object.fromEntries(
397
+ [...scheduleMap.entries()].map(([schedule, taskIds]) => [
398
+ schedule,
399
+ taskIds.length === 1 ? taskIds[0] : taskIds
400
+ ])
401
+ );
402
+ }
403
+ __name(createScheduledTasks, "createScheduledTasks");
404
+ function createNitroTaskWrapper(workflow) {
405
+ const normalizedPath = workflow.filePath.replace(/\\/g, "/");
406
+ return `
407
+ import { defineTask } from "nitro/runtime";
408
+ import { runFarmWorkflowModule } from "@farm.js/core/workflows";
409
+ import * as workflowModule from ${JSON.stringify(normalizedPath)};
410
+
411
+ export default defineTask({
412
+ meta: {
413
+ description: ${JSON.stringify(workflow.description || `Farm workflow ${workflow.id}`)}
414
+ },
415
+ async run(event) {
416
+ const payload = event?.payload || {};
417
+ const env = event?.context?.cloudflare?.env || event?.context?.env || process.env;
418
+ return await runFarmWorkflowModule(workflowModule, {
419
+ id: ${JSON.stringify(workflow.id)},
420
+ name: event?.name || ${JSON.stringify(workflow.id)},
421
+ payload,
422
+ scheduledTime: payload.scheduledTime,
423
+ request: event?.context?.request,
424
+ event,
425
+ env
426
+ });
427
+ }
428
+ });
429
+ `.trim();
430
+ }
431
+ __name(createNitroTaskWrapper, "createNitroTaskWrapper");
432
+ function createNitroWorkflowHTTPHandler(config, workflows) {
433
+ return `
434
+ import { H3 } from "h3";
435
+ import { runTask } from "nitro/runtime";
436
+
437
+ const route = ${JSON.stringify(config.route)};
438
+ const secretEnv = ${JSON.stringify(config.secretEnv)};
439
+ const inlineSecret = ${JSON.stringify(config.secret || "")};
440
+ const workflows = ${JSON.stringify(workflows.map(toWorkflowMetadata))};
441
+ const workflowIds = new Set(workflows.map((workflow) => workflow.id));
442
+
443
+ function json(value, status = 200) {
444
+ return new Response(JSON.stringify(value), {
445
+ status,
446
+ headers: { "content-type": "application/json" }
447
+ });
448
+ }
449
+
450
+ function getHeader(event, name) {
451
+ return event.req.headers.get(name);
452
+ }
453
+
454
+ function getSecret() {
455
+ return inlineSecret || process.env[secretEnv] || "";
456
+ }
457
+
458
+ function verifySecret(event) {
459
+ const secret = getSecret();
460
+ if (!secret) return null;
461
+ const authorization = getHeader(event, "authorization") || "";
462
+ const headerSecret = getHeader(event, "x-farm-workflow-secret") || "";
463
+ const querySecret = event.url.searchParams.get("secret") || "";
464
+ const bearer = authorization.startsWith("Bearer ") ? authorization.slice(7) : "";
465
+ if (headerSecret === secret || querySecret === secret || bearer === secret) return null;
466
+ return json({ error: "Unauthorized workflow request." }, 401);
467
+ }
468
+
469
+ async function readPayload(event) {
470
+ if (event.req.method === "GET" || event.req.method === "HEAD") {
471
+ const payload = Object.fromEntries(event.url.searchParams.entries());
472
+ delete payload.secret;
473
+ return payload;
474
+ }
475
+ return await event.req.json().catch(() => ({}));
476
+ }
477
+
478
+ export default new H3()
479
+ .get(route, (event) => {
480
+ const unauthorized = verifySecret(event);
481
+ if (unauthorized) return unauthorized;
482
+ return { workflows };
483
+ })
484
+ .all(route + "/:id", async (event) => {
485
+ const id = decodeURIComponent(event.context.params?.id || "");
486
+ if (!workflowIds.has(id)) {
487
+ return json({ error: "Workflow " + id + " was not found." }, 404);
488
+ }
489
+
490
+ const unauthorized = verifySecret(event);
491
+ if (unauthorized) return unauthorized;
492
+
493
+ const payload = await readPayload(event);
494
+ const result = await runTask(id, {
495
+ payload,
496
+ context: {
497
+ source: "http",
498
+ request: event.req,
499
+ route,
500
+ url: event.url.href,
501
+ method: event.req.method
502
+ }
503
+ });
504
+ return {
505
+ id,
506
+ ok: true,
507
+ result: result ?? null
508
+ };
509
+ });
510
+ `.trim();
511
+ }
512
+ __name(createNitroWorkflowHTTPHandler, "createNitroWorkflowHTTPHandler");
513
+ function toWorkflowMetadata(workflow) {
514
+ return {
515
+ id: workflow.id,
516
+ description: workflow.description || null,
517
+ schedule: workflow.schedule,
518
+ timezone: workflow.timezone || null,
519
+ path: workflow.routePath
520
+ };
521
+ }
522
+ __name(toWorkflowMetadata, "toWorkflowMetadata");
523
+ async function readWorkflowPayload(request) {
524
+ const url = new URL(request.url);
525
+ if (request.method === "GET" || request.method === "HEAD") {
526
+ const payload = Object.fromEntries(url.searchParams.entries());
527
+ delete payload.secret;
528
+ return payload;
529
+ }
530
+ const contentType = request.headers.get("content-type") || "";
531
+ if (contentType.includes("application/json")) {
532
+ return await request.json().catch(() => ({}));
533
+ }
534
+ const text = await request.text().catch(() => "");
535
+ return text ? { text } : {};
536
+ }
537
+ __name(readWorkflowPayload, "readWorkflowPayload");
538
+ function readScheduledTime(payload) {
539
+ return payload && typeof payload === "object" && "scheduledTime" in payload ? payload.scheduledTime : void 0;
540
+ }
541
+ __name(readScheduledTime, "readScheduledTime");
542
+ function verifyWorkflowSecret(request, config) {
543
+ const secret = config.secret || process.env[config.secretEnv] || "";
544
+ if (!secret) return null;
545
+ const url = new URL(request.url);
546
+ const authorization = request.headers.get("authorization") || "";
547
+ const bearer = authorization.startsWith("Bearer ") ? authorization.slice(7) : "";
548
+ const headerSecret = request.headers.get("x-farm-workflow-secret") || "";
549
+ const querySecret = url.searchParams.get("secret") || "";
550
+ if (bearer === secret || headerSecret === secret || querySecret === secret) return null;
551
+ return Response.json({ error: "Unauthorized workflow request." }, { status: 401 });
552
+ }
553
+ __name(verifyWorkflowSecret, "verifyWorkflowSecret");
554
+ function joinRoute(...parts) {
555
+ return `/${parts.map((part) => trimSlashes(part)).filter(Boolean).join("/")}`;
556
+ }
557
+ __name(joinRoute, "joinRoute");
558
+ function trimSlashes(value) {
559
+ return value.replace(/^\/+|\/+$/g, "");
560
+ }
561
+ __name(trimSlashes, "trimSlashes");
562
+ function safeFileName(value) {
563
+ return value.replace(/[^a-zA-Z0-9._-]+/g, "-") || "workflow";
564
+ }
565
+ __name(safeFileName, "safeFileName");
566
+ function relativePath(root, filePath) {
567
+ return filePath.replace(/\\/g, "/").replace(`${root.replace(/\\/g, "/")}/`, "");
568
+ }
569
+ __name(relativePath, "relativePath");
570
+ // Annotate the CommonJS export names for ESM import in node:
571
+ 0 && (module.exports = {
572
+ DEFAULT_FARM_WORKFLOW_DIRS,
573
+ DEFAULT_FARM_WORKFLOW_ROUTE,
574
+ DEFAULT_FARM_WORKFLOW_SECRET_ENV,
575
+ applyFarmWorkflowVercelCrons,
576
+ createFarmWorkflowRequestHandler,
577
+ createFarmWorkflowVercelCrons,
578
+ defineCron,
579
+ defineTask,
580
+ defineWorkflow,
581
+ discoverFarmWorkflows,
582
+ prepareFarmWorkflowsForNitro,
583
+ resolveWorkflowsConfig,
584
+ runFarmWorkflowModule
585
+ });
586
+ //# sourceMappingURL=workflows.cjs.map