alchemy 0.66.0 → 0.68.0

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 (825) hide show
  1. package/bin/alchemy.js +25554 -26250
  2. package/bin/alchemy.ts +6 -2
  3. package/bin/commands/configure.ts +194 -0
  4. package/bin/commands/login.ts +99 -55
  5. package/bin/commands/logout.ts +66 -0
  6. package/bin/services/find-workspace-root.ts +1 -1
  7. package/bin/trpc.ts +27 -2
  8. package/lib/alchemy.d.ts +6 -0
  9. package/lib/alchemy.d.ts.map +1 -1
  10. package/lib/alchemy.js +1 -0
  11. package/lib/alchemy.js.map +1 -1
  12. package/lib/apply.d.ts +2 -2
  13. package/lib/apply.d.ts.map +1 -1
  14. package/lib/apply.js +18 -15
  15. package/lib/apply.js.map +1 -1
  16. package/lib/auth.d.ts +72 -0
  17. package/lib/auth.d.ts.map +1 -0
  18. package/lib/auth.js +163 -0
  19. package/lib/auth.js.map +1 -0
  20. package/lib/aws/bucket.d.ts +12 -3
  21. package/lib/aws/bucket.d.ts.map +1 -1
  22. package/lib/aws/bucket.js +2 -2
  23. package/lib/aws/bucket.js.map +1 -1
  24. package/lib/aws/control/resource.d.ts +34 -3
  25. package/lib/aws/control/resource.d.ts.map +1 -1
  26. package/lib/aws/control/resource.js +3 -3
  27. package/lib/aws/control/resource.js.map +1 -1
  28. package/lib/aws/ec2/internet-gateway-attachment.d.ts +1 -2
  29. package/lib/aws/ec2/internet-gateway-attachment.d.ts.map +1 -1
  30. package/lib/aws/ec2/internet-gateway-attachment.js +4 -4
  31. package/lib/aws/ec2/internet-gateway-attachment.js.map +1 -1
  32. package/lib/aws/ec2/internet-gateway.d.ts +1 -2
  33. package/lib/aws/ec2/internet-gateway.d.ts.map +1 -1
  34. package/lib/aws/ec2/internet-gateway.js +2 -2
  35. package/lib/aws/ec2/internet-gateway.js.map +1 -1
  36. package/lib/aws/ec2/nat-gateway.d.ts +1 -2
  37. package/lib/aws/ec2/nat-gateway.d.ts.map +1 -1
  38. package/lib/aws/ec2/nat-gateway.js +2 -2
  39. package/lib/aws/ec2/nat-gateway.js.map +1 -1
  40. package/lib/aws/ec2/route-table-association.d.ts +1 -2
  41. package/lib/aws/ec2/route-table-association.d.ts.map +1 -1
  42. package/lib/aws/ec2/route-table-association.js +2 -2
  43. package/lib/aws/ec2/route-table-association.js.map +1 -1
  44. package/lib/aws/ec2/route-table.d.ts +1 -2
  45. package/lib/aws/ec2/route-table.d.ts.map +1 -1
  46. package/lib/aws/ec2/route-table.js +2 -2
  47. package/lib/aws/ec2/route-table.js.map +1 -1
  48. package/lib/aws/ec2/route.d.ts +1 -2
  49. package/lib/aws/ec2/route.d.ts.map +1 -1
  50. package/lib/aws/ec2/route.js +2 -2
  51. package/lib/aws/ec2/route.js.map +1 -1
  52. package/lib/aws/ec2/security-group-rule.d.ts +1 -2
  53. package/lib/aws/ec2/security-group-rule.d.ts.map +1 -1
  54. package/lib/aws/ec2/security-group-rule.js +2 -2
  55. package/lib/aws/ec2/security-group-rule.js.map +1 -1
  56. package/lib/aws/ec2/security-group.d.ts +1 -2
  57. package/lib/aws/ec2/security-group.d.ts.map +1 -1
  58. package/lib/aws/ec2/security-group.js +2 -2
  59. package/lib/aws/ec2/security-group.js.map +1 -1
  60. package/lib/aws/ec2/subnet.d.ts +1 -2
  61. package/lib/aws/ec2/subnet.d.ts.map +1 -1
  62. package/lib/aws/ec2/subnet.js +2 -2
  63. package/lib/aws/ec2/subnet.js.map +1 -1
  64. package/lib/aws/ec2/vpc.d.ts +1 -2
  65. package/lib/aws/ec2/vpc.d.ts.map +1 -1
  66. package/lib/aws/ec2/vpc.js +2 -2
  67. package/lib/aws/ec2/vpc.js.map +1 -1
  68. package/lib/aws/function.d.ts +116 -3
  69. package/lib/aws/function.d.ts.map +1 -1
  70. package/lib/aws/function.js +2 -2
  71. package/lib/aws/function.js.map +1 -1
  72. package/lib/aws/oidc/github-oidc-provider.d.ts +13 -2
  73. package/lib/aws/oidc/github-oidc-provider.d.ts.map +1 -1
  74. package/lib/aws/oidc/oidc-provider.d.ts +48 -3
  75. package/lib/aws/oidc/oidc-provider.d.ts.map +1 -1
  76. package/lib/aws/oidc/oidc-provider.js +2 -2
  77. package/lib/aws/oidc/oidc-provider.js.map +1 -1
  78. package/lib/aws/policy-attachment.d.ts +2 -3
  79. package/lib/aws/policy-attachment.d.ts.map +1 -1
  80. package/lib/aws/policy-attachment.js +1 -1
  81. package/lib/aws/policy-attachment.js.map +1 -1
  82. package/lib/aws/policy.d.ts +1 -2
  83. package/lib/aws/policy.d.ts.map +1 -1
  84. package/lib/aws/policy.js +4 -4
  85. package/lib/aws/policy.js.map +1 -1
  86. package/lib/aws/queue.d.ts +1 -2
  87. package/lib/aws/queue.d.ts.map +1 -1
  88. package/lib/aws/queue.js +4 -4
  89. package/lib/aws/queue.js.map +1 -1
  90. package/lib/aws/role.d.ts +1 -2
  91. package/lib/aws/role.d.ts.map +1 -1
  92. package/lib/aws/role.js +2 -2
  93. package/lib/aws/role.js.map +1 -1
  94. package/lib/aws/ses.d.ts +1 -2
  95. package/lib/aws/ses.d.ts.map +1 -1
  96. package/lib/aws/ses.js +2 -2
  97. package/lib/aws/ses.js.map +1 -1
  98. package/lib/aws/ssm-parameter.d.ts +1 -2
  99. package/lib/aws/ssm-parameter.d.ts.map +1 -1
  100. package/lib/aws/ssm-parameter.js +2 -2
  101. package/lib/aws/ssm-parameter.js.map +1 -1
  102. package/lib/aws/table.d.ts +1 -2
  103. package/lib/aws/table.d.ts.map +1 -1
  104. package/lib/aws/table.js +2 -2
  105. package/lib/aws/table.js.map +1 -1
  106. package/lib/cloudflare/account-api-token.d.ts +1 -2
  107. package/lib/cloudflare/account-api-token.d.ts.map +1 -1
  108. package/lib/cloudflare/account-api-token.js +2 -2
  109. package/lib/cloudflare/account-api-token.js.map +1 -1
  110. package/lib/cloudflare/ai-gateway.d.ts +1 -2
  111. package/lib/cloudflare/ai-gateway.d.ts.map +1 -1
  112. package/lib/cloudflare/ai-gateway.js +2 -2
  113. package/lib/cloudflare/ai-gateway.js.map +1 -1
  114. package/lib/cloudflare/api-gateway-operation.d.ts +1 -2
  115. package/lib/cloudflare/api-gateway-operation.d.ts.map +1 -1
  116. package/lib/cloudflare/api-gateway-operation.js +2 -2
  117. package/lib/cloudflare/api-gateway-operation.js.map +1 -1
  118. package/lib/cloudflare/api-schema.d.ts +1 -2
  119. package/lib/cloudflare/api-schema.d.ts.map +1 -1
  120. package/lib/cloudflare/api-schema.js +2 -2
  121. package/lib/cloudflare/api-schema.js.map +1 -1
  122. package/lib/cloudflare/api-shield.d.ts +1 -2
  123. package/lib/cloudflare/api-shield.d.ts.map +1 -1
  124. package/lib/cloudflare/api-shield.js +2 -2
  125. package/lib/cloudflare/api-shield.js.map +1 -1
  126. package/lib/cloudflare/api.d.ts +18 -10
  127. package/lib/cloudflare/api.d.ts.map +1 -1
  128. package/lib/cloudflare/api.js +93 -38
  129. package/lib/cloudflare/api.js.map +1 -1
  130. package/lib/cloudflare/assets.d.ts +21 -43
  131. package/lib/cloudflare/assets.d.ts.map +1 -1
  132. package/lib/cloudflare/assets.js +78 -70
  133. package/lib/cloudflare/assets.js.map +1 -1
  134. package/lib/cloudflare/auth.d.ts +91 -17
  135. package/lib/cloudflare/auth.d.ts.map +1 -1
  136. package/lib/cloudflare/auth.js +141 -62
  137. package/lib/cloudflare/auth.js.map +1 -1
  138. package/lib/cloudflare/bindings.d.ts +17 -5
  139. package/lib/cloudflare/bindings.d.ts.map +1 -1
  140. package/lib/cloudflare/bindings.js +3 -1
  141. package/lib/cloudflare/bindings.js.map +1 -1
  142. package/lib/cloudflare/bound.d.ts +4 -3
  143. package/lib/cloudflare/bound.d.ts.map +1 -1
  144. package/lib/cloudflare/bucket.d.ts +60 -8
  145. package/lib/cloudflare/bucket.d.ts.map +1 -1
  146. package/lib/cloudflare/bucket.js +161 -18
  147. package/lib/cloudflare/bucket.js.map +1 -1
  148. package/lib/cloudflare/bundle/internal-worker-bundle.d.ts +1 -1
  149. package/lib/cloudflare/bundle/internal-worker-bundle.d.ts.map +1 -1
  150. package/lib/cloudflare/bundle/internal-worker-bundle.js.map +1 -1
  151. package/lib/cloudflare/bundle/plugin-wasm.js +4 -2
  152. package/lib/cloudflare/bundle/plugin-wasm.js.map +1 -1
  153. package/lib/cloudflare/certificate-pack.d.ts +1 -2
  154. package/lib/cloudflare/certificate-pack.d.ts.map +1 -1
  155. package/lib/cloudflare/certificate-pack.js +4 -4
  156. package/lib/cloudflare/certificate-pack.js.map +1 -1
  157. package/lib/cloudflare/compatibility-date.gen.d.ts +1 -1
  158. package/lib/cloudflare/compatibility-date.gen.js +1 -1
  159. package/lib/cloudflare/container.d.ts +1 -2
  160. package/lib/cloudflare/container.d.ts.map +1 -1
  161. package/lib/cloudflare/container.js +6 -6
  162. package/lib/cloudflare/container.js.map +1 -1
  163. package/lib/cloudflare/custom-domain.d.ts +1 -2
  164. package/lib/cloudflare/custom-domain.d.ts.map +1 -1
  165. package/lib/cloudflare/custom-domain.js +2 -2
  166. package/lib/cloudflare/custom-domain.js.map +1 -1
  167. package/lib/cloudflare/d1-database.d.ts +2 -3
  168. package/lib/cloudflare/d1-database.d.ts.map +1 -1
  169. package/lib/cloudflare/d1-database.js +5 -5
  170. package/lib/cloudflare/d1-database.js.map +1 -1
  171. package/lib/cloudflare/dispatch-namespace.d.ts +2 -3
  172. package/lib/cloudflare/dispatch-namespace.d.ts.map +1 -1
  173. package/lib/cloudflare/dispatch-namespace.js +3 -3
  174. package/lib/cloudflare/dispatch-namespace.js.map +1 -1
  175. package/lib/cloudflare/dns-records.d.ts +1 -2
  176. package/lib/cloudflare/dns-records.d.ts.map +1 -1
  177. package/lib/cloudflare/dns-records.js +4 -4
  178. package/lib/cloudflare/dns-records.js.map +1 -1
  179. package/lib/cloudflare/email-address.d.ts +1 -2
  180. package/lib/cloudflare/email-address.d.ts.map +1 -1
  181. package/lib/cloudflare/email-address.js +6 -6
  182. package/lib/cloudflare/email-address.js.map +1 -1
  183. package/lib/cloudflare/email-catch-all.d.ts +1 -2
  184. package/lib/cloudflare/email-catch-all.d.ts.map +1 -1
  185. package/lib/cloudflare/email-catch-all.js +4 -4
  186. package/lib/cloudflare/email-catch-all.js.map +1 -1
  187. package/lib/cloudflare/email-routing.d.ts +1 -2
  188. package/lib/cloudflare/email-routing.d.ts.map +1 -1
  189. package/lib/cloudflare/email-routing.js +4 -4
  190. package/lib/cloudflare/email-routing.js.map +1 -1
  191. package/lib/cloudflare/email-rule.d.ts +1 -2
  192. package/lib/cloudflare/email-rule.d.ts.map +1 -1
  193. package/lib/cloudflare/email-rule.js +4 -4
  194. package/lib/cloudflare/email-rule.js.map +1 -1
  195. package/lib/cloudflare/hyperdrive-ref.d.ts +23 -0
  196. package/lib/cloudflare/hyperdrive-ref.d.ts.map +1 -0
  197. package/lib/cloudflare/hyperdrive-ref.js +52 -0
  198. package/lib/cloudflare/hyperdrive-ref.js.map +1 -0
  199. package/lib/cloudflare/hyperdrive.d.ts +1 -2
  200. package/lib/cloudflare/hyperdrive.d.ts.map +1 -1
  201. package/lib/cloudflare/hyperdrive.js +4 -4
  202. package/lib/cloudflare/hyperdrive.js.map +1 -1
  203. package/lib/cloudflare/index.d.ts +2 -0
  204. package/lib/cloudflare/index.d.ts.map +1 -1
  205. package/lib/cloudflare/index.js +2 -0
  206. package/lib/cloudflare/index.js.map +1 -1
  207. package/lib/cloudflare/kv-namespace.d.ts +2 -3
  208. package/lib/cloudflare/kv-namespace.d.ts.map +1 -1
  209. package/lib/cloudflare/kv-namespace.js +5 -5
  210. package/lib/cloudflare/kv-namespace.js.map +1 -1
  211. package/lib/cloudflare/miniflare/build-worker-options.d.ts +2 -1
  212. package/lib/cloudflare/miniflare/build-worker-options.d.ts.map +1 -1
  213. package/lib/cloudflare/miniflare/build-worker-options.js +11 -6
  214. package/lib/cloudflare/miniflare/build-worker-options.js.map +1 -1
  215. package/lib/cloudflare/miniflare/delete.js +1 -1
  216. package/lib/cloudflare/miniflare/delete.js.map +1 -1
  217. package/lib/cloudflare/miniflare/miniflare-controller.d.ts +3 -1
  218. package/lib/cloudflare/miniflare/miniflare-controller.d.ts.map +1 -1
  219. package/lib/cloudflare/miniflare/miniflare-controller.js +24 -9
  220. package/lib/cloudflare/miniflare/miniflare-controller.js.map +1 -1
  221. package/lib/cloudflare/miniflare/miniflare-worker-proxy.d.ts +24 -13
  222. package/lib/cloudflare/miniflare/miniflare-worker-proxy.d.ts.map +1 -1
  223. package/lib/cloudflare/miniflare/miniflare-worker-proxy.js +90 -79
  224. package/lib/cloudflare/miniflare/miniflare-worker-proxy.js.map +1 -1
  225. package/lib/cloudflare/miniflare/remote-binding-proxy.d.ts.map +1 -1
  226. package/lib/cloudflare/miniflare/remote-binding-proxy.js +15 -4
  227. package/lib/cloudflare/miniflare/remote-binding-proxy.js.map +1 -1
  228. package/lib/cloudflare/miniflare/tunnel.d.ts +18 -0
  229. package/lib/cloudflare/miniflare/tunnel.d.ts.map +1 -0
  230. package/lib/cloudflare/miniflare/tunnel.js +79 -0
  231. package/lib/cloudflare/miniflare/tunnel.js.map +1 -0
  232. package/lib/cloudflare/next.d.ts.map +1 -1
  233. package/lib/cloudflare/next.js +3 -0
  234. package/lib/cloudflare/next.js.map +1 -1
  235. package/lib/cloudflare/permission-groups.d.ts +1 -2
  236. package/lib/cloudflare/permission-groups.d.ts.map +1 -1
  237. package/lib/cloudflare/permission-groups.js +1 -1
  238. package/lib/cloudflare/permission-groups.js.map +1 -1
  239. package/lib/cloudflare/pipeline.d.ts +2 -3
  240. package/lib/cloudflare/pipeline.d.ts.map +1 -1
  241. package/lib/cloudflare/pipeline.js +5 -5
  242. package/lib/cloudflare/pipeline.js.map +1 -1
  243. package/lib/cloudflare/queue-consumer.d.ts +1 -2
  244. package/lib/cloudflare/queue-consumer.d.ts.map +1 -1
  245. package/lib/cloudflare/queue-consumer.js +4 -4
  246. package/lib/cloudflare/queue-consumer.js.map +1 -1
  247. package/lib/cloudflare/queue.d.ts +1 -2
  248. package/lib/cloudflare/queue.d.ts.map +1 -1
  249. package/lib/cloudflare/queue.js +4 -4
  250. package/lib/cloudflare/queue.js.map +1 -1
  251. package/lib/cloudflare/quick-tunnel.d.ts +1 -1
  252. package/lib/cloudflare/react-router/plugin.d.ts.map +1 -1
  253. package/lib/cloudflare/react-router/plugin.js +13 -0
  254. package/lib/cloudflare/react-router/plugin.js.map +1 -1
  255. package/lib/cloudflare/redirect-rule.d.ts +1 -2
  256. package/lib/cloudflare/redirect-rule.d.ts.map +1 -1
  257. package/lib/cloudflare/redirect-rule.js +4 -4
  258. package/lib/cloudflare/redirect-rule.js.map +1 -1
  259. package/lib/cloudflare/route.d.ts +1 -2
  260. package/lib/cloudflare/route.d.ts.map +1 -1
  261. package/lib/cloudflare/route.js +4 -4
  262. package/lib/cloudflare/route.js.map +1 -1
  263. package/lib/cloudflare/ruleset.d.ts +1 -2
  264. package/lib/cloudflare/ruleset.d.ts.map +1 -1
  265. package/lib/cloudflare/ruleset.js +2 -2
  266. package/lib/cloudflare/ruleset.js.map +1 -1
  267. package/lib/cloudflare/secret-ref.d.ts +38 -0
  268. package/lib/cloudflare/secret-ref.d.ts.map +1 -0
  269. package/lib/cloudflare/secret-ref.js +38 -0
  270. package/lib/cloudflare/secret-ref.js.map +1 -0
  271. package/lib/cloudflare/secret.d.ts +2 -3
  272. package/lib/cloudflare/secret.d.ts.map +1 -1
  273. package/lib/cloudflare/secret.js +3 -3
  274. package/lib/cloudflare/secret.js.map +1 -1
  275. package/lib/cloudflare/secrets-store.d.ts +2 -3
  276. package/lib/cloudflare/secrets-store.d.ts.map +1 -1
  277. package/lib/cloudflare/secrets-store.js +3 -3
  278. package/lib/cloudflare/secrets-store.js.map +1 -1
  279. package/lib/cloudflare/tunnel.d.ts +2 -3
  280. package/lib/cloudflare/tunnel.d.ts.map +1 -1
  281. package/lib/cloudflare/tunnel.js +3 -3
  282. package/lib/cloudflare/tunnel.js.map +1 -1
  283. package/lib/cloudflare/user.d.ts +3 -2
  284. package/lib/cloudflare/user.d.ts.map +1 -1
  285. package/lib/cloudflare/user.js +7 -5
  286. package/lib/cloudflare/user.js.map +1 -1
  287. package/lib/cloudflare/vectorize-index.d.ts +2 -3
  288. package/lib/cloudflare/vectorize-index.d.ts.map +1 -1
  289. package/lib/cloudflare/vectorize-index.js +6 -6
  290. package/lib/cloudflare/vectorize-index.js.map +1 -1
  291. package/lib/cloudflare/vectorize-metadata-index.d.ts +2 -3
  292. package/lib/cloudflare/vectorize-metadata-index.d.ts.map +1 -1
  293. package/lib/cloudflare/vectorize-metadata-index.js +4 -4
  294. package/lib/cloudflare/vectorize-metadata-index.js.map +1 -1
  295. package/lib/cloudflare/website.js +1 -1
  296. package/lib/cloudflare/website.js.map +1 -1
  297. package/lib/cloudflare/worker-assets.d.ts +1 -29
  298. package/lib/cloudflare/worker-assets.d.ts.map +1 -1
  299. package/lib/cloudflare/worker-assets.js +9 -42
  300. package/lib/cloudflare/worker-assets.js.map +1 -1
  301. package/lib/cloudflare/worker-metadata.d.ts +1 -1
  302. package/lib/cloudflare/worker-metadata.d.ts.map +1 -1
  303. package/lib/cloudflare/worker-metadata.js +7 -9
  304. package/lib/cloudflare/worker-metadata.js.map +1 -1
  305. package/lib/cloudflare/worker-stub.d.ts +2 -3
  306. package/lib/cloudflare/worker-stub.d.ts.map +1 -1
  307. package/lib/cloudflare/worker-stub.js +3 -3
  308. package/lib/cloudflare/worker-stub.js.map +1 -1
  309. package/lib/cloudflare/worker-subdomain.d.ts +4 -3
  310. package/lib/cloudflare/worker-subdomain.d.ts.map +1 -1
  311. package/lib/cloudflare/worker-subdomain.js +5 -5
  312. package/lib/cloudflare/worker-subdomain.js.map +1 -1
  313. package/lib/cloudflare/worker.d.ts +19 -5
  314. package/lib/cloudflare/worker.d.ts.map +1 -1
  315. package/lib/cloudflare/worker.js +18 -5
  316. package/lib/cloudflare/worker.js.map +1 -1
  317. package/lib/cloudflare/wrangler.json.d.ts +2 -1
  318. package/lib/cloudflare/wrangler.json.d.ts.map +1 -1
  319. package/lib/cloudflare/wrangler.json.js +4 -6
  320. package/lib/cloudflare/wrangler.json.js.map +1 -1
  321. package/lib/cloudflare/zone.d.ts +1 -2
  322. package/lib/cloudflare/zone.d.ts.map +1 -1
  323. package/lib/cloudflare/zone.js +2 -2
  324. package/lib/cloudflare/zone.js.map +1 -1
  325. package/lib/context.d.ts +8 -8
  326. package/lib/context.d.ts.map +1 -1
  327. package/lib/context.js.map +1 -1
  328. package/lib/destroy.d.ts +1 -1
  329. package/lib/destroy.d.ts.map +1 -1
  330. package/lib/destroy.js.map +1 -1
  331. package/lib/dns/import-dns.d.ts +1 -2
  332. package/lib/dns/import-dns.d.ts.map +1 -1
  333. package/lib/dns/import-dns.js +2 -2
  334. package/lib/dns/import-dns.js.map +1 -1
  335. package/lib/docker/container.d.ts +1 -2
  336. package/lib/docker/container.d.ts.map +1 -1
  337. package/lib/docker/container.js +2 -3
  338. package/lib/docker/container.js.map +1 -1
  339. package/lib/docker/image.d.ts +1 -2
  340. package/lib/docker/image.d.ts.map +1 -1
  341. package/lib/docker/image.js +9 -9
  342. package/lib/docker/image.js.map +1 -1
  343. package/lib/docker/network.d.ts +1 -2
  344. package/lib/docker/network.d.ts.map +1 -1
  345. package/lib/docker/network.js +2 -3
  346. package/lib/docker/network.js.map +1 -1
  347. package/lib/docker/remote-image.d.ts +1 -2
  348. package/lib/docker/remote-image.d.ts.map +1 -1
  349. package/lib/docker/remote-image.js +2 -3
  350. package/lib/docker/remote-image.js.map +1 -1
  351. package/lib/docker/volume.d.ts +1 -2
  352. package/lib/docker/volume.d.ts.map +1 -1
  353. package/lib/docker/volume.js +2 -3
  354. package/lib/docker/volume.js.map +1 -1
  355. package/lib/esbuild/bundle.d.ts +1 -2
  356. package/lib/esbuild/bundle.d.ts.map +1 -1
  357. package/lib/esbuild/bundle.js +4 -4
  358. package/lib/esbuild/bundle.js.map +1 -1
  359. package/lib/fs/copy-file.d.ts +1 -2
  360. package/lib/fs/copy-file.d.ts.map +1 -1
  361. package/lib/fs/copy-file.js +2 -2
  362. package/lib/fs/copy-file.js.map +1 -1
  363. package/lib/fs/file.d.ts +1 -2
  364. package/lib/fs/file.d.ts.map +1 -1
  365. package/lib/fs/file.js +2 -2
  366. package/lib/fs/file.js.map +1 -1
  367. package/lib/fs/folder.d.ts +1 -2
  368. package/lib/fs/folder.d.ts.map +1 -1
  369. package/lib/fs/folder.js +2 -2
  370. package/lib/fs/folder.js.map +1 -1
  371. package/lib/github/comment.d.ts +1 -2
  372. package/lib/github/comment.d.ts.map +1 -1
  373. package/lib/github/comment.js +4 -4
  374. package/lib/github/comment.js.map +1 -1
  375. package/lib/github/repository-environment.d.ts +1 -2
  376. package/lib/github/repository-environment.d.ts.map +1 -1
  377. package/lib/github/repository-environment.js +2 -2
  378. package/lib/github/repository-environment.js.map +1 -1
  379. package/lib/github/repository-webhook.d.ts +1 -2
  380. package/lib/github/repository-webhook.d.ts.map +1 -1
  381. package/lib/github/repository-webhook.js +2 -2
  382. package/lib/github/repository-webhook.js.map +1 -1
  383. package/lib/github/secret.d.ts +1 -2
  384. package/lib/github/secret.d.ts.map +1 -1
  385. package/lib/github/secret.js +2 -2
  386. package/lib/github/secret.js.map +1 -1
  387. package/lib/llms.cloudflare.txt +1 -1
  388. package/lib/neon/api/client.gen.d.ts +13 -0
  389. package/lib/neon/api/client.gen.d.ts.map +1 -0
  390. package/lib/neon/api/client.gen.js +7 -0
  391. package/lib/neon/api/client.gen.js.map +1 -0
  392. package/lib/neon/api/sdk.gen.d.ts +880 -0
  393. package/lib/neon/api/sdk.gen.d.ts.map +1 -0
  394. package/lib/neon/api/sdk.gen.js +1527 -0
  395. package/lib/neon/api/sdk.gen.js.map +1 -0
  396. package/lib/neon/api/types.gen.d.ts +7250 -0
  397. package/lib/neon/api/types.gen.d.ts.map +1 -0
  398. package/lib/neon/api/types.gen.js +2 -0
  399. package/lib/neon/api/types.gen.js.map +1 -0
  400. package/lib/neon/api.d.ts +14 -49
  401. package/lib/neon/api.d.ts.map +1 -1
  402. package/lib/neon/api.js +36 -114
  403. package/lib/neon/api.js.map +1 -1
  404. package/lib/neon/branch.d.ts +141 -0
  405. package/lib/neon/branch.d.ts.map +1 -0
  406. package/lib/neon/branch.js +112 -0
  407. package/lib/neon/branch.js.map +1 -0
  408. package/lib/neon/index.d.ts +1 -1
  409. package/lib/neon/index.d.ts.map +1 -1
  410. package/lib/neon/index.js +1 -1
  411. package/lib/neon/index.js.map +1 -1
  412. package/lib/neon/project.d.ts +32 -242
  413. package/lib/neon/project.d.ts.map +1 -1
  414. package/lib/neon/project.js +90 -269
  415. package/lib/neon/project.js.map +1 -1
  416. package/lib/neon/utils.d.ts +49 -0
  417. package/lib/neon/utils.d.ts.map +1 -0
  418. package/lib/neon/utils.js +44 -0
  419. package/lib/neon/utils.js.map +1 -0
  420. package/lib/os/exec.d.ts +1 -2
  421. package/lib/os/exec.d.ts.map +1 -1
  422. package/lib/os/exec.js +2 -2
  423. package/lib/os/exec.js.map +1 -1
  424. package/lib/planetscale/api/client.gen.d.ts +12 -1749
  425. package/lib/planetscale/api/client.gen.d.ts.map +1 -1
  426. package/lib/planetscale/api/client.gen.js +6 -2400
  427. package/lib/planetscale/api/client.gen.js.map +1 -1
  428. package/lib/planetscale/api/sdk.gen.d.ts +1582 -0
  429. package/lib/planetscale/api/sdk.gen.d.ts.map +1 -0
  430. package/lib/planetscale/api/sdk.gen.js +2219 -0
  431. package/lib/planetscale/api/sdk.gen.js.map +1 -0
  432. package/lib/planetscale/api/types.gen.d.ts +594 -449
  433. package/lib/planetscale/api/types.gen.d.ts.map +1 -1
  434. package/lib/planetscale/api.d.ts +43 -0
  435. package/lib/planetscale/api.d.ts.map +1 -0
  436. package/lib/planetscale/api.js +53 -0
  437. package/lib/planetscale/api.js.map +1 -0
  438. package/lib/planetscale/branch.d.ts +2 -3
  439. package/lib/planetscale/branch.d.ts.map +1 -1
  440. package/lib/planetscale/branch.js +17 -15
  441. package/lib/planetscale/branch.js.map +1 -1
  442. package/lib/planetscale/database.d.ts +2 -3
  443. package/lib/planetscale/database.d.ts.map +1 -1
  444. package/lib/planetscale/database.js +34 -34
  445. package/lib/planetscale/database.js.map +1 -1
  446. package/lib/planetscale/index.d.ts +1 -1
  447. package/lib/planetscale/index.d.ts.map +1 -1
  448. package/lib/planetscale/index.js +1 -1
  449. package/lib/planetscale/index.js.map +1 -1
  450. package/lib/planetscale/password.d.ts +2 -3
  451. package/lib/planetscale/password.d.ts.map +1 -1
  452. package/lib/planetscale/password.js +11 -11
  453. package/lib/planetscale/password.js.map +1 -1
  454. package/lib/planetscale/role.d.ts +2 -3
  455. package/lib/planetscale/role.d.ts.map +1 -1
  456. package/lib/planetscale/role.js +18 -18
  457. package/lib/planetscale/role.js.map +1 -1
  458. package/lib/planetscale/utils.d.ts +1 -1
  459. package/lib/planetscale/utils.d.ts.map +1 -1
  460. package/lib/planetscale/utils.js +17 -33
  461. package/lib/planetscale/utils.js.map +1 -1
  462. package/lib/random/random-string.d.ts +1 -2
  463. package/lib/random/random-string.d.ts.map +1 -1
  464. package/lib/random/random-string.js +3 -3
  465. package/lib/random/random-string.js.map +1 -1
  466. package/lib/resource.d.ts +4 -1
  467. package/lib/resource.d.ts.map +1 -1
  468. package/lib/resource.js.map +1 -1
  469. package/lib/scope.d.ts +10 -1
  470. package/lib/scope.d.ts.map +1 -1
  471. package/lib/scope.js +3 -1
  472. package/lib/scope.js.map +1 -1
  473. package/lib/sentry/client-key.d.ts +1 -2
  474. package/lib/sentry/client-key.d.ts.map +1 -1
  475. package/lib/sentry/client-key.js +2 -2
  476. package/lib/sentry/client-key.js.map +1 -1
  477. package/lib/sentry/project.d.ts +1 -2
  478. package/lib/sentry/project.d.ts.map +1 -1
  479. package/lib/sentry/project.js +2 -2
  480. package/lib/sentry/project.js.map +1 -1
  481. package/lib/sentry/team.d.ts +1 -2
  482. package/lib/sentry/team.d.ts.map +1 -1
  483. package/lib/sentry/team.js +2 -2
  484. package/lib/sentry/team.js.map +1 -1
  485. package/lib/state/r2-rest-state-store.d.ts +1 -0
  486. package/lib/state/r2-rest-state-store.d.ts.map +1 -1
  487. package/lib/state/r2-rest-state-store.js +15 -34
  488. package/lib/state/r2-rest-state-store.js.map +1 -1
  489. package/lib/stripe/card.d.ts +1 -2
  490. package/lib/stripe/card.d.ts.map +1 -1
  491. package/lib/stripe/card.js +2 -2
  492. package/lib/stripe/card.js.map +1 -1
  493. package/lib/stripe/coupon.d.ts +1 -2
  494. package/lib/stripe/coupon.d.ts.map +1 -1
  495. package/lib/stripe/coupon.js +2 -2
  496. package/lib/stripe/coupon.js.map +1 -1
  497. package/lib/stripe/customer.d.ts +1 -2
  498. package/lib/stripe/customer.d.ts.map +1 -1
  499. package/lib/stripe/customer.js +2 -2
  500. package/lib/stripe/customer.js.map +1 -1
  501. package/lib/stripe/entitlements-feature.d.ts +1 -2
  502. package/lib/stripe/entitlements-feature.d.ts.map +1 -1
  503. package/lib/stripe/entitlements-feature.js +2 -2
  504. package/lib/stripe/entitlements-feature.js.map +1 -1
  505. package/lib/stripe/file.d.ts +1 -2
  506. package/lib/stripe/file.d.ts.map +1 -1
  507. package/lib/stripe/file.js +2 -2
  508. package/lib/stripe/file.js.map +1 -1
  509. package/lib/stripe/meter.d.ts +1 -2
  510. package/lib/stripe/meter.d.ts.map +1 -1
  511. package/lib/stripe/meter.js +1 -1
  512. package/lib/stripe/meter.js.map +1 -1
  513. package/lib/stripe/portal-configuration.d.ts +1 -2
  514. package/lib/stripe/portal-configuration.d.ts.map +1 -1
  515. package/lib/stripe/portal-configuration.js +2 -2
  516. package/lib/stripe/portal-configuration.js.map +1 -1
  517. package/lib/stripe/price.d.ts +1 -2
  518. package/lib/stripe/price.d.ts.map +1 -1
  519. package/lib/stripe/price.js +2 -2
  520. package/lib/stripe/price.js.map +1 -1
  521. package/lib/stripe/product-feature.d.ts +1 -2
  522. package/lib/stripe/product-feature.d.ts.map +1 -1
  523. package/lib/stripe/product-feature.js +2 -2
  524. package/lib/stripe/product-feature.js.map +1 -1
  525. package/lib/stripe/product.d.ts +1 -2
  526. package/lib/stripe/product.d.ts.map +1 -1
  527. package/lib/stripe/product.js +2 -2
  528. package/lib/stripe/product.js.map +1 -1
  529. package/lib/stripe/promotion-code.d.ts +1 -2
  530. package/lib/stripe/promotion-code.d.ts.map +1 -1
  531. package/lib/stripe/promotion-code.js +2 -2
  532. package/lib/stripe/promotion-code.js.map +1 -1
  533. package/lib/stripe/shipping-rate.d.ts +1 -2
  534. package/lib/stripe/shipping-rate.d.ts.map +1 -1
  535. package/lib/stripe/shipping-rate.js +2 -2
  536. package/lib/stripe/shipping-rate.js.map +1 -1
  537. package/lib/stripe/tax-rate.d.ts +1 -2
  538. package/lib/stripe/tax-rate.d.ts.map +1 -1
  539. package/lib/stripe/tax-rate.js +2 -2
  540. package/lib/stripe/tax-rate.js.map +1 -1
  541. package/lib/stripe/webhook.d.ts +16 -3
  542. package/lib/stripe/webhook.d.ts.map +1 -1
  543. package/lib/stripe/webhook.js +2 -2
  544. package/lib/stripe/webhook.js.map +1 -1
  545. package/lib/test/bun.d.ts.map +1 -1
  546. package/lib/test/bun.js +1 -0
  547. package/lib/test/bun.js.map +1 -1
  548. package/lib/test/options.d.ts +5 -0
  549. package/lib/test/options.d.ts.map +1 -1
  550. package/lib/test/vitest.d.ts.map +1 -1
  551. package/lib/test/vitest.js +1 -0
  552. package/lib/test/vitest.js.map +1 -1
  553. package/lib/upstash/redis.d.ts +1 -2
  554. package/lib/upstash/redis.d.ts.map +1 -1
  555. package/lib/upstash/redis.js.map +1 -1
  556. package/lib/util/api/client/client.gen.d.ts +3 -0
  557. package/lib/util/api/client/client.gen.d.ts.map +1 -0
  558. package/lib/util/api/client/client.gen.js +205 -0
  559. package/lib/util/api/client/client.gen.js.map +1 -0
  560. package/lib/util/api/client/index.d.ts +8 -0
  561. package/lib/util/api/client/index.d.ts.map +1 -0
  562. package/lib/util/api/client/index.js +6 -0
  563. package/lib/util/api/client/index.js.map +1 -0
  564. package/lib/util/api/client/types.gen.d.ts +125 -0
  565. package/lib/util/api/client/types.gen.d.ts.map +1 -0
  566. package/lib/util/api/client/types.gen.js +2 -0
  567. package/lib/util/api/client/types.gen.js.map +1 -0
  568. package/lib/util/api/client/utils.gen.d.ts +34 -0
  569. package/lib/util/api/client/utils.gen.d.ts.map +1 -0
  570. package/lib/util/api/client/utils.gen.js +231 -0
  571. package/lib/util/api/client/utils.gen.js.map +1 -0
  572. package/lib/util/api/core/auth.gen.d.ts +19 -0
  573. package/lib/util/api/core/auth.gen.d.ts.map +1 -0
  574. package/lib/util/api/core/auth.gen.js +15 -0
  575. package/lib/util/api/core/auth.gen.js.map +1 -0
  576. package/lib/util/api/core/bodySerializer.gen.d.ts +18 -0
  577. package/lib/util/api/core/bodySerializer.gen.d.ts.map +1 -0
  578. package/lib/util/api/core/bodySerializer.gen.js +58 -0
  579. package/lib/util/api/core/bodySerializer.gen.js.map +1 -0
  580. package/lib/util/api/core/params.gen.d.ts +34 -0
  581. package/lib/util/api/core/params.gen.d.ts.map +1 -0
  582. package/lib/util/api/core/params.gen.js +89 -0
  583. package/lib/util/api/core/params.gen.js.map +1 -0
  584. package/lib/util/api/core/pathSerializer.gen.d.ts +34 -0
  585. package/lib/util/api/core/pathSerializer.gen.d.ts.map +1 -0
  586. package/lib/util/api/core/pathSerializer.gen.js +115 -0
  587. package/lib/util/api/core/pathSerializer.gen.js.map +1 -0
  588. package/lib/util/api/core/serverSentEvents.gen.d.ts +72 -0
  589. package/lib/util/api/core/serverSentEvents.gen.d.ts.map +1 -0
  590. package/lib/util/api/core/serverSentEvents.gen.js +136 -0
  591. package/lib/util/api/core/serverSentEvents.gen.js.map +1 -0
  592. package/lib/util/api/core/types.gen.d.ts +79 -0
  593. package/lib/util/api/core/types.gen.d.ts.map +1 -0
  594. package/lib/util/api/core/types.gen.js +2 -0
  595. package/lib/util/api/core/types.gen.js.map +1 -0
  596. package/lib/util/api/core/utils.gen.d.ts +20 -0
  597. package/lib/util/api/core/utils.gen.d.ts.map +1 -0
  598. package/lib/util/api/core/utils.gen.js +88 -0
  599. package/lib/util/api/core/utils.gen.js.map +1 -0
  600. package/lib/util/http.d.ts +7 -2
  601. package/lib/util/http.d.ts.map +1 -1
  602. package/lib/util/http.js +29 -11
  603. package/lib/util/http.js.map +1 -1
  604. package/lib/util/idempotent-spawn.d.ts.map +1 -1
  605. package/lib/util/idempotent-spawn.js +5 -8
  606. package/lib/util/idempotent-spawn.js.map +1 -1
  607. package/lib/util/lock.d.ts +20 -0
  608. package/lib/util/lock.d.ts.map +1 -0
  609. package/lib/util/lock.js +45 -0
  610. package/lib/util/lock.js.map +1 -0
  611. package/lib/util/memoize.d.ts +6 -0
  612. package/lib/util/memoize.d.ts.map +1 -1
  613. package/lib/util/memoize.js +23 -0
  614. package/lib/util/memoize.js.map +1 -1
  615. package/lib/util/oauth-client.d.ts +71 -0
  616. package/lib/util/oauth-client.d.ts.map +1 -0
  617. package/lib/util/oauth-client.js +188 -0
  618. package/lib/util/oauth-client.js.map +1 -0
  619. package/lib/util/poll.d.ts +33 -0
  620. package/lib/util/poll.d.ts.map +1 -0
  621. package/lib/util/poll.js +19 -0
  622. package/lib/util/poll.js.map +1 -0
  623. package/lib/vercel/project-domain.d.ts +1 -2
  624. package/lib/vercel/project-domain.d.ts.map +1 -1
  625. package/lib/vercel/project-domain.js.map +1 -1
  626. package/lib/vercel/project.d.ts +1 -2
  627. package/lib/vercel/project.d.ts.map +1 -1
  628. package/lib/vercel/project.js +2 -2
  629. package/lib/vercel/project.js.map +1 -1
  630. package/package.json +5 -1
  631. package/src/alchemy.ts +7 -0
  632. package/src/apply.ts +32 -29
  633. package/src/auth.ts +253 -0
  634. package/src/aws/bucket.ts +3 -3
  635. package/src/aws/control/resource.ts +4 -6
  636. package/src/aws/ec2/internet-gateway-attachment.ts +5 -6
  637. package/src/aws/ec2/internet-gateway.ts +3 -5
  638. package/src/aws/ec2/nat-gateway.ts +3 -5
  639. package/src/aws/ec2/route-table-association.ts +3 -5
  640. package/src/aws/ec2/route-table.ts +3 -5
  641. package/src/aws/ec2/route.ts +3 -3
  642. package/src/aws/ec2/security-group-rule.ts +3 -5
  643. package/src/aws/ec2/security-group.ts +3 -5
  644. package/src/aws/ec2/subnet.ts +3 -3
  645. package/src/aws/ec2/vpc.ts +3 -3
  646. package/src/aws/function.ts +3 -3
  647. package/src/aws/oidc/oidc-provider.ts +3 -5
  648. package/src/aws/policy-attachment.ts +2 -4
  649. package/src/aws/policy.ts +5 -5
  650. package/src/aws/queue.ts +5 -5
  651. package/src/aws/role.ts +3 -3
  652. package/src/aws/ses.ts +3 -3
  653. package/src/aws/ssm-parameter.ts +3 -3
  654. package/src/aws/table.ts +3 -3
  655. package/src/cloudflare/account-api-token.ts +3 -4
  656. package/src/cloudflare/ai-gateway.ts +3 -5
  657. package/src/cloudflare/api-gateway-operation.ts +3 -4
  658. package/src/cloudflare/api-schema.ts +25 -26
  659. package/src/cloudflare/api-shield.ts +3 -4
  660. package/src/cloudflare/api.ts +122 -57
  661. package/src/cloudflare/assets.ts +95 -136
  662. package/src/cloudflare/auth.ts +160 -95
  663. package/src/cloudflare/bindings.ts +21 -4
  664. package/src/cloudflare/bound.ts +50 -52
  665. package/src/cloudflare/bucket.ts +321 -58
  666. package/src/cloudflare/bundle/internal-worker-bundle.ts +2 -1
  667. package/src/cloudflare/bundle/plugin-wasm.ts +5 -5
  668. package/src/cloudflare/certificate-pack.ts +5 -6
  669. package/src/cloudflare/compatibility-date.gen.ts +1 -1
  670. package/src/cloudflare/container.ts +7 -8
  671. package/src/cloudflare/custom-domain.ts +3 -5
  672. package/src/cloudflare/d1-database.ts +33 -34
  673. package/src/cloudflare/dispatch-namespace.ts +5 -6
  674. package/src/cloudflare/dns-records.ts +5 -5
  675. package/src/cloudflare/email-address.ts +7 -7
  676. package/src/cloudflare/email-catch-all.ts +6 -6
  677. package/src/cloudflare/email-routing.ts +5 -5
  678. package/src/cloudflare/email-rule.ts +5 -5
  679. package/src/cloudflare/hyperdrive-ref.ts +98 -0
  680. package/src/cloudflare/hyperdrive.ts +35 -36
  681. package/src/cloudflare/index.ts +2 -0
  682. package/src/cloudflare/kv-namespace.ts +31 -32
  683. package/src/cloudflare/miniflare/build-worker-options.ts +21 -12
  684. package/src/cloudflare/miniflare/delete.ts +1 -1
  685. package/src/cloudflare/miniflare/miniflare-controller.ts +27 -12
  686. package/src/cloudflare/miniflare/miniflare-worker-proxy.ts +117 -102
  687. package/src/cloudflare/miniflare/remote-binding-proxy.ts +16 -4
  688. package/src/cloudflare/miniflare/tunnel.ts +116 -0
  689. package/src/cloudflare/next.ts +3 -0
  690. package/src/cloudflare/permission-groups.ts +4 -6
  691. package/src/cloudflare/pipeline.ts +29 -30
  692. package/src/cloudflare/queue-consumer.ts +5 -7
  693. package/src/cloudflare/queue.ts +42 -43
  694. package/src/cloudflare/react-router/plugin.ts +20 -0
  695. package/src/cloudflare/redirect-rule.ts +5 -5
  696. package/src/cloudflare/route.ts +5 -5
  697. package/src/cloudflare/ruleset.ts +3 -4
  698. package/src/cloudflare/secret-ref.ts +56 -0
  699. package/src/cloudflare/secret.ts +35 -36
  700. package/src/cloudflare/secrets-store.ts +5 -8
  701. package/src/cloudflare/tunnel.ts +5 -7
  702. package/src/cloudflare/user.ts +12 -9
  703. package/src/cloudflare/vectorize-index.ts +8 -12
  704. package/src/cloudflare/vectorize-metadata-index.ts +6 -8
  705. package/src/cloudflare/website.ts +1 -1
  706. package/src/cloudflare/worker-assets.ts +10 -56
  707. package/src/cloudflare/worker-metadata.ts +14 -12
  708. package/src/cloudflare/worker-stub.ts +5 -5
  709. package/src/cloudflare/worker-subdomain.ts +6 -7
  710. package/src/cloudflare/worker.ts +123 -92
  711. package/src/cloudflare/wrangler.json.ts +13 -11
  712. package/src/cloudflare/zone.ts +3 -3
  713. package/src/context.ts +9 -7
  714. package/src/destroy.ts +2 -2
  715. package/src/dns/import-dns.ts +3 -5
  716. package/src/docker/container.ts +3 -6
  717. package/src/docker/image.ts +13 -13
  718. package/src/docker/network.ts +3 -4
  719. package/src/docker/remote-image.ts +3 -6
  720. package/src/docker/volume.ts +3 -4
  721. package/src/esbuild/bundle.ts +10 -8
  722. package/src/fs/copy-file.ts +3 -3
  723. package/src/fs/file.ts +3 -3
  724. package/src/fs/folder.ts +3 -3
  725. package/src/github/comment.ts +5 -7
  726. package/src/github/repository-environment.ts +3 -5
  727. package/src/github/repository-webhook.ts +3 -5
  728. package/src/github/secret.ts +3 -5
  729. package/src/llms.cloudflare.txt +1 -1
  730. package/src/neon/api/client.gen.ts +28 -0
  731. package/src/neon/api/sdk.gen.ts +2596 -0
  732. package/src/neon/api/types.gen.ts +8287 -0
  733. package/src/neon/api.ts +51 -147
  734. package/src/neon/branch.ts +278 -0
  735. package/src/neon/index.ts +1 -1
  736. package/src/neon/project.ts +136 -721
  737. package/src/neon/utils.ts +105 -0
  738. package/src/os/exec.ts +3 -3
  739. package/src/planetscale/api/client.gen.ts +28 -2882
  740. package/src/planetscale/api/sdk.gen.ts +3336 -0
  741. package/src/planetscale/api/types.gen.ts +778 -450
  742. package/src/planetscale/api.ts +101 -0
  743. package/src/planetscale/branch.ts +20 -19
  744. package/src/planetscale/database.ts +69 -70
  745. package/src/planetscale/index.ts +1 -1
  746. package/src/planetscale/password.ts +18 -22
  747. package/src/planetscale/role.ts +21 -21
  748. package/src/planetscale/utils.ts +20 -74
  749. package/src/random/random-string.ts +4 -4
  750. package/src/resource.ts +6 -2
  751. package/src/scope.ts +12 -1
  752. package/src/sentry/client-key.ts +3 -5
  753. package/src/sentry/project.ts +3 -5
  754. package/src/sentry/team.ts +3 -3
  755. package/src/state/r2-rest-state-store.ts +15 -57
  756. package/src/stripe/card.ts +3 -3
  757. package/src/stripe/coupon.ts +3 -3
  758. package/src/stripe/customer.ts +3 -3
  759. package/src/stripe/entitlements-feature.ts +3 -5
  760. package/src/stripe/file.ts +3 -3
  761. package/src/stripe/meter.ts +3 -3
  762. package/src/stripe/portal-configuration.ts +3 -5
  763. package/src/stripe/price.ts +3 -3
  764. package/src/stripe/product-feature.ts +3 -5
  765. package/src/stripe/product.ts +3 -3
  766. package/src/stripe/promotion-code.ts +3 -5
  767. package/src/stripe/shipping-rate.ts +3 -5
  768. package/src/stripe/tax-rate.ts +3 -3
  769. package/src/stripe/webhook.ts +3 -5
  770. package/src/test/bun.ts +1 -0
  771. package/src/test/options.ts +6 -0
  772. package/src/test/vitest.ts +1 -0
  773. package/src/upstash/redis.ts +1 -3
  774. package/src/util/api/client/client.gen.ts +268 -0
  775. package/src/util/api/client/index.ts +25 -0
  776. package/src/util/api/client/types.gen.ts +268 -0
  777. package/src/util/api/client/utils.gen.ts +331 -0
  778. package/src/util/api/core/auth.gen.ts +42 -0
  779. package/src/util/api/core/bodySerializer.gen.ts +92 -0
  780. package/src/util/api/core/params.gen.ts +153 -0
  781. package/src/util/api/core/pathSerializer.gen.ts +181 -0
  782. package/src/util/api/core/serverSentEvents.gen.ts +264 -0
  783. package/src/util/api/core/types.gen.ts +118 -0
  784. package/src/util/api/core/utils.gen.ts +143 -0
  785. package/src/util/http.ts +38 -11
  786. package/src/util/idempotent-spawn.ts +5 -6
  787. package/src/util/lock.ts +48 -0
  788. package/src/util/memoize.ts +26 -0
  789. package/src/util/oauth-client.ts +238 -0
  790. package/src/util/poll.ts +55 -0
  791. package/src/vercel/project-domain.ts +1 -3
  792. package/src/vercel/project.ts +3 -3
  793. package/templates/rwsdk/.cursor/rules/alchemy_cloudflare.mdc +1 -1
  794. package/templates/rwsdk/package.json +3 -3
  795. package/workers/cloudflare-state-store.js +8 -5619
  796. package/workers/dofs-state-store.js +2 -802
  797. package/workers/remote-binding-proxy.js +3 -39
  798. package/workers/remote-binding-proxy.ts +126 -35
  799. package/workers/tunnel-proxy.js +43 -0
  800. package/workers/tunnel-proxy.ts +121 -0
  801. package/lib/cloudflare/asset-manifest.d.ts +0 -15
  802. package/lib/cloudflare/asset-manifest.d.ts.map +0 -1
  803. package/lib/cloudflare/asset-manifest.js +0 -1
  804. package/lib/cloudflare/asset-manifest.js.map +0 -1
  805. package/lib/cloudflare/oauth.d.ts +0 -22
  806. package/lib/cloudflare/oauth.d.ts.map +0 -1
  807. package/lib/cloudflare/oauth.js +0 -214
  808. package/lib/cloudflare/oauth.js.map +0 -1
  809. package/lib/neon/api-error.d.ts +0 -31
  810. package/lib/neon/api-error.d.ts.map +0 -1
  811. package/lib/neon/api-error.js +0 -73
  812. package/lib/neon/api-error.js.map +0 -1
  813. package/lib/planetscale/api/index.d.ts +0 -3
  814. package/lib/planetscale/api/index.d.ts.map +0 -1
  815. package/lib/planetscale/api/index.js +0 -4
  816. package/lib/planetscale/api/index.js.map +0 -1
  817. package/lib/util/neverthrow.d.ts +0 -16
  818. package/lib/util/neverthrow.d.ts.map +0 -1
  819. package/lib/util/neverthrow.js +0 -46
  820. package/lib/util/neverthrow.js.map +0 -1
  821. package/src/cloudflare/asset-manifest.ts +0 -16
  822. package/src/cloudflare/oauth.ts +0 -301
  823. package/src/neon/api-error.ts +0 -81
  824. package/src/planetscale/api/index.ts +0 -4
  825. package/src/util/neverthrow.ts +0 -64
