alchemy 0.22.4 → 0.23.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 (160) hide show
  1. package/lib/aws/bucket.d.ts.map +1 -1
  2. package/lib/aws/bucket.js +13 -12
  3. package/lib/aws/bucket.js.map +1 -1
  4. package/lib/aws/control/client.d.ts.map +1 -1
  5. package/lib/aws/control/client.js +5 -3
  6. package/lib/aws/control/client.js.map +1 -1
  7. package/lib/aws/control/resource.d.ts.map +1 -1
  8. package/lib/aws/control/resource.js +13 -4
  9. package/lib/aws/control/resource.js.map +1 -1
  10. package/lib/aws/control/types.d.ts +85129 -0
  11. package/lib/aws/function.d.ts.map +1 -1
  12. package/lib/aws/function.js +51 -42
  13. package/lib/aws/function.js.map +1 -1
  14. package/lib/aws/index.d.ts +1 -0
  15. package/lib/aws/index.d.ts.map +1 -1
  16. package/lib/aws/index.js +1 -0
  17. package/lib/aws/index.js.map +1 -1
  18. package/lib/aws/policy-attachment.d.ts.map +1 -1
  19. package/lib/aws/policy-attachment.js +5 -4
  20. package/lib/aws/policy-attachment.js.map +1 -1
  21. package/lib/aws/policy.d.ts.map +1 -1
  22. package/lib/aws/policy.js +21 -20
  23. package/lib/aws/policy.js.map +1 -1
  24. package/lib/aws/queue.d.ts.map +1 -1
  25. package/lib/aws/queue.js +19 -15
  26. package/lib/aws/queue.js.map +1 -1
  27. package/lib/aws/retry.d.ts +5 -0
  28. package/lib/aws/retry.d.ts.map +1 -0
  29. package/lib/aws/retry.js +27 -0
  30. package/lib/aws/retry.js.map +1 -0
  31. package/lib/aws/role.d.ts.map +1 -1
  32. package/lib/aws/role.js +31 -30
  33. package/lib/aws/role.js.map +1 -1
  34. package/lib/aws/ses.d.ts.map +1 -1
  35. package/lib/aws/ses.js +27 -26
  36. package/lib/aws/ses.js.map +1 -1
  37. package/lib/aws/ssm-parameter.d.ts +150 -0
  38. package/lib/aws/ssm-parameter.d.ts.map +1 -0
  39. package/lib/aws/ssm-parameter.js +184 -0
  40. package/lib/aws/ssm-parameter.js.map +1 -0
  41. package/lib/aws/table.d.ts.map +1 -1
  42. package/lib/aws/table.js +9 -27
  43. package/lib/aws/table.js.map +1 -1
  44. package/lib/cloudflare/account-id.d.ts +1 -0
  45. package/lib/cloudflare/account-id.d.ts.map +1 -1
  46. package/lib/cloudflare/account-id.js.map +1 -1
  47. package/lib/cloudflare/api.d.ts.map +1 -1
  48. package/lib/cloudflare/api.js +22 -2
  49. package/lib/cloudflare/api.js.map +1 -1
  50. package/lib/cloudflare/index.d.ts +2 -1
  51. package/lib/cloudflare/index.d.ts.map +1 -1
  52. package/lib/cloudflare/index.js +2 -1
  53. package/lib/cloudflare/index.js.map +1 -1
  54. package/lib/cloudflare/queue.d.ts.map +1 -1
  55. package/lib/cloudflare/queue.js +1 -0
  56. package/lib/cloudflare/queue.js.map +1 -1
  57. package/lib/cloudflare/route.d.ts +7 -0
  58. package/lib/cloudflare/route.d.ts.map +1 -1
  59. package/lib/cloudflare/route.js +44 -2
  60. package/lib/cloudflare/route.js.map +1 -1
  61. package/lib/cloudflare/worker-metadata.d.ts.map +1 -1
  62. package/lib/cloudflare/worker-metadata.js +1 -2
  63. package/lib/cloudflare/worker-metadata.js.map +1 -1
  64. package/lib/cloudflare/worker.d.ts +2 -1
  65. package/lib/cloudflare/worker.d.ts.map +1 -1
  66. package/lib/cloudflare/worker.js +17 -8
  67. package/lib/cloudflare/worker.js.map +1 -1
  68. package/lib/cloudflare/workflow.d.ts +7 -0
  69. package/lib/cloudflare/workflow.d.ts.map +1 -1
  70. package/lib/cloudflare/workflow.js +2 -0
  71. package/lib/cloudflare/workflow.js.map +1 -1
  72. package/lib/cloudflare/wrangler.json.d.ts +1 -0
  73. package/lib/cloudflare/wrangler.json.d.ts.map +1 -1
  74. package/lib/cloudflare/wrangler.json.js +1 -0
  75. package/lib/cloudflare/wrangler.json.js.map +1 -1
  76. package/lib/destroy.js +1 -1
  77. package/lib/destroy.js.map +1 -1
  78. package/lib/dns/godaddy.d.ts.map +1 -1
  79. package/lib/dns/godaddy.js +2 -1
  80. package/lib/dns/godaddy.js.map +1 -1
  81. package/lib/fs/file-system-state-store.d.ts.map +1 -1
  82. package/lib/fs/file-system-state-store.js +14 -2
  83. package/lib/fs/file-system-state-store.js.map +1 -1
  84. package/lib/github/secret.d.ts.map +1 -1
  85. package/lib/github/secret.js +1 -0
  86. package/lib/github/secret.js.map +1 -1
  87. package/lib/neon/api.d.ts.map +1 -1
  88. package/lib/neon/api.js +2 -1
  89. package/lib/neon/api.js.map +1 -1
  90. package/lib/runtime/shims.d.ts +6 -0
  91. package/lib/runtime/shims.d.ts.map +1 -0
  92. package/lib/runtime/shims.js +27 -0
  93. package/lib/runtime/shims.js.map +1 -0
  94. package/lib/sentry/api.d.ts.map +1 -1
  95. package/lib/sentry/api.js +2 -1
  96. package/lib/sentry/api.js.map +1 -1
  97. package/lib/test/bun.d.ts.map +1 -1
  98. package/lib/test/bun.js +1 -7
  99. package/lib/test/bun.js.map +1 -1
  100. package/lib/test/prune.d.ts +2 -1
  101. package/lib/test/prune.d.ts.map +1 -1
  102. package/lib/test/prune.js +29 -5
  103. package/lib/test/prune.js.map +1 -1
  104. package/lib/test/vitest.d.ts +92 -0
  105. package/lib/test/vitest.d.ts.map +1 -0
  106. package/lib/test/vitest.js +94 -0
  107. package/lib/test/vitest.js.map +1 -0
  108. package/lib/upstash/api.d.ts.map +1 -1
  109. package/lib/upstash/api.js +2 -1
  110. package/lib/upstash/api.js.map +1 -1
  111. package/lib/util/retry.js +2 -2
  112. package/lib/util/retry.js.map +1 -1
  113. package/lib/util/safe-fetch.d.ts +2 -0
  114. package/lib/util/safe-fetch.d.ts.map +1 -0
  115. package/lib/util/safe-fetch.js +48 -0
  116. package/lib/util/safe-fetch.js.map +1 -0
  117. package/lib/vercel/api.d.ts.map +1 -1
  118. package/lib/vercel/api.js +2 -1
  119. package/lib/vercel/api.js.map +1 -1
  120. package/lib/web/vitepress/process-front-matter-files.d.ts.map +1 -1
  121. package/lib/web/vitepress/process-front-matter-files.js +11 -7
  122. package/lib/web/vitepress/process-front-matter-files.js.map +1 -1
  123. package/package.json +10 -6
  124. package/src/alchemy.ts +2 -2
  125. package/src/aws/bucket.ts +55 -36
  126. package/src/aws/control/client.ts +13 -13
  127. package/src/aws/control/resource.ts +19 -3
  128. package/src/aws/function.ts +233 -178
  129. package/src/aws/index.ts +1 -0
  130. package/src/aws/policy-attachment.ts +15 -10
  131. package/src/aws/policy.ts +75 -54
  132. package/src/aws/queue.ts +53 -36
  133. package/src/aws/retry.ts +38 -0
  134. package/src/aws/role.ts +121 -90
  135. package/src/aws/ses.ts +101 -73
  136. package/src/aws/ssm-parameter.ts +315 -0
  137. package/src/aws/table.ts +61 -90
  138. package/src/cloudflare/account-id.ts +2 -0
  139. package/src/cloudflare/api.ts +26 -3
  140. package/src/cloudflare/index.ts +2 -1
  141. package/src/cloudflare/queue.ts +2 -0
  142. package/src/cloudflare/route.ts +86 -2
  143. package/src/cloudflare/worker-metadata.ts +1 -2
  144. package/src/cloudflare/worker.ts +21 -9
  145. package/src/cloudflare/workflow.ts +8 -0
  146. package/src/cloudflare/wrangler.json.ts +8 -1
  147. package/src/destroy.ts +1 -1
  148. package/src/dns/godaddy.ts +3 -1
  149. package/src/fs/file-system-state-store.ts +16 -2
  150. package/src/github/secret.ts +2 -0
  151. package/src/neon/api.ts +2 -1
  152. package/src/sentry/api.ts +2 -1
  153. package/src/test/bun.ts +1 -7
  154. package/src/test/prune.ts +31 -4
  155. package/src/test/vitest.ts +209 -0
  156. package/src/upstash/api.ts +2 -1
  157. package/src/util/retry.ts +3 -3
  158. package/src/util/safe-fetch.ts +61 -0
  159. package/src/vercel/api.ts +2 -1
  160. package/src/web/vitepress/process-front-matter-files.ts +15 -7
