alchemy 0.1.15 → 0.1.16

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 (217) hide show
  1. package/lib/apply.js +1 -1
  2. package/lib/apply.js.map +1 -1
  3. package/lib/destroy.js +9 -3
  4. package/lib/destroy.js.map +1 -1
  5. package/package.json +1 -1
  6. package/src/apply.ts +1 -1
  7. package/src/destroy.ts +15 -10
  8. package/lib/$.d.ts +0 -12
  9. package/lib/$.d.ts.map +0 -1
  10. package/lib/$.js +0 -42
  11. package/lib/$.js.map +0 -1
  12. package/lib/alchemize.d.ts +0 -43
  13. package/lib/alchemize.d.ts.map +0 -1
  14. package/lib/alchemize.js +0 -112
  15. package/lib/alchemize.js.map +0 -1
  16. package/lib/apply.d.ts +0 -23
  17. package/lib/aws/account-id.d.ts +0 -5
  18. package/lib/aws/account-id.d.ts.map +0 -1
  19. package/lib/aws/account-id.js +0 -10
  20. package/lib/aws/account-id.js.map +0 -1
  21. package/lib/aws/bucket.d.ts +0 -21
  22. package/lib/aws/bucket.d.ts.map +0 -1
  23. package/lib/aws/bucket.js +0 -114
  24. package/lib/aws/bucket.js.map +0 -1
  25. package/lib/aws/function.d.ts +0 -53
  26. package/lib/aws/function.d.ts.map +0 -1
  27. package/lib/aws/function.js +0 -195
  28. package/lib/aws/function.js.map +0 -1
  29. package/lib/aws/index.d.ts +0 -9
  30. package/lib/aws/index.d.ts.map +0 -1
  31. package/lib/aws/index.js +0 -9
  32. package/lib/aws/index.js.map +0 -1
  33. package/lib/aws/oidc/github-oidc-provider.d.ts +0 -11
  34. package/lib/aws/oidc/github-oidc-provider.d.ts.map +0 -1
  35. package/lib/aws/oidc/github-oidc-provider.js +0 -22
  36. package/lib/aws/oidc/github-oidc-provider.js.map +0 -1
  37. package/lib/aws/oidc/index.d.ts +0 -3
  38. package/lib/aws/oidc/index.d.ts.map +0 -1
  39. package/lib/aws/oidc/index.js +0 -3
  40. package/lib/aws/oidc/index.js.map +0 -1
  41. package/lib/aws/oidc/oidc-provider.d.ts +0 -60
  42. package/lib/aws/oidc/oidc-provider.d.ts.map +0 -1
  43. package/lib/aws/oidc/oidc-provider.js +0 -140
  44. package/lib/aws/oidc/oidc-provider.js.map +0 -1
  45. package/lib/aws/policy.d.ts +0 -46
  46. package/lib/aws/policy.d.ts.map +0 -1
  47. package/lib/aws/policy.js +0 -139
  48. package/lib/aws/policy.js.map +0 -1
  49. package/lib/aws/queue.d.ts +0 -62
  50. package/lib/aws/queue.d.ts.map +0 -1
  51. package/lib/aws/queue.js +0 -167
  52. package/lib/aws/queue.js.map +0 -1
  53. package/lib/aws/role.d.ts +0 -27
  54. package/lib/aws/role.d.ts.map +0 -1
  55. package/lib/aws/role.js +0 -197
  56. package/lib/aws/role.js.map +0 -1
  57. package/lib/aws/ses.d.ts +0 -75
  58. package/lib/aws/ses.d.ts.map +0 -1
  59. package/lib/aws/ses.js +0 -189
  60. package/lib/aws/ses.js.map +0 -1
  61. package/lib/aws/table.d.ts +0 -26
  62. package/lib/aws/table.d.ts.map +0 -1
  63. package/lib/aws/table.js +0 -154
  64. package/lib/aws/table.js.map +0 -1
  65. package/lib/cloudflare/api.d.ts +0 -88
  66. package/lib/cloudflare/api.d.ts.map +0 -1
  67. package/lib/cloudflare/api.js +0 -184
  68. package/lib/cloudflare/api.js.map +0 -1
  69. package/lib/cloudflare/asset-manifest.d.ts +0 -15
  70. package/lib/cloudflare/asset-manifest.d.ts.map +0 -1
  71. package/lib/cloudflare/asset-manifest.js +0 -2
  72. package/lib/cloudflare/asset-manifest.js.map +0 -1
  73. package/lib/cloudflare/auth.d.ts +0 -52
  74. package/lib/cloudflare/auth.d.ts.map +0 -1
  75. package/lib/cloudflare/auth.js +0 -114
  76. package/lib/cloudflare/auth.js.map +0 -1
  77. package/lib/cloudflare/bindings.d.ts +0 -259
  78. package/lib/cloudflare/bindings.d.ts.map +0 -1
  79. package/lib/cloudflare/bindings.js +0 -2
  80. package/lib/cloudflare/bindings.js.map +0 -1
  81. package/lib/cloudflare/durable-object-namespace.d.ts +0 -20
  82. package/lib/cloudflare/durable-object-namespace.d.ts.map +0 -1
  83. package/lib/cloudflare/durable-object-namespace.js +0 -21
  84. package/lib/cloudflare/durable-object-namespace.js.map +0 -1
  85. package/lib/cloudflare/generate-asset-manifest.d.ts +0 -3
  86. package/lib/cloudflare/generate-asset-manifest.d.ts.map +0 -1
  87. package/lib/cloudflare/generate-asset-manifest.js +0 -69
  88. package/lib/cloudflare/generate-asset-manifest.js.map +0 -1
  89. package/lib/cloudflare/index.d.ts +0 -7
  90. package/lib/cloudflare/index.d.ts.map +0 -1
  91. package/lib/cloudflare/index.js +0 -7
  92. package/lib/cloudflare/index.js.map +0 -1
  93. package/lib/cloudflare/kv-namespace.d.ts +0 -64
  94. package/lib/cloudflare/kv-namespace.d.ts.map +0 -1
  95. package/lib/cloudflare/kv-namespace.js +0 -114
  96. package/lib/cloudflare/kv-namespace.js.map +0 -1
  97. package/lib/cloudflare/state.d.ts +0 -83
  98. package/lib/cloudflare/state.d.ts.map +0 -1
  99. package/lib/cloudflare/state.js +0 -109
  100. package/lib/cloudflare/state.js.map +0 -1
  101. package/lib/cloudflare/static-site-router.d.ts +0 -19
  102. package/lib/cloudflare/static-site-router.d.ts.map +0 -1
  103. package/lib/cloudflare/static-site-router.js +0 -110
  104. package/lib/cloudflare/static-site-router.js.map +0 -1
  105. package/lib/cloudflare/static-site.d.ts +0 -166
  106. package/lib/cloudflare/static-site.d.ts.map +0 -1
  107. package/lib/cloudflare/static-site.js +0 -150
  108. package/lib/cloudflare/static-site.js.map +0 -1
  109. package/lib/cloudflare/types.d.ts +0 -52
  110. package/lib/cloudflare/types.d.ts.map +0 -1
  111. package/lib/cloudflare/types.js +0 -21
  112. package/lib/cloudflare/types.js.map +0 -1
  113. package/lib/cloudflare/upload-asset-manifest.d.ts +0 -12
  114. package/lib/cloudflare/upload-asset-manifest.d.ts.map +0 -1
  115. package/lib/cloudflare/upload-asset-manifest.js +0 -55
  116. package/lib/cloudflare/upload-asset-manifest.js.map +0 -1
  117. package/lib/cloudflare/worker-metadata.d.ts +0 -130
  118. package/lib/cloudflare/worker-metadata.d.ts.map +0 -1
  119. package/lib/cloudflare/worker-metadata.js +0 -2
  120. package/lib/cloudflare/worker-metadata.js.map +0 -1
  121. package/lib/cloudflare/worker-migration.d.ts +0 -110
  122. package/lib/cloudflare/worker-migration.d.ts.map +0 -1
  123. package/lib/cloudflare/worker-migration.js +0 -11
  124. package/lib/cloudflare/worker-migration.js.map +0 -1
  125. package/lib/cloudflare/worker.d.ts +0 -108
  126. package/lib/cloudflare/worker.d.ts.map +0 -1
  127. package/lib/cloudflare/worker.js +0 -399
  128. package/lib/cloudflare/worker.js.map +0 -1
  129. package/lib/destroy.d.ts +0 -19
  130. package/lib/error.d.ts +0 -2
  131. package/lib/error.d.ts.map +0 -1
  132. package/lib/error.js +0 -13
  133. package/lib/error.js.map +0 -1
  134. package/lib/esbuild.d.ts +0 -152
  135. package/lib/esbuild.d.ts.map +0 -1
  136. package/lib/esbuild.js +0 -67
  137. package/lib/esbuild.js.map +0 -1
  138. package/lib/fs.d.ts +0 -12
  139. package/lib/fs.d.ts.map +0 -1
  140. package/lib/fs.js +0 -41
  141. package/lib/fs.js.map +0 -1
  142. package/lib/github/client.d.ts +0 -34
  143. package/lib/github/client.d.ts.map +0 -1
  144. package/lib/github/client.js +0 -91
  145. package/lib/github/client.js.map +0 -1
  146. package/lib/github/index.d.ts +0 -2
  147. package/lib/github/index.d.ts.map +0 -1
  148. package/lib/github/index.js +0 -2
  149. package/lib/github/index.js.map +0 -1
  150. package/lib/github/secret.d.ts +0 -46
  151. package/lib/github/secret.d.ts.map +0 -1
  152. package/lib/github/secret.js +0 -103
  153. package/lib/github/secret.js.map +0 -1
  154. package/lib/global.d.ts +0 -16
  155. package/lib/global.d.ts.map +0 -1
  156. package/lib/global.js +0 -42
  157. package/lib/global.js.map +0 -1
  158. package/lib/index.d.ts +0 -10
  159. package/lib/index.d.ts.map +0 -1
  160. package/lib/index.js +0 -9
  161. package/lib/index.js.map +0 -1
  162. package/lib/input.d.ts +0 -6
  163. package/lib/input.d.ts.map +0 -1
  164. package/lib/input.js +0 -2
  165. package/lib/input.js.map +0 -1
  166. package/lib/main.d.ts +0 -3
  167. package/lib/main.d.ts.map +0 -1
  168. package/lib/main.js +0 -32
  169. package/lib/main.js.map +0 -1
  170. package/lib/output.d.ts +0 -24
  171. package/lib/output.d.ts.map +0 -1
  172. package/lib/output.js +0 -23
  173. package/lib/output.js.map +0 -1
  174. package/lib/print.d.ts +0 -7
  175. package/lib/print.d.ts.map +0 -1
  176. package/lib/print.js +0 -10
  177. package/lib/print.js.map +0 -1
  178. package/lib/resource.d.ts +0 -71
  179. package/lib/resource.d.ts.map +0 -1
  180. package/lib/resource.js +0 -276
  181. package/lib/resource.js.map +0 -1
  182. package/lib/scope.d.ts +0 -18
  183. package/lib/scope.d.ts.map +0 -1
  184. package/lib/scope.js +0 -30
  185. package/lib/scope.js.map +0 -1
  186. package/lib/slug.d.ts +0 -2
  187. package/lib/slug.d.ts.map +0 -1
  188. package/lib/slug.js +0 -4
  189. package/lib/slug.js.map +0 -1
  190. package/lib/state.d.ts +0 -40
  191. package/lib/state.d.ts.map +0 -1
  192. package/lib/state.js +0 -73
  193. package/lib/state.js.map +0 -1
  194. package/lib/stripe/index.d.ts +0 -4
  195. package/lib/stripe/index.d.ts.map +0 -1
  196. package/lib/stripe/index.js +0 -4
  197. package/lib/stripe/index.js.map +0 -1
  198. package/lib/stripe/price.d.ts +0 -109
  199. package/lib/stripe/price.d.ts.map +0 -1
  200. package/lib/stripe/price.js +0 -112
  201. package/lib/stripe/price.js.map +0 -1
  202. package/lib/stripe/product.d.ts +0 -86
  203. package/lib/stripe/product.d.ts.map +0 -1
  204. package/lib/stripe/product.js +0 -90
  205. package/lib/stripe/product.js.map +0 -1
  206. package/lib/stripe/webhook.d.ts +0 -73
  207. package/lib/stripe/webhook.d.ts.map +0 -1
  208. package/lib/stripe/webhook.js +0 -94
  209. package/lib/stripe/webhook.js.map +0 -1
  210. package/lib/utils/content-type.d.ts +0 -8
  211. package/lib/utils/content-type.d.ts.map +0 -1
  212. package/lib/utils/content-type.js +0 -41
  213. package/lib/utils/content-type.js.map +0 -1
  214. package/lib/utils/retry.d.ts +0 -13
  215. package/lib/utils/retry.d.ts.map +0 -1
  216. package/lib/utils/retry.js +0 -32
  217. package/lib/utils/retry.js.map +0 -1
