devflare 1.0.0-next.15 → 1.0.0-next.17

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 (1109) hide show
  1. package/LLM.md +9809 -1819
  2. package/README.md +376 -40
  3. package/bin/devflare.js +17 -7
  4. package/dist/account-0evqkmnc.js +475 -0
  5. package/dist/account-0v11zbzk.js +475 -0
  6. package/dist/account-2w85efas.js +475 -0
  7. package/dist/account-61gw9s7t.js +475 -0
  8. package/dist/account-65sk9q34.js +475 -0
  9. package/dist/account-77vx7q2f.js +475 -0
  10. package/dist/account-7z38mgqf.js +475 -0
  11. package/dist/account-8wgprpbt.js +475 -0
  12. package/dist/account-9gt3tej1.js +475 -0
  13. package/dist/account-dtndtbad.js +475 -0
  14. package/dist/account-e95v7f4s.js +475 -0
  15. package/dist/account-fbyyptg7.js +475 -0
  16. package/dist/account-gnzhz1c9.js +475 -0
  17. package/dist/account-m6jq6fnp.js +475 -0
  18. package/dist/account-mvnfagh9.js +475 -0
  19. package/dist/account-p0crq2gh.js +475 -0
  20. package/dist/account-qkcevx7a.js +475 -0
  21. package/dist/account-txwqg1rx.js +475 -0
  22. package/dist/account-w5n5bjh2.js +475 -0
  23. package/dist/account-zd61t0ey.js +475 -0
  24. package/dist/api-11gkk043.js +33 -0
  25. package/dist/api-2n6dd2ws.js +33 -0
  26. package/dist/api-dbxvch9h.js +33 -0
  27. package/dist/api-p9hf69kr.js +33 -0
  28. package/dist/api-r10j00ev.js +33 -0
  29. package/dist/api-senf2569.js +33 -0
  30. package/dist/api-swcgnp72.js +33 -0
  31. package/dist/api-th82mps4.js +27 -0
  32. package/dist/bridge/client.d.ts +29 -6
  33. package/dist/bridge/client.d.ts.map +1 -1
  34. package/dist/bridge/gateway-runtime.d.ts +8 -0
  35. package/dist/bridge/gateway-runtime.d.ts.map +1 -0
  36. package/dist/bridge/index.d.ts +3 -3
  37. package/dist/bridge/index.d.ts.map +1 -1
  38. package/dist/bridge/log.d.ts +5 -0
  39. package/dist/bridge/log.d.ts.map +1 -0
  40. package/dist/bridge/miniflare.d.ts.map +1 -1
  41. package/dist/bridge/protocol.d.ts +1 -1
  42. package/dist/bridge/protocol.d.ts.map +1 -1
  43. package/dist/bridge/proxy.d.ts +7 -9
  44. package/dist/bridge/proxy.d.ts.map +1 -1
  45. package/dist/bridge/serialization.d.ts +36 -16
  46. package/dist/bridge/serialization.d.ts.map +1 -1
  47. package/dist/bridge/server.d.ts +2 -1
  48. package/dist/bridge/server.d.ts.map +1 -1
  49. package/dist/bridge/v2/body-streams.d.ts +53 -0
  50. package/dist/bridge/v2/body-streams.d.ts.map +1 -0
  51. package/dist/bridge/v2/codec.d.ts +106 -0
  52. package/dist/bridge/v2/codec.d.ts.map +1 -0
  53. package/dist/bridge/v2/control-messages.d.ts +51 -0
  54. package/dist/bridge/v2/control-messages.d.ts.map +1 -0
  55. package/dist/bridge/v2/frames.d.ts +109 -0
  56. package/dist/bridge/v2/frames.d.ts.map +1 -0
  57. package/dist/bridge/v2/index.d.ts +11 -0
  58. package/dist/bridge/v2/index.d.ts.map +1 -0
  59. package/dist/bridge/v2/legacy-protocol.d.ts +146 -0
  60. package/dist/bridge/v2/legacy-protocol.d.ts.map +1 -0
  61. package/dist/bridge/v2/legacy-serialization.d.ts +103 -0
  62. package/dist/bridge/v2/legacy-serialization.d.ts.map +1 -0
  63. package/dist/bridge/v2/serialization.d.ts +48 -0
  64. package/dist/bridge/v2/serialization.d.ts.map +1 -0
  65. package/dist/bridge/v2/transport.d.ts +31 -0
  66. package/dist/bridge/v2/transport.d.ts.map +1 -0
  67. package/dist/bridge/v2/value-codec.d.ts +61 -0
  68. package/dist/bridge/v2/value-codec.d.ts.map +1 -0
  69. package/dist/bridge/v2/value-serialization.d.ts +103 -0
  70. package/dist/bridge/v2/value-serialization.d.ts.map +1 -0
  71. package/dist/bridge/v2/wire.d.ts +170 -0
  72. package/dist/bridge/v2/wire.d.ts.map +1 -0
  73. package/dist/bridge/v2/ws-relay.d.ts +53 -0
  74. package/dist/bridge/v2/ws-relay.d.ts.map +1 -0
  75. package/dist/browser-shim/handler.d.ts +1 -1
  76. package/dist/browser-shim/handler.d.ts.map +1 -1
  77. package/dist/browser-shim/server.d.ts +63 -0
  78. package/dist/browser-shim/server.d.ts.map +1 -1
  79. package/dist/browser.d.ts +2007 -39
  80. package/dist/browser.d.ts.map +1 -1
  81. package/dist/{src/browser.js → browser.js} +22 -44
  82. package/dist/build-07mjrvsn.js +53 -0
  83. package/dist/build-0rfr8k1s.js +53 -0
  84. package/dist/build-1313sg73.js +52 -0
  85. package/dist/build-1hnntbks.js +53 -0
  86. package/dist/build-1r3myv0k.js +53 -0
  87. package/dist/build-28561w5v.js +54 -0
  88. package/dist/build-50yqpwb3.js +54 -0
  89. package/dist/build-55z8psd6.js +53 -0
  90. package/dist/build-5b9wj2p0.js +53 -0
  91. package/dist/build-5frhzh1m.js +53 -0
  92. package/dist/build-6ye9vnab.js +52 -0
  93. package/dist/build-8gv18jrq.js +52 -0
  94. package/dist/build-9bgqypy6.js +53 -0
  95. package/dist/build-9em4ymqn.js +52 -0
  96. package/dist/build-eh3x12qc.js +52 -0
  97. package/dist/build-emhyycp7.js +53 -0
  98. package/dist/build-f1m9jn7b.js +53 -0
  99. package/dist/build-ffe72jjv.js +54 -0
  100. package/dist/build-fx90y6za.js +53 -0
  101. package/dist/build-h31egsze.js +53 -0
  102. package/dist/build-hpczwagb.js +53 -0
  103. package/dist/build-j2re91xe.js +54 -0
  104. package/dist/build-j78389rg.js +52 -0
  105. package/dist/build-m3kckn5g.js +53 -0
  106. package/dist/build-mf3thcjm.js +53 -0
  107. package/dist/build-n3n5bv37.js +52 -0
  108. package/dist/build-ngfy4v5x.js +53 -0
  109. package/dist/build-pr843h0d.js +52 -0
  110. package/dist/build-qyg2b45p.js +52 -0
  111. package/dist/build-r6884kyt.js +53 -0
  112. package/dist/build-re370wkf.js +53 -0
  113. package/dist/build-vvndgwg0.js +52 -0
  114. package/dist/build-wp559jkf.js +54 -0
  115. package/dist/build-x4r67275.js +52 -0
  116. package/dist/build-xp4pfhvv.js +52 -0
  117. package/dist/build-y489r2h9.js +54 -0
  118. package/dist/build-y6g4bvx5.js +52 -0
  119. package/dist/build-yvn0yhwx.js +52 -0
  120. package/dist/build-z4vmhs5c.js +53 -0
  121. package/dist/bundler/defaults.d.ts +23 -0
  122. package/dist/bundler/defaults.d.ts.map +1 -0
  123. package/dist/bundler/do-bundler.d.ts.map +1 -1
  124. package/dist/bundler/index.d.ts +1 -0
  125. package/dist/bundler/index.d.ts.map +1 -1
  126. package/dist/bundler/rolldown-shared.d.ts +53 -0
  127. package/dist/bundler/rolldown-shared.d.ts.map +1 -0
  128. package/dist/bundler/worker-bundler.d.ts +0 -1
  129. package/dist/bundler/worker-bundler.d.ts.map +1 -1
  130. package/dist/bundler/worker-compat.d.ts.map +1 -1
  131. package/dist/cli/build-manifest.d.ts +54 -0
  132. package/dist/cli/build-manifest.d.ts.map +1 -0
  133. package/dist/cli/command-utils.d.ts +18 -0
  134. package/dist/cli/command-utils.d.ts.map +1 -0
  135. package/dist/cli/commands/account.d.ts +1 -1
  136. package/dist/cli/commands/account.d.ts.map +1 -1
  137. package/dist/cli/commands/build-artifacts.d.ts +27 -0
  138. package/dist/cli/commands/build-artifacts.d.ts.map +1 -0
  139. package/dist/cli/commands/build.d.ts.map +1 -1
  140. package/dist/cli/commands/deploy.d.ts.map +1 -1
  141. package/dist/cli/commands/dev.d.ts.map +1 -1
  142. package/dist/cli/commands/doctor.d.ts.map +1 -1
  143. package/dist/cli/commands/init.d.ts.map +1 -1
  144. package/dist/cli/commands/login.d.ts +4 -0
  145. package/dist/cli/commands/login.d.ts.map +1 -0
  146. package/dist/cli/commands/previews-support/cleanup.d.ts +9 -0
  147. package/dist/cli/commands/previews-support/cleanup.d.ts.map +1 -0
  148. package/dist/cli/commands/previews-support/family.d.ts +10 -0
  149. package/dist/cli/commands/previews-support/family.d.ts.map +1 -0
  150. package/dist/cli/commands/previews-support/render.d.ts +8 -0
  151. package/dist/cli/commands/previews-support/render.d.ts.map +1 -0
  152. package/dist/cli/commands/previews-support/theme.d.ts +10 -0
  153. package/dist/cli/commands/previews-support/theme.d.ts.map +1 -0
  154. package/dist/cli/commands/previews-support/types.d.ts +70 -0
  155. package/dist/cli/commands/previews-support/types.d.ts.map +1 -0
  156. package/dist/cli/commands/previews.d.ts +4 -0
  157. package/dist/cli/commands/previews.d.ts.map +1 -0
  158. package/dist/cli/commands/productions.d.ts +4 -0
  159. package/dist/cli/commands/productions.d.ts.map +1 -0
  160. package/dist/cli/commands/token.d.ts +4 -0
  161. package/dist/cli/commands/token.d.ts.map +1 -0
  162. package/dist/cli/commands/type-generation/discovery.d.ts +7 -0
  163. package/dist/cli/commands/type-generation/discovery.d.ts.map +1 -0
  164. package/dist/cli/commands/type-generation/generator.d.ts +44 -0
  165. package/dist/cli/commands/type-generation/generator.d.ts.map +1 -0
  166. package/dist/cli/commands/type-generation/models.d.ts +27 -0
  167. package/dist/cli/commands/type-generation/models.d.ts.map +1 -0
  168. package/dist/cli/commands/types.d.ts.map +1 -1
  169. package/dist/cli/commands/worker.d.ts +4 -0
  170. package/dist/cli/commands/worker.d.ts.map +1 -0
  171. package/dist/cli/config-path.d.ts +2 -1
  172. package/dist/cli/config-path.d.ts.map +1 -1
  173. package/dist/cli/dependencies.d.ts +1 -0
  174. package/dist/cli/dependencies.d.ts.map +1 -1
  175. package/dist/cli/deploy-strategy.d.ts +17 -0
  176. package/dist/cli/deploy-strategy.d.ts.map +1 -0
  177. package/dist/cli/deploy-target.d.ts +17 -0
  178. package/dist/cli/deploy-target.d.ts.map +1 -0
  179. package/dist/cli/generated-artifacts.d.ts +12 -0
  180. package/dist/cli/generated-artifacts.d.ts.map +1 -0
  181. package/dist/cli/help-pages/pages/account.d.ts +3 -0
  182. package/dist/cli/help-pages/pages/account.d.ts.map +1 -0
  183. package/dist/cli/help-pages/pages/core.d.ts +4 -0
  184. package/dist/cli/help-pages/pages/core.d.ts.map +1 -0
  185. package/dist/cli/help-pages/pages/index.d.ts +3 -0
  186. package/dist/cli/help-pages/pages/index.d.ts.map +1 -0
  187. package/dist/cli/help-pages/pages/misc.d.ts +3 -0
  188. package/dist/cli/help-pages/pages/misc.d.ts.map +1 -0
  189. package/dist/cli/help-pages/pages/previews.d.ts +3 -0
  190. package/dist/cli/help-pages/pages/previews.d.ts.map +1 -0
  191. package/dist/cli/help-pages/pages/productions.d.ts +3 -0
  192. package/dist/cli/help-pages/pages/productions.d.ts.map +1 -0
  193. package/dist/cli/help-pages/render.d.ts +12 -0
  194. package/dist/cli/help-pages/render.d.ts.map +1 -0
  195. package/dist/cli/help-pages/shared.d.ts +15 -0
  196. package/dist/cli/help-pages/shared.d.ts.map +1 -0
  197. package/dist/cli/help-pages/types.d.ts +23 -0
  198. package/dist/cli/help-pages/types.d.ts.map +1 -0
  199. package/dist/cli/help.d.ts +6 -0
  200. package/dist/cli/help.d.ts.map +1 -0
  201. package/dist/cli/index.d.ts +1 -0
  202. package/dist/cli/index.d.ts.map +1 -1
  203. package/dist/cli/index.js +12 -0
  204. package/dist/cli/preview-bindings.d.ts +49 -0
  205. package/dist/cli/preview-bindings.d.ts.map +1 -0
  206. package/dist/cli/preview.d.ts +10 -0
  207. package/dist/cli/preview.d.ts.map +1 -0
  208. package/dist/cli/ui.d.ts +37 -0
  209. package/dist/cli/ui.d.ts.map +1 -0
  210. package/dist/cli/workspace-build-guard.d.ts +14 -0
  211. package/dist/cli/workspace-build-guard.d.ts.map +1 -0
  212. package/dist/cloudflare/account-core.d.ts +6 -0
  213. package/dist/cloudflare/account-core.d.ts.map +1 -0
  214. package/dist/cloudflare/account-resources.d.ts +40 -0
  215. package/dist/cloudflare/account-resources.d.ts.map +1 -0
  216. package/dist/cloudflare/account-status.d.ts +11 -0
  217. package/dist/cloudflare/account-status.d.ts.map +1 -0
  218. package/dist/cloudflare/account-workers.d.ts +14 -0
  219. package/dist/cloudflare/account-workers.d.ts.map +1 -0
  220. package/dist/cloudflare/account.d.ts +7 -64
  221. package/dist/cloudflare/account.d.ts.map +1 -1
  222. package/dist/cloudflare/api.d.ts +71 -3
  223. package/dist/cloudflare/api.d.ts.map +1 -1
  224. package/dist/cloudflare/auth.d.ts.map +1 -1
  225. package/dist/cloudflare/index.d.ts +57 -2
  226. package/dist/cloudflare/index.d.ts.map +1 -1
  227. package/dist/cloudflare/index.js +60 -0
  228. package/dist/cloudflare/known-permission-group-ids.generated.d.ts +10 -0
  229. package/dist/cloudflare/known-permission-group-ids.generated.d.ts.map +1 -0
  230. package/dist/cloudflare/kv-namespace.d.ts +4 -0
  231. package/dist/cloudflare/kv-namespace.d.ts.map +1 -0
  232. package/dist/cloudflare/preferences.d.ts +7 -0
  233. package/dist/cloudflare/preferences.d.ts.map +1 -1
  234. package/dist/cloudflare/preview-registry-cache.d.ts +6 -0
  235. package/dist/cloudflare/preview-registry-cache.d.ts.map +1 -0
  236. package/dist/cloudflare/preview-registry-inference.d.ts +14 -0
  237. package/dist/cloudflare/preview-registry-inference.d.ts.map +1 -0
  238. package/dist/cloudflare/preview-registry-records.d.ts +4 -0
  239. package/dist/cloudflare/preview-registry-records.d.ts.map +1 -0
  240. package/dist/cloudflare/preview-registry-shape.d.ts +47 -0
  241. package/dist/cloudflare/preview-registry-shape.d.ts.map +1 -0
  242. package/dist/cloudflare/preview-registry-store.d.ts +14 -0
  243. package/dist/cloudflare/preview-registry-store.d.ts.map +1 -0
  244. package/dist/cloudflare/preview-registry-transport.d.ts +4 -0
  245. package/dist/cloudflare/preview-registry-transport.d.ts.map +1 -0
  246. package/dist/cloudflare/preview-registry-types.d.ts +103 -0
  247. package/dist/cloudflare/preview-registry-types.d.ts.map +1 -0
  248. package/dist/cloudflare/preview-registry.d.ts +42 -0
  249. package/dist/cloudflare/preview-registry.d.ts.map +1 -0
  250. package/dist/cloudflare/preview-urls.d.ts +3 -0
  251. package/dist/cloudflare/preview-urls.d.ts.map +1 -0
  252. package/dist/cloudflare/registry-schema.d.ts +253 -0
  253. package/dist/cloudflare/registry-schema.d.ts.map +1 -0
  254. package/dist/cloudflare/tokens.d.ts +41 -0
  255. package/dist/cloudflare/tokens.d.ts.map +1 -0
  256. package/dist/cloudflare/types.d.ts +123 -6
  257. package/dist/cloudflare/types.d.ts.map +1 -1
  258. package/dist/cloudflare/usage.d.ts +30 -2
  259. package/dist/cloudflare/usage.d.ts.map +1 -1
  260. package/dist/config/binding-resolution-helpers.d.ts +36 -0
  261. package/dist/config/binding-resolution-helpers.d.ts.map +1 -0
  262. package/dist/config/compatibility.d.ts +3 -0
  263. package/dist/config/compatibility.d.ts.map +1 -0
  264. package/dist/config/compiler.d.ts +65 -20
  265. package/dist/config/compiler.d.ts.map +1 -1
  266. package/dist/config/deploy-resources.d.ts +58 -0
  267. package/dist/config/deploy-resources.d.ts.map +1 -0
  268. package/dist/config/framework-providers.d.ts +9 -0
  269. package/dist/config/framework-providers.d.ts.map +1 -0
  270. package/dist/config/index.d.ts +8 -4
  271. package/dist/config/index.d.ts.map +1 -1
  272. package/dist/config/loader.d.ts.map +1 -1
  273. package/dist/config/preview-resources.d.ts +83 -0
  274. package/dist/config/preview-resources.d.ts.map +1 -0
  275. package/dist/config/preview.d.ts +31 -0
  276. package/dist/config/preview.d.ts.map +1 -0
  277. package/dist/config/ref.d.ts +14 -23
  278. package/dist/config/ref.d.ts.map +1 -1
  279. package/dist/config/resolve-phased.d.ts +72 -0
  280. package/dist/config/resolve-phased.d.ts.map +1 -0
  281. package/dist/config/resolve.d.ts +8 -0
  282. package/dist/config/resolve.d.ts.map +1 -1
  283. package/dist/config/resource-resolution.d.ts +44 -8
  284. package/dist/config/resource-resolution.d.ts.map +1 -1
  285. package/dist/config/schema-bindings.d.ts +955 -0
  286. package/dist/config/schema-bindings.d.ts.map +1 -0
  287. package/dist/config/schema-build.d.ts +67 -0
  288. package/dist/config/schema-build.d.ts.map +1 -0
  289. package/dist/config/schema-env.d.ts +1677 -0
  290. package/dist/config/schema-env.d.ts.map +1 -0
  291. package/dist/config/schema-normalization.d.ts +88 -0
  292. package/dist/config/schema-normalization.d.ts.map +1 -0
  293. package/dist/config/schema-runtime.d.ts +230 -0
  294. package/dist/config/schema-runtime.d.ts.map +1 -0
  295. package/dist/config/schema.d.ts +1312 -3575
  296. package/dist/config/schema.d.ts.map +1 -1
  297. package/dist/config/service-bindings-validation.d.ts +36 -0
  298. package/dist/config/service-bindings-validation.d.ts.map +1 -0
  299. package/dist/{config-v9tr4rts.js → config-1japnjmx.js} +6 -4
  300. package/dist/config-287wjn1m.js +59 -0
  301. package/dist/config-4x6vq82e.js +59 -0
  302. package/dist/config-5n0avhcx.js +59 -0
  303. package/dist/config-70s2ap5j.js +59 -0
  304. package/dist/config-7hge8ze6.js +59 -0
  305. package/dist/config-7rbp7aek.js +59 -0
  306. package/dist/config-b8xbbmta.js +59 -0
  307. package/dist/config-baee5690.js +59 -0
  308. package/dist/config-bczpc1ey.js +59 -0
  309. package/dist/config-entry.d.ts +5 -0
  310. package/dist/config-entry.d.ts.map +1 -0
  311. package/dist/config-entry.js +14 -0
  312. package/dist/config-fhmwzaw6.js +59 -0
  313. package/dist/config-g9vkfa4x.js +59 -0
  314. package/dist/config-gpexkzth.js +59 -0
  315. package/dist/config-nspw7sgv.js +59 -0
  316. package/dist/config-ntm4x9wt.js +59 -0
  317. package/dist/config-nv6hfpg6.js +59 -0
  318. package/dist/config-pjc33wew.js +59 -0
  319. package/dist/config-pnz2e8s3.js +59 -0
  320. package/dist/config-qts6nh6g.js +59 -0
  321. package/dist/config-sg2xrdt4.js +59 -0
  322. package/dist/config-vzwckat3.js +59 -0
  323. package/dist/config-x90dkmm7.js +59 -0
  324. package/dist/decorators/durable-object.d.ts.map +1 -1
  325. package/dist/{src/decorators → decorators}/index.js +2 -2
  326. package/dist/deploy-1s6nv5rp.js +921 -0
  327. package/dist/deploy-30ph1rrd.js +921 -0
  328. package/dist/deploy-39dmfn9d.js +921 -0
  329. package/dist/deploy-44n2pshy.js +1016 -0
  330. package/dist/deploy-45qxpsfe.js +921 -0
  331. package/dist/deploy-64e57w1g.js +1040 -0
  332. package/dist/deploy-82j43vta.js +1040 -0
  333. package/dist/deploy-99m8qhpa.js +1041 -0
  334. package/dist/deploy-9twkd32f.js +1040 -0
  335. package/dist/deploy-a2eq2c1n.js +1040 -0
  336. package/dist/deploy-a3pb1qs5.js +921 -0
  337. package/dist/deploy-agbtfm04.js +921 -0
  338. package/dist/deploy-aswbtbf3.js +921 -0
  339. package/dist/deploy-bqf3kxy5.js +972 -0
  340. package/dist/deploy-fv4z648h.js +921 -0
  341. package/dist/deploy-gsybda2f.js +1038 -0
  342. package/dist/deploy-h17nzysm.js +921 -0
  343. package/dist/deploy-hc89h4wg.js +1045 -0
  344. package/dist/deploy-jey5pnqn.js +1040 -0
  345. package/dist/deploy-jv0yfqvk.js +1040 -0
  346. package/dist/deploy-kn3z6spd.js +941 -0
  347. package/dist/deploy-m22xmz9w.js +921 -0
  348. package/dist/deploy-nefp2njy.js +1038 -0
  349. package/dist/deploy-ppp8pg6w.js +1038 -0
  350. package/dist/deploy-qah2eag6.js +1041 -0
  351. package/dist/deploy-qdq2gpad.js +1045 -0
  352. package/dist/deploy-r1yf8913.js +1038 -0
  353. package/dist/deploy-r8nam9rr.js +1038 -0
  354. package/dist/deploy-rrm4a0xw.js +921 -0
  355. package/dist/deploy-s0tfnc12.js +1040 -0
  356. package/dist/deploy-s636ks9k.js +1041 -0
  357. package/dist/deploy-skqn61j3.js +1038 -0
  358. package/dist/deploy-smv2870h.js +921 -0
  359. package/dist/deploy-sp16nxs5.js +972 -0
  360. package/dist/deploy-sr805bvq.js +921 -0
  361. package/dist/deploy-t9dehmn0.js +1041 -0
  362. package/dist/deploy-taxt7njz.js +1041 -0
  363. package/dist/deploy-tnfvfh9m.js +1040 -0
  364. package/dist/deploy-w5f8db4s.js +1040 -0
  365. package/dist/deploy-wsxcectr.js +921 -0
  366. package/dist/deploy-xyfbhj3v.js +1038 -0
  367. package/dist/deploy-yv1y5xaa.js +921 -0
  368. package/dist/deploy-z3ejw37k.js +1040 -0
  369. package/dist/dev-02tgdc4f.js +2160 -0
  370. package/dist/dev-0tqhveye.js +2314 -0
  371. package/dist/dev-3dj2gkfq.js +2314 -0
  372. package/dist/dev-3e0etsww.js +2314 -0
  373. package/dist/dev-47dk7c13.js +2314 -0
  374. package/dist/dev-4a2a31cm.js +2314 -0
  375. package/dist/dev-4w1stcn8.js +2427 -0
  376. package/dist/dev-5wkh1z4a.js +2188 -0
  377. package/dist/dev-6t22zmey.js +2350 -0
  378. package/dist/dev-89p1sdv7.js +2395 -0
  379. package/dist/dev-8d1gxjky.js +2427 -0
  380. package/dist/dev-8yawx3cv.js +2314 -0
  381. package/dist/dev-9h4p8a0c.js +2393 -0
  382. package/dist/dev-9xmttj4c.js +2314 -0
  383. package/dist/dev-bkbz97z0.js +2314 -0
  384. package/dist/dev-ct3344kv.js +2160 -0
  385. package/dist/{dev-ymtphbkg.js → dev-dg8dh5c1.js} +479 -616
  386. package/dist/dev-dr5jb965.js +2427 -0
  387. package/dist/dev-e4sjqtbq.js +2314 -0
  388. package/dist/dev-ecq26mg4.js +2350 -0
  389. package/dist/dev-ef237vgp.js +2324 -0
  390. package/dist/dev-enbdg4st.js +2314 -0
  391. package/dist/dev-jcrxg8hq.js +2160 -0
  392. package/dist/dev-jk0gqges.js +2432 -0
  393. package/dist/dev-k62936am.js +2314 -0
  394. package/dist/dev-k8ptbvrs.js +2160 -0
  395. package/dist/dev-kqm107h4.js +2422 -0
  396. package/dist/dev-n0gx7eya.js +2350 -0
  397. package/dist/dev-n23m6rtb.js +2314 -0
  398. package/dist/dev-ny8fmkzg.js +2432 -0
  399. package/dist/dev-p1c65cga.js +2386 -0
  400. package/dist/dev-p4fjbb4h.js +2395 -0
  401. package/dist/dev-pnfcv79z.js +2160 -0
  402. package/dist/dev-qnrrv5ey.js +2393 -0
  403. package/dist/dev-qqysg50t.js +2427 -0
  404. package/dist/dev-r9f3n11q.js +2410 -0
  405. package/dist/dev-s0815dw4.js +2427 -0
  406. package/dist/dev-s4tpkg60.js +2314 -0
  407. package/dist/dev-s82fcesg.js +2314 -0
  408. package/dist/dev-s9sz53me.js +2401 -0
  409. package/dist/dev-sdka7z0d.js +2427 -0
  410. package/dist/dev-server/d1-migrations.d.ts +36 -0
  411. package/dist/dev-server/d1-migrations.d.ts.map +1 -0
  412. package/dist/dev-server/dev-server-state.d.ts +56 -0
  413. package/dist/dev-server/dev-server-state.d.ts.map +1 -0
  414. package/dist/dev-server/gateway-script.d.ts +21 -0
  415. package/dist/dev-server/gateway-script.d.ts.map +1 -0
  416. package/dist/dev-server/miniflare-bindings.d.ts +16 -0
  417. package/dist/dev-server/miniflare-bindings.d.ts.map +1 -0
  418. package/dist/dev-server/miniflare-dev-config.d.ts +30 -0
  419. package/dist/dev-server/miniflare-dev-config.d.ts.map +1 -0
  420. package/dist/dev-server/miniflare-worker-config.d.ts +44 -0
  421. package/dist/dev-server/miniflare-worker-config.d.ts.map +1 -0
  422. package/dist/dev-server/reload-queue.d.ts +13 -0
  423. package/dist/dev-server/reload-queue.d.ts.map +1 -0
  424. package/dist/dev-server/runtime-stdio.d.ts.map +1 -1
  425. package/dist/dev-server/server-startup-helpers.d.ts +84 -0
  426. package/dist/dev-server/server-startup-helpers.d.ts.map +1 -0
  427. package/dist/dev-server/server.d.ts.map +1 -1
  428. package/dist/dev-server/vite-process.d.ts +14 -0
  429. package/dist/dev-server/vite-process.d.ts.map +1 -0
  430. package/dist/dev-server/vite-utils.d.ts +19 -1
  431. package/dist/dev-server/vite-utils.d.ts.map +1 -1
  432. package/dist/dev-server/worker-source-watcher.d.ts +17 -0
  433. package/dist/dev-server/worker-source-watcher.d.ts.map +1 -0
  434. package/dist/dev-server/worker-surface-paths.d.ts +6 -0
  435. package/dist/dev-server/worker-surface-paths.d.ts.map +1 -0
  436. package/dist/dev-t3tjscah.js +2350 -0
  437. package/dist/dev-t50kdb1j.js +2338 -0
  438. package/dist/dev-t5xf55pt.js +2314 -0
  439. package/dist/dev-t63c44bb.js +2314 -0
  440. package/dist/dev-wg3d38sy.js +2433 -0
  441. package/dist/dev-wh4rfgsh.js +2427 -0
  442. package/dist/dev-wjh8gdd1.js +2284 -0
  443. package/dist/dev-xzxy9qvq.js +2314 -0
  444. package/dist/dev-yymaq4ph.js +2392 -0
  445. package/dist/dev-zg2w2ve3.js +2422 -0
  446. package/dist/dev-zsb2xk1x.js +2427 -0
  447. package/dist/dev-zty3yhzg.js +2324 -0
  448. package/dist/doctor-3mqavqg3.js +245 -0
  449. package/dist/doctor-5nek32fz.js +245 -0
  450. package/dist/doctor-7ra1w0sk.js +245 -0
  451. package/dist/doctor-ak830a0k.js +245 -0
  452. package/dist/doctor-bye3cs8a.js +245 -0
  453. package/dist/{doctor-xv4gm1h4.js → doctor-c5m9pmwq.js} +67 -32
  454. package/dist/doctor-cqfkgxvw.js +245 -0
  455. package/dist/doctor-e1h9mhzp.js +245 -0
  456. package/dist/doctor-fmqsrafk.js +245 -0
  457. package/dist/doctor-hgs7wr5g.js +245 -0
  458. package/dist/doctor-j8ytsy94.js +245 -0
  459. package/dist/doctor-mcmkgp6e.js +245 -0
  460. package/dist/doctor-qb6m2exc.js +245 -0
  461. package/dist/doctor-qq4tsh8q.js +245 -0
  462. package/dist/doctor-tecv869a.js +245 -0
  463. package/dist/doctor-wg0245pe.js +245 -0
  464. package/dist/doctor-z3jfqxtz.js +245 -0
  465. package/dist/durable-object-4hey8fgy.js +13 -0
  466. package/dist/durable-object-v3gsnybk.js +13 -0
  467. package/dist/env.d.ts.map +1 -1
  468. package/dist/index-0krb65s3.js +215 -0
  469. package/dist/index-0mantew0.js +513 -0
  470. package/dist/index-0mezg6ar.js +1372 -0
  471. package/dist/index-0tk2rs0q.js +185 -0
  472. package/dist/{index-fef08w43.js → index-124e9t4t.js} +8 -7
  473. package/dist/index-1546yrn0.js +74 -0
  474. package/dist/index-15fpa5tx.js +232 -0
  475. package/dist/index-18mp5v50.js +538 -0
  476. package/dist/index-195tc6qh.js +1372 -0
  477. package/dist/{index-k8vh558d.js → index-1bg8w2gf.js} +15 -2
  478. package/dist/index-1d4jg11n.js +542 -0
  479. package/dist/index-1e2qtrmj.js +188 -0
  480. package/dist/index-1ghhgb9d.js +74 -0
  481. package/dist/index-1nhd9nkd.js +232 -0
  482. package/dist/index-1wn8mjep.js +808 -0
  483. package/dist/index-1xhd5czz.js +185 -0
  484. package/dist/index-2a2g4fwp.js +993 -0
  485. package/dist/{index-7bq4xq84.js → index-2bmtj21z.js} +7 -12
  486. package/dist/index-2dpmd14d.js +52 -0
  487. package/dist/index-2fa0afdp.js +1372 -0
  488. package/dist/index-2rcrefqd.js +1372 -0
  489. package/dist/index-2t2m5148.js +1372 -0
  490. package/dist/index-2vbzamev.js +437 -0
  491. package/dist/index-2vdep9h0.js +993 -0
  492. package/dist/index-2y90j9cz.js +74 -0
  493. package/dist/index-33ep0z9x.js +385 -0
  494. package/dist/index-37jgbaw6.js +1372 -0
  495. package/dist/index-380ncsqc.js +977 -0
  496. package/dist/index-3e1x39fc.js +365 -0
  497. package/dist/index-3e7by9sy.js +223 -0
  498. package/dist/index-3egad6wm.js +538 -0
  499. package/dist/index-3f8rzmjw.js +232 -0
  500. package/dist/index-3vd4r37r.js +1372 -0
  501. package/dist/index-3vgn5e89.js +1682 -0
  502. package/dist/index-3x7k3t0f.js +513 -0
  503. package/dist/index-3xfe2dst.js +399 -0
  504. package/dist/index-464j1zb4.js +513 -0
  505. package/dist/index-48rxsj95.js +365 -0
  506. package/dist/index-4bezcdd1.js +385 -0
  507. package/dist/index-4fp11z9e.js +973 -0
  508. package/dist/{index-vky23txa.js → index-4knecthc.js} +2 -2
  509. package/dist/index-502y7w13.js +538 -0
  510. package/dist/index-50mxxb4q.js +185 -0
  511. package/dist/index-5achzspr.js +185 -0
  512. package/dist/index-5ef3jmv7.js +1372 -0
  513. package/dist/index-5eswe8yv.js +844 -0
  514. package/dist/index-5gevxfgs.js +513 -0
  515. package/dist/index-5gmf048z.js +817 -0
  516. package/dist/index-5jtkxpjf.js +971 -0
  517. package/dist/index-5m85bd9x.js +168 -0
  518. package/dist/index-5n5nn0a8.js +264 -0
  519. package/dist/index-5p3bgjwr.js +808 -0
  520. package/dist/index-5vzcszr2.js +1230 -0
  521. package/dist/index-5w77r4w9.js +513 -0
  522. package/dist/index-62srkqcm.js +168 -0
  523. package/dist/index-63cgqe43.js +1372 -0
  524. package/dist/index-65e7xx1a.js +19 -0
  525. package/dist/index-65qrje14.js +185 -0
  526. package/dist/index-66sx3b3v.js +385 -0
  527. package/dist/index-678j0n13.js +74 -0
  528. package/dist/index-6ftrth7n.js +1218 -0
  529. package/dist/index-6g90pvxa.js +215 -0
  530. package/dist/index-6j4m5x2d.js +1372 -0
  531. package/dist/index-6jwpke14.js +385 -0
  532. package/dist/index-6knsjvxh.js +1372 -0
  533. package/dist/index-6kwq6yf8.js +979 -0
  534. package/dist/index-6mg4yvc6.js +74 -0
  535. package/dist/index-6phry941.js +133 -0
  536. package/dist/index-6r59wbek.js +232 -0
  537. package/dist/index-6sf815ps.js +74 -0
  538. package/dist/index-6zd89k6y.js +1230 -0
  539. package/dist/index-71rwg0cn.js +264 -0
  540. package/dist/index-75ex2m0x.js +695 -0
  541. package/dist/index-79exzs3q.js +1218 -0
  542. package/dist/index-7bxj118m.js +264 -0
  543. package/dist/index-7c6np4mq.js +397 -0
  544. package/dist/index-7cm339qz.js +133 -0
  545. package/dist/index-7eqyr4j8.js +70 -0
  546. package/dist/index-7k278fgz.js +273 -0
  547. package/dist/index-7kazxkjt.js +1372 -0
  548. package/dist/index-7m0x8m9r.js +844 -0
  549. package/dist/index-7p74smg8.js +1372 -0
  550. package/dist/index-7q8fke3k.js +188 -0
  551. package/dist/index-7qk6eafn.js +1682 -0
  552. package/dist/index-7vbjt6ba.js +805 -0
  553. package/dist/index-7z4b0vgd.js +470 -0
  554. package/dist/index-82f1z98k.js +41 -0
  555. package/dist/index-82xn4azv.js +74 -0
  556. package/dist/index-83wns7cz.js +70 -0
  557. package/dist/index-852945d4.js +413 -0
  558. package/dist/index-86rvj79f.js +133 -0
  559. package/dist/index-88tcq0t4.js +542 -0
  560. package/dist/index-8evn52g1.js +1218 -0
  561. package/dist/index-8jkf4nsd.js +695 -0
  562. package/dist/index-8nx4ce3e.js +133 -0
  563. package/dist/index-8q1bcnrh.js +1372 -0
  564. package/dist/index-8t5gynct.js +971 -0
  565. package/dist/index-905svbb6.js +470 -0
  566. package/dist/index-94cb0sac.js +1372 -0
  567. package/dist/index-95mmvbw7.js +538 -0
  568. package/dist/index-97x94h0m.js +438 -0
  569. package/dist/index-9an9qqr1.js +728 -0
  570. package/dist/index-9d125myk.js +1372 -0
  571. package/dist/{index-001mw014.js → index-9fbtk7gv.js} +134 -248
  572. package/dist/index-9gg0kqw0.js +470 -0
  573. package/dist/index-9ryw7mcw.js +971 -0
  574. package/dist/index-a3e13a7m.js +478 -0
  575. package/dist/index-a6j44jmr.js +1372 -0
  576. package/dist/index-a75ejnvt.js +1711 -0
  577. package/dist/index-aabgympv.js +39 -0
  578. package/dist/index-ab2nck1h.js +1372 -0
  579. package/dist/index-abrqnq3e.js +488 -0
  580. package/dist/index-afjbpgb1.js +1218 -0
  581. package/dist/index-at89fpde.js +470 -0
  582. package/dist/{index-5yxg30va.js → index-awr0tp6p.js} +15 -6
  583. package/dist/index-b1be9bdh.js +1372 -0
  584. package/dist/index-b1xs3wc4.js +513 -0
  585. package/dist/index-b50x7seh.js +513 -0
  586. package/dist/index-b5ra8w3q.js +52 -0
  587. package/dist/index-b64sbzgv.js +884 -0
  588. package/dist/index-b7r8ntpm.js +1372 -0
  589. package/dist/index-ba9gyy13.js +513 -0
  590. package/dist/index-bb66mn7p.js +52 -0
  591. package/dist/index-bc5pvbbd.js +1193 -0
  592. package/dist/index-bj0mk3dw.js +74 -0
  593. package/dist/index-bj3a8dr0.js +1372 -0
  594. package/dist/index-bk3eez1g.js +513 -0
  595. package/dist/index-btjx137w.js +774 -0
  596. package/dist/index-btrfqp9h.js +133 -0
  597. package/dist/index-bx6gangy.js +402 -0
  598. package/dist/index-c0tc0yts.js +471 -0
  599. package/dist/index-c0whkev9.js +200 -0
  600. package/dist/index-ca96qkva.js +1372 -0
  601. package/dist/index-cdtzkedk.js +993 -0
  602. package/dist/index-cejgenma.js +1372 -0
  603. package/dist/index-cp8jt5pr.js +52 -0
  604. package/dist/index-cpz69pek.js +1372 -0
  605. package/dist/index-crrdegk5.js +456 -0
  606. package/dist/index-cskszwkx.js +1372 -0
  607. package/dist/index-cxf22a0s.js +74 -0
  608. package/dist/index-cy3c3w81.js +270 -0
  609. package/dist/index-d5dgb1j6.js +74 -0
  610. package/dist/index-da397xcx.js +1372 -0
  611. package/dist/index-damyy8bw.js +1372 -0
  612. package/dist/index-dd6fwwmq.js +456 -0
  613. package/dist/index-dh1954bp.js +52 -0
  614. package/dist/index-djp2wd1f.js +1372 -0
  615. package/dist/index-dmbdj6va.js +805 -0
  616. package/dist/index-dphr32gc.js +420 -0
  617. package/dist/index-dxh2qyyw.js +52 -0
  618. package/dist/index-dzayfxjy.js +492 -0
  619. package/dist/index-e05q77kt.js +397 -0
  620. package/dist/index-e11b1fb2.js +495 -0
  621. package/dist/index-e3zvspqj.js +968 -0
  622. package/dist/index-e4tzzbn9.js +1372 -0
  623. package/dist/index-e5ct1gwb.js +1372 -0
  624. package/dist/index-e7ptcz1a.js +1372 -0
  625. package/dist/index-e7wt0203.js +513 -0
  626. package/dist/index-ebwsvf9t.js +365 -0
  627. package/dist/index-ed73jn3d.js +185 -0
  628. package/dist/index-ed7n5d07.js +185 -0
  629. package/dist/index-ejs2a4kd.js +513 -0
  630. package/dist/index-esjrgt3y.js +467 -0
  631. package/dist/index-ev03khsd.js +513 -0
  632. package/dist/index-f1gsqm54.js +168 -0
  633. package/dist/index-f90314kt.js +52 -0
  634. package/dist/index-f9mhsept.js +185 -0
  635. package/dist/index-fa6zwffw.js +70 -0
  636. package/dist/index-fama7kpt.js +52 -0
  637. package/dist/index-fkyvxe4b.js +968 -0
  638. package/dist/index-g0h40xke.js +513 -0
  639. package/dist/index-g0rqh52c.js +385 -0
  640. package/dist/index-g170d619.js +385 -0
  641. package/dist/index-g3qtxkms.js +881 -0
  642. package/dist/index-gactvqcs.js +467 -0
  643. package/dist/index-gaew61v4.js +470 -0
  644. package/dist/index-gba371j7.js +542 -0
  645. package/dist/index-gegyyfnw.js +1372 -0
  646. package/dist/index-get7he2s.js +133 -0
  647. package/dist/index-gn5wy09x.js +205 -0
  648. package/dist/index-gtbgzwfs.js +264 -0
  649. package/dist/index-gtpz0gkz.js +185 -0
  650. package/dist/index-h1s66pmp.js +52 -0
  651. package/dist/index-h8r2d8y5.js +366 -0
  652. package/dist/index-heeqwrfd.js +385 -0
  653. package/dist/index-hheb5dyt.js +192 -0
  654. package/dist/index-hjz2x9nq.js +441 -0
  655. package/dist/index-hkex7ns5.js +513 -0
  656. package/dist/index-hmbctwv6.js +517 -0
  657. package/dist/index-hpzasdhw.js +513 -0
  658. package/dist/index-hqdr9wdm.js +74 -0
  659. package/dist/index-hrvz8d26.js +1372 -0
  660. package/dist/index-hyvhnf6r.js +971 -0
  661. package/dist/index-j2kc5rbv.js +895 -0
  662. package/dist/index-j2xdxwsz.js +133 -0
  663. package/dist/index-j47hhb3r.js +694 -0
  664. package/dist/index-j5aphr5x.js +185 -0
  665. package/dist/index-j68v36q1.js +188 -0
  666. package/dist/index-j7cf22x7.js +968 -0
  667. package/dist/index-j7xxrbnr.js +694 -0
  668. package/dist/index-jptqxkew.js +470 -0
  669. package/dist/index-jsymy3mb.js +781 -0
  670. package/dist/index-jwvy32xk.js +188 -0
  671. package/dist/index-jxe1b19v.js +133 -0
  672. package/dist/index-jz96ry5g.js +513 -0
  673. package/dist/index-k6wtsgs1.js +971 -0
  674. package/dist/index-kawa49m8.js +371 -0
  675. package/dist/index-key4e5c9.js +168 -0
  676. package/dist/index-khbmdrn2.js +884 -0
  677. package/dist/index-kpzfwex6.js +264 -0
  678. package/dist/index-kse4gn99.js +74 -0
  679. package/dist/index-ktscz0r2.js +264 -0
  680. package/dist/index-kybmjvad.js +1212 -0
  681. package/dist/index-kzm9cea8.js +185 -0
  682. package/dist/index-m2d74gqg.js +808 -0
  683. package/dist/index-m56w7mjt.js +513 -0
  684. package/dist/index-m95ha3n4.js +264 -0
  685. package/dist/index-ma151p8g.js +264 -0
  686. package/dist/index-mg8vwqxf.js +514 -0
  687. package/dist/index-mhdsywhs.js +264 -0
  688. package/dist/index-mjgx910r.js +895 -0
  689. package/dist/index-mkrmaea3.js +185 -0
  690. package/dist/index-mkxnyyjn.js +264 -0
  691. package/dist/index-mp5mrst6.js +1372 -0
  692. package/dist/index-ms15cr86.js +513 -0
  693. package/dist/index-mt99xkc6.js +133 -0
  694. package/dist/index-mttv6k25.js +881 -0
  695. package/dist/index-myxfx52v.js +385 -0
  696. package/dist/index-mzw7732t.js +74 -0
  697. package/dist/index-n3mjwz22.js +188 -0
  698. package/dist/index-n3yksgz0.js +1372 -0
  699. package/dist/{index-8gtqgb3q.js → index-n4jr3dmk.js} +55 -100
  700. package/dist/index-n5drt64b.js +74 -0
  701. package/dist/index-n8frmffg.js +264 -0
  702. package/dist/index-n8k8chde.js +694 -0
  703. package/dist/index-na796ka6.js +994 -0
  704. package/dist/index-nbs4q0qg.js +1218 -0
  705. package/dist/index-newpq2zf.js +968 -0
  706. package/dist/index-nexg9p7j.js +1271 -0
  707. package/dist/index-nfm8tb5n.js +74 -0
  708. package/dist/index-nga2tg9z.js +1372 -0
  709. package/dist/index-ngbzr9gz.js +805 -0
  710. package/dist/index-nh90nk7j.js +380 -0
  711. package/dist/index-njnmfxm5.js +1372 -0
  712. package/dist/index-nqma24j3.js +385 -0
  713. package/dist/index-ntddf5d9.js +993 -0
  714. package/dist/index-nte9n8w9.js +538 -0
  715. package/dist/index-ntxp7ke1.js +264 -0
  716. package/dist/index-nwxnmw41.js +264 -0
  717. package/dist/index-p1xe5eem.js +513 -0
  718. package/dist/index-p296ban8.js +191 -0
  719. package/dist/index-p477xm52.js +385 -0
  720. package/dist/index-p8nmkrgw.js +470 -0
  721. package/dist/{index-zvgc3e0c.js → index-p97s12vf.js} +200 -97
  722. package/dist/index-p9hvv0yd.js +401 -0
  723. package/dist/index-pac7wv88.js +307 -0
  724. package/dist/index-ptp2pfq1.js +52 -0
  725. package/dist/index-pyeycp3f.js +74 -0
  726. package/dist/index-q23xf3vr.js +479 -0
  727. package/dist/index-q34rvh5a.js +247 -0
  728. package/dist/index-q5errwrj.js +904 -0
  729. package/dist/index-q5nhzc9m.js +1217 -0
  730. package/dist/index-q8f4kawk.js +204 -0
  731. package/dist/index-qer8zv2r.js +997 -0
  732. package/dist/index-qhyy018y.js +467 -0
  733. package/dist/index-qmhdydwy.js +70 -0
  734. package/dist/index-qpmvca5j.js +470 -0
  735. package/dist/index-qr96vaj1.js +52 -0
  736. package/dist/index-qtyhg3dn.js +904 -0
  737. package/dist/index-qye17gq5.js +264 -0
  738. package/dist/index-r0839f5k.js +133 -0
  739. package/dist/index-r1rqg72v.js +1372 -0
  740. package/dist/index-rbckga8p.js +971 -0
  741. package/dist/index-rbxb5x2w.js +1372 -0
  742. package/dist/index-rck779bj.js +739 -0
  743. package/dist/index-rfn2gt5f.js +1658 -0
  744. package/dist/index-rg21w26a.js +470 -0
  745. package/dist/index-rgcz45t0.js +1372 -0
  746. package/dist/index-rhnd376q.js +133 -0
  747. package/dist/index-rjc5z3w6.js +971 -0
  748. package/dist/index-rkhtayd6.js +385 -0
  749. package/dist/index-rm8srzmv.js +371 -0
  750. package/dist/index-rmhk5j03.js +968 -0
  751. package/dist/index-rp4t86bt.js +993 -0
  752. package/dist/index-rpq5ktdy.js +264 -0
  753. package/dist/index-rpsmhdd4.js +1218 -0
  754. package/dist/index-rqpakjyr.js +470 -0
  755. package/dist/index-rttk33x6.js +232 -0
  756. package/dist/index-rwa82e89.js +385 -0
  757. package/dist/index-rz185crv.js +695 -0
  758. package/dist/index-s22verzj.js +1218 -0
  759. package/dist/index-s2s3g1nt.js +133 -0
  760. package/dist/index-s7ytytth.js +781 -0
  761. package/dist/index-sefnpzwa.js +185 -0
  762. package/dist/index-sgxw0xzd.js +513 -0
  763. package/dist/index-stc0caq6.js +1009 -0
  764. package/dist/index-stgn34cr.js +148 -0
  765. package/dist/index-svz82w9h.js +513 -0
  766. package/dist/index-sx49e8x9.js +884 -0
  767. package/dist/index-sxadwvw9.js +185 -0
  768. package/dist/index-sxn223fz.js +1372 -0
  769. package/dist/index-sy0c2mh0.js +1372 -0
  770. package/dist/index-syeh1hca.js +264 -0
  771. package/dist/index-t18wyhgf.js +418 -0
  772. package/dist/index-t4fhcx1n.js +71 -0
  773. package/dist/index-td4hbgj5.js +1372 -0
  774. package/dist/index-tkvt9mmq.js +484 -0
  775. package/dist/index-tmmcf4m6.js +808 -0
  776. package/dist/index-tpgs5v64.js +366 -0
  777. package/dist/index-tt4fsv91.js +412 -0
  778. package/dist/{index-v8vvsn9x.js → index-tte89s31.js} +29 -29
  779. package/dist/index-tvjg7swe.js +1372 -0
  780. package/dist/index-txndxr4w.js +513 -0
  781. package/dist/index-tyh5jc55.js +990 -0
  782. package/dist/index-tyt0wa52.js +470 -0
  783. package/dist/index-tyt3wcfr.js +1372 -0
  784. package/dist/index-v3znz08m.js +968 -0
  785. package/dist/index-v78xbj6n.js +808 -0
  786. package/dist/index-v915brjk.js +1372 -0
  787. package/dist/index-v922fmsx.js +52 -0
  788. package/dist/index-v9w1bbfe.js +842 -0
  789. package/dist/index-vbbgtm8p.js +513 -0
  790. package/dist/index-vcjgrmzj.js +456 -0
  791. package/dist/{index-59df49vn.js → index-vdewcg1r.js} +233 -105
  792. package/dist/index-vhqww6tt.js +307 -0
  793. package/dist/index-vse8620z.js +1372 -0
  794. package/dist/index-vtjp46c3.js +52 -0
  795. package/dist/index-vxhxk8mf.js +904 -0
  796. package/dist/index-w3azfsa0.js +695 -0
  797. package/dist/index-w4tq35dn.js +52 -0
  798. package/dist/index-w5qxvxzq.js +991 -0
  799. package/dist/index-w5sedpqn.js +986 -0
  800. package/dist/index-waha3chv.js +1230 -0
  801. package/dist/index-wdxww0kj.js +1006 -0
  802. package/dist/index-wdy5y07x.js +1372 -0
  803. package/dist/index-wf9pnh6j.js +385 -0
  804. package/dist/index-wnnbbbkt.js +1192 -0
  805. package/dist/index-wvcmvtjf.js +1372 -0
  806. package/dist/index-x0jbntp0.js +470 -0
  807. package/dist/index-x6scc3nx.js +70 -0
  808. package/dist/index-x8e2wsbv.js +971 -0
  809. package/dist/index-xgfyxpfs.js +1218 -0
  810. package/dist/index-xm9hp9xc.js +1372 -0
  811. package/dist/index-xp7zkxcx.js +1372 -0
  812. package/dist/index-xrbj0ebk.js +185 -0
  813. package/dist/index-xskax7r3.js +50 -0
  814. package/dist/index-xvk5n96q.js +694 -0
  815. package/dist/index-xy1jvt4w.js +1229 -0
  816. package/dist/index-xzg9hhf3.js +470 -0
  817. package/dist/index-xzpg0kaz.js +70 -0
  818. package/dist/index-y3q6qvv3.js +316 -0
  819. package/dist/index-y44ts1dk.js +52 -0
  820. package/dist/index-y5nt1wjb.js +971 -0
  821. package/dist/index-y82b8w14.js +1372 -0
  822. package/dist/index-yb07t3c5.js +1372 -0
  823. package/dist/index-yc3xz3vm.js +431 -0
  824. package/dist/index-yeaqrevg.js +1372 -0
  825. package/dist/index-ygwsd1nn.js +438 -0
  826. package/dist/index-yhdavjk7.js +371 -0
  827. package/dist/index-yjhns95b.js +188 -0
  828. package/dist/index-yk23p7he.js +1372 -0
  829. package/dist/index-ykfgpsmm.js +190 -0
  830. package/dist/index-ymz3cfab.js +968 -0
  831. package/dist/index-yq9g1sq7.js +264 -0
  832. package/dist/index-ys5q9ch9.js +366 -0
  833. package/dist/index-yt0n4p46.js +973 -0
  834. package/dist/index-ytq1t9jx.js +232 -0
  835. package/dist/index-ywmtmf3b.js +513 -0
  836. package/dist/index-yzb44q6d.js +1372 -0
  837. package/dist/index-z043xk61.js +133 -0
  838. package/dist/index-z0gsf674.js +431 -0
  839. package/dist/index-z32n0ndp.js +1372 -0
  840. package/dist/index-z4qgk76w.js +1372 -0
  841. package/dist/index-z8njfj2g.js +385 -0
  842. package/dist/index-z9fjnwa8.js +397 -0
  843. package/dist/{index-1xpj0m4r.js → index-z9gy8w6b.js} +1 -1
  844. package/dist/index-zapkc14c.js +264 -0
  845. package/dist/index-zes6w8yr.js +185 -0
  846. package/dist/index-zgrqest7.js +695 -0
  847. package/dist/index-zsngz131.js +1372 -0
  848. package/dist/index-zt22fe2j.js +54 -0
  849. package/dist/index-zxhc6sb0.js +192 -0
  850. package/dist/index.d.ts +2 -6
  851. package/dist/index.d.ts.map +1 -1
  852. package/dist/index.js +61 -0
  853. package/dist/{init-na2atvz2.js → init-wfh63bfz.js} +25 -18
  854. package/dist/login-1amyp1jy.js +77 -0
  855. package/dist/login-1cdwn1dj.js +77 -0
  856. package/dist/login-456h8jk3.js +77 -0
  857. package/dist/login-4n470c4j.js +77 -0
  858. package/dist/login-4sh7s849.js +77 -0
  859. package/dist/login-5dmkf0pz.js +77 -0
  860. package/dist/login-88tp4gbb.js +77 -0
  861. package/dist/login-b51faqpc.js +77 -0
  862. package/dist/login-bxyjqmbj.js +77 -0
  863. package/dist/login-c4649qss.js +77 -0
  864. package/dist/login-d80a2qxd.js +77 -0
  865. package/dist/login-dp0napaz.js +77 -0
  866. package/dist/login-j3r6z2t4.js +77 -0
  867. package/dist/login-jkfkdjg4.js +77 -0
  868. package/dist/login-kch6f2yj.js +77 -0
  869. package/dist/login-pmqh94ws.js +77 -0
  870. package/dist/login-rc82x5j8.js +77 -0
  871. package/dist/login-tvppwyx2.js +77 -0
  872. package/dist/login-w76jx22q.js +77 -0
  873. package/dist/login-ze7y36rc.js +77 -0
  874. package/dist/previews-02jmcwft.js +1214 -0
  875. package/dist/previews-31bq82km.js +1225 -0
  876. package/dist/previews-62pcvvpe.js +1214 -0
  877. package/dist/previews-76fxkp59.js +1214 -0
  878. package/dist/previews-844bp6kf.js +1214 -0
  879. package/dist/previews-8amn46qv.js +1214 -0
  880. package/dist/previews-a5xbkksy.js +1214 -0
  881. package/dist/previews-bgnryzav.js +1214 -0
  882. package/dist/previews-bkhv9dnr.js +1214 -0
  883. package/dist/previews-c2c64z5m.js +1214 -0
  884. package/dist/previews-e4wgscsb.js +1214 -0
  885. package/dist/previews-ew4reetn.js +1214 -0
  886. package/dist/previews-hzqke1fg.js +1214 -0
  887. package/dist/previews-j8wa3sge.js +1214 -0
  888. package/dist/previews-k5n6vhpm.js +1214 -0
  889. package/dist/previews-n4sdyxa5.js +1214 -0
  890. package/dist/previews-npwrwb0b.js +1214 -0
  891. package/dist/previews-q8ph9wbe.js +1214 -0
  892. package/dist/previews-rfswrh7q.js +1214 -0
  893. package/dist/previews-s0y5yp8s.js +1214 -0
  894. package/dist/previews-s5b6mnz5.js +1214 -0
  895. package/dist/previews-sdte4984.js +1200 -0
  896. package/dist/previews-t5tdm6t0.js +1225 -0
  897. package/dist/previews-tk7vpzj9.js +1214 -0
  898. package/dist/previews-tqt4pk27.js +1214 -0
  899. package/dist/previews-vqg4psk2.js +1225 -0
  900. package/dist/productions-4abj58kx.js +505 -0
  901. package/dist/productions-4dpec71r.js +505 -0
  902. package/dist/productions-4nedsanh.js +505 -0
  903. package/dist/productions-5c58yafp.js +505 -0
  904. package/dist/productions-5xq5cjhx.js +505 -0
  905. package/dist/productions-6dr0bmd7.js +505 -0
  906. package/dist/productions-8f6s8dqr.js +505 -0
  907. package/dist/productions-a2hcwwzf.js +505 -0
  908. package/dist/productions-b7svyjp7.js +505 -0
  909. package/dist/productions-bf2cnr05.js +505 -0
  910. package/dist/productions-dkgry3gv.js +505 -0
  911. package/dist/productions-eqh105tk.js +505 -0
  912. package/dist/productions-etvcm7yf.js +505 -0
  913. package/dist/productions-f1zpbmjz.js +505 -0
  914. package/dist/productions-j14pvx93.js +505 -0
  915. package/dist/productions-j7s1ywvg.js +505 -0
  916. package/dist/productions-jp3v3q3p.js +505 -0
  917. package/dist/productions-m9p42amj.js +505 -0
  918. package/dist/productions-mxbneawa.js +505 -0
  919. package/dist/productions-np4exh9p.js +505 -0
  920. package/dist/productions-rr1hqgda.js +505 -0
  921. package/dist/productions-rtf9ksgg.js +505 -0
  922. package/dist/productions-w2nzftcz.js +505 -0
  923. package/dist/productions-wbks5h7e.js +505 -0
  924. package/dist/productions-y99ayk6h.js +505 -0
  925. package/dist/productions-zpqyw5gm.js +505 -0
  926. package/dist/runtime/context-events.d.ts +13 -0
  927. package/dist/runtime/context-events.d.ts.map +1 -0
  928. package/dist/runtime/context-types.d.ts +82 -0
  929. package/dist/runtime/context-types.d.ts.map +1 -0
  930. package/dist/runtime/context.d.ts +12 -266
  931. package/dist/runtime/context.d.ts.map +1 -1
  932. package/dist/runtime/exports.d.ts +4 -7
  933. package/dist/runtime/exports.d.ts.map +1 -1
  934. package/dist/runtime/index.d.ts +3 -3
  935. package/dist/runtime/index.d.ts.map +1 -1
  936. package/dist/{src/runtime → runtime}/index.js +22 -13
  937. package/dist/runtime/middleware.d.ts +56 -31
  938. package/dist/runtime/middleware.d.ts.map +1 -1
  939. package/dist/runtime/router/index.d.ts +7 -0
  940. package/dist/runtime/router/index.d.ts.map +1 -0
  941. package/dist/runtime/router/types.d.ts +24 -0
  942. package/dist/runtime/router/types.d.ts.map +1 -0
  943. package/dist/runtime/validation.d.ts +9 -1
  944. package/dist/runtime/validation.d.ts.map +1 -1
  945. package/dist/{src/sveltekit → sveltekit}/index.js +36 -69
  946. package/dist/sveltekit/platform.d.ts +11 -1
  947. package/dist/sveltekit/platform.d.ts.map +1 -1
  948. package/dist/test/binding-hints.d.ts +11 -0
  949. package/dist/test/binding-hints.d.ts.map +1 -0
  950. package/dist/test/bridge-context.d.ts +7 -0
  951. package/dist/test/bridge-context.d.ts.map +1 -1
  952. package/dist/test/cf.d.ts +10 -10
  953. package/dist/test/email.d.ts.map +1 -1
  954. package/dist/test/index.d.ts +1 -7
  955. package/dist/test/index.d.ts.map +1 -1
  956. package/dist/{index-3a4mmn57.js → test/index.js} +1661 -1424
  957. package/dist/test/queue.d.ts.map +1 -1
  958. package/dist/test/remote-ai.d.ts.map +1 -1
  959. package/dist/test/remote-cloudflare.d.ts +13 -0
  960. package/dist/test/remote-cloudflare.d.ts.map +1 -0
  961. package/dist/test/remote-vectorize.d.ts.map +1 -1
  962. package/dist/test/resolve-service-bindings.d.ts.map +1 -1
  963. package/dist/test/scheduled.d.ts.map +1 -1
  964. package/dist/test/should-skip.d.ts +0 -18
  965. package/dist/test/should-skip.d.ts.map +1 -1
  966. package/dist/test/simple-context-bindings.d.ts +13 -0
  967. package/dist/test/simple-context-bindings.d.ts.map +1 -0
  968. package/dist/test/simple-context-durable-objects.d.ts +6 -0
  969. package/dist/test/simple-context-durable-objects.d.ts.map +1 -0
  970. package/dist/test/simple-context-env.d.ts +35 -0
  971. package/dist/test/simple-context-env.d.ts.map +1 -0
  972. package/dist/test/simple-context-gateway-script.d.ts +2 -0
  973. package/dist/test/simple-context-gateway-script.d.ts.map +1 -0
  974. package/dist/test/simple-context-handlers.d.ts +12 -0
  975. package/dist/test/simple-context-handlers.d.ts.map +1 -0
  976. package/dist/test/simple-context-lifecycle.d.ts +32 -0
  977. package/dist/test/simple-context-lifecycle.d.ts.map +1 -0
  978. package/dist/test/simple-context-mfconfig.d.ts +7 -0
  979. package/dist/test/simple-context-mfconfig.d.ts.map +1 -0
  980. package/dist/test/simple-context-multi-worker.d.ts +16 -0
  981. package/dist/test/simple-context-multi-worker.d.ts.map +1 -0
  982. package/dist/test/simple-context-paths.d.ts +40 -0
  983. package/dist/test/simple-context-paths.d.ts.map +1 -0
  984. package/dist/test/simple-context-runtime.d.ts +19 -0
  985. package/dist/test/simple-context-runtime.d.ts.map +1 -0
  986. package/dist/test/simple-context-startup.d.ts +11 -0
  987. package/dist/test/simple-context-startup.d.ts.map +1 -0
  988. package/dist/test/simple-context-transport.d.ts +14 -0
  989. package/dist/test/simple-context-transport.d.ts.map +1 -0
  990. package/dist/test/simple-context.d.ts +7 -26
  991. package/dist/test/simple-context.d.ts.map +1 -1
  992. package/dist/test/tail.d.ts.map +1 -1
  993. package/dist/test/utilities.d.ts +13 -5
  994. package/dist/test/utilities.d.ts.map +1 -1
  995. package/dist/test/worker.d.ts +1 -1
  996. package/dist/test/worker.d.ts.map +1 -1
  997. package/dist/token-3b9wws58.js +419 -0
  998. package/dist/token-47kcz18j.js +419 -0
  999. package/dist/token-exz78pth.js +419 -0
  1000. package/dist/token-fcthx92c.js +419 -0
  1001. package/dist/token-grwp8z4q.js +419 -0
  1002. package/dist/token-jkmm44z2.js +419 -0
  1003. package/dist/token-qxtvzm3b.js +419 -0
  1004. package/dist/token-rq8mvtz9.js +419 -0
  1005. package/dist/token-sct51r47.js +419 -0
  1006. package/dist/token-sfgxcgen.js +419 -0
  1007. package/dist/transform/durable-object.d.ts.map +1 -1
  1008. package/dist/transform/worker-entrypoint.d.ts +5 -0
  1009. package/dist/transform/worker-entrypoint.d.ts.map +1 -1
  1010. package/dist/types-0qv4xces.js +572 -0
  1011. package/dist/types-2nvrs9jg.js +572 -0
  1012. package/dist/types-2pbe8kzw.js +572 -0
  1013. package/dist/types-2zyt0m43.js +572 -0
  1014. package/dist/types-4xxer9ep.js +572 -0
  1015. package/dist/types-5t5y7a5n.js +572 -0
  1016. package/dist/types-5wd2rygw.js +572 -0
  1017. package/dist/types-7j3ykgx7.js +572 -0
  1018. package/dist/types-8g78x34n.js +572 -0
  1019. package/dist/types-e6d336q3.js +572 -0
  1020. package/dist/types-hqh2fx0x.js +572 -0
  1021. package/dist/types-j12xmdnd.js +572 -0
  1022. package/dist/types-jqn26et3.js +572 -0
  1023. package/dist/types-n0mxbq26.js +572 -0
  1024. package/dist/types-naz9hvw5.js +572 -0
  1025. package/dist/{types-158m16vd.js → types-qjcd1jks.js} +245 -141
  1026. package/dist/types-r9zb8sw1.js +572 -0
  1027. package/dist/types-rv5xwgsn.js +572 -0
  1028. package/dist/types-t39njdqx.js +572 -0
  1029. package/dist/types-tkgch3xv.js +572 -0
  1030. package/dist/types-vvtb7rrh.js +572 -0
  1031. package/dist/types-w1grncdj.js +572 -0
  1032. package/dist/types-wmw49exb.js +572 -0
  1033. package/dist/types-ymxz9jga.js +572 -0
  1034. package/dist/utils/resolve-package.d.ts.map +1 -1
  1035. package/dist/utils/send-email.d.ts.map +1 -1
  1036. package/dist/utils/send-email.js +19 -0
  1037. package/dist/vite/config-file.d.ts.map +1 -1
  1038. package/dist/{src/vite → vite}/index.js +12 -9
  1039. package/dist/vite/plugin-config-hook.d.ts +28 -0
  1040. package/dist/vite/plugin-config-hook.d.ts.map +1 -0
  1041. package/dist/vite/plugin-context.d.ts +25 -0
  1042. package/dist/vite/plugin-context.d.ts.map +1 -0
  1043. package/dist/vite/plugin-durable-objects.d.ts +18 -0
  1044. package/dist/vite/plugin-durable-objects.d.ts.map +1 -0
  1045. package/dist/vite/plugin-programmatic.d.ts +44 -0
  1046. package/dist/vite/plugin-programmatic.d.ts.map +1 -0
  1047. package/dist/vite/plugin-transform.d.ts +41 -0
  1048. package/dist/vite/plugin-transform.d.ts.map +1 -0
  1049. package/dist/vite/plugin.d.ts +6 -39
  1050. package/dist/vite/plugin.d.ts.map +1 -1
  1051. package/dist/worker-18ceqscc.js +513 -0
  1052. package/dist/worker-1yqpwte2.js +513 -0
  1053. package/dist/worker-2aw27zxy.js +513 -0
  1054. package/dist/worker-45tp4a8f.js +513 -0
  1055. package/dist/worker-68zttchg.js +513 -0
  1056. package/dist/worker-729cf3fh.js +513 -0
  1057. package/dist/worker-aydzxt4f.js +513 -0
  1058. package/dist/worker-ejdxma7k.js +513 -0
  1059. package/dist/worker-entry/composed-worker.d.ts +1 -7
  1060. package/dist/worker-entry/composed-worker.d.ts.map +1 -1
  1061. package/dist/worker-entry/durable-object-discovery.d.ts +20 -0
  1062. package/dist/worker-entry/durable-object-discovery.d.ts.map +1 -0
  1063. package/dist/worker-entry/extensions.d.ts +5 -0
  1064. package/dist/worker-entry/extensions.d.ts.map +1 -0
  1065. package/dist/worker-entry/routes.d.ts +1 -1
  1066. package/dist/worker-entry/routes.d.ts.map +1 -1
  1067. package/dist/worker-entry/surface-paths.d.ts +15 -0
  1068. package/dist/worker-entry/surface-paths.d.ts.map +1 -0
  1069. package/dist/worker-entrypoint-4xp7msd7.js +16 -0
  1070. package/dist/worker-entrypoint-f1v9y4s8.js +15 -0
  1071. package/dist/worker-f6xqjg65.js +513 -0
  1072. package/dist/worker-fdnn62de.js +513 -0
  1073. package/dist/worker-frnh95rg.js +513 -0
  1074. package/dist/worker-k55nfrmp.js +513 -0
  1075. package/dist/worker-kqc6w7ry.js +513 -0
  1076. package/dist/worker-ksvcq8be.js +513 -0
  1077. package/dist/worker-mjzfstv5.js +513 -0
  1078. package/dist/worker-p4rtsndj.js +513 -0
  1079. package/dist/worker-p6d53qan.js +513 -0
  1080. package/dist/worker-qh2qbv97.js +513 -0
  1081. package/dist/worker-r234vnv9.js +513 -0
  1082. package/dist/worker-r47bv7gt.js +513 -0
  1083. package/dist/worker-s4nvbqsm.js +513 -0
  1084. package/dist/worker-ttj7vwce.js +513 -0
  1085. package/dist/worker-wv4jdneg.js +513 -0
  1086. package/dist/worker-xcbscr75.js +513 -0
  1087. package/dist/worker-ywwkf3cp.js +513 -0
  1088. package/dist/worker-z8wtk0sh.js +513 -0
  1089. package/package.json +138 -116
  1090. package/R2.md +0 -200
  1091. package/dist/account-spa7gzsn.js +0 -421
  1092. package/dist/browser-shim/worker.d.ts +0 -14
  1093. package/dist/browser-shim/worker.d.ts.map +0 -1
  1094. package/dist/build-zv25ke4s.js +0 -102
  1095. package/dist/deploy-6xmqvv06.js +0 -118
  1096. package/dist/index-0rsa2c1t.js +0 -325
  1097. package/dist/index-2q3pmzrx.js +0 -90
  1098. package/dist/index-5s1bz1e0.js +0 -202
  1099. package/dist/index-6nb7w45m.js +0 -79
  1100. package/dist/index-n932ytmq.js +0 -470
  1101. package/dist/index-tksw7gpy.js +0 -503
  1102. package/dist/index-v43z02tr.js +0 -205
  1103. package/dist/index-xdq9ery1.js +0 -664
  1104. package/dist/src/cli/index.js +0 -10
  1105. package/dist/src/cloudflare/index.js +0 -14
  1106. package/dist/src/index.js +0 -140
  1107. package/dist/src/test/index.js +0 -80
  1108. package/dist/test/multi-worker-context.d.ts +0 -114
  1109. package/dist/test/multi-worker-context.d.ts.map +0 -1