@@ -0,0 +1,150 @@
1
+ import type { Context } from "../context.ts";
2
+ import { Resource } from "../resource.ts";
3
+ import { type Secret } from "../secret.ts";
4
+ /**
5
+ * Base properties shared by all SSM Parameter types
6
+ */
7
+ interface SSMParameterBaseProps {
8
+ /**
9
+ * Name of the parameter
10
+ */
11
+ name: string;
12
+ /**
13
+ * Description of the parameter's purpose
14
+ */
15
+ description?: string;
16
+ /**
17
+ * KMS Key ID for SecureString parameters
18
+ * If not specified, uses the default KMS key for SSM
19
+ */
20
+ keyId?: string;
21
+ /**
22
+ * Parameter tier (Standard or Advanced)
23
+ * Default: "Standard"
24
+ */
25
+ tier?: "Standard" | "Advanced";
26
+ /**
27
+ * Policies to apply to the parameter (JSON string)
28
+ */
29
+ policies?: string;
30
+ /**
31
+ * Data type for String parameters
32
+ */
33
+ dataType?: "text" | "aws:ec2:image";
34
+ /**
35
+ * Resource tags for the parameter
36
+ */
37
+ tags?: Record<string, string>;
38
+ }
39
+ /**
40
+ * Properties for creating or updating an SSM Parameter
41
+ */
42
+ export type SSMParameterProps = (SSMParameterBaseProps & {
43
+ /**
44
+ * Type of parameter - SecureString for encrypted values
45
+ */
46
+ type: "SecureString";
47
+ /**
48
+ * Secret value that will be encrypted in AWS SSM and in alchemy state files
49
+ */
50
+ value: Secret;
51
+ }) | (SSMParameterBaseProps & {
52
+ /**
53
+ * Type of parameter - StringList for arrays of strings
54
+ */
55
+ type: "StringList";
56
+ /**
57
+ * Array of strings that will be stored as comma-separated values
58
+ */
59
+ value: string[];
60
+ }) | (SSMParameterBaseProps & {
61
+ /**
62
+ * Type of parameter - String for plain text values
63
+ * Default: "String"
64
+ */
65
+ type?: "String";
66
+ /**
67
+ * Plain text value of the parameter
68
+ */
69
+ value: string;
70
+ });
71
+ /**
72
+ * Output returned after SSM Parameter creation/update
73
+ */
74
+ export type SSMParameter = Resource<"ssm::Parameter"> & {
75
+ /**
76
+ * ARN of the parameter
77
+ */
78
+ arn: string;
79
+ /**
80
+ * Version of the parameter
81
+ */
82
+ version: number;
83
+ /**
84
+ * Last modified date
85
+ */
86
+ lastModifiedDate: Date;
87
+ } & SSMParameterProps;
88
+ /**
89
+ * AWS SSM Parameter Store Parameter Resource
90
+ *
91
+ * Creates and manages SSM parameters with support for different parameter types,
92
+ * encryption, and automatic tag management. Uses discriminated union types to
93
+ * ensure SecureString parameters always use Secret values and StringList uses arrays.
94
+ *
95
+ * @example
96
+ * // Create a basic string parameter
97
+ * const basicParam = await SSMParameter("app-config", {
98
+ * name: "/myapp/config/database-url",
99
+ * value: "postgresql://localhost:5432/myapp",
100
+ * description: "Database connection URL",
101
+ * tags: {
102
+ * Environment: "production",
103
+ * Application: "myapp"
104
+ * }
105
+ * });
106
+ *
107
+ * @example
108
+ * // Create a secure string parameter for secrets
109
+ * const secretParam = await SSMParameter("app-secret", {
110
+ * name: "/myapp/secrets/api-key",
111
+ * value: alchemy.secret("super-secret-api-key"),
112
+ * type: "SecureString",
113
+ * description: "Third-party API key",
114
+ * tags: {
115
+ * Environment: "production",
116
+ * Secret: "true"
117
+ * }
118
+ * });
119
+ *
120
+ * @example
121
+ * // Create a parameter with custom KMS key
122
+ * const encryptedParam = await SSMParameter("encrypted-config", {
123
+ * name: "/myapp/config/encrypted",
124
+ * value: alchemy.secret("sensitive-configuration-data"),
125
+ * type: "SecureString",
126
+ * keyId: "alias/myapp-kms-key",
127
+ * description: "Encrypted configuration data",
128
+ * tier: "Advanced",
129
+ * tags: {
130
+ * Environment: "production",
131
+ * Encrypted: "true"
132
+ * }
133
+ * });
134
+ *
135
+ * @example
136
+ * // Create a string list parameter
137
+ * const listParam = await SSMParameter("server-list", {
138
+ * name: "/myapp/config/servers",
139
+ * value: ["server1.example.com", "server2.example.com", "server3.example.com"],
140
+ * type: "StringList",
141
+ * description: "List of application servers",
142
+ * tags: {
143
+ * Environment: "production",
144
+ * Type: "configuration"
145
+ * }
146
+ * });
147
+ */
148
+ export declare const SSMParameter: (((this: any, id: string, props?: {}) => never) & (new (_: never) => never)) | ((this: Context<SSMParameter>, _id: string, props: SSMParameterProps) => Promise<SSMParameter>);
149
+ export {};
150
+ //# sourceMappingURL=ssm-parameter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssm-parameter.d.ts","sourceRoot":"","sources":["../../src/aws/ssm-parameter.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,KAAK,MAAM,EAAY,MAAM,cAAc,CAAC;AAGrD;;GAEG;AACH,UAAU,qBAAqB;IAC7B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IAE/B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,eAAe,CAAC;IAEpC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB,CAAC,qBAAqB,GAAG;IACvB;;OAEG;IACH,IAAI,EAAE,cAAc,CAAC;IACrB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf,CAAC,GACF,CAAC,qBAAqB,GAAG;IACvB;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC;IACnB;;OAEG;IACH,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC,GACF,CAAC,qBAAqB,GAAG;IACvB;;;OAGG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf,CAAC,CAAC;AAEP;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC,gBAAgB,CAAC,GAAG;IACtD;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,gBAAgB,EAAE,IAAI,CAAC;CACxB,GAAG,iBAAiB,CAAC;AAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,eAAO,MAAM,YAAY,yFAGf,OAAO,CAAC,YAAY,CAAC,OACtB,MAAM,SACJ,iBAAiB,KACvB,OAAO,CAAC,YAAY,CAAC,CAuIzB,CAAC"}
@@ -0,0 +1,184 @@
1
+ import { AddTagsToResourceCommand, DeleteParameterCommand, GetParameterCommand, ParameterAlreadyExists, ParameterNotFound, PutParameterCommand, SSMClient, } from "@aws-sdk/client-ssm";
2
+ import { Resource } from "../resource.js";
3
+ import { isSecret } from "../secret.js";
4
+ import { ignore } from "../util/ignore.js";
5
+ /**
6
+ * AWS SSM Parameter Store Parameter Resource
7
+ *
8
+ * Creates and manages SSM parameters with support for different parameter types,
9
+ * encryption, and automatic tag management. Uses discriminated union types to
10
+ * ensure SecureString parameters always use Secret values and StringList uses arrays.
11
+ *
12
+ * @example
13
+ * // Create a basic string parameter
14
+ * const basicParam = await SSMParameter("app-config", {
15
+ * name: "/myapp/config/database-url",
16
+ * value: "postgresql://localhost:5432/myapp",
17
+ * description: "Database connection URL",
18
+ * tags: {
19
+ * Environment: "production",
20
+ * Application: "myapp"
21
+ * }
22
+ * });
23
+ *
24
+ * @example
25
+ * // Create a secure string parameter for secrets
26
+ * const secretParam = await SSMParameter("app-secret", {
27
+ * name: "/myapp/secrets/api-key",
28
+ * value: alchemy.secret("super-secret-api-key"),
29
+ * type: "SecureString",
30
+ * description: "Third-party API key",
31
+ * tags: {
32
+ * Environment: "production",
33
+ * Secret: "true"
34
+ * }
35
+ * });
36
+ *
37
+ * @example
38
+ * // Create a parameter with custom KMS key
39
+ * const encryptedParam = await SSMParameter("encrypted-config", {
40
+ * name: "/myapp/config/encrypted",
41
+ * value: alchemy.secret("sensitive-configuration-data"),
42
+ * type: "SecureString",
43
+ * keyId: "alias/myapp-kms-key",
44
+ * description: "Encrypted configuration data",
45
+ * tier: "Advanced",
46
+ * tags: {
47
+ * Environment: "production",
48
+ * Encrypted: "true"
49
+ * }
50
+ * });
51
+ *
52
+ * @example
53
+ * // Create a string list parameter
54
+ * const listParam = await SSMParameter("server-list", {
55
+ * name: "/myapp/config/servers",
56
+ * value: ["server1.example.com", "server2.example.com", "server3.example.com"],
57
+ * type: "StringList",
58
+ * description: "List of application servers",
59
+ * tags: {
60
+ * Environment: "production",
61
+ * Type: "configuration"
62
+ * }
63
+ * });
64
+ */
65
+ export const SSMParameter = Resource("ssm::Parameter", async function (_id, props) {
66
+ const client = new SSMClient({});
67
+ if (this.phase === "delete") {
68
+ try {
69
+ await ignore(ParameterNotFound.name, () => client.send(new DeleteParameterCommand({
70
+ Name: props.name,
71
+ })));
72
+ }
73
+ catch (error) {
74
+ if (!(error instanceof ParameterNotFound)) {
75
+ throw error;
76
+ }
77
+ }
78
+ return this.destroy();
79
+ }
80
+ const parameterType = props.type || "String";
81
+ // Extract the actual value and handle type-specific conversions
82
+ let parameterValue;
83
+ if (isSecret(props.value)) {
84
+ parameterValue = props.value.unencrypted;
85
+ }
86
+ else if (Array.isArray(props.value)) {
87
+ // Convert string array to comma-separated string for StringList
88
+ parameterValue = props.value.join(",");
89
+ }
90
+ else {
91
+ parameterValue = props.value;
92
+ }
93
+ try {
94
+ // First, try to create the parameter without overwrite to include tags
95
+ try {
96
+ await client.send(new PutParameterCommand({
97
+ Name: props.name,
98
+ Value: parameterValue,
99
+ Type: parameterType,
100
+ Description: props.description,
101
+ KeyId: props.keyId,
102
+ Tier: props.tier,
103
+ Policies: props.policies,
104
+ DataType: props.dataType,
105
+ Overwrite: false, // Don't overwrite, include tags
106
+ Tags: [
107
+ ...Object.entries(props.tags || {}).map(([Key, Value]) => ({
108
+ Key,
109
+ Value,
110
+ })),
111
+ {
112
+ Key: "alchemy_stage",
113
+ Value: this.stage,
114
+ },
115
+ {
116
+ Key: "alchemy_resource",
117
+ Value: this.id,
118
+ },
119
+ ],
120
+ }));
121
+ }
122
+ catch (error) {
123
+ // If parameter already exists, update it with overwrite (no tags in this call)
124
+ if (error instanceof ParameterAlreadyExists) {
125
+ await client.send(new PutParameterCommand({
126
+ Name: props.name,
127
+ Value: parameterValue,
128
+ Type: parameterType,
129
+ Description: props.description,
130
+ KeyId: props.keyId,
131
+ Tier: props.tier,
132
+ Policies: props.policies,
133
+ DataType: props.dataType,
134
+ Overwrite: true, // Overwrite existing, no tags
135
+ }));
136
+ // Update tags separately for existing parameters
137
+ const tags = [
138
+ ...Object.entries(props.tags || {}).map(([Key, Value]) => ({
139
+ Key,
140
+ Value,
141
+ })),
142
+ {
143
+ Key: "alchemy_stage",
144
+ Value: this.stage,
145
+ },
146
+ {
147
+ Key: "alchemy_resource",
148
+ Value: this.id,
149
+ },
150
+ ];
151
+ await client.send(new AddTagsToResourceCommand({
152
+ ResourceType: "Parameter",
153
+ ResourceId: props.name,
154
+ Tags: tags,
155
+ }));
156
+ }
157
+ else {
158
+ throw error;
159
+ }
160
+ }
161
+ // Get the updated parameter
162
+ const parameter = await client.send(new GetParameterCommand({
163
+ Name: props.name,
164
+ WithDecryption: true,
165
+ }));
166
+ if (!parameter?.Parameter) {
167
+ throw new Error(`Failed to create or update parameter ${props.name}`);
168
+ }
169
+ return this({
170
+ ...props,
171
+ arn: parameter.Parameter.ARN,
172
+ version: parameter.Parameter.Version,
173
+ lastModifiedDate: parameter.Parameter.LastModifiedDate,
174
+ name: parameter.Parameter.Name ?? props.name,
175
+ value: props.value,
176
+ type: parameter.Parameter.Type ?? parameterType,
177
+ });
178
+ }
179
+ catch (error) {
180
+ console.error(`Error creating/updating parameter ${props.name}:`, error);
181
+ throw error;
182
+ }
183
+ });
184
+ //# sourceMappingURL=ssm-parameter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssm-parameter.js","sourceRoot":"","sources":["../../src/aws/ssm-parameter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/aws/table.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,YAAY,EAAE;QACZ;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QACb;;;WAGG;QACH,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;KACvB,CAAC;IAEF;;;OAGG;IACH,OAAO,CAAC,EAAE;QACR;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QACb;;;WAGG;QACH,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;KACvB,CAAC;IAEF;;;;OAIG;IACH,WAAW,CAAC,EAAE,aAAa,GAAG,iBAAiB,CAAC;IAEhD;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,KAAM,SAAQ,QAAQ,CAAC,eAAe,CAAC,EAAE,UAAU;IAClE;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,eAAO,MAAM,KAAK,yFAGR,OAAO,CAAC,KAAK,CAAC,OACf,MAAM,SACJ,UAAU,KAChB,OAAO,CAAC,KAAK,CAAC,CAkLlB,CAAC"}
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/aws/table.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,YAAY,EAAE;QACZ;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QACb;;;WAGG;QACH,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;KACvB,CAAC;IAEF;;;OAGG;IACH,OAAO,CAAC,EAAE;QACR;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QACb;;;WAGG;QACH,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;KACvB,CAAC;IAEF;;;;OAIG;IACH,WAAW,CAAC,EAAE,aAAa,GAAG,iBAAiB,CAAC;IAEhD;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,KAAM,SAAQ,QAAQ,CAAC,eAAe,CAAC,EAAE,UAAU;IAClE;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,eAAO,MAAM,KAAK,yFAGR,OAAO,CAAC,KAAK,CAAC,OACf,MAAM,SACJ,UAAU,KAChB,OAAO,CAAC,KAAK,CAAC,CA2KlB,CAAC"}
package/lib/aws/table.js CHANGED
@@ -1,7 +1,7 @@
1
- import { CreateTableCommand, DeleteTableCommand, DescribeTableCommand, DynamoDBClient, InternalServerError, ResourceInUseException, ResourceNotFoundException, } from "@aws-sdk/client-dynamodb";
1
+ import { CreateTableCommand, DeleteTableCommand, DescribeTableCommand, DynamoDBClient, ResourceNotFoundException, } from "@aws-sdk/client-dynamodb";
2
2
  import { Resource } from "../resource.js";