package/lib/aws/ses.d.ts DELETED
@@ -1,75 +0,0 @@
1
- import { type DeliveryOptions, type ReputationOptions, type SendingOptions, type SuppressionOptions, type TrackingOptions } from "@aws-sdk/client-sesv2";
2
- /**
3
- * Properties for configuring AWS SES resources
4
- */
5
- export interface SESProps {
6
- /**
7
- * Name of the configuration set
8
- */
9
- configurationSetName?: string;
10
- /**
11
- * Email identity to verify (email address or domain)
12
- */
13
- emailIdentity?: string;
14
- /**
15
- * Whether to enable DKIM signing for the email identity
16
- */
17
- enableDkim?: boolean;
18
- /**
19
- * Sending options for the configuration set
20
- */
21
- sendingOptions?: SendingOptions;
22
- /**
23
- * Reputation options for the configuration set
24
- */
25
- reputationOptions?: ReputationOptions;
26
- /**
27
- * Tracking options for the configuration set
28
- */
29
- trackingOptions?: TrackingOptions;
30
- /**
31
- * Suppression options for the configuration set
32
- */
33
- suppressionOptions?: SuppressionOptions;
34
- /**
35
- * Delivery options for the configuration set
36
- */
37
- deliveryOptions?: DeliveryOptions;
38
- /**
39
- * Tags to apply to the SES resources
40
- */
41
- tags?: Record<string, string>;
42
- }
43
- /**
44
- * Output returned after SES resource creation/update
45
- */
46
- export interface SESOutput extends SESProps {
47
- /**
48
- * Resource ID
49
- */
50
- id: string;
51
- /**
52
- * ARN of the configuration set if created
53
- */
54
- configurationSetArn?: string;
55
- /**
56
- * Email identity verification status if an identity was created
57
- */
58
- emailIdentityVerificationStatus?: string;
59
- /**
60
- * DKIM verification status if DKIM was enabled
61
- */
62
- dkimVerificationStatus?: string;
63
- /**
64
- * Email identity ARN if an identity was created
65
- */
66
- emailIdentityArn?: string;
67
- }
68
- declare const SES_base: import("../resource").Provider<"aws::SES", [props: SESProps], SESOutput>;
69
- /**
70
- * AWS SES resource for creating and configuring Simple Email Service
71
- */
72
- export declare class SES extends SES_base {
73
- }
74
- export {};
75
- //# sourceMappingURL=ses.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ses.d.ts","sourceRoot":"","sources":["../../src/aws/ses.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,eAAe,EAUpB,KAAK,iBAAiB,EAEtB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAI/B;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAEhC;;OAEG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAEtC;;OAEG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC;;OAEG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAExC;;OAEG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,QAAQ;IACzC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,+BAA+B,CAAC,EAAE,MAAM,CAAC;IAEzC;;OAEG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;;AAED;;GAEG;AACH,qBAAa,GAAI,SAAQ,QA0OxB;CAAG"}
package/lib/aws/ses.js DELETED
@@ -1,189 +0,0 @@
1
- import { CreateConfigurationSetCommand, CreateEmailIdentityCommand, DeleteConfigurationSetCommand, DeleteEmailIdentityCommand, GetConfigurationSetCommand, GetEmailIdentityCommand, NotFoundException, PutConfigurationSetDeliveryOptionsCommand, PutConfigurationSetReputationOptionsCommand, PutConfigurationSetSendingOptionsCommand, PutConfigurationSetSuppressionOptionsCommand, PutConfigurationSetTrackingOptionsCommand, PutEmailIdentityDkimAttributesCommand, SESv2Client, } from "@aws-sdk/client-sesv2";
2
- import { ignore } from "../error";
3
- import { Resource } from "../resource";
4
- /**
5
- * AWS SES resource for creating and configuring Simple Email Service
6
- */
7
- export class SES extends Resource("aws::SES", async (ctx, props) => {
8
- // Create SES client
9
- const client = new SESv2Client({});
10
- // Resource ID is either based on the configuration set name or email identity
11
- const id = props.configurationSetName || props.emailIdentity || ctx.resourceID;
12
- // Handle deletion
13
- if (ctx.event === "delete") {
14
- const output = ctx.output;
15
- // Delete configuration set if it exists
16
- if (output?.configurationSetName) {
17
- await ignore(NotFoundException.name, () => client.send(new DeleteConfigurationSetCommand({
18
- ConfigurationSetName: output.configurationSetName,
19
- })));
20
- }
21
- // Delete email identity if it exists
22
- if (output?.emailIdentity) {
23
- await ignore(NotFoundException.name, () => client.send(new DeleteEmailIdentityCommand({
24
- EmailIdentity: output.emailIdentity,
25
- })));
26
- }
27
- // Return empty output for delete
28
- return;
29
- }
30
- // Created resources
31
- let configurationSetArn;
32
- let emailIdentityArn;
33
- let emailIdentityVerificationStatus;
34
- let dkimVerificationStatus;
35
- // Create or update configuration set if specified
36
- if (props.configurationSetName) {
37
- try {
38
- // Check if configuration set exists
39
- let configSetExists = false;
40
- try {
41
- await client.send(new GetConfigurationSetCommand({
42
- ConfigurationSetName: props.configurationSetName,
43
- }));
44
- configSetExists = true;
45
- }
46
- catch (error) {
47
- if (error instanceof NotFoundException) {
48
- configSetExists = false;
49
- }
50
- else {
51
- throw error;
52
- }
53
- }
54
- if (configSetExists) {
55
- // Update existing configuration set using appropriate update commands
56
- if (props.sendingOptions) {
57
- await client.send(new PutConfigurationSetSendingOptionsCommand({
58
- ConfigurationSetName: props.configurationSetName,
59
- SendingEnabled: props.sendingOptions.SendingEnabled,
60
- }));
61
- }
62
- if (props.reputationOptions) {
63
- await client.send(new PutConfigurationSetReputationOptionsCommand({
64
- ConfigurationSetName: props.configurationSetName,
65
- ReputationMetricsEnabled: props.reputationOptions.ReputationMetricsEnabled,
66
- }));
67
- }
68
- if (props.trackingOptions) {
69
- await client.send(new PutConfigurationSetTrackingOptionsCommand({
70
- ConfigurationSetName: props.configurationSetName,
71
- CustomRedirectDomain: props.trackingOptions.CustomRedirectDomain,
72
- }));
73
- }
74
- if (props.suppressionOptions) {
75
- await client.send(new PutConfigurationSetSuppressionOptionsCommand({
76
- ConfigurationSetName: props.configurationSetName,
77
- SuppressedReasons: props.suppressionOptions.SuppressedReasons,
78
- }));
79
- }
80
- if (props.deliveryOptions) {
81
- await client.send(new PutConfigurationSetDeliveryOptionsCommand({
82
- ConfigurationSetName: props.configurationSetName,
83
- TlsPolicy: props.deliveryOptions.TlsPolicy,
84
- SendingPoolName: props.deliveryOptions.SendingPoolName,
85
- }));
86
- }
87
- // In SESv2, the ARN isn't directly returned in the response
88
- configurationSetArn = `arn:aws:ses:${process.env.AWS_REGION}:${process.env.AWS_ACCOUNT_ID}:configuration-set/${props.configurationSetName}`;
89
- }
90
- else {
91
- // Create new configuration set
92
- await client.send(new CreateConfigurationSetCommand({
93
- ConfigurationSetName: props.configurationSetName,
94
- SendingOptions: props.sendingOptions,
95
- ReputationOptions: props.reputationOptions,
96
- TrackingOptions: props.trackingOptions,
97
- SuppressionOptions: props.suppressionOptions,
98
- DeliveryOptions: props.deliveryOptions,
99
- Tags: Object.entries(props.tags || {}).map(([Key, Value]) => ({
100
- Key,
101
- Value,
102
- })),
103
- }));
104
- // In SESv2, the ARN isn't directly returned in the response
105
- configurationSetArn = `arn:aws:ses:${process.env.AWS_REGION}:${process.env.AWS_ACCOUNT_ID}:configuration-set/${props.configurationSetName}`;
106
- }
107
- }
108
- catch (error) {
109
- throw error;
110
- }
111
- }
112
- // Create or verify email identity if specified
113
- if (props.emailIdentity) {
114
- try {
115
- // Check if identity exists
116
- let getIdentityResult;
117
- try {
118
- getIdentityResult = await client.send(new GetEmailIdentityCommand({
119
- EmailIdentity: props.emailIdentity,
120
- }));
121
- }
122
- catch (error) {
123
- if (error instanceof NotFoundException) {
124
- getIdentityResult = null;
125
- }
126
- else {
127
- throw error;
128
- }
129
- }
130
- if (!getIdentityResult) {
131
- // Create new email identity
132
- const createIdentityResult = await client.send(new CreateEmailIdentityCommand({
133
- EmailIdentity: props.emailIdentity,
134
- Tags: Object.entries(props.tags || {}).map(([Key, Value]) => ({
135
- Key,
136
- Value,
137
- })),
138
- }));
139
- // If it's an email address, we don't need to explicitly verify in v2
140
- // The verification email is automatically sent by SES in v2
141
- // Store the identity information
142
- emailIdentityArn = `arn:aws:ses:${process.env.AWS_REGION}:${process.env.AWS_ACCOUNT_ID}:identity/${props.emailIdentity}`;
143
- emailIdentityVerificationStatus =
144
- createIdentityResult.VerifiedForSendingStatus
145
- ? "VERIFIED"
146
- : "PENDING";
147
- }
148
- else {
149
- // Store the identity information
150
- emailIdentityArn = `arn:aws:ses:${process.env.AWS_REGION}:${process.env.AWS_ACCOUNT_ID}:identity/${props.emailIdentity}`;
151
- emailIdentityVerificationStatus =
152
- getIdentityResult.VerifiedForSendingStatus ? "VERIFIED" : "PENDING";
153
- // Update DKIM settings if requested
154
- if (props.enableDkim !== undefined) {
155
- if (props.enableDkim) {
156
- await client.send(new PutEmailIdentityDkimAttributesCommand({
157
- EmailIdentity: props.emailIdentity,
158
- SigningEnabled: true,
159
- }));
160
- // We can check the current status of DKIM
161
- dkimVerificationStatus = "PENDING"; // Default to pending
162
- // Get the updated identity to check DKIM status
163
- const updatedIdentity = await client.send(new GetEmailIdentityCommand({
164
- EmailIdentity: props.emailIdentity,
165
- }));
166
- if (updatedIdentity.DkimAttributes?.Status) {
167
- dkimVerificationStatus = updatedIdentity.DkimAttributes.Status;
168
- }
169
- }
170
- }
171
- }
172
- }
173
- catch (error) {
174
- console.error(`Error configuring email identity ${props.emailIdentity}:`, error);
175
- throw error;
176
- }
177
- }
178
- // Return the resource output
179
- return {
180
- ...props,
181
- id,
182
- configurationSetArn,
183
- emailIdentityArn,
184
- emailIdentityVerificationStatus,
185
- dkimVerificationStatus,
186
- };
187
- }) {
188
- }
189
- //# sourceMappingURL=ses.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ses.js","sourceRoot":"","sources":["../../src/aws/ses.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- export interface TableProps {
2
- tableName: string;
3
- partitionKey: {
4
- name: string;
5
- type: "S" | "N" | "B";
6
- };
7
- sortKey?: {
8
- name: string;
9
- type: "S" | "N" | "B";
10
- };
11
- billingMode?: "PROVISIONED" | "PAY_PER_REQUEST";
12
- readCapacity?: number;
13
- writeCapacity?: number;
14
- tags?: Record<string, string>;
15
- }
16
- export interface TableOutput extends TableProps {
17
- id: string;
18
- arn: string;
19
- streamArn?: string;
20
- tableId: string;
21
- }
22
- declare const Table_base: import("../resource").Provider<"dynamo::Table", [props: TableProps], TableOutput>;
23
- export declare class Table extends Table_base {
24
- }
25
- export {};
26
- //# sourceMappingURL=table.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/aws/table.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;KACvB,CAAC;IACF,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;KACvB,CAAC;IACF,WAAW,CAAC,EAAE,aAAa,GAAG,iBAAiB,CAAC;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;;AAED,qBAAa,KAAM,SAAQ,UA2L1B;CAAG"}
package/lib/aws/table.js DELETED
@@ -1,154 +0,0 @@
1
- import { CreateTableCommand, DeleteTableCommand, DescribeTableCommand, DynamoDBClient, InternalServerError, ResourceInUseException, ResourceNotFoundException, } from "@aws-sdk/client-dynamodb";
2
- import { ignore } from "../error";
3
- import { Resource } from "../resource";
4
- import { withExponentialBackoff } from "../utils/retry";
5
- export class Table extends Resource("dynamo::Table", async (ctx, props) => {
6
- const client = new DynamoDBClient({});
7
- if (ctx.event === "delete") {
8
- await withExponentialBackoff(async () => {
9
- await ignore(ResourceNotFoundException.name, () => client.send(new DeleteTableCommand({
10
- TableName: props.tableName,
11
- })));
12
- }, (error) => error instanceof ResourceInUseException ||
13
- error instanceof InternalServerError, 10, // Max attempts
14
- 200);
15
- // Wait for table to be deleted
16
- let tableDeleted = false;
17
- let retryCount = 0;
18
- const maxRetries = 60; // Wait up to 60 seconds
19
- while (!tableDeleted && retryCount < maxRetries) {
20
- try {
21
- await client.send(new DescribeTableCommand({
22
- TableName: props.tableName,
23
- }));
24
- // If we get here, table still exists
25
- retryCount++;
26
- // Increasing delay for each retry with some jitter
27
- const delay = Math.min(1000 * (1 + 0.1 * Math.random()), 5000);
28
- await new Promise((resolve) => setTimeout(resolve, delay));
29
- }
30
- catch (error) {
31
- if (error instanceof ResourceNotFoundException) {
32
- tableDeleted = true;
33
- }
34
- else {
35
- throw error;
36
- }
37
- }
38
- }
39
- if (!tableDeleted) {
40
- throw new Error(`Timed out waiting for table ${props.tableName} to be deleted`);
41
- }
42
- return;
43
- }
44
- else {
45
- // Setup for table creation
46
- const attributeDefinitions = [
47
- {
48
- AttributeName: props.partitionKey.name,
49
- AttributeType: props.partitionKey.type,
50
- },
51
- ];
52
- const keySchema = [
53
- {
54
- AttributeName: props.partitionKey.name,
55
- KeyType: "HASH",
56
- },
57
- ];
58
- if (props.sortKey) {
59
- attributeDefinitions.push({
60
- AttributeName: props.sortKey.name,
61
- AttributeType: props.sortKey.type,
62
- });
63
- keySchema.push({
64
- AttributeName: props.sortKey.name,
65
- KeyType: "RANGE",
66
- });
67
- }
68
- // Attempt to create the table with exponential backoff for ResourceInUseException
69
- await withExponentialBackoff(async () => {
70
- try {
71
- // First check if table already exists
72
- const describeResponse = await client.send(new DescribeTableCommand({
73
- TableName: props.tableName,
74
- }));
75
- // If table exists and is ACTIVE, no need to create it
76
- if (describeResponse.Table?.TableStatus === "ACTIVE") {
77
- return;
78
- }
79
- // If table exists but not ACTIVE, wait for it in the polling loop below
80
- if (describeResponse.Table) {
81
- return;
82
- }
83
- }
84
- catch (error) {
85
- if (error instanceof ResourceNotFoundException) {
86
- // Table doesn't exist, try to create it
87
- await client.send(new CreateTableCommand({
88
- TableName: props.tableName,
89
- AttributeDefinitions: attributeDefinitions,
90
- KeySchema: keySchema,
91
- BillingMode: props.billingMode || "PAY_PER_REQUEST",
92
- ProvisionedThroughput: props.billingMode === "PROVISIONED"
93
- ? {
94
- ReadCapacityUnits: props.readCapacity || 5,
95
- WriteCapacityUnits: props.writeCapacity || 5,
96
- }
97
- : undefined,
98
- Tags: props.tags
99
- ? Object.entries(props.tags).map(([Key, Value]) => ({
100
- Key,
101
- Value,
102
- }))
103
- : undefined,
104
- }));
105
- }
106
- else {
107
- throw error;
108
- }
109
- }
110
- }, (error) => error instanceof ResourceInUseException, 10, // Max attempts
111
- 200);
112
- // Wait for table to be active with timeout
113
- let tableActive = false;
114
- let tableDescription;
115
- let retryCount = 0;
116
- const maxRetries = 60; // Wait up to 60 seconds
117
- while (!tableActive && retryCount < maxRetries) {
118
- try {
119
- const response = await client.send(new DescribeTableCommand({
120
- TableName: props.tableName,
121
- }));
122
- tableActive = response.Table?.TableStatus === "ACTIVE";
123
- if (tableActive) {
124
- tableDescription = response.Table;
125
- }
126
- else {
127
- retryCount++;
128
- // Increasing delay for each retry with some jitter
129
- const delay = Math.min(1000 * (1 + 0.1 * Math.random()), 5000);
130
- await new Promise((resolve) => setTimeout(resolve, delay));
131
- }
132
- }
133
- catch (error) {
134
- retryCount++;
135
- if (!(error instanceof ResourceNotFoundException)) {
136
- throw error;
137
- }
138
- await new Promise((resolve) => setTimeout(resolve, 1000));
139
- }
140
- }
141
- if (!tableActive) {
142
- throw new Error(`Timed out waiting for table ${props.tableName} to become active`);
143
- }
144
- return {
145
- ...props,
146
- id: props.tableName,
147
- arn: tableDescription.TableArn,
148
- streamArn: tableDescription.LatestStreamArn,
149
- tableId: tableDescription.TableId,
150
- };
151
- }
152
- }) {
153
- }
154
- //# sourceMappingURL=table.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/aws/table.ts"],"names":[],"mappings":"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"}
@@ -1,88 +0,0 @@
1
- /**
2
- * Options for Cloudflare API requests
3
- */
4
- export interface CloudflareApiOptions {
5
- /**
6
- * API Key to use (overrides CLOUDFLARE_API_KEY env var)
7
- */
8
- apiKey?: string;
9
- /**
10
- * Account ID to use (overrides CLOUDFLARE_ACCOUNT_ID env var)
11
- * If not provided, will be automatically retrieved from the Cloudflare API
12
- */
13
- accountId?: string;
14
- /**
15
- * Zone ID to use (overrides CLOUDFLARE_ZONE_ID env var)
16
- */
17
- zoneId?: string;
18
- /**
19
- * Email to use with API Key authentication
20
- * If not provided, will attempt to discover from Cloudflare API
21
- */
22
- email?: string;
23
- }
24
- /**
25
- * Creates a CloudflareApi instance with automatic account ID discovery if not provided
26
- *
27
- * @param options API options
28
- * @returns Promise resolving to a CloudflareApi instance
29
- */
30
- export declare function createCloudflareApi(options?: CloudflareApiOptions): Promise<CloudflareApi>;
31
- /**
32
- * Cloudflare API client using raw fetch
33
- */
34
- export declare class CloudflareApi {
35
- /** Base URL for Cloudflare API */
36
- readonly baseUrl: string;
37
- /** Cloudflare API Key */
38
- readonly apiKey: string;
39
- /** Cloudflare account ID */
40
- readonly accountId: string;
41
- /** Cloudflare zone ID (if provided) */
42
- readonly zoneId: string | null;
43
- /** User email (when using API Key auth) */
44
- readonly email?: string;
45
- /** Auth options for making requests */
46
- private readonly authOptions;
47
- /**
48
- * Create a new Cloudflare API client
49
- * Use createCloudflareApi factory function instead of direct constructor
50
- * for automatic account ID discovery.
51
- *
52
- * @param options API options
53
- */
54
- constructor(options?: CloudflareApiOptions);
55
- /**
56
- * Make a fetch request to the Cloudflare API
57
- *
58
- * @param path API path (without base URL)
59
- * @param init Fetch init options
60
- * @returns Raw Response object from fetch
61
- */
62
- fetch(path: string, init?: RequestInit): Promise<Response>;
63
- /**
64
- * Helper for GET requests
65
- */
66
- get(path: string, init?: RequestInit): Promise<Response>;
67
- /**
68
- * Helper for HEAD requests
69
- */
70
- head(path: string, init?: RequestInit): Promise<Response>;
71
- /**
72
- * Helper for POST requests
73
- */
74
- post(path: string, body: any, init?: RequestInit): Promise<Response>;
75
- /**
76
- * Helper for PUT requests
77
- */
78
- put(path: string, body: any, init?: RequestInit): Promise<Response>;
79
- /**
80
- * Helper for PATCH requests
81
- */
82
- patch(path: string, body: any, init?: RequestInit): Promise<Response>;
83
- /**
84
- * Helper for DELETE requests
85
- */
86
- delete(path: string, init?: RequestInit): Promise<Response>;
87
- }
88
- //# sourceMappingURL=api.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/cloudflare/api.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAUD;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,aAAa,CAAC,CAexB;AAED;;GAEG;AACH,qBAAa,aAAa;IACxB,kCAAkC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,yBAAyB;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,4BAA4B;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,uCAAuC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAwB;IAEpD;;;;;;OAMG;gBACS,OAAO,GAAE,oBAAyB;IAqC9C;;;;;;OAMG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IA2CpE;;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"}