openxiangda-cli 2.0.0-alpha.12

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 (195) hide show
  1. package/README.md +17 -0
  2. package/bin/run.js +4 -0
  3. package/dist/base.d.ts +13 -0
  4. package/dist/base.d.ts.map +1 -0
  5. package/dist/base.js +29 -0
  6. package/dist/base.js.map +1 -0
  7. package/dist/commands/app/create.d.ts +15 -0
  8. package/dist/commands/app/create.d.ts.map +1 -0
  9. package/dist/commands/app/create.js +42 -0
  10. package/dist/commands/app/create.js.map +1 -0
  11. package/dist/commands/app/info.d.ts +9 -0
  12. package/dist/commands/app/info.d.ts.map +1 -0
  13. package/dist/commands/app/info.js +10 -0
  14. package/dist/commands/app/info.js.map +1 -0
  15. package/dist/commands/app/link.d.ts +10 -0
  16. package/dist/commands/app/link.d.ts.map +1 -0
  17. package/dist/commands/app/link.js +16 -0
  18. package/dist/commands/app/link.js.map +1 -0
  19. package/dist/commands/app/provision.d.ts +9 -0
  20. package/dist/commands/app/provision.d.ts.map +1 -0
  21. package/dist/commands/app/provision.js +10 -0
  22. package/dist/commands/app/provision.js.map +1 -0
  23. package/dist/commands/auth/login.d.ts +10 -0
  24. package/dist/commands/auth/login.d.ts.map +1 -0
  25. package/dist/commands/auth/login.js +34 -0
  26. package/dist/commands/auth/login.js.map +1 -0
  27. package/dist/commands/auth/logout.d.ts +6 -0
  28. package/dist/commands/auth/logout.d.ts.map +1 -0
  29. package/dist/commands/auth/logout.js +10 -0
  30. package/dist/commands/auth/logout.js.map +1 -0
  31. package/dist/commands/auth/status.d.ts +6 -0
  32. package/dist/commands/auth/status.d.ts.map +1 -0
  33. package/dist/commands/auth/status.js +19 -0
  34. package/dist/commands/auth/status.js.map +1 -0
  35. package/dist/commands/build.d.ts +11 -0
  36. package/dist/commands/build.d.ts.map +1 -0
  37. package/dist/commands/build.js +23 -0
  38. package/dist/commands/build.js.map +1 -0
  39. package/dist/commands/cancel.d.ts +12 -0
  40. package/dist/commands/cancel.d.ts.map +1 -0
  41. package/dist/commands/cancel.js +12 -0
  42. package/dist/commands/cancel.js.map +1 -0
  43. package/dist/commands/check.d.ts +9 -0
  44. package/dist/commands/check.d.ts.map +1 -0
  45. package/dist/commands/check.js +7 -0
  46. package/dist/commands/check.js.map +1 -0
  47. package/dist/commands/deploy.d.ts +15 -0
  48. package/dist/commands/deploy.d.ts.map +1 -0
  49. package/dist/commands/deploy.js +29 -0
  50. package/dist/commands/deploy.js.map +1 -0
  51. package/dist/commands/dev.d.ts +9 -0
  52. package/dist/commands/dev.d.ts.map +1 -0
  53. package/dist/commands/dev.js +7 -0
  54. package/dist/commands/dev.js.map +1 -0
  55. package/dist/commands/doctor.d.ts +9 -0
  56. package/dist/commands/doctor.d.ts.map +1 -0
  57. package/dist/commands/doctor.js +7 -0
  58. package/dist/commands/doctor.js.map +1 -0
  59. package/dist/commands/event/delivery/list.d.ts +10 -0
  60. package/dist/commands/event/delivery/list.d.ts.map +1 -0
  61. package/dist/commands/event/delivery/list.js +14 -0
  62. package/dist/commands/event/delivery/list.js.map +1 -0
  63. package/dist/commands/event/delivery/replay.d.ts +13 -0
  64. package/dist/commands/event/delivery/replay.d.ts.map +1 -0
  65. package/dist/commands/event/delivery/replay.js +16 -0
  66. package/dist/commands/event/delivery/replay.js.map +1 -0
  67. package/dist/commands/event/subscription/list.d.ts +9 -0
  68. package/dist/commands/event/subscription/list.d.ts.map +1 -0
  69. package/dist/commands/event/subscription/list.js +10 -0
  70. package/dist/commands/event/subscription/list.js.map +1 -0
  71. package/dist/commands/event/subscription/rotate-secret.d.ts +15 -0
  72. package/dist/commands/event/subscription/rotate-secret.d.ts.map +1 -0
  73. package/dist/commands/event/subscription/rotate-secret.js +33 -0
  74. package/dist/commands/event/subscription/rotate-secret.js.map +1 -0
  75. package/dist/commands/event/subscription/status.d.ts +14 -0
  76. package/dist/commands/event/subscription/status.d.ts.map +1 -0
  77. package/dist/commands/event/subscription/status.js +19 -0
  78. package/dist/commands/event/subscription/status.js.map +1 -0
  79. package/dist/commands/event/timer/list.d.ts +9 -0
  80. package/dist/commands/event/timer/list.d.ts.map +1 -0
  81. package/dist/commands/event/timer/list.js +10 -0
  82. package/dist/commands/event/timer/list.js.map +1 -0
  83. package/dist/commands/event/timer/status.d.ts +14 -0
  84. package/dist/commands/event/timer/status.d.ts.map +1 -0
  85. package/dist/commands/event/timer/status.js +19 -0
  86. package/dist/commands/event/timer/status.js.map +1 -0
  87. package/dist/commands/generate.d.ts +10 -0
  88. package/dist/commands/generate.d.ts.map +1 -0
  89. package/dist/commands/generate.js +8 -0
  90. package/dist/commands/generate.js.map +1 -0
  91. package/dist/commands/logs.d.ts +12 -0
  92. package/dist/commands/logs.d.ts.map +1 -0
  93. package/dist/commands/logs.js +9 -0
  94. package/dist/commands/logs.js.map +1 -0
  95. package/dist/commands/oauth/audit/list.d.ts +12 -0
  96. package/dist/commands/oauth/audit/list.d.ts.map +1 -0
  97. package/dist/commands/oauth/audit/list.js +20 -0
  98. package/dist/commands/oauth/audit/list.js.map +1 -0
  99. package/dist/commands/oauth/client/create.d.ts +13 -0
  100. package/dist/commands/oauth/client/create.d.ts.map +1 -0
  101. package/dist/commands/oauth/client/create.js +34 -0
  102. package/dist/commands/oauth/client/create.js.map +1 -0
  103. package/dist/commands/oauth/client/list.d.ts +9 -0
  104. package/dist/commands/oauth/client/list.d.ts.map +1 -0
  105. package/dist/commands/oauth/client/list.js +10 -0
  106. package/dist/commands/oauth/client/list.js.map +1 -0
  107. package/dist/commands/oauth/client/revoke.d.ts +12 -0
  108. package/dist/commands/oauth/client/revoke.d.ts.map +1 -0
  109. package/dist/commands/oauth/client/revoke.js +12 -0
  110. package/dist/commands/oauth/client/revoke.js.map +1 -0
  111. package/dist/commands/oauth/client/rotate.d.ts +13 -0
  112. package/dist/commands/oauth/client/rotate.d.ts.map +1 -0
  113. package/dist/commands/oauth/client/rotate.js +20 -0
  114. package/dist/commands/oauth/client/rotate.js.map +1 -0
  115. package/dist/commands/oauth/client/update.d.ts +15 -0
  116. package/dist/commands/oauth/client/update.d.ts.map +1 -0
  117. package/dist/commands/oauth/client/update.js +23 -0
  118. package/dist/commands/oauth/client/update.js.map +1 -0
  119. package/dist/commands/oauth/runtime/rotate.d.ts +12 -0
  120. package/dist/commands/oauth/runtime/rotate.d.ts.map +1 -0
  121. package/dist/commands/oauth/runtime/rotate.js +31 -0
  122. package/dist/commands/oauth/runtime/rotate.js.map +1 -0
  123. package/dist/commands/oauth/runtime/status.d.ts +10 -0
  124. package/dist/commands/oauth/runtime/status.d.ts.map +1 -0
  125. package/dist/commands/oauth/runtime/status.js +17 -0
  126. package/dist/commands/oauth/runtime/status.js.map +1 -0
  127. package/dist/commands/promote.d.ts +13 -0
  128. package/dist/commands/promote.d.ts.map +1 -0
  129. package/dist/commands/promote.js +9 -0
  130. package/dist/commands/promote.js.map +1 -0
  131. package/dist/commands/retry.d.ts +12 -0
  132. package/dist/commands/retry.d.ts.map +1 -0
  133. package/dist/commands/retry.js +9 -0
  134. package/dist/commands/retry.js.map +1 -0
  135. package/dist/commands/rollback.d.ts +13 -0
  136. package/dist/commands/rollback.d.ts.map +1 -0
  137. package/dist/commands/rollback.js +9 -0
  138. package/dist/commands/rollback.js.map +1 -0
  139. package/dist/commands/secret/audit/list.d.ts +14 -0
  140. package/dist/commands/secret/audit/list.d.ts.map +1 -0
  141. package/dist/commands/secret/audit/list.js +16 -0
  142. package/dist/commands/secret/audit/list.js.map +1 -0
  143. package/dist/commands/secret/create.d.ts +18 -0
  144. package/dist/commands/secret/create.d.ts.map +1 -0
  145. package/dist/commands/secret/create.js +33 -0
  146. package/dist/commands/secret/create.js.map +1 -0
  147. package/dist/commands/secret/delete.d.ts +15 -0
  148. package/dist/commands/secret/delete.d.ts.map +1 -0
  149. package/dist/commands/secret/delete.js +20 -0
  150. package/dist/commands/secret/delete.js.map +1 -0
  151. package/dist/commands/secret/list.d.ts +10 -0
  152. package/dist/commands/secret/list.d.ts.map +1 -0
  153. package/dist/commands/secret/list.js +14 -0
  154. package/dist/commands/secret/list.js.map +1 -0
  155. package/dist/commands/secret/rotate.d.ts +18 -0
  156. package/dist/commands/secret/rotate.d.ts.map +1 -0
  157. package/dist/commands/secret/rotate.js +30 -0
  158. package/dist/commands/secret/rotate.js.map +1 -0
  159. package/dist/commands/secret/update.d.ts +17 -0
  160. package/dist/commands/secret/update.d.ts.map +1 -0
  161. package/dist/commands/secret/update.js +37 -0
  162. package/dist/commands/secret/update.js.map +1 -0
  163. package/dist/commands/skill/install.d.ts +11 -0
  164. package/dist/commands/skill/install.d.ts.map +1 -0
  165. package/dist/commands/skill/install.js +52 -0
  166. package/dist/commands/skill/install.js.map +1 -0
  167. package/dist/commands/skill/validate.d.ts +9 -0
  168. package/dist/commands/skill/validate.d.ts.map +1 -0
  169. package/dist/commands/skill/validate.js +32 -0
  170. package/dist/commands/skill/validate.js.map +1 -0
  171. package/dist/commands/status.d.ts +12 -0
  172. package/dist/commands/status.d.ts.map +1 -0
  173. package/dist/commands/status.js +9 -0
  174. package/dist/commands/status.js.map +1 -0
  175. package/dist/commands/test.d.ts +9 -0
  176. package/dist/commands/test.d.ts.map +1 -0
  177. package/dist/commands/test.js +7 -0
  178. package/dist/commands/test.js.map +1 -0
  179. package/dist/commands/workflow/provider/list.d.ts +10 -0
  180. package/dist/commands/workflow/provider/list.d.ts.map +1 -0
  181. package/dist/commands/workflow/provider/list.js +14 -0
  182. package/dist/commands/workflow/provider/list.js.map +1 -0
  183. package/dist/commands/workflow/provider/rotate.d.ts +15 -0
  184. package/dist/commands/workflow/provider/rotate.d.ts.map +1 -0
  185. package/dist/commands/workflow/provider/rotate.js +24 -0
  186. package/dist/commands/workflow/provider/rotate.js.map +1 -0
  187. package/dist/index.d.ts +3 -0
  188. package/dist/index.d.ts.map +1 -0
  189. package/dist/index.js +3 -0
  190. package/dist/index.js.map +1 -0
  191. package/dist/secret-value.d.ts +5 -0
  192. package/dist/secret-value.d.ts.map +1 -0
  193. package/dist/secret-value.js +15 -0
  194. package/dist/secret-value.js.map +1 -0
  195. package/package.json +42 -0