@@ -1,301 +0,0 @@
1
- import envPaths from "env-paths";
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 pc from "picocolors";
10
- import { HTTPServer } from "../util/http.ts";
11
- import { memoize } from "../util/memoize.ts";
12
- import {
13
- detached,
14
- ensure,
15
- fetchJSON,
16
- HTTPError,
17
- singleFlight,
18
- } from "../util/neverthrow.ts";
19
-
20
- const CLIENT_ID = "54d11594-84e4-41aa-b438-e81b8fa78ee7";
21
- const REDIRECT_URI = "http://localhost:8976/oauth/callback";
22
- export const DEFAULT_SCOPES = [
23
- "account:read",
24
- "user:read",
25
- "workers:write",
26
- "workers_kv:write",
27
- "workers_routes:write",
28
- "workers_scripts:write",
29
- "workers_tail:read",
30
- "d1:write",
31
- "pages:write",
32
- "zone:read",
33
- "ssl_certs:write",
34
- "ai:write",
35
- "queues:write",
36
- "pipelines:write",
37
- "secrets_store:write",
38
- "containers:write",
39
- "cloudchamber:write",
40
- ];
41
- const ALCHEMY_BASE_URL = "https://alchemy.run";
42
-
43
- interface WranglerConfig {
44
- oauth_token: string;
45
- refresh_token: string;
46
- expiration_time: Date;
47
- scopes: string[];
48
- }
49
-
50
- let cached: WranglerConfig | undefined;
51
-
52
- export const getRefreshedWranglerConfig = singleFlight(() =>
53
- readWranglerConfig()
54
- .andThen((config) => {
55
- if (config.expiration_time.getTime() > Date.now() + 10 * 1000) {
56
- return ok(config);
57
- }
58
- return fetchToken({
59
- grant_type: "refresh_token",
60
- refresh_token: config.refresh_token,
61
- client_id: CLIENT_ID,
62
- });
63
- })
64
- .orElse((error) => {
65
- if (isInteractive()) {
66
- return wranglerLogin();
67
- }
68
- return err(error);
69
- }),
70
- );
71
-
72
- const getWranglerConfigPath = memoize(async () => {
73
- const xdgConfigDir = envPaths(".wrangler", { suffix: "" }).config;
74
- const legacyConfigDir = path.join(os.homedir(), ".wrangler");
75
- const configDir = (await fs
76
- .stat(legacyConfigDir)
77
- .then((stat) => stat.isDirectory())
78
- .catch(() => false))
79
- ? legacyConfigDir
80
- : xdgConfigDir;
81
- return path.join(configDir, "config", "default.toml");
82
- });
83
-
84
- const readWranglerConfig = () => {
85
- if (cached) {
86
- return okAsync(cached);
87
- }
88
- return ResultAsync.fromPromise(
89
- getWranglerConfigPath().then(async (path): Promise<WranglerConfig> => {
90
- const text = await fs.readFile(path, "utf-8");
91
- const toml = await import("@iarna/toml");
92
- const config = toml.parse(text.replace(/\r\n/g, "\n"));
93
- assert(typeof config.oauth_token === "string");
94
- assert(typeof config.refresh_token === "string");
95
- assert(!!config.expiration_time);
96
- assert(Array.isArray(config.scopes));
97
- return {
98
- oauth_token: config.oauth_token,
99
- refresh_token: config.refresh_token,
100
- expiration_time: new Date(config.expiration_time as any),
101
- scopes: config.scopes as string[],
102
- };
103
- }),
104
- () => new Error("Cloudflare credentials are missing or invalid."),
105
- );
106
- };
107
-
108
- const writeWranglerConfig = (config: WranglerConfig) => {
109
- cached = config;
110
- return ResultAsync.fromSafePromise(getWranglerConfigPath()).map(
111
- async (configPath) => {
112
- const toml = await import("@iarna/toml");
113
- await fs.mkdir(path.dirname(configPath), { recursive: true });
114
- await fs.writeFile(
115
- configPath,
116
- toml.stringify({
117
- oauth_token: config.oauth_token,
118
- refresh_token: config.refresh_token,
119
- expiration_time: config.expiration_time,
120
- scopes: config.scopes,
121
- }),
122
- );
123
- },
124
- );
125
- };
126
-
127
- export const wranglerLogin = (
128
- scopes: string[] = DEFAULT_SCOPES,
129
- log: (message: string) => void = console.log, // using console.log instead of logger.log to avoid bundling hell with CLI
130
- ) => {
131
- const challenge = generateAuthorizationURL(scopes);
132
- log(
133
- [
134
- "Opening browser to authorize with Cloudflare...",
135
- "",
136
- pc.gray(
137
- "If you are not automatically redirected, please open the following URL in your browser:",
138
- ),
139
- challenge.url,
140
- ].join("\n"),
141
- );
142
- open(challenge.url);
143
- const { result, ok, err } = detached<WranglerConfig, OAuthError>();
144
- const renderResponse = async (type: "success" | "error") => {
145
- return Response.redirect(`${ALCHEMY_BASE_URL}/auth/${type}`);
146
- };
147
- const server = new HTTPServer({
148
- fetch: async (request) => {
149
- const url = new URL(request.url);
150
- if (url.pathname !== "/oauth/callback") {
151
- return new Response("Not found", { status: 404 });
152
- }
153
- const error = url.searchParams.get("error");
154
- const error_description = url.searchParams.get("error_description");
155
- const code = url.searchParams.get("code");
156
- const state = url.searchParams.get("state");
157
- if (error) {
158
- err(
159
- new OAuthError({
160
- error,
161
- error_description: error_description ?? "Unknown error",
162
- status_code: 400,
163
- }),
164
- );
165
- return renderResponse("error");
166
- }
167
- if (!code || !state || state !== challenge.state) {
168
- err(
169
- new OAuthError({
170
- error: "invalid_request",
171
- error_description: "Invalid request",
172
- status_code: 400,
173
- }),
174
- );
175
- return renderResponse("error");
176
- }
177
- const tokens = await fetchToken({
178
- grant_type: "authorization_code",
179
- code,
180
- code_verifier: challenge.verifier,
181
- client_id: CLIENT_ID,
182
- redirect_uri: REDIRECT_URI,
183
- });
184
- if (tokens.isErr()) {
185
- err(tokens.error);
186
- return renderResponse("error");
187
- }
188
- ok(tokens.value);
189
- return renderResponse("success");
190
- },
191
- });
192
- server.listen(8976);
193
- const timeout = setTimeout(
194
- () => {
195
- err(
196
- new OAuthError({
197
- error: "timeout",
198
- error_description: "Authorization timed out after 5 minutes",
199
- status_code: 408,
200
- }),
201
- );
202
- },
203
- 1000 * 60 * 5,
204
- );
205
- return ensure(result, () => {
206
- clearTimeout(timeout);
207
- void server.close();
208
- });
209
- };
210
-
211
- const generateAuthorizationURL = (scopes: string[]) => {
212
- const state = crypto.randomBytes(32).toString("base64url");
213
- const verifier = crypto.randomBytes(96).toString("base64url");
214
- const challenge = crypto
215
- .createHash("sha256")
216
- .update(verifier)
217
- .digest("base64url");
218
- const url = new URL("https://dash.cloudflare.com/oauth2/auth");
219
- url.search = new URLSearchParams({
220
- response_type: "code",
221
- client_id: CLIENT_ID,
222
- redirect_uri: "http://localhost:8976/oauth/callback",
223
- scope: [...scopes, "offline_access"].join(" "),
224
- state,
225
- code_challenge: challenge,
226
- code_challenge_method: "S256",
227
- }).toString();
228
- return { url: url.toString(), state, verifier };
229
- };
230
-
231
- interface OAuthTokens {
232
- access_token: string;
233
- refresh_token: string;
234
- expires_in: number;
235
- scope: string;
236
- }
237
-
238
- interface OAuthErrorParams {
239
- error: string;
240
- error_description: string;
241
- error_verbose?: string;
242
- error_hint?: string;
243
- status_code: number;
244
- }
245
-
246
- class OAuthError extends Error {
247
- constructor(params: OAuthErrorParams) {
248
- super(
249
- `Cloudflare authentication failed with error ${params.error} (${params.status_code}): ${params.error_description}`,
250
- );
251
- }
252
- }
253
-
254
- const fetchToken = (
255
- body:
256
- | {
257
- grant_type: "refresh_token";
258
- refresh_token: string;
259
- client_id: string;
260
- }
261
- | {
262
- grant_type: "authorization_code";
263
- code: string;
264
- code_verifier: string;
265
- client_id: string;
266
- redirect_uri: string;
267
- },
268
- ) => {
269
- return fetchJSON<OAuthTokens, OAuthErrorParams>(
270
- "https://dash.cloudflare.com/oauth2/token",
271
- {
272
- method: "POST",
273
- headers: {
274
- "Content-Type": "application/x-www-form-urlencoded",
275
- },
276
- body: new URLSearchParams(body),
277
- },
278
- )
279
- .map(
280
- (tokens): WranglerConfig => ({
281
- oauth_token: tokens.access_token,
282
- refresh_token: tokens.refresh_token,
283
- expiration_time: new Date(Date.now() + tokens.expires_in * 1000),
284
- scopes: tokens.scope.split(" "),
285
- }),
286
- )
287
- .mapErr((error) =>
288
- error instanceof HTTPError
289
- ? new OAuthError({
290
- error: "http_error",
291
- error_description: error.message,
292
- status_code: error.status,
293
- })
294
- : new OAuthError(error),
295
- )
296
- .andTee((config) => writeWranglerConfig(config));
297
- };
298
-
299
- const isInteractive = () => {
300
- return process.stdin.isTTY && process.stdout.isTTY && !process.env.CI;
301
- };
@@ -1,81 +0,0 @@
1
- /**
2
- * Error class for Neon API errors
3
- */
4
- export class NeonApiError extends Error {
5
- /**
6
- * HTTP status code
7
- */
8
- public readonly status: number;
9
-
10
- /**
11
- * HTTP status text
12
- */
13
- public readonly statusText: string;
14
-
15
- /**
16
- * Error data from the API response
17
- */
18
- public readonly errorData?: any;
19
-
20
- /**
21
- * Create a new NeonApiError
22
- */
23
- constructor(message: string, response: Response, errorData?: any) {
24
- super(message);
25
- this.name = "NeonApiError";
26
- this.status = response.status;
27
- this.statusText = response.statusText;
28
- this.errorData = errorData;
29
-
30
- // Capture stack trace
31
- if (Error.captureStackTrace) {
32
- Error.captureStackTrace(this, NeonApiError);
33
- }
34
- }
35
- }
36
-
37
- /**
38
- * Handle API errors and throw NeonApiError with context
39
- *
40
- * @param response Response object from fetch
41
- * @param action Action that was being performed
42
- * @param resourceType Type of resource
43
- * @param resourceId ID of the resource
44
- */
45
- export async function handleApiError(
46
- response: Response,
47
- action: "get" | "create" | "update" | "delete" | "list",
48
- resourceType: string,
49
- resourceId?: string,
50
- ): Promise<never> {
51
- const resourceDisplay = resourceId ? `'${resourceId}'` : "";
52
- let errorData: any;
53
-
54
- try {
55
- errorData = await response.json();
56
- } catch (_e) {
57
- // If we can't parse JSON, just use the response text
58
- try {
59
- errorData = { message: await response.text() };
60
- } catch (_textError) {
61
- errorData = { message: response.statusText };
62
- }
63
- }
64
-
65
- let message = `Error ${action} ${resourceType} ${resourceDisplay}: `;
66
-
67
- if (errorData?.error?.message) {
68
- message += errorData.error.message;
69
- } else if (errorData?.message) {
70
- message += errorData.message;
71
- } else if (errorData?.error) {
72
- message +=
73
- typeof errorData.error === "string"
74
- ? errorData.error
75
- : JSON.stringify(errorData.error);
76
- } else {
77
- message += response.statusText;
78
- }
79
-
80
- throw new NeonApiError(message, response, errorData);
81
- }
@@ -1,4 +0,0 @@
1
- // This file is auto-generated by scripts/planetscale/generate.ts. Do not edit manually.
2
-
3
- export * from "./client.gen.ts";
4
- export * from "./types.gen.ts";
@@ -1,64 +0,0 @@
1
- import { err, ok, ResultAsync, type Result } from "neverthrow";
2
- import { promiseWithResolvers } from "./promise-with-resolvers.ts";
3
-
4
- export const ensure = <T, E>(
5
- result: ResultAsync<T, E>,
6
- finalizer: () => any,
7
- ) => {
8
- return result.andTee(finalizer).orTee(finalizer);
9
- };
10
-
11
- export const detached = <T, E>() => {
12
- const { promise, resolve } = promiseWithResolvers<Result<T, E>>();
13
- return {
14
- result: new ResultAsync(promise),
15
- ok: (value: T) => resolve(ok(value)),
16
- err: (error: E) => resolve(err(error)),
17
- };
18
- };
19
-
20
- export const singleFlight = <Args extends any[], Value, Error>(
21
- fn: (...args: Args) => ResultAsync<Value, Error>,
22
- ) => {
23
- const results = new Map<string, ResultAsync<Value, Error>>();
24
- return (...args: Args): ResultAsync<Value, Error> => {
25
- const key = JSON.stringify(args ?? []);
26
- const cached = results.get(key);
27
- if (cached) {
28
- return cached;
29
- }
30
- const result = fn(...args);
31
- results.set(key, result);
32
- return ensure(result, () => {
33
- results.delete(key);
34
- });
35
- };
36
- };
37
-
38
- export class HTTPError extends Error {
39
- constructor(
40
- message: string,
41
- public readonly status: number,
42
- ) {
43
- super(message);
44
- }
45
- }
46
-
47
- // TODO: merge this with safe-fetch?
48
- export const fetchResult = (url: string, init: RequestInit = {}) => {
49
- return ResultAsync.fromPromise(
50
- fetch(url, init),
51
- () => new HTTPError(`Failed to ${init.method ?? "GET"} ${url}`, 0),
52
- );
53
- };
54
-
55
- export const fetchJSON = <T, E>(url: string, init: RequestInit = {}) => {
56
- return fetchResult(url, init).andThen(decodeJSON<T, E>);
57
- };
58
-
59
- export const decodeJSON = <T, E>(response: Response) => {
60
- return ResultAsync.fromPromise(
61
- response.json(),
62
- () => new HTTPError("Failed to decode JSON", response.status),
63
- ).andThen((json) => (response.ok ? ok(json as T) : err(json as E)));
64
- };