@nightintelligence/cloudflare-workers-utils 0.35.0-patch2 → 0.35.0-patch3

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 (53) hide show
  1. package/dist/browser.mjs +2 -2
  2. package/dist/browser.mjs.map +1 -1
  3. package/dist/chunk-PAWJFY3S.mjs +6 -0
  4. package/dist/{chunk-6LYDFTTF.mjs.map → chunk-PAWJFY3S.mjs.map} +1 -1
  5. package/dist/compatibility-date.mjs +42 -2
  6. package/dist/compatibility-date.mjs.map +1 -1
  7. package/dist/compliance.mjs +2 -7
  8. package/dist/compliance.mjs.map +1 -1
  9. package/dist/docker-path.mjs +11 -3
  10. package/dist/docker-path.mjs.map +1 -1
  11. package/dist/errors.mjs +61 -2
  12. package/dist/errors.mjs.map +1 -1
  13. package/dist/fs-helpers.mjs +33 -2
  14. package/dist/fs-helpers.mjs.map +1 -1
  15. package/dist/global-wrangler-config-path.mjs +28 -3
  16. package/dist/global-wrangler-config-path.mjs.map +1 -1
  17. package/dist/index.mjs +54 -26124
  18. package/dist/index.mjs.map +1 -1
  19. package/dist/local-env.mjs +5 -80
  20. package/dist/local-env.mjs.map +1 -1
  21. package/dist/metafile-esm.json +1 -1
  22. package/dist/prometheus-metrics.mjs +51 -2
  23. package/dist/prometheus-metrics.mjs.map +1 -1
  24. package/dist/test-helpers/index.mjs +7 -308
  25. package/dist/test-helpers/index.mjs.map +1 -1
  26. package/dist/zod-format.mjs +235 -2
  27. package/dist/zod-format.mjs.map +1 -1
  28. package/package.json +1 -1
  29. package/dist/chunk-3D4BXUZX.mjs +0 -54
  30. package/dist/chunk-3D4BXUZX.mjs.map +0 -1
  31. package/dist/chunk-4RE36JUD.mjs +0 -3160
  32. package/dist/chunk-4RE36JUD.mjs.map +0 -1
  33. package/dist/chunk-6LYDFTTF.mjs +0 -40
  34. package/dist/chunk-CPLEE7LH.mjs +0 -64
  35. package/dist/chunk-CPLEE7LH.mjs.map +0 -1
  36. package/dist/chunk-G5FCNCLK.mjs +0 -47
  37. package/dist/chunk-G5FCNCLK.mjs.map +0 -1
  38. package/dist/chunk-IGC3TZGH.mjs +0 -157
  39. package/dist/chunk-IGC3TZGH.mjs.map +0 -1
  40. package/dist/chunk-NXPJWJ2B.mjs +0 -180
  41. package/dist/chunk-NXPJWJ2B.mjs.map +0 -1
  42. package/dist/chunk-OPAKTV2K.mjs +0 -75
  43. package/dist/chunk-OPAKTV2K.mjs.map +0 -1
  44. package/dist/chunk-VKFVZ67V.mjs +0 -35
  45. package/dist/chunk-VKFVZ67V.mjs.map +0 -1
  46. package/dist/chunk-W7DIL5J2.mjs +0 -267
  47. package/dist/chunk-W7DIL5J2.mjs.map +0 -1
  48. package/dist/chunk-ZLUHKBEC.mjs +0 -44
  49. package/dist/chunk-ZLUHKBEC.mjs.map +0 -1
  50. package/dist/chunk-ZQ2EZEOC.mjs +0 -477
  51. package/dist/chunk-ZQ2EZEOC.mjs.map +0 -1
  52. package/dist/open-OYMIZX6T.mjs +0 -609
  53. package/dist/open-OYMIZX6T.mjs.map +0 -1
