alchemy 0.73.1 → 0.74.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 (96) hide show
  1. package/bin/alchemy.js +3311 -4413
  2. package/bin/alchemy.ts +2 -0
  3. package/bin/commands/configure.ts +4 -1
  4. package/bin/commands/util.ts +510 -0
  5. package/lib/cloudflare/bound.d.ts +1 -1
  6. package/lib/cloudflare/bound.d.ts.map +1 -1
  7. package/lib/cloudflare/miniflare/miniflare-worker-proxy.d.ts.map +1 -1
  8. package/lib/cloudflare/miniflare/miniflare-worker-proxy.js +6 -14
  9. package/lib/cloudflare/miniflare/miniflare-worker-proxy.js.map +1 -1
  10. package/lib/cloudflare/miniflare/remote-binding-proxy.d.ts.map +1 -1
  11. package/lib/cloudflare/miniflare/remote-binding-proxy.js +12 -4
  12. package/lib/cloudflare/miniflare/remote-binding-proxy.js.map +1 -1
  13. package/lib/cloudflare/tanstack-start/tanstack-start.d.ts.map +1 -1
  14. package/lib/cloudflare/tanstack-start/tanstack-start.js +8 -1
  15. package/lib/cloudflare/tanstack-start/tanstack-start.js.map +1 -1
  16. package/lib/cloudflare/vite/plugin.d.ts.map +1 -1
  17. package/lib/cloudflare/vite/plugin.js +23 -9
  18. package/lib/cloudflare/vite/plugin.js.map +1 -1
  19. package/lib/planetscale/branch.d.ts +6 -0
  20. package/lib/planetscale/branch.d.ts.map +1 -1
  21. package/lib/planetscale/branch.js +2 -1
  22. package/lib/planetscale/branch.js.map +1 -1
  23. package/lib/planetscale/database.d.ts +6 -0
  24. package/lib/planetscale/database.d.ts.map +1 -1
  25. package/lib/planetscale/database.js +2 -1
  26. package/lib/planetscale/database.js.map +1 -1
  27. package/lib/planetscale/password.d.ts +6 -0
  28. package/lib/planetscale/password.d.ts.map +1 -1
  29. package/lib/planetscale/password.js +2 -1
  30. package/lib/planetscale/password.js.map +1 -1
  31. package/lib/planetscale/role.d.ts +6 -0
  32. package/lib/planetscale/role.d.ts.map +1 -1
  33. package/lib/planetscale/role.js +2 -1
  34. package/lib/planetscale/role.js.map +1 -1
  35. package/lib/prisma-postgres/api/client.gen.d.ts +13 -0
  36. package/lib/prisma-postgres/api/client.gen.d.ts.map +1 -0
  37. package/lib/prisma-postgres/api/client.gen.js +6 -0
  38. package/lib/prisma-postgres/api/client.gen.js.map +1 -0
  39. package/lib/prisma-postgres/api/sdk.gen.d.ts +120 -0
  40. package/lib/prisma-postgres/api/sdk.gen.d.ts.map +1 -0
  41. package/lib/prisma-postgres/api/sdk.gen.js +219 -0
  42. package/lib/prisma-postgres/api/sdk.gen.js.map +1 -0
  43. package/lib/prisma-postgres/api/types.gen.d.ts +957 -0
  44. package/lib/prisma-postgres/api/types.gen.d.ts.map +1 -0
  45. package/lib/prisma-postgres/api/types.gen.js +2 -0
  46. package/lib/prisma-postgres/api/types.gen.js.map +1 -0
  47. package/lib/prisma-postgres/api.d.ts +29 -0
  48. package/lib/prisma-postgres/api.d.ts.map +1 -0
  49. package/lib/prisma-postgres/api.js +49 -0
  50. package/lib/prisma-postgres/api.js.map +1 -0
  51. package/lib/prisma-postgres/connection.d.ts +87 -0
  52. package/lib/prisma-postgres/connection.d.ts.map +1 -0
  53. package/lib/prisma-postgres/connection.js +73 -0
  54. package/lib/prisma-postgres/connection.js.map +1 -0
  55. package/lib/prisma-postgres/database.d.ts +104 -0
  56. package/lib/prisma-postgres/database.d.ts.map +1 -0
  57. package/lib/prisma-postgres/database.js +88 -0
  58. package/lib/prisma-postgres/database.js.map +1 -0
  59. package/lib/prisma-postgres/index.d.ts +5 -0
  60. package/lib/prisma-postgres/index.d.ts.map +1 -0
  61. package/lib/prisma-postgres/index.js +5 -0
  62. package/lib/prisma-postgres/index.js.map +1 -0
  63. package/lib/prisma-postgres/project.d.ts +69 -0
  64. package/lib/prisma-postgres/project.d.ts.map +1 -0
  65. package/lib/prisma-postgres/project.js +62 -0
  66. package/lib/prisma-postgres/project.js.map +1 -0
  67. package/lib/prisma-postgres/workspace.d.ts +18 -0
  68. package/lib/prisma-postgres/workspace.d.ts.map +1 -0
  69. package/lib/prisma-postgres/workspace.js +21 -0
  70. package/lib/prisma-postgres/workspace.js.map +1 -0
  71. package/lib/util/http.d.ts +5 -2
  72. package/lib/util/http.d.ts.map +1 -1
  73. package/lib/util/http.js +71 -26
  74. package/lib/util/http.js.map +1 -1
  75. package/package.json +9 -1
  76. package/src/cloudflare/bound.ts +3 -1
  77. package/src/cloudflare/miniflare/miniflare-worker-proxy.ts +10 -13
  78. package/src/cloudflare/miniflare/remote-binding-proxy.ts +12 -4
  79. package/src/cloudflare/tanstack-start/tanstack-start.ts +9 -1
  80. package/src/cloudflare/vite/plugin.ts +24 -10
  81. package/src/planetscale/branch.ts +9 -1
  82. package/src/planetscale/database.ts +9 -1
  83. package/src/planetscale/password.ts +9 -1
  84. package/src/planetscale/role.ts +9 -1
  85. package/src/prisma-postgres/api/client.gen.ts +27 -0
  86. package/src/prisma-postgres/api/sdk.gen.ts +437 -0
  87. package/src/prisma-postgres/api/types.gen.ts +1096 -0
  88. package/src/prisma-postgres/api.ts +79 -0
  89. package/src/prisma-postgres/connection.ts +154 -0
  90. package/src/prisma-postgres/database.ts +178 -0
  91. package/src/prisma-postgres/index.ts +4 -0
  92. package/src/prisma-postgres/project.ts +131 -0
  93. package/src/prisma-postgres/workspace.ts +27 -0
  94. package/src/util/http.ts +79 -33
  95. package/workers/cloudflare-state-store.js +1 -1
  96. package/workers/tunnel-proxy.js +1 -1
