alchemy 0.45.6 → 0.46.1

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 (352) hide show
  1. package/README.md +2 -2
  2. package/bin/alchemy.mjs +19280 -15136
  3. package/bin/alchemy.ts +14 -56
  4. package/bin/commands/create.ts +307 -137
  5. package/bin/commands/deploy.ts +23 -0
  6. package/bin/commands/destroy.ts +19 -0
  7. package/bin/commands/dev.ts +21 -0
  8. package/bin/commands/login.ts +63 -0
  9. package/bin/commands/run.ts +29 -0
  10. package/bin/services/dependencies.ts +0 -5
  11. package/bin/services/execute-alchemy.ts +160 -0
  12. package/bin/services/git.ts +27 -0
  13. package/bin/services/github-workflow.ts +229 -0
  14. package/bin/services/package-manager.ts +51 -68
  15. package/bin/services/template-manager.ts +10 -21
  16. package/bin/trpc.ts +3 -0
  17. package/bin/types.ts +4 -2
  18. package/lib/apply.d.ts +2 -0
  19. package/lib/apply.d.ts.map +1 -1
  20. package/lib/apply.js +26 -8
  21. package/lib/apply.js.map +1 -1
  22. package/lib/build-date.d.ts +1 -1
  23. package/lib/build-date.js +1 -1
  24. package/lib/cloudflare/ai.d.ts +8 -4
  25. package/lib/cloudflare/ai.d.ts.map +1 -1
  26. package/lib/cloudflare/ai.js +6 -8
  27. package/lib/cloudflare/ai.js.map +1 -1
  28. package/lib/cloudflare/analytics-engine.d.ts +11 -7
  29. package/lib/cloudflare/analytics-engine.d.ts.map +1 -1
  30. package/lib/cloudflare/analytics-engine.js +11 -9
  31. package/lib/cloudflare/analytics-engine.js.map +1 -1
  32. package/lib/cloudflare/{types.d.ts → api-response.d.ts} +6 -1
  33. package/lib/cloudflare/api-response.d.ts.map +1 -0
  34. package/lib/cloudflare/api-response.js +38 -0
  35. package/lib/cloudflare/api-response.js.map +1 -0
  36. package/lib/cloudflare/api.d.ts +9 -5
  37. package/lib/cloudflare/api.d.ts.map +1 -1
  38. package/lib/cloudflare/api.js +6 -46
  39. package/lib/cloudflare/api.js.map +1 -1
  40. package/lib/cloudflare/auth.d.ts +16 -35
  41. package/lib/cloudflare/auth.d.ts.map +1 -1
  42. package/lib/cloudflare/auth.js +50 -129
  43. package/lib/cloudflare/auth.js.map +1 -1
  44. package/lib/cloudflare/browser-rendering.d.ts +12 -3
  45. package/lib/cloudflare/browser-rendering.d.ts.map +1 -1
  46. package/lib/cloudflare/browser-rendering.js +12 -2
  47. package/lib/cloudflare/browser-rendering.js.map +1 -1
  48. package/lib/cloudflare/bundle/fs.d.ts.map +1 -1
  49. package/lib/cloudflare/bundle/fs.js +3 -0
  50. package/lib/cloudflare/bundle/fs.js.map +1 -1
  51. package/lib/cloudflare/bundle/internal-worker-bundle.d.ts +6 -0
  52. package/lib/cloudflare/bundle/internal-worker-bundle.d.ts.map +1 -0
  53. package/lib/cloudflare/bundle/internal-worker-bundle.js +14 -0
  54. package/lib/cloudflare/bundle/internal-worker-bundle.js.map +1 -0
  55. package/lib/cloudflare/compatibility-presets.d.ts +22 -0
  56. package/lib/cloudflare/compatibility-presets.d.ts.map +1 -0
  57. package/lib/cloudflare/compatibility-presets.js +27 -0
  58. package/lib/cloudflare/compatibility-presets.js.map +1 -0
  59. package/lib/cloudflare/container.d.ts +5 -1
  60. package/lib/cloudflare/container.d.ts.map +1 -1
  61. package/lib/cloudflare/container.js +42 -2
  62. package/lib/cloudflare/container.js.map +1 -1
  63. package/lib/cloudflare/dispatch-namespace.d.ts +5 -0
  64. package/lib/cloudflare/dispatch-namespace.d.ts.map +1 -1
  65. package/lib/cloudflare/dispatch-namespace.js +8 -0
  66. package/lib/cloudflare/dispatch-namespace.js.map +1 -1
  67. package/lib/cloudflare/durable-object-namespace.d.ts +23 -15
  68. package/lib/cloudflare/durable-object-namespace.d.ts.map +1 -1
  69. package/lib/cloudflare/durable-object-namespace.js +22 -21
  70. package/lib/cloudflare/durable-object-namespace.js.map +1 -1
  71. package/lib/cloudflare/hyperdrive.d.ts +19 -5
  72. package/lib/cloudflare/hyperdrive.d.ts.map +1 -1
  73. package/lib/cloudflare/hyperdrive.js +14 -0
  74. package/lib/cloudflare/hyperdrive.js.map +1 -1
  75. package/lib/cloudflare/images.d.ts +27 -17
  76. package/lib/cloudflare/images.d.ts.map +1 -1
  77. package/lib/cloudflare/images.js +13 -8
  78. package/lib/cloudflare/images.js.map +1 -1
  79. package/lib/cloudflare/index.d.ts +1 -3
  80. package/lib/cloudflare/index.d.ts.map +1 -1
  81. package/lib/cloudflare/index.js +1 -3
  82. package/lib/cloudflare/index.js.map +1 -1
  83. package/lib/cloudflare/miniflare/miniflare.d.ts +3 -3
  84. package/lib/cloudflare/miniflare/miniflare.d.ts.map +1 -1
  85. package/lib/cloudflare/miniflare/miniflare.js +7 -7
  86. package/lib/cloudflare/miniflare/miniflare.js.map +1 -1
  87. package/lib/cloudflare/miniflare/{mixed-mode.d.ts → remote-binding-proxy.d.ts} +5 -5
  88. package/lib/cloudflare/miniflare/remote-binding-proxy.d.ts.map +1 -0
  89. package/lib/cloudflare/miniflare/{mixed-mode.js → remote-binding-proxy.js} +16 -52
  90. package/lib/cloudflare/miniflare/remote-binding-proxy.js.map +1 -0
  91. package/lib/cloudflare/oauth.d.ts +22 -0
  92. package/lib/cloudflare/oauth.d.ts.map +1 -0
  93. package/lib/cloudflare/oauth.js +213 -0
  94. package/lib/cloudflare/oauth.js.map +1 -0
  95. package/lib/cloudflare/state.d.ts +26 -0
  96. package/lib/cloudflare/state.d.ts.map +1 -0
  97. package/lib/cloudflare/state.js +14 -0
  98. package/lib/cloudflare/state.js.map +1 -0
  99. package/lib/cloudflare/user.d.ts +2 -2
  100. package/lib/cloudflare/user.d.ts.map +1 -1
  101. package/lib/cloudflare/user.js +24 -47
  102. package/lib/cloudflare/user.js.map +1 -1
  103. package/lib/cloudflare/vectorize-index.d.ts.map +1 -1
  104. package/lib/cloudflare/vectorize-index.js +5 -2
  105. package/lib/cloudflare/vectorize-index.js.map +1 -1
  106. package/lib/cloudflare/version-metadata.d.ts +15 -3
  107. package/lib/cloudflare/version-metadata.d.ts.map +1 -1
  108. package/lib/cloudflare/version-metadata.js +11 -2
  109. package/lib/cloudflare/version-metadata.js.map +1 -1
  110. package/lib/cloudflare/vite.d.ts.map +1 -1
  111. package/lib/cloudflare/vite.js +2 -1
  112. package/lib/cloudflare/vite.js.map +1 -1
  113. package/lib/cloudflare/worker-metadata.d.ts +13 -2
  114. package/lib/cloudflare/worker-metadata.d.ts.map +1 -1
  115. package/lib/cloudflare/worker-metadata.js +10 -15
  116. package/lib/cloudflare/worker-metadata.js.map +1 -1
  117. package/lib/cloudflare/worker-subdomain.d.ts +7 -0
  118. package/lib/cloudflare/worker-subdomain.d.ts.map +1 -1
  119. package/lib/cloudflare/worker-subdomain.js +17 -22
  120. package/lib/cloudflare/worker-subdomain.js.map +1 -1
  121. package/lib/cloudflare/{worker/tail.d.ts → worker-tail.d.ts} +2 -2
  122. package/lib/cloudflare/worker-tail.d.ts.map +1 -0
  123. package/lib/cloudflare/{worker/tail.js → worker-tail.js} +11 -9
  124. package/lib/cloudflare/worker-tail.js.map +1 -0
  125. package/lib/cloudflare/worker.d.ts +19 -8
  126. package/lib/cloudflare/worker.d.ts.map +1 -1
  127. package/lib/cloudflare/worker.js +35 -10
  128. package/lib/cloudflare/worker.js.map +1 -1
  129. package/lib/cloudflare/workflow.d.ts +22 -11
  130. package/lib/cloudflare/workflow.d.ts.map +1 -1
  131. package/lib/cloudflare/workflow.js +23 -18
  132. package/lib/cloudflare/workflow.js.map +1 -1
  133. package/lib/context.d.ts +2 -2
  134. package/lib/context.d.ts.map +1 -1
  135. package/lib/docker/api.d.ts.map +1 -1
  136. package/lib/docker/api.js +30 -8
  137. package/lib/docker/api.js.map +1 -1
  138. package/lib/fs/file-system-state-store.d.ts +5 -20
  139. package/lib/fs/file-system-state-store.d.ts.map +1 -1
  140. package/lib/fs/file-system-state-store.js +5 -121
  141. package/lib/fs/file-system-state-store.js.map +1 -1
  142. package/lib/fs/index.d.ts +0 -1
  143. package/lib/fs/index.d.ts.map +1 -1
  144. package/lib/fs/index.js +0 -1
  145. package/lib/fs/index.js.map +1 -1
  146. package/lib/llms.cloudflare.txt +6 -5
  147. package/lib/planetscale/password.js +1 -1
  148. package/lib/planetscale/password.js.map +1 -1
  149. package/lib/scope.d.ts.map +1 -1
  150. package/lib/scope.js +3 -6
  151. package/lib/scope.js.map +1 -1
  152. package/lib/state/cloudflare-state-store.d.ts +34 -0
  153. package/lib/state/cloudflare-state-store.d.ts.map +1 -0
  154. package/lib/state/cloudflare-state-store.js +116 -0
  155. package/lib/state/cloudflare-state-store.js.map +1 -0
  156. package/lib/state/d1-state-store.d.ts +15 -0
  157. package/lib/state/d1-state-store.d.ts.map +1 -0
  158. package/lib/{cloudflare → state}/d1-state-store.js +31 -27
  159. package/lib/state/d1-state-store.js.map +1 -0
  160. package/lib/{cloudflare/do-state-store/types.d.ts → state/dofs-state-store/api.d.ts} +1 -1
  161. package/lib/state/dofs-state-store/api.d.ts.map +1 -0
  162. package/lib/state/dofs-state-store/api.js +1 -0
  163. package/lib/state/dofs-state-store/api.js.map +1 -0
  164. package/lib/{cloudflare/do-state-store/store.d.ts → state/dofs-state-store/index.d.ts} +10 -5
  165. package/lib/state/dofs-state-store/index.d.ts.map +1 -0
  166. package/lib/{cloudflare/do-state-store/store.js → state/dofs-state-store/index.js} +15 -11
  167. package/lib/state/dofs-state-store/index.js.map +1 -0
  168. package/lib/{cloudflare/do-state-store/internal.d.ts → state/dofs-state-store/store.d.ts} +4 -5
  169. package/lib/state/dofs-state-store/store.d.ts.map +1 -0
  170. package/lib/{cloudflare/do-state-store/internal.js → state/dofs-state-store/store.js} +7 -22
  171. package/lib/state/dofs-state-store/store.js.map +1 -0
  172. package/lib/state/file-system-state-store.d.ts +21 -0
  173. package/lib/state/file-system-state-store.d.ts.map +1 -0
  174. package/lib/state/file-system-state-store.js +122 -0
  175. package/lib/state/file-system-state-store.js.map +1 -0
  176. package/lib/state/index.d.ts +7 -0
  177. package/lib/state/index.d.ts.map +1 -0
  178. package/lib/state/index.js +7 -0
  179. package/lib/state/index.js.map +1 -0
  180. package/lib/state/migrations.d.ts +2 -0
  181. package/lib/state/migrations.d.ts.map +1 -0
  182. package/lib/state/migrations.js +3 -0
  183. package/lib/state/migrations.js.map +1 -0
  184. package/lib/state/operations.d.ts +36 -0
  185. package/lib/state/operations.d.ts.map +1 -0
  186. package/lib/state/operations.js +126 -0
  187. package/lib/state/operations.js.map +1 -0
  188. package/lib/state/proxy.d.ts +53 -0
  189. package/lib/state/proxy.d.ts.map +1 -0
  190. package/lib/state/proxy.js +65 -0
  191. package/lib/state/proxy.js.map +1 -0
  192. package/lib/{cloudflare → state}/r2-rest-state-store.d.ts +3 -1
  193. package/lib/state/r2-rest-state-store.d.ts.map +1 -0
  194. package/lib/{cloudflare → state}/r2-rest-state-store.js +6 -4
  195. package/lib/state/r2-rest-state-store.js.map +1 -0
  196. package/lib/state/schema.d.ts.map +1 -0
  197. package/lib/state/schema.js.map +1 -0
  198. package/lib/{sqlite → state}/sqlite-state-store.d.ts +5 -3
  199. package/lib/state/sqlite-state-store.d.ts.map +1 -0
  200. package/lib/{sqlite → state}/sqlite-state-store.js +15 -6
  201. package/lib/state/sqlite-state-store.js.map +1 -0
  202. package/lib/test/vitest.d.ts.map +1 -1
  203. package/lib/test/vitest.js +3 -6
  204. package/lib/test/vitest.js.map +1 -1
  205. package/lib/util/detect-node-runtime.d.ts +3 -0
  206. package/lib/util/detect-node-runtime.d.ts.map +1 -0
  207. package/lib/util/detect-node-runtime.js +10 -0
  208. package/lib/util/detect-node-runtime.js.map +1 -0
  209. package/lib/util/detect-package-manager.d.ts +2 -2
  210. package/lib/util/detect-package-manager.d.ts.map +1 -1
  211. package/lib/util/detect-package-manager.js +15 -5
  212. package/lib/util/detect-package-manager.js.map +1 -1
  213. package/lib/util/http-server.d.ts.map +1 -0
  214. package/lib/{cloudflare/miniflare → util}/http-server.js +1 -1
  215. package/lib/util/http-server.js.map +1 -0
  216. package/lib/util/memoize.d.ts +1 -0
  217. package/lib/util/memoize.d.ts.map +1 -1
  218. package/lib/util/memoize.js +2 -8
  219. package/lib/util/memoize.js.map +1 -1
  220. package/lib/util/neverthrow.d.ts +16 -0
  221. package/lib/util/neverthrow.d.ts.map +1 -0
  222. package/lib/util/neverthrow.js +46 -0
  223. package/lib/util/neverthrow.js.map +1 -0
  224. package/package.json +18 -16
  225. package/src/apply.ts +31 -10
  226. package/src/build-date.ts +1 -1
  227. package/src/cloudflare/ai.ts +10 -5
  228. package/src/cloudflare/analytics-engine.ts +20 -11
  229. package/src/cloudflare/{types.ts → api-response.ts} +31 -0
  230. package/src/cloudflare/api.ts +18 -57
  231. package/src/cloudflare/auth.ts +79 -211
  232. package/src/cloudflare/browser-rendering.ts +16 -2
  233. package/src/cloudflare/bundle/fs.ts +5 -0
  234. package/src/cloudflare/bundle/internal-worker-bundle.ts +21 -0
  235. package/src/cloudflare/compatibility-presets.ts +34 -0
  236. package/src/cloudflare/container.ts +70 -3
  237. package/src/cloudflare/dispatch-namespace.ts +28 -0
  238. package/src/cloudflare/durable-object-namespace.ts +38 -27
  239. package/src/cloudflare/hyperdrive.ts +19 -5
  240. package/src/cloudflare/images.ts +32 -17
  241. package/src/cloudflare/index.ts +1 -3
  242. package/src/cloudflare/miniflare/miniflare.ts +10 -7
  243. package/src/cloudflare/miniflare/{mixed-mode.ts → remote-binding-proxy.ts} +25 -75
  244. package/src/cloudflare/oauth.ts +300 -0
  245. package/src/cloudflare/state.ts +35 -0
  246. package/src/cloudflare/user.ts +40 -73
  247. package/src/cloudflare/vectorize-index.ts +7 -2
  248. package/src/cloudflare/version-metadata.ts +19 -2
  249. package/src/cloudflare/vite.ts +2 -1
  250. package/src/cloudflare/worker-metadata.ts +18 -43
  251. package/src/cloudflare/worker-subdomain.ts +43 -37
  252. package/src/cloudflare/{worker/tail.ts → worker-tail.ts} +13 -10
  253. package/src/cloudflare/worker.ts +74 -23
  254. package/src/cloudflare/workflow.ts +38 -19
  255. package/src/context.ts +2 -2
  256. package/src/docker/api.ts +33 -8
  257. package/src/fs/file-system-state-store.ts +5 -148
  258. package/src/fs/index.ts +0 -1
  259. package/src/llms.cloudflare.txt +6 -5
  260. package/src/planetscale/password.ts +1 -1
  261. package/src/scope.ts +3 -6
  262. package/src/state/cloudflare-state-store.ts +170 -0
  263. package/src/state/d1-state-store.ts +102 -0
  264. package/src/{cloudflare/do-state-store/store.ts → state/dofs-state-store/index.ts} +20 -13
  265. package/src/{cloudflare/do-state-store/internal.ts → state/dofs-state-store/store.ts} +9 -27
  266. package/src/state/file-system-state-store.ts +149 -0
  267. package/src/state/index.ts +6 -0
  268. package/src/state/migrations.ts +9 -0
  269. package/src/state/operations.ts +152 -0
  270. package/src/state/proxy.ts +132 -0
  271. package/src/{cloudflare → state}/r2-rest-state-store.ts +11 -8
  272. package/src/{sqlite → state}/sqlite-state-store.ts +18 -10
  273. package/src/test/vitest.ts +8 -6
  274. package/src/util/detect-node-runtime.ts +12 -0
  275. package/src/util/detect-package-manager.ts +19 -6
  276. package/src/{cloudflare/miniflare → util}/http-server.ts +1 -1
  277. package/src/util/memoize.ts +2 -8
  278. package/src/util/neverthrow.ts +64 -0
  279. package/templates/astro/package.json +3 -3
  280. package/templates/nuxt/package.json +3 -3
  281. package/templates/react-router/package.json +3 -3
  282. package/templates/rwsdk/alchemy.run.ts +1 -1
  283. package/templates/rwsdk/package.json +3 -3
  284. package/templates/sveltekit/package.json +3 -3
  285. package/templates/tanstack-start/package.json +3 -3
  286. package/templates/typescript/package.json +3 -2
  287. package/templates/typescript/tsconfig.json +1 -0
  288. package/templates/vite/package.json +3 -3
  289. package/workers/cloudflare-state-store.js +5638 -0
  290. package/workers/cloudflare-state-store.ts +108 -0
  291. package/workers/{do-state-store.js → dofs-state-store.js} +4 -4
  292. package/workers/{do-state-store.ts → dofs-state-store.ts} +12 -8
  293. package/workers/{mixed-mode-proxy-worker.js → remote-binding-proxy.js} +3 -3
  294. package/workers/remote-binding-proxy.ts +45 -0
  295. package/lib/cloudflare/d1-state-store.d.ts +0 -10
  296. package/lib/cloudflare/d1-state-store.d.ts.map +0 -1
  297. package/lib/cloudflare/d1-state-store.js.map +0 -1
  298. package/lib/cloudflare/do-state-store/index.d.ts +0 -2
  299. package/lib/cloudflare/do-state-store/index.d.ts.map +0 -1
  300. package/lib/cloudflare/do-state-store/index.js +0 -2
  301. package/lib/cloudflare/do-state-store/index.js.map +0 -1
  302. package/lib/cloudflare/do-state-store/internal.d.ts.map +0 -1
  303. package/lib/cloudflare/do-state-store/internal.js.map +0 -1
  304. package/lib/cloudflare/do-state-store/store.d.ts.map +0 -1
  305. package/lib/cloudflare/do-state-store/store.js.map +0 -1
  306. package/lib/cloudflare/do-state-store/types.d.ts.map +0 -1
  307. package/lib/cloudflare/do-state-store/types.js +0 -1
  308. package/lib/cloudflare/do-state-store/types.js.map +0 -1
  309. package/lib/cloudflare/miniflare/http-server.d.ts.map +0 -1
  310. package/lib/cloudflare/miniflare/http-server.js.map +0 -1
  311. package/lib/cloudflare/miniflare/mixed-mode.d.ts.map +0 -1
  312. package/lib/cloudflare/miniflare/mixed-mode.js.map +0 -1
  313. package/lib/cloudflare/r2-rest-state-store.d.ts.map +0 -1
  314. package/lib/cloudflare/r2-rest-state-store.js.map +0 -1
  315. package/lib/cloudflare/types.d.ts.map +0 -1
  316. package/lib/cloudflare/types.js +0 -19
  317. package/lib/cloudflare/types.js.map +0 -1
  318. package/lib/cloudflare/worker/shared.d.ts +0 -4
  319. package/lib/cloudflare/worker/shared.d.ts.map +0 -1
  320. package/lib/cloudflare/worker/shared.js +0 -21
  321. package/lib/cloudflare/worker/shared.js.map +0 -1
  322. package/lib/cloudflare/worker/tail.d.ts.map +0 -1
  323. package/lib/cloudflare/worker/tail.js.map +0 -1
  324. package/lib/sqlite/base-sqlite-state-store.d.ts +0 -31
  325. package/lib/sqlite/base-sqlite-state-store.d.ts.map +0 -1
  326. package/lib/sqlite/base-sqlite-state-store.js +0 -124
  327. package/lib/sqlite/base-sqlite-state-store.js.map +0 -1
  328. package/lib/sqlite/index.d.ts +0 -2
  329. package/lib/sqlite/index.d.ts.map +0 -1
  330. package/lib/sqlite/index.js +0 -2
  331. package/lib/sqlite/index.js.map +0 -1
  332. package/lib/sqlite/schema.d.ts.map +0 -1
  333. package/lib/sqlite/schema.js.map +0 -1
  334. package/lib/sqlite/sqlite-state-store.d.ts.map +0 -1
  335. package/lib/sqlite/sqlite-state-store.js.map +0 -1
  336. package/src/cloudflare/d1-state-store.ts +0 -105
  337. package/src/cloudflare/do-state-store/index.ts +0 -1
  338. package/src/cloudflare/worker/shared.ts +0 -30
  339. package/src/sqlite/base-sqlite-state-store.ts +0 -199
  340. package/src/sqlite/index.ts +0 -1
  341. package/templates/typescript/src/worker.js +0 -5
  342. package/workers/mixed-mode-proxy-worker.ts +0 -46
  343. /package/drizzle/{0000_busy_mauler.sql → default/0000_busy_mauler.sql} +0 -0
  344. /package/drizzle/{0001_concerned_iceman.sql → default/0001_concerned_iceman.sql} +0 -0
  345. /package/drizzle/{meta → default/meta}/0000_snapshot.json +0 -0
  346. /package/drizzle/{meta → default/meta}/0001_snapshot.json +0 -0
  347. /package/drizzle/{meta → default/meta}/_journal.json +0 -0
  348. /package/lib/{sqlite → state}/schema.d.ts +0 -0
  349. /package/lib/{sqlite → state}/schema.js +0 -0
  350. /package/lib/{cloudflare/miniflare → util}/http-server.d.ts +0 -0
  351. /package/src/{cloudflare/do-state-store/types.ts → state/dofs-state-store/api.ts} +0 -0
  352. /package/src/{sqlite → state}/schema.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"miniflare.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/miniflare.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,SAAS,EAGd,KAAK,aAAa,EACnB,MAAM,WAAW,CAAC;AAInB,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE5E,cAAM,eAAe;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,OAAO,6BAAoC;IAC3C,OAAO,0BAAiC;IACxC,gBAAgB,8BAAqC;IAErD,MAAM;gBACI,sBAAsB;iBACrB,oBAAoB,CAAC,UAAU,CAAC;OAaxC;IACH,MAAM;gBAfI,sBAAsB;iBACrB,oBAAoB,CAAC,UAAU,CAAC;OAcV;IAE3B,IAAI,CAAC,MAAM,EAAE,sBAAsB;IASnC,KAAK;YAIG,GAAG;YA2CH,OAAO;YAaP,yBAAyB;IAuBvC,OAAO,CAAC,oBAAoB;YAwCd,gBAAgB;CAgB/B;AAED,qBAAa,uBAAwB,SAAQ,KAAK;;CAMjD;AAiBD,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,yBAAyB,EAAE,eAAe,GAAG,SAAS,CAAC;CAC5D;AAED,eAAO,MAAM,eAAe,iBAK1B,CAAC"}