package/README.md CHANGED
@@ -22,20 +22,30 @@ For the deeper public contract, caveats, and current feature boundaries, see [`L
22
22
 
23
23
  ---
24
24
 
25
- ## Install
25
+ ## Monorepo contributor workflow
26
26
 
27
- For a worker-only project, Devflare works fine with just the Worker toolchain:
27
+ When you are working on `packages/devflare` inside this monorepo, use the repo-root Turbo scripts instead of assembling ad-hoc commands by hand:
28
28
 
29
- ```bash
30
- bun add -d devflare wrangler @cloudflare/workers-types
31
- ```
29
+ - `bun run devflare:dev`
30
+ - `bun run devflare:test:watch`
31
+ - `bun run devflare:build`
32
+ - `bun run devflare:typecheck`
33
+ - `bun run devflare:test`
34
+ - `bun run devflare:types`
35
+ - `bun run devflare:check`
36
+ - `bun run devflare:ci`
37
+
38
+ These scripts intentionally keep the default shared lane focused on the parts of the workspace that are currently stable in local development and CI. In particular, the shared test lane excludes `@devflare/case5-multi-worker`, and the shared check lane stays centered on `apps/documentation` because `cases/case18` still expects Cloudflare-backed resource resolution outside the default contributor workflow.
39
+
40
+ ---
41
+
42
+ ## Install
32
43
 
33
- If the current package also uses Vite, add Vite and the Cloudflare Vite plugin too:
44
+ For a worker-only project, the smallest install is just Devflare:
34
45
 
35
46
  ```bash
36
- bun add -d devflare wrangler @cloudflare/workers-types vite @cloudflare/vite-plugin
47
+ bun add -d devflare vite @cloudflare/vite-plugin
37
48
  ```
38
-
39
49
  A local `vite.config.*` opts that package into Vite-backed flows. Without one, Devflare stays in worker-only mode.
40
50
 
41
51
  ---
@@ -46,7 +56,7 @@ A local `vite.config.*` opts that package into Vite-backed flows. Without one, D
46
56
 
47
57
  ```ts
48
58
  // devflare.config.ts
49
- import { defineConfig } from 'devflare'
59
+ import { defineConfig } from 'devflare/config'
50
60
 
51
61
  export default defineConfig({
52
62
  name: 'hello-worker',
@@ -57,19 +67,16 @@ export default defineConfig({
57
67
  })
58
68
  ```
59
69
 
70
+ Use `devflare/config` for config files so Bun only loads the lightweight config helpers instead of the full Node-side Devflare barrel.
71
+
60
72
  ### 2. Add a fetch handler
61
73
 
62
74
  ```ts
63
75
  // src/fetch.ts
64
76
  import type { FetchEvent } from 'devflare/runtime'
65
77
 
66
- export async function fetch({ request }: FetchEvent): Promise<Response> {
67
- const url = new URL(request.url)
68
- return new Response(
69
- url.pathname === '/'
70
- ? 'Hello from Devflare'
71
- : `Hello from Devflare: ${url.pathname}`
72
- )
78
+ export async function fetch({ url }: FetchEvent): Promise<Response> {
79
+ return new Response(`Hello from Devflare: ${url.pathname}`)
73
80
  }
74
81
  ```
75
82
 
@@ -79,8 +86,6 @@ export async function fetch({ request }: FetchEvent): Promise<Response> {
79
86
  bunx --bun devflare types
80
87
  ```
81
88
 
82
- This generates `env.d.ts` so bindings, secrets, and discovered entrypoints stay typed.
83
-
84
89
  ### 4. Start development
85
90
 
86
91
  ```bash
@@ -115,14 +120,17 @@ Use subpaths intentionally.
115
120
 
116
121
  | Import | Use for |
117
122
  |---|---|
118
- | `devflare` | main package entrypoint: config helpers, `ref()`, unified `env`, bridge helpers, CLI helpers, decorators |
119
- | `devflare/runtime` | worker-safe runtime helpers like `env`, `ctx`, `event`, `locals`, event types/getters, middleware helpers |
120
- | `devflare/test` | `createTestContext`, `cf.*`, mock helpers, bridge test context, skip helpers |
123
+ | `devflare` | main package entrypoint: `defineConfig`, `defineWorker`, `ref()`, the unified `env`/`ctx`/`event`/`locals` proxies, `sequence`, `defineFetchHandler`, decorators |
124
+ | `devflare/config` | lightweight config-only entry for `devflare.config.ts` files (Bun loads only the config helpers, not the full Node-side barrel) |
125
+ | `devflare/runtime` | worker-safe runtime helpers: strict `env`, `ctx`, `event`, `locals`, event types/getters, middleware helpers |
126
+ | `devflare/test` | `createTestContext`, `cf.*`, mock helpers (`createMockKV`/`createMockD1`/`createMockR2`/`createMockEnv`/`createMockTestContext`/`withTestContext`) |
121
127
  | `devflare/vite` | Vite integration |
122
128
  | `devflare/sveltekit` | SvelteKit integration |
123
129
  | `devflare/cloudflare` | Cloudflare account/auth/usage/limits/preferences helpers |
124
130
  | `devflare/decorators` | decorators only |
125
131
 
132
+ Internal bridge and transform helpers are intentionally not re-exported from bare `'devflare'`. If you previously imported them from the main entry, switch to the matching subpath — see "Public API surface and migration notes" below.
133
+
126
134
  ### Runtime import rule of thumb
127
135
 
128
136
  - use `import { env } from 'devflare/runtime'` for **strict request-scoped runtime access**
@@ -193,8 +201,8 @@ async function corsHandle(event: FetchEvent, resolve: ResolveFetch): Promise<Res
193
201
  return next
194
202
  }
195
203
 
196
- async function appFetch({ request }: FetchEvent): Promise<Response> {
197
- return Response.json({ path: new URL(request.url).pathname })
204
+ async function appFetch({ url }: FetchEvent): Promise<Response> {
205
+ return Response.json({ path: url.pathname })
198
206
  }
199
207
 
200
208
  export const handle = sequence(corsHandle, appFetch)
@@ -299,6 +307,7 @@ The most important top-level keys are:
299
307
  - `accountId`
300
308
  - `compatibilityDate`
301
309
  - `compatibilityFlags`
310
+ - `previews`
302
311
  - `files`
303
312
  - `bindings`
304
313
  - `triggers`
@@ -322,13 +331,14 @@ Keep these separate:
322
331
  - `vars` are **string-valued config bindings** that compile into generated Wrangler config
323
332
  - `secrets` are **declarations of expected runtime secret bindings**
324
333
 
325
- `loadConfig()` does **not** do dotenv loading by itself.
334
+ `loadConfig()` loads the nearest workspace-root `.env` before evaluating `devflare.config.*`.
326
335
 
327
- When you run the CLI under Bun, Bun may already have loaded `.env` values into `process.env` before your config executes.
336
+ When Devflare finds an ancestor `package.json` with `workspaces`, it uses that directory's `.env` file as the shared config-time source for nested packages. If no workspace root is found, it falls back to the nearest ancestor `.env`. Explicit process env values still win over `.env` entries.
328
337
 
329
338
  Important boundary:
330
339
 
331
- - `.env*` files are config/build-time inputs only insofar as the surrounding host tool has already populated `process.env`
340
+ - `.env` is treated as a config/build-time input for `devflare.config.*` evaluation
341
+ - Devflare does **not** currently provide first-class semantics for `.env.dev` or `.env.<name>`
332
342
  - Devflare does **not** currently provide a first-class `.dev.vars*` loader for worker-only dev mode or `createTestContext()`
333
343
  - example files like `.env.example` and `.dev.vars.example` are a team convention, not a Devflare feature
334
344
 
@@ -348,14 +358,17 @@ When you select `--env name`, Devflare merges `config.env[name]` into the base c
348
358
 
349
359
  `bindings.d1` accepts three shapes:
350
360
 
351
- - `'database-id'`
361
+ - `'database-name'`
352
362
  - `{ id: 'database-id' }`
353
363
  - `{ name: 'database-name' }`
354
364
 
355
- Use `{ name }` when you want `devflare.config.*` to stay the source of truth for stable D1 naming.
365
+ String shorthand is the stable-name form, so `'database-name'` is equivalent to `{ name: 'database-name' }`.
356
366
 
357
- - local dev and tests normalize `{ name }` into a stable local identifier, so you do **not** need Cloudflare auth just to run locally
358
- - `build`, `deploy`, `devflare/vite`, and `devflare config print` resolve `{ name }` into a real Cloudflare D1 database id before they emit Wrangler-facing config
367
+ Use string shorthand or `{ name }` when you want `devflare.config.*` to stay the source of truth for stable D1 naming.
368
+
369
+ - local dev and tests normalize string and `{ name }` bindings into a stable local identifier, so you do **not** need Cloudflare auth just to run locally
370
+ - `build`, `deploy`, `devflare/vite`, and `devflare config print` resolve string and `{ name }` bindings into a real Cloudflare D1 database id before they emit Wrangler-facing config
371
+ - `compileConfig()` can only emit Wrangler `d1_databases` from concrete ids, so Node-side automation should call `loadResolvedConfig()` or `resolveConfigResources()` first
359
372
 
360
373
  That means stable names stay in config, while opaque Cloudflare ids are resolved only for the flows that actually need them.
361
374
 
@@ -380,7 +393,7 @@ console.log(config.bindings?.d1?.DB)
380
393
  If you need Cloudflare account/resource data while computing config, use an async config with `devflare/cloudflare` helpers:
381
394
 
382
395
  ```ts
383
- import { defineConfig } from 'devflare'
396
+ import { defineConfig } from 'devflare/config'
384
397
  import { account } from 'devflare/cloudflare'
385
398
 
386
399
  export default defineConfig(async () => {
@@ -468,12 +481,13 @@ Devflare natively models:
468
481
  - KV, D1, R2, Durable Objects, queues, and the core test/runtime flow are the strongest surfaces
469
482
  - AI and Vectorize are remote-oriented bindings
470
483
  - named service entrypoints are modeled at the Devflare layer, but validate generated deployment output if they are critical to your app
484
+ - browser bindings use a named-map authoring shape such as `browser: { BROWSER: 'browser' }`, but current compile/deploy flows allow exactly one browser binding because Wrangler only supports one
471
485
  - `sendEmail` is modeled through config compilation, generated env types, and local runtime/test flows
472
486
  - R2 bindings are real in local dev/test/runtime flows, but Devflare does **not** publish a stable browser-facing local bucket URL contract; browser-visible local asset flows should go through your Worker routes
473
487
 
474
- For R2 delivery strategy guidance, see [`R2.md`](./R2.md).
488
+ For R2 delivery strategy guidance, use the `R2 uploads & delivery` page in the documentation site.
475
489
 
476
- For D1, prefer stable config names when you can:
490
+ For D1 and Hyperdrive, prefer stable config names when you can:
477
491
 
478
492
  ```ts
479
493
  export default {
@@ -482,6 +496,10 @@ export default {
482
496
  DB: { name: 'app-db' },
483
497
  AUDIT: { id: 'existing-d1-id' }
484
498
  },
499
+ hyperdrive: {
500
+ DB: 'app-postgres',
501
+ ANALYTICS_DB: { id: 'existing-hyperdrive-id' }
502
+ },
485
503
  r2: {
486
504
  ASSETS: 'app-assets'
487
505
  }
@@ -489,7 +507,7 @@ export default {
489
507
  }
490
508
  ```
491
509
 
492
- Use `.env*` and `secrets` for values that are actually secret or genuinely process-specific. Do **not** move stable bucket/database names into env vars just to make other tooling happy.
510
+ Use `.env*` and `secrets` for values that are actually secret or genuinely process-specific. Do **not** move stable bucket/database/Hyperdrive names into env vars just to make other tooling happy.
493
511
 
494
512
  ---
495
513
 
@@ -526,7 +544,226 @@ Short version:
526
544
  - in worker-only mode, Devflare now bundles the composed main worker to `.devflare/worker-entrypoints/main.js` via Rolldown before handing it to Miniflare or Wrangler
527
545
  - Rolldown still rebuilds Durable Object worker code in unified Vite dev flows where Vite hosts the outer app
528
546
 
529
- For the full contract-level explanation and a concrete Rolldown + Svelte example, see [`LLM.md`](./LLM.md).
547
+ For the full contract-level explanation and a concrete Rolldown + Svelte example, see the generated [`LLM.md`](./LLM.md) handbook entries for workflow modes and Svelte in workers.
548
+
549
+ ---
550
+
551
+ ## Deploys, previews, tokens, and GitHub Actions
552
+
553
+ ### Production deploys vs same-Worker previews
554
+
555
+ `devflare deploy` publishes production the usual Wrangler way.
556
+
557
+ `devflare deploy --preview` is different: it uploads a **new version of the same Worker** with `wrangler versions upload` instead of creating a separate Worker environment.
558
+
559
+ Named preview deploys are now the primary preview model:
560
+
561
+ - each preview scope deploys its own dedicated Worker (or Worker family)
562
+ - preview-scoped bindings and resources can be assigned only to that scope
563
+ - feature branches and PRs get stable preview URLs from the scope name itself
564
+
565
+ Preview scope names should still be lowercase and dash-friendly so they map cleanly into Worker names and `workers.dev` URLs.
566
+
567
+ Useful preview examples:
568
+
569
+ ```bash
570
+ bunx --bun devflare deploy --preview next
571
+ bunx --bun devflare deploy --preview pr-42
572
+ ```
573
+
574
+ When available, Devflare prints the Worker version id and preview URL outputs after the deploy finishes.
575
+
576
+ ### Login and preview scope helpers
577
+
578
+ `devflare login` is the thin authentication wrapper for Cloudflare.
579
+
580
+ - by default it reuses existing auth when Devflare can already resolve a Cloudflare API token
581
+ - `devflare login --force` opens `wrangler login` again even when auth is already present
582
+ - after login, Devflare prints the primary account when Cloudflare account discovery succeeds
583
+
584
+ `devflare previews` is the config-aware preview-scope surface for dedicated preview Workers.
585
+
586
+ Useful commands:
587
+
588
+ ```bash
589
+ bunx --bun devflare previews
590
+ bunx --bun devflare previews bindings --scope next
591
+ bunx --bun devflare previews cleanup --scope next --apply
592
+ bunx --bun devflare previews cleanup --all --apply
593
+ ```
594
+
595
+ Current behavior:
596
+
597
+ - `devflare previews` lists stable workers plus discovered dedicated preview scopes for the current worker family using live Cloudflare Worker names
598
+ - `devflare previews bindings` resolves preview-scoped resources for one scope and shows how many deployed workers reference them
599
+ - `devflare previews cleanup` deletes dedicated preview Workers plus preview-scoped KV, D1, R2, Queue, Vectorize, and reusable Hyperdrive resources for one scope or every discovered scope; it is a dry run unless `--apply` is present
600
+ - `devflare deploy` still performs best-effort internal preview metadata synchronization after successful deploys so cleanup flows can remove deleted preview workers cleanly without extra CI glue
601
+
602
+ ### Manage Devflare tokens
603
+
604
+ `devflare tokens <bootstrap-token>` manages Devflare-owned account API tokens using a bootstrap token that already has Cloudflare API-token-management permission.
605
+
606
+ The command:
607
+
608
+ - resolves the effective account id from `--account`, workspace preference, or the bootstrap token's primary account
609
+ - normalizes managed token names to the `devflare-` prefix, so `preview` becomes `devflare-preview` while `devflare-preview` stays unchanged
610
+ - `--new [token-name]` prompts for a token name when it is omitted, then creates a new Devflare-managed account-owned token from the curated Devflare permission set
611
+ - `--new [token-name] --all-flags` uses every reusable account-scoped permission group visible to the bootstrap token except `Account API Tokens*`, because Cloudflare does not allow sub-tokens to inherit token-management permission and account-owned tokens skip incompatible zone/user-scoped groups automatically
612
+ - `--list` lists only the Devflare-managed tokens in the selected account
613
+ - `--delete [token-name]` deletes the matching Devflare-managed token after normalizing the name to the `devflare-` prefix
614
+ - `--delete-all` deletes every Devflare-managed token in the selected account while leaving non-Devflare account tokens untouched
615
+ - prints a new token value once, because Cloudflare only returns the secret a single time
616
+
617
+ Examples:
618
+
619
+ ```bash
620
+ bunx --bun devflare tokens <bootstrap-token> --new preview
621
+ bunx --bun devflare tokens <bootstrap-token> --new preview --all-flags
622
+ bunx --bun devflare tokens <bootstrap-token> --list
623
+ bunx --bun devflare tokens <bootstrap-token> --delete preview
624
+ bunx --bun devflare tokens <bootstrap-token> --delete-all
625
+ ```
626
+
627
+ ### Thin GitHub Action and caller workflows
628
+
629
+ The repo ships a reusable composite action at [`.github/actions/devflare-deploy`](../../.github/actions/devflare-deploy).
630
+
631
+ The repo also ships a shared workspace setup action at [`.github/actions/devflare-setup-workspace`](../../.github/actions/devflare-setup-workspace) so one workflow job can install dependencies once and then deploy multiple preview targets from the same checkout.
632
+
633
+ The repo also ships a GitHub-feedback action at [`.github/actions/devflare-github-feedback`](../../.github/actions/devflare-github-feedback) for publishing deployment results back into GitHub.
634
+
635
+ The action stays intentionally thin:
636
+
637
+ - the caller workflow owns the runner, triggers, permissions, and environments
638
+ - Cloudflare credentials must be passed in explicitly
639
+ - by default, the action asks `devflare deploy` to verify Cloudflare control-plane state before the step is considered successful
640
+ - the caller workflow should pass a deterministic `preview-scope`, such as the branch name or `pr-<number>`, for stable dedicated preview Worker naming across PR, push, and manual workflows
641
+
642
+ The reporting split is also intentional:
643
+
644
+ - GitHub PR feedback should use a stable PR comment because PRs are issue-backed conversations
645
+ - GitHub branch feedback should use Deployments + deployment statuses because GitHub does not provide first-class branch comments
646
+ - one preview workflow can publish both branch deployment feedback and the shared PR comment in the same run when a pushed branch already belongs to an open pull request
647
+
648
+ Current action inputs that matter most:
649
+
650
+ - `working-directory`
651
+ - `environment`
652
+ - `production`
653
+ - `preview-scope`
654
+ - `skip-setup`
655
+ - `skip-install`
656
+ - `verify-deployment` (defaults to `true`)
657
+ - `cloudflare-api-token`
658
+ - `cloudflare-account-id`
659
+
660
+ When `verify-deployment` is enabled, the action fails if Devflare cannot confirm the uploaded version in Cloudflare, or for non-preview deploys, cannot confirm that a live deployment now references that version.
661
+
662
+ Action outputs:
663
+
664
+ - `preview-url`
665
+ - `version-id`
666
+ - `status`
667
+ - `exit-code`
668
+ - `log-excerpt`
669
+
670
+ Those extra outputs are especially useful when the caller workflow uses `continue-on-error: true` on the deploy step so it can still post a failure comment or deployment status before failing the job.
671
+
672
+ Minimal preview step:
673
+
674
+ ```yaml
675
+ - id: deploy
676
+ uses: ./.github/actions/devflare-deploy
677
+ with:
678
+ working-directory: apps/documentation
679
+ preview-scope: ${{ github.head_ref || github.ref_name }}
680
+ cloudflare-api-token: ${{ secrets.CLOUDFLARE_API_TOKEN }}
681
+ cloudflare-account-id: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
682
+ ```
683
+
684
+ This repository now keeps preview delivery in one shared workflow plus one production workflow:
685
+
686
+ - [`.github/workflows/preview.yml`](../../.github/workflows/preview.yml) handles documentation + testing previews, push + PR lifecycle triggers, branch + PR targets, and cleanup flows from one place
687
+ - [`.github/workflows/documentation-production.yml`](../../.github/workflows/documentation-production.yml) handles production deploys from the repository default branch plus GitHub deployment statuses
688
+ - [`.github/workflow-examples/branch-preview-cleanup.example.yml`](../../.github/workflow-examples/branch-preview-cleanup.example.yml) remains as a copyable delete-triggered preview-scope cleanup template for downstream repos that want a smaller starting point
689
+
690
+ The live workflows now rely on the deploy action's control-plane verification for deploy success.
691
+
692
+ If you want other feedback modes in your own repo, the supported patterns are:
693
+
694
+ - PR-only preview feedback: `mode: comment`
695
+ - branch-only preview feedback: `mode: deployment`
696
+ - combined branch deployment + PR comment feedback: either `mode: both` with `resolve-pr-from-ref: 'true'`, or separate deployment/comment steps inside one shared preview workflow when you want finer control over grouped PR comments
697
+
698
+ Repository-specific runtime checks still exist where they are testing app
699
+ behavior rather than deploy success. For example,
700
+ [`preview.yml`](../../.github/workflows/preview.yml)
701
+ deploys testing previews for both branch and PR scopes from one prepared job
702
+ when a pushed branch already belongs to an open pull request, while still
703
+ keeping its deployed-binding verification because it is validating runtime
704
+ bindings and deployment-channel wiring rather than merely asking whether
705
+ Cloudflare accepted the upload.
706
+
707
+ For branch-scoped real preview deploys such as `apps/testing`, Devflare now
708
+ automatically omits shared queue consumers from the deployed Wrangler config,
709
+ and it omits cron triggers by default, when it detects the branch-preview
710
+ strategy (`--env preview` plus branch scope, without `--preview`). That keeps
711
+ previews from colliding on singleton Cloudflare resources while leaving the
712
+ authoring config itself fully exhaustive for local dev, tests, and production
713
+ deploys.
714
+
715
+ If a branch-scoped preview really should keep its cron schedule, opt in with:
716
+
717
+ ```ts
718
+ export default defineConfig({
719
+ previews: {
720
+ includeCrons: true
721
+ }
722
+ })
723
+ ```
724
+
725
+ If those previews also need preview-owned Cloudflare resources, use
726
+ `preview.scope()` in the config authoring layer:
727
+
728
+ ```ts
729
+ import { defineConfig, preview } from 'devflare/config'
730
+
731
+ const pv = preview.scope()
732
+
733
+ export default defineConfig({
734
+ bindings: {
735
+ kv: {
736
+ CACHE: pv('my-cache-kv')
737
+ },
738
+ r2: {
739
+ ASSETS: pv('my-assets-bucket')
740
+ }
741
+ }
742
+ })
743
+ ```
744
+
745
+ Devflare resolves those opaque markers to base names outside preview
746
+ environments, and to preview-scoped names such as `my-cache-kv-preview` (or a
747
+ branch-derived suffix when `DEVFLARE_PREVIEW_BRANCH`, `DEVFLARE_PREVIEW_PR`, or
748
+ `DEVFLARE_PREVIEW_IDENTIFIER` is present) for preview resolution and deploys.
749
+ During `devflare deploy --env preview`, Devflare also provisions missing
750
+ preview-scoped KV, D1, R2, Queue, and Vectorize resources automatically before
751
+ the Wrangler deploy runs. Preview-scoped Hyperdrive names are reused when the
752
+ matching preview config already exists, and otherwise Devflare falls back to the
753
+ base Hyperdrive config because Cloudflare does not expose stored Hyperdrive
754
+ credentials for cloning preview configs automatically. Use
755
+ `devflare previews cleanup --env preview --apply` during PR-close or
756
+ branch-delete cleanup to delete the preview-owned resources again.
757
+ Service bindings created through `ref()` still follow the referenced worker
758
+ names, so branch-scoped worker naming remains the way to isolate preview
759
+ service bindings.
760
+
761
+ ---
762
+
763
+ ## Repo examples
764
+
765
+ - [`apps/documentation/`](../../apps/documentation/) is the executable SvelteKit example for dev, build, preview deploys, production deploys, workflow automation, and browser validation
766
+ - [`apps/testing/`](../../apps/testing/) is the exhaustive binding-matrix example for the config contract itself, including `preview.scope()`-driven preview resource names, production overrides where bindings differ by deployment channel, and a tiny `src/fetch.ts` smoke Worker exercised by repository integration tests through `devflare/test`
530
767
 
531
768
  ---
532
769
 
@@ -562,33 +799,101 @@ It also auto-detects conventional `src/fetch.ts`, `src/queue.ts`, `src/scheduled
562
799
  - `cf.email.send()` invokes the configured email handler in `createTestContext()`-backed tests and otherwise falls back to the local email endpoint; for ingress-fidelity-sensitive flows, validate with a higher-level integration test
563
800
  - remote mode is mainly about AI and Vectorize, not “make every binding remote”
564
801
 
802
+ ### Choosing pure mocks vs Miniflare-backed `createTestContext()`
803
+
804
+ `devflare/test` ships two complementary lanes. Pick by what you are validating:
805
+
806
+ - **Pure mocks** (`createMockKV`, `createMockD1`, `createMockR2`, `createMockEnv`, `createMockTestContext`, `withTestContext`):
807
+ - Fast, in-process, no Miniflare boot
808
+ - Use when you are unit-testing a function that reads or writes a single binding and you control the inputs
809
+ - Behavior is approximate: KV is binary-safe, D1 supports `SELECT`/`INSERT` per-table fixtures, R2 stores bytes — anything beyond those primitives will diverge from production
810
+ - **`createTestContext()` (Miniflare-backed)**:
811
+ - Boots a real Workers runtime locally with your `devflare.config.ts`
812
+ - Use when you are testing handler dispatch, multi-binding flows, queues/scheduled/email/Durable Objects, route discovery, middleware composition, or anything that needs accurate Workers semantics
813
+ - Slower per test, so reuse one context per test file when possible
814
+
815
+ Rule of thumb: if the assertion is "given inputs X, my function returns Y", reach for the mocks. If the assertion is "the worker behaves correctly when this binding/handler/route fires", use `createTestContext()`.
816
+
817
+ ---
818
+
819
+ ## Public API surface and migration notes
820
+
821
+ Devflare's bare `'devflare'` import is intentionally narrow and only exposes the documented public API. Internal helpers for the bridge, transform, and test runner are reachable from dedicated subpaths instead:
822
+
823
+ - `devflare` — primary public API (`defineConfig`, `defineWorker`, `sequence`, `defineFetchHandler`, runtime context accessors, etc.)
824
+ - `devflare/test` — `createTestContext`, `cf`, mock factories
825
+ - `devflare/runtime` — runtime accessors (`env`, `ctx`, `event`, `locals`, helpers)
826
+ - `devflare/cloudflare` — Cloudflare API helpers
827
+ - `devflare/sveltekit` — SvelteKit platform glue
828
+ - `devflare/decorators` — `@durableObject` and other decorators
829
+
830
+ If you previously imported internal helpers (e.g., bridge serialization or transform helpers) from bare `'devflare'`, switch to the matching subpath. The internal modules are not considered stable public API and may change between minor versions.
831
+
565
832
  ---
566
833
 
567
834
  ## CLI
568
835
 
836
+ Every top-level command supports `--help`, and nested command groups support both:
837
+
838
+ - `bunx --bun devflare <command> --help`
839
+ - `bunx --bun devflare <command> <subcommand> --help`
840
+ - `bunx --bun devflare help <command> [subcommand]`
841
+
569
842
  | Command | What it does |
570
843
  |---|---|
571
844
  | `devflare init` | scaffold a project using `src/fetch.ts` and explicit `files.fetch` |
572
845
  | `devflare dev` | start the worker-only dev server, enabling Vite only when the current package has a local `vite.config.*` |
573
- | `devflare build` | resolve config, generate `wrangler.jsonc`, and run `vite build` only for Vite-backed packages |
574
- | `devflare deploy` | build and deploy with Wrangler |
846
+ | `devflare build` | resolve config locally, preserve named bindings in generated build artifacts, and run `vite build` only for Vite-backed packages |
847
+ | `devflare deploy` | build or reuse a prior artifact via `--build`, provision named deploy resources, and deploy with Wrangler, including same-Worker preview uploads via `--preview` |
575
848
  | `devflare types` | generate `env.d.ts` |
576
- | `devflare doctor` | check project configuration and generated artifacts |
849
+ | `devflare doctor` | check project configuration plus generated artifact locations such as `.devflare/wrangler.jsonc`, `.devflare/build/wrangler.jsonc`, and `.wrangler/deploy/config.json` |
577
850
  | `devflare config` | print resolved Devflare config or resolved Wrangler JSON |
578
851
  | `devflare account` | inspect accounts, resources, usage, and limits |
852
+ | `devflare login` | authenticate with Cloudflare via Wrangler, reusing existing auth unless `--force` is passed |
853
+ | `devflare previews` | inspect and clean dedicated preview Workers plus preview-owned scope resources |
854
+ | `devflare productions` | inspect live production Workers, list recent versions, roll back, or delete a live Worker script |
855
+ | `devflare worker` | run Worker control-plane actions such as remote renaming and local config sync |
856
+ | `devflare tokens` | create, list, and delete Devflare-managed account-owned tokens from a bootstrap token with API-token-management permission |
857
+ | `devflare help` | print the command overview or the detailed help page for a command path |
858
+ | `devflare version` | print the installed Devflare version |
579
859
  | `devflare ai` | show Workers AI model pricing info |
580
860
  | `devflare remote` | manage remote test mode |
581
861
 
862
+ Command defaults:
863
+
864
+ - `devflare config` defaults to `devflare config print`
865
+ - `devflare previews` defaults to `devflare previews list`
866
+ - `devflare productions` defaults to `devflare productions list`
867
+
868
+ ### Command groups
869
+
870
+ | Group | Subcommands / operations |
871
+ |---|---|
872
+ | `account` | `info`, `workers`, `kv`, `d1`, `r2`, `vectorize`, `usage`, `limits`, `limits set`, `limits enable`, `limits disable`, `global`, `workspace` |
873
+ | `config` | `print` |
874
+ | `previews` | `list`, `bindings`, `cleanup` |
875
+ | `productions` | `list`, `versions`, `rollback`, `delete` |
876
+ | `remote` | `status`, `enable`, `disable` |
877
+ | `worker` | `rename` |
878
+ | `tokens` | `--list`, `--new`, `--roll`, `--delete`, `--delete-all` (flag-driven operations rather than subcommands) |
879
+
582
880
  Useful flags:
583
881
 
584
882
  - `build --env <name>`
883
+ - `deploy --build <path>`
585
884
  - `deploy --env <name>`
586
885
  - `deploy --dry-run`
886
+ - `deploy --preview <name>`
887
+ - `login --force`
888
+ - `previews`
889
+ - `previews cleanup --scope <name> --apply`
587
890
  - `config print --json`
588
891
  - `config print --format wrangler`
589
892
  - `types --output <path>`
590
893
  - `doctor --config <path>`
591
894
  - `account --account <id>`
895
+ - `tokens <bootstrap-token> --new [name]`
896
+ - `tokens <bootstrap-token> --list`
592
897
 
593
898
  Recommended invocation style:
594
899
 
@@ -596,6 +901,8 @@ Recommended invocation style:
596
901
  bunx --bun devflare dev
597
902
  bunx --bun devflare types
598
903
  bunx --bun devflare build
904
+ bunx --bun devflare help account limits set
905
+ bunx --bun devflare previews cleanup --help
599
906
  ```
600
907
 
601
908
  ---
@@ -604,9 +911,15 @@ bunx --bun devflare build
604
911
 
605
912
  Treat these as generated output, not source of truth:
606
913
 
607
- - `.devflare/`
914
+ - `.devflare/wrangler.jsonc`
915
+ - `.devflare/build/wrangler.jsonc`
916
+ - `.devflare/worker-entrypoints/main.ts`
917
+ - `.devflare/worker-entrypoints/main.js`
918
+ - `.devflare/vite.config.mjs`
919
+ - `.wrangler/deploy/config.json`
608
920
  - `env.d.ts`
609
- - generated `wrangler.jsonc`
921
+
922
+ `devflare build` keeps name-based bindings as names in these generated artifacts. `devflare deploy` is the step that resolves or provisions the concrete Cloudflare resources and rewrites the generated Wrangler config with the IDs Wrangler needs.
610
923
 
611
924
  The source of truth is still:
612
925
 
@@ -616,6 +929,29 @@ The source of truth is still:
616
929
 
617
930
  ---
618
931
 
932
+ ## Maintainer scripts
933
+
934
+ These scripts live in `packages/devflare/scripts/` and are intended for Devflare maintainers, not for end-user applications.
935
+
936
+ ### `refresh-permission-groups`
937
+
938
+ Fetches the live Cloudflare permission-group catalog and rewrites `src/cloudflare/known-permission-group-ids.generated.ts` so the symbolic Devflare permission-group names (`WORKERS_SCRIPTS_WRITE`, etc.) map to verified Cloudflare UUIDs instead of falling back to display-name matching.
939
+
940
+ ```sh
941
+ # from the repo root
942
+ CLOUDFLARE_API_TOKEN=... CLOUDFLARE_ACCOUNT_ID=... bun run --cwd packages/devflare refresh-permission-groups
943
+ ```
944
+
945
+ Flags:
946
+
947
+ - `--dry-run` — print the would-be generated file to stdout instead of writing to disk; useful for CI drift checks.
948
+ - `--keep-existing` — keep the previously-known UUID for entries missing from the API response, instead of clearing them to `null`.
949
+ - `--output <path>` — override the destination file; defaults to `packages/devflare/src/cloudflare/known-permission-group-ids.generated.ts`.
950
+
951
+ The API token must have permission to read `/accounts/:id/tokens/permission_groups`. The script never touches `tokens.ts` directly, so the public matcher API and its display-name fallback continue to work even when the generated file ships with all-`null` entries.
952
+
953
+ ---
954
+
619
955
  ## In one sentence
620
956
 
621
957
  **Devflare helps you build Cloudflare Workers with clearer structure, better local tooling, and a development workflow that stays coherent as the app grows.**
package/bin/devflare.js CHANGED
@@ -1,14 +1,24 @@
1
1
  #!/usr/bin/env bun
2
- import { runCli } from "../dist/src/cli/index.js";
2
+ import { existsSync } from 'node:fs'
3
+ import { dirname, resolve } from 'node:path'
4
+ import { fileURLToPath, pathToFileURL } from 'node:url'
3
5
 
4
- // Pass CLI arguments (skip node and script path)
5
- const args = process.argv.slice(2);
6
+ const currentDir = dirname(fileURLToPath(import.meta.url))
7
+ const sourceCliEntryPath = resolve(currentDir, '../src/cli/index.ts')
8
+ const distCliEntryPath = resolve(currentDir, '../dist/cli/index.js')
9
+ const cliEntryPath = existsSync(sourceCliEntryPath)
10
+ ? sourceCliEntryPath
11
+ : distCliEntryPath
12
+
13
+ const { runCli } = await import(pathToFileURL(cliEntryPath).href)
14
+
15
+ const args = process.argv.slice(2)
6
16
 
7
17
  runCli(args)
8
18
  .then((result) => {
9
- process.exit(result.exitCode);
19
+ process.exit(result.exitCode)
10
20
  })
11
21
  .catch((error) => {
12
- console.error("CLI error:", error);
13
- process.exit(1);
14
- });
22
+ console.error('CLI error:', error)
23
+ process.exit(1)
24
+ })