@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,71 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/request.ts
22
+ var request_exports = {};
23
+ __export(request_exports, {
24
+ getCurrentRequest: () => getCurrentRequest
25
+ });
26
+ module.exports = __toCommonJS(request_exports);
27
+
28
+ // src/server/request.ts
29
+ var import_node_async_hooks = require("async_hooks");
30
+
31
+ // src/server/request-bridge.ts
32
+ var CURRENT_REQUEST_RESOLVER_KEY = /* @__PURE__ */ Symbol.for("farm.currentRequestResolver");
33
+ function getGlobalState() {
34
+ return globalThis;
35
+ }
36
+ __name(getGlobalState, "getGlobalState");
37
+ function _setCurrentRequestResolver(resolver) {
38
+ getGlobalState()[CURRENT_REQUEST_RESOLVER_KEY] = resolver;
39
+ }
40
+ __name(_setCurrentRequestResolver, "_setCurrentRequestResolver");
41
+
42
+ // src/server/request.ts
43
+ var REQUEST_STORAGE_KEY = /* @__PURE__ */ Symbol.for("@farm.js/core/request-storage");
44
+ function getRequestStore() {
45
+ const runtime = globalThis;
46
+ const existing = runtime[REQUEST_STORAGE_KEY];
47
+ if (existing instanceof import_node_async_hooks.AsyncLocalStorage) {
48
+ return existing;
49
+ }
50
+ const storage = new import_node_async_hooks.AsyncLocalStorage();
51
+ runtime[REQUEST_STORAGE_KEY] = storage;
52
+ return storage;
53
+ }
54
+ __name(getRequestStore, "getRequestStore");
55
+ var requestStore = getRequestStore();
56
+ _setCurrentRequestResolver(() => requestStore.getStore());
57
+ function getCurrentRequest() {
58
+ const request = requestStore.getStore();
59
+ if (!request) {
60
+ throw new Error(
61
+ "No current request is available. getCurrentRequest() can only be used during server rendering."
62
+ );
63
+ }
64
+ return request;
65
+ }
66
+ __name(getCurrentRequest, "getCurrentRequest");
67
+ // Annotate the CommonJS export names for ESM import in node:
68
+ 0 && (module.exports = {
69
+ getCurrentRequest
70
+ });
71
+ //# sourceMappingURL=request.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/request.ts","../src/server/request.ts","../src/server/request-bridge.ts"],"sourcesContent":["export { getCurrentRequest } from \"./server/request\";\n","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","type CurrentRequestResolver = () => Request | undefined;\n\nconst CURRENT_REQUEST_RESOLVER_KEY = Symbol.for(\"farm.currentRequestResolver\");\n\ntype GlobalWithCurrentRequestResolver = typeof globalThis & {\n [CURRENT_REQUEST_RESOLVER_KEY]?: CurrentRequestResolver;\n};\n\nfunction getGlobalState(): GlobalWithCurrentRequestResolver {\n return globalThis as GlobalWithCurrentRequestResolver;\n}\n\nexport function _setCurrentRequestResolver(resolver: CurrentRequestResolver | undefined): void {\n getGlobalState()[CURRENT_REQUEST_RESOLVER_KEY] = resolver;\n}\n\nexport function _resolveCurrentRequest(): Request | undefined {\n return getGlobalState()[CURRENT_REQUEST_RESOLVER_KEY]?.();\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,8BAAkC;;;ACElC,IAAM,+BAA+B,uBAAO,IAAI,6BAA6B;AAM7E,SAAS,iBAAmD;AAC1D,SAAO;AACT;AAFS;AAIF,SAAS,2BAA2B,UAAoD;AAC7F,iBAAe,EAAE,4BAA4B,IAAI;AACnD;AAFgB;;;ADRhB,IAAM,sBAAsB,uBAAO,IAAI,+BAA+B;AAEtE,SAAS,kBAA8C;AACrD,QAAM,UAAU;AAChB,QAAM,WAAW,QAAQ,mBAAmB;AAC5C,MAAI,oBAAoB,2CAAmB;AACzC,WAAO;AAAA,EACT;AAEA,QAAM,UAAU,IAAI,0CAA2B;AAC/C,UAAQ,mBAAmB,IAAI;AAC/B,SAAO;AACT;AAVS;AAYT,IAAM,eAAe,gBAAgB;AAErC,2BAA2B,MAAM,aAAa,SAAS,CAAC;AAwCjD,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":[]}
@@ -0,0 +1,2 @@
1
+ export { g as getCurrentRequest } from './request-BrFBuc8G.mjs';
2
+ import './types-BH1lhg5G.mjs';
@@ -0,0 +1,2 @@
1
+ export { g as getCurrentRequest } from './request-BslSZIRz.js';
2
+ import './types-BH1lhg5G.js';
@@ -0,0 +1,9 @@
1
+ import {
2
+ getCurrentRequest
3
+ } from "./chunk-RHIFZZUI.mjs";
4
+ import "./chunk-LM2YNO4U.mjs";
5
+ import "./chunk-CGILA3WO.mjs";
6
+ export {
7
+ getCurrentRequest
8
+ };
9
+ //# sourceMappingURL=request.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,14 @@
1
+ import { b as FarmI18nLocaleSource, R as ResolvedFarmI18nConfig } from './types-BH1lhg5G.js';
2
+
3
+ interface FarmLocaleResolution {
4
+ locale: string;
5
+ source: FarmI18nLocaleSource;
6
+ pathname: string;
7
+ redirect?: string;
8
+ persist: boolean;
9
+ }
10
+ declare function getFarmLocaleVaryHeaders(config: ResolvedFarmI18nConfig, resolution: FarmLocaleResolution): string[];
11
+ declare function createFarmLocaleCookie(locale: string, config: Pick<ResolvedFarmI18nConfig, "cookie">): string;
12
+ declare function matchFarmLocale(requested: string | null | undefined, locales: readonly string[]): string | undefined;
13
+
14
+ export { type FarmLocaleResolution as F, createFarmLocaleCookie as c, getFarmLocaleVaryHeaders as g, matchFarmLocale as m };
@@ -0,0 +1,14 @@
1
+ import { b as FarmI18nLocaleSource, R as ResolvedFarmI18nConfig } from './types-BH1lhg5G.mjs';
2
+
3
+ interface FarmLocaleResolution {
4
+ locale: string;
5
+ source: FarmI18nLocaleSource;
6
+ pathname: string;
7
+ redirect?: string;
8
+ persist: boolean;
9
+ }
10
+ declare function getFarmLocaleVaryHeaders(config: ResolvedFarmI18nConfig, resolution: FarmLocaleResolution): string[];
11
+ declare function createFarmLocaleCookie(locale: string, config: Pick<ResolvedFarmI18nConfig, "cookie">): string;
12
+ declare function matchFarmLocale(requested: string | null | undefined, locales: readonly string[]): string | undefined;
13
+
14
+ export { type FarmLocaleResolution as F, createFarmLocaleCookie as c, getFarmLocaleVaryHeaders as g, matchFarmLocale as m };
@@ -0,0 +1,38 @@
1
+ type FarmRouteRuntime = "auto" | "node" | "edge";
2
+ type FarmRouteRegions = "auto" | readonly string[];
3
+ type FarmRouteMaxDuration = "auto" | number;
4
+ /** Portable execution controls shared by file, programmatic, and config routes. */
5
+ interface FarmRouteRuntimeConfig {
6
+ runtime?: FarmRouteRuntime;
7
+ regions?: FarmRouteRegions;
8
+ maxDuration?: FarmRouteMaxDuration;
9
+ }
10
+ interface ResolvedFarmRouteRuntimeConfig {
11
+ runtime: FarmRouteRuntime;
12
+ regions?: string[];
13
+ maxDuration?: number;
14
+ }
15
+ type FarmRouteRuntimeEntryKind = "page" | "api" | "rule";
16
+ type FarmRouteRenderingMode = "static" | "dynamic";
17
+ interface FarmRouteRuntimeManifestEntry extends ResolvedFarmRouteRuntimeConfig {
18
+ kind: FarmRouteRuntimeEntryKind;
19
+ pattern: string;
20
+ rendering: FarmRouteRenderingMode;
21
+ source?: string;
22
+ }
23
+ interface FarmRouteRuntimeManifest {
24
+ version: 1;
25
+ routes: FarmRouteRuntimeManifestEntry[];
26
+ }
27
+ declare function normalizeFarmRouteRuntimeConfig(value: FarmRouteRuntimeConfig | null | undefined, source?: string): FarmRouteRuntimeConfig;
28
+ /** Merge from lowest to highest precedence. Explicit "auto" values reset inherited hints. */
29
+ declare function mergeFarmRouteRuntimeConfigs(...configs: Array<FarmRouteRuntimeConfig | null | undefined>): FarmRouteRuntimeConfig;
30
+ declare function resolveFarmRouteRuntimeConfig(config: FarmRouteRuntimeConfig | null | undefined, source?: string): ResolvedFarmRouteRuntimeConfig;
31
+ declare function hasFarmRouteRuntimeControls(config: FarmRouteRuntimeConfig | null | undefined): boolean;
32
+ declare function getFarmRouteRuntimeConfig(value: unknown): FarmRouteRuntimeConfig;
33
+ declare function createFarmRouteRuntimeKey(config: ResolvedFarmRouteRuntimeConfig): string;
34
+ /** Resolve matching route rules from broadest to most specific. */
35
+ declare function resolveFarmRouteRuleRuntimeConfig(pathname: string, routeRules: Record<string, FarmRouteRuntimeConfig> | null | undefined): FarmRouteRuntimeConfig;
36
+ declare function farmRouteRuleMatches(pattern: string, pathname: string): boolean;
37
+
38
+ export { type FarmRouteRuntimeConfig as F, type ResolvedFarmRouteRuntimeConfig as R, type FarmRouteRuntime as a, type FarmRouteRegions as b, type FarmRouteMaxDuration as c, type FarmRouteRuntimeEntryKind as d, type FarmRouteRenderingMode as e, type FarmRouteRuntimeManifestEntry as f, type FarmRouteRuntimeManifest as g, hasFarmRouteRuntimeControls as h, getFarmRouteRuntimeConfig as i, createFarmRouteRuntimeKey as j, resolveFarmRouteRuleRuntimeConfig as k, farmRouteRuleMatches as l, mergeFarmRouteRuntimeConfigs as m, normalizeFarmRouteRuntimeConfig as n, resolveFarmRouteRuntimeConfig as r };
@@ -0,0 +1,38 @@
1
+ type FarmRouteRuntime = "auto" | "node" | "edge";
2
+ type FarmRouteRegions = "auto" | readonly string[];
3
+ type FarmRouteMaxDuration = "auto" | number;
4
+ /** Portable execution controls shared by file, programmatic, and config routes. */
5
+ interface FarmRouteRuntimeConfig {
6
+ runtime?: FarmRouteRuntime;
7
+ regions?: FarmRouteRegions;
8
+ maxDuration?: FarmRouteMaxDuration;
9
+ }
10
+ interface ResolvedFarmRouteRuntimeConfig {
11
+ runtime: FarmRouteRuntime;
12
+ regions?: string[];
13
+ maxDuration?: number;
14
+ }
15
+ type FarmRouteRuntimeEntryKind = "page" | "api" | "rule";
16
+ type FarmRouteRenderingMode = "static" | "dynamic";
17
+ interface FarmRouteRuntimeManifestEntry extends ResolvedFarmRouteRuntimeConfig {
18
+ kind: FarmRouteRuntimeEntryKind;
19
+ pattern: string;
20
+ rendering: FarmRouteRenderingMode;
21
+ source?: string;
22
+ }
23
+ interface FarmRouteRuntimeManifest {
24
+ version: 1;
25
+ routes: FarmRouteRuntimeManifestEntry[];
26
+ }
27
+ declare function normalizeFarmRouteRuntimeConfig(value: FarmRouteRuntimeConfig | null | undefined, source?: string): FarmRouteRuntimeConfig;
28
+ /** Merge from lowest to highest precedence. Explicit "auto" values reset inherited hints. */
29
+ declare function mergeFarmRouteRuntimeConfigs(...configs: Array<FarmRouteRuntimeConfig | null | undefined>): FarmRouteRuntimeConfig;
30
+ declare function resolveFarmRouteRuntimeConfig(config: FarmRouteRuntimeConfig | null | undefined, source?: string): ResolvedFarmRouteRuntimeConfig;
31
+ declare function hasFarmRouteRuntimeControls(config: FarmRouteRuntimeConfig | null | undefined): boolean;
32
+ declare function getFarmRouteRuntimeConfig(value: unknown): FarmRouteRuntimeConfig;
33
+ declare function createFarmRouteRuntimeKey(config: ResolvedFarmRouteRuntimeConfig): string;
34
+ /** Resolve matching route rules from broadest to most specific. */
35
+ declare function resolveFarmRouteRuleRuntimeConfig(pathname: string, routeRules: Record<string, FarmRouteRuntimeConfig> | null | undefined): FarmRouteRuntimeConfig;
36
+ declare function farmRouteRuleMatches(pattern: string, pathname: string): boolean;
37
+
38
+ export { type FarmRouteRuntimeConfig as F, type ResolvedFarmRouteRuntimeConfig as R, type FarmRouteRuntime as a, type FarmRouteRegions as b, type FarmRouteMaxDuration as c, type FarmRouteRuntimeEntryKind as d, type FarmRouteRenderingMode as e, type FarmRouteRuntimeManifestEntry as f, type FarmRouteRuntimeManifest as g, hasFarmRouteRuntimeControls as h, getFarmRouteRuntimeConfig as i, createFarmRouteRuntimeKey as j, resolveFarmRouteRuleRuntimeConfig as k, farmRouteRuleMatches as l, mergeFarmRouteRuntimeConfigs as m, normalizeFarmRouteRuntimeConfig as n, resolveFarmRouteRuntimeConfig as r };
@@ -0,0 +1,254 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/router.ts
22
+ var router_exports = {};
23
+ __export(router_exports, {
24
+ buildFarmRoutePath: () => buildFarmRoutePath,
25
+ createFarmRouter: () => createFarmRouter,
26
+ isFarmRouteActive: () => isFarmRouteActive,
27
+ matchFarmRoute: () => matchFarmRoute
28
+ });
29
+ module.exports = __toCommonJS(router_exports);
30
+ function createFarmRouter(routes) {
31
+ const normalizedRoutes = routes.map(normalizeRouteInput).sort(compareRoutes);
32
+ return {
33
+ routes: normalizedRoutes.map((entry) => entry.route),
34
+ match(pathname) {
35
+ const normalizedPathname = normalizePathname(pathname);
36
+ for (const entry of normalizedRoutes) {
37
+ const params = matchSegments(entry.segments, normalizedPathname);
38
+ if (params) {
39
+ return {
40
+ route: entry.route,
41
+ pathname: normalizedPathname,
42
+ params
43
+ };
44
+ }
45
+ }
46
+ return null;
47
+ },
48
+ build: buildFarmRoutePath,
49
+ isActive: isFarmRouteActive
50
+ };
51
+ }
52
+ __name(createFarmRouter, "createFarmRouter");
53
+ function matchFarmRoute(pattern, pathname) {
54
+ return matchSegments(parseRoutePattern(pattern), normalizePathname(pathname));
55
+ }
56
+ __name(matchFarmRoute, "matchFarmRoute");
57
+ function buildFarmRoutePath(pattern, params = {}, options = {}) {
58
+ const parts = [];
59
+ for (const segment of parseRoutePattern(pattern)) {
60
+ if (segment.type === "static") {
61
+ parts.push(encodePathSegment(segment.value));
62
+ continue;
63
+ }
64
+ const value = params[segment.name];
65
+ const values = Array.isArray(value) ? value : value == null ? [] : [value];
66
+ if (values.length === 0) {
67
+ if (segment.optional) continue;
68
+ throw new Error(`Missing route param "${segment.name}" for ${pattern}.`);
69
+ }
70
+ if (!segment.catchAll && values.length > 1) {
71
+ throw new Error(`Route param "${segment.name}" for ${pattern} expects a single value.`);
72
+ }
73
+ parts.push(...values.map((item) => encodePathSegment(String(item))));
74
+ }
75
+ let pathname = parts.length ? `/${parts.join("/")}` : "/";
76
+ if (options.trailingSlash && pathname !== "/") {
77
+ pathname = `${pathname}/`;
78
+ }
79
+ return appendQueryAndHash(pathname, options);
80
+ }
81
+ __name(buildFarmRoutePath, "buildFarmRoutePath");
82
+ function isFarmRouteActive(pattern, pathname, options = {}) {
83
+ const normalizedPathname = normalizePathname(pathname);
84
+ if (matchFarmRoute(pattern, normalizedPathname)) return true;
85
+ if (options.exact !== false) return false;
86
+ const normalizedPattern = normalizePathname(pattern);
87
+ if (normalizedPattern === "/") return normalizedPathname === "/";
88
+ return normalizedPathname.startsWith(`${normalizedPattern}/`);
89
+ }
90
+ __name(isFarmRouteActive, "isFarmRouteActive");
91
+ function normalizeRouteInput(input, index) {
92
+ const route = typeof input === "string" ? { path: input } : input;
93
+ const path = normalizePathname(route.path);
94
+ const segments = parseRoutePattern(path);
95
+ return {
96
+ route: {
97
+ ...route,
98
+ path
99
+ },
100
+ segments,
101
+ score: scoreSegments(segments),
102
+ index
103
+ };
104
+ }
105
+ __name(normalizeRouteInput, "normalizeRouteInput");
106
+ function parseRoutePattern(pattern) {
107
+ return splitPathname(pattern).filter((part) => !isRouteGroup(part)).map((part) => {
108
+ const optionalCatchAll = part.match(/^\[\[\.\.\.([A-Za-z0-9_$-]+)\]\]$/);
109
+ if (optionalCatchAll) {
110
+ return {
111
+ type: "dynamic",
112
+ name: optionalCatchAll[1],
113
+ catchAll: true,
114
+ optional: true
115
+ };
116
+ }
117
+ const catchAll = part.match(/^\[\.\.\.([A-Za-z0-9_$-]+)\]$/);
118
+ if (catchAll) {
119
+ return {
120
+ type: "dynamic",
121
+ name: catchAll[1],
122
+ catchAll: true,
123
+ optional: false
124
+ };
125
+ }
126
+ const dynamic = part.match(/^\[([A-Za-z0-9_$-]+)\]$/) || part.match(/^:([A-Za-z0-9_$-]+)$/);
127
+ if (dynamic) {
128
+ return {
129
+ type: "dynamic",
130
+ name: dynamic[1],
131
+ catchAll: false,
132
+ optional: false
133
+ };
134
+ }
135
+ const star = part.match(/^\*([A-Za-z0-9_$-]+)(\?)?$/);
136
+ if (star) {
137
+ return {
138
+ type: "dynamic",
139
+ name: star[1],
140
+ catchAll: true,
141
+ optional: !!star[2]
142
+ };
143
+ }
144
+ return {
145
+ type: "static",
146
+ value: decodePathSegment(part)
147
+ };
148
+ });
149
+ }
150
+ __name(parseRoutePattern, "parseRoutePattern");
151
+ function matchSegments(segments, pathname) {
152
+ const parts = splitPathname(pathname);
153
+ const params = {};
154
+ if (segments.length === 0) {
155
+ return parts.length === 0 ? params : null;
156
+ }
157
+ let pathIndex = 0;
158
+ for (const segment of segments) {
159
+ if (segment.type === "static") {
160
+ if (decodePathSegment(parts[pathIndex] || "") !== segment.value) return null;
161
+ pathIndex++;
162
+ continue;
163
+ }
164
+ if (segment.catchAll) {
165
+ const remaining = parts.slice(pathIndex).map(decodePathSegment);
166
+ if (remaining.length === 0 && !segment.optional) return null;
167
+ params[segment.name] = remaining.join("/");
168
+ pathIndex = parts.length;
169
+ continue;
170
+ }
171
+ const value = parts[pathIndex];
172
+ if (!value) return null;
173
+ params[segment.name] = decodePathSegment(value);
174
+ pathIndex++;
175
+ }
176
+ return pathIndex === parts.length ? params : null;
177
+ }
178
+ __name(matchSegments, "matchSegments");
179
+ function compareRoutes(left, right) {
180
+ if (right.score !== left.score) return right.score - left.score;
181
+ return left.index - right.index;
182
+ }
183
+ __name(compareRoutes, "compareRoutes");
184
+ function scoreSegments(segments) {
185
+ return segments.reduce((score, segment) => {
186
+ if (segment.type === "static") return score + 100;
187
+ if (!segment.catchAll) return score + 50;
188
+ return score + (segment.optional ? 5 : 10);
189
+ }, segments.length);
190
+ }
191
+ __name(scoreSegments, "scoreSegments");
192
+ function normalizePathname(value) {
193
+ const raw = value || "/";
194
+ let pathname = raw;
195
+ try {
196
+ pathname = new URL(raw, "http://farm.local").pathname;
197
+ } catch {
198
+ pathname = raw.split(/[?#]/, 1)[0] || "/";
199
+ }
200
+ pathname = pathname.replace(/\\/g, "/").replace(/\/+/g, "/");
201
+ if (!pathname.startsWith("/")) pathname = `/${pathname}`;
202
+ if (pathname.length > 1) pathname = pathname.replace(/\/+$/, "");
203
+ return pathname || "/";
204
+ }
205
+ __name(normalizePathname, "normalizePathname");
206
+ function splitPathname(pathname) {
207
+ return normalizePathname(pathname).split("/").filter(Boolean);
208
+ }
209
+ __name(splitPathname, "splitPathname");
210
+ function isRouteGroup(part) {
211
+ return part.startsWith("(") && part.endsWith(")");
212
+ }
213
+ __name(isRouteGroup, "isRouteGroup");
214
+ function decodePathSegment(value) {
215
+ try {
216
+ return decodeURIComponent(value);
217
+ } catch {
218
+ return value;
219
+ }
220
+ }
221
+ __name(decodePathSegment, "decodePathSegment");
222
+ function encodePathSegment(value) {
223
+ return encodeURIComponent(value);
224
+ }
225
+ __name(encodePathSegment, "encodePathSegment");
226
+ function appendQueryAndHash(pathname, options) {
227
+ const search = createSearchParams(options.query);
228
+ const hash = options.hash ? `#${options.hash.replace(/^#/, "")}` : "";
229
+ const query = search.toString();
230
+ return `${pathname}${query ? `?${query}` : ""}${hash}`;
231
+ }
232
+ __name(appendQueryAndHash, "appendQueryAndHash");
233
+ function createSearchParams(query) {
234
+ if (query instanceof URLSearchParams) return query;
235
+ const search = new URLSearchParams();
236
+ if (!query) return search;
237
+ for (const [key, value] of Object.entries(query)) {
238
+ const values = Array.isArray(value) ? value : [value];
239
+ for (const item of values) {
240
+ if (item == null) continue;
241
+ search.append(key, String(item));
242
+ }
243
+ }
244
+ return search;
245
+ }
246
+ __name(createSearchParams, "createSearchParams");
247
+ // Annotate the CommonJS export names for ESM import in node:
248
+ 0 && (module.exports = {
249
+ buildFarmRoutePath,
250
+ createFarmRouter,
251
+ isFarmRouteActive,
252
+ matchFarmRoute
253
+ });
254
+ //# sourceMappingURL=router.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/router.ts"],"sourcesContent":["export type FarmRouterPrimitiveParam = string | number | boolean;\nexport type FarmRouterPathParam =\n | FarmRouterPrimitiveParam\n | readonly FarmRouterPrimitiveParam[]\n | null\n | undefined;\nexport type FarmRouterPathParams = Record<string, FarmRouterPathParam>;\nexport type FarmRouterParams = Record<string, string>;\n\nexport interface FarmRouterRoute<TMeta = unknown> {\n path: string;\n name?: string;\n meta?: TMeta;\n}\n\nexport type FarmRouterRouteInput<TMeta = unknown> = string | FarmRouterRoute<TMeta>;\n\nexport interface FarmRouterMatch<TMeta = unknown> {\n route: FarmRouterRoute<TMeta>;\n pathname: string;\n params: FarmRouterParams;\n}\n\nexport type FarmRouterQueryValue =\n | FarmRouterPrimitiveParam\n | readonly FarmRouterPrimitiveParam[]\n | null\n | undefined;\n\nexport interface FarmRouterBuildOptions {\n query?: URLSearchParams | Record<string, FarmRouterQueryValue>;\n hash?: string;\n trailingSlash?: boolean;\n}\n\nexport interface FarmRouterActiveOptions {\n exact?: boolean;\n}\n\nexport interface FarmRouter<TMeta = unknown> {\n routes: FarmRouterRoute<TMeta>[];\n match(pathname: string): FarmRouterMatch<TMeta> | null;\n build(pattern: string, params?: FarmRouterPathParams, options?: FarmRouterBuildOptions): string;\n isActive(pattern: string, pathname: string, options?: FarmRouterActiveOptions): boolean;\n}\n\ntype RouterSegment =\n | {\n type: \"static\";\n value: string;\n }\n | {\n type: \"dynamic\";\n name: string;\n catchAll: boolean;\n optional: boolean;\n };\n\ninterface NormalizedRouterRoute<TMeta> {\n route: FarmRouterRoute<TMeta>;\n segments: RouterSegment[];\n score: number;\n index: number;\n}\n\nexport function createFarmRouter<TMeta = unknown>(\n routes: FarmRouterRouteInput<TMeta>[],\n): FarmRouter<TMeta> {\n const normalizedRoutes = routes.map(normalizeRouteInput).sort(compareRoutes);\n\n return {\n routes: normalizedRoutes.map((entry) => entry.route),\n match(pathname) {\n const normalizedPathname = normalizePathname(pathname);\n\n for (const entry of normalizedRoutes) {\n const params = matchSegments(entry.segments, normalizedPathname);\n if (params) {\n return {\n route: entry.route,\n pathname: normalizedPathname,\n params,\n };\n }\n }\n\n return null;\n },\n build: buildFarmRoutePath,\n isActive: isFarmRouteActive,\n };\n}\n\nexport function matchFarmRoute(pattern: string, pathname: string): FarmRouterParams | null {\n return matchSegments(parseRoutePattern(pattern), normalizePathname(pathname));\n}\n\nexport function buildFarmRoutePath(\n pattern: string,\n params: FarmRouterPathParams = {},\n options: FarmRouterBuildOptions = {},\n): string {\n const parts: string[] = [];\n\n for (const segment of parseRoutePattern(pattern)) {\n if (segment.type === \"static\") {\n parts.push(encodePathSegment(segment.value));\n continue;\n }\n\n const value = params[segment.name];\n const values = Array.isArray(value) ? value : value == null ? [] : [value];\n\n if (values.length === 0) {\n if (segment.optional) continue;\n throw new Error(`Missing route param \"${segment.name}\" for ${pattern}.`);\n }\n\n if (!segment.catchAll && values.length > 1) {\n throw new Error(`Route param \"${segment.name}\" for ${pattern} expects a single value.`);\n }\n\n parts.push(...values.map((item) => encodePathSegment(String(item))));\n }\n\n let pathname = parts.length ? `/${parts.join(\"/\")}` : \"/\";\n\n if (options.trailingSlash && pathname !== \"/\") {\n pathname = `${pathname}/`;\n }\n\n return appendQueryAndHash(pathname, options);\n}\n\nexport function isFarmRouteActive(\n pattern: string,\n pathname: string,\n options: FarmRouterActiveOptions = {},\n): boolean {\n const normalizedPathname = normalizePathname(pathname);\n if (matchFarmRoute(pattern, normalizedPathname)) return true;\n if (options.exact !== false) return false;\n\n const normalizedPattern = normalizePathname(pattern);\n if (normalizedPattern === \"/\") return normalizedPathname === \"/\";\n return normalizedPathname.startsWith(`${normalizedPattern}/`);\n}\n\nfunction normalizeRouteInput<TMeta>(\n input: FarmRouterRouteInput<TMeta>,\n index: number,\n): NormalizedRouterRoute<TMeta> {\n const route = typeof input === \"string\" ? { path: input } : input;\n const path = normalizePathname(route.path);\n const segments = parseRoutePattern(path);\n\n return {\n route: {\n ...route,\n path,\n },\n segments,\n score: scoreSegments(segments),\n index,\n };\n}\n\nfunction parseRoutePattern(pattern: string): RouterSegment[] {\n return splitPathname(pattern)\n .filter((part) => !isRouteGroup(part))\n .map((part) => {\n const optionalCatchAll = part.match(/^\\[\\[\\.\\.\\.([A-Za-z0-9_$-]+)\\]\\]$/);\n if (optionalCatchAll) {\n return {\n type: \"dynamic\",\n name: optionalCatchAll[1],\n catchAll: true,\n optional: true,\n };\n }\n\n const catchAll = part.match(/^\\[\\.\\.\\.([A-Za-z0-9_$-]+)\\]$/);\n if (catchAll) {\n return {\n type: \"dynamic\",\n name: catchAll[1],\n catchAll: true,\n optional: false,\n };\n }\n\n const dynamic = part.match(/^\\[([A-Za-z0-9_$-]+)\\]$/) || part.match(/^:([A-Za-z0-9_$-]+)$/);\n if (dynamic) {\n return {\n type: \"dynamic\",\n name: dynamic[1],\n catchAll: false,\n optional: false,\n };\n }\n\n const star = part.match(/^\\*([A-Za-z0-9_$-]+)(\\?)?$/);\n if (star) {\n return {\n type: \"dynamic\",\n name: star[1],\n catchAll: true,\n optional: !!star[2],\n };\n }\n\n return {\n type: \"static\",\n value: decodePathSegment(part),\n };\n });\n}\n\nfunction matchSegments(segments: RouterSegment[], pathname: string): FarmRouterParams | null {\n const parts = splitPathname(pathname);\n const params: FarmRouterParams = {};\n\n if (segments.length === 0) {\n return parts.length === 0 ? params : null;\n }\n\n let pathIndex = 0;\n\n for (const segment of segments) {\n if (segment.type === \"static\") {\n if (decodePathSegment(parts[pathIndex] || \"\") !== segment.value) return null;\n pathIndex++;\n continue;\n }\n\n if (segment.catchAll) {\n const remaining = parts.slice(pathIndex).map(decodePathSegment);\n if (remaining.length === 0 && !segment.optional) return null;\n params[segment.name] = remaining.join(\"/\");\n pathIndex = parts.length;\n continue;\n }\n\n const value = parts[pathIndex];\n if (!value) return null;\n params[segment.name] = decodePathSegment(value);\n pathIndex++;\n }\n\n return pathIndex === parts.length ? params : null;\n}\n\nfunction compareRoutes<TMeta>(\n left: NormalizedRouterRoute<TMeta>,\n right: NormalizedRouterRoute<TMeta>,\n) {\n if (right.score !== left.score) return right.score - left.score;\n return left.index - right.index;\n}\n\nfunction scoreSegments(segments: RouterSegment[]) {\n return segments.reduce((score, segment) => {\n if (segment.type === \"static\") return score + 100;\n if (!segment.catchAll) return score + 50;\n return score + (segment.optional ? 5 : 10);\n }, segments.length);\n}\n\nfunction normalizePathname(value: string) {\n const raw = value || \"/\";\n let pathname = raw;\n\n try {\n pathname = new URL(raw, \"http://farm.local\").pathname;\n } catch {\n pathname = raw.split(/[?#]/, 1)[0] || \"/\";\n }\n\n pathname = pathname.replace(/\\\\/g, \"/\").replace(/\\/+/g, \"/\");\n if (!pathname.startsWith(\"/\")) pathname = `/${pathname}`;\n if (pathname.length > 1) pathname = pathname.replace(/\\/+$/, \"\");\n return pathname || \"/\";\n}\n\nfunction splitPathname(pathname: string) {\n return normalizePathname(pathname).split(\"/\").filter(Boolean);\n}\n\nfunction isRouteGroup(part: string) {\n return part.startsWith(\"(\") && part.endsWith(\")\");\n}\n\nfunction decodePathSegment(value: string) {\n try {\n return decodeURIComponent(value);\n } catch {\n return value;\n }\n}\n\nfunction encodePathSegment(value: string) {\n return encodeURIComponent(value);\n}\n\nfunction appendQueryAndHash(pathname: string, options: FarmRouterBuildOptions) {\n const search = createSearchParams(options.query);\n const hash = options.hash ? `#${options.hash.replace(/^#/, \"\")}` : \"\";\n const query = search.toString();\n return `${pathname}${query ? `?${query}` : \"\"}${hash}`;\n}\n\nfunction createSearchParams(query: FarmRouterBuildOptions[\"query\"]) {\n if (query instanceof URLSearchParams) return query;\n\n const search = new URLSearchParams();\n if (!query) return search;\n\n for (const [key, value] of Object.entries(query)) {\n const values = Array.isArray(value) ? value : [value];\n for (const item of values) {\n if (item == null) continue;\n search.append(key, String(item));\n }\n }\n\n return search;\n}\n"],"mappings":"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","names":[]}
@@ -0,0 +1,36 @@
1
+ type FarmRouterPrimitiveParam = string | number | boolean;
2
+ type FarmRouterPathParam = FarmRouterPrimitiveParam | readonly FarmRouterPrimitiveParam[] | null | undefined;
3
+ type FarmRouterPathParams = Record<string, FarmRouterPathParam>;
4
+ type FarmRouterParams = Record<string, string>;
5
+ interface FarmRouterRoute<TMeta = unknown> {
6
+ path: string;
7
+ name?: string;
8
+ meta?: TMeta;
9
+ }
10
+ type FarmRouterRouteInput<TMeta = unknown> = string | FarmRouterRoute<TMeta>;
11
+ interface FarmRouterMatch<TMeta = unknown> {
12
+ route: FarmRouterRoute<TMeta>;
13
+ pathname: string;
14
+ params: FarmRouterParams;
15
+ }
16
+ type FarmRouterQueryValue = FarmRouterPrimitiveParam | readonly FarmRouterPrimitiveParam[] | null | undefined;
17
+ interface FarmRouterBuildOptions {
18
+ query?: URLSearchParams | Record<string, FarmRouterQueryValue>;
19
+ hash?: string;
20
+ trailingSlash?: boolean;
21
+ }
22
+ interface FarmRouterActiveOptions {
23
+ exact?: boolean;
24
+ }
25
+ interface FarmRouter<TMeta = unknown> {
26
+ routes: FarmRouterRoute<TMeta>[];
27
+ match(pathname: string): FarmRouterMatch<TMeta> | null;
28
+ build(pattern: string, params?: FarmRouterPathParams, options?: FarmRouterBuildOptions): string;
29
+ isActive(pattern: string, pathname: string, options?: FarmRouterActiveOptions): boolean;
30
+ }
31
+ declare function createFarmRouter<TMeta = unknown>(routes: FarmRouterRouteInput<TMeta>[]): FarmRouter<TMeta>;
32
+ declare function matchFarmRoute(pattern: string, pathname: string): FarmRouterParams | null;
33
+ declare function buildFarmRoutePath(pattern: string, params?: FarmRouterPathParams, options?: FarmRouterBuildOptions): string;
34
+ declare function isFarmRouteActive(pattern: string, pathname: string, options?: FarmRouterActiveOptions): boolean;
35
+
36
+ export { type FarmRouter, type FarmRouterActiveOptions, type FarmRouterBuildOptions, type FarmRouterMatch, type FarmRouterParams, type FarmRouterPathParam, type FarmRouterPathParams, type FarmRouterPrimitiveParam, type FarmRouterQueryValue, type FarmRouterRoute, type FarmRouterRouteInput, buildFarmRoutePath, createFarmRouter, isFarmRouteActive, matchFarmRoute };
@@ -0,0 +1,36 @@
1
+ type FarmRouterPrimitiveParam = string | number | boolean;
2
+ type FarmRouterPathParam = FarmRouterPrimitiveParam | readonly FarmRouterPrimitiveParam[] | null | undefined;
3
+ type FarmRouterPathParams = Record<string, FarmRouterPathParam>;
4
+ type FarmRouterParams = Record<string, string>;
5
+ interface FarmRouterRoute<TMeta = unknown> {
6
+ path: string;
7
+ name?: string;
8
+ meta?: TMeta;
9
+ }
10
+ type FarmRouterRouteInput<TMeta = unknown> = string | FarmRouterRoute<TMeta>;
11
+ interface FarmRouterMatch<TMeta = unknown> {
12
+ route: FarmRouterRoute<TMeta>;
13
+ pathname: string;
14
+ params: FarmRouterParams;
15
+ }
16
+ type FarmRouterQueryValue = FarmRouterPrimitiveParam | readonly FarmRouterPrimitiveParam[] | null | undefined;
17
+ interface FarmRouterBuildOptions {
18
+ query?: URLSearchParams | Record<string, FarmRouterQueryValue>;
19
+ hash?: string;
20
+ trailingSlash?: boolean;
21
+ }
22
+ interface FarmRouterActiveOptions {
23
+ exact?: boolean;
24
+ }
25
+ interface FarmRouter<TMeta = unknown> {
26
+ routes: FarmRouterRoute<TMeta>[];
27
+ match(pathname: string): FarmRouterMatch<TMeta> | null;
28
+ build(pattern: string, params?: FarmRouterPathParams, options?: FarmRouterBuildOptions): string;
29
+ isActive(pattern: string, pathname: string, options?: FarmRouterActiveOptions): boolean;
30
+ }
31
+ declare function createFarmRouter<TMeta = unknown>(routes: FarmRouterRouteInput<TMeta>[]): FarmRouter<TMeta>;
32
+ declare function matchFarmRoute(pattern: string, pathname: string): FarmRouterParams | null;
33
+ declare function buildFarmRoutePath(pattern: string, params?: FarmRouterPathParams, options?: FarmRouterBuildOptions): string;
34
+ declare function isFarmRouteActive(pattern: string, pathname: string, options?: FarmRouterActiveOptions): boolean;
35
+
36
+ export { type FarmRouter, type FarmRouterActiveOptions, type FarmRouterBuildOptions, type FarmRouterMatch, type FarmRouterParams, type FarmRouterPathParam, type FarmRouterPathParams, type FarmRouterPrimitiveParam, type FarmRouterQueryValue, type FarmRouterRoute, type FarmRouterRouteInput, buildFarmRoutePath, createFarmRouter, isFarmRouteActive, matchFarmRoute };
@@ -0,0 +1,14 @@
1
+ import {
2
+ buildFarmRoutePath,
3
+ createFarmRouter,
4
+ isFarmRouteActive,
5
+ matchFarmRoute
6
+ } from "./chunk-ZBE6MLHL.mjs";
7
+ import "./chunk-CGILA3WO.mjs";
8
+ export {
9
+ buildFarmRoutePath,
10
+ createFarmRouter,
11
+ isFarmRouteActive,
12
+ matchFarmRoute
13
+ };
14
+ //# sourceMappingURL=router.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}