@farm.js/core 0.1.17 → 0.1.19

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 (269) hide show
  1. package/dist/after.cjs +12 -225
  2. package/dist/agent-runtime.cjs +83 -2800
  3. package/dist/api/client.cjs +17 -4060
  4. package/dist/api/route-manager.cjs +34 -4354
  5. package/dist/api/runtime.cjs +29 -2696
  6. package/dist/api.cjs +88 -8434
  7. package/dist/app-markdown.cjs +39 -280
  8. package/dist/app-markdown.mjs +3 -3
  9. package/dist/cache.cjs +38 -1560
  10. package/dist/chunk-22GUSVNJ.cjs +351 -0
  11. package/dist/{chunk-EN7WTEAY.mjs → chunk-2ANEVVF7.mjs} +1 -1
  12. package/dist/chunk-2CQ74SP6.cjs +13 -0
  13. package/dist/{chunk-YD4J4XCI.mjs → chunk-2GNATDDE.mjs} +1 -1
  14. package/dist/chunk-2SJ4RQ6P.cjs +57 -0
  15. package/dist/chunk-3376ZTRC.cjs +1 -0
  16. package/dist/chunk-4PNUXIVU.cjs +472 -0
  17. package/dist/chunk-4PPEPOZZ.cjs +21 -0
  18. package/dist/chunk-4ZFL5GFN.cjs +520 -0
  19. package/dist/chunk-5OVTOKGH.cjs +65 -0
  20. package/dist/chunk-5QIKR7RR.cjs +224 -0
  21. package/dist/chunk-5ZSWG4UX.cjs +127 -0
  22. package/dist/chunk-62YJ2IEB.cjs +238 -0
  23. package/dist/chunk-6EODJYCX.cjs +183 -0
  24. package/dist/chunk-6EXBPJ24.cjs +434 -0
  25. package/dist/chunk-6QQDAAAZ.cjs +38 -0
  26. package/dist/chunk-6V4TDWEC.cjs +455 -0
  27. package/dist/chunk-72ADZ6GQ.cjs +19 -0
  28. package/dist/chunk-75BRBIFP.cjs +172 -0
  29. package/dist/{chunk-ZCNJKLA2.mjs → chunk-7BC6GAL7.mjs} +1 -1
  30. package/dist/chunk-7W3CPVXS.cjs +24 -0
  31. package/dist/chunk-A6WIQH5Z.cjs +31 -0
  32. package/dist/chunk-A777V5WU.cjs +725 -0
  33. package/dist/chunk-AFOD3LYZ.cjs +377 -0
  34. package/dist/chunk-AH7HOAQ3.cjs +151 -0
  35. package/dist/chunk-AMDMVWMI.cjs +39 -0
  36. package/dist/chunk-AORPIPNB.cjs +552 -0
  37. package/dist/chunk-ARJWXNQL.cjs +256 -0
  38. package/dist/chunk-AYJR42WX.cjs +711 -0
  39. package/dist/chunk-BBVSJVBZ.cjs +600 -0
  40. package/dist/chunk-BIDYX3SL.cjs +91 -0
  41. package/dist/chunk-BYODCJD6.cjs +663 -0
  42. package/dist/chunk-C3VRMB6H.cjs +85 -0
  43. package/dist/chunk-C5GUTBZK.cjs +173 -0
  44. package/dist/chunk-CIAGU2X4.cjs +337 -0
  45. package/dist/chunk-CMGMGHUZ.cjs +27 -0
  46. package/dist/chunk-CXP5U3RW.cjs +54 -0
  47. package/dist/chunk-D2ULAULS.cjs +166 -0
  48. package/dist/chunk-D7JTOLFK.cjs +285 -0
  49. package/dist/chunk-DVM4FKZL.cjs +169 -0
  50. package/dist/chunk-DYEJQTDN.cjs +49 -0
  51. package/dist/chunk-E2ROOWQC.cjs +2225 -0
  52. package/dist/chunk-E3UK5IIB.cjs +593 -0
  53. package/dist/chunk-EM6SBQKM.cjs +470 -0
  54. package/dist/chunk-FJSWYIR7.cjs +482 -0
  55. package/dist/chunk-FK6GO24V.cjs +54 -0
  56. package/dist/{chunk-MVIWBEJF.mjs → chunk-FVZGEVTO.mjs} +7 -7
  57. package/dist/chunk-FXUUWYAX.cjs +654 -0
  58. package/dist/chunk-G3HRIVEY.cjs +395 -0
  59. package/dist/chunk-G643DQCH.cjs +13 -0
  60. package/dist/chunk-G7HXGLEC.cjs +175 -0
  61. package/dist/chunk-GDSHDTJ4.cjs +152 -0
  62. package/dist/chunk-GPVTX3HT.cjs +1415 -0
  63. package/dist/chunk-H6G5INWM.cjs +1094 -0
  64. package/dist/{chunk-DHDVMXYK.mjs → chunk-HALDNTIV.mjs} +30 -4
  65. package/dist/chunk-HBTUGXHS.cjs +180 -0
  66. package/dist/chunk-HREOKQWT.cjs +45 -0
  67. package/dist/{chunk-5QOEPUYE.mjs → chunk-HSDL2AUR.mjs} +1 -1
  68. package/dist/chunk-I4J452B7.cjs +435 -0
  69. package/dist/chunk-I57LW5VZ.cjs +94 -0
  70. package/dist/chunk-I5YBCWQ6.cjs +40 -0
  71. package/dist/chunk-I7PUUDGY.cjs +389 -0
  72. package/dist/chunk-IAMRBF3Z.cjs +86 -0
  73. package/dist/chunk-IQXFRNY2.cjs +169 -0
  74. package/dist/chunk-ISTFC3MZ.cjs +1357 -0
  75. package/dist/chunk-IXTFU4PL.cjs +2355 -0
  76. package/dist/chunk-J3LOGE4T.cjs +42 -0
  77. package/dist/chunk-J7FSKED3.cjs +93 -0
  78. package/dist/chunk-JDNHKPTD.cjs +22 -0
  79. package/dist/chunk-JSROZYYO.cjs +164 -0
  80. package/dist/chunk-K6FNHVDR.cjs +696 -0
  81. package/dist/chunk-KGZIORNL.cjs +43 -0
  82. package/dist/chunk-KR6CKSXT.cjs +15 -0
  83. package/dist/chunk-KROWKCUH.cjs +185 -0
  84. package/dist/chunk-KVFPGF2M.cjs +46 -0
  85. package/dist/{chunk-TNBAYAWO.mjs → chunk-L4DVIHOC.mjs} +1 -1
  86. package/dist/chunk-LCCBO7PJ.cjs +46 -0
  87. package/dist/chunk-LIUGYUX3.cjs +22 -0
  88. package/dist/chunk-LTNGXMQ6.cjs +55 -0
  89. package/dist/chunk-M2L4MYDQ.cjs +14 -0
  90. package/dist/chunk-MCJLA63J.cjs +1 -0
  91. package/dist/chunk-MKB2EGIR.cjs +148 -0
  92. package/dist/chunk-MQ3H6LT5.cjs +202 -0
  93. package/dist/chunk-MT763TDW.cjs +43 -0
  94. package/dist/{chunk-XWAYMDLB.mjs → chunk-MVUREHPN.mjs} +1 -1
  95. package/dist/chunk-MWSK6C4J.cjs +18 -0
  96. package/dist/chunk-MWWVKDW3.cjs +169 -0
  97. package/dist/{chunk-6VQIKZZO.mjs → chunk-N255VYFP.mjs} +1 -1
  98. package/dist/chunk-NBAHDVOJ.cjs +2040 -0
  99. package/dist/chunk-NO3WWW3N.cjs +192 -0
  100. package/dist/chunk-NSFC3LHB.cjs +10244 -0
  101. package/dist/chunk-NZKJGRB3.cjs +230 -0
  102. package/dist/chunk-OAVTUMJP.cjs +1496 -0
  103. package/dist/{chunk-SXHV42UQ.mjs → chunk-OFEY6KHO.mjs} +88 -13
  104. package/dist/chunk-OHY2ZWUG.cjs +25 -0
  105. package/dist/chunk-OI6CMLWX.cjs +47 -0
  106. package/dist/chunk-OWOUTKIJ.cjs +558 -0
  107. package/dist/chunk-OX6O6WVA.cjs +74 -0
  108. package/dist/chunk-OXSIH4D6.cjs +476 -0
  109. package/dist/chunk-OYDRPBBV.cjs +453 -0
  110. package/dist/chunk-OYEUREB6.cjs +35 -0
  111. package/dist/chunk-PCOTGFSM.cjs +139 -0
  112. package/dist/{chunk-76DG3LF3.mjs → chunk-PGQBL5DN.mjs} +1 -1
  113. package/dist/chunk-PZYCPSCC.cjs +35 -0
  114. package/dist/chunk-QBK2AA4U.cjs +445 -0
  115. package/dist/{chunk-UTBVHYS3.mjs → chunk-QBPKKQTD.mjs} +2 -2
  116. package/dist/chunk-QBPXNZGV.cjs +487 -0
  117. package/dist/chunk-QNPEUFHQ.cjs +27 -0
  118. package/dist/chunk-QZRVZSPN.cjs +236 -0
  119. package/dist/chunk-R5A5KNVX.cjs +20 -0
  120. package/dist/chunk-R5JIFR6B.cjs +42 -0
  121. package/dist/chunk-R6AIILII.cjs +193 -0
  122. package/dist/chunk-RFYO7QUD.cjs +9 -0
  123. package/dist/chunk-RG3ZOTG5.cjs +34 -0
  124. package/dist/chunk-ROUTX2E5.cjs +390 -0
  125. package/dist/chunk-RTHIVJ2G.cjs +54 -0
  126. package/dist/chunk-S27FMYAM.cjs +644 -0
  127. package/dist/chunk-S3A45T7F.cjs +166 -0
  128. package/dist/chunk-S3JO3N4H.cjs +17 -0
  129. package/dist/chunk-SK35NQKK.cjs +27 -0
  130. package/dist/chunk-SU7MH53P.cjs +180 -0
  131. package/dist/chunk-SVRTJOUF.cjs +113 -0
  132. package/dist/chunk-SWN467MP.cjs +18 -0
  133. package/dist/chunk-SYQ3MOWW.cjs +73 -0
  134. package/dist/chunk-T5CERMEH.cjs +417 -0
  135. package/dist/chunk-TFAXUHWX.cjs +206 -0
  136. package/dist/chunk-TIWHTW3Q.cjs +24 -0
  137. package/dist/chunk-TKJZFIML.cjs +20 -0
  138. package/dist/chunk-TKNSDBBN.cjs +193 -0
  139. package/dist/chunk-U4KT7QP3.cjs +23 -0
  140. package/dist/chunk-U5BMPGS3.cjs +862 -0
  141. package/dist/chunk-UJ2C4ICS.cjs +277 -0
  142. package/dist/chunk-UQZ4AYTH.cjs +168 -0
  143. package/dist/chunk-US2QVW3E.cjs +36 -0
  144. package/dist/{chunk-QGVJVSNX.mjs → chunk-V4AICMQA.mjs} +2 -2
  145. package/dist/chunk-VB6UCX3V.cjs +421 -0
  146. package/dist/chunk-VEKFLAQM.cjs +300 -0
  147. package/dist/chunk-VQDBNVOO.cjs +14 -0
  148. package/dist/chunk-W4E7WMXE.cjs +71 -0
  149. package/dist/chunk-WJ3HK3LJ.cjs +1102 -0
  150. package/dist/chunk-WMAPPDMM.cjs +28 -0
  151. package/dist/chunk-WMOGFOUJ.cjs +223 -0
  152. package/dist/chunk-WPYFSQKK.cjs +37 -0
  153. package/dist/{chunk-56DAX2BE.mjs → chunk-WZXN4R5Y.mjs} +24 -13
  154. package/dist/chunk-XDGMADQM.cjs +14225 -0
  155. package/dist/chunk-XGC343EY.cjs +443 -0
  156. package/dist/chunk-XSKZORAS.cjs +727 -0
  157. package/dist/chunk-XWAWFQFS.cjs +82 -0
  158. package/dist/chunk-Y4YMF2NQ.cjs +460 -0
  159. package/dist/chunk-Y4YWHNKU.cjs +250 -0
  160. package/dist/chunk-Y53ZSFN6.cjs +504 -0
  161. package/dist/chunk-YA6LLTIJ.cjs +411 -0
  162. package/dist/chunk-YFPGHF5F.cjs +202 -0
  163. package/dist/chunk-YJRZR7VU.cjs +28 -0
  164. package/dist/chunk-YTAABQEV.cjs +1 -0
  165. package/dist/chunk-YX3DBN4M.cjs +18 -0
  166. package/dist/chunk-YZTASLPQ.cjs +64 -0
  167. package/dist/chunk-Z5HIWVDP.cjs +2173 -0
  168. package/dist/chunk-ZEG3OPIB.cjs +93 -0
  169. package/dist/chunk-ZMN3H73H.cjs +155 -0
  170. package/dist/client/lifecycle.cjs +6 -35
  171. package/dist/client-plugins.cjs +7 -448
  172. package/dist/client.cjs +171 -9808
  173. package/dist/config.cjs +8 -36
  174. package/dist/cron.cjs +24 -491
  175. package/dist/deferred.cjs +26 -475
  176. package/dist/deployment.cjs +39 -210
  177. package/dist/devtools-5KGPDVKL.cjs +388 -0
  178. package/dist/{devtools-UFVTMQX5.mjs → devtools-FY5R7TQ4.mjs} +3 -3
  179. package/dist/devtools-client-4WAPJY5L.cjs +254 -0
  180. package/dist/devtools-ui-5GBDIGMK.cjs +1296 -0
  181. package/dist/docs.cjs +46 -5657
  182. package/dist/docs.mjs +5 -5
  183. package/dist/env-types.cjs +5 -226
  184. package/dist/env.cjs +21 -338
  185. package/dist/environment/vite.cjs +8 -372
  186. package/dist/environment.cjs +12 -94
  187. package/dist/font.cjs +13 -63
  188. package/dist/headers.cjs +7 -123
  189. package/dist/i18n/client.cjs +55 -294
  190. package/dist/i18n/index.cjs +22 -209
  191. package/dist/i18n/server.cjs +22 -745
  192. package/dist/image/server.cjs +13 -729
  193. package/dist/image/sharp.cjs +33 -171
  194. package/dist/image.cjs +41 -85
  195. package/dist/index.cjs +1151 -68080
  196. package/dist/index.mjs +14 -14
  197. package/dist/instrumentation.cjs +12 -138
  198. package/dist/integration-orm-55F7CII5.cjs +13 -0
  199. package/dist/integrations.cjs +55 -4090
  200. package/dist/internal/app-markdown-runtime.cjs +27 -224
  201. package/dist/internal/app-markdown-runtime.mjs +2 -2
  202. package/dist/internal/build-runtime.cjs +120 -52259
  203. package/dist/internal/build-runtime.mjs +13 -13
  204. package/dist/internal/cli-runtime.cjs +67 -13811
  205. package/dist/internal/cli-runtime.mjs +7 -7
  206. package/dist/internal/client-error-overlay.cjs +80 -733
  207. package/dist/internal/client-error-overlay.mjs +1 -1
  208. package/dist/internal/client-runtime.cjs +81 -913
  209. package/dist/internal/compression-runtime.cjs +8 -214
  210. package/dist/internal/config-runtime.cjs +42 -6547
  211. package/dist/internal/config-runtime.mjs +3 -3
  212. package/dist/internal/docs-precompiled-runtime.cjs +26 -46
  213. package/dist/internal/infra-analytics-runtime.cjs +10 -536
  214. package/dist/internal/isolated-boundary.cjs +14 -414
  215. package/dist/internal/metadata-image-runtime.cjs +7 -285
  216. package/dist/internal/product-telemetry-runtime.cjs +42 -97
  217. package/dist/internal/product-telemetry-runtime.mjs +1 -1
  218. package/dist/internal/production-node-env.cjs +6 -63
  219. package/dist/internal/production-runtime.cjs +418 -7133
  220. package/dist/internal/production-runtime.mjs +3 -3
  221. package/dist/internal/request-cookies.cjs +6 -54
  222. package/dist/json-ld.cjs +24 -50
  223. package/dist/layers-E4WPJNY5.cjs +17 -0
  224. package/dist/manager-G4B2IPYE.cjs +14 -0
  225. package/dist/markdown.cjs +21 -547
  226. package/dist/markdown.mjs +1 -1
  227. package/dist/middleware.cjs +36 -2995
  228. package/dist/navigation.cjs +22 -2588
  229. package/dist/nitro-4I2MYLY2.cjs +652 -0
  230. package/dist/observability.cjs +22 -614
  231. package/dist/og.cjs +5 -28
  232. package/dist/plugin.cjs +106 -37442
  233. package/dist/plugin.mjs +9 -9
  234. package/dist/query/client.cjs +113 -449
  235. package/dist/query/index.cjs +26 -288
  236. package/dist/query/parsers.cjs +23 -247
  237. package/dist/query/server.cjs +36 -298
  238. package/dist/renderer/react/client.cjs +9 -43
  239. package/dist/renderer/react/server.cjs +40 -103
  240. package/dist/renderer/react/vite.cjs +7 -29
  241. package/dist/renderer-client.cjs +126 -4295
  242. package/dist/renderer.cjs +31 -249
  243. package/dist/request.cjs +5 -68
  244. package/dist/router.cjs +11 -474
  245. package/dist/routes.cjs +42 -2461
  246. package/dist/{schema-dev-notice-2IE2F2XI.mjs → schema-dev-notice-O67CPXJ6.mjs} +1 -1
  247. package/dist/schema-dev-notice-Y7MQEFGN.cjs +56 -0
  248. package/dist/schema.cjs +6 -33
  249. package/dist/search-client-G3RICOFU.cjs +13 -0
  250. package/dist/server-action-security.cjs +25 -541
  251. package/dist/server-fn-client.cjs +6 -337
  252. package/dist/server-fn.cjs +32 -1841
  253. package/dist/server-plugins.cjs +15 -884
  254. package/dist/server-query-client.cjs +15 -1883
  255. package/dist/server-query.cjs +16 -1838
  256. package/dist/server.cjs +296 -44681
  257. package/dist/server.mjs +11 -11
  258. package/dist/storage.cjs +57 -576
  259. package/dist/testing.cjs +89 -3186
  260. package/dist/theme/client.cjs +13 -108
  261. package/dist/theme/index.cjs +6 -68
  262. package/dist/theme/runtime.cjs +13 -78
  263. package/dist/theme/server.cjs +10 -179
  264. package/dist/version.cjs +4 -32
  265. package/dist/version.mjs +1 -1
  266. package/dist/vite.cjs +119 -37773
  267. package/dist/vite.mjs +9 -9
  268. package/dist/workflows.cjs +19 -1040
  269. package/package.json +1 -1
