devflare 1.0.0-next.19 → 1.0.0-next.20

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 (360) hide show
  1. package/LLM.md +6807 -888
  2. package/README.md +375 -957
  3. package/dist/account-05zgta47.js +475 -0
  4. package/dist/account-b2ag1esh.js +475 -0
  5. package/dist/account-bxtcz61a.js +475 -0
  6. package/dist/account-gyfqg964.js +475 -0
  7. package/dist/account-q6pvs9d9.js +475 -0
  8. package/dist/account-rp4zbvw1.js +475 -0
  9. package/dist/bridge/client.d.ts +5 -0
  10. package/dist/bridge/client.d.ts.map +1 -1
  11. package/dist/bridge/gateway-runtime.d.ts +1 -1
  12. package/dist/bridge/gateway-runtime.d.ts.map +1 -1
  13. package/dist/bridge/miniflare.d.ts +67 -0
  14. package/dist/bridge/miniflare.d.ts.map +1 -1
  15. package/dist/bridge/proxy.d.ts +2 -1
  16. package/dist/bridge/proxy.d.ts.map +1 -1
  17. package/dist/bridge/server.d.ts.map +1 -1
  18. package/dist/browser.d.ts +2520 -40
  19. package/dist/browser.d.ts.map +1 -1
  20. package/dist/browser.js +3 -3
  21. package/dist/build-2s5paw5p.js +54 -0
  22. package/dist/build-4c350cp7.js +54 -0
  23. package/dist/build-e7wym63t.js +54 -0
  24. package/dist/build-ge6qp3t4.js +54 -0
  25. package/dist/build-ta8c6t11.js +54 -0
  26. package/dist/build-wvjj8f28.js +54 -0
  27. package/dist/build-ypg6f2kw.js +54 -0
  28. package/dist/build-yts8wwgf.js +54 -0
  29. package/dist/build-yzkdqexs.js +54 -0
  30. package/dist/cli/build-manifest.d.ts +12 -0
  31. package/dist/cli/build-manifest.d.ts.map +1 -1
  32. package/dist/cli/commands/deploy/metadata.d.ts +18 -0
  33. package/dist/cli/commands/deploy/metadata.d.ts.map +1 -0
  34. package/dist/cli/commands/deploy/prepare.d.ts +23 -0
  35. package/dist/cli/commands/deploy/prepare.d.ts.map +1 -0
  36. package/dist/cli/commands/deploy/runtime.d.ts +4 -0
  37. package/dist/cli/commands/deploy/runtime.d.ts.map +1 -0
  38. package/dist/cli/commands/deploy/verification.d.ts +36 -0
  39. package/dist/cli/commands/deploy/verification.d.ts.map +1 -0
  40. package/dist/cli/commands/deploy.d.ts +2 -2
  41. package/dist/cli/commands/deploy.d.ts.map +1 -1
  42. package/dist/cli/commands/secrets.d.ts +4 -0
  43. package/dist/cli/commands/secrets.d.ts.map +1 -0
  44. package/dist/cli/commands/type-generation/generator.d.ts +67 -1
  45. package/dist/cli/commands/type-generation/generator.d.ts.map +1 -1
  46. package/dist/cli/help-pages/pages/core.d.ts +1 -1
  47. package/dist/cli/help-pages/pages/core.d.ts.map +1 -1
  48. package/dist/cli/help-pages/shared.d.ts +1 -1
  49. package/dist/cli/help-pages/shared.d.ts.map +1 -1
  50. package/dist/cli/index.d.ts.map +1 -1
  51. package/dist/cli/index.js +2 -2
  52. package/dist/cli/package-metadata.d.ts.map +1 -1
  53. package/dist/cli/preview-bindings.d.ts.map +1 -1
  54. package/dist/cloudflare/index.js +2 -2
  55. package/dist/cloudflare/preview-registry-store.d.ts +1 -1
  56. package/dist/cloudflare/preview-registry-store.d.ts.map +1 -1
  57. package/dist/cloudflare/types.d.ts +1 -1
  58. package/dist/cloudflare/types.d.ts.map +1 -1
  59. package/dist/config/binding-resolution-helpers.d.ts +5 -0
  60. package/dist/config/binding-resolution-helpers.d.ts.map +1 -1
  61. package/dist/config/compiler/bindings.d.ts +14 -0
  62. package/dist/config/compiler/bindings.d.ts.map +1 -0
  63. package/dist/config/compiler/core-helpers.d.ts +6 -0
  64. package/dist/config/compiler/core-helpers.d.ts.map +1 -0
  65. package/dist/config/compiler/do-workers.d.ts +34 -0
  66. package/dist/config/compiler/do-workers.d.ts.map +1 -0
  67. package/dist/config/compiler/paths.d.ts +18 -0
  68. package/dist/config/compiler/paths.d.ts.map +1 -0
  69. package/dist/config/compiler/types.d.ts +267 -0
  70. package/dist/config/compiler/types.d.ts.map +1 -0
  71. package/dist/config/compiler.d.ts +11 -175
  72. package/dist/config/compiler.d.ts.map +1 -1
  73. package/dist/config/deploy-resources.d.ts.map +1 -1
  74. package/dist/config/index.d.ts +1 -1
  75. package/dist/config/index.d.ts.map +1 -1
  76. package/dist/config/local-dev-vars.d.ts +15 -0
  77. package/dist/config/local-dev-vars.d.ts.map +1 -0
  78. package/dist/config/preview-resources.d.ts.map +1 -1
  79. package/dist/config/preview.d.ts.map +1 -1
  80. package/dist/config/resolve.d.ts.map +1 -1
  81. package/dist/config/resource-resolution.d.ts.map +1 -1
  82. package/dist/config/schema-bindings.d.ts +559 -19
  83. package/dist/config/schema-bindings.d.ts.map +1 -1
  84. package/dist/config/schema-env.d.ts +1306 -34
  85. package/dist/config/schema-env.d.ts.map +1 -1
  86. package/dist/config/schema-normalization.d.ts +97 -1
  87. package/dist/config/schema-normalization.d.ts.map +1 -1
  88. package/dist/config/schema-runtime.d.ts +245 -7
  89. package/dist/config/schema-runtime.d.ts.map +1 -1
  90. package/dist/config/schema.d.ts +2976 -57
  91. package/dist/config/schema.d.ts.map +1 -1
  92. package/dist/config-6m0n7d84.js +59 -0
  93. package/dist/config-7cf004ag.js +59 -0
  94. package/dist/config-b98dp58n.js +59 -0
  95. package/dist/config-cf3djhqy.js +59 -0
  96. package/dist/config-entry.js +1 -1
  97. package/dist/config-wa7hm0w9.js +59 -0
  98. package/dist/deploy-1jfagtn9.js +1055 -0
  99. package/dist/deploy-2afw0jfg.js +1055 -0
  100. package/dist/deploy-2fzj68kq.js +1055 -0
  101. package/dist/deploy-57nzn9wj.js +1045 -0
  102. package/dist/deploy-asyryrvm.js +1055 -0
  103. package/dist/deploy-hc927rw6.js +1045 -0
  104. package/dist/deploy-pnnf8tgy.js +1045 -0
  105. package/dist/deploy-q33bw715.js +1055 -0
  106. package/dist/deploy-tmdgecs3.js +1055 -0
  107. package/dist/deploy-v0y8kczr.js +1055 -0
  108. package/dist/deploy-xhj6zbcx.js +1055 -0
  109. package/dist/dev-1mvcts8w.js +2515 -0
  110. package/dist/dev-2a283xts.js +2515 -0
  111. package/dist/dev-62nhytf8.js +2505 -0
  112. package/dist/dev-75acm2xj.js +2478 -0
  113. package/dist/dev-802rg9dp.js +2515 -0
  114. package/dist/dev-d1bb2t0f.js +2515 -0
  115. package/dist/dev-dwry8494.js +2489 -0
  116. package/dist/dev-g6112y4w.js +2515 -0
  117. package/dist/dev-h2kneh95.js +2496 -0
  118. package/dist/dev-kybq3mwr.js +2489 -0
  119. package/dist/dev-n8qndkyg.js +2512 -0
  120. package/dist/dev-p32fkbwf.js +2489 -0
  121. package/dist/dev-qm9d4mfh.js +2478 -0
  122. package/dist/dev-rcthnse5.js +2473 -0
  123. package/dist/dev-server/dev-server-state.d.ts +1 -0
  124. package/dist/dev-server/dev-server-state.d.ts.map +1 -1
  125. package/dist/dev-server/miniflare-bindings.d.ts +44 -1
  126. package/dist/dev-server/miniflare-bindings.d.ts.map +1 -1
  127. package/dist/dev-server/miniflare-dev-config.d.ts +1 -0
  128. package/dist/dev-server/miniflare-dev-config.d.ts.map +1 -1
  129. package/dist/dev-server/miniflare-log.d.ts +8 -0
  130. package/dist/dev-server/miniflare-log.d.ts.map +1 -1
  131. package/dist/dev-server/miniflare-worker-config.d.ts +31 -1
  132. package/dist/dev-server/miniflare-worker-config.d.ts.map +1 -1
  133. package/dist/dev-server/server.d.ts.map +1 -1
  134. package/dist/dev-server/vite-process.d.ts +1 -0
  135. package/dist/dev-server/vite-process.d.ts.map +1 -1
  136. package/dist/dev-tgwja5mz.js +2496 -0
  137. package/dist/doctor-2shhdak6.js +245 -0
  138. package/dist/doctor-5g73w40j.js +245 -0
  139. package/dist/doctor-gamefzcs.js +245 -0
  140. package/dist/doctor-rn53ctfs.js +245 -0
  141. package/dist/index-01kehw41.js +348 -0
  142. package/dist/index-06bg0z9y.js +185 -0
  143. package/dist/index-0d7tw5r4.js +136 -0
  144. package/dist/index-0m6e4mxz.js +133 -0
  145. package/dist/index-0vah20er.js +1410 -0
  146. package/dist/index-0wa0ebm1.js +68 -0
  147. package/dist/index-1714y3cz.js +1410 -0
  148. package/dist/index-1qs5gcm7.js +895 -0
  149. package/dist/index-29k04v43.js +574 -0
  150. package/dist/index-2jywf4pz.js +1372 -0
  151. package/dist/index-2qhk9nbx.js +1372 -0
  152. package/dist/index-2vq6bveq.js +574 -0
  153. package/dist/index-36h8gkhb.js +1088 -0
  154. package/dist/index-38fq7pww.js +560 -0
  155. package/dist/index-3bxqn033.js +1410 -0
  156. package/dist/index-3jme4hgw.js +1234 -0
  157. package/dist/index-3p7s9mk9.js +360 -0
  158. package/dist/index-47w35sft.js +244 -0
  159. package/dist/index-4by4c7rm.js +52 -0
  160. package/dist/index-4phjwd6h.js +412 -0
  161. package/dist/index-4z5jrw0j.js +594 -0
  162. package/dist/index-51mzqy0d.js +895 -0
  163. package/dist/index-53pqqpq9.js +74 -0
  164. package/dist/index-5enq8ntr.js +1766 -0
  165. package/dist/index-5fnq9r9m.js +1410 -0
  166. package/dist/index-5w9f2b17.js +695 -0
  167. package/dist/index-627srx16.js +45 -0
  168. package/dist/index-6bqgf5x8.js +227 -0
  169. package/dist/index-6xknvbyk.js +1088 -0
  170. package/dist/index-7ef3ktz5.js +1372 -0
  171. package/dist/index-7hpjfdzh.js +185 -0
  172. package/dist/index-8052df4m.js +627 -0
  173. package/dist/index-82epjzrr.js +1410 -0
  174. package/dist/index-82z7rvz6.js +1238 -0
  175. package/dist/index-8atc1yb9.js +68 -0
  176. package/dist/index-8tj0awnv.js +476 -0
  177. package/dist/index-8x745h59.js +1069 -0
  178. package/dist/index-9bawzcny.js +574 -0
  179. package/dist/index-9bjjqdfc.js +236 -0
  180. package/dist/index-9d7x3vfr.js +236 -0
  181. package/dist/index-9nf8zs4p.js +1069 -0
  182. package/dist/index-acwbmagz.js +412 -0
  183. package/dist/index-aqjdaem7.js +74 -0
  184. package/dist/index-b6448fd0.js +133 -0
  185. package/dist/index-b9j55r7q.js +240 -0
  186. package/dist/index-bdatd1za.js +1372 -0
  187. package/dist/index-c3nxftnp.js +699 -0
  188. package/dist/index-c643s0gv.js +488 -0
  189. package/dist/index-d2md1j3d.js +185 -0
  190. package/dist/index-dbr6bfz6.js +528 -0
  191. package/dist/index-dd1g0g7e.js +360 -0
  192. package/dist/index-dktb9az5.js +1372 -0
  193. package/dist/index-dm9q84c7.js +360 -0
  194. package/dist/index-f51mkh13.js +1088 -0
  195. package/dist/index-f86n1fpd.js +55 -0
  196. package/dist/index-fnk0tkw7.js +412 -0
  197. package/dist/index-g5aq66bj.js +1534 -0
  198. package/dist/index-gj5qh491.js +54 -0
  199. package/dist/index-gq39t0rx.js +895 -0
  200. package/dist/index-h5dqna7q.js +1410 -0
  201. package/dist/index-hjs9j2g9.js +895 -0
  202. package/dist/index-hn5nbxbt.js +147 -0
  203. package/dist/index-hpjh0qjx.js +1723 -0
  204. package/dist/index-hs6ekcfs.js +412 -0
  205. package/dist/index-jdzrvnfj.js +52 -0
  206. package/dist/index-jg720mq7.js +476 -0
  207. package/dist/index-jrzddxvt.js +2167 -0
  208. package/dist/index-kgstnk6g.js +239 -0
  209. package/dist/index-khnw972v.js +117 -0
  210. package/dist/index-kwqff3ba.js +1410 -0
  211. package/dist/index-m2v0fj08.js +74 -0
  212. package/dist/index-mjve6tqn.js +447 -0
  213. package/dist/index-mkxzgn0q.js +1372 -0
  214. package/dist/index-mzmq3v0d.js +1088 -0
  215. package/dist/index-ng9n3znd.js +1372 -0
  216. package/dist/index-nhbkm2ba.js +467 -0
  217. package/dist/index-nrfhk0k5.js +1088 -0
  218. package/dist/index-p0zppqxm.js +467 -0
  219. package/dist/index-pkxf6h87.js +895 -0
  220. package/dist/index-pqp4312v.js +52 -0
  221. package/dist/index-pw9jn6kz.js +574 -0
  222. package/dist/index-q31ne0xa.js +412 -0
  223. package/dist/index-qf2dkqxh.js +249 -0
  224. package/dist/index-qmtdf7k5.js +639 -0
  225. package/dist/index-qwgr4q7s.js +37 -0
  226. package/dist/index-rab2dfh3.js +494 -0
  227. package/dist/index-rz7rx80s.js +1410 -0
  228. package/dist/index-s37h3jgk.js +572 -0
  229. package/dist/index-sb705m7d.js +52 -0
  230. package/dist/index-syscwrjp.js +1576 -0
  231. package/dist/index-t14zr0ys.js +1063 -0
  232. package/dist/index-tjc99447.js +68 -0
  233. package/dist/index-v35460hf.js +574 -0
  234. package/dist/index-v7q00d1e.js +1410 -0
  235. package/dist/index-vkkmx4xe.js +1372 -0
  236. package/dist/index-vrps1gky.js +2202 -0
  237. package/dist/index-w4c9vmvg.js +1517 -0
  238. package/dist/index-wqd8n2qk.js +574 -0
  239. package/dist/index-x12e6fzy.js +476 -0
  240. package/dist/index-xagpz645.js +2199 -0
  241. package/dist/index-xbth1r6e.js +572 -0
  242. package/dist/index-xm9fqhcb.js +447 -0
  243. package/dist/index-y59hnmd0.js +132 -0
  244. package/dist/index-y7mkb00x.js +133 -0
  245. package/dist/index-z40mjts9.js +212 -0
  246. package/dist/index-z5k5bjc7.js +1218 -0
  247. package/dist/index-z73sytma.js +895 -0
  248. package/dist/index-zjv6apef.js +1410 -0
  249. package/dist/index.js +8 -8
  250. package/dist/init-cwpergap.js +180 -0
  251. package/dist/login-83bjfhvz.js +77 -0
  252. package/dist/login-ddw888xb.js +77 -0
  253. package/dist/login-e7pytkdc.js +77 -0
  254. package/dist/login-fe0brfcr.js +77 -0
  255. package/dist/login-h7sm5trm.js +77 -0
  256. package/dist/login-vd0m3xr4.js +77 -0
  257. package/dist/previews-2wfvsjfy.js +1337 -0
  258. package/dist/previews-31feb8r3.js +1337 -0
  259. package/dist/previews-3w4pxqby.js +1337 -0
  260. package/dist/previews-93ttrf5f.js +1337 -0
  261. package/dist/previews-bdrefjzx.js +1337 -0
  262. package/dist/previews-cfcn56b4.js +1337 -0
  263. package/dist/previews-mssq1hrm.js +1337 -0
  264. package/dist/previews-tcaz1gt8.js +1337 -0
  265. package/dist/productions-4h80j2c7.js +505 -0
  266. package/dist/productions-86jaqt7m.js +505 -0
  267. package/dist/productions-bn2q31my.js +505 -0
  268. package/dist/productions-dv8g7f6g.js +505 -0
  269. package/dist/productions-e2m9s4tr.js +505 -0
  270. package/dist/productions-fgshs1m7.js +505 -0
  271. package/dist/productions-hphmt68n.js +505 -0
  272. package/dist/productions-vhq7yx86.js +505 -0
  273. package/dist/runtime/index.js +8 -8
  274. package/dist/secrets/local-secrets.d.ts +46 -0
  275. package/dist/secrets/local-secrets.d.ts.map +1 -0
  276. package/dist/secrets-8wcj47nh.js +91 -0
  277. package/dist/secrets-b2ww34ta.js +91 -0
  278. package/dist/secrets-b7g4z621.js +91 -0
  279. package/dist/shims/local-media-bindings.d.ts +19 -0
  280. package/dist/shims/local-media-bindings.d.ts.map +1 -0
  281. package/dist/shims/local-worker-loader.d.ts +3 -0
  282. package/dist/shims/local-worker-loader.d.ts.map +1 -0
  283. package/dist/sveltekit/index.js +163 -26
  284. package/dist/sveltekit/local-bindings.d.ts +4 -0
  285. package/dist/sveltekit/local-bindings.d.ts.map +1 -0
  286. package/dist/sveltekit/platform.d.ts +8 -0
  287. package/dist/sveltekit/platform.d.ts.map +1 -1
  288. package/dist/test/ai-search.d.ts +39 -0
  289. package/dist/test/ai-search.d.ts.map +1 -0
  290. package/dist/test/binding-hints.d.ts.map +1 -1
  291. package/dist/test/cf.d.ts +3 -3
  292. package/dist/test/containers.d.ts +87 -0
  293. package/dist/test/containers.d.ts.map +1 -0
  294. package/dist/test/index.d.ts +4 -1
  295. package/dist/test/index.d.ts.map +1 -1
  296. package/dist/test/index.js +2833 -543
  297. package/dist/test/local-worker-loader.d.ts +3 -0
  298. package/dist/test/local-worker-loader.d.ts.map +1 -0
  299. package/dist/test/offline-bindings.d.ts +65 -0
  300. package/dist/test/offline-bindings.d.ts.map +1 -0
  301. package/dist/test/queue.d.ts.map +1 -1
  302. package/dist/test/remote-ai.d.ts.map +1 -1
  303. package/dist/test/should-skip.d.ts +14 -0
  304. package/dist/test/should-skip.d.ts.map +1 -1
  305. package/dist/test/simple-context-bindings.d.ts.map +1 -1
  306. package/dist/test/simple-context-durable-objects.d.ts.map +1 -1
  307. package/dist/test/simple-context-gateway-script.d.ts +1 -1
  308. package/dist/test/simple-context-gateway-script.d.ts.map +1 -1
  309. package/dist/test/simple-context-lifecycle.d.ts.map +1 -1
  310. package/dist/test/simple-context-mfconfig.d.ts +4 -1
  311. package/dist/test/simple-context-mfconfig.d.ts.map +1 -1
  312. package/dist/test/simple-context-multi-worker.d.ts.map +1 -1
  313. package/dist/test/simple-context-startup.d.ts.map +1 -1
  314. package/dist/test/tail.d.ts.map +1 -1
  315. package/dist/test/utilities/artifacts.d.ts +11 -0
  316. package/dist/test/utilities/artifacts.d.ts.map +1 -0
  317. package/dist/test/utilities/context.d.ts +39 -0
  318. package/dist/test/utilities/context.d.ts.map +1 -0
  319. package/dist/test/utilities/d1.d.ts +21 -0
  320. package/dist/test/utilities/d1.d.ts.map +1 -0
  321. package/dist/test/utilities/env.d.ts +40 -0
  322. package/dist/test/utilities/env.d.ts.map +1 -0
  323. package/dist/test/utilities/kv.d.ts +11 -0
  324. package/dist/test/utilities/kv.d.ts.map +1 -0
  325. package/dist/test/utilities/media.d.ts +16 -0
  326. package/dist/test/utilities/media.d.ts.map +1 -0
  327. package/dist/test/utilities/platform.d.ts +38 -0
  328. package/dist/test/utilities/platform.d.ts.map +1 -0
  329. package/dist/test/utilities/queue.d.ts +5 -0
  330. package/dist/test/utilities/queue.d.ts.map +1 -0
  331. package/dist/test/utilities/r2.d.ts +12 -0
  332. package/dist/test/utilities/r2.d.ts.map +1 -0
  333. package/dist/test/utilities/workflows.d.ts +26 -0
  334. package/dist/test/utilities/workflows.d.ts.map +1 -0
  335. package/dist/test/utilities.d.ts +10 -106
  336. package/dist/test/utilities.d.ts.map +1 -1
  337. package/dist/types-2ejrbba1.js +695 -0
  338. package/dist/types-7jkbm95a.js +695 -0
  339. package/dist/types-a2fk9yns.js +695 -0
  340. package/dist/types-dyb3c6zw.js +695 -0
  341. package/dist/types-e2n9f3pd.js +695 -0
  342. package/dist/types-j4s6qcrc.js +695 -0
  343. package/dist/utils/send-email.d.ts.map +1 -1
  344. package/dist/utils/send-email.js +1 -1
  345. package/dist/vite/index.js +6 -6
  346. package/dist/vite/plugin-context.d.ts.map +1 -1
  347. package/dist/worker-663em30d.js +513 -0
  348. package/dist/worker-argxc7fb.js +513 -0
  349. package/dist/worker-entry/composed-worker.d.ts.map +1 -1
  350. package/dist/worker-entry/surface-paths.d.ts +2 -0
  351. package/dist/worker-entry/surface-paths.d.ts.map +1 -1
  352. package/dist/worker-fcdsnj14.js +513 -0
  353. package/dist/worker-fk42rzse.js +513 -0
  354. package/dist/worker-jkemk8d2.js +513 -0
  355. package/dist/worker-m4ze8djx.js +513 -0
  356. package/dist/worker-wnan5dca.js +513 -0
  357. package/dist/worker-yw3atfb1.js +513 -0
  358. package/dist/workflows/local-workflow-entrypoints.d.ts +7 -0
  359. package/dist/workflows/local-workflow-entrypoints.d.ts.map +1 -0
  360. package/package.json +13 -12