@@ -1,477 +0,0 @@
1
- import { __name } from './chunk-6LYDFTTF.mjs';
2
-
3
- // src/default-compat-date.ts
4
- var DEFAULT_COMPAT_DATE = "2026-09-02";
5
-
6
- // src/assert-never.ts
7
- function assertNever(_value) {
8
- }
9
- __name(assertNever, "assertNever");
10
-
11
- // src/map-worker-metadata-bindings.ts
12
- function mapWorkerMetadataBindings(bindings) {
13
- return bindings.filter((binding) => binding.type !== "secret_text").reduce((configObj, binding) => {
14
- switch (binding.type) {
15
- case "plain_text":
16
- {
17
- configObj.vars = {
18
- ...configObj.vars ?? {},
19
- [binding.name]: binding.text
20
- };
21
- }
22
- break;
23
- case "json":
24
- {
25
- configObj.vars = {
26
- ...configObj.vars ?? {},
27
- [binding.name]: binding.json
28
- };
29
- }
30
- break;
31
- case "kv_namespace":
32
- {
33
- configObj.kv_namespaces = [
34
- ...configObj.kv_namespaces ?? [],
35
- { id: binding.namespace_id, binding: binding.name }
36
- ];
37
- }
38
- break;
39
- case "durable_object_namespace":
40
- {
41
- configObj.durable_objects = {
42
- bindings: [
43
- ...configObj.durable_objects?.bindings ?? [],
44
- {
45
- name: binding.name,
46
- class_name: binding.class_name,
47
- script_name: binding.script_name,
48
- environment: binding.environment
49
- }
50
- ]
51
- };
52
- }
53
- break;
54
- case "d1":
55
- {
56
- configObj.d1_databases = [
57
- ...configObj.d1_databases ?? [],
58
- {
59
- binding: binding.name,
60
- database_id: binding.id
61
- }
62
- ];
63
- }
64
- break;
65
- case "browser":
66
- {
67
- configObj.browser = {
68
- binding: binding.name
69
- };
70
- }
71
- break;
72
- case "ai":
73
- {
74
- configObj.ai = {
75
- binding: binding.name
76
- };
77
- }
78
- break;
79
- case "images":
80
- {
81
- configObj.images = {
82
- binding: binding.name
83
- };
84
- }
85
- break;
86
- case "stream":
87
- {
88
- configObj.stream = {
89
- binding: binding.name
90
- };
91
- }
92
- break;
93
- case "media":
94
- {
95
- configObj.media = {
96
- binding: binding.name
97
- };
98
- }
99
- break;
100
- case "r2_bucket":
101
- {
102
- configObj.r2_buckets = [
103
- ...configObj.r2_buckets ?? [],
104
- {
105
- binding: binding.name,
106
- bucket_name: binding.bucket_name,
107
- jurisdiction: binding.jurisdiction
108
- }
109
- ];
110
- }
111
- break;
112
- case "secrets_store_secret":
113
- {
114
- configObj.secrets_store_secrets = [
115
- ...configObj.secrets_store_secrets ?? [],
116
- {
117
- binding: binding.name,
118
- store_id: binding.store_id,
119
- secret_name: binding.secret_name
120
- }
121
- ];
122
- }
123
- break;
124
- case "artifacts":
125
- {
126
- configObj.artifacts = [
127
- ...configObj.artifacts ?? [],
128
- {
129
- binding: binding.name,
130
- namespace: binding.namespace
131
- }
132
- ];
133
- }
134
- break;
135
- case "unsafe_hello_world": {
136
- configObj.unsafe_hello_world = [
137
- ...configObj.unsafe_hello_world ?? [],
138
- {
139
- binding: binding.name,
140
- enable_timer: binding.enable_timer
141
- }
142
- ];
143
- break;
144
- }
145
- case "flagship": {
146
- configObj.flagship = [
147
- ...configObj.flagship ?? [],
148
- {
149
- binding: binding.name,
150
- app_id: binding.app_id
151
- }
152
- ];
153
- break;
154
- }
155
- case "service":
156
- {
157
- configObj.services = [
158
- ...configObj.services ?? [],
159
- {
160
- binding: binding.name,
161
- service: binding.service,
162
- environment: binding.environment,
163
- entrypoint: binding.entrypoint
164
- }
165
- ];
166
- }
167
- break;
168
- case "analytics_engine":
169
- {
170
- configObj.analytics_engine_datasets = [
171
- ...configObj.analytics_engine_datasets ?? [],
172
- { binding: binding.name, dataset: binding.dataset }
173
- ];
174
- }
175
- break;
176
- case "dispatch_namespace":
177
- {
178
- configObj.dispatch_namespaces = [
179
- ...configObj.dispatch_namespaces ?? [],
180
- {
181
- binding: binding.name,
182
- namespace: binding.namespace,
183
- ...binding.outbound && {
184
- outbound: {
185
- service: binding.outbound.worker.service,
186
- environment: binding.outbound.worker.environment,
187
- parameters: binding.outbound.params?.map((p) => p.name) ?? []
188
- }
189
- }
190
- }
191
- ];
192
- }
193
- break;
194
- case "logfwdr":
195
- {
196
- configObj.logfwdr = {
197
- bindings: [
198
- ...configObj.logfwdr?.bindings ?? [],
199
- { name: binding.name, destination: binding.destination }
200
- ]
201
- };
202
- }
203
- break;
204
- case "wasm_module":
205
- {
206
- configObj.wasm_modules = {
207
- ...configObj.wasm_modules ?? {},
208
- [binding.name]: binding.part
209
- };
210
- }
211
- break;
212
- case "text_blob":
213
- {
214
- configObj.text_blobs = {
215
- ...configObj.text_blobs ?? {},
216
- [binding.name]: binding.part
217
- };
218
- }
219
- break;
220
- case "data_blob":
221
- {
222
- configObj.data_blobs = {
223
- ...configObj.data_blobs ?? {},
224
- [binding.name]: binding.part
225
- };
226
- }
227
- break;
228
- case "secret_text":
229
- break;
230
- case "version_metadata": {
231
- {
232
- configObj.version_metadata = {
233
- binding: binding.name
234
- };
235
- }
236
- break;
237
- }
238
- case "send_email": {
239
- configObj.send_email = [
240
- ...configObj.send_email ?? [],
241
- {
242
- name: binding.name,
243
- destination_address: binding.destination_address,
244
- allowed_destination_addresses: binding.allowed_destination_addresses,
245
- allowed_sender_addresses: binding.allowed_sender_addresses
246
- }
247
- ];
248
- break;
249
- }
250
- case "queue":
251
- configObj.queues ??= { producers: [] };
252
- configObj.queues.producers = [
253
- ...configObj.queues.producers ?? [],
254
- {
255
- binding: binding.name,
256
- queue: binding.queue_name,
257
- delivery_delay: binding.delivery_delay
258
- }
259
- ];
260
- break;
261
- case "vectorize":
262
- configObj.vectorize = [
263
- ...configObj.vectorize ?? [],
264
- {
265
- binding: binding.name,
266
- index_name: binding.index_name
267
- }
268
- ];
269
- break;
270
- case "ai_search_namespace":
271
- configObj.ai_search_namespaces = [
272
- ...configObj.ai_search_namespaces ?? [],
273
- {
274
- binding: binding.name,
275
- namespace: binding.namespace
276
- }
277
- ];
278
- break;
279
- case "ai_search":
280
- configObj.ai_search = [
281
- ...configObj.ai_search ?? [],
282
- {
283
- binding: binding.name,
284
- instance_name: binding.instance_name
285
- }
286
- ];
287
- break;
288
- case "websearch":
289
- {
290
- configObj.websearch = {
291
- binding: binding.name
292
- };
293
- }
294
- break;
295
- case "agent_memory": {
296
- configObj.agent_memory = [
297
- ...configObj.agent_memory ?? [],
298
- {
299
- binding: binding.name,
300
- namespace: binding.namespace
301
- }
302
- ];
303
- break;
304
- }
305
- case "hyperdrive":
306
- configObj.hyperdrive = [
307
- ...configObj.hyperdrive ?? [],
308
- {
309
- binding: binding.name,
310
- id: binding.id
311
- }
312
- ];
313
- break;
314
- case "mtls_certificate":
315
- configObj.mtls_certificates = [
316
- ...configObj.mtls_certificates ?? [],
317
- {
318
- binding: binding.name,
319
- certificate_id: binding.certificate_id
320
- }
321
- ];
322
- break;
323
- case "pipelines":
324
- configObj.pipelines = [
325
- ...configObj.pipelines ?? [],
326
- {
327
- binding: binding.name,
328
- // NOTE: stream is the primary field, but we also support pipeline for backward compatibility
329
- ...binding.stream && { stream: binding.stream },
330
- ...binding.pipeline && { pipeline: binding.pipeline }
331
- }
332
- ];
333
- break;
334
- case "assets":
335
- configObj.assets = {
336
- binding: binding.name
337
- // Note: we currently don't get all the assets information from the
338
- // API, so here we are only able to set the name of the binding
339
- // hopefully in the future we can properly fully support the binding
340
- };
341
- break;
342
- case "inherit":
343
- configObj.unsafe = {
344
- bindings: [...configObj.unsafe?.bindings ?? [], binding],
345
- metadata: configObj.unsafe?.metadata ?? void 0
346
- };
347
- break;
348
- case "workflow":
349
- {
350
- configObj.workflows = [
351
- ...configObj.workflows ?? [],
352
- {
353
- binding: binding.name,
354
- name: binding.workflow_name,
355
- class_name: binding.class_name,
356
- script_name: binding.script_name
357
- }
358
- ];
359
- }
360
- break;
361
- case "worker_loader":
362
- {
363
- configObj.worker_loaders = [
364
- ...configObj.worker_loaders ?? [],
365
- {
366
- binding: binding.name
367
- }
368
- ];
369
- }
370
- break;
371
- case "ratelimit":
372
- {
373
- configObj.ratelimits = [
374
- ...configObj.ratelimits ?? [],
375
- {
376
- name: binding.name,
377
- namespace_id: binding.namespace_id,
378
- simple: {
379
- limit: binding.simple.limit,
380
- period: binding.simple.period
381
- }
382
- }
383
- ];
384
- }
385
- break;
386
- case "vpc_service":
387
- {
388
- configObj.vpc_services = [
389
- ...configObj.vpc_services ?? [],
390
- {
391
- binding: binding.name,
392
- service_id: binding.service_id
393
- }
394
- ];
395
- }
396
- break;
397
- case "vpc_network":
398
- {
399
- if (binding.tunnel_id !== void 0) {
400
- configObj.vpc_networks = [
401
- ...configObj.vpc_networks ?? [],
402
- { binding: binding.name, tunnel_id: binding.tunnel_id }
403
- ];
404
- } else if (binding.network_id !== void 0) {
405
- configObj.vpc_networks = [
406
- ...configObj.vpc_networks ?? [],
407
- { binding: binding.name, network_id: binding.network_id }
408
- ];
409
- }
410
- }
411
- break;
412
- default: {
413
- configObj.unsafe = {
414
- bindings: [...configObj.unsafe?.bindings ?? [], binding],
415
- metadata: configObj.unsafe?.metadata ?? void 0
416
- };
417
- }
418
- }
419
- return configObj;
420
- }, {});
421
- }
422
- __name(mapWorkerMetadataBindings, "mapWorkerMetadataBindings");
423
-
424
- // src/construct-wrangler-config.ts
425
- function constructWranglerConfig(config) {
426
- const mappedBindings = mapWorkerMetadataBindings(config.bindings);
427
- const durableObjectClassNames = config.bindings.filter(
428
- (binding) => binding.type === "durable_object_namespace" && binding.script_name === config.name
429
- ).map(
430
- (durableObject) => durableObject.class_name
431
- );
432
- const allRoutes = [
433
- ...config.routes.map((r) => ({
434
- pattern: r.pattern,
435
- zone_name: r.zone_name
436
- })),
437
- ...config.domains.map((c) => ({
438
- pattern: c.hostname,
439
- zone_name: c.zone_name,
440
- custom_domain: true,
441
- enabled: c.enabled,
442
- previews_enabled: c.previews_enabled
443
- }))
444
- ];
445
- return {
446
- name: config.name,
447
- main: config.entrypoint,
448
- workers_dev: config.subdomain.enabled,
449
- preview_urls: config.subdomain.previews_enabled,
450
- compatibility_date: config.compatibility_date ?? DEFAULT_COMPAT_DATE,
451
- compatibility_flags: config.compatibility_flags,
452
- ...allRoutes.length ? { routes: allRoutes } : {},
453
- placement: config.placement?.mode === "smart" ? { mode: "smart" } : void 0,
454
- limits: config.limits,
455
- ...durableObjectClassNames.length && config.migration_tag ? {
456
- migrations: [
457
- {
458
- tag: config.migration_tag,
459
- new_classes: durableObjectClassNames
460
- }
461
- ]
462
- } : {},
463
- ...config.schedules.length ? {
464
- triggers: {
465
- crons: config.schedules.map((scheduled) => scheduled.cron)
466
- }
467
- } : {},
468
- tail_consumers: config.tail_consumers ?? void 0,
469
- observability: config.observability,
470
- ...mappedBindings
471
- };
472
- }
473
- __name(constructWranglerConfig, "constructWranglerConfig");
474
-
475
- export { DEFAULT_COMPAT_DATE, assertNever, constructWranglerConfig, mapWorkerMetadataBindings };
476
- //# sourceMappingURL=chunk-ZQ2EZEOC.mjs.map
477
- //# sourceMappingURL=chunk-ZQ2EZEOC.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/default-compat-date.ts","../src/assert-never.ts","../src/map-worker-metadata-bindings.ts","../src/construct-wrangler-config.ts"],"names":[],"mappings":"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","file":"chunk-ZQ2EZEOC.mjs","sourcesContent":["import type { CompatDate } from \"./compatibility-date\";\n\n/**\n * The compatibility date to use when the user has not specified one.\n *\n * This is the release date of the `workerd` version pinned in the pnpm catalog,\n * so it is fixed for a given release of workers-sdk and updated whenever\n * `workerd` is upgraded.\n *\n * It deliberately tracks `workerd` rather than the current date, because\n * workerd rejects a compatibility date later than either of:\n *\n * - its `MAXIMUM_COMPATIBILITY_DATE`, which is its release date plus 7 days, or\n * - today's date (UTC).\n *\n * Run `pnpm update:compat-date` to refresh this value; `pnpm check:compat-date`\n * asserts that it matches the pinned `workerd` version.\n *\n * @see https://github.com/cloudflare/workerd/blob/main/src/workerd/io/BUILD.bazel\n * @see https://github.com/cloudflare/workerd/blob/main/src/workerd/io/compatibility-date.c%2B%2B\n */\nexport const DEFAULT_COMPAT_DATE: CompatDate = \"2026-09-02\";\n","export function assertNever(_value: never) {}\n","import { assertNever } from \"./assert-never\";\nimport type { RawConfig } from \"./config\";\nimport type { WorkerMetadataBinding } from \"./types\";\n\n/**\n * Maps a set of bindings defined as worker metadata bindings (straight from the Cloudflare API) to bindings defined in the local format.\n *\n * @param bindings The set of worker metadata bindings to convert\n * @param accountId The ID of the account\n * @param complianceConfig The compliance region configuration\n * @returns A RawConfig object with its bindings populated based on the provided bindings\n */\nexport function mapWorkerMetadataBindings(\n\tbindings: WorkerMetadataBinding[]\n): RawConfig {\n\treturn (\n\t\tbindings\n\t\t\t.filter((binding) => (binding.type as string) !== \"secret_text\")\n\t\t\t// Combine the same types into {[type]: [binding]}\n\t\t\t.reduce((configObj, binding) => {\n\t\t\t\t// Some types have different names in wrangler.toml\n\t\t\t\t// I want the type safety of the binding being destructured after the case narrowing the union but type is unused\n\n\t\t\t\tswitch (binding.type) {\n\t\t\t\t\tcase \"plain_text\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.vars = {\n\t\t\t\t\t\t\t\t...(configObj.vars ?? {}),\n\t\t\t\t\t\t\t\t[binding.name]: binding.text,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"json\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.vars = {\n\t\t\t\t\t\t\t\t...(configObj.vars ?? {}),\n\t\t\t\t\t\t\t\t[binding.name]: binding.json,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"kv_namespace\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.kv_namespaces = [\n\t\t\t\t\t\t\t\t...(configObj.kv_namespaces ?? []),\n\t\t\t\t\t\t\t\t{ id: binding.namespace_id, binding: binding.name },\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"durable_object_namespace\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.durable_objects = {\n\t\t\t\t\t\t\t\tbindings: [\n\t\t\t\t\t\t\t\t\t...(configObj.durable_objects?.bindings ?? []),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tname: binding.name,\n\t\t\t\t\t\t\t\t\t\tclass_name: binding.class_name,\n\t\t\t\t\t\t\t\t\t\tscript_name: binding.script_name,\n\t\t\t\t\t\t\t\t\t\tenvironment: binding.environment,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"d1\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.d1_databases = [\n\t\t\t\t\t\t\t\t...(configObj.d1_databases ?? []),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\t\tdatabase_id: binding.id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"browser\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.browser = {\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"ai\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.ai = {\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"images\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.images = {\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"stream\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.stream = {\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"media\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.media = {\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"r2_bucket\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.r2_buckets = [\n\t\t\t\t\t\t\t\t...(configObj.r2_buckets ?? []),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\t\tbucket_name: binding.bucket_name,\n\t\t\t\t\t\t\t\t\tjurisdiction: binding.jurisdiction,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"secrets_store_secret\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.secrets_store_secrets = [\n\t\t\t\t\t\t\t\t...(configObj.secrets_store_secrets ?? []),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\t\tstore_id: binding.store_id,\n\t\t\t\t\t\t\t\t\tsecret_name: binding.secret_name,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"artifacts\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.artifacts = [\n\t\t\t\t\t\t\t\t...(configObj.artifacts ?? []),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\t\tnamespace: binding.namespace,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"unsafe_hello_world\": {\n\t\t\t\t\t\tconfigObj.unsafe_hello_world = [\n\t\t\t\t\t\t\t...(configObj.unsafe_hello_world ?? []),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\tenable_timer: binding.enable_timer,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"flagship\": {\n\t\t\t\t\t\tconfigObj.flagship = [\n\t\t\t\t\t\t\t...(configObj.flagship ?? []),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\tapp_id: binding.app_id,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"service\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.services = [\n\t\t\t\t\t\t\t\t...(configObj.services ?? []),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\t\tservice: binding.service,\n\t\t\t\t\t\t\t\t\tenvironment: binding.environment,\n\t\t\t\t\t\t\t\t\tentrypoint: binding.entrypoint,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"analytics_engine\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.analytics_engine_datasets = [\n\t\t\t\t\t\t\t\t...(configObj.analytics_engine_datasets ?? []),\n\t\t\t\t\t\t\t\t{ binding: binding.name, dataset: binding.dataset },\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"dispatch_namespace\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.dispatch_namespaces = [\n\t\t\t\t\t\t\t\t...(configObj.dispatch_namespaces ?? []),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\t\tnamespace: binding.namespace,\n\t\t\t\t\t\t\t\t\t...(binding.outbound && {\n\t\t\t\t\t\t\t\t\t\toutbound: {\n\t\t\t\t\t\t\t\t\t\t\tservice: binding.outbound.worker.service,\n\t\t\t\t\t\t\t\t\t\t\tenvironment: binding.outbound.worker.environment,\n\t\t\t\t\t\t\t\t\t\t\tparameters:\n\t\t\t\t\t\t\t\t\t\t\t\tbinding.outbound.params?.map((p) => p.name) ?? [],\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"logfwdr\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.logfwdr = {\n\t\t\t\t\t\t\t\tbindings: [\n\t\t\t\t\t\t\t\t\t...(configObj.logfwdr?.bindings ?? []),\n\t\t\t\t\t\t\t\t\t{ name: binding.name, destination: binding.destination },\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"wasm_module\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.wasm_modules = {\n\t\t\t\t\t\t\t\t...(configObj.wasm_modules ?? {}),\n\t\t\t\t\t\t\t\t[binding.name]: binding.part,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"text_blob\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.text_blobs = {\n\t\t\t\t\t\t\t\t...(configObj.text_blobs ?? {}),\n\t\t\t\t\t\t\t\t[binding.name]: binding.part,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"data_blob\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.data_blobs = {\n\t\t\t\t\t\t\t\t...(configObj.data_blobs ?? {}),\n\t\t\t\t\t\t\t\t[binding.name]: binding.part,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"secret_text\":\n\t\t\t\t\t\t// Ignore secrets\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"version_metadata\": {\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.version_metadata = {\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"send_email\": {\n\t\t\t\t\t\tconfigObj.send_email = [\n\t\t\t\t\t\t\t...(configObj.send_email ?? []),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tname: binding.name,\n\t\t\t\t\t\t\t\tdestination_address: binding.destination_address,\n\t\t\t\t\t\t\t\tallowed_destination_addresses:\n\t\t\t\t\t\t\t\t\tbinding.allowed_destination_addresses,\n\t\t\t\t\t\t\t\tallowed_sender_addresses: binding.allowed_sender_addresses,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"queue\":\n\t\t\t\t\t\tconfigObj.queues ??= { producers: [] };\n\t\t\t\t\t\tconfigObj.queues.producers = [\n\t\t\t\t\t\t\t...(configObj.queues.producers ?? []),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\tqueue: binding.queue_name,\n\t\t\t\t\t\t\t\tdelivery_delay: binding.delivery_delay,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"vectorize\":\n\t\t\t\t\t\tconfigObj.vectorize = [\n\t\t\t\t\t\t\t...(configObj.vectorize ?? []),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\tindex_name: binding.index_name,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"ai_search_namespace\":\n\t\t\t\t\t\tconfigObj.ai_search_namespaces = [\n\t\t\t\t\t\t\t...(configObj.ai_search_namespaces ?? []),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\tnamespace: binding.namespace,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"ai_search\":\n\t\t\t\t\t\tconfigObj.ai_search = [\n\t\t\t\t\t\t\t...(configObj.ai_search ?? []),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\tinstance_name: binding.instance_name,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"websearch\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.websearch = {\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"agent_memory\": {\n\t\t\t\t\t\tconfigObj.agent_memory = [\n\t\t\t\t\t\t\t...(configObj.agent_memory ?? []),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\tnamespace: binding.namespace,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"hyperdrive\":\n\t\t\t\t\t\tconfigObj.hyperdrive = [\n\t\t\t\t\t\t\t...(configObj.hyperdrive ?? []),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\tid: binding.id,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"mtls_certificate\":\n\t\t\t\t\t\tconfigObj.mtls_certificates = [\n\t\t\t\t\t\t\t...(configObj.mtls_certificates ?? []),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\tcertificate_id: binding.certificate_id,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"pipelines\":\n\t\t\t\t\t\tconfigObj.pipelines = [\n\t\t\t\t\t\t\t...(configObj.pipelines ?? []),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\t// NOTE: stream is the primary field, but we also support pipeline for backward compatibility\n\t\t\t\t\t\t\t\t...(binding.stream && { stream: binding.stream }),\n\n\t\t\t\t\t\t\t\t...(binding.pipeline && { pipeline: binding.pipeline }),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"assets\":\n\t\t\t\t\t\tconfigObj.assets = {\n\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t// Note: we currently don't get all the assets information from the\n\t\t\t\t\t\t\t// API, so here we are only able to set the name of the binding\n\t\t\t\t\t\t\t// hopefully in the future we can properly fully support the binding\n\t\t\t\t\t\t};\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"inherit\":\n\t\t\t\t\t\tconfigObj.unsafe = {\n\t\t\t\t\t\t\tbindings: [...(configObj.unsafe?.bindings ?? []), binding],\n\t\t\t\t\t\t\tmetadata: configObj.unsafe?.metadata ?? undefined,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"workflow\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.workflows = [\n\t\t\t\t\t\t\t\t...(configObj.workflows ?? []),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\t\tname: binding.workflow_name,\n\t\t\t\t\t\t\t\t\tclass_name: binding.class_name,\n\t\t\t\t\t\t\t\t\tscript_name: binding.script_name,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"worker_loader\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.worker_loaders = [\n\t\t\t\t\t\t\t\t...(configObj.worker_loaders ?? []),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"ratelimit\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.ratelimits = [\n\t\t\t\t\t\t\t\t...(configObj.ratelimits ?? []),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tname: binding.name,\n\t\t\t\t\t\t\t\t\tnamespace_id: binding.namespace_id,\n\t\t\t\t\t\t\t\t\tsimple: {\n\t\t\t\t\t\t\t\t\t\tlimit: binding.simple.limit,\n\t\t\t\t\t\t\t\t\t\tperiod: binding.simple.period,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"vpc_service\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfigObj.vpc_services = [\n\t\t\t\t\t\t\t\t...(configObj.vpc_services ?? []),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbinding: binding.name,\n\t\t\t\t\t\t\t\t\tservice_id: binding.service_id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"vpc_network\":\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tif (binding.tunnel_id !== undefined) {\n\t\t\t\t\t\t\t\tconfigObj.vpc_networks = [\n\t\t\t\t\t\t\t\t\t...(configObj.vpc_networks ?? []),\n\t\t\t\t\t\t\t\t\t{ binding: binding.name, tunnel_id: binding.tunnel_id },\n\t\t\t\t\t\t\t\t];\n\t\t\t\t\t\t\t} else if (binding.network_id !== undefined) {\n\t\t\t\t\t\t\t\tconfigObj.vpc_networks = [\n\t\t\t\t\t\t\t\t\t...(configObj.vpc_networks ?? []),\n\t\t\t\t\t\t\t\t\t{ binding: binding.name, network_id: binding.network_id },\n\t\t\t\t\t\t\t\t];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault: {\n\t\t\t\t\t\tconfigObj.unsafe = {\n\t\t\t\t\t\t\tbindings: [...(configObj.unsafe?.bindings ?? []), binding],\n\t\t\t\t\t\t\tmetadata: configObj.unsafe?.metadata ?? undefined,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tassertNever(binding);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn configObj;\n\t\t\t}, {} as RawConfig)\n\t);\n}\n","import { DEFAULT_COMPAT_DATE } from \"./default-compat-date\";\nimport { mapWorkerMetadataBindings } from \"./map-worker-metadata-bindings\";\nimport type { RawConfig } from \"./config\";\nimport type {\n\tCustomDomainRoute,\n\tRoute,\n\tTailConsumer,\n\tZoneNameRoute,\n} from \"./config/environment\";\nimport type { WorkerMetadata } from \"./types\";\nimport type { AssetConfig } from \"@cloudflare/workers-shared\";\nimport type { Cloudflare } from \"cloudflare\";\n\ntype RoutesRes = {\n\tid: string;\n\tpattern: string;\n\tzone_name: string;\n\tscript: string;\n}[];\n\ninterface APIWorkerConfig {\n\t/* sourced from https://developers.cloudflare.com/api/resources/workers/subresources/scripts/methods/list/ */\n\tname: string; // property renamed from `id`...\n\tentrypoint: string;\n\ttags: string[] | null;\n\tcompatibility_date: string;\n\tcompatibility_flags: string[];\n\tlogpush: boolean | undefined;\n\troutes: RoutesRes;\n\ttail_consumers: TailConsumer[] | undefined | null;\n\tmigration_tag?: string;\n\n\t/* sourced from https://developers.cloudflare.com/api/resources/workers/subresources/domains/methods/list/ */\n\tdomains: Cloudflare.Workers.Domain[];\n\t/* sourced from https://developers.cloudflare.com/api/resources/workers/subresources/scripts/subresources/schedules/methods/get/ */\n\tschedules: Cloudflare.Workers.Scripts.Schedules.ScheduleGetResponse.Schedule[];\n\n\t/* sourced from https://developers.cloudflare.com/api/resources/workers/subresources/beta/subresources/workers/subresources/versions/methods/get/ using `{version_id}` of `latest` */\n\tassets?: AssetConfig;\n\tbindings: WorkerMetadata[\"bindings\"];\n\tobservability: Cloudflare.Workers.Beta.Worker.Observability | undefined;\n\tlimits: { cpu_ms?: number; subrequests?: number } | undefined;\n\tplacement: Cloudflare.Workers.Beta.Workers.Version.Placement | undefined;\n\tsubdomain: {\n\t\tenabled: boolean;\n\t\tpreviews_enabled: boolean;\n\t};\n}\n\n/**\n * Given information about a Worker,\n * construct a Wrangler config file for the application.\n *\n * @param config - The Worker configuration sourced from the Cloudflare API\n * @returns A Wrangler-compatible raw config object\n */\nexport function constructWranglerConfig(config: APIWorkerConfig): RawConfig {\n\tconst mappedBindings = mapWorkerMetadataBindings(config.bindings);\n\n\tconst durableObjectClassNames = config.bindings\n\t\t.filter(\n\t\t\t(binding) =>\n\t\t\t\tbinding.type === \"durable_object_namespace\" &&\n\t\t\t\tbinding.script_name === config.name\n\t\t)\n\t\t.map(\n\t\t\t(durableObject) => (durableObject as { class_name: string }).class_name\n\t\t);\n\n\tconst allRoutes: Route[] = [\n\t\t...config.routes.map<ZoneNameRoute>((r) => ({\n\t\t\tpattern: r.pattern,\n\t\t\tzone_name: r.zone_name,\n\t\t})),\n\t\t...config.domains.map<CustomDomainRoute>((c) => ({\n\t\t\tpattern: c.hostname as string,\n\t\t\tzone_name: c.zone_name,\n\t\t\tcustom_domain: true,\n\t\t\tenabled: (c as typeof c & { enabled: boolean }).enabled,\n\t\t\tpreviews_enabled: (c as typeof c & { previews_enabled: boolean })\n\t\t\t\t.previews_enabled,\n\t\t})),\n\t];\n\n\treturn {\n\t\tname: config.name,\n\t\tmain: config.entrypoint,\n\t\tworkers_dev: config.subdomain.enabled,\n\t\tpreview_urls: config.subdomain.previews_enabled,\n\t\tcompatibility_date: config.compatibility_date ?? DEFAULT_COMPAT_DATE,\n\t\tcompatibility_flags: config.compatibility_flags,\n\t\t...(allRoutes.length ? { routes: allRoutes } : {}),\n\t\tplacement:\n\t\t\tconfig.placement?.mode === \"smart\" ? { mode: \"smart\" } : undefined,\n\t\tlimits: config.limits,\n\t\t...(durableObjectClassNames.length && config.migration_tag\n\t\t\t? {\n\t\t\t\t\tmigrations: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttag: config.migration_tag,\n\t\t\t\t\t\t\tnew_classes: durableObjectClassNames,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t: {}),\n\t\t...(config.schedules.length\n\t\t\t? {\n\t\t\t\t\ttriggers: {\n\t\t\t\t\t\tcrons: config.schedules.map((scheduled) => scheduled.cron),\n\t\t\t\t\t},\n\t\t\t\t}\n\t\t\t: {}),\n\t\ttail_consumers: config.tail_consumers ?? undefined,\n\t\tobservability: config.observability,\n\t\t...mappedBindings,\n\t};\n}\n"]}