downcity 1.1.145 → 1.1.147

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.145",
3
+ "version": "1.1.147",
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/city": "^0.2.57",
48
47
  "@downcity/agent": "^1.1.104",
49
- "@downcity/plugins": "^1.0.56"
48
+ "@downcity/plugins": "^1.0.56",
49
+ "@downcity/city": "^0.2.57"
50
50
  },
51
51
  "scripts": {
52
52
  "build": "node scripts/copy-cli-products.mjs && node scripts/ensure-cli-executable.mjs",
@@ -4,6 +4,7 @@
4
4
  * 关键点(中文)
5
5
  * - 用全屏 TUI 替换 `prompts` 的交互行为,但尽量保持返回结构兼容。
6
6
  * - 先覆盖当前仓库里实际使用到的 `select / multiselect / text / password / confirm / number`。
7
+ * - 选择类问题统一在左侧 sidebar 交互,右侧 main_section 只展示详情或输入。
7
8
  * - 脚本模式仍由调用方自己兜底;这里默认只服务交互式 TTY 场景。
8
9
  */
9
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Prompts.d.ts","sourceRoot":"","sources":["../../src/tui/Prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,YAAY;IACZ,IAAI,EAAE,QAAQ,GAAG,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;IAE5E,aAAa;IACb,IAAI,EAAE,MAAM,CAAC;IAEb,YAAY;IACZ,OAAO,EAAE,MAAM,CAAC;IAEhB,YAAY;IACZ,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,OAAO,CAAC;KAChB,CAAC,CAAC;IAEH,WAAW;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,YAAY;IACZ,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,MAAM,CAAC;IAEzC,WAAW;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AA+BD,UAAU,iBAAiB;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,wBAA8B,OAAO,CACnC,KAAK,EAAE,YAAY,GAAG,YAAY,EAAE,GACnC,OAAO,CAAC,iBAAiB,CAAC,CAa5B"}
1
+ {"version":3,"file":"Prompts.d.ts","sourceRoot":"","sources":["../../src/tui/Prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,YAAY;IACZ,IAAI,EAAE,QAAQ,GAAG,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;IAE5E,aAAa;IACb,IAAI,EAAE,MAAM,CAAC;IAEb,YAAY;IACZ,OAAO,EAAE,MAAM,CAAC;IAEhB,YAAY;IACZ,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,OAAO,CAAC;KAChB,CAAC,CAAC;IAEH,WAAW;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,YAAY;IACZ,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,MAAM,CAAC;IAEzC,WAAW;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAiDD,UAAU,iBAAiB;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,wBAA8B,OAAO,CACnC,KAAK,EAAE,YAAY,GAAG,YAAY,EAAE,GACnC,OAAO,CAAC,iBAAiB,CAAC,CAa5B"}
@@ -4,6 +4,7 @@
4
4
  * 关键点(中文)
5
5
  * - 用全屏 TUI 替换 `prompts` 的交互行为,但尽量保持返回结构兼容。
6
6
  * - 先覆盖当前仓库里实际使用到的 `select / multiselect / text / password / confirm / number`。
7
+ * - 选择类问题统一在左侧 sidebar 交互,右侧 main_section 只展示详情或输入。
7
8
  * - 脚本模式仍由调用方自己兜底;这里默认只服务交互式 TTY 场景。
8
9
  */
9
10
  import blessed from "neo-blessed";
@@ -44,47 +45,52 @@ async function run_select_prompt(question) {
44
45
  const choices = question.choices ?? [];
45
46
  const initial_index = normalize_initial_index(question.initial, choices.length);
46
47
  return await new Promise((resolve) => {
47
- const screen = create_screen(question.message);
48
+ const shell = create_prompt_shell(question.message);
49
+ const { screen } = shell;
48
50
  let finished = false;
51
+ let raw_input_listener;
49
52
  const finish = (value) => {
50
53
  if (finished)
51
54
  return;
52
55
  finished = true;
56
+ cleanup();
53
57
  screen.destroy();
54
58
  resolve(value);
55
59
  };
60
+ const cleanup = () => {
61
+ if (raw_input_listener) {
62
+ process.stdin.off("data", raw_input_listener);
63
+ raw_input_listener = undefined;
64
+ }
65
+ };
56
66
  const list = blessed.list({
57
- parent: screen,
58
- top: 0,
67
+ parent: shell.sidebar_box,
68
+ top: 2,
59
69
  left: 0,
60
- width: "42%",
61
- height: "100%-3",
70
+ width: "100%",
71
+ height: "100%-2",
62
72
  keys: true,
63
73
  vi: true,
64
74
  mouse: true,
65
- border: "line",
66
- label: " Select ",
67
75
  style: build_list_style(),
68
- items: choices.map((item) => format_choice_title(item)),
76
+ items: choices.map((item) => format_choice_label(item)),
69
77
  });
70
78
  const detail = blessed.box({
71
- parent: screen,
79
+ parent: shell.main_box,
72
80
  top: 0,
73
- left: "42%",
74
- width: "58%",
75
- height: "100%-3",
76
- border: "line",
77
- label: " Detail ",
81
+ left: 0,
82
+ width: "100%",
83
+ height: "100%",
78
84
  padding: { left: 1, right: 1, top: 1, bottom: 1 },
79
85
  scrollable: true,
80
86
  alwaysScroll: true,
81
87
  tags: true,
82
88
  content: format_choice_detail(choices[initial_index]),
83
89
  style: {
84
- border: { fg: "green" },
90
+ fg: "white",
85
91
  },
86
92
  });
87
- create_footer(screen, "Enter choose · Esc cancel · ↑↓ / j k navigate");
93
+ shell.footer_box.setContent("Enter choose · Esc cancel · ↑↓ / j k navigate");
88
94
  list.select(initial_index);
89
95
  list.focus();
90
96
  list.on("select item", (_item, index_value) => {
@@ -97,6 +103,18 @@ async function run_select_prompt(question) {
97
103
  finish(choices[index]?.value);
98
104
  });
99
105
  screen.key(["escape", "q", "C-c"], () => finish(undefined));
106
+ raw_input_listener = (chunk) => {
107
+ const text = String(chunk);
108
+ if (text.includes("\u0003") || is_plain_escape_input(text)) {
109
+ finish(undefined);
110
+ return;
111
+ }
112
+ if (text.includes("\r") || text.includes("\n")) {
113
+ const index = typeof list.selected === "number" ? list.selected : initial_index;
114
+ finish(choices[index]?.value);
115
+ }
116
+ };
117
+ process.stdin.on("data", raw_input_listener);
100
118
  screen.render();
101
119
  });
102
120
  }
@@ -105,47 +123,52 @@ async function run_multiselect_prompt(question) {
105
123
  const selected_indexes = new Set();
106
124
  let current_index = normalize_initial_index(question.initial, choices.length);
107
125
  return await new Promise((resolve) => {
108
- const screen = create_screen(question.message);
126
+ const shell = create_prompt_shell(question.message);
127
+ const { screen } = shell;
109
128
  let finished = false;
129
+ let raw_input_listener;
110
130
  const finish = (value) => {
111
131
  if (finished)
112
132
  return;
113
133
  finished = true;
134
+ cleanup();
114
135
  screen.destroy();
115
136
  resolve(value);
116
137
  };
138
+ const cleanup = () => {
139
+ if (raw_input_listener) {
140
+ process.stdin.off("data", raw_input_listener);
141
+ raw_input_listener = undefined;
142
+ }
143
+ };
117
144
  const list = blessed.list({
118
- parent: screen,
119
- top: 0,
145
+ parent: shell.sidebar_box,
146
+ top: 2,
120
147
  left: 0,
121
- width: "42%",
122
- height: "100%-3",
148
+ width: "100%",
149
+ height: "100%-2",
123
150
  keys: true,
124
151
  vi: true,
125
152
  mouse: true,
126
- border: "line",
127
- label: " Multi Select ",
128
153
  style: build_list_style(),
129
154
  items: build_multiselect_items(choices, selected_indexes),
130
155
  });
131
156
  const detail = blessed.box({
132
- parent: screen,
157
+ parent: shell.main_box,
133
158
  top: 0,
134
- left: "42%",
135
- width: "58%",
136
- height: "100%-3",
137
- border: "line",
138
- label: " Detail ",
159
+ left: 0,
160
+ width: "100%",
161
+ height: "100%",
139
162
  padding: { left: 1, right: 1, top: 1, bottom: 1 },
140
163
  scrollable: true,
141
164
  alwaysScroll: true,
142
165
  tags: true,
143
166
  content: format_choice_detail(choices[current_index]),
144
167
  style: {
145
- border: { fg: "green" },
168
+ fg: "white",
146
169
  },
147
170
  });
148
- create_footer(screen, "Space toggle · Enter confirm · Esc cancel · ↑↓ / j k navigate");
171
+ shell.footer_box.setContent("Space toggle · Enter confirm · Esc cancel · ↑↓ / j k navigate");
149
172
  const sync_list = () => {
150
173
  list.setItems(build_multiselect_items(choices, selected_indexes));
151
174
  list.select(current_index);
@@ -169,13 +192,29 @@ async function run_multiselect_prompt(question) {
169
192
  sync_list();
170
193
  });
171
194
  list.key(["enter"], () => {
172
- const values = [...selected_indexes]
173
- .sort((left, right) => left - right)
174
- .map((index) => choices[index]?.value)
175
- .filter((value) => value !== undefined);
176
- finish(values);
195
+ finish(build_multiselect_values(choices, selected_indexes));
177
196
  });
178
197
  screen.key(["escape", "q", "C-c"], () => finish(undefined));
198
+ raw_input_listener = (chunk) => {
199
+ const text = String(chunk);
200
+ if (text.includes("\u0003") || is_plain_escape_input(text)) {
201
+ finish(undefined);
202
+ return;
203
+ }
204
+ if (text.includes(" ")) {
205
+ if (selected_indexes.has(current_index)) {
206
+ selected_indexes.delete(current_index);
207
+ }
208
+ else {
209
+ selected_indexes.add(current_index);
210
+ }
211
+ sync_list();
212
+ }
213
+ if (text.includes("\r") || text.includes("\n")) {
214
+ finish(build_multiselect_values(choices, selected_indexes));
215
+ }
216
+ };
217
+ process.stdin.on("data", raw_input_listener);
179
218
  screen.render();
180
219
  });
181
220
  }
@@ -194,48 +233,71 @@ async function run_confirm_prompt(question) {
194
233
  },
195
234
  ];
196
235
  return await new Promise((resolve) => {
197
- const screen = create_screen(question.message);
236
+ const shell = create_prompt_shell(question.message);
237
+ const { screen } = shell;
198
238
  let finished = false;
239
+ let raw_input_listener;
199
240
  const finish = (value) => {
200
241
  if (finished)
201
242
  return;
202
243
  finished = true;
244
+ cleanup();
203
245
  screen.destroy();
204
246
  resolve(value);
205
247
  };
248
+ const cleanup = () => {
249
+ if (raw_input_listener) {
250
+ process.stdin.off("data", raw_input_listener);
251
+ raw_input_listener = undefined;
252
+ }
253
+ };
206
254
  const list = blessed.list({
207
- parent: screen,
208
- top: "center",
209
- left: "center",
210
- width: "60%",
211
- height: 8,
255
+ parent: shell.sidebar_box,
256
+ top: 2,
257
+ left: 0,
258
+ width: "100%",
259
+ height: "100%-2",
212
260
  keys: true,
213
261
  vi: true,
214
262
  mouse: true,
215
- border: "line",
216
- label: " Confirm ",
217
263
  style: build_list_style(),
218
264
  items: choices.map((item) => item.title),
219
265
  });
220
266
  const note = blessed.box({
221
- parent: screen,
222
- top: "center-6",
223
- left: "center",
224
- width: "60%",
225
- height: 3,
267
+ parent: shell.main_box,
268
+ top: 0,
269
+ left: 0,
270
+ width: "100%",
271
+ height: "100%",
226
272
  tags: true,
227
- align: "center",
228
- content: question.message,
273
+ padding: { left: 1, right: 1, top: 1, bottom: 1 },
274
+ content: format_choice_detail(choices[initial_value ? 0 : 1]),
229
275
  });
230
- create_footer(screen, "Enter choose · Esc cancel");
276
+ shell.footer_box.setContent("Enter choose · Esc cancel");
231
277
  list.select(initial_value ? 0 : 1);
232
278
  list.focus();
233
279
  list.key(["enter"], () => {
234
280
  const index = typeof list.selected === "number" ? list.selected : (initial_value ? 0 : 1);
235
- note.setContent(choices[index]?.description || question.message);
236
281
  finish(Boolean(choices[index]?.value));
237
282
  });
283
+ list.on("select item", (_item, index_value) => {
284
+ const index = typeof index_value === "number" ? index_value : 0;
285
+ note.setContent(format_choice_detail(choices[index]));
286
+ screen.render();
287
+ });
238
288
  screen.key(["escape", "q", "C-c"], () => finish(undefined));
289
+ raw_input_listener = (chunk) => {
290
+ const text = String(chunk);
291
+ if (text.includes("\u0003") || is_plain_escape_input(text)) {
292
+ finish(undefined);
293
+ return;
294
+ }
295
+ if (text.includes("\r") || text.includes("\n")) {
296
+ const index = typeof list.selected === "number" ? list.selected : (initial_value ? 0 : 1);
297
+ finish(Boolean(choices[index]?.value));
298
+ }
299
+ };
300
+ process.stdin.on("data", raw_input_listener);
239
301
  screen.render();
240
302
  });
241
303
  }
@@ -285,7 +347,8 @@ async function run_number_prompt(question) {
285
347
  async function open_text_prompt_once(question, options) {
286
348
  const initial_value = String(question.initial ?? "");
287
349
  return await new Promise((resolve) => {
288
- const screen = create_screen(question.message);
350
+ const shell = create_prompt_shell(question.message);
351
+ const { screen } = shell;
289
352
  let finished = false;
290
353
  let raw_input_listener;
291
354
  const finish = (value) => {
@@ -299,7 +362,7 @@ async function open_text_prompt_once(question, options) {
299
362
  resolve(value);
300
363
  };
301
364
  blessed.box({
302
- parent: screen,
365
+ parent: shell.main_box,
303
366
  top: 4,
304
367
  left: "center",
305
368
  width: "70%",
@@ -309,7 +372,7 @@ async function open_text_prompt_once(question, options) {
309
372
  content: question.message,
310
373
  });
311
374
  const hint_box = blessed.box({
312
- parent: screen,
375
+ parent: shell.main_box,
313
376
  top: 14,
314
377
  left: "center",
315
378
  width: "70%",
@@ -321,7 +384,7 @@ async function open_text_prompt_once(question, options) {
321
384
  },
322
385
  });
323
386
  const textbox = blessed.textbox({
324
- parent: screen,
387
+ parent: shell.main_box,
325
388
  top: 8,
326
389
  left: "center",
327
390
  width: "70%",
@@ -351,7 +414,7 @@ async function open_text_prompt_once(question, options) {
351
414
  hint_box.setContent(options.error_message);
352
415
  screen.render();
353
416
  };
354
- create_footer(screen, "Type text · Enter submit · Esc cancel · Ctrl+U clear");
417
+ shell.footer_box.setContent("Type text · Enter submit · Esc cancel · Ctrl+U clear");
355
418
  screen.key(["escape", "C-c"], () => finish(undefined));
356
419
  textbox.key(["enter", "return"], () => {
357
420
  // 关键点(中文):不同终端会把回车解析为 enter 或 return,统一转成 textbox submit。
@@ -403,7 +466,7 @@ async function validate_prompt_value(question, value) {
403
466
  const result = await question.validate(value);
404
467
  return result === true ? true : String(result || "Invalid input");
405
468
  }
406
- function create_screen(title) {
469
+ function create_prompt_shell(title) {
407
470
  const screen = blessed.screen({
408
471
  smartCSR: true,
409
472
  fullUnicode: true,
@@ -415,24 +478,43 @@ function create_screen(title) {
415
478
  bg: "black",
416
479
  fg: "white",
417
480
  };
418
- blessed.box({
481
+ const sidebar_box = blessed.box({
419
482
  parent: screen,
420
483
  top: 0,
421
484
  left: 0,
422
- width: "100%",
423
- height: 3,
424
- tags: true,
485
+ width: "34%",
486
+ height: "100%-3",
425
487
  border: "line",
426
- padding: { left: 1, top: 1 },
427
- content: `{bold}${title}{/bold}`,
488
+ label: " Sidebar ",
428
489
  style: {
429
490
  border: { fg: "green" },
430
491
  },
431
492
  });
432
- return screen;
433
- }
434
- function create_footer(screen, content) {
435
493
  blessed.box({
494
+ parent: sidebar_box,
495
+ top: 0,
496
+ left: 1,
497
+ width: "100%-2",
498
+ height: 2,
499
+ content: format_breadcrumb(title),
500
+ style: {
501
+ fg: "green",
502
+ bold: true,
503
+ },
504
+ });
505
+ const main_box = blessed.box({
506
+ parent: screen,
507
+ top: 0,
508
+ left: "34%",
509
+ width: "66%",
510
+ height: "100%-3",
511
+ border: "line",
512
+ label: " Main ",
513
+ style: {
514
+ border: { fg: "green" },
515
+ },
516
+ });
517
+ const footer_box = blessed.box({
436
518
  parent: screen,
437
519
  left: 0,
438
520
  bottom: 0,
@@ -444,8 +526,14 @@ function create_footer(screen, content) {
444
526
  border: { fg: "green" },
445
527
  fg: "gray",
446
528
  },
447
- content,
529
+ content: "",
448
530
  });
531
+ return {
532
+ screen,
533
+ sidebar_box,
534
+ main_box,
535
+ footer_box,
536
+ };
449
537
  }
450
538
  function build_list_style() {
451
539
  return {
@@ -458,10 +546,8 @@ function build_list_style() {
458
546
  },
459
547
  };
460
548
  }
461
- function format_choice_title(choice) {
462
- const title = String(choice?.title ?? choice?.label ?? "").trim();
463
- const hint = String(choice?.description ?? choice?.hint ?? "").trim();
464
- return hint ? `${title}\n${hint}` : title;
549
+ function format_choice_label(choice) {
550
+ return String(choice?.title ?? choice?.label ?? "").trim();
465
551
  }
466
552
  function format_choice_detail(choice) {
467
553
  if (!choice) {
@@ -480,10 +566,15 @@ function build_multiselect_items(choices, selected_indexes) {
480
566
  return choices.map((choice, index) => {
481
567
  const checked = selected_indexes.has(index) ? "[x]" : "[ ]";
482
568
  const title = String(choice.title ?? choice.label ?? "").trim();
483
- const hint = String(choice.description ?? choice.hint ?? "").trim();
484
- return hint ? `${checked} ${title}\n${hint}` : `${checked} ${title}`;
569
+ return `${checked} ${title}`;
485
570
  });
486
571
  }
572
+ function build_multiselect_values(choices, selected_indexes) {
573
+ return [...selected_indexes]
574
+ .sort((left, right) => left - right)
575
+ .map((index) => choices[index]?.value)
576
+ .filter((value) => value !== undefined);
577
+ }
487
578
  function normalize_initial_index(initial, length) {
488
579
  if (length <= 0) {
489
580
  return 0;
@@ -507,4 +598,7 @@ function submit_textbox_value(textbox, finish) {
507
598
  function is_plain_escape_input(text) {
508
599
  return text === "\u001b";
509
600
  }
601
+ function format_breadcrumb(value) {
602
+ return value.padEnd(80, " ");
603
+ }
510
604
  //# sourceMappingURL=Prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Prompts.js","sourceRoot":"","sources":["../../src/tui/Prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Prompts.js","sourceRoot":"","sources":["../../src/tui/Prompts.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 关键点(中文)
5
5
  * - 这是裸 `town` 的默认入口。
6
- * - 进入具体动作前销毁 TUI,再复用现有命令/交互流程。
6
+ * - 左侧 sidebar 承载动作菜单与 breadcrumb,右侧 main_section 展示当前动作说明。
7
7
  * - 动作结束后返回仪表盘,形成统一终端操作台体验。
8
8
  */
9
9
  import type { tui_action_result } from "../types/Tui.js";
@@ -1 +1 @@
1
- {"version":3,"file":"TownDashboard.d.ts","sourceRoot":"","sources":["../../src/tui/TownDashboard.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,iBAAiB,CAAC;AAExE,KAAK,gBAAgB,GACjB,QAAQ,GACR,OAAO,GACP,MAAM,GACN,SAAS,GACT,MAAM,GACN,OAAO,GACP,QAAQ,GACR,UAAU,GACV,MAAM,GACN,MAAM,CAAC;AAEX,UAAU,sBAAsB;IAC9B,cAAc;IACd,UAAU,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACtE;AAuBD;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAaf"}
1
+ {"version":3,"file":"TownDashboard.d.ts","sourceRoot":"","sources":["../../src/tui/TownDashboard.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,iBAAiB,CAAC;AAExE,KAAK,gBAAgB,GACjB,QAAQ,GACR,OAAO,GACP,MAAM,GACN,SAAS,GACT,MAAM,GACN,OAAO,GACP,QAAQ,GACR,UAAU,GACV,MAAM,GACN,MAAM,CAAC;AAEX,UAAU,sBAAsB;IAC9B,cAAc;IACd,UAAU,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACtE;AAwCD;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAaf"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 关键点(中文)
5
5
  * - 这是裸 `town` 的默认入口。
6
- * - 进入具体动作前销毁 TUI,再复用现有命令/交互流程。
6
+ * - 左侧 sidebar 承载动作菜单与 breadcrumb,右侧 main_section 展示当前动作说明。
7
7
  * - 动作结束后返回仪表盘,形成统一终端操作台体验。
8
8
  */
9
9
  import blessed from "neo-blessed";
@@ -156,13 +156,8 @@ async function build_town_dashboard_state() {
156
156
  }
157
157
  async function run_town_dashboard_once(state) {
158
158
  return await new Promise((resolve) => {
159
- const screen = blessed.screen({
160
- smartCSR: true,
161
- fullUnicode: true,
162
- title: "Downcity Town",
163
- dockBorders: true,
164
- autoPadding: true,
165
- });
159
+ const shell = create_town_dashboard_shell(state);
160
+ const { screen } = shell;
166
161
  let finished = false;
167
162
  const finish = (value) => {
168
163
  if (finished)
@@ -171,43 +166,16 @@ async function run_town_dashboard_once(state) {
171
166
  screen.destroy();
172
167
  resolve(value);
173
168
  };
174
- const root = blessed.box({
175
- parent: screen,
176
- width: "100%",
177
- height: "100%",
178
- style: {
179
- fg: "white",
180
- bg: "black",
181
- },
182
- });
183
- blessed.box({
184
- parent: root,
185
- top: 0,
186
- left: 0,
187
- width: "100%",
188
- height: 4,
189
- tags: true,
190
- padding: { left: 1, right: 1, top: 1 },
191
- content: `{bold}${state.title}{/bold}\n${state.subtitle}`,
192
- border: "line",
193
- style: {
194
- border: { fg: "green" },
195
- },
196
- });
197
169
  const list = blessed.list({
198
- parent: root,
199
- top: 4,
170
+ parent: shell.sidebar_box,
171
+ top: 2,
200
172
  left: 0,
201
- width: "42%",
202
- height: "shrink",
203
- bottom: 3,
173
+ width: "100%",
174
+ height: "100%-2",
204
175
  keys: true,
205
176
  vi: true,
206
177
  mouse: true,
207
- border: "line",
208
- label: ` ${t({ zh: "动作", en: "Actions" })} `,
209
178
  style: {
210
- border: { fg: "green" },
211
179
  item: { fg: "white" },
212
180
  selected: {
213
181
  fg: "black",
@@ -218,39 +186,22 @@ async function run_town_dashboard_once(state) {
218
186
  items: state.items.map(format_list_label),
219
187
  });
220
188
  const detail = blessed.box({
221
- parent: root,
189
+ parent: shell.main_box,
222
190
  top: 4,
223
- left: "42%",
224
- width: "58%",
225
- height: "shrink",
226
- bottom: 3,
191
+ left: 0,
192
+ width: "100%",
193
+ height: "100%-4",
227
194
  padding: { left: 1, right: 1, top: 1, bottom: 1 },
228
195
  tags: true,
229
196
  scrollable: true,
230
197
  alwaysScroll: true,
231
198
  keys: true,
232
199
  mouse: true,
233
- border: "line",
234
- label: ` ${t({ zh: "详情", en: "Details" })} `,
235
200
  style: {
236
- border: { fg: "green" },
201
+ fg: "white",
237
202
  },
238
203
  content: format_detail_content(state.items[0]),
239
204
  });
240
- blessed.box({
241
- parent: root,
242
- left: 0,
243
- bottom: 0,
244
- width: "100%",
245
- height: 3,
246
- padding: { left: 1, right: 1, top: 1 },
247
- border: "line",
248
- style: {
249
- border: { fg: "green" },
250
- fg: "gray",
251
- },
252
- content: state.footer,
253
- });
254
205
  list.on("select item", (_item, index_value) => {
255
206
  const index = typeof index_value === "number" ? index_value : 0;
256
207
  const next_item = state.items[index];
@@ -276,6 +227,85 @@ async function run_town_dashboard_once(state) {
276
227
  screen.render();
277
228
  });
278
229
  }
230
+ function create_town_dashboard_shell(state) {
231
+ const screen = blessed.screen({
232
+ smartCSR: true,
233
+ fullUnicode: true,
234
+ title: "Downcity Town",
235
+ dockBorders: true,
236
+ autoPadding: true,
237
+ });
238
+ screen.style = {
239
+ bg: "black",
240
+ fg: "white",
241
+ };
242
+ const sidebar_box = blessed.box({
243
+ parent: screen,
244
+ top: 0,
245
+ left: 0,
246
+ width: "34%",
247
+ height: "100%-3",
248
+ border: "line",
249
+ label: " Sidebar ",
250
+ style: {
251
+ border: { fg: "green" },
252
+ },
253
+ });
254
+ const breadcrumb_box = blessed.box({
255
+ parent: sidebar_box,
256
+ top: 0,
257
+ left: 1,
258
+ width: "100%-2",
259
+ height: 2,
260
+ content: format_breadcrumb(state.title),
261
+ style: {
262
+ fg: "green",
263
+ bold: true,
264
+ },
265
+ });
266
+ const main_box = blessed.box({
267
+ parent: screen,
268
+ top: 0,
269
+ left: "34%",
270
+ width: "66%",
271
+ height: "100%-3",
272
+ border: "line",
273
+ label: " Main ",
274
+ style: {
275
+ border: { fg: "green" },
276
+ },
277
+ });
278
+ blessed.box({
279
+ parent: main_box,
280
+ top: 0,
281
+ left: 1,
282
+ width: "100%-2",
283
+ height: 3,
284
+ tags: true,
285
+ content: `{bold}${state.title}{/bold}\n${state.subtitle}`,
286
+ });
287
+ const footer_box = blessed.box({
288
+ parent: screen,
289
+ left: 0,
290
+ bottom: 0,
291
+ width: "100%",
292
+ height: 3,
293
+ padding: { left: 1, right: 1, top: 1 },
294
+ border: "line",
295
+ style: {
296
+ border: { fg: "green" },
297
+ fg: "gray",
298
+ },
299
+ content: state.footer,
300
+ });
301
+ return {
302
+ screen,
303
+ sidebar_box,
304
+ breadcrumb_box,
305
+ main_box,
306
+ footer_box,
307
+ };
308
+ }
279
309
  async function safe_count_running_agents() {
280
310
  try {
281
311
  return (await resolveRunningManagedAgents({ syncRegistry: false })).length;
@@ -373,6 +403,9 @@ function format_list_label(item) {
373
403
  function format_detail_content(item) {
374
404
  return `{bold}${item.title}{/bold}\n${item.subtitle}\n\n${item.detail}`;
375
405
  }
406
+ function format_breadcrumb(value) {
407
+ return value.padEnd(80, " ");
408
+ }
376
409
  function read_town_cli_version() {
377
410
  try {
378
411
  const package_json_path = new URL("../../package.json", import.meta.url);
@@ -1 +1 @@
1
- {"version":3,"file":"TownDashboard.js","sourceRoot":"","sources":["../../src/tui/TownDashboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TownDashboard.js","sourceRoot":"","sources":["../../src/tui/TownDashboard.ts"],"names":[],"mappings":"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"}