3
3
  import { ignore } from "../util/ignore.js";
4
- import { withExponentialBackoff } from "../util/retry.js";
4
+ import { retry } from "./retry.js";
5
5
  /**
6
6
  * AWS DynamoDB Table Resource
7
7
  *
@@ -41,12 +41,11 @@ import { withExponentialBackoff } from "../util/retry.js";
41
41
  export const Table = Resource("dynamo::Table", async function (_id, props) {
42
42
  const client = new DynamoDBClient({});
43
43
  if (this.phase === "delete") {
44
- await withExponentialBackoff(async () => {
44
+ await retry(async () => {
45
45
  await ignore(ResourceNotFoundException.name, () => client.send(new DeleteTableCommand({
46
46
  TableName: props.tableName,
47
47
  })));
48
- }, isRetryableError, 10, // Max attempts
49
- 200);
48
+ });
50
49
  // Wait for table to be deleted
51
50
  let tableDeleted = false;
52
51
  let retryCount = 0;
@@ -99,8 +98,8 @@ export const Table = Resource("dynamo::Table", async function (_id, props) {
99
98
  KeyType: "RANGE",
100
99
  });
101
100
  }
102
- // Attempt to create the table with exponential backoff for ResourceInUseException
103
- await withExponentialBackoff(async () => {
101
+ // Attempt to create the table with retry for retryable errors
102
+ await retry(async () => {
104
103
  try {
105
104
  // First check if table already exists
106
105
  const describeResponse = await client.send(new DescribeTableCommand({
@@ -141,8 +140,7 @@ export const Table = Resource("dynamo::Table", async function (_id, props) {
141
140
  throw error;
142
141
  }
143
142
  }
144
- }, isRetryableError, 10, // Max attempts
145
- 200);
143
+ });
146
144
  // Wait for table to be active with timeout
147
145
  let tableActive = false;
148
146
  let tableDescription;
@@ -150,9 +148,9 @@ export const Table = Resource("dynamo::Table", async function (_id, props) {
150
148
  const maxRetries = 60; // Wait up to 60 seconds
151
149
  while (!tableActive && retryCount < maxRetries) {
152
150
  try {
153
- const response = await client.send(new DescribeTableCommand({
151
+ const response = await retry(async () => await client.send(new DescribeTableCommand({
154
152
  TableName: props.tableName,
155
- }));
153
+ })));
156
154
  tableActive = response.Table?.TableStatus === "ACTIVE";
157
155
  if (tableActive) {
158
156
  tableDescription = response.Table;
@@ -182,20 +180,4 @@ export const Table = Resource("dynamo::Table", async function (_id, props) {
182
180
  tableId: tableDescription.TableId,
183
181
  });
184
182
  });
185
- const retryableErrors = [
186
- "ResourceInUseException",
187
- "ResourceNotFoundException",
188
- "InternalServerError",
189
- "ThrottlingException",
190
- "ProvisionedThroughputExceededException",
191
- "LimitExceededException",
192
- "RequestLimitExceeded",
193
- ];
194
- function isRetryableError(error) {
195
- return (error instanceof ResourceInUseException ||
196
- error instanceof InternalServerError ||
197
- retryableErrors.includes(error?.name) ||
198
- retryableErrors.includes(error?.code) ||
199
- error?.$metadata?.httpStatusCode === 500);
200
- }
201
183
  //# sourceMappingURL=table.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/aws/table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/aws/table.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { type CloudflareApiOptions } from "./api.ts";
4
4
  */
