@farm.js/core 0.1.27 → 0.1.29

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 (235) hide show
  1. package/dist/agent-runtime.d.mts +3 -2
  2. package/dist/agent-runtime.d.ts +3 -2
  3. package/dist/api/client.cjs +4 -6
  4. package/dist/api/client.d.mts +1 -0
  5. package/dist/api/client.d.ts +1 -0
  6. package/dist/api/client.mjs +3 -5
  7. package/dist/api/route-manager.cjs +9 -8
  8. package/dist/api/route-manager.d.mts +2 -1
  9. package/dist/api/route-manager.d.ts +2 -1
  10. package/dist/api/route-manager.mjs +8 -7
  11. package/dist/api/runtime.cjs +7 -6
  12. package/dist/api/runtime.d.mts +3 -2
  13. package/dist/api/runtime.d.ts +3 -2
  14. package/dist/api/runtime.mjs +6 -5
  15. package/dist/api.cjs +12 -11
  16. package/dist/api.d.mts +19 -4
  17. package/dist/api.d.ts +19 -4
  18. package/dist/api.mjs +11 -10
  19. package/dist/{app-BfzZdjgX.d.mts → app-DAuUTIZf.d.mts} +3 -3
  20. package/dist/app-markdown.cjs +6 -5
  21. package/dist/app-markdown.d.mts +4 -3
  22. package/dist/app-markdown.d.ts +4 -3
  23. package/dist/app-markdown.mjs +5 -4
  24. package/dist/{app-CXK7Prrt.d.ts → app-sUJ3jnTZ.d.ts} +3 -3
  25. package/dist/cache-invalidation-BD0z_lfu.d.mts +4 -0
  26. package/dist/cache-invalidation-BD0z_lfu.d.ts +4 -0
  27. package/dist/cache.cjs +6 -4
  28. package/dist/cache.d.mts +11 -6
  29. package/dist/cache.d.ts +11 -6
  30. package/dist/cache.mjs +7 -5
  31. package/dist/{chunk-N6UROPT7.mjs → chunk-2FQHH5SC.mjs} +12 -13
  32. package/dist/{chunk-UUYF3CHN.mjs → chunk-2N5PX3LS.mjs} +2 -2
  33. package/dist/{chunk-H6G5INWM.cjs → chunk-2SDO73HK.cjs} +14 -156
  34. package/dist/{chunk-4FHDV7VM.mjs → chunk-2UABTL3Y.mjs} +2 -2
  35. package/dist/{chunk-LAHZ7LZA.cjs → chunk-3FCFQP5V.cjs} +32 -20
  36. package/dist/{chunk-3TQWUUNP.cjs → chunk-3LUF2PE2.cjs} +10 -5
  37. package/dist/{chunk-SYGGPS4A.mjs → chunk-4IEPYMHF.mjs} +3 -3
  38. package/dist/{chunk-WD5PNSOB.mjs → chunk-4V7GIE2U.mjs} +6 -4
  39. package/dist/{chunk-UWTQTZFN.mjs → chunk-5KDPVSS3.mjs} +271 -155
  40. package/dist/{chunk-I7PUUDGY.cjs → chunk-63H6BKXG.cjs} +2 -2
  41. package/dist/{chunk-ZSO5GWGD.cjs → chunk-6CNX6Q3K.cjs} +168 -51
  42. package/dist/{chunk-3PTVHMLD.mjs → chunk-6G3ZZ2IE.mjs} +1 -1
  43. package/dist/{chunk-QBPXNZGV.cjs → chunk-6MVFL3R5.cjs} +25 -6
  44. package/dist/{chunk-FG5H2VCJ.mjs → chunk-6ZCMSZ5U.mjs} +2 -2
  45. package/dist/{chunk-YZBV7733.cjs → chunk-74T3CEA7.cjs} +397 -281
  46. package/dist/{chunk-ZMN3H73H.cjs → chunk-75DYEVXI.cjs} +13 -11
  47. package/dist/{chunk-WIVTGKLY.mjs → chunk-7CXKSRKL.mjs} +18 -11
  48. package/dist/{chunk-POXI72VV.mjs → chunk-ATXI6LGT.mjs} +148 -31
  49. package/dist/{chunk-NL3ZSMZB.cjs → chunk-BJPBQNIE.cjs} +12 -12
  50. package/dist/{chunk-Q4BHBO6V.mjs → chunk-BXFWA23T.mjs} +2 -2
  51. package/dist/{chunk-MBFURXAC.mjs → chunk-BZ3CHOFX.mjs} +1 -1
  52. package/dist/{chunk-TDWFCC2T.cjs → chunk-BZAGKCKB.cjs} +2 -2
  53. package/dist/chunk-CNOQY6Z7.mjs +156 -0
  54. package/dist/{chunk-DW34V5SM.cjs → chunk-CTV2TTNP.cjs} +4 -4
  55. package/dist/{chunk-HG237IEY.mjs → chunk-D234YWNA.mjs} +1 -1
  56. package/dist/{chunk-YXM74XOW.cjs → chunk-D4JE5NNV.cjs} +12 -12
  57. package/dist/{chunk-O2LV5XDG.mjs → chunk-DGXN3L4D.mjs} +20 -8
  58. package/dist/{chunk-4UNKCNSL.mjs → chunk-E76XC6ZG.mjs} +2 -2
  59. package/dist/{chunk-QQQNJS2E.mjs → chunk-E7UN576T.mjs} +1 -1
  60. package/dist/{chunk-G3HRIVEY.cjs → chunk-ES4B2IXW.cjs} +2 -2
  61. package/dist/{chunk-JQGDQO2I.cjs → chunk-EXLKRR4U.cjs} +10 -10
  62. package/dist/chunk-FJ3M4CUX.cjs +46 -0
  63. package/dist/chunk-FXEF4PPL.mjs +47 -0
  64. package/dist/{chunk-WD4YXVLV.mjs → chunk-GZYH4OER.mjs} +1 -1
  65. package/dist/{chunk-DX4VKYAJ.cjs → chunk-I26CZYPV.cjs} +6 -4
  66. package/dist/{chunk-F6SJAKFJ.mjs → chunk-IV6CQY7O.mjs} +12 -154
  67. package/dist/{chunk-6D242YGO.mjs → chunk-JATSG2ZO.mjs} +1 -1
  68. package/dist/{chunk-KAERLFD3.cjs → chunk-JFHKNFEO.cjs} +30 -23
  69. package/dist/{chunk-U74A3P2P.cjs → chunk-JLRDISQL.cjs} +7 -7
  70. package/dist/{chunk-BYODCJD6.cjs → chunk-K7CELQLK.cjs} +12 -13
  71. package/dist/{chunk-Y4YWHNKU.cjs → chunk-KH7BN726.cjs} +9 -9
  72. package/dist/{chunk-3IL5UC5I.cjs → chunk-KZLND3D2.cjs} +2 -2
  73. package/dist/{chunk-TKDY6AJP.mjs → chunk-MKMBQSNQ.mjs} +1 -1
  74. package/dist/{chunk-OCE65DDM.mjs → chunk-MNUGPHLN.mjs} +1 -1
  75. package/dist/{chunk-WJKVTJJR.cjs → chunk-NPPL5YDT.cjs} +2 -2
  76. package/dist/{chunk-HF5SIACK.cjs → chunk-NXG66MR7.cjs} +3 -3
  77. package/dist/chunk-NYJMY3JA.cjs +156 -0
  78. package/dist/{chunk-VVJCWBIE.mjs → chunk-O3DTUAX2.mjs} +2 -2
  79. package/dist/{chunk-R6AIILII.cjs → chunk-OZVEHHMA.cjs} +15 -14
  80. package/dist/{chunk-FPW4W3VW.mjs → chunk-PQD2AI3B.mjs} +1 -1
  81. package/dist/{chunk-C7OUJ6JI.cjs → chunk-PZNCMPJF.cjs} +3 -3
  82. package/dist/{chunk-QI7WQSMI.cjs → chunk-Q5JFU33Q.cjs} +4 -4
  83. package/dist/{chunk-52SH7TKB.mjs → chunk-QG5HNS7P.mjs} +2 -2
  84. package/dist/{chunk-CEYUWDWA.mjs → chunk-QZCT2CQ4.mjs} +10 -5
  85. package/dist/{chunk-FZC7EEPM.mjs → chunk-RSOJ7DRT.mjs} +26 -7
  86. package/dist/{chunk-QMV4QELL.mjs → chunk-S5GDHOE4.mjs} +4 -2
  87. package/dist/{chunk-CRQPYWLK.cjs → chunk-SORB3MAR.cjs} +14 -14
  88. package/dist/{chunk-I4J452B7.cjs → chunk-VHJGDMCG.cjs} +3 -3
  89. package/dist/{chunk-B6ZCT36X.cjs → chunk-WNLBF77X.cjs} +4 -4
  90. package/dist/{chunk-FOT7LZEO.cjs → chunk-WPPX4G7Q.cjs} +1 -1
  91. package/dist/{chunk-UNSKL6BI.cjs → chunk-X4ZV4QC5.cjs} +266 -228
  92. package/dist/{chunk-6EG7U4NF.mjs → chunk-X7WVQMIB.mjs} +1 -1
  93. package/dist/chunk-XD32KALF.cjs +47 -0
  94. package/dist/{chunk-RDV44SED.mjs → chunk-XJJVLDM6.mjs} +15 -14
  95. package/dist/{chunk-DQMTHWPI.cjs → chunk-XLTV4VOG.cjs} +21 -16
  96. package/dist/{chunk-5SPPCN5J.mjs → chunk-XNPDONUH.mjs} +1 -1
  97. package/dist/{chunk-UOXGA6TO.mjs → chunk-YDQZGSDS.mjs} +1 -1
  98. package/dist/{chunk-JT25KHDI.mjs → chunk-YMUE7L3D.mjs} +18 -13
  99. package/dist/chunk-Z3HATSKO.mjs +46 -0
  100. package/dist/{chunk-C3VRMB6H.cjs → chunk-ZCU4NZ3M.cjs} +6 -6
  101. package/dist/{chunk-NPFGGBM5.cjs → chunk-ZDILFMWN.cjs} +13 -13
  102. package/dist/{chunk-OGHTEYXS.mjs → chunk-ZYVFAOBT.mjs} +72 -34
  103. package/dist/{client-plugins-1GS4zubE.d.mts → client-plugins-BX2ptm4H.d.mts} +42 -34
  104. package/dist/{client-plugins-B1Za6F5x.d.ts → client-plugins-BmxM5KW_.d.ts} +42 -34
  105. package/dist/client-plugins.d.mts +3 -2
  106. package/dist/client-plugins.d.ts +3 -2
  107. package/dist/client.cjs +11 -12
  108. package/dist/client.d.mts +6 -5
  109. package/dist/client.d.ts +6 -5
  110. package/dist/client.mjs +10 -11
  111. package/dist/config.d.mts +3 -2
  112. package/dist/config.d.ts +3 -2
  113. package/dist/{devtools-CQJ3H6MX.cjs → devtools-GGVPZHJX.cjs} +96 -21
  114. package/dist/{devtools-6RN6KHTW.mjs → devtools-THVNPI2M.mjs} +80 -5
  115. package/dist/{devtools-client-4WAPJY5L.cjs → devtools-client-CXQ6PXI6.cjs} +1 -1
  116. package/dist/{devtools-client-LEUIHHAS.mjs → devtools-client-HJS2T34Y.mjs} +1 -1
  117. package/dist/docs.cjs +9 -8
  118. package/dist/docs.mjs +8 -7
  119. package/dist/index.cjs +61 -57
  120. package/dist/index.d.mts +26 -15
  121. package/dist/index.d.ts +26 -15
  122. package/dist/index.mjs +69 -65
  123. package/dist/integrations.d.mts +3 -2
  124. package/dist/integrations.d.ts +3 -2
  125. package/dist/internal/app-markdown-runtime.cjs +5 -4
  126. package/dist/internal/app-markdown-runtime.d.mts +4 -3
  127. package/dist/internal/app-markdown-runtime.d.ts +4 -3
  128. package/dist/internal/app-markdown-runtime.mjs +4 -3
  129. package/dist/internal/build-runtime.cjs +26 -23
  130. package/dist/internal/build-runtime.d.mts +5 -4
  131. package/dist/internal/build-runtime.d.ts +5 -4
  132. package/dist/internal/build-runtime.mjs +25 -22
  133. package/dist/internal/cli-runtime.cjs +15 -13
  134. package/dist/internal/cli-runtime.mjs +14 -12
  135. package/dist/internal/client-error-overlay.cjs +4 -4
  136. package/dist/internal/client-error-overlay.mjs +1 -1
  137. package/dist/internal/client-runtime.cjs +5 -1
  138. package/dist/internal/client-runtime.d.mts +1 -0
  139. package/dist/internal/client-runtime.d.ts +1 -0
  140. package/dist/internal/client-runtime.mjs +4 -0
  141. package/dist/internal/compression-runtime.cjs +3 -2
  142. package/dist/internal/compression-runtime.d.mts +6 -3
  143. package/dist/internal/compression-runtime.d.ts +6 -3
  144. package/dist/internal/compression-runtime.mjs +2 -1
  145. package/dist/internal/config-runtime.cjs +7 -6
  146. package/dist/internal/config-runtime.d.mts +4 -3
  147. package/dist/internal/config-runtime.d.ts +4 -3
  148. package/dist/internal/config-runtime.mjs +6 -5
  149. package/dist/internal/product-telemetry-runtime.cjs +10 -6
  150. package/dist/internal/product-telemetry-runtime.mjs +9 -5
  151. package/dist/internal/production-runtime.cjs +29 -13
  152. package/dist/internal/production-runtime.d.mts +36 -8
  153. package/dist/internal/production-runtime.d.ts +36 -8
  154. package/dist/internal/production-runtime.mjs +32 -16
  155. package/dist/markdown.cjs +4 -3
  156. package/dist/markdown.d.mts +3 -2
  157. package/dist/markdown.d.ts +3 -2
  158. package/dist/markdown.mjs +3 -2
  159. package/dist/{metadata-B9mCxKgp.d.mts → metadata-DsEaK7mQ.d.mts} +1 -1
  160. package/dist/{metadata-7LKgQEWF.d.ts → metadata-fwZ3gfG6.d.ts} +1 -1
  161. package/dist/middleware.cjs +6 -5
  162. package/dist/middleware.d.mts +4 -3
  163. package/dist/middleware.d.ts +4 -3
  164. package/dist/middleware.mjs +5 -4
  165. package/dist/navigation.cjs +5 -5
  166. package/dist/navigation.d.mts +5 -4
  167. package/dist/navigation.d.ts +5 -4
  168. package/dist/navigation.mjs +4 -4
  169. package/dist/plugin.cjs +25 -20
  170. package/dist/plugin.d.mts +3 -2
  171. package/dist/plugin.d.ts +3 -2
  172. package/dist/plugin.mjs +25 -20
  173. package/dist/{production-runtime-DramhI0c.d.mts → production-runtime-Baqgwtvc.d.mts} +1 -1
  174. package/dist/{production-runtime-B3xnY6fI.d.ts → production-runtime-DNkpFnmg.d.ts} +1 -1
  175. package/dist/query/client.cjs +6 -6
  176. package/dist/query/client.mjs +2 -2
  177. package/dist/{render-plan-CtQB-zHS.d.mts → render-plan-DhwQnmmX.d.mts} +1 -1
  178. package/dist/{render-plan-CpW32tOL.d.ts → render-plan-rkIK9wd9.d.ts} +1 -1
  179. package/dist/renderer-client.cjs +13 -14
  180. package/dist/renderer-client.d.mts +4 -3
  181. package/dist/renderer-client.d.ts +4 -3
  182. package/dist/renderer-client.mjs +6 -7
  183. package/dist/{request-BVGGeQv4.d.ts → request-BcY4RYPC.d.ts} +1 -1
  184. package/dist/{request-DlLVBKe3.d.mts → request-CFy1BltJ.d.mts} +1 -1
  185. package/dist/request.d.mts +4 -3
  186. package/dist/request.d.ts +4 -3
  187. package/dist/{route-rendering-DChYLNdh.d.mts → route-rendering-BkS0TBlB.d.mts} +1 -1
  188. package/dist/{route-rendering-BdEldajn.d.ts → route-rendering-D4XpMjam.d.ts} +1 -1
  189. package/dist/{router-D5htHn_M.d.mts → router-C4zPlC3V.d.mts} +1 -1
  190. package/dist/{router-D0Az-1Nu.d.ts → router-Cq7BcZxg.d.ts} +1 -1
  191. package/dist/routes.cjs +6 -5
  192. package/dist/routes.d.mts +3 -2
  193. package/dist/routes.d.ts +3 -2
  194. package/dist/routes.mjs +5 -4
  195. package/dist/server-fn-client.d.mts +1 -0
  196. package/dist/server-fn-client.d.ts +1 -0
  197. package/dist/server-fn.cjs +6 -5
  198. package/dist/server-fn.d.mts +1 -0
  199. package/dist/server-fn.d.ts +1 -0
  200. package/dist/server-fn.mjs +5 -4
  201. package/dist/server-plugins.cjs +3 -2
  202. package/dist/server-plugins.d.mts +3 -2
  203. package/dist/server-plugins.d.ts +3 -2
  204. package/dist/server-plugins.mjs +2 -1
  205. package/dist/server-query-client.cjs +5 -7
  206. package/dist/server-query-client.d.mts +1 -0
  207. package/dist/server-query-client.d.ts +1 -0
  208. package/dist/server-query-client.mjs +4 -6
  209. package/dist/server-query.cjs +7 -6
  210. package/dist/server-query.d.mts +1 -0
  211. package/dist/server-query.d.ts +1 -0
  212. package/dist/server-query.mjs +6 -5
  213. package/dist/server.cjs +72 -57
  214. package/dist/server.d.mts +10 -9
  215. package/dist/server.d.ts +10 -9
  216. package/dist/server.mjs +56 -41
  217. package/dist/{spa-router-DmwP_7QL.d.ts → spa-router-B1HI3X9k.d.ts} +2 -2
  218. package/dist/{spa-router-DVfSJZ5o.d.mts → spa-router-DzPZH-AO.d.mts} +2 -2
  219. package/dist/testing.cjs +14 -13
  220. package/dist/testing.d.mts +2 -1
  221. package/dist/testing.d.ts +2 -1
  222. package/dist/testing.mjs +11 -10
  223. package/dist/{utils-B_Rmr0-n.d.mts → utils-CEBktlBG.d.mts} +1 -1
  224. package/dist/{utils-Dv0OuLtF.d.ts → utils-DMD1Hzta.d.ts} +1 -1
  225. package/dist/version.cjs +2 -2
  226. package/dist/version.mjs +1 -1
  227. package/dist/vite.cjs +21 -19
  228. package/dist/vite.d.mts +3 -2
  229. package/dist/vite.d.ts +3 -2
  230. package/dist/vite.mjs +20 -18
  231. package/package.json +1 -1
  232. package/dist/{chunk-YOYF2E4U.mjs → chunk-LNZ7JZUS.mjs} +0 -0
  233. package/dist/{chunk-N4RLRSWW.cjs → chunk-SUIBNSNO.cjs} +0 -0
  234. package/dist/{chunk-TIKNUAU7.mjs → chunk-VUMAE7NC.mjs} +3 -3
  235. package/dist/{chunk-WM6HL7E7.cjs → chunk-ZHVYQL3H.cjs} +2 -2
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  isEndpointFailure,
3
3
  resolvePluginRoutes
