alchemy 0.53.0 → 0.55.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 (214) hide show
  1. package/bin/alchemy.js +196353 -0
  2. package/bin/alchemy.ts +2 -2
  3. package/bin/commands/init.ts +1190 -0
  4. package/bin/constants.ts +18 -0
  5. package/bin/services/execute-alchemy.ts +7 -2
  6. package/bin/services/package-manager.ts +1 -1
  7. package/bin/types.ts +14 -5
  8. package/lib/aws/ec2/index.d.ts +10 -0
  9. package/lib/aws/ec2/index.d.ts.map +1 -0
  10. package/lib/aws/ec2/index.js +10 -0
  11. package/lib/aws/ec2/index.js.map +1 -0
  12. package/lib/aws/ec2/internet-gateway-attachment.d.ts +150 -0
  13. package/lib/aws/ec2/internet-gateway-attachment.d.ts.map +1 -0
  14. package/lib/aws/ec2/internet-gateway-attachment.js +248 -0
  15. package/lib/aws/ec2/internet-gateway-attachment.js.map +1 -0
  16. package/lib/aws/ec2/internet-gateway.d.ts +132 -0
  17. package/lib/aws/ec2/internet-gateway.d.ts.map +1 -0
  18. package/lib/aws/ec2/internet-gateway.js +311 -0
  19. package/lib/aws/ec2/internet-gateway.js.map +1 -0
  20. package/lib/aws/ec2/nat-gateway.d.ts +145 -0
  21. package/lib/aws/ec2/nat-gateway.d.ts.map +1 -0
  22. package/lib/aws/ec2/nat-gateway.js +618 -0
  23. package/lib/aws/ec2/nat-gateway.js.map +1 -0
  24. package/lib/aws/ec2/route-table-association.d.ts +134 -0
  25. package/lib/aws/ec2/route-table-association.d.ts.map +1 -0
  26. package/lib/aws/ec2/route-table-association.js +364 -0
  27. package/lib/aws/ec2/route-table-association.js.map +1 -0
  28. package/lib/aws/ec2/route-table.d.ts +94 -0
  29. package/lib/aws/ec2/route-table.d.ts.map +1 -0
  30. package/lib/aws/ec2/route-table.js +253 -0
  31. package/lib/aws/ec2/route-table.js.map +1 -0
  32. package/lib/aws/ec2/route.d.ts +130 -0
  33. package/lib/aws/ec2/route.d.ts.map +1 -0
  34. package/lib/aws/ec2/route.js +253 -0
  35. package/lib/aws/ec2/route.js.map +1 -0
  36. package/lib/aws/ec2/security-group-rule.d.ts +84 -0
  37. package/lib/aws/ec2/security-group-rule.d.ts.map +1 -0
  38. package/lib/aws/ec2/security-group-rule.js +123 -0
  39. package/lib/aws/ec2/security-group-rule.js.map +1 -0
  40. package/lib/aws/ec2/security-group.d.ts +84 -0
  41. package/lib/aws/ec2/security-group.d.ts.map +1 -0
  42. package/lib/aws/ec2/security-group.js +207 -0
  43. package/lib/aws/ec2/security-group.js.map +1 -0
  44. package/lib/aws/ec2/subnet.d.ts +110 -0
  45. package/lib/aws/ec2/subnet.d.ts.map +1 -0
  46. package/lib/aws/ec2/subnet.js +336 -0
  47. package/lib/aws/ec2/subnet.js.map +1 -0
  48. package/lib/aws/ec2/utils.d.ts +15 -0
  49. package/lib/aws/ec2/utils.d.ts.map +1 -0
  50. package/lib/aws/ec2/utils.js +79 -0
  51. package/lib/aws/ec2/utils.js.map +1 -0
  52. package/lib/aws/ec2/vpc.d.ts +160 -0
  53. package/lib/aws/ec2/vpc.d.ts.map +1 -0
  54. package/lib/aws/ec2/vpc.js +453 -0
  55. package/lib/aws/ec2/vpc.js.map +1 -0
  56. package/lib/aws/index.d.ts +7 -0
  57. package/lib/aws/index.d.ts.map +1 -1
  58. package/lib/aws/index.js +8 -0
  59. package/lib/aws/index.js.map +1 -1
  60. package/lib/aws/utils.d.ts +25 -0
  61. package/lib/aws/utils.d.ts.map +1 -0
  62. package/lib/aws/utils.js +89 -0
  63. package/lib/aws/utils.js.map +1 -0
  64. package/lib/build-date.d.ts +6 -0
  65. package/lib/build-date.d.ts.map +1 -0
  66. package/lib/build-date.js +8 -0
  67. package/lib/build-date.js.map +1 -0
  68. package/lib/cloudflare/astro.d.ts.map +1 -1
  69. package/lib/cloudflare/astro.js +4 -3
  70. package/lib/cloudflare/astro.js.map +1 -1
  71. package/lib/cloudflare/bundle/externals.d.ts +3 -0
  72. package/lib/cloudflare/bundle/externals.d.ts.map +1 -0
  73. package/lib/cloudflare/bundle/externals.js +35 -0
  74. package/lib/cloudflare/bundle/externals.js.map +1 -0
  75. package/lib/cloudflare/bundle/internal-worker-bundle.d.ts +8 -1
  76. package/lib/cloudflare/bundle/internal-worker-bundle.d.ts.map +1 -1
  77. package/lib/cloudflare/bundle/internal-worker-bundle.js +11 -4
  78. package/lib/cloudflare/bundle/internal-worker-bundle.js.map +1 -1
  79. package/lib/cloudflare/bundle/plugin-hot-reload.d.ts +4 -1
  80. package/lib/cloudflare/bundle/plugin-hot-reload.d.ts.map +1 -1
  81. package/lib/cloudflare/bundle/plugin-hot-reload.js +27 -11
  82. package/lib/cloudflare/bundle/plugin-hot-reload.js.map +1 -1
  83. package/lib/cloudflare/bundle/plugin-hybrid-node-compat.js +5 -1
  84. package/lib/cloudflare/bundle/plugin-hybrid-node-compat.js.map +1 -1
  85. package/lib/cloudflare/bundle/plugin-wasm.d.ts +6 -2
  86. package/lib/cloudflare/bundle/plugin-wasm.d.ts.map +1 -1
  87. package/lib/cloudflare/bundle/plugin-wasm.js +21 -47
  88. package/lib/cloudflare/bundle/plugin-wasm.js.map +1 -1
  89. package/lib/cloudflare/bundle/validate-node-compat.d.ts +2 -1
  90. package/lib/cloudflare/bundle/validate-node-compat.d.ts.map +1 -1
  91. package/lib/cloudflare/bundle/validate-node-compat.js +5 -4
  92. package/lib/cloudflare/bundle/validate-node-compat.js.map +1 -1
  93. package/lib/cloudflare/compatibility-date.gen.d.ts +1 -1
  94. package/lib/cloudflare/compatibility-date.gen.js +1 -1
  95. package/lib/cloudflare/d1-database.js +1 -1
  96. package/lib/cloudflare/d1-database.js.map +1 -1
  97. package/lib/cloudflare/d1-migrations.d.ts.map +1 -1
  98. package/lib/cloudflare/d1-migrations.js +8 -10
  99. package/lib/cloudflare/d1-migrations.js.map +1 -1
  100. package/lib/cloudflare/miniflare/miniflare-worker-options.d.ts +3 -3
  101. package/lib/cloudflare/miniflare/miniflare-worker-options.d.ts.map +1 -1
  102. package/lib/cloudflare/miniflare/miniflare-worker-options.js +23 -6
  103. package/lib/cloudflare/miniflare/miniflare-worker-options.js.map +1 -1
  104. package/lib/cloudflare/miniflare/miniflare.d.ts.map +1 -1
  105. package/lib/cloudflare/miniflare/miniflare.js +2 -4
  106. package/lib/cloudflare/miniflare/miniflare.js.map +1 -1
  107. package/lib/cloudflare/miniflare/remote-binding-proxy.d.ts.map +1 -1
  108. package/lib/cloudflare/miniflare/remote-binding-proxy.js +4 -6
  109. package/lib/cloudflare/miniflare/remote-binding-proxy.js.map +1 -1
  110. package/lib/cloudflare/react-router.d.ts +4 -0
  111. package/lib/cloudflare/react-router.d.ts.map +1 -1
  112. package/lib/cloudflare/react-router.js +8 -5
  113. package/lib/cloudflare/react-router.js.map +1 -1
  114. package/lib/cloudflare/worker-bundle.d.ts +80 -0
  115. package/lib/cloudflare/worker-bundle.d.ts.map +1 -0
  116. package/lib/cloudflare/worker-bundle.js +266 -0
  117. package/lib/cloudflare/worker-bundle.js.map +1 -0
  118. package/lib/cloudflare/worker.d.ts +1 -1
  119. package/lib/cloudflare/worker.d.ts.map +1 -1
  120. package/lib/cloudflare/worker.js +81 -195
  121. package/lib/cloudflare/worker.js.map +1 -1
  122. package/lib/esbuild/bundle.d.ts +1 -0
  123. package/lib/esbuild/bundle.d.ts.map +1 -1
  124. package/lib/state/cloudflare-state-store.js +1 -5
  125. package/lib/state/cloudflare-state-store.js.map +1 -1
  126. package/lib/state/dofs-state-store/store.d.ts.map +1 -1
  127. package/lib/state/dofs-state-store/store.js +4 -4
  128. package/lib/state/dofs-state-store/store.js.map +1 -1
  129. package/lib/util/params.d.ts +5 -0
  130. package/lib/util/params.d.ts.map +1 -0
  131. package/lib/util/params.js +30 -0
  132. package/lib/util/params.js.map +1 -0
  133. package/lib/util/timeout.d.ts +31 -0
  134. package/lib/util/timeout.d.ts.map +1 -0
  135. package/lib/util/timeout.js +109 -0
  136. package/lib/util/timeout.js.map +1 -0
  137. package/lib/util/xml.d.ts +5 -0
  138. package/lib/util/xml.d.ts.map +1 -0
  139. package/lib/util/xml.js +8 -0
  140. package/lib/util/xml.js.map +1 -0
  141. package/package.json +12 -5
  142. package/src/aws/ec2/index.ts +9 -0
  143. package/src/aws/ec2/internet-gateway-attachment.ts +468 -0
  144. package/src/aws/ec2/internet-gateway.ts +557 -0
  145. package/src/aws/ec2/nat-gateway.ts +1123 -0
  146. package/src/aws/ec2/route-table-association.ts +747 -0
  147. package/src/aws/ec2/route-table.ts +452 -0
  148. package/src/aws/ec2/route.ts +447 -0
  149. package/src/aws/ec2/security-group-rule.ts +229 -0
  150. package/src/aws/ec2/security-group.ts +418 -0
  151. package/src/aws/ec2/subnet.ts +625 -0
  152. package/src/aws/ec2/utils.ts +102 -0
  153. package/src/aws/ec2/vpc.ts +969 -0
  154. package/src/aws/index.ts +9 -0
  155. package/src/aws/utils.ts +137 -0
  156. package/src/build-date.ts +8 -0
  157. package/src/cloudflare/astro.ts +4 -3
  158. package/src/cloudflare/bundle/externals.ts +36 -0
  159. package/src/cloudflare/bundle/internal-worker-bundle.ts +12 -3
  160. package/src/cloudflare/bundle/plugin-hot-reload.ts +32 -12
  161. package/src/cloudflare/bundle/plugin-hybrid-node-compat.ts +6 -1
  162. package/src/cloudflare/bundle/plugin-wasm.ts +26 -54
  163. package/src/cloudflare/bundle/validate-node-compat.ts +6 -5
  164. package/src/cloudflare/compatibility-date.gen.ts +1 -1
  165. package/src/cloudflare/d1-database.ts +1 -1
  166. package/src/cloudflare/d1-migrations.ts +19 -18
  167. package/src/cloudflare/miniflare/miniflare-worker-options.ts +27 -13
  168. package/src/cloudflare/miniflare/miniflare.ts +2 -4
  169. package/src/cloudflare/miniflare/remote-binding-proxy.ts +5 -7
  170. package/src/cloudflare/react-router.ts +14 -6
  171. package/src/cloudflare/worker-bundle.ts +364 -0
  172. package/src/cloudflare/worker.ts +104 -241
  173. package/src/state/cloudflare-state-store.ts +1 -5
  174. package/src/state/dofs-state-store/store.ts +4 -4
  175. package/src/util/params.ts +33 -0
  176. package/src/util/timeout.ts +178 -0
  177. package/src/util/xml.ts +7 -0
  178. package/templates/nuxt/package.json +1 -1
  179. package/templates/nuxt/types/env.d.ts +11 -0
  180. package/templates/react-router/workers/app.ts +2 -2
  181. package/templates/rwsdk/.cursor/rules/alchemy_cloudflare.mdc +385 -0
  182. package/templates/rwsdk/wrangler.jsonc +10 -7
  183. package/templates/typescript/tsconfig.json +1 -2
  184. package/bin/alchemy.mjs +0 -51766
  185. package/lib/cloudflare/bundle/esbuild.d.ts +0 -16
  186. package/lib/cloudflare/bundle/esbuild.d.ts.map +0 -1
  187. package/lib/cloudflare/bundle/esbuild.js +0 -159
  188. package/lib/cloudflare/bundle/esbuild.js.map +0 -1
  189. package/lib/cloudflare/bundle/fs.d.ts +0 -18
  190. package/lib/cloudflare/bundle/fs.d.ts.map +0 -1
  191. package/lib/cloudflare/bundle/fs.js +0 -78
  192. package/lib/cloudflare/bundle/fs.js.map +0 -1
  193. package/lib/cloudflare/bundle/index.d.ts +0 -3
  194. package/lib/cloudflare/bundle/index.d.ts.map +0 -1
  195. package/lib/cloudflare/bundle/index.js +0 -2
  196. package/lib/cloudflare/bundle/index.js.map +0 -1
  197. package/lib/cloudflare/bundle/inline.d.ts +0 -12
  198. package/lib/cloudflare/bundle/inline.d.ts.map +0 -1
  199. package/lib/cloudflare/bundle/inline.js +0 -32
  200. package/lib/cloudflare/bundle/inline.js.map +0 -1
  201. package/lib/cloudflare/bundle/normalize.d.ts +0 -21
  202. package/lib/cloudflare/bundle/normalize.d.ts.map +0 -1
  203. package/lib/cloudflare/bundle/normalize.js +0 -49
  204. package/lib/cloudflare/bundle/normalize.js.map +0 -1
  205. package/lib/cloudflare/bundle/shared.d.ts +0 -30
  206. package/lib/cloudflare/bundle/shared.d.ts.map +0 -1
  207. package/lib/cloudflare/bundle/shared.js +0 -34
  208. package/lib/cloudflare/bundle/shared.js.map +0 -1
  209. package/src/cloudflare/bundle/esbuild.ts +0 -194
  210. package/src/cloudflare/bundle/fs.ts +0 -103
  211. package/src/cloudflare/bundle/index.ts +0 -6
  212. package/src/cloudflare/bundle/inline.ts +0 -42
  213. package/src/cloudflare/bundle/normalize.ts +0 -76
  214. package/src/cloudflare/bundle/shared.ts +0 -73
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/state/dofs-state-store/store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAK7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,UAAU,yBAAyB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAWD,qBAAa,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,yBAAyB;IAEzD,GAAG,CAAC,CAAC,SAAS,MAAM,eAAe,CAAC,GAAG,EAC3C,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GACvC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAwCtC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IAc7B,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB/B,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;CAYrE;AAMD,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,aAAa,EAClB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,iBAwEf"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/state/dofs-state-store/store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAM7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,UAAU,yBAAyB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAWD,qBAAa,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,yBAAyB;IAEzD,GAAG,CAAC,CAAC,SAAS,MAAM,eAAe,CAAC,GAAG,EAC3C,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GACvC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAwCtC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IAc7B,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB/B,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;CAYrE;AAMD,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,aAAa,EAClB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,iBAuEf"}
@@ -1,5 +1,6 @@
1
1
  import { handleApiError } from "../../cloudflare/api-error.js";