@@ -1,210 +1,39 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
-
21
- // src/deployment.ts
22
- var deployment_exports = {};
23
- __export(deployment_exports, {
24
- FARM_DEPLOYMENT_COOKIE: () => FARM_DEPLOYMENT_COOKIE,
25
- FARM_DEPLOYMENT_ID_HEADER: () => FARM_DEPLOYMENT_ID_HEADER,
26
- FARM_DEPLOYMENT_MISMATCH_CODE: () => FARM_DEPLOYMENT_MISMATCH_CODE,
27
- FARM_DEPLOYMENT_MISMATCH_HEADER: () => FARM_DEPLOYMENT_MISMATCH_HEADER,
28
- FARM_DEPLOYMENT_MISMATCH_STATUS: () => FARM_DEPLOYMENT_MISMATCH_STATUS,
29
- FarmDeploymentMismatchError: () => FarmDeploymentMismatchError,
30
- createFarmDeploymentCookie: () => createFarmDeploymentCookie,
31
- createFarmDeploymentMismatchError: () => createFarmDeploymentMismatchError,
32
- createFarmDeploymentMismatchResponse: () => createFarmDeploymentMismatchResponse,
33
- createFarmDeploymentRequestHeaders: () => createFarmDeploymentRequestHeaders,
34
- getFarmDeploymentMismatch: () => getFarmDeploymentMismatch,
35
- getFarmPresetRuntime: () => getFarmPresetRuntime,
36
- getFarmRequestDeploymentId: () => getFarmRequestDeploymentId,
37
- getFarmResponseDeploymentId: () => getFarmResponseDeploymentId,
38
- isFarmDeploymentMismatchResponse: () => isFarmDeploymentMismatchResponse,
39
- normalizeFarmDeploymentId: () => normalizeFarmDeploymentId,
40
- withFarmDeploymentResponse: () => withFarmDeploymentResponse
41
- });
42
- module.exports = __toCommonJS(deployment_exports);
43
- var FARM_DEPLOYMENT_ID_HEADER = "x-farm-deployment-id";
44
- var FARM_DEPLOYMENT_MISMATCH_HEADER = "x-farm-deployment-mismatch";
45
- var FARM_DEPLOYMENT_COOKIE = "__farm_deployment";
46
- var FARM_DEPLOYMENT_MISMATCH_CODE = "FARM_DEPLOYMENT_MISMATCH";
47
- var FARM_DEPLOYMENT_MISMATCH_STATUS = 409;
48
- function getFarmPresetRuntime(preset) {
49
- if (preset === "cloudflare" || preset === "cloudflare-pages" || preset === "cloudflare-module" || preset === "netlify-edge" || preset === "vercel-edge" || preset === "deno") {
50
- return "edge";
51
- }
52
- if (preset === "node-server" || preset === "vercel" || preset === "netlify" || preset === "aws-lambda" || preset === "azure" || preset === "firebase" || preset === "bun" || preset === "self-host" || preset === "farm") {
53
- return "node";
54
- }
55
- return "unknown";
56
- }
57
- __name(getFarmPresetRuntime, "getFarmPresetRuntime");
58
- var _FarmDeploymentMismatchError = class _FarmDeploymentMismatchError extends Error {
59
- constructor(clientDeploymentId, serverDeploymentId) {
60
- super("The application was updated while this page was open. Refresh before trying again.");
61
- this.clientDeploymentId = clientDeploymentId;
62
- this.serverDeploymentId = serverDeploymentId;
63
- this.name = "FarmDeploymentMismatchError";
64
- this.code = FARM_DEPLOYMENT_MISMATCH_CODE;
65
- this.retryable = false;
66
- }
67
- };
68
- __name(_FarmDeploymentMismatchError, "FarmDeploymentMismatchError");
69
- var FarmDeploymentMismatchError = _FarmDeploymentMismatchError;
70
- function normalizeFarmDeploymentId(value) {
71
- if (typeof value !== "string" || value.trim() === "") {
72
- throw new TypeError("Farm deploymentId must be a non-empty string");
73
- }
74
- const normalized = value.trim();
75
- if (normalized.length > 200 || /[\u0000-\u001f\u007f]/.test(normalized)) {
76
- throw new TypeError("Farm deploymentId must be at most 200 characters without control bytes");
77
- }
78
- return normalized;
79
- }
80
- __name(normalizeFarmDeploymentId, "normalizeFarmDeploymentId");
81
- function createFarmDeploymentRequestHeaders(deploymentId, init) {
82
- const headers = new Headers(init);
83
- if (deploymentId) {
84
- headers.set(FARM_DEPLOYMENT_ID_HEADER, deploymentId);
85
- }
86
- return headers;
87
- }
88
- __name(createFarmDeploymentRequestHeaders, "createFarmDeploymentRequestHeaders");
89
- function getFarmRequestDeploymentId(request) {
90
- const headerValue = request.headers.get(FARM_DEPLOYMENT_ID_HEADER)?.trim();
91
- if (headerValue) return headerValue;
92
- if (isSafeRequestMethod(request.method)) return void 0;
93
- return readCookie(request.headers.get("cookie"), FARM_DEPLOYMENT_COOKIE);
94
- }
95
- __name(getFarmRequestDeploymentId, "getFarmRequestDeploymentId");
96
- function getFarmDeploymentMismatch(request, serverDeploymentId) {
97
- if (!serverDeploymentId) return null;
98
- const clientDeploymentId = getFarmRequestDeploymentId(request);
99
- if (!clientDeploymentId || clientDeploymentId === serverDeploymentId) return null;
100
- return { clientDeploymentId, serverDeploymentId };
101
- }
102
- __name(getFarmDeploymentMismatch, "getFarmDeploymentMismatch");
103
- function createFarmDeploymentMismatchResponse(mismatch) {
104
- return new Response(
105
- JSON.stringify({
106
- error: FARM_DEPLOYMENT_MISMATCH_CODE,
107
- message: "The application deployment changed. Refresh before retrying this request."
108
- }),
109
- {
110
- status: FARM_DEPLOYMENT_MISMATCH_STATUS,
111
- headers: {
112
- "Cache-Control": "no-store",
113
- "Content-Type": "application/json; charset=utf-8",
114
- [FARM_DEPLOYMENT_ID_HEADER]: mismatch.serverDeploymentId,
115
- [FARM_DEPLOYMENT_MISMATCH_HEADER]: "1"
116
- }
117
- }
118
- );
119
- }
120
- __name(createFarmDeploymentMismatchResponse, "createFarmDeploymentMismatchResponse");
121
- function withFarmDeploymentResponse(response, deploymentId, options = {}) {
122
- if (!deploymentId) return response;
123
- const headers = new Headers(response.headers);
124
- headers.set(FARM_DEPLOYMENT_ID_HEADER, deploymentId);
125
- if (options.setCookie) {
126
- headers.append(
127
- "Set-Cookie",
128
- createFarmDeploymentCookie(
129
- deploymentId,
130
- options.cookiePath ?? "/",
131
- options.secureCookie ?? false
132
- )
133
- );
134
- }
135
- return new Response(response.body, {
136
- status: response.status,
137
- statusText: response.statusText,
138
- headers
139
- });
140
- }
141
- __name(withFarmDeploymentResponse, "withFarmDeploymentResponse");
142
- function getFarmResponseDeploymentId(response) {
143
- return response.headers.get(FARM_DEPLOYMENT_ID_HEADER)?.trim() || void 0;
144
- }
145
- __name(getFarmResponseDeploymentId, "getFarmResponseDeploymentId");
146
- function isFarmDeploymentMismatchResponse(response, clientDeploymentId) {
147
- const serverDeploymentId = getFarmResponseDeploymentId(response);
148
- if (clientDeploymentId && serverDeploymentId && clientDeploymentId !== serverDeploymentId) {
149
- return true;
150
- }
151
- return response.status === FARM_DEPLOYMENT_MISMATCH_STATUS && response.headers.get(FARM_DEPLOYMENT_MISMATCH_HEADER) === "1";
152
- }
153
- __name(isFarmDeploymentMismatchResponse, "isFarmDeploymentMismatchResponse");
154
- function createFarmDeploymentMismatchError(response, clientDeploymentId) {
155
- return new FarmDeploymentMismatchError(
156
- clientDeploymentId,
157
- getFarmResponseDeploymentId(response) || "unknown"
158
- );
159
- }
160
- __name(createFarmDeploymentMismatchError, "createFarmDeploymentMismatchError");
161
- function createFarmDeploymentCookie(deploymentId, path = "/", secure = false) {
162
- const normalizedPath = path.startsWith("/") ? path : `/${path}`;
163
- return [
164
- `${FARM_DEPLOYMENT_COOKIE}=${encodeURIComponent(deploymentId)}`,
165
- `Path=${normalizedPath}`,
166
- "HttpOnly",
167
- "SameSite=Lax",
168
- secure ? "Secure" : ""
169
- ].filter(Boolean).join("; ");
170
- }
171
- __name(createFarmDeploymentCookie, "createFarmDeploymentCookie");
172
- function readCookie(cookieHeader, name) {
173
- if (!cookieHeader) return void 0;
174
- for (const part of cookieHeader.split(";")) {
175
- const separator = part.indexOf("=");
176
- if (separator === -1 || part.slice(0, separator).trim() !== name) continue;
177
- const value = part.slice(separator + 1).trim();
178
- try {
179
- return decodeURIComponent(value);
180
- } catch {
181
- return value;
182
- }
183
- }
184
- return void 0;
185
- }
186
- __name(readCookie, "readCookie");
187
- function isSafeRequestMethod(method) {
188
- return ["GET", "HEAD", "OPTIONS", "QUERY"].includes(method.toUpperCase());
189
- }
190
- __name(isSafeRequestMethod, "isSafeRequestMethod");
191
- // Annotate the CommonJS export names for ESM import in node:
192
- 0 && (module.exports = {
193
- FARM_DEPLOYMENT_COOKIE,
194
- FARM_DEPLOYMENT_ID_HEADER,
195
- FARM_DEPLOYMENT_MISMATCH_CODE,
196
- FARM_DEPLOYMENT_MISMATCH_HEADER,
197
- FARM_DEPLOYMENT_MISMATCH_STATUS,
198
- FarmDeploymentMismatchError,
199
- createFarmDeploymentCookie,
200
- createFarmDeploymentMismatchError,
201
- createFarmDeploymentMismatchResponse,
202
- createFarmDeploymentRequestHeaders,
203
- getFarmDeploymentMismatch,
204
- getFarmPresetRuntime,
205
- getFarmRequestDeploymentId,
206
- getFarmResponseDeploymentId,
207
- isFarmDeploymentMismatchResponse,
208
- normalizeFarmDeploymentId,
209
- withFarmDeploymentResponse
210
- });
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+ var _chunkC5GUTBZKcjs = require('./chunk-C5GUTBZK.cjs');
20
+ require('./chunk-S3JO3N4H.cjs');
21
+
22
+
23
+
24
+
25
+
26
+
27
+
28
+
29
+
30
+
31
+
32
+
33
+
34
+
35
+
36
+
37
+
38
+
39
+ exports.FARM_DEPLOYMENT_COOKIE = _chunkC5GUTBZKcjs.FARM_DEPLOYMENT_COOKIE; exports.FARM_DEPLOYMENT_ID_HEADER = _chunkC5GUTBZKcjs.FARM_DEPLOYMENT_ID_HEADER; exports.FARM_DEPLOYMENT_MISMATCH_CODE = _chunkC5GUTBZKcjs.FARM_DEPLOYMENT_MISMATCH_CODE; exports.FARM_DEPLOYMENT_MISMATCH_HEADER = _chunkC5GUTBZKcjs.FARM_DEPLOYMENT_MISMATCH_HEADER; exports.FARM_DEPLOYMENT_MISMATCH_STATUS = _chunkC5GUTBZKcjs.FARM_DEPLOYMENT_MISMATCH_STATUS; exports.FarmDeploymentMismatchError = _chunkC5GUTBZKcjs.FarmDeploymentMismatchError; exports.createFarmDeploymentCookie = _chunkC5GUTBZKcjs.createFarmDeploymentCookie; exports.createFarmDeploymentMismatchError = _chunkC5GUTBZKcjs.createFarmDeploymentMismatchError; exports.createFarmDeploymentMismatchResponse = _chunkC5GUTBZKcjs.createFarmDeploymentMismatchResponse; exports.createFarmDeploymentRequestHeaders = _chunkC5GUTBZKcjs.createFarmDeploymentRequestHeaders; exports.getFarmDeploymentMismatch = _chunkC5GUTBZKcjs.getFarmDeploymentMismatch; exports.getFarmPresetRuntime = _chunkC5GUTBZKcjs.getFarmPresetRuntime; exports.getFarmRequestDeploymentId = _chunkC5GUTBZKcjs.getFarmRequestDeploymentId; exports.getFarmResponseDeploymentId = _chunkC5GUTBZKcjs.getFarmResponseDeploymentId; exports.isFarmDeploymentMismatchResponse = _chunkC5GUTBZKcjs.isFarmDeploymentMismatchResponse; exports.normalizeFarmDeploymentId = _chunkC5GUTBZKcjs.normalizeFarmDeploymentId; exports.withFarmDeploymentResponse = _chunkC5GUTBZKcjs.withFarmDeploymentResponse;
@@ -0,0 +1,388 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 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 _chunkU5BMPGS3cjs = require('./chunk-U5BMPGS3.cjs');
4
+ require('./chunk-KR6CKSXT.cjs');
5
+ require('./chunk-QBPXNZGV.cjs');
6
+ require('./chunk-YJRZR7VU.cjs');
7
+ require('./chunk-GDSHDTJ4.cjs');
8
+ require('./chunk-Y4YMF2NQ.cjs');
9
+ require('./chunk-TFAXUHWX.cjs');
10
+ require('./chunk-ISTFC3MZ.cjs');
11
+ require('./chunk-YFPGHF5F.cjs');
12
+
13
+
14
+ var _chunk6EXBPJ24cjs = require('./chunk-6EXBPJ24.cjs');
15
+ require('./chunk-T5CERMEH.cjs');
16
+ require('./chunk-VEKFLAQM.cjs');
17
+ require('./chunk-OHY2ZWUG.cjs');
18
+ require('./chunk-BBVSJVBZ.cjs');
19
+ require('./chunk-K6FNHVDR.cjs');
20
+ require('./chunk-JDNHKPTD.cjs');
21
+ require('./chunk-CMGMGHUZ.cjs');
22
+ require('./chunk-OI6CMLWX.cjs');
23
+ require('./chunk-Z5HIWVDP.cjs');
24
+ require('./chunk-SVRTJOUF.cjs');
25
+ require('./chunk-G643DQCH.cjs');
26
+
27
+
28
+
29
+
30
+ var _chunkMKB2EGIRcjs = require('./chunk-MKB2EGIR.cjs');
31
+ require('./chunk-EM6SBQKM.cjs');
32
+ require('./chunk-HBTUGXHS.cjs');
33
+ require('./chunk-5QIKR7RR.cjs');
34
+ require('./chunk-QNPEUFHQ.cjs');
35
+ require('./chunk-UQZ4AYTH.cjs');
36
+ require('./chunk-NZKJGRB3.cjs');
37
+ require('./chunk-S3A45T7F.cjs');
38
+ require('./chunk-R5JIFR6B.cjs');
39
+ require('./chunk-C5GUTBZK.cjs');
40
+ require('./chunk-ZEG3OPIB.cjs');
41
+ require('./chunk-DVM4FKZL.cjs');
42
+ require('./chunk-OX6O6WVA.cjs');
43
+ require('./chunk-US2QVW3E.cjs');
44
+ require('./chunk-BIDYX3SL.cjs');
45
+ require('./chunk-I57LW5VZ.cjs');
46
+ require('./chunk-NO3WWW3N.cjs');
47
+
48
+
49
+ var _chunkS3JO3N4Hcjs = require('./chunk-S3JO3N4H.cjs');
50
+
51
+ // src/devtools.ts
52
+ var _path = require('path'); var _path2 = _interopRequireDefault(_path);
53
+ function normalizePath(value) {
54
+ return value.replace(/\\/g, "/");
55
+ }
56
+ _chunkS3JO3N4Hcjs.__name.call(void 0, normalizePath, "normalizePath");
57
+ function toProjectPath(root, filePath) {
58
+ const normalizedRoot = normalizePath(root).replace(/\/$/, "");
59
+ const normalizedFile = normalizePath(filePath);
60
+ if (normalizedFile.startsWith(normalizedRoot + "/")) {
61
+ return normalizedFile.slice(normalizedRoot.length + 1);
62
+ }
63
+ return normalizedFile;
64
+ }
65
+ _chunkS3JO3N4Hcjs.__name.call(void 0, toProjectPath, "toProjectPath");
66
+ function sortByPath(items) {
67
+ return [...items].sort(
68
+ (a, b) => (a.path || a.pattern || "").localeCompare(b.path || b.pattern || "")
69
+ );
70
+ }
71
+ _chunkS3JO3N4Hcjs.__name.call(void 0, sortByPath, "sortByPath");
72
+ function toRuntime(value) {
73
+ return {
74
+ runtime: value.runtime,
75
+ ...value.regions ? { regions: [...value.regions] } : {},
76
+ ...value.maxDuration ? { maxDuration: value.maxDuration } : {}
77
+ };
78
+ }
79
+ _chunkS3JO3N4Hcjs.__name.call(void 0, toRuntime, "toRuntime");
80
+ async function collectRoutes(root, kind, routes, routeManager, diagnostics) {
81
+ return Promise.all(
82
+ Array.from(routes.values()).map(async (route) => {
83
+ let runtime;
84
+ if (kind === "page" && routeManager.resolveRouteRuntimeConfig) {
85
+ try {
86
+ runtime = toRuntime(await routeManager.resolveRouteRuntimeConfig(route.pattern));
87
+ } catch (error) {
88
+ diagnostics.push({
89
+ severity: "warning",
90
+ code: "ROUTE_RUNTIME_UNRESOLVED",
91
+ title: `Could not inspect ${route.pattern}`,
92
+ message: error instanceof Error ? error.message : String(error),
93
+ action: "Check the route and inherited layout runtime exports."
94
+ });
95
+ }
96
+ }
97
+ return {
98
+ kind,
99
+ pattern: route.pattern,
100
+ filePath: toProjectPath(root, route.modulePath),
101
+ ...runtime ? { runtime } : {}
102
+ };
103
+ })
104
+ );
105
+ }
106
+ _chunkS3JO3N4Hcjs.__name.call(void 0, collectRoutes, "collectRoutes");
107
+ function collectIntegrations(integrations) {
108
+ if (!integrations || typeof integrations !== "object") return [];
109
+ return Object.entries(integrations).filter((entry) => Boolean(entry[1])).map(([key, value]) => {
110
+ const integration = value;
111
+ const routes = (integration.routes || []).map((route) => ({
112
+ path: route.path,
113
+ methods: [...route.methods || (route.method ? [route.method] : ["ALL"])].map((method) => method.toUpperCase()).sort()
114
+ }));
115
+ return {
116
+ key,
117
+ type: integration.type || key,
118
+ category: integration.category || "custom",
119
+ serverRuntime: integration.serverRuntime !== false,
120
+ routes: sortByPath(routes),
121
+ middlewareCount: _optionalChain([integration, 'access', _ => _.middleware, 'optionalAccess', _2 => _2.length]) || 0,
122
+ providerCount: _optionalChain([integration, 'access', _3 => _3.providers, 'optionalAccess', _4 => _4.length]) || 0,
123
+ schemaModelCount: Object.keys(_optionalChain([integration, 'access', _5 => _5.schema, 'optionalAccess', _6 => _6.models]) || {}).length
124
+ };
125
+ }).sort((a, b) => a.key.localeCompare(b.key));
126
+ }
127
+ _chunkS3JO3N4Hcjs.__name.call(void 0, collectIntegrations, "collectIntegrations");
128
+ function collectStorage(storage) {
129
+ if (!storage || typeof storage !== "object") {
130
+ return {
131
+ entries: [{ mount: "root", driver: "memory", default: true }],
132
+ configured: false
133
+ };
134
+ }
135
+ const value = storage;
136
+ if (value.kind === "farm-storage-client") {
137
+ return {
138
+ entries: [{ mount: "root", driver: "storage client", default: false }],
139
+ configured: true
140
+ };
141
+ }
142
+ const configured = Object.keys(value).length > 0;
143
+ const rootDriver = value.client ? describeStorageDriver(value.client) : describeStorageDriver(value.driver);
144
+ const entries = [
145
+ {
146
+ mount: "root",
147
+ driver: rootDriver,
148
+ default: !configured
149
+ }
150
+ ];
151
+ if (value.mounts && typeof value.mounts === "object") {
152
+ for (const [mount, mountConfig] of Object.entries(value.mounts)) {
153
+ entries.push({
154
+ mount,
155
+ driver: describeStorageDriver(mountConfig),
156
+ default: false
157
+ });
158
+ }
159
+ }
160
+ return {
161
+ entries: entries.sort((a, b) => {
162
+ if (a.mount === "root") return -1;
163
+ if (b.mount === "root") return 1;
164
+ return a.mount.localeCompare(b.mount);
165
+ }),
166
+ configured
167
+ };
168
+ }
169
+ _chunkS3JO3N4Hcjs.__name.call(void 0, collectStorage, "collectStorage");
170
+ function describeStorageDriver(value) {
171
+ if (!value) return "memory";
172
+ if (typeof value === "string") return value;
173
+ if (typeof value === "function") return "custom";
174
+ if (typeof value !== "object") return "custom";
175
+ const record = value;
176
+ if (record.kind === "farm-storage-client") return "storage client";
177
+ if (typeof record.driver === "string") return record.driver;
178
+ if (typeof record.driver === "function") return "custom";
179
+ return "custom";
180
+ }
181
+ _chunkS3JO3N4Hcjs.__name.call(void 0, describeStorageDriver, "describeStorageDriver");
182
+ function featureEnabled(value) {
183
+ if (!value) return false;
184
+ if (typeof value === "object" && "enabled" in value) {
185
+ return value.enabled !== false;
186
+ }
187
+ return value !== false;
188
+ }
189
+ _chunkS3JO3N4Hcjs.__name.call(void 0, featureEnabled, "featureEnabled");
190
+ function collectEnvironmentKeys(config) {
191
+ const env = _optionalChain([config, 'optionalAccess', _7 => _7.env]);
192
+ return {
193
+ server: Object.keys(_optionalChain([env, 'optionalAccess', _8 => _8.server]) || {}).sort(),
194
+ public: Object.keys(_optionalChain([env, 'optionalAccess', _9 => _9.public]) || {}).sort()
195
+ };
196
+ }
197
+ _chunkS3JO3N4Hcjs.__name.call(void 0, collectEnvironmentKeys, "collectEnvironmentKeys");
198
+ function resolveHealth(diagnostics) {
199
+ if (diagnostics.some((diagnostic) => diagnostic.severity === "error")) return "error";
200
+ if (diagnostics.some((diagnostic) => diagnostic.severity === "warning")) return "attention";
201
+ return "ready";
202
+ }
203
+ _chunkS3JO3N4Hcjs.__name.call(void 0, resolveHealth, "resolveHealth");
204
+ async function createFarmDevtoolsSnapshot(input) {
205
+ const config = input.config || {};
206
+ const diagnostics = [];
207
+ const pageRoutes = await collectRoutes(
208
+ input.root,
209
+ "page",
210
+ input.routeManager.getRoutes(),
211
+ input.routeManager,
212
+ diagnostics
213
+ );
214
+ const layoutRoutes = await collectRoutes(
215
+ input.root,
216
+ "layout",
217
+ input.routeManager.getLayouts(),
218
+ input.routeManager,
219
+ diagnostics
220
+ );
221
+ const loadingRoutes = await collectRoutes(
222
+ input.root,
223
+ "loading",
224
+ input.routeManager.getLoadings(),
225
+ input.routeManager,
226
+ diagnostics
227
+ );
228
+ const errorRoutes = await collectRoutes(
229
+ input.root,
230
+ "error",
231
+ input.routeManager.getErrors(),
232
+ input.routeManager,
233
+ diagnostics
234
+ );
235
+ const apiRoutes = sortByPath(
236
+ Array.from(input.apiRouteManager.getRoutes().values()).map((route) => {
237
+ const runtime = _chunkMKB2EGIRcjs.resolveFarmRouteRuntimeConfig.call(void 0,
238
+ _chunkMKB2EGIRcjs.mergeFarmRouteRuntimeConfigs.call(void 0,
239
+ _chunkMKB2EGIRcjs.resolveFarmRouteRuleRuntimeConfig.call(void 0, route.path, config.routeRules),
240
+ route
241
+ ),
242
+ `API route "${route.path}"`
243
+ );
244
+ return {
245
+ path: route.path,
246
+ methods: [...route.methods].sort(),
247
+ filePath: toProjectPath(input.root, route.filePath),
248
+ runtime: toRuntime(runtime)
249
+ };
250
+ })
251
+ );
252
+ const middleware = sortByPath(
253
+ input.middlewareManager.getMiddlewares().map((entry) => ({
254
+ path: entry.path,
255
+ source: entry.source || "file",
256
+ filePath: toProjectPath(input.root, entry.filePath),
257
+ handlerCount: entry.handlers.length
258
+ }))
259
+ );
260
+ const integrations = collectIntegrations(config.integrations);
261
+ const storage = collectStorage(config.storage);
262
+ const cron = _chunk6EXBPJ24cjs.resolveCronConfig.call(void 0, config.cron);
263
+ const workflows = (input.workflows || []).map((workflow) => ({
264
+ id: workflow.id,
265
+ filePath: toProjectPath(input.root, workflow.filePath),
266
+ routePath: workflow.routePath,
267
+ schedule: [...workflow.schedule],
268
+ ...workflow.timezone ? { timezone: workflow.timezone } : {}
269
+ })).sort((a, b) => a.id.localeCompare(b.id));
270
+ const layers = (config.layers || []).map((layer) => ({
271
+ name: layer.name,
272
+ source: layer.source,
273
+ srcDir: layer.srcDir
274
+ }));
275
+ const deploymentPreset = String(_optionalChain([config, 'access', _10 => _10.deploy, 'optionalAccess', _11 => _11.preset]) || config.preset || "node-server");
276
+ const deploymentTarget = String(
277
+ _optionalChain([config, 'access', _12 => _12.deploy, 'optionalAccess', _13 => _13.target]) || _chunkU5BMPGS3cjs.getDeployTargetForPreset.call(void 0, deploymentPreset) || "node"
278
+ );
279
+ const env = input.env || process.env;
280
+ if (pageRoutes.length === 0) {
281
+ diagnostics.push({
282
+ severity: "warning",
283
+ code: "NO_PAGE_ROUTES",
284
+ title: "No page routes found",
285
+ message: `Farm did not discover a page under ${input.srcDir}/app.`,
286
+ action: `Add ${input.srcDir}/app/page.tsx or a programmatic page route.`
287
+ });
288
+ }
289
+ if (layoutRoutes.length === 0) {
290
+ diagnostics.push({
291
+ severity: "warning",
292
+ code: "ROOT_LAYOUT_MISSING",
293
+ title: "Root layout is missing",
294
+ message: "The application has no shared root layout.",
295
+ action: `Add ${input.srcDir}/app/layout.tsx for shared metadata and application chrome.`
296
+ });
297
+ }
298
+ const apiPaths = new Set(apiRoutes.map((route) => route.path));
299
+ for (const job of cron.jobs) {
300
+ if (!apiPaths.has(job.path)) {
301
+ diagnostics.push({
302
+ severity: "warning",
303
+ code: "CRON_ROUTE_MISSING",
304
+ title: `Cron route ${job.path} was not found`,
305
+ message: `${job.name} is scheduled, but its GET API route is not registered.`,
306
+ action: "Add the target API route or update the cron path in farm.config.ts."
307
+ });
308
+ }
309
+ }
310
+ if (cron.jobs.length > 0 && !env[cron.secretEnv]) {
311
+ diagnostics.push({
312
+ severity: "info",
313
+ code: "CRON_SECRET_NOT_SET",
314
+ title: `${cron.secretEnv} is not set`,
315
+ message: "Local manual runs remain available, but production cron routes fail closed.",
316
+ action: `Set ${cron.secretEnv} in the deployment environment before production.`
317
+ });
318
+ }
319
+ if (storage.configured && _optionalChain([storage, 'access', _14 => _14.entries, 'access', _15 => _15[0], 'optionalAccess', _16 => _16.driver]) === "memory" && ["vercel", "cloudflare", "netlify"].includes(deploymentTarget)) {
320
+ diagnostics.push({
321
+ severity: "warning",
322
+ code: "EPHEMERAL_PRODUCTION_STORAGE",
323
+ title: "Production storage is in memory",
324
+ message: `${deploymentTarget} instances do not preserve in-memory data across executions.`,
325
+ action: "Configure a durable storage driver or mount for production state."
326
+ });
327
+ }
328
+ const environment = collectEnvironmentKeys(config);
329
+ const docs = config.docs;
330
+ const docsEnabled = featureEnabled(docs);
331
+ const allRoutes = sortByPath([...pageRoutes, ...layoutRoutes, ...loadingRoutes, ...errorRoutes]);
332
+ return {
333
+ generatedAt: (_optionalChain([input, 'access', _17 => _17.now, 'optionalCall', _18 => _18()]) || /* @__PURE__ */ new Date()).toISOString(),
334
+ health: resolveHealth(diagnostics),
335
+ project: {
336
+ name: _path2.default.basename(_path2.default.resolve(input.root)),
337
+ root: input.root,
338
+ srcDir: input.srcDir,
339
+ basePath: config.basePath || "/",
340
+ deploymentId: config.deploymentId || "development"
341
+ },
342
+ deployment: {
343
+ target: deploymentTarget,
344
+ preset: deploymentPreset,
345
+ ..._optionalChain([config, 'access', _19 => _19.deploy, 'optionalAccess', _20 => _20.outputDir]) ? { outputDir: config.deploy.outputDir } : {}
346
+ },
347
+ counts: {
348
+ pages: pageRoutes.length,
349
+ layouts: layoutRoutes.length,
350
+ loadingBoundaries: loadingRoutes.length,
351
+ errorBoundaries: errorRoutes.length,
352
+ apiRoutes: apiRoutes.length,
353
+ middleware: middleware.length,
354
+ integrations: integrations.length,
355
+ storageMounts: storage.entries.length,
356
+ cronJobs: cron.jobs.length,
357
+ workflows: workflows.length,
358
+ layers: layers.length,
359
+ diagnostics: diagnostics.length
360
+ },
361
+ routes: allRoutes,
362
+ apiRoutes,
363
+ middleware,
364
+ integrations,
365
+ storage: storage.entries,
366
+ cron: cron.jobs,
367
+ workflows,
368
+ layers,
369
+ environment,
370
+ docs: {
371
+ enabled: docsEnabled,
372
+ entry: docsEnabled && docs && typeof docs === "object" && "entry" in docs ? String(docs.entry) : void 0
373
+ },
374
+ features: {
375
+ openapi: Boolean(_optionalChain([config, 'access', _21 => _21.openapi, 'optionalAccess', _22 => _22.enabled])),
376
+ markdown: featureEnabled(config.md),
377
+ serverComponents: Boolean(_optionalChain([config, 'access', _23 => _23.experimental, 'optionalAccess', _24 => _24.serverComponents])),
378
+ serverActions: Boolean(_optionalChain([config, 'access', _25 => _25.experimental, 'optionalAccess', _26 => _26.serverActions])),
379
+ optimizedBoundary: Boolean(_optionalChain([config, 'access', _27 => _27.experimental, 'optionalAccess', _28 => _28.optimizedBoundary])),
380
+ observability: featureEnabled(config.observability)
381
+ },
382
+ diagnostics
383
+ };
384
+ }
385
+ _chunkS3JO3N4Hcjs.__name.call(void 0, createFarmDevtoolsSnapshot, "createFarmDevtoolsSnapshot");
386
+
387
+
388
+ exports.createFarmDevtoolsSnapshot = createFarmDevtoolsSnapshot;
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  getDeployTargetForPreset
3
- } from "./chunk-QGVJVSNX.mjs";
3
+ } from "./chunk-V4AICMQA.mjs";
4
4
  import "./chunk-XZNTNMHT.mjs";
5
5
  import "./chunk-FZC7EEPM.mjs";
6
6
  import "./chunk-JBSVKMC5.mjs";
7
7
  import "./chunk-7WPA7GBZ.mjs";
8
8
  import "./chunk-IILNZK5G.mjs";
9
9
  import "./chunk-OLYK7EAK.mjs";
10
- import "./chunk-ZCNJKLA2.mjs";
10
+ import "./chunk-7BC6GAL7.mjs";
11
11
  import "./chunk-G2KY33I6.mjs";
12
12
  import {
13
13
  resolveCronConfig
@@ -15,7 +15,7 @@ import {
15
15
  import "./chunk-QCFFHV5H.mjs";
16
16
  import "./chunk-4OOBRCJX.mjs";
17
17
  import "./chunk-FA2W42OV.mjs";
18
- import "./chunk-SXHV42UQ.mjs";
18
+ import "./chunk-OFEY6KHO.mjs";
19
19
  import "./chunk-EGJDUF4Q.mjs";
20
20
  import "./chunk-2UC36WAC.mjs";
21
21
  import "./chunk-ONUEYC6N.mjs";