@farm.js/core 0.1.16 → 0.1.18

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 (390) hide show
  1. package/dist/after.cjs +12 -225
  2. package/dist/agent-runtime.cjs +83 -2800
  3. package/dist/agent-runtime.d.mts +3 -3
  4. package/dist/agent-runtime.d.ts +3 -3
  5. package/dist/api/client.cjs +17 -4026
  6. package/dist/api/client.d.mts +3 -3
  7. package/dist/api/client.d.ts +3 -3
  8. package/dist/api/client.mjs +3 -3
  9. package/dist/api/route-manager.cjs +34 -4317
  10. package/dist/api/route-manager.d.mts +3 -3
  11. package/dist/api/route-manager.d.ts +3 -3
  12. package/dist/api/route-manager.mjs +5 -5
  13. package/dist/api/runtime.cjs +29 -2660
  14. package/dist/api/runtime.d.mts +3 -3
  15. package/dist/api/runtime.d.ts +3 -3
  16. package/dist/api/runtime.mjs +6 -3
  17. package/dist/{api-client-B-n3pm_Q.d.mts → api-client-Cx54IR5g.d.mts} +2 -2
  18. package/dist/{api-client-C0_NZEBl.d.ts → api-client-DykpaKcY.d.ts} +2 -2
  19. package/dist/api.cjs +88 -8361
  20. package/dist/api.d.mts +5 -5
  21. package/dist/api.d.ts +5 -5
  22. package/dist/api.mjs +8 -8
  23. package/dist/{app-AyjEsCBq.d.ts → app-BHY_10Lm.d.ts} +3 -3
  24. package/dist/{app-CYPHeOo_.d.mts → app-BMk0do23.d.mts} +3 -3
  25. package/dist/app-markdown.cjs +39 -280
  26. package/dist/app-markdown.d.mts +4 -4
  27. package/dist/app-markdown.d.ts +4 -4
  28. package/dist/app-markdown.mjs +3 -3
  29. package/dist/cache.cjs +38 -1526
  30. package/dist/cache.d.mts +11 -1
  31. package/dist/cache.d.ts +11 -1
  32. package/dist/cache.mjs +1 -1
  33. package/dist/chunk-22GUSVNJ.cjs +351 -0
  34. package/dist/chunk-2CQ74SP6.cjs +13 -0
  35. package/dist/chunk-2SJ4RQ6P.cjs +57 -0
  36. package/dist/chunk-3376ZTRC.cjs +1 -0
  37. package/dist/{chunk-IL5RWYK7.mjs → chunk-3XG26Z3J.mjs} +1 -1
  38. package/dist/{chunk-7HDZYYS4.mjs → chunk-4OOBRCJX.mjs} +27 -5
  39. package/dist/chunk-4PNUXIVU.cjs +472 -0
  40. package/dist/chunk-4PPEPOZZ.cjs +21 -0
  41. package/dist/chunk-4ZFL5GFN.cjs +520 -0
  42. package/dist/{chunk-B76DT5Y6.mjs → chunk-57J3Y7Y3.mjs} +1 -1
  43. package/dist/chunk-5OVTOKGH.cjs +65 -0
  44. package/dist/chunk-5QIKR7RR.cjs +224 -0
  45. package/dist/{chunk-MOQNHLTS.mjs → chunk-5QOEPUYE.mjs} +5 -2
  46. package/dist/{chunk-HKLRP3BN.mjs → chunk-5SPPCN5J.mjs} +1 -1
  47. package/dist/chunk-5ZSWG4UX.cjs +127 -0
  48. package/dist/chunk-62YJ2IEB.cjs +238 -0
  49. package/dist/chunk-6EODJYCX.cjs +183 -0
  50. package/dist/chunk-6EXBPJ24.cjs +434 -0
  51. package/dist/chunk-6QQDAAAZ.cjs +38 -0
  52. package/dist/chunk-6V4TDWEC.cjs +455 -0
  53. package/dist/{chunk-LUC2FAGW.mjs → chunk-6VQIKZZO.mjs} +1 -1
  54. package/dist/chunk-72ADZ6GQ.cjs +19 -0
  55. package/dist/chunk-75BRBIFP.cjs +172 -0
  56. package/dist/{chunk-7ZWL7XOU.mjs → chunk-76DG3LF3.mjs} +1 -1
  57. package/dist/chunk-7W3CPVXS.cjs +24 -0
  58. package/dist/chunk-A6WIQH5Z.cjs +31 -0
  59. package/dist/{chunk-EWDK36MM.mjs → chunk-A72YEUZ3.mjs} +1 -1
  60. package/dist/chunk-AFOD3LYZ.cjs +377 -0
  61. package/dist/chunk-AMDMVWMI.cjs +39 -0
  62. package/dist/chunk-AORPIPNB.cjs +552 -0
  63. package/dist/chunk-ARJWXNQL.cjs +256 -0
  64. package/dist/{chunk-ZHOIQC6U.mjs → chunk-ATERBVHQ.mjs} +2 -2
  65. package/dist/chunk-AWRISO2H.cjs +2199 -0
  66. package/dist/chunk-AYJR42WX.cjs +711 -0
  67. package/dist/chunk-B4CH33IG.cjs +644 -0
  68. package/dist/chunk-BIDYX3SL.cjs +91 -0
  69. package/dist/chunk-BSTRERPP.cjs +40 -0
  70. package/dist/chunk-BYODCJD6.cjs +663 -0
  71. package/dist/chunk-C3VRMB6H.cjs +85 -0
  72. package/dist/chunk-C5GUTBZK.cjs +173 -0
  73. package/dist/chunk-CIAGU2X4.cjs +337 -0
  74. package/dist/chunk-CMGMGHUZ.cjs +27 -0
  75. package/dist/chunk-CXP5U3RW.cjs +54 -0
  76. package/dist/chunk-D2ULAULS.cjs +166 -0
  77. package/dist/chunk-D7JTOLFK.cjs +285 -0
  78. package/dist/chunk-DVM4FKZL.cjs +169 -0
  79. package/dist/chunk-DYEJQTDN.cjs +49 -0
  80. package/dist/chunk-E2BMSZ2W.cjs +151 -0
  81. package/dist/chunk-E3UK5IIB.cjs +593 -0
  82. package/dist/chunk-EM6SBQKM.cjs +470 -0
  83. package/dist/{chunk-27JNCYEK.mjs → chunk-EN7WTEAY.mjs} +2 -2
  84. package/dist/{chunk-IGO2HEV7.mjs → chunk-F6SJAKFJ.mjs} +62 -28
  85. package/dist/{chunk-GSDIZACQ.mjs → chunk-FG5H2VCJ.mjs} +2 -2
  86. package/dist/chunk-FJSWYIR7.cjs +482 -0
  87. package/dist/chunk-FK6GO24V.cjs +54 -0
  88. package/dist/chunk-FXUUWYAX.cjs +654 -0
  89. package/dist/chunk-G3HRIVEY.cjs +395 -0
  90. package/dist/chunk-G643DQCH.cjs +13 -0
  91. package/dist/chunk-G7HXGLEC.cjs +175 -0
  92. package/dist/chunk-GDSHDTJ4.cjs +152 -0
  93. package/dist/chunk-GNEO2XOF.cjs +2040 -0
  94. package/dist/{chunk-NHHKW2T6.mjs → chunk-GYKJCFTS.mjs} +170 -52
  95. package/dist/chunk-H6G5INWM.cjs +1094 -0
  96. package/dist/chunk-HBTUGXHS.cjs +180 -0
  97. package/dist/chunk-HREOKQWT.cjs +45 -0
  98. package/dist/chunk-I4J452B7.cjs +435 -0
  99. package/dist/chunk-I57LW5VZ.cjs +94 -0
  100. package/dist/chunk-I7PUUDGY.cjs +389 -0
  101. package/dist/chunk-IAMRBF3Z.cjs +86 -0
  102. package/dist/chunk-IKNRN4VS.cjs +14214 -0
  103. package/dist/chunk-IQXFRNY2.cjs +169 -0
  104. package/dist/chunk-IXTFU4PL.cjs +2355 -0
  105. package/dist/chunk-J2OP5GG3.cjs +725 -0
  106. package/dist/chunk-J3LOGE4T.cjs +42 -0
  107. package/dist/chunk-J7FSKED3.cjs +93 -0
  108. package/dist/chunk-JDNHKPTD.cjs +22 -0
  109. package/dist/chunk-JSROZYYO.cjs +164 -0
  110. package/dist/chunk-K6FNHVDR.cjs +696 -0
  111. package/dist/chunk-KGZIORNL.cjs +43 -0
  112. package/dist/{chunk-LZK5CXDW.mjs → chunk-KLSSO6YD.mjs} +2 -2
  113. package/dist/{chunk-TYVVIQ5M.mjs → chunk-KPNVGRBL.mjs} +32 -25
  114. package/dist/chunk-KR6CKSXT.cjs +15 -0
  115. package/dist/chunk-KROWKCUH.cjs +185 -0
  116. package/dist/chunk-KVFPGF2M.cjs +46 -0
  117. package/dist/{chunk-KUO3GBPK.mjs → chunk-L6V3P73N.mjs} +1 -1
  118. package/dist/chunk-LCCBO7PJ.cjs +46 -0
  119. package/dist/chunk-LIUGYUX3.cjs +22 -0
  120. package/dist/chunk-LTNGXMQ6.cjs +55 -0
  121. package/dist/chunk-M2L4MYDQ.cjs +14 -0
  122. package/dist/chunk-MCJLA63J.cjs +1 -0
  123. package/dist/chunk-MKB2EGIR.cjs +148 -0
  124. package/dist/chunk-MQ3H6LT5.cjs +202 -0
  125. package/dist/chunk-MT763TDW.cjs +43 -0
  126. package/dist/chunk-MWSK6C4J.cjs +18 -0
  127. package/dist/chunk-MWWVKDW3.cjs +169 -0
  128. package/dist/{chunk-KTGFMHET.mjs → chunk-N6UROPT7.mjs} +1 -1
  129. package/dist/chunk-NO3WWW3N.cjs +192 -0
  130. package/dist/{chunk-NDD2YVGU.mjs → chunk-NRVGEI5I.mjs} +10 -3
  131. package/dist/chunk-NV3A5DXM.cjs +862 -0
  132. package/dist/chunk-NWOD6NIT.cjs +9 -0
  133. package/dist/chunk-NZKJGRB3.cjs +230 -0
  134. package/dist/chunk-OAVTUMJP.cjs +1496 -0
  135. package/dist/chunk-OHY2ZWUG.cjs +25 -0
  136. package/dist/chunk-OI6CMLWX.cjs +47 -0
  137. package/dist/chunk-OIEOCXKG.cjs +453 -0
  138. package/dist/chunk-OWOUTKIJ.cjs +558 -0
  139. package/dist/chunk-OX6O6WVA.cjs +74 -0
  140. package/dist/chunk-OXSIH4D6.cjs +476 -0
  141. package/dist/chunk-OYEUREB6.cjs +35 -0
  142. package/dist/chunk-PCOTGFSM.cjs +139 -0
  143. package/dist/chunk-PZYCPSCC.cjs +35 -0
  144. package/dist/chunk-QBK2AA4U.cjs +445 -0
  145. package/dist/chunk-QBPXNZGV.cjs +487 -0
  146. package/dist/{chunk-IXTEENRS.mjs → chunk-QGVJVSNX.mjs} +5 -5
  147. package/dist/chunk-QNPEUFHQ.cjs +27 -0
  148. package/dist/chunk-QZRVZSPN.cjs +236 -0
  149. package/dist/chunk-R5A5KNVX.cjs +20 -0
  150. package/dist/chunk-R5JIFR6B.cjs +42 -0
  151. package/dist/chunk-R6AIILII.cjs +193 -0
  152. package/dist/chunk-RG3ZOTG5.cjs +34 -0
  153. package/dist/chunk-ROUTX2E5.cjs +390 -0
  154. package/dist/chunk-RTHIVJ2G.cjs +54 -0
  155. package/dist/chunk-S3A45T7F.cjs +166 -0
  156. package/dist/chunk-S3JO3N4H.cjs +17 -0
  157. package/dist/chunk-SK35NQKK.cjs +27 -0
  158. package/dist/chunk-SU7MH53P.cjs +180 -0
  159. package/dist/chunk-SVRTJOUF.cjs +113 -0
  160. package/dist/chunk-SWN467MP.cjs +18 -0
  161. package/dist/{chunk-6SCB2MXB.mjs → chunk-SXHV42UQ.mjs} +16 -1
  162. package/dist/{chunk-OWTIOHON.mjs → chunk-SYGGPS4A.mjs} +2 -2
  163. package/dist/chunk-SYQ3MOWW.cjs +73 -0
  164. package/dist/chunk-T5CERMEH.cjs +417 -0
  165. package/dist/chunk-TFAXUHWX.cjs +206 -0
  166. package/dist/chunk-TIWHTW3Q.cjs +24 -0
  167. package/dist/chunk-TKJZFIML.cjs +20 -0
  168. package/dist/chunk-TKNSDBBN.cjs +193 -0
  169. package/dist/{chunk-NC333MFA.mjs → chunk-TSWW5BVH.mjs} +7 -4
  170. package/dist/chunk-TWGMSEHX.cjs +525 -0
  171. package/dist/chunk-TYQUSXUG.cjs +1357 -0
  172. package/dist/chunk-U4KT7QP3.cjs +23 -0
  173. package/dist/{chunk-LK6FGAQR.mjs → chunk-UDBJCUPA.mjs} +7 -4
  174. package/dist/chunk-UJ2C4ICS.cjs +277 -0
  175. package/dist/chunk-UN5GHC5V.cjs +10244 -0
  176. package/dist/chunk-UQZ4AYTH.cjs +168 -0
  177. package/dist/chunk-US2QVW3E.cjs +36 -0
  178. package/dist/{chunk-NUD6XBMO.mjs → chunk-UTBVHYS3.mjs} +2 -2
  179. package/dist/{chunk-76MNRHTS.mjs → chunk-UUYF3CHN.mjs} +2 -2
  180. package/dist/chunk-VB6UCX3V.cjs +421 -0
  181. package/dist/chunk-VEKFLAQM.cjs +300 -0
  182. package/dist/chunk-VQDBNVOO.cjs +14 -0
  183. package/dist/chunk-W4E7WMXE.cjs +71 -0
  184. package/dist/{chunk-VVTREAG5.mjs → chunk-WD4YXVLV.mjs} +11 -3
  185. package/dist/{chunk-UQZPTIML.mjs → chunk-WD5PNSOB.mjs} +2 -2
  186. package/dist/chunk-WJ3HK3LJ.cjs +1102 -0
  187. package/dist/chunk-WMAPPDMM.cjs +28 -0
  188. package/dist/chunk-WMOGFOUJ.cjs +223 -0
  189. package/dist/chunk-WPYFSQKK.cjs +37 -0
  190. package/dist/chunk-WZMNW2IW.cjs +1415 -0
  191. package/dist/chunk-XGC343EY.cjs +443 -0
  192. package/dist/{chunk-DPZUDPVJ.mjs → chunk-XP777LRD.mjs} +1 -1
  193. package/dist/chunk-XSKZORAS.cjs +727 -0
  194. package/dist/chunk-XWAWFQFS.cjs +82 -0
  195. package/dist/{chunk-KATQ6I56.mjs → chunk-XWAYMDLB.mjs} +1 -1
  196. package/dist/chunk-Y4YMF2NQ.cjs +460 -0
  197. package/dist/chunk-Y4YWHNKU.cjs +250 -0
  198. package/dist/chunk-Y53ZSFN6.cjs +504 -0
  199. package/dist/chunk-YA6LLTIJ.cjs +411 -0
  200. package/dist/chunk-YFPGHF5F.cjs +202 -0
  201. package/dist/chunk-YJRZR7VU.cjs +28 -0
  202. package/dist/chunk-YTAABQEV.cjs +1 -0
  203. package/dist/chunk-YX3DBN4M.cjs +18 -0
  204. package/dist/chunk-YZTASLPQ.cjs +64 -0
  205. package/dist/chunk-Z5HIWVDP.cjs +2173 -0
  206. package/dist/{chunk-Q3MDL7TM.mjs → chunk-ZCNJKLA2.mjs} +30 -11
  207. package/dist/chunk-ZEG3OPIB.cjs +93 -0
  208. package/dist/chunk-ZMN3H73H.cjs +155 -0
  209. package/dist/client/lifecycle.cjs +6 -35
  210. package/dist/{client-plugins-CqVtZi5X.d.ts → client-plugins-C089bQhN.d.ts} +2 -2
  211. package/dist/{client-plugins-CIPRtSsW.d.mts → client-plugins-JXXmZliS.d.mts} +2 -2
  212. package/dist/client-plugins.cjs +7 -448
  213. package/dist/client-plugins.d.mts +3 -3
  214. package/dist/client-plugins.d.ts +3 -3
  215. package/dist/client.cjs +171 -9774
  216. package/dist/client.d.mts +8 -8
  217. package/dist/client.d.ts +8 -8
  218. package/dist/client.mjs +6 -6
  219. package/dist/config.cjs +8 -36
  220. package/dist/config.d.mts +3 -3
  221. package/dist/config.d.ts +3 -3
  222. package/dist/cron.cjs +24 -491
  223. package/dist/cron.mjs +2 -2
  224. package/dist/deferred.cjs +26 -475
  225. package/dist/deployment.cjs +39 -210
  226. package/dist/devtools-OUIPHVV6.cjs +388 -0
  227. package/dist/{devtools-IU7LKZOH.mjs → devtools-UFVTMQX5.mjs} +7 -7
  228. package/dist/devtools-client-4WAPJY5L.cjs +254 -0
  229. package/dist/devtools-ui-5GBDIGMK.cjs +1296 -0
  230. package/dist/docs.cjs +46 -5649
  231. package/dist/docs.mjs +9 -9
  232. package/dist/{endpoint-kSAxE52R.d.ts → endpoint-1zA994xL.d.ts} +1 -1
  233. package/dist/{endpoint-Bu3XgeMK.d.mts → endpoint-DAc96i93.d.mts} +1 -1
  234. package/dist/env-types.cjs +5 -226
  235. package/dist/env.cjs +23 -306
  236. package/dist/env.d.mts +5 -3
  237. package/dist/env.d.ts +5 -3
  238. package/dist/env.mjs +2 -1
  239. package/dist/environment/vite.cjs +8 -372
  240. package/dist/environment.cjs +12 -94
  241. package/dist/font.cjs +13 -63
  242. package/dist/headers.cjs +7 -123
  243. package/dist/i18n/client.cjs +55 -294
  244. package/dist/i18n/index.cjs +22 -209
  245. package/dist/i18n/server.cjs +22 -745
  246. package/dist/image/server.cjs +13 -729
  247. package/dist/image/sharp.cjs +33 -171
  248. package/dist/image.cjs +41 -85
  249. package/dist/index.cjs +1151 -67862
  250. package/dist/index.d.mts +14 -14
  251. package/dist/index.d.ts +14 -14
  252. package/dist/index.mjs +34 -34
  253. package/dist/instrumentation.cjs +12 -138
  254. package/dist/integration-orm-55F7CII5.cjs +13 -0
  255. package/dist/integrations.cjs +55 -4090
  256. package/dist/integrations.d.mts +3 -3
  257. package/dist/integrations.d.ts +3 -3
  258. package/dist/internal/app-markdown-runtime.cjs +27 -224
  259. package/dist/internal/app-markdown-runtime.d.mts +3 -3
  260. package/dist/internal/app-markdown-runtime.d.ts +3 -3
  261. package/dist/internal/app-markdown-runtime.mjs +2 -2
  262. package/dist/internal/build-runtime.cjs +120 -52038
  263. package/dist/internal/build-runtime.d.mts +5 -5
  264. package/dist/internal/build-runtime.d.ts +5 -5
  265. package/dist/internal/build-runtime.mjs +23 -23
  266. package/dist/internal/cli-runtime.cjs +67 -13765
  267. package/dist/internal/cli-runtime.mjs +13 -13
  268. package/dist/internal/client-error-overlay.cjs +80 -733
  269. package/dist/internal/client-error-overlay.mjs +1 -1
  270. package/dist/internal/client-runtime.cjs +81 -913
  271. package/dist/internal/compression-runtime.cjs +8 -214
  272. package/dist/internal/compression-runtime.d.mts +3 -3
  273. package/dist/internal/compression-runtime.d.ts +3 -3
  274. package/dist/internal/config-runtime.cjs +42 -6535
  275. package/dist/internal/config-runtime.d.mts +4 -4
  276. package/dist/internal/config-runtime.d.ts +4 -4
  277. package/dist/internal/config-runtime.mjs +7 -7
  278. package/dist/internal/docs-precompiled-runtime.cjs +26 -46
  279. package/dist/internal/infra-analytics-runtime.cjs +10 -536
  280. package/dist/internal/isolated-boundary.cjs +14 -414
  281. package/dist/internal/metadata-image-runtime.cjs +7 -285
  282. package/dist/internal/product-telemetry-runtime.cjs +42 -97
  283. package/dist/internal/product-telemetry-runtime.mjs +1 -1
  284. package/dist/internal/production-node-env.cjs +6 -63
  285. package/dist/internal/production-runtime.cjs +418 -7073
  286. package/dist/internal/production-runtime.d.mts +9 -9
  287. package/dist/internal/production-runtime.d.ts +9 -9
  288. package/dist/internal/production-runtime.mjs +6 -6
  289. package/dist/internal/request-cookies.cjs +6 -54
  290. package/dist/json-ld.cjs +24 -50
  291. package/dist/layers-E4WPJNY5.cjs +17 -0
  292. package/dist/manager-G4B2IPYE.cjs +14 -0
  293. package/dist/markdown.cjs +21 -532
  294. package/dist/markdown.mjs +1 -1
  295. package/dist/{metadata-8g__AMPM.d.ts → metadata-BcNJP4fq.d.ts} +1 -1
  296. package/dist/{metadata-OMX6wFNf.d.mts → metadata-C1Z9vLbb.d.mts} +1 -1
  297. package/dist/middleware.cjs +36 -2988
  298. package/dist/middleware.d.mts +5 -5
  299. package/dist/middleware.d.ts +5 -5
  300. package/dist/middleware.mjs +4 -4
  301. package/dist/navigation.cjs +22 -2588
  302. package/dist/nitro-4I2MYLY2.cjs +652 -0
  303. package/dist/{nitro-3N4ZXRYM.mjs → nitro-CVZ36JM5.mjs} +4 -4
  304. package/dist/observability.cjs +22 -614
  305. package/dist/og.cjs +5 -28
  306. package/dist/plugin.cjs +106 -37291
  307. package/dist/plugin.d.mts +3 -3
  308. package/dist/plugin.d.ts +3 -3
  309. package/dist/plugin.mjs +19 -19
  310. package/dist/{production-runtime-W3M0eNDV.d.mts → production-runtime-jcrTlRTb.d.mts} +1 -1
  311. package/dist/{production-runtime-BJh7o6Cr.d.ts → production-runtime-oKmC0WU-.d.ts} +1 -1
  312. package/dist/query/client.cjs +113 -449
  313. package/dist/query/index.cjs +26 -288
  314. package/dist/query/parsers.cjs +23 -247
  315. package/dist/query/server.cjs +36 -298
  316. package/dist/{render-plan-io7pvDNc.d.mts → render-plan-BLIfc4jt.d.mts} +1 -1
  317. package/dist/{render-plan-Be4ZGTJP.d.ts → render-plan-DOB9cV-h.d.ts} +1 -1
  318. package/dist/renderer/react/client.cjs +9 -43
  319. package/dist/renderer/react/server.cjs +40 -103
  320. package/dist/renderer/react/vite.cjs +7 -29
  321. package/dist/renderer-client.cjs +126 -4261
  322. package/dist/renderer-client.d.mts +5 -5
  323. package/dist/renderer-client.d.ts +5 -5
  324. package/dist/renderer-client.mjs +3 -3
  325. package/dist/renderer.cjs +31 -249
  326. package/dist/{request-DZkHYQ89.d.mts → request-Cr53NRHr.d.mts} +1 -1
  327. package/dist/{request-G8JhKr4F.d.ts → request-Dt2gNuQD.d.ts} +1 -1
  328. package/dist/request.cjs +5 -68
  329. package/dist/request.d.mts +4 -4
  330. package/dist/request.d.ts +4 -4
  331. package/dist/{route-C_eLaFTZ.d.mts → route-B0XrsrFk.d.mts} +1 -1
  332. package/dist/{route-BxNJT447.d.ts → route-DOEpbyWZ.d.ts} +1 -1
  333. package/dist/{route-rendering-BcLLPJgN.d.ts → route-rendering-CWYd8Mv1.d.ts} +1 -1
  334. package/dist/{route-rendering-CbAKr1TY.d.mts → route-rendering-CeFBEAoZ.d.mts} +1 -1
  335. package/dist/router.cjs +11 -474
  336. package/dist/routes.cjs +42 -2424
  337. package/dist/routes.d.mts +4 -4
  338. package/dist/routes.d.ts +4 -4
  339. package/dist/routes.mjs +2 -2
  340. package/dist/schema-dev-notice-MXSZMVDG.cjs +56 -0
  341. package/dist/schema.cjs +6 -33
  342. package/dist/search-client-G3RICOFU.cjs +13 -0
  343. package/dist/server-action-security.cjs +25 -541
  344. package/dist/server-fn-client.cjs +6 -337
  345. package/dist/server-fn-client.d.mts +3 -3
  346. package/dist/server-fn-client.d.ts +3 -3
  347. package/dist/server-fn.cjs +32 -1799
  348. package/dist/server-fn.d.mts +1 -1
  349. package/dist/server-fn.d.ts +1 -1
  350. package/dist/server-fn.mjs +2 -2
  351. package/dist/server-plugins.cjs +15 -884
  352. package/dist/server-plugins.d.mts +4 -4
  353. package/dist/server-plugins.d.ts +4 -4
  354. package/dist/server-query-client.cjs +15 -1849
  355. package/dist/server-query-client.d.mts +1 -1
  356. package/dist/server-query-client.d.ts +1 -1
  357. package/dist/server-query-client.mjs +4 -4
  358. package/dist/server-query.cjs +16 -1796
  359. package/dist/server-query.d.mts +1 -1
  360. package/dist/server-query.d.ts +1 -1
  361. package/dist/server-query.mjs +3 -3
  362. package/dist/server.cjs +296 -44522
  363. package/dist/server.d.mts +9 -9
  364. package/dist/server.d.ts +9 -9
  365. package/dist/server.mjs +22 -22
  366. package/dist/{spa-router-BcS_4nqm.d.mts → spa-router-CQWiYGxS.d.mts} +2 -2
  367. package/dist/{spa-router-BzFBUJkn.d.ts → spa-router-Wjiw-8hB.d.ts} +2 -2
  368. package/dist/storage.cjs +57 -576
  369. package/dist/testing.cjs +92 -3148
  370. package/dist/testing.d.mts +3 -3
  371. package/dist/testing.d.ts +3 -3
  372. package/dist/testing.mjs +11 -7
  373. package/dist/theme/client.cjs +13 -108
  374. package/dist/theme/index.cjs +6 -68
  375. package/dist/theme/runtime.cjs +13 -78
  376. package/dist/theme/server.cjs +10 -179
  377. package/dist/{utils-C4yrAhNc.d.ts → utils-B0XJmG_b.d.ts} +1 -1
  378. package/dist/{utils-5kQP1mFR.d.mts → utils-uUxF0K0P.d.mts} +1 -1
  379. package/dist/version.cjs +4 -32
  380. package/dist/version.mjs +1 -1
  381. package/dist/vite.cjs +119 -37622
  382. package/dist/vite.d.mts +3 -3
  383. package/dist/vite.d.ts +3 -3
  384. package/dist/vite.mjs +19 -19
  385. package/dist/workflows.cjs +19 -1040
  386. package/dist/workflows.mjs +2 -2
  387. package/package.json +2 -2
  388. package/dist/{chunk-VO5SCWF5.mjs → chunk-BNGS6KJ6.mjs} +0 -0
  389. package/dist/{chunk-MUUZJLCI.mjs → chunk-EGJDUF4Q.mjs} +3 -3
  390. package/dist/{chunk-4L7SZOHZ.mjs → chunk-YHOCRI4H.mjs} +3 -3
