downcity 1.1.121 → 1.1.125

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "downcity",
3
- "version": "1.1.121",
3
+ "version": "1.1.125",
4
4
  "type": "module",
5
5
  "description": "Downcity CLI bundle — installs city and town commands",
6
6
  "bin": {
@@ -44,9 +44,9 @@
44
44
  "prompts": "^2.4.2",
45
45
  "ws": "^8.21.0",
46
46
  "zod": "^4.4.3",
47
- "@downcity/agent": "^1.1.97",
48
- "@downcity/plugins": "^1.0.48",
49
- "@downcity/city": "^0.2.53"
47
+ "@downcity/city": "^0.2.56",
48
+ "@downcity/plugins": "^1.0.51",
49
+ "@downcity/agent": "^1.1.100"
50
50
  },
51
51
  "scripts": {
52
52
  "build": "node scripts/copy-cli-products.mjs && node scripts/ensure-cli-executable.mjs",
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Town City user 余额与充值流程。
3
+ *
4
+ * 关键点(中文)
5
+ * - 只面向当前 Town 已登录的 City user,不提供 admin 加款入口。
6
+ * - 充值链路复用 City 的 balance topup 与 payment checkout 服务。
7
+ * - 交互菜单只调用这里的高层函数,避免 CityConnection 模块继续膨胀。
8
+ */
9
+ import type { TownCityBalanceAccount, TownCityRechargeInput, TownCityRechargeResult } from "../types/TownCityBalance.js";
10
+ import type { TownCityUserSession } from "../types/TownCitySession.js";
11
+ /**
12
+ * 读取当前 Town City user 的余额。
13
+ */
14
+ export declare function readCurrentTownCityBalance(session: TownCityUserSession | null): Promise<TownCityBalanceAccount | null>;
15
+ /**
16
+ * 给当前 Town City user 发起充值。
17
+ */
18
+ export declare function rechargeCurrentTownCityUser(session: TownCityUserSession | null, input: TownCityRechargeInput): Promise<TownCityRechargeResult | null>;
19
+ /**
20
+ * 输出当前 user 余额。
21
+ */
22
+ export declare function emitCurrentTownCityBalance(session: TownCityUserSession | null): Promise<void>;
23
+ /**
24
+ * 输出当前 user 充值结果。
25
+ */
26
+ export declare function emitTownCityRechargeResult(result: TownCityRechargeResult): void;
27
+ //# sourceMappingURL=CityBalance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CityBalance.d.ts","sourceRoot":"","sources":["../../src/shared/CityBalance.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EACV,sBAAsB,EAGtB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAIvE;;GAEG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,mBAAmB,GAAG,IAAI,GAClC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAIxC;AAED;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,mBAAmB,GAAG,IAAI,EACnC,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CA4BxC;AAED;;GAEG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,mBAAmB,GAAG,IAAI,GAClC,OAAO,CAAC,IAAI,CAAC,CAef;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAoB/E"}
@@ -0,0 +1,141 @@
1
+ /**
2
+ * Town City user 余额与充值流程。
3
+ *
4
+ * 关键点(中文)
5
+ * - 只面向当前 Town 已登录的 City user,不提供 admin 加款入口。
6
+ * - 充值链路复用 City 的 balance topup 与 payment checkout 服务。
7
+ * - 交互菜单只调用这里的高层函数,避免 CityConnection 模块继续膨胀。
8
+ */
9
+ import { spawnSync } from "node:child_process";
10
+ import { City } from "@downcity/city";
11
+ import { emitCliBlock } from "./CliReporter.js";
12
+ const DEFAULT_PAYMENT_METHOD_ID = "stripe";
13
+ /**
14
+ * 读取当前 Town City user 的余额。
15
+ */
16
+ export async function readCurrentTownCityBalance(session) {
17
+ const client = createCurrentUserCityClient(session);
18
+ if (!client)
19
+ return null;
20
+ return await client.service("balance").get("me");
21
+ }
22
+ /**
23
+ * 给当前 Town City user 发起充值。
24
+ */
25
+ export async function rechargeCurrentTownCityUser(session, input) {
26
+ const client = createCurrentUserCityClient(session);
27
+ if (!client)
28
+ return null;
29
+ const amount = normalizePositiveInteger(input.amount, "amount");
30
+ const method_id = normalizeText(input.method_id) || DEFAULT_PAYMENT_METHOD_ID;
31
+ const topup = await client.service("balance").action("topups/create").invoke({
32
+ amount,
33
+ note: normalizeText(input.note) || "Town user recharge",
34
+ ref: normalizeText(input.ref),
35
+ meta: {
36
+ source: "town-cli",
37
+ method_id,
38
+ },
39
+ });
40
+ const checkout = await client.payment.method(method_id).invoke({
41
+ topup_id: topup.topup_id,
42
+ });
43
+ const checkout_url = normalizeText(checkout.checkout_url);
44
+ const should_open = input.open_checkout !== false;
45
+ const opened = should_open && checkout_url ? openBrowser(checkout_url) : false;
46
+ return {
47
+ topup,
48
+ checkout,
49
+ method_id,
50
+ opened,
51
+ };
52
+ }
53
+ /**
54
+ * 输出当前 user 余额。
55
+ */
56
+ export async function emitCurrentTownCityBalance(session) {
57
+ const account = await readCurrentTownCityBalance(session);
58
+ if (!account)
59
+ return;
60
+ emitCliBlock({
61
+ tone: "success",
62
+ title: "User balance",
63
+ summary: `${account.balance} ${account.unit}`,
64
+ facts: [
65
+ { label: "user", value: account.user_id },
66
+ { label: "balance", value: String(account.balance) },
67
+ { label: "unit", value: account.unit },
68
+ { label: "updated", value: account.updated_at },
69
+ ],
70
+ });
71
+ }
72
+ /**
73
+ * 输出当前 user 充值结果。
74
+ */
75
+ export function emitTownCityRechargeResult(result) {
76
+ const checkout_url = normalizeText(result.checkout.checkout_url);
77
+ emitCliBlock({
78
+ tone: checkout_url ? "success" : "warning",
79
+ title: "User recharge",
80
+ summary: result.topup.status,
81
+ facts: [
82
+ { label: "amount", value: `${result.topup.amount} ${result.topup.unit}` },
83
+ { label: "topup", value: result.topup.topup_id },
84
+ { label: "method", value: result.method_id },
85
+ ...(result.checkout.payment_id
86
+ ? [{ label: "payment", value: String(result.checkout.payment_id) }]
87
+ : []),
88
+ ...(checkout_url ? [{ label: "checkout", value: checkout_url }] : []),
89
+ { label: "browser", value: result.opened ? "opened" : "not opened" },
90
+ ],
91
+ note: checkout_url
92
+ ? "Complete the checkout page to finish the recharge."
93
+ : "Checkout URL was not returned by the payment service.",
94
+ });
95
+ }
96
+ function createCurrentUserCityClient(session) {
97
+ if (!session) {
98
+ emitCliBlock({
99
+ tone: "warning",
100
+ title: "City user not signed in",
101
+ note: "Run `town city login` first, or choose User 登录 in this manager.",
102
+ });
103
+ return null;
104
+ }
105
+ return new City({
106
+ role: "user",
107
+ city_url: session.base_url,
108
+ town_id: session.town_id,
109
+ user_token: session.user_token,
110
+ });
111
+ }
112
+ function normalizePositiveInteger(value, label) {
113
+ const amount = typeof value === "number" ? value : Number(value);
114
+ if (!Number.isInteger(amount) || amount <= 0) {
115
+ throw new TypeError(`${label} must be a positive integer`);
116
+ }
117
+ return amount;
118
+ }
119
+ function normalizeText(value) {
120
+ return typeof value === "string" ? value.trim() : "";
121
+ }
122
+ function openBrowser(url) {
123
+ const command = process.platform === "darwin"
124
+ ? "open"
125
+ : process.platform === "win32"
126
+ ? "cmd"
127
+ : "xdg-open";
128
+ const args = process.platform === "win32"
129
+ ? ["/c", "start", "", url]
130
+ : [url];
131
+ try {
132
+ const result = spawnSync(command, args, {
133
+ stdio: "ignore",
134
+ });
135
+ return result.status === 0;
136
+ }
137
+ catch {
138
+ return false;
139
+ }
140
+ }
141
+ //# sourceMappingURL=CityBalance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CityBalance.js","sourceRoot":"","sources":["../../src/shared/CityBalance.ts"],"names":[],"mappings":"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"}
@@ -8,10 +8,12 @@
8
8
  * - CLI 命令装配统一放在 `src/command/CityCommand.ts`,本模块只保留状态与登录流程。
9
9
  */
10
10
  import type { TownCityConnectionState } from "../types/TownCityConnection.js";
11
+ import type { TownCityUserSession } from "../types/TownCitySession.js";
11
12
  export declare const DEFAULT_CITY_URL = "https://base.downcity.ai";
12
13
  export declare const DEFAULT_TOWN_ID = "town_downcity";
13
14
  export declare function normalizeCityUrl(value: string): string;
14
15
  export declare function readTownCityAdminSecretForBase(city_url: string): string | undefined;
16
+ export declare function readCurrentTownCitySession(): TownCityUserSession | null;
15
17
  export declare function readTownCityUserSessionForRuntime(): {
16
18
  city_url: string;
17
19
  town_id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"CityConnection.d.ts","sourceRoot":"","sources":["../../src/shared/CityConnection.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAUH,OAAO,KAAK,EACV,uBAAuB,EAExB,MAAM,gCAAgC,CAAC;AAQxC,eAAO,MAAM,gBAAgB,6BAA6B,CAAC;AAC3D,eAAO,MAAM,eAAe,kBAAkB,CAAC;AAqB/C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAatD;AAsHD,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEnF;AAwGD,wBAAgB,iCAAiC,IAAI;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,IAAI,CAUP;AAED,wBAAgB,2BAA2B,IAAI,uBAAuB,CA0BrE;AAED,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CA8B9E;AAED,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CA+BxE;AAED,wBAAsB,qBAAqB,CAAC,MAAM,EAAE;IAClD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2BhB;AAED,wBAAsB,iBAAiB,CAAC,MAAM,EAAE;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgChB;AAiBD,wBAAsB,mBAAmB,CAAC,MAAM,EAAE;IAChD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoChB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAiB1E;AAED,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAqB9E;AAmDD,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CAsC/D"}
1
+ {"version":3,"file":"CityConnection.d.ts","sourceRoot":"","sources":["../../src/shared/CityConnection.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAeH,OAAO,KAAK,EACV,uBAAuB,EAExB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAOvE,eAAO,MAAM,gBAAgB,6BAA6B,CAAC;AAC3D,eAAO,MAAM,eAAe,kBAAkB,CAAC;AAqB/C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAatD;AAsHD,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEnF;AAkGD,wBAAgB,0BAA0B,IAAI,mBAAmB,GAAG,IAAI,CAIvE;AAED,wBAAgB,iCAAiC,IAAI;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,IAAI,CAUP;AAED,wBAAgB,2BAA2B,IAAI,uBAAuB,CA0BrE;AAED,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CA8B9E;AAED,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CA+BxE;AAED,wBAAsB,qBAAqB,CAAC,MAAM,EAAE;IAClD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2BhB;AAED,wBAAsB,iBAAiB,CAAC,MAAM,EAAE;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgChB;AAiBD,wBAAsB,mBAAmB,CAAC,MAAM,EAAE;IAChD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoChB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAiB1E;AAED,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAqB9E;AA6DD,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CAkD/D"}
@@ -15,6 +15,7 @@ import { PlatformStore } from "../town/store/index.js";
15
15
  import { emitCliBlock, emitCliList } from "./CliReporter.js";
16
16
  import { printResult } from "../utils/cli/CliOutput.js";
17
17
  import { performTownCityUserLogin } from "./CityUserLogin.js";
18
+ import { emitCurrentTownCityBalance, emitTownCityRechargeResult, rechargeCurrentTownCityUser, } from "./CityBalance.js";
18
19
  export const DEFAULT_CITY_URL = "https://base.downcity.ai";
19
20
  export const DEFAULT_TOWN_ID = "town_downcity";
20
21
  const CITY_CONFIG_PATH = path.join(os.homedir(), ".downcity", "config.json");
@@ -240,7 +241,7 @@ function findCityServer(input) {
240
241
  server.base_url === normalized_query_url ||
241
242
  server.base_url === query) ?? null;
242
243
  }
243
- function readCurrentTownCitySession() {
244
+ export function readCurrentTownCitySession() {
244
245
  const state = readTownCityState();
245
246
  const base_url = resolveSelectedBaseUrl(state);
246
247
  return state.sessions?.[base_url] ?? null;
@@ -517,6 +518,16 @@ async function promptCityManagerAction() {
517
518
  description: state.has_user_token ? "重新登录当前 base" : "登录当前 base",
518
519
  value: "login",
519
520
  },
521
+ {
522
+ title: "查看 User 余额",
523
+ description: state.has_user_token ? "读取当前登录 user 的余额" : "需要先登录 user",
524
+ value: "balance",
525
+ },
526
+ {
527
+ title: "User 充值",
528
+ description: state.has_user_token ? "给当前登录 user 发起 checkout 充值" : "需要先登录 user",
529
+ value: "recharge",
530
+ },
520
531
  {
521
532
  title: "User 登出",
522
533
  description: "清除当前 base 的 Town user session",
@@ -571,6 +582,19 @@ export async function runInteractiveCityManager() {
571
582
  await runCityLoginCommand({});
572
583
  continue;
573
584
  }
585
+ if (action === "balance") {
586
+ await emitCurrentTownCityBalance(readCurrentTownCitySession());
587
+ continue;
588
+ }
589
+ if (action === "recharge") {
590
+ const input = await promptRechargeInput();
591
+ if (input) {
592
+ const result = await rechargeCurrentTownCityUser(readCurrentTownCitySession(), input);
593
+ if (result)
594
+ emitTownCityRechargeResult(result);
595
+ }
596
+ continue;
597
+ }
574
598
  if (action === "logout") {
575
599
  runCityLogoutCommand();
576
600
  }
@@ -594,4 +618,36 @@ async function promptSelectCityBase() {
594
618
  return null;
595
619
  return servers.find((server) => server.base_url === base_url) ?? null;
596
620
  }
621
+ async function promptRechargeInput() {
622
+ const response = (await prompts([
623
+ {
624
+ type: "number",
625
+ name: "amount",
626
+ message: "充值金额",
627
+ min: 1,
628
+ validate: (value) => Number.isInteger(value) && value > 0 ? true : "请输入正整数",
629
+ },
630
+ {
631
+ type: "text",
632
+ name: "note",
633
+ message: "说明(可选)",
634
+ initial: "Town user recharge",
635
+ },
636
+ {
637
+ type: "confirm",
638
+ name: "open_checkout",
639
+ message: "创建后打开支付页面?",
640
+ initial: true,
641
+ },
642
+ ]));
643
+ const amount = Number(response.amount);
644
+ if (!Number.isInteger(amount) || amount <= 0)
645
+ return null;
646
+ return {
647
+ amount,
648
+ method_id: "stripe",
649
+ note: readString(response.note),
650
+ open_checkout: response.open_checkout !== false,
651
+ };
652
+ }
597
653
  //# sourceMappingURL=CityConnection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CityConnection.js","sourceRoot":"","sources":["../../src/shared/CityConnection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CityConnection.js","sourceRoot":"","sources":["../../src/shared/CityConnection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,149 @@
1
+ /**
2
+ * Town City user 余额与充值类型。
3
+ *
4
+ * 关键点(中文)
5
+ * - 这些类型只描述 Town CLI 用户侧展示与调用结果。
6
+ * - 真实余额账户、充值单与支付记录仍由 City 的 balance/payment 服务定义。
7
+ */
8
+ /**
9
+ * 当前登录用户的余额账户摘要。
10
+ */
11
+ export interface TownCityBalanceAccount extends Record<string, unknown> {
12
+ /**
13
+ * City 用户 ID。
14
+ */
15
+ user_id: string;
16
+ /**
17
+ * 当前可用余额。
18
+ */
19
+ balance: number;
20
+ /**
21
+ * 余额单位。
22
+ */
23
+ unit: string;
24
+ /**
25
+ * 账户创建时间。
26
+ */
27
+ created_at: string;
28
+ /**
29
+ * 账户最近更新时间。
30
+ */
31
+ updated_at: string;
32
+ }
33
+ /**
34
+ * 当前登录用户创建的充值单摘要。
35
+ */
36
+ export interface TownCityBalanceTopup extends Record<string, unknown> {
37
+ /**
38
+ * 充值单 ID。
39
+ */
40
+ topup_id: string;
41
+ /**
42
+ * City 用户 ID。
43
+ */
44
+ user_id: string;
45
+ /**
46
+ * 充值金额。
47
+ */
48
+ amount: number;
49
+ /**
50
+ * 余额单位。
51
+ */
52
+ unit: string;
53
+ /**
54
+ * 充值单状态。
55
+ */
56
+ status: string;
57
+ /**
58
+ * 充值说明。
59
+ */
60
+ note: string;
61
+ /**
62
+ * 外部引用 ID。
63
+ */
64
+ ref: string;
65
+ /**
66
+ * 扩展字段 JSON 文本。
67
+ */
68
+ metadata_json: string;
69
+ /**
70
+ * 充值单创建时间。
71
+ */
72
+ created_at: string;
73
+ /**
74
+ * 充值单更新时间。
75
+ */
76
+ updated_at: string;
77
+ }
78
+ /**
79
+ * 支付 checkout 创建结果。
80
+ */
81
+ export interface TownCityCheckoutResult extends Record<string, unknown> {
82
+ /**
83
+ * 支付服务内部记录 ID。
84
+ */
85
+ payment_id?: string;
86
+ /**
87
+ * 对应的充值单 ID。
88
+ */
89
+ topup_id?: string;
90
+ /**
91
+ * 第三方支付 checkout session ID。
92
+ */
93
+ stripe_checkout_session_id?: string;
94
+ /**
95
+ * 可直接打开的 checkout URL。
96
+ */
97
+ checkout_url?: string;
98
+ /**
99
+ * 当前支付状态。
100
+ */
101
+ status?: string;
102
+ }
103
+ /**
104
+ * 当前登录用户充值流程结果。
105
+ */
106
+ export interface TownCityRechargeResult {
107
+ /**
108
+ * 充值单。
109
+ */
110
+ topup: TownCityBalanceTopup;
111
+ /**
112
+ * 支付 checkout 创建结果。
113
+ */
114
+ checkout: TownCityCheckoutResult;
115
+ /**
116
+ * 使用的支付方式 ID。
117
+ */
118
+ method_id: string;
119
+ /**
120
+ * 是否成功打开浏览器。
121
+ */
122
+ opened: boolean;
123
+ }
124
+ /**
125
+ * 当前登录用户充值输入。
126
+ */
127
+ export interface TownCityRechargeInput {
128
+ /**
129
+ * 充值金额。
130
+ */
131
+ amount: number;
132
+ /**
133
+ * 支付方式 ID。
134
+ */
135
+ method_id?: string;
136
+ /**
137
+ * 充值说明。
138
+ */
139
+ note?: string;
140
+ /**
141
+ * 外部引用 ID。
142
+ */
143
+ ref?: string;
144
+ /**
145
+ * 是否自动打开 checkout URL。
146
+ */
147
+ open_checkout?: boolean;
148
+ }
149
+ //# sourceMappingURL=TownCityBalance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TownCityBalance.d.ts","sourceRoot":"","sources":["../../src/types/TownCityBalance.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACrE;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnE;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACrE;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,KAAK,EAAE,oBAAoB,CAAC;IAE5B;;OAEG;IACH,QAAQ,EAAE,sBAAsB,CAAC;IAEjC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Town City user 余额与充值类型。
3
+ *
4
+ * 关键点(中文)
5
+ * - 这些类型只描述 Town CLI 用户侧展示与调用结果。
6
+ * - 真实余额账户、充值单与支付记录仍由 City 的 balance/payment 服务定义。
7
+ */
8
+ export {};
9
+ //# sourceMappingURL=TownCityBalance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TownCityBalance.js","sourceRoot":"","sources":["../../src/types/TownCityBalance.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}