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

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 (49) hide show
  1. package/dist/browser.mjs +2 -2
  2. package/dist/browser.mjs.map +1 -1
  3. package/dist/chunk-47QFQIPP.mjs +180 -0
  4. package/dist/chunk-47QFQIPP.mjs.map +1 -0
  5. package/dist/chunk-555CCIJE.mjs +75 -0
  6. package/dist/chunk-555CCIJE.mjs.map +1 -0
  7. package/dist/chunk-CGILA3WO.mjs +12 -0
  8. package/dist/{chunk-PAWJFY3S.mjs.map → chunk-CGILA3WO.mjs.map} +1 -1
  9. package/dist/chunk-FEHWZI5W.mjs +54 -0
  10. package/dist/chunk-FEHWZI5W.mjs.map +1 -0
  11. package/dist/chunk-KAEJMITB.mjs +64 -0
  12. package/dist/chunk-KAEJMITB.mjs.map +1 -0
  13. package/dist/chunk-T6I7NOR4.mjs +35 -0
  14. package/dist/chunk-T6I7NOR4.mjs.map +1 -0
  15. package/dist/chunk-VTOON473.mjs +237 -0
  16. package/dist/chunk-VTOON473.mjs.map +1 -0
  17. package/dist/chunk-W4SU7D4X.mjs +575 -0
  18. package/dist/chunk-W4SU7D4X.mjs.map +1 -0
  19. package/dist/chunk-YTEYGQOX.mjs +157 -0
  20. package/dist/chunk-YTEYGQOX.mjs.map +1 -0
  21. package/dist/chunk-Z7Q743IF.mjs +477 -0
  22. package/dist/chunk-Z7Q743IF.mjs.map +1 -0
  23. package/dist/chunk-ZZBYXY7A.mjs +44 -0
  24. package/dist/chunk-ZZBYXY7A.mjs.map +1 -0
  25. package/dist/compatibility-date.mjs +2 -42
  26. package/dist/compatibility-date.mjs.map +1 -1
  27. package/dist/compliance.mjs +6 -2
  28. package/dist/compliance.mjs.map +1 -1
  29. package/dist/docker-path.mjs +3 -11
  30. package/dist/docker-path.mjs.map +1 -1
  31. package/dist/errors.mjs +2 -61
  32. package/dist/errors.mjs.map +1 -1
  33. package/dist/fs-helpers.mjs +2 -33
  34. package/dist/fs-helpers.mjs.map +1 -1
  35. package/dist/global-wrangler-config-path.mjs +3 -28
  36. package/dist/global-wrangler-config-path.mjs.map +1 -1
  37. package/dist/index.mjs +9398 -54
  38. package/dist/index.mjs.map +1 -1
  39. package/dist/local-env.mjs +3 -3
  40. package/dist/local-env.mjs.map +1 -1
  41. package/dist/metafile-esm.json +1 -1
  42. package/dist/prometheus-metrics.mjs +2 -51
  43. package/dist/prometheus-metrics.mjs.map +1 -1
  44. package/dist/test-helpers/index.mjs +307 -7
  45. package/dist/test-helpers/index.mjs.map +1 -1
  46. package/dist/zod-format.mjs +2 -235
  47. package/dist/zod-format.mjs.map +1 -1
  48. package/package.json +1 -1
  49. package/dist/chunk-PAWJFY3S.mjs +0 -6
