@farm.js/core 0.1.61 → 0.1.62

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 (1294) hide show
  1. package/dist/after.cjs +3 -3
  2. package/dist/after.d.mts +25 -0
  3. package/dist/after.d.ts +25 -0
  4. package/dist/after.mjs +2 -2
  5. package/dist/agent-mcp-handler-7QMX2LUY.mjs +18 -0
  6. package/dist/agent-mcp-handler-OV4WRFBL.cjs +18 -0
  7. package/dist/agent-mcp.d-BKZ3UNbt.d.mts +115 -0
  8. package/dist/agent-mcp.d-C1zr_nGS.d.ts +115 -0
  9. package/dist/agent-runtime.cjs +36 -59
  10. package/dist/agent-runtime.d.mts +105 -0
  11. package/dist/agent-runtime.d.ts +105 -0
  12. package/dist/agent-runtime.mjs +35 -58
  13. package/dist/analyzer-2AHWJJR7.cjs +15 -0
  14. package/dist/analyzer-YESYU3GK.mjs +15 -0
  15. package/dist/api/client.cjs +16 -15
  16. package/dist/api/client.d.mts +5 -0
  17. package/dist/api/client.d.ts +5 -0
  18. package/dist/api/client.mjs +14 -13
  19. package/dist/api/client.native.cjs +45 -0
  20. package/dist/api/client.native.d.mts +23 -0
  21. package/dist/api/client.native.d.ts +23 -0
  22. package/dist/api/client.native.mjs +45 -0
  23. package/dist/api/route-manager.cjs +41 -39
  24. package/dist/api/route-manager.d.mts +119 -0
  25. package/dist/api/route-manager.d.ts +119 -0
  26. package/dist/api/route-manager.mjs +40 -38
  27. package/dist/api/runtime.cjs +24 -22
  28. package/dist/api/runtime.d.mts +35 -0
  29. package/dist/api/runtime.d.ts +35 -0
  30. package/dist/api/runtime.mjs +24 -22
  31. package/dist/api-client.d-BNLXNCXJ.d.mts +622 -0
  32. package/dist/api-client.d-ddQBNGtu.d.ts +622 -0
  33. package/dist/api.cjs +52 -50
  34. package/dist/api.d.mts +103 -0
  35. package/dist/api.d.ts +103 -0
  36. package/dist/api.mjs +51 -49
  37. package/dist/app-manifest.d-BpvhfKRH.d.mts +120 -0
  38. package/dist/app-manifest.d-ntch_bvA.d.ts +120 -0
  39. package/dist/app-markdown.cjs +15 -15
  40. package/dist/app-markdown.d.mts +48 -0
  41. package/dist/app-markdown.d.ts +48 -0
  42. package/dist/app-markdown.mjs +14 -14
  43. package/dist/app.d-AE8_v3Db.d.ts +563 -0
  44. package/dist/app.d-CysWA_8v.d.mts +563 -0
  45. package/dist/base-path.d-BOUV5ozD.d.mts +10 -0
  46. package/dist/base-path.d-BOUV5ozD.d.ts +10 -0
  47. package/dist/cache.cjs +10 -7
  48. package/dist/cache.d.mts +333 -0
  49. package/dist/cache.d.ts +333 -0
  50. package/dist/cache.mjs +9 -6
  51. package/dist/chunk-22W4FNTG.mjs +538 -0
  52. package/dist/chunk-23LVFSID.mjs +182 -0
  53. package/dist/chunk-25T5VXOE.mjs +1093 -0
  54. package/dist/chunk-2CNKQC3G.mjs +433 -0
  55. package/dist/chunk-2DA7CLY7.mjs +560 -0
  56. package/dist/chunk-2DLGV2ZG.mjs +71 -0
  57. package/dist/chunk-2HW5LWAH.cjs +19 -0
  58. package/dist/chunk-2I6PUKWJ.mjs +44 -0
  59. package/dist/chunk-2JYBLE63.mjs +9482 -0
  60. package/dist/chunk-2KMIJDY6.cjs +20 -0
  61. package/dist/chunk-2NGZFOKG.mjs +190 -0
  62. package/dist/chunk-2OF5RPVU.cjs +44 -0
  63. package/dist/chunk-2WZTGPK6.mjs +65 -0
  64. package/dist/chunk-2XGBJSDV.cjs +408 -0
  65. package/dist/chunk-3BIASUGR.cjs +59 -0
  66. package/dist/chunk-3CCAICF7.cjs +651 -0
  67. package/dist/chunk-3EEET2Q5.cjs +1044 -0
  68. package/dist/chunk-3EIPOTZV.cjs +272 -0
  69. package/dist/chunk-3HLQTOVU.cjs +6 -0
  70. package/dist/chunk-3OJNNCDL.cjs +2250 -0
  71. package/dist/chunk-3TXKFRSO.mjs +657 -0
  72. package/dist/chunk-3UZVPO72.mjs +387 -0
  73. package/dist/chunk-43V3ANPQ.mjs +251 -0
  74. package/dist/chunk-46P5KNTE.mjs +8 -0
  75. package/dist/chunk-47JV57DA.cjs +69 -0
  76. package/dist/chunk-4BS3HSY7.cjs +541 -0
  77. package/dist/chunk-4DCWVSL2.cjs +15 -0
  78. package/dist/chunk-4EBC7EMW.cjs +8 -0
  79. package/dist/chunk-4IHMHFQB.cjs +458 -0
  80. package/dist/chunk-4MU4QCX4.mjs +158 -0
  81. package/dist/chunk-4P5634G6.cjs +386 -0
  82. package/dist/chunk-4ZJ5C7UJ.cjs +75 -0
  83. package/dist/chunk-52Y3C3HG.mjs +421 -0
  84. package/dist/chunk-53EHWHT2.cjs +166 -0
  85. package/dist/chunk-53ZCZ46B.cjs +137 -0
  86. package/dist/chunk-545WJ5UG.cjs +1294 -0
  87. package/dist/chunk-55U5QIXQ.mjs +35 -0
  88. package/dist/chunk-5A77OEIG.cjs +778 -0
  89. package/dist/chunk-5C7XMKQ4.cjs +410 -0
  90. package/dist/chunk-5DX3O6TT.cjs +266 -0
  91. package/dist/chunk-5FE5YT2N.mjs +458 -0
  92. package/dist/chunk-5IQ2ERQA.cjs +657 -0
  93. package/dist/chunk-5J45H65F.mjs +48 -0
  94. package/dist/chunk-5OJVKXFV.cjs +2072 -0
  95. package/dist/chunk-5PZJ63PK.mjs +17 -0
  96. package/dist/chunk-5Y22WNTO.mjs +237 -0
  97. package/dist/chunk-5Y2P454O.cjs +421 -0
  98. package/dist/chunk-5Y4GYKKH.mjs +13 -0
  99. package/dist/chunk-5YPBFMBN.cjs +19 -0
  100. package/dist/chunk-65Y5SIBH.cjs +112 -0
  101. package/dist/chunk-6BJJYOFL.cjs +293 -0
  102. package/dist/chunk-6BLAY2VQ.mjs +45 -0
  103. package/dist/chunk-6CTFVBAT.cjs +29 -0
  104. package/dist/chunk-6FXBJPF5.cjs +35 -0
  105. package/dist/chunk-6HRAK7I5.mjs +215 -0
  106. package/dist/chunk-6IOZPJ3I.cjs +549 -0
  107. package/dist/chunk-6JHZPB52.cjs +538 -0
  108. package/dist/chunk-6XQSPIN6.cjs +155 -0
  109. package/dist/chunk-6YFC3ZFX.mjs +449 -0
  110. package/dist/chunk-6ZFRWRHO.mjs +54 -0
  111. package/dist/chunk-724WT3NI.mjs +83 -0
  112. package/dist/chunk-72KABRWN.mjs +2072 -0
  113. package/dist/chunk-72KCTHLV.cjs +723 -0
  114. package/dist/chunk-752XUZIM.cjs +229 -0
  115. package/dist/chunk-75XSZIRE.mjs +180 -0
  116. package/dist/chunk-7EPYN7GW.cjs +30 -0
  117. package/dist/chunk-7H45IJWO.mjs +2250 -0
  118. package/dist/chunk-7H4SVNC4.cjs +700 -0
  119. package/dist/chunk-7JUIK547.cjs +62 -0
  120. package/dist/chunk-7KJJ4SBS.cjs +13 -0
  121. package/dist/chunk-7PTISZSQ.cjs +176 -0
  122. package/dist/chunk-7PZVXMWG.mjs +113 -0
  123. package/dist/chunk-7S7AAK2D.mjs +82 -0
  124. package/dist/chunk-A25FXJ7D.cjs +38 -0
  125. package/dist/chunk-A2MN5PQJ.mjs +527 -0
  126. package/dist/chunk-A4PWGL46.mjs +141 -0
  127. package/dist/chunk-AJB3DHN6.cjs +156 -0
  128. package/dist/chunk-ALEUMLJN.mjs +190 -0
  129. package/dist/chunk-AOKXITZ6.cjs +16 -0
  130. package/dist/chunk-AQLHD6HZ.cjs +196 -0
  131. package/dist/chunk-ATYTLVSI.cjs +45 -0
  132. package/dist/chunk-AXVRUDMB.cjs +203 -0
  133. package/dist/chunk-AY2YD5ZX.mjs +34 -0
  134. package/dist/chunk-AYP2YFVN.mjs +168 -0
  135. package/dist/chunk-AZQXXXDX.mjs +80 -0
  136. package/dist/chunk-B4CWYGCG.mjs +541 -0
  137. package/dist/chunk-BBPDJGCU.cjs +157 -0
  138. package/dist/chunk-BM2LH2JM.mjs +1040 -0
  139. package/dist/chunk-BMQAPZXD.mjs +31 -0
  140. package/dist/chunk-BNH53KOT.cjs +69 -0
  141. package/dist/chunk-BPAXGCKX.mjs +166 -0
  142. package/dist/chunk-BPNOYILC.cjs +450 -0
  143. package/dist/chunk-BQWBHWEW.mjs +252 -0
  144. package/dist/chunk-BRWIVOV4.cjs +48 -0
  145. package/dist/chunk-BRYPZIMB.mjs +6 -0
  146. package/dist/chunk-BT4SEFLC.cjs +660 -0
  147. package/dist/chunk-BTZ5O6VM.cjs +14 -0
  148. package/dist/chunk-BUC3FDYC.cjs +158 -0
  149. package/dist/chunk-C64XOPBZ.mjs +380 -0
  150. package/dist/chunk-C7GJDVN4.mjs +124 -0
  151. package/dist/chunk-C7LCTVJ2.cjs +30 -0
  152. package/dist/chunk-CA7DNRHO.cjs +164 -0
  153. package/dist/chunk-CBOEJ5Z4.cjs +1093 -0
  154. package/dist/chunk-CFG4QERR.cjs +434 -0
  155. package/dist/chunk-CI4UNQHO.cjs +35 -0
  156. package/dist/chunk-CKPTIEDX.cjs +12 -0
  157. package/dist/chunk-CL2ONP73.cjs +180 -0
  158. package/dist/chunk-CLFEQGET.cjs +60 -0
  159. package/dist/chunk-CNNBFGL5.cjs +252 -0
  160. package/dist/chunk-CO6UYM2D.mjs +172 -0
  161. package/dist/chunk-CQL5ZGFU.cjs +50 -0
  162. package/dist/chunk-CROAFCMW.mjs +203 -0
  163. package/dist/chunk-CSLUBKGG.mjs +44 -0
  164. package/dist/chunk-CU5SYTJG.mjs +23 -0
  165. package/dist/chunk-CV6MFQ4Y.mjs +259 -0
  166. package/dist/chunk-D22BUQKW.cjs +82 -0
  167. package/dist/chunk-D2LCAV6L.mjs +79 -0
  168. package/dist/chunk-D4MRNBVF.cjs +1462 -0
  169. package/dist/chunk-D4XGKF67.cjs +127 -0
  170. package/dist/chunk-D7Y63SOY.mjs +15 -0
  171. package/dist/chunk-DMAP4RND.cjs +998 -0
  172. package/dist/chunk-DPE53XWL.mjs +1980 -0
  173. package/dist/chunk-DQF3QLOH.mjs +660 -0
  174. package/dist/chunk-DQJ2CIH7.cjs +87 -0
  175. package/dist/chunk-DU4VHHPJ.mjs +157 -0
  176. package/dist/chunk-DUIP64BF.cjs +16 -0
  177. package/dist/chunk-DV52ZS53.cjs +40 -0
  178. package/dist/chunk-DXUXQP2T.cjs +142 -0
  179. package/dist/chunk-DZPR2W6U.cjs +593 -0
  180. package/dist/chunk-DZZHTMWM.cjs +190 -0
  181. package/dist/chunk-E46NXBNJ.mjs +386 -0
  182. package/dist/chunk-E4RDMG3K.mjs +697 -0
  183. package/dist/chunk-E552H232.cjs +154 -0
  184. package/dist/chunk-E72UD6ME.mjs +277 -0
  185. package/dist/chunk-E7QOEV5Z.cjs +449 -0
  186. package/dist/chunk-ECKQFEX2.mjs +712 -0
  187. package/dist/chunk-EDPENAVO.mjs +266 -0
  188. package/dist/chunk-EFLNOZGH.mjs +30 -0
  189. package/dist/chunk-EFZGB7JC.cjs +114 -0
  190. package/dist/chunk-EGHPFXPZ.cjs +590 -0
  191. package/dist/chunk-EJCVG25Z.mjs +49 -0
  192. package/dist/chunk-EMDGXYUD.mjs +75 -0
  193. package/dist/chunk-EOXPRC2C.cjs +48 -0
  194. package/dist/chunk-ERMUL73L.cjs +39 -0
  195. package/dist/chunk-ES2LD2YD.mjs +203 -0
  196. package/dist/chunk-EV4SBMPX.mjs +208 -0
  197. package/dist/chunk-EVIWKPJV.cjs +560 -0
  198. package/dist/chunk-EVMXPJCB.mjs +133 -0
  199. package/dist/chunk-EX6ZSN5P.cjs +224 -0
  200. package/dist/chunk-EXXFSZOC.cjs +12736 -0
  201. package/dist/chunk-EZ34EHQP.mjs +462 -0
  202. package/dist/chunk-EZTKXD6P.cjs +182 -0
  203. package/dist/chunk-F3N52U7S.mjs +138 -0
  204. package/dist/chunk-FBEBSAVI.cjs +225 -0
  205. package/dist/chunk-FEFCISOX.cjs +102 -0
  206. package/dist/chunk-FHURJABM.mjs +45 -0
  207. package/dist/chunk-FN5UEC7I.mjs +55 -0
  208. package/dist/chunk-FSXSQQTV.mjs +79 -0
  209. package/dist/chunk-GBMWLDCC.cjs +138 -0
  210. package/dist/chunk-GGNJAGGE.cjs +9485 -0
  211. package/dist/chunk-GHNW564E.mjs +1044 -0
  212. package/dist/chunk-GL3ZDHKI.mjs +274 -0
  213. package/dist/chunk-GLOICKDO.mjs +142 -0
  214. package/dist/chunk-GNZIAJGB.mjs +358 -0
  215. package/dist/chunk-GSVJ3IIF.cjs +173 -0
  216. package/dist/chunk-GUZC226X.mjs +164 -0
  217. package/dist/chunk-GVOMPU3Y.cjs +537 -0
  218. package/dist/chunk-GWXZS7K5.mjs +24 -0
  219. package/dist/chunk-GYMGK467.mjs +214 -0
  220. package/dist/chunk-H227LYHT.mjs +88 -0
  221. package/dist/chunk-H3ASZDT7.mjs +42 -0
  222. package/dist/chunk-H4WUWLQR.mjs +16 -0
  223. package/dist/chunk-HA7YRO53.cjs +214 -0
  224. package/dist/chunk-HEPJIKKQ.cjs +190 -0
  225. package/dist/chunk-HLYRXN2I.cjs +242 -0
  226. package/dist/chunk-HNAISJFD.cjs +215 -0
  227. package/dist/chunk-HPP2II4Z.mjs +332 -0
  228. package/dist/chunk-HXNLKCWH.cjs +13 -0
  229. package/dist/chunk-HZOMT5DY.mjs +30 -0
  230. package/dist/chunk-I2BYNELA.cjs +380 -0
  231. package/dist/chunk-I32V5CZL.cjs +1965 -0
  232. package/dist/chunk-IAPTECEB.mjs +48 -0
  233. package/dist/chunk-IFTGERT3.mjs +408 -0
  234. package/dist/chunk-IGL6CO6M.mjs +9 -0
  235. package/dist/chunk-IOF4KXMP.mjs +537 -0
  236. package/dist/chunk-IQIKPKFP.mjs +6600 -0
  237. package/dist/chunk-ITV4QQL2.cjs +93 -0
  238. package/dist/chunk-IWRLV46X.cjs +1980 -0
  239. package/dist/chunk-IYEY3JWJ.mjs +186 -0
  240. package/dist/chunk-J3GFOQOL.cjs +237 -0
  241. package/dist/chunk-JCEFKP5M.mjs +1473 -0
  242. package/dist/chunk-JEJQGZI7.cjs +1232 -0
  243. package/dist/chunk-JGAE5XPL.cjs +26 -0
  244. package/dist/chunk-JIBEFLQ7.cjs +44 -0
  245. package/dist/chunk-JLDNXURZ.cjs +588 -0
  246. package/dist/chunk-JMYXO572.cjs +531 -0
  247. package/dist/chunk-JNYFXL7X.mjs +62 -0
  248. package/dist/chunk-JRHGJVJH.mjs +44 -0
  249. package/dist/chunk-JSDV2NUN.mjs +206 -0
  250. package/dist/chunk-JXIYH2NO.cjs +24 -0
  251. package/dist/chunk-JYNNIGQO.cjs +87 -0
  252. package/dist/chunk-JYT7AN37.cjs +79 -0
  253. package/dist/chunk-K3RU5MOR.mjs +80 -0
  254. package/dist/chunk-K5EW7GUU.mjs +417 -0
  255. package/dist/chunk-K76CBYQM.mjs +157 -0
  256. package/dist/chunk-KBGZ5FD6.cjs +17 -0
  257. package/dist/chunk-KORZ6PRE.cjs +64 -0
  258. package/dist/chunk-KPAJWD3N.mjs +168 -0
  259. package/dist/chunk-KQH2COEJ.mjs +42 -0
  260. package/dist/chunk-KVW2M6PI.mjs +341 -0
  261. package/dist/chunk-L2JG337G.cjs +712 -0
  262. package/dist/chunk-L4RTTTVE.mjs +8 -0
  263. package/dist/chunk-L5JDKFMQ.cjs +44 -0
  264. package/dist/chunk-LEJDW34D.cjs +115 -0
  265. package/dist/chunk-LLZSYFOM.mjs +6 -0
  266. package/dist/chunk-LM55GS4R.mjs +38 -0
  267. package/dist/chunk-LNVGXUL3.cjs +172 -0
  268. package/dist/chunk-LQNW3ABP.cjs +527 -0
  269. package/dist/chunk-LRB5OVRT.cjs +124 -0
  270. package/dist/chunk-LSHX2H5G.cjs +57 -0
  271. package/dist/chunk-LT4VAF5Z.cjs +1359 -0
  272. package/dist/chunk-LVWGURLD.mjs +1232 -0
  273. package/dist/chunk-M25IONJP.mjs +16 -0
  274. package/dist/chunk-M53MIIXY.mjs +172 -0
  275. package/dist/chunk-MEQN6DDA.cjs +341 -0
  276. package/dist/chunk-MF3IA2AW.cjs +25 -0
  277. package/dist/chunk-MFQGU5CC.mjs +127 -0
  278. package/dist/chunk-MGKW5XZE.cjs +40 -0
  279. package/dist/chunk-MHLNWRCJ.cjs +36 -0
  280. package/dist/chunk-MK5E44WP.mjs +60 -0
  281. package/dist/chunk-MMK4MZUN.mjs +36 -0
  282. package/dist/chunk-MNIR7I7B.mjs +217 -0
  283. package/dist/chunk-MPU5DOXX.cjs +21 -0
  284. package/dist/chunk-MU5V7XHL.mjs +172 -0
  285. package/dist/chunk-N33DLJBC.mjs +272 -0
  286. package/dist/chunk-N35YPV4N.mjs +48 -0
  287. package/dist/chunk-N4AQNEXR.cjs +17 -0
  288. package/dist/chunk-N7XWC6BN.mjs +21 -0
  289. package/dist/chunk-NBIVGHAT.mjs +50 -0
  290. package/dist/chunk-NCIAP562.mjs +27 -0
  291. package/dist/chunk-NK2VWS7P.cjs +954 -0
  292. package/dist/chunk-NKRZLQUK.mjs +150 -0
  293. package/dist/chunk-NR63PD3P.mjs +64 -0
  294. package/dist/chunk-NRNAHZ57.mjs +39 -0
  295. package/dist/chunk-NT3QDN2E.mjs +9 -0
  296. package/dist/chunk-NWUHS6GV.cjs +79 -0
  297. package/dist/chunk-O27PLNQZ.cjs +878 -0
  298. package/dist/chunk-O4F3JUST.mjs +176 -0
  299. package/dist/chunk-OAJOQU5J.mjs +225 -0
  300. package/dist/chunk-OCS3PSYR.cjs +51 -0
  301. package/dist/chunk-OHWM2VI4.mjs +29 -0
  302. package/dist/chunk-OJO2GOM3.mjs +69 -0
  303. package/dist/chunk-OLGQZRW6.mjs +700 -0
  304. package/dist/chunk-OM7WILES.mjs +100 -0
  305. package/dist/chunk-ONG4RDW3.mjs +155 -0
  306. package/dist/chunk-OOJBBHYW.cjs +38 -0
  307. package/dist/chunk-OOZEU5KK.cjs +18 -0
  308. package/dist/chunk-OUWRNHTV.mjs +12733 -0
  309. package/dist/chunk-OWQV6MLM.cjs +82 -0
  310. package/dist/chunk-OY5XDG24.cjs +113 -0
  311. package/dist/chunk-OYZXVBZP.cjs +133 -0
  312. package/dist/chunk-OZC2JPW6.cjs +10 -0
  313. package/dist/chunk-P2355C6E.cjs +186 -0
  314. package/dist/chunk-PAKCHVUS.mjs +450 -0
  315. package/dist/chunk-PCXIJKPM.mjs +878 -0
  316. package/dist/chunk-PENBZAHJ.cjs +88 -0
  317. package/dist/chunk-PIUTGRDI.cjs +358 -0
  318. package/dist/chunk-PMJSG4JS.cjs +152 -0
  319. package/dist/chunk-PO5MXV5X.cjs +13 -0
  320. package/dist/chunk-PRFNLQSP.cjs +277 -0
  321. package/dist/chunk-PSUYE5HR.mjs +25 -0
  322. package/dist/chunk-PTLXHRJZ.mjs +57 -0
  323. package/dist/chunk-PZXYAWYG.cjs +274 -0
  324. package/dist/chunk-Q5B4LNON.mjs +19 -0
  325. package/dist/chunk-QAS7KE7J.cjs +169 -0
  326. package/dist/chunk-QDWMCFTH.mjs +434 -0
  327. package/dist/chunk-QGJ4FI2G.mjs +723 -0
  328. package/dist/chunk-QGOZLGVP.mjs +0 -0
  329. package/dist/chunk-QISW423S.cjs +335 -0
  330. package/dist/chunk-QMDU6QHN.mjs +778 -0
  331. package/dist/chunk-QMNWKQL4.cjs +206 -0
  332. package/dist/chunk-QOSDWGKT.mjs +109 -0
  333. package/dist/chunk-QPJ4MZTO.mjs +60 -0
  334. package/dist/chunk-QPNVDSFZ.mjs +18 -0
  335. package/dist/chunk-QQ44FYRO.cjs +27 -0
  336. package/dist/chunk-QSTRBKHZ.mjs +102 -0
  337. package/dist/chunk-QTD6EMN2.mjs +368 -0
  338. package/dist/chunk-R53QDV6T.cjs +100 -0
  339. package/dist/chunk-R5U7OIPI.cjs +34 -0
  340. package/dist/chunk-R62SF5R4.mjs +410 -0
  341. package/dist/chunk-RD623KW4.cjs +203 -0
  342. package/dist/chunk-RFKTJTWZ.mjs +26 -0
  343. package/dist/chunk-RI3EVPKD.cjs +57 -0
  344. package/dist/chunk-RLEALQEN.mjs +998 -0
  345. package/dist/chunk-RMUD75WT.cjs +6600 -0
  346. package/dist/chunk-RSEAX5MW.mjs +44 -0
  347. package/dist/chunk-RVGLYMJM.cjs +259 -0
  348. package/dist/chunk-RZNCMRD3.mjs +141 -0
  349. package/dist/chunk-S32PDOLO.mjs +13 -0
  350. package/dist/chunk-S6O2L47H.mjs +549 -0
  351. package/dist/chunk-SA7MLSP4.mjs +229 -0
  352. package/dist/chunk-SBDWCDS6.cjs +8 -0
  353. package/dist/chunk-SF3JB56B.mjs +82 -0
  354. package/dist/chunk-SG57PX7K.cjs +65 -0
  355. package/dist/chunk-SGBNF56S.cjs +44 -0
  356. package/dist/chunk-SHD265HW.cjs +19 -0
  357. package/dist/chunk-SHIWRBFI.cjs +17 -0
  358. package/dist/chunk-SM25ZC4S.cjs +9 -0
  359. package/dist/chunk-SM2SYWAR.cjs +49 -0
  360. package/dist/chunk-SMUW7UST.mjs +196 -0
  361. package/dist/chunk-SNP33A33.cjs +9 -0
  362. package/dist/chunk-STF6VDYQ.cjs +23 -0
  363. package/dist/chunk-SUCDVKUB.cjs +42 -0
  364. package/dist/chunk-SVCUSOEF.mjs +590 -0
  365. package/dist/chunk-SVXOCTQ2.cjs +251 -0
  366. package/dist/chunk-SXCL2MIN.cjs +208 -0
  367. package/dist/chunk-SYW346ZN.cjs +71 -0
  368. package/dist/chunk-SYXPWJ7N.cjs +387 -0
  369. package/dist/chunk-T46NNU4D.mjs +716 -0
  370. package/dist/chunk-T4TBK5NY.mjs +593 -0
  371. package/dist/chunk-TGSEVBPO.mjs +93 -0
  372. package/dist/chunk-TGULJSHD.mjs +1965 -0
  373. package/dist/chunk-TJVUTGED.mjs +531 -0
  374. package/dist/chunk-TUOO6IK3.mjs +87 -0
  375. package/dist/chunk-TUPKMMXT.mjs +173 -0
  376. package/dist/chunk-TVCFY3KK.cjs +217 -0
  377. package/dist/chunk-TZVUF5JJ.mjs +651 -0
  378. package/dist/chunk-UAQD67HM.mjs +154 -0
  379. package/dist/chunk-UB7RVEMX.mjs +73 -0
  380. package/dist/chunk-UIJOLBUL.mjs +19 -0
  381. package/dist/chunk-UNJZGVPU.cjs +6 -0
  382. package/dist/chunk-UPYIFH2H.cjs +168 -0
  383. package/dist/chunk-UR25Z5Z6.mjs +135 -0
  384. package/dist/chunk-UUMKLGUU.mjs +69 -0
  385. package/dist/chunk-UWI3SJAK.cjs +141 -0
  386. package/dist/chunk-UYRI6U3P.mjs +137 -0
  387. package/dist/chunk-UYTAP4FQ.cjs +60 -0
  388. package/dist/chunk-UZCMMJJT.cjs +80 -0
  389. package/dist/chunk-UZZ6IEQP.mjs +169 -0
  390. package/dist/chunk-V3UOEWCB.cjs +46 -0
  391. package/dist/chunk-V56632LA.cjs +141 -0
  392. package/dist/chunk-V727H3RI.cjs +1473 -0
  393. package/dist/chunk-VE3FWJBO.mjs +46 -0
  394. package/dist/chunk-VFXE6NWR.mjs +87 -0
  395. package/dist/chunk-VHIXGZYH.mjs +9 -0
  396. package/dist/chunk-VISQDC6W.mjs +10 -0
  397. package/dist/chunk-VIXTAVEA.mjs +59 -0
  398. package/dist/chunk-VM57CK74.cjs +42 -0
  399. package/dist/chunk-VM7X5CKC.mjs +491 -0
  400. package/dist/chunk-VOQ7XZZT.cjs +157 -0
  401. package/dist/chunk-VQJHT2ND.mjs +40 -0
  402. package/dist/chunk-VR6QLTTX.mjs +59 -0
  403. package/dist/chunk-VVTJTMGQ.cjs +135 -0
  404. package/dist/chunk-VWW4Q3BJ.mjs +1291 -0
  405. package/dist/chunk-VXCFJWK5.cjs +59 -0
  406. package/dist/chunk-W2ZXMMHA.mjs +1462 -0
  407. package/dist/chunk-W6QLRQ3V.mjs +152 -0
  408. package/dist/chunk-WCLLPR6H.mjs +35 -0
  409. package/dist/chunk-WEGAVN37.cjs +45 -0
  410. package/dist/chunk-WFVSAT7Y.cjs +83 -0
  411. package/dist/chunk-WKJQ2FJA.cjs +433 -0
  412. package/dist/chunk-WKPBIT5Q.cjs +150 -0
  413. package/dist/chunk-WNDAISB7.mjs +51 -0
  414. package/dist/chunk-WNLPQW7W.mjs +19 -0
  415. package/dist/chunk-WT6RAN2I.cjs +41 -0
  416. package/dist/chunk-WXFY5JIY.mjs +20 -0
  417. package/dist/chunk-WYAXRIYP.cjs +697 -0
  418. package/dist/chunk-WYL4ODZ4.mjs +38 -0
  419. package/dist/chunk-X333W5KV.cjs +31 -0
  420. package/dist/chunk-X3EFRVXY.mjs +12 -0
  421. package/dist/chunk-X3XUZWRB.mjs +141 -0
  422. package/dist/chunk-X4K7TYN6.cjs +1040 -0
  423. package/dist/chunk-XCXHQBMM.mjs +115 -0
  424. package/dist/chunk-XGJVRPYL.cjs +141 -0
  425. package/dist/chunk-XMHERKSE.mjs +224 -0
  426. package/dist/chunk-XPIPMWY3.cjs +1 -0
  427. package/dist/chunk-XQ4DPO4G.mjs +13 -0
  428. package/dist/chunk-XQSYOVCW.cjs +417 -0
  429. package/dist/chunk-XR2ZIBQK.mjs +57 -0
  430. package/dist/chunk-XURDCXNH.cjs +48 -0
  431. package/dist/chunk-XVSBALOY.cjs +55 -0
  432. package/dist/chunk-XX32BOMM.cjs +491 -0
  433. package/dist/chunk-Y3WG64CP.cjs +9 -0
  434. package/dist/chunk-Y6FXYEAI.mjs +10 -0
  435. package/dist/chunk-Y7NN63LS.mjs +40 -0
  436. package/dist/chunk-YDXLC4DW.cjs +54 -0
  437. package/dist/chunk-YIHRZBD7.cjs +172 -0
  438. package/dist/chunk-YKHRCY4T.cjs +73 -0
  439. package/dist/chunk-YN6BHOYY.cjs +368 -0
  440. package/dist/chunk-YP7YO3S3.mjs +17 -0
  441. package/dist/chunk-YSXTNSXS.mjs +1359 -0
  442. package/dist/chunk-YT3SLLZK.mjs +242 -0
  443. package/dist/chunk-YTVSWXEZ.cjs +168 -0
  444. package/dist/chunk-YWPNIYUP.mjs +41 -0
  445. package/dist/chunk-YX6AFPXC.mjs +8 -0
  446. package/dist/chunk-Z64V4WZI.mjs +17 -0
  447. package/dist/chunk-Z7P2BTZ3.cjs +454 -0
  448. package/dist/chunk-ZBUAOGMY.mjs +156 -0
  449. package/dist/chunk-ZDAEHG2O.cjs +80 -0
  450. package/dist/chunk-ZFWYCVKS.mjs +454 -0
  451. package/dist/chunk-ZNH6NR3H.cjs +462 -0
  452. package/dist/chunk-ZNXTU4YH.mjs +114 -0
  453. package/dist/chunk-ZOYKJBP5.cjs +172 -0
  454. package/dist/chunk-ZQ5BDNKW.mjs +954 -0
  455. package/dist/chunk-ZVIEFTUA.cjs +716 -0
  456. package/dist/chunk-ZXK2EYQW.cjs +8 -0
  457. package/dist/chunk-ZZ2QKCKW.mjs +293 -0
  458. package/dist/chunk-ZZI56IUY.mjs +588 -0
  459. package/dist/chunk-recovery.d-lnQFzcQP.d.mts +26 -0
  460. package/dist/chunk-recovery.d-lnQFzcQP.d.ts +26 -0
  461. package/dist/client/lifecycle.cjs +3 -3
  462. package/dist/client/lifecycle.d.mts +1 -0
  463. package/dist/client/lifecycle.d.ts +1 -0
  464. package/dist/client/lifecycle.mjs +2 -2
  465. package/dist/client-cache.d-Deoqq-nM.d.ts +76 -0
  466. package/dist/client-cache.d-di_Nasxa.d.mts +76 -0
  467. package/dist/client-component.d-Bgt3x5Fu.d.ts +207 -0
  468. package/dist/client-component.d-BoqC2MLC.d.mts +207 -0
  469. package/dist/client-plugins.cjs +3 -3
  470. package/dist/client-plugins.d-BcqIy4au.d.ts +4009 -0
  471. package/dist/client-plugins.d-CWyYBxXf.d.mts +4009 -0
  472. package/dist/client-plugins.d.mts +33 -0
  473. package/dist/client-plugins.d.ts +33 -0
  474. package/dist/client-plugins.mjs +2 -2
  475. package/dist/client.cjs +45 -40
  476. package/dist/client.d.mts +452 -0
  477. package/dist/client.d.ts +452 -0
  478. package/dist/client.mjs +44 -39
  479. package/dist/client.react-server.mjs +2 -0
  480. package/dist/config.cjs +3 -3
  481. package/dist/config.d-qt-mE8O5.d.mts +341 -0
  482. package/dist/config.d-qt-mE8O5.d.ts +341 -0
  483. package/dist/config.d.mts +40 -0
  484. package/dist/config.d.ts +40 -0
  485. package/dist/config.mjs +2 -2
  486. package/dist/cron.cjs +19 -9
  487. package/dist/cron.d.mts +186 -0
  488. package/dist/cron.d.ts +186 -0
  489. package/dist/cron.mjs +18 -8
  490. package/dist/deferred.cjs +3 -3
  491. package/dist/deferred.d.mts +44 -0
  492. package/dist/deferred.d.ts +44 -0
  493. package/dist/deferred.mjs +2 -2
  494. package/dist/deployment.cjs +3 -3
  495. package/dist/deployment.d.mts +36 -0
  496. package/dist/deployment.d.ts +36 -0
  497. package/dist/deployment.mjs +2 -2
  498. package/dist/desktop.cjs +13 -0
  499. package/dist/desktop.d.mts +120 -0
  500. package/dist/desktop.d.ts +120 -0
  501. package/dist/desktop.mjs +13 -0
  502. package/dist/dev-guard-2UW2KERP.cjs +59 -0
  503. package/dist/dev-guard-ONNMVQUN.mjs +59 -0
  504. package/dist/devtools-NUVXYG7I.mjs +463 -0
  505. package/dist/devtools-SVRSGPNC.cjs +463 -0
  506. package/dist/devtools-client-SU4XH46J.mjs +250 -0
  507. package/dist/devtools-client-X5OQCXDF.cjs +250 -0
  508. package/dist/devtools-ui-CYBVFLPH.mjs +1265 -0
  509. package/dist/devtools-ui-SYRUXUA7.cjs +1265 -0
  510. package/dist/docs.cjs +66 -58
  511. package/dist/docs.d.mts +169 -0
  512. package/dist/docs.d.ts +169 -0
  513. package/dist/docs.mjs +65 -57
  514. package/dist/endpoint.d-BgHn0lhl.d.ts +370 -0
  515. package/dist/endpoint.d-BkMSCRf6.d.mts +370 -0
  516. package/dist/env-types.cjs +4 -4
  517. package/dist/env-types.d.mts +12 -0
  518. package/dist/env-types.d.ts +12 -0
  519. package/dist/env-types.mjs +3 -3
  520. package/dist/env.cjs +4 -4
  521. package/dist/env.d.mts +65 -0
  522. package/dist/env.d.ts +65 -0
  523. package/dist/env.mjs +3 -3
  524. package/dist/environment/vite.cjs +7 -3
  525. package/dist/environment/vite.d.mts +31 -0
  526. package/dist/environment/vite.d.ts +31 -0
  527. package/dist/environment/vite.mjs +6 -2
  528. package/dist/environment.cjs +3 -3
  529. package/dist/environment.d.mts +18 -0
  530. package/dist/environment.d.ts +18 -0
  531. package/dist/environment.mjs +2 -2
  532. package/dist/font.cjs +3 -3
  533. package/dist/font.d.mts +95 -0
  534. package/dist/font.d.ts +95 -0
  535. package/dist/font.mjs +2 -2
  536. package/dist/generate-route-types.d-BL2pq6xC.d.ts +33 -0
  537. package/dist/generate-route-types.d-BoVDU8qX.d.mts +33 -0
  538. package/dist/headers.cjs +8 -6
  539. package/dist/headers.d.mts +32 -0
  540. package/dist/headers.d.ts +32 -0
  541. package/dist/headers.mjs +7 -5
  542. package/dist/i18n/client.cjs +19 -30
  543. package/dist/i18n/client.d.mts +32 -0
  544. package/dist/i18n/client.d.ts +32 -0
  545. package/dist/i18n/client.mjs +9 -20
  546. package/dist/i18n/index.cjs +6 -6
  547. package/dist/i18n/index.d.mts +3 -0
  548. package/dist/i18n/index.d.ts +3 -0
  549. package/dist/i18n/index.mjs +5 -5
  550. package/dist/i18n/server.cjs +10 -10
  551. package/dist/i18n/server.d.mts +30 -0
  552. package/dist/i18n/server.d.ts +30 -0
  553. package/dist/i18n/server.mjs +9 -9
  554. package/dist/image/server.cjs +9 -5
  555. package/dist/image/server.d.mts +59 -0
  556. package/dist/image/server.d.ts +59 -0
  557. package/dist/image/server.mjs +8 -4
  558. package/dist/image/sharp.cjs +16 -20
  559. package/dist/image/sharp.d.mts +20 -0
  560. package/dist/image/sharp.d.ts +20 -0
  561. package/dist/image/sharp.mjs +8 -12
  562. package/dist/image-config.d-CeDgNyX4.d.mts +53 -0
  563. package/dist/image-config.d-CeDgNyX4.d.ts +53 -0
  564. package/dist/image.cjs +9 -18
  565. package/dist/image.d.mts +39 -0
  566. package/dist/image.d.ts +39 -0
  567. package/dist/image.mjs +4 -13
  568. package/dist/index.cjs +250 -174
  569. package/dist/index.d-BDaiu2i5.d.mts +54 -0
  570. package/dist/index.d-BNNDpql4.d.ts +20 -0
  571. package/dist/index.d-BqcfqJvt.d.mts +20 -0
  572. package/dist/index.d-nAncqTXz.d.ts +54 -0
  573. package/dist/index.d.mts +1053 -0
  574. package/dist/index.d.ts +1053 -0
  575. package/dist/index.mjs +318 -242
  576. package/dist/instrumentation-runtime.d-CX9Zh-16.d.mts +22 -0
  577. package/dist/instrumentation-runtime.d-CX9Zh-16.d.ts +22 -0
  578. package/dist/instrumentation.cjs +5 -5
  579. package/dist/instrumentation.d.mts +7 -0
  580. package/dist/instrumentation.d.ts +7 -0
  581. package/dist/instrumentation.mjs +4 -4
  582. package/dist/integration-orm-52GPGTHO.cjs +14 -0
  583. package/dist/integration-orm-CO23MSFE.mjs +14 -0
  584. package/dist/integrations.cjs +23 -17
  585. package/dist/integrations.d.mts +33 -0
  586. package/dist/integrations.d.ts +33 -0
  587. package/dist/integrations.mjs +24 -18
  588. package/dist/internal/app-markdown-runtime.cjs +13 -13
  589. package/dist/internal/app-markdown-runtime.d.mts +86 -0
  590. package/dist/internal/app-markdown-runtime.d.ts +86 -0
  591. package/dist/internal/app-markdown-runtime.mjs +12 -12
  592. package/dist/internal/build-runtime.cjs +166 -133
  593. package/dist/internal/build-runtime.d.mts +46 -0
  594. package/dist/internal/build-runtime.d.ts +46 -0
  595. package/dist/internal/build-runtime.mjs +154 -121
  596. package/dist/internal/cli-runtime.cjs +102 -79
  597. package/dist/internal/cli-runtime.mjs +102 -79
  598. package/dist/internal/client-error-overlay.cjs +18 -49
  599. package/dist/internal/client-error-overlay.d.mts +25 -0
  600. package/dist/internal/client-error-overlay.d.ts +25 -0
  601. package/dist/internal/client-error-overlay.mjs +14 -45
  602. package/dist/internal/client-runtime.cjs +73 -59
  603. package/dist/internal/client-runtime.d.mts +93 -0
  604. package/dist/internal/client-runtime.d.ts +93 -0
  605. package/dist/internal/client-runtime.mjs +66 -52
  606. package/dist/internal/compression-runtime.cjs +4 -4
  607. package/dist/internal/compression-runtime.d.mts +48 -0
  608. package/dist/internal/compression-runtime.d.ts +48 -0
  609. package/dist/internal/compression-runtime.mjs +3 -3
  610. package/dist/internal/config-runtime.cjs +94 -65
  611. package/dist/internal/config-runtime.d.mts +336 -0
  612. package/dist/internal/config-runtime.d.ts +336 -0
  613. package/dist/internal/config-runtime.mjs +80 -51
  614. package/dist/internal/desktop-guard.cjs +17 -0
  615. package/dist/internal/desktop-guard.d.mts +52 -0
  616. package/dist/internal/desktop-guard.d.ts +52 -0
  617. package/dist/internal/desktop-guard.mjs +17 -0
  618. package/dist/internal/docs-precompiled-runtime.cjs +18 -24
  619. package/dist/internal/docs-precompiled-runtime.d.mts +43 -0
  620. package/dist/internal/docs-precompiled-runtime.d.ts +43 -0
  621. package/dist/internal/docs-precompiled-runtime.mjs +14 -20
  622. package/dist/internal/form-actions-client.cjs +14 -0
  623. package/dist/internal/form-actions-client.d.mts +5 -0
  624. package/dist/internal/form-actions-client.d.ts +5 -0
  625. package/dist/internal/form-actions-client.mjs +14 -0
  626. package/dist/internal/form-actions.cjs +19 -0
  627. package/dist/internal/form-actions.d.mts +14 -0
  628. package/dist/internal/form-actions.d.ts +14 -0
  629. package/dist/internal/form-actions.mjs +19 -0
  630. package/dist/internal/infra-analytics-runtime.cjs +22 -8
  631. package/dist/internal/infra-analytics-runtime.d.mts +16 -0
  632. package/dist/internal/infra-analytics-runtime.d.ts +16 -0
  633. package/dist/internal/infra-analytics-runtime.mjs +20 -6
  634. package/dist/internal/island-codec.cjs +22 -0
  635. package/dist/internal/island-codec.d.mts +29 -0
  636. package/dist/internal/island-codec.d.ts +29 -0
  637. package/dist/internal/island-codec.mjs +22 -0
  638. package/dist/internal/island-value-store.cjs +10 -0
  639. package/dist/internal/island-value-store.d.mts +6 -0
  640. package/dist/internal/island-value-store.d.ts +6 -0
  641. package/dist/internal/island-value-store.mjs +10 -0
  642. package/dist/internal/islands-boot.cjs +211 -0
  643. package/dist/internal/islands-boot.d.mts +8 -0
  644. package/dist/internal/islands-boot.d.ts +8 -0
  645. package/dist/internal/islands-boot.mjs +211 -0
  646. package/dist/internal/islands-runtime.cjs +161 -0
  647. package/dist/internal/islands-runtime.d.mts +66 -0
  648. package/dist/internal/islands-runtime.d.ts +66 -0
  649. package/dist/internal/islands-runtime.mjs +161 -0
  650. package/dist/internal/islands-server.cjs +16 -0
  651. package/dist/internal/islands-server.d.mts +3 -0
  652. package/dist/internal/islands-server.d.ts +3 -0
  653. package/dist/internal/islands-server.mjs +16 -0
  654. package/dist/internal/islx-client.cjs +5 -0
  655. package/dist/internal/islx-client.d.mts +6 -0
  656. package/dist/internal/islx-client.d.ts +6 -0
  657. package/dist/internal/islx-client.mjs +3 -0
  658. package/dist/internal/islx-react.cjs +4 -0
  659. package/dist/internal/islx-react.d.mts +1 -0
  660. package/dist/internal/islx-react.d.ts +1 -0
  661. package/dist/internal/islx-react.mjs +2 -0
  662. package/dist/internal/islx-server.cjs +5 -0
  663. package/dist/internal/islx-server.d.mts +2 -0
  664. package/dist/internal/islx-server.d.ts +2 -0
  665. package/dist/internal/islx-server.mjs +3 -0
  666. package/dist/internal/isolated-boundary.cjs +5 -4
  667. package/dist/internal/isolated-boundary.d.mts +66 -0
  668. package/dist/internal/isolated-boundary.d.ts +66 -0
  669. package/dist/internal/isolated-boundary.mjs +4 -3
  670. package/dist/internal/metadata-image-runtime.cjs +8 -7
  671. package/dist/internal/metadata-image-runtime.d.mts +30 -0
  672. package/dist/internal/metadata-image-runtime.d.ts +30 -0
  673. package/dist/internal/metadata-image-runtime.mjs +7 -6
  674. package/dist/internal/native-server-fns.cjs +25 -0
  675. package/dist/internal/native-server-fns.d.mts +42 -0
  676. package/dist/internal/native-server-fns.d.ts +42 -0
  677. package/dist/internal/native-server-fns.mjs +25 -0
  678. package/dist/internal/product-telemetry-runtime.cjs +5 -17
  679. package/dist/internal/product-telemetry-runtime.d.mts +45 -0
  680. package/dist/internal/product-telemetry-runtime.d.ts +45 -0
  681. package/dist/internal/product-telemetry-runtime.mjs +3 -15
  682. package/dist/internal/production-node-env.cjs +7 -3
  683. package/dist/internal/production-node-env.d.mts +21 -0
  684. package/dist/internal/production-node-env.d.ts +21 -0
  685. package/dist/internal/production-node-env.mjs +6 -2
  686. package/dist/internal/production-runtime.cjs +178 -90
  687. package/dist/internal/production-runtime.d.mts +566 -0
  688. package/dist/internal/production-runtime.d.ts +566 -0
  689. package/dist/internal/production-runtime.mjs +202 -114
  690. package/dist/internal/react-cache.cjs +51 -0
  691. package/dist/internal/react-cache.d.mts +3 -0
  692. package/dist/internal/react-cache.d.ts +3 -0
  693. package/dist/internal/react-cache.mjs +51 -0
  694. package/dist/internal/request-cookies.cjs +3 -3
  695. package/dist/internal/request-cookies.d.mts +16 -0
  696. package/dist/internal/request-cookies.d.ts +16 -0
  697. package/dist/internal/request-cookies.mjs +2 -2
  698. package/dist/internal/server-fn-transform.cjs +13 -0
  699. package/dist/internal/server-fn-transform.d.mts +24 -0
  700. package/dist/internal/server-fn-transform.d.ts +24 -0
  701. package/dist/internal/server-fn-transform.mjs +13 -0
  702. package/dist/internal/server-tree.cjs +7 -4
  703. package/dist/internal/server-tree.d.mts +50 -0
  704. package/dist/internal/server-tree.d.ts +50 -0
  705. package/dist/internal/server-tree.mjs +8 -5
  706. package/dist/island-value-protocol.d-BRayRghM.d.mts +12 -0
  707. package/dist/island-value-protocol.d-BRayRghM.d.ts +12 -0
  708. package/dist/island.d-CfGru1MO.d.mts +9 -0
  709. package/dist/island.d-CfGru1MO.d.ts +9 -0
  710. package/dist/json-ld.cjs +3 -16
  711. package/dist/json-ld.d.mts +94 -0
  712. package/dist/json-ld.d.ts +94 -0
  713. package/dist/json-ld.mjs +3 -16
  714. package/dist/layers-DMRXRL7F.cjs +18 -0
  715. package/dist/layers-T55SA47E.mjs +18 -0
  716. package/dist/layers.d-CcS42OGR.d.mts +55 -0
  717. package/dist/layers.d-CcS42OGR.d.ts +55 -0
  718. package/dist/lifecycle.d-C2aLBOwu.d.mts +176 -0
  719. package/dist/lifecycle.d-C2aLBOwu.d.ts +176 -0
  720. package/dist/manager-2LUKNX2N.cjs +14 -0
  721. package/dist/manager-H5ZM3HAM.mjs +14 -0
  722. package/dist/markdown.cjs +19 -12
  723. package/dist/markdown.d.mts +33 -0
  724. package/dist/markdown.d.ts +33 -0
  725. package/dist/markdown.mjs +18 -11
  726. package/dist/middleware.cjs +34 -26
  727. package/dist/middleware.d.mts +225 -0
  728. package/dist/middleware.d.ts +225 -0
  729. package/dist/middleware.mjs +38 -30
  730. package/dist/mobile.cjs +9 -0
  731. package/dist/mobile.d.mts +138 -0
  732. package/dist/mobile.d.ts +138 -0
  733. package/dist/mobile.mjs +9 -0
  734. package/dist/modules-KOKD4XS6.mjs +13 -0
  735. package/dist/modules-QTP7WJPD.cjs +13 -0
  736. package/dist/native-server-fn-handler-GLRHAYWV.mjs +28 -0
  737. package/dist/native-server-fn-handler-J5MYRXN6.cjs +28 -0
  738. package/dist/native-specs-5OLED4MM.cjs +15 -0
  739. package/dist/native-specs-LDV6IZ4N.mjs +15 -0
  740. package/dist/native-tree-AS5L3ID3.mjs +27 -0
  741. package/dist/native-tree-Z2WYUJEV.cjs +27 -0
  742. package/dist/native.cjs +87 -0
  743. package/dist/native.d.mts +72 -0
  744. package/dist/native.d.ts +72 -0
  745. package/dist/native.mjs +87 -0
  746. package/dist/navigation-delegate.d-BbUHRXxG.d.ts +29 -0
  747. package/dist/navigation-delegate.d-CSCm8ZxL.d.mts +29 -0
  748. package/dist/navigation.cjs +22 -21
  749. package/dist/navigation.d.mts +51 -0
  750. package/dist/navigation.d.ts +51 -0
  751. package/dist/navigation.mjs +21 -20
  752. package/dist/nitro-DD4QCA66.mjs +650 -0
  753. package/dist/nitro-VRDX2H4M.cjs +650 -0
  754. package/dist/node-module-bundle-7JHPPF6B.mjs +11 -0
  755. package/dist/node-module-bundle-YJGYBOGK.cjs +11 -0
  756. package/dist/observability.cjs +3 -3
  757. package/dist/observability.d-B2363jB6.d.mts +448 -0
  758. package/dist/observability.d-B2363jB6.d.ts +448 -0
  759. package/dist/observability.d.mts +2 -0
  760. package/dist/observability.d.ts +2 -0
  761. package/dist/observability.mjs +2 -2
  762. package/dist/og.cjs +1 -1
  763. package/dist/og.d.mts +1 -0
  764. package/dist/og.d.ts +1 -0
  765. package/dist/og.mjs +1 -1
  766. package/dist/params.d-BALtrRim.d.ts +15 -0
  767. package/dist/params.d-ry-lxqmy.d.mts +15 -0
  768. package/dist/platform.cjs +29 -0
  769. package/dist/platform.d.mts +24 -0
  770. package/dist/platform.d.ts +24 -0
  771. package/dist/platform.mjs +29 -0
  772. package/dist/plugin-53SY5YBS.mjs +32 -0
  773. package/dist/plugin-HZIBL3DW.cjs +32 -0
  774. package/dist/plugin.cjs +154 -124
  775. package/dist/plugin.d.mts +58 -0
  776. package/dist/plugin.d.ts +58 -0
  777. package/dist/plugin.mjs +137 -107
  778. package/dist/port-UFUZL6RI.mjs +419 -0
  779. package/dist/port-VTLHPZOI.cjs +419 -0
  780. package/dist/production-runtime.d-CcQiDko5.d.mts +123 -0
  781. package/dist/production-runtime.d-DgT24A0f.d.ts +123 -0
  782. package/dist/production-vite.d-BQFAlG7n.d.mts +13 -0
  783. package/dist/production-vite.d-BQFAlG7n.d.ts +13 -0
  784. package/dist/query/client.cjs +59 -69
  785. package/dist/query/client.d.mts +61 -0
  786. package/dist/query/client.d.ts +61 -0
  787. package/dist/query/client.mjs +51 -61
  788. package/dist/query/index.cjs +4 -4
  789. package/dist/query/index.d.mts +90 -0
  790. package/dist/query/index.d.ts +90 -0
  791. package/dist/query/index.mjs +3 -3
  792. package/dist/query/parsers.cjs +3 -3
  793. package/dist/query/parsers.d.mts +29 -0
  794. package/dist/query/parsers.d.ts +29 -0
  795. package/dist/query/parsers.mjs +2 -2
  796. package/dist/query/server.cjs +5 -11
  797. package/dist/query/server.d.mts +55 -0
  798. package/dist/query/server.d.ts +55 -0
  799. package/dist/query/server.mjs +3 -9
  800. package/dist/render-plan.d-BH9WF-JZ.d.mts +25 -0
  801. package/dist/render-plan.d-CyrX6MDs.d.ts +25 -0
  802. package/dist/renderer/react/client.cjs +1 -1
  803. package/dist/renderer/react/client.d.mts +3 -0
  804. package/dist/renderer/react/client.d.ts +3 -0
  805. package/dist/renderer/react/client.mjs +1 -1
  806. package/dist/renderer/react/server.cjs +10 -14
  807. package/dist/renderer/react/server.d.mts +48 -0
  808. package/dist/renderer/react/server.d.ts +48 -0
  809. package/dist/renderer/react/server.mjs +12 -16
  810. package/dist/renderer/react/vite.cjs +1 -4
  811. package/dist/renderer/react/vite.d.mts +4 -0
  812. package/dist/renderer/react/vite.d.ts +4 -0
  813. package/dist/renderer/react/vite.mjs +1 -4
  814. package/dist/renderer-client.cjs +71 -77
  815. package/dist/renderer-client.d.mts +126 -0
  816. package/dist/renderer-client.d.ts +126 -0
  817. package/dist/renderer-client.mjs +51 -57
  818. package/dist/renderer.cjs +3 -3
  819. package/dist/renderer.d.mts +260 -0
  820. package/dist/renderer.d.ts +260 -0
  821. package/dist/renderer.mjs +2 -2
  822. package/dist/request.cjs +4 -4
  823. package/dist/request.d-BB8M8bcD.d.ts +24 -0
  824. package/dist/request.d-CUrPnCW7.d.mts +24 -0
  825. package/dist/request.d.mts +34 -0
  826. package/dist/request.d.ts +34 -0
  827. package/dist/request.mjs +3 -3
  828. package/dist/resolver.d-BHyZgpa7.d.ts +14 -0
  829. package/dist/resolver.d-JnZKKsc5.d.mts +14 -0
  830. package/dist/response.d-BolW0Vx_.d.mts +10 -0
  831. package/dist/response.d-BolW0Vx_.d.ts +10 -0
  832. package/dist/route-pattern.d-CVsVbq5n.d.mts +13 -0
  833. package/dist/route-pattern.d-CVsVbq5n.d.ts +13 -0
  834. package/dist/route-rendering.d-CYxlzaFm.d.mts +44 -0
  835. package/dist/route-rendering.d-DYqZMIf4.d.ts +44 -0
  836. package/dist/route.d-BaVH3V0w.d.mts +224 -0
  837. package/dist/route.d-DBTEqifW.d.ts +224 -0
  838. package/dist/router.cjs +5 -5
  839. package/dist/router.d-7o24CD8u.d.mts +50 -0
  840. package/dist/router.d-DaKo507j.d.ts +50 -0
  841. package/dist/router.d.mts +36 -0
  842. package/dist/router.d.ts +36 -0
  843. package/dist/router.mjs +4 -4
  844. package/dist/routes.cjs +14 -12
  845. package/dist/routes.d-BknKQcTu.d.ts +237 -0
  846. package/dist/routes.d-D1IrO9KK.d.mts +237 -0
  847. package/dist/routes.d.mts +273 -0
  848. package/dist/routes.d.ts +273 -0
  849. package/dist/routes.mjs +13 -11
  850. package/dist/rsc-pipeline-OF2I7PCX.cjs +83 -0
  851. package/dist/rsc-pipeline-RFLHDAKD.mjs +83 -0
  852. package/dist/runtime-LBTK62AD.cjs +1336 -0
  853. package/dist/runtime-M6UJCSLA.mjs +1336 -0
  854. package/dist/runtime.d-3iJAKptR.d.mts +28 -0
  855. package/dist/runtime.d-BtL3PCL3.d.ts +28 -0
  856. package/dist/runtime.d-CN73a-IL.d.ts +69 -0
  857. package/dist/runtime.d-CcNuzhX6.d.mts +69 -0
  858. package/dist/schema-dev-notice-JMXEQWIQ.mjs +54 -0
  859. package/dist/schema-dev-notice-PLBFDTOF.cjs +54 -0
  860. package/dist/schema.cjs +3 -3
  861. package/dist/schema.d.mts +115 -0
  862. package/dist/schema.d.ts +115 -0
  863. package/dist/schema.mjs +2 -2
  864. package/dist/search-client-OXH6GBNO.mjs +15 -0
  865. package/dist/search-client-ZZLKVO5R.cjs +15 -0
  866. package/dist/server-action-security.cjs +8 -7
  867. package/dist/server-action-security.d.mts +45 -0
  868. package/dist/server-action-security.d.ts +45 -0
  869. package/dist/server-action-security.mjs +7 -6
  870. package/dist/server-client-bridge.d-DKWDl5NB.d.mts +7 -0
  871. package/dist/server-client-bridge.d-DKWDl5NB.d.ts +7 -0
  872. package/dist/server-fn-client.cjs +4 -4
  873. package/dist/server-fn-client.d.mts +60 -0
  874. package/dist/server-fn-client.d.ts +60 -0
  875. package/dist/server-fn-client.mjs +3 -3
  876. package/dist/server-fn-error.d-DrcH9cc1.d.mts +26 -0
  877. package/dist/server-fn-error.d-DrcH9cc1.d.ts +26 -0
  878. package/dist/server-fn.cjs +15 -14
  879. package/dist/server-fn.d.mts +192 -0
  880. package/dist/server-fn.d.ts +192 -0
  881. package/dist/server-fn.mjs +14 -13
  882. package/dist/server-plugins.cjs +15 -15
  883. package/dist/server-plugins.d.mts +65 -0
  884. package/dist/server-plugins.d.ts +65 -0
  885. package/dist/server-plugins.mjs +14 -14
  886. package/dist/server-query-client.cjs +9 -8
  887. package/dist/server-query-client.d.mts +26 -0
  888. package/dist/server-query-client.d.ts +26 -0
  889. package/dist/server-query-client.mjs +8 -7
  890. package/dist/server-query-runtime.d-DXRNhX_3.d.ts +36 -0
  891. package/dist/server-query-runtime.d-aP52iuL5.d.mts +36 -0
  892. package/dist/server-query.cjs +17 -16
  893. package/dist/server-query.d.mts +46 -0
  894. package/dist/server-query.d.ts +46 -0
  895. package/dist/server-query.mjs +16 -15
  896. package/dist/server.cjs +266 -199
  897. package/dist/server.d.mts +78 -0
  898. package/dist/server.d.ts +78 -0
  899. package/dist/server.mjs +239 -172
  900. package/dist/session-2Q72D4QV.cjs +23 -0
  901. package/dist/session-QZXZOPR2.mjs +23 -0
  902. package/dist/shell-render.d-CG6bPiiA.d.mts +41 -0
  903. package/dist/shell-render.d-CG6bPiiA.d.ts +41 -0
  904. package/dist/spa-router.d-CNi77LZm.d.mts +248 -0
  905. package/dist/spa-router.d-Cvgf5QP4.d.ts +248 -0
  906. package/dist/storage.cjs +7 -3
  907. package/dist/storage.d.mts +60 -0
  908. package/dist/storage.d.ts +60 -0
  909. package/dist/storage.mjs +6 -2
  910. package/dist/testing.cjs +59 -76
  911. package/dist/testing.d.mts +110 -0
  912. package/dist/testing.d.ts +110 -0
  913. package/dist/testing.mjs +49 -66
  914. package/dist/theme/client.cjs +5 -5
  915. package/dist/theme/client.d.mts +10 -0
  916. package/dist/theme/client.d.ts +10 -0
  917. package/dist/theme/client.mjs +4 -4
  918. package/dist/theme/index.cjs +3 -3
  919. package/dist/theme/index.d.mts +6 -0
  920. package/dist/theme/index.d.ts +6 -0
  921. package/dist/theme/index.mjs +2 -2
  922. package/dist/theme/runtime.cjs +3 -3
  923. package/dist/theme/runtime.d.mts +13 -0
  924. package/dist/theme/runtime.d.ts +13 -0
  925. package/dist/theme/runtime.mjs +2 -2
  926. package/dist/theme/server.cjs +8 -8
  927. package/dist/theme/server.d.mts +8 -0
  928. package/dist/theme/server.d.ts +8 -0
  929. package/dist/theme/server.mjs +7 -7
  930. package/dist/types.d-BnIqOn9w.d.mts +73 -0
  931. package/dist/types.d-BnIqOn9w.d.ts +73 -0
  932. package/dist/types.d-C41ePjvP.d.mts +85 -0
  933. package/dist/types.d-C41ePjvP.d.ts +85 -0
  934. package/dist/types.d-DQnyD3VD.d.mts +30 -0
  935. package/dist/types.d-DQnyD3VD.d.ts +30 -0
  936. package/dist/utils.d-C3H-14_Y.d.ts +54 -0
  937. package/dist/utils.d-D8VfzZYn.d.mts +54 -0
  938. package/dist/version.cjs +3 -3
  939. package/dist/version.d.mts +3 -0
  940. package/dist/version.d.ts +3 -0
  941. package/dist/version.mjs +2 -2
  942. package/dist/vite.cjs +168 -120
  943. package/dist/vite.d.mts +168 -0
  944. package/dist/vite.d.ts +168 -0
  945. package/dist/vite.mjs +155 -107
  946. package/dist/workflows.cjs +14 -13
  947. package/dist/workflows.d-CRMzQZ3k.d.mts +188 -0
  948. package/dist/workflows.d-CRMzQZ3k.d.ts +188 -0
  949. package/dist/workflows.d.mts +1 -0
  950. package/dist/workflows.d.ts +1 -0
  951. package/dist/workflows.mjs +13 -12
  952. package/package.json +7 -2
  953. package/dist/agent-mcp-handler-LPJ2CADR.mjs +0 -19
  954. package/dist/agent-mcp-handler-SJAHFSPI.cjs +0 -19
  955. package/dist/chunk-23MGIV4X.mjs +0 -579
  956. package/dist/chunk-27ZWSI3W.cjs +0 -64
  957. package/dist/chunk-2A3EQHXX.mjs +0 -173
  958. package/dist/chunk-2CQ74SP6.cjs +0 -13
  959. package/dist/chunk-2ELDTQRN.mjs +0 -85
  960. package/dist/chunk-2J7W2WND.mjs +0 -149
  961. package/dist/chunk-2NNMOPDN.mjs +0 -237
  962. package/dist/chunk-2PQNJXFM.mjs +0 -20
  963. package/dist/chunk-2SJ4RQ6P.cjs +0 -57
  964. package/dist/chunk-2UC36WAC.mjs +0 -22
  965. package/dist/chunk-2VQKKQ6D.mjs +0 -51
  966. package/dist/chunk-2Y3JRYVG.mjs +0 -71
  967. package/dist/chunk-35GKZR22.mjs +0 -157
  968. package/dist/chunk-3BU22U3M.cjs +0 -237
  969. package/dist/chunk-3KZS4SUS.mjs +0 -414
  970. package/dist/chunk-3SDFA7UF.cjs +0 -701
  971. package/dist/chunk-3TLO7SBY.cjs +0 -240
  972. package/dist/chunk-3UEVPCGW.mjs +0 -435
  973. package/dist/chunk-3WNDJT2E.cjs +0 -109
  974. package/dist/chunk-44SYJEG3.mjs +0 -13
  975. package/dist/chunk-45ZSJLDT.mjs +0 -183
  976. package/dist/chunk-4E5AEDKY.mjs +0 -696
  977. package/dist/chunk-4E5WBPEG.mjs +0 -1157
  978. package/dist/chunk-4GLOOWKE.mjs +0 -1344
  979. package/dist/chunk-4JCQDWPX.mjs +0 -24
  980. package/dist/chunk-4NU4GGTC.cjs +0 -484
  981. package/dist/chunk-4OOBRCJX.mjs +0 -300
  982. package/dist/chunk-4PPEPOZZ.cjs +0 -21
  983. package/dist/chunk-4RB44K6Z.mjs +0 -94
  984. package/dist/chunk-4SIYUGRY.mjs +0 -93
  985. package/dist/chunk-4WQ6PGSJ.cjs +0 -367
  986. package/dist/chunk-4WVJLURN.mjs +0 -417
  987. package/dist/chunk-4ZFL5GFN.cjs +0 -520
  988. package/dist/chunk-54UPOYFS.mjs +0 -35
  989. package/dist/chunk-55YI3RRB.mjs +0 -192
  990. package/dist/chunk-5I3OT426.cjs +0 -11021
  991. package/dist/chunk-5QIKR7RR.cjs +0 -224
  992. package/dist/chunk-5SJWVY6R.mjs +0 -26
  993. package/dist/chunk-5WI2S4CO.mjs +0 -20
  994. package/dist/chunk-63H6BKXG.cjs +0 -389
  995. package/dist/chunk-655RLQQL.mjs +0 -43
  996. package/dist/chunk-6EODJYCX.cjs +0 -183
  997. package/dist/chunk-6EXBPJ24.cjs +0 -434
  998. package/dist/chunk-6MVFL3R5.cjs +0 -506
  999. package/dist/chunk-6NT6S2VQ.mjs +0 -180
  1000. package/dist/chunk-6QQDAAAZ.cjs +0 -38
  1001. package/dist/chunk-6SJ2KJTA.mjs +0 -314
  1002. package/dist/chunk-6SM5XXFS.cjs +0 -70
  1003. package/dist/chunk-6V4TDWEC.cjs +0 -455
  1004. package/dist/chunk-72ADZ6GQ.cjs +0 -19
  1005. package/dist/chunk-72AK62H5.mjs +0 -55
  1006. package/dist/chunk-75RZHGLS.cjs +0 -135
  1007. package/dist/chunk-77GNHH2Z.cjs +0 -236
  1008. package/dist/chunk-7DBXEASO.cjs +0 -40
  1009. package/dist/chunk-7LTCDQRS.mjs +0 -166
  1010. package/dist/chunk-7W3CPVXS.cjs +0 -24
  1011. package/dist/chunk-A6WIQH5Z.cjs +0 -31
  1012. package/dist/chunk-ADEA7PN3.cjs +0 -1101
  1013. package/dist/chunk-AELACLOB.mjs +0 -47
  1014. package/dist/chunk-AHGECQEW.mjs +0 -49
  1015. package/dist/chunk-AI7QMY7O.cjs +0 -41
  1016. package/dist/chunk-AJQTP4OO.mjs +0 -212
  1017. package/dist/chunk-AMDMVWMI.cjs +0 -39
  1018. package/dist/chunk-ARJWXNQL.cjs +0 -256
  1019. package/dist/chunk-BCMSYSN2.mjs +0 -183
  1020. package/dist/chunk-BIDYX3SL.cjs +0 -91
  1021. package/dist/chunk-BJIYRUGQ.mjs +0 -35
  1022. package/dist/chunk-BJPBQNIE.cjs +0 -2355
  1023. package/dist/chunk-BO36SELV.cjs +0 -395
  1024. package/dist/chunk-BOYNDCZL.mjs +0 -54
  1025. package/dist/chunk-BPMATOP2.cjs +0 -687
  1026. package/dist/chunk-BPOF5U4N.mjs +0 -566
  1027. package/dist/chunk-BRYHOB4X.mjs +0 -18
  1028. package/dist/chunk-BSC7JTOK.mjs +0 -70
  1029. package/dist/chunk-BTHHUD7Q.mjs +0 -51
  1030. package/dist/chunk-BUGNQIHC.mjs +0 -449
  1031. package/dist/chunk-C4NCTZLM.mjs +0 -22
  1032. package/dist/chunk-C4SPBWFM.cjs +0 -26
  1033. package/dist/chunk-C5GUTBZK.cjs +0 -173
  1034. package/dist/chunk-CBBLJMR5.mjs +0 -74
  1035. package/dist/chunk-CBJJH36A.cjs +0 -2187
  1036. package/dist/chunk-CGBDNNSM.cjs +0 -664
  1037. package/dist/chunk-CI6E3UOH.cjs +0 -314
  1038. package/dist/chunk-CMGMGHUZ.cjs +0 -27
  1039. package/dist/chunk-CNOQY6Z7.mjs +0 -156
  1040. package/dist/chunk-CQ6OSQ3K.mjs +0 -36
  1041. package/dist/chunk-CU625VAY.mjs +0 -13
  1042. package/dist/chunk-CVOSWIQA.mjs +0 -15300
  1043. package/dist/chunk-CXEN47J3.mjs +0 -550
  1044. package/dist/chunk-CXP5U3RW.cjs +0 -54
  1045. package/dist/chunk-D227TIEN.cjs +0 -1114
  1046. package/dist/chunk-D2BB47NB.cjs +0 -157
  1047. package/dist/chunk-D2ULAULS.cjs +0 -166
  1048. package/dist/chunk-D7JTOLFK.cjs +0 -285
  1049. package/dist/chunk-DAATZTKJ.mjs +0 -220
  1050. package/dist/chunk-DAO7JGTS.mjs +0 -73
  1051. package/dist/chunk-DQQOKWYA.cjs +0 -42
  1052. package/dist/chunk-DTSROJ5J.mjs +0 -367
  1053. package/dist/chunk-DVM4FKZL.cjs +0 -169
  1054. package/dist/chunk-DZ5ZVB2K.cjs +0 -9
  1055. package/dist/chunk-E2ROOWQC.cjs +0 -2225
  1056. package/dist/chunk-E3UK5IIB.cjs +0 -593
  1057. package/dist/chunk-E5GNDG5F.mjs +0 -701
  1058. package/dist/chunk-EA5K5BKU.mjs +0 -455
  1059. package/dist/chunk-ECKF2BAM.cjs +0 -403
  1060. package/dist/chunk-EK4QAEFZ.cjs +0 -550
  1061. package/dist/chunk-EMLAPBEM.mjs +0 -256
  1062. package/dist/chunk-ENLZ4R3Y.mjs +0 -55
  1063. package/dist/chunk-EUV4YR3V.cjs +0 -1362
  1064. package/dist/chunk-EWET4D2Y.mjs +0 -395
  1065. package/dist/chunk-EZDQRNQ7.mjs +0 -1496
  1066. package/dist/chunk-F2SE2VDO.mjs +0 -65
  1067. package/dist/chunk-F3LTXB63.mjs +0 -40
  1068. package/dist/chunk-F3VB7ONA.mjs +0 -338
  1069. package/dist/chunk-F5QO4FNE.mjs +0 -664
  1070. package/dist/chunk-FA2W42OV.mjs +0 -25
  1071. package/dist/chunk-FDR64H6B.mjs +0 -140
  1072. package/dist/chunk-FFFW3OQ7.cjs +0 -65
  1073. package/dist/chunk-FJ3M4CUX.cjs +0 -46
  1074. package/dist/chunk-FK6GO24V.cjs +0 -54
  1075. package/dist/chunk-FNO7A7CM.cjs +0 -1496
  1076. package/dist/chunk-FO427P6I.cjs +0 -392
  1077. package/dist/chunk-FP2INE7H.mjs +0 -113
  1078. package/dist/chunk-FUZEBRP3.mjs +0 -593
  1079. package/dist/chunk-FZ6YYU2W.mjs +0 -65
  1080. package/dist/chunk-G2KY33I6.mjs +0 -202
  1081. package/dist/chunk-G4MWPDSE.mjs +0 -19
  1082. package/dist/chunk-G643DQCH.cjs +0 -13
  1083. package/dist/chunk-G7HXGLEC.cjs +0 -175
  1084. package/dist/chunk-GC3SUL6M.mjs +0 -109
  1085. package/dist/chunk-GCXWJJKH.mjs +0 -169
  1086. package/dist/chunk-GHFS7RUB.mjs +0 -152
  1087. package/dist/chunk-GQ3Z3IZI.cjs +0 -241
  1088. package/dist/chunk-H4AMB6ZE.mjs +0 -421
  1089. package/dist/chunk-H77NVNJ2.mjs +0 -57
  1090. package/dist/chunk-HALDNTIV.mjs +0 -2225
  1091. package/dist/chunk-HITLGIAO.cjs +0 -55
  1092. package/dist/chunk-HLJ6MBUZ.cjs +0 -183
  1093. package/dist/chunk-HOXTWRGB.mjs +0 -484
  1094. package/dist/chunk-HREOKQWT.cjs +0 -45
  1095. package/dist/chunk-I2BHUNBU.mjs +0 -14
  1096. package/dist/chunk-I57LW5VZ.cjs +0 -94
  1097. package/dist/chunk-IE7XCHH3.cjs +0 -85
  1098. package/dist/chunk-IHNIDL6H.cjs +0 -772
  1099. package/dist/chunk-IK6LVLKC.cjs +0 -51
  1100. package/dist/chunk-IOEH4VWN.mjs +0 -202
  1101. package/dist/chunk-IWZKTWHZ.cjs +0 -435
  1102. package/dist/chunk-IZY3V5XW.mjs +0 -23
  1103. package/dist/chunk-J63ZH5OQ.cjs +0 -62
  1104. package/dist/chunk-J7FSKED3.cjs +0 -93
  1105. package/dist/chunk-JBSVKMC5.mjs +0 -28
  1106. package/dist/chunk-JDNHKPTD.cjs +0 -22
  1107. package/dist/chunk-JG6DJF5A.mjs +0 -238
  1108. package/dist/chunk-JGLC4TO3.cjs +0 -192
  1109. package/dist/chunk-JM5XPKWH.mjs +0 -41
  1110. package/dist/chunk-JNUWCDTF.cjs +0 -1344
  1111. package/dist/chunk-JNZ4TDWM.mjs +0 -445
  1112. package/dist/chunk-JPLUGGRV.mjs +0 -230
  1113. package/dist/chunk-JSROZYYO.cjs +0 -164
  1114. package/dist/chunk-KCMTCM6I.cjs +0 -53
  1115. package/dist/chunk-KGB5UXJJ.mjs +0 -27
  1116. package/dist/chunk-KGZIORNL.cjs +0 -43
  1117. package/dist/chunk-KI3MESHB.mjs +0 -224
  1118. package/dist/chunk-KIIMAWOJ.cjs +0 -505
  1119. package/dist/chunk-KMTGADN3.mjs +0 -95
  1120. package/dist/chunk-KN7K4VQN.mjs +0 -236
  1121. package/dist/chunk-KNBBQHO2.cjs +0 -51
  1122. package/dist/chunk-KR6CKSXT.cjs +0 -15
  1123. package/dist/chunk-KXWRO25S.cjs +0 -85
  1124. package/dist/chunk-L3KT7IXV.mjs +0 -91
  1125. package/dist/chunk-LCCBO7PJ.cjs +0 -46
  1126. package/dist/chunk-LIUGYUX3.cjs +0 -22
  1127. package/dist/chunk-LPEX4YW6.mjs +0 -13
  1128. package/dist/chunk-LSKZMJMP.cjs +0 -65
  1129. package/dist/chunk-LSZAVSGY.mjs +0 -1101
  1130. package/dist/chunk-LTNGXMQ6.cjs +0 -55
  1131. package/dist/chunk-LYLEZIG3.cjs +0 -73
  1132. package/dist/chunk-LYV44OIR.mjs +0 -256
  1133. package/dist/chunk-M2L4MYDQ.cjs +0 -14
  1134. package/dist/chunk-M7MKQXAF.cjs +0 -87
  1135. package/dist/chunk-MKYBIIAQ.mjs +0 -2187
  1136. package/dist/chunk-MQ3H6LT5.cjs +0 -202
  1137. package/dist/chunk-MRMI32SN.cjs +0 -1157
  1138. package/dist/chunk-MSSFIQGM.mjs +0 -1002
  1139. package/dist/chunk-MT763TDW.cjs +0 -43
  1140. package/dist/chunk-MVL2RAJW.mjs +0 -62
  1141. package/dist/chunk-MWSK6C4J.cjs +0 -18
  1142. package/dist/chunk-MWWVKDW3.cjs +0 -169
  1143. package/dist/chunk-N2NAS2AM.cjs +0 -725
  1144. package/dist/chunk-N46M65CI.mjs +0 -54
  1145. package/dist/chunk-N4UOK6ZI.cjs +0 -256
  1146. package/dist/chunk-NI2TCCTG.mjs +0 -11020
  1147. package/dist/chunk-NO3WWW3N.cjs +0 -192
  1148. package/dist/chunk-NPC7VWJE.mjs +0 -277
  1149. package/dist/chunk-NRDBW4MP.mjs +0 -45
  1150. package/dist/chunk-NRSN7G7E.mjs +0 -42
  1151. package/dist/chunk-NYJMY3JA.cjs +0 -156
  1152. package/dist/chunk-NZKJGRB3.cjs +0 -230
  1153. package/dist/chunk-O6BCQV2T.mjs +0 -46
  1154. package/dist/chunk-O6I6VWKK.mjs +0 -493
  1155. package/dist/chunk-O6WAEAX3.mjs +0 -2028
  1156. package/dist/chunk-O7BH5O46.mjs +0 -175
  1157. package/dist/chunk-OFZUJMCU.mjs +0 -601
  1158. package/dist/chunk-OHLSEQ57.mjs +0 -910
  1159. package/dist/chunk-OHY2ZWUG.cjs +0 -25
  1160. package/dist/chunk-OI6CMLWX.cjs +0 -47
  1161. package/dist/chunk-ONUEYC6N.mjs +0 -27
  1162. package/dist/chunk-OO7GXVSR.mjs +0 -9
  1163. package/dist/chunk-OT6ZEW74.mjs +0 -139
  1164. package/dist/chunk-OTC5BDGO.mjs +0 -687
  1165. package/dist/chunk-OX6O6WVA.cjs +0 -74
  1166. package/dist/chunk-OYEUREB6.cjs +0 -35
  1167. package/dist/chunk-OZVEHHMA.cjs +0 -194
  1168. package/dist/chunk-P5TJO5IS.mjs +0 -240
  1169. package/dist/chunk-PCOTGFSM.cjs +0 -139
  1170. package/dist/chunk-PNGWZFUQ.mjs +0 -39
  1171. package/dist/chunk-PSV6XKPO.cjs +0 -220
  1172. package/dist/chunk-PTZ2TVNE.cjs +0 -178
  1173. package/dist/chunk-PZNL3WEG.mjs +0 -772
  1174. package/dist/chunk-PZYCPSCC.cjs +0 -35
  1175. package/dist/chunk-Q2KB32T4.mjs +0 -690
  1176. package/dist/chunk-Q5B3KJBP.cjs +0 -152
  1177. package/dist/chunk-QBK2AA4U.cjs +0 -445
  1178. package/dist/chunk-QCFBDFRS.mjs +0 -169
  1179. package/dist/chunk-QCVE2OCI.cjs +0 -169
  1180. package/dist/chunk-QE6VAKLT.mjs +0 -85
  1181. package/dist/chunk-QNPEUFHQ.cjs +0 -27
  1182. package/dist/chunk-QORUJDIV.mjs +0 -46
  1183. package/dist/chunk-QV4VE2OW.mjs +0 -166
  1184. package/dist/chunk-QVKYGNVM.mjs +0 -27
  1185. package/dist/chunk-QVYLBY73.mjs +0 -93
  1186. package/dist/chunk-R3DS7A2T.mjs +0 -21
  1187. package/dist/chunk-R5A5KNVX.cjs +0 -20
  1188. package/dist/chunk-R5JIFR6B.cjs +0 -42
  1189. package/dist/chunk-RHAZ22ZN.mjs +0 -87
  1190. package/dist/chunk-RKPDESVW.cjs +0 -15301
  1191. package/dist/chunk-RSOJ7DRT.mjs +0 -506
  1192. package/dist/chunk-S3A45T7F.cjs +0 -166
  1193. package/dist/chunk-S3FNNQHR.mjs +0 -31
  1194. package/dist/chunk-S3JO3N4H.cjs +0 -17
  1195. package/dist/chunk-S67OYZU7.mjs +0 -711
  1196. package/dist/chunk-S6VYG6XU.cjs +0 -493
  1197. package/dist/chunk-SAXPH6G5.mjs +0 -169
  1198. package/dist/chunk-SC2WYWPF.mjs +0 -241
  1199. package/dist/chunk-SDOTRX3V.cjs +0 -690
  1200. package/dist/chunk-SEJ5N6SL.mjs +0 -38
  1201. package/dist/chunk-SFGWNC43.mjs +0 -97
  1202. package/dist/chunk-SHB3GYXI.mjs +0 -285
  1203. package/dist/chunk-SHLXACIO.cjs +0 -95
  1204. package/dist/chunk-SJNMVDDF.cjs +0 -86
  1205. package/dist/chunk-SK35NQKK.cjs +0 -27
  1206. package/dist/chunk-SKNL7VA2.mjs +0 -42
  1207. package/dist/chunk-SLQCDJSO.mjs +0 -18
  1208. package/dist/chunk-SOR334EB.cjs +0 -149
  1209. package/dist/chunk-SU7MH53P.cjs +0 -180
  1210. package/dist/chunk-SVRTJOUF.cjs +0 -113
  1211. package/dist/chunk-SYQ3MOWW.cjs +0 -73
  1212. package/dist/chunk-T4OGRVNS.mjs +0 -392
  1213. package/dist/chunk-T5OJPTVN.cjs +0 -417
  1214. package/dist/chunk-TE2G5ION.cjs +0 -2028
  1215. package/dist/chunk-TFQG7TBC.mjs +0 -43
  1216. package/dist/chunk-TIWHTW3Q.cjs +0 -24
  1217. package/dist/chunk-TKJZFIML.cjs +0 -20
  1218. package/dist/chunk-TKSCR644.cjs +0 -414
  1219. package/dist/chunk-TVGP4BBZ.mjs +0 -45
  1220. package/dist/chunk-U4KT7QP3.cjs +0 -23
  1221. package/dist/chunk-UDNPLXW7.mjs +0 -86
  1222. package/dist/chunk-UFDAAQFX.cjs +0 -169
  1223. package/dist/chunk-UFDV5N3C.cjs +0 -711
  1224. package/dist/chunk-UH6QN5NL.mjs +0 -178
  1225. package/dist/chunk-UP4CW6WP.mjs +0 -169
  1226. package/dist/chunk-UQZ4AYTH.cjs +0 -168
  1227. package/dist/chunk-US2QVW3E.cjs +0 -36
  1228. package/dist/chunk-UVW64BCB.cjs +0 -910
  1229. package/dist/chunk-UWPLULNK.mjs +0 -520
  1230. package/dist/chunk-UXFQ3UDA.cjs +0 -140
  1231. package/dist/chunk-UYIHRDE4.cjs +0 -97
  1232. package/dist/chunk-V2FTMRS7.mjs +0 -223
  1233. package/dist/chunk-VB6UCX3V.cjs +0 -421
  1234. package/dist/chunk-VEKFLAQM.cjs +0 -300
  1235. package/dist/chunk-VILIPRS6.mjs +0 -725
  1236. package/dist/chunk-VQLJWDVW.cjs +0 -696
  1237. package/dist/chunk-W3B4PKAW.mjs +0 -28
  1238. package/dist/chunk-W4E7WMXE.cjs +0 -71
  1239. package/dist/chunk-W7LF2J2S.mjs +0 -64
  1240. package/dist/chunk-WBKEZXWE.cjs +0 -449
  1241. package/dist/chunk-WC5UV2HQ.cjs +0 -212
  1242. package/dist/chunk-WMAPPDMM.cjs +0 -28
  1243. package/dist/chunk-WMOGFOUJ.cjs +0 -223
  1244. package/dist/chunk-WNSDDRNU.mjs +0 -24
  1245. package/dist/chunk-WWFTAUFG.cjs +0 -45
  1246. package/dist/chunk-WWIKMBRN.mjs +0 -1362
  1247. package/dist/chunk-XCMCS4DA.mjs +0 -1114
  1248. package/dist/chunk-XJJVLDM6.mjs +0 -194
  1249. package/dist/chunk-XJXBIP67.cjs +0 -277
  1250. package/dist/chunk-XNPDONUH.mjs +0 -389
  1251. package/dist/chunk-XSIRSMAS.cjs +0 -339
  1252. package/dist/chunk-XZNTNMHT.mjs +0 -15
  1253. package/dist/chunk-Y5SJM2W7.cjs +0 -579
  1254. package/dist/chunk-YDQZGSDS.mjs +0 -2355
  1255. package/dist/chunk-YFILVET3.mjs +0 -192
  1256. package/dist/chunk-YFPGHF5F.cjs +0 -202
  1257. package/dist/chunk-YHOCRI4H.mjs +0 -434
  1258. package/dist/chunk-YJRZR7VU.cjs +0 -28
  1259. package/dist/chunk-YKX5BK66.cjs +0 -46
  1260. package/dist/chunk-YOZYCI6Z.mjs +0 -73
  1261. package/dist/chunk-YSCV4SJF.cjs +0 -49
  1262. package/dist/chunk-YSLWRWWP.cjs +0 -601
  1263. package/dist/chunk-YWMZUGIS.mjs +0 -403
  1264. package/dist/chunk-YWN746US.cjs +0 -1002
  1265. package/dist/chunk-YX3DBN4M.cjs +0 -18
  1266. package/dist/chunk-Z2HLU4IX.cjs +0 -238
  1267. package/dist/chunk-Z2RZJZIZ.mjs +0 -168
  1268. package/dist/chunk-Z3HATSKO.mjs +0 -46
  1269. package/dist/chunk-ZEG3OPIB.cjs +0 -93
  1270. package/dist/chunk-ZLAT2CWY.mjs +0 -135
  1271. package/dist/chunk-ZMMBIVQM.mjs +0 -505
  1272. package/dist/chunk-ZMSZZXOR.mjs +0 -164
  1273. package/dist/chunk-ZWM5KGAA.cjs +0 -566
  1274. package/dist/chunk-ZZSRYEYU.mjs +0 -53
  1275. package/dist/devtools-ERIKFEXX.mjs +0 -472
  1276. package/dist/devtools-JZJJY5CK.cjs +0 -472
  1277. package/dist/devtools-client-CXQ6PXI6.cjs +0 -254
  1278. package/dist/devtools-client-HJS2T34Y.mjs +0 -254
  1279. package/dist/devtools-ui-5GBDIGMK.cjs +0 -1296
  1280. package/dist/devtools-ui-5KDAVPIF.mjs +0 -1296
  1281. package/dist/integration-orm-55F7CII5.cjs +0 -13
  1282. package/dist/integration-orm-KV5B3BGZ.mjs +0 -13
  1283. package/dist/layers-UTB43B7A.mjs +0 -18
  1284. package/dist/layers-VUWIOFEO.cjs +0 -18
  1285. package/dist/manager-RT733VRK.mjs +0 -14
  1286. package/dist/manager-XZ5TX7AO.cjs +0 -14
  1287. package/dist/nitro-7F65EZZS.cjs +0 -653
  1288. package/dist/nitro-MPZJGPXK.mjs +0 -653
  1289. package/dist/node-module-bundle-L5L7JCZ4.mjs +0 -11
  1290. package/dist/node-module-bundle-VAFZOXMJ.cjs +0 -11
  1291. package/dist/schema-dev-notice-O67CPXJ6.mjs +0 -56
  1292. package/dist/schema-dev-notice-Y7MQEFGN.cjs +0 -56
  1293. package/dist/search-client-G3RICOFU.cjs +0 -13
  1294. package/dist/search-client-KR7YRIVR.mjs +0 -13
