alchemy 0.1.16 → 0.1.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (220) hide show
  1. package/lib/$.d.ts +12 -0
  2. package/lib/$.d.ts.map +1 -0
  3. package/lib/$.js +42 -0
  4. package/lib/$.js.map +1 -0
  5. package/lib/alchemize.d.ts +43 -0
  6. package/lib/alchemize.d.ts.map +1 -0
  7. package/lib/alchemize.js +112 -0
  8. package/lib/alchemize.js.map +1 -0
  9. package/lib/apply.d.ts +23 -0
  10. package/lib/aws/account-id.d.ts +5 -0
  11. package/lib/aws/account-id.d.ts.map +1 -0
  12. package/lib/aws/account-id.js +10 -0
  13. package/lib/aws/account-id.js.map +1 -0
  14. package/lib/aws/bucket.d.ts +21 -0
  15. package/lib/aws/bucket.d.ts.map +1 -0
  16. package/lib/aws/bucket.js +114 -0
  17. package/lib/aws/bucket.js.map +1 -0
  18. package/lib/aws/function.d.ts +53 -0
  19. package/lib/aws/function.d.ts.map +1 -0
  20. package/lib/aws/function.js +195 -0
  21. package/lib/aws/function.js.map +1 -0
  22. package/lib/aws/index.d.ts +9 -0
  23. package/lib/aws/index.d.ts.map +1 -0
  24. package/lib/aws/index.js +9 -0
  25. package/lib/aws/index.js.map +1 -0
  26. package/lib/aws/oidc/github-oidc-provider.d.ts +11 -0
  27. package/lib/aws/oidc/github-oidc-provider.d.ts.map +1 -0
  28. package/lib/aws/oidc/github-oidc-provider.js +22 -0
  29. package/lib/aws/oidc/github-oidc-provider.js.map +1 -0
  30. package/lib/aws/oidc/index.d.ts +3 -0
  31. package/lib/aws/oidc/index.d.ts.map +1 -0
  32. package/lib/aws/oidc/index.js +3 -0
  33. package/lib/aws/oidc/index.js.map +1 -0
  34. package/lib/aws/oidc/oidc-provider.d.ts +60 -0
  35. package/lib/aws/oidc/oidc-provider.d.ts.map +1 -0
  36. package/lib/aws/oidc/oidc-provider.js +140 -0
  37. package/lib/aws/oidc/oidc-provider.js.map +1 -0
  38. package/lib/aws/policy.d.ts +46 -0
  39. package/lib/aws/policy.d.ts.map +1 -0
  40. package/lib/aws/policy.js +139 -0
  41. package/lib/aws/policy.js.map +1 -0
  42. package/lib/aws/queue.d.ts +62 -0
  43. package/lib/aws/queue.d.ts.map +1 -0
  44. package/lib/aws/queue.js +167 -0
  45. package/lib/aws/queue.js.map +1 -0
  46. package/lib/aws/role.d.ts +27 -0
  47. package/lib/aws/role.d.ts.map +1 -0
  48. package/lib/aws/role.js +197 -0
  49. package/lib/aws/role.js.map +1 -0
  50. package/lib/aws/ses.d.ts +75 -0
  51. package/lib/aws/ses.d.ts.map +1 -0
  52. package/lib/aws/ses.js +189 -0
  53. package/lib/aws/ses.js.map +1 -0
  54. package/lib/aws/table.d.ts +26 -0
  55. package/lib/aws/table.d.ts.map +1 -0
  56. package/lib/aws/table.js +154 -0
  57. package/lib/aws/table.js.map +1 -0
  58. package/lib/cloudflare/api.d.ts +88 -0
  59. package/lib/cloudflare/api.d.ts.map +1 -0
  60. package/lib/cloudflare/api.js +184 -0
  61. package/lib/cloudflare/api.js.map +1 -0
  62. package/lib/cloudflare/asset-manifest.d.ts +15 -0
  63. package/lib/cloudflare/asset-manifest.d.ts.map +1 -0
  64. package/lib/cloudflare/asset-manifest.js +2 -0
  65. package/lib/cloudflare/asset-manifest.js.map +1 -0
  66. package/lib/cloudflare/auth.d.ts +52 -0
  67. package/lib/cloudflare/auth.d.ts.map +1 -0
  68. package/lib/cloudflare/auth.js +114 -0
  69. package/lib/cloudflare/auth.js.map +1 -0
  70. package/lib/cloudflare/bindings.d.ts +260 -0
  71. package/lib/cloudflare/bindings.d.ts.map +1 -0
  72. package/lib/cloudflare/bindings.js +2 -0
  73. package/lib/cloudflare/bindings.js.map +1 -0
  74. package/lib/cloudflare/bucket.d.ts +54 -0
  75. package/lib/cloudflare/bucket.d.ts.map +1 -0
  76. package/lib/cloudflare/bucket.js +120 -0
  77. package/lib/cloudflare/bucket.js.map +1 -0
  78. package/lib/cloudflare/durable-object-namespace.d.ts +20 -0
  79. package/lib/cloudflare/durable-object-namespace.d.ts.map +1 -0
  80. package/lib/cloudflare/durable-object-namespace.js +21 -0
  81. package/lib/cloudflare/durable-object-namespace.js.map +1 -0
  82. package/lib/cloudflare/generate-asset-manifest.d.ts +3 -0
  83. package/lib/cloudflare/generate-asset-manifest.d.ts.map +1 -0
  84. package/lib/cloudflare/generate-asset-manifest.js +69 -0
  85. package/lib/cloudflare/generate-asset-manifest.js.map +1 -0
  86. package/lib/cloudflare/index.d.ts +8 -0
  87. package/lib/cloudflare/index.d.ts.map +1 -0
  88. package/lib/cloudflare/index.js +8 -0
  89. package/lib/cloudflare/index.js.map +1 -0
  90. package/lib/cloudflare/kv-namespace.d.ts +64 -0
  91. package/lib/cloudflare/kv-namespace.d.ts.map +1 -0
  92. package/lib/cloudflare/kv-namespace.js +114 -0
  93. package/lib/cloudflare/kv-namespace.js.map +1 -0
  94. package/lib/cloudflare/state.d.ts +83 -0
  95. package/lib/cloudflare/state.d.ts.map +1 -0
  96. package/lib/cloudflare/state.js +109 -0
  97. package/lib/cloudflare/state.js.map +1 -0
  98. package/lib/cloudflare/static-site-router.d.ts +19 -0
  99. package/lib/cloudflare/static-site-router.d.ts.map +1 -0
  100. package/lib/cloudflare/static-site-router.js +110 -0
  101. package/lib/cloudflare/static-site-router.js.map +1 -0
  102. package/lib/cloudflare/static-site.d.ts +166 -0
  103. package/lib/cloudflare/static-site.d.ts.map +1 -0
  104. package/lib/cloudflare/static-site.js +161 -0
  105. package/lib/cloudflare/static-site.js.map +1 -0
  106. package/lib/cloudflare/types.d.ts +52 -0
  107. package/lib/cloudflare/types.d.ts.map +1 -0
  108. package/lib/cloudflare/types.js +21 -0
  109. package/lib/cloudflare/types.js.map +1 -0
  110. package/lib/cloudflare/upload-asset-manifest.d.ts +12 -0
  111. package/lib/cloudflare/upload-asset-manifest.d.ts.map +1 -0
  112. package/lib/cloudflare/upload-asset-manifest.js +55 -0
  113. package/lib/cloudflare/upload-asset-manifest.js.map +1 -0
  114. package/lib/cloudflare/worker-metadata.d.ts +130 -0
  115. package/lib/cloudflare/worker-metadata.d.ts.map +1 -0
  116. package/lib/cloudflare/worker-metadata.js +2 -0
  117. package/lib/cloudflare/worker-metadata.js.map +1 -0
  118. package/lib/cloudflare/worker-migration.d.ts +110 -0
  119. package/lib/cloudflare/worker-migration.d.ts.map +1 -0
  120. package/lib/cloudflare/worker-migration.js +11 -0
  121. package/lib/cloudflare/worker-migration.js.map +1 -0
  122. package/lib/cloudflare/worker.d.ts +108 -0
  123. package/lib/cloudflare/worker.d.ts.map +1 -0
  124. package/lib/cloudflare/worker.js +407 -0
  125. package/lib/cloudflare/worker.js.map +1 -0
  126. package/lib/destroy.d.ts +19 -0
  127. package/lib/error.d.ts +2 -0
  128. package/lib/error.d.ts.map +1 -0
  129. package/lib/error.js +13 -0
  130. package/lib/error.js.map +1 -0
  131. package/lib/esbuild.d.ts +152 -0
  132. package/lib/esbuild.d.ts.map +1 -0
  133. package/lib/esbuild.js +67 -0
  134. package/lib/esbuild.js.map +1 -0
  135. package/lib/fs.d.ts +12 -0
  136. package/lib/fs.d.ts.map +1 -0
  137. package/lib/fs.js +41 -0
  138. package/lib/fs.js.map +1 -0
  139. package/lib/github/client.d.ts +34 -0
  140. package/lib/github/client.d.ts.map +1 -0
  141. package/lib/github/client.js +91 -0
  142. package/lib/github/client.js.map +1 -0
  143. package/lib/github/index.d.ts +2 -0
  144. package/lib/github/index.d.ts.map +1 -0
  145. package/lib/github/index.js +2 -0
  146. package/lib/github/index.js.map +1 -0
  147. package/lib/github/secret.d.ts +46 -0
  148. package/lib/github/secret.d.ts.map +1 -0
  149. package/lib/github/secret.js +103 -0
  150. package/lib/github/secret.js.map +1 -0
  151. package/lib/global.d.ts +16 -0
  152. package/lib/global.d.ts.map +1 -0
  153. package/lib/global.js +42 -0
  154. package/lib/global.js.map +1 -0
  155. package/lib/index.d.ts +10 -0
  156. package/lib/index.d.ts.map +1 -0
  157. package/lib/index.js +9 -0
  158. package/lib/index.js.map +1 -0
  159. package/lib/input.d.ts +6 -0
  160. package/lib/input.d.ts.map +1 -0
  161. package/lib/input.js +2 -0
  162. package/lib/input.js.map +1 -0
  163. package/lib/main.d.ts +3 -0
  164. package/lib/main.d.ts.map +1 -0
  165. package/lib/main.js +32 -0
  166. package/lib/main.js.map +1 -0
  167. package/lib/output.d.ts +24 -0
  168. package/lib/output.d.ts.map +1 -0
  169. package/lib/output.js +23 -0
  170. package/lib/output.js.map +1 -0
  171. package/lib/print.d.ts +7 -0
  172. package/lib/print.d.ts.map +1 -0
  173. package/lib/print.js +10 -0
  174. package/lib/print.js.map +1 -0
  175. package/lib/resource.d.ts +71 -0
  176. package/lib/resource.d.ts.map +1 -0
  177. package/lib/resource.js +276 -0
  178. package/lib/resource.js.map +1 -0
  179. package/lib/scope.d.ts +18 -0
  180. package/lib/scope.d.ts.map +1 -0
  181. package/lib/scope.js +30 -0
  182. package/lib/scope.js.map +1 -0
  183. package/lib/slug.d.ts +2 -0
  184. package/lib/slug.d.ts.map +1 -0
  185. package/lib/slug.js +4 -0
  186. package/lib/slug.js.map +1 -0
  187. package/lib/state.d.ts +40 -0
  188. package/lib/state.d.ts.map +1 -0
  189. package/lib/state.js +73 -0
  190. package/lib/state.js.map +1 -0
  191. package/lib/stripe/index.d.ts +4 -0
  192. package/lib/stripe/index.d.ts.map +1 -0
  193. package/lib/stripe/index.js +4 -0
  194. package/lib/stripe/index.js.map +1 -0
  195. package/lib/stripe/price.d.ts +109 -0
  196. package/lib/stripe/price.d.ts.map +1 -0
  197. package/lib/stripe/price.js +112 -0
  198. package/lib/stripe/price.js.map +1 -0
  199. package/lib/stripe/product.d.ts +86 -0
  200. package/lib/stripe/product.d.ts.map +1 -0
  201. package/lib/stripe/product.js +90 -0
  202. package/lib/stripe/product.js.map +1 -0
  203. package/lib/stripe/webhook.d.ts +73 -0
  204. package/lib/stripe/webhook.d.ts.map +1 -0
  205. package/lib/stripe/webhook.js +94 -0
  206. package/lib/stripe/webhook.js.map +1 -0
  207. package/lib/utils/content-type.d.ts +8 -0
  208. package/lib/utils/content-type.d.ts.map +1 -0
  209. package/lib/utils/content-type.js +41 -0
  210. package/lib/utils/content-type.js.map +1 -0
  211. package/lib/utils/retry.d.ts +13 -0
  212. package/lib/utils/retry.d.ts.map +1 -0
  213. package/lib/utils/retry.js +32 -0
  214. package/lib/utils/retry.js.map +1 -0
  215. package/package.json +1 -1
  216. package/src/cloudflare/bindings.ts +7 -1
  217. package/src/cloudflare/bucket.ts +240 -0
  218. package/src/cloudflare/index.ts +1 -0
  219. package/src/cloudflare/static-site.ts +13 -1
  220. package/src/cloudflare/worker.ts +7 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/cloudflare/types.ts"],"names":[],"mappings":"AAmDA;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAAkB;IAElB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA+B,CAAC;QACnE,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E,CAAC;aAAM,CAAC;YACN,OAAO,QAAQ,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC3D,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,QAAQ,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;IAC3D,CAAC;AACH,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { CloudflareApi } from "./api";