@@ -0,0 +1,245 @@
1
+ import {
2
+ getGeneratedArtifactPaths
3
+ } from "./index-aabgympv.js";
4
+ import {
5
+ formatSupportedConfigFilenames,
6
+ resolveConfigCandidatePath
7
+ } from "./index-sb705m7d.js";
8
+ import {
9
+ getDependencies
10
+ } from "./index-z9gy8w6b.js";
11
+ import {
12
+ detectViteProject
13
+ } from "./index-gn5wy09x.js";
14
+ import {
15
+ bold,
16
+ createCliTheme,
17
+ dim,
18
+ green,
19
+ logLine,
20
+ red,
21
+ yellow
22
+ } from "./index-stgn34cr.js";
23
+ import"./index-3t6rypgc.js";
24
+ import"./index-rbht7m9r.js";
25
+ import {
26
+ loadConfig
27
+ } from "./index-w4c9vmvg.js";
28
+ import"./index-1d4jg11n.js";
29
+ import"./index-mg8vwqxf.js";
30
+ import"./index-z40mjts9.js";
31
+ import"./index-37x76zdn.js";
32
+
33
+ // src/cli/commands/doctor.ts
34
+ import { basename, dirname, relative, resolve } from "pathe";
35
+ async function runDoctorCommand(parsed, logger, options) {
36
+ const cwd = options.cwd || process.cwd();
37
+ const theme = createCliTheme(parsed.options);
38
+ const requestedConfigOption = parsed.options.config;
39
+ const requestedConfigPath = requestedConfigOption ? resolve(cwd, requestedConfigOption) : cwd;
40
+ const checks = [];
41
+ const { fs } = await getDependencies();
42
+ const viteProject = await detectViteProject(cwd, fs);
43
+ logLine(logger);
44
+ logLine(logger, `${bold("doctor", theme)} ${dim("Running diagnostics", theme)}`);
45
+ logLine(logger);
46
+ const configPath = await resolveConfigCandidatePath(requestedConfigPath);
47
+ if (configPath) {
48
+ checks.push({
49
+ name: "Config File",
50
+ status: "pass",
51
+ message: `Found: ${configPath}`
52
+ });
53
+ try {
54
+ const config = requestedConfigOption ? await loadConfig({
55
+ cwd: dirname(configPath),
56
+ configFile: basename(configPath)
57
+ }) : await loadConfig({ cwd });
58
+ checks.push({
59
+ name: "Config Valid",
60
+ status: "pass",
61
+ message: `Project: ${config.name}`
62
+ });
63
+ } catch (error) {
64
+ checks.push({
65
+ name: "Config Valid",
66
+ status: "fail",
67
+ message: error instanceof Error ? error.message : "Unknown error"
68
+ });
69
+ }
70
+ } else {
71
+ checks.push({
72
+ name: "Config File",
73
+ status: "fail",
74
+ message: `${formatSupportedConfigFilenames()} not found. Run \`devflare init\` to create one.`
75
+ });
76
+ }
77
+ const packageJsonPath = resolve(cwd, "package.json");
78
+ try {
79
+ await fs.access(packageJsonPath);
80
+ const content = await fs.readFile(packageJsonPath, "utf-8");
81
+ const pkg = JSON.parse(content);
82
+ checks.push({
83
+ name: "package.json",
84
+ status: "pass",
85
+ message: `Found: ${pkg.name || "unnamed"}`
86
+ });
87
+ const deps = { ...pkg.dependencies, ...pkg.devDependencies };
88
+ if (deps.devflare) {
89
+ checks.push({
90
+ name: "devflare dep",
91
+ status: "pass",
92
+ message: `Version: ${deps.devflare}`
93
+ });
94
+ } else {
95
+ checks.push({
96
+ name: "devflare dep",
97
+ status: "warn",
98
+ message: "devflare not in dependencies"
99
+ });
100
+ }
101
+ } catch {
102
+ checks.push({
103
+ name: "package.json",
104
+ status: "fail",
105
+ message: "package.json not found"
106
+ });
107
+ }
108
+ if (viteProject.wantsViteIntegration) {
109
+ checks.push({
110
+ name: "Vite Integration",
111
+ status: "pass",
112
+ message: "Enabled for this package"
113
+ });
114
+ if (viteProject.hasLocalViteDependency) {
115
+ checks.push({
116
+ name: "vite dep",
117
+ status: "pass",
118
+ message: "Found in package.json"
119
+ });
120
+ } else {
121
+ checks.push({
122
+ name: "vite dep",
123
+ status: "warn",
124
+ message: "Not declared in this package.json (workspace-hoisted installs may still work)"
125
+ });
126
+ }
127
+ if (viteProject.hasLocalCloudflareVitePluginDependency) {
128
+ checks.push({
129
+ name: "@cloudflare/vite-plugin",
130
+ status: "pass",
131
+ message: "Found in package.json"
132
+ });
133
+ } else {
134
+ checks.push({
135
+ name: "@cloudflare/vite-plugin",
136
+ status: "warn",
137
+ message: "Not declared in this package.json"
138
+ });
139
+ }
140
+ if (viteProject.viteConfigPath) {
141
+ checks.push({
142
+ name: "Vite Config",
143
+ status: "pass",
144
+ message: `Found: ${viteProject.viteConfigPath}`
145
+ });
146
+ } else {
147
+ checks.push({
148
+ name: "Vite Config",
149
+ status: "warn",
150
+ message: "No vite.config found. Create one with @cloudflare/vite-plugin"
151
+ });
152
+ }
153
+ } else {
154
+ checks.push({
155
+ name: "Vite Integration",
156
+ status: "pass",
157
+ message: "Not enabled for this package (worker-only mode)"
158
+ });
159
+ }
160
+ try {
161
+ await fs.access(resolve(cwd, "tsconfig.json"));
162
+ checks.push({
163
+ name: "tsconfig.json",
164
+ status: "pass",
165
+ message: "Found"
166
+ });
167
+ } catch {
168
+ checks.push({
169
+ name: "tsconfig.json",
170
+ status: "warn",
171
+ message: "tsconfig.json not found"
172
+ });
173
+ }
174
+ const artifactPaths = getGeneratedArtifactPaths(cwd);
175
+ try {
176
+ await fs.access(artifactPaths.devWranglerConfigPath);
177
+ checks.push({
178
+ name: "Generated dev config",
179
+ status: "pass",
180
+ message: `Found: ${relative(cwd, artifactPaths.devWranglerConfigPath)}`
181
+ });
182
+ } catch {
183
+ checks.push({
184
+ name: "Generated dev config",
185
+ status: "warn",
186
+ message: "Not found. Run `devflare build`, `devflare deploy`, or start `devflare/vite` to populate `.devflare/wrangler.jsonc`."
187
+ });
188
+ }
189
+ try {
190
+ await fs.access(artifactPaths.buildWranglerConfigPath);
191
+ checks.push({
192
+ name: "Generated deploy config",
193
+ status: "pass",
194
+ message: `Found: ${relative(cwd, artifactPaths.buildWranglerConfigPath)}`
195
+ });
196
+ } catch {
197
+ checks.push({
198
+ name: "Generated deploy config",
199
+ status: "warn",
200
+ message: "Not found. Run `devflare build` or `devflare deploy` to generate `.devflare/build/wrangler.jsonc`."
201
+ });
202
+ }
203
+ try {
204
+ await fs.access(artifactPaths.deployRedirectPath);
205
+ checks.push({
206
+ name: "Wrangler deploy redirect",
207
+ status: "pass",
208
+ message: `Found: ${relative(cwd, artifactPaths.deployRedirectPath)}`
209
+ });
210
+ } catch {
211
+ checks.push({
212
+ name: "Wrangler deploy redirect",
213
+ status: "warn",
214
+ message: "Not found. Run `devflare build` or `devflare deploy` to generate `.wrangler/deploy/config.json`."
215
+ });
216
+ }
217
+ let hasFailures = false;
218
+ let hasWarnings = false;
219
+ for (const check of checks) {
220
+ const icon = check.status === "pass" ? "✓" : check.status === "warn" ? "⚠" : "✗";
221
+ if (check.status === "pass") {
222
+ logLine(logger, `${green(icon, theme)} ${bold(check.name, theme)}${dim(" — ", theme)}${check.message}`);
223
+ } else if (check.status === "warn") {
224
+ logLine(logger, `${yellow(icon, theme)} ${bold(check.name, theme)}${dim(" — ", theme)}${check.message}`);
225
+ hasWarnings = true;
226
+ } else {
227
+ logLine(logger, `${red(icon, theme)} ${bold(check.name, theme)}${dim(" — ", theme)}${check.message}`);
228
+ hasFailures = true;
229
+ }
230
+ }
231
+ logLine(logger);
232
+ if (hasFailures) {
233
+ logger.error("Some checks failed. Please fix the issues above.");
234
+ return { exitCode: 1 };
235
+ } else if (hasWarnings) {
236
+ logger.warn("All critical checks passed, but there are warnings.");
237
+ return { exitCode: 0 };
238
+ } else {
239
+ logger.success("All checks passed!");
240
+ return { exitCode: 0 };
241
+ }
242
+ }
243
+ export {
244
+ runDoctorCommand
245
+ };
@@ -0,0 +1,245 @@
1
+ import {
2
+ getGeneratedArtifactPaths
3
+ } from "./index-aabgympv.js";
4
+ import {
5
+ formatSupportedConfigFilenames,
6
+ resolveConfigCandidatePath
7
+ } from "./index-pqp4312v.js";
8
+ import {
9
+ getDependencies
10
+ } from "./index-z9gy8w6b.js";
11
+ import {
12
+ detectViteProject
13
+ } from "./index-gn5wy09x.js";
14
+ import {
15
+ bold,
16
+ createCliTheme,
17
+ dim,
18
+ green,
19
+ logLine,
20
+ red,
21
+ yellow
22
+ } from "./index-stgn34cr.js";
23
+ import"./index-3t6rypgc.js";
24
+ import"./index-rbht7m9r.js";
25
+ import {
26
+ loadConfig
27
+ } from "./index-g5aq66bj.js";
28
+ import"./index-1d4jg11n.js";
29
+ import"./index-mg8vwqxf.js";
30
+ import"./index-z40mjts9.js";
31
+ import"./index-37x76zdn.js";
32
+
33
+ // src/cli/commands/doctor.ts
34
+ import { basename, dirname, relative, resolve } from "pathe";
35
+ async function runDoctorCommand(parsed, logger, options) {
36
+ const cwd = options.cwd || process.cwd();
37
+ const theme = createCliTheme(parsed.options);
38
+ const requestedConfigOption = parsed.options.config;
39
+ const requestedConfigPath = requestedConfigOption ? resolve(cwd, requestedConfigOption) : cwd;
40
+ const checks = [];
41
+ const { fs } = await getDependencies();
42
+ const viteProject = await detectViteProject(cwd, fs);
43
+ logLine(logger);
44
+ logLine(logger, `${bold("doctor", theme)} ${dim("Running diagnostics", theme)}`);
45
+ logLine(logger);
46
+ const configPath = await resolveConfigCandidatePath(requestedConfigPath);
47
+ if (configPath) {
48
+ checks.push({
49
+ name: "Config File",
50
+ status: "pass",
51
+ message: `Found: ${configPath}`
52
+ });
53
+ try {
54
+ const config = requestedConfigOption ? await loadConfig({
55
+ cwd: dirname(configPath),
56
+ configFile: basename(configPath)
57
+ }) : await loadConfig({ cwd });
58
+ checks.push({
59
+ name: "Config Valid",
60
+ status: "pass",
61
+ message: `Project: ${config.name}`
62
+ });
63
+ } catch (error) {
64
+ checks.push({
65
+ name: "Config Valid",
66
+ status: "fail",
67
+ message: error instanceof Error ? error.message : "Unknown error"
68
+ });
69
+ }
70
+ } else {
71
+ checks.push({
72
+ name: "Config File",
73
+ status: "fail",
74
+ message: `${formatSupportedConfigFilenames()} not found. Run \`devflare init\` to create one.`
75
+ });
76
+ }
77
+ const packageJsonPath = resolve(cwd, "package.json");
78
+ try {
79
+ await fs.access(packageJsonPath);
80
+ const content = await fs.readFile(packageJsonPath, "utf-8");
81
+ const pkg = JSON.parse(content);
82
+ checks.push({
83
+ name: "package.json",
84
+ status: "pass",
85
+ message: `Found: ${pkg.name || "unnamed"}`
86
+ });
87
+ const deps = { ...pkg.dependencies, ...pkg.devDependencies };
88
+ if (deps.devflare) {
89
+ checks.push({
90
+ name: "devflare dep",
91
+ status: "pass",
92
+ message: `Version: ${deps.devflare}`
93
+ });
94
+ } else {
95
+ checks.push({
96
+ name: "devflare dep",
97
+ status: "warn",
98
+ message: "devflare not in dependencies"
99
+ });
100
+ }
101
+ } catch {
102
+ checks.push({
103
+ name: "package.json",
104
+ status: "fail",
105
+ message: "package.json not found"
106
+ });
107
+ }
108
+ if (viteProject.wantsViteIntegration) {
109
+ checks.push({
110
+ name: "Vite Integration",
111
+ status: "pass",
112
+ message: "Enabled for this package"
113
+ });
114
+ if (viteProject.hasLocalViteDependency) {
115
+ checks.push({
116
+ name: "vite dep",
117
+ status: "pass",
118
+ message: "Found in package.json"
119
+ });
120
+ } else {
121
+ checks.push({
122
+ name: "vite dep",
123
+ status: "warn",
124
+ message: "Not declared in this package.json (workspace-hoisted installs may still work)"
125
+ });
126
+ }
127
+ if (viteProject.hasLocalCloudflareVitePluginDependency) {
128
+ checks.push({
129
+ name: "@cloudflare/vite-plugin",
130
+ status: "pass",
131
+ message: "Found in package.json"
132
+ });
133
+ } else {
134
+ checks.push({
135
+ name: "@cloudflare/vite-plugin",
136
+ status: "warn",
137
+ message: "Not declared in this package.json"
138
+ });
139
+ }
140
+ if (viteProject.viteConfigPath) {
141
+ checks.push({
142
+ name: "Vite Config",
143
+ status: "pass",
144
+ message: `Found: ${viteProject.viteConfigPath}`
145
+ });
146
+ } else {
147
+ checks.push({
148
+ name: "Vite Config",
149
+ status: "warn",
150
+ message: "No vite.config found. Create one with @cloudflare/vite-plugin"
151
+ });
152
+ }
153
+ } else {
154
+ checks.push({
155
+ name: "Vite Integration",
156
+ status: "pass",
157
+ message: "Not enabled for this package (worker-only mode)"
158
+ });
159
+ }
160
+ try {
161
+ await fs.access(resolve(cwd, "tsconfig.json"));
162
+ checks.push({
163
+ name: "tsconfig.json",
164
+ status: "pass",
165
+ message: "Found"
166
+ });
167
+ } catch {
168
+ checks.push({
169
+ name: "tsconfig.json",
170
+ status: "warn",
171
+ message: "tsconfig.json not found"
172
+ });
173
+ }
174
+ const artifactPaths = getGeneratedArtifactPaths(cwd);
175
+ try {
176
+ await fs.access(artifactPaths.devWranglerConfigPath);
177
+ checks.push({
178
+ name: "Generated dev config",
179
+ status: "pass",
180
+ message: `Found: ${relative(cwd, artifactPaths.devWranglerConfigPath)}`
181
+ });
182
+ } catch {
183
+ checks.push({
184
+ name: "Generated dev config",
185
+ status: "warn",
186
+ message: "Not found. Run `devflare build`, `devflare deploy`, or start `devflare/vite` to populate `.devflare/wrangler.jsonc`."
187
+ });
188
+ }
189
+ try {
190
+ await fs.access(artifactPaths.buildWranglerConfigPath);
191
+ checks.push({
192
+ name: "Generated deploy config",
193
+ status: "pass",
194
+ message: `Found: ${relative(cwd, artifactPaths.buildWranglerConfigPath)}`
195
+ });
196
+ } catch {
197
+ checks.push({
198
+ name: "Generated deploy config",
199
+ status: "warn",
200
+ message: "Not found. Run `devflare build` or `devflare deploy` to generate `.devflare/build/wrangler.jsonc`."
201
+ });
202
+ }
203
+ try {
204
+ await fs.access(artifactPaths.deployRedirectPath);
205
+ checks.push({
206
+ name: "Wrangler deploy redirect",
207
+ status: "pass",
208
+ message: `Found: ${relative(cwd, artifactPaths.deployRedirectPath)}`
209
+ });
210
+ } catch {
211
+ checks.push({
212
+ name: "Wrangler deploy redirect",
213
+ status: "warn",
214
+ message: "Not found. Run `devflare build` or `devflare deploy` to generate `.wrangler/deploy/config.json`."
215
+ });
216
+ }
217
+ let hasFailures = false;
218
+ let hasWarnings = false;
219
+ for (const check of checks) {
220
+ const icon = check.status === "pass" ? "✓" : check.status === "warn" ? "⚠" : "✗";
221
+ if (check.status === "pass") {
222
+ logLine(logger, `${green(icon, theme)} ${bold(check.name, theme)}${dim(" — ", theme)}${check.message}`);
223
+ } else if (check.status === "warn") {
224
+ logLine(logger, `${yellow(icon, theme)} ${bold(check.name, theme)}${dim(" — ", theme)}${check.message}`);
225
+ hasWarnings = true;
226
+ } else {
227
+ logLine(logger, `${red(icon, theme)} ${bold(check.name, theme)}${dim(" — ", theme)}${check.message}`);
228
+ hasFailures = true;
229
+ }
230
+ }
231
+ logLine(logger);
232
+ if (hasFailures) {
233
+ logger.error("Some checks failed. Please fix the issues above.");
234
+ return { exitCode: 1 };
235
+ } else if (hasWarnings) {
236
+ logger.warn("All critical checks passed, but there are warnings.");
237
+ return { exitCode: 0 };
238
+ } else {
239
+ logger.success("All checks passed!");
240
+ return { exitCode: 0 };
241
+ }
242
+ }
243
+ export {
244
+ runDoctorCommand
245
+ };