downcity 1.1.237 → 1.1.238

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 (44) hide show
  1. package/bin/federation/create/commands/create.d.ts +1 -1
  2. package/bin/federation/create/commands/create.js +15 -10
  3. package/bin/federation/create/commands/create.js.map +1 -1
  4. package/bin/federation/deploy/commands/deploy.d.ts.map +1 -1
  5. package/bin/federation/deploy/commands/deploy.js +0 -2
  6. package/bin/federation/deploy/commands/deploy.js.map +1 -1
  7. package/bin/federation/deploy/config/FederationProjectConfigReader.d.ts +2 -2
  8. package/bin/federation/deploy/config/FederationProjectConfigReader.d.ts.map +1 -1
  9. package/bin/federation/deploy/config/FederationProjectConfigReader.js +50 -5
  10. package/bin/federation/deploy/config/FederationProjectConfigReader.js.map +1 -1
  11. package/bin/federation/deploy/runtime/CloudflareAccountResolver.d.ts +0 -5
  12. package/bin/federation/deploy/runtime/CloudflareAccountResolver.d.ts.map +1 -1
  13. package/bin/federation/deploy/runtime/CloudflareAccountResolver.js +9 -20
  14. package/bin/federation/deploy/runtime/CloudflareAccountResolver.js.map +1 -1
  15. package/bin/federation/deploy/runtime/CloudflareWorkersDeployer.d.ts +2 -2
  16. package/bin/federation/deploy/runtime/CloudflareWorkersDeployer.d.ts.map +1 -1
  17. package/bin/federation/deploy/runtime/CloudflareWorkersDeployer.js +63 -27
  18. package/bin/federation/deploy/runtime/CloudflareWorkersDeployer.js.map +1 -1
  19. package/bin/federation/deploy/runtime/D1DatabaseResolver.d.ts +6 -7
  20. package/bin/federation/deploy/runtime/D1DatabaseResolver.d.ts.map +1 -1
  21. package/bin/federation/deploy/runtime/D1DatabaseResolver.js +24 -48
  22. package/bin/federation/deploy/runtime/D1DatabaseResolver.js.map +1 -1
  23. package/bin/federation/deploy/runtime/PackageScriptRunner.d.ts +2 -1
  24. package/bin/federation/deploy/runtime/PackageScriptRunner.d.ts.map +1 -1
  25. package/bin/federation/deploy/runtime/PackageScriptRunner.js +26 -22
  26. package/bin/federation/deploy/runtime/PackageScriptRunner.js.map +1 -1
  27. package/bin/federation/deploy/runtime/WranglerConfigWriter.d.ts +2 -2
  28. package/bin/federation/deploy/runtime/WranglerConfigWriter.d.ts.map +1 -1
  29. package/bin/federation/deploy/runtime/WranglerConfigWriter.js +3 -3
  30. package/bin/federation/deploy/runtime/WranglerConfigWriter.js.map +1 -1
  31. package/bin/federation/index.js +1 -1
  32. package/bin/federation/index.js.map +1 -1
  33. package/bin/federation/types/FederationDeployRuntime.d.ts +60 -0
  34. package/bin/federation/types/FederationDeployRuntime.d.ts.map +1 -0
  35. package/bin/federation/types/FederationDeployRuntime.js +10 -0
  36. package/bin/federation/types/FederationDeployRuntime.js.map +1 -0
  37. package/bin/federation/types/FederationProjectConfig.d.ts +16 -21
  38. package/bin/federation/types/FederationProjectConfig.d.ts.map +1 -1
  39. package/bin/federation/types/FederationProjectConfig.js +3 -3
  40. package/package.json +1 -1
  41. package/bin/federation/deploy/config/FederationProjectEnvLoader.d.ts +0 -22
  42. package/bin/federation/deploy/config/FederationProjectEnvLoader.d.ts.map +0 -1
  43. package/bin/federation/deploy/config/FederationProjectEnvLoader.js +0 -158
  44. package/bin/federation/deploy/config/FederationProjectEnvLoader.js.map +0 -1
@@ -4,7 +4,7 @@
4
4
  * 关键点(中文)
5
5
  * - 从零搭建一个可部署的 City 项目,而不是让用户手写底层部署文件。
6
6
  * - Git URL 只在 create 阶段 clone 到本地;deploy 阶段只处理本地项目。
7
- * - `federation.json` 只写项目类型和部署目标,其他文件由 CLI 生成。
7
+ * - `federation.json` 写入可提交的部署意图和稳定资源声明。
8
8
  * - 当前先生成 Cloudflare Workers 项目骨架,后续可扩展更多 target。
9
9
  */
10
10
  /** Commander 传入的 create 选项。 */
@@ -4,7 +4,7 @@
4
4
  * 关键点(中文)
5
5
  * - 从零搭建一个可部署的 City 项目,而不是让用户手写底层部署文件。
6
6
  * - Git URL 只在 create 阶段 clone 到本地;deploy 阶段只处理本地项目。
7
- * - `federation.json` 只写项目类型和部署目标,其他文件由 CLI 生成。
7
+ * - `federation.json` 写入可提交的部署意图和稳定资源声明。
8
8
  * - 当前先生成 Cloudflare Workers 项目骨架,后续可扩展更多 target。
9
9
  */
