@farm.js/core 0.1.60 → 0.1.61

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 (1276) hide show
  1. package/dist/after.cjs +3 -3
  2. package/dist/after.mjs +2 -2
  3. package/dist/agent-mcp-handler-LPJ2CADR.mjs +19 -0
  4. package/dist/agent-mcp-handler-SJAHFSPI.cjs +19 -0
  5. package/dist/agent-runtime.cjs +59 -36
  6. package/dist/agent-runtime.mjs +58 -35
  7. package/dist/api/client.cjs +15 -16
  8. package/dist/api/client.mjs +13 -14
  9. package/dist/api/route-manager.cjs +39 -41
  10. package/dist/api/route-manager.mjs +38 -40
  11. package/dist/api/runtime.cjs +22 -24
  12. package/dist/api/runtime.mjs +22 -24
  13. package/dist/api.cjs +50 -52
  14. package/dist/api.mjs +49 -51
  15. package/dist/app-markdown.cjs +15 -15
  16. package/dist/app-markdown.mjs +14 -14
  17. package/dist/cache.cjs +7 -10
  18. package/dist/cache.mjs +6 -9
  19. package/dist/chunk-23MGIV4X.mjs +579 -0
  20. package/dist/chunk-27ZWSI3W.cjs +64 -0
  21. package/dist/chunk-2A3EQHXX.mjs +173 -0
  22. package/dist/chunk-2CQ74SP6.cjs +13 -0
  23. package/dist/chunk-2ELDTQRN.mjs +85 -0
  24. package/dist/chunk-2J7W2WND.mjs +149 -0
  25. package/dist/chunk-2NNMOPDN.mjs +237 -0
  26. package/dist/chunk-2PQNJXFM.mjs +20 -0
  27. package/dist/chunk-2SJ4RQ6P.cjs +57 -0
  28. package/dist/chunk-2UC36WAC.mjs +22 -0
  29. package/dist/chunk-2VQKKQ6D.mjs +51 -0
  30. package/dist/chunk-2Y3JRYVG.mjs +71 -0
  31. package/dist/chunk-35GKZR22.mjs +157 -0
  32. package/dist/chunk-3BU22U3M.cjs +237 -0
  33. package/dist/chunk-3KZS4SUS.mjs +414 -0
  34. package/dist/chunk-3SDFA7UF.cjs +701 -0
  35. package/dist/chunk-3TLO7SBY.cjs +240 -0
  36. package/dist/chunk-3UEVPCGW.mjs +435 -0
  37. package/dist/chunk-3WNDJT2E.cjs +109 -0
  38. package/dist/chunk-44SYJEG3.mjs +13 -0
  39. package/dist/chunk-45ZSJLDT.mjs +183 -0
  40. package/dist/chunk-4E5AEDKY.mjs +696 -0
  41. package/dist/chunk-4E5WBPEG.mjs +1157 -0
  42. package/dist/chunk-4GLOOWKE.mjs +1344 -0
  43. package/dist/chunk-4JCQDWPX.mjs +24 -0
  44. package/dist/chunk-4NU4GGTC.cjs +484 -0
  45. package/dist/chunk-4OOBRCJX.mjs +300 -0
  46. package/dist/chunk-4PPEPOZZ.cjs +21 -0
  47. package/dist/chunk-4RB44K6Z.mjs +94 -0
  48. package/dist/chunk-4SIYUGRY.mjs +93 -0
  49. package/dist/chunk-4WQ6PGSJ.cjs +367 -0
  50. package/dist/chunk-4WVJLURN.mjs +417 -0
  51. package/dist/chunk-4ZFL5GFN.cjs +520 -0
  52. package/dist/chunk-54UPOYFS.mjs +35 -0
  53. package/dist/chunk-55YI3RRB.mjs +192 -0
  54. package/dist/chunk-5I3OT426.cjs +11021 -0
  55. package/dist/chunk-5QIKR7RR.cjs +224 -0
  56. package/dist/chunk-5SJWVY6R.mjs +26 -0
  57. package/dist/chunk-5WI2S4CO.mjs +20 -0
  58. package/dist/chunk-63H6BKXG.cjs +389 -0
  59. package/dist/chunk-655RLQQL.mjs +43 -0
  60. package/dist/chunk-6EODJYCX.cjs +183 -0
  61. package/dist/chunk-6EXBPJ24.cjs +434 -0
  62. package/dist/chunk-6MVFL3R5.cjs +506 -0
  63. package/dist/chunk-6NT6S2VQ.mjs +180 -0
  64. package/dist/chunk-6QQDAAAZ.cjs +38 -0
  65. package/dist/chunk-6SJ2KJTA.mjs +314 -0
  66. package/dist/chunk-6SM5XXFS.cjs +70 -0
  67. package/dist/chunk-6V4TDWEC.cjs +455 -0
  68. package/dist/chunk-72ADZ6GQ.cjs +19 -0
  69. package/dist/chunk-72AK62H5.mjs +55 -0
  70. package/dist/chunk-75RZHGLS.cjs +135 -0
  71. package/dist/chunk-77GNHH2Z.cjs +236 -0
  72. package/dist/chunk-7DBXEASO.cjs +40 -0
  73. package/dist/chunk-7LTCDQRS.mjs +166 -0
  74. package/dist/chunk-7W3CPVXS.cjs +24 -0
  75. package/dist/chunk-A6WIQH5Z.cjs +31 -0
  76. package/dist/chunk-ADEA7PN3.cjs +1101 -0
  77. package/dist/chunk-AELACLOB.mjs +47 -0
  78. package/dist/chunk-AHGECQEW.mjs +49 -0
  79. package/dist/chunk-AI7QMY7O.cjs +41 -0
  80. package/dist/chunk-AJQTP4OO.mjs +212 -0
  81. package/dist/chunk-AMDMVWMI.cjs +39 -0
  82. package/dist/chunk-ARJWXNQL.cjs +256 -0
  83. package/dist/chunk-BCMSYSN2.mjs +183 -0
  84. package/dist/chunk-BIDYX3SL.cjs +91 -0
  85. package/dist/chunk-BJIYRUGQ.mjs +35 -0
  86. package/dist/chunk-BJPBQNIE.cjs +2355 -0
  87. package/dist/chunk-BO36SELV.cjs +395 -0
  88. package/dist/chunk-BOYNDCZL.mjs +54 -0
  89. package/dist/chunk-BPMATOP2.cjs +687 -0
  90. package/dist/chunk-BPOF5U4N.mjs +566 -0
  91. package/dist/chunk-BRYHOB4X.mjs +18 -0
  92. package/dist/chunk-BSC7JTOK.mjs +70 -0
  93. package/dist/chunk-BTHHUD7Q.mjs +51 -0
  94. package/dist/chunk-BUGNQIHC.mjs +449 -0
  95. package/dist/chunk-C4NCTZLM.mjs +22 -0
  96. package/dist/chunk-C4SPBWFM.cjs +26 -0
  97. package/dist/chunk-C5GUTBZK.cjs +173 -0
  98. package/dist/chunk-CBBLJMR5.mjs +74 -0
  99. package/dist/chunk-CBJJH36A.cjs +2187 -0
  100. package/dist/chunk-CGBDNNSM.cjs +664 -0
  101. package/dist/chunk-CI6E3UOH.cjs +314 -0
  102. package/dist/chunk-CMGMGHUZ.cjs +27 -0
  103. package/dist/chunk-CNOQY6Z7.mjs +156 -0
  104. package/dist/chunk-CQ6OSQ3K.mjs +36 -0
  105. package/dist/chunk-CU625VAY.mjs +13 -0
  106. package/dist/chunk-CVOSWIQA.mjs +15300 -0
  107. package/dist/chunk-CXEN47J3.mjs +550 -0
  108. package/dist/chunk-CXP5U3RW.cjs +54 -0
  109. package/dist/chunk-D227TIEN.cjs +1114 -0
  110. package/dist/chunk-D2BB47NB.cjs +157 -0
  111. package/dist/chunk-D2ULAULS.cjs +166 -0
  112. package/dist/chunk-D7JTOLFK.cjs +285 -0
  113. package/dist/chunk-DAATZTKJ.mjs +220 -0
  114. package/dist/chunk-DAO7JGTS.mjs +73 -0
  115. package/dist/chunk-DQQOKWYA.cjs +42 -0
  116. package/dist/chunk-DTSROJ5J.mjs +367 -0
  117. package/dist/chunk-DVM4FKZL.cjs +169 -0
  118. package/dist/chunk-DZ5ZVB2K.cjs +9 -0
  119. package/dist/chunk-E2ROOWQC.cjs +2225 -0
  120. package/dist/chunk-E3UK5IIB.cjs +593 -0
  121. package/dist/chunk-E5GNDG5F.mjs +701 -0
  122. package/dist/chunk-EA5K5BKU.mjs +455 -0
  123. package/dist/chunk-ECKF2BAM.cjs +403 -0
  124. package/dist/chunk-EK4QAEFZ.cjs +550 -0
  125. package/dist/chunk-EMLAPBEM.mjs +256 -0
  126. package/dist/chunk-ENLZ4R3Y.mjs +55 -0
  127. package/dist/chunk-EUV4YR3V.cjs +1362 -0
  128. package/dist/chunk-EWET4D2Y.mjs +395 -0
  129. package/dist/chunk-EZDQRNQ7.mjs +1496 -0
  130. package/dist/chunk-F2SE2VDO.mjs +65 -0
  131. package/dist/chunk-F3LTXB63.mjs +40 -0
  132. package/dist/chunk-F3VB7ONA.mjs +338 -0
  133. package/dist/chunk-F5QO4FNE.mjs +664 -0
  134. package/dist/chunk-FA2W42OV.mjs +25 -0
  135. package/dist/chunk-FDR64H6B.mjs +140 -0
  136. package/dist/chunk-FFFW3OQ7.cjs +65 -0
  137. package/dist/chunk-FJ3M4CUX.cjs +46 -0
  138. package/dist/chunk-FK6GO24V.cjs +54 -0
  139. package/dist/chunk-FNO7A7CM.cjs +1496 -0
  140. package/dist/chunk-FO427P6I.cjs +392 -0
  141. package/dist/chunk-FP2INE7H.mjs +113 -0
  142. package/dist/chunk-FUZEBRP3.mjs +593 -0
  143. package/dist/chunk-FZ6YYU2W.mjs +65 -0
  144. package/dist/chunk-G2KY33I6.mjs +202 -0
  145. package/dist/chunk-G4MWPDSE.mjs +19 -0
  146. package/dist/chunk-G643DQCH.cjs +13 -0
  147. package/dist/chunk-G7HXGLEC.cjs +175 -0
  148. package/dist/chunk-GC3SUL6M.mjs +109 -0
  149. package/dist/chunk-GCXWJJKH.mjs +169 -0
  150. package/dist/chunk-GHFS7RUB.mjs +152 -0
  151. package/dist/chunk-GQ3Z3IZI.cjs +241 -0
  152. package/dist/chunk-H4AMB6ZE.mjs +421 -0
  153. package/dist/chunk-H77NVNJ2.mjs +57 -0
  154. package/dist/chunk-HALDNTIV.mjs +2225 -0
  155. package/dist/chunk-HITLGIAO.cjs +55 -0
  156. package/dist/chunk-HLJ6MBUZ.cjs +183 -0
  157. package/dist/chunk-HOXTWRGB.mjs +484 -0
  158. package/dist/chunk-HREOKQWT.cjs +45 -0
  159. package/dist/chunk-I2BHUNBU.mjs +14 -0
  160. package/dist/chunk-I57LW5VZ.cjs +94 -0
  161. package/dist/chunk-IE7XCHH3.cjs +85 -0
  162. package/dist/chunk-IHNIDL6H.cjs +772 -0
  163. package/dist/chunk-IK6LVLKC.cjs +51 -0
  164. package/dist/chunk-IOEH4VWN.mjs +202 -0
  165. package/dist/chunk-IWZKTWHZ.cjs +435 -0
  166. package/dist/chunk-IZY3V5XW.mjs +23 -0
  167. package/dist/chunk-J63ZH5OQ.cjs +62 -0
  168. package/dist/chunk-J7FSKED3.cjs +93 -0
  169. package/dist/chunk-JBSVKMC5.mjs +28 -0
  170. package/dist/chunk-JDNHKPTD.cjs +22 -0
  171. package/dist/chunk-JG6DJF5A.mjs +238 -0
  172. package/dist/chunk-JGLC4TO3.cjs +192 -0
  173. package/dist/chunk-JM5XPKWH.mjs +41 -0
  174. package/dist/chunk-JNUWCDTF.cjs +1344 -0
  175. package/dist/chunk-JNZ4TDWM.mjs +445 -0
  176. package/dist/chunk-JPLUGGRV.mjs +230 -0
  177. package/dist/chunk-JSROZYYO.cjs +164 -0
  178. package/dist/chunk-KCMTCM6I.cjs +53 -0
  179. package/dist/chunk-KGB5UXJJ.mjs +27 -0
  180. package/dist/chunk-KGZIORNL.cjs +43 -0
  181. package/dist/chunk-KI3MESHB.mjs +224 -0
  182. package/dist/chunk-KIIMAWOJ.cjs +505 -0
  183. package/dist/chunk-KMTGADN3.mjs +95 -0
  184. package/dist/chunk-KN7K4VQN.mjs +236 -0
  185. package/dist/chunk-KNBBQHO2.cjs +51 -0
  186. package/dist/chunk-KR6CKSXT.cjs +15 -0
  187. package/dist/chunk-KXWRO25S.cjs +85 -0
  188. package/dist/chunk-L3KT7IXV.mjs +91 -0
  189. package/dist/chunk-LCCBO7PJ.cjs +46 -0
  190. package/dist/chunk-LIUGYUX3.cjs +22 -0
  191. package/dist/chunk-LPEX4YW6.mjs +13 -0
  192. package/dist/chunk-LSKZMJMP.cjs +65 -0
  193. package/dist/chunk-LSZAVSGY.mjs +1101 -0
  194. package/dist/chunk-LTNGXMQ6.cjs +55 -0
  195. package/dist/chunk-LYLEZIG3.cjs +73 -0
  196. package/dist/chunk-LYV44OIR.mjs +256 -0
  197. package/dist/chunk-M2L4MYDQ.cjs +14 -0
  198. package/dist/chunk-M7MKQXAF.cjs +87 -0
  199. package/dist/chunk-MKYBIIAQ.mjs +2187 -0
  200. package/dist/chunk-MQ3H6LT5.cjs +202 -0
  201. package/dist/chunk-MRMI32SN.cjs +1157 -0
  202. package/dist/chunk-MSSFIQGM.mjs +1002 -0
  203. package/dist/chunk-MT763TDW.cjs +43 -0
  204. package/dist/chunk-MVL2RAJW.mjs +62 -0
  205. package/dist/chunk-MWSK6C4J.cjs +18 -0
  206. package/dist/chunk-MWWVKDW3.cjs +169 -0
  207. package/dist/chunk-N2NAS2AM.cjs +725 -0
  208. package/dist/chunk-N46M65CI.mjs +54 -0
  209. package/dist/chunk-N4UOK6ZI.cjs +256 -0
  210. package/dist/chunk-NI2TCCTG.mjs +11020 -0
  211. package/dist/chunk-NO3WWW3N.cjs +192 -0
  212. package/dist/chunk-NPC7VWJE.mjs +277 -0
  213. package/dist/chunk-NRDBW4MP.mjs +45 -0
  214. package/dist/chunk-NRSN7G7E.mjs +42 -0
  215. package/dist/chunk-NYJMY3JA.cjs +156 -0
  216. package/dist/chunk-NZKJGRB3.cjs +230 -0
  217. package/dist/chunk-O6BCQV2T.mjs +46 -0
  218. package/dist/chunk-O6I6VWKK.mjs +493 -0
  219. package/dist/chunk-O6WAEAX3.mjs +2028 -0
  220. package/dist/chunk-O7BH5O46.mjs +175 -0
  221. package/dist/chunk-OFZUJMCU.mjs +601 -0
  222. package/dist/chunk-OHLSEQ57.mjs +910 -0
  223. package/dist/chunk-OHY2ZWUG.cjs +25 -0
  224. package/dist/chunk-OI6CMLWX.cjs +47 -0
  225. package/dist/chunk-ONUEYC6N.mjs +27 -0
  226. package/dist/chunk-OO7GXVSR.mjs +9 -0
  227. package/dist/chunk-OT6ZEW74.mjs +139 -0
  228. package/dist/chunk-OTC5BDGO.mjs +687 -0
  229. package/dist/chunk-OX6O6WVA.cjs +74 -0
  230. package/dist/chunk-OYEUREB6.cjs +35 -0
  231. package/dist/chunk-OZVEHHMA.cjs +194 -0
  232. package/dist/chunk-P5TJO5IS.mjs +240 -0
  233. package/dist/chunk-PCOTGFSM.cjs +139 -0
  234. package/dist/chunk-PNGWZFUQ.mjs +39 -0
  235. package/dist/chunk-PSV6XKPO.cjs +220 -0
  236. package/dist/chunk-PTZ2TVNE.cjs +178 -0
  237. package/dist/chunk-PZNL3WEG.mjs +772 -0
  238. package/dist/chunk-PZYCPSCC.cjs +35 -0
  239. package/dist/chunk-Q2KB32T4.mjs +690 -0
  240. package/dist/chunk-Q5B3KJBP.cjs +152 -0
  241. package/dist/chunk-QBK2AA4U.cjs +445 -0
  242. package/dist/chunk-QCFBDFRS.mjs +169 -0
  243. package/dist/chunk-QCVE2OCI.cjs +169 -0
  244. package/dist/chunk-QE6VAKLT.mjs +85 -0
  245. package/dist/chunk-QNPEUFHQ.cjs +27 -0
  246. package/dist/chunk-QORUJDIV.mjs +46 -0
  247. package/dist/chunk-QV4VE2OW.mjs +166 -0
  248. package/dist/chunk-QVKYGNVM.mjs +27 -0
  249. package/dist/chunk-QVYLBY73.mjs +93 -0
  250. package/dist/chunk-R3DS7A2T.mjs +21 -0
  251. package/dist/chunk-R5A5KNVX.cjs +20 -0
  252. package/dist/chunk-R5JIFR6B.cjs +42 -0
  253. package/dist/chunk-RHAZ22ZN.mjs +87 -0
  254. package/dist/chunk-RKPDESVW.cjs +15301 -0
  255. package/dist/chunk-RSOJ7DRT.mjs +506 -0
  256. package/dist/chunk-S3A45T7F.cjs +166 -0
  257. package/dist/chunk-S3FNNQHR.mjs +31 -0
  258. package/dist/chunk-S3JO3N4H.cjs +17 -0
  259. package/dist/chunk-S67OYZU7.mjs +711 -0
  260. package/dist/chunk-S6VYG6XU.cjs +493 -0
  261. package/dist/chunk-SAXPH6G5.mjs +169 -0
  262. package/dist/chunk-SC2WYWPF.mjs +241 -0
  263. package/dist/chunk-SDOTRX3V.cjs +690 -0
  264. package/dist/chunk-SEJ5N6SL.mjs +38 -0
  265. package/dist/chunk-SFGWNC43.mjs +97 -0
  266. package/dist/chunk-SHB3GYXI.mjs +285 -0
  267. package/dist/chunk-SHLXACIO.cjs +95 -0
  268. package/dist/chunk-SJNMVDDF.cjs +86 -0
  269. package/dist/chunk-SK35NQKK.cjs +27 -0
  270. package/dist/chunk-SKNL7VA2.mjs +42 -0
  271. package/dist/chunk-SLQCDJSO.mjs +18 -0
  272. package/dist/chunk-SOR334EB.cjs +149 -0
  273. package/dist/chunk-SU7MH53P.cjs +180 -0
  274. package/dist/chunk-SVRTJOUF.cjs +113 -0
  275. package/dist/chunk-SYQ3MOWW.cjs +73 -0
  276. package/dist/chunk-T4OGRVNS.mjs +392 -0
  277. package/dist/chunk-T5OJPTVN.cjs +417 -0
  278. package/dist/chunk-TE2G5ION.cjs +2028 -0
  279. package/dist/chunk-TFQG7TBC.mjs +43 -0
  280. package/dist/chunk-TIWHTW3Q.cjs +24 -0
  281. package/dist/chunk-TKJZFIML.cjs +20 -0
  282. package/dist/chunk-TKSCR644.cjs +414 -0
  283. package/dist/chunk-TVGP4BBZ.mjs +45 -0
  284. package/dist/chunk-U4KT7QP3.cjs +23 -0
  285. package/dist/chunk-UDNPLXW7.mjs +86 -0
  286. package/dist/chunk-UFDAAQFX.cjs +169 -0
  287. package/dist/chunk-UFDV5N3C.cjs +711 -0
  288. package/dist/chunk-UH6QN5NL.mjs +178 -0
  289. package/dist/chunk-UP4CW6WP.mjs +169 -0
  290. package/dist/chunk-UQZ4AYTH.cjs +168 -0
  291. package/dist/chunk-US2QVW3E.cjs +36 -0
  292. package/dist/chunk-UVW64BCB.cjs +910 -0
  293. package/dist/chunk-UWPLULNK.mjs +520 -0
  294. package/dist/chunk-UXFQ3UDA.cjs +140 -0
  295. package/dist/chunk-UYIHRDE4.cjs +97 -0
  296. package/dist/chunk-V2FTMRS7.mjs +223 -0
  297. package/dist/chunk-VB6UCX3V.cjs +421 -0
  298. package/dist/chunk-VEKFLAQM.cjs +300 -0
  299. package/dist/chunk-VILIPRS6.mjs +725 -0
  300. package/dist/chunk-VQLJWDVW.cjs +696 -0
  301. package/dist/chunk-W3B4PKAW.mjs +28 -0
  302. package/dist/chunk-W4E7WMXE.cjs +71 -0
  303. package/dist/chunk-W7LF2J2S.mjs +64 -0
  304. package/dist/chunk-WBKEZXWE.cjs +449 -0
  305. package/dist/chunk-WC5UV2HQ.cjs +212 -0
  306. package/dist/chunk-WMAPPDMM.cjs +28 -0
  307. package/dist/chunk-WMOGFOUJ.cjs +223 -0
  308. package/dist/chunk-WNSDDRNU.mjs +24 -0
  309. package/dist/chunk-WWFTAUFG.cjs +45 -0
  310. package/dist/chunk-WWIKMBRN.mjs +1362 -0
  311. package/dist/chunk-XCMCS4DA.mjs +1114 -0
  312. package/dist/chunk-XJJVLDM6.mjs +194 -0
  313. package/dist/chunk-XJXBIP67.cjs +277 -0
  314. package/dist/chunk-XNPDONUH.mjs +389 -0
  315. package/dist/chunk-XSIRSMAS.cjs +339 -0
  316. package/dist/chunk-XZNTNMHT.mjs +15 -0
  317. package/dist/chunk-Y5SJM2W7.cjs +579 -0
  318. package/dist/chunk-YDQZGSDS.mjs +2355 -0
  319. package/dist/chunk-YFILVET3.mjs +192 -0
  320. package/dist/chunk-YFPGHF5F.cjs +202 -0
  321. package/dist/chunk-YHOCRI4H.mjs +434 -0
  322. package/dist/chunk-YJRZR7VU.cjs +28 -0
  323. package/dist/chunk-YKX5BK66.cjs +46 -0
  324. package/dist/chunk-YOZYCI6Z.mjs +73 -0
  325. package/dist/chunk-YSCV4SJF.cjs +49 -0
  326. package/dist/chunk-YSLWRWWP.cjs +601 -0
  327. package/dist/chunk-YWMZUGIS.mjs +403 -0
  328. package/dist/chunk-YWN746US.cjs +1002 -0
  329. package/dist/chunk-YX3DBN4M.cjs +18 -0
  330. package/dist/chunk-Z2HLU4IX.cjs +238 -0
  331. package/dist/chunk-Z2RZJZIZ.mjs +168 -0
  332. package/dist/chunk-Z3HATSKO.mjs +46 -0
  333. package/dist/chunk-ZEG3OPIB.cjs +93 -0
  334. package/dist/chunk-ZLAT2CWY.mjs +135 -0
  335. package/dist/chunk-ZMMBIVQM.mjs +505 -0
  336. package/dist/chunk-ZMSZZXOR.mjs +164 -0
  337. package/dist/chunk-ZWM5KGAA.cjs +566 -0
  338. package/dist/chunk-ZZSRYEYU.mjs +53 -0
  339. package/dist/client/lifecycle.cjs +3 -3
  340. package/dist/client/lifecycle.mjs +2 -2
  341. package/dist/client-plugins.cjs +3 -3
  342. package/dist/client-plugins.mjs +2 -2
  343. package/dist/client.cjs +40 -45
  344. package/dist/client.mjs +39 -44
  345. package/dist/config.cjs +3 -3
  346. package/dist/config.mjs +2 -2
  347. package/dist/cron.cjs +9 -9
  348. package/dist/cron.mjs +8 -8
  349. package/dist/deferred.cjs +3 -3
  350. package/dist/deferred.mjs +2 -2
  351. package/dist/deployment.cjs +3 -3
  352. package/dist/deployment.mjs +2 -2
  353. package/dist/devtools-ERIKFEXX.mjs +472 -0
  354. package/dist/devtools-JZJJY5CK.cjs +472 -0
  355. package/dist/devtools-client-CXQ6PXI6.cjs +254 -0
  356. package/dist/devtools-client-HJS2T34Y.mjs +254 -0
  357. package/dist/devtools-ui-5GBDIGMK.cjs +1296 -0
  358. package/dist/devtools-ui-5KDAVPIF.mjs +1296 -0
  359. package/dist/docs.cjs +58 -66
  360. package/dist/docs.mjs +57 -65
  361. package/dist/env-types.cjs +4 -4
  362. package/dist/env-types.mjs +3 -3
  363. package/dist/env.cjs +4 -4
  364. package/dist/env.mjs +3 -3
  365. package/dist/environment/vite.cjs +3 -7
  366. package/dist/environment/vite.mjs +2 -6
  367. package/dist/environment.cjs +3 -3
  368. package/dist/environment.mjs +2 -2
  369. package/dist/font.cjs +3 -3
  370. package/dist/font.mjs +2 -2
  371. package/dist/headers.cjs +6 -8
  372. package/dist/headers.mjs +5 -7
  373. package/dist/i18n/client.cjs +30 -19
  374. package/dist/i18n/client.mjs +20 -9
  375. package/dist/i18n/index.cjs +6 -6
  376. package/dist/i18n/index.mjs +5 -5
  377. package/dist/i18n/server.cjs +10 -10
  378. package/dist/i18n/server.mjs +9 -9
  379. package/dist/image/server.cjs +5 -9
  380. package/dist/image/server.mjs +4 -8
  381. package/dist/image/sharp.cjs +20 -16
  382. package/dist/image/sharp.mjs +12 -8
  383. package/dist/image.cjs +18 -9
  384. package/dist/image.mjs +13 -4
  385. package/dist/index.cjs +174 -235
  386. package/dist/index.mjs +241 -302
  387. package/dist/instrumentation.cjs +5 -5
  388. package/dist/instrumentation.mjs +4 -4
  389. package/dist/integration-orm-55F7CII5.cjs +13 -0
  390. package/dist/integration-orm-KV5B3BGZ.mjs +13 -0
  391. package/dist/integrations.cjs +17 -23
  392. package/dist/integrations.mjs +18 -24
  393. package/dist/internal/app-markdown-runtime.cjs +13 -13
  394. package/dist/internal/app-markdown-runtime.mjs +12 -12
  395. package/dist/internal/build-runtime.cjs +133 -161
  396. package/dist/internal/build-runtime.mjs +121 -149
  397. package/dist/internal/cli-runtime.cjs +79 -101
  398. package/dist/internal/cli-runtime.mjs +79 -101
  399. package/dist/internal/client-error-overlay.cjs +49 -18
  400. package/dist/internal/client-error-overlay.mjs +45 -14
  401. package/dist/internal/client-runtime.cjs +59 -73
  402. package/dist/internal/client-runtime.mjs +52 -66
  403. package/dist/internal/compression-runtime.cjs +4 -4
  404. package/dist/internal/compression-runtime.mjs +3 -3
  405. package/dist/internal/config-runtime.cjs +65 -94
  406. package/dist/internal/config-runtime.mjs +51 -80
  407. package/dist/internal/docs-precompiled-runtime.cjs +24 -18
  408. package/dist/internal/docs-precompiled-runtime.mjs +20 -14
  409. package/dist/internal/infra-analytics-runtime.cjs +8 -22
  410. package/dist/internal/infra-analytics-runtime.mjs +6 -20
  411. package/dist/internal/isolated-boundary.cjs +4 -5
  412. package/dist/internal/isolated-boundary.mjs +3 -4
  413. package/dist/internal/metadata-image-runtime.cjs +7 -8
  414. package/dist/internal/metadata-image-runtime.mjs +6 -7
  415. package/dist/internal/product-telemetry-runtime.cjs +17 -5
  416. package/dist/internal/product-telemetry-runtime.mjs +15 -3
  417. package/dist/internal/production-node-env.cjs +3 -7
  418. package/dist/internal/production-node-env.mjs +2 -6
  419. package/dist/internal/production-runtime.cjs +90 -172
  420. package/dist/internal/production-runtime.mjs +114 -196
  421. package/dist/internal/request-cookies.cjs +3 -3
  422. package/dist/internal/request-cookies.mjs +2 -2
  423. package/dist/internal/server-tree.cjs +4 -7
  424. package/dist/internal/server-tree.mjs +5 -8
  425. package/dist/json-ld.cjs +16 -3
  426. package/dist/json-ld.mjs +16 -3
  427. package/dist/layers-UTB43B7A.mjs +18 -0
  428. package/dist/layers-VUWIOFEO.cjs +18 -0
  429. package/dist/manager-RT733VRK.mjs +14 -0
  430. package/dist/manager-XZ5TX7AO.cjs +14 -0
  431. package/dist/markdown.cjs +12 -19
  432. package/dist/markdown.mjs +11 -18
  433. package/dist/middleware.cjs +26 -34
  434. package/dist/middleware.mjs +30 -38
  435. package/dist/navigation.cjs +21 -22
  436. package/dist/navigation.mjs +20 -21
  437. package/dist/nitro-7F65EZZS.cjs +653 -0
  438. package/dist/nitro-MPZJGPXK.mjs +653 -0
  439. package/dist/node-module-bundle-L5L7JCZ4.mjs +11 -0
  440. package/dist/node-module-bundle-VAFZOXMJ.cjs +11 -0
  441. package/dist/observability.cjs +3 -3
  442. package/dist/observability.mjs +2 -2
  443. package/dist/og.cjs +1 -1
  444. package/dist/og.mjs +1 -1
  445. package/dist/plugin.cjs +124 -153
  446. package/dist/plugin.mjs +107 -136
  447. package/dist/query/client.cjs +69 -59
  448. package/dist/query/client.mjs +61 -51
  449. package/dist/query/index.cjs +4 -4
  450. package/dist/query/index.mjs +3 -3
  451. package/dist/query/parsers.cjs +3 -3
  452. package/dist/query/parsers.mjs +2 -2
  453. package/dist/query/server.cjs +11 -5
  454. package/dist/query/server.mjs +9 -3
  455. package/dist/renderer/react/client.cjs +1 -1
  456. package/dist/renderer/react/client.mjs +1 -1
  457. package/dist/renderer/react/server.cjs +14 -10
  458. package/dist/renderer/react/server.mjs +16 -12
  459. package/dist/renderer/react/vite.cjs +4 -1
  460. package/dist/renderer/react/vite.mjs +4 -1
  461. package/dist/renderer-client.cjs +77 -71
  462. package/dist/renderer-client.mjs +57 -51
  463. package/dist/renderer.cjs +3 -3
  464. package/dist/renderer.mjs +2 -2
  465. package/dist/request.cjs +4 -4
  466. package/dist/request.mjs +3 -3
  467. package/dist/router.cjs +5 -5
  468. package/dist/router.mjs +4 -4
  469. package/dist/routes.cjs +12 -14
  470. package/dist/routes.mjs +11 -13
  471. package/dist/schema-dev-notice-O67CPXJ6.mjs +56 -0
  472. package/dist/schema-dev-notice-Y7MQEFGN.cjs +56 -0
  473. package/dist/schema.cjs +3 -3
  474. package/dist/schema.mjs +2 -2
  475. package/dist/search-client-G3RICOFU.cjs +13 -0
  476. package/dist/search-client-KR7YRIVR.mjs +13 -0
  477. package/dist/server-action-security.cjs +7 -8
  478. package/dist/server-action-security.mjs +6 -7
  479. package/dist/server-fn-client.cjs +4 -4
  480. package/dist/server-fn-client.mjs +3 -3
  481. package/dist/server-fn.cjs +14 -15
  482. package/dist/server-fn.mjs +13 -14
  483. package/dist/server-plugins.cjs +15 -15
  484. package/dist/server-plugins.mjs +14 -14
  485. package/dist/server-query-client.cjs +8 -9
  486. package/dist/server-query-client.mjs +7 -8
  487. package/dist/server-query.cjs +16 -17
  488. package/dist/server-query.mjs +15 -16
  489. package/dist/server.cjs +199 -265
  490. package/dist/server.mjs +172 -238
  491. package/dist/storage.cjs +3 -7
  492. package/dist/storage.mjs +2 -6
  493. package/dist/testing.cjs +76 -59
  494. package/dist/testing.mjs +66 -49
  495. package/dist/theme/client.cjs +5 -5
  496. package/dist/theme/client.mjs +4 -4
  497. package/dist/theme/index.cjs +3 -3
  498. package/dist/theme/index.mjs +2 -2
  499. package/dist/theme/runtime.cjs +3 -3
  500. package/dist/theme/runtime.mjs +2 -2
  501. package/dist/theme/server.cjs +8 -8
  502. package/dist/theme/server.mjs +7 -7
  503. package/dist/version.cjs +3 -3
  504. package/dist/version.mjs +2 -2
  505. package/dist/vite.cjs +121 -166
  506. package/dist/vite.mjs +107 -152
  507. package/dist/workflows.cjs +13 -14
  508. package/dist/workflows.mjs +12 -13
  509. package/package.json +6 -1
  510. package/dist/after.d.mts +0 -25
  511. package/dist/after.d.ts +0 -25
  512. package/dist/agent-mcp-handler-7QMX2LUY.mjs +0 -18
  513. package/dist/agent-mcp-handler-OV4WRFBL.cjs +0 -18
  514. package/dist/agent-mcp.d-C-2S9bnP.d.mts +0 -115
  515. package/dist/agent-mcp.d-SIoCUP1I.d.ts +0 -115
  516. package/dist/agent-runtime.d.mts +0 -105
  517. package/dist/agent-runtime.d.ts +0 -105
  518. package/dist/analyzer-22BEYV7S.mjs +0 -1229
  519. package/dist/analyzer-LCSI3NSH.cjs +0 -1229
  520. package/dist/api/client.d.mts +0 -5
  521. package/dist/api/client.d.ts +0 -5
  522. package/dist/api/client.native.cjs +0 -45
  523. package/dist/api/client.native.d.mts +0 -23
  524. package/dist/api/client.native.d.ts +0 -23
  525. package/dist/api/client.native.mjs +0 -45
  526. package/dist/api/route-manager.d.mts +0 -119
  527. package/dist/api/route-manager.d.ts +0 -119
  528. package/dist/api/runtime.d.mts +0 -35
  529. package/dist/api/runtime.d.ts +0 -35
  530. package/dist/api-client.d-BNLXNCXJ.d.mts +0 -622
  531. package/dist/api-client.d-ddQBNGtu.d.ts +0 -622
  532. package/dist/api.d.mts +0 -103
  533. package/dist/api.d.ts +0 -103
  534. package/dist/app-manifest.d-DrSAHskY.d.mts +0 -120
  535. package/dist/app-manifest.d-Tb3CJpL4.d.ts +0 -120
  536. package/dist/app-markdown.d.mts +0 -48
  537. package/dist/app-markdown.d.ts +0 -48
  538. package/dist/app.d-CmWlYpZJ.d.ts +0 -569
  539. package/dist/app.d-D6QQM_kk.d.mts +0 -569
  540. package/dist/base-path.d-BOUV5ozD.d.mts +0 -10
  541. package/dist/base-path.d-BOUV5ozD.d.ts +0 -10
  542. package/dist/cache.d.mts +0 -333
  543. package/dist/cache.d.ts +0 -333
  544. package/dist/chunk-22W4FNTG.mjs +0 -538
  545. package/dist/chunk-23LVFSID.mjs +0 -182
  546. package/dist/chunk-25T5VXOE.mjs +0 -1093
  547. package/dist/chunk-2DA7CLY7.mjs +0 -560
  548. package/dist/chunk-2DLGV2ZG.mjs +0 -71
  549. package/dist/chunk-2FRLSDBT.cjs +0 -9
  550. package/dist/chunk-2HW5LWAH.cjs +0 -19
  551. package/dist/chunk-2I6PUKWJ.mjs +0 -44
  552. package/dist/chunk-2IAPKPEB.cjs +0 -368
  553. package/dist/chunk-2KMIJDY6.cjs +0 -20
  554. package/dist/chunk-2KTYMMWT.mjs +0 -1980
  555. package/dist/chunk-2NGZFOKG.mjs +0 -190
  556. package/dist/chunk-2OF5RPVU.cjs +0 -44
  557. package/dist/chunk-2WZTGPK6.mjs +0 -65
  558. package/dist/chunk-2XGBJSDV.cjs +0 -408
  559. package/dist/chunk-37PYUEK5.mjs +0 -533
  560. package/dist/chunk-3BIASUGR.cjs +0 -59
  561. package/dist/chunk-3EEET2Q5.cjs +0 -1044
  562. package/dist/chunk-3EIPOTZV.cjs +0 -272
  563. package/dist/chunk-3HLQTOVU.cjs +0 -6
  564. package/dist/chunk-3OJNNCDL.cjs +0 -2250
  565. package/dist/chunk-3OWVWZ6R.cjs +0 -60
  566. package/dist/chunk-3PX4AIXO.mjs +0 -437
  567. package/dist/chunk-3TL3AH25.cjs +0 -1035
  568. package/dist/chunk-3YMLUNL2.cjs +0 -251
  569. package/dist/chunk-46P5KNTE.mjs +0 -8
  570. package/dist/chunk-47JV57DA.cjs +0 -69
  571. package/dist/chunk-4BS3HSY7.cjs +0 -541
  572. package/dist/chunk-4DCWVSL2.cjs +0 -15
  573. package/dist/chunk-4JTQPOKO.cjs +0 -137
  574. package/dist/chunk-4MU4QCX4.mjs +0 -158
  575. package/dist/chunk-4P23B7DU.cjs +0 -433
  576. package/dist/chunk-4ZJ5C7UJ.cjs +0 -75
  577. package/dist/chunk-52Y3C3HG.mjs +0 -421
  578. package/dist/chunk-53EHWHT2.cjs +0 -166
  579. package/dist/chunk-55U5QIXQ.mjs +0 -35
  580. package/dist/chunk-5A77OEIG.cjs +0 -778
  581. package/dist/chunk-5C7XMKQ4.cjs +0 -410
  582. package/dist/chunk-5DX3O6TT.cjs +0 -266
  583. package/dist/chunk-5J45H65F.mjs +0 -48
  584. package/dist/chunk-5JNUYGNF.cjs +0 -1980
  585. package/dist/chunk-5OJVKXFV.cjs +0 -2072
  586. package/dist/chunk-5PZJ63PK.mjs +0 -17
  587. package/dist/chunk-5Y2P454O.cjs +0 -421
  588. package/dist/chunk-5Y4GYKKH.mjs +0 -13
  589. package/dist/chunk-5YPBFMBN.cjs +0 -19
  590. package/dist/chunk-65Y5SIBH.cjs +0 -112
  591. package/dist/chunk-6BJJYOFL.cjs +0 -293
  592. package/dist/chunk-6BLAY2VQ.mjs +0 -45
  593. package/dist/chunk-6CTFVBAT.cjs +0 -29
  594. package/dist/chunk-6FXBJPF5.cjs +0 -35
  595. package/dist/chunk-6HRAK7I5.mjs +0 -215
  596. package/dist/chunk-6IOZPJ3I.cjs +0 -549
  597. package/dist/chunk-6JHZPB52.cjs +0 -538
  598. package/dist/chunk-6UUH4N4J.mjs +0 -251
  599. package/dist/chunk-6XQSPIN6.cjs +0 -155
  600. package/dist/chunk-6YFC3ZFX.mjs +0 -449
  601. package/dist/chunk-6ZFRWRHO.mjs +0 -54
  602. package/dist/chunk-724WT3NI.mjs +0 -83
  603. package/dist/chunk-72KABRWN.mjs +0 -2072
  604. package/dist/chunk-72KCTHLV.cjs +0 -723
  605. package/dist/chunk-75XSZIRE.mjs +0 -180
  606. package/dist/chunk-7EPYN7GW.cjs +0 -30
  607. package/dist/chunk-7H45IJWO.mjs +0 -2250
  608. package/dist/chunk-7H4SVNC4.cjs +0 -700
  609. package/dist/chunk-7JUIK547.cjs +0 -62
  610. package/dist/chunk-7KJJ4SBS.cjs +0 -13
  611. package/dist/chunk-7PTISZSQ.cjs +0 -176
  612. package/dist/chunk-7PZVXMWG.mjs +0 -113
  613. package/dist/chunk-7S7AAK2D.mjs +0 -82
  614. package/dist/chunk-A25FXJ7D.cjs +0 -38
  615. package/dist/chunk-A2MN5PQJ.mjs +0 -527
  616. package/dist/chunk-A4PWGL46.mjs +0 -141
  617. package/dist/chunk-A5BJKSZE.cjs +0 -657
  618. package/dist/chunk-AER5I65K.mjs +0 -368
  619. package/dist/chunk-ALEUMLJN.mjs +0 -190
  620. package/dist/chunk-ANHZ6SUL.mjs +0 -657
  621. package/dist/chunk-AOKXITZ6.cjs +0 -16
  622. package/dist/chunk-AQLHD6HZ.cjs +0 -196
  623. package/dist/chunk-ATYTLVSI.cjs +0 -45
  624. package/dist/chunk-AY2YD5ZX.mjs +0 -34
  625. package/dist/chunk-AYP2YFVN.mjs +0 -168
  626. package/dist/chunk-AZQXXXDX.mjs +0 -80
  627. package/dist/chunk-B4CWYGCG.mjs +0 -541
  628. package/dist/chunk-BBPDJGCU.cjs +0 -157
  629. package/dist/chunk-BHJAYPYU.mjs +0 -387
  630. package/dist/chunk-BMQAPZXD.mjs +0 -31
  631. package/dist/chunk-BNH53KOT.cjs +0 -69
  632. package/dist/chunk-BPAXGCKX.mjs +0 -166
  633. package/dist/chunk-BPNOYILC.cjs +0 -450
  634. package/dist/chunk-BQWBHWEW.mjs +0 -252
  635. package/dist/chunk-BRWIVOV4.cjs +0 -48
  636. package/dist/chunk-BRYPZIMB.mjs +0 -6
  637. package/dist/chunk-BTZ5O6VM.cjs +0 -14
  638. package/dist/chunk-BUC3FDYC.cjs +0 -158
  639. package/dist/chunk-C64XOPBZ.mjs +0 -380
  640. package/dist/chunk-C7GJDVN4.mjs +0 -124
  641. package/dist/chunk-C7LCTVJ2.cjs +0 -30
  642. package/dist/chunk-CA7DNRHO.cjs +0 -164
  643. package/dist/chunk-CBKRS3M4.cjs +0 -453
  644. package/dist/chunk-CBOEJ5Z4.cjs +0 -1093
  645. package/dist/chunk-CI4UNQHO.cjs +0 -35
  646. package/dist/chunk-CKPTIEDX.cjs +0 -12
  647. package/dist/chunk-CL2ONP73.cjs +0 -180
  648. package/dist/chunk-CNNBFGL5.cjs +0 -252
  649. package/dist/chunk-CO6UYM2D.mjs +0 -172
  650. package/dist/chunk-CQL5ZGFU.cjs +0 -50
  651. package/dist/chunk-CSLUBKGG.mjs +0 -44
  652. package/dist/chunk-CU5SYTJG.mjs +0 -23
  653. package/dist/chunk-CV6MFQ4Y.mjs +0 -259
  654. package/dist/chunk-D22BUQKW.cjs +0 -82
  655. package/dist/chunk-D2LCAV6L.mjs +0 -79
  656. package/dist/chunk-D2X5MUF5.cjs +0 -1457
  657. package/dist/chunk-D4MRNBVF.cjs +0 -1462
  658. package/dist/chunk-D4XGKF67.cjs +0 -127
  659. package/dist/chunk-D7LTCK3U.mjs +0 -224
  660. package/dist/chunk-D7Y63SOY.mjs +0 -15
  661. package/dist/chunk-DMAP4RND.cjs +0 -998
  662. package/dist/chunk-DPJ66FSI.cjs +0 -491
  663. package/dist/chunk-DQJ2CIH7.cjs +0 -87
  664. package/dist/chunk-DU4VHHPJ.mjs +0 -157
  665. package/dist/chunk-DUIP64BF.cjs +0 -16
  666. package/dist/chunk-DV52ZS53.cjs +0 -40
  667. package/dist/chunk-DXUXQP2T.cjs +0 -142
  668. package/dist/chunk-DZPR2W6U.cjs +0 -593
  669. package/dist/chunk-DZZHTMWM.cjs +0 -190
  670. package/dist/chunk-E552H232.cjs +0 -154
  671. package/dist/chunk-E72UD6ME.mjs +0 -277
  672. package/dist/chunk-E7QOEV5Z.cjs +0 -449
  673. package/dist/chunk-EDPENAVO.mjs +0 -266
  674. package/dist/chunk-EFLNOZGH.mjs +0 -30
  675. package/dist/chunk-EFZGB7JC.cjs +0 -114
  676. package/dist/chunk-EGHPFXPZ.cjs +0 -590
  677. package/dist/chunk-EGVC4LIG.mjs +0 -697
  678. package/dist/chunk-EJCVG25Z.mjs +0 -49
  679. package/dist/chunk-EMDGXYUD.mjs +0 -75
  680. package/dist/chunk-EOXPRC2C.cjs +0 -48
  681. package/dist/chunk-ERMUL73L.cjs +0 -39
  682. package/dist/chunk-ES2LD2YD.mjs +0 -203
  683. package/dist/chunk-EV4SBMPX.mjs +0 -208
  684. package/dist/chunk-EVIWKPJV.cjs +0 -560
  685. package/dist/chunk-EVMXPJCB.mjs +0 -133
  686. package/dist/chunk-EX6ZSN5P.cjs +0 -224
  687. package/dist/chunk-EXUONJYV.mjs +0 -588
  688. package/dist/chunk-EZ34EHQP.mjs +0 -462
  689. package/dist/chunk-EZTKXD6P.cjs +0 -182
  690. package/dist/chunk-F3N52U7S.mjs +0 -138
  691. package/dist/chunk-F6Y7ZAPQ.mjs +0 -713
  692. package/dist/chunk-FBEBSAVI.cjs +0 -225
  693. package/dist/chunk-FEFCISOX.cjs +0 -102
  694. package/dist/chunk-FHURJABM.mjs +0 -45
  695. package/dist/chunk-FK25QSVC.cjs +0 -386
  696. package/dist/chunk-FN5UEC7I.mjs +0 -55
  697. package/dist/chunk-FORSVMEJ.mjs +0 -433
  698. package/dist/chunk-FSQMN2MQ.mjs +0 -386
  699. package/dist/chunk-FSXSQQTV.mjs +0 -79
  700. package/dist/chunk-GBMWLDCC.cjs +0 -138
  701. package/dist/chunk-GFT5AHAT.mjs +0 -423
  702. package/dist/chunk-GHNW564E.mjs +0 -1044
  703. package/dist/chunk-GL3ZDHKI.mjs +0 -274
  704. package/dist/chunk-GLOICKDO.mjs +0 -142
  705. package/dist/chunk-GNZIAJGB.mjs +0 -358
  706. package/dist/chunk-GSVJ3IIF.cjs +0 -173
  707. package/dist/chunk-GUZC226X.mjs +0 -164
  708. package/dist/chunk-GWXZS7K5.mjs +0 -24
  709. package/dist/chunk-GYMGK467.mjs +0 -214
  710. package/dist/chunk-H227LYHT.mjs +0 -88
  711. package/dist/chunk-H3ASZDT7.mjs +0 -42
  712. package/dist/chunk-H4WUWLQR.mjs +0 -16
  713. package/dist/chunk-HA7YRO53.cjs +0 -214
  714. package/dist/chunk-HASX6DC7.cjs +0 -150
  715. package/dist/chunk-HEPJIKKQ.cjs +0 -190
  716. package/dist/chunk-HLYRXN2I.cjs +0 -242
  717. package/dist/chunk-HNAISJFD.cjs +0 -215
  718. package/dist/chunk-HPP2II4Z.mjs +0 -332
  719. package/dist/chunk-HPWB57PZ.mjs +0 -9
  720. package/dist/chunk-HXNLKCWH.cjs +0 -13
  721. package/dist/chunk-HZOMT5DY.mjs +0 -30
  722. package/dist/chunk-I2BYNELA.cjs +0 -380
  723. package/dist/chunk-IAPTECEB.mjs +0 -48
  724. package/dist/chunk-IFHPDLIS.mjs +0 -1964
  725. package/dist/chunk-IFTGERT3.mjs +0 -408
  726. package/dist/chunk-IFXSBJPN.cjs +0 -713
  727. package/dist/chunk-IGL6CO6M.mjs +0 -9
  728. package/dist/chunk-ILMTRGBG.mjs +0 -6488
  729. package/dist/chunk-ITV4QQL2.cjs +0 -93
  730. package/dist/chunk-IYEY3JWJ.mjs +0 -186
  731. package/dist/chunk-JBK7UJOI.cjs +0 -156
  732. package/dist/chunk-JGAE5XPL.cjs +0 -26
  733. package/dist/chunk-JI5D7MXY.mjs +0 -137
  734. package/dist/chunk-JIBEFLQ7.cjs +0 -44
  735. package/dist/chunk-JMYXO572.cjs +0 -531
  736. package/dist/chunk-JNYFXL7X.mjs +0 -62
  737. package/dist/chunk-JPIUGDK4.mjs +0 -651
  738. package/dist/chunk-JRHGJVJH.mjs +0 -44
  739. package/dist/chunk-JSDV2NUN.mjs +0 -206
  740. package/dist/chunk-JXIYH2NO.cjs +0 -24
  741. package/dist/chunk-JYNNIGQO.cjs +0 -87
  742. package/dist/chunk-JYT7AN37.cjs +0 -79
  743. package/dist/chunk-K3RU5MOR.mjs +0 -80
  744. package/dist/chunk-K5EW7GUU.mjs +0 -417
  745. package/dist/chunk-K76CBYQM.mjs +0 -157
  746. package/dist/chunk-KBGZ5FD6.cjs +0 -17
  747. package/dist/chunk-KORZ6PRE.cjs +0 -64
  748. package/dist/chunk-KPAJWD3N.mjs +0 -168
  749. package/dist/chunk-KPOMS5RO.cjs +0 -237
  750. package/dist/chunk-KQH2COEJ.mjs +0 -42
  751. package/dist/chunk-KVW2M6PI.mjs +0 -341
  752. package/dist/chunk-L5JDKFMQ.cjs +0 -44
  753. package/dist/chunk-LB3DPQP6.cjs +0 -588
  754. package/dist/chunk-LIFUPCXW.cjs +0 -423
  755. package/dist/chunk-LJVNMGE3.mjs +0 -1035
  756. package/dist/chunk-LLZSYFOM.mjs +0 -6
  757. package/dist/chunk-LM55GS4R.mjs +0 -38
  758. package/dist/chunk-LNVGXUL3.cjs +0 -172
  759. package/dist/chunk-LQNW3ABP.cjs +0 -527
  760. package/dist/chunk-LRB5OVRT.cjs +0 -124
  761. package/dist/chunk-LSHX2H5G.cjs +0 -57
  762. package/dist/chunk-LT4VAF5Z.cjs +0 -1359
  763. package/dist/chunk-M25IONJP.mjs +0 -16
  764. package/dist/chunk-M53MIIXY.mjs +0 -172
  765. package/dist/chunk-MEQN6DDA.cjs +0 -341
  766. package/dist/chunk-MF3IA2AW.cjs +0 -25
  767. package/dist/chunk-MFQGU5CC.mjs +0 -127
  768. package/dist/chunk-MGKW5XZE.cjs +0 -40
  769. package/dist/chunk-MHLNWRCJ.cjs +0 -36
  770. package/dist/chunk-MMK4MZUN.mjs +0 -36
  771. package/dist/chunk-MNIR7I7B.mjs +0 -217
  772. package/dist/chunk-MPU5DOXX.cjs +0 -21
  773. package/dist/chunk-MTWXOEI4.cjs +0 -12683
  774. package/dist/chunk-MU5V7XHL.mjs +0 -172
  775. package/dist/chunk-N33DLJBC.mjs +0 -272
  776. package/dist/chunk-N35YPV4N.mjs +0 -48
  777. package/dist/chunk-N4AQNEXR.cjs +0 -17
  778. package/dist/chunk-N7XWC6BN.mjs +0 -21
  779. package/dist/chunk-NBIVGHAT.mjs +0 -50
  780. package/dist/chunk-NCIAP562.mjs +0 -27
  781. package/dist/chunk-NHD7BAKD.mjs +0 -1457
  782. package/dist/chunk-NK2VWS7P.cjs +0 -954
  783. package/dist/chunk-NQJDO7K7.cjs +0 -1010
  784. package/dist/chunk-NR63PD3P.mjs +0 -64
  785. package/dist/chunk-NRNAHZ57.mjs +0 -39
  786. package/dist/chunk-NWUHS6GV.cjs +0 -79
  787. package/dist/chunk-O27PLNQZ.cjs +0 -878
  788. package/dist/chunk-O4F3JUST.mjs +0 -176
  789. package/dist/chunk-OAJOQU5J.mjs +0 -225
  790. package/dist/chunk-OCS3PSYR.cjs +0 -51
  791. package/dist/chunk-OHWM2VI4.mjs +0 -29
  792. package/dist/chunk-OJO2GOM3.mjs +0 -69
  793. package/dist/chunk-OLGQZRW6.mjs +0 -700
  794. package/dist/chunk-OM7WILES.mjs +0 -100
  795. package/dist/chunk-ONG4RDW3.mjs +0 -155
  796. package/dist/chunk-OOJBBHYW.cjs +0 -38
  797. package/dist/chunk-OOZEU5KK.cjs +0 -18
  798. package/dist/chunk-OWQV6MLM.cjs +0 -82
  799. package/dist/chunk-OY5XDG24.cjs +0 -113
  800. package/dist/chunk-OYZXVBZP.cjs +0 -133
  801. package/dist/chunk-OZC2JPW6.cjs +0 -10
  802. package/dist/chunk-OZK2DS44.mjs +0 -203
  803. package/dist/chunk-P2355C6E.cjs +0 -186
  804. package/dist/chunk-PAKCHVUS.mjs +0 -450
  805. package/dist/chunk-PCXIJKPM.mjs +0 -878
  806. package/dist/chunk-PENBZAHJ.cjs +0 -88
  807. package/dist/chunk-PIUTGRDI.cjs +0 -358
  808. package/dist/chunk-PMJSG4JS.cjs +0 -152
  809. package/dist/chunk-PO5MXV5X.cjs +0 -13
  810. package/dist/chunk-PRFNLQSP.cjs +0 -277
  811. package/dist/chunk-PSUYE5HR.mjs +0 -25
  812. package/dist/chunk-PTLXHRJZ.mjs +0 -57
  813. package/dist/chunk-PZXYAWYG.cjs +0 -274
  814. package/dist/chunk-Q5B4LNON.mjs +0 -19
  815. package/dist/chunk-QAS7KE7J.cjs +0 -169
  816. package/dist/chunk-QGJ4FI2G.mjs +0 -723
  817. package/dist/chunk-QGOZLGVP.mjs +0 -0
  818. package/dist/chunk-QISW423S.cjs +0 -335
  819. package/dist/chunk-QMDU6QHN.mjs +0 -778
  820. package/dist/chunk-QMNWKQL4.cjs +0 -206
  821. package/dist/chunk-QOSDWGKT.mjs +0 -109
  822. package/dist/chunk-QPJ4MZTO.mjs +0 -60
  823. package/dist/chunk-QPNVDSFZ.mjs +0 -18
  824. package/dist/chunk-QQ44FYRO.cjs +0 -27
  825. package/dist/chunk-QRX4JRBO.cjs +0 -651
  826. package/dist/chunk-QSTRBKHZ.mjs +0 -102
  827. package/dist/chunk-R53QDV6T.cjs +0 -100
  828. package/dist/chunk-R5U7OIPI.cjs +0 -34
  829. package/dist/chunk-R62SF5R4.mjs +0 -410
  830. package/dist/chunk-RAWWCDCT.cjs +0 -697
  831. package/dist/chunk-RD623KW4.cjs +0 -203
  832. package/dist/chunk-RFKTJTWZ.mjs +0 -26
  833. package/dist/chunk-RI3EVPKD.cjs +0 -57
  834. package/dist/chunk-RLEALQEN.mjs +0 -998
  835. package/dist/chunk-RPUJHJHE.mjs +0 -453
  836. package/dist/chunk-RSEAX5MW.mjs +0 -44
  837. package/dist/chunk-RVGLYMJM.cjs +0 -259
  838. package/dist/chunk-S32PDOLO.mjs +0 -13
  839. package/dist/chunk-S6O2L47H.mjs +0 -549
  840. package/dist/chunk-SBDWCDS6.cjs +0 -8
  841. package/dist/chunk-SF3JB56B.mjs +0 -82
  842. package/dist/chunk-SG57PX7K.cjs +0 -65
  843. package/dist/chunk-SGBNF56S.cjs +0 -44
  844. package/dist/chunk-SHD265HW.cjs +0 -19
  845. package/dist/chunk-SHIWRBFI.cjs +0 -17
  846. package/dist/chunk-SJRCWF4Z.mjs +0 -237
  847. package/dist/chunk-SM2SYWAR.cjs +0 -49
  848. package/dist/chunk-SMUW7UST.mjs +0 -196
  849. package/dist/chunk-SNP33A33.cjs +0 -9
  850. package/dist/chunk-STF6VDYQ.cjs +0 -23
  851. package/dist/chunk-SUCDVKUB.cjs +0 -42
  852. package/dist/chunk-SVCUSOEF.mjs +0 -590
  853. package/dist/chunk-SX7EECTS.mjs +0 -156
  854. package/dist/chunk-SXCL2MIN.cjs +0 -208
  855. package/dist/chunk-SYW346ZN.cjs +0 -71
  856. package/dist/chunk-T4EW7AAD.mjs +0 -150
  857. package/dist/chunk-T4TBK5NY.mjs +0 -593
  858. package/dist/chunk-T7I62A4C.mjs +0 -12680
  859. package/dist/chunk-TGSEVBPO.mjs +0 -93
  860. package/dist/chunk-TJVUTGED.mjs +0 -531
  861. package/dist/chunk-TUOO6IK3.mjs +0 -87
  862. package/dist/chunk-TUPKMMXT.mjs +0 -173
  863. package/dist/chunk-TVCFY3KK.cjs +0 -217
  864. package/dist/chunk-U4BJKNIR.cjs +0 -224
  865. package/dist/chunk-UAQD67HM.mjs +0 -154
  866. package/dist/chunk-UB7RVEMX.mjs +0 -73
  867. package/dist/chunk-UDJY2ZGY.cjs +0 -6488
  868. package/dist/chunk-UIJOLBUL.mjs +0 -19
  869. package/dist/chunk-UNJZGVPU.cjs +0 -6
  870. package/dist/chunk-UPYIFH2H.cjs +0 -168
  871. package/dist/chunk-UR25Z5Z6.mjs +0 -135
  872. package/dist/chunk-UUMKLGUU.mjs +0 -69
  873. package/dist/chunk-UYSTTPYJ.cjs +0 -9277
  874. package/dist/chunk-UYTAP4FQ.cjs +0 -60
  875. package/dist/chunk-UZCMMJJT.cjs +0 -80
  876. package/dist/chunk-UZZ6IEQP.mjs +0 -169
  877. package/dist/chunk-V3UOEWCB.cjs +0 -46
  878. package/dist/chunk-V56632LA.cjs +0 -141
  879. package/dist/chunk-VE3FWJBO.mjs +0 -46
  880. package/dist/chunk-VFXE6NWR.mjs +0 -87
  881. package/dist/chunk-VGG74PSU.cjs +0 -712
  882. package/dist/chunk-VHIXGZYH.mjs +0 -9
  883. package/dist/chunk-VISQDC6W.mjs +0 -10
  884. package/dist/chunk-VIXTAVEA.mjs +0 -59
  885. package/dist/chunk-VM57CK74.cjs +0 -42
  886. package/dist/chunk-VOQ7XZZT.cjs +0 -157
  887. package/dist/chunk-VPTWKOCY.mjs +0 -1010
  888. package/dist/chunk-VQJHT2ND.mjs +0 -40
  889. package/dist/chunk-VR6QLTTX.mjs +0 -59
  890. package/dist/chunk-VU3MYZPO.mjs +0 -432
  891. package/dist/chunk-VVTJTMGQ.cjs +0 -135
  892. package/dist/chunk-VXCFJWK5.cjs +0 -59
  893. package/dist/chunk-VZY7MAVS.cjs +0 -432
  894. package/dist/chunk-W2RZ73IU.cjs +0 -387
  895. package/dist/chunk-W2ZXMMHA.mjs +0 -1462
  896. package/dist/chunk-W6QLRQ3V.mjs +0 -152
  897. package/dist/chunk-WCLLPR6H.mjs +0 -35
  898. package/dist/chunk-WEGAVN37.cjs +0 -45
  899. package/dist/chunk-WFVSAT7Y.cjs +0 -83
  900. package/dist/chunk-WNDAISB7.mjs +0 -51
  901. package/dist/chunk-WNLPQW7W.mjs +0 -19
  902. package/dist/chunk-WT6RAN2I.cjs +0 -41
  903. package/dist/chunk-WXFY5JIY.mjs +0 -20
  904. package/dist/chunk-WYL4ODZ4.mjs +0 -38
  905. package/dist/chunk-X2CZTWQA.mjs +0 -712
  906. package/dist/chunk-X333W5KV.cjs +0 -31
  907. package/dist/chunk-X3EFRVXY.mjs +0 -12
  908. package/dist/chunk-X3XUZWRB.mjs +0 -141
  909. package/dist/chunk-XGJVRPYL.cjs +0 -141
  910. package/dist/chunk-XMHERKSE.mjs +0 -224
  911. package/dist/chunk-XPIPMWY3.cjs +0 -1
  912. package/dist/chunk-XQ4DPO4G.mjs +0 -13
  913. package/dist/chunk-XQSYOVCW.cjs +0 -417
  914. package/dist/chunk-XR2ZIBQK.mjs +0 -57
  915. package/dist/chunk-XTG73QZA.cjs +0 -533
  916. package/dist/chunk-XURDCXNH.cjs +0 -48
  917. package/dist/chunk-XVSBALOY.cjs +0 -55
  918. package/dist/chunk-Y3WG64CP.cjs +0 -9
  919. package/dist/chunk-Y6FXYEAI.mjs +0 -10
  920. package/dist/chunk-Y7NN63LS.mjs +0 -40
  921. package/dist/chunk-YB44NKC2.cjs +0 -203
  922. package/dist/chunk-YDXLC4DW.cjs +0 -54
  923. package/dist/chunk-YI6FKTTN.cjs +0 -437
  924. package/dist/chunk-YIHRZBD7.cjs +0 -172
  925. package/dist/chunk-YKHRCY4T.cjs +0 -73
  926. package/dist/chunk-YP7YO3S3.mjs +0 -17
  927. package/dist/chunk-YSXTNSXS.mjs +0 -1359
  928. package/dist/chunk-YT3SLLZK.mjs +0 -242
  929. package/dist/chunk-YTVSWXEZ.cjs +0 -168
  930. package/dist/chunk-YWPNIYUP.mjs +0 -41
  931. package/dist/chunk-YX6AFPXC.mjs +0 -8
  932. package/dist/chunk-Z5A6CNV2.mjs +0 -60
  933. package/dist/chunk-Z64V4WZI.mjs +0 -17
  934. package/dist/chunk-ZDAEHG2O.cjs +0 -80
  935. package/dist/chunk-ZFUKPWFC.mjs +0 -9274
  936. package/dist/chunk-ZMHAFH4R.mjs +0 -491
  937. package/dist/chunk-ZNH6NR3H.cjs +0 -462
  938. package/dist/chunk-ZNXTU4YH.mjs +0 -114
  939. package/dist/chunk-ZOYKJBP5.cjs +0 -172
  940. package/dist/chunk-ZP32GNJQ.cjs +0 -1964
  941. package/dist/chunk-ZQ5BDNKW.mjs +0 -954
  942. package/dist/chunk-ZXK2EYQW.cjs +0 -8
  943. package/dist/chunk-ZZ2QKCKW.mjs +0 -293
  944. package/dist/chunk-recovery.d-lnQFzcQP.d.mts +0 -26
  945. package/dist/chunk-recovery.d-lnQFzcQP.d.ts +0 -26
  946. package/dist/client/lifecycle.d.mts +0 -1
  947. package/dist/client/lifecycle.d.ts +0 -1
  948. package/dist/client-cache.d-Deoqq-nM.d.ts +0 -76
  949. package/dist/client-cache.d-di_Nasxa.d.mts +0 -76
  950. package/dist/client-plugins.d-CgQQ-EAv.d.mts +0 -4009
  951. package/dist/client-plugins.d-vXrbcfJ1.d.ts +0 -4009
  952. package/dist/client-plugins.d.mts +0 -33
  953. package/dist/client-plugins.d.ts +0 -33
  954. package/dist/client.d.mts +0 -452
  955. package/dist/client.d.ts +0 -452
  956. package/dist/client.react-server.mjs +0 -2
  957. package/dist/config.d-DqZkLwef.d.mts +0 -337
  958. package/dist/config.d-DqZkLwef.d.ts +0 -337
  959. package/dist/config.d.mts +0 -40
  960. package/dist/config.d.ts +0 -40
  961. package/dist/cron.d.mts +0 -88
  962. package/dist/cron.d.ts +0 -88
  963. package/dist/deferred.d.mts +0 -44
  964. package/dist/deferred.d.ts +0 -44
  965. package/dist/deployment.d.mts +0 -36
  966. package/dist/deployment.d.ts +0 -36
  967. package/dist/desktop.cjs +0 -13
  968. package/dist/desktop.d.mts +0 -120
  969. package/dist/desktop.d.ts +0 -120
  970. package/dist/desktop.mjs +0 -13
  971. package/dist/dev-guard-2UW2KERP.cjs +0 -59
  972. package/dist/dev-guard-ONNMVQUN.mjs +0 -59
  973. package/dist/devtools-KQZ6SRCJ.mjs +0 -463
  974. package/dist/devtools-UF6JYHUN.cjs +0 -463
  975. package/dist/devtools-client-SU4XH46J.mjs +0 -250
  976. package/dist/devtools-client-X5OQCXDF.cjs +0 -250
  977. package/dist/devtools-ui-CYBVFLPH.mjs +0 -1265
  978. package/dist/devtools-ui-SYRUXUA7.cjs +0 -1265
  979. package/dist/docs.d.mts +0 -169
  980. package/dist/docs.d.ts +0 -169
  981. package/dist/endpoint.d-BgHn0lhl.d.ts +0 -370
  982. package/dist/endpoint.d-BkMSCRf6.d.mts +0 -370
  983. package/dist/env-types.d.mts +0 -12
  984. package/dist/env-types.d.ts +0 -12
  985. package/dist/env.d.mts +0 -65
  986. package/dist/env.d.ts +0 -65
  987. package/dist/environment/vite.d.mts +0 -31
  988. package/dist/environment/vite.d.ts +0 -31
  989. package/dist/environment.d.mts +0 -18
  990. package/dist/environment.d.ts +0 -18
  991. package/dist/font.d.mts +0 -95
  992. package/dist/font.d.ts +0 -95
  993. package/dist/generate-route-types.d-BL2pq6xC.d.ts +0 -33
  994. package/dist/generate-route-types.d-BoVDU8qX.d.mts +0 -33
  995. package/dist/headers.d.mts +0 -32
  996. package/dist/headers.d.ts +0 -32
  997. package/dist/i18n/client.d.mts +0 -32
  998. package/dist/i18n/client.d.ts +0 -32
  999. package/dist/i18n/index.d.mts +0 -3
  1000. package/dist/i18n/index.d.ts +0 -3
  1001. package/dist/i18n/server.d.mts +0 -30
  1002. package/dist/i18n/server.d.ts +0 -30
  1003. package/dist/image/server.d.mts +0 -59
  1004. package/dist/image/server.d.ts +0 -59
  1005. package/dist/image/sharp.d.mts +0 -20
  1006. package/dist/image/sharp.d.ts +0 -20
  1007. package/dist/image-config.d-CeDgNyX4.d.mts +0 -53
  1008. package/dist/image-config.d-CeDgNyX4.d.ts +0 -53
  1009. package/dist/image.d.mts +0 -39
  1010. package/dist/image.d.ts +0 -39
  1011. package/dist/index.d-BNNDpql4.d.ts +0 -20
  1012. package/dist/index.d-BqcfqJvt.d.mts +0 -20
  1013. package/dist/index.d-DlCELfhf.d.ts +0 -54
  1014. package/dist/index.d-Dmfb7Kb_.d.mts +0 -54
  1015. package/dist/index.d.mts +0 -1053
  1016. package/dist/index.d.ts +0 -1053
  1017. package/dist/instrumentation-runtime.d-CX9Zh-16.d.mts +0 -22
  1018. package/dist/instrumentation-runtime.d-CX9Zh-16.d.ts +0 -22
  1019. package/dist/instrumentation.d.mts +0 -7
  1020. package/dist/instrumentation.d.ts +0 -7
  1021. package/dist/integration-orm-52GPGTHO.cjs +0 -14
  1022. package/dist/integration-orm-CO23MSFE.mjs +0 -14
  1023. package/dist/integrations.d.mts +0 -33
  1024. package/dist/integrations.d.ts +0 -33
  1025. package/dist/internal/app-markdown-runtime.d.mts +0 -86
  1026. package/dist/internal/app-markdown-runtime.d.ts +0 -86
  1027. package/dist/internal/build-runtime.d.mts +0 -46
  1028. package/dist/internal/build-runtime.d.ts +0 -46
  1029. package/dist/internal/client-error-overlay.d.mts +0 -25
  1030. package/dist/internal/client-error-overlay.d.ts +0 -25
  1031. package/dist/internal/client-runtime.d.mts +0 -93
  1032. package/dist/internal/client-runtime.d.ts +0 -93
  1033. package/dist/internal/compression-runtime.d.mts +0 -48
  1034. package/dist/internal/compression-runtime.d.ts +0 -48
  1035. package/dist/internal/config-runtime.d.mts +0 -336
  1036. package/dist/internal/config-runtime.d.ts +0 -336
  1037. package/dist/internal/desktop-guard.cjs +0 -17
  1038. package/dist/internal/desktop-guard.d.mts +0 -52
  1039. package/dist/internal/desktop-guard.d.ts +0 -52
  1040. package/dist/internal/desktop-guard.mjs +0 -17
  1041. package/dist/internal/docs-precompiled-runtime.d.mts +0 -43
  1042. package/dist/internal/docs-precompiled-runtime.d.ts +0 -43
  1043. package/dist/internal/form-actions-client.cjs +0 -14
  1044. package/dist/internal/form-actions-client.d.mts +0 -5
  1045. package/dist/internal/form-actions-client.d.ts +0 -5
  1046. package/dist/internal/form-actions-client.mjs +0 -14
  1047. package/dist/internal/form-actions.cjs +0 -19
  1048. package/dist/internal/form-actions.d.mts +0 -14
  1049. package/dist/internal/form-actions.d.ts +0 -14
  1050. package/dist/internal/form-actions.mjs +0 -19
  1051. package/dist/internal/infra-analytics-runtime.d.mts +0 -16
  1052. package/dist/internal/infra-analytics-runtime.d.ts +0 -16
  1053. package/dist/internal/island-codec.cjs +0 -22
  1054. package/dist/internal/island-codec.d.mts +0 -29
  1055. package/dist/internal/island-codec.d.ts +0 -29
  1056. package/dist/internal/island-codec.mjs +0 -22
  1057. package/dist/internal/island-value-store.cjs +0 -10
  1058. package/dist/internal/island-value-store.d.mts +0 -6
  1059. package/dist/internal/island-value-store.d.ts +0 -6
  1060. package/dist/internal/island-value-store.mjs +0 -10
  1061. package/dist/internal/islands-boot.cjs +0 -211
  1062. package/dist/internal/islands-boot.d.mts +0 -8
  1063. package/dist/internal/islands-boot.d.ts +0 -8
  1064. package/dist/internal/islands-boot.mjs +0 -211
  1065. package/dist/internal/islands-runtime.cjs +0 -161
  1066. package/dist/internal/islands-runtime.d.mts +0 -66
  1067. package/dist/internal/islands-runtime.d.ts +0 -66
  1068. package/dist/internal/islands-runtime.mjs +0 -161
  1069. package/dist/internal/islands-server.cjs +0 -16
  1070. package/dist/internal/islands-server.d.mts +0 -3
  1071. package/dist/internal/islands-server.d.ts +0 -3
  1072. package/dist/internal/islands-server.mjs +0 -16
  1073. package/dist/internal/islx-client.cjs +0 -5
  1074. package/dist/internal/islx-client.d.mts +0 -6
  1075. package/dist/internal/islx-client.d.ts +0 -6
  1076. package/dist/internal/islx-client.mjs +0 -3
  1077. package/dist/internal/islx-react.cjs +0 -4
  1078. package/dist/internal/islx-react.d.mts +0 -1
  1079. package/dist/internal/islx-react.d.ts +0 -1
  1080. package/dist/internal/islx-react.mjs +0 -2
  1081. package/dist/internal/islx-server.cjs +0 -5
  1082. package/dist/internal/islx-server.d.mts +0 -2
  1083. package/dist/internal/islx-server.d.ts +0 -2
  1084. package/dist/internal/islx-server.mjs +0 -3
  1085. package/dist/internal/isolated-boundary.d.mts +0 -66
  1086. package/dist/internal/isolated-boundary.d.ts +0 -66
  1087. package/dist/internal/metadata-image-runtime.d.mts +0 -30
  1088. package/dist/internal/metadata-image-runtime.d.ts +0 -30
  1089. package/dist/internal/product-telemetry-runtime.d.mts +0 -45
  1090. package/dist/internal/product-telemetry-runtime.d.ts +0 -45
  1091. package/dist/internal/production-node-env.d.mts +0 -21
  1092. package/dist/internal/production-node-env.d.ts +0 -21
  1093. package/dist/internal/production-runtime.d.mts +0 -539
  1094. package/dist/internal/production-runtime.d.ts +0 -539
  1095. package/dist/internal/request-cookies.d.mts +0 -16
  1096. package/dist/internal/request-cookies.d.ts +0 -16
  1097. package/dist/internal/server-fn-transform.cjs +0 -13
  1098. package/dist/internal/server-fn-transform.d.mts +0 -24
  1099. package/dist/internal/server-fn-transform.d.ts +0 -24
  1100. package/dist/internal/server-fn-transform.mjs +0 -13
  1101. package/dist/internal/server-tree.d.mts +0 -50
  1102. package/dist/internal/server-tree.d.ts +0 -50
  1103. package/dist/island-value-protocol.d-BRayRghM.d.mts +0 -12
  1104. package/dist/island-value-protocol.d-BRayRghM.d.ts +0 -12
  1105. package/dist/island.d-CfGru1MO.d.mts +0 -9
  1106. package/dist/island.d-CfGru1MO.d.ts +0 -9
  1107. package/dist/json-ld.d.mts +0 -94
  1108. package/dist/json-ld.d.ts +0 -94
  1109. package/dist/layers-DMRXRL7F.cjs +0 -18
  1110. package/dist/layers-T55SA47E.mjs +0 -18
  1111. package/dist/layers.d-CcS42OGR.d.mts +0 -55
  1112. package/dist/layers.d-CcS42OGR.d.ts +0 -55
  1113. package/dist/lifecycle.d-C2aLBOwu.d.mts +0 -176
  1114. package/dist/lifecycle.d-C2aLBOwu.d.ts +0 -176
  1115. package/dist/manager-2LUKNX2N.cjs +0 -14
  1116. package/dist/manager-H5ZM3HAM.mjs +0 -14
  1117. package/dist/markdown.d.mts +0 -33
  1118. package/dist/markdown.d.ts +0 -33
  1119. package/dist/middleware.d.mts +0 -225
  1120. package/dist/middleware.d.ts +0 -225
  1121. package/dist/mobile.cjs +0 -9
  1122. package/dist/mobile.d.mts +0 -132
  1123. package/dist/mobile.d.ts +0 -132
  1124. package/dist/mobile.mjs +0 -9
  1125. package/dist/modules-VHD7BELU.mjs +0 -13
  1126. package/dist/modules-WT5D3AWY.cjs +0 -13
  1127. package/dist/native-specs-BD7HOTMJ.mjs +0 -15
  1128. package/dist/native-specs-IQQRJOOW.cjs +0 -15
  1129. package/dist/native-tree-6G5O53O3.cjs +0 -27
  1130. package/dist/native-tree-VWNW2MQ2.mjs +0 -27
  1131. package/dist/native.cjs +0 -87
  1132. package/dist/native.d.mts +0 -72
  1133. package/dist/native.d.ts +0 -72
  1134. package/dist/native.mjs +0 -87
  1135. package/dist/navigation-delegate.d-CnOTWOyi.d.mts +0 -29
  1136. package/dist/navigation-delegate.d-JXx40JzR.d.ts +0 -29
  1137. package/dist/navigation.d.mts +0 -51
  1138. package/dist/navigation.d.ts +0 -51
  1139. package/dist/nitro-FLN6DRGJ.mjs +0 -650
  1140. package/dist/nitro-HXAZZQKY.cjs +0 -650
  1141. package/dist/node-module-bundle-7JHPPF6B.mjs +0 -11
  1142. package/dist/node-module-bundle-YJGYBOGK.cjs +0 -11
  1143. package/dist/observability.d-B2363jB6.d.mts +0 -448
  1144. package/dist/observability.d-B2363jB6.d.ts +0 -448
  1145. package/dist/observability.d.mts +0 -2
  1146. package/dist/observability.d.ts +0 -2
  1147. package/dist/og.d.mts +0 -1
  1148. package/dist/og.d.ts +0 -1
  1149. package/dist/params.d-BALtrRim.d.ts +0 -15
  1150. package/dist/params.d-ry-lxqmy.d.mts +0 -15
  1151. package/dist/platform.cjs +0 -29
  1152. package/dist/platform.d.mts +0 -24
  1153. package/dist/platform.d.ts +0 -24
  1154. package/dist/platform.mjs +0 -29
  1155. package/dist/plugin-53SY5YBS.mjs +0 -32
  1156. package/dist/plugin-HZIBL3DW.cjs +0 -32
  1157. package/dist/plugin.d.mts +0 -58
  1158. package/dist/plugin.d.ts +0 -58
  1159. package/dist/port-C6GBH4C6.cjs +0 -419
  1160. package/dist/port-WOOQ3V56.mjs +0 -419
  1161. package/dist/production-runtime.d-CP5s6RuY.d.mts +0 -123
  1162. package/dist/production-runtime.d-N-cE3pmy.d.ts +0 -123
  1163. package/dist/production-vite.d-BQFAlG7n.d.mts +0 -13
  1164. package/dist/production-vite.d-BQFAlG7n.d.ts +0 -13
  1165. package/dist/programmatic-routes-client.d-CLG2N1yH.d.ts +0 -192
  1166. package/dist/programmatic-routes-client.d-CPbNqtIi.d.mts +0 -192
  1167. package/dist/query/client.d.mts +0 -61
  1168. package/dist/query/client.d.ts +0 -61
  1169. package/dist/query/index.d.mts +0 -90
  1170. package/dist/query/index.d.ts +0 -90
  1171. package/dist/query/parsers.d.mts +0 -29
  1172. package/dist/query/parsers.d.ts +0 -29
  1173. package/dist/query/server.d.mts +0 -55
  1174. package/dist/query/server.d.ts +0 -55
  1175. package/dist/render-plan.d-B9lAP3uX.d.ts +0 -25
  1176. package/dist/render-plan.d-DZ-qjjdG.d.mts +0 -25
  1177. package/dist/renderer/react/client.d.mts +0 -3
  1178. package/dist/renderer/react/client.d.ts +0 -3
  1179. package/dist/renderer/react/server.d.mts +0 -48
  1180. package/dist/renderer/react/server.d.ts +0 -48
  1181. package/dist/renderer/react/vite.d.mts +0 -4
  1182. package/dist/renderer/react/vite.d.ts +0 -4
  1183. package/dist/renderer-client.d.mts +0 -126
  1184. package/dist/renderer-client.d.ts +0 -126
  1185. package/dist/renderer.d.mts +0 -260
  1186. package/dist/renderer.d.ts +0 -260
  1187. package/dist/request.d-BiicaNxb.d.ts +0 -24
  1188. package/dist/request.d-DV0oeUit.d.mts +0 -24
  1189. package/dist/request.d.mts +0 -34
  1190. package/dist/request.d.ts +0 -34
  1191. package/dist/resolver.d-BHyZgpa7.d.ts +0 -14
  1192. package/dist/resolver.d-JnZKKsc5.d.mts +0 -14
  1193. package/dist/response.d-BolW0Vx_.d.mts +0 -10
  1194. package/dist/response.d-BolW0Vx_.d.ts +0 -10
  1195. package/dist/route-pattern.d-CVsVbq5n.d.mts +0 -13
  1196. package/dist/route-pattern.d-CVsVbq5n.d.ts +0 -13
  1197. package/dist/route-rendering.d-BrIKA51A.d.mts +0 -44
  1198. package/dist/route-rendering.d-Iss0C7GR.d.ts +0 -44
  1199. package/dist/route.d-BaVH3V0w.d.mts +0 -224
  1200. package/dist/route.d-DBTEqifW.d.ts +0 -224
  1201. package/dist/router.d-DjGn_al7.d.ts +0 -50
  1202. package/dist/router.d-mNTbOGV_.d.mts +0 -50
  1203. package/dist/router.d.mts +0 -36
  1204. package/dist/router.d.ts +0 -36
  1205. package/dist/routes.d-BKSjHuH9.d.ts +0 -231
  1206. package/dist/routes.d-qd8Qf4LG.d.mts +0 -231
  1207. package/dist/routes.d.mts +0 -273
  1208. package/dist/routes.d.ts +0 -273
  1209. package/dist/rsc-pipeline-SVLBTY7H.cjs +0 -83
  1210. package/dist/rsc-pipeline-WBLBDQXA.mjs +0 -83
  1211. package/dist/runtime-DGUOWSMF.cjs +0 -1313
  1212. package/dist/runtime-HFZTVNFF.mjs +0 -1313
  1213. package/dist/runtime.d-3iJAKptR.d.mts +0 -28
  1214. package/dist/runtime.d-BNVbojF1.d.mts +0 -69
  1215. package/dist/runtime.d-Bm_4hP5T.d.ts +0 -69
  1216. package/dist/runtime.d-BtL3PCL3.d.ts +0 -28
  1217. package/dist/schema-dev-notice-JMXEQWIQ.mjs +0 -54
  1218. package/dist/schema-dev-notice-PLBFDTOF.cjs +0 -54
  1219. package/dist/schema.d.mts +0 -115
  1220. package/dist/schema.d.ts +0 -115
  1221. package/dist/search-client-OXH6GBNO.mjs +0 -15
  1222. package/dist/search-client-ZZLKVO5R.cjs +0 -15
  1223. package/dist/server-action-security.d.mts +0 -45
  1224. package/dist/server-action-security.d.ts +0 -45
  1225. package/dist/server-client-bridge.d-DKWDl5NB.d.mts +0 -7
  1226. package/dist/server-client-bridge.d-DKWDl5NB.d.ts +0 -7
  1227. package/dist/server-fn-client.d.mts +0 -60
  1228. package/dist/server-fn-client.d.ts +0 -60
  1229. package/dist/server-fn-error.d-DrcH9cc1.d.mts +0 -26
  1230. package/dist/server-fn-error.d-DrcH9cc1.d.ts +0 -26
  1231. package/dist/server-fn.d.mts +0 -192
  1232. package/dist/server-fn.d.ts +0 -192
  1233. package/dist/server-plugins.d.mts +0 -65
  1234. package/dist/server-plugins.d.ts +0 -65
  1235. package/dist/server-query-client.d.mts +0 -26
  1236. package/dist/server-query-client.d.ts +0 -26
  1237. package/dist/server-query-runtime.d-DXRNhX_3.d.ts +0 -36
  1238. package/dist/server-query-runtime.d-aP52iuL5.d.mts +0 -36
  1239. package/dist/server-query.d.mts +0 -46
  1240. package/dist/server-query.d.ts +0 -46
  1241. package/dist/server.d.mts +0 -78
  1242. package/dist/server.d.ts +0 -78
  1243. package/dist/session-2Q72D4QV.cjs +0 -23
  1244. package/dist/session-QZXZOPR2.mjs +0 -23
  1245. package/dist/shell-render.d-CG6bPiiA.d.mts +0 -41
  1246. package/dist/shell-render.d-CG6bPiiA.d.ts +0 -41
  1247. package/dist/spa-router.d-DAtnNoBe.d.ts +0 -248
  1248. package/dist/spa-router.d-DHDoXxDE.d.mts +0 -248
  1249. package/dist/storage.d.mts +0 -60
  1250. package/dist/storage.d.ts +0 -60
  1251. package/dist/testing.d.mts +0 -110
  1252. package/dist/testing.d.ts +0 -110
  1253. package/dist/theme/client.d.mts +0 -10
  1254. package/dist/theme/client.d.ts +0 -10
  1255. package/dist/theme/index.d.mts +0 -6
  1256. package/dist/theme/index.d.ts +0 -6
  1257. package/dist/theme/runtime.d.mts +0 -13
  1258. package/dist/theme/runtime.d.ts +0 -13
  1259. package/dist/theme/server.d.mts +0 -8
  1260. package/dist/theme/server.d.ts +0 -8
  1261. package/dist/types.d-BnIqOn9w.d.mts +0 -73
  1262. package/dist/types.d-BnIqOn9w.d.ts +0 -73
  1263. package/dist/types.d-C41ePjvP.d.mts +0 -85
  1264. package/dist/types.d-C41ePjvP.d.ts +0 -85
  1265. package/dist/types.d-DQnyD3VD.d.mts +0 -30
  1266. package/dist/types.d-DQnyD3VD.d.ts +0 -30
  1267. package/dist/utils.d-DwZ-KLSB.d.ts +0 -54
  1268. package/dist/utils.d-uKZcKJk4.d.mts +0 -54
  1269. package/dist/version.d.mts +0 -3
  1270. package/dist/version.d.ts +0 -3
  1271. package/dist/vite.d.mts +0 -168
  1272. package/dist/vite.d.ts +0 -168
  1273. package/dist/workflows.d-CRMzQZ3k.d.mts +0 -188
  1274. package/dist/workflows.d-CRMzQZ3k.d.ts +0 -188
  1275. package/dist/workflows.d.mts +0 -1
  1276. package/dist/workflows.d.ts +0 -1