4
- } from "./chunk-SYGGPS4A.mjs";
4
+ } from "./chunk-4IEPYMHF.mjs";
5
5
  import {
6
6
  registerAPIRouteShape
7
7
  } from "./chunk-W3B4PKAW.mjs";
@@ -0,0 +1,47 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+ var _chunkS3JO3N4Hcjs = require('./chunk-S3JO3N4H.cjs');
4
+
5
+ // src/nitro/native-mcp-source.ts
6
+ function generateNativeMCPPluginSource(mcp) {
7
+ if (_optionalChain([mcp, 'optionalAccess', _ => _.enabled]) !== true) {
8
+ return { importSource: "", registerSource: "", pluginSource: "" };
9
+ }
10
+ return {
11
+ importSource: `import { createFarmMCPPlugin as __farmCreateMCPPlugin } from "@farm.js/mcp/internal";`,
12
+ registerSource: `function __farmMCPIsPlainObject(value) {
13
+ if (!value || typeof value !== "object" || Array.isArray(value)) return false;
14
+ const prototype = Object.getPrototypeOf(value);
15
+ return prototype === Object.prototype || prototype === null;
16
+ }
17
+
18
+ function __farmMergeMCPConfig(base, override) {
19
+ const output = { ...base };
20
+ for (const [key, value] of Object.entries(override)) {
21
+ if (value === undefined) continue;
22
+ output[key] =
23
+ __farmMCPIsPlainObject(output[key]) && __farmMCPIsPlainObject(value)
24
+ ? __farmMergeMCPConfig(output[key], value)
25
+ : value;
26
+ }
27
+ return output;
28
+ }
29
+
30
+ const farmNativeMCPConfig = farmRuntimeConfigs.reduce((merged, runtimeConfig) => {
31
+ const value = runtimeConfig?.mcp;
32
+ if (value === undefined) return merged;
33
+ if (value === false) return false;
34
+ return __farmMergeMCPConfig(merged && merged !== false ? merged : {}, value);
35
+ }, undefined);
36
+ const farmNativeMCPPlugin =
37
+ farmNativeMCPConfig && farmNativeMCPConfig.enabled !== false
38
+ ? __farmCreateMCPPlugin(farmNativeMCPConfig)
39
+ : null;`,
40
+ pluginSource: `...(farmNativeMCPPlugin ? [farmNativeMCPPlugin] : []),`
41
+ };
42
+ }
43
+ _chunkS3JO3N4Hcjs.__name.call(void 0, generateNativeMCPPluginSource, "generateNativeMCPPluginSource");
44
+
45
+
46
+
47
+ exports.generateNativeMCPPluginSource = generateNativeMCPPluginSource;
@@ -1,3 +1,6 @@
1
+ import {
2
+ _withFarmResponseHeaders
3
+ } from "./chunk-Z3HATSKO.mjs";
1
4
  import {
2
5
  __name
3
6
  } from "./chunk-LPEX4YW6.mjs";