5
5
  export interface GetCloudflareAccountIdOptions extends CloudflareApiOptions {
6
6
  }
7
+ export type AccountId = string;
7
8
  /**
8
9
  * Retrieves a Cloudflare Account ID for use with other Cloudflare resources.
9
10
  *
@@ -1 +1 @@
1
- {"version":3,"file":"account-id.d.ts","sourceRoot":"","sources":["../../src/cloudflare/account-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,6BAA8B,SAAQ,oBAAoB;CAAG;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAsB,SAAS,CAC7B,OAAO,GAAE,6BAAkC,GAC1C,OAAO,CAAC,MAAM,CAAC,CAKjB"}
1
+ {"version":3,"file":"account-id.d.ts","sourceRoot":"","sources":["../../src/cloudflare/account-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,6BAA8B,SAAQ,oBAAoB;CAAG;AAE9E,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAsB,SAAS,CAC7B,OAAO,GAAE,6BAAkC,GAC1C,OAAO,CAAC,MAAM,CAAC,CAKjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"account-id.js","sourceRoot":"","sources":["../../src/cloudflare/account-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAA6B,MAAM,UAAU,CAAC;AAO1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,UAAyC,EAAE;IAE3C,gEAAgE;IAChE,MAAM,GAAG,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAE/C,OAAO,GAAG,CAAC,SAAS,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"account-id.js","sourceRoot":"","sources":["../../src/cloudflare/account-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAA6B,MAAM,UAAU,CAAC;AAS1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,UAAyC,EAAE;IAE3C,gEAAgE;IAChE,MAAM,GAAG,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAE/C,OAAO,GAAG,CAAC,SAAS,CAAC;AACvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/cloudflare/api.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,WAAW,CAAC;AAGnB;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,GAAE,OAAO,CAAC,oBAAoB,CAAM,GAC1C,OAAO,CAAC,aAAa,CAAC,CAsCxB;AAED;;GAEG;AACH,qBAAa,aAAa;IACxB,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,SAAgB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,SAAgB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,SAAgB,WAAW,EAAE,qBAAqB,CAAC;IAEnD;;;;;;OAMG;gBAED,OAAO,EAAE,oBAAoB,GAAG;QAC9B,SAAS,EAAE,MAAM,CAAC;KACnB;IAuBH;;;;;;OAMG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IA4CpE;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIlE;;OAEG;IACG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAGnE;;OAEG;IACG,IAAI,CACR,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,GAAG,EACT,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC,QAAQ,CAAC;IAUpB;;OAEG;IACG,GAAG,CACP,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,GAAG,EACT,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC,QAAQ,CAAC;IAKpB;;OAEG;IACG,KAAK,CACT,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,GAAG,EACT,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC,QAAQ,CAAC;IAQpB;;OAEG;IACG,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;CAGtE"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/cloudflare/api.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAG3C,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,WAAW,CAAC;AAGnB;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,GAAE,OAAO,CAAC,oBAAoB,CAAM,GAC1C,OAAO,CAAC,aAAa,CAAC,CAsCxB;AAED;;GAEG;AACH,qBAAa,aAAa;IACxB,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,SAAgB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,SAAgB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,SAAgB,WAAW,EAAE,qBAAqB,CAAC;IAEnD;;;;;;OAMG;gBAED,OAAO,EAAE,oBAAoB,GAAG;QAC9B,SAAS,EAAE,MAAM,CAAC;KACnB;IAuBH;;;;;;OAMG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IA0DpE;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIlE;;OAEG;IACG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAGnE;;OAEG;IACG,IAAI,CACR,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,GAAG,EACT,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC,QAAQ,CAAC;IAUpB;;OAEG;IACG,GAAG,CACP,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,GAAG,EACT,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC,QAAQ,CAAC;IAKpB;;OAEG;IACG,KAAK,CACT,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,GAAG,EACT,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC,QAAQ,CAAC;IAQpB;;OAEG;IACG,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;CAGtE"}
@@ -1,5 +1,6 @@
1
1
  import { alchemy } from "../alchemy.js";
2
2
  import { withExponentialBackoff } from "../util/retry.js";
3
+ import { safeFetch } from "../util/safe-fetch.js";
3
4
  import { getCloudflareAuthHeaders, } from "./auth.js";
4
5
  import { getCloudflareAccounts, getUserEmailFromApiKey } from "./user.js";
5
6
  /**
@@ -110,19 +111,31 @@ export class CloudflareApi {
110
111
  if (init.body instanceof FormData) {
111
112
  delete headers["Content-Type"];
112
113
  }
114
+ let forbidden = false;
113
115
  // Use withExponentialBackoff for automatic retry on network errors
114
116
  return withExponentialBackoff(async () => {
115
- const response = await fetch(`${this.baseUrl}${path}`, {
117
+ const response = await safeFetch(`${this.baseUrl}${path}`, {
116
118
  ...init,
117
119
  headers,
118
120
  });
119
121
  if (response.status.toString().startsWith("5")) {
120
122
  throw new InternalError("5xx error");
121
123
  }
124
+ if (response.status === 403 && !forbidden) {
125
+ // we occasionally get 403s from Cloudflare tha tare actually transient
126
+ // so, we will retry this at MOST once
127
+ forbidden = true;
128
+ throw new ForbiddenError();
129
+ }
130
+ if (response.status === 429) {
131
+ throw new TooManyRequestsError();
132
+ }
122
133
  return response;
123
134
  },
124
135
  // transient errors should be retried aggressively
125
- (error) => error instanceof InternalError, 5, // Maximum 5 attempts (1 initial + 4 retries)
136
+ (error) => error instanceof InternalError ||
137
+ error instanceof TooManyRequestsError ||
138
+ error instanceof ForbiddenError, 10, // Maximum 10 attempts (1 initial + 9 retries)
126
139
  1000);
127
140
  }
128
141
  /**
@@ -174,4 +187,11 @@ export class CloudflareApi {
174
187
  }
175
188
  class InternalError extends Error {
176
189
  }
190
+ class TooManyRequestsError extends Error {
191
+ constructor() {
192
+ super(`Cloudflare Rate Limit Exceeded at ${new Date().toISOString()}`);
193
+ }
194
+ }
195
+ class ForbiddenError extends Error {
196
+ }
177
197
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/cloudflare/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/cloudflare/api.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ export * from "./account-api-token.ts";
2
2
  export * from "./account-id.ts";
3
3
  export * from "./ai-gateway.ts";
4
4
  export * from "./ai.ts";
5
+ export * from "./analytics-engine.ts";
5
6
  export * from "./api-error.ts";
6
7
  export * from "./api.ts";
7
8
  export * from "./assets.ts";
@@ -32,11 +33,11 @@ export * from "./route.ts";
32
33
  export * from "./tanstack-start.ts";
33
34
  export * from "./vectorize-index.ts";
34
35
  export * from "./vectorize-metadata-index.ts";
36
+ export * from "./version-metadata.ts";
35
37
  export * from "./vite.ts";
36
38
  export * from "./website.ts";
37
39
  export * from "./worker.ts";
38
40
  export { Workflow } from "./workflow.ts";
39
- export * from "./version-metadata.ts";
40
41
  export * from "./wrangler.json.ts";
41
42
  export * from "./zone.ts";
42
43
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cloudflare/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uCAAuC,CAAC;AACtD,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cloudflare/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uCAAuC,CAAC;AACtD,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC"}
@@ -2,6 +2,7 @@ export * from "./account-api-token.js";
2
2
  export * from "./account-id.js";
3
3
  export * from "./ai-gateway.js";
4
4
  export * from "./ai.js";
5
+ export * from "./analytics-engine.js";
5
6
  export * from "./api-error.js";
6
7
  export * from "./api.js";
7
8
  export * from "./assets.js";
@@ -32,11 +33,11 @@ export * from "./route.js";
32
33
  export * from "./tanstack-start.js";
33
34
  export * from "./vectorize-index.js";
34
35
  export * from "./vectorize-metadata-index.js";
36
+ export * from "./version-metadata.js";
35
37
  export * from "./vite.js";
36
38
  export * from "./website.js";
37
39
  export * from "./worker.js";
38
40
  export { Workflow } from "./workflow.js";
39
- export * from "./version-metadata.js";
40
41
  export * from "./wrangler.json.js";
41
42
  export * from "./zone.js";
42
43
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cloudflare/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uCAAuC,CAAC;AACtD,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cloudflare/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uCAAuC,CAAC;AACtD,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/cloudflare/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/cloudflare/queue.ts"],"names":[],"mappings":"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"}