@@ -0,0 +1,1101 @@
1
+ import {
2
+ FARM_DEFAULT_MCP_TOOLS
3
+ } from "./chunk-UH6QN5NL.mjs";
4
+ import {
5
+ DEFAULT_ERROR_STYLES
6
+ } from "./chunk-XAXTTBUT.mjs";
7
+ import {
8
+ serializeFarmLlmsTxt
9
+ } from "./chunk-DTSROJ5J.mjs";
10
+ import {
11
+ emitFarmAgentRead
12
+ } from "./chunk-MVL2RAJW.mjs";
13
+ import {
14
+ resolveFarmThemeConfig
15
+ } from "./chunk-AELACLOB.mjs";
16
+ import {
17
+ omitFarmResponseBody
18
+ } from "./chunk-5WI2S4CO.mjs";
19
+ import {
20
+ _listFarmMCPCatalogs,
21
+ _listFarmRegisteredMCPServers
22
+ } from "./chunk-ZLAT2CWY.mjs";
23
+ import {
24
+ createFarmWeakETag,
25
+ matchesFarmIfNoneMatch
26
+ } from "./chunk-ZMMBIVQM.mjs";
27
+ import {
28
+ resolveFarmAPIServerBasePath,
29
+ resolveFarmAPIServerRoutePath
30
+ } from "./chunk-BTHHUD7Q.mjs";
31
+ import {
32
+ FARM_VERSION
33
+ } from "./chunk-OO7GXVSR.mjs";
34
+ import {
35
+ localizeFarmPathname
36
+ } from "./chunk-L3KT7IXV.mjs";
37
+ import {
38
+ applyFarmBasePath
39
+ } from "./chunk-4RB44K6Z.mjs";
40
+ import {
41
+ __name
42
+ } from "./chunk-LPEX4YW6.mjs";
43
+
44
+ // src/routing/route-groups.ts
45
+ function isRouteGroupSegment(part) {
46
+ return part.startsWith("(") && part.endsWith(")");
47
+ }
48
+ __name(isRouteGroupSegment, "isRouteGroupSegment");
49
+ function formatRouteSegment(segment) {
50
+ if (!segment.isDynamic) return segment.segment;
51
+ if (segment.isCatchAll) {
52
+ return segment.isOptional ? `[[...${segment.segment}]]` : `[...${segment.segment}]`;
53
+ }
54
+ return `[${segment.segment}]`;
55
+ }
56
+ __name(formatRouteSegment, "formatRouteSegment");
57
+ function createRouteDirectoryPattern(route) {
58
+ const parts = route.filePath.replace(/\\/g, "/").split("/").filter(Boolean);
59
+ parts.pop();
60
+ if (parts.length === 0) return "/";
61
+ let segmentIndex = 0;
62
+ const directory = parts.map((part) => {
63
+ if (isRouteGroupSegment(part)) return part;
64
+ const segment = route.segments[segmentIndex++];
65
+ return segment ? formatRouteSegment(segment) : part;
66
+ });
67
+ return `/${directory.join("/")}`;
68
+ }
69
+ __name(createRouteDirectoryPattern, "createRouteDirectoryPattern");
70
+ function stripRouteGroups(pattern) {
71
+ if (!pattern.includes("(")) return pattern;
72
+ const parts = pattern.split("/").filter((part) => part && !isRouteGroupSegment(part));
73
+ return parts.length === 0 ? "/" : `/${parts.join("/")}`;
74
+ }
75
+ __name(stripRouteGroups, "stripRouteGroups");
76
+ function getRouteGroupScope(pattern) {
77
+ if (!pattern.includes("(")) return null;
78
+ const parts = pattern.split("/");
79
+ for (let index = parts.length - 1; index > 0; index--) {
80
+ if (isRouteGroupSegment(parts[index])) return parts.slice(0, index + 1).join("/");
81
+ }
82
+ return null;
83
+ }
84
+ __name(getRouteGroupScope, "getRouteGroupScope");
85
+ function isInRouteGroupScope(directory, scope) {
86
+ if (scope === null) return true;
87
+ if (typeof directory !== "string") return false;
88
+ return directory === scope || directory.startsWith(`${scope}/`);
89
+ }
90
+ __name(isInRouteGroupScope, "isInRouteGroupScope");
91
+ function getRouteDirectoryDepth(pattern) {
92
+ return pattern.split("/").filter(Boolean).length;
93
+ }
94
+ __name(getRouteDirectoryDepth, "getRouteDirectoryDepth");
95
+ function routeBoundaryCoversDirectory(boundaryPattern, directory) {
96
+ const boundaryUrl = stripRouteGroups(boundaryPattern);
97
+ const routeUrl = stripRouteGroups(directory);
98
+ return (boundaryUrl === "/" || routeUrl === boundaryUrl || routeUrl.startsWith(`${boundaryUrl.replace(/\/$/, "")}/`)) && isInRouteGroupScope(directory, getRouteGroupScope(boundaryPattern));
99
+ }
100
+ __name(routeBoundaryCoversDirectory, "routeBoundaryCoversDirectory");
101
+
102
+ // src/server/full-document.ts
103
+ var CONTENTS_WRAPPER = /^<div\b[^>]*style="display\s*:\s*contents"[^>]*>/i;
104
+ var HOISTED_HEAD_ELEMENT = /^(?:<(?:meta|link|base)\b[^>]*>|<title\b[^>]*>[\s\S]*?<\/title>|<script\b[^>]*\basync\b[^>]*><\/script>|<style\b[^>]*\bdata-precedence\b[^>]*>[\s\S]*?<\/style>)/i;
105
+ function peelDocumentPrefix(markup) {
106
+ let inner = markup.replace(/^\s+/, "");
107
+ let hoisted = "";
108
+ let match;
109
+ while (match = CONTENTS_WRAPPER.exec(inner) ?? HOISTED_HEAD_ELEMENT.exec(inner)) {
110
+ if (!/^<div/i.test(match[0])) hoisted += match[0];
111
+ inner = inner.slice(match[0].length).replace(/^\s+/, "");
112
+ }
113
+ return { inner, hoisted };
114
+ }
115
+ __name(peelDocumentPrefix, "peelDocumentPrefix");
116
+ function restoreHoistedHead(document, hoisted) {
117
+ if (!hoisted) return document;
118
+ if (/<head[\s>]/i.test(document)) {
119
+ return document.replace(/<head\b[^>]*>/i, (open) => open + hoisted);
120
+ }
121
+ return document.replace(/<html\b[^>]*>/i, (open) => `${open}<head>${hoisted}</head>`);
122
+ }
123
+ __name(restoreHoistedHead, "restoreHoistedHead");
124
+ function extractFarmFullDocument(markup) {
125
+ const { inner, hoisted } = peelDocumentPrefix(markup);
126
+ if (!/^<!doctype/i.test(inner) && !/^<html[\s>]/i.test(inner)) return null;
127
+ const start = markup.search(/<!doctype|<html[\s>]/i);
128
+ const lower = markup.toLowerCase();
129
+ let closeIndex = lower.lastIndexOf("</html>");
130
+ if (lower.length !== markup.length) {
131
+ closeIndex = -1;
132
+ const closing = /<\/html>/gi;
133
+ let match;
134
+ while (match = closing.exec(markup)) closeIndex = match.index;
135
+ }
136
+ if (start < 0 || closeIndex < 0) return null;
137
+ const closeEnd = closeIndex + "</html>".length;
138
+ let document = markup.slice(start, closeEnd);
139
+ const streamedTail = markup.slice(closeEnd).replace(/^(?:\s*<\/div>)+/i, "").trim();
140
+ if (streamedTail) {
141
+ document = document.replace(/<\/body>/i, () => `${streamedTail}</body>`);
142
+ }
143
+ return restoreHoistedHead(document, hoisted);
144
+ }
145
+ __name(extractFarmFullDocument, "extractFarmFullDocument");
146
+ function classifyFarmDocumentPrefix(markup) {
147
+ const { inner } = peelDocumentPrefix(markup);
148
+ if (/^<!doctype/i.test(inner) || /^<html[\s>]/i.test(inner)) return "document";
149
+ return inner === "" ? "pending" : "fragment";
150
+ }
151
+ __name(classifyFarmDocumentPrefix, "classifyFarmDocumentPrefix");
152
+ function ensureFarmDocumentHead(markup) {
153
+ if (/<head[\s>]/i.test(markup)) return markup;
154
+ return markup.replace(/<html([^>]*)>/i, (_match, attributes) => {
155
+ return `<html${attributes}><head></head>`;
156
+ });
157
+ }
158
+ __name(ensureFarmDocumentHead, "ensureFarmDocumentHead");
159
+ function ensureFarmDocumentRoot(markup) {
160
+ if (/<body\b[^>]*>\s*<div\b[^>]*\sid=["']root["']/i.test(markup)) return markup;
161
+ return markup.replace(
162
+ /<body\b([^>]*)>/i,
163
+ (_match, attributes) => `<body${attributes}><div id="root">`
164
+ ).replace(/<\/body>/i, () => "</div></body>");
165
+ }
166
+ __name(ensureFarmDocumentRoot, "ensureFarmDocumentRoot");
167
+ function hasFarmDocumentIcon(markup) {
168
+ return /<link\b[^>]*\brel=["']?(?:shortcut )?icon\b/i.test(markup);
169
+ }
170
+ __name(hasFarmDocumentIcon, "hasFarmDocumentIcon");
171
+ function removeFarmDocumentTitles(markup) {
172
+ return markup.replace(/<title\b[^>]*>[\s\S]*?<\/title>\s*/gi, "");
173
+ }
174
+ __name(removeFarmDocumentTitles, "removeFarmDocumentTitles");
175
+ function ensureFarmDocumentMeta(markup, viewport = "") {
176
+ const head = /<head\b[^>]*>([\s\S]*?)<\/head>/i.exec(markup)?.[1] ?? "";
177
+ const hasNamedMeta = /* @__PURE__ */ __name((name) => new RegExp(`<meta\\b[^>]*\\bname=["']?${name}(?=["'\\s/>])`, "i").test(head), "hasNamedMeta");
178
+ const tags = [
179
+ /<meta\b[^>]*\bcharset\s*=/i.test(head) ? "" : '<meta charset="utf-8">',
180
+ ...(viewport.match(/<meta\b[^>]*>/gi) ?? []).filter((tag) => {
181
+ const name = /\bname="([\w-]+)"/.exec(tag)?.[1];
182
+ return !name || !hasNamedMeta(name);
183
+ })
184
+ ].filter(Boolean);
185
+ if (tags.length === 0) return markup;
186
+ return markup.replace(/<head\b[^>]*>/i, (open) => `${open}${tags.join("")}`);
187
+ }
188
+ __name(ensureFarmDocumentMeta, "ensureFarmDocumentMeta");
189
+ function composeFarmFullDocument(documentHtml, assets) {
190
+ let html = ensureFarmDocumentMeta(ensureFarmDocumentHead(documentHtml), assets.viewport);
191
+ if (assets.htmlAttributes) {
192
+ html = html.replace(/<html\b([^>]*)>/i, (_match, attrs) => {
193
+ let nextAttributes = attrs;
194
+ for (const name of assets.replaceHtmlAttributes ?? []) {
195
+ const escapedName = name.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
196
+ nextAttributes = nextAttributes.replace(
197
+ new RegExp("\\s+" + escapedName + `=(?:"[^"]*"|'[^']*'|[^\\s>]+)`, "gi"),
198
+ ""
199
+ );
200
+ }
201
+ return `<html${nextAttributes}${assets.htmlAttributes}>`;
202
+ });
203
+ }
204
+ html = ensureFarmDocumentRoot(html);
205
+ const headAssets = [
206
+ assets.fallbackIcon && !hasFarmDocumentIcon(html) ? '<link rel="icon" href="data:,">' : "",
207
+ assets.headAssets
208
+ ].filter(Boolean).join("\n ");
209
+ if (headAssets) {
210
+ html = html.replace(/<\/head>/i, () => ` ${headAssets}
211
+ </head>`);
212
+ }
213
+ if (assets.bodyFooter) {
214
+ html = html.replace(/<\/body>/i, () => ` ${assets.bodyFooter}
215
+ </body>`);
216
+ }
217
+ return /^\s*<!doctype/i.test(html) ? html : `<!DOCTYPE html>
218
+ ${html}`;
219
+ }
220
+ __name(composeFarmFullDocument, "composeFarmFullDocument");
221
+
222
+ // src/i18n/alternates.ts
223
+ function renderFarmLocaleAlternateLinks(pathname, config, options = {}) {
224
+ if (config.routing === "none") return "";
225
+ const base = resolveAlternateBase(options);
226
+ const link = /* @__PURE__ */ __name((hreflang, locale) => `<link rel="alternate" hreflang="${escapeHtmlAttribute(hreflang)}" href="${escapeHtmlAttribute(
227
+ resolveAlternateHref(localizeFarmPathname(pathname, locale, config), base)
228
+ )}">`, "link");
229
+ const links = config.locales.map((locale) => link(locale, locale));
230
+ links.push(link("x-default", config.defaultLocale));
231
+ return links.join("");
232
+ }
233
+ __name(renderFarmLocaleAlternateLinks, "renderFarmLocaleAlternateLinks");
234
+ function resolveAlternateBase(options) {
235
+ for (const candidate of [options.metadataBase, options.origin]) {
236
+ if (typeof candidate !== "string" && !(candidate instanceof URL)) continue;
237
+ try {
238
+ const url = new URL(candidate);
239
+ if (url.protocol === "http:" || url.protocol === "https:") return url;
240
+ } catch {
241
+ }
242
+ }
243
+ return void 0;
244
+ }
245
+ __name(resolveAlternateBase, "resolveAlternateBase");
246
+ function resolveAlternateHref(pathname, base) {
247
+ if (!base) return pathname;
248
+ return new URL(pathname.replace(/^[/\\]+/, "/"), base).href;
249
+ }
250
+ __name(resolveAlternateHref, "resolveAlternateHref");
251
+ function escapeHtmlAttribute(value) {
252
+ return value.replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
253
+ }
254
+ __name(escapeHtmlAttribute, "escapeHtmlAttribute");
255
+
256
+ // src/navigation/late-navigation-recovery.ts
257
+ var PAGE_CONTAINER_ID = "__farm_page__";
258
+ var TEMPLATE_ID = "__farm_late_not_found__";
259
+ function serializeForInlineScript(value) {
260
+ return JSON.stringify(value).replace(/</g, "\\u003c").replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029");
261
+ }
262
+ __name(serializeForInlineScript, "serializeForInlineScript");
263
+ function isLateRedirectTarget(url) {
264
+ try {
265
+ const protocol = new URL(url, "https://farm.invalid").protocol;
266
+ return protocol === "http:" || protocol === "https:";
267
+ } catch {
268
+ return false;
269
+ }
270
+ }
271
+ __name(isLateRedirectTarget, "isLateRedirectTarget");
272
+ function createLateRedirectRecovery(url) {
273
+ if (!isLateRedirectTarget(url)) return "";
274
+ return `<script>window.location.replace(${serializeForInlineScript(url)})</script>`;
275
+ }
276
+ __name(createLateRedirectRecovery, "createLateRedirectRecovery");
277
+ function createLateNotFoundRecovery(content) {
278
+ return `<template id="${TEMPLATE_ID}">${content}</template><script>(function(){var t=document.getElementById("${TEMPLATE_ID}");var p=document.getElementById("${PAGE_CONTAINER_ID}");if(t&&p){p.replaceChildren(t.content.cloneNode(true));}if(t)t.remove();document.documentElement.dataset.farmLateNotFound="true";var m=document.createElement("meta");m.name="robots";m.content="noindex";document.head.appendChild(m);})();</script>`;
279
+ }
280
+ __name(createLateNotFoundRecovery, "createLateNotFoundRecovery");
281
+
282
+ // src/metadata-route.ts
283
+ function isResponse(value) {
284
+ return typeof Response !== "undefined" && (value instanceof Response || Boolean(
285
+ value && typeof value === "object" && typeof value.arrayBuffer === "function" && value.headers
286
+ ));
287
+ }
288
+ __name(isResponse, "isResponse");
289
+ function isRecord(value) {
290
+ return Boolean(value && typeof value === "object" && !Array.isArray(value));
291
+ }
292
+ __name(isRecord, "isRecord");
293
+ function resolveCacheControl(revalidate) {
294
+ if (revalidate === false) {
295
+ return "public, max-age=31536000, immutable";
296
+ }
297
+ if (typeof revalidate === "number" && Number.isFinite(revalidate) && revalidate > 0) {
298
+ return `public, s-maxage=${Math.floor(revalidate)}, stale-while-revalidate=300`;
299
+ }
300
+ return "public, max-age=0, must-revalidate";
301
+ }
302
+ __name(resolveCacheControl, "resolveCacheControl");
303
+ function escapeXml(value) {
304
+ return String(value).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&apos;");
305
+ }
306
+ __name(escapeXml, "escapeXml");
307
+ function serializeSitemap(value) {
308
+ if (!Array.isArray(value)) {
309
+ throw new TypeError("sitemap.ts must return an array or a Response");
310
+ }
311
+ const entries = value.map((candidate, index) => {
312
+ if (!isRecord(candidate) || typeof candidate.url !== "string" || !candidate.url) {
313
+ throw new TypeError(`sitemap.ts entry ${index} must include a non-empty url`);
314
+ }
315
+ return candidate;
316
+ });
317
+ const hasLanguageAlternates = entries.some(
318
+ (entry) => entry.alternates?.languages && Object.keys(entry.alternates.languages).length > 0
319
+ );
320
+ const namespace = hasLanguageAlternates ? ' xmlns:xhtml="http://www.w3.org/1999/xhtml"' : "";
321
+ const lines = [
322
+ '<?xml version="1.0" encoding="UTF-8"?>',
323
+ `<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"${namespace}>`
324
+ ];
325
+ for (const entry of entries) {
326
+ lines.push(" <url>", ` <loc>${escapeXml(entry.url)}</loc>`);
327
+ if (entry.lastModified !== void 0) {
328
+ const lastModified = entry.lastModified instanceof Date ? entry.lastModified.toISOString() : entry.lastModified;
329
+ lines.push(` <lastmod>${escapeXml(lastModified)}</lastmod>`);
330
+ }
331
+ if (entry.changeFrequency) {
332
+ lines.push(` <changefreq>${escapeXml(entry.changeFrequency)}</changefreq>`);
333
+ }
334
+ if (entry.priority !== void 0) {
335
+ lines.push(` <priority>${escapeXml(entry.priority)}</priority>`);
336
+ }
337
+ for (const [language, href] of Object.entries(entry.alternates?.languages || {})) {
338
+ lines.push(
339
+ ` <xhtml:link rel="alternate" hreflang="${escapeXml(language)}" href="${escapeXml(href)}" />`
340
+ );
341
+ }
342
+ lines.push(" </url>");
343
+ }
344
+ lines.push("</urlset>");
345
+ return `${lines.join("\n")}
346
+ `;
347
+ }
348
+ __name(serializeSitemap, "serializeSitemap");
349
+ function toArray(value) {
350
+ return value === void 0 ? [] : Array.isArray(value) ? value : [value];
351
+ }
352
+ __name(toArray, "toArray");
353
+ function serializeRobots(value) {
354
+ if (!isRecord(value)) {
355
+ throw new TypeError("robots.ts must return a robots object or a Response");
356
+ }
357
+ const robots = value;
358
+ const rules = toArray(robots.rules);
359
+ if (rules.length === 0) {
360
+ throw new TypeError("robots.ts must return at least one rule");
361
+ }
362
+ const sections = rules.map((rule, index) => {
363
+ if (!isRecord(rule)) {
364
+ throw new TypeError(`robots.ts rule ${index} must be an object`);
365
+ }
366
+ const userAgents = toArray(rule.userAgent).filter(
367
+ (userAgent) => typeof userAgent === "string" && Boolean(userAgent)
368
+ );
369
+ if (userAgents.length === 0) {
370
+ throw new TypeError(`robots.ts rule ${index} must include a userAgent`);
371
+ }
372
+ const lines = userAgents.map((userAgent) => `User-agent: ${userAgent}`);
373
+ for (const allow of toArray(rule.allow)) lines.push(`Allow: ${allow}`);
374
+ for (const disallow of toArray(rule.disallow)) lines.push(`Disallow: ${disallow}`);
375
+ if (rule.crawlDelay !== void 0) lines.push(`Crawl-delay: ${rule.crawlDelay}`);
376
+ return lines.join("\n");
377
+ });
378
+ const globalLines = [
379
+ ...toArray(robots.sitemap).map((sitemap) => `Sitemap: ${sitemap}`),
380
+ ...robots.host ? [`Host: ${robots.host}`] : []
381
+ ];
382
+ return `${[...sections, ...globalLines.length ? [globalLines.join("\n")] : []].join("\n\n")}
383
+ `;
384
+ }
385
+ __name(serializeRobots, "serializeRobots");
386
+ function serializeManifest(value) {
387
+ if (!isRecord(value)) {
388
+ throw new TypeError("manifest.ts must return a manifest object or a Response");
389
+ }
390
+ return `${JSON.stringify(value, null, 2)}
391
+ `;
392
+ }
393
+ __name(serializeManifest, "serializeManifest");
394
+ function createFarmMetadataRouteResponse(kind, value, routeModule = {}, options = {}) {
395
+ const method = (options.method || "GET").toUpperCase();
396
+ if (method !== "GET" && method !== "HEAD") {
397
+ return new Response(null, { status: 405, headers: { Allow: "GET, HEAD" } });
398
+ }
399
+ if ((kind === "llms" || kind === "llms-full") && options.request) {
400
+ emitFarmAgentRead(options.request, kind, isResponse(value) ? value.status : 200);
401
+ }
402
+ if (isResponse(value)) {
403
+ return method === "HEAD" ? omitFarmResponseBody(value) : value;
404
+ }
405
+ const body = kind === "sitemap" ? serializeSitemap(value) : kind === "robots" ? serializeRobots(value) : kind === "llms" || kind === "llms-full" ? serializeFarmLlmsTxt(value) : serializeManifest(value);
406
+ const contentType = kind === "sitemap" ? "application/xml; charset=utf-8" : kind === "robots" || kind === "llms" || kind === "llms-full" ? "text/plain; charset=utf-8" : "application/manifest+json; charset=utf-8";
407
+ return new Response(method === "HEAD" ? null : body, {
408
+ headers: {
409
+ "Content-Type": contentType,
410
+ "Cache-Control": resolveCacheControl(routeModule.revalidate),
411
+ "X-Content-Type-Options": "nosniff"
412
+ }
413
+ });
414
+ }
415
+ __name(createFarmMetadataRouteResponse, "createFarmMetadataRouteResponse");
416
+
417
+ // src/ai-catalog.ts
418
+ var FARM_AI_CATALOG_PATH = "/.well-known/ai-catalog.json";
419
+ var FARM_ARD_PATH = "/.well-known/ard.json";
420
+ var FARM_MCP_SERVER_CARD_SUFFIX = "/server-card";
421
+ var SERVER_CARD_SCHEMA = "https://static.modelcontextprotocol.io/schemas/v1/server-card.schema.json";
422
+ var SERVER_CARD_TYPE = "application/mcp-server-card+json";
423
+ var AI_CATALOG_TYPE = "application/ai-catalog+json";
424
+ var CARD_DESCRIPTION_MAX = 100;
425
+ var REVERSE_DNS_NAME = /^[a-zA-Z0-9.-]+\/[a-zA-Z0-9._-]+$/;
426
+ function listFarmMCPServerSources(input) {
427
+ const sources = /* @__PURE__ */ new Map();
428
+ for (const { server, details } of _listFarmMCPCatalogs()) {
429
+ const endpoint = resolveFarmAPIServerRoutePath(server.path, input.apiServerBasePath);
430
+ if (sources.has(endpoint)) continue;
431
+ sources.set(endpoint, {
432
+ ...server,
433
+ protocolVersions: details?.protocolVersions,
434
+ endpoint,
435
+ local: true
436
+ });
437
+ }
438
+ for (const server of _listFarmRegisteredMCPServers()) {
439
+ const endpoint = server.path ? applyFarmBasePath(server.path, input.basePath) : server.url;
440
+ if (sources.has(endpoint)) continue;
441
+ sources.set(endpoint, { ...server, endpoint, local: Boolean(server.path) });
442
+ }
443
+ if (sources.size === 0 && input.defaultMCP) {
444
+ const server = input.defaultMCP();
445
+ if (server) {
446
+ const endpoint = applyFarmBasePath(server.path, input.basePath);
447
+ sources.set(endpoint, { ...server, endpoint, local: true });
448
+ }
449
+ }
450
+ return [...sources.values()];
451
+ }
452
+ __name(listFarmMCPServerSources, "listFarmMCPServerSources");
453
+ function serverCardLocation(endpoint) {
454
+ return `${endpoint.replace(/\/$/, "")}${FARM_MCP_SERVER_CARD_SUFFIX}`;
455
+ }
456
+ __name(serverCardLocation, "serverCardLocation");
457
+ function listFarmMCPServerCards(origin, input = {}) {
458
+ const host = new URL(origin).hostname;
459
+ return listFarmMCPServerSources(input).map((server) => {
460
+ const endpointUrl = server.local ? `${origin}${server.endpoint}` : server.endpoint;
461
+ const cardPath = server.local ? serverCardLocation(server.endpoint) : void 0;
462
+ const slug = cardSlug(server.name);
463
+ const description = truncate(server.description?.trim() || `MCP server for ${host}`);
464
+ const card = {
465
+ $schema: SERVER_CARD_SCHEMA,
466
+ // The card's name is reverse-DNS; a plain server name is namespaced by the host.
467
+ name: REVERSE_DNS_NAME.test(server.name) ? server.name : `${cardNamespace(host)}/${slug}`,
468
+ version: server.version,
469
+ description,
470
+ ...server.title ? { title: server.title } : {},
471
+ websiteUrl: `${origin}${applyFarmBasePath("/", input.basePath).replace(/(.)\/$/, "$1")}`,
472
+ remotes: [
473
+ {
474
+ type: "streamable-http",
475
+ url: endpointUrl,
476
+ ...server.protocolVersions?.length ? { supportedProtocolVersions: [...server.protocolVersions] } : {}
477
+ }
478
+ ]
479
+ };
480
+ return {
481
+ ...cardPath ? { cardPath } : {},
482
+ card,
483
+ entry: {
484
+ identifier: `urn:air:${host}:mcp:${slug}`,
485
+ type: SERVER_CARD_TYPE,
486
+ url: cardPath ? `${origin}${cardPath}` : serverCardLocation(endpointUrl),
487
+ displayName: server.title ?? server.name,
488
+ description,
489
+ version: server.version
490
+ }
491
+ };
492
+ });
493
+ }
494
+ __name(listFarmMCPServerCards, "listFarmMCPServerCards");
495
+ function listFarmMCPLlmsTxtLinks(origin, input = {}) {
496
+ const servers = listFarmMCPServerCards(origin, input);
497
+ if (!servers.length) return [];
498
+ return [
499
+ ...servers.map(({ card, entry }) => ({
500
+ title: entry.displayName,
501
+ url: card.remotes[0].url,
502
+ description: `${card.description} (Streamable HTTP MCP endpoint; server card at ${entry.url})`
503
+ })),
504
+ {
505
+ title: "AI catalog",
506
+ url: `${origin}${applyFarmBasePath(FARM_AI_CATALOG_PATH, input.basePath)}`,
507
+ description: "MCP server cards for this site"
508
+ }
509
+ ];
510
+ }
511
+ __name(listFarmMCPLlmsTxtLinks, "listFarmMCPLlmsTxtLinks");
512
+ function createFarmAiCatalogResponse(request, input = {}, requestUrl) {
513
+ let url;
514
+ try {
515
+ url = requestUrl ?? new URL(request.url);
516
+ } catch {
517
+ return null;
518
+ }
519
+ const { pathname } = url;
520
+ if (!pathname.endsWith(FARM_MCP_SERVER_CARD_SUFFIX) && !pathname.includes("/.well-known/")) {
521
+ return null;
522
+ }
523
+ const ard = pathname === applyFarmBasePath(FARM_ARD_PATH, input.basePath);
524
+ const catalogPath = ard || pathname === applyFarmBasePath(FARM_AI_CATALOG_PATH, input.basePath);
525
+ if (!catalogPath && !pathname.endsWith(FARM_MCP_SERVER_CARD_SUFFIX)) return null;
526
+ const servers = listFarmMCPServerCards(url.origin, input);
527
+ const card = catalogPath ? void 0 : servers.find((server) => server.cardPath === pathname);
528
+ if (!servers.length || !catalogPath && !card) return null;
529
+ const method = request.method.toUpperCase();
530
+ if (method === "OPTIONS") return new Response(null, { status: 204, headers: corsHeaders() });
531
+ if (method !== "GET" && method !== "HEAD") {
532
+ return new Response("Method Not Allowed", {
533
+ status: 405,
534
+ headers: { ...corsHeaders(), Allow: "GET, HEAD, OPTIONS", "Content-Type": "text/plain" }
535
+ });
536
+ }
537
+ const body = JSON.stringify(
538
+ card ? card.card : { specVersion: "1.0", entries: servers.map(({ entry }) => entry) }
539
+ );
540
+ const etag = createFarmWeakETag(body);
541
+ const headers = {
542
+ ...corsHeaders(),
543
+ "Content-Type": card ? `${SERVER_CARD_TYPE}; charset=utf-8` : ard ? "application/json; charset=utf-8" : `${AI_CATALOG_TYPE}; charset=utf-8`,
544
+ // The body names the request's origin, so caches revalidate rather than reuse it.
545
+ "Cache-Control": "public, max-age=0, must-revalidate",
546
+ ETag: etag,
547
+ "X-Content-Type-Options": "nosniff"
548
+ };
549
+ if (matchesFarmIfNoneMatch(request.headers.get("if-none-match"), etag)) {
550
+ return new Response(null, { status: 304, headers });
551
+ }
552
+ emitFarmAgentRead(request, card ? "mcp-server-card" : "ai-catalog", 200);
553
+ return new Response(method === "HEAD" ? null : body, { status: 200, headers });
554
+ }
555
+ __name(createFarmAiCatalogResponse, "createFarmAiCatalogResponse");
556
+ function corsHeaders() {
557
+ return {
558
+ "Access-Control-Allow-Origin": "*",
559
+ "Access-Control-Allow-Methods": "GET, HEAD, OPTIONS",
560
+ "Access-Control-Allow-Headers": "Content-Type, If-None-Match",
561
+ "Access-Control-Expose-Headers": "ETag"
562
+ };
563
+ }
564
+ __name(corsHeaders, "corsHeaders");
565
+ function cardNamespace(host) {
566
+ if (host.includes(":") || /^\d+(?:\.\d+){3}$/.test(host)) return "local";
567
+ return host.split(".").reverse().join(".");
568
+ }
569
+ __name(cardNamespace, "cardNamespace");
570
+ function cardSlug(name) {
571
+ const last = name.includes("/") ? name.slice(name.lastIndexOf("/") + 1) : name;
572
+ return last.toLowerCase().replace(/[^a-z0-9._-]+/g, "-").replace(/^-+|-+$/g, "") || "mcp";
573
+ }
574
+ __name(cardSlug, "cardSlug");
575
+ function truncate(text) {
576
+ return text.length <= CARD_DESCRIPTION_MAX ? text : `${text.slice(0, CARD_DESCRIPTION_MAX - 1).trimEnd()}\u2026`;
577
+ }
578
+ __name(truncate, "truncate");
579
+
580
+ // src/components/error-page.ts
581
+ var ERROR_STATUS_TEXT = {
582
+ 400: "Bad Request",
583
+ 401: "Unauthorized",
584
+ 402: "Payment Required",
585
+ 403: "Forbidden",
586
+ 404: "Not Found",
587
+ 405: "Method Not Allowed",
588
+ 406: "Not Acceptable",
589
+ 408: "Request Timeout",
590
+ 409: "Conflict",
591
+ 410: "Gone",
592
+ 411: "Length Required",
593
+ 412: "Precondition Failed",
594
+ 413: "Content Too Large",
595
+ 414: "URI Too Long",
596
+ 415: "Unsupported Media Type",
597
+ 416: "Range Not Satisfiable",
598
+ 418: "I'm a Teapot",
599
+ 422: "Unprocessable Content",
600
+ 423: "Locked",
601
+ 424: "Failed Dependency",
602
+ 425: "Too Early",
603
+ 426: "Upgrade Required",
604
+ 428: "Precondition Required",
605
+ 429: "Too Many Requests",
606
+ 431: "Request Header Fields Too Large",
607
+ 451: "Unavailable For Legal Reasons",
608
+ 500: "Internal Server Error",
609
+ 501: "Not Implemented",
610
+ 502: "Bad Gateway",
611
+ 503: "Service Unavailable",
612
+ 504: "Gateway Timeout",
613
+ 505: "HTTP Version Not Supported",
614
+ 506: "Variant Also Negotiates",
615
+ 507: "Insufficient Storage",
616
+ 508: "Loop Detected",
617
+ 510: "Not Extended",
618
+ 511: "Network Authentication Required"
619
+ };
620
+ var ERROR_TITLES = {
621
+ 400: "This request could not be completed",
622
+ 401: "Authentication is required",
623
+ 403: "You do not have access to this page",
624
+ 404: "This page could not be found",
625
+ 405: "This request method is not supported",
626
+ 408: "The request took too long",
627
+ 409: "The request conflicts with the current state",
628
+ 410: "This resource is no longer available",
629
+ 413: "The request is too large",
630
+ 422: "The request could not be processed",
631
+ 429: "Too many requests were sent",
632
+ 500: "Something went wrong",
633
+ 501: "This operation is not implemented",
634
+ 502: "An upstream service returned an invalid response",
635
+ 503: "The service is temporarily unavailable",
636
+ 504: "An upstream service took too long to respond"
637
+ };
638
+ var ERROR_PUBLIC_MESSAGES = {
639
+ 400: "Check the request details, then try again.",
640
+ 401: "Sign in and try this request again.",
641
+ 403: "Use an account with the required permissions or return home.",
642
+ 404: "Check the address or return to the home page.",
643
+ 405: "Use a supported request method and try again.",
644
+ 408: "Try the request again in a moment.",
645
+ 409: "Refresh the page, review the latest state, and try again.",
646
+ 410: "Return home to continue browsing.",
647
+ 413: "Reduce the request size and try again.",
648
+ 422: "Review the request data and try again.",
649
+ 429: "Wait a moment before trying again.",
650
+ 500: "The application ran into an unexpected problem. Try again in a moment.",
651
+ 501: "This operation is not available yet.",
652
+ 502: "Try again after the upstream service recovers.",
653
+ 503: "Try again in a moment.",
654
+ 504: "Try again after the upstream service recovers."
655
+ };
656
+ function escapeHtml(value) {
657
+ return String(value ?? "").replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
658
+ }
659
+ __name(escapeHtml, "escapeHtml");
660
+ function serializeJsonForHtml(value) {
661
+ return JSON.stringify(value).replace(/</g, "\\u003c").replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029");
662
+ }
663
+ __name(serializeJsonForHtml, "serializeJsonForHtml");
664
+ function normalizeErrorStatus(status) {
665
+ const value = typeof status === "string" && status.trim() ? Number(status) : status;
666
+ return typeof value === "number" && Number.isInteger(value) && value >= 400 && value <= 599 ? value : void 0;
667
+ }
668
+ __name(normalizeErrorStatus, "normalizeErrorStatus");
669
+ function resolveDefaultErrorStatus(error) {
670
+ if (error && typeof error === "object") {
671
+ const candidate = error;
672
+ return normalizeErrorStatus(candidate.status) ?? normalizeErrorStatus(candidate.statusCode) ?? 500;
673
+ }
674
+ return 500;
675
+ }
676
+ __name(resolveDefaultErrorStatus, "resolveDefaultErrorStatus");
677
+ function getDefaultErrorStatusText(statusCode) {
678
+ return ERROR_STATUS_TEXT[statusCode] || (statusCode >= 500 ? "Server Error" : "Request Error");
679
+ }
680
+ __name(getDefaultErrorStatusText, "getDefaultErrorStatusText");
681
+ function getDefaultErrorTitle(statusCode) {
682
+ return ERROR_TITLES[statusCode] || (statusCode >= 500 ? "The server could not complete the request" : "The request could not be completed");
683
+ }
684
+ __name(getDefaultErrorTitle, "getDefaultErrorTitle");
685
+ function getDefaultErrorPublicMessage(statusCode) {
686
+ return ERROR_PUBLIC_MESSAGES[statusCode] || "Try again or return to the home page.";
687
+ }
688
+ __name(getDefaultErrorPublicMessage, "getDefaultErrorPublicMessage");
689
+ function createSourceFrameMarkup(sourceFrame) {
690
+ if (!sourceFrame) {
691
+ return `<p class="farm-default-error__details-empty">Source location is unavailable. Copy the debug report to inspect the filtered stack trace.</p>`;
692
+ }
693
+ const lines = sourceFrame.lines.map(
694
+ (line) => `<span class="farm-default-error__source-line${line.highlight ? " farm-default-error__source-line--active" : ""}"><span class="farm-default-error__source-gutter">${line.highlight ? "&gt;" : "&nbsp;"} ${line.number}</span><span class="farm-default-error__source-text">${escapeHtml(line.content || " ")}</span></span>`
695
+ ).join("\n");
696
+ return `<div class="farm-default-error__source"><p class="farm-default-error__source-path">${escapeHtml(sourceFrame.file)}:${sourceFrame.line}:${sourceFrame.column}</p><pre class="farm-default-error__source-code" tabindex="0"><code>${lines}</code></pre></div>`;
697
+ }
698
+ __name(createSourceFrameMarkup, "createSourceFrameMarkup");
699
+ function createDebugReport(options) {
700
+ const statusText = options.statusText || getDefaultErrorStatusText(options.statusCode);
701
+ const sourceFrame = options.sourceFrame;
702
+ const source = sourceFrame ? [
703
+ `\`${sourceFrame.file}:${sourceFrame.line}:${sourceFrame.column}\``,
704
+ "",
705
+ "```text",
706
+ ...sourceFrame.lines.map(
707
+ (line) => `${line.highlight ? ">" : " "} ${String(line.number).padStart(4, " ")} | ${line.content}`
708
+ ),
709
+ "```"
710
+ ].join("\n") : "Source frame unavailable.";
711
+ return [
712
+ "# Farm.js debug report",
713
+ "",
714
+ "## Error",
715
+ `- Status: ${options.statusCode} ${statusText}`,
716
+ `- Name: ${options.errorName || "Error"}`,
717
+ `- Message: ${options.message || getDefaultErrorPublicMessage(options.statusCode)}`,
718
+ `- Request: ${(options.method || "GET").toUpperCase()} ${options.requestPath || "/"}`,
719
+ "",
720
+ "## Runtime",
721
+ `- Farm.js: ${options.farmVersion || "unknown"}`,
722
+ `- Node.js: ${options.nodeVersion || "unknown"}`,
723
+ `- Mode: ${options.mode || "development"}`,
724
+ "",
725
+ "## Source",
726
+ source,
727
+ "",
728
+ "## Filtered stack",
729
+ "```text",
730
+ options.stack || "Stack trace unavailable.",
731
+ "```"
732
+ ].join("\n");
733
+ }
734
+ __name(createDebugReport, "createDebugReport");
735
+ var ERROR_PAGE_SCRIPT = `<script>(function(){var root=document.querySelector("[data-farm-default-error]");if(!root)return;var retry=root.querySelector("[data-farm-error-retry]");var back=root.querySelector("[data-farm-error-back]");if(retry)retry.addEventListener("click",function(){window.location.reload()});if(back)back.addEventListener("click",function(){if(window.history.length>1){window.history.back()}else{window.location.assign("/")}})})();</script>`;
736
+ var ERROR_COPY_SCRIPT = `<script>(function(){var root=document.querySelector("[data-farm-default-error]");var copy=root&&root.querySelector("[data-farm-error-copy]");var report=document.getElementById("farm-default-error-report");if(!copy||!report)return;copy.addEventListener("click",async function(){var value="";try{value=JSON.parse(report.textContent||'""')}catch(_error){value=report.textContent||""}try{if(navigator.clipboard&&window.isSecureContext){await navigator.clipboard.writeText(value)}else{var area=document.createElement("textarea");area.value=value;area.setAttribute("readonly","");area.style.position="fixed";area.style.opacity="0";document.body.appendChild(area);area.select();document.execCommand("copy");area.remove()}var label=copy.querySelector("[data-farm-error-copy-label]");var status=copy.querySelector("[data-farm-error-copy-status]");if(label)label.textContent="COPIED";if(status)status.textContent="Debug report copied";window.setTimeout(function(){if(label)label.textContent="COPY DEBUG REPORT";if(status)status.textContent=""},1800)}catch(_error){var status=copy.querySelector("[data-farm-error-copy-status]");if(status)status.textContent="Unable to copy the debug report"}})})();</script>`;
737
+ var ERROR_DOCS_ICON = `<svg class="farm-default-error__docs-icon" viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path d="M2.75 2.75h3.5A1.75 1.75 0 0 1 8 4.5v8.75a1.75 1.75 0 0 0-1.75-1.75h-3.5v-8.75Z"/><path d="M13.25 2.75h-3.5A1.75 1.75 0 0 0 8 4.5v8.75a1.75 1.75 0 0 1 1.75-1.75h3.5v-8.75Z"/></svg>`;
738
+ function createDefaultErrorMarkup(options = {}) {
739
+ const statusCode = normalizeErrorStatus(options.statusCode) ?? 500;
740
+ const statusText = options.statusText || getDefaultErrorStatusText(statusCode);
741
+ const development = options.development === true;
742
+ const title = getDefaultErrorTitle(statusCode);
743
+ const message = development && options.message ? options.message : getDefaultErrorPublicMessage(statusCode);
744
+ const requestPath = options.requestPath || "/";
745
+ const method = (options.method || "GET").toUpperCase();
746
+ const isServerError = statusCode >= 500;
747
+ const details = development ? `<section class="farm-default-error__details" aria-labelledby="farm-default-error-details-title"><div class="farm-default-error__details-header"><h2 id="farm-default-error-details-title" class="farm-default-error__details-title">Technical details</h2></div>${createSourceFrameMarkup(options.sourceFrame)}<p class="farm-default-error__meta">Farm.js v${escapeHtml(options.farmVersion || "unknown")} \xB7 ${escapeHtml(options.mode || "development")} \xB7 Node.js ${escapeHtml(options.nodeVersion || "unknown")}</p></section>` : "";
748
+ const report = development ? `<script id="farm-default-error-report" type="application/json">${serializeJsonForHtml(createDebugReport({ ...options, statusCode, statusText, requestPath, method }))}</script>${ERROR_COPY_SCRIPT}` : "";
749
+ const primaryAction = isServerError ? `<button class="farm-default-error__action farm-default-error__action--primary" type="button" data-farm-error-retry>TRY AGAIN</button>` : `<button class="farm-default-error__action farm-default-error__action--primary" type="button" data-farm-error-back>GO BACK</button>`;
750
+ const debugAction = development ? `<span class="farm-default-error__footer-divider" aria-hidden="true">/</span><button class="farm-default-error__footer-action" type="button" data-farm-error-copy><span data-farm-error-copy-label>COPY DEBUG REPORT</span><span class="farm-default-error__sr-only" aria-live="polite" data-farm-error-copy-status></span></button>` : "";
751
+ return `<style>${DEFAULT_ERROR_STYLES}</style><main class="farm-default-error${development ? " farm-default-error--development" : ""}" data-farm-default-error role="alert" aria-labelledby="farm-default-error-title" aria-describedby="farm-default-error-description"><div class="farm-default-error__frame"><div class="farm-default-error__brand" aria-hidden="true"><span>FARM.JS</span><span class="farm-default-error__brand-divider">/</span><span>ERROR</span></div><div class="farm-default-error__content"><p class="farm-default-error__status"><span class="farm-default-error__status-mark" aria-hidden="true"></span><span>${statusCode}</span><span class="farm-default-error__status-divider" aria-hidden="true">/</span><span>${escapeHtml(statusText)}</span></p><header class="farm-default-error__summary"><h1 id="farm-default-error-title" class="farm-default-error__title">${escapeHtml(title)}</h1><p id="farm-default-error-description" class="farm-default-error__message">${escapeHtml(message)}</p></header><div class="farm-default-error__actions">${primaryAction}<a class="farm-default-error__action" href="/">RETURN HOME</a></div><section class="farm-default-error__panel" aria-label="Error information"><div class="farm-default-error__row"><span class="farm-default-error__label">Request</span><span class="farm-default-error__value">${escapeHtml(method)} ${escapeHtml(requestPath)}</span></div><div class="farm-default-error__row"><span class="farm-default-error__label">Status</span><span class="farm-default-error__value">${statusCode} ${escapeHtml(statusText)}</span></div>${details}</section></div><footer class="farm-default-error__footer"><a class="farm-default-error__footer-action" href="https://farmjs.dev/docs" target="_blank" rel="noopener noreferrer">${ERROR_DOCS_ICON}<span>VIEW DOCUMENTATION</span></a>${debugAction}</footer></div>${report}${ERROR_PAGE_SCRIPT}</main>`;
752
+ }
753
+ __name(createDefaultErrorMarkup, "createDefaultErrorMarkup");
754
+
755
+ // src/theme/server-runtime.ts
756
+ var THEME_SCRIPT_ID = "farm-theme-script";
757
+ var THEME_STYLE_ID = "farm-theme-style";
758
+ function createFarmThemeDocumentParts(input, basePath = "/", serverTheme) {
759
+ const config = resolveFarmThemeConfig(input, basePath);
760
+ if (!config.enabled) return { attributes: "", head: "" };
761
+ const hydrationTheme = serverTheme ?? config.default;
762
+ const initialTheme = hydrationTheme === "system" ? "light" : hydrationTheme;
763
+ const script = createFarmThemeBootstrapScript(config, hydrationTheme);
764
+ return {
765
+ attributes: ` data-theme="${initialTheme}"`,
766
+ head: `<style id="${THEME_STYLE_ID}">:root[data-theme="light"]{color-scheme:light}:root[data-theme="dark"]{color-scheme:dark}</style><script id="${THEME_SCRIPT_ID}">${script}</script>`
767
+ };
768
+ }
769
+ __name(createFarmThemeDocumentParts, "createFarmThemeDocumentParts");
770
+ function createFarmThemeBootstrapScript(config, serverTheme = config.default) {
771
+ return `(function(config,serverTheme){
772
+ var isTheme=function(value){return value==="light"||value==="dark"||value==="system";};
773
+ var decode=function(value){try{return decodeURIComponent(value);}catch(_error){return value;}};
774
+ var readCookie=function(){var entries=document.cookie.split(";");for(var index=0;index<entries.length;index++){var entry=entries[index];var separator=entry.indexOf("=");if(separator<0)continue;if(decode(entry.slice(0,separator).trim())===config.storageKey)return decode(entry.slice(separator+1).trim());}};
775
+ var media=window.matchMedia("(prefers-color-scheme: dark)");
776
+ var resolveTheme=function(theme){return theme==="system"?(media.matches?"dark":"light"):theme;};
777
+ var storedTheme=readCookie();
778
+ var preference=isTheme(storedTheme)?storedTheme:config.default;
779
+ var serverSnapshot={theme:serverTheme,resolvedTheme:serverTheme==="system"?undefined:serverTheme,mounted:false};
780
+ var apply=function(){var resolvedTheme=resolveTheme(preference);document.documentElement.dataset.theme=resolvedTheme;var snapshot={theme:preference,resolvedTheme:resolvedTheme,mounted:true};if(window.__FARM_THEME__)window.__FARM_THEME__.snapshot=snapshot;return snapshot;};
781
+ var emit=function(){var snapshot=apply();window.dispatchEvent(new CustomEvent("farm:themechange",{detail:snapshot}));};
782
+ var persist=function(theme){var secure=window.location.protocol==="https:"?"; Secure":"";document.cookie=encodeURIComponent(config.storageKey)+"="+encodeURIComponent(theme)+"; Path="+config.cookiePath+"; Max-Age=31536000; SameSite=Lax"+secure;try{localStorage.setItem(config.storageKey,theme);}catch(_error){}};
783
+ var setTheme=function(theme){if(!isTheme(theme))throw new TypeError("Unknown FARMJS theme: "+String(theme));preference=theme;persist(theme);emit();};
784
+ var initialSnapshot={theme:preference,resolvedTheme:resolveTheme(preference),mounted:true};
785
+ window.__FARM_THEME__={config:config,serverSnapshot:serverSnapshot,snapshot:initialSnapshot,setTheme:setTheme};
786
+ document.documentElement.dataset.theme=initialSnapshot.resolvedTheme;
787
+ var handleSystemChange=function(){if(preference==="system")emit();};
788
+ if(typeof media.addEventListener==="function")media.addEventListener("change",handleSystemChange);else if(typeof media.addListener==="function")media.addListener(handleSystemChange);
789
+ window.addEventListener("storage",function(event){if(event.key!==config.storageKey||!isTheme(event.newValue))return;preference=event.newValue;persist(preference);emit();});
790
+ })(${serializeInlineValue(config)},${serializeInlineValue(serverTheme)});`;
791
+ }
792
+ __name(createFarmThemeBootstrapScript, "createFarmThemeBootstrapScript");
793
+ function applyFarmThemeDocument(html, input, basePath = "/", serverTheme) {
794
+ const parts = createFarmThemeDocumentParts(input, basePath, serverTheme);
795
+ if (!parts.head) return html;
796
+ let output = html.replace(/<html([^>]*)>/i, (_match, attributes) => {
797
+ const nextAttributes = attributes.replace(/\sdata-theme=(?:"[^"]*"|'[^']*'|[^\s>]+)/i, "");
798
+ return `<html${nextAttributes}${parts.attributes}>`;
799
+ });
800
+ if (!output.includes(`id="${THEME_SCRIPT_ID}"`)) {
801
+ output = output.replace(/<head([^>]*)>/i, `<head$1>${parts.head}`);
802
+ }
803
+ return output;
804
+ }
805
+ __name(applyFarmThemeDocument, "applyFarmThemeDocument");
806
+ function serializeInlineValue(value) {
807
+ return JSON.stringify(value).replace(/</g, "\\u003c").replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029");
808
+ }
809
+ __name(serializeInlineValue, "serializeInlineValue");
810
+
811
+ // src/api-catalog.ts
812
+ var FARM_API_CATALOG_PATH = "/.well-known/api-catalog";
813
+ var API_CATALOG_CONTENT_TYPE = 'application/linkset+json; profile="https://www.rfc-editor.org/info/rfc9727"';
814
+ function resolveFarmApiCatalogInput(config) {
815
+ const mcp = config.mcp && config.mcp.enabled !== false ? config.mcp : void 0;
816
+ return {
817
+ basePath: config.basePath,
818
+ apiBaseURL: config.openapi?.servers?.[0]?.url ?? config.api.baseURL,
819
+ openapi: config.openapi?.enabled ? { specRoute: config.openapi.specRoute, route: config.openapi.route } : void 0,
820
+ mcpPath: mcp ? resolveFarmAPIServerRoutePath(
821
+ mcp.path ?? "/api/mcp",
822
+ resolveFarmAPIServerBasePath(config.api)
823
+ ) : void 0
824
+ };
825
+ }
826
+ __name(resolveFarmApiCatalogInput, "resolveFarmApiCatalogInput");
827
+ function createFarmApiCatalog(input) {
828
+ const appPath = /* @__PURE__ */ __name((path) => applyFarmBasePath(path, input.basePath), "appPath");
829
+ const items = [];
830
+ const contexts = [];
831
+ const specRoute = input.openapi?.specRoute;
832
+ const reference = input.openapi?.route;
833
+ if (specRoute || reference) {
834
+ const api = { anchor: input.apiBaseURL };
835
+ if (specRoute) {
836
+ api["service-desc"] = [
837
+ { href: appPath(specRoute), type: "application/vnd.oai.openapi+json" }
838
+ ];
839
+ }
840
+ if (reference) api["service-doc"] = [{ href: appPath(reference), type: "text/html" }];
841
+ items.push({ href: input.apiBaseURL });
842
+ contexts.push(api);
843
+ }
844
+ if (input.mcpPath) items.push({ href: input.mcpPath });
845
+ return {
846
+ linkset: [{ anchor: appPath(FARM_API_CATALOG_PATH), item: items }, ...contexts]
847
+ };
848
+ }
849
+ __name(createFarmApiCatalog, "createFarmApiCatalog");
850
+ function createFarmApiCatalogResponse(method, input, request) {
851
+ const upperMethod = method.toUpperCase();
852
+ if (upperMethod !== "GET" && upperMethod !== "HEAD") {
853
+ return new Response("Method Not Allowed", {
854
+ status: 405,
855
+ headers: { Allow: "GET, HEAD", "Content-Type": "text/plain; charset=utf-8" }
856
+ });
857
+ }
858
+ if (request) emitFarmAgentRead(request, "api-catalog", 200);
859
+ const catalog = createFarmApiCatalog(input);
860
+ return new Response(upperMethod === "HEAD" ? null : JSON.stringify(catalog), {
861
+ status: 200,
862
+ headers: {
863
+ "Content-Type": API_CATALOG_CONTENT_TYPE,
864
+ "Cache-Control": "public, max-age=0, must-revalidate",
865
+ Link: `<${catalog.linkset[0].anchor}>; rel="api-catalog"`,
866
+ "X-Content-Type-Options": "nosniff"
867
+ }
868
+ });
869
+ }
870
+ __name(createFarmApiCatalogResponse, "createFarmApiCatalogResponse");
871
+
872
+ // src/app-manifest.ts
873
+ var FARM_APP_MANIFEST_PATH = "/.well-known/farmjs.json";
874
+ var FARM_APP_MANIFEST_LEGACY_PATH = "/.well-known/farmjs";
875
+ function isFarmAppManifestPath(pathname) {
876
+ return pathname === FARM_APP_MANIFEST_PATH || pathname === FARM_APP_MANIFEST_LEGACY_PATH;
877
+ }
878
+ __name(isFarmAppManifestPath, "isFarmAppManifestPath");
879
+ var FARM_INFRA_SIGNATURE_HEADER = "farmjs-infra-signature";
880
+ var SIGNED_PURPOSE = "farmjs-manifest-v1";
881
+ var SIGNATURE_WINDOW_SECONDS = 300;
882
+ function resolveFarmAppManifestInput(config, extra) {
883
+ const llms = config.agent?.llmsTxt;
884
+ const plugins = (config.plugins ?? []).map(({ name }) => name);
885
+ const webmcp = plugins.includes("farm:webmcp");
886
+ return {
887
+ renderer: config.renderer?.name ?? "react",
888
+ basePath: config.basePath || "/",
889
+ build: extra.build,
890
+ packages: extra.packages,
891
+ webmcp: { enabled: webmcp, tools: webmcp ? extra.webmcpTools ?? [] : [] },
892
+ integrations: Object.entries(config.integrations ?? {}).flatMap(([key, integration]) => {
893
+ const category = integration?.category ?? integration?.slot;
894
+ return integration && category && integration.type ? [{ key, category, type: integration.type }] : [];
895
+ }),
896
+ agent: {
897
+ apiCatalog: config.agent?.apiCatalog ? "/.well-known/api-catalog" : null,
898
+ llmsTxt: llms === true || typeof llms === "object" && llms !== null && llms.enabled !== false,
899
+ openapi: config.openapi?.enabled && config.openapi.specRoute ? config.openapi.specRoute : null
900
+ },
901
+ plugins,
902
+ analytics: config.analytics !== false
903
+ };
904
+ }
905
+ __name(resolveFarmAppManifestInput, "resolveFarmAppManifestInput");
906
+ var SOURCES = {
907
+ endpoint: "endpoint",
908
+ standalone: "defineTool",
909
+ serverFunction: "serverFunction"
910
+ };
911
+ function createFarmAppManifest(input, { full = false } = {}) {
912
+ const manifest = {
913
+ schemaVersion: 1,
914
+ app: {
915
+ farm: FARM_VERSION,
916
+ renderer: input.renderer,
917
+ basePath: input.basePath,
918
+ build: input.build
919
+ },
920
+ packages: input.packages,
921
+ mcp: {
922
+ servers: _listFarmMCPCatalogs().map(({ server, tools, details }) => {
923
+ const listed = full || details?.public === true;
924
+ return {
925
+ name: server.name,
926
+ version: server.version,
927
+ path: server.path,
928
+ authorization: details?.public === true ? "none" : "required",
929
+ resources: listed ? [...details?.resources ?? []] : [],
930
+ prompts: listed ? [...details?.prompts ?? []] : [],
931
+ tools: (listed ? tools : []).map((tool) => {
932
+ const schemas = details?.schemas?.[tool.name];
933
+ const hints = Object.fromEntries(
934
+ ["readOnlyHint", "destructiveHint", "idempotentHint", "openWorldHint"].filter((hint) => typeof tool[hint] === "boolean").map((hint) => [hint, tool[hint]])
935
+ );
936
+ return {
937
+ name: tool.name,
938
+ ...tool.title ? { title: tool.title } : {},
939
+ ...tool.description ? { description: tool.description } : {},
940
+ source: SOURCES[tool.kind],
941
+ // MCP clients never see the route behind a tool; only Infra's view names it.
942
+ ...full && tool.kind === "endpoint" ? { method: tool.method, path: tool.path } : {},
943
+ ...hints,
944
+ ...schemas ? { inputSchema: schemas.input } : {},
945
+ ...schemas?.output ? { outputSchema: schemas.output } : {}
946
+ };
947
+ })
948
+ };
949
+ })
950
+ },
951
+ webmcp: input.webmcp,
952
+ integrations: input.integrations,
953
+ agent: input.agent,
954
+ plugins: input.plugins
955
+ };
956
+ manifest.mcp.servers.push(...listDefaultServer(input));
957
+ return manifest;
958
+ }
959
+ __name(createFarmAppManifest, "createFarmAppManifest");
960
+ function listDefaultServer(input) {
961
+ const server = input.defaultMCP?.();
962
+ if (!server) return [];
963
+ return [
964
+ {
965
+ name: server.name,
966
+ version: server.version,
967
+ path: server.path,
968
+ authorization: "none",
969
+ resources: [],
970
+ prompts: [],
971
+ tools: FARM_DEFAULT_MCP_TOOLS.map((tool) => ({
972
+ name: tool.name,
973
+ title: tool.title,
974
+ description: tool.description,
975
+ // Standalone tools with no endpoint behind them, like defineTool's.
976
+ source: "defineTool",
977
+ ...tool.annotations,
978
+ inputSchema: tool.inputSchema,
979
+ ..."outputSchema" in tool ? { outputSchema: tool.outputSchema } : {}
980
+ }))
981
+ }
982
+ ];
983
+ }
984
+ __name(listDefaultServer, "listDefaultServer");
985
+ var encoder = new TextEncoder();
986
+ var hex = /* @__PURE__ */ __name((bytes) => [...new Uint8Array(bytes)].map((byte) => byte.toString(16).padStart(2, "0")).join(""), "hex");
987
+ async function sha256Hex(value) {
988
+ return hex(await crypto.subtle.digest("SHA-256", encoder.encode(value)));
989
+ }
990
+ __name(sha256Hex, "sha256Hex");
991
+ async function hmacHex(secret, message) {
992
+ const key = await crypto.subtle.importKey(
993
+ "raw",
994
+ encoder.encode(secret),
995
+ { name: "HMAC", hash: "SHA-256" },
996
+ false,
997
+ ["sign"]
998
+ );
999
+ return hex(await crypto.subtle.sign("HMAC", key, encoder.encode(message)));
1000
+ }
1001
+ __name(hmacHex, "hmacHex");
1002
+ function sameHex(a, b) {
1003
+ if (a.length !== b.length) return false;
1004
+ let difference = 0;
1005
+ for (let index = 0; index < a.length; index++)
1006
+ difference |= a.charCodeAt(index) ^ b.charCodeAt(index);
1007
+ return difference === 0;
1008
+ }
1009
+ __name(sameHex, "sameHex");
1010
+ async function verifyFarmInfraManifestSignature(header, key, now = Date.now()) {
1011
+ if (!header || header.length > 2048) return false;
1012
+ const parts = header.split(",").map((part) => part.trim());
1013
+ const timestamp = Number(
1014
+ /^t=(\d{1,12})$/.exec(parts.find((part) => part.startsWith("t=")) ?? "")?.[1]
1015
+ );
1016
+ if (!Number.isSafeInteger(timestamp)) return false;
1017
+ if (Math.abs(now / 1e3 - timestamp) > SIGNATURE_WINDOW_SECONDS) return false;
1018
+ const signatures = parts.filter((part) => part.startsWith("v1=")).map((part) => part.slice(3)).filter((value) => /^[0-9a-f]{64}$/.test(value));
1019
+ if (!signatures.length || signatures.length > 8) return false;
1020
+ const expected = await hmacHex(await sha256Hex(key), `${SIGNED_PURPOSE}
1021
+ ${timestamp}`);
1022
+ return signatures.some((signature) => sameHex(signature, expected));
1023
+ }
1024
+ __name(verifyFarmInfraManifestSignature, "verifyFarmInfraManifestSignature");
1025
+ function processEnv() {
1026
+ return globalThis.process?.env ?? {};
1027
+ }
1028
+ __name(processEnv, "processEnv");
1029
+ var CORS_HEADERS = {
1030
+ "access-control-allow-origin": "*",
1031
+ "access-control-allow-methods": "GET, HEAD, OPTIONS",
1032
+ "access-control-allow-headers": `If-None-Match, ${FARM_INFRA_SIGNATURE_HEADER}`,
1033
+ "access-control-expose-headers": "ETag"
1034
+ };
1035
+ async function createFarmAppManifestResponse(request, input, options = {}) {
1036
+ const method = request.method.toUpperCase();
1037
+ if (method === "OPTIONS") return new Response(null, { status: 204, headers: CORS_HEADERS });
1038
+ if (method !== "GET" && method !== "HEAD") {
1039
+ return new Response("Method Not Allowed", {
1040
+ status: 405,
1041
+ headers: { ...CORS_HEADERS, allow: "GET, HEAD, OPTIONS", "content-type": "text/plain" }
1042
+ });
1043
+ }
1044
+ const signature = request.headers.get(FARM_INFRA_SIGNATURE_HEADER);
1045
+ const key = input.analytics ? (options.env ?? processEnv()).FARMJS_API_KEY?.trim() : void 0;
1046
+ const full = Boolean(
1047
+ signature && key && await verifyFarmInfraManifestSignature(signature, key)
1048
+ );
1049
+ const body = JSON.stringify(createFarmAppManifest(input, { full }));
1050
+ const etag = createFarmWeakETag(body);
1051
+ const headers = {
1052
+ ...CORS_HEADERS,
1053
+ "content-type": "application/json; charset=utf-8",
1054
+ // The full view is for Infra alone; shared caches keep the two views apart.
1055
+ "cache-control": full ? "private, no-store" : "public, max-age=0, must-revalidate",
1056
+ vary: FARM_INFRA_SIGNATURE_HEADER,
1057
+ etag,
1058
+ "x-content-type-options": "nosniff"
1059
+ };
1060
+ if (!full && matchesFarmIfNoneMatch(request.headers.get("if-none-match"), etag)) {
1061
+ return new Response(null, { status: 304, headers });
1062
+ }
1063
+ return new Response(method === "HEAD" ? null : body, { status: 200, headers });
1064
+ }
1065
+ __name(createFarmAppManifestResponse, "createFarmAppManifestResponse");
1066
+
1067
+ export {
1068
+ formatRouteSegment,
1069
+ createRouteDirectoryPattern,
1070
+ stripRouteGroups,
1071
+ getRouteGroupScope,
1072
+ isInRouteGroupScope,
1073
+ getRouteDirectoryDepth,
1074
+ routeBoundaryCoversDirectory,
1075
+ HOISTED_HEAD_ELEMENT,
1076
+ extractFarmFullDocument,
1077
+ classifyFarmDocumentPrefix,
1078
+ removeFarmDocumentTitles,
1079
+ ensureFarmDocumentMeta,
1080
+ composeFarmFullDocument,
1081
+ renderFarmLocaleAlternateLinks,
1082
+ createLateRedirectRecovery,
1083
+ createLateNotFoundRecovery,
1084
+ createFarmMetadataRouteResponse,
1085
+ listFarmMCPLlmsTxtLinks,
1086
+ createFarmAiCatalogResponse,
1087
+ resolveDefaultErrorStatus,
1088
+ getDefaultErrorStatusText,
1089
+ createDefaultErrorMarkup,
1090
+ createFarmThemeDocumentParts,
1091
+ applyFarmThemeDocument,
1092
+ FARM_API_CATALOG_PATH,
1093
+ resolveFarmApiCatalogInput,
1094
+ createFarmApiCatalogResponse,
1095
+ FARM_APP_MANIFEST_PATH,
1096
+ FARM_APP_MANIFEST_LEGACY_PATH,
1097
+ isFarmAppManifestPath,
1098
+ FARM_INFRA_SIGNATURE_HEADER,
1099
+ resolveFarmAppManifestInput,
1100
+ createFarmAppManifestResponse
1101
+ };