@@ -0,0 +1,1359 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+ var _chunkLRB5OVRTcjs = require('./chunk-LRB5OVRT.cjs');
4
+
5
+
6
+ var _chunkEVIWKPJVcjs = require('./chunk-EVIWKPJV.cjs');
7
+
8
+
9
+ var _chunkA25FXJ7Dcjs = require('./chunk-A25FXJ7D.cjs');
10
+
11
+
12
+ var _chunkD22BUQKWcjs = require('./chunk-D22BUQKW.cjs');
13
+
14
+ // src/agent-identity.ts
15
+ var AGENT_TOKENS = [
16
+ ["ChatGPT-User", "openai", "agent"],
17
+ ["OAI-SearchBot", "openai", "crawler"],
18
+ ["GPTBot", "openai", "crawler"],
19
+ ["Claude-User", "anthropic", "agent"],
20
+ ["Claude-SearchBot", "anthropic", "crawler"],
21
+ ["ClaudeBot", "anthropic", "crawler"],
22
+ ["Perplexity-User", "perplexity", "agent"],
23
+ ["PerplexityBot", "perplexity", "crawler"],
24
+ ["CCBot", "other", "crawler"],
25
+ ["Bytespider", "other", "crawler"],
26
+ ["Meta-ExternalAgent", "other", "crawler"]
27
+ ];
28
+ var AGENT_PATTERNS = AGENT_TOKENS.map(([token, family, category]) => ({
29
+ pattern: new RegExp(`(?:^|[\\s;(])${token}(?=[/\\s;)]|$)`, "i"),
30
+ family,
31
+ category
32
+ }));
33
+ var UNKNOWN = { family: "unknown", category: "unknown", identity: "unknown" };
34
+ function classifyFarmAgent(userAgent) {
35
+ const value = (_nullishCoalesce(userAgent, () => ( ""))).slice(0, 2048);
36
+ const matches = AGENT_PATTERNS.filter(({ pattern }) => pattern.test(value));
37
+ if (matches.length === 1) {
38
+ const { family, category } = matches[0];
39
+ return { family, category, identity: "self-reported" };
40
+ }
41
+ return { ...UNKNOWN };
42
+ }
43
+ var FARM_INTERNAL_READ_HEADER = "x-farm-internal-read";
44
+ function emitFarmAgentRead(request, surface, status, view) {
45
+ if (request.headers.has(FARM_INTERNAL_READ_HEADER)) return;
46
+ let route;
47
+ try {
48
+ route = new URL(request.url).pathname;
49
+ } catch (e) {
50
+ return;
51
+ }
52
+ _chunkEVIWKPJVcjs.emitFarmEvent.call(void 0, {
53
+ type: "agent.read",
54
+ surface,
55
+ route,
56
+ ...view ? { view } : {},
57
+ status,
58
+ agent: classifyFarmAgent(request.headers.get("user-agent"))
59
+ });
60
+ }
61
+
62
+ // src/markdown-view.ts
63
+ var FENCE = /^\s{0,3}(`{3,}|~{3,})/;
64
+ var ATX_HEADING = /^\s{0,3}(#{1,6})[ \t]+(.+?)[ \t]*#*[ \t]*$/;
65
+ function parseMarkdownHeadingsFromLines(lines) {
66
+ const headings = [];
67
+ const used = /* @__PURE__ */ new Map();
68
+ let index = 0;
69
+ if (_optionalChain([lines, 'access', _2 => _2[0], 'optionalAccess', _3 => _3.trim, 'call', _4 => _4()]) === "---") {
70
+ const close = lines.findIndex((line, lineIndex) => lineIndex > 0 && line.trim() === "---");
71
+ if (close > 0) index = close + 1;
72
+ }
73
+ let fence = null;
74
+ for (; index < lines.length; index++) {
75
+ const line = lines[index];
76
+ const fenceMatch = FENCE.exec(line);
77
+ if (fenceMatch) {
78
+ const marker = fenceMatch[1];
79
+ if (fence === null) fence = marker;
80
+ else if (marker[0] === fence[0] && marker.length >= fence.length) fence = null;
81
+ continue;
82
+ }
83
+ if (fence !== null) continue;
84
+ const match = ATX_HEADING.exec(line);
85
+ if (!match) continue;
86
+ const text = match[2].trim();
87
+ const base = slugifyHeading(text) || "section";
88
+ const count = _nullishCoalesce(used.get(base), () => ( 0));
89
+ used.set(base, count + 1);
90
+ headings.push({
91
+ id: count === 0 ? base : `${base}-${count}`,
92
+ level: match[1].length,
93
+ text,
94
+ start: index,
95
+ end: lines.length
96
+ });
97
+ }
98
+ const open = [];
99
+ for (const heading of headings) {
100
+ while (open.length > 0 && open[open.length - 1].level >= heading.level) {
101
+ open.pop().end = heading.start;
102
+ }
103
+ open.push(heading);
104
+ }
105
+ return headings;
106
+ }
107
+ function slugifyHeading(text) {
108
+ return text.replace(/!?\[([^\]]*)\]\([^)]*\)/g, "$1").replace(/[`*_~]/g, "").toLowerCase().replace(/[^\p{L}\p{N}\s-]/gu, "").trim().replace(/\s/g, "-");
109
+ }
110
+ function estimateFarmMarkdownTokens(text) {
111
+ return Math.ceil(text.length / 4);
112
+ }
113
+ var FARM_MARKDOWN_MIN_TOKEN_BUDGET = 100;
114
+ var FARM_MARKDOWN_VIEW_PARAMS = [
115
+ "outline",
116
+ "section",
117
+ "actions",
118
+ "max_tokens",
119
+ "cursor"
120
+ ];
121
+ function selectFarmMarkdownView(markdown, searchParams, markdownPath) {
122
+ const wantsOutline = searchParams.has("outline");
123
+ const sectionId = searchParams.get("section");
124
+ const budget = searchParams.get("max_tokens");
125
+ if (!wantsOutline && sectionId === null && budget === null)
126
+ return { status: 200, body: markdown };
127
+ const viewUrl = (view) => {
128
+ const query = new URLSearchParams(searchParams);
129
+ for (const name of FARM_MARKDOWN_VIEW_PARAMS) query.delete(name);
130
+ for (const [name, value] of Object.entries(view)) {
131
+ if (value !== null && value !== void 0) query.set(name, value);
132
+ }
133
+ const search = query.toString();
134
+ return search ? `${markdownPath}?${search}` : markdownPath;
135
+ };
136
+ const withinBudget = (document) => budget === null ? { status: 200, body: document } : selectFarmMarkdownPart(
137
+ document,
138
+ budget,
139
+ searchParams.get("cursor"),
140
+ (cursor) => viewUrl({ section: sectionId, max_tokens: budget, cursor })
141
+ );
142
+ if (!wantsOutline && sectionId === null) return withinBudget(markdown);
143
+ const lines = markdown.split("\n");
144
+ const headings = parseMarkdownHeadingsFromLines(lines);
145
+ const sectionText = (heading) => lines.slice(heading.start, heading.end).join("\n").trim();
146
+ if (sectionId !== null) {
147
+ const heading = headings.find((candidate) => candidate.id === sectionId);
148
+ if (heading) return withinBudget(`${sectionText(heading)}
149
+ `);
150
+ const available = headings.map((candidate) => `- \`${candidate.id}\``).join("\n");
151
+ return {
152
+ status: 404,
153
+ body: `# Section not found
154
+
155
+ ${markdownCodeSpan(sectionId)} is not a section of ${markdownPath}.
156
+
157
+ ` + (available ? `Available sections:
158
+
159
+ ${available}
160
+ ` : "This page has no sections.\n")
161
+ };
162
+ }
163
+ const offsets = [];
164
+ let offset = 0;
165
+ for (const line of lines) {
166
+ offsets.push(offset);
167
+ offset += line.length + 1;
168
+ }
169
+ const minLevel = headings.reduce((min, heading) => Math.min(min, heading.level), 6);
170
+ const entries = headings.map((heading) => {
171
+ const indent = " ".repeat(heading.level - minLevel);
172
+ let last = heading.end - 1;
173
+ while (last > heading.start && lines[last].trim().length === 0) last--;
174
+ const first = lines[heading.start];
175
+ const length = offsets[last] + lines[last].trimEnd().length - offsets[heading.start] - (first.length - first.trimStart().length);
176
+ const tokens = Math.ceil(length / 4);
177
+ return `${indent}- [${heading.text}](${viewUrl({ section: heading.id })}) ~${tokens} tokens`;
178
+ });
179
+ return {
180
+ status: 200,
181
+ body: `# Outline of ${markdownPath}
182
+
183
+ About ${estimateFarmMarkdownTokens(markdown)} tokens in total. Request one section with \`?section=<id>\`, or read in parts with \`?max_tokens=<n>\`.
184
+
185
+ ` + (entries.length > 0 ? `${entries.join("\n")}
186
+ ` : "This page has no headings.\n")
187
+ };
188
+ }
189
+ function markdownCodeSpan(value) {
190
+ const text = value.replace(/[\p{Cc}\u2028\u2029]+/gu, " ");
191
+ const longestRun = (_nullishCoalesce(text.match(/`+/g), () => ( []))).reduce((max, run) => Math.max(max, run.length), 0);
192
+ const fence = "`".repeat(longestRun + 1);
193
+ const pad = text.startsWith("`") || text.endsWith("`") ? " " : "";
194
+ return `${fence}${pad}${text}${pad}${fence}`;
195
+ }
196
+ function selectFarmPageActionsView(markdownPath, actions, headers) {
197
+ headers.set("Content-Type", "application/json; charset=utf-8");
198
+ const page = markdownPath === "/index.md" ? "/" : markdownPath.replace(/\.md$/, "");
199
+ return {
200
+ status: 200,
201
+ body: `${JSON.stringify({ page, markdown: markdownPath, actions }, null, 2)}
202
+ `
203
+ };
204
+ }
205
+ function selectFarmMarkdownPart(document, rawBudget, rawCursor, partUrl) {
206
+ const budget = /^\d{1,9}$/.test(rawBudget) ? Number(rawBudget) : Number.NaN;
207
+ if (!(budget >= FARM_MARKDOWN_MIN_TOKEN_BUDGET)) {
208
+ return {
209
+ status: 400,
210
+ body: `# Invalid max_tokens
211
+
212
+ \`max_tokens\` must be a whole number of at least ${FARM_MARKDOWN_MIN_TOKEN_BUDGET}.
213
+ `
214
+ };
215
+ }
216
+ const lines = document.replace(/\n$/, "").split("\n");
217
+ const version = hashFarmMarkdown(document).slice(0, 8);
218
+ let start = 0;
219
+ if (rawCursor !== null) {
220
+ const match = /^(\d{1,9})\.([0-9a-z]+)$/.exec(rawCursor);
221
+ if (!match || Number(match[1]) <= 0 || Number(match[1]) >= lines.length) {
222
+ return {
223
+ status: 400,
224
+ body: `# Invalid cursor
225
+
226
+ Start again at ${partUrl()}.
227
+ `
228
+ };
229
+ }
230
+ if (match[2] !== version) {
231
+ return {
232
+ status: 409,
233
+ body: `# Page changed
234
+
235
+ The page changed after this cursor was issued. Start again at ${partUrl()}.
236
+ `
237
+ };
238
+ }
239
+ start = Number(match[1]);
240
+ }
241
+ const fences = readOpenFences(lines);
242
+ const reopen = fences[start];
243
+ const room = budget * 4 - 200;
244
+ let size = reopen ? reopen.opener.length + 1 : 0;
245
+ let end = start;
246
+ let lastBreak = -1;
247
+ while (end < lines.length) {
248
+ const length = lines[end].length + 1;
249
+ if (end > start && size + length > room) break;
250
+ size += length;
251
+ end++;
252
+ if (end < lines.length && isPartBreak(lines, fences, end)) lastBreak = end;
253
+ }
254
+ const head = reopen ? `${reopen.opener}
255
+ ` : "";
256
+ if (end >= lines.length) {
257
+ return { status: 200, body: `${head}${lines.slice(start).join("\n")}
258
+ ` };
259
+ }
260
+ if (lastBreak > start) end = lastBreak;
261
+ const open = fences[end];
262
+ const part = `${head}${lines.slice(start, end).join("\n").replace(/\n+$/, "")}${open ? `
263
+ ${open.closer}` : ""}`;
264
+ const next = partUrl(`${end}.${version}`);
265
+ let remainingLength = lines.length - end - 1;
266
+ for (let index = end; index < lines.length; index++) remainingLength += lines[index].length;
267
+ const remaining = Math.ceil(remainingLength / 4);
268
+ return {
269
+ status: 200,
270
+ body: `${part}
271
+
272
+ ---
273
+
274
+ Continue: ${next} (about ${remaining} more tokens)
275
+ `,
276
+ headers: { Link: `<${next}>; rel="next"` }
277
+ };
278
+ }
279
+ function readOpenFences(lines) {
280
+ const open = [];
281
+ let fence;
282
+ let frontMatter = _optionalChain([lines, 'access', _5 => _5[0], 'optionalAccess', _6 => _6.trim, 'call', _7 => _7()]) === "---";
283
+ for (let index = 0; index < lines.length; index++) {
284
+ open.push(frontMatter && index > 0 ? { opener: "", closer: "" } : fence);
285
+ const line = lines[index];
286
+ if (frontMatter) {
287
+ if (index > 0 && line.trim() === "---") frontMatter = false;
288
+ continue;
289
+ }
290
+ const match = FENCE.exec(line);
291
+ if (!match) continue;
292
+ const marker = match[1];
293
+ if (!fence) fence = { opener: line.trim(), closer: marker, marker };
294
+ else if (marker[0] === fence.marker[0] && marker.length >= fence.marker.length)
295
+ fence = void 0;
296
+ }
297
+ return open;
298
+ }
299
+ function isPartBreak(lines, fences, index) {
300
+ if (fences[index]) return false;
301
+ return lines[index - 1].trim() === "" || ATX_HEADING.test(lines[index]);
302
+ }
303
+ function readMarkdownViewName(searchParams) {
304
+ if (searchParams.has("actions")) return "actions";
305
+ if (searchParams.has("outline")) return "outline";
306
+ if (searchParams.has("max_tokens")) return "parts";
307
+ return searchParams.has("section") ? "section" : void 0;
308
+ }
309
+ function createFarmMarkdownETag(body) {
310
+ return `W/"${hashFarmMarkdown(body)}-${body.length.toString(36)}"`;
311
+ }
312
+ function hashFarmMarkdown(body) {
313
+ let h1 = 3735928559;
314
+ let h2 = 1103547991;
315
+ for (let index = 0; index < body.length; index++) {
316
+ const code = body.charCodeAt(index);
317
+ h1 = Math.imul(h1 ^ code, 2654435761);
318
+ h2 = Math.imul(h2 ^ code, 1597334677);
319
+ }
320
+ h1 = Math.imul(h1 ^ h1 >>> 16, 2246822507) ^ Math.imul(h2 ^ h2 >>> 13, 3266489909);
321
+ h2 = Math.imul(h2 ^ h2 >>> 16, 2246822507) ^ Math.imul(h1 ^ h1 >>> 13, 3266489909);
322
+ return (4294967296 * (2097151 & h2) + (h1 >>> 0)).toString(36);
323
+ }
324
+ function ifNoneMatchIncludes(header, etag) {
325
+ if (!header) return false;
326
+ const opaque = etag.replace(/^W\//, "");
327
+ return header.split(",").map((token) => token.trim()).some((token) => token === "*" || token.replace(/^W\//, "") === opaque);
328
+ }
329
+ function createFarmMarkdownViewResponse(options) {
330
+ const url = _nullishCoalesce(options.requestUrl, () => ( new URL(options.request.url)));
331
+ const view = options.status >= 400 ? { status: options.status, body: options.markdown } : url.searchParams.has("actions") ? selectFarmPageActionsView(options.markdownPath, _nullishCoalesce(options.actions, () => ( [])), options.headers) : selectFarmMarkdownView(options.markdown, url.searchParams, options.markdownPath);
332
+ let status = view.status === 200 ? options.status : view.status;
333
+ const ifMatch = options.request.headers.get("if-match");
334
+ const preconditionFailed = status >= 200 && status < 300 && ifMatch !== null && ifMatch.trim() !== "*";
335
+ if (preconditionFailed) {
336
+ status = 412;
337
+ options.headers.set("Cache-Control", "no-store");
338
+ }
339
+ emitFarmAgentRead(options.request, "markdown", status, readMarkdownViewName(url.searchParams));
340
+ for (const [name, value] of Object.entries(_nullishCoalesce(view.headers, () => ( {}))))
341
+ options.headers.append(name, value);
342
+ const etag = createFarmMarkdownETag(view.body);
343
+ options.headers.set("ETag", etag);
344
+ if (status === 200 && ifNoneMatchIncludes(options.request.headers.get("if-none-match"), etag)) {
345
+ return new Response(null, { status: 304, headers: options.headers });
346
+ }
347
+ return new Response(preconditionFailed || options.request.method === "HEAD" ? null : view.body, {
348
+ status,
349
+ headers: options.headers
350
+ });
351
+ }
352
+
353
+ // src/markdown.ts
354
+ var FARM_MARKDOWN_CONTENT_TYPE = "text/markdown; charset=utf-8";
355
+ var FARM_MARKDOWN_PAGE_CHECK_HEADER = "x-farm-markdown-page-check";
356
+ var MARKDOWN_PAGE_CHECK_TOKEN = /* @__PURE__ */ Symbol.for("farm.markdownPageCheckToken");
357
+ function _getFarmMarkdownPageCheckToken() {
358
+ const state = globalThis;
359
+ return _nullishCoalesce(state[MARKDOWN_PAGE_CHECK_TOKEN], () => ( (state[MARKDOWN_PAGE_CHECK_TOKEN] = globalThis.crypto.randomUUID())));
360
+ }
361
+ function _isFarmMarkdownPageCheck(value) {
362
+ const state = globalThis;
363
+ const token = state[MARKDOWN_PAGE_CHECK_TOKEN];
364
+ return Boolean(token) && typeof value === "string" && value === token;
365
+ }
366
+ function farmRequestWantsMarkdown(pathname, accept) {
367
+ return pathname.toLowerCase().endsWith(".md") || requestAcceptsMarkdown(accept);
368
+ }
369
+ function createFarmMarkdownErrorBody(status, pathname, homeHref = "/") {
370
+ const heading = status === 404 ? "Page not found" : `Request failed (${status})`;
371
+ return `# ${heading}
372
+
373
+ No page is available at \`${pathname}\`. The URL may be incorrect, or the page has not been published.
374
+
375
+ Browse [the site homepage](${homeHref}) to find available pages.
376
+ `;
377
+ }
378
+ function resolveMarkdownConfig(config) {
379
+ if (config === false) {
380
+ return {
381
+ enabled: false,
382
+ expose: [],
383
+ cache: false,
384
+ includeMetadata: true
385
+ };
386
+ }
387
+ if (config === true || config === void 0) {
388
+ return {
389
+ enabled: true,
390
+ expose: true,
391
+ cache: false,
392
+ includeMetadata: true
393
+ };
394
+ }
395
+ const exposeInput = _nullishCoalesce(_nullishCoalesce(config.expose, () => ( config.routes)), () => ( true));
396
+ const expose = exposeInput === true ? true : Array.isArray(exposeInput) ? exposeInput.map(normalizeMarkdownRouteInput) : [];
397
+ return {
398
+ enabled: config.enabled !== false && (expose === true || expose.length > 0),
399
+ expose,
400
+ cache: _nullishCoalesce(config.cache, () => ( false)),
401
+ includeMetadata: _nullishCoalesce(config.includeMetadata, () => ( true))
402
+ };
403
+ }
404
+ function resolveMarkdownMirrorTarget(config, pathname, options = {}) {
405
+ const hasMarkdownExtension = pathname.toLowerCase().endsWith(".md");
406
+ if (!_optionalChain([config, 'optionalAccess', _8 => _8.enabled]) || !hasMarkdownExtension && !requestAcceptsMarkdown(options.accept)) {
407
+ return null;
408
+ }
409
+ const targetPathname = normalizeMarkdownRoute(
410
+ hasMarkdownExtension ? pathname.slice(0, -".md".length) || "/" : pathname
411
+ );
412
+ const route = findExposedMarkdownRoute(config, targetPathname);
413
+ if (!route && config.expose !== true) {
414
+ return null;
415
+ }
416
+ return {
417
+ pathname: targetPathname,
418
+ route
419
+ };
420
+ }
421
+ async function createMarkdownMirrorResponse(options) {
422
+ if (options.request.method !== "GET" && options.request.method !== "HEAD") {
423
+ return null;
424
+ }
425
+ const requestUrl = _optionalChain([options, 'access', _9 => _9.requestUrl, 'optionalAccess', _10 => _10.href]) === options.request.url ? options.requestUrl : new URL(options.request.url);
426
+ const hasMarkdownExtension = requestUrl.pathname.toLowerCase().endsWith(".md");
427
+ const target = resolveMarkdownMirrorTarget(options.config, requestUrl.pathname, {
428
+ accept: options.request.headers.get("accept")
429
+ });
430
+ if (!target) {
431
+ return null;
432
+ }
433
+ if (options.routeExists && !options.routeExists(target.pathname)) {
434
+ return null;
435
+ }
436
+ const pageUrl = new URL(options.request.url);
437
+ pageUrl.pathname = target.pathname;
438
+ for (const name of FARM_MARKDOWN_VIEW_PARAMS) pageUrl.searchParams.delete(name);
439
+ const headers = new Headers(options.request.headers);
440
+ headers.set("accept", "text/html");
441
+ headers.delete("if-match");
442
+ headers.delete("if-unmodified-since");
443
+ headers.delete("if-none-match");
444
+ headers.delete("if-modified-since");
445
+ headers.delete("range");
446
+ headers.delete("if-range");
447
+ const pageResponse = await options.renderPage(
448
+ new Request(pageUrl, {
449
+ method: "GET",
450
+ headers,
451
+ signal: options.request.signal
452
+ })
453
+ );
454
+ if (pageResponse.status === 204 || pageResponse.status === 205 || pageResponse.status === 304) {
455
+ return pageResponse;
456
+ }
457
+ const redirects = pageResponse.status >= 300 && pageResponse.status < 400 && pageResponse.headers.has("location");
458
+ if (redirects || !isHtmlResponse(pageResponse)) {
459
+ const accessResponse = createMarkdownAccessResponse(
460
+ pageResponse,
461
+ target.pathname,
462
+ pageUrl,
463
+ options.request.method === "HEAD"
464
+ );
465
+ if (accessResponse || options.request.method === "HEAD") {
466
+ void _optionalChain([pageResponse, 'access', _11 => _11.body, 'optionalAccess', _12 => _12.cancel, 'call', _13 => _13(), 'access', _14 => _14.catch, 'call', _15 => _15(() => {
467
+ })]);
468
+ return _nullishCoalesce(accessResponse, () => ( new Response(null, {
469
+ status: pageResponse.status,
470
+ statusText: pageResponse.statusText,
471
+ headers: pageResponse.headers
472
+ })));
473
+ }
474
+ return pageResponse;
475
+ }
476
+ const html = await pageResponse.text();
477
+ const markdownPath = target.pathname === "/" ? "/index.md" : `${target.pathname}.md`;
478
+ const region = pageResponse.status < 400 && /<form\b/i.test(html) ? readHtmlContentRegion(html) : void 0;
479
+ const actions = region === void 0 ? [] : extractPageActionsFromRegion(region, pageUrl);
480
+ for (const form of actions) {
481
+ if (!_optionalChain([form, 'access', _16 => _16.action, 'optionalAccess', _17 => _17.startsWith, 'call', _18 => _18("/")])) continue;
482
+ const pathname = new URL(form.action, pageUrl.origin).pathname;
483
+ const tool = _nullishCoalesce(_chunkLRB5OVRTcjs._findFarmMCPEndpointTool.call(void 0, form.method, pathname, options.apiServerBasePath), () => ( _chunkLRB5OVRTcjs._findFarmMCPEndpointTool.call(void 0, form.method, _chunkD22BUQKWcjs.stripFarmBasePath.call(void 0, pathname), options.apiServerBasePath)));
484
+ if (tool) form.tool = tool;
485
+ }
486
+ const markdown = pageResponse.status < 400 && requestUrl.searchParams.has("actions") ? "" : convertHtmlToMarkdown(
487
+ html,
488
+ {
489
+ title: _optionalChain([target, 'access', _19 => _19.route, 'optionalAccess', _20 => _20.title]),
490
+ includeMetadata: _nullishCoalesce(_optionalChain([options, 'access', _21 => _21.config, 'optionalAccess', _22 => _22.includeMetadata]), () => ( true)),
491
+ sourcePath: target.pathname,
492
+ actionsPath: actions.length > 0 ? `${markdownPath}?actions` : void 0
493
+ },
494
+ region
495
+ );
496
+ const headersOut = new Headers({
497
+ "Content-Type": "text/markdown; charset=utf-8",
498
+ "Content-Location": markdownPath,
499
+ "X-Farm-Markdown-Route": target.pathname
500
+ });
501
+ if (!hasMarkdownExtension) {
502
+ headersOut.set("Vary", "Accept");
503
+ }
504
+ for (const token of _nullishCoalesce(_optionalChain([pageResponse, 'access', _23 => _23.headers, 'access', _24 => _24.get, 'call', _25 => _25("vary"), 'optionalAccess', _26 => _26.split, 'call', _27 => _27(",")]), () => ( []))) {
505
+ const name = token.trim();
506
+ if (name && name.toLowerCase() !== "accept") appendHeaderToken(headersOut, "Vary", name);
507
+ }
508
+ const pageCacheControl = pageResponse.headers.get("cache-control");
509
+ const cache = _nullishCoalesce(_nullishCoalesce(_optionalChain([target, 'access', _28 => _28.route, 'optionalAccess', _29 => _29.cache]), () => ( _optionalChain([options, 'access', _30 => _30.config, 'optionalAccess', _31 => _31.cache]))), () => ( false));
510
+ headersOut.set(
511
+ "Cache-Control",
512
+ pageCacheControl && isPrivateCacheControl(pageCacheControl) ? pageCacheControl : headers.has("cookie") || headers.has("authorization") ? "private, no-store" : createMarkdownCacheHeader(cache)
513
+ );
514
+ preserveMarkdownResponseCookies(pageResponse.headers, headersOut);
515
+ if (pageResponse.status >= 400) {
516
+ preserveMarkdownResponseControlHeaders(pageResponse.headers, headersOut);
517
+ }
518
+ const robots = [pageResponse.headers.get("x-robots-tag"), readHtmlMetaContent(html, "robots")].filter((value) => Boolean(_optionalChain([value, 'optionalAccess', _32 => _32.trim, 'call', _33 => _33()]))).join(", ");
519
+ if (robots) headersOut.set("X-Robots-Tag", robots);
520
+ const canonical = readHtmlCanonicalHref(html);
521
+ if (canonical) {
522
+ try {
523
+ headersOut.append("Link", `<${new URL(canonical, pageUrl).href}>; rel="canonical"`);
524
+ } catch (e2) {
525
+ }
526
+ }
527
+ return createFarmMarkdownViewResponse({
528
+ request: options.request,
529
+ requestUrl,
530
+ markdown,
531
+ status: pageResponse.status,
532
+ headers: headersOut,
533
+ markdownPath,
534
+ actions
535
+ });
536
+ }
537
+ function createMarkdownAccessResponse(pageResponse, pathname, pageUrl, head) {
538
+ const location = pageResponse.headers.get("location");
539
+ const redirect = pageResponse.status >= 300 && pageResponse.status < 400 && location;
540
+ if (!redirect && pageResponse.status !== 401 && pageResponse.status !== 403) return null;
541
+ const headers = new Headers({
542
+ "Content-Type": "text/markdown; charset=utf-8",
543
+ "Cache-Control": "no-store",
544
+ "X-Farm-Markdown-Route": pathname
545
+ });
546
+ preserveMarkdownResponseCookies(pageResponse.headers, headers);
547
+ preserveMarkdownResponseControlHeaders(pageResponse.headers, headers);
548
+ let body;
549
+ if (redirect) {
550
+ let target;
551
+ try {
552
+ target = new URL(location, pageUrl).href;
553
+ } catch (e3) {
554
+ return null;
555
+ }
556
+ headers.set("Location", location);
557
+ body = `# Redirected
558
+
559
+ \`${pathname}\` redirects to [${target}](${target}). The page may require signing in.
560
+ `;
561
+ } else {
562
+ body = pageResponse.status === 401 ? `# Sign-in required
563
+
564
+ \`${pathname}\` requires signing in.
565
+ ` : `# Access denied
566
+
567
+ This account cannot read \`${pathname}\`.
568
+ `;
569
+ }
570
+ return new Response(head ? null : body, { status: pageResponse.status, headers });
571
+ }
572
+ function preserveMarkdownResponseControlHeaders(source, target) {
573
+ for (const name of ["WWW-Authenticate", "Proxy-Authenticate", "Retry-After", "Allow"]) {
574
+ const value = source.get(name);
575
+ if (value !== null) target.set(name, value);
576
+ }
577
+ }
578
+ function preserveMarkdownResponseCookies(source, target) {
579
+ const getSetCookie = source.getSetCookie;
580
+ const cookies = typeof getSetCookie === "function" ? getSetCookie.call(source) : source.has("set-cookie") ? [source.get("set-cookie")] : [];
581
+ if (cookies.length === 0) return;
582
+ for (const cookie of cookies) target.append("Set-Cookie", cookie);
583
+ target.set("Cache-Control", "private, no-store");
584
+ }
585
+ function applyMarkdownNegotiationHeaders(response, options) {
586
+ if (!isHtmlResponse(response)) {
587
+ return response;
588
+ }
589
+ const alternatePath = getFarmMarkdownAlternatePath(options.config, options.pathname);
590
+ if (!alternatePath) {
591
+ return response;
592
+ }
593
+ return _chunkA25FXJ7Dcjs._withFarmResponseHeaders.call(void 0, response, (headers) => {
594
+ appendHeaderToken(headers, "Vary", "Accept");
595
+ headers.append("Link", `<${alternatePath}>; rel="alternate"; type="text/markdown"`);
596
+ });
597
+ }
598
+ var CODE_BLOCK_MARK = "\0";
599
+ var CODE_BLOCK_PLACEHOLDER = /\u0000(\d+)\u0000/g;
600
+ 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;
601
+ var BOX_TAGS = /<\/?(label|button|input|select|textarea|option|output|meter|progress|td|th)\b[^>]*>/gi;
602
+ 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;
603
+ var HTML_TOKEN = /<\/?([a-zA-Z][\w:-]*)\b[^>]*?(\/?)>|[^<]+/g;
604
+ function separateLayoutRowItems(source) {
605
+ return source.replace(
606
+ LAYOUT_ROW,
607
+ (container, tag, attributes, content) => {
608
+ const boundaries = [];
609
+ const items = [];
610
+ let depth = 0;
611
+ let previousEnd = -1;
612
+ let item = "";
613
+ for (const match of content.matchAll(HTML_TOKEN)) {
614
+ const [token, name, selfClosing] = match;
615
+ const index = _nullishCoalesce(match.index, () => ( 0));
616
+ if (name === void 0) {
617
+ if (depth === 0) {
618
+ if (token.trim()) return container;
619
+ previousEnd = -1;
620
+ } else {
621
+ item += token;
622
+ }
623
+ continue;
624
+ }
625
+ const closing = token.startsWith("</");
626
+ const isVoid = selfClosing === "/" || VOID_TAGS.has(name.toLowerCase());
627
+ if (closing) {
628
+ depth = Math.max(0, depth - 1);
629
+ } else {
630
+ if (depth === 0 && previousEnd === index) boundaries.push(index);
631
+ if (!isVoid) depth += 1;
632
+ }
633
+ if (depth === 0) {
634
+ previousEnd = index + token.length;
635
+ items.push(decodeHtml(item).trim());
636
+ item = "";
637
+ }
638
+ }
639
+ if (boundaries.length === 0) return container;
640
+ if (items.filter(Boolean).every((text) => text.length === 1)) return container;
641
+ let separated = "";
642
+ let start = 0;
643
+ for (const boundary of boundaries) {
644
+ separated += `${content.slice(start, boundary)} `;
645
+ start = boundary;
646
+ }
647
+ separated += content.slice(start);
648
+ return `<${tag}${attributes}>${separated}</${tag}>`;
649
+ }
650
+ );
651
+ }
652
+ function htmlToMarkdown(html, options = {}) {
653
+ return convertHtmlToMarkdown(html, options);
654
+ }
655
+ function convertHtmlToMarkdown(html, options, region) {
656
+ const title = _nullishCoalesce(options.title, () => ( extractHtmlTitle(html)));
657
+ let source = _nullishCoalesce(region, () => ( readHtmlContentRegion(html)));
658
+ const codeBlocks = [];
659
+ const setAsideCodeBlock = (code, attributes) => {
660
+ const content = decodeHtml(stripTags(code)).trim();
661
+ const longestRun = (_nullishCoalesce(content.match(/`+/g), () => ( []))).reduce(
662
+ (longest, run) => Math.max(longest, run.length),
663
+ 0
664
+ );
665
+ const fence = "`".repeat(Math.max(3, longestRun + 1));
666
+ const language = _nullishCoalesce(readCodeLanguage(attributes), () => ( ""));
667
+ codeBlocks.push(`${fence}${language}
668
+ ${content}
669
+ ${fence}`);
670
+ return `
671
+
672
+ ${CODE_BLOCK_MARK}${codeBlocks.length - 1}${CODE_BLOCK_MARK}
673
+
674
+ `;
675
+ };
676
+ source = source.replace(
677
+ /<pre\b([^>]*)><code\b([^>]*)>([\s\S]*?)<\/code><\/pre>/gi,
678
+ (_, preAttributes, codeAttributes, code) => setAsideCodeBlock(code, [codeAttributes, preAttributes])
679
+ );
680
+ source = source.replace(
681
+ /<pre\b([^>]*)>([\s\S]*?)<\/pre>/gi,
682
+ (_, attributes, code) => setAsideCodeBlock(code, [attributes])
683
+ );
684
+ source = source.replace(
685
+ /<table\b[^>]*>([\s\S]*?)<\/table>/gi,
686
+ (table, content) => {
687
+ if (/<table\b/i.test(content) || content.includes(CODE_BLOCK_MARK)) return table;
688
+ const rows = toMarkdownTableRows(content);
689
+ if (!rows) return table;
690
+ codeBlocks.push(rows);
691
+ return `
692
+
693
+ ${CODE_BLOCK_MARK}${codeBlocks.length - 1}${CODE_BLOCK_MARK}
694
+
695
+ `;
696
+ }
697
+ );
698
+ source = separateLayoutRowItems(source);
699
+ source = source.replace(/<h([1-6])\b[^>]*>([\s\S]*?)<\/h\1>/gi, (_, level, content) => {
700
+ return `
701
+
702
+ ${"#".repeat(Number(level))} ${toInlineMarkdown(content).trim()}
703
+
704
+ `;
705
+ });
706
+ source = source.replace(/<p\b[^>]*>([\s\S]*?)<\/p>/gi, (_, content) => {
707
+ return `
708
+
709
+ ${toInlineMarkdown(content).trim()}
710
+
711
+ `;
712
+ });
713
+ source = source.replace(/<blockquote\b[^>]*>([\s\S]*?)<\/blockquote>/gi, (_, content) => {
714
+ const quote = htmlToMarkdown(content, { includeMetadata: false }).split("\n").filter((line) => line.trim().length > 0).map((line) => {
715
+ const code = line.startsWith(CODE_BLOCK_MARK) && line.endsWith(CODE_BLOCK_MARK) ? codeBlocks[Number(line.slice(1, -1))] : void 0;
716
+ if (code === void 0) return `> ${escapeHtmlText(line)}`;
717
+ codeBlocks.push(
718
+ code.split("\n").map((codeLine) => codeLine ? `> ${codeLine}` : ">").join("\n")
719
+ );
720
+ return `${CODE_BLOCK_MARK}${codeBlocks.length - 1}${CODE_BLOCK_MARK}`;
721
+ }).join("\n");
722
+ return `
723
+
724
+ ${quote}
725
+
726
+ `;
727
+ });
728
+ source = source.replace(
729
+ /<ol\b([^>]*)>([\s\S]*?)<\/ol>/gi,
730
+ (list, attributes, content) => {
731
+ if (/<[ou]l\b/i.test(content)) return list;
732
+ const start = Number.parseInt(_nullishCoalesce(readHtmlAttribute(attributes, "start"), () => ( "1")), 10);
733
+ let number = Number.isFinite(start) ? start : 1;
734
+ const items = content.replace(/<li\b[^>]*>([\s\S]*?)<\/li>/gi, (_, item) => {
735
+ return `
736
+ ${number++}. ${toInlineMarkdown(item).trim()}`;
737
+ });
738
+ return `
739
+ ${items}
740
+ `;
741
+ }
742
+ );
743
+ source = source.replace(/<li\b[^>]*>([\s\S]*?)<\/li>/gi, (_, content) => {
744
+ return `
745
+ - ${toInlineMarkdown(content).trim()}`;
746
+ });
747
+ source = source.replace(BLOCK_TAGS, "\n").replace(BOX_TAGS, " ").replace(/<br\s*\/?>/gi, "\n").replace(/<hr\s*\/?>/gi, "\n\n---\n\n");
748
+ 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) => _nullishCoalesce(codeBlocks[Number(index)], () => ( match)));
749
+ if (options.includeMetadata !== false) {
750
+ const metadata = [];
751
+ if (title && !markdown.startsWith("# ")) {
752
+ metadata.push(`# ${title}`);
753
+ }
754
+ if (options.sourcePath) {
755
+ metadata.push(`Source: ${options.sourcePath}`);
756
+ }
757
+ if (options.actionsPath) {
758
+ metadata.push(`Actions: ${options.actionsPath}`);
759
+ }
760
+ if (metadata.length) {
761
+ markdown = `${metadata.join("\n\n")}${markdown ? `
762
+
763
+ ${markdown}` : ""}`;
764
+ }
765
+ }
766
+ return `${markdown}
767
+ `;
768
+ }
769
+ function normalizeMarkdownRouteInput(input) {
770
+ if (typeof input === "string") {
771
+ return {
772
+ route: normalizeMarkdownRoute(input)
773
+ };
774
+ }
775
+ return {
776
+ ...input,
777
+ route: normalizeMarkdownRoute(input.route)
778
+ };
779
+ }
780
+ function normalizeMarkdownRoute(route) {
781
+ const withoutMarkdownExtension = route.toLowerCase().endsWith(".md") ? route.slice(0, -3) : route;
782
+ const withSlash = withoutMarkdownExtension.startsWith("/") ? withoutMarkdownExtension : `/${withoutMarkdownExtension}`;
783
+ const normalized = withSlash.replace(/\/+/g, "/").replace(/\/$/g, "");
784
+ return normalized === "" || normalized === "/index" ? "/" : normalized;
785
+ }
786
+ function farmAcceptQuality(accept, mediaType, options = {}) {
787
+ if (!accept) return 0;
788
+ const target = mediaType.toLowerCase();
789
+ const [targetType] = target.split("/");
790
+ let best = 0;
791
+ for (const entry of accept.split(",")) {
792
+ const [candidate, ...parameters] = entry.trim().toLowerCase().split(";").map((part) => part.trim());
793
+ if (!candidate) continue;
794
+ const matches = candidate === target || options.wildcards === true && (candidate === "*/*" || candidate === `${targetType}/*`);
795
+ if (!matches) continue;
796
+ const quality = parameters.find((parameter) => parameter.startsWith("q="));
797
+ const value = quality === void 0 ? 1 : Number(quality.slice(2));
798
+ if (!Number.isFinite(value) || value <= 0) continue;
799
+ if (value > best) best = value;
800
+ }
801
+ return best;
802
+ }
803
+ function requestAcceptsMarkdown(accept) {
804
+ if (!accept) {
805
+ return false;
806
+ }
807
+ return accept.split(",").some((entry) => {
808
+ const [mediaType, ...parameters] = entry.trim().toLowerCase().split(";").map((part) => part.trim());
809
+ if (mediaType !== "text/markdown") {
810
+ return false;
811
+ }
812
+ const quality = parameters.find((parameter) => parameter.startsWith("q="));
813
+ return quality === void 0 || Number(quality.slice(2)) > 0;
814
+ });
815
+ }
816
+ function getMarkdownAlternatePath(pathname) {
817
+ return pathname === "/" ? "/index.md" : `${pathname}.md`;
818
+ }
819
+ function getFarmMarkdownMirrorPath(pathname) {
820
+ return getMarkdownAlternatePath(pathname);
821
+ }
822
+ function getFarmMarkdownAlternatePath(config, pathname) {
823
+ const target = resolveMarkdownMirrorTarget(config, pathname, { accept: "text/markdown" });
824
+ return target ? getMarkdownAlternatePath(target.pathname) : null;
825
+ }
826
+ function isFarmMarkdownMirrorExposed(config, pathname) {
827
+ if (!_optionalChain([config, 'optionalAccess', _34 => _34.enabled])) return false;
828
+ return config.expose === true || findExposedMarkdownRoute(config, pathname) !== null;
829
+ }
830
+ function matchesFarmMarkdownRoutePattern(pattern, pathname) {
831
+ return routeMatches(pattern, pathname);
832
+ }
833
+ function appendHeaderToken(headers, name, token) {
834
+ const current = headers.get(name);
835
+ if (!current) {
836
+ headers.set(name, token);
837
+ return;
838
+ }
839
+ const tokens = current.split(",").map((value) => value.trim().toLowerCase());
840
+ if (!tokens.includes(token.toLowerCase())) {
841
+ headers.set(name, `${current}, ${token}`);
842
+ }
843
+ }
844
+ function findExposedMarkdownRoute(config, pathname) {
845
+ if (config.expose === true) {
846
+ return null;
847
+ }
848
+ return _nullishCoalesce(config.expose.find((route) => routeMatches(route.route, pathname)), () => ( null));
849
+ }
850
+ function routeMatches(pattern, pathname) {
851
+ if (pattern === pathname) {
852
+ return true;
853
+ }
854
+ if (!pattern.includes("[")) return false;
855
+ let source = "";
856
+ pattern.split("/").forEach((segment, index) => {
857
+ if (/^\[\[\.\.\.[^\]]+\]\]$/.test(segment)) {
858
+ source += "(?:/.*)?";
859
+ return;
860
+ }
861
+ const prefix = index === 0 ? "" : "/";
862
+ if (/^\[\.\.\.[^\]]+\]$/.test(segment)) {
863
+ source += `${prefix}.*`;
864
+ } else if (/^\[[^\]]+\]$/.test(segment)) {
865
+ source += `${prefix}[^/]+`;
866
+ } else {
867
+ source += prefix + segment.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
868
+ }
869
+ });
870
+ return new RegExp(`^${source}$`).test(pathname);
871
+ }
872
+ function isHtmlResponse(response) {
873
+ const contentType = _nullishCoalesce(response.headers.get("content-type"), () => ( ""));
874
+ return contentType.includes("text/html");
875
+ }
876
+ function isPrivateCacheControl(value) {
877
+ return value.split(",").some((directive) => {
878
+ const name = directive.split("=", 1)[0].trim().toLowerCase();
879
+ return name === "private" || name === "no-store";
880
+ });
881
+ }
882
+ function createMarkdownCacheHeader(cache) {
883
+ if (cache === false || cache <= 0) {
884
+ return "no-store";
885
+ }
886
+ return `public, max-age=${cache}, s-maxage=${cache}`;
887
+ }
888
+ function extractHtmlTitle(html) {
889
+ const match = html.match(/<title\b[^>]*>([\s\S]*?)<\/title>/i);
890
+ return match ? decodeHtml(stripTags(match[1])).trim() : void 0;
891
+ }
892
+ function readHtmlContentRegion(html) {
893
+ return extractHtmlBody(_readFarmRenderedHtml(html));
894
+ }
895
+ function _readFarmRenderedHtml(html) {
896
+ const streamed = readStreamedBoundaryInstructions(html);
897
+ return removeHiddenElements(
898
+ resolveStreamedBoundaries(
899
+ html.replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi, "").replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi, "").replace(/<noscript\b[^>]*>[\s\S]*?<\/noscript>/gi, ""),
900
+ streamed
901
+ ).replace(/<!--[\s\S]*?-->/g, "")
902
+ );
903
+ }
904
+ function extractHtmlBody(html) {
905
+ const rootMatch = html.match(
906
+ /<div\b[^>]*id=["']root["'][^>]*>([\s\S]*?)<\/div>\s*(?:<script|<\/body>|$)/i
907
+ );
908
+ const bodyMatch = html.match(/<body\b[^>]*>([\s\S]*?)<\/body>/i);
909
+ const body = rootMatch ? rootMatch[1] : bodyMatch ? bodyMatch[1] : html;
910
+ const main = extractFirstElementContent(body, ["main"]);
911
+ if (main !== void 0) return main;
912
+ const articles = _nullishCoalesce(_optionalChain([body, 'access', _35 => _35.match, 'call', _36 => _36(/<article\b/gi), 'optionalAccess', _37 => _37.length]), () => ( 0));
913
+ return articles === 1 ? _nullishCoalesce(extractFirstElementContent(body, ["article"]), () => ( body)) : body;
914
+ }
915
+ function extractFirstElementContent(html, tagNames) {
916
+ for (const tagName of tagNames) {
917
+ const match = html.match(new RegExp(`<${tagName}\\b[^>]*>([\\s\\S]*?)<\\/${tagName}>`, "i"));
918
+ if (match) {
919
+ return match[1];
920
+ }
921
+ }
922
+ return void 0;
923
+ }
924
+ function readHtmlMetaContent(html, name) {
925
+ for (const match of html.matchAll(/<meta\b([^>]*)>/gi)) {
926
+ if (_optionalChain([readHtmlAttribute, 'call', _38 => _38(match[1], "name"), 'optionalAccess', _39 => _39.toLowerCase, 'call', _40 => _40()]) === name) {
927
+ return readHtmlAttribute(match[1], "content");
928
+ }
929
+ }
930
+ return void 0;
931
+ }
932
+ function readHtmlCanonicalHref(html) {
933
+ for (const match of html.matchAll(/<link\b([^>]*)>/gi)) {
934
+ const rel = _optionalChain([readHtmlAttribute, 'call', _41 => _41(match[1], "rel"), 'optionalAccess', _42 => _42.toLowerCase, 'call', _43 => _43(), 'access', _44 => _44.split, 'call', _45 => _45(/\s+/)]);
935
+ if (_optionalChain([rel, 'optionalAccess', _46 => _46.includes, 'call', _47 => _47("canonical")])) return readHtmlAttribute(match[1], "href");
936
+ }
937
+ return void 0;
938
+ }
939
+ var FORM_ENCTYPES = /* @__PURE__ */ new Set([
940
+ "application/x-www-form-urlencoded",
941
+ "multipart/form-data",
942
+ "text/plain"
943
+ ]);
944
+ function extractFarmPageActions(html, pageUrl) {
945
+ if (!/<form\b/i.test(html)) return [];
946
+ return extractPageActionsFromRegion(readHtmlContentRegion(html), pageUrl);
947
+ }
948
+ function extractPageActionsFromRegion(region, pageUrl) {
949
+ const labelsFor = /* @__PURE__ */ new Map();
950
+ for (const match of region.matchAll(/<label\b([^>]*)>([\s\S]*?)<\/label>/gi)) {
951
+ const target = readDecodedAttribute(match[1], "for");
952
+ if (target && !labelsFor.has(target)) labelsFor.set(target, readLabelText(match[2]));
953
+ }
954
+ const actions = [];
955
+ for (const form of region.matchAll(/<form\b([^>]*)>([\s\S]*?)<\/form>/gi)) {
956
+ const action = readPageForm(form[1], form[2], pageUrl, labelsFor);
957
+ if (action) actions.push(action);
958
+ }
959
+ return actions;
960
+ }
961
+ function readPageForm(attributes, content, pageUrl, labelsFor) {
962
+ const method = _optionalChain([readDecodedAttribute, 'call', _48 => _48(attributes, "method"), 'optionalAccess', _49 => _49.trim, 'call', _50 => _50(), 'access', _51 => _51.toLowerCase, 'call', _52 => _52()]);
963
+ if (method === "dialog") return void 0;
964
+ const target = resolveFormTarget(readDecodedAttribute(attributes, "action"), pageUrl);
965
+ const form = {
966
+ type: "form",
967
+ method: method === "post" ? "POST" : "GET",
968
+ fields: [],
969
+ submit: []
970
+ };
971
+ const name = _nullishCoalesce(_nullishCoalesce(readDecodedAttribute(attributes, "aria-label"), () => ( readDecodedAttribute(attributes, "name"))), () => ( readDecodedAttribute(attributes, "id")));
972
+ if (_optionalChain([name, 'optionalAccess', _53 => _53.trim, 'call', _54 => _54()])) form.name = name.trim();
973
+ if (target) form.action = target;
974
+ else form.requiresJavaScript = true;
975
+ if (form.method === "POST") {
976
+ const enctype = _optionalChain([readDecodedAttribute, 'call', _55 => _55(attributes, "enctype"), 'optionalAccess', _56 => _56.trim, 'call', _57 => _57(), 'access', _58 => _58.toLowerCase, 'call', _59 => _59()]);
977
+ form.enctype = enctype && FORM_ENCTYPES.has(enctype) ? enctype : "application/x-www-form-urlencoded";
978
+ }
979
+ const wrappingLabels = [...content.matchAll(/<label\b[^>]*>([\s\S]*?)<\/label>/gi)].map(
980
+ (match) => ({
981
+ start: match.index,
982
+ end: match.index + match[0].length,
983
+ text: readLabelText(match[1])
984
+ })
985
+ );
986
+ const labelOf = (controlAttributes, index) => {
987
+ const aria = _optionalChain([readDecodedAttribute, 'call', _60 => _60(controlAttributes, "aria-label"), 'optionalAccess', _61 => _61.trim, 'call', _62 => _62()]);
988
+ if (aria) return aria;
989
+ const id = readDecodedAttribute(controlAttributes, "id");
990
+ const forLabel = id ? labelsFor.get(id) : void 0;
991
+ if (forLabel) return forLabel;
992
+ const wrapping = wrappingLabels.find((label) => label.start < index && index < label.end);
993
+ return _optionalChain([wrapping, 'optionalAccess', _63 => _63.text]) || void 0;
994
+ };
995
+ const groups = /* @__PURE__ */ new Map();
996
+ const controls = /<(input)\b([^>]*)>|<(select|textarea|button)\b([^>]*)>([\s\S]*?)<\/\3>/gi;
997
+ for (const match of content.matchAll(controls)) {
998
+ const tag = (_nullishCoalesce(match[1], () => ( match[3]))).toLowerCase();
999
+ const controlAttributes = _nullishCoalesce(match[2], () => ( match[4]));
1000
+ const inner = _nullishCoalesce(match[5], () => ( ""));
1001
+ if (hasHtmlAttribute(controlAttributes, "disabled")) continue;
1002
+ const label = labelOf(controlAttributes, match.index);
1003
+ const fieldName = readDecodedAttribute(controlAttributes, "name");
1004
+ const typeAttribute = _optionalChain([readDecodedAttribute, 'call', _64 => _64(controlAttributes, "type"), 'optionalAccess', _65 => _65.trim, 'call', _66 => _66(), 'access', _67 => _67.toLowerCase, 'call', _68 => _68()]);
1005
+ const type = tag === "input" ? _nullishCoalesce(typeAttribute, () => ( "text")) : tag === "button" ? _nullishCoalesce(typeAttribute, () => ( "submit")) : tag;
1006
+ if (tag === "button" && !["button", "reset"].includes(type) || tag === "input" && (type === "submit" || type === "image")) {
1007
+ const submit = {
1008
+ label: (tag === "button" ? readLabelText(inner) : "") || readDecodedAttribute(controlAttributes, "value") || readDecodedAttribute(controlAttributes, "alt") || label || "Submit"
1009
+ };
1010
+ if (fieldName) submit.name = fieldName;
1011
+ const value = readDecodedAttribute(controlAttributes, "value");
1012
+ if (fieldName && value !== void 0) submit.value = value;
1013
+ const formAction = readDecodedAttribute(controlAttributes, "formaction");
1014
+ if (formAction !== void 0) {
1015
+ const resolved = resolveFormTarget(formAction, pageUrl);
1016
+ if (resolved) submit.action = resolved;
1017
+ }
1018
+ const formMethod = _optionalChain([readDecodedAttribute, 'call', _69 => _69(controlAttributes, "formmethod"), 'optionalAccess', _70 => _70.toLowerCase, 'call', _71 => _71()]);
1019
+ if (formMethod === "get" || formMethod === "post") submit.method = formMethod.toUpperCase();
1020
+ form.submit.push(submit);
1021
+ continue;
1022
+ }
1023
+ if (tag === "button" || type === "button" || type === "reset" || !fieldName) continue;
1024
+ if (type === "hidden") {
1025
+ const value = _nullishCoalesce(readDecodedAttribute(controlAttributes, "value"), () => ( ""));
1026
+ form.fields.push({ name: fieldName, type, value });
1027
+ if (fieldName.startsWith("$ACTION_ID_")) {
1028
+ _nullishCoalesce(form.serverAction, () => ( (form.serverAction = { id: fieldName.slice("$ACTION_ID_".length) })));
1029
+ } else if (/^\$ACTION_[^:]*:0$/.test(fieldName)) {
1030
+ try {
1031
+ const id = JSON.parse(value).id;
1032
+ if (typeof id === "string") _nullishCoalesce(form.serverAction, () => ( (form.serverAction = { id })));
1033
+ } catch (e4) {
1034
+ }
1035
+ }
1036
+ continue;
1037
+ }
1038
+ if (type === "radio" || type === "checkbox") {
1039
+ const value = _nullishCoalesce(readDecodedAttribute(controlAttributes, "value"), () => ( "on"));
1040
+ const option = { value };
1041
+ if (label) option.label = label;
1042
+ if (hasHtmlAttribute(controlAttributes, "checked")) option.selected = true;
1043
+ const group = groups.get(fieldName);
1044
+ if (group) {
1045
+ group.options.push(option);
1046
+ if (hasHtmlAttribute(controlAttributes, "required")) group.required = true;
1047
+ continue;
1048
+ }
1049
+ const field2 = { name: fieldName, type, options: [option] };
1050
+ if (hasHtmlAttribute(controlAttributes, "required")) field2.required = true;
1051
+ groups.set(fieldName, field2);
1052
+ form.fields.push(field2);
1053
+ continue;
1054
+ }
1055
+ const field = { name: fieldName, type };
1056
+ if (label) field.label = label;
1057
+ if (hasHtmlAttribute(controlAttributes, "required")) field.required = true;
1058
+ if (hasHtmlAttribute(controlAttributes, "multiple")) field.multiple = true;
1059
+ if (tag === "select") {
1060
+ field.options = [...inner.matchAll(/<option\b([^>]*)>([\s\S]*?)(?=<\/option>|<option\b|$)/gi)].filter((option) => !hasHtmlAttribute(option[1], "disabled")).map((option) => {
1061
+ const text = readLabelText(option[2]);
1062
+ const entry = {
1063
+ value: _nullishCoalesce(readDecodedAttribute(option[1], "value"), () => ( text))
1064
+ };
1065
+ if (text && text !== entry.value) entry.label = text;
1066
+ if (hasHtmlAttribute(option[1], "selected")) entry.selected = true;
1067
+ return entry;
1068
+ });
1069
+ } else if (tag === "textarea") {
1070
+ const value = decodeHtml(inner);
1071
+ if (value) field.value = value;
1072
+ } else {
1073
+ const value = readDecodedAttribute(controlAttributes, "value");
1074
+ if (value !== void 0 && type !== "password" && type !== "file") field.value = value;
1075
+ }
1076
+ for (const key of ["placeholder", "pattern", "min", "max", "step", "accept"]) {
1077
+ const value = readDecodedAttribute(controlAttributes, key);
1078
+ if (value !== void 0) field[key] = value;
1079
+ }
1080
+ for (const [attribute, key] of [
1081
+ ["minlength", "minLength"],
1082
+ ["maxlength", "maxLength"]
1083
+ ]) {
1084
+ const value = Number.parseInt(_nullishCoalesce(readDecodedAttribute(controlAttributes, attribute), () => ( "")), 10);
1085
+ if (Number.isFinite(value) && value >= 0) field[key] = value;
1086
+ }
1087
+ form.fields.push(field);
1088
+ }
1089
+ if (form.fields.length === 0 && form.submit.length === 0) return void 0;
1090
+ if (form.submit.length === 0) form.submit.push({ label: "Submit" });
1091
+ return form;
1092
+ }
1093
+ function resolveFormTarget(action, pageUrl) {
1094
+ let target;
1095
+ try {
1096
+ target = new URL(_optionalChain([action, 'optionalAccess', _72 => _72.trim, 'call', _73 => _73()]) || pageUrl.href, pageUrl);
1097
+ } catch (e5) {
1098
+ return void 0;
1099
+ }
1100
+ if (target.protocol !== "http:" && target.protocol !== "https:") return void 0;
1101
+ target.hash = "";
1102
+ return target.origin === pageUrl.origin ? `${target.pathname}${target.search}` : target.href;
1103
+ }
1104
+ function readLabelText(html) {
1105
+ return decodeHtml(stripTags(html.replace(/<(select|textarea|button)\b[\s\S]*?<\/\1>/gi, " "))).replace(/\s+/g, " ").trim();
1106
+ }
1107
+ function readDecodedAttribute(attributes, name) {
1108
+ const value = readHtmlAttribute(attributes, name);
1109
+ return value === void 0 ? void 0 : decodeHtml(value);
1110
+ }
1111
+ function hasHtmlAttribute(attributes, name) {
1112
+ return new RegExp(`(?:^|\\s)${name}(?=\\s|=|/|$)`, "i").test(attributes);
1113
+ }
1114
+ function readHtmlAttribute(attributes, name) {
1115
+ const match = new RegExp(
1116
+ `(?:^|\\s)${name}\\s*=\\s*(?:"([^"]*)"|'([^']*)'|([^\\s"'=<>\`]+))`,
1117
+ "i"
1118
+ ).exec(attributes);
1119
+ return match ? _nullishCoalesce(_nullishCoalesce(match[1], () => ( match[2])), () => ( match[3])) : void 0;
1120
+ }
1121
+ function readCodeLanguage(attributesList) {
1122
+ for (const attributes of attributesList) {
1123
+ const language = _nullishCoalesce(_nullishCoalesce(readHtmlAttribute(attributes, "data-language"), () => ( readHtmlAttribute(attributes, "data-lang"))), () => ( _optionalChain([readHtmlAttribute, 'call', _74 => _74(attributes, "class"), 'optionalAccess', _75 => _75.match, 'call', _76 => _76(/(?:^|\s)lang(?:uage)?-(\S+)/), 'optionalAccess', _77 => _77[1]])));
1124
+ if (language && /^[\w#+.-]+$/.test(language)) return language;
1125
+ }
1126
+ return void 0;
1127
+ }
1128
+ function toMarkdownTableRows(content) {
1129
+ const rows = [];
1130
+ for (const [, row] of content.matchAll(/<tr\b[^>]*>([\s\S]*?)<\/tr>/gi)) {
1131
+ const cells = [];
1132
+ for (const [, , attributes, cell] of row.matchAll(/<(td|th)\b([^>]*)>([\s\S]*?)<\/\1>/gi)) {
1133
+ cells.push(decodeHtml(toInlineMarkdown(cell)).trim().replace(/\|/g, "\\|"));
1134
+ const span = Number.parseInt(_nullishCoalesce(readHtmlAttribute(attributes, "colspan"), () => ( "1")), 10);
1135
+ for (let extra = 1; extra < Math.min(span, 1e3); extra++) cells.push("");
1136
+ }
1137
+ if (cells.length) rows.push(cells);
1138
+ }
1139
+ if (!rows.length) return void 0;
1140
+ const columns = rows.reduce((widest, row) => Math.max(widest, row.length), 0);
1141
+ const line = (cells) => `| ${Array.from({ length: columns }, (_, index) => _nullishCoalesce(cells[index], () => ( ""))).join(" | ")} |`.replace(
1142
+ / {2,}/g,
1143
+ " "
1144
+ );
1145
+ return [line(rows[0]), line(Array(columns).fill("---")), ...rows.slice(1).map(line)].join("\n");
1146
+ }
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 = _nullishCoalesce(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
+ var VOID_TAGS = /* @__PURE__ */ new Set([
1171
+ "area",
1172
+ "base",
1173
+ "br",
1174
+ "col",
1175
+ "embed",
1176
+ "hr",
1177
+ "img",
1178
+ "input",
1179
+ "link",
1180
+ "meta",
1181
+ "source",
1182
+ "track",
1183
+ "wbr"
1184
+ ]);
1185
+ function removeHiddenElements(html) {
1186
+ if (!/hidden/i.test(html)) return html;
1187
+ const openingTag = /<([a-zA-Z][\w:-]*)((?:[^>"']|"[^"]*"|'[^']*')*)>/g;
1188
+ let closingTags;
1189
+ let result = "";
1190
+ let cursor = 0;
1191
+ let match;
1192
+ while (match = openingTag.exec(html)) {
1193
+ const [tag, name, attributes] = match;
1194
+ if (!isHiddenElement(attributes)) continue;
1195
+ const start = match.index;
1196
+ let end = start + tag.length;
1197
+ if (!VOID_TAGS.has(name.toLowerCase()) && !isSelfClosingTag(tag)) {
1198
+ _nullishCoalesce(closingTags, () => ( (closingTags = matchClosingTags(html))));
1199
+ const close = closingTags.get(start);
1200
+ if (close === void 0) continue;
1201
+ end = close;
1202
+ }
1203
+ result += html.slice(cursor, start);
1204
+ cursor = end;
1205
+ openingTag.lastIndex = end;
1206
+ }
1207
+ return result + html.slice(cursor);
1208
+ }
1209
+ function isHiddenElement(attributes) {
1210
+ const attribute = /([^\s"'=<>/]+)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s"'=<>`]+)))?/g;
1211
+ let match;
1212
+ while (match = attribute.exec(attributes)) {
1213
+ const name = match[1].toLowerCase();
1214
+ const value = (_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(match[2], () => ( match[3])), () => ( match[4])), () => ( ""))).trim().toLowerCase();
1215
+ if (name === "aria-hidden" && value === "true") return true;
1216
+ if (name === "hidden" && value !== "until-found") return true;
1217
+ }
1218
+ return false;
1219
+ }
1220
+ function isSelfClosingTag(tag) {
1221
+ return /(?:^<[a-zA-Z][\w:-]*|[\s"'])\/>$/.test(tag);
1222
+ }
1223
+ function matchClosingTags(html) {
1224
+ const tags = /<(\/?)([a-zA-Z][\w:-]*)(?:[^>"']|"[^"]*"|'[^']*')*>/g;
1225
+ const open = /* @__PURE__ */ new Map();
1226
+ const closes = /* @__PURE__ */ new Map();
1227
+ let match;
1228
+ while (match = tags.exec(html)) {
1229
+ const name = match[2].toLowerCase();
1230
+ if (match[1]) {
1231
+ const start = _optionalChain([open, 'access', _78 => _78.get, 'call', _79 => _79(name), 'optionalAccess', _80 => _80.pop, 'call', _81 => _81()]);
1232
+ if (start !== void 0) closes.set(start, match.index + match[0].length);
1233
+ } else if (!VOID_TAGS.has(name) && !isSelfClosingTag(match[0])) {
1234
+ let starts = open.get(name);
1235
+ if (!starts) open.set(name, starts = []);
1236
+ starts.push(match.index);
1237
+ }
1238
+ }
1239
+ return closes;
1240
+ }
1241
+ function readStreamedBoundaryInstructions(html) {
1242
+ const boundaries = /* @__PURE__ */ new Map();
1243
+ const placeholders = /* @__PURE__ */ new Map();
1244
+ for (const [, script] of html.matchAll(/<script\b[^>]*>([\s\S]*?)<\/script>/gi)) {
1245
+ for (const [, kind, first, second] of script.matchAll(
1246
+ /\$R([CRS])\("([^"\\]+)","([^"\\]+)"/g
1247
+ )) {
1248
+ if (kind === "S") placeholders.set(second, first);
1249
+ else boundaries.set(first, second);
1250
+ }
1251
+ }
1252
+ return { boundaries, placeholders };
1253
+ }
1254
+ function resolveStreamedBoundaries(html, { boundaries, placeholders }) {
1255
+ if (boundaries.size === 0 && placeholders.size === 0) return html;
1256
+ const wanted = /* @__PURE__ */ new Set([...boundaries.values(), ...placeholders.values()]);
1257
+ const segments = /* @__PURE__ */ new Map();
1258
+ const closingTags = matchClosingTags(html);
1259
+ const openingTag = /<([a-zA-Z][\w:-]*)((?:[^>"']|"[^"]*"|'[^']*')*)>/g;
1260
+ let page = "";
1261
+ let cursor = 0;
1262
+ let match;
1263
+ while (match = openingTag.exec(html)) {
1264
+ const id = _optionalChain([/\sid="([^"]*)"/, 'access', _82 => _82.exec, 'call', _83 => _83(match[2]), 'optionalAccess', _84 => _84[1]]);
1265
+ if (!id || !wanted.has(id) || segments.has(id)) continue;
1266
+ const close = closingTags.get(match.index);
1267
+ if (close === void 0) continue;
1268
+ const contentStart = match.index + match[0].length;
1269
+ segments.set(id, html.slice(contentStart, html.lastIndexOf("<", close - 1)));
1270
+ page += html.slice(cursor, match.index);
1271
+ cursor = close;
1272
+ openingTag.lastIndex = close;
1273
+ }
1274
+ page += html.slice(cursor);
1275
+ const used = /* @__PURE__ */ new Set();
1276
+ const expand = (fragment) => {
1277
+ const template = /<template\b[^>]*\sid="([^"]+)"[^>]*>\s*<\/template>/gi;
1278
+ let output = "";
1279
+ let position = 0;
1280
+ let found;
1281
+ while (found = template.exec(fragment)) {
1282
+ const id = found[1];
1283
+ const segmentId = _nullishCoalesce(boundaries.get(id), () => ( placeholders.get(id)));
1284
+ const segment = segmentId === void 0 ? void 0 : segments.get(segmentId);
1285
+ if (segment === void 0 || used.has(segmentId)) continue;
1286
+ used.add(segmentId);
1287
+ output += fragment.slice(position, found.index) + expand(segment);
1288
+ position = found.index + found[0].length;
1289
+ if (boundaries.has(id)) {
1290
+ const marker = /<!--(\/?)(?:\$[?!~]?|&)-->/g;
1291
+ marker.lastIndex = position;
1292
+ let depth = 0;
1293
+ let end;
1294
+ while (end = marker.exec(fragment)) {
1295
+ if (!end[1]) depth += 1;
1296
+ else if (depth === 0) break;
1297
+ else depth -= 1;
1298
+ }
1299
+ if (end) position = end.index;
1300
+ }
1301
+ template.lastIndex = position;
1302
+ }
1303
+ return output + fragment.slice(position);
1304
+ };
1305
+ return expand(page);
1306
+ }
1307
+ function stripTags(input) {
1308
+ return input.replace(/<[^>]+>/g, "");
1309
+ }
1310
+ function escapeHtmlText(input) {
1311
+ return input.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
1312
+ }
1313
+ function decodeHtml(input) {
1314
+ return input.replace(/&(?:nbsp|amp|lt|gt|quot|#39|#(?:x|X)[0-9a-fA-F]+|#[0-9]+);/g, (entity) => {
1315
+ switch (entity) {
1316
+ case "&nbsp;":
1317
+ return " ";
1318
+ case "&amp;":
1319
+ return "&";
1320
+ case "&lt;":
1321
+ return "<";
1322
+ case "&gt;":
1323
+ return ">";
1324
+ case "&quot;":
1325
+ return '"';
1326
+ case "&#39;":
1327
+ return "'";
1328
+ }
1329
+ const hexadecimal = entity[2] === "x" || entity[2] === "X";
1330
+ const codePoint = Number.parseInt(entity.slice(hexadecimal ? 3 : 2, -1), hexadecimal ? 16 : 10);
1331
+ return codePoint === 0 || codePoint > 1114111 || codePoint >= 55296 && codePoint <= 57343 ? "\uFFFD" : String.fromCodePoint(codePoint);
1332
+ });
1333
+ }
1334
+
1335
+
1336
+
1337
+
1338
+
1339
+
1340
+
1341
+
1342
+
1343
+
1344
+
1345
+
1346
+
1347
+
1348
+
1349
+
1350
+
1351
+
1352
+
1353
+
1354
+
1355
+
1356
+
1357
+
1358
+
1359
+ exports.classifyFarmAgent = classifyFarmAgent; exports.FARM_INTERNAL_READ_HEADER = FARM_INTERNAL_READ_HEADER; exports.emitFarmAgentRead = emitFarmAgentRead; exports.createFarmMarkdownViewResponse = createFarmMarkdownViewResponse; exports.FARM_MARKDOWN_CONTENT_TYPE = FARM_MARKDOWN_CONTENT_TYPE; exports.FARM_MARKDOWN_PAGE_CHECK_HEADER = FARM_MARKDOWN_PAGE_CHECK_HEADER; exports._getFarmMarkdownPageCheckToken = _getFarmMarkdownPageCheckToken; exports._isFarmMarkdownPageCheck = _isFarmMarkdownPageCheck; exports.farmRequestWantsMarkdown = farmRequestWantsMarkdown; exports.createFarmMarkdownErrorBody = createFarmMarkdownErrorBody; exports.resolveMarkdownConfig = resolveMarkdownConfig; exports.resolveMarkdownMirrorTarget = resolveMarkdownMirrorTarget; exports.createMarkdownMirrorResponse = createMarkdownMirrorResponse; exports.applyMarkdownNegotiationHeaders = applyMarkdownNegotiationHeaders; exports.htmlToMarkdown = htmlToMarkdown; exports.farmAcceptQuality = farmAcceptQuality; exports.requestAcceptsMarkdown = requestAcceptsMarkdown; exports.getFarmMarkdownMirrorPath = getFarmMarkdownMirrorPath; exports.getFarmMarkdownAlternatePath = getFarmMarkdownAlternatePath; exports.isFarmMarkdownMirrorExposed = isFarmMarkdownMirrorExposed; exports.matchesFarmMarkdownRoutePattern = matchesFarmMarkdownRoutePattern; exports._readFarmRenderedHtml = _readFarmRenderedHtml; exports.extractFarmPageActions = extractFarmPageActions;