2
+ import type { AssetManifest } from "./asset-manifest";
3
+ type AssetItem = AssetManifest[number];
4
+ type UploadResult = {
5
+ item: AssetItem;
6
+ success: boolean;
7
+ status?: number;
8
+ error?: unknown;
9
+ };
10
+ export declare function uploadAssetManifest(api: CloudflareApi, namespaceId: string, manifest: AssetManifest): Promise<UploadResult[]>;
11
+ export {};
12
+ //# sourceMappingURL=upload-asset-manifest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-asset-manifest.d.ts","sourceRoot":"","sources":["../../src/cloudflare/upload-asset-manifest.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAMtD,KAAK,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;AACvC,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,aAAa,EAClB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,aAAa,GACtB,OAAO,CAAC,YAAY,EAAE,CAAC,CA8DzB"}
@@ -0,0 +1,55 @@
1
+ import fs from "node:fs/promises";
2
+ // Maximum number of concurrent uploads
3
+ const MAX_CONCURRENT = 100; // Adjust based on API limits and performance testing
4
+ export async function uploadAssetManifest(api, namespaceId, manifest) {
5
+ const results = [];
6
+ // Process in batches with controlled concurrency
7
+ let index = 0;
8
+ const activePromises = new Set();
9
+ while (index < manifest.length || activePromises.size > 0) {
10
+ // Fill up to MAX_CONCURRENT active uploads
11
+ while (activePromises.size < MAX_CONCURRENT && index < manifest.length) {
12
+ const item = manifest[index++];
13
+ const promise = uploadItem(item).then((result) => {
14
+ results.push(result);
15
+ activePromises.delete(promise);
16
+ });
17
+ activePromises.add(promise);
18
+ }
19
+ // Wait for at least one promise to complete if we have any active
20
+ if (activePromises.size > 0) {
21
+ await Promise.race(activePromises);
22
+ }
23
+ }
24
+ return results;
25
+ async function uploadItem(item) {
26
+ const content = await fs.readFile(item.source);
27
+ // Create metadata object
28
+ const metadata = {
29
+ key: item.key,
30
+ hash: item.hash,
31
+ contentType: item.contentType,
32
+ cacheControl: item.cacheControl,
33
+ };
34
+ // Create FormData for multipart upload
35
+ const formData = new FormData();
36
+ formData.append("metadata", JSON.stringify(metadata));
37
+ // Add file content as 'value'
38
+ const blob = new Blob([content]);
39
+ formData.append("value", blob);
40
+ try {
41
+ const response = await api.put(`/accounts/${api.accountId}/storage/kv/namespaces/${namespaceId}/values/${item.key}`, formData);
42
+ const result = { item, success: response.ok, status: response.status };
43
+ if (!result.success) {
44
+ console.warn(`Error uploading asset ${item.key}: ${result.status}`);
45
+ }
46
+ return result;
47
+ }
48
+ catch (error) {
49
+ const result = { item, success: false, error };
50
+ console.warn(`Error uploading asset ${item.key}: ${error}`);
51
+ return result;
52
+ }
53
+ }
54
+ }
55
+ //# sourceMappingURL=upload-asset-manifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-asset-manifest.js","sourceRoot":"","sources":["../../src/cloudflare/upload-asset-manifest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * Metadata returned by Cloudflare API for a worker script
3
+ */
4
+ export interface WorkerScriptMetadata {
5
+ /**
6
+ * Worker ID
7
+ */
8
+ id: string;
9
+ /**
10
+ * Default environment information
11
+ */
12
+ default_environment?: WorkerDefaultEnvironment;
13
+ /**
14
+ * Worker creation timestamp
15
+ */
16
+ created_on: string;
17
+ /**
18
+ * Worker last modification timestamp
19
+ */
20
+ modified_on: string;
21
+ /**
22
+ * Worker usage model
23
+ */
24
+ usage_model: string;
25
+ /**
26
+ * Worker environments
27
+ */
28
+ environments?: WorkerEnvironment[];
29
+ }
30
+ /**
31
+ * Worker script information
32
+ */
33
+ export interface WorkerScriptInfo {
34
+ /**
35
+ * Script creation timestamp
36
+ */
37
+ created_on: string;
38
+ /**
39
+ * Script last modification timestamp
40
+ */
41
+ modified_on: string;
42
+ /**
43
+ * Script ID
44
+ */
45
+ id: string;
46
+ /**
47
+ * Script tag
48
+ */
49
+ tag: string;
50
+ /**
51
+ * Script tags
52
+ */
53
+ tags: string[];
54
+ /**
55
+ * Deployment ID
56
+ */
57
+ deployment_id: string;
58
+ /**
59
+ * Tail consumers
60
+ */
61
+ tail_consumers: any;
62
+ /**
63
+ * Whether logpush is enabled
64
+ */
65
+ logpush: boolean;
66
+ /**
67
+ * Observability settings
68
+ */
69
+ observability: {
70
+ /**
71
+ * Whether observability is enabled
72
+ */
73
+ enabled: boolean;
74
+ /**
75
+ * Head sampling rate
76
+ */
77
+ head_sampling_rate: number | null;
78
+ };
79
+ /**
80
+ * Whether the script has assets
81
+ */
82
+ has_assets: boolean;
83
+ /**
84
+ * Whether the script has modules
85
+ */
86
+ has_modules: boolean;
87
+ /**
88
+ * Script etag
89
+ */
90
+ etag: string;
91
+ /**
92
+ * Script handlers
93
+ */
94
+ handlers: string[];
95
+ /**
96
+ * Where the script was last deployed from
97
+ */
98
+ last_deployed_from: string;
99
+ /**
100
+ * Script usage model
101
+ */
102
+ usage_model: string;
103
+ }
104
+ /**
105
+ * Worker environment information
106
+ */
107
+ export interface WorkerEnvironment {
108
+ /**
109
+ * Environment name
110
+ */
111
+ environment: string;
112
+ /**
113
+ * Environment creation timestamp
114
+ */
115
+ created_on: string;
116
+ /**
117
+ * Environment last modification timestamp
118
+ */
119
+ modified_on: string;
120
+ }
121
+ /**
122
+ * Default environment with script information
123
+ */
124
+ export interface WorkerDefaultEnvironment extends WorkerEnvironment {
125
+ /**
126
+ * Script information
127
+ */
128
+ script: WorkerScriptInfo;
129
+ }
130
+ //# sourceMappingURL=worker-metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-metadata.d.ts","sourceRoot":"","sources":["../../src/cloudflare/worker-metadata.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,mBAAmB,CAAC,EAAE,wBAAwB,CAAC;IAE/C;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,IAAI,EAAE,MAAM,EAAE,CAAC;IAEf;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,cAAc,EAAE,GAAG,CAAC;IAEpB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,aAAa,EAAE;QACb;;WAEG;QACH,OAAO,EAAE,OAAO,CAAC;QAEjB;;WAEG;QACH,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;KACnC,CAAC;IAEF;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IACjE;;OAEG;IACH,MAAM,EAAE,gBAAgB,CAAC;CAC1B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=worker-metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-metadata.js","sourceRoot":"","sources":["../../src/cloudflare/worker-metadata.ts"],"names":[],"mappings":""}
@@ -0,0 +1,110 @@
1
+ export type WorkerMigrations = SingleStepMigration | MultiStepMigration;
2
+ export declare function isSingleStepMigration(migration: WorkerMigrations): migration is SingleStepMigration;
3
+ export interface SingleStepMigration {
4
+ /**
5
+ * A list of classes to delete Durable Object namespaces from
6
+ */
7
+ deleted_classes?: string[];
8
+ /**
9
+ * A list of classes to create Durable Object namespaces from
10
+ */
11
+ new_classes?: string[];
12
+ /**
13
+ * A list of classes to create Durable Object namespaces with SQLite from
14
+ */
15
+ new_sqlite_classes?: string[];
16
+ /**
17
+ * Tag to set as the latest migration tag
18
+ */
19
+ new_tag?: string;
20
+ /**
21
+ * Tag used to verify against the latest migration tag for this Worker.
22
+ * If they don't match, the upload is rejected.
23
+ */
24
+ old_tag?: string;
25
+ /**
26
+ * A list of classes with Durable Object namespaces that were renamed
27
+ */
28
+ renamed_classes?: RenamedClass[];
29
+ /**
30
+ * A list of transfers for Durable Object namespaces from a different Worker
31
+ * and class to a class defined in this Worker
32
+ */
33
+ transferred_classes?: TransferredClass[];
34
+ }
35
+ /**
36
+ * Represents a renamed class in a Durable Object migration
37
+ */
38
+ export interface RenamedClass {
39
+ /**
40
+ * Original class name
41
+ */
42
+ from: string;
43
+ /**
44
+ * New class name
45
+ */
46
+ to: string;
47
+ }
48
+ /**
49
+ * Represents a transferred class in a Durable Object migration
50
+ */
51
+ export interface TransferredClass {
52
+ /**
53
+ * Original class name
54
+ */
55
+ from: string;
56
+ /**
57
+ * Original script name
58
+ */
59
+ from_script: string;
60
+ /**
61
+ * New class name in this Worker
62
+ */
63
+ to: string;
64
+ }
65
+ export declare function isMultiStepMigration(migration: WorkerMigrations): migration is MultiStepMigration;
66
+ /**
67
+ * Represents a multi-step migration for Durable Objects
68
+ */
69
+ export interface MultiStepMigration {
70
+ /**
71
+ * Tag to set as the latest migration tag
72
+ */
73
+ new_tag?: string;
74
+ /**
75
+ * Tag used to verify against the latest migration tag for this Worker.
76
+ * If they don't match, the upload is rejected.
77
+ */
78
+ old_tag?: string;
79
+ /**
80
+ * Migrations to apply in order
81
+ */
82
+ steps: MigrationStep[];
83
+ }
84
+ /**
85
+ * Represents a single step in a Durable Object migration
86
+ */
87
+ export interface MigrationStep {
88
+ /**
89
+ * A list of classes to delete Durable Object namespaces from
90
+ */
91
+ deleted_classes?: string[];
92
+ /**
93
+ * A list of classes to create Durable Object namespaces from
94
+ */
95
+ new_classes?: string[];
96
+ /**
97
+ * A list of classes to create Durable Object namespaces with SQLite from
98
+ */
99
+ new_sqlite_classes?: string[];
100
+ /**
101
+ * A list of classes with Durable Object namespaces that were renamed
102
+ */
103
+ renamed_classes?: RenamedClass[];
104
+ /**
105
+ * A list of transfers for Durable Object namespaces from a different Worker
106
+ * and class to a class defined in this Worker
107
+ */
108
+ transferred_classes?: TransferredClass[];
109
+ }
110
+ //# sourceMappingURL=worker-migration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-migration.d.ts","sourceRoot":"","sources":["../../src/cloudflare/worker-migration.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;AAExE,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,gBAAgB,GAC1B,SAAS,IAAI,mBAAmB,CAQlC;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE9B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IAEjC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,gBAAgB,GAC1B,SAAS,IAAI,kBAAkB,CAEjC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,KAAK,EAAE,aAAa,EAAE,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE9B;;OAEG;IACH,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IAEjC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC1C"}
@@ -0,0 +1,11 @@
1
+ export function isSingleStepMigration(migration) {
2
+ return ("deleted_classes" in migration ||
3
+ "new_classes" in migration ||
4
+ "new_sqlite_classes" in migration ||
5
+ "renamed_classes" in migration ||
6
+ "transferred_classes" in migration);
7
+ }
8
+ export function isMultiStepMigration(migration) {
9
+ return "steps" in migration;
10
+ }
11
+ //# sourceMappingURL=worker-migration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-migration.js","sourceRoot":"","sources":["../../src/cloudflare/worker-migration.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,qBAAqB,CACnC,SAA2B;IAE3B,OAAO,CACL,iBAAiB,IAAI,SAAS;QAC9B,aAAa,IAAI,SAAS;QAC1B,oBAAoB,IAAI,SAAS;QACjC,iBAAiB,IAAI,SAAS;QAC9B,qBAAqB,IAAI,SAAS,CACnC,CAAC;AACJ,CAAC;AA4ED,MAAM,UAAU,oBAAoB,CAClC,SAA2B;IAE3B,OAAO,OAAO,IAAI,SAAS,CAAC;AAC9B,CAAC"}
@@ -0,0 +1,108 @@
1
+ import { type BundleProps } from "../esbuild";
2
+ import type { Resolved } from "../output";
3
+ import type { Bindings } from "./bindings";
4
+ import type { SingleStepMigration } from "./worker-migration";
5
+ /**
6
+ * Properties for creating or updating a Worker
7
+ */
8
+ export interface WorkerProps {
9
+ /**
10
+ * The worker script content (JavaScript or WASM)
11
+ * One of script, entryPoint, or bundle must be provided
12
+ */
13
+ script?: string;
14
+ /**
15
+ * Path to the entry point file
16
+ * Will be bundled using esbuild
17
+ * One of script, entryPoint, or bundle must be provided
18
+ */
19
+ entrypoint?: string;
20
+ /**
21
+ * Bundle options when using entryPoint
22
+ * Ignored if bundle is provided
23
+ */
24
+ bundle?: Omit<BundleProps, "entryPoint">;
25
+ /**
26
+ * Module format for the worker script
27
+ * 'esm' - ECMAScript modules (default)
28
+ * 'cjs' - CommonJS modules
29
+ * @default 'esm'
30
+ */
31
+ format?: "esm" | "cjs";
32
+ /**
33
+ * Name for the worker
34
+ * This is mandatory - must be explicitly specified
35
+ */
36
+ name: string;
37
+ /**
38
+ * Routes to associate with this worker
39
+ * Format: example.com/* or *.example.com/*
40
+ */
41
+ routes?: string[];
42
+ /**
43
+ * Bindings to attach to the worker
44
+ */
45
+ bindings?: Bindings;
46
+ /**
47
+ * Environment variables to attach to the worker
48
+ * These will be converted to plain_text bindings
49
+ */
50
+ env?: {
51
+ [key: string]: string;
52
+ };
53
+ /**
54
+ * Whether to enable a workers.dev URL for this worker
55
+ * If true, the worker will be available at {name}.{subdomain}.workers.dev
56
+ * @default false
57
+ */
58
+ url?: boolean;
59
+ /**
60
+ * Observability configuration for the worker
61
+ * Controls whether worker logs are enabled
62
+ * @default { enabled: true }
63
+ */
64
+ observability?: {
65
+ /**
66
+ * Whether to enable worker logs
67
+ * @default true
68
+ */
69
+ enabled?: boolean;
70
+ };
71
+ /**
72
+ * Migrations to apply to the worker
73
+ */
74
+ migrations?: SingleStepMigration;
75
+ }
76
+ /**
77
+ * Output returned after Worker creation/update
78
+ */
79
+ export interface WorkerOutput extends Omit<WorkerProps, "url"> {
80
+ type: "service";
81
+ /**
82
+ * The ID of the worker
83
+ */
84
+ id: string;
85
+ /**
86
+ * Time at which the worker was created
87
+ */
88
+ createdAt: number;
89
+ /**
90
+ * Time at which the worker was last updated
91
+ */
92
+ updatedAt: number;
93
+ /**
94
+ * The worker's URL if enabled
95
+ * Format: {name}.{subdomain}.workers.dev
96
+ */
97
+ url?: string;
98
+ /**
99
+ * The bindings that were created
100
+ */
101
+ bindings: Bindings;
102
+ }
103
+ export declare function isWorker(resource: any): resource is Resolved<Worker>;
104
+ declare const Worker_base: import("../resource").Provider<string, [props: WorkerProps], WorkerOutput>;
105
+ export declare class Worker extends Worker_base {
106
+ }
107
+ export {};
108
+ //# sourceMappingURL=worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/cloudflare/worker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAI1C,OAAO,KAAK,EAAE,QAAQ,EAAqB,MAAM,YAAY,CAAC;AAM9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAEzC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAEvB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,GAAG,CAAC,EAAE;QACJ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,CAAC;IAEF;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;;;OAIG;IACH,aAAa,CAAC,EAAE;QACd;;;WAGG;QACH,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;IAEF;;OAEG;IACH,UAAU,CAAC,EAAE,mBAAmB,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC;IAC5D,IAAI,EAAE,SAAS,CAAC;IAEhB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,GAAG,GAAG,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,CAEpE;;AAED,qBAAa,MAAO,SAAQ,WAqE3B;CAAG"}