dsh-cliworker-now 0.7.6 → 0.7.7

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 (144) hide show
  1. package/README.en.md +29 -9
  2. package/README.md +31 -9
  3. package/lib/account-models.mjs +16 -13
  4. package/lib/client.js +658 -61
  5. package/lib/client.js.map +1 -1
  6. package/lib/grok-catalog.mjs +2 -2
  7. package/lib/hermes-native-entry.py +48 -13
  8. package/lib/hermes-nous-refresh.py +331 -0
  9. package/lib/index.js +3724 -1589
  10. package/lib/index.js.map +1 -1
  11. package/lib/native-launch.mjs +62 -7
  12. package/lib/native-spawn.mjs +32 -0
  13. package/lib/pi-installation.mjs +27 -3
  14. package/lib/pi-native-catalog.mjs +2 -2
  15. package/lib/pi-omp-bridge.mjs +2 -2
  16. package/lib/private-launch.mjs +6 -2
  17. package/lib/terminal-bridge.mjs +2 -2
  18. package/lib/typert.host.js +83 -11
  19. package/lib/typert.remote-client.d.ts +2 -0
  20. package/lib/typert.remote-client.d.ts.map +1 -1
  21. package/lib/typert.remote-client.js +77 -11
  22. package/lib/types/client/account-query-queue.d.ts +16 -0
  23. package/lib/types/client/account-query-queue.js +61 -0
  24. package/lib/types/client/account-query-queue.js.map +1 -0
  25. package/lib/types/client/account-terminal.d.ts +6 -2
  26. package/lib/types/client/account-terminal.js +260 -31
  27. package/lib/types/client/account-terminal.js.map +1 -1
  28. package/lib/types/client/settings-dialog.js +65 -38
  29. package/lib/types/client/settings-dialog.js.map +1 -1
  30. package/lib/types/client/zcode-login-link-provider.d.ts +9 -0
  31. package/lib/types/client/zcode-login-link-provider.js +105 -0
  32. package/lib/types/client/zcode-login-link-provider.js.map +1 -0
  33. package/lib/types/client/zcode-login-link.d.ts +16 -0
  34. package/lib/types/client/zcode-login-link.js +194 -0
  35. package/lib/types/client/zcode-login-link.js.map +1 -0
  36. package/lib/types/host/account-models.d.mts +3 -1
  37. package/lib/types/host/account-models.mjs +16 -13
  38. package/lib/types/host/accounts.d.ts +3 -2
  39. package/lib/types/host/accounts.js +129 -22
  40. package/lib/types/host/accounts.js.map +1 -1
  41. package/lib/types/host/adapters.d.ts +1 -1
  42. package/lib/types/host/adapters.js +60 -11
  43. package/lib/types/host/adapters.js.map +1 -1
  44. package/lib/types/host/agy-models.d.ts +2 -1
  45. package/lib/types/host/agy-models.js +6 -6
  46. package/lib/types/host/agy-models.js.map +1 -1
  47. package/lib/types/host/agy-windows-account.d.ts +14 -0
  48. package/lib/types/host/agy-windows-account.js +104 -0
  49. package/lib/types/host/agy-windows-account.js.map +1 -0
  50. package/lib/types/host/authorized-catalog.js +13 -4
  51. package/lib/types/host/authorized-catalog.js.map +1 -1
  52. package/lib/types/host/claude-native-oauth.d.ts +17 -0
  53. package/lib/types/host/claude-native-oauth.js +272 -0
  54. package/lib/types/host/claude-native-oauth.js.map +1 -0
  55. package/lib/types/host/claude-own-route.d.ts +33 -0
  56. package/lib/types/host/claude-own-route.js +250 -0
  57. package/lib/types/host/claude-own-route.js.map +1 -0
  58. package/lib/types/host/cli-account-binding.d.ts +2 -1
  59. package/lib/types/host/cli-account-binding.js +59 -21
  60. package/lib/types/host/cli-account-binding.js.map +1 -1
  61. package/lib/types/host/codex-models.js +4 -0
  62. package/lib/types/host/codex-models.js.map +1 -1
  63. package/lib/types/host/extended-adapters.d.ts +3 -2
  64. package/lib/types/host/extended-adapters.js +9 -7
  65. package/lib/types/host/extended-adapters.js.map +1 -1
  66. package/lib/types/host/first-party-models.d.ts +1 -0
  67. package/lib/types/host/first-party-models.js +136 -47
  68. package/lib/types/host/first-party-models.js.map +1 -1
  69. package/lib/types/host/hermes-accounts.js +15 -1
  70. package/lib/types/host/hermes-accounts.js.map +1 -1
  71. package/lib/types/host/hermes-adapter.d.ts +3 -0
  72. package/lib/types/host/hermes-adapter.js +13 -4
  73. package/lib/types/host/hermes-adapter.js.map +1 -1
  74. package/lib/types/host/hermes-installation.js +54 -35
  75. package/lib/types/host/hermes-installation.js.map +1 -1
  76. package/lib/types/host/hermes-native-entry.py +48 -13
  77. package/lib/types/host/hermes-nous-refresh.py +331 -0
  78. package/lib/types/host/hermes-nous.d.ts +5 -1
  79. package/lib/types/host/hermes-nous.js +5 -5
  80. package/lib/types/host/hermes-nous.js.map +1 -1
  81. package/lib/types/host/hermes-renewal.d.ts +27 -0
  82. package/lib/types/host/hermes-renewal.js +292 -0
  83. package/lib/types/host/hermes-renewal.js.map +1 -0
  84. package/lib/types/host/hermes-windows-installation.d.ts +5 -0
  85. package/lib/types/host/hermes-windows-installation.js +91 -0
  86. package/lib/types/host/hermes-windows-installation.js.map +1 -0
  87. package/lib/types/host/index.d.ts +2 -0
  88. package/lib/types/host/index.js +17 -2
  89. package/lib/types/host/index.js.map +1 -1
  90. package/lib/types/host/kimi-accounts.d.ts +2 -0
  91. package/lib/types/host/kimi-accounts.js +4 -2
  92. package/lib/types/host/kimi-accounts.js.map +1 -1
  93. package/lib/types/host/kimi-oauth-models.d.ts +14 -0
  94. package/lib/types/host/kimi-oauth-models.js +246 -0
  95. package/lib/types/host/kimi-oauth-models.js.map +1 -0
  96. package/lib/types/host/mimo-metadata-cache.d.ts +22 -0
  97. package/lib/types/host/mimo-metadata-cache.js +121 -0
  98. package/lib/types/host/mimo-metadata-cache.js.map +1 -0
  99. package/lib/types/host/native-capability-cache.d.ts +11 -0
  100. package/lib/types/host/native-capability-cache.js +94 -0
  101. package/lib/types/host/native-capability-cache.js.map +1 -0
  102. package/lib/types/host/native-launch.mjs +62 -7
  103. package/lib/types/host/native-process.d.ts +3 -1
  104. package/lib/types/host/native-process.js +18 -3
  105. package/lib/types/host/native-process.js.map +1 -1
  106. package/lib/types/host/native-spawn.mjs +32 -0
  107. package/lib/types/host/pi-installation.d.mts +1 -1
  108. package/lib/types/host/pi-installation.mjs +27 -3
  109. package/lib/types/host/pi-omp-adapter.js +15 -1
  110. package/lib/types/host/pi-omp-adapter.js.map +1 -1
  111. package/lib/types/host/private-launch.mjs +23 -0
  112. package/lib/types/host/routing.js +25 -2
  113. package/lib/types/host/routing.js.map +1 -1
  114. package/lib/types/host/runtime.js +17 -5
  115. package/lib/types/host/runtime.js.map +1 -1
  116. package/lib/types/host/windows-account-bootstrap.ps1 +44 -0
  117. package/lib/types/host/windows-account-launch.mjs +47 -0
  118. package/lib/types/host/windows-account-owner.ps1 +137 -0
  119. package/lib/types/host/windows-account-stdio.mjs +19 -0
  120. package/lib/types/host/windows-account-terminal.d.ts +17 -0
  121. package/lib/types/host/windows-account-terminal.js +208 -0
  122. package/lib/types/host/windows-account-terminal.js.map +1 -0
  123. package/lib/types/host/windows-agy-account.ps1 +81 -0
  124. package/lib/types/host/windows-cli-installation.d.ts +31 -0
  125. package/lib/types/host/windows-cli-installation.js +157 -0
  126. package/lib/types/host/windows-cli-installation.js.map +1 -0
  127. package/lib/types/host/windows-hidden-launch.mjs +49 -0
  128. package/lib/types/host/windows-hidden-process.d.ts +12 -0
  129. package/lib/types/host/windows-hidden-process.js +116 -0
  130. package/lib/types/host/windows-hidden-process.js.map +1 -0
  131. package/lib/types/host/zcode-adapter.js +5 -1
  132. package/lib/types/host/zcode-adapter.js.map +1 -1
  133. package/lib/types/host/zcode-grok-accounts.d.ts +3 -1
  134. package/lib/types/host/zcode-grok-accounts.js +60 -11
  135. package/lib/types/host/zcode-grok-accounts.js.map +1 -1
  136. package/lib/types/shared/accounts.d.ts +4 -0
  137. package/lib/windows-account-bootstrap.ps1 +44 -0
  138. package/lib/windows-account-launch.mjs +47 -0
  139. package/lib/windows-account-owner.ps1 +137 -0
  140. package/lib/windows-account-stdio.mjs +19 -0
  141. package/lib/windows-agy-account.ps1 +81 -0
  142. package/lib/windows-hidden-launch.mjs +49 -0
  143. package/lib/zcode-resume.mjs +2 -2
  144. package/package.json +1 -1