1
+ {"version":3,"file":"miniflare.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/miniflare.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,SAAS,EAGd,KAAK,aAAa,EACnB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,2BAA2B,CAAC;AAEnC,cAAM,eAAe;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,OAAO,6BAAoC;IAC3C,OAAO,0BAAiC;IACxC,oBAAoB,kCAAyC;IAE7D,MAAM;gBACI,sBAAsB;iBACrB,oBAAoB,CAAC,UAAU,CAAC;OAaxC;IACH,MAAM;gBAfI,sBAAsB;iBACrB,oBAAoB,CAAC,UAAU,CAAC;OAcV;IAE3B,IAAI,CAAC,MAAM,EAAE,sBAAsB;IASnC,KAAK;YAIG,GAAG;YA2CH,OAAO;YAaP,yBAAyB;IAuBvC,OAAO,CAAC,oBAAoB;YAwCd,gBAAgB;CAgB/B;AAED,qBAAa,uBAAwB,SAAQ,KAAK;;CAMjD;AAiBD,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,yBAAyB,EAAE,eAAe,GAAG,SAAS,CAAC;CAC5D;AAED,eAAO,MAAM,eAAe,iBAK1B,CAAC"}
@@ -1,16 +1,16 @@
1
1
  import { MiniflareCoreError, } from "miniflare";
