@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,1362 @@
1
+ import {
2
+ emitFarmAgentRead
3
+ } from "./chunk-MVL2RAJW.mjs";
4
+ import {
5
+ _findFarmMCPEndpointTool
6
+ } from "./chunk-ZLAT2CWY.mjs";
7
+ import {
8
+ _withFarmResponseHeaders
9
+ } from "./chunk-Z3HATSKO.mjs";
10
+ import {
11
+ stripFarmBasePath
12
+ } from "./chunk-4RB44K6Z.mjs";
13
+ import {
14
+ __name
15
+ } from "./chunk-LPEX4YW6.mjs";
16
+
17
+ // src/markdown-view.ts
18
+ var FENCE = /^\s{0,3}(`{3,}|~{3,})/;
19
+ var ATX_HEADING = /^\s{0,3}(#{1,6})[ \t]+(.+?)[ \t]*#*[ \t]*$/;
20
+ function parseMarkdownHeadingsFromLines(lines) {
21
+ const headings = [];
22
+ const used = /* @__PURE__ */ new Map();
23
+ let index = 0;
24
+ if (lines[0]?.trim() === "---") {
25
+ const close = lines.findIndex((line, lineIndex) => lineIndex > 0 && line.trim() === "---");
26
+ if (close > 0) index = close + 1;
27
+ }
28
+ let fence = null;
29
+ for (; index < lines.length; index++) {
30
+ const line = lines[index];
31
+ const fenceMatch = FENCE.exec(line);
32
+ if (fenceMatch) {
33
+ const marker = fenceMatch[1];
34
+ if (fence === null) fence = marker;
35
+ else if (marker[0] === fence[0] && marker.length >= fence.length) fence = null;
36
+ continue;
37
+ }
38
+ if (fence !== null) continue;
39
+ const match = ATX_HEADING.exec(line);
40
+ if (!match) continue;
41
+ const text = match[2].trim();
42
+ const base = slugifyHeading(text) || "section";
43
+ const count = used.get(base) ?? 0;
44
+ used.set(base, count + 1);
45
+ headings.push({
46
+ id: count === 0 ? base : `${base}-${count}`,
47
+ level: match[1].length,
48
+ text,
49
+ start: index,
50
+ end: lines.length
51
+ });
52
+ }
53
+ const open = [];
54
+ for (const heading of headings) {
55
+ while (open.length > 0 && open[open.length - 1].level >= heading.level) {
56
+ open.pop().end = heading.start;
57
+ }
58
+ open.push(heading);
59
+ }
60
+ return headings;
61
+ }
62
+ __name(parseMarkdownHeadingsFromLines, "parseMarkdownHeadingsFromLines");
63
+ function slugifyHeading(text) {
64
+ return text.replace(/!?\[([^\]]*)\]\([^)]*\)/g, "$1").replace(/[`*_~]/g, "").toLowerCase().replace(/[^\p{L}\p{N}\s-]/gu, "").trim().replace(/\s/g, "-");
65
+ }
66
+ __name(slugifyHeading, "slugifyHeading");
67
+ function estimateFarmMarkdownTokens(text) {
68
+ return Math.ceil(text.length / 4);
69
+ }
70
+ __name(estimateFarmMarkdownTokens, "estimateFarmMarkdownTokens");
71
+ var FARM_MARKDOWN_MIN_TOKEN_BUDGET = 100;
72
+ var FARM_MARKDOWN_VIEW_PARAMS = [
73
+ "outline",
74
+ "section",
75
+ "actions",
76
+ "max_tokens",
77
+ "cursor"
78
+ ];
79
+ function selectFarmMarkdownView(markdown, searchParams, markdownPath) {
80
+ const wantsOutline = searchParams.has("outline");
81
+ const sectionId = searchParams.get("section");
82
+ const budget = searchParams.get("max_tokens");
83
+ if (!wantsOutline && sectionId === null && budget === null)
84
+ return { status: 200, body: markdown };
85
+ const viewUrl = /* @__PURE__ */ __name((view) => {
86
+ const query = new URLSearchParams(searchParams);
87
+ for (const name of FARM_MARKDOWN_VIEW_PARAMS) query.delete(name);
88
+ for (const [name, value] of Object.entries(view)) {
89
+ if (value !== null && value !== void 0) query.set(name, value);
90
+ }
91
+ const search = query.toString();
92
+ return search ? `${markdownPath}?${search}` : markdownPath;
93
+ }, "viewUrl");
94
+ const withinBudget = /* @__PURE__ */ __name((document) => budget === null ? { status: 200, body: document } : selectFarmMarkdownPart(
95
+ document,
96
+ budget,
97
+ searchParams.get("cursor"),
98
+ (cursor) => viewUrl({ section: sectionId, max_tokens: budget, cursor })
99
+ ), "withinBudget");
100
+ if (!wantsOutline && sectionId === null) return withinBudget(markdown);
101
+ const lines = markdown.split("\n");
102
+ const headings = parseMarkdownHeadingsFromLines(lines);
103
+ const sectionText = /* @__PURE__ */ __name((heading) => lines.slice(heading.start, heading.end).join("\n").trim(), "sectionText");
104
+ if (sectionId !== null) {
105
+ const heading = headings.find((candidate) => candidate.id === sectionId);
106
+ if (heading) return withinBudget(`${sectionText(heading)}
107
+ `);
108
+ const available = headings.map((candidate) => `- \`${candidate.id}\``).join("\n");
109
+ return {
110
+ status: 404,
111
+ body: `# Section not found
112
+
113
+ ${markdownCodeSpan(sectionId)} is not a section of ${markdownPath}.
114
+
115
+ ` + (available ? `Available sections:
116
+
117
+ ${available}
118
+ ` : "This page has no sections.\n")
119
+ };
120
+ }
121
+ const offsets = [];
122
+ let offset = 0;
123
+ for (const line of lines) {
124
+ offsets.push(offset);
125
+ offset += line.length + 1;
126
+ }
127
+ const minLevel = headings.reduce((min, heading) => Math.min(min, heading.level), 6);
128
+ const entries = headings.map((heading) => {
129
+ const indent = " ".repeat(heading.level - minLevel);
130
+ let last = heading.end - 1;
131
+ while (last > heading.start && lines[last].trim().length === 0) last--;
132
+ const first = lines[heading.start];
133
+ const length = offsets[last] + lines[last].trimEnd().length - offsets[heading.start] - (first.length - first.trimStart().length);
134
+ const tokens = Math.ceil(length / 4);
135
+ return `${indent}- [${heading.text}](${viewUrl({ section: heading.id })}) ~${tokens} tokens`;
136
+ });
137
+ return {
138
+ status: 200,
139
+ body: `# Outline of ${markdownPath}
140
+
141
+ About ${estimateFarmMarkdownTokens(markdown)} tokens in total. Request one section with \`?section=<id>\`, or read in parts with \`?max_tokens=<n>\`.
142
+
143
+ ` + (entries.length > 0 ? `${entries.join("\n")}
144
+ ` : "This page has no headings.\n")
145
+ };
146
+ }
147
+ __name(selectFarmMarkdownView, "selectFarmMarkdownView");
148
+ function markdownCodeSpan(value) {
149
+ const text = value.replace(/[\p{Cc}\u2028\u2029]+/gu, " ");
150
+ const longestRun = (text.match(/`+/g) ?? []).reduce((max, run) => Math.max(max, run.length), 0);
151
+ const fence = "`".repeat(longestRun + 1);
152
+ const pad = text.startsWith("`") || text.endsWith("`") ? " " : "";
153
+ return `${fence}${pad}${text}${pad}${fence}`;
154
+ }
155
+ __name(markdownCodeSpan, "markdownCodeSpan");
156
+ function selectFarmPageActionsView(markdownPath, actions, headers) {
157
+ headers.set("Content-Type", "application/json; charset=utf-8");
158
+ const page = markdownPath === "/index.md" ? "/" : markdownPath.replace(/\.md$/, "");
159
+ return {
160
+ status: 200,
161
+ body: `${JSON.stringify({ page, markdown: markdownPath, actions }, null, 2)}
162
+ `
163
+ };
164
+ }
165
+ __name(selectFarmPageActionsView, "selectFarmPageActionsView");
166
+ function selectFarmMarkdownPart(document, rawBudget, rawCursor, partUrl) {
167
+ const budget = /^\d{1,9}$/.test(rawBudget) ? Number(rawBudget) : Number.NaN;
168
+ if (!(budget >= FARM_MARKDOWN_MIN_TOKEN_BUDGET)) {
169
+ return {
170
+ status: 400,
171
+ body: `# Invalid max_tokens
172
+
173
+ \`max_tokens\` must be a whole number of at least ${FARM_MARKDOWN_MIN_TOKEN_BUDGET}.
174
+ `
175
+ };
176
+ }
177
+ const lines = document.replace(/\n$/, "").split("\n");
178
+ const version = hashFarmMarkdown(document).slice(0, 8);
179
+ let start = 0;
180
+ if (rawCursor !== null) {
181
+ const match = /^(\d{1,9})\.([0-9a-z]+)$/.exec(rawCursor);
182
+ if (!match || Number(match[1]) <= 0 || Number(match[1]) >= lines.length) {
183
+ return {
184
+ status: 400,
185
+ body: `# Invalid cursor
186
+
187
+ Start again at ${partUrl()}.
188
+ `
189
+ };
190
+ }
191
+ if (match[2] !== version) {
192
+ return {
193
+ status: 409,
194
+ body: `# Page changed
195
+
196
+ The page changed after this cursor was issued. Start again at ${partUrl()}.
197
+ `
198
+ };
199
+ }
200
+ start = Number(match[1]);
201
+ }
202
+ const fences = readOpenFences(lines);
203
+ const reopen = fences[start];
204
+ const room = budget * 4 - 200;
205
+ let size = reopen ? reopen.opener.length + 1 : 0;
206
+ let end = start;
207
+ let lastBreak = -1;
208
+ while (end < lines.length) {
209
+ const length = lines[end].length + 1;
210
+ if (end > start && size + length > room) break;
211
+ size += length;
212
+ end++;
213
+ if (end < lines.length && isPartBreak(lines, fences, end)) lastBreak = end;
214
+ }
215
+ const head = reopen ? `${reopen.opener}
216
+ ` : "";
217
+ if (end >= lines.length) {
218
+ return { status: 200, body: `${head}${lines.slice(start).join("\n")}
219
+ ` };
220
+ }
221
+ if (lastBreak > start) end = lastBreak;
222
+ const open = fences[end];
223
+ const part = `${head}${lines.slice(start, end).join("\n").replace(/\n+$/, "")}${open ? `
224
+ ${open.closer}` : ""}`;
225
+ const next = partUrl(`${end}.${version}`);
226
+ let remainingLength = lines.length - end - 1;
227
+ for (let index = end; index < lines.length; index++) remainingLength += lines[index].length;
228
+ const remaining = Math.ceil(remainingLength / 4);
229
+ return {
230
+ status: 200,
231
+ body: `${part}
232
+
233
+ ---
234
+
235
+ Continue: ${next} (about ${remaining} more tokens)
236
+ `,
237
+ headers: { Link: `<${next}>; rel="next"` }
238
+ };
239
+ }
240
+ __name(selectFarmMarkdownPart, "selectFarmMarkdownPart");
241
+ function readOpenFences(lines) {
242
+ const open = [];
243
+ let fence;
244
+ let frontMatter = lines[0]?.trim() === "---";
245
+ for (let index = 0; index < lines.length; index++) {
246
+ open.push(frontMatter && index > 0 ? { opener: "", closer: "" } : fence);
247
+ const line = lines[index];
248
+ if (frontMatter) {
249
+ if (index > 0 && line.trim() === "---") frontMatter = false;
250
+ continue;
251
+ }
252
+ const match = FENCE.exec(line);
253
+ if (!match) continue;
254
+ const marker = match[1];
255
+ if (!fence) fence = { opener: line.trim(), closer: marker, marker };
256
+ else if (marker[0] === fence.marker[0] && marker.length >= fence.marker.length)
257
+ fence = void 0;
258
+ }
259
+ return open;
260
+ }
261
+ __name(readOpenFences, "readOpenFences");
262
+ function isPartBreak(lines, fences, index) {
263
+ if (fences[index]) return false;
264
+ return lines[index - 1].trim() === "" || ATX_HEADING.test(lines[index]);
265
+ }
266
+ __name(isPartBreak, "isPartBreak");
267
+ function readMarkdownViewName(searchParams) {
268
+ if (searchParams.has("actions")) return "actions";
269
+ if (searchParams.has("outline")) return "outline";
270
+ if (searchParams.has("max_tokens")) return "parts";
271
+ return searchParams.has("section") ? "section" : void 0;
272
+ }
273
+ __name(readMarkdownViewName, "readMarkdownViewName");
274
+ function createFarmMarkdownETag(body) {
275
+ return `W/"${hashFarmMarkdown(body)}-${body.length.toString(36)}"`;
276
+ }
277
+ __name(createFarmMarkdownETag, "createFarmMarkdownETag");
278
+ function hashFarmMarkdown(body) {
279
+ let h1 = 3735928559;
280
+ let h2 = 1103547991;
281
+ for (let index = 0; index < body.length; index++) {
282
+ const code = body.charCodeAt(index);
283
+ h1 = Math.imul(h1 ^ code, 2654435761);
284
+ h2 = Math.imul(h2 ^ code, 1597334677);
285
+ }
286
+ h1 = Math.imul(h1 ^ h1 >>> 16, 2246822507) ^ Math.imul(h2 ^ h2 >>> 13, 3266489909);
287
+ h2 = Math.imul(h2 ^ h2 >>> 16, 2246822507) ^ Math.imul(h1 ^ h1 >>> 13, 3266489909);
288
+ return (4294967296 * (2097151 & h2) + (h1 >>> 0)).toString(36);
289
+ }
290
+ __name(hashFarmMarkdown, "hashFarmMarkdown");
291
+ function ifNoneMatchIncludes(header, etag) {
292
+ if (!header) return false;
293
+ const opaque = etag.replace(/^W\//, "");
294
+ return header.split(",").map((token) => token.trim()).some((token) => token === "*" || token.replace(/^W\//, "") === opaque);
295
+ }
296
+ __name(ifNoneMatchIncludes, "ifNoneMatchIncludes");
297
+ function createFarmMarkdownViewResponse(options) {
298
+ const url = options.requestUrl ?? new URL(options.request.url);
299
+ const view = options.status >= 400 ? { status: options.status, body: options.markdown } : url.searchParams.has("actions") ? selectFarmPageActionsView(options.markdownPath, options.actions ?? [], options.headers) : selectFarmMarkdownView(options.markdown, url.searchParams, options.markdownPath);
300
+ let status = view.status === 200 ? options.status : view.status;
301
+ const ifMatch = options.request.headers.get("if-match");
302
+ const preconditionFailed = status >= 200 && status < 300 && ifMatch !== null && ifMatch.trim() !== "*";
303
+ if (preconditionFailed) {
304
+ status = 412;
305
+ options.headers.set("Cache-Control", "no-store");
306
+ }
307
+ emitFarmAgentRead(options.request, "markdown", status, readMarkdownViewName(url.searchParams));
308
+ for (const [name, value] of Object.entries(view.headers ?? {}))
309
+ options.headers.append(name, value);
310
+ const etag = createFarmMarkdownETag(view.body);
311
+ options.headers.set("ETag", etag);
312
+ if (status === 200 && ifNoneMatchIncludes(options.request.headers.get("if-none-match"), etag)) {
313
+ return new Response(null, { status: 304, headers: options.headers });
314
+ }
315
+ return new Response(preconditionFailed || options.request.method === "HEAD" ? null : view.body, {
316
+ status,
317
+ headers: options.headers
318
+ });
319
+ }
320
+ __name(createFarmMarkdownViewResponse, "createFarmMarkdownViewResponse");
321
+
322
+ // src/markdown.ts
323
+ var FARM_MARKDOWN_CONTENT_TYPE = "text/markdown; charset=utf-8";
324
+ function farmRequestWantsMarkdown(pathname, accept) {
325
+ return pathname.toLowerCase().endsWith(".md") || requestAcceptsMarkdown(accept);
326
+ }
327
+ __name(farmRequestWantsMarkdown, "farmRequestWantsMarkdown");
328
+ function createFarmMarkdownErrorBody(status, pathname, homeHref = "/") {
329
+ const heading = status === 404 ? "Page not found" : `Request failed (${status})`;
330
+ return `# ${heading}
331
+
332
+ No page is available at \`${pathname}\`. The URL may be incorrect, or the page has not been published.
333
+
334
+ Browse [the site homepage](${homeHref}) to find available pages.
335
+ `;
336
+ }
337
+ __name(createFarmMarkdownErrorBody, "createFarmMarkdownErrorBody");
338
+ function resolveMarkdownConfig(config) {
339
+ if (config === false) {
340
+ return {
341
+ enabled: false,
342
+ expose: [],
343
+ cache: false,
344
+ includeMetadata: true
345
+ };
346
+ }
347
+ if (config === true || config === void 0) {
348
+ return {
349
+ enabled: true,
350
+ expose: true,
351
+ cache: false,
352
+ includeMetadata: true
353
+ };
354
+ }
355
+ const exposeInput = config.expose ?? config.routes ?? true;
356
+ const expose = exposeInput === true ? true : Array.isArray(exposeInput) ? exposeInput.map(normalizeMarkdownRouteInput) : [];
357
+ return {
358
+ enabled: config.enabled !== false && (expose === true || expose.length > 0),
359
+ expose,
360
+ cache: config.cache ?? false,
361
+ includeMetadata: config.includeMetadata ?? true
362
+ };
363
+ }
364
+ __name(resolveMarkdownConfig, "resolveMarkdownConfig");
365
+ function resolveMarkdownMirrorTarget(config, pathname, options = {}) {
366
+ const hasMarkdownExtension = pathname.toLowerCase().endsWith(".md");
367
+ if (!config?.enabled || !hasMarkdownExtension && !requestAcceptsMarkdown(options.accept)) {
368
+ return null;
369
+ }
370
+ const targetPathname = normalizeMarkdownRoute(
371
+ hasMarkdownExtension ? pathname.slice(0, -".md".length) || "/" : pathname
372
+ );
373
+ const route = findExposedMarkdownRoute(config, targetPathname);
374
+ if (!route && config.expose !== true) {
375
+ return null;
376
+ }
377
+ return {
378
+ pathname: targetPathname,
379
+ route
380
+ };
381
+ }
382
+ __name(resolveMarkdownMirrorTarget, "resolveMarkdownMirrorTarget");
383
+ async function createMarkdownMirrorResponse(options) {
384
+ if (options.request.method !== "GET" && options.request.method !== "HEAD") {
385
+ return null;
386
+ }
387
+ const requestUrl = options.requestUrl?.href === options.request.url ? options.requestUrl : new URL(options.request.url);
388
+ const hasMarkdownExtension = requestUrl.pathname.toLowerCase().endsWith(".md");
389
+ const target = resolveMarkdownMirrorTarget(options.config, requestUrl.pathname, {
390
+ accept: options.request.headers.get("accept")
391
+ });
392
+ if (!target) {
393
+ return null;
394
+ }
395
+ if (options.routeExists && !options.routeExists(target.pathname)) {
396
+ return null;
397
+ }
398
+ const pageUrl = new URL(options.request.url);
399
+ pageUrl.pathname = target.pathname;
400
+ for (const name of FARM_MARKDOWN_VIEW_PARAMS) pageUrl.searchParams.delete(name);
401
+ const headers = new Headers(options.request.headers);
402
+ headers.set("accept", "text/html");
403
+ headers.delete("if-match");
404
+ headers.delete("if-unmodified-since");
405
+ headers.delete("if-none-match");
406
+ headers.delete("if-modified-since");
407
+ headers.delete("range");
408
+ headers.delete("if-range");
409
+ const pageResponse = await options.renderPage(
410
+ new Request(pageUrl, {
411
+ method: "GET",
412
+ headers,
413
+ signal: options.request.signal
414
+ })
415
+ );
416
+ if (pageResponse.status === 204 || pageResponse.status === 205 || pageResponse.status === 304) {
417
+ return pageResponse;
418
+ }
419
+ const redirects = pageResponse.status >= 300 && pageResponse.status < 400 && pageResponse.headers.has("location");
420
+ if (redirects || !isHtmlResponse(pageResponse)) {
421
+ const accessResponse = createMarkdownAccessResponse(
422
+ pageResponse,
423
+ target.pathname,
424
+ pageUrl,
425
+ options.request.method === "HEAD"
426
+ );
427
+ if (accessResponse || options.request.method === "HEAD") {
428
+ void pageResponse.body?.cancel().catch(() => {
429
+ });
430
+ return accessResponse ?? new Response(null, {
431
+ status: pageResponse.status,
432
+ statusText: pageResponse.statusText,
433
+ headers: pageResponse.headers
434
+ });
435
+ }
436
+ return pageResponse;
437
+ }
438
+ const html = await pageResponse.text();
439
+ const markdownPath = target.pathname === "/" ? "/index.md" : `${target.pathname}.md`;
440
+ const region = pageResponse.status < 400 && /<form\b/i.test(html) ? readHtmlContentRegion(html) : void 0;
441
+ const actions = region === void 0 ? [] : extractPageActionsFromRegion(region, pageUrl);
442
+ for (const form of actions) {
443
+ if (!form.action?.startsWith("/")) continue;
444
+ const pathname = new URL(form.action, pageUrl.origin).pathname;
445
+ const tool = _findFarmMCPEndpointTool(form.method, pathname, options.apiServerBasePath) ?? _findFarmMCPEndpointTool(form.method, stripFarmBasePath(pathname), options.apiServerBasePath);
446
+ if (tool) form.tool = tool;
447
+ }
448
+ const markdown = pageResponse.status < 400 && requestUrl.searchParams.has("actions") ? "" : convertHtmlToMarkdown(
449
+ html,
450
+ {
451
+ title: target.route?.title,
452
+ includeMetadata: options.config?.includeMetadata ?? true,
453
+ sourcePath: target.pathname,
454
+ actionsPath: actions.length > 0 ? `${markdownPath}?actions` : void 0
455
+ },
456
+ region
457
+ );
458
+ const headersOut = new Headers({
459
+ "Content-Type": "text/markdown; charset=utf-8",
460
+ "Content-Location": markdownPath,
461
+ "X-Farm-Markdown-Route": target.pathname
462
+ });
463
+ if (!hasMarkdownExtension) {
464
+ headersOut.set("Vary", "Accept");
465
+ }
466
+ for (const token of pageResponse.headers.get("vary")?.split(",") ?? []) {
467
+ const name = token.trim();
468
+ if (name && name.toLowerCase() !== "accept") appendHeaderToken(headersOut, "Vary", name);
469
+ }
470
+ const pageCacheControl = pageResponse.headers.get("cache-control");
471
+ const cache = target.route?.cache ?? options.config?.cache ?? false;
472
+ headersOut.set(
473
+ "Cache-Control",
474
+ pageCacheControl && isPrivateCacheControl(pageCacheControl) ? pageCacheControl : createMarkdownCacheHeader(cache)
475
+ );
476
+ preserveMarkdownResponseCookies(pageResponse.headers, headersOut);
477
+ if (pageResponse.status >= 400) {
478
+ preserveMarkdownResponseControlHeaders(pageResponse.headers, headersOut);
479
+ }
480
+ const robots = [pageResponse.headers.get("x-robots-tag"), readHtmlMetaContent(html, "robots")].filter((value) => Boolean(value?.trim())).join(", ");
481
+ if (robots) headersOut.set("X-Robots-Tag", robots);
482
+ const canonical = readHtmlCanonicalHref(html);
483
+ if (canonical) {
484
+ try {
485
+ headersOut.append("Link", `<${new URL(canonical, pageUrl).href}>; rel="canonical"`);
486
+ } catch {
487
+ }
488
+ }
489
+ return createFarmMarkdownViewResponse({
490
+ request: options.request,
491
+ requestUrl,
492
+ markdown,
493
+ status: pageResponse.status,
494
+ headers: headersOut,
495
+ markdownPath,
496
+ actions
497
+ });
498
+ }
499
+ __name(createMarkdownMirrorResponse, "createMarkdownMirrorResponse");
500
+ function createMarkdownAccessResponse(pageResponse, pathname, pageUrl, head) {
501
+ const location = pageResponse.headers.get("location");
502
+ const redirect = pageResponse.status >= 300 && pageResponse.status < 400 && location;
503
+ if (!redirect && pageResponse.status !== 401 && pageResponse.status !== 403) return null;
504
+ const headers = new Headers({
505
+ "Content-Type": "text/markdown; charset=utf-8",
506
+ "Cache-Control": "no-store",
507
+ "X-Farm-Markdown-Route": pathname
508
+ });
509
+ preserveMarkdownResponseCookies(pageResponse.headers, headers);
510
+ preserveMarkdownResponseControlHeaders(pageResponse.headers, headers);
511
+ let body;
512
+ if (redirect) {
513
+ let target;
514
+ try {
515
+ target = new URL(location, pageUrl).href;
516
+ } catch {
517
+ return null;
518
+ }
519
+ headers.set("Location", location);
520
+ body = `# Redirected
521
+
522
+ \`${pathname}\` redirects to [${target}](${target}). The page may require signing in.
523
+ `;
524
+ } else {
525
+ body = pageResponse.status === 401 ? `# Sign-in required
526
+
527
+ \`${pathname}\` requires signing in.
528
+ ` : `# Access denied
529
+
530
+ This account cannot read \`${pathname}\`.
531
+ `;
532
+ }
533
+ return new Response(head ? null : body, { status: pageResponse.status, headers });
534
+ }
535
+ __name(createMarkdownAccessResponse, "createMarkdownAccessResponse");
536
+ function preserveMarkdownResponseControlHeaders(source, target) {
537
+ for (const name of ["WWW-Authenticate", "Proxy-Authenticate", "Retry-After", "Allow"]) {
538
+ const value = source.get(name);
539
+ if (value !== null) target.set(name, value);
540
+ }
541
+ }
542
+ __name(preserveMarkdownResponseControlHeaders, "preserveMarkdownResponseControlHeaders");
543
+ function preserveMarkdownResponseCookies(source, target) {
544
+ const getSetCookie = source.getSetCookie;
545
+ const cookies = typeof getSetCookie === "function" ? getSetCookie.call(source) : source.has("set-cookie") ? [source.get("set-cookie")] : [];
546
+ if (cookies.length === 0) return;
547
+ for (const cookie of cookies) target.append("Set-Cookie", cookie);
548
+ target.set("Cache-Control", "private, no-store");
549
+ }
550
+ __name(preserveMarkdownResponseCookies, "preserveMarkdownResponseCookies");
551
+ function applyMarkdownNegotiationHeaders(response, options) {
552
+ if (!isHtmlResponse(response)) {
553
+ return response;
554
+ }
555
+ const alternatePath = getFarmMarkdownAlternatePath(options.config, options.pathname);
556
+ if (!alternatePath) {
557
+ return response;
558
+ }
559
+ return _withFarmResponseHeaders(response, (headers) => {
560
+ appendHeaderToken(headers, "Vary", "Accept");
561
+ headers.append("Link", `<${alternatePath}>; rel="alternate"; type="text/markdown"`);
562
+ });
563
+ }
564
+ __name(applyMarkdownNegotiationHeaders, "applyMarkdownNegotiationHeaders");
565
+ var CODE_BLOCK_MARK = "\0";
566
+ var CODE_BLOCK_PLACEHOLDER = /\u0000(\d+)\u0000/g;
567
+ var BLOCK_TAGS = /<\/?(ul|ol|main|section|article|header|footer|nav|aside|div|form|fieldset|legend|figure|figcaption|table|thead|tbody|tfoot|tr|dl|dt|dd|details|summary|address)\b[^>]*>/gi;
568
+ var BOX_TAGS = /<\/?(label|button|input|select|textarea|option|output|meter|progress|td|th)\b[^>]*>/gi;
569
+ var LAYOUT_ROW = /<(div|nav|section|header|footer|aside|main|article|figure|figcaption|dt|dd)\b([^>]*)>((?:(?!<\/?(?:div|nav|section|header|footer|aside|main|article|figure|figcaption|dt|dd|p|h[1-6]|ul|ol|li|table|pre|blockquote)\b)[\s\S])*?)<\/\1>/gi;
570
+ var HTML_TOKEN = /<\/?([a-zA-Z][\w:-]*)\b[^>]*?(\/?)>|[^<]+/g;
571
+ function separateLayoutRowItems(source) {
572
+ return source.replace(
573
+ LAYOUT_ROW,
574
+ (container, tag, attributes, content) => {
575
+ const boundaries = [];
576
+ const items = [];
577
+ let depth = 0;
578
+ let previousEnd = -1;
579
+ let item = "";
580
+ for (const match of content.matchAll(HTML_TOKEN)) {
581
+ const [token, name, selfClosing] = match;
582
+ const index = match.index ?? 0;
583
+ if (name === void 0) {
584
+ if (depth === 0) {
585
+ if (token.trim()) return container;
586
+ previousEnd = -1;
587
+ } else {
588
+ item += token;
589
+ }
590
+ continue;
591
+ }
592
+ const closing = token.startsWith("</");
593
+ const isVoid = selfClosing === "/" || VOID_TAGS.has(name.toLowerCase());
594
+ if (closing) {
595
+ depth = Math.max(0, depth - 1);
596
+ } else {
597
+ if (depth === 0 && previousEnd === index) boundaries.push(index);
598
+ if (!isVoid) depth += 1;
599
+ }
600
+ if (depth === 0) {
601
+ previousEnd = index + token.length;
602
+ items.push(decodeHtml(item).trim());
603
+ item = "";
604
+ }
605
+ }
606
+ if (boundaries.length === 0) return container;
607
+ if (items.filter(Boolean).every((text) => text.length === 1)) return container;
608
+ let separated = "";
609
+ let start = 0;
610
+ for (const boundary of boundaries) {
611
+ separated += `${content.slice(start, boundary)} `;
612
+ start = boundary;
613
+ }
614
+ separated += content.slice(start);
615
+ return `<${tag}${attributes}>${separated}</${tag}>`;
616
+ }
617
+ );
618
+ }
619
+ __name(separateLayoutRowItems, "separateLayoutRowItems");
620
+ function htmlToMarkdown(html, options = {}) {
621
+ return convertHtmlToMarkdown(html, options);
622
+ }
623
+ __name(htmlToMarkdown, "htmlToMarkdown");
624
+ function convertHtmlToMarkdown(html, options, region) {
625
+ const title = options.title ?? extractHtmlTitle(html);
626
+ let source = region ?? readHtmlContentRegion(html);
627
+ const codeBlocks = [];
628
+ const setAsideCodeBlock = /* @__PURE__ */ __name((code, attributes) => {
629
+ const content = decodeHtml(stripTags(code)).trim();
630
+ const longestRun = (content.match(/`+/g) ?? []).reduce(
631
+ (longest, run) => Math.max(longest, run.length),
632
+ 0
633
+ );
634
+ const fence = "`".repeat(Math.max(3, longestRun + 1));
635
+ const language = readCodeLanguage(attributes) ?? "";
636
+ codeBlocks.push(`${fence}${language}
637
+ ${content}
638
+ ${fence}`);
639
+ return `
640
+
641
+ ${CODE_BLOCK_MARK}${codeBlocks.length - 1}${CODE_BLOCK_MARK}
642
+
643
+ `;
644
+ }, "setAsideCodeBlock");
645
+ source = source.replace(
646
+ /<pre\b([^>]*)><code\b([^>]*)>([\s\S]*?)<\/code><\/pre>/gi,
647
+ (_, preAttributes, codeAttributes, code) => setAsideCodeBlock(code, [codeAttributes, preAttributes])
648
+ );
649
+ source = source.replace(
650
+ /<pre\b([^>]*)>([\s\S]*?)<\/pre>/gi,
651
+ (_, attributes, code) => setAsideCodeBlock(code, [attributes])
652
+ );
653
+ source = source.replace(
654
+ /<table\b[^>]*>([\s\S]*?)<\/table>/gi,
655
+ (table, content) => {
656
+ if (/<table\b/i.test(content) || content.includes(CODE_BLOCK_MARK)) return table;
657
+ const rows = toMarkdownTableRows(content);
658
+ if (!rows) return table;
659
+ codeBlocks.push(rows);
660
+ return `
661
+
662
+ ${CODE_BLOCK_MARK}${codeBlocks.length - 1}${CODE_BLOCK_MARK}
663
+
664
+ `;
665
+ }
666
+ );
667
+ source = separateLayoutRowItems(source);
668
+ source = source.replace(/<h([1-6])\b[^>]*>([\s\S]*?)<\/h\1>/gi, (_, level, content) => {
669
+ return `
670
+
671
+ ${"#".repeat(Number(level))} ${toInlineMarkdown(content).trim()}
672
+
673
+ `;
674
+ });
675
+ source = source.replace(/<p\b[^>]*>([\s\S]*?)<\/p>/gi, (_, content) => {
676
+ return `
677
+
678
+ ${toInlineMarkdown(content).trim()}
679
+
680
+ `;
681
+ });
682
+ source = source.replace(/<blockquote\b[^>]*>([\s\S]*?)<\/blockquote>/gi, (_, content) => {
683
+ const quote = htmlToMarkdown(content, { includeMetadata: false }).split("\n").filter((line) => line.trim().length > 0).map((line) => {
684
+ const code = line.startsWith(CODE_BLOCK_MARK) && line.endsWith(CODE_BLOCK_MARK) ? codeBlocks[Number(line.slice(1, -1))] : void 0;
685
+ if (code === void 0) return `> ${escapeHtmlText(line)}`;
686
+ codeBlocks.push(
687
+ code.split("\n").map((codeLine) => codeLine ? `> ${codeLine}` : ">").join("\n")
688
+ );
689
+ return `${CODE_BLOCK_MARK}${codeBlocks.length - 1}${CODE_BLOCK_MARK}`;
690
+ }).join("\n");
691
+ return `
692
+
693
+ ${quote}
694
+
695
+ `;
696
+ });
697
+ source = source.replace(
698
+ /<ol\b([^>]*)>([\s\S]*?)<\/ol>/gi,
699
+ (list, attributes, content) => {
700
+ if (/<[ou]l\b/i.test(content)) return list;
701
+ const start = Number.parseInt(readHtmlAttribute(attributes, "start") ?? "1", 10);
702
+ let number = Number.isFinite(start) ? start : 1;
703
+ const items = content.replace(/<li\b[^>]*>([\s\S]*?)<\/li>/gi, (_, item) => {
704
+ return `
705
+ ${number++}. ${toInlineMarkdown(item).trim()}`;
706
+ });
707
+ return `
708
+ ${items}
709
+ `;
710
+ }
711
+ );
712
+ source = source.replace(/<li\b[^>]*>([\s\S]*?)<\/li>/gi, (_, content) => {
713
+ return `
714
+ - ${toInlineMarkdown(content).trim()}`;
715
+ });
716
+ source = source.replace(BLOCK_TAGS, "\n").replace(BOX_TAGS, " ").replace(/<br\s*\/?>/gi, "\n").replace(/<hr\s*\/?>/gi, "\n\n---\n\n");
717
+ let markdown = decodeHtml(stripTags(source)).split("\n").map((line) => line.replace(/[ \t]+/g, " ").trim()).join("\n").replace(/\n{3,}/g, "\n\n").trim().replace(CODE_BLOCK_PLACEHOLDER, (match, index) => codeBlocks[Number(index)] ?? match);
718
+ if (options.includeMetadata !== false) {
719
+ const metadata = [];
720
+ if (title && !markdown.startsWith("# ")) {
721
+ metadata.push(`# ${title}`);
722
+ }
723
+ if (options.sourcePath) {
724
+ metadata.push(`Source: ${options.sourcePath}`);
725
+ }
726
+ if (options.actionsPath) {
727
+ metadata.push(`Actions: ${options.actionsPath}`);
728
+ }
729
+ if (metadata.length) {
730
+ markdown = `${metadata.join("\n\n")}${markdown ? `
731
+
732
+ ${markdown}` : ""}`;
733
+ }
734
+ }
735
+ return `${markdown}
736
+ `;
737
+ }
738
+ __name(convertHtmlToMarkdown, "convertHtmlToMarkdown");
739
+ function normalizeMarkdownRouteInput(input) {
740
+ if (typeof input === "string") {
741
+ return {
742
+ route: normalizeMarkdownRoute(input)
743
+ };
744
+ }
745
+ return {
746
+ ...input,
747
+ route: normalizeMarkdownRoute(input.route)
748
+ };
749
+ }
750
+ __name(normalizeMarkdownRouteInput, "normalizeMarkdownRouteInput");
751
+ function normalizeMarkdownRoute(route) {
752
+ const withoutMarkdownExtension = route.toLowerCase().endsWith(".md") ? route.slice(0, -3) : route;
753
+ const withSlash = withoutMarkdownExtension.startsWith("/") ? withoutMarkdownExtension : `/${withoutMarkdownExtension}`;
754
+ const normalized = withSlash.replace(/\/+/g, "/").replace(/\/$/g, "");
755
+ return normalized === "" || normalized === "/index" ? "/" : normalized;
756
+ }
757
+ __name(normalizeMarkdownRoute, "normalizeMarkdownRoute");
758
+ function farmAcceptQuality(accept, mediaType, options = {}) {
759
+ if (!accept) return 0;
760
+ const target = mediaType.toLowerCase();
761
+ const [targetType] = target.split("/");
762
+ let best = 0;
763
+ for (const entry of accept.split(",")) {
764
+ const [candidate, ...parameters] = entry.trim().toLowerCase().split(";").map((part) => part.trim());
765
+ if (!candidate) continue;
766
+ const matches = candidate === target || options.wildcards === true && (candidate === "*/*" || candidate === `${targetType}/*`);
767
+ if (!matches) continue;
768
+ const quality = parameters.find((parameter) => parameter.startsWith("q="));
769
+ const value = quality === void 0 ? 1 : Number(quality.slice(2));
770
+ if (!Number.isFinite(value) || value <= 0) continue;
771
+ if (value > best) best = value;
772
+ }
773
+ return best;
774
+ }
775
+ __name(farmAcceptQuality, "farmAcceptQuality");
776
+ function requestAcceptsMarkdown(accept) {
777
+ if (!accept) {
778
+ return false;
779
+ }
780
+ return accept.split(",").some((entry) => {
781
+ const [mediaType, ...parameters] = entry.trim().toLowerCase().split(";").map((part) => part.trim());
782
+ if (mediaType !== "text/markdown") {
783
+ return false;
784
+ }
785
+ const quality = parameters.find((parameter) => parameter.startsWith("q="));
786
+ return quality === void 0 || Number(quality.slice(2)) > 0;
787
+ });
788
+ }
789
+ __name(requestAcceptsMarkdown, "requestAcceptsMarkdown");
790
+ function getMarkdownAlternatePath(pathname) {
791
+ return pathname === "/" ? "/index.md" : `${pathname}.md`;
792
+ }
793
+ __name(getMarkdownAlternatePath, "getMarkdownAlternatePath");
794
+ function getFarmMarkdownMirrorPath(pathname) {
795
+ return getMarkdownAlternatePath(pathname);
796
+ }
797
+ __name(getFarmMarkdownMirrorPath, "getFarmMarkdownMirrorPath");
798
+ function getFarmMarkdownAlternatePath(config, pathname) {
799
+ const target = resolveMarkdownMirrorTarget(config, pathname, { accept: "text/markdown" });
800
+ return target ? getMarkdownAlternatePath(target.pathname) : null;
801
+ }
802
+ __name(getFarmMarkdownAlternatePath, "getFarmMarkdownAlternatePath");
803
+ function isFarmMarkdownMirrorExposed(config, pathname) {
804
+ if (!config?.enabled) return false;
805
+ return config.expose === true || findExposedMarkdownRoute(config, pathname) !== null;
806
+ }
807
+ __name(isFarmMarkdownMirrorExposed, "isFarmMarkdownMirrorExposed");
808
+ function matchesFarmMarkdownRoutePattern(pattern, pathname) {
809
+ return routeMatches(pattern, pathname);
810
+ }
811
+ __name(matchesFarmMarkdownRoutePattern, "matchesFarmMarkdownRoutePattern");
812
+ function appendHeaderToken(headers, name, token) {
813
+ const current = headers.get(name);
814
+ if (!current) {
815
+ headers.set(name, token);
816
+ return;
817
+ }
818
+ const tokens = current.split(",").map((value) => value.trim().toLowerCase());
819
+ if (!tokens.includes(token.toLowerCase())) {
820
+ headers.set(name, `${current}, ${token}`);
821
+ }
822
+ }
823
+ __name(appendHeaderToken, "appendHeaderToken");
824
+ function findExposedMarkdownRoute(config, pathname) {
825
+ if (config.expose === true) {
826
+ return null;
827
+ }
828
+ return config.expose.find((route) => routeMatches(route.route, pathname)) ?? null;
829
+ }
830
+ __name(findExposedMarkdownRoute, "findExposedMarkdownRoute");
831
+ function routeMatches(pattern, pathname) {
832
+ if (pattern === pathname) {
833
+ return true;
834
+ }
835
+ if (!pattern.includes("[")) return false;
836
+ let source = "";
837
+ pattern.split("/").forEach((segment, index) => {
838
+ if (/^\[\[\.\.\.[^\]]+\]\]$/.test(segment)) {
839
+ source += "(?:/.*)?";
840
+ return;
841
+ }
842
+ const prefix = index === 0 ? "" : "/";
843
+ if (/^\[\.\.\.[^\]]+\]$/.test(segment)) {
844
+ source += `${prefix}.*`;
845
+ } else if (/^\[[^\]]+\]$/.test(segment)) {
846
+ source += `${prefix}[^/]+`;
847
+ } else {
848
+ source += prefix + segment.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
849
+ }
850
+ });
851
+ return new RegExp(`^${source}$`).test(pathname);
852
+ }
853
+ __name(routeMatches, "routeMatches");
854
+ function isHtmlResponse(response) {
855
+ const contentType = response.headers.get("content-type") ?? "";
856
+ return contentType.includes("text/html");
857
+ }
858
+ __name(isHtmlResponse, "isHtmlResponse");
859
+ function isPrivateCacheControl(value) {
860
+ return value.split(",").some((directive) => {
861
+ const name = directive.split("=", 1)[0].trim().toLowerCase();
862
+ return name === "private" || name === "no-store";
863
+ });
864
+ }
865
+ __name(isPrivateCacheControl, "isPrivateCacheControl");
866
+ function createMarkdownCacheHeader(cache) {
867
+ if (cache === false || cache <= 0) {
868
+ return "no-store";
869
+ }
870
+ return `public, max-age=${cache}, s-maxage=${cache}`;
871
+ }
872
+ __name(createMarkdownCacheHeader, "createMarkdownCacheHeader");
873
+ function extractHtmlTitle(html) {
874
+ const match = html.match(/<title\b[^>]*>([\s\S]*?)<\/title>/i);
875
+ return match ? decodeHtml(stripTags(match[1])).trim() : void 0;
876
+ }
877
+ __name(extractHtmlTitle, "extractHtmlTitle");
878
+ function readHtmlContentRegion(html) {
879
+ const streamed = readStreamedBoundaryInstructions(html);
880
+ return extractHtmlBody(
881
+ removeHiddenElements(
882
+ resolveStreamedBoundaries(
883
+ html.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi, "").replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi, "").replace(/<noscript\b[^>]*>[\s\S]*?<\/noscript>/gi, ""),
884
+ streamed
885
+ ).replace(/<!--[\s\S]*?-->/g, "")
886
+ )
887
+ );
888
+ }
889
+ __name(readHtmlContentRegion, "readHtmlContentRegion");
890
+ function extractHtmlBody(html) {
891
+ const rootMatch = html.match(
892
+ /<div\b[^>]*id=["']root["'][^>]*>([\s\S]*?)<\/div>\s*(?:<script|<\/body>|$)/i
893
+ );
894
+ const bodyMatch = html.match(/<body\b[^>]*>([\s\S]*?)<\/body>/i);
895
+ const body = rootMatch ? rootMatch[1] : bodyMatch ? bodyMatch[1] : html;
896
+ const main = extractFirstElementContent(body, ["main"]);
897
+ if (main !== void 0) return main;
898
+ const articles = body.match(/<article\b/gi)?.length ?? 0;
899
+ return articles === 1 ? extractFirstElementContent(body, ["article"]) ?? body : body;
900
+ }
901
+ __name(extractHtmlBody, "extractHtmlBody");
902
+ function extractFirstElementContent(html, tagNames) {
903
+ for (const tagName of tagNames) {
904
+ const match = html.match(new RegExp(`<${tagName}\\b[^>]*>([\\s\\S]*?)<\\/${tagName}>`, "i"));
905
+ if (match) {
906
+ return match[1];
907
+ }
908
+ }
909
+ return void 0;
910
+ }
911
+ __name(extractFirstElementContent, "extractFirstElementContent");
912
+ function readHtmlMetaContent(html, name) {
913
+ for (const match of html.matchAll(/<meta\b([^>]*)>/gi)) {
914
+ if (readHtmlAttribute(match[1], "name")?.toLowerCase() === name) {
915
+ return readHtmlAttribute(match[1], "content");
916
+ }
917
+ }
918
+ return void 0;
919
+ }
920
+ __name(readHtmlMetaContent, "readHtmlMetaContent");
921
+ function readHtmlCanonicalHref(html) {
922
+ for (const match of html.matchAll(/<link\b([^>]*)>/gi)) {
923
+ const rel = readHtmlAttribute(match[1], "rel")?.toLowerCase().split(/\s+/);
924
+ if (rel?.includes("canonical")) return readHtmlAttribute(match[1], "href");
925
+ }
926
+ return void 0;
927
+ }
928
+ __name(readHtmlCanonicalHref, "readHtmlCanonicalHref");
929
+ var FORM_ENCTYPES = /* @__PURE__ */ new Set([
930
+ "application/x-www-form-urlencoded",
931
+ "multipart/form-data",
932
+ "text/plain"
933
+ ]);
934
+ function extractFarmPageActions(html, pageUrl) {
935
+ if (!/<form\b/i.test(html)) return [];
936
+ return extractPageActionsFromRegion(readHtmlContentRegion(html), pageUrl);
937
+ }
938
+ __name(extractFarmPageActions, "extractFarmPageActions");
939
+ function extractPageActionsFromRegion(region, pageUrl) {
940
+ const labelsFor = /* @__PURE__ */ new Map();
941
+ for (const match of region.matchAll(/<label\b([^>]*)>([\s\S]*?)<\/label>/gi)) {
942
+ const target = readDecodedAttribute(match[1], "for");
943
+ if (target && !labelsFor.has(target)) labelsFor.set(target, readLabelText(match[2]));
944
+ }
945
+ const actions = [];
946
+ for (const form of region.matchAll(/<form\b([^>]*)>([\s\S]*?)<\/form>/gi)) {
947
+ const action = readPageForm(form[1], form[2], pageUrl, labelsFor);
948
+ if (action) actions.push(action);
949
+ }
950
+ return actions;
951
+ }
952
+ __name(extractPageActionsFromRegion, "extractPageActionsFromRegion");
953
+ function readPageForm(attributes, content, pageUrl, labelsFor) {
954
+ const method = readDecodedAttribute(attributes, "method")?.trim().toLowerCase();
955
+ if (method === "dialog") return void 0;
956
+ const target = resolveFormTarget(readDecodedAttribute(attributes, "action"), pageUrl);
957
+ const form = {
958
+ type: "form",
959
+ method: method === "post" ? "POST" : "GET",
960
+ fields: [],
961
+ submit: []
962
+ };
963
+ const name = readDecodedAttribute(attributes, "aria-label") ?? readDecodedAttribute(attributes, "name") ?? readDecodedAttribute(attributes, "id");
964
+ if (name?.trim()) form.name = name.trim();
965
+ if (target) form.action = target;
966
+ else form.requiresJavaScript = true;
967
+ if (form.method === "POST") {
968
+ const enctype = readDecodedAttribute(attributes, "enctype")?.trim().toLowerCase();
969
+ form.enctype = enctype && FORM_ENCTYPES.has(enctype) ? enctype : "application/x-www-form-urlencoded";
970
+ }
971
+ const wrappingLabels = [...content.matchAll(/<label\b[^>]*>([\s\S]*?)<\/label>/gi)].map(
972
+ (match) => ({
973
+ start: match.index,
974
+ end: match.index + match[0].length,
975
+ text: readLabelText(match[1])
976
+ })
977
+ );
978
+ const labelOf = /* @__PURE__ */ __name((controlAttributes, index) => {
979
+ const aria = readDecodedAttribute(controlAttributes, "aria-label")?.trim();
980
+ if (aria) return aria;
981
+ const id = readDecodedAttribute(controlAttributes, "id");
982
+ const forLabel = id ? labelsFor.get(id) : void 0;
983
+ if (forLabel) return forLabel;
984
+ const wrapping = wrappingLabels.find((label) => label.start < index && index < label.end);
985
+ return wrapping?.text || void 0;
986
+ }, "labelOf");
987
+ const groups = /* @__PURE__ */ new Map();
988
+ const controls = /<(input)\b([^>]*)>|<(select|textarea|button)\b([^>]*)>([\s\S]*?)<\/\3>/gi;
989
+ for (const match of content.matchAll(controls)) {
990
+ const tag = (match[1] ?? match[3]).toLowerCase();
991
+ const controlAttributes = match[2] ?? match[4];
992
+ const inner = match[5] ?? "";
993
+ if (hasHtmlAttribute(controlAttributes, "disabled")) continue;
994
+ const label = labelOf(controlAttributes, match.index);
995
+ const fieldName = readDecodedAttribute(controlAttributes, "name");
996
+ const typeAttribute = readDecodedAttribute(controlAttributes, "type")?.trim().toLowerCase();
997
+ const type = tag === "input" ? typeAttribute ?? "text" : tag === "button" ? typeAttribute ?? "submit" : tag;
998
+ if (tag === "button" && !["button", "reset"].includes(type) || tag === "input" && (type === "submit" || type === "image")) {
999
+ const submit = {
1000
+ label: (tag === "button" ? readLabelText(inner) : "") || readDecodedAttribute(controlAttributes, "value") || readDecodedAttribute(controlAttributes, "alt") || label || "Submit"
1001
+ };
1002
+ if (fieldName) submit.name = fieldName;
1003
+ const value = readDecodedAttribute(controlAttributes, "value");
1004
+ if (fieldName && value !== void 0) submit.value = value;
1005
+ const formAction = readDecodedAttribute(controlAttributes, "formaction");
1006
+ if (formAction !== void 0) {
1007
+ const resolved = resolveFormTarget(formAction, pageUrl);
1008
+ if (resolved) submit.action = resolved;
1009
+ }
1010
+ const formMethod = readDecodedAttribute(controlAttributes, "formmethod")?.toLowerCase();
1011
+ if (formMethod === "get" || formMethod === "post") submit.method = formMethod.toUpperCase();
1012
+ form.submit.push(submit);
1013
+ continue;
1014
+ }
1015
+ if (tag === "button" || type === "button" || type === "reset" || !fieldName) continue;
1016
+ if (type === "hidden") {
1017
+ const value = readDecodedAttribute(controlAttributes, "value") ?? "";
1018
+ form.fields.push({ name: fieldName, type, value });
1019
+ if (fieldName.startsWith("$ACTION_ID_")) {
1020
+ form.serverAction ?? (form.serverAction = { id: fieldName.slice("$ACTION_ID_".length) });
1021
+ } else if (/^\$ACTION_[^:]*:0$/.test(fieldName)) {
1022
+ try {
1023
+ const id = JSON.parse(value).id;
1024
+ if (typeof id === "string") form.serverAction ?? (form.serverAction = { id });
1025
+ } catch {
1026
+ }
1027
+ }
1028
+ continue;
1029
+ }
1030
+ if (type === "radio" || type === "checkbox") {
1031
+ const value = readDecodedAttribute(controlAttributes, "value") ?? "on";
1032
+ const option = { value };
1033
+ if (label) option.label = label;
1034
+ if (hasHtmlAttribute(controlAttributes, "checked")) option.selected = true;
1035
+ const group = groups.get(fieldName);
1036
+ if (group) {
1037
+ group.options.push(option);
1038
+ if (hasHtmlAttribute(controlAttributes, "required")) group.required = true;
1039
+ continue;
1040
+ }
1041
+ const field2 = { name: fieldName, type, options: [option] };
1042
+ if (hasHtmlAttribute(controlAttributes, "required")) field2.required = true;
1043
+ groups.set(fieldName, field2);
1044
+ form.fields.push(field2);
1045
+ continue;
1046
+ }
1047
+ const field = { name: fieldName, type };
1048
+ if (label) field.label = label;
1049
+ if (hasHtmlAttribute(controlAttributes, "required")) field.required = true;
1050
+ if (hasHtmlAttribute(controlAttributes, "multiple")) field.multiple = true;
1051
+ if (tag === "select") {
1052
+ field.options = [...inner.matchAll(/<option\b([^>]*)>([\s\S]*?)(?=<\/option>|<option\b|$)/gi)].filter((option) => !hasHtmlAttribute(option[1], "disabled")).map((option) => {
1053
+ const text = readLabelText(option[2]);
1054
+ const entry = {
1055
+ value: readDecodedAttribute(option[1], "value") ?? text
1056
+ };
1057
+ if (text && text !== entry.value) entry.label = text;
1058
+ if (hasHtmlAttribute(option[1], "selected")) entry.selected = true;
1059
+ return entry;
1060
+ });
1061
+ } else if (tag === "textarea") {
1062
+ const value = decodeHtml(inner);
1063
+ if (value) field.value = value;
1064
+ } else {
1065
+ const value = readDecodedAttribute(controlAttributes, "value");
1066
+ if (value !== void 0 && type !== "password" && type !== "file") field.value = value;
1067
+ }
1068
+ for (const key of ["placeholder", "pattern", "min", "max", "step", "accept"]) {
1069
+ const value = readDecodedAttribute(controlAttributes, key);
1070
+ if (value !== void 0) field[key] = value;
1071
+ }
1072
+ for (const [attribute, key] of [
1073
+ ["minlength", "minLength"],
1074
+ ["maxlength", "maxLength"]
1075
+ ]) {
1076
+ const value = Number.parseInt(readDecodedAttribute(controlAttributes, attribute) ?? "", 10);
1077
+ if (Number.isFinite(value) && value >= 0) field[key] = value;
1078
+ }
1079
+ form.fields.push(field);
1080
+ }
1081
+ if (form.fields.length === 0 && form.submit.length === 0) return void 0;
1082
+ if (form.submit.length === 0) form.submit.push({ label: "Submit" });
1083
+ return form;
1084
+ }
1085
+ __name(readPageForm, "readPageForm");
1086
+ function resolveFormTarget(action, pageUrl) {
1087
+ let target;
1088
+ try {
1089
+ target = new URL(action?.trim() || pageUrl.href, pageUrl);
1090
+ } catch {
1091
+ return void 0;
1092
+ }
1093
+ if (target.protocol !== "http:" && target.protocol !== "https:") return void 0;
1094
+ target.hash = "";
1095
+ return target.origin === pageUrl.origin ? `${target.pathname}${target.search}` : target.href;
1096
+ }
1097
+ __name(resolveFormTarget, "resolveFormTarget");
1098
+ function readLabelText(html) {
1099
+ return decodeHtml(stripTags(html.replace(/<(select|textarea|button)\b[\s\S]*?<\/\1>/gi, " "))).replace(/\s+/g, " ").trim();
1100
+ }
1101
+ __name(readLabelText, "readLabelText");
1102
+ function readDecodedAttribute(attributes, name) {
1103
+ const value = readHtmlAttribute(attributes, name);
1104
+ return value === void 0 ? void 0 : decodeHtml(value);
1105
+ }
1106
+ __name(readDecodedAttribute, "readDecodedAttribute");
1107
+ function hasHtmlAttribute(attributes, name) {
1108
+ return new RegExp(`(?:^|\\s)${name}(?=\\s|=|/|$)`, "i").test(attributes);
1109
+ }
1110
+ __name(hasHtmlAttribute, "hasHtmlAttribute");
1111
+ function readHtmlAttribute(attributes, name) {
1112
+ const match = new RegExp(
1113
+ `(?:^|\\s)${name}\\s*=\\s*(?:"([^"]*)"|'([^']*)'|([^\\s"'=<>\`]+))`,
1114
+ "i"
1115
+ ).exec(attributes);
1116
+ return match ? match[1] ?? match[2] ?? match[3] : void 0;
1117
+ }
1118
+ __name(readHtmlAttribute, "readHtmlAttribute");
1119
+ function readCodeLanguage(attributesList) {
1120
+ for (const attributes of attributesList) {
1121
+ const language = readHtmlAttribute(attributes, "data-language") ?? readHtmlAttribute(attributes, "data-lang") ?? readHtmlAttribute(attributes, "class")?.match(/(?:^|\s)lang(?:uage)?-(\S+)/)?.[1];
1122
+ if (language && /^[\w#+.-]+$/.test(language)) return language;
1123
+ }
1124
+ return void 0;
1125
+ }
1126
+ __name(readCodeLanguage, "readCodeLanguage");
1127
+ function toMarkdownTableRows(content) {
1128
+ const rows = [];
1129
+ for (const [, row] of content.matchAll(/<tr\b[^>]*>([\s\S]*?)<\/tr>/gi)) {
1130
+ const cells = [];
1131
+ for (const [, , attributes, cell] of row.matchAll(/<(td|th)\b([^>]*)>([\s\S]*?)<\/\1>/gi)) {
1132
+ cells.push(decodeHtml(toInlineMarkdown(cell)).trim().replace(/\|/g, "\\|"));
1133
+ const span = Number.parseInt(readHtmlAttribute(attributes, "colspan") ?? "1", 10);
1134
+ for (let extra = 1; extra < Math.min(span, 1e3); extra++) cells.push("");
1135
+ }
1136
+ if (cells.length) rows.push(cells);
1137
+ }
1138
+ if (!rows.length) return void 0;
1139
+ const columns = rows.reduce((widest, row) => Math.max(widest, row.length), 0);
1140
+ const line = /* @__PURE__ */ __name((cells) => `| ${Array.from({ length: columns }, (_, index) => cells[index] ?? "").join(" | ")} |`.replace(
1141
+ / {2,}/g,
1142
+ " "
1143
+ ), "line");
1144
+ return [line(rows[0]), line(Array(columns).fill("---")), ...rows.slice(1).map(line)].join("\n");
1145
+ }
1146
+ __name(toMarkdownTableRows, "toMarkdownTableRows");
1147
+ function toInlineMarkdown(html) {
1148
+ let source = html.replace(/<a\b[^>]*href=["']([^"']+)["'][^>]*>([\s\S]*?)<\/a>/gi, (_, href, text) => {
1149
+ const label = toInlineMarkdown(text).trim() || href;
1150
+ return `[${label}](${href})`;
1151
+ }).replace(/<img\b([^>]*)>/gi, (_, attributes) => {
1152
+ const src = readHtmlAttribute(attributes, "src");
1153
+ const alt = readHtmlAttribute(attributes, "alt") ?? "";
1154
+ if (!src) return alt;
1155
+ if (/^data:/i.test(src.trim())) return alt;
1156
+ return `![${alt}](${src})`;
1157
+ }).replace(/<strong\b[^>]*>([\s\S]*?)<\/strong>/gi, (_, content) => {
1158
+ return `**${toInlineMarkdown(content).trim()}**`;
1159
+ }).replace(/<b\b[^>]*>([\s\S]*?)<\/b>/gi, (_, content) => {
1160
+ return `**${toInlineMarkdown(content).trim()}**`;
1161
+ }).replace(/<em\b[^>]*>([\s\S]*?)<\/em>/gi, (_, content) => {
1162
+ return `_${toInlineMarkdown(content).trim()}_`;
1163
+ }).replace(/<i\b[^>]*>([\s\S]*?)<\/i>/gi, (_, content) => {
1164
+ return `_${toInlineMarkdown(content).trim()}_`;
1165
+ }).replace(/<code\b[^>]*>([\s\S]*?)<\/code>/gi, (_, content) => {
1166
+ return `\`${stripTags(content).trim()}\``;
1167
+ }).replace(/<br\s*\/?>/gi, "\n").replace(BLOCK_TAGS, " ").replace(BOX_TAGS, " ");
1168
+ return stripTags(source).replace(/\s+/g, " ");
1169
+ }
1170
+ __name(toInlineMarkdown, "toInlineMarkdown");
1171
+ var VOID_TAGS = /* @__PURE__ */ new Set([
1172
+ "area",
1173
+ "base",
1174
+ "br",
1175
+ "col",
1176
+ "embed",
1177
+ "hr",
1178
+ "img",
1179
+ "input",
1180
+ "link",
1181
+ "meta",
1182
+ "source",
1183
+ "track",
1184
+ "wbr"
1185
+ ]);
1186
+ function removeHiddenElements(html) {
1187
+ if (!/hidden/i.test(html)) return html;
1188
+ const openingTag = /<([a-zA-Z][\w:-]*)((?:[^>"']|"[^"]*"|'[^']*')*)>/g;
1189
+ let closingTags;
1190
+ let result = "";
1191
+ let cursor = 0;
1192
+ let match;
1193
+ while (match = openingTag.exec(html)) {
1194
+ const [tag, name, attributes] = match;
1195
+ if (!isHiddenElement(attributes)) continue;
1196
+ const start = match.index;
1197
+ let end = start + tag.length;
1198
+ if (!VOID_TAGS.has(name.toLowerCase()) && !isSelfClosingTag(tag)) {
1199
+ closingTags ?? (closingTags = matchClosingTags(html));
1200
+ const close = closingTags.get(start);
1201
+ if (close === void 0) continue;
1202
+ end = close;
1203
+ }
1204
+ result += html.slice(cursor, start);
1205
+ cursor = end;
1206
+ openingTag.lastIndex = end;
1207
+ }
1208
+ return result + html.slice(cursor);
1209
+ }
1210
+ __name(removeHiddenElements, "removeHiddenElements");
1211
+ function isHiddenElement(attributes) {
1212
+ const attribute = /([^\s"'=<>/]+)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s"'=<>`]+)))?/g;
1213
+ let match;
1214
+ while (match = attribute.exec(attributes)) {
1215
+ const name = match[1].toLowerCase();
1216
+ const value = (match[2] ?? match[3] ?? match[4] ?? "").trim().toLowerCase();
1217
+ if (name === "aria-hidden" && value === "true") return true;
1218
+ if (name === "hidden" && value !== "until-found") return true;
1219
+ }
1220
+ return false;
1221
+ }
1222
+ __name(isHiddenElement, "isHiddenElement");
1223
+ function isSelfClosingTag(tag) {
1224
+ return /(?:^<[a-zA-Z][\w:-]*|[\s"'])\/>$/.test(tag);
1225
+ }
1226
+ __name(isSelfClosingTag, "isSelfClosingTag");
1227
+ function matchClosingTags(html) {
1228
+ const tags = /<(\/?)([a-zA-Z][\w:-]*)(?:[^>"']|"[^"]*"|'[^']*')*>/g;
1229
+ const open = /* @__PURE__ */ new Map();
1230
+ const closes = /* @__PURE__ */ new Map();
1231
+ let match;
1232
+ while (match = tags.exec(html)) {
1233
+ const name = match[2].toLowerCase();
1234
+ if (match[1]) {
1235
+ const start = open.get(name)?.pop();
1236
+ if (start !== void 0) closes.set(start, match.index + match[0].length);
1237
+ } else if (!VOID_TAGS.has(name) && !isSelfClosingTag(match[0])) {
1238
+ let starts = open.get(name);
1239
+ if (!starts) open.set(name, starts = []);
1240
+ starts.push(match.index);
1241
+ }
1242
+ }
1243
+ return closes;
1244
+ }
1245
+ __name(matchClosingTags, "matchClosingTags");
1246
+ function readStreamedBoundaryInstructions(html) {
1247
+ const boundaries = /* @__PURE__ */ new Map();
1248
+ const placeholders = /* @__PURE__ */ new Map();
1249
+ for (const [, script] of html.matchAll(/<script\b[^>]*>([\s\S]*?)<\/script>/gi)) {
1250
+ for (const [, kind, first, second] of script.matchAll(
1251
+ /\$R([CRS])\("([^"\\]+)","([^"\\]+)"/g
1252
+ )) {
1253
+ if (kind === "S") placeholders.set(second, first);
1254
+ else boundaries.set(first, second);
1255
+ }
1256
+ }
1257
+ return { boundaries, placeholders };
1258
+ }
1259
+ __name(readStreamedBoundaryInstructions, "readStreamedBoundaryInstructions");
1260
+ function resolveStreamedBoundaries(html, { boundaries, placeholders }) {
1261
+ if (boundaries.size === 0 && placeholders.size === 0) return html;
1262
+ const wanted = /* @__PURE__ */ new Set([...boundaries.values(), ...placeholders.values()]);
1263
+ const segments = /* @__PURE__ */ new Map();
1264
+ const closingTags = matchClosingTags(html);
1265
+ const openingTag = /<([a-zA-Z][\w:-]*)((?:[^>"']|"[^"]*"|'[^']*')*)>/g;
1266
+ let page = "";
1267
+ let cursor = 0;
1268
+ let match;
1269
+ while (match = openingTag.exec(html)) {
1270
+ const id = /\sid="([^"]*)"/.exec(match[2])?.[1];
1271
+ if (!id || !wanted.has(id) || segments.has(id)) continue;
1272
+ const close = closingTags.get(match.index);
1273
+ if (close === void 0) continue;
1274
+ const contentStart = match.index + match[0].length;
1275
+ segments.set(id, html.slice(contentStart, html.lastIndexOf("<", close - 1)));
1276
+ page += html.slice(cursor, match.index);
1277
+ cursor = close;
1278
+ openingTag.lastIndex = close;
1279
+ }
1280
+ page += html.slice(cursor);
1281
+ const used = /* @__PURE__ */ new Set();
1282
+ const expand = /* @__PURE__ */ __name((fragment) => {
1283
+ const template = /<template\b[^>]*\sid="([^"]+)"[^>]*>\s*<\/template>/gi;
1284
+ let output = "";
1285
+ let position = 0;
1286
+ let found;
1287
+ while (found = template.exec(fragment)) {
1288
+ const id = found[1];
1289
+ const segmentId = boundaries.get(id) ?? placeholders.get(id);
1290
+ const segment = segmentId === void 0 ? void 0 : segments.get(segmentId);
1291
+ if (segment === void 0 || used.has(segmentId)) continue;
1292
+ used.add(segmentId);
1293
+ output += fragment.slice(position, found.index) + expand(segment);
1294
+ position = found.index + found[0].length;
1295
+ if (boundaries.has(id)) {
1296
+ const marker = /<!--(\/?)(?:\$[?!~]?|&)-->/g;
1297
+ marker.lastIndex = position;
1298
+ let depth = 0;
1299
+ let end;
1300
+ while (end = marker.exec(fragment)) {
1301
+ if (!end[1]) depth += 1;
1302
+ else if (depth === 0) break;
1303
+ else depth -= 1;
1304
+ }
1305
+ if (end) position = end.index;
1306
+ }
1307
+ template.lastIndex = position;
1308
+ }
1309
+ return output + fragment.slice(position);
1310
+ }, "expand");
1311
+ return expand(page);
1312
+ }
1313
+ __name(resolveStreamedBoundaries, "resolveStreamedBoundaries");
1314
+ function stripTags(input) {
1315
+ return input.replace(/<[^>]+>/g, "");
1316
+ }
1317
+ __name(stripTags, "stripTags");
1318
+ function escapeHtmlText(input) {
1319
+ return input.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
1320
+ }
1321
+ __name(escapeHtmlText, "escapeHtmlText");
1322
+ function decodeHtml(input) {
1323
+ return input.replace(/&(?:nbsp|amp|lt|gt|quot|#39|#(?:x|X)[0-9a-fA-F]+|#[0-9]+);/g, (entity) => {
1324
+ switch (entity) {
1325
+ case "&nbsp;":
1326
+ return " ";
1327
+ case "&amp;":
1328
+ return "&";
1329
+ case "&lt;":
1330
+ return "<";
1331
+ case "&gt;":
1332
+ return ">";
1333
+ case "&quot;":
1334
+ return '"';
1335
+ case "&#39;":
1336
+ return "'";
1337
+ }
1338
+ const hexadecimal = entity[2] === "x" || entity[2] === "X";
1339
+ const codePoint = Number.parseInt(entity.slice(hexadecimal ? 3 : 2, -1), hexadecimal ? 16 : 10);
1340
+ return codePoint === 0 || codePoint > 1114111 || codePoint >= 55296 && codePoint <= 57343 ? "\uFFFD" : String.fromCodePoint(codePoint);
1341
+ });
1342
+ }
1343
+ __name(decodeHtml, "decodeHtml");
1344
+
1345
+ export {
1346
+ createFarmMarkdownViewResponse,
1347
+ FARM_MARKDOWN_CONTENT_TYPE,
1348
+ farmRequestWantsMarkdown,
1349
+ createFarmMarkdownErrorBody,
1350
+ resolveMarkdownConfig,
1351
+ resolveMarkdownMirrorTarget,
1352
+ createMarkdownMirrorResponse,
1353
+ applyMarkdownNegotiationHeaders,
1354
+ htmlToMarkdown,
1355
+ farmAcceptQuality,
1356
+ requestAcceptsMarkdown,
1357
+ getFarmMarkdownMirrorPath,
1358
+ getFarmMarkdownAlternatePath,
1359
+ isFarmMarkdownMirrorExposed,
1360
+ matchesFarmMarkdownRoutePattern,
1361
+ extractFarmPageActions
1362
+ };