@@ -0,0 +1,224 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
+
3
+ var _chunkQNPEUFHQcjs = require('./chunk-QNPEUFHQ.cjs');
4
+
5
+
6
+ var _chunkUS2QVW3Ecjs = require('./chunk-US2QVW3E.cjs');
7
+
8
+
9
+
10
+
11
+ var _chunkNO3WWW3Ncjs = require('./chunk-NO3WWW3N.cjs');
12
+
13
+
14
+ var _chunkS3JO3N4Hcjs = require('./chunk-S3JO3N4H.cjs');
15
+
16
+ // src/utils.ts
17
+ var _path = require('path'); var _path2 = _interopRequireDefault(_path);
18
+ function parseRoutePath(filePath) {
19
+ const segments = [];
20
+ const normalizedPath = filePath.replace(/\\/g, "/");
21
+ const pathParts = normalizedPath.split("/").filter(Boolean);
22
+ const fileName = pathParts.pop() || "";
23
+ const fileType = getRouteType(fileName);
24
+ const routePath = `/${pathParts.join("/")}`;
25
+ _chunkNO3WWW3Ncjs.assertBrowserStableRoutePath.call(void 0, routePath);
26
+ _chunkNO3WWW3Ncjs.assertTerminalCatchAll.call(void 0, routePath);
27
+ _chunkNO3WWW3Ncjs.assertUniqueRouteParameters.call(void 0, routePath);
28
+ for (const part of pathParts) {
29
+ if (part.startsWith("(") && part.endsWith(")")) continue;
30
+ if (part.startsWith("[") && part.endsWith("]")) {
31
+ let segment = part.slice(1, -1);
32
+ const isDynamic = true;
33
+ let isOptional = false;
34
+ let isCatchAll = false;
35
+ if (segment.startsWith("[") && segment.endsWith("]")) {
36
+ isOptional = true;
37
+ segment = segment.slice(1, -1);
38
+ if (segment.startsWith("...")) {
39
+ segment = segment.slice(3);
40
+ isCatchAll = true;
41
+ }
42
+ } else if (segment.startsWith("...")) {
43
+ segment = segment.slice(3);
44
+ isCatchAll = true;
45
+ }
46
+ segments.push({ segment, isDynamic, isOptional, isCatchAll });
47
+ } else {
48
+ segments.push({
49
+ segment: part,
50
+ isDynamic: false,
51
+ isOptional: false,
52
+ isCatchAll: false
53
+ });
54
+ }
55
+ }
56
+ return {
57
+ segments,
58
+ filePath: normalizedPath,
59
+ type: fileType
60
+ };
61
+ }
62
+ _chunkS3JO3N4Hcjs.__name.call(void 0, parseRoutePath, "parseRoutePath");
63
+ function getRouteType(fileName) {
64
+ const baseName = fileName.replace(/\.(tsx?|jsx?|vue|svelte|mdx?|markdown)$/, "");
65
+ switch (baseName) {
66
+ case "page":
67
+ return "page";
68
+ case "layout":
69
+ return "layout";
70
+ case "loading":
71
+ return "loading";
72
+ case "error":
73
+ return "error";
74
+ case "not-found":
75
+ return "not-found";
76
+ default:
77
+ return "page";
78
+ }
79
+ }
80
+ _chunkS3JO3N4Hcjs.__name.call(void 0, getRouteType, "getRouteType");
81
+ function segmentsToPattern(segments) {
82
+ if (segments.length === 0) return "/";
83
+ return "/" + segments.map((segment) => {
84
+ if (!segment.isDynamic) return segment.segment;
85
+ if (segment.isCatchAll) {
86
+ return segment.isOptional ? `*${segment.segment}?` : `*${segment.segment}`;
87
+ }
88
+ return `:${segment.segment}`;
89
+ }).join("/");
90
+ }
91
+ _chunkS3JO3N4Hcjs.__name.call(void 0, segmentsToPattern, "segmentsToPattern");
92
+ function matchRoute(url, segments) {
93
+ return matchRouteParts(splitRoutePath(url), segments);
94
+ }
95
+ _chunkS3JO3N4Hcjs.__name.call(void 0, matchRoute, "matchRoute");
96
+ function splitRoutePath(url) {
97
+ return url.split("/").filter(Boolean).map(_chunkUS2QVW3Ecjs.decodeRouteSegment);
98
+ }
99
+ _chunkS3JO3N4Hcjs.__name.call(void 0, splitRoutePath, "splitRoutePath");
100
+ function matchRouteParts(urlParts, segments) {
101
+ const params = {};
102
+ if (segments.length === 0) {
103
+ return { params, matches: urlParts.length === 0 };
104
+ }
105
+ let urlIndex = 0;
106
+ let segmentIndex = 0;
107
+ while (segmentIndex < segments.length && urlIndex <= urlParts.length) {
108
+ const segment = segments[segmentIndex];
109
+ if (!segment.isDynamic) {
110
+ if (urlParts[urlIndex] !== segment.segment) {
111
+ return { params: {}, matches: false };
112
+ }
113
+ urlIndex++;
114
+ segmentIndex++;
115
+ } else if (segment.isCatchAll) {
116
+ const remainingParts = urlParts.slice(urlIndex);
117
+ if (remainingParts.length === 0 && !segment.isOptional) {
118
+ return { params: {}, matches: false };
119
+ }
120
+ params[segment.segment] = remainingParts.join("/");
121
+ urlIndex = urlParts.length;
122
+ segmentIndex++;
123
+ } else {
124
+ if (urlIndex >= urlParts.length) {
125
+ return { params: {}, matches: false };
126
+ }
127
+ params[segment.segment] = urlParts[urlIndex];
128
+ urlIndex++;
129
+ segmentIndex++;
130
+ }
131
+ }
132
+ const matches = segmentIndex === segments.length && urlIndex === urlParts.length;
133
+ return { params, matches };
134
+ }
135
+ _chunkS3JO3N4Hcjs.__name.call(void 0, matchRouteParts, "matchRouteParts");
136
+ function matchRoutePrefix(url, segments) {
137
+ return matchRoutePrefixParts(splitRoutePath(url), segments);
138
+ }
139
+ _chunkS3JO3N4Hcjs.__name.call(void 0, matchRoutePrefix, "matchRoutePrefix");
140
+ function matchRoutePrefixParts(urlParts, segments) {
141
+ let urlIndex = 0;
142
+ for (const segment of segments) {
143
+ if (segment.isCatchAll) {
144
+ return segment.isOptional || urlIndex < urlParts.length;
145
+ }
146
+ const urlPart = urlParts[urlIndex];
147
+ if (urlPart === void 0) return false;
148
+ if (!segment.isDynamic && segment.segment !== urlPart) return false;
149
+ urlIndex++;
150
+ }
151
+ return true;
152
+ }
153
+ _chunkS3JO3N4Hcjs.__name.call(void 0, matchRoutePrefixParts, "matchRoutePrefixParts");
154
+ function resolveAppPath(root, ...paths) {
155
+ return _path2.default.resolve(root, ...paths);
156
+ }
157
+ _chunkS3JO3N4Hcjs.__name.call(void 0, resolveAppPath, "resolveAppPath");
158
+ function toRootRelativeUrlPath(absolutePath, projectRoot) {
159
+ if (absolutePath === projectRoot) return "";
160
+ if (absolutePath.startsWith(`${projectRoot}/`) || absolutePath.startsWith(`${projectRoot}\\`)) {
161
+ return absolutePath.slice(projectRoot.length).replace(/\\/g, "/");
162
+ }
163
+ return void 0;
164
+ }
165
+ _chunkS3JO3N4Hcjs.__name.call(void 0, toRootRelativeUrlPath, "toRootRelativeUrlPath");
166
+ function toPosixPath(filePath) {
167
+ return filePath.replace(/\\/g, "/");
168
+ }
169
+ _chunkS3JO3N4Hcjs.__name.call(void 0, toPosixPath, "toPosixPath");
170
+ function toViteModuleId(filePath, root) {
171
+ if (!_path2.default.isAbsolute(filePath)) return filePath;
172
+ const relativePath = _path2.default.relative(root, filePath);
173
+ if (relativePath && !relativePath.startsWith("..") && !_path2.default.isAbsolute(relativePath)) {
174
+ return `/${relativePath.split(_path2.default.sep).join("/")}`;
175
+ }
176
+ const normalizedPath = filePath.replace(/\\/g, "/");
177
+ return normalizedPath.startsWith("/") ? `/@fs${normalizedPath}` : `/@fs/${normalizedPath}`;
178
+ }
179
+ _chunkS3JO3N4Hcjs.__name.call(void 0, toViteModuleId, "toViteModuleId");
180
+ async function fileExists(filePath) {
181
+ try {
182
+ const fs = await import("fs/promises");
183
+ await fs.access(filePath);
184
+ return true;
185
+ } catch (e) {
186
+ return false;
187
+ }
188
+ }
189
+ _chunkS3JO3N4Hcjs.__name.call(void 0, fileExists, "fileExists");
190
+ async function globFiles(pattern, cwd) {
191
+ const glob = await import("fast-glob");
192
+ return glob.default(pattern, { cwd, absolute: false });
193
+ }
194
+ _chunkS3JO3N4Hcjs.__name.call(void 0, globFiles, "globFiles");
195
+ function parseSearchParams(searchParams) {
196
+ return _chunkQNPEUFHQcjs.searchParamsToObject.call(void 0, searchParams);
197
+ }
198
+ _chunkS3JO3N4Hcjs.__name.call(void 0, parseSearchParams, "parseSearchParams");
199
+ var logger = {
200
+ info: /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, (message) => console.log(`[info] ${message}`), "info"),
201
+ success: /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, (message) => console.log(`[success] ${message}`), "success"),
202
+ warn: /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, (message) => console.warn(`\u26A0\uFE0F ${message}`), "warn"),
203
+ error: /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, (message) => console.error(`\u274C ${message}`), "error"),
204
+ ready: /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, (message) => console.log(`${message}`), "ready"),
205
+ event: /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, (message) => console.log(` ${message}`), "event")
206
+ };
207
+
208
+
209
+
210
+
211
+
212
+
213
+
214
+
215
+
216
+
217
+
218
+
219
+
220
+
221
+
222
+
223
+
224
+ exports.parseRoutePath = parseRoutePath; exports.segmentsToPattern = segmentsToPattern; exports.matchRoute = matchRoute; exports.splitRoutePath = splitRoutePath; exports.matchRouteParts = matchRouteParts; exports.matchRoutePrefix = matchRoutePrefix; exports.matchRoutePrefixParts = matchRoutePrefixParts; exports.resolveAppPath = resolveAppPath; exports.toRootRelativeUrlPath = toRootRelativeUrlPath; exports.toPosixPath = toPosixPath; exports.toViteModuleId = toViteModuleId; exports.fileExists = fileExists; exports.globFiles = globFiles; exports.parseSearchParams = parseSearchParams; exports.logger = logger;
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk-TVGP4BBZ.mjs";
12
12
  import {
13
13
  farmAcceptQuality
14
- } from "./chunk-6SCB2MXB.mjs";
14
+ } from "./chunk-SXHV42UQ.mjs";
15
15
  import {
16
16
  matchesFarmIfNoneMatch
17
17
  } from "./chunk-XF7Q24PF.mjs";