@@ -0,0 +1,157 @@
1
+ import { isDirectory } from './chunk-T6I7NOR4.mjs';
2
+ import { __name } from './chunk-CGILA3WO.mjs';
3
+ import os from 'node:os';
4
+ import path from 'node:path';
5
+
6
+ function isWindows() {
7
+ return /^win/i.test(process.platform);
8
+ }
9
+ __name(isWindows, "isWindows");
10
+ function isMacOS() {
11
+ return /^darwin$/i.test(process.platform);
12
+ }
13
+ __name(isMacOS, "isMacOS");
14
+ function isNonEmpty(value) {
15
+ return !!value;
16
+ }
17
+ __name(isNonEmpty, "isNonEmpty");
18
+ function getEnv(name) {
19
+ return process.env[name];
20
+ }
21
+ __name(getEnv, "getEnv");
22
+ function normalizePath(p) {
23
+ return p ? path.normalize(path.join(p, ".")) : void 0;
24
+ }
25
+ __name(normalizePath, "normalizePath");
26
+ function homeDir() {
27
+ if (isWindows()) {
28
+ const priorityList = [
29
+ os.homedir(),
30
+ getEnv("USERPROFILE"),
31
+ getEnv("HOME"),
32
+ // NOTE: `os-paths@7` uses `||` here (not `&&`), so a home directory is
33
+ // derived even when only one of HOMEDRIVE/HOMEPATH is set. This is
34
+ // preserved deliberately for byte-for-byte parity — see the parity
35
+ // tests, which compare this branch against the real package.
36
+ getEnv("HOMEDRIVE") || getEnv("HOMEPATH") ? path.join(getEnv("HOMEDRIVE") ?? "", getEnv("HOMEPATH") ?? "") : void 0
37
+ ];
38
+ return normalizePath(priorityList.find(isNonEmpty));
39
+ }
40
+ return normalizePath(os.homedir() || getEnv("HOME"));
41
+ }
42
+ __name(homeDir, "homeDir");
43
+ function joinToBase(base, segments) {
44
+ return base ? path.join(base, ...segments) : void 0;
45
+ }
46
+ __name(joinToBase, "joinToBase");
47
+ function tempDir() {
48
+ if (isWindows()) {
49
+ const fallback2 = "C:\\Temp";
50
+ const priorityListLazy = [
51
+ () => os.tmpdir(),
52
+ () => getEnv("TEMP"),
53
+ () => getEnv("TMP"),
54
+ () => joinToBase(getEnv("LOCALAPPDATA"), ["Temp"]),
55
+ () => joinToBase(homeDir(), ["AppData", "Local", "Temp"]),
56
+ () => joinToBase(getEnv("ALLUSERSPROFILE"), ["Temp"]),
57
+ () => joinToBase(getEnv("SystemRoot"), ["Temp"]),
58
+ () => joinToBase(getEnv("windir"), ["Temp"]),
59
+ () => joinToBase(getEnv("SystemDrive"), ["\\", "Temp"])
60
+ ];
61
+ const found = priorityListLazy.find((fn) => isNonEmpty(fn()));
62
+ return found && normalizePath(found()) || fallback2;
63
+ }
64
+ const fallback = "/tmp";
65
+ const priorityList = [
66
+ os.tmpdir(),
67
+ getEnv("TMPDIR"),
68
+ getEnv("TEMP"),
69
+ getEnv("TMP")
70
+ ];
71
+ return normalizePath(priorityList.find(isNonEmpty)) || fallback;
72
+ }
73
+ __name(tempDir, "tempDir");
74
+ function baseDir() {
75
+ return homeDir() || tempDir();
76
+ }
77
+ __name(baseDir, "baseDir");
78
+ function valOrPath(value, segments) {
79
+ return value || path.join(...segments);
80
+ }
81
+ __name(valOrPath, "valOrPath");
82
+ function windowsAppData() {
83
+ return valOrPath(getEnv("APPDATA"), [baseDir(), "AppData", "Roaming"]);
84
+ }
85
+ __name(windowsAppData, "windowsAppData");
86
+ function windowsLocalAppData() {
87
+ return valOrPath(getEnv("LOCALAPPDATA"), [baseDir(), "AppData", "Local"]);
88
+ }
89
+ __name(windowsLocalAppData, "windowsLocalAppData");
90
+ function xdgConfig() {
91
+ if (isMacOS()) {
92
+ return valOrPath(getEnv("XDG_CONFIG_HOME"), [
93
+ baseDir(),
94
+ "Library",
95
+ "Preferences"
96
+ ]);
97
+ }
98
+ if (isWindows()) {
99
+ return valOrPath(getEnv("XDG_CONFIG_HOME"), [
100
+ windowsAppData(),
101
+ "xdg.config"
102
+ ]);
103
+ }
104
+ return valOrPath(getEnv("XDG_CONFIG_HOME"), [baseDir(), ".config"]);
105
+ }
106
+ __name(xdgConfig, "xdgConfig");
107
+ function xdgCache() {
108
+ if (isMacOS()) {
109
+ return valOrPath(getEnv("XDG_CACHE_HOME"), [
110
+ baseDir(),
111
+ "Library",
112
+ "Caches"
113
+ ]);
114
+ }
115
+ if (isWindows()) {
116
+ return valOrPath(getEnv("XDG_CACHE_HOME"), [
117
+ windowsLocalAppData(),
118
+ "xdg.cache"
119
+ ]);
120
+ }
121
+ return valOrPath(getEnv("XDG_CACHE_HOME"), [baseDir(), ".cache"]);
122
+ }
123
+ __name(xdgCache, "xdgCache");
124
+ function xdgAppPaths(name) {
125
+ const segment = path.parse(name).name;
126
+ return {
127
+ config: /* @__PURE__ */ __name(() => path.join(xdgConfig(), segment), "config"),
128
+ cache: /* @__PURE__ */ __name(() => path.join(xdgCache(), segment), "cache")
129
+ };
130
+ }
131
+ __name(xdgAppPaths, "xdgAppPaths");
132
+
133
+ // src/global-wrangler-config-path.ts
134
+ function getGlobalConfigPath({
135
+ appName = "wrangler",
136
+ leadingDot = true,
137
+ useLegacyHomeDir = true
138
+ } = {}) {
139
+ const dirName = `${leadingDot ? "." : ""}${appName}`;
140
+ const configDir = xdgAppPaths(dirName).config();
141
+ if (useLegacyHomeDir) {
142
+ const legacyConfigDir = path.join(os.homedir(), dirName);
143
+ if (isDirectory(legacyConfigDir)) {
144
+ return legacyConfigDir;
145
+ }
146
+ }
147
+ return configDir;
148
+ }
149
+ __name(getGlobalConfigPath, "getGlobalConfigPath");
150
+ function getGlobalWranglerCachePath() {
151
+ return xdgAppPaths(".wrangler").cache();
152
+ }
153
+ __name(getGlobalWranglerCachePath, "getGlobalWranglerCachePath");
154
+
155
+ export { getGlobalConfigPath, getGlobalWranglerCachePath };
156
+ //# sourceMappingURL=chunk-YTEYGQOX.mjs.map
157
+ //# sourceMappingURL=chunk-YTEYGQOX.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/xdg-app-paths.ts","../src/global-wrangler-config-path.ts"],"names":["fallback","path","os"],"mappings":"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","file":"chunk-YTEYGQOX.mjs","sourcesContent":["import os from \"node:os\";\nimport path from \"node:path\";\n\n/**\n * @module\n *\n * A small, pure-ESM, dependency-free reimplementation of the subset of\n * [`xdg-app-paths`](https://www.npmjs.com/package/xdg-app-paths) that this\n * repository relies on.\n *\n * `xdg-app-paths` (and its `xdg-portable` / `os-paths` dependencies) ship as\n * CommonJS. When the consuming package is bundled to ESM (e.g. via tsup or when\n * a downstream consumer runs through Vite), the CJS `require()` calls are\n * shimmed and throw at runtime (\"Dynamic require of 'path' is not supported\").\n * Vendoring the resolution logic here keeps the behaviour identical while\n * remaining pure ESM.\n *\n * The path resolution intentionally mirrors `xdg-app-paths@8` →\n * `xdg-portable@10` → `os-paths@7` exactly so that the resolved config/cache\n * directories (which hold, amongst other things, Wrangler's auth credentials)\n * do not change for existing users.\n *\n * ---\n *\n * This implementation is adapted from `xdg-app-paths`, `xdg-portable` and\n * `os-paths` (https://github.com/rivy/js.xdg-app-paths), published under the\n * MIT License:\n *\n * Copyright (c) Roy Ivy III <rivy.dev@gmail.com>\n * Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)\n *\n * Permission is hereby granted, free of charge, to any person obtaining a\n * copy of this software and associated documentation files (the \"Software\"),\n * to deal in the Software without restriction, including without limitation\n * the rights to use, copy, modify, merge, publish, distribute, sublicense,\n * and/or sell copies of the Software, and to permit persons to whom the\n * Software is furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER\n * DEALINGS IN THE SOFTWARE.\n */\n\nfunction isWindows(): boolean {\n\treturn /^win/i.test(process.platform);\n}\n\nfunction isMacOS(): boolean {\n\treturn /^darwin$/i.test(process.platform);\n}\n\nfunction isNonEmpty(value: string | undefined): value is string {\n\treturn !!value;\n}\n\n/**\n * Read an OS/XDG environment variable. Accessed dynamically (mirroring\n * `xdg-portable`'s `env.get()`) so these process-level variables don't need to\n * be declared as build inputs (`turbo/no-undeclared-env-vars`) — they are not\n * Wrangler configuration variables.\n */\nfunction getEnv(name: string): string | undefined {\n\treturn process.env[name];\n}\n\n/** Mirrors `os-paths`' `normalizePath`. */\nfunction normalizePath(p: string | undefined): string | undefined {\n\treturn p ? path.normalize(path.join(p, \".\")) : undefined;\n}\n\n/** Mirrors `os-paths`' `home()`. */\nfunction homeDir(): string | undefined {\n\tif (isWindows()) {\n\t\tconst priorityList = [\n\t\t\tos.homedir(),\n\t\t\tgetEnv(\"USERPROFILE\"),\n\t\t\tgetEnv(\"HOME\"),\n\t\t\t// NOTE: `os-paths@7` uses `||` here (not `&&`), so a home directory is\n\t\t\t// derived even when only one of HOMEDRIVE/HOMEPATH is set. This is\n\t\t\t// preserved deliberately for byte-for-byte parity — see the parity\n\t\t\t// tests, which compare this branch against the real package.\n\t\t\tgetEnv(\"HOMEDRIVE\") || getEnv(\"HOMEPATH\")\n\t\t\t\t? path.join(getEnv(\"HOMEDRIVE\") ?? \"\", getEnv(\"HOMEPATH\") ?? \"\")\n\t\t\t\t: undefined,\n\t\t];\n\t\treturn normalizePath(priorityList.find(isNonEmpty));\n\t}\n\treturn normalizePath(os.homedir() || getEnv(\"HOME\"));\n}\n\nfunction joinToBase(\n\tbase: string | undefined,\n\tsegments: string[]\n): string | undefined {\n\treturn base ? path.join(base, ...segments) : undefined;\n}\n\n/** Mirrors `os-paths`' `temp()`. */\nfunction tempDir(): string {\n\tif (isWindows()) {\n\t\tconst fallback = \"C:\\\\Temp\";\n\t\tconst priorityListLazy: Array<() => string | undefined> = [\n\t\t\t() => os.tmpdir(),\n\t\t\t() => getEnv(\"TEMP\"),\n\t\t\t() => getEnv(\"TMP\"),\n\t\t\t() => joinToBase(getEnv(\"LOCALAPPDATA\"), [\"Temp\"]),\n\t\t\t() => joinToBase(homeDir(), [\"AppData\", \"Local\", \"Temp\"]),\n\t\t\t() => joinToBase(getEnv(\"ALLUSERSPROFILE\"), [\"Temp\"]),\n\t\t\t() => joinToBase(getEnv(\"SystemRoot\"), [\"Temp\"]),\n\t\t\t() => joinToBase(getEnv(\"windir\"), [\"Temp\"]),\n\t\t\t() => joinToBase(getEnv(\"SystemDrive\"), [\"\\\\\", \"Temp\"]),\n\t\t];\n\t\tconst found = priorityListLazy.find((fn) => isNonEmpty(fn()));\n\t\treturn (found && normalizePath(found())) || fallback;\n\t}\n\tconst fallback = \"/tmp\";\n\tconst priorityList = [\n\t\tos.tmpdir(),\n\t\tgetEnv(\"TMPDIR\"),\n\t\tgetEnv(\"TEMP\"),\n\t\tgetEnv(\"TMP\"),\n\t];\n\treturn normalizePath(priorityList.find(isNonEmpty)) || fallback;\n}\n\n/** Mirrors `xdg-portable`'s `baseDir()`. */\nfunction baseDir(): string {\n\treturn homeDir() || tempDir();\n}\n\n/** Mirrors `xdg-portable`'s `valOrPath()`. */\nfunction valOrPath(value: string | undefined, segments: string[]): string {\n\treturn value || path.join(...segments);\n}\n\nfunction windowsAppData(): string {\n\treturn valOrPath(getEnv(\"APPDATA\"), [baseDir(), \"AppData\", \"Roaming\"]);\n}\n\nfunction windowsLocalAppData(): string {\n\treturn valOrPath(getEnv(\"LOCALAPPDATA\"), [baseDir(), \"AppData\", \"Local\"]);\n}\n\n/** XDG config base directory (`xdg-portable`'s `config()`). */\nfunction xdgConfig(): string {\n\tif (isMacOS()) {\n\t\treturn valOrPath(getEnv(\"XDG_CONFIG_HOME\"), [\n\t\t\tbaseDir(),\n\t\t\t\"Library\",\n\t\t\t\"Preferences\",\n\t\t]);\n\t}\n\tif (isWindows()) {\n\t\treturn valOrPath(getEnv(\"XDG_CONFIG_HOME\"), [\n\t\t\twindowsAppData(),\n\t\t\t\"xdg.config\",\n\t\t]);\n\t}\n\treturn valOrPath(getEnv(\"XDG_CONFIG_HOME\"), [baseDir(), \".config\"]);\n}\n\n/** XDG cache base directory (`xdg-portable`'s `cache()`). */\nfunction xdgCache(): string {\n\tif (isMacOS()) {\n\t\treturn valOrPath(getEnv(\"XDG_CACHE_HOME\"), [\n\t\t\tbaseDir(),\n\t\t\t\"Library\",\n\t\t\t\"Caches\",\n\t\t]);\n\t}\n\tif (isWindows()) {\n\t\treturn valOrPath(getEnv(\"XDG_CACHE_HOME\"), [\n\t\t\twindowsLocalAppData(),\n\t\t\t\"xdg.cache\",\n\t\t]);\n\t}\n\treturn valOrPath(getEnv(\"XDG_CACHE_HOME\"), [baseDir(), \".cache\"]);\n}\n\nexport interface XDGAppPaths {\n\t/** The XDG-compliant config directory for the application. */\n\tconfig(): string;\n\t/** The XDG-compliant cache directory for the application. */\n\tcache(): string;\n}\n\n/**\n * Resolve XDG-compliant application paths for the given application name.\n *\n * Equivalent to `xdgAppPaths(name)` with the default `isolated: true`, i.e. the\n * application name is appended as the final path segment.\n */\nexport function xdgAppPaths(name: string): XDGAppPaths {\n\t// `xdg-app-paths` runs the name through `path.parse(name).name`, which (for\n\t// example) leaves `.wrangler` untouched since a leading dot is not treated\n\t// as a file extension.\n\tconst segment = path.parse(name).name;\n\treturn {\n\t\tconfig: () => path.join(xdgConfig(), segment),\n\t\tcache: () => path.join(xdgCache(), segment),\n\t};\n}\n","import os from \"node:os\";\nimport path from \"node:path\";\nimport { isDirectory } from \"./fs-helpers\";\nimport { xdgAppPaths } from \"./xdg-app-paths\";\n\nexport interface GetGlobalConfigPathOptions {\n\t/**\n\t * The application namespace. Defaults to `\"wrangler\"`.\n\t */\n\tappName?: string;\n\t/**\n\t * Whether to prepend a `.` to `appName` when resolving the XDG path and the\n\t * legacy `$HOME` directory. Defaults to `true` to match wrangler's\n\t * historical behaviour (`.wrangler`).\n\t */\n\tleadingDot?: boolean;\n\t/**\n\t * When `true` (the default, matching wrangler's historical behaviour), a\n\t * pre-existing `~/.<appName>` directory takes precedence over the XDG path.\n\t * Pass `false` to always use the XDG-compliant path.\n\t */\n\tuseLegacyHomeDir?: boolean;\n}\n\n/**\n * Resolve the global config directory for a Cloudflare CLI.\n *\n * Defaults to wrangler's directory (`.wrangler`) so existing callers are\n * unaffected, but accepts an `appName` so other first-party CLIs (e.g. `cf`)\n * can reuse the same XDG-compliant resolution under their own namespace.\n */\nexport function getGlobalConfigPath({\n\tappName = \"wrangler\",\n\tleadingDot = true,\n\tuseLegacyHomeDir = true,\n}: GetGlobalConfigPathOptions = {}) {\n\t//TODO: We should implement a custom path --global-config and/or the WRANGLER_HOME type environment variable\n\tconst dirName = `${leadingDot ? \".\" : \"\"}${appName}`;\n\tconst configDir = xdgAppPaths(dirName).config(); // New XDG compliant config path\n\n\tif (useLegacyHomeDir) {\n\t\tconst legacyConfigDir = path.join(os.homedir(), dirName); // Legacy config in user's home directory\n\t\t// Check for the legacy directory in $HOME; if it is not there then use the\n\t\t// XDG compliant path.\n\t\tif (isDirectory(legacyConfigDir)) {\n\t\t\treturn legacyConfigDir;\n\t\t}\n\t}\n\n\treturn configDir;\n}\n\n/**\n * Resolve the XDG-compliant global cache directory for wrangler (`.wrangler`).\n *\n * Unlike {@link getGlobalConfigPath}, this never falls back to a legacy\n * `~/.wrangler` directory.\n */\nexport function getGlobalWranglerCachePath() {\n\treturn xdgAppPaths(\".wrangler\").cache();\n}\n"]}
@@ -0,0 +1,477 @@
1
+ import { __name } from './chunk-CGILA3WO.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-Z7Q743IF.mjs.map
477
+ //# sourceMappingURL=chunk-Z7Q743IF.mjs.map