@@ -57,8 +60,12 @@ function isCompressibleMediaType(mediaType) {
57
60
  return COMPRESSIBLE_MEDIA_TYPE_SUFFIXES.some((suffix) => mediaType.endsWith(suffix));
58
61
  }
59
62
  __name(isCompressibleMediaType, "isCompressibleMediaType");
60
- function isCompressionEligible(request, response) {
61
- if (request.method !== "HEAD" && !response.body || response.status === 204 || response.status === 205 || response.status === 304 || response.headers.has("content-encoding") || response.headers.has("content-range") || response.headers.get("cache-control")?.toLowerCase().includes("no-transform")) {
63
+ function isCompressionEligible(request, response, bufferedText) {
64
+ if (
65
+ // Known buffered text proves a body without reading response.body, which
66
+ // would create a lazy response's Web stream.
67
+ request.method !== "HEAD" && bufferedText === void 0 && !response.body || response.status === 204 || response.status === 205 || response.status === 304 || response.headers.has("content-encoding") || response.headers.has("content-range") || response.headers.get("cache-control")?.toLowerCase().includes("no-transform")
68
+ ) {
62
69
  return false;
63
70
  }
64
71
  const mediaType = response.headers.get("content-type")?.split(";", 1)[0]?.trim().toLowerCase();
@@ -88,9 +95,9 @@ function compressedHeaders(response, encoding) {
88
95
  return headers;
89
96
  }
90
97
  __name(compressedHeaders, "compressedHeaders");
91
- function compressBufferedResponse(response, text, encoding) {
98
+ function compressBufferedResponse(response, text, encoding, lazyBody) {
92
99
  const headers = compressedHeaders(response, encoding);
93
- response.body?.cancel().catch(() => {
100
+ if (!lazyBody) response.body?.cancel().catch(() => {
94
101
  });
95
102
  const input = Buffer.from(text);
96
103
  let cancelled = false;
@@ -143,21 +150,15 @@ function compressResponse(response, encoding) {
143
150
  }
144
151
  __name(compressResponse, "compressResponse");
145
152
  function varyIdentityResponse(response) {
146
- const headers = new Headers(response.headers);
147
- appendVary(headers, "Accept-Encoding");
148
- return new Response(response.body, {
149
- status: response.status,
150
- statusText: response.statusText,
151
- headers
152
- });
153
+ return _withFarmResponseHeaders(response, (headers) => appendVary(headers, "Accept-Encoding"));
153
154
  }
154
155
  __name(varyIdentityResponse, "varyIdentityResponse");
155
- function compressFarmResponse(request, response, bufferedText) {
156
- if (!isCompressionEligible(request, response)) return response;
156
+ function compressFarmResponse(request, response, bufferedText, lazyBody = false) {
157
+ if (!isCompressionEligible(request, response, bufferedText)) return response;
157
158
  if (request.method === "HEAD") return varyIdentityResponse(response);
158
159
  const encoding = selectEncoding(request.headers.get("accept-encoding") ?? "");
159
160
  if (!encoding) return varyIdentityResponse(response);
160
- return bufferedText === void 0 ? compressResponse(response, encoding) : compressBufferedResponse(response, bufferedText, encoding);
161
+ return bufferedText === void 0 ? compressResponse(response, encoding) : compressBufferedResponse(response, bufferedText, encoding, lazyBody);
161
162
  }
162
163
  __name(compressFarmResponse, "compressFarmResponse");
163
164
  function createCompressionPlugin({
@@ -2,12 +2,16 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkZSO5GWGDcjs = require('./chunk-ZSO5GWGD.cjs');
5
+ var _chunk6CNX6Q3Kcjs = require('./chunk-6CNX6Q3K.cjs');
6
6
 
7
7
 
8
8
  var _chunkJ63ZH5OQcjs = require('./chunk-J63ZH5OQ.cjs');
9
9
 
10
10
 
11
+
12
+ var _chunkFJ3M4CUXcjs = require('./chunk-FJ3M4CUX.cjs');
13
+
14
+
11
15
  var _chunkI57LW5VZcjs = require('./chunk-I57LW5VZ.cjs');
12
16
 
13
17
 
@@ -66,12 +70,12 @@ function collectFarmLlmsTxtPages(sources, options) {
66
70
  for (const source of sources) {
67
71
  const path = source.pattern;
68
72
  if (path.includes("[") || pages.has(path)) continue;
69
- if (include.length && !include.some((pattern) => _chunkZSO5GWGDcjs.matchesFarmMarkdownRoutePattern.call(void 0, pattern, path))) {
73
+ if (include.length && !include.some((pattern) => _chunk6CNX6Q3Kcjs.matchesFarmMarkdownRoutePattern.call(void 0, pattern, path))) {
70
74
  continue;
71
75
  }
72
- if (exclude.some((pattern) => _chunkZSO5GWGDcjs.matchesFarmMarkdownRoutePattern.call(void 0, pattern, path))) continue;
76
+ if (exclude.some((pattern) => _chunk6CNX6Q3Kcjs.matchesFarmMarkdownRoutePattern.call(void 0, pattern, path))) continue;
73
77
  if (isMetadataNoIndex(source.metadata)) continue;
74
- const target = _chunkZSO5GWGDcjs.isFarmMarkdownMirrorExposed.call(void 0, options.markdown, path) ? _chunkZSO5GWGDcjs.getFarmMarkdownMirrorPath.call(void 0, path) : path;
78
+ const target = _chunk6CNX6Q3Kcjs.isFarmMarkdownMirrorExposed.call(void 0, options.markdown, path) ? _chunk6CNX6Q3Kcjs.getFarmMarkdownMirrorPath.call(void 0, path) : path;
75
79
  const description = readMetadataString(source.metadata, "description");
76
80
  pages.set(path, {
77
81
  path,
@@ -656,16 +660,15 @@ function applyFarmCspNonceToResponse(response, security) {
656
660
  if (!_optionalChain([response, 'access', _25 => _25.headers, 'access', _26 => _26.get, 'call', _27 => _27("content-type"), 'optionalAccess', _28 => _28.toLowerCase, 'call', _29 => _29(), 'access', _30 => _30.includes, 'call', _31 => _31("text/html")])) return response;
657
661
  const nonce = createFarmCspNonce(security);
658
662
  const securityHeader = getFarmSecurityHeader(security, nonce);
659
- const headers = new Headers(response.headers);
660
- headers.set(securityHeader.key, securityHeader.value);
661
- headers.delete("content-length");
662
663
  if (!response.body) {
663
- return new Response(null, {
664
- status: response.status,
665
- statusText: response.statusText,
666
- headers
664
+ return _chunkFJ3M4CUXcjs._withFarmResponseHeaders.call(void 0, response, (headers2) => {
665
+ headers2.set(securityHeader.key, securityHeader.value);
666
+ headers2.delete("content-length");
667
667
  });
668
668
  }
669
+ const headers = new Headers(response.headers);
670
+ headers.set(securityHeader.key, securityHeader.value);
671
+ headers.delete("content-length");
669
672
  const decoder = new TextDecoder();
670
673
  const encoder = new TextEncoder();
671
674
  const rewriter = createFarmCspNonceRewriter(nonce);
@@ -681,11 +684,13 @@ function applyFarmCspNonceToResponse(response, security) {
681
684
  }
682
685
  })
683
686
  );
684
- return new Response(body, {
685
- status: response.status,
686
- statusText: response.statusText,
687
- headers
688
- });
687
+ return _chunkFJ3M4CUXcjs._markFarmOwnedResponse.call(void 0,
688
+ new Response(body, {
689
+ status: response.status,
690
+ statusText: response.statusText,
691
+ headers
692
+ })
693
+ );
689
694
  }
690
695
  _chunkS3JO3N4Hcjs.__name.call(void 0, applyFarmCspNonceToResponse, "applyFarmCspNonceToResponse");
691
696
  function farmCspBlocksFrameworkInlineScripts(security) {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createRouteDataCacheKey
3
- } from "./chunk-F6SJAKFJ.mjs";
3
+ } from "./chunk-CNOQY6Z7.mjs";
4
4
  import {
5
5
  subscribeFarmCacheInvalidation
6
6
  } from "./chunk-4SIYUGRY.mjs";
@@ -7,7 +7,7 @@ import {
7
7
  FarmClientDataCache,
8
8
  getFarmClientDataCache,
9
9
  normalizeFarmClientCacheKey
10
- } from "./chunk-5SPPCN5J.mjs";
10
+ } from "./chunk-XNPDONUH.mjs";
11
11
  import {
12
12
  createClientCancellation
13
13
  } from "./chunk-QVYLBY73.mjs";
@@ -2,10 +2,14 @@ import {
2
2
  getFarmMarkdownMirrorPath,
3
3
  isFarmMarkdownMirrorExposed,
4
4
  matchesFarmMarkdownRoutePattern
5
- } from "./chunk-POXI72VV.mjs";
5
+ } from "./chunk-ATXI6LGT.mjs";
6
6
  import {
7
7
  FARM_INTERNAL_READ_HEADER
8
8
  } from "./chunk-MVL2RAJW.mjs";
9
+ import {
10
+ _markFarmOwnedResponse,
11
+ _withFarmResponseHeaders
12
+ } from "./chunk-Z3HATSKO.mjs";
9
13
  import {
10
14
  applyFarmBasePath
11
15
  } from "./chunk-4RB44K6Z.mjs";
@@ -656,16 +660,15 @@ function applyFarmCspNonceToResponse(response, security) {
656
660
  if (!response.headers.get("content-type")?.toLowerCase().includes("text/html")) return response;
657
661
  const nonce = createFarmCspNonce(security);
658
662
  const securityHeader = getFarmSecurityHeader(security, nonce);
659
- const headers = new Headers(response.headers);
660
- headers.set(securityHeader.key, securityHeader.value);
661
- headers.delete("content-length");
662
663
  if (!response.body) {
663
- return new Response(null, {
664
- status: response.status,
665
- statusText: response.statusText,
666
- headers
664
+ return _withFarmResponseHeaders(response, (headers2) => {
665
+ headers2.set(securityHeader.key, securityHeader.value);
666
+ headers2.delete("content-length");
667
667
  });
668
668
  }
669
+ const headers = new Headers(response.headers);
670
+ headers.set(securityHeader.key, securityHeader.value);
671
+ headers.delete("content-length");
669
672
  const decoder = new TextDecoder();
670
673
  const encoder = new TextEncoder();
671
674
  const rewriter = createFarmCspNonceRewriter(nonce);
@@ -681,11 +684,13 @@ function applyFarmCspNonceToResponse(response, security) {
681
684
  }
682
685
  })
683
686
  );
684
- return new Response(body, {
685
- status: response.status,
686
- statusText: response.statusText,
687
- headers
688
- });
687
+ return _markFarmOwnedResponse(
688
+ new Response(body, {
689
+ status: response.status,
690
+ statusText: response.statusText,
691
+ headers
692
+ })
693
+ );
689
694
  }
690
695
  __name(applyFarmCspNonceToResponse, "applyFarmCspNonceToResponse");
691
696
  function farmCspBlocksFrameworkInlineScripts(security) {
@@ -0,0 +1,46 @@
1
+ import {
2
+ __name
3
+ } from "./chunk-LPEX4YW6.mjs";
4
+
5
+ // src/owned-response.ts
6
+ var OWNED_RESPONSES = /* @__PURE__ */ Symbol.for("farm.ownedResponses");
7
+ function registry() {
8
+ const state = globalThis;
9
+ return state[OWNED_RESPONSES] ?? (state[OWNED_RESPONSES] = /* @__PURE__ */ new WeakSet());
10
+ }
11
+ __name(registry, "registry");
12
+ function _markFarmOwnedResponse(response) {
13
+ registry().add(response);
14
+ return response;
15
+ }
16
+ __name(_markFarmOwnedResponse, "_markFarmOwnedResponse");
17
+ function _isFarmOwnedResponse(response) {
18
+ return registry().has(response);
19
+ }
20
+ __name(_isFarmOwnedResponse, "_isFarmOwnedResponse");
21
+ function _withFarmResponseHeaders(response, edit) {
22
+ if (registry().has(response)) {
23
+ try {
24
+ edit(response.headers);
25
+ return response;
26
+ } catch (error) {
27
+ if (!(error instanceof TypeError)) throw error;
28
+ }
29
+ }
30
+ const headers = new Headers(response.headers);
31
+ edit(headers);
32
+ return _markFarmOwnedResponse(
33
+ new Response(response.body, {
34
+ status: response.status,
35
+ statusText: response.statusText,
36
+ headers
37
+ })
38
+ );
39
+ }
40
+ __name(_withFarmResponseHeaders, "_withFarmResponseHeaders");
41
+
42
+ export {
43
+ _markFarmOwnedResponse,
44
+ _isFarmOwnedResponse,
45
+ _withFarmResponseHeaders
46
+ };
@@ -2,10 +2,10 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkY4YWHNKUcjs = require('./chunk-Y4YWHNKU.cjs');
5
+ var _chunkKH7BN726cjs = require('./chunk-KH7BN726.cjs');
6
6
 
7
7
 
8
- var _chunkI7PUUDGYcjs = require('./chunk-I7PUUDGY.cjs');
8
+ var _chunk63H6BKXGcjs = require('./chunk-63H6BKXG.cjs');
9
9
 
10
10
 
11
11
  var _chunkS3JO3N4Hcjs = require('./chunk-S3JO3N4H.cjs');
@@ -13,8 +13,8 @@ var _chunkS3JO3N4Hcjs = require('./chunk-S3JO3N4H.cjs');
13
13
  // src/server-query-client.ts
14
14
  var _react = require('react');
15
15
  function useServerQuery(query, input, options = {}) {
16
- const cache = _chunkI7PUUDGYcjs.getFarmClientDataCache.call(void 0, );
17
- const key = _chunkY4YWHNKUcjs.createServerQueryCallKey.call(void 0, query, input);
16
+ const cache = _chunk63H6BKXGcjs.getFarmClientDataCache.call(void 0, );
17
+ const key = _chunkKH7BN726cjs.createServerQueryCallKey.call(void 0, query, input);
18
18
  const inputRef = _react.useRef.call(void 0, input);
19
19
  const optionsRef = _react.useRef.call(void 0, options);
20
20
  const mountedKeyRef = _react.useRef.call(void 0, void 0);
@@ -36,7 +36,7 @@ function useServerQuery(query, input, options = {}) {
36
36
  const run = _react.useCallback.call(void 0,
37
37
  (force = false) => {
38
38
  pendingInvalidationRef.current = false;
39
- return _chunkY4YWHNKUcjs.fetchServerQuery.call(void 0, query, inputRef.current, {
39
+ return _chunkKH7BN726cjs.fetchServerQuery.call(void 0, query, inputRef.current, {
40
40
  ...optionsRef.current,
41
41
  force
42
42
  });
@@ -56,7 +56,7 @@ function useServerQuery(query, input, options = {}) {
56
56
  }, [cache, entry, key, options.enabled, run]);
57
57
  _react.useEffect.call(void 0, () => {
58
58
  if (options.enabled === false) return;
59
- return _chunkY4YWHNKUcjs.attachRevalidationListeners.call(void 0,
59
+ return _chunkKH7BN726cjs.attachRevalidationListeners.call(void 0,
60
60
  () => {
61
61
  if (cache.isStale(key)) void run().catch(() => void 0);
62
62
  },
@@ -3,14 +3,14 @@
3
3
 
4
4
 
5
5
 
6
- var _chunkQI7WQSMIcjs = require('./chunk-QI7WQSMI.cjs');
6
+ var _chunkQ5JFU33Qcjs = require('./chunk-Q5JFU33Q.cjs');
7
7
 
8
8
 
9
9
 
10
10
  var _chunkIK6LVLKCcjs = require('./chunk-IK6LVLKC.cjs');
11
11
 
12
12
 
13
- var _chunkKAERLFD3cjs = require('./chunk-KAERLFD3.cjs');
13
+ var _chunkJFHKNFEOcjs = require('./chunk-JFHKNFEO.cjs');
14
14
 
15
15
 
16
16
  var _chunk75WGQVQAcjs = require('./chunk-75WGQVQA.cjs');
@@ -39,7 +39,7 @@ function createFarmDocsAdapterRuntimeConfig(docs, options, moduleConfig) {
39
39
  ...moduleConfig ? { ...moduleConfig, ...docs.configOverrides } : _nullishCoalesce(docs.runtimeConfig, () => ( docs.config)),
40
40
  entry: docs.config.entry || docs.entry.replace(/^\/+|\/+$/g, "") || "docs",
41
41
  docsPath: docs.entry,
42
- contentDir: _chunkQI7WQSMIcjs.resolveFarmDocsContentDir.call(void 0, docs, options)
42
+ contentDir: _chunkQ5JFU33Qcjs.resolveFarmDocsContentDir.call(void 0, docs, options)
43
43
  };
44
44
  }
45
45
  _chunkS3JO3N4Hcjs.__name.call(void 0, createFarmDocsAdapterRuntimeConfig, "createFarmDocsAdapterRuntimeConfig");
@@ -274,25 +274,25 @@ function getDocsDescription(docs) {
274
274
  }
275
275
  _chunkS3JO3N4Hcjs.__name.call(void 0, getDocsDescription, "getDocsDescription");
276
276
  function getLoadedDocsPages(context) {
277
- return _chunkQI7WQSMIcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs).map((page) => _chunkQI7WQSMIcjs.loadFarmDocsPage.call(void 0, context.contentDir, context.docs, page.slug)).filter((page) => Boolean(page));
277
+ return _chunkQ5JFU33Qcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs).map((page) => _chunkQ5JFU33Qcjs.loadFarmDocsPage.call(void 0, context.contentDir, context.docs, page.slug)).filter((page) => Boolean(page));
278
278
  }
279
279
  _chunkS3JO3N4Hcjs.__name.call(void 0, getLoadedDocsPages, "getLoadedDocsPages");
280
280
  function toDocsSourcePage(page) {
281
281
  return {
282
- ..._chunkQI7WQSMIcjs.toFarmDocsMarkdownPage.call(void 0, page),
282
+ ..._chunkQ5JFU33Qcjs.toFarmDocsMarkdownPage.call(void 0, page),
283
283
  sourcePath: page.sourcePath
284
284
  };
285
285
  }
286
286
  _chunkS3JO3N4Hcjs.__name.call(void 0, toDocsSourcePage, "toDocsSourcePage");
287
287
  function toDocsSitemapPage(page) {
288
288
  return {
289
- ..._chunkQI7WQSMIcjs.toFarmDocsMarkdownPage.call(void 0, page),
289
+ ..._chunkQ5JFU33Qcjs.toFarmDocsMarkdownPage.call(void 0, page),
290
290
  sourcePath: page.sourcePath
291
291
  };
292
292
  }
293
293
  _chunkS3JO3N4Hcjs.__name.call(void 0, toDocsSitemapPage, "toDocsSitemapPage");
294
294
  function toDocsLlmsPage(page) {
295
- return _chunkQI7WQSMIcjs.toFarmDocsMarkdownPage.call(void 0, page);
295
+ return _chunkQ5JFU33Qcjs.toFarmDocsMarkdownPage.call(void 0, page);
296
296
  }
297
297
  _chunkS3JO3N4Hcjs.__name.call(void 0, toDocsLlmsPage, "toDocsLlmsPage");
298
298
  function getDocsLlmsOptions(context, request) {
@@ -386,7 +386,7 @@ _chunkS3JO3N4Hcjs.__name.call(void 0, renderAgentsDocument, "renderAgentsDocumen
386
386
  function buildAgentSpec(context, request) {
387
387
  const url = new URL(request.url);
388
388
  const origin = url.origin;
389
- const pages = _chunkQI7WQSMIcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs);
389
+ const pages = _chunkQ5JFU33Qcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs);
390
390
  const spec = _chunkIK6LVLKCcjs.docsEngine.call(void 0, ).buildDocsAgentDiscoverySpec(getDocsDiscoveryOptions(context, request));
391
391
  const title = getDocsTitle(context.docs);
392
392
  return {
@@ -428,7 +428,7 @@ function buildAgentSpec(context, request) {
428
428
  }
429
429
  _chunkS3JO3N4Hcjs.__name.call(void 0, buildAgentSpec, "buildAgentSpec");
430
430
  function buildDiagnostics(context) {
431
- const pages = _chunkQI7WQSMIcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs);
431
+ const pages = _chunkQ5JFU33Qcjs.discoverFarmDocsPages.call(void 0, context.contentDir, context.docs);
432
432
  const diagnostics = _chunkIK6LVLKCcjs.docsEngine.call(void 0, ).buildDocsDiagnostics(context.docs.config, {
433
433
  entry: context.docs.entry,
434
434
  mcp: {
@@ -500,12 +500,12 @@ async function resolveAPIContext(options) {
500
500
  config: options.config,
501
501
  configPath: options.configPath
502
502
  }));
503
- const docs = isResolvedDocsConfig(docsInput) ? docsInput : await _chunkKAERLFD3cjs.resolveDocsConfig.call(void 0, docsInput, { root, srcDir });
503
+ const docs = isResolvedDocsConfig(docsInput) ? docsInput : await _chunkJFHKNFEOcjs.resolveDocsConfig.call(void 0, docsInput, { root, srcDir });
504
504
  return {
505
505
  root,
506
506
  srcDir,
507
507
  docs,
508
- contentDir: _chunkQI7WQSMIcjs.resolveFarmDocsContentDir.call(void 0, docs, { root, srcDir })
508
+ contentDir: _chunkQ5JFU33Qcjs.resolveFarmDocsContentDir.call(void 0, docs, { root, srcDir })
509
509
  };
510
510
  }
511
511
  _chunkS3JO3N4Hcjs.__name.call(void 0, resolveAPIContext, "resolveAPIContext");
@@ -568,10 +568,10 @@ async function handleDocsAPIGet(request, context) {
568
568
  if (format === "markdown" || url.pathname.endsWith(".md")) {
569
569
  const pathParam = url.searchParams.get("path") || url.searchParams.get("slug");
570
570
  const slug = normalizeDocsApiSlug(_nullishCoalesce(_nullishCoalesce(pathParam, () => ( pathTarget.slug)), () => ( "")), context.docs);
571
- const page = _chunkQI7WQSMIcjs.loadFarmDocsPage.call(void 0, context.contentDir, context.docs, slug);
571
+ const page = _chunkQ5JFU33Qcjs.loadFarmDocsPage.call(void 0, context.contentDir, context.docs, slug);
572
572
  if (!page) return text("Docs page not found\n", "text/plain; charset=utf-8", { status: 404 });
573
573
  return text(
574
- _chunkIK6LVLKCcjs.docsEngine.call(void 0, ).renderDocsMarkdownDocument(_chunkQI7WQSMIcjs.toFarmDocsMarkdownPage.call(void 0, page), {
574
+ _chunkIK6LVLKCcjs.docsEngine.call(void 0, ).renderDocsMarkdownDocument(_chunkQ5JFU33Qcjs.toFarmDocsMarkdownPage.call(void 0, page), {
575
575
  origin: new URL(request.url).origin,
576
576
  llms: getDocsLlmsOptions(context, request),
577
577
  sitemap: context.docs.config.sitemap