package/README.md ADDED
@@ -0,0 +1,17 @@
1
+ # openxiangda-cli
2
+
3
+ The thin OpenXiangda 2.0 CLI exposes only application-level commands. Each
4
+ command parses input, calls one `OpenXiangdaApplicationServices` use case and
5
+ renders its `DevkitResult`; commands never invoke other commands or parse their
6
+ stdout. React, Ant Design and editor runtimes are intentionally absent.
7
+
8
+ The CLI includes application creation, deterministic contract generation,
9
+ checks/tests/build/deploy, OAuth2 client lifecycle, platform-managed runtime
10
+ credential status/rotation, environment Secret management, event operations
11
+ and staged Workflow Provider rotation. Runtime rotation stages a credential by
12
+ CAS and promotes the currently active immutable AppVersion, so no secret is
13
+ returned to the CLI and retries reuse one idempotency key. Secret
14
+ values are read only from an environment variable or file and are never
15
+ accepted as a command argument or rendered in output. A disposable application
16
+ can use `app create --local-sdk <openxiangda-v2-root>` to test unpublished
17
+ packages through pnpm link overrides.
package/bin/run.js ADDED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env node
2
+ import { execute } from '@oclif/core';
3
+
4
+ await execute({ dir: import.meta.url });
package/dist/base.d.ts ADDED
@@ -0,0 +1,13 @@
1
+ import { Command } from '@oclif/core';
2
+ import type { DevkitResult } from 'openxiangda-contracts';
3
+ import { OpenXiangdaApplicationServices } from 'openxiangda-devkit-core';
4
+ export declare const workspaceFlags: {
5
+ cwd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
6
+ };
7
+ export declare const backendImageFlag: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ export declare abstract class OpenXiangdaCommand extends Command {
9
+ static enableJsonFlag: boolean;
10
+ protected readonly services: OpenXiangdaApplicationServices;
11
+ protected present(result: DevkitResult<unknown>): DevkitResult<unknown>;
12
+ }
13
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAEzE,eAAO,MAAM,cAAc;;CAE1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,iHAI3B,CAAC;AAEH,8BAAsB,kBAAmB,SAAQ,OAAO;IACtD,MAAM,CAAC,cAAc,UAAQ;IAE7B,SAAS,CAAC,QAAQ,CAAC,QAAQ,iCAAwC;IAEnE,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC;CAYhD"}
package/dist/base.js ADDED
@@ -0,0 +1,29 @@
1
+ import { Command, Flags } from '@oclif/core';
2
+ import { OpenXiangdaApplicationServices } from 'openxiangda-devkit-core';
3
+ export const workspaceFlags = {
4
+ cwd: Flags.string({ summary: '应用工作区目录', helpValue: '<directory>' }),
5
+ };
6
+ export const backendImageFlag = Flags.string({
7
+ summary: '已经推送的不可变后端 OCI image',
8
+ helpValue: '<registry/repository@sha256:digest>',
9
+ env: 'OPENXIANGDA_BACKEND_IMAGE',
10
+ });
11
+ export class OpenXiangdaCommand extends Command {
12
+ static enableJsonFlag = true;
13
+ services = new OpenXiangdaApplicationServices();
14
+ present(result) {
15
+ if (!result.ok)
16
+ process.exitCode = 1;
17
+ this.log(`${result.ok ? '✓' : '✗'} ${result.operation}`);
18
+ for (const diagnostic of result.diagnostics) {
19
+ this.log(` ${diagnostic.code}: ${diagnostic.message}`);
20
+ if (diagnostic.remediation)
21
+ this.log(` → ${diagnostic.remediation}`);
22
+ }
23
+ if (result.data !== undefined) {
24
+ this.log(JSON.stringify(result.data, null, 2));
25
+ }
26
+ return result;
27
+ }
28
+ }
29
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAEzE,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;CACpE,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC;IAC3C,OAAO,EAAE,sBAAsB;IAC/B,SAAS,EAAE,qCAAqC;IAChD,GAAG,EAAE,2BAA2B;CACjC,CAAC,CAAC;AAEH,MAAM,OAAgB,kBAAmB,SAAQ,OAAO;IACtD,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;IAEV,QAAQ,GAAG,IAAI,8BAA8B,EAAE,CAAC;IAEzD,OAAO,CAAC,MAA6B;QAC7C,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QACzD,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,IAAI,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;YACxD,IAAI,UAAU,CAAC,WAAW;gBAAE,IAAI,CAAC,GAAG,CAAC,OAAO,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { OpenXiangdaCommand } from "../../base.js";
2
+ export default class AppCreate extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static args: {
5
+ directory: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
6
+ };
7
+ static flags: {
8
+ "app-code": import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
9
+ name: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
10
+ install: import("@oclif/core/interfaces").BooleanFlag<boolean>;
11
+ "local-sdk": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
12
+ };
13
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
14
+ }
15
+ //# sourceMappingURL=create.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/app/create.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,kBAAkB;IACvD,MAAM,CAAC,OAAO,SAA+B;IAC7C,MAAM,CAAC,IAAI;;MAAkD;IAC7D,MAAM,CAAC,KAAK;;;;;MAOV;IAEI,GAAG;CA0BV"}
@@ -0,0 +1,42 @@
1
+ import { Args, Flags } from "@oclif/core";
2
+ import { createWorkspace } from "create-openxiangda";
3
+ import { OpenXiangdaCommand } from "../../base.js";
4
+ export default class AppCreate extends OpenXiangdaCommand {
5
+ static summary = "从官方模板创建 React + NestJS 应用";
6
+ static args = { directory: Args.string({ required: true }) };
7
+ static flags = {
8
+ "app-code": Flags.string({ required: true, summary: "稳定应用代码" }),
9
+ name: Flags.string({ required: true, summary: "应用名称" }),
10
+ install: Flags.boolean({ summary: "创建后安装依赖" }),
11
+ "local-sdk": Flags.string({
12
+ summary: "使用本地 OpenXiangda 2.0 源码包,不经过 npm 发布",
13
+ }),
14
+ };
15
+ async run() {
16
+ const { args, flags } = await this.parse(AppCreate);
17
+ const data = await createWorkspace({
18
+ directory: args.directory,
19
+ appCode: flags["app-code"],
20
+ name: flags.name,
21
+ install: flags.install,
22
+ ...(flags["local-sdk"]
23
+ ? { localSdkRoot: flags["local-sdk"] }
24
+ : {}),
25
+ });
26
+ return this.present({
27
+ ok: true,
28
+ operation: "app.create",
29
+ workspace: { appCode: data.appCode, name: data.name, root: data.root },
30
+ data,
31
+ diagnostics: [],
32
+ nextActions: [
33
+ {
34
+ code: "check",
35
+ label: "检查应用",
36
+ command: `cd ${data.root} && openxiangda check`,
37
+ },
38
+ ],
39
+ });
40
+ }
41
+ }
42
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/app/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,kBAAkB;IACvD,MAAM,CAAC,OAAO,GAAG,2BAA2B,CAAC;IAC7C,MAAM,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IAC7D,MAAM,CAAC,KAAK,GAAG;QACb,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;QAC/D,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QACvD,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QAC9C,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;YACxB,OAAO,EAAE,qCAAqC;SAC/C,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC;YACjC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC;YAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC;gBACpB,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE;gBACtC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,OAAO,CAAC;YAClB,EAAE,EAAE,IAAI;YACR,SAAS,EAAE,YAAY;YACvB,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;YACtE,IAAI;YACJ,WAAW,EAAE,EAAE;YACf,WAAW,EAAE;gBACX;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE,MAAM,IAAI,CAAC,IAAI,uBAAuB;iBAChD;aACF;SACF,CAAC,CAAC;IACL,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { OpenXiangdaCommand } from '../../base.js';
2
+ export default class AppInfo extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static flags: {
5
+ cwd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
6
+ };
7
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
8
+ }
9
+ //# sourceMappingURL=info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../../src/commands/app/info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAkB,MAAM,eAAe,CAAC;AAEnE,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,kBAAkB;IACrD,MAAM,CAAC,OAAO,SAAqB;IACnC,MAAM,CAAC,KAAK;;MAAkB;IACxB,GAAG;CAIV"}
@@ -0,0 +1,10 @@
1
+ import { OpenXiangdaCommand, workspaceFlags } from '../../base.js';
2
+ export default class AppInfo extends OpenXiangdaCommand {
3
+ static summary = '读取 2.0 应用工作区上下文';
4
+ static flags = workspaceFlags;
5
+ async run() {
6
+ const { flags } = await this.parse(AppInfo);
7
+ return this.present(await this.services.workspaceContext(flags.cwd));
8
+ }
9
+ }
10
+ //# sourceMappingURL=info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info.js","sourceRoot":"","sources":["../../../src/commands/app/info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEnE,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,kBAAkB;IACrD,MAAM,CAAC,OAAO,GAAG,iBAAiB,CAAC;IACnC,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;IAC9B,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACvE,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { OpenXiangdaCommand } from '../../base.js';
2
+ export default class AppLink extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static flags: {
5
+ 'base-url': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
6
+ cwd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
7
+ };
8
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
9
+ }
10
+ //# sourceMappingURL=link.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../../src/commands/app/link.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAkB,MAAM,eAAe,CAAC;AAEnE,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,kBAAkB;IACrD,MAAM,CAAC,OAAO,SAAiB;IAC/B,MAAM,CAAC,KAAK;;;MAGV;IAEI,GAAG;CAQV"}
@@ -0,0 +1,16 @@
1
+ import { Flags } from '@oclif/core';
2
+ import { OpenXiangdaCommand, workspaceFlags } from '../../base.js';
3
+ export default class AppLink extends OpenXiangdaCommand {
4
+ static summary = '绑定 2.0 平台地址';
5
+ static flags = {
6
+ ...workspaceFlags,
7
+ 'base-url': Flags.string({ required: true }),
8
+ };
9
+ async run() {
10
+ const { flags } = await this.parse(AppLink);
11
+ return this.present(await this.services.linkApplication(flags.cwd, {
12
+ baseUrl: flags['base-url'],
13
+ }));
14
+ }
15
+ }
16
+ //# sourceMappingURL=link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link.js","sourceRoot":"","sources":["../../../src/commands/app/link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEnE,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,kBAAkB;IACrD,MAAM,CAAC,OAAO,GAAG,aAAa,CAAC;IAC/B,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,cAAc;QACjB,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;KAC7C,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,OAAO,CACjB,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE;YAC7C,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC;SAC3B,CAAC,CACH,CAAC;IACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { OpenXiangdaCommand } from "../../base.js";
2
+ export default class AppProvision extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static flags: {
5
+ cwd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
6
+ };
7
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
8
+ }
9
+ //# sourceMappingURL=provision.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provision.d.ts","sourceRoot":"","sources":["../../../src/commands/app/provision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAkB,MAAM,eAAe,CAAC;AAEnE,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,kBAAkB;IAC1D,MAAM,CAAC,OAAO,SAAsB;IACpC,MAAM,CAAC,KAAK;;MAAkB;IAExB,GAAG;CAIV"}
@@ -0,0 +1,10 @@
1
+ import { OpenXiangdaCommand, workspaceFlags } from "../../base.js";
2
+ export default class AppProvision extends OpenXiangdaCommand {
3
+ static summary = "在平台幂等创建 2.0 应用身份";
4
+ static flags = workspaceFlags;
5
+ async run() {
6
+ const { flags } = await this.parse(AppProvision);
7
+ return this.present(await this.services.provisionApplication(flags.cwd));
8
+ }
9
+ }
10
+ //# sourceMappingURL=provision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provision.js","sourceRoot":"","sources":["../../../src/commands/app/provision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEnE,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,kBAAkB;IAC1D,MAAM,CAAC,OAAO,GAAG,kBAAkB,CAAC;IACpC,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;IAE9B,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3E,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { OpenXiangdaCommand } from '../../base.js';
2
+ export default class AuthLogin extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static flags: {
5
+ 'base-url': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
6
+ token: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
7
+ };
8
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
9
+ }
10
+ //# sourceMappingURL=login.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/login.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,kBAAkB;IACvD,MAAM,CAAC,OAAO,SAA+B;IAC7C,MAAM,CAAC,KAAK;;;MAWV;IAEI,GAAG;CAeV"}
@@ -0,0 +1,34 @@
1
+ import { Flags } from '@oclif/core';
2
+ import { saveSession } from 'openxiangda-devkit-core';
3
+ import { OpenXiangdaCommand } from '../../base.js';
4
+ export default class AuthLogin extends OpenXiangdaCommand {
5
+ static summary = '保存 OpenXiangda 2.0 平台登录会话';
6
+ static flags = {
7
+ 'base-url': Flags.string({
8
+ required: true,
9
+ summary: '平台 service 基地址',
10
+ }),
11
+ token: Flags.string({
12
+ required: true,
13
+ allowStdin: true,
14
+ env: 'OPENXIANGDA_TOKEN',
15
+ summary: '用户访问 token;优先使用环境变量或 stdin',
16
+ }),
17
+ };
18
+ async run() {
19
+ const { flags } = await this.parse(AuthLogin);
20
+ const data = await saveSession({
21
+ baseUrl: flags['base-url'],
22
+ token: flags.token,
23
+ });
24
+ return this.present({
25
+ ok: true,
26
+ operation: 'auth.login',
27
+ workspace: { appCode: 'global', root: process.cwd() },
28
+ data,
29
+ diagnostics: [],
30
+ nextActions: [],
31
+ });
32
+ }
33
+ }
34
+ //# sourceMappingURL=login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/commands/auth/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,kBAAkB;IACvD,MAAM,CAAC,OAAO,GAAG,2BAA2B,CAAC;IAC7C,MAAM,CAAC,KAAK,GAAG;QACb,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC;YACvB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,gBAAgB;SAC1B,CAAC;QACF,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YAClB,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,IAAI;YAChB,GAAG,EAAE,mBAAmB;YACxB,OAAO,EAAE,4BAA4B;SACtC,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC;YAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,OAAO,CAAC;YAClB,EAAE,EAAE,IAAI;YACR,SAAS,EAAE,YAAY;YACvB,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE;YACrD,IAAI;YACJ,WAAW,EAAE,EAAE;YACf,WAAW,EAAE,EAAE;SAChB,CAAC,CAAC;IACL,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { OpenXiangdaCommand } from '../../base.js';
2
+ export default class AuthLogout extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
5
+ }
6
+ //# sourceMappingURL=logout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/logout.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,kBAAkB;IACxD,MAAM,CAAC,OAAO,SAA6B;IAErC,GAAG;CAIV"}
@@ -0,0 +1,10 @@
1
+ import { clearSession } from 'openxiangda-devkit-core';
2
+ import { OpenXiangdaCommand } from '../../base.js';
3
+ export default class AuthLogout extends OpenXiangdaCommand {
4
+ static summary = '删除 OpenXiangda 2.0 登录会话';
5
+ async run() {
6
+ await clearSession();
7
+ return this.present({ ok: true, operation: 'auth.logout', workspace: { appCode: 'global', root: process.cwd() }, data: { loggedOut: true }, diagnostics: [], nextActions: [] });
8
+ }
9
+ }
10
+ //# sourceMappingURL=logout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../../src/commands/auth/logout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,kBAAkB;IACxD,MAAM,CAAC,OAAO,GAAG,yBAAyB,CAAC;IAE3C,KAAK,CAAC,GAAG;QACP,MAAM,YAAY,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IAClL,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { OpenXiangdaCommand } from '../../base.js';
2
+ export default class AuthStatus extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
5
+ }
6
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/status.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,kBAAkB;IACxD,MAAM,CAAC,OAAO,SAA6B;IAErC,GAAG;CAaV"}
@@ -0,0 +1,19 @@
1
+ import { loadSession, redactToken } from 'openxiangda-devkit-core';
2
+ import { OpenXiangdaCommand } from '../../base.js';
3
+ export default class AuthStatus extends OpenXiangdaCommand {
4
+ static summary = '查看 OpenXiangda 2.0 登录状态';
5
+ async run() {
6
+ const session = await loadSession();
7
+ return this.present({
8
+ ok: Boolean(session),
9
+ operation: 'auth.status',
10
+ workspace: { appCode: 'global', root: process.cwd() },
11
+ ...(session ? { data: { ...session, token: redactToken(session.token) } } : {}),
12
+ diagnostics: session
13
+ ? []
14
+ : [{ schemaVersion: 'openxiangda.diagnostic/v2', code: 'OPENXIANGDA_AUTH_REQUIRED', severity: 'error', message: '尚未登录', retryable: false }],
15
+ nextActions: session ? [] : [{ code: 'login', label: '登录平台', command: 'openxiangda auth login' }],
16
+ });
17
+ }
18
+ }
19
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/auth/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,kBAAkB;IACxD,MAAM,CAAC,OAAO,GAAG,yBAAyB,CAAC;IAE3C,KAAK,CAAC,GAAG;QACP,MAAM,OAAO,GAAG,MAAM,WAAW,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC,OAAO,CAAC;YAClB,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC;YACpB,SAAS,EAAE,aAAa;YACxB,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE;YACrD,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/E,WAAW,EAAE,OAAO;gBAClB,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,2BAA2B,EAAE,IAAI,EAAE,2BAA2B,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;YAC7I,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC;SAClG,CAAC,CAAC;IACL,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { OpenXiangdaCommand } from '../base.js';
2
+ export default class Build extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static flags: {
5
+ 'backend-image': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
6
+ 'skip-workspace-build': import("@oclif/core/interfaces").BooleanFlag<boolean>;
7
+ cwd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ };
9
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
10
+ }
11
+ //# sourceMappingURL=build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAoC,MAAM,YAAY,CAAC;AAClF,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,kBAAkB;IACnD,MAAM,CAAC,OAAO,SAAwB;IACtC,MAAM,CAAC,KAAK;;;;MAMV;IACI,GAAG;CAYV"}
@@ -0,0 +1,23 @@
1
+ import { Flags } from '@oclif/core';
2
+ import { OpenXiangdaCommand, backendImageFlag, workspaceFlags } from '../base.js';
3
+ export default class Build extends OpenXiangdaCommand {
4
+ static summary = '构建并密封一个 AppPackage';
5
+ static flags = {
6
+ ...workspaceFlags,
7
+ 'backend-image': backendImageFlag,
8
+ 'skip-workspace-build': Flags.boolean({
9
+ summary: '仅供已完成构建的 CI 使用',
10
+ }),
11
+ };
12
+ async run() {
13
+ const { flags } = await this.parse(Build);
14
+ return this.present(await this.services.build({
15
+ ...(flags.cwd ? { root: flags.cwd } : {}),
16
+ ...(flags['backend-image']
17
+ ? { backendImage: flags['backend-image'] }
18
+ : {}),
19
+ skipWorkspaceBuild: flags['skip-workspace-build'],
20
+ }));
21
+ }
22
+ }
23
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAClF,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,kBAAkB;IACnD,MAAM,CAAC,OAAO,GAAG,oBAAoB,CAAC;IACtC,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,cAAc;QACjB,eAAe,EAAE,gBAAgB;QACjC,sBAAsB,EAAE,KAAK,CAAC,OAAO,CAAC;YACpC,OAAO,EAAE,gBAAgB;SAC1B,CAAC;KACH,CAAC;IACF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,OAAO,CACjB,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACxB,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC;gBACxB,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,eAAe,CAAC,EAAE;gBAC1C,CAAC,CAAC,EAAE,CAAC;YACP,kBAAkB,EAAE,KAAK,CAAC,sBAAsB,CAAC;SAClD,CAAC,CACH,CAAC;IACJ,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { OpenXiangdaCommand } from '../base.js';
2
+ export default class Cancel extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static args: {
5
+ deploymentId: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
6
+ };
7
+ static flags: {
8
+ cwd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
+ };
10
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
11
+ }
12
+ //# sourceMappingURL=cancel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancel.d.ts","sourceRoot":"","sources":["../../src/commands/cancel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAkB,MAAM,YAAY,CAAC;AAEhE,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,kBAAkB;IACpD,MAAM,CAAC,OAAO,SAAwB;IACtC,MAAM,CAAC,IAAI;;MAAqD;IAChE,MAAM,CAAC,KAAK;;MAAkB;IAExB,GAAG;CAMV"}
@@ -0,0 +1,12 @@
1
+ import { Args } from '@oclif/core';
2
+ import { OpenXiangdaCommand, workspaceFlags } from '../base.js';
3
+ export default class Cancel extends OpenXiangdaCommand {
4
+ static summary = '幂等取消 DeploymentRun';
5
+ static args = { deploymentId: Args.string({ required: true }) };
6
+ static flags = workspaceFlags;
7
+ async run() {
8
+ const { args, flags } = await this.parse(Cancel);
9
+ return this.present(await this.services.cancel(flags.cwd, args.deploymentId));
10
+ }
11
+ }
12
+ //# sourceMappingURL=cancel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancel.js","sourceRoot":"","sources":["../../src/commands/cancel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEhE,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,kBAAkB;IACpD,MAAM,CAAC,OAAO,GAAG,oBAAoB,CAAC;IACtC,MAAM,CAAC,IAAI,GAAG,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IAChE,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;IAE9B,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC,OAAO,CACjB,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CACzD,CAAC;IACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { OpenXiangdaCommand } from '../base.js';
2
+ export default class Check extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static flags: {
5
+ cwd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
6
+ };
7
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
8
+ }
9
+ //# sourceMappingURL=check.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAkB,MAAM,YAAY,CAAC;AAChE,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,kBAAkB;IACnD,MAAM,CAAC,OAAO,SAAe;IAC7B,MAAM,CAAC,KAAK;;MAAkB;IACxB,GAAG;CACV"}
@@ -0,0 +1,7 @@
1
+ import { OpenXiangdaCommand, workspaceFlags } from '../base.js';
2
+ export default class Check extends OpenXiangdaCommand {
3
+ static summary = '确定性检查完整应用';
4
+ static flags = workspaceFlags;
5
+ async run() { const { flags } = await this.parse(Check); return this.present(await this.services.check(flags.cwd)); }
6
+ }
7
+ //# sourceMappingURL=check.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAChE,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,kBAAkB;IACnD,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC;IAC7B,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;IAC9B,KAAK,CAAC,GAAG,KAAK,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { OpenXiangdaCommand } from '../base.js';
2
+ export default class Deploy extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static args: {
5
+ environment: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
6
+ };
7
+ static flags: {
8
+ 'backend-image': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
+ 'environment-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
+ 'idempotency-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
11
+ cwd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
12
+ };
13
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
14
+ }
15
+ //# sourceMappingURL=deploy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAoC,MAAM,YAAY,CAAC;AAClF,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,kBAAkB;IACpD,MAAM,CAAC,OAAO,SAA6B;IAC3C,MAAM,CAAC,IAAI;;MAA6G;IACxH,MAAM,CAAC,KAAK;;;;;MAKV;IACI,GAAG;CAqBV"}
@@ -0,0 +1,29 @@
1
+ import { Args, Flags } from '@oclif/core';
2
+ import { OpenXiangdaCommand, backendImageFlag, workspaceFlags } from '../base.js';
3
+ export default class Deploy extends OpenXiangdaCommand {
4
+ static summary = '创建平台持久执行的 DeploymentRun';
5
+ static args = { environment: Args.string({ required: true, options: ['development', 'preproduction', 'production'] }) };
6
+ static flags = {
7
+ ...workspaceFlags,
8
+ 'backend-image': backendImageFlag,
9
+ 'environment-id': Flags.string(),
10
+ 'idempotency-key': Flags.string(),
11
+ };
12
+ async run() {
13
+ const { args, flags } = await this.parse(Deploy);
14
+ return this.present(await this.services.deploy({
15
+ ...(flags.cwd ? { root: flags.cwd } : {}),
16
+ environment: args.environment,
17
+ ...(flags['backend-image']
18
+ ? { backendImage: flags['backend-image'] }
19
+ : {}),
20
+ ...(flags['environment-id']
21
+ ? { environmentId: flags['environment-id'] }
22
+ : {}),
23
+ ...(flags['idempotency-key']
24
+ ? { idempotencyKey: flags['idempotency-key'] }
25
+ : {}),
26
+ }));
27
+ }
28
+ }
29
+ //# sourceMappingURL=deploy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAClF,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,kBAAkB;IACpD,MAAM,CAAC,OAAO,GAAG,yBAAyB,CAAC;IAC3C,MAAM,CAAC,IAAI,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,aAAa,EAAE,eAAe,EAAE,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;IACxH,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,cAAc;QACjB,eAAe,EAAE,gBAAgB;QACjC,gBAAgB,EAAE,KAAK,CAAC,MAAM,EAAE;QAChC,iBAAiB,EAAE,KAAK,CAAC,MAAM,EAAE;KAClC,CAAC;IACF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC,OAAO,CACjB,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACzB,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,WAAW,EAAE,IAAI,CAAC,WAGF;YAChB,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC;gBACxB,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,eAAe,CAAC,EAAE;gBAC1C,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC;gBACzB,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,gBAAgB,CAAC,EAAE;gBAC5C,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC;gBAC1B,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,iBAAiB,CAAC,EAAE;gBAC9C,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CACH,CAAC;IACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { OpenXiangdaCommand } from '../base.js';
2
+ export default class Dev extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static flags: {
5
+ cwd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
6
+ };
7
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
8
+ }
9
+ //# sourceMappingURL=dev.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAkB,MAAM,YAAY,CAAC;AAChE,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,kBAAkB;IACjD,MAAM,CAAC,OAAO,SAA4B;IAC1C,MAAM,CAAC,KAAK;;MAAkB;IACxB,GAAG;CACV"}
@@ -0,0 +1,7 @@
1
+ import { OpenXiangdaCommand, workspaceFlags } from '../base.js';
2
+ export default class Dev extends OpenXiangdaCommand {
3
+ static summary = '启动 React 与 NestJS 开发进程';
4
+ static flags = workspaceFlags;
5
+ async run() { const { flags } = await this.parse(Dev); return this.present(await this.services.dev(flags.cwd)); }
6
+ }
7
+ //# sourceMappingURL=dev.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAChE,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,kBAAkB;IACjD,MAAM,CAAC,OAAO,GAAG,wBAAwB,CAAC;IAC1C,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;IAC9B,KAAK,CAAC,GAAG,KAAK,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { OpenXiangdaCommand } from '../base.js';
2
+ export default class Doctor extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static flags: {
5
+ cwd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
6
+ };
7
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
8
+ }
9
+ //# sourceMappingURL=doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAkB,MAAM,YAAY,CAAC;AAChE,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,kBAAkB;IACpD,MAAM,CAAC,OAAO,SAAmB;IACjC,MAAM,CAAC,KAAK;;MAAkB;IACxB,GAAG;CACV"}
@@ -0,0 +1,7 @@
1
+ import { OpenXiangdaCommand, workspaceFlags } from '../base.js';
2
+ export default class Doctor extends OpenXiangdaCommand {
3
+ static summary = '诊断本地工具链和平台兼容性';
4
+ static flags = workspaceFlags;
5
+ async run() { const { flags } = await this.parse(Doctor); return this.present(await this.services.doctor(flags.cwd)); }
6
+ }
7
+ //# sourceMappingURL=doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAChE,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,kBAAkB;IACpD,MAAM,CAAC,OAAO,GAAG,eAAe,CAAC;IACjC,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;IAC9B,KAAK,CAAC,GAAG,KAAK,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { OpenXiangdaCommand } from "../../../base.js";
2
+ export default class EventDeliveryList extends OpenXiangdaCommand {
3
+ static summary: string;
4
+ static flags: {
5
+ limit: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
6
+ cwd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
7
+ };
8
+ run(): Promise<import("openxiangda-contracts").DevkitResult<unknown>>;
9
+ }
10
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/commands/event/delivery/list.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAkB,MAAM,kBAAkB,CAAC;AAEtE,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,kBAAkB;IAC/D,MAAM,CAAC,OAAO,SAAoB;IAClC,MAAM,CAAC,KAAK;;;MAGV;IAEI,GAAG;CAIV"}