10
10
  import { existsSync, mkdirSync, readdirSync, writeFileSync } from "node:fs";
@@ -116,10 +116,23 @@ async function cloneFederationProject(git_url, _options) {
116
116
  */
117
117
  function createCloudflareWorkersFiles(name, target) {
118
118
  const package_name = normalizePackageName(name);
119
+ const d1_name = `${name}-db`;
119
120
  return [
120
121
  {
121
122
  path: "federation.json",
122
- content: `${JSON.stringify({ type: "city", name, target }, null, 2)}\n`,
123
+ content: `${JSON.stringify({
124
+ schema: 1,
125
+ type: "city",
126
+ name,
127
+ target,
128
+ entry: "src/index.ts",
129
+ resources: {
130
+ d1: {
131
+ binding: "DB",
132
+ name: d1_name,
133
+ },
134
+ },
135
+ }, null, 2)}\n`,
123
136
  },
124
137
  {
125
138
  path: "package.json",
@@ -162,14 +175,6 @@ function createCloudflareWorkersFiles(name, target) {
162
175
  include: ["src/**/*.ts"],
163
176
  }, null, 2)}\n`,
164
177
  },
165
- {
166
- path: ".env.example",
167
- content: [
168
- "# Local deploy values.",
169
- `CITY_D1_DATABASE_NAME=${name}-db`,
170
- "",
171
- ].join("\n"),
172
- },
173
178
  {
174
179
  path: "src/index.ts",
175
180
  content: createWorkerEntrypoint(),
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/federation/create/commands/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/federation/create/commands/create.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/commands/deploy.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,iCAAiC;AACjC,MAAM,WAAW,8BAA8B;IAC7C,qBAAqB;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qCAAqC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,GAAE,MAAY,EACpB,WAAW,GAAE,8BAAmC,GAC/C,OAAO,CAAC,IAAI,CAAC,CAwBf"}
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/commands/deploy.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH,iCAAiC;AACjC,MAAM,WAAW,8BAA8B;IAC7C,qBAAqB;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qCAAqC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,GAAE,MAAY,EACpB,WAAW,GAAE,8BAAmC,GAC/C,OAAO,CAAC,IAAI,CAAC,CAuBf"}
@@ -9,7 +9,6 @@
9
9
  import { CliError } from "../../../shared/CliError.js";
10
10
  import { readFederationProjectConfig } from "../config/FederationProjectConfigReader.js";
11
11
  import { deployCloudflareWorkers } from "../runtime/CloudflareWorkersDeployer.js";
12
- import { loadFederationProjectEnv } from "../config/FederationProjectEnvLoader.js";
13
12
  import { resolveFederationDeployTarget } from "../config/FederationDeployTargetResolver.js";
14
13
  /**
15
14
  * 执行 Federation 项目部署。
@@ -26,7 +25,6 @@ export async function deployFederationProject(source = ".", raw_options = {}) {
26
25
  };
27
26
  const target = await resolveFederationDeployTarget(options.source);
28
27
  const config_file = readFederationProjectConfig(target.project_dir);
29
- loadFederationProjectEnv(config_file.project_dir);
30
28
  switch (config_file.config.target) {
31
29
  case "cloudflare-workers":
32
30
  await deployCloudflareWorkers(config_file, options);
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../../src/federation/deploy/commands/deploy.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,2BAA2B,EAAE,MAAM,6DAA6D,CAAC;AAC1G,OAAO,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAC;AACnG,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAC;AACpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,8DAA8D,CAAC;AAkB7G;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,SAAiB,GAAG,EACpB,cAA8C,EAAE;IAEhD,MAAM,OAAO,GAA4B;QACvC,MAAM;QACN,OAAO,EAAE,WAAW,CAAC,MAAM,KAAK,IAAI;QACpC,MAAM,EAAE,WAAW,CAAC,MAAM,KAAK,IAAI;QACnC,WAAW,EAAE,WAAW,CAAC,UAAU,KAAK,IAAI;QAC5C,UAAU,EAAE,WAAW,CAAC,SAAS,KAAK,IAAI;QAC1C,cAAc,EAAE,WAAW,CAAC,aAAa,KAAK,IAAI;QAClD,UAAU,EAAE,WAAW,CAAC,SAAS;KAClC,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,6BAA6B,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnE,MAAM,WAAW,GAAG,2BAA2B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACpE,wBAAwB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAElD,QAAQ,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,KAAK,oBAAoB;YACvB,MAAM,uBAAuB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACpD,OAAO;QACT;YACE,MAAM,IAAI,QAAQ,CAAC;gBACjB,KAAK,EAAE,+BAA+B;gBACtC,IAAI,EAAE,gCAAgC,WAAW,CAAC,MAAM,CAAC,MAAM,GAAG;aACnE,CAAC,CAAC;IACP,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../../src/federation/deploy/commands/deploy.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,2BAA2B,EAAE,MAAM,6DAA6D,CAAC;AAC1G,OAAO,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAC;AACnG,OAAO,EAAE,6BAA6B,EAAE,MAAM,8DAA8D,CAAC;AAkB7G;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,SAAiB,GAAG,EACpB,cAA8C,EAAE;IAEhD,MAAM,OAAO,GAA4B;QACvC,MAAM;QACN,OAAO,EAAE,WAAW,CAAC,MAAM,KAAK,IAAI;QACpC,MAAM,EAAE,WAAW,CAAC,MAAM,KAAK,IAAI;QACnC,WAAW,EAAE,WAAW,CAAC,UAAU,KAAK,IAAI;QAC5C,UAAU,EAAE,WAAW,CAAC,SAAS,KAAK,IAAI;QAC1C,cAAc,EAAE,WAAW,CAAC,aAAa,KAAK,IAAI;QAClD,UAAU,EAAE,WAAW,CAAC,SAAS;KAClC,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,6BAA6B,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnE,MAAM,WAAW,GAAG,2BAA2B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAEpE,QAAQ,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,KAAK,oBAAoB;YACvB,MAAM,uBAAuB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACpD,OAAO;QACT;YACE,MAAM,IAAI,QAAQ,CAAC;gBACjB,KAAK,EAAE,+BAA+B;gBACtC,IAAI,EAAE,gCAAgC,WAAW,CAAC,MAAM,CAAC,MAAM,GAAG;aACnE,CAAC,CAAC;IACP,CAAC;AACH,CAAC"}
@@ -2,8 +2,8 @@
2
2
  * City 项目配置读取器。
3
3
  *
4
4
  * 关键点(中文)
5
- * - `federation.json` 保持极简:type、name、target。
6
- * - Cloudflare 细节由 CLI 默认处理,不要求开发者写一大段配置。
5
+ * - `federation.json` 保存可提交的部署意图:type、name、target、entry、resources
6
+ * - Cloudflare account、D1 id、Worker URL 等部署状态不进入项目配置。
7
7
  * - 部署状态不写回 `federation.json`,避免用户手写协议被机器污染。
8
8
  */
9
9
  import type { FederationProjectConfigFile } from "../../types/FederationProjectConfig.js";
@@ -1 +1 @@
1
- {"version":3,"file":"FederationProjectConfigReader.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/config/FederationProjectConfigReader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EAEV,2BAA2B,EAE5B,MAAM,+CAA+C,CAAC;AAIvD;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG,2BAA2B,CA2BpF"}
1
+ {"version":3,"file":"FederationProjectConfigReader.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/config/FederationProjectConfigReader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EAEV,2BAA2B,EAG5B,MAAM,+CAA+C,CAAC;AAIvD;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG,2BAA2B,CA2BpF"}
@@ -2,8 +2,8 @@
2
2
  * City 项目配置读取器。
3
3
  *
4
4
  * 关键点(中文)
5
- * - `federation.json` 保持极简:type、name、target。
6
- * - Cloudflare 细节由 CLI 默认处理,不要求开发者写一大段配置。
5
+ * - `federation.json` 保存可提交的部署意图:type、name、target、entry、resources
6
+ * - Cloudflare account、D1 id、Worker URL 等部署状态不进入项目配置。
7
7
  * - 部署状态不写回 `federation.json`,避免用户手写协议被机器污染。
8
8
  */
9
9
  import { existsSync, readFileSync } from "node:fs";
@@ -51,6 +51,10 @@ function normalizeFederationProjectConfig(input, config_path, project_dir) {
51
51
  if (type !== "city") {
52
52
  throw invalidConfig(config_path, `Unsupported type: ${type}`);
53
53
  }
54
+ const schema = readOptionalNumber(input, "schema") ?? 1;
55
+ if (schema !== 1) {
56
+ throw invalidConfig(config_path, `Unsupported schema: ${schema}`);
57
+ }
54
58
  const name = readOptionalString(input, "name") ?? inferProjectName(project_dir);
55
59
  const target = readOptionalString(input, "target")
56
60
  ?? readOptionalString(input, "runtime")
@@ -58,12 +62,14 @@ function normalizeFederationProjectConfig(input, config_path, project_dir) {
58
62
  if (target !== "cloudflare-workers") {
59
63
  throw invalidConfig(config_path, `Unsupported target: ${target}`);
60
64
  }
65
+ const entry = readOptionalString(input, "entry") ?? resolveTargetEntry(target);
61
66
  return {
67
+ schema,
62
68
  type,
63
69
  name,
64
- entry: resolveTargetEntry(target),
70
+ entry,
65
71
  target,
66
- database: resolveTargetDatabase(target, name),
72
+ resources: resolveProjectResources(input, target, name),
67
73
  };
68
74
  }
69
75
  /**
@@ -77,7 +83,7 @@ function resolveTargetEntry(target) {
77
83
  /**
78
84
  * 解析 target 的默认数据库。
79
85
  */
80
- function resolveTargetDatabase(target, project_name) {
86
+ function resolveTargetD1Resource(target, project_name) {
81
87
  if (target !== "cloudflare-workers")
82
88
  return undefined;
83
89
  return {
@@ -86,6 +92,27 @@ function resolveTargetDatabase(target, project_name) {
86
92
  name: `${project_name}-db`,
87
93
  };
88
94
  }
95
+ /**
96
+ * 解析项目资源配置。
97
+ */
98
+ function resolveProjectResources(input, target, project_name) {
99
+ const default_d1 = resolveTargetD1Resource(target, project_name);
100
+ const resources = readOptionalRecord(input, "resources");
101
+ const d1 = readOptionalRecord(resources ?? {}, "d1");
102
+ const legacy_database = readOptionalRecord(input, "database");
103
+ const source = d1 ?? legacy_database;
104
+ if (!default_d1)
105
+ return {};
106
+ if (!source)
107
+ return { d1: default_d1 };
108
+ return {
109
+ d1: {
110
+ type: "d1",
111
+ binding: readOptionalString(source, "binding") ?? default_d1.binding,
112
+ name: readOptionalString(source, "name") ?? default_d1.name,
113
+ },
114
+ };
115
+ }
89
116
  /**
90
117
  * 根据目录名推断项目名。
91
118
  */
@@ -124,4 +151,22 @@ function readOptionalString(input, key) {
124
151
  const trimmed = value.trim();
125
152
  return trimmed || undefined;
126
153
  }
154
+ /**
155
+ * 读取可选数字。
156
+ */
157
+ function readOptionalNumber(input, key) {
158
+ const value = input[key];
159
+ if (typeof value !== "number" || !Number.isInteger(value))
160
+ return undefined;
161
+ return value;
162
+ }
163
+ /**
164
+ * 读取可选对象。
165
+ */
166
+ function readOptionalRecord(input, key) {
167
+ const value = input[key];
168
+ if (!isRecord(value))
169
+ return undefined;
170
+ return value;
171
+ }
127
172
  //# sourceMappingURL=FederationProjectConfigReader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FederationProjectConfigReader.js","sourceRoot":"","sources":["../../../../src/federation/deploy/config/FederationProjectConfigReader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FederationProjectConfigReader.js","sourceRoot":"","sources":["../../../../src/federation/deploy/config/FederationProjectConfigReader.ts"],"names":[],"mappings":"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"}
@@ -6,13 +6,10 @@
6
6
  * - 有明确 account id 时直接复用;没有时先尝试 Wrangler 自动识别。
7
7
  * - Wrangler 已登录但无法枚举 account 时,进入最小交互:重新登录或手动输入 account id。
8
8
  */
9
- import type { FederationProjectDeployEnvFile } from "../../types/FederationProjectConfig.js";
10
9
  /** Cloudflare account 解析参数。 */
11
10
  export interface ResolveCloudflareAccountParams {
12
11
  /** City 项目目录。 */
13
12
  project_dir: string;
14
- /** 当前 City 本地部署环境。 */
15
- env_file: FederationProjectDeployEnvFile;
16
13
  /** 用户通过命令行或环境变量显式传入的 account id。 */
17
14
  account_id?: string;
18
15
  }
@@ -20,8 +17,6 @@ export interface ResolveCloudflareAccountParams {
20
17
  export interface ResolveCloudflareAccountResult {
21
18
  /** Cloudflare account id。 */
22
19
  account_id?: string;
23
- /** 可能写入 account id 后的本地部署环境。 */
24
- env_file: FederationProjectDeployEnvFile;
25
20
  }
26
21
  /**
27
22
  * 解析并准备 Cloudflare account。
@@ -1 +1 @@
1
- {"version":3,"file":"CloudflareAccountResolver.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareAccountResolver.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,+CAA+C,CAAC;AAGpG,+BAA+B;AAC/B,MAAM,WAAW,8BAA8B;IAC7C,iBAAiB;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB;IACtB,QAAQ,EAAE,8BAA8B,CAAC;IACzC,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,+BAA+B;AAC/B,MAAM,WAAW,8BAA8B;IAC7C,6BAA6B;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,QAAQ,EAAE,8BAA8B,CAAC;CAC1C;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,8BAA8B,GACrC,OAAO,CAAC,8BAA8B,CAAC,CAmCzC"}
1
+ {"version":3,"file":"CloudflareAccountResolver.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareAccountResolver.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH,+BAA+B;AAC/B,MAAM,WAAW,8BAA8B;IAC7C,iBAAiB;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,+BAA+B;AAC/B,MAAM,WAAW,8BAA8B;IAC7C,6BAA6B;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,8BAA8B,GACrC,OAAO,CAAC,8BAA8B,CAAC,CAyBzC"}
@@ -19,7 +19,7 @@ export async function resolveCloudflareAccount(params) {
19
19
  ?? normalizeAccountId(process.env.CLOUDFLARE_ACCOUNT_ID)
20
20
  ?? normalizeAccountId(readCloudflareAccountId());
21
21
  if (initial_account_id) {
22
- return persistCloudflareAccount(params.env_file, initial_account_id);
22
+ return persistCloudflareAccount(initial_account_id);
23
23
  }
24
24
  let output = await runWranglerWhoami(params.project_dir);
25
25
  if (isWranglerLoginRequired(output)) {
@@ -28,22 +28,12 @@ export async function resolveCloudflareAccount(params) {
28
28
  }
29
29
  const detected_account_id = extractAccountId(output);
30
30
  if (detected_account_id) {
31
- emitCliBlock({
32
- tone: "success",
33
- title: "Cloudflare account detected",
34
- facts: [{ label: "account", value: detected_account_id }],
35
- });
36
- return persistCloudflareAccount(params.env_file, detected_account_id);
31
+ return persistCloudflareAccount(detected_account_id);
37
32
  }
38
33
  if (isWranglerAccountLookupDenied(output)) {
39
34
  return await resolveAccountAfterLookupDenied(params);
40
35
  }
41
- emitCliBlock({
42
- tone: "success",
43
- title: "Wrangler authenticated",
44
- note: output.split("\n").slice(0, 3).join(" "),
45
- });
46
- return { env_file: params.env_file };
36
+ return {};
47
37
  }
48
38
  /**
49
39
  * 处理 Wrangler 已登录但无法列出 account 的场景。
@@ -91,16 +81,16 @@ async function resolveAccountAfterLookupDenied(params) {
91
81
  const output = await runWranglerWhoami(params.project_dir);
92
82
  const account_id = extractAccountId(output);
93
83
  if (account_id) {
94
- return persistCloudflareAccount(params.env_file, account_id);
84
+ return persistCloudflareAccount(account_id);
95
85
  }
96
- return await promptForAccountId(params.env_file);
86
+ return await promptForAccountId();
97
87
  }
98
- return await promptForAccountId(params.env_file);
88
+ return await promptForAccountId();
99
89
  }
100
90
  /**
101
91
  * 交互式输入 Cloudflare account id。
102
92
  */
103
- async function promptForAccountId(env_file) {
93
+ async function promptForAccountId() {
104
94
  const account_id = await text({
105
95
  message: "Cloudflare account id",
106
96
  placeholder: "32-character account id",
@@ -116,12 +106,12 @@ async function promptForAccountId(env_file) {
116
106
  note: "Cloudflare account id was not provided.",
117
107
  });
118
108
  }
119
- return persistCloudflareAccount(env_file, String(account_id));
109
+ return persistCloudflareAccount(String(account_id));
120
110
  }
121
111
  /**
122
112
  * 保存 Cloudflare account id 到本地 City CLI 状态。
123
113
  */
124
- function persistCloudflareAccount(env_file, account_id) {
114
+ function persistCloudflareAccount(account_id) {
125
115
  const normalized_account_id = normalizeAccountId(account_id);
126
116
  if (!normalized_account_id) {
127
117
  throw new CliError({
@@ -132,7 +122,6 @@ function persistCloudflareAccount(env_file, account_id) {
132
122
  writeCloudflareAccountId(normalized_account_id);
133
123
  return {
134
124
  account_id: normalized_account_id,
135
- env_file,
136
125
  };
137
126
  }
138
127
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"CloudflareAccountResolver.js","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareAccountResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CloudflareAccountResolver.js","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareAccountResolver.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACjG,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAgB1E;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAsC;IAEtC,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC;WAC3D,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;WACrD,kBAAkB,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAEnD,IAAI,kBAAkB,EAAE,CAAC;QACvB,OAAO,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACzD,IAAI,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC;QACpC,MAAM,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACrD,IAAI,mBAAmB,EAAE,CAAC;QACxB,OAAO,wBAAwB,CAAC,mBAAmB,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,6BAA6B,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1C,OAAO,MAAM,+BAA+B,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,+BAA+B,CAC5C,MAAsC;IAEtC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,QAAQ,CAAC;YACjB,KAAK,EAAE,6BAA6B;YACpC,IAAI,EAAE,0HAA0H;YAChI,GAAG,EAAE,gFAAgF;SACtF,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CAAC;QACX,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,2BAA2B;QAClC,IAAI,EAAE,iIAAiI;KACxI,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC;QAC1B,OAAO,EAAE,iCAAiC;QAC1C,OAAO,EAAE;YACP;gBACE,KAAK,EAAE,wBAAwB;gBAC/B,KAAK,EAAE,eAAe;gBACtB,IAAI,EAAE,0BAA0B;aACjC;YACD;gBACE,KAAK,EAAE,kBAAkB;gBACzB,KAAK,EAAE,kBAAkB;gBACzB,IAAI,EAAE,+BAA+B;aACtC;YACD;gBACE,KAAK,EAAE,eAAe;gBACtB,KAAK,EAAE,QAAQ;aAChB;SACF;KACF,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC5C,MAAM,IAAI,QAAQ,CAAC;YACjB,KAAK,EAAE,uBAAuB;YAC9B,IAAI,EAAE,sCAAsC;SAC7C,CAAC,CAAC;IACL,CAAC;IAED,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;QAC/B,MAAM,oBAAoB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3D,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,wBAAwB,CAAC,UAAU,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,MAAM,kBAAkB,EAAE,CAAC;IACpC,CAAC;IAED,OAAO,MAAM,kBAAkB,EAAE,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,kBAAkB;IAC/B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC;QAC5B,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,yBAAyB;QACtC,QAAQ,CAAC,KAAK;YACZ,OAAO,kBAAkB,CAAC,KAAK,CAAC;gBAC9B,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,6CAA6C,CAAC;QACpD,CAAC;KACF,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,QAAQ,CAAC;YACjB,KAAK,EAAE,uBAAuB;YAC9B,IAAI,EAAE,yCAAyC;SAChD,CAAC,CAAC;IACL,CAAC;IACD,OAAO,wBAAwB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,SAAS,wBAAwB,CAAC,UAAkB;IAClD,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC7D,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3B,MAAM,IAAI,QAAQ,CAAC;YACjB,KAAK,EAAE,+BAA+B;YACtC,IAAI,EAAE,4DAA4D;SACnE,CAAC,CAAC;IACL,CAAC;IAED,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;IAChD,OAAO;QACL,UAAU,EAAE,qBAAqB;KAClC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,iBAAiB,CAAC,WAAmB;IAClD,YAAY,CAAC;QACX,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,2BAA2B;QAClC,IAAI,EAAE,oDAAoD;KAC3D,CAAC,CAAC;IACH,MAAM,UAAU,CAAC;QACf,KAAK,EAAE,gBAAgB;QACvB,OAAO,EAAE,0BAA0B;QACnC,GAAG,EAAE,WAAW;KACjB,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,oBAAoB,CAAC,WAAmB;IACrD,MAAM,UAAU,CAAC;QACf,KAAK,EAAE,iBAAiB;QACxB,OAAO,EAAE,2BAA2B;QACpC,GAAG,EAAE,WAAW;KACjB,CAAC,CAAC;IACH,MAAM,iBAAiB,CAAC,WAAW,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,iBAAiB,CAAC,WAAmB;IAClD,IAAI,CAAC;QACH,OAAO,MAAM,UAAU,CAAC;YACtB,KAAK,EAAE,yBAAyB;YAChC,OAAO,EAAE,2BAA2B;YACpC,GAAG,EAAE,WAAW;YAChB,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC;QACrC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,SAAS;IAChB,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC;AACvE,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,KAAyB;IACnD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,OAAO,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;AACrE,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAC,MAAc;IAC7C,OAAO,uEAAuE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC9F,CAAC;AAED;;GAEG;AACH,SAAS,6BAA6B,CAAC,MAAc;IACnD,OAAO,0GAA0G,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACjI,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,MAAc;IACtC,OAAO,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC"}
@@ -3,8 +3,8 @@
3
3
  *
4
4
  * 关键点(中文)
5
5
  * - `city deploy` 的用户心智是“部署一个 City 项目”,不是配置 Cloudflare 工程。
6
- * - 构建和类型检查从 package.json 自动推断,`federation.json` 保持最小。
7
- * - D1 等部署绑定写入项目 `.env`,Worker URL 回写到 City 自己的 server 配置。
6
+ * - 构建和类型检查从 package.json 自动推断,稳定资源由 `federation.json` 声明。
7
+ * - D1 database id 与 Worker URL 都是部署状态,不写入项目配置。
8
8
  */
9
9
  import type { FederationDeployOptions, FederationProjectConfigFile } from "../../types/FederationProjectConfig.js";
10
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"CloudflareWorkersDeployer.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareWorkersDeployer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,KAAK,EACV,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,+CAA+C,CAAC;AAWvD;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,2BAA2B,EACxC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CA8Ff"}
1
+ {"version":3,"file":"CloudflareWorkersDeployer.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareWorkersDeployer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,KAAK,EACV,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,+CAA+C,CAAC;AAWvD;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,2BAA2B,EACxC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAyHf"}
@@ -3,15 +3,14 @@
3
3
  *
4
4
  * 关键点(中文)
5
5
  * - `city deploy` 的用户心智是“部署一个 City 项目”,不是配置 Cloudflare 工程。
6
- * - 构建和类型检查从 package.json 自动推断,`federation.json` 保持最小。
7
- * - D1 等部署绑定写入项目 `.env`,Worker URL 回写到 City 自己的 server 配置。
6
+ * - 构建和类型检查从 package.json 自动推断,稳定资源由 `federation.json` 声明。
7
+ * - D1 database id 与 Worker URL 都是部署状态,不写入项目配置。
8
8
  */
9
9
  import { rmSync } from "node:fs";
10
10
  import { dirname } from "node:path";
11
11
  import { addServer, readActiveServer, readServer } from "../../core/session.js";
12
12
  import { emitCliBlock } from "../../../shared/CliReporter.js";
13
13
  import { CliError } from "../../../shared/CliError.js";
14
- import { readFederationProjectDeployEnv, } from "../config/FederationProjectEnvLoader.js";
15
14
  import { resolveCloudflareAccount } from "./CloudflareAccountResolver.js";
16
15
  import { resolveD1Database } from "./D1DatabaseResolver.js";
17
16
  import { writeWranglerConfig } from "./WranglerConfigWriter.js";
@@ -22,15 +21,13 @@ import { runPackageDeployScripts } from "./PackageScriptRunner.js";
22
21
  * 部署 Cloudflare Workers City 项目。
23
22
  */
24
23
  export async function deployCloudflareWorkers(config_file, options) {
25
- let env_file = readFederationProjectDeployEnv(config_file.project_dir);
26
24
  emitCliBlock({
27
25
  tone: "accent",
28
- title: "City project",
26
+ title: "Project",
29
27
  facts: [
30
28
  { label: "name", value: config_file.config.name },
31
29
  { label: "target", value: config_file.config.target },
32
- { label: "source", value: options.source },
33
- { label: "dir", value: config_file.project_dir },
30
+ { label: "source", value: config_file.project_dir },
34
31
  ],
35
32
  });
36
33
  if (options.verify_only) {
@@ -39,39 +36,41 @@ export async function deployCloudflareWorkers(config_file, options) {
39
36
  }
40
37
  const account_result = await resolveCloudflareAccount({
41
38
  project_dir: config_file.project_dir,
42
- env_file,
43
39
  account_id: options.account_id,
44
40
  });
45
41
  const account_id = account_result.account_id;
46
- env_file = account_result.env_file;
47
42
  const version_bump = options.dry_run === true ? undefined : bumpProjectPatchVersion(config_file.project_dir);
48
43
  if (version_bump) {
49
44
  emitCliBlock({
50
45
  tone: "success",
51
- title: "Project version bumped",
46
+ title: "Version",
52
47
  facts: [
53
48
  { label: "from", value: version_bump.previous_version },
54
49
  { label: "to", value: version_bump.next_version },
55
50
  ],
56
51
  });
57
52
  }
58
- await runPackageDeployScripts({
53
+ const scripts_result = await runPackageDeployScripts({
59
54
  project_dir: config_file.project_dir,
60
55
  skip_build: options.skip_build,
61
56
  skip_typecheck: options.skip_typecheck,
62
57
  });
58
+ emitPackageScriptSummary("Build", scripts_result.build);
59
+ emitPackageScriptSummary("Typecheck", scripts_result.typecheck);
63
60
  const d1_result = await resolveD1Database({
64
61
  config_file,
65
- env_file,
66
62
  account_id,
67
63
  create_if_missing: options.dry_run !== true,
68
64
  });
69
- env_file = d1_result.env_file;
70
- const wrangler_result = writeWranglerConfig(config_file, env_file, d1_result.resolved_database_id);
65
+ const wrangler_result = writeWranglerConfig(config_file, d1_result.resolved_database_id);
71
66
  emitCliBlock({
72
67
  tone: "success",
73
- title: "Wrangler config generated",
74
- facts: [{ label: "file", value: wrangler_result.config_path }],
68
+ title: "D1 Database",
69
+ facts: [
70
+ { label: "name", value: d1_result.summary.name ?? "(none)" },
71
+ { label: "id", value: d1_result.summary.id ?? "(none)" },
72
+ { label: "status", value: d1_result.summary.status },
73
+ ],
75
74
  });
76
75
  let output = "";
77
76
  try {
@@ -87,19 +86,61 @@ export async function deployCloudflareWorkers(config_file, options) {
87
86
  const worker_url = extractWorkerUrl(output);
88
87
  emitCliBlock({
89
88
  tone: "success",
90
- title: options.dry_run ? "Worker dry-run completed" : "Worker deployed",
89
+ title: "Wrangler",
90
+ facts: [
91
+ { label: "config", value: wrangler_result.config_path },
92
+ { label: "status", value: options.dry_run ? "dry-run" : "deployed" },
93
+ ],
94
+ });
95
+ emitCliBlock({
96
+ tone: "success",
97
+ title: "Deployment",
91
98
  facts: [
92
99
  { label: "worker", value: config_file.config.name },
93
100
  ...(worker_url ? [{ label: "url", value: worker_url }] : []),
101
+ { label: "status", value: options.dry_run ? "dry-run" : "success" },
94
102
  ],
95
103
  });
96
104
  if (worker_url && !options.dry_run) {
97
- registerDeployedServer(config_file.config.name, worker_url);
105
+ const active_server = registerDeployedServer(config_file.config.name, worker_url);
106
+ emitCliBlock({
107
+ tone: "success",
108
+ title: "Active Server",
109
+ facts: [
110
+ { label: "name", value: active_server.name },
111
+ { label: "url", value: active_server.url },
112
+ { label: "status", value: "connected" },
113
+ ],
114
+ });
115
+ }
116
+ else {
117
+ emitCliBlock({
118
+ tone: "info",
119
+ title: "Active Server",
120
+ facts: [
121
+ { label: "name", value: config_file.config.name },
122
+ ...(worker_url ? [{ label: "url", value: worker_url }] : []),
123
+ { label: "status", value: "skipped" },
124
+ ],
125
+ });
98
126
  }
99
127
  if (options.verify && !options.dry_run) {
100
128
  await verifyWorker(worker_url ?? readVerifyBaseUrl());
101
129
  }
102
130
  }
131
+ /**
132
+ * 输出 package script 执行摘要。
133
+ */
134
+ function emitPackageScriptSummary(title, result) {
135
+ emitCliBlock({
136
+ tone: result.status === "passed" ? "success" : "info",
137
+ title,
138
+ facts: [
139
+ { label: "command", value: result.command },
140
+ { label: "status", value: result.status },
141
+ ],
142
+ });
143
+ }
103
144
  /**
104
145
  * 执行 Wrangler deploy。
105
146
  */
@@ -166,15 +207,10 @@ function registerDeployedServer(name, worker_url) {
166
207
  base_url: worker_url,
167
208
  admin_secret_key: preserved_admin_secret_key,
168
209
  });
169
- emitCliBlock({
170
- tone: "success",
171
- title: "City server connected",
172
- facts: [
173
- { label: "name", value: name },
174
- { label: "url", value: worker_url },
175
- ],
176
- note: "The deployed Worker is now the active City server.",
177
- });
210
+ return {
211
+ name,
212
+ url: worker_url,
213
+ };
178
214
  }
179
215
  /**
180
216
  * 读取当前用于校验的 City server URL。
@@ -1 +1 @@
1
- {"version":3,"file":"CloudflareWorkersDeployer.js","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareWorkersDeployer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CloudflareWorkersDeployer.js","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareWorkersDeployer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAQhD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAC;AACpG,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,sDAAsD,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,oDAAoD,CAAC;AAE7F;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,WAAwC,EACxC,OAAgC;IAEhC,YAAY,CAAC;QACX,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE;YACL,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE;YACjD,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE;YACrD,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,WAAW,EAAE;SACpD;KACF,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,MAAM,YAAY,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACxC,OAAO;IACT,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,wBAAwB,CAAC;QACpD,WAAW,EAAE,WAAW,CAAC,WAAW;QACpC,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;IAE7C,MAAM,YAAY,GAChB,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAC1F,IAAI,YAAY,EAAE,CAAC;QACjB,YAAY,CAAC;YACX,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE;gBACL,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,gBAAgB,EAAE;gBACvD,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,YAAY,EAAE;aAClD;SACF,CAAC,CAAC;IACL,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,uBAAuB,CAAC;QACnD,WAAW,EAAE,WAAW,CAAC,WAAW;QACpC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,cAAc,EAAE,OAAO,CAAC,cAAc;KACvC,CAAC,CAAC;IACH,wBAAwB,CAAC,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;IACxD,wBAAwB,CAAC,WAAW,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAEhE,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC;QACxC,WAAW;QACX,UAAU;QACV,iBAAiB,EAAE,OAAO,CAAC,OAAO,KAAK,IAAI;KAC5C,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,mBAAmB,CACzC,WAAW,EACX,SAAS,CAAC,oBAAoB,CAC/B,CAAC;IACF,YAAY,CAAC;QACX,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE;YACL,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,IAAI,IAAI,QAAQ,EAAE;YAC5D,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,QAAQ,EAAE;YACxD,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE;SACrD;KACF,CAAC,CAAC;IAEH,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE;YAC5C,UAAU;YACV,WAAW,EAAE,eAAe,CAAC,WAAW;YACxC,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAE5C,YAAY,CAAC;QACX,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE;YACL,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,CAAC,WAAW,EAAE;YACvD,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE;SACrE;KACF,CAAC,CAAC;IAEH,YAAY,CAAC;QACX,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE;YACL,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE;YACnD,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE;SACpE;KACF,CAAC,CAAC;IAEH,IAAI,UAAU,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,aAAa,GAAG,sBAAsB,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAClF,YAAY,CAAC;YACX,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,eAAe;YACtB,KAAK,EAAE;gBACL,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,IAAI,EAAE;gBAC5C,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,GAAG,EAAE;gBAC1C,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE;aACxC;SACF,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,YAAY,CAAC;YACX,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,eAAe;YACtB,KAAK,EAAE;gBACL,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE;gBACjD,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5D,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE;aACtC;SACF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACvC,MAAM,YAAY,CAAC,UAAU,IAAI,iBAAiB,EAAE,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,wBAAwB,CAC/B,KAA4B,EAC5B,MAAqC;IAErC,YAAY,CAAC;QACX,IAAI,EAAE,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;QACrD,KAAK;QACL,KAAK,EAAE;YACL,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE;YAC3C,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;SAC1C;KACF,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,iBAAiB,CAC9B,WAAwC,EACxC,MAIC;IAED,OAAO,MAAM,UAAU,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,iBAAiB;QAC9D,OAAO,EAAE,MAAM,CAAC,OAAO;YACrB,CAAC,CAAC,sCAAsC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY;YAClF,CAAC,CAAC,sCAAsC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;QAC1E,GAAG,EAAE,WAAW,CAAC,WAAW;QAC5B,GAAG,EAAE,EAAE,qBAAqB,EAAE,MAAM,CAAC,UAAU,EAAE;QACjD,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,YAAY,CAAC,QAA4B;IACtD,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;QACtB,YAAY,CAAC;YACX,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,sBAAsB;YAC7B,IAAI,EAAE,oGAAoG;SAC3G,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,MAAM,GAAG,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC;IACrD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,QAAQ,CAAC;YACjB,KAAK,EAAE,4BAA4B;YACnC,IAAI,EAAE,GAAG,GAAG,kBAAkB,QAAQ,CAAC,MAAM,GAAG;YAChD,GAAG,EAAE,+DAA+D;SACrE,CAAC,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,YAAY,CAAC;QACX,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,iBAAiB;QACxB,KAAK,EAAE;YACL,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE;YAC5B,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;SACpD;QACD,IAAI,EAAE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;KAC5D,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,MAAc;IACtC,OAAO,MAAM,CAAC,KAAK,CAAC,iCAAiC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,IAAY,EAAE,UAAkB;IAC9D,MAAM,eAAe,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,MAAM,0BAA0B,GAAG,eAAe,EAAE,gBAAgB;WAC/D,CAAC,aAAa,EAAE,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;WAC9E,EAAE,CAAC;IAER,SAAS,CAAC;QACR,IAAI;QACJ,QAAQ,EAAE,UAAU;QACpB,gBAAgB,EAAE,0BAA0B;KAC7C,CAAC,CAAC;IACH,OAAO;QACL,IAAI;QACJ,GAAG,EAAE,UAAU;KAChB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB;IACxB,OAAO,gBAAgB,EAAE,EAAE,QAAQ,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC;AAC7C,CAAC"}