@@ -2,12 +2,61 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useRef, useState } from 'react';
3
3
  import { Terminal } from '@xterm/xterm';
4
4
  import { FitAddon } from '@xterm/addon-fit';
5
- import { Button, StateDot } from '@deepseek-ai/dsh-client-ui-primitives';
5
+ import { Button, StateDot, writeClipboard } from '@deepseek-ai/dsh-client-ui-primitives';
6
6
  import { CLI_LABELS } from "../shared/types.js";
7
7
  import { value } from "./workers.js";
8
8
  import { accountTerminalCSS } from "./account-terminal-css.js";
9
+ import { createZcodeLoginLinkParser } from "./zcode-login-link.js";
10
+ import { createZcodeLoginLinkProvider } from "./zcode-login-link-provider.js";
9
11
  const STARTUP_TIMEOUT_MS = 20_000;
10
12
  const CLEANUP_TIMEOUT_MS = 12_000;
13
+ const MAX_INPUT_BYTES = 16_384;
14
+ function isPasteShortcut(event) {
15
+ if (event.altKey || event.isComposing)
16
+ return false;
17
+ return (((event.key.toLowerCase() === 'v' || event.code === 'KeyV') && event.ctrlKey !== event.metaKey) ||
18
+ (event.key === 'Insert' && event.shiftKey && !event.ctrlKey && !event.metaKey));
19
+ }
20
+ function isCopyShortcut(event) {
21
+ return (!event.altKey &&
22
+ !event.isComposing &&
23
+ (event.key.toLowerCase() === 'c' || event.code === 'KeyC') &&
24
+ event.ctrlKey !== event.metaKey);
25
+ }
26
+ // RPC errors may contain native output. Only plugin-owned, fixed diagnostics
27
+ // cross this boundary; never display arbitrary exception text from a CLI.
28
+ function startupMessage(error) {
29
+ const message = error instanceof Error ? error.message : '';
30
+ const safe = [
31
+ '此 CLI 已有账号终端,请先关闭后重试',
32
+ '当前宿主不支持交互终端',
33
+ '账号终端尚未确认完全退出,请重启应用',
34
+ 'Windows 账号终端托管不可用,请检查 PowerShell 后重试',
35
+ '账号终端启动超时,正在回收启动过程;请稍后重试',
36
+ '无法启动账号终端,请检查 CLI 安装',
37
+ 'CLI 启动入口无法确认,请配置原生程序或固定 Node/Bun 入口',
38
+ '无法确认 ZCode 账号功能,请检查完整 CLI 安装后重试',
39
+ '当前 ZCode 未声明原生登录能力,请检查 CLI 安装',
40
+ '当前 ZCode 未声明原生终端界面,请检查 CLI 安装',
41
+ '当前 ZCode 未声明原生退出登录能力,请检查 CLI 安装',
42
+ 'ZCode 配套资源不可用,请检查 CLI 安装或配置 zcodeBuiltinConfig',
43
+ '当前插件 Host 不支持 ZCode 授权来源选择,请更新插件后重试',
44
+ '不支持的 ZCode 授权来源',
45
+ '授权来源只支持 ZCode 登录时选择智谱 BigModel 或 Z.AI',
46
+ '当前 ZCode CLI 不支持智谱 BigModel 授权,请更新为支持 login bigmodel 的官方完整 CLI 后重试;不会改用 Z.AI 登录。',
47
+ 'OMP 执行入口身份不匹配,请检查该 CLI 的安装和路径',
48
+ 'Pi 执行入口身份不匹配,请检查该 CLI 的安装和路径',
49
+ 'Codex Windows 应用包入口无法确认,请检查安装',
50
+ 'Codex npm 安装入口无法确认,请检查安装',
51
+ 'Hermes Windows 安装入口无法确认,请检查安装',
52
+ '检测到 Hermes 安装目录,但未找到可用 CLI 入口,请完成安装或配置已有入口',
53
+ 'Windows CLI 安装入口无法读取,请检查安装',
54
+ 'Windows CLI 安装目录配置无效',
55
+ 'Windows 系统目录配置无效',
56
+ ];
57
+ return (safe.find((item) => message === item || message === `Error: ${item}`) ??
58
+ '账号终端暂不可用,请确认此 CLI 没有运行任务且当前项目允许执行,再重试');
59
+ }
11
60
  async function waitForCleanup(cleanup) {
12
61
  let timer;
13
62
  try {
@@ -23,12 +72,15 @@ async function waitForCleanup(cleanup) {
23
72
  }
24
73
  }
25
74
  /** Only mounted after a human selects an account action. No prompt is auto-entered. */
26
- export function AccountTerminal({ api, sessionId, cli, action, source, onClose, onFinished, }) {
75
+ export function AccountTerminal({ api, sessionId, cli, action, source, provider, onClose, onFinished, closeControl, }) {
27
76
  const element = useRef(null);
28
77
  const callbacks = useRef({ onClose, onFinished });
29
78
  callbacks.current = { onClose, onFinished };
30
79
  const stop = useRef(async () => { });
80
+ const focus = useRef(() => { });
81
+ const contextClipboard = useRef(async () => { });
31
82
  const generation = useRef(0);
83
+ const closing = useRef();
32
84
  const [attempt, setAttempt] = useState(0);
33
85
  const [phase, setPhase] = useState('loading');
34
86
  const [instruction, setInstruction] = useState('');
@@ -38,7 +90,7 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
38
90
  setPhase('loading');
39
91
  setInstruction('');
40
92
  setNotice('');
41
- let alive = true, id = '', ended = false, lastSeq = 0, queuedBytes = 0, resizeFrame = 0, viewDisposed = false;
93
+ let alive = true, id = '', ended = false, cleanupConfirmed = false, lastSeq = 0, queuedBytes = 0, resizeFrame = 0, viewDisposed = false;
42
94
  const startup = new AbortController();
43
95
  let startupTimer;
44
96
  let stream;
@@ -47,6 +99,19 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
47
99
  let observer;
48
100
  let themeObserver;
49
101
  let input;
102
+ let loginLinks;
103
+ let removePasteListener;
104
+ let readingClipboard = false;
105
+ // Only the current native login prompt may authorize browser navigation.
106
+ // Keep parsed URLs in this terminal's memory, outside persistent UI state.
107
+ const loginLinkParser = cli === 'zcode' && action === 'login' ? createZcodeLoginLinkParser(provider) : undefined;
108
+ let loginUrl;
109
+ const openedLoginUrls = new Set();
110
+ const clearLoginLink = () => {
111
+ loginUrl = undefined;
112
+ loginLinkParser?.reset();
113
+ openedLoginUrls.clear();
114
+ };
50
115
  let inputQueue = Promise.resolve();
51
116
  let stopping;
52
117
  const disposeStream = () => {
@@ -61,6 +126,7 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
61
126
  };
62
127
  const finish = (failed = false) => {
63
128
  disableInput();
129
+ clearLoginLink();
64
130
  if (alive)
65
131
  setPhase(failed ? 'failed' : 'closed');
66
132
  if (!ended) {
@@ -73,7 +139,8 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
73
139
  clearTimeout(startupTimer);
74
140
  startup.abort();
75
141
  disableInput();
76
- if (!id)
142
+ clearLoginLink();
143
+ if (!id || cleanupConfirmed)
77
144
  return Promise.resolve();
78
145
  return (stopping ??= (async () => {
79
146
  value(await api.cliworker.accountStop(sessionId, id));
@@ -108,6 +175,8 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
108
175
  () => themeObserver?.disconnect(),
109
176
  () => cancelAnimationFrame(resizeFrame),
110
177
  () => input?.dispose(),
178
+ () => loginLinks?.dispose(),
179
+ () => removePasteListener?.(),
111
180
  () => terminal?.dispose(),
112
181
  ]) {
113
182
  try {
@@ -125,6 +194,8 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
125
194
  fontSize: 12,
126
195
  fontFamily: 'ui-monospace, SFMono-Regular, Menlo, monospace',
127
196
  cursorBlink: true,
197
+ cursorStyle: 'block',
198
+ cursorInactiveStyle: 'outline',
128
199
  scrollback: 1000,
129
200
  disableStdin: true,
130
201
  // Do not turn CLI-controlled escape sequences into browser navigation.
@@ -132,9 +203,118 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
132
203
  allowProposedApi: false,
133
204
  });
134
205
  const view = terminal;
206
+ focus.current = () => {
207
+ if (alive && !ended && !startup.signal.aborted)
208
+ view.focus();
209
+ };
135
210
  const fit = new FitAddon();
136
211
  view.loadAddon(fit);
137
212
  view.open(element.current);
213
+ const canWrite = () => alive && !!id && !ended && !startup.signal.aborted && !viewDisposed;
214
+ const canCopy = () => alive && !viewDisposed && !startup.signal.aborted;
215
+ const openLoginUrl = (url) => {
216
+ if (!canWrite() || url !== loginUrl)
217
+ return;
218
+ try {
219
+ // Harness routes HTTP(S) new-window requests to its native external
220
+ // browser handler on both Mac and Windows; no shell command is used.
221
+ window.open(url, '_blank', 'noopener,noreferrer');
222
+ }
223
+ catch {
224
+ setNotice('无法打开登录网页,请在终端中查看原生登录提示');
225
+ }
226
+ };
227
+ if (loginLinkParser)
228
+ loginLinks = view.registerLinkProvider(createZcodeLoginLinkProvider(view, () => (canWrite() ? loginUrl : undefined), openLoginUrl));
229
+ const pasteText = (text) => {
230
+ if (!canWrite())
231
+ return;
232
+ if (!text) {
233
+ setNotice('剪贴板中没有可粘贴的文本');
234
+ return;
235
+ }
236
+ setNotice('');
237
+ view.focus();
238
+ // xterm owns newline normalization and the CLI's bracketed-paste mode.
239
+ // Its onData handler remains the only path to the scoped Gateway.
240
+ view.paste(text);
241
+ };
242
+ contextClipboard.current = async () => {
243
+ if (!canCopy() || readingClipboard)
244
+ return;
245
+ // Native keyboard copy remains xterm's selection/copy event. Right click
246
+ // uses the same selected text; with no selection it pastes instead.
247
+ if (view.hasSelection()) {
248
+ const text = view.getSelection();
249
+ if (!text)
250
+ return;
251
+ readingClipboard = true;
252
+ try {
253
+ const copied = await writeClipboard(text);
254
+ if (!canCopy())
255
+ return;
256
+ if (!copied)
257
+ setNotice('复制失败,请重新选择文本后重试');
258
+ else {
259
+ setNotice('');
260
+ view.clearSelection();
261
+ view.focus();
262
+ }
263
+ }
264
+ catch {
265
+ if (canCopy())
266
+ setNotice('复制失败,请重新选择文本后重试');
267
+ }
268
+ finally {
269
+ readingClipboard = false;
270
+ }
271
+ return;
272
+ }
273
+ if (!canWrite())
274
+ return;
275
+ readingClipboard = true;
276
+ try {
277
+ if (!navigator.clipboard?.readText)
278
+ throw new Error('clipboard unavailable');
279
+ const text = await navigator.clipboard.readText();
280
+ pasteText(text);
281
+ }
282
+ catch {
283
+ if (canWrite())
284
+ setNotice('无法读取剪贴板,请聚焦终端后按 Ctrl+V(Mac 为 ⌘V)粘贴');
285
+ }
286
+ finally {
287
+ readingClipboard = false;
288
+ }
289
+ };
290
+ // Windows xterm otherwise turns Ctrl+V into ^V and cancels the native
291
+ // paste event. Leave the browser default intact; don't read twice.
292
+ view.attachCustomKeyEventHandler((event) => {
293
+ if (isCopyShortcut(event) && view.hasSelection()) {
294
+ event.stopPropagation();
295
+ return false;
296
+ }
297
+ if (!isPasteShortcut(event))
298
+ return true;
299
+ event.stopPropagation();
300
+ return false;
301
+ });
302
+ const container = element.current;
303
+ const onPaste = (event) => {
304
+ event.preventDefault();
305
+ event.stopPropagation();
306
+ if (!canWrite())
307
+ return;
308
+ if (!event.clipboardData) {
309
+ setNotice('无法读取粘贴内容,请右键重试');
310
+ return;
311
+ }
312
+ pasteText(event.clipboardData.getData('text/plain'));
313
+ };
314
+ // Capture before xterm's textarea listener so a native menu/shortcut
315
+ // paste is forwarded once and never retained in the hidden textarea.
316
+ container.addEventListener('paste', onPaste, { capture: true });
317
+ removePasteListener = () => container.removeEventListener('paste', onPaste, { capture: true });
138
318
  const theme = () => {
139
319
  if (!alive || viewDisposed)
140
320
  return;
@@ -144,6 +324,7 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
144
324
  background: css.getPropertyValue('--dsw-alias-bg-layer-2').trim() || '#ffffff',
145
325
  foreground: css.getPropertyValue('--dsw-alias-label-primary').trim() || '#222222',
146
326
  cursor: css.getPropertyValue('--dsw-alias-label-primary').trim() || '#222222',
327
+ cursorAccent: css.getPropertyValue('--dsw-alias-bg-layer-2').trim() || '#ffffff',
147
328
  };
148
329
  }
149
330
  catch {
@@ -177,9 +358,14 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
177
358
  observer.observe(element.current);
178
359
  resize();
179
360
  input = view.onData((data) => {
180
- if (!alive || !id || ended || startup.signal.aborted || queuedBytes + data.length > 16_384)
361
+ if (!canWrite())
362
+ return;
363
+ const bytes = new TextEncoder().encode(data).byteLength;
364
+ if (queuedBytes + bytes > MAX_INPUT_BYTES) {
365
+ setNotice('输入过长或仍在发送,请缩短内容后重试');
181
366
  return;
182
- queuedBytes += data.length;
367
+ }
368
+ queuedBytes += bytes;
183
369
  inputQueue = inputQueue
184
370
  .then(async () => {
185
371
  if (alive && !ended && !startup.signal.aborted)
@@ -190,7 +376,7 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
190
376
  setNotice('输入未能送达,请关闭终端后重试');
191
377
  })
192
378
  .finally(() => {
193
- queuedBytes -= data.length;
379
+ queuedBytes -= bytes;
194
380
  });
195
381
  });
196
382
  startupTimer = setTimeout(() => {
@@ -198,9 +384,13 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
198
384
  }, STARTUP_TIMEOUT_MS);
199
385
  void (async () => {
200
386
  try {
201
- const result = JSON.parse(value(await (source
202
- ? api.cliworker.accountStartForSource(sessionId, cli, action, source, startup.signal)
203
- : api.cliworker.accountStart(sessionId, cli, action, startup.signal))));
387
+ if (provider && typeof api.cliworker.accountStartForProvider !== 'function')
388
+ throw new Error('当前插件 Host 不支持 ZCode 授权来源选择,请更新插件后重试');
389
+ const result = JSON.parse(value(await (provider
390
+ ? api.cliworker.accountStartForProvider(sessionId, cli, action, provider, startup.signal)
391
+ : source
392
+ ? api.cliworker.accountStartForSource(sessionId, cli, action, source, startup.signal)
393
+ : api.cliworker.accountStart(sessionId, cli, action, startup.signal))));
204
394
  clearTimeout(startupTimer);
205
395
  id = result.id;
206
396
  if (!alive || startup.signal.aborted) {
@@ -222,13 +412,23 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
222
412
  const frame = JSON.parse(item.value);
223
413
  if (alive && !ended && frame.seq > lastSeq) {
224
414
  lastSeq = frame.seq;
225
- if (frame.data)
415
+ if (frame.data) {
226
416
  view.write(frame.data);
417
+ const link = canWrite() ? loginLinkParser?.write(frame.data) : undefined;
418
+ if (link) {
419
+ loginUrl = link;
420
+ if (!openedLoginUrls.has(link)) {
421
+ openedLoginUrls.add(link);
422
+ openLoginUrl(link);
423
+ }
424
+ }
425
+ }
227
426
  if (frame.message)
228
427
  setNotice(frame.message);
229
428
  }
230
429
  item.accept();
231
430
  if (frame.status === 'closed' || frame.status === 'failed') {
431
+ cleanupConfirmed = frame.cleanupConfirmed === true;
232
432
  if (!ended)
233
433
  finish(frame.status === 'failed');
234
434
  break;
@@ -241,10 +441,10 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
241
441
  void stopSession().catch(() => undefined);
242
442
  }
243
443
  }
244
- catch {
444
+ catch (error) {
245
445
  clearTimeout(startupTimer);
246
446
  if (alive && !startup.signal.aborted) {
247
- setNotice('账号终端暂不可用,请确认此 CLI 没有运行任务且当前项目允许执行,再重试');
447
+ setNotice(startupMessage(error));
248
448
  finish(true);
249
449
  }
250
450
  // Start process cleanup independently so a slow stop RPC cannot keep
@@ -260,9 +460,12 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
260
460
  catch {
261
461
  fail('账号终端显示未能初始化,请重试');
262
462
  disposeView();
463
+ focus.current = () => { };
464
+ contextClipboard.current = async () => { };
263
465
  }
264
466
  return () => {
265
467
  alive = false;
468
+ clearLoginLink();
266
469
  if (generation.current === ownGeneration)
267
470
  generation.current++;
268
471
  clearTimeout(startupTimer);
@@ -271,26 +474,52 @@ export function AccountTerminal({ api, sessionId, cli, action, source, onClose,
271
474
  void stopSession().catch(() => undefined);
272
475
  void disposeStream().catch(() => undefined);
273
476
  };
274
- }, [api, sessionId, cli, action, source, attempt]);
275
- const close = async (retry = false) => {
477
+ }, [api, sessionId, cli, action, source, provider, attempt]);
478
+ const close = (retry = false) => {
479
+ if (closing.current)
480
+ return closing.current;
276
481
  const ownGeneration = generation.current;
277
482
  setPhase('stopping');
278
- try {
279
- await waitForCleanup(stop.current());
280
- if (generation.current !== ownGeneration)
281
- return;
282
- if (retry)
283
- setAttempt((value) => value + 1);
284
- else
285
- callbacks.current.onClose();
286
- }
287
- catch {
288
- if (generation.current !== ownGeneration)
289
- return;
290
- setPhase('failed');
291
- setNotice('终端关闭失败,请重试');
292
- }
483
+ const operation = (async () => {
484
+ try {
485
+ await waitForCleanup(stop.current());
486
+ if (generation.current !== ownGeneration)
487
+ return false;
488
+ if (retry)
489
+ setAttempt((value) => value + 1);
490
+ else
491
+ callbacks.current.onClose();
492
+ return true;
493
+ }
494
+ catch {
495
+ if (generation.current !== ownGeneration)
496
+ return false;
497
+ setPhase('failed');
498
+ setNotice('终端关闭失败,请重试');
499
+ return false;
500
+ }
501
+ })();
502
+ closing.current = operation;
503
+ void operation.finally(() => {
504
+ if (closing.current === operation)
505
+ closing.current = undefined;
506
+ });
507
+ return operation;
293
508
  };
294
- return (_jsxs("section", { className: "cwn-account-terminal", "data-cli": cli, children: [_jsx("style", { children: accountTerminalCSS }), _jsxs("div", { className: "cwn-account-terminal-head", children: [_jsxs("strong", { children: [CLI_LABELS[cli], " \u8D26\u53F7\u7EC8\u7AEF"] }), _jsx(Button, { variant: "ghost", size: "md", onClick: () => void close(), disabled: phase === 'stopping', children: "\u5173\u95ED\u7EC8\u7AEF" })] }), (phase === 'loading' || phase === 'stopping') && (_jsxs("div", { className: "cwn-loading", role: "status", children: [_jsx(StateDot, { state: "ongoing", size: 14 }), phase === 'loading' ? '正在启动账号终端…' : '正在关闭终端…'] })), instruction && _jsx("p", { className: "cwn-account-instruction", children: instruction }), _jsx("div", { className: "cwn-account-terminal-view", ref: element, "aria-label": `${CLI_LABELS[cli]} 原生账号终端` }), (phase === 'failed' || phase === 'closed') && (_jsx(Button, { variant: "ghost", size: "md", onClick: () => void close(true), children: phase === 'closed' ? '重新打开终端' : '重试' })), notice && (_jsx("p", { className: "cwn-account-instruction", role: "status", children: notice }))] }));
509
+ useEffect(() => {
510
+ if (!closeControl)
511
+ return;
512
+ const request = () => close();
513
+ closeControl.current = request;
514
+ return () => {
515
+ if (closeControl.current === request)
516
+ closeControl.current = undefined;
517
+ };
518
+ });
519
+ return (_jsxs("section", { className: "cwn-account-terminal", "data-cli": cli, children: [_jsx("style", { children: accountTerminalCSS }), _jsx("style", { children: `.cwn-account-terminal-view:focus-within { outline: none; }` }), _jsxs("div", { className: "cwn-account-terminal-head", children: [_jsxs("strong", { children: [CLI_LABELS[cli], " \u8D26\u53F7\u7EC8\u7AEF"] }), _jsx(Button, { variant: "ghost", size: "md", onClick: () => void close(), disabled: phase === 'stopping', children: "\u5173\u95ED\u7EC8\u7AEF" })] }), (phase === 'loading' || phase === 'stopping') && (_jsxs("div", { className: "cwn-loading", role: "status", children: [_jsx(StateDot, { state: "ongoing", size: 14 }), phase === 'loading' ? '正在启动账号终端…' : '正在关闭终端…'] })), instruction && _jsx("p", { className: "cwn-account-instruction", children: instruction }), _jsx("div", { className: "cwn-account-terminal-view", ref: element, "aria-label": `${CLI_LABELS[cli]} 原生账号终端`, onClick: () => focus.current(), onContextMenuCapture: (event) => {
520
+ event.preventDefault();
521
+ event.stopPropagation();
522
+ void contextClipboard.current();
523
+ } }), (phase === 'failed' || phase === 'closed') && (_jsx(Button, { variant: "ghost", size: "md", onClick: () => void close(true), children: phase === 'closed' ? '重新打开终端' : '重试' })), notice && (_jsx("p", { className: "cwn-account-instruction", role: "status", children: notice }))] }));
295
524
  }
296
525
  //# sourceMappingURL=account-terminal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"account-terminal.js","sourceRoot":"","sources":["../../../src/client/account-terminal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"account-terminal.js","sourceRoot":"","sources":["../../../src/client/account-terminal.tsx"],"names":[],"mappings":"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"}