2
2
  import { getInternalWorkerBundle } from "../../cloudflare/bundle/internal-worker-bundle.js";
3
+ import { WorkerBundle } from "../../cloudflare/worker-bundle.js";
3
4
  import { logger } from "../../util/logger.js";
4
5
  import { withExponentialBackoff } from "../../util/retry.js";
5
6
  class StateStoreError extends Error {
@@ -102,12 +103,11 @@ export async function upsertStateStoreWorker(api, workerName, token, force) {
102
103
  cache.set(key, TAG);
103
104
  return;
104
105
  }
105
- const formData = new FormData();
106
- const { file } = await getInternalWorkerBundle("dofs-state-store");
107
- formData.append(file.name, file);
106
+ const { bundle } = await getInternalWorkerBundle("dofs-state-store");
107
+ const formData = await WorkerBundle.toFormData(bundle);
108
108
  formData.append("metadata", new Blob([
109
109
  JSON.stringify({
110
- main_module: file.name,
110
+ main_module: bundle.entrypoint,
111
111
  compatibility_date: "2025-06-01",
112
112
  compatibility_flags: ["nodejs_compat"],
113
113
  bindings: [
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/state/dofs-state-store/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/state/dofs-state-store/store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Flatten nested parameters for API calls
3
+ */
4
+ export declare function flattenParams(params: Record<string, any>, prefix?: string): Record<string, string>;
5
+ //# sourceMappingURL=params.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../src/util/params.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,MAAM,SAAK,GACV,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA0BxB"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Flatten nested parameters for API calls
3
+ */
4
+ export function flattenParams(params, prefix = "") {
5
+ const result = {};
6
+ for (const [key, value] of Object.entries(params)) {
7
+ const fullKey = prefix ? `${prefix}.${key}` : key;
8
+ if (value === null || value === undefined) {
9
+ continue;
10
+ }
11
+ if (Array.isArray(value)) {
12
+ value.forEach((item, index) => {
13
+ if (typeof item === "object") {
14
+ Object.assign(result, flattenParams(item, `${fullKey}.${index + 1}`));
15
+ }
16
+ else {
17
+ result[`${fullKey}.${index + 1}`] = String(item);
18
+ }
19
+ });
20
+ }
21
+ else if (typeof value === "object") {
22
+ Object.assign(result, flattenParams(value, fullKey));
23
+ }
24
+ else {
25
+ result[fullKey] = String(value);
26
+ }
27
+ }
28
+ return result;
29
+ }
30
+ //# sourceMappingURL=params.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"params.js","sourceRoot":"","sources":["../../src/util/params.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,aAAa,CAC3B,MAA2B,EAC3B,MAAM,GAAG,EAAE;IAEX,MAAM,MAAM,GAA2B,EAAE,CAAC;IAE1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAElD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC1C,SAAS;QACX,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC5B,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC7B,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,GAAG,OAAO,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBACxE,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,GAAG,OAAO,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBACnD,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Timeout configuration interface
3
+ */
4
+ export interface TimeoutConfig {
5
+ maxAttempts: number;
6
+ delayMs: number;
7
+ }
8
+ /**
9
+ * Resource timeout error class
10
+ */
11
+ export declare class ResourceTimeoutError extends Error {
12
+ constructor(resourceType: string, resourceId: string, timeoutMs: number, operation: string);
13
+ }
14
+ /**
15
+ * Validate timeout configuration
16
+ */
17
+ export declare function validateTimeoutConfig(config: TimeoutConfig): void;
18
+ /**
19
+ * Merge default timeout configuration with optional overrides
20
+ */
21
+ export declare function mergeTimeoutConfig(defaultConfig: TimeoutConfig, override?: Partial<TimeoutConfig>): TimeoutConfig;
22
+ /**
23
+ * Wait for a resource to reach a desired state with configurable timeout
24
+ */
25
+ export declare function waitForResourceState<T>(checkFunction: () => Promise<T>, isReady: (result: T) => boolean, config: TimeoutConfig, resourceId: string, resourceType: string, operation?: string): Promise<void>;
26
+ /**
27
+ * Generic function to wait for an operation to complete
28
+ * This is the most flexible version that can handle any type of operation
29
+ */
30
+ export declare function waitForOperation<T>(checkFunction: () => Promise<T>, isComplete: (result: T) => boolean, config: TimeoutConfig, resourceId: string, resourceType: string, operation?: string, onError?: (error: any, attempt: number, maxAttempts: number) => boolean): Promise<void>;
31
+ //# sourceMappingURL=timeout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeout.d.ts","sourceRoot":"","sources":["../../src/util/timeout.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;gBAE3C,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM;CAOpB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAOjE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,aAAa,EAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAChC,aAAa,CAYf;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,CAAC,EAC1C,aAAa,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC/B,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,OAAO,EAC/B,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,SAAS,SAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CA2Cf;AACD;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,aAAa,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC/B,UAAU,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,OAAO,EAClC,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,SAAS,SAAa,EACtB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,GACtE,OAAO,CAAC,IAAI,CAAC,CAsDf"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * Resource timeout error class
3
+ */
4
+ export class ResourceTimeoutError extends Error {
5
+ constructor(resourceType, resourceId, timeoutMs, operation) {
6
+ super(`${resourceType} ${resourceId} did not complete ${operation} within ${timeoutMs}ms`);
7
+ this.name = "ResourceTimeoutError";
8
+ }
9
+ }
10
+ /**
11
+ * Validate timeout configuration
12
+ */
13
+ export function validateTimeoutConfig(config) {
14
+ if (config.maxAttempts <= 0) {
15
+ throw new Error("maxAttempts must be greater than 0");
16
+ }
17
+ if (config.delayMs <= 0) {
18
+ throw new Error("delayMs must be greater than 0");
19
+ }
20
+ }
21
+ /**
22
+ * Merge default timeout configuration with optional overrides
23
+ */
24
+ export function mergeTimeoutConfig(defaultConfig, override) {
25
+ if (!override) {
26
+ return defaultConfig;
27
+ }
28
+ const merged = {
29
+ maxAttempts: override.maxAttempts ?? defaultConfig.maxAttempts,
30
+ delayMs: override.delayMs ?? defaultConfig.delayMs,
31
+ };
32
+ validateTimeoutConfig(merged);
33
+ return merged;
34
+ }
35
+ /**
36
+ * Wait for a resource to reach a desired state with configurable timeout
37
+ */
38
+ export async function waitForResourceState(checkFunction, isReady, config, resourceId, resourceType, operation = "become ready") {
39
+ validateTimeoutConfig(config);
40
+ const { maxAttempts, delayMs } = config;
41
+ for (let attempt = 1; attempt <= maxAttempts; attempt++) {
42
+ try {
43
+ const result = await checkFunction();
44
+ if (isReady(result)) {
45
+ return;
46
+ }
47
+ console.log(`${resourceType} ${resourceId} not ready, waiting... (attempt ${attempt}/${maxAttempts})`);
48
+ if (attempt < maxAttempts) {
49
+ await new Promise((resolve) => setTimeout(resolve, delayMs));
50
+ }
51
+ }
52
+ catch (error) {
53
+ console.log(`Error checking ${resourceType} status (attempt ${attempt}/${maxAttempts}):`, error);
54
+ // Check if this is a non-retryable error (contains "NonRetryableError" in the name)
55
+ if (error instanceof Error && error.name.includes("NonRetryableError")) {
56
+ throw error;
57
+ }
58
+ if (attempt === maxAttempts) {
59
+ throw error;
60
+ }
61
+ await new Promise((resolve) => setTimeout(resolve, delayMs));
62
+ }
63
+ }
64
+ const totalTimeMs = maxAttempts * delayMs;
65
+ throw new ResourceTimeoutError(resourceType, resourceId, totalTimeMs, operation);
66
+ }
67
+ /**
68
+ * Generic function to wait for an operation to complete
69
+ * This is the most flexible version that can handle any type of operation
70
+ */
71
+ export async function waitForOperation(checkFunction, isComplete, config, resourceId, resourceType, operation = "complete", onError) {
72
+ validateTimeoutConfig(config);
73
+ const { maxAttempts, delayMs } = config;
74
+ for (let attempt = 1; attempt <= maxAttempts; attempt++) {
75
+ try {
76
+ const result = await checkFunction();
77
+ if (isComplete(result)) {
78
+ console.log(`${resourceType} ${resourceId} ${operation} completed`);
79
+ return;
80
+ }
81
+ console.log(`${resourceType} ${resourceId} ${operation} in progress... (attempt ${attempt}/${maxAttempts})`);
82
+ if (attempt < maxAttempts) {
83
+ await new Promise((resolve) => setTimeout(resolve, delayMs));
84
+ }
85
+ }
86
+ catch (error) {
87
+ // Allow custom error handling
88
+ if (onError) {
89
+ const shouldContinue = onError(error, attempt, maxAttempts);
90
+ if (!shouldContinue) {
91
+ // If onError returns false, it means the operation completed successfully
92
+ // (e.g., resource was deleted and not found)
93
+ console.log(`${resourceType} ${resourceId} ${operation} completed (via error handling)`);
94
+ return;
95
+ }
96
+ }
97
+ else {
98
+ console.log(`Error checking ${resourceType} ${operation} status (attempt ${attempt}/${maxAttempts}):`, error);
99
+ }
100
+ if (attempt === maxAttempts) {
101
+ throw error;
102
+ }
103
+ await new Promise((resolve) => setTimeout(resolve, delayMs));
104
+ }
105
+ }
106
+ const totalTimeMs = maxAttempts * delayMs;
107
+ throw new ResourceTimeoutError(resourceType, resourceId, totalTimeMs, operation);
108
+ }
109
+ //# sourceMappingURL=timeout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeout.js","sourceRoot":"","sources":["../../src/util/timeout.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Extract value from XML string
3
+ */
4
+ export declare function extractXmlValue(xml: string, tagName: string): string;
5
+ //# sourceMappingURL=xml.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xml.d.ts","sourceRoot":"","sources":["../../src/util/xml.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGpE"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Extract value from XML string
3
+ */
4
+ export function extractXmlValue(xml, tagName) {
5
+ const match = xml.match(new RegExp(`<${tagName}>(.*?)<\/${tagName}>`));
6
+ return match ? match[1] : "";
7
+ }
8
+ //# sourceMappingURL=xml.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xml.js","sourceRoot":"","sources":["../../src/util/xml.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW,EAAE,OAAe;IAC1D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,OAAO,YAAY,OAAO,GAAG,CAAC,CAAC,CAAC;IACvE,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "alchemy",
3
- "version": "0.53.0",
3
+ "version": "0.55.0",
4
4
  "license": "Apache-2.0",
5
5
  "author": "Sam Goodwin <sam@alchemy.run>",
6
6
  "homepage": "https://alchemy.run",
@@ -12,10 +12,11 @@
12
12
  "type": "module",
13
13
  "module": "./lib/index.js",
14
14
  "bin": {
15
- "alchemy": "bin/alchemy.mjs"
15
+ "alchemy": "bin/alchemy.js"
16
16
  },
17
17
  "scripts": {
18
- "build:cli": "bun ./scripts/build-cli.ts",
18
+ "build:cli": "tsdown",
19
+ "dev:cli": "tsdown --watch",
19
20
  "build:workers": "bun ./scripts/build-workers.ts",
20
21
  "build": "rm -rf ./*.tsbuildinfo && rm -rf ./lib && tsc -b && bun run build:cli && bun run build:workers",
21
22
  "drizzle:generate": "bun run scripts/drizzle-generate.ts",
@@ -135,7 +136,7 @@
135
136
  },
136
137
  "dependencies": {
137
138
  "@aws-sdk/credential-providers": "^3.0.0",
138
- "@cloudflare/unenv-preset": "^2.3.1",
139
+ "@cloudflare/unenv-preset": "^2.4.0",
139
140
  "@cloudflare/workers-shared": "^0.17.5",
140
141
  "@iarna/toml": "^2.2.5",
141
142
  "@smithy/node-config-provider": "^4.0.0",
@@ -144,6 +145,7 @@
144
145
  "diff": "^8.0.2",
145
146
  "esbuild": "^0.25.1",
146
147
  "fast-json-patch": "^3.1.1",
148
+ "fast-xml-parser": "^5.2.5",
147
149
  "glob": "^10.0.0",
148
150
  "jszip": "^3.0.0",
149
151
  "kleur": "^4.1.5",
@@ -163,6 +165,7 @@
163
165
  "@ai-sdk/openai": "^1.1.9",
164
166
  "@ai-sdk/openai-compatible": "^0.2.2",
165
167
  "@aws-sdk/client-dynamodb": "^3.0.0",
168
+ "@aws-sdk/client-ec2": "^3.0.0",
166
169
  "@aws-sdk/client-iam": "^3.0.0",
167
170
  "@aws-sdk/client-lambda": "^3.0.0",
168
171
  "@aws-sdk/client-s3": "^3.0.0",
@@ -213,6 +216,8 @@
213
216
  "drizzle-kit": "^0.31.4",
214
217
  "fs-extra": "^11.3.0",
215
218
  "globby": "^14.1.0",
219
+ "jsonc-parse": "^1.5.5",
220
+ "grammy": "^1.37.0",
216
221
  "libsodium-wrappers": "^0.7.15",
217
222
  "listr2": "^8.0.0",
218
223
  "nitro-cloudflare-dev": "^0.2.2",
@@ -220,9 +225,11 @@
220
225
  "picocolors": "^1.1.1",
221
226
  "prettier": "^3.5.3",
222
227
  "trpc-cli": "^0.10.0",
228
+ "ts-morph": "^26.0.0",
229
+ "tsdown": "^0.13.0",
223
230
  "turndown": "^7.2.0",
224
- "typedoc-plugin-markdown": "^4.6.0",
225
231
  "typedoc": "^0.28.1",
232
+ "typedoc-plugin-markdown": "^4.6.0",
226
233
  "typescript": "^5.8.3",
227
234
  "vite": "^6.0.7",
228
235
  "vitepress": "^1.6.3",
@@ -0,0 +1,9 @@
1
+ export * from "./internet-gateway-attachment.ts";
2
+ export * from "./internet-gateway.ts";
3
+ export * from "./nat-gateway.ts";
4
+ export * from "./route-table-association.ts";
5
+ export * from "./route-table.ts";
6
+ export * from "./route.ts";
7
+ export * from "./security-group.ts";
8
+ export * from "./subnet.ts";
9
+ export * from "./vpc.ts";