@@ -1970,6 +1970,7 @@ function createFarmDocsHandler(docs, options) {
1970
1970
  if (!isFarmDocsRequest(docs, request)) return null;
1971
1971
  const page = loadPage(contentDir, docs, request);
1972
1972
  if (!page) return null;
1973
+ const negotiatesAccept = !requestUrl.pathname.endsWith(".md");
1973
1974
  if (shouldReturnMarkdown(request)) {
1974
1975
  const origin = new URL(request.url).origin;
1975
1976
  return omitFarmDocsHeadBody(
@@ -1984,7 +1985,8 @@ function createFarmDocsHandler(docs, options) {
1984
1985
  status: 200,
1985
1986
  headers: {
1986
1987
  "Content-Type": "text/markdown; charset=utf-8",
1987
- "Cache-Control": "public, max-age=60"
1988
+ "Cache-Control": "public, max-age=60",
1989
+ ...negotiatesAccept ? { Vary: "Accept" } : {}
1988
1990
  }
1989
1991
  }
1990
1992
  )
@@ -2014,6 +2016,7 @@ function createFarmDocsHandler(docs, options) {
2014
2016
  headers: {
2015
2017
  "Content-Type": "text/html; charset=utf-8",
2016
2018
  "Cache-Control": "public, s-maxage=60, stale-while-revalidate=300",
2019
+ Vary: "Accept",
2017
2020
  ...fontPreloadHeader ? { Link: fontPreloadHeader } : {}
2018
2021
  }
2019
2022
  }
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createRouteDataCacheKey
3
- } from "./chunk-IGO2HEV7.mjs";
3
+ } from "./chunk-F6SJAKFJ.mjs";
4
4
  import {
5
5
  subscribeFarmCacheInvalidation
6
6
  } from "./chunk-4SIYUGRY.mjs";