package/bin/alchemy.ts CHANGED
@@ -9,6 +9,7 @@ import { login } from "./commands/login.ts";
9
9
  import { logout } from "./commands/logout.ts";
10
10
  import { run } from "./commands/run.ts";
11
11
  import { telemetry } from "./commands/telemetry.ts";
12
+ import { util } from "./commands/util.ts";
12
13
  import { getPackageVersion } from "./services/get-package-version.ts";
13
14
  import { t } from "./trpc.ts";
14
15
 
@@ -23,6 +24,7 @@ const router = t.router({
23
24
  configure,
24
25
  run,
25
26
  telemetry,
27
+ util,
26
28
  });
27
29
 
28
30
  export type AppRouter = typeof router;
@@ -85,7 +85,10 @@ export const configure = authProcedure
85
85
  outro(pc.green(`✅ Configured profile ${pc.bold(name)}`));
86
86
  });
87
87
 
88
- const promptForProfileName = async (input: { profile?: string }) => {
88
+ /**
89
+ * Prompts the user to enter a profile name.
90
+ */
91
+ export const promptForProfileName = async (input: { profile?: string }) => {
89
92
  input.profile = input.profile?.trim();
90
93
  if (input.profile) {
91
94
  return input.profile;
@@ -0,0 +1,510 @@
1
+ import {
2
+ confirm,
3
+ intro,
4
+ isCancel,
5
+ log,
6
+ outro,
7
+ password,
8
+ text,
9
+ } from "@clack/prompts";
10
+ import pc from "picocolors";
11
+ import z from "zod";
12
+ import { Profile, Provider } from "../../src/auth.ts";
13
+ import { CancelSignal, loggedProcedure, t } from "../trpc.ts";
14
+ import { promptForProfileName } from "./configure.ts";
15
+
16
+ const createCloudflareToken = loggedProcedure
17
+ .meta({
18
+ description: "Create a Cloudflare god token with API key and account IDs",
19
+ })
20
+ .input(
21
+ z.object({
22
+ profile: z
23
+ .string()
24
+ .optional()
25
+ .meta({ alias: "p" })
26
+ .describe("the profile to use to generate a token"),
27
+ godToken: z
28
+ .boolean()
29
+ .optional()
30
+ .describe("if a god token should be created"),
31
+ }),
32
+ )
33
+ .mutation(async ({ input }) => {
34
+ if (input.godToken) {
35
+ await createCloudflareGodToken();
36
+ } else {
37
+ await createCloudflareProfileToken(input);
38
+ }
39
+ });
40
+
41
+ export const util = t.router({
42
+ "create-cloudflare-token": createCloudflareToken,
43
+ });
44
+
45
+ async function createToken(
46
+ keyName: string,
47
+ accountIds: Array<string>,
48
+ permissionGroupIds: Array<string> | undefined,
49
+ credentials: { apiKey: string; accountEmail: string },
50
+ ) {
51
+ type PermissionGroup = {
52
+ id: string;
53
+ name: string;
54
+ description: string;
55
+ scopes: Array<string>;
56
+ };
57
+
58
+ const permissionGroups = await fetch(
59
+ "https://api.cloudflare.com/client/v4/user/tokens/permission_groups",
60
+ {
61
+ headers: {
62
+ "Content-Type": "application/json",
63
+ "X-Auth-Key": credentials.apiKey,
64
+ "X-Auth-Email": credentials.accountEmail,
65
+ },
66
+ },
67
+ )
68
+ .then((res) => res.json())
69
+ .then((data) => data.result as Array<PermissionGroup>)
70
+ .then((data) => {
71
+ //* filter permissions and group by scope
72
+ const groupedByScope = data.reduce(
73
+ (acc, group) => {
74
+ if (
75
+ permissionGroupIds != null &&
76
+ !permissionGroupIds.includes(group.id)
77
+ ) {
78
+ return acc;
79
+ }
80
+ const scope = group.scopes[0];
81
+ if (!acc[scope]) {
82
+ acc[scope] = [];
83
+ }
84
+ acc[scope].push(group);
85
+ return acc;
86
+ },
87
+ {} as Record<string, Array<PermissionGroup>>,
88
+ );
89
+ return groupedByScope;
90
+ })
91
+ .catch((err) => {
92
+ log.error(pc.red(`Error fetching permission groups: ${err.message}`));
93
+ throw new CancelSignal();
94
+ });
95
+
96
+ const apiToken = await fetch(
97
+ "https://api.cloudflare.com/client/v4/user/tokens",
98
+ {
99
+ method: "POST",
100
+ headers: {
101
+ "Content-Type": "application/json",
102
+ "X-Auth-Key": credentials.apiKey,
103
+ "X-Auth-Email": credentials.accountEmail,
104
+ },
105
+ body: JSON.stringify({
106
+ name: `Alchemy Token - ${keyName}`,
107
+ status: "active",
108
+ policies: [
109
+ {
110
+ effect: "allow",
111
+ resources: accountIds.reduce((acc, id) => {
112
+ acc[`com.cloudflare.api.account.${id}`] = "*";
113
+ return acc;
114
+ }, {}),
115
+ permission_groups: permissionGroups[
116
+ "com.cloudflare.api.account"
117
+ ].map((group) => ({ id: group.id })),
118
+ },
119
+ {
120
+ effect: "allow",
121
+ resources: { "com.cloudflare.api.account.zone.*": "*" },
122
+ permission_groups: permissionGroups[
123
+ "com.cloudflare.api.account.zone"
124
+ ].map((group) => ({ id: group.id })),
125
+ },
126
+ ],
127
+ }),
128
+ },
129
+ )
130
+ .then((res) => res.json())
131
+ .then((data) => data.result.value)
132
+ .catch((err) => {
133
+ log.error(pc.red(`Error creating cloudflare token: ${err.message}`));
134
+ throw new CancelSignal();
135
+ });
136
+
137
+ return apiToken;
138
+ }
139
+
140
+ async function createCloudflareGodToken() {
141
+ intro(pc.cyan("🧪 Create Cloudflare God Token"));
142
+
143
+ const apiKey = await password({
144
+ message: "Enter Cloudflare API Key",
145
+ });
146
+ if (isCancel(apiKey)) {
147
+ throw new CancelSignal();
148
+ }
149
+
150
+ const accountEmail = await text({
151
+ message: "Enter account email",
152
+ placeholder: "user@example.com",
153
+ });
154
+ if (isCancel(accountEmail)) {
155
+ throw new CancelSignal();
156
+ }
157
+
158
+ const accountIds: string[] = [];
159
+ log.info(
160
+ pc.dim("Enter account IDs (press enter with empty value to finish)"),
161
+ );
162
+
163
+ while (true) {
164
+ const accountId = await text({
165
+ message: `Enter account ID ${accountIds.length > 0 ? "(or press enter to finish)" : ""}`,
166
+ placeholder: accountIds.length === 0 ? "account-id" : "",
167
+ defaultValue: "",
168
+ validate: (value) => {
169
+ if (!value?.trim() && accountIds.length === 0) {
170
+ return "Please enter at least one account ID";
171
+ }
172
+ },
173
+ });
174
+
175
+ if (isCancel(accountId)) {
176
+ throw new CancelSignal();
177
+ }
178
+
179
+ const trimmedId = (accountId || "").trim();
180
+
181
+ if (!trimmedId && accountIds.length > 0) {
182
+ log.info(pc.dim("Finishing input..."));
183
+ break;
184
+ }
185
+
186
+ if (trimmedId) {
187
+ accountIds.push(trimmedId);
188
+ log.info(pc.dim(`Added account ID: ${trimmedId}`));
189
+ }
190
+ }
191
+
192
+ log.error(
193
+ pc.red(
194
+ "🚨 If this token is leaked or compromised, it could result in:\n • Complete account takeover\n • Data breaches\n • Service disruption\n • Financial losses\n",
195
+ ),
196
+ );
197
+
198
+ const confirmCreate = await confirm({
199
+ message: "Do you understand the risks and want to proceed?",
200
+ initialValue: false,
201
+ });
202
+
203
+ if (isCancel(confirmCreate) || !confirmCreate) {
204
+ log.info(pc.dim("Token creation cancelled"));
205
+ throw new CancelSignal();
206
+ }
207
+
208
+ const apiToken = await createToken("GOD-TOKEN", accountIds, undefined, {
209
+ apiKey,
210
+ accountEmail,
211
+ }).catch((err) => {
212
+ log.error(pc.red(`Error creating cloudflare god token: ${err.message}`));
213
+ throw new CancelSignal();
214
+ });
215
+
216
+ outro(`Cloudflare god token created: ${pc.magenta(apiToken)}`);
217
+ }
218
+
219
+ async function createCloudflareProfileToken(input: { profile?: string }) {
220
+ const name = await promptForProfileName(input);
221
+ intro(pc.cyan(`🧪 Create Cloudflare Token for ${pc.bold(name)}`));
222
+
223
+ const profile = await Profile.get(name);
224
+ if (profile == null) {
225
+ throw new Error(`Profile ${pc.bold(name)} not found`);
226
+ }
227
+ const { provider } = await Provider.getWithCredentials({
228
+ profile: name,
229
+ provider: "cloudflare",
230
+ });
231
+
232
+ if (provider.method !== "oauth") {
233
+ throw new Error(
234
+ `Profile ${pc.bold(name)} is not configured to use Cloudflare via OAuth`,
235
+ );
236
+ }
237
+
238
+ if (provider.scopes == null) {
239
+ throw new Error(
240
+ `Profile ${pc.bold(name)} is not configured with any Cloudflare scopes`,
241
+ );
242
+ }
243
+
244
+ const permissionGroupIds: Array<string> = [];
245
+ for (const scope of provider.scopes) {
246
+ const ids = CLOUDFLARE_OAUTH_SCOPES_TO_PERMISSION_GROUP_IDS[scope];
247
+ if (ids != null) {
248
+ permissionGroupIds.push(...ids);
249
+ }
250
+ }
251
+
252
+ const apiKey = await password({
253
+ message: "Enter Cloudflare API Key",
254
+ });
255
+ if (isCancel(apiKey)) {
256
+ throw new CancelSignal();
257
+ }
258
+
259
+ const accountEmail = await text({
260
+ message: "Enter account email",
261
+ placeholder: "user@example.com",
262
+ });
263
+ if (isCancel(accountEmail)) {
264
+ throw new CancelSignal();
265
+ }
266
+
267
+ const apiToken = await createToken(
268
+ name,
269
+ [provider.metadata.id],
270
+ permissionGroupIds,
271
+ { apiKey, accountEmail },
272
+ );
273
+
274
+ outro(
275
+ `Cloudflare token created for profile ${pc.bold(name)}: ${pc.magenta(apiToken)}`,
276
+ );
277
+ }
278
+
279
+ export const CLOUDFLARE_OAUTH_SCOPES_TO_PERMISSION_GROUP_IDS = {
280
+ "access:read": [
281
+ "eb258a38ea634c86a0c89da6b27cb6b6",
282
+ "7ea222f6d5064cfa89ea366d7c1fee89",
283
+ "08e61dabe81a422dab0dea6fdef1a98a",
284
+ "0f4841f80adb4bada5a09493300e7f8d",
285
+ "4f3196a5c95747b6ad82e34e1d0a694f",
286
+ "26bc23f853634eb4bff59983b9064fde",
287
+ "b8b7514ce5364cd8ac0455f3eb16eb5f",
288
+ "de99c87e48d642ce8c985d027905b475",
289
+ "91f7ce32fa614d73b7e1fc8f0e78582b",
290
+ "99ff99e4e30247a99d3777a8c4c18541",
291
+ "e985ca9351db460faebbe8681c48e560",
292
+ ],
293
+ "access:write": [
294
+ "a1c0fec57cf94af79479a6d827fa518c",
295
+ "d30c9ad8b5224e7cb8d41bcb4757effc",
296
+ "bc783549a3a741aaa10556faf8b485bb",
297
+ "6d23f290472f4e6fad5c4398c057c356",
298
+ "bfe0d8686a584fa680f4c53b5eb0de6d",
299
+ "7121a0c7e9ed46e3829f9cca2bb572aa",
300
+ "29d3afbfd4054af9accdd1118815ed05",
301
+ "2fc1072ee6b743828db668fcb3f9dee7",
302
+ "4e5fd8ac327b4a358e48c66fcbeb856d",
303
+ "1e13c5124ca64b72b1969a67e8829049",
304
+ "959972745952452f8be2452be8cbb9f2",
305
+ "6c9d1cfcfc6840a987d1b5bfb880a841",
306
+ "6db4e222e21248ac96a3f4c2a81e3b41",
307
+ "eb258a38ea634c86a0c89da6b27cb6b6",
308
+ "7ea222f6d5064cfa89ea366d7c1fee89",
309
+ "08e61dabe81a422dab0dea6fdef1a98a",
310
+ "0f4841f80adb4bada5a09493300e7f8d",
311
+ "4f3196a5c95747b6ad82e34e1d0a694f",
312
+ "26bc23f853634eb4bff59983b9064fde",
313
+ "b8b7514ce5364cd8ac0455f3eb16eb5f",
314
+ "de99c87e48d642ce8c985d027905b475",
315
+ "91f7ce32fa614d73b7e1fc8f0e78582b",
316
+ "99ff99e4e30247a99d3777a8c4c18541",
317
+ "e985ca9351db460faebbe8681c48e560",
318
+ ],
319
+ "account:read": ["c1fde68c7bcc44588cbb6ddbc16d6480"],
320
+ "agw:read": ["05a2a65760a546439ed29762b163cece"],
321
+ "agw:run": [
322
+ "05a2a65760a546439ed29762b163cece",
323
+ "5e5d3e8efeec49f3afb67bafecbcd511",
324
+ ],
325
+ "ai:read": ["a92d2450e05d4e7bb7d0a64968f83d11"],
326
+ "ai:write": [
327
+ "a92d2450e05d4e7bb7d0a64968f83d11",
328
+ "bacc64e0f6c34fc0883a1223f938a104",
329
+ ],
330
+ "aiaudit:read": ["19637fbb73d242c0a92845d8db0b95b1"],
331
+ "aiaudit:write": [
332
+ "19637fbb73d242c0a92845d8db0b95b1",
333
+ "1ba6ab4cacdb454b913bbb93e1b8cb8c",
334
+ ],
335
+ "aig:read": ["4dc8917b4b40457d88d3035d5dadb054"],
336
+ "aig:write": [
337
+ "4dc8917b4b40457d88d3035d5dadb054",
338
+ "644535f4ed854494a59cb289d634b257",
339
+ "6c8a3737f07f46369c1ea1f22138daaf",
340
+ ],
341
+ "auditlogs:read": ["b05b28e839c54467a7d6cba5d3abb5a3"],
342
+ "browser:read": ["374b03fa229f4eb6b011bb1cd7f235ee"],
343
+ "browser:write": [
344
+ "374b03fa229f4eb6b011bb1cd7f235ee",
345
+ "adddda876faa4a0590f1b23a038976e4",
346
+ ],
347
+ "cfone:read": [
348
+ "1cd960c063a0448481343372c963d8c7",
349
+ "c1968d31028d4239976ec3bc4750bbf6",
350
+ "07cf1c1952a84b13b2cd542f3d2f29ab",
351
+ ],
352
+ "cfone:write": [
353
+ "5b5c774a5d174ca88d046c8889648b3f",
354
+ "037b9e348b3b42d4b46ea2fcb1cfb3e7",
355
+ "a7030c9c98d544e092d8b099fabb1f06",
356
+ "1cd960c063a0448481343372c963d8c7",
357
+ "c1968d31028d4239976ec3bc4750bbf6",
358
+ "07cf1c1952a84b13b2cd542f3d2f29ab",
359
+ ],
360
+ "cloudchamber:write": [
361
+ "65ec50cbde3d4c838bbe7500024d5745",
362
+ "26ce6c7d18a346528e7b905d5e269866",
363
+ ],
364
+ "constellation:write": [
365
+ "eeffa4d16812430cb4a0ae9e7f46fc24",
366
+ "7c81856725af47ce89a790d5fb36f362",
367
+ ],
368
+ "containers:write": [
369
+ "cfd39eebc07c4e3ea849e4b3d2644637",
370
+ "bdbcd690c763475a985e8641dddc09f7",
371
+ ],
372
+ "d1:write": [
373
+ "192192df92ee43ac90f2aeeffce67e35",
374
+ "09b2857d1c31407795e75e3fed8617a1",
375
+ ],
376
+ "dex:read": ["3b376e0aa52c41cbb6afc9cab945afa8"],
377
+ "dex:write": [
378
+ "3a1e1ef09dd34271bb44fc4c6a419952",
379
+ "3b376e0aa52c41cbb6afc9cab945afa8",
380
+ "92c8dcd551cc42a6a57a54e8f8d3f3e3",
381
+ ],
382
+ "dns_analytics:read": [], //??
383
+ "dns_records:edit": [
384
+ "82e64a83756745bbbb1c9c2701bf816b",
385
+ "95d69e8d6d5144bfb0923667355d9f11",
386
+ "5b7aedd821a548b9bf5a2acabbce98c7",
387
+ "4755a26eedb94da69e1066d98aa820be",
388
+ ],
389
+ "dns_records:read": [
390
+ "82e64a83756745bbbb1c9c2701bf816b",
391
+ "95d69e8d6d5144bfb0923667355d9f11",
392
+ ],
393
+ "dns_settings:read": ["cfa964bcdafc4ab39704e7476154e41b"],
394
+ "firstpartytags:write": [], //??
395
+ "lb:edit": [
396
+ "59059f0c977b44f8b1c18e0aaf91c369",
397
+ "419ec42810af4659ade77716dbe47bc6",
398
+ "6d7f2f5f5b1d4a0e9081fdc98d432fd1",
399
+ "9d24387c6e8544e2bc4024a03991339f",
400
+ "d2a1802cc9a34e30852f8b33869b2f3c",
401
+ ],
402
+ "lb:read": [
403
+ "59059f0c977b44f8b1c18e0aaf91c369",
404
+ "9d24387c6e8544e2bc4024a03991339f",
405
+ "e9a975f628014f1d85b723993116f7d5",
406
+ ],
407
+ "logpush:read": [
408
+ "6a315a56f18441e59ed03352369ae956",
409
+ "c4a30cd58c5d42619c86a3c36c441e2d",
410
+ ],
411
+ "logpush:write": [
412
+ "6a315a56f18441e59ed03352369ae956",
413
+ "c4a30cd58c5d42619c86a3c36c441e2d",
414
+ "96163bd1b0784f62b3e44ed8c2ab1eb6",
415
+ "3e0b5820118e47f3922f7c989e673882",
416
+ ],
417
+ "notification:read": ["ce18edbdcebf465e9d6d1d2fc80ffd42"],
418
+ "notification:write": [
419
+ "ce18edbdcebf465e9d6d1d2fc80ffd42",
420
+ "c3c847c5802d4ce3ba00e3e97b3c8555",
421
+ ],
422
+ "pages:read": ["e247aedd66bd41cc9193af0213416666"],
423
+ "pages:write": [
424
+ "e247aedd66bd41cc9193af0213416666",
425
+ "8d28297797f24fb8a0c332fe0866ec89",
426
+ ],
427
+ "pipelines:read": ["14b9cf2f410f4c0c9a16bb10a81c0e0b"],
428
+ "pipelines:setup": ["5606e7405dc542949d949d59993d321f"],
429
+ "pipelines:write": [
430
+ "14b9cf2f410f4c0c9a16bb10a81c0e0b",
431
+ "5606e7405dc542949d949d59993d321f",
432
+ "e34111af393449539859485aa5ddd5bd",
433
+ ],
434
+ "query_cache:write": [],
435
+ "queues:write": [
436
+ "84a7755d54c646ca87cd50682a34bf7c",
437
+ "366f57075ffc42689627bcf8242a1b6d",
438
+ ],
439
+ "r2_catalog:write": [
440
+ "45db74139a62490b9b60eb7c4f34994b",
441
+ "d229766a2f7f4d299f20eaa8c9b1fde9",
442
+ "f45430d92e2b4a6cb9f94f2594c141b8",
443
+ ],
444
+ "radar:read": ["dfe525ec7b07472c827d8d009178b2ac"],
445
+ "rag:read": ["d7887c7a417e4cf2a69f1d01c1a1dc3b"],
446
+ "rag:write": [
447
+ "d7887c7a417e4cf2a69f1d01c1a1dc3b",
448
+ "7fb8d27511b34d02994d005b520b679f",
449
+ "234108c786084936a381bb19b7f4ea65",
450
+ ],
451
+ "secrets_store:read": ["5e33b7d77788455c9fdf18cbd38ee5a0"],
452
+ "secrets_store:write": [
453
+ "5e33b7d77788455c9fdf18cbd38ee5a0",
454
+ "adc8fa2bc6124928a8b3314dc63a1235",
455
+ ],
456
+ "sso-connector:read": ["1d80f6f165ea47f2b55d4a393fd697de"],
457
+ "sso-connector:write": [
458
+ "1d80f6f165ea47f2b55d4a393fd697de",
459
+ "901ca5e292584c6aa1b4cdb39248bb07",
460
+ ],
461
+ "ssl_certs:write": [
462
+ "a7a233f9604845c787d4c8c39ac09c21",
463
+ "db37e5f1cb1a4e1aabaef8deaea43575",
464
+ "7b7216b327b04b8fbc8f524e1f9b7531",
465
+ "c03055bc037c4ea9afb9a9f104b7b721",
466
+ ],
467
+ "teams:pii": [], //??
468
+ "teams:read": [], //??
469
+ "teams:secure_location": [], //??
470
+ "teams:write": [], //??
471
+ "url_scanner:read": ["5d613a610b294788a29572aaac2f254d"],
472
+ "url_scanner:write": [
473
+ "5d613a610b294788a29572aaac2f254d",
474
+ "2a400bcb29154daab509fe07e3facab0",
475
+ ],
476
+ "user:read": [], //??
477
+ "vectorize:write": [
478
+ "1799edaae5db489294430e20d9b519e0",
479
+ "64156ba5be47441096c83c7fc17c488b",
480
+ ],
481
+ "workers:write": [
482
+ "2072033d694d415a936eaeb94e6405b8",
483
+ "28f4b596e7d643029c524985477ae49a",
484
+ "1a71c399035b4950a1bd1466bbe4f420",
485
+ "e086da7e2179491d91ee5f35b3ca210a",
486
+ ],
487
+ "workers_builds:read": ["ad99c5ae555e45c4bef5bdf2678388ba"],
488
+ "workers_builds:write": ["2e095cf436e2455fa62c9a9c2e18c478"],
489
+ "workers_kv:write": [
490
+ "8b47d2786a534c08a1f94ee8f9f599ef",
491
+ "f7f0eda5697f475c90846e879bab8666",
492
+ ],
493
+ "workers_observability:read": ["66c1ed49f4ed46098b75696a6d4ee3c9"],
494
+ "workers_observability:write": [
495
+ "66c1ed49f4ed46098b75696a6d4ee3c9",
496
+ "82c075da3f4647a2a03becd0fe240f8a",
497
+ ],
498
+ "workers_observability_telemetry:write": ["29c629fb7b5e4c408ca0f7b545724fcc"],
499
+ "workers_routes:write": [], //??
500
+ "workers_scripts:write": [], //??
501
+ "workers_tail:read": ["05880cd1bdc24d8bae0be2136972816b"],
502
+ "zone:read": [
503
+ "c8fed203ed3043cba015a93ad1616f1f",
504
+ "517b21aee92c4d89936c976ba6e4be55",
505
+ "211a4c0feb3e43b3a2d41f1443a433e7",
506
+ "1b1ea24cf0904d33903f0cc7e54e280f",
507
+ "dbc512b354774852af2b5a5f4ba3d470",
508
+ ],
509
+ offline_access: [],
510
+ } as const;
@@ -32,6 +32,6 @@ export type Bound<T extends Binding> = T extends _DurableObjectNamespace<infer O
32
32
  type: "kv_namespace";
33
33
  } ? KVNamespace : T extends WorkerStub<infer RPC> ? BoundWorker<RPC> : T extends _Worker<any, infer RPC> | WorkerRef<infer RPC> ? BoundWorker<RPC> : T extends {
34
34
  type: "service";
35
- } ? Service : T extends _R2Bucket ? R2Bucket : T extends _Hyperdrive | HyperdriveRef ? Hyperdrive : T extends Secret ? string : T extends CloudflareSecret | CloudflareSecretRef ? SecretsStoreSecret : T extends SecretKey ? CryptoKey : T extends Assets ? Service : T extends _Workflow<infer P> ? Workflow<P> : T extends _D1Database ? D1Database : T extends DispatchNamespace ? DispatchNamespace : T extends _WorkerLoader ? WorkerLoader : T extends _VectorizeIndex ? VectorizeIndex : T extends _Queue<infer Body> ? Queue<Body> : T extends _AnalyticsEngineDataset ? AnalyticsEngineDataset : T extends _Pipeline<infer R> ? Pipeline<R> : T extends _RateLimit ? RateLimit : T extends string ? T : T extends BrowserRendering ? Fetcher : T extends _Ai<infer M> ? Ai<M> : T extends _Images ? ImagesBinding : T extends _VersionMetadata ? WorkerVersionMetadata : T extends Self ? Service : T extends Json<infer T> ? T : T extends _Container<infer Obj> ? DurableObjectNamespace<Obj & Rpc.DurableObjectBranded> : Service;
35
+ } ? Service : T extends _R2Bucket ? R2Bucket : T extends _Hyperdrive | HyperdriveRef ? Hyperdrive : T extends Secret ? string : T extends CloudflareSecret | CloudflareSecretRef ? SecretsStoreSecret : T extends SecretKey ? CryptoKey : T extends Assets ? Service : T extends _Workflow<infer P> ? Workflow<P> : T extends _D1Database ? D1Database : T extends DispatchNamespace ? DispatchNamespace : T extends _WorkerLoader ? WorkerLoader : T extends _VectorizeIndex ? VectorizeIndex : T extends _Queue<infer Body> ? Queue<Body> : T extends _AnalyticsEngineDataset ? AnalyticsEngineDataset : T extends _Pipeline<infer R> ? Pipeline<R> : T extends _RateLimit ? RateLimit : T extends string ? T : T extends BrowserRendering ? Fetcher : T extends _Ai<infer M> ? Ai<M> : T extends _Images ? ImagesBinding : T extends _VersionMetadata ? WorkerVersionMetadata : T extends Self ? Service : T extends Json<infer T> ? T : T extends _Container<infer Obj> ? DurableObjectNamespace<Obj & Rpc.DurableObjectBranded> : T extends undefined ? undefined : Service;
36
36
  export {};
37
37
  //# sourceMappingURL=bound.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bound.d.ts","sourceRoot":"","sources":["../../src/cloudflare/bound.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bound.d.ts","sourceRoot":"","sources":["../../src/cloudflare/bound.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"miniflare-worker-proxy.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/miniflare-worker-proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,WAAW,CAAC;AAOvC,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,GAAG,CAAC;IACT,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,wBAAsB,0BAA0B,CAAC,OAAO,EAAE;IACxD,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAClD,aAAa,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,MAAM,CAAC;IAChD,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC;IAC/B,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;CAC1B;;;GAwFA;AAED,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,GAAG,CAAC;IACT,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC;IAC3B,IAAI,EAAE,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC;IACrC,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAoDD,qBAAa,yBAA0B,SAAQ,KAAK;IAGhD,QAAQ,CAAC,MAAM,EAAE,MAAM;gBADvB,OAAO,EAAE,MAAM,EACN,MAAM,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,YAAY;IAKxB,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC,QAAQ;IAkBxD,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,yBAAyB;CAQ9D"}
1
+ {"version":3,"file":"miniflare-worker-proxy.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/miniflare-worker-proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,WAAW,CAAC;AAOvC,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,GAAG,CAAC;IACT,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,wBAAsB,0BAA0B,CAAC,OAAO,EAAE;IACxD,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAClD,aAAa,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,MAAM,CAAC;IAChD,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC;IAC/B,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;CAC1B;;;GAqFA;AAED,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,GAAG,CAAC;IACT,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC;IAC3B,IAAI,EAAE,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC;IACrC,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAoDD,qBAAa,yBAA0B,SAAQ,KAAK;IAGhD,QAAQ,CAAC,MAAM,EAAE,MAAM;gBADvB,OAAO,EAAE,MAAM,EACN,MAAM,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,YAAY;IAKxB,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC,QAAQ;IAkBxD,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,yBAAyB;CAQ9D"}
@@ -3,20 +3,14 @@ import { once } from "node:events";
3
3
  import http from "node:http";
4
4
  import { Readable } from "node:stream";
5
5
  import { WebSocket, WebSocketServer } from "ws";
6
- import { coupleWebSocket } from "../../util/http.js";
6
+ import { createUpgradeHandler } from "../../util/http.js";
7
7
  export async function createMiniflareWorkerProxy(options) {
8
8
  const server = http.createServer();
9
9
  const wss = new WebSocketServer({ noServer: true });
10
- server.on("upgrade", async (req, socket, head) => {
11
- try {
12
- const server = await createServerWebSocket(req);
13
- coupleWebSocket(wss, req, socket, head, server);
14
- }
15
- catch (error) {
16
- console.error(error);
17
- socket.destroy();
18
- }
19
- });
10
+ server.on("upgrade", createUpgradeHandler({
11
+ wss,
12
+ createServerWebSocket: (req) => createServerWebSocket(req),
13
+ }));
20
14
  server.on("request", async (req, res) => {
21
15
  try {
22
16
  const response = await handleFetch(req);
@@ -61,13 +55,11 @@ export async function createMiniflareWorkerProxy(options) {
61
55
  const info = parseIncomingMessage(req);
62
56
  options.transformRequest?.(info);
63
57
  const name = options.getWorkerName(info);
64
- const server = new WebSocket(url, protocols, {
58
+ return new WebSocket(url, protocols, {
65
59
  headers: {
66
60
  "MF-Route-Override": name,
67
61
  },
68
62
  });
69
- await once(server, "open");
70
- return server;
71
63
  };
72
64
  server.listen(options.port);
73
65
  await once(server, "listening");
@@ -1 +1 @@
1
- {"version":3,"file":"miniflare-worker-proxy.js","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/miniflare-worker-proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"miniflare-worker-proxy.js","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/miniflare-worker-proxy.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"remote-binding-proxy.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/remote-binding-proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAsBxD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,gBAAgB,EAAE,2BAA2B,CAAC;CAC/C;AAED,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD,GAAG,EAAE,aAAa,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,iBAAiB,EAAE,CAAC;CAC/B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAoE9B"}
1
+ {"version":3,"file":"remote-binding-proxy.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/miniflare/remote-binding-proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAsBxD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,gBAAgB,EAAE,2BAA2B,CAAC;CAC/C;AAED,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD,GAAG,EAAE,aAAa,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,iBAAiB,EAAE,CAAC;CAC/B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA4E9B"}
@@ -28,11 +28,19 @@ export async function createRemoteProxyWorker(input) {
28
28
  websocket: async (req) => {
29
29
  const input = new URL(req.url);
30
30
  const proxied = new URL(input.pathname + input.search, `https://${host}`);
31
+ const headers = {
32
+ "cf-workers-preview-token": token,
33
+ host,
34
+ };
35
+ // We don't want to include all headers because some can mess with websocket connections.
36
+ // However, it's important to include `mf-` prefixed headers to configure bindings for miniflare to work.
37
+ req.headers.forEach((value, key) => {
38
+ if (key.startsWith("mf-")) {
39
+ headers[key] = value;
40
+ }
41
+ });
31
42
  return new WebSocket(proxied, {
32
- headers: {
33
- "cf-workers-preview-token": token,
34
- host,
35
- },
43
+ headers,
36
44
  });
37
45
  },
38
46
  fetch: async (req) => {