alchemy 0.22.3 → 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.
- package/lib/aws/bucket.d.ts.map +1 -1
- package/lib/aws/bucket.js +13 -12
- package/lib/aws/bucket.js.map +1 -1
- package/lib/aws/control/client.d.ts.map +1 -1
- package/lib/aws/control/client.js +5 -3
- package/lib/aws/control/client.js.map +1 -1
- package/lib/aws/control/resource.d.ts.map +1 -1
- package/lib/aws/control/resource.js +13 -4
- package/lib/aws/control/resource.js.map +1 -1
- package/lib/aws/control/types.d.ts +85129 -0
- package/lib/aws/function.d.ts.map +1 -1
- package/lib/aws/function.js +51 -42
- package/lib/aws/function.js.map +1 -1
- package/lib/aws/index.d.ts +1 -0
- package/lib/aws/index.d.ts.map +1 -1
- package/lib/aws/index.js +1 -0
- package/lib/aws/index.js.map +1 -1
- package/lib/aws/policy-attachment.d.ts.map +1 -1
- package/lib/aws/policy-attachment.js +5 -4
- package/lib/aws/policy-attachment.js.map +1 -1
- package/lib/aws/policy.d.ts.map +1 -1
- package/lib/aws/policy.js +21 -20
- package/lib/aws/policy.js.map +1 -1
- package/lib/aws/queue.d.ts.map +1 -1
- package/lib/aws/queue.js +19 -15
- package/lib/aws/queue.js.map +1 -1
- package/lib/aws/retry.d.ts +5 -0
- package/lib/aws/retry.d.ts.map +1 -0
- package/lib/aws/retry.js +27 -0
- package/lib/aws/retry.js.map +1 -0
- package/lib/aws/role.d.ts.map +1 -1
- package/lib/aws/role.js +31 -30
- package/lib/aws/role.js.map +1 -1
- package/lib/aws/ses.d.ts.map +1 -1
- package/lib/aws/ses.js +27 -26
- package/lib/aws/ses.js.map +1 -1
- package/lib/aws/ssm-parameter.d.ts +150 -0
- package/lib/aws/ssm-parameter.d.ts.map +1 -0
- package/lib/aws/ssm-parameter.js +184 -0
- package/lib/aws/ssm-parameter.js.map +1 -0
- package/lib/aws/table.d.ts.map +1 -1
- package/lib/aws/table.js +9 -27
- package/lib/aws/table.js.map +1 -1
- package/lib/cloudflare/account-id.d.ts +1 -0
- package/lib/cloudflare/account-id.d.ts.map +1 -1
- package/lib/cloudflare/account-id.js.map +1 -1
- package/lib/cloudflare/api.d.ts.map +1 -1
- package/lib/cloudflare/api.js +22 -2
- package/lib/cloudflare/api.js.map +1 -1
- package/lib/cloudflare/bindings.d.ts +2 -1
- package/lib/cloudflare/bindings.d.ts.map +1 -1
- package/lib/cloudflare/bindings.js.map +1 -1
- package/lib/cloudflare/bound.d.ts +2 -1
- package/lib/cloudflare/bound.d.ts.map +1 -1
- package/lib/cloudflare/index.d.ts +2 -0
- package/lib/cloudflare/index.d.ts.map +1 -1
- package/lib/cloudflare/index.js +2 -0
- package/lib/cloudflare/index.js.map +1 -1
- package/lib/cloudflare/queue.d.ts.map +1 -1
- package/lib/cloudflare/queue.js +1 -0
- package/lib/cloudflare/queue.js.map +1 -1
- package/lib/cloudflare/route.d.ts +7 -0
- package/lib/cloudflare/route.d.ts.map +1 -1
- package/lib/cloudflare/route.js +44 -2
- package/lib/cloudflare/route.js.map +1 -1
- package/lib/cloudflare/version-metadata.d.ts +7 -0
- package/lib/cloudflare/version-metadata.d.ts.map +1 -0
- package/lib/cloudflare/version-metadata.js +7 -0
- package/lib/cloudflare/version-metadata.js.map +1 -0
- package/lib/cloudflare/worker-metadata.d.ts.map +1 -1
- package/lib/cloudflare/worker-metadata.js +7 -2
- package/lib/cloudflare/worker-metadata.js.map +1 -1
- package/lib/cloudflare/worker.d.ts +2 -1
- package/lib/cloudflare/worker.d.ts.map +1 -1
- package/lib/cloudflare/worker.js +17 -8
- package/lib/cloudflare/worker.js.map +1 -1
- package/lib/cloudflare/workflow.d.ts +7 -0
- package/lib/cloudflare/workflow.d.ts.map +1 -1
- package/lib/cloudflare/workflow.js +2 -0
- package/lib/cloudflare/workflow.js.map +1 -1
- package/lib/cloudflare/wrangler.json.d.ts +7 -0
- package/lib/cloudflare/wrangler.json.d.ts.map +1 -1
- package/lib/cloudflare/wrangler.json.js +14 -2
- package/lib/cloudflare/wrangler.json.js.map +1 -1
- package/lib/destroy.js +1 -1
- package/lib/destroy.js.map +1 -1
- package/lib/dns/godaddy.d.ts.map +1 -1
- package/lib/dns/godaddy.js +2 -1
- package/lib/dns/godaddy.js.map +1 -1
- package/lib/fs/file-system-state-store.d.ts.map +1 -1
- package/lib/fs/file-system-state-store.js +14 -2
- package/lib/fs/file-system-state-store.js.map +1 -1
- package/lib/fs/static-json-file.d.ts +1 -0
- package/lib/fs/static-json-file.d.ts.map +1 -1
- package/lib/fs/static-json-file.js +11 -8
- package/lib/fs/static-json-file.js.map +1 -1
- package/lib/github/secret.d.ts.map +1 -1
- package/lib/github/secret.js +1 -0
- package/lib/github/secret.js.map +1 -1
- package/lib/neon/api.d.ts.map +1 -1
- package/lib/neon/api.js +2 -1
- package/lib/neon/api.js.map +1 -1
- package/lib/runtime/shims.d.ts +6 -0
- package/lib/runtime/shims.d.ts.map +1 -0
- package/lib/runtime/shims.js +27 -0
- package/lib/runtime/shims.js.map +1 -0
- package/lib/sentry/api.d.ts.map +1 -1
- package/lib/sentry/api.js +2 -1
- package/lib/sentry/api.js.map +1 -1
- package/lib/test/bun.d.ts.map +1 -1
- package/lib/test/bun.js +1 -7
- package/lib/test/bun.js.map +1 -1
- package/lib/test/prune.d.ts +2 -1
- package/lib/test/prune.d.ts.map +1 -1
- package/lib/test/prune.js +29 -5
- package/lib/test/prune.js.map +1 -1
- package/lib/test/vitest.d.ts +92 -0
- package/lib/test/vitest.d.ts.map +1 -0
- package/lib/test/vitest.js +94 -0
- package/lib/test/vitest.js.map +1 -0
- package/lib/upstash/api.d.ts.map +1 -1
- package/lib/upstash/api.js +2 -1
- package/lib/upstash/api.js.map +1 -1
- package/lib/util/retry.js +2 -2
- package/lib/util/retry.js.map +1 -1
- package/lib/util/safe-fetch.d.ts +2 -0
- package/lib/util/safe-fetch.d.ts.map +1 -0
- package/lib/util/safe-fetch.js +48 -0
- package/lib/util/safe-fetch.js.map +1 -0
- package/lib/vercel/api.d.ts.map +1 -1
- package/lib/vercel/api.js +2 -1
- package/lib/vercel/api.js.map +1 -1
- package/lib/web/vitepress/process-front-matter-files.d.ts.map +1 -1
- package/lib/web/vitepress/process-front-matter-files.js +11 -7
- package/lib/web/vitepress/process-front-matter-files.js.map +1 -1
- package/package.json +12 -1
- package/src/alchemy.ts +2 -2
- package/src/aws/bucket.ts +55 -36
- package/src/aws/control/client.ts +13 -13
- package/src/aws/control/resource.ts +19 -3
- package/src/aws/function.ts +233 -178
- package/src/aws/index.ts +1 -0
- package/src/aws/policy-attachment.ts +15 -10
- package/src/aws/policy.ts +75 -54
- package/src/aws/queue.ts +53 -36
- package/src/aws/retry.ts +38 -0
- package/src/aws/role.ts +121 -90
- package/src/aws/ses.ts +101 -73
- package/src/aws/ssm-parameter.ts +315 -0
- package/src/aws/table.ts +61 -90
- package/src/cloudflare/account-id.ts +2 -0
- package/src/cloudflare/api.ts +26 -3
- package/src/cloudflare/bindings.ts +2 -0
- package/src/cloudflare/bound.ts +8 -5
- package/src/cloudflare/index.ts +2 -0
- package/src/cloudflare/queue.ts +2 -0
- package/src/cloudflare/route.ts +86 -2
- package/src/cloudflare/version-metadata.ts +6 -0
- package/src/cloudflare/worker-metadata.ts +6 -2
- package/src/cloudflare/worker.ts +21 -9
- package/src/cloudflare/workflow.ts +8 -0
- package/src/cloudflare/wrangler.json.ts +29 -3
- package/src/destroy.ts +1 -1
- package/src/dns/godaddy.ts +3 -1
- package/src/fs/file-system-state-store.ts +16 -2
- package/src/fs/static-json-file.ts +12 -8
- package/src/github/secret.ts +2 -0
- package/src/neon/api.ts +2 -1
- package/src/sentry/api.ts +2 -1
- package/src/test/bun.ts +1 -7
- package/src/test/prune.ts +31 -4
- package/src/test/vitest.ts +209 -0
- package/src/upstash/api.ts +2 -1
- package/src/util/retry.ts +3 -3
- package/src/util/safe-fetch.ts +61 -0
- package/src/vercel/api.ts +2 -1
- package/src/web/vitepress/process-front-matter-files.ts +15 -7
- package/lib/tsconfig.test.tsbuildinfo +0 -1
|
@@ -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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"}
|
package/lib/aws/table.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/aws/table.ts"],"names":[],"mappings":"
|
|
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,
|
|
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 {
|
|
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
|
|
44
|
+
await retry(async () => {
|
|
45
45
|
await ignore(ResourceNotFoundException.name, () => client.send(new DeleteTableCommand({
|
|
46
46
|
TableName: props.tableName,
|
|
47
47
|
})));
|
|
48
|
-
}
|
|
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
|
|
103
|
-
await
|
|
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
|
-
}
|
|
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
|
package/lib/aws/table.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/aws/table.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/aws/table.ts"],"names":[],"mappings":"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"}
|
|
@@ -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;
|
|
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;
|
|
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"}
|
package/lib/cloudflare/api.js
CHANGED
|
@@ -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
|
|
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
|
|
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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"}
|
|
@@ -21,6 +21,7 @@ import type { VectorizeIndexResource } from "./vectorize-index.ts";
|
|
|
21
21
|
import type { WorkerStub } from "./worker-stub.ts";
|
|
22
22
|
import type { Worker } from "./worker.ts";
|
|
23
23
|
import type { Workflow } from "./workflow.ts";
|
|
24
|
+
import type { VersionMetadata } from "./version-metadata.ts";
|
|
24
25
|
export type Bindings = {
|
|
25
26
|
[bindingName: string]: Binding;
|
|
26
27
|
};
|
|
@@ -35,7 +36,7 @@ export declare namespace Bindings {
|
|
|
35
36
|
export type Binding = Ai | AiGatewayResource | Assets | D1DatabaseResource | AnalyticsEngineDataset | DurableObjectNamespace<Rpc.DurableObjectBranded | undefined> | HyperdriveResource | KVNamespaceResource | PipelineResource | QueueResource | R2BucketResource | {
|
|
36
37
|
type: "kv_namespace";
|
|
37
38
|
id: string;
|
|
38
|
-
} | Secret | string | VectorizeIndexResource | Worker | WorkerStub | Workflow | BrowserRendering | Self | Json;
|
|
39
|
+
} | Secret | string | VectorizeIndexResource | Worker | WorkerStub | Workflow | BrowserRendering | VersionMetadata | Self | Json;
|
|
39
40
|
export type Self = typeof Self;
|
|
40
41
|
export declare const Self: unique symbol;
|
|
41
42
|
export type Json<T = any> = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bindings.d.ts","sourceRoot":"","sources":["../../src/cloudflare/bindings.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"bindings.d.ts","sourceRoot":"","sources":["../../src/cloudflare/bindings.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bindings.js","sourceRoot":"","sources":["../../src/cloudflare/bindings.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bindings.js","sourceRoot":"","sources":["../../src/cloudflare/bindings.ts"],"names":[],"mappings":"AAkEA,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAOvC,MAAM,UAAU,IAAI,CAAU,KAAQ;IACpC,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,KAAK;KACZ,CAAC;AACJ,CAAC"}
|
|
@@ -15,11 +15,12 @@ import type { QueueResource as _Queue } from "./queue.ts";
|
|
|
15
15
|
import type { VectorizeIndexResource as _VectorizeIndex } from "./vectorize-index.ts";
|
|
16
16
|
import type { Worker as _Worker } from "./worker.ts";
|
|
17
17
|
import type { Workflow as _Workflow } from "./workflow.ts";
|
|
18
|
+
import type { VersionMetadata as _VersionMetadata } from "./version-metadata.ts";
|
|
18
19
|
export type Bound<T extends Binding> = T extends _DurableObjectNamespace<infer O> ? DurableObjectNamespace<O> : T extends {
|
|
19
20
|
type: "kv_namespace";
|
|
20
21
|
} ? KVNamespace : T extends _Worker<any, infer RPC> ? Service<RPC> & {
|
|
21
22
|
[property in keyof Pick<RPC, Extract<keyof Rpc.Provider<RPC, "fetch" | "connect">, keyof RPC>>]: Rpc.Provider<RPC, "fetch" | "connect">[property];
|
|
22
23
|
} : T extends {
|
|
23
24
|
type: "service";
|
|
24
|
-
} ? Service : T extends _R2Bucket ? R2Bucket : T extends _AiGateway ? AiGateway : T extends _Hyperdrive ? Hyperdrive : T extends Secret ? string : T extends Assets ? Service : T extends _Workflow<infer P> ? Workflow<P> : T extends D1DatabaseResource ? D1Database : T extends _VectorizeIndex ? VectorizeIndex : T extends _Queue<infer Body> ? Queue<Body> : T extends _AnalyticsEngineDataset ? AnalyticsEngineDataset : T extends _Pipeline<infer R> ? Pipeline<R> : T extends string ? string : T extends BrowserRendering ? Fetcher : T extends _Ai<infer M> ? Ai<M> : T extends Self ? Service : T extends Json<infer T> ? T : Service;
|
|
25
|
+
} ? Service : T extends _R2Bucket ? R2Bucket : T extends _AiGateway ? AiGateway : T extends _Hyperdrive ? Hyperdrive : T extends Secret ? string : T extends Assets ? Service : T extends _Workflow<infer P> ? Workflow<P> : T extends D1DatabaseResource ? D1Database : T extends _VectorizeIndex ? VectorizeIndex : T extends _Queue<infer Body> ? Queue<Body> : T extends _AnalyticsEngineDataset ? AnalyticsEngineDataset : T extends _Pipeline<infer R> ? Pipeline<R> : T extends string ? string : T extends BrowserRendering ? Fetcher : T extends _Ai<infer M> ? Ai<M> : T extends _VersionMetadata ? Fetcher : T extends Self ? Service : T extends Json<infer T> ? T : Service;
|
|
25
26
|
//# sourceMappingURL=bound.d.ts.map
|