2
2
  import path from "node:path";
3
3
  import { findOpenPort } from "../../util/find-open-port.js";
4
+ import { HTTPServer } from "../../util/http-server.js";
4
5
  import { logger } from "../../util/logger.js";
5
6
  import { promiseWithResolvers, } from "../../util/promise-with-resolvers.js";
6
- import { HTTPServer } from "./http-server.js";
7
7
  import { buildMiniflareWorkerOptions, buildRemoteBindings, } from "./miniflare-worker-options.js";
8
- import { createMixedModeProxy } from "./mixed-mode.js";
8
+ import { createRemoteProxyWorker, } from "./remote-binding-proxy.js";
9
9
  class MiniflareServer {
10
10
  miniflare;
11
11
  workers = new Map();
12
12
  servers = new Map();
13
- mixedModeProxies = new Map();
13
+ remoteBindingProxies = new Map();
14
14
  stream = new WritableStream({
15
15
  write: async ({ worker, promise }) => {
16
16
  try {
@@ -75,7 +75,7 @@ class MiniflareServer {
75
75
  await Promise.all([
76
76
  this.miniflare?.dispose(),
77
77
  ...Array.from(this.servers.values()).map((server) => server.stop()),
78
- ...Array.from(this.mixedModeProxies.values()).map((proxy) => proxy.server.stop()),
78
+ ...Array.from(this.remoteBindingProxies.values()).map((proxy) => proxy.server.stop()),
79
79
  ]);
80
80
  this.miniflare = undefined;
81
81
  this.workers.clear();
@@ -86,15 +86,15 @@ class MiniflareServer {
86
86
  if (bindings.length === 0) {
87
87
  return undefined;
88
88
  }
89
- const existing = this.mixedModeProxies.get(worker.name);
89
+ const existing = this.remoteBindingProxies.get(worker.name);
90
90
  if (existing?.bindings.every((b) => bindings.find((b2) => b2.name === b.name && b2.type === b.type))) {
91
91
  return existing.connectionString;
92
92
  }
93
- const proxy = await createMixedModeProxy({
93
+ const proxy = await createRemoteProxyWorker({
94
94
  name: `mixed-mode-proxy-${crypto.randomUUID()}`,
95
95
  bindings,
96
96
  });
97
- this.mixedModeProxies.set(worker.name, proxy);
97
+ this.remoteBindingProxies.set(worker.name, proxy);
98
98
  return proxy.connectionString;
99
99
  }
100
100
  createRequestHandler(name) {
@@ -1 +1 @@
1
- {"version":3,"file":"miniflare.js","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/miniflare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"miniflare.js","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/miniflare.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import type { RemoteProxyConnectionString } from "miniflare";
2
+ import { HTTPServer } from "../../util/http-server.ts";
2
3
  import type { WorkerBindingSpec } from "../bindings.ts";
3
- import { HTTPServer } from "./http-server.ts";
4
- export declare function createMixedModeProxy(input: {
4
+ export declare function createRemoteProxyWorker(input: {
5
5
  name: string;
6
6
  bindings: WorkerBindingSpec[];
7
- }): Promise<MixedModeProxy>;
8
- export declare class MixedModeProxy {
7
+ }): Promise<RemoteBindingProxy>;
8
+ export declare class RemoteBindingProxy {
9
9
  readonly url: string;
10
10
  readonly token: string;
11
11
  readonly bindings: WorkerBindingSpec[];
@@ -14,4 +14,4 @@ export declare class MixedModeProxy {
14
14
  get connectionString(): RemoteProxyConnectionString;
15
15
  fetch(req: Request): Promise<Response>;
16
16
  }
17
- //# sourceMappingURL=mixed-mode.d.ts.map
17
+ //# sourceMappingURL=remote-binding-proxy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote-binding-proxy.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/remote-binding-proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAGvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAoBxD,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,iBAAiB,EAAE,CAAC;CAC/B,+BA2BA;AAED,qBAAa,kBAAkB;IAI3B,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM;IACtB,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,EAAE;IALxC,MAAM,EAAE,UAAU,CAAC;gBAGR,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,iBAAiB,EAAE;IAOxC,IAAI,gBAAgB,IAKb,2BAA2B,CACjC;IAEK,KAAK,CAAC,GAAG,EAAE,OAAO;CA4BzB"}
@@ -1,32 +1,32 @@
1
+ import { HTTPServer } from "../../util/http-server.js";
2
+ import { extractCloudflareResult } from "../api-response.js";
1
3
  import { createCloudflareApi } from "../api.js";
2
- import { getAccountSubdomain, getWorkerTemplate } from "../worker/shared.js";
3
- import { HTTPServer } from "./http-server.js";
4
- export async function createMixedModeProxy(input) {
4
+ import { getInternalWorkerBundle } from "../bundle/internal-worker-bundle.js";
5
+ export async function createRemoteProxyWorker(input) {
5
6
  const api = await createCloudflareApi();
6
- const script = await getWorkerTemplate("mixed-mode-proxy-worker");
7
+ const script = await getInternalWorkerBundle("remote-binding-proxy");
7
8
  const [token, subdomain] = await Promise.all([
8
9
  createWorkersPreviewToken(api, {
9
10
  name: input.name,
10
11
  metadata: {
11
- main_module: script.name,
12
+ main_module: script.file.name,
12
13
  compatibility_date: "2025-06-16",
13
14
  bindings: input.bindings,
14
15
  observability: {
15
16
  enabled: false,
16
17
  },
17
18
  },
18
- files: [script],
19
+ files: [script.file],
19
20
  session: {
20
21
  workers_dev: true,
21
22
  minimal_mode: true,
22
23
  },
23
24
  }),
24
- getAccountSubdomain(api),
25
+ import("../worker-subdomain.js").then((m) => m.getAccountSubdomain(api)),
25
26
  ]);
26
- return new MixedModeProxy(`https://${input.name}.${subdomain}.workers.dev`, token, input.bindings);
27
+ return new RemoteBindingProxy(`https://${input.name}.${subdomain}.workers.dev`, token, input.bindings);
27
28
  }
28
- const DEBUG = false;
29
- export class MixedModeProxy {
29
+ export class RemoteBindingProxy {
30
30
  url;
31
31
  token;
32
32
  bindings;
@@ -62,26 +62,6 @@ export class MixedModeProxy {
62
62
  const responseHeaders = new Headers(res.headers);
63
63
  responseHeaders.delete("transfer-encoding");
64
64
  responseHeaders.delete("content-encoding");
65
- if (DEBUG) {
66
- const clone = res.clone();
67
- console.log({
68
- request: {
69
- url: url.toString(),
70
- method: req.method,
71
- headers,
72
- body: req.body,
73
- },
74
- response: {
75
- status: res.status,
76
- headers: res.headers,
77
- body: await res.text(),
78
- },
79
- });
80
- return new Response(clone.body, {
81
- status: clone.status,
82
- headers: responseHeaders,
83
- });
84
- }
85
65
  return new Response(res.body, {
86
66
  status: res.status,
87
67
  headers: responseHeaders,
@@ -96,13 +76,11 @@ async function createWorkersPreviewToken(api, input) {
96
76
  formData.append(file.name, file);
97
77
  }
98
78
  formData.append("wrangler-session-config", JSON.stringify(input.session));
99
- const res = await api
100
- .post(`/accounts/${api.accountId}/workers/scripts/${input.name}/edge-preview`, formData, {
79
+ const res = await extractCloudflareResult("create workers preview token", api.post(`/accounts/${api.accountId}/workers/scripts/${input.name}/edge-preview`, formData, {
101
80
  headers: {
102
81
  "cf-preview-upload-config-token": session.token,
103
82
  },
104
- })
105
- .then((res) => parseCloudflareResponse(res, "Failed to create workers preview token"));
83
+ }));
106
84
  // Fire and forget prewarm call
107
85
  // (see https://github.com/cloudflare/workers-sdk/blob/6c6afbd6072b96e78e67d3a863ed849c6aa49472/packages/wrangler/src/dev/create-worker-preview.ts#L338)
108
86
  void prewarm(session.prewarm, res.preview_token);
@@ -119,26 +97,12 @@ async function prewarm(url, previewToken) {
119
97
  }
120
98
  }
121
99
  async function createWorkersPreviewSession(api) {
122
- const { exchange_url } = await api
123
- .get(`/accounts/${api.accountId}/workers/subdomain/edge-preview`)
124
- .then((res) => parseCloudflareResponse(res, "Failed to create workers preview session"));
125
- return await fetch(exchange_url).then((res) => parseResponse(res, "Failed to create workers preview session"));
126
- }
127
- async function parseResponse(res, message) {
100
+ const { exchange_url } = await extractCloudflareResult("create workers preview session", api.get(`/accounts/${api.accountId}/workers/subdomain/edge-preview`));
101
+ const res = await fetch(exchange_url);
128
102
  if (!res.ok) {
129
- throw new Error(`${message} (${res.status} ${res.statusText})`);
103
+ throw new Error(`Failed to create workers preview session: ${res.status} ${res.statusText}`);
130
104
  }
131
105
  const json = await res.json();
132
106
  return json;
133
107
  }
134
- async function parseCloudflareResponse(res, message) {
135
- const json = await res.json();
136
- if (!json.success) {
137
- throw new Error(`${message} (${res.status} ${res.statusText} - ${json.errors.map((e) => `${e.code}: ${e.message}`).join(", ")})`);
138
- }
139
- if (!json.result) {
140
- throw new Error(`${message} (${res.status} ${res.statusText})`);
141
- }
142
- return json.result;
143
- }
144
- //# sourceMappingURL=mixed-mode.js.map
108
+ //# sourceMappingURL=remote-binding-proxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote-binding-proxy.js","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/remote-binding-proxy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { ResultAsync } from "neverthrow";
2
+ export declare const DEFAULT_SCOPES: string[];
3
+ interface WranglerConfig {
4
+ oauth_token: string;
5
+ refresh_token: string;
6
+ expiration_time: Date;
7
+ scopes: string[];
8
+ }
9
+ export declare const getRefreshedWranglerConfig: () => ResultAsync<WranglerConfig, OAuthError>;
10
+ export declare const wranglerLogin: (scopes?: string[], log?: (message: string) => void) => ResultAsync<WranglerConfig, OAuthError>;
11
+ interface OAuthErrorParams {
12
+ error: string;
13
+ error_description: string;
14
+ error_verbose?: string;
15
+ error_hint?: string;
16
+ status_code: number;
17
+ }
18
+ declare class OAuthError extends Error {
19
+ constructor(params: OAuthErrorParams);
20
+ }
21
+ export {};
22
+ //# sourceMappingURL=oauth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../src/cloudflare/oauth.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,WAAW,EAAE,MAAM,YAAY,CAAC;AAoB3D,eAAO,MAAM,cAAc,UAkB1B,CAAC;AAGF,UAAU,cAAc;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,IAAI,CAAC;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAID,eAAO,MAAM,0BAA0B,+CAkBtC,CAAC;AAwDF,eAAO,MAAM,aAAa,GACxB,SAAQ,MAAM,EAAmB,EACjC,MAAK,CAAC,OAAO,EAAE,MAAM,KAAK,IAAkB,4CAgF7C,CAAC;AA6BF,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,cAAM,UAAW,SAAQ,KAAK;gBAChB,MAAM,EAAE,gBAAgB;CAKrC"}
@@ -0,0 +1,213 @@
1
+ import kleur from "kleur";
2
+ import { err, ok, okAsync, ResultAsync } from "neverthrow";
3
+ import assert from "node:assert";
4
+ import crypto from "node:crypto";
5
+ import fs from "node:fs/promises";
6
+ import os from "node:os";
7
+ import path from "node:path";
8
+ import open from "open";
9
+ import { HTTPServer } from "../util/http-server.js";
10
+ import { memoize } from "../util/memoize.js";
11
+ import { detached, ensure, fetchJSON, HTTPError, singleFlight, } from "../util/neverthrow.js";
12
+ import { createXdgAppPaths } from "../util/xdg-paths.js";
13
+ const CLIENT_ID = "54d11594-84e4-41aa-b438-e81b8fa78ee7";
14
+ const REDIRECT_URI = "http://localhost:8976/oauth/callback";
15
+ export const DEFAULT_SCOPES = [
16
+ "account:read",
17
+ "user:read",
18
+ "workers:write",
19
+ "workers_kv:write",
20
+ "workers_routes:write",
21
+ "workers_scripts:write",
22
+ "workers_tail:read",
23
+ "d1:write",
24
+ "pages:write",
25
+ "zone:read",
26
+ "ssl_certs:write",
27
+ "ai:write",
28
+ "queues:write",
29
+ "pipelines:write",
30
+ "secrets_store:write",
31
+ "containers:write",
32
+ "cloudchamber:write",
33
+ ];
34
+ const ALCHEMY_BASE_URL = "https://alchemy.run";
35
+ let cached;
36
+ export const getRefreshedWranglerConfig = singleFlight(() => readWranglerConfig()
37
+ .andThen((config) => {
38
+ if (config.expiration_time.getTime() > Date.now() + 10 * 1000) {
39
+ return ok(config);
40
+ }
41
+ return fetchToken({
42
+ grant_type: "refresh_token",
43
+ refresh_token: config.refresh_token,
44
+ client_id: CLIENT_ID,
45
+ });
46
+ })
47
+ .orElse((error) => {
48
+ if (isInteractive()) {
49
+ return wranglerLogin();
50
+ }
51
+ return err(error);
52
+ }));
53
+ const getWranglerConfigPath = memoize(async () => {
54
+ const xdgConfigDir = createXdgAppPaths(".wrangler").config();
55
+ const legacyConfigDir = path.join(os.homedir(), ".wrangler");
56
+ const configDir = (await fs
57
+ .stat(legacyConfigDir)
58
+ .then((stat) => stat.isDirectory())
59
+ .catch(() => false))
60
+ ? legacyConfigDir
61
+ : xdgConfigDir;
62
+ return path.join(configDir, "config", "default.toml");
63
+ });
64
+ const readWranglerConfig = () => {
65
+ if (cached) {
66
+ return okAsync(cached);
67
+ }
68
+ return ResultAsync.fromPromise(getWranglerConfigPath().then(async (path) => {
69
+ const text = await fs.readFile(path, "utf-8");
70
+ const toml = await import("@iarna/toml");
71
+ const config = toml.parse(text.replace(/\r\n/g, "\n"));
72
+ assert(typeof config.oauth_token === "string");
73
+ assert(typeof config.refresh_token === "string");
74
+ assert(config.expiration_time instanceof Date);
75
+ assert(Array.isArray(config.scopes));
76
+ return {
77
+ oauth_token: config.oauth_token,
78
+ refresh_token: config.refresh_token,
79
+ expiration_time: new Date(config.expiration_time),
80
+ scopes: config.scopes,
81
+ };
82
+ }), () => new Error("Cloudflare credentials are missing or invalid."));
83
+ };
84
+ const writeWranglerConfig = (config) => {
85
+ cached = config;
86
+ return ResultAsync.fromSafePromise(getWranglerConfigPath()).map(async (configPath) => {
87
+ const toml = await import("@iarna/toml");
88
+ await fs.writeFile(configPath, toml.stringify({
89
+ oauth_token: config.oauth_token,
90
+ refresh_token: config.refresh_token,
91
+ expiration_time: config.expiration_time,
92
+ scopes: config.scopes,
93
+ }));
94
+ });
95
+ };
96
+ export const wranglerLogin = (scopes = DEFAULT_SCOPES, log = console.log) => {
97
+ const challenge = generateAuthorizationURL(scopes);
98
+ log([
99
+ "Opening browser to authorize with Cloudflare...",
100
+ "",
101
+ kleur.gray("If you are not automatically redirected, please open the following URL in your browser:"),
102
+ challenge.url,
103
+ ].join("\n"));
104
+ open(challenge.url);
105
+ const { result, ok, err } = detached();
106
+ const renderResponse = async (type) => {
107
+ return Response.redirect(`${ALCHEMY_BASE_URL}/auth/${type}`);
108
+ };
109
+ const server = new HTTPServer({
110
+ port: 8976,
111
+ fetch: async (request) => {
112
+ const url = new URL(request.url);
113
+ if (url.pathname !== "/oauth/callback") {
114
+ return new Response("Not found", { status: 404 });
115
+ }
116
+ const error = url.searchParams.get("error");
117
+ const error_description = url.searchParams.get("error_description");
118
+ const code = url.searchParams.get("code");
119
+ const state = url.searchParams.get("state");
120
+ if (error) {
121
+ err(new OAuthError({
122
+ error,
123
+ error_description: error_description ?? "Unknown error",
124
+ status_code: 400,
125
+ }));
126
+ return renderResponse("error");
127
+ }
128
+ if (!code || !state || state !== challenge.state) {
129
+ err(new OAuthError({
130
+ error: "invalid_request",
131
+ error_description: "Invalid request",
132
+ status_code: 400,
133
+ }));
134
+ return renderResponse("error");
135
+ }
136
+ const tokens = await fetchToken({
137
+ grant_type: "authorization_code",
138
+ code,
139
+ code_verifier: challenge.verifier,
140
+ client_id: CLIENT_ID,
141
+ redirect_uri: REDIRECT_URI,
142
+ });
143
+ if (tokens.isErr()) {
144
+ err(tokens.error);
145
+ return renderResponse("error");
146
+ }
147
+ ok(tokens.value);
148
+ return renderResponse("success");
149
+ },
150
+ });
151
+ const timeout = setTimeout(() => {
152
+ err(new OAuthError({
153
+ error: "timeout",
154
+ error_description: "Authorization timed out after 5 minutes",
155
+ status_code: 408,
156
+ }));
157
+ }, 1000 * 60 * 5);
158
+ return ensure(result, () => {
159
+ clearTimeout(timeout);
160
+ void server.stop();
161
+ });
162
+ };
163
+ const generateAuthorizationURL = (scopes) => {
164
+ const state = crypto.randomBytes(32).toString("base64url");
165
+ const verifier = crypto.randomBytes(96).toString("base64url");
166
+ const challenge = crypto
167
+ .createHash("sha256")
168
+ .update(verifier)
169
+ .digest("base64url");
170
+ const url = new URL("https://dash.cloudflare.com/oauth2/auth");
171
+ url.search = new URLSearchParams({
172
+ response_type: "code",
173
+ client_id: CLIENT_ID,
174
+ redirect_uri: "http://localhost:8976/oauth/callback",
175
+ scope: [...scopes, "offline_access"].join(" "),
176
+ state,
177
+ code_challenge: challenge,
178
+ code_challenge_method: "S256",
179
+ }).toString();
180
+ return { url: url.toString(), state, verifier };
181
+ };
182
+ class OAuthError extends Error {
183
+ constructor(params) {
184
+ super(`Cloudflare authentication failed with error ${params.error} (${params.status_code}): ${params.error_description}`);
185
+ }
186
+ }
187
+ const fetchToken = (body) => {
188
+ return fetchJSON("https://dash.cloudflare.com/oauth2/token", {
189
+ method: "POST",
190
+ headers: {
191
+ "Content-Type": "application/x-www-form-urlencoded",
192
+ },
193
+ body: new URLSearchParams(body),
194
+ })
195
+ .map((tokens) => ({
196
+ oauth_token: tokens.access_token,
197
+ refresh_token: tokens.refresh_token,
198
+ expiration_time: new Date(Date.now() + tokens.expires_in * 1000),
199
+ scopes: tokens.scope.split(" "),
200
+ }))
201
+ .mapErr((error) => error instanceof HTTPError
202
+ ? new OAuthError({
203
+ error: "http_error",
204
+ error_description: error.message,
205
+ status_code: error.status,
206
+ })
207
+ : new OAuthError(error))
208
+ .andTee((config) => writeWranglerConfig(config));
209
+ };
210
+ const isInteractive = () => {
211
+ return process.stdin.isTTY && process.stdout.isTTY && !process.env.CI;
212
+ };
213
+ //# sourceMappingURL=oauth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../src/cloudflare/oauth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { D1StateStore as _D1StateStore, DOFSStateStore as _DOFSStateStore, R2RestStateStore as _R2RestStateStore } from "../state/index.ts";
2
+ /**
3
+ * @deprecated Use `R2RestStateStore` from `alchemy/state` instead.
4
+ */
5
+ export declare const R2RestStateStore: typeof _R2RestStateStore;
6
+ /**
7
+ * @deprecated Use `R2RestStateStore` from `alchemy/state` instead.
8
+ */
9
+ export type R2RestStateStore = _R2RestStateStore;
10
+ /**
11
+ * @deprecated This state store is no longer recommended for production use. Please use {@link https://alchemy.run/guides/cloudflare-state-store/ CloudflareStateStore} from `alchemy/state` instead.
12
+ */
13
+ export declare const DOStateStore: typeof _DOFSStateStore;
14
+ /**
15
+ * @deprecated Use `DOStateStore` from `alchemy/state` instead.
16
+ */
17
+ export type DOStateStore = _DOFSStateStore;
18
+ /**
19
+ * @deprecated Use `D1StateStore` from `alchemy/state` instead.
20
+ */
21
+ export declare const D1StateStore: typeof _D1StateStore;
22
+ /**
23
+ * @deprecated Use `D1StateStore` from `alchemy/state` instead.
24
+ */
25
+ export type D1StateStore = _D1StateStore;
26
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/cloudflare/state.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,IAAI,aAAa,EAC7B,cAAc,IAAI,eAAe,EACjC,gBAAgB,IAAI,iBAAiB,EACtC,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,eAAO,MAAM,gBAAgB,0BAAoB,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,YAAY,wBAAkB,CAAC;AAE5C;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,eAAe,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,YAAY,sBAAgB,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,aAAa,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { D1StateStore as _D1StateStore, DOFSStateStore as _DOFSStateStore, R2RestStateStore as _R2RestStateStore, } from "../state/index.js";
2
+ /**
3
+ * @deprecated Use `R2RestStateStore` from `alchemy/state` instead.
4
+ */
5
+ export const R2RestStateStore = _R2RestStateStore;
6
+ /**
7
+ * @deprecated This state store is no longer recommended for production use. Please use {@link https://alchemy.run/guides/cloudflare-state-store/ CloudflareStateStore} from `alchemy/state` instead.
8
+ */
9
+ export const DOStateStore = _DOFSStateStore;
10
+ /**
11
+ * @deprecated Use `D1StateStore` from `alchemy/state` instead.
12
+ */
13
+ export const D1StateStore = _D1StateStore;
14
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/cloudflare/state.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,IAAI,aAAa,EAC7B,cAAc,IAAI,eAAe,EACjC,gBAAgB,IAAI,iBAAiB,GACtC,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAOlD;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC;AAO5C;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC"}
@@ -46,6 +46,6 @@ export interface CloudflareOrganization {
46
46
  permissions: string[];
47
47
  roles: string[];
48
48
  }
49
- export declare function getCloudflareAccounts(options: CloudflareAuthOptions): Promise<CloudflareAccount[]>;
50
- export declare function getUserEmailFromApiKey(apiKey: string): Promise<string>;
49
+ export declare const getCloudflareAccountId: (options: CloudflareAuthOptions) => Promise<string>;
50
+ export declare const getUserEmailFromApiKey: (apiKey: string) => Promise<string>;
51
51
  //# sourceMappingURL=user.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/cloudflare/user.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAG3C,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,GAAG,aAAa,GAAG,cAAc,CAAC;IAClD,QAAQ,EAAE;QACR,iBAAiB,EAAE,OAAO,CAAC;QAC3B,kBAAkB,EAAE,IAAI,CAAC;QACzB,sBAAsB,EAAE,IAAI,CAAC;QAC7B,mBAAmB,EAAE,IAAI,CAAC;KAC3B,CAAC;IACF,YAAY,EAAE;QACZ,qBAAqB,EAAE;YACrB,OAAO,EAAE,MAAM,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,aAAa,EAAE,sBAAsB,EAAE,CAAC;IACxC,gBAAgB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACvC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,iCAAiC,EAAE,OAAO,CAAC;IAC3C,gCAAgC,EAAE,OAAO,CAAC;IAC1C,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAID,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,iBAAiB,EAAE,CAAC,CA0B9B;AAID,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA4C5E"}
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/cloudflare/user.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAI3C,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,GAAG,aAAa,GAAG,cAAc,CAAC;IAClD,QAAQ,EAAE;QACR,iBAAiB,EAAE,OAAO,CAAC;QAC3B,kBAAkB,EAAE,IAAI,CAAC;QACzB,sBAAsB,EAAE,IAAI,CAAC;QAC7B,mBAAmB,EAAE,IAAI,CAAC;KAC3B,CAAC;IACF,YAAY,EAAE;QACZ,qBAAqB,EAAE;YACrB,OAAO,EAAE,MAAM,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,aAAa,EAAE,sBAAsB,EAAE,CAAC;IACxC,gBAAgB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACvC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,iCAAiC,EAAE,OAAO,CAAC;IAC3C,gCAAgC,EAAE,OAAO,CAAC;IAC1C,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,eAAO,MAAM,sBAAsB,qDAyBlC,CAAC;AAEF,eAAO,MAAM,sBAAsB,qCAiBlC,CAAC"}