@@ -0,0 +1,127 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+ var _chunkU4KT7QP3cjs = require('./chunk-U4KT7QP3.cjs');
4
+
5
+
6
+ var _chunkS3JO3N4Hcjs = require('./chunk-S3JO3N4H.cjs');
7
+
8
+ // src/server/request.ts
9
+ var _async_hooks = require('async_hooks');
10
+ var _stream = require('stream');
11
+ var REQUEST_STORAGE_KEY = /* @__PURE__ */ Symbol.for("@farm.js/core/request-storage");
12
+ function getRequestStore() {
13
+ const runtime = globalThis;
14
+ const existing = runtime[REQUEST_STORAGE_KEY];
15
+ if (existing instanceof _async_hooks.AsyncLocalStorage) {
16
+ return existing;
17
+ }
18
+ const storage = new (0, _async_hooks.AsyncLocalStorage)();
19
+ runtime[REQUEST_STORAGE_KEY] = storage;
20
+ return storage;
21
+ }
22
+ _chunkS3JO3N4Hcjs.__name.call(void 0, getRequestStore, "getRequestStore");
23
+ var requestStore = getRequestStore();
24
+ _chunkU4KT7QP3cjs._setCurrentRequestResolver.call(void 0, () => requestStore.getStore());
25
+ function resolveFarmRequestURL(req, options = {}) {
26
+ if (options.origin) {
27
+ return new URL(req.url || "/", options.origin);
28
+ }
29
+ const forwardedHost = options.trustProxy ? firstForwardedHeaderValue(req.headers["x-forwarded-host"]) : void 0;
30
+ const fallbackHost = firstForwardedHeaderValue(req.headers.host) || "localhost";
31
+ const forwardedProto = options.trustProxy ? firstForwardedHeaderValue(req.headers["x-forwarded-proto"]) : void 0;
32
+ const normalizedProto = _optionalChain([forwardedProto, 'optionalAccess', _ => _.toLowerCase, 'call', _2 => _2()]);
33
+ const proto = normalizedProto === "https" || normalizedProto === "http" ? normalizedProto : isEncryptedFarmRequest(req) ? "https" : "http";
34
+ return new URL(req.url || "/", resolveRequestOrigin(proto, forwardedHost, fallbackHost));
35
+ }
36
+ _chunkS3JO3N4Hcjs.__name.call(void 0, resolveFarmRequestURL, "resolveFarmRequestURL");
37
+ function resolveFarmWebRequestOrigin(request, options = {}) {
38
+ const url = new URL(request.url);
39
+ if (!options.trustProxy) return url.origin;
40
+ const forwardedHost = firstForwardedHeaderValue(
41
+ _nullishCoalesce(request.headers.get("x-forwarded-host"), () => ( void 0))
42
+ );
43
+ const forwardedProto = _optionalChain([firstForwardedHeaderValue, 'call', _3 => _3(
44
+ _nullishCoalesce(request.headers.get("x-forwarded-proto"), () => ( void 0))
45
+ ), 'optionalAccess', _4 => _4.toLowerCase, 'call', _5 => _5()]);
46
+ const proto = forwardedProto === "https" || forwardedProto === "http" ? forwardedProto : url.protocol === "https:" ? "https" : "http";
47
+ return resolveRequestOrigin(proto, forwardedHost, url.host);
48
+ }
49
+ _chunkS3JO3N4Hcjs.__name.call(void 0, resolveFarmWebRequestOrigin, "resolveFarmWebRequestOrigin");
50
+ function createWebRequestFromFarmRequest(req, options = {}) {
51
+ const fullUrl = resolveFarmRequestURL(req, options).toString();
52
+ const headers = new Headers();
53
+ for (const [key, value] of Object.entries(req.headers)) {
54
+ if (value == null) {
55
+ continue;
56
+ }
57
+ if (Array.isArray(value)) {
58
+ for (const item of value) {
59
+ headers.append(key, item);
60
+ }
61
+ continue;
62
+ }
63
+ headers.set(key, value);
64
+ }
65
+ const method = (req.method || "GET").toUpperCase();
66
+ const init = {
67
+ method: req.method,
68
+ headers
69
+ };
70
+ if (method !== "GET" && method !== "HEAD") {
71
+ init.body = _stream.Readable.toWeb(req);
72
+ init.duplex = "half";
73
+ }
74
+ return new Request(fullUrl, init);
75
+ }
76
+ _chunkS3JO3N4Hcjs.__name.call(void 0, createWebRequestFromFarmRequest, "createWebRequestFromFarmRequest");
77
+ function isEncryptedFarmRequest(req) {
78
+ return Boolean(_optionalChain([req, 'access', _6 => _6.socket, 'optionalAccess', _7 => _7.encrypted]));
79
+ }
80
+ _chunkS3JO3N4Hcjs.__name.call(void 0, isEncryptedFarmRequest, "isEncryptedFarmRequest");
81
+ function firstForwardedHeaderValue(value) {
82
+ const first = Array.isArray(value) ? value[0] : value;
83
+ const token = _optionalChain([first, 'optionalAccess', _8 => _8.split, 'call', _9 => _9(",", 1), 'access', _10 => _10[0], 'optionalAccess', _11 => _11.trim, 'call', _12 => _12()]);
84
+ return token || void 0;
85
+ }
86
+ _chunkS3JO3N4Hcjs.__name.call(void 0, firstForwardedHeaderValue, "firstForwardedHeaderValue");
87
+ function resolveRequestOrigin(proto, host, fallback) {
88
+ for (const candidate of [host, fallback, "localhost"]) {
89
+ if (!candidate) continue;
90
+ if (/[\s/?#@\\]/u.test(candidate)) continue;
91
+ try {
92
+ const url = new URL(`${proto}://${candidate}`);
93
+ if (url.username || url.password || url.pathname !== "/" || url.search || url.hash) continue;
94
+ return url.origin;
95
+ } catch (e) {
96
+ }
97
+ }
98
+ return `${proto}://localhost`;
99
+ }
100
+ _chunkS3JO3N4Hcjs.__name.call(void 0, resolveRequestOrigin, "resolveRequestOrigin");
101
+ async function _runWithCurrentRequest(request, fn) {
102
+ return requestStore.run(request, fn);
103
+ }
104
+ _chunkS3JO3N4Hcjs.__name.call(void 0, _runWithCurrentRequest, "_runWithCurrentRequest");
105
+ function getCurrentRequest() {
106
+ const request = requestStore.getStore();
107
+ if (!request) {
108
+ throw new Error(
109
+ "No current request is available. getCurrentRequest() can only be used during server rendering."
110
+ );
111
+ }
112
+ return request;
113
+ }
114
+ _chunkS3JO3N4Hcjs.__name.call(void 0, getCurrentRequest, "getCurrentRequest");
115
+ function getCurrentRequestOrNull() {
116
+ return _nullishCoalesce(requestStore.getStore(), () => ( null));
117
+ }
118
+ _chunkS3JO3N4Hcjs.__name.call(void 0, getCurrentRequestOrNull, "getCurrentRequestOrNull");
119
+
120
+
121
+
122
+
123
+
124
+
125
+
126
+
127
+ exports.resolveFarmRequestURL = resolveFarmRequestURL; exports.resolveFarmWebRequestOrigin = resolveFarmWebRequestOrigin; exports.createWebRequestFromFarmRequest = createWebRequestFromFarmRequest; exports._runWithCurrentRequest = _runWithCurrentRequest; exports.getCurrentRequest = getCurrentRequest; exports.getCurrentRequestOrNull = getCurrentRequestOrNull;
@@ -0,0 +1,238 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+ var _chunkSU7MH53Pcjs = require('./chunk-SU7MH53P.cjs');
4
+
5
+
6
+
7
+
8
+
9
+
10
+ var _chunkWJ3HK3LJcjs = require('./chunk-WJ3HK3LJ.cjs');
11
+
12
+
13
+ var _chunk5OVTOKGHcjs = require('./chunk-5OVTOKGH.cjs');
14
+
15
+
16
+ var _chunkU4KT7QP3cjs = require('./chunk-U4KT7QP3.cjs');
17
+
18
+
19
+ var _chunkBIDYX3SLcjs = require('./chunk-BIDYX3SL.cjs');
20
+
21
+
22
+
23
+
24
+
25
+ var _chunkI57LW5VZcjs = require('./chunk-I57LW5VZ.cjs');
26
+
27
+
28
+ var _chunkS3JO3N4Hcjs = require('./chunk-S3JO3N4H.cjs');
29
+
30
+ // src/client/router.ts
31
+ var _react = require('react');
32
+ function shouldBlockUnload(options) {
33
+ const path = window.location.pathname + window.location.search;
34
+ const context = {
35
+ from: path,
36
+ to: path,
37
+ action: "replace"
38
+ };
39
+ const when = typeof options.when === "function" ? options.when(context) : options.when;
40
+ if (!when) return false;
41
+ if (!options.shouldBlock) return true;
42
+ try {
43
+ const result = options.shouldBlock(context);
44
+ if (typeof result === "boolean") return result;
45
+ void result.catch(() => void 0);
46
+ return true;
47
+ } catch (e) {
48
+ return true;
49
+ }
50
+ }
51
+ _chunkS3JO3N4Hcjs.__name.call(void 0, shouldBlockUnload, "shouldBlockUnload");
52
+ function navigateViaRouter(href, basePath, replace) {
53
+ if (typeof window === "undefined") return;
54
+ const url = _chunkI57LW5VZcjs.applyFarmBasePath.call(void 0, href, basePath);
55
+ const spaRouter = _chunkWJ3HK3LJcjs.getInstalledFarmSPARouter.call(void 0, );
56
+ if (spaRouter) {
57
+ void spaRouter.navigate(url, { replace });
58
+ return;
59
+ }
60
+ if (replace) {
61
+ window.history.replaceState(null, "", url);
62
+ } else {
63
+ window.history.pushState(null, "", url);
64
+ }
65
+ _chunkWJ3HK3LJcjs.notifyHistoryChange.call(void 0, "url-search");
66
+ }
67
+ _chunkS3JO3N4Hcjs.__name.call(void 0, navigateViaRouter, "navigateViaRouter");
68
+ function useRouter(options = {}) {
69
+ const basePath = options.basePath === void 0 ? _chunkI57LW5VZcjs.getFarmBasePath.call(void 0, ) : _chunkI57LW5VZcjs.normalizeFarmBasePath.call(void 0, options.basePath);
70
+ const routes = options.routes;
71
+ const routeKey = _optionalChain([routes, 'optionalAccess', _ => _.map, 'call', _2 => _2((route) => typeof route === "string" ? route : route.path), 'access', _3 => _3.join, 'call', _4 => _4("\n")]) || "";
72
+ const routeMatcher = _react.useMemo.call(void 0,
73
+ () => routeKey ? _chunkSU7MH53Pcjs.createFarmRouter.call(void 0, routeKey.split("\n")) : null,
74
+ [routeKey]
75
+ );
76
+ const [state, setState] = _react.useState.call(void 0, () => {
77
+ return readRouterState(basePath, routeMatcher);
78
+ });
79
+ _react.useEffect.call(void 0, () => {
80
+ if (typeof window === "undefined") return;
81
+ const handlePopState = /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, () => {
82
+ setState(readRouterState(basePath, routeMatcher));
83
+ }, "handlePopState");
84
+ handlePopState();
85
+ const unsubscribe = _chunkWJ3HK3LJcjs.subscribeHistoryChange.call(void 0, handlePopState);
86
+ return unsubscribe;
87
+ }, [basePath, routeMatcher]);
88
+ const push = /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, (href) => {
89
+ navigateViaRouter(href, basePath, false);
90
+ }, "push");
91
+ const replace = /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, (href) => {
92
+ navigateViaRouter(href, basePath, true);
93
+ }, "replace");
94
+ const pushState = /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, (pageState, href) => {
95
+ if (typeof window === "undefined") return;
96
+ _chunkWJ3HK3LJcjs.getRouter.call(void 0, ).pushState(pageState, resolveClientHref(href, basePath));
97
+ }, "pushState");
98
+ const replaceState = /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, (pageState, href) => {
99
+ if (typeof window === "undefined") return;
100
+ _chunkWJ3HK3LJcjs.getRouter.call(void 0, ).replaceState(pageState, resolveClientHref(href, basePath));
101
+ }, "replaceState");
102
+ const back = /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, () => {
103
+ if (typeof window !== "undefined") {
104
+ window.history.back();
105
+ }
106
+ }, "back");
107
+ const forward = /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, () => {
108
+ if (typeof window !== "undefined") {
109
+ window.history.forward();
110
+ }
111
+ }, "forward");
112
+ return {
113
+ ...state,
114
+ push,
115
+ replace,
116
+ pushState,
117
+ replaceState,
118
+ back,
119
+ forward
120
+ };
121
+ }
122
+ _chunkS3JO3N4Hcjs.__name.call(void 0, useRouter, "useRouter");
123
+ function usePageState() {
124
+ const [state, setState] = _react.useState.call(void 0, () => _chunkWJ3HK3LJcjs.readPageState.call(void 0, ));
125
+ _react.useEffect.call(void 0, () => {
126
+ if (typeof window === "undefined") return;
127
+ const handlePopState = /* @__PURE__ */ _chunkS3JO3N4Hcjs.__name.call(void 0, () => {
128
+ setState(_chunkWJ3HK3LJcjs.readPageState.call(void 0, ));
129
+ }, "handlePopState");
130
+ handlePopState();
131
+ return _chunkWJ3HK3LJcjs.subscribeHistoryChange.call(void 0, handlePopState);
132
+ }, []);
133
+ return state;
134
+ }
135
+ _chunkS3JO3N4Hcjs.__name.call(void 0, usePageState, "usePageState");
136
+ function useNavigation() {
137
+ const [state, setState] = _react.useState.call(void 0,
138
+ () => _chunkWJ3HK3LJcjs.getRouter.call(void 0, ).getNavigationState()
139
+ );
140
+ _react.useEffect.call(void 0, () => {
141
+ if (typeof window === "undefined") return;
142
+ return _chunkWJ3HK3LJcjs.getRouter.call(void 0, ).subscribeNavigation(setState);
143
+ }, []);
144
+ return state;
145
+ }
146
+ _chunkS3JO3N4Hcjs.__name.call(void 0, useNavigation, "useNavigation");
147
+ function useBlocker(options) {
148
+ const optionsRef = _react.useRef.call(void 0, options);
149
+ optionsRef.current = options;
150
+ const active = Boolean(options.when);
151
+ _react.useEffect.call(void 0, () => {
152
+ if (typeof window === "undefined" || !active) {
153
+ return;
154
+ }
155
+ return _chunkWJ3HK3LJcjs.getRouter.call(void 0, ).addBlocker(
156
+ async (context) => {
157
+ const current = optionsRef.current;
158
+ const when = typeof current.when === "function" ? current.when(context) : current.when;
159
+ if (!when) return false;
160
+ if (current.shouldBlock && !await current.shouldBlock(context)) {
161
+ return false;
162
+ }
163
+ if (current.message && typeof window.confirm === "function") {
164
+ return !window.confirm(current.message);
165
+ }
166
+ return true;
167
+ },
168
+ () => shouldBlockUnload(optionsRef.current)
169
+ );
170
+ }, [active]);
171
+ return { active };
172
+ }
173
+ _chunkS3JO3N4Hcjs.__name.call(void 0, useBlocker, "useBlocker");
174
+ function useScrollRestoration(key) {
175
+ const ref = _react.useRef.call(void 0, null);
176
+ _react.useEffect.call(void 0, () => {
177
+ const element = ref.current;
178
+ if (!element) return;
179
+ return _chunkWJ3HK3LJcjs.getRouter.call(void 0, ).registerScrollElement(key, element);
180
+ }, [key]);
181
+ return ref;
182
+ }
183
+ _chunkS3JO3N4Hcjs.__name.call(void 0, useScrollRestoration, "useScrollRestoration");
184
+ function readRouterState(basePath, routeMatcher) {
185
+ const url = readCurrentUrl();
186
+ if (!url) {
187
+ return {
188
+ pathname: "/",
189
+ searchParams: new URLSearchParams(),
190
+ params: {},
191
+ pageState: null
192
+ };
193
+ }
194
+ const pathname = normalizeClientPathname(url.pathname, basePath);
195
+ const i18n = _chunk5OVTOKGHcjs.getFarmI18nClientState.call(void 0, );
196
+ const routePathname = i18n ? _chunkBIDYX3SLcjs.stripFarmLocaleFromPathname.call(void 0, pathname, i18n) : pathname;
197
+ return {
198
+ pathname,
199
+ searchParams: url.searchParams,
200
+ params: _optionalChain([routeMatcher, 'optionalAccess', _5 => _5.match, 'call', _6 => _6(routePathname), 'optionalAccess', _7 => _7.params]) || {},
201
+ pageState: typeof window === "undefined" ? null : _chunkWJ3HK3LJcjs.readPageState.call(void 0, )
202
+ };
203
+ }
204
+ _chunkS3JO3N4Hcjs.__name.call(void 0, readRouterState, "readRouterState");
205
+ function readCurrentUrl() {
206
+ if (typeof window !== "undefined") {
207
+ try {
208
+ return new URL(window.location.href);
209
+ } catch (e2) {
210
+ return void 0;
211
+ }
212
+ }
213
+ const request = _chunkU4KT7QP3cjs._resolveCurrentRequest.call(void 0, );
214
+ if (!request) return void 0;
215
+ try {
216
+ return new URL(request.url);
217
+ } catch (e3) {
218
+ return void 0;
219
+ }
220
+ }
221
+ _chunkS3JO3N4Hcjs.__name.call(void 0, readCurrentUrl, "readCurrentUrl");
222
+ function normalizeClientPathname(pathname, basePath) {
223
+ return _chunkI57LW5VZcjs.stripFarmBasePath.call(void 0, pathname, basePath);
224
+ }
225
+ _chunkS3JO3N4Hcjs.__name.call(void 0, normalizeClientPathname, "normalizeClientPathname");
226
+ function resolveClientHref(href, basePath) {
227
+ if (!href) return void 0;
228
+ return _chunkI57LW5VZcjs.applyFarmBasePath.call(void 0, href, basePath);
229
+ }
230
+ _chunkS3JO3N4Hcjs.__name.call(void 0, resolveClientHref, "resolveClientHref");
231
+
232
+
233
+
234
+
235
+
236
+
237
+
238
+ exports.useRouter = useRouter; exports.usePageState = usePageState; exports.useNavigation = useNavigation; exports.useBlocker = useBlocker; exports.useScrollRestoration = useScrollRestoration;