tailii-host 0.6.0 → 0.7.0
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/dist/approval/hook.js +11 -1
- package/dist/approval/hook.js.map +1 -1
- package/dist/backend/herdr.d.ts +41 -6
- package/dist/backend/herdr.js +111 -15
- package/dist/backend/herdr.js.map +1 -1
- package/dist/backend/sessionBackend.d.ts +10 -3
- package/dist/backend/sessionBackend.js +5 -2
- package/dist/backend/sessionBackend.js.map +1 -1
- package/dist/backend/tmux.d.ts +45 -1
- package/dist/backend/tmux.js +95 -11
- package/dist/backend/tmux.js.map +1 -1
- package/dist/chat/chatTailController.d.ts +1 -1
- package/dist/chat/chatTailController.js +16 -33
- package/dist/chat/chatTailController.js.map +1 -1
- package/dist/chat/imageService.d.ts +9 -1
- package/dist/chat/imageService.js +39 -0
- package/dist/chat/imageService.js.map +1 -1
- package/dist/chat/subagentTailer.js +23 -4
- package/dist/chat/subagentTailer.js.map +1 -1
- package/dist/chat/transcriptTailer.d.ts +38 -13
- package/dist/chat/transcriptTailer.js +213 -15
- package/dist/chat/transcriptTailer.js.map +1 -1
- package/dist/codex/codexAppServer.d.ts +54 -9
- package/dist/codex/codexAppServer.js +495 -76
- package/dist/codex/codexAppServer.js.map +1 -1
- package/dist/codex/codexNativeTurnController.d.ts +22 -1
- package/dist/codex/codexNativeTurnController.js +57 -8
- package/dist/codex/codexNativeTurnController.js.map +1 -1
- package/dist/codex/codexRolloutTailer.d.ts +2 -0
- package/dist/codex/codexRolloutTailer.js +78 -13
- package/dist/codex/codexRolloutTailer.js.map +1 -1
- package/dist/codex/codexSessionStore.js +54 -16
- package/dist/codex/codexSessionStore.js.map +1 -1
- package/dist/codex/codexSubagentTracker.d.ts +13 -0
- package/dist/codex/codexSubagentTracker.js +55 -1
- package/dist/codex/codexSubagentTracker.js.map +1 -1
- package/dist/codex/codexSystemNotice.d.ts +2 -0
- package/dist/codex/codexSystemNotice.js +20 -3
- package/dist/codex/codexSystemNotice.js.map +1 -1
- package/dist/commands/launch.js +50 -13
- package/dist/commands/launch.js.map +1 -1
- package/dist/engine/context.d.ts +32 -1
- package/dist/engine/context.js +39 -3
- package/dist/engine/context.js.map +1 -1
- package/dist/engine/engine.d.ts +5 -1
- package/dist/engine/engine.js +87 -4
- package/dist/engine/engine.js.map +1 -1
- package/dist/engine/handlers/codex.js +37 -0
- package/dist/engine/handlers/codex.js.map +1 -1
- package/dist/engine/handlers/core.js +14 -1
- package/dist/engine/handlers/core.js.map +1 -1
- package/dist/engine/handlers/mode.js +64 -1
- package/dist/engine/handlers/mode.js.map +1 -1
- package/dist/engine/handlers/session.js +17 -33
- package/dist/engine/handlers/session.js.map +1 -1
- package/dist/engine/handlers/workspace.js +22 -1
- package/dist/engine/handlers/workspace.js.map +1 -1
- package/dist/hub/effortDialog.d.ts +15 -0
- package/dist/hub/effortDialog.js +60 -16
- package/dist/hub/effortDialog.js.map +1 -1
- package/dist/hub/engineRelaySocket.d.ts +4 -0
- package/dist/hub/engineRelaySocket.js +6 -1
- package/dist/hub/engineRelaySocket.js.map +1 -1
- package/dist/hub/hubDaemon.js +22 -3
- package/dist/hub/hubDaemon.js.map +1 -1
- package/dist/hub/hubProtocol.d.ts +10 -0
- package/dist/hub/hubProtocol.js +12 -1
- package/dist/hub/hubProtocol.js.map +1 -1
- package/dist/hub/sessionHub.d.ts +78 -4
- package/dist/hub/sessionHub.js +281 -67
- package/dist/hub/sessionHub.js.map +1 -1
- package/dist/protocol/decode.js +70 -15
- package/dist/protocol/decode.js.map +1 -1
- package/dist/protocol/encode.js +2 -0
- package/dist/protocol/encode.js.map +1 -1
- package/dist/protocol/messages.d.ts +59 -1
- package/dist/services/fileService.d.ts +15 -0
- package/dist/services/fileService.js +176 -14
- package/dist/services/fileService.js.map +1 -1
- package/dist/services/officialApps.d.ts +12 -1
- package/dist/services/officialApps.js +145 -30
- package/dist/services/officialApps.js.map +1 -1
- package/dist/services/previewServer.js +15 -6
- package/dist/services/previewServer.js.map +1 -1
- package/dist/sessions/transcriptPath.d.ts +3 -0
- package/dist/sessions/transcriptPath.js +15 -0
- package/dist/sessions/transcriptPath.js.map +1 -0
- package/dist/shared/clientBuild.d.ts +26 -0
- package/dist/shared/clientBuild.js +89 -0
- package/dist/shared/clientBuild.js.map +1 -0
- package/package.json +3 -3
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { SessionInfo, TerminalBackendKind } from "../protocol.js";
|
|
2
2
|
import { SessionMetadataStore } from "../sessions/sessionMetadataStore.js";
|
|
3
|
-
import { type CapturePaneOptions, type ReattachResult } from "./tmux.js";
|
|
3
|
+
import { type CapturePaneOptions, type ReattachResult, type SendTextSubmitOptions } from "./tmux.js";
|
|
4
4
|
/** セッションを収容する端末バックエンド種別(ワイヤーの TerminalBackendKind と同一)。 */
|
|
5
5
|
export type SessionBackendKind = TerminalBackendKind;
|
|
6
6
|
/**
|
|
@@ -18,7 +18,13 @@ export interface SessionBackend {
|
|
|
18
18
|
* tmux は従来どおり literal 送出 → 150ms → Enter。herdr は本文+CR を単一コールで送る
|
|
19
19
|
* (分割すると Ink のペースト取り込み窓に CR が飲まれ送信されない。実測 2026-07-22)。
|
|
20
20
|
*/
|
|
21
|
-
sendTextSubmit(name: string, text: string): Promise<void>;
|
|
21
|
+
sendTextSubmit(name: string, text: string, options?: SendTextSubmitOptions): Promise<void>;
|
|
22
|
+
/**
|
|
23
|
+
* claude TUI の入力欄を C-u で空にする(中断で書き戻された配送済み発話の破棄用,
|
|
24
|
+
* restored-prompt-discard)。空にできたら true。入力欄不可視 / ダイアログ表示中 / 上限回数で
|
|
25
|
+
* 空にならない / capture 失敗は false(何も壊さず諦める)。
|
|
26
|
+
*/
|
|
27
|
+
clearInputBox(name: string): Promise<boolean>;
|
|
22
28
|
/**
|
|
23
29
|
* `/login` の OAuth コードをコード入力欄へ渡して確定する(login_code_send)。
|
|
24
30
|
* コード入力待ちの画面でなければ何も送らず throw する。
|
|
@@ -69,7 +75,8 @@ export declare class CompositeSessionBackend implements SessionBackend {
|
|
|
69
75
|
reattach(name: string): Promise<ReattachResult>;
|
|
70
76
|
kill(name: string): Promise<void>;
|
|
71
77
|
sendKeys(name: string, keys: string[], literal?: boolean): Promise<void>;
|
|
72
|
-
sendTextSubmit(name: string, text: string): Promise<void>;
|
|
78
|
+
sendTextSubmit(name: string, text: string, options?: SendTextSubmitOptions): Promise<void>;
|
|
79
|
+
clearInputBox(name: string): Promise<boolean>;
|
|
73
80
|
sendLoginCode(name: string, code: string): Promise<void>;
|
|
74
81
|
capturePane(name: string, options?: CapturePaneOptions): Promise<string>;
|
|
75
82
|
captureVisibleAnsi(name: string): Promise<string>;
|
|
@@ -75,8 +75,11 @@ export class CompositeSessionBackend {
|
|
|
75
75
|
sendKeys(name, keys, literal = false) {
|
|
76
76
|
return this.backendFor(name).sendKeys(name, keys, literal);
|
|
77
77
|
}
|
|
78
|
-
sendTextSubmit(name, text) {
|
|
79
|
-
return this.backendFor(name).sendTextSubmit(name, text);
|
|
78
|
+
sendTextSubmit(name, text, options) {
|
|
79
|
+
return this.backendFor(name).sendTextSubmit(name, text, options);
|
|
80
|
+
}
|
|
81
|
+
clearInputBox(name) {
|
|
82
|
+
return this.backendFor(name).clearInputBox(name);
|
|
80
83
|
}
|
|
81
84
|
sendLoginCode(name, code) {
|
|
82
85
|
return this.backendFor(name).sendLoginCode(name, code);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionBackend.js","sourceRoot":"","sources":["../../src/backend/sessionBackend.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,qDAAqD;AACrD,EAAE;AACF,4DAA4D;AAC5D,8DAA8D;AAC9D,iDAAiD;AACjD,qCAAqC;AAErC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EACL,kBAAkB,
|
|
1
|
+
{"version":3,"file":"sessionBackend.js","sourceRoot":"","sources":["../../src/backend/sessionBackend.ts"],"names":[],"mappings":"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"}
|
package/dist/backend/tmux.d.ts
CHANGED
|
@@ -43,6 +43,18 @@ export declare function inputBoxIsShellMode(box: ClaudeInputBox | null): boolean
|
|
|
43
43
|
* (`sendTextSubmit` が `selectionDialogVisible` → Esc で担保)。
|
|
44
44
|
*/
|
|
45
45
|
export declare function extractClaudeInputBox(screen: string): ClaudeInputBox | null;
|
|
46
|
+
/**
|
|
47
|
+
* claude TUI の入力欄(composer)が描画済みか(起動中の pane との区別, boot-gate)。
|
|
48
|
+
*
|
|
49
|
+
* claude プロセスは起動していても、TUI が入力欄を描くまでには(host 負荷次第で)数秒〜
|
|
50
|
+
* 10 秒超の窓がある。その間の画面は初期シェルのプロンプト/`exec zsh -lc …` のエコー/
|
|
51
|
+
* 起動バナー(`╭…╮` の角付き枠)だけで、入力欄の罫線(`─` の連続行)は 1 本も無い。
|
|
52
|
+
* 罫線が 1 本でも見えれば TUI は描画済み(composer は本文の罫線と同じフレームで描かれ、
|
|
53
|
+
* スクロールで上側の罫線が窓外に出ても下側は残る)。`❯` だけの画面はシェルプロンプトの
|
|
54
|
+
* 可能性があるため描画済みとみなさない(`extractClaudeInputBox` の ❯ フォールバックは
|
|
55
|
+
* 描画済み前提の判定にだけ使う)。
|
|
56
|
+
*/
|
|
57
|
+
export declare function claudeInputBoxRendered(screen: string): boolean;
|
|
46
58
|
/**
|
|
47
59
|
* claude TUI の「プロンプト提案」(2.1.25x 頃〜。空の入力欄に薄字で次の一手を提示し、
|
|
48
60
|
* → / Tab で採用、Enter で即送信される)と空入力プレースホルダーは、いずれも通常の
|
|
@@ -68,6 +80,27 @@ export declare function inputBoxHasRealPendingText(ansiScreen: string): boolean;
|
|
|
68
80
|
* faint を見て実テキストだけを取り出す(prompt-suggestion-chip)。
|
|
69
81
|
*/
|
|
70
82
|
export declare function inputBoxRealText(ansiScreen: string): string | null;
|
|
83
|
+
/**
|
|
84
|
+
* chat 注入(sendTextSubmit)の呼び出し側が渡す補助情報。
|
|
85
|
+
*/
|
|
86
|
+
export interface SendTextSubmitOptions {
|
|
87
|
+
/**
|
|
88
|
+
* transcript に記録済みの直近の発話本文(遅延評価。入力欄に残存テキストが無ければ呼ばれない)。
|
|
89
|
+
* 残存テキストがこれと同文なら「出力前に中断されて書き戻された発話」= 既に配送・表示済みなので、
|
|
90
|
+
* Enter で送り直さず破棄する(restored-prompt-discard)。null = 不明(従来どおり Enter で flush)。
|
|
91
|
+
*/
|
|
92
|
+
recordedPromptText?: () => string | null;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* 入力欄の残存テキストが、transcript に記録済みの発話本文と同文か(restored-prompt-discard)。
|
|
96
|
+
*
|
|
97
|
+
* 入力欄の描画は折り返し(trim + 改行連結)・composer スクロールで先頭行が窓外に出る・シェルモード
|
|
98
|
+
* 記号 `!` の吸い上げがあるため、生の等値比較は使えない。空白類を両辺から除去し、先頭の `!` を
|
|
99
|
+
* 落としたうえで「同一」または「残存が記録本文の末尾(可視領域は常に末尾側)」なら同文とみなす。
|
|
100
|
+
* 末尾一致は短い断片の偶然一致(Mac 側で打ちかけた下書きが記録本文の語尾と重なる等)を避けるため
|
|
101
|
+
* 24 字以上に限る(typedTextProbe と同じ長さ)。
|
|
102
|
+
*/
|
|
103
|
+
export declare function inputBoxTextMatchesRecordedPrompt(boxText: string, recordedPrompt: string): boolean;
|
|
71
104
|
/**
|
|
72
105
|
* claude TUI のプロンプト提案文を取り出す(提案チップ表示用)。
|
|
73
106
|
* 入力欄本文が薄字(faint)のみ かつ 既知プレースホルダーでない非空テキストのときだけ、その
|
|
@@ -197,6 +230,8 @@ export declare class TmuxSessionManager {
|
|
|
197
230
|
/** login-code 送出の待ち時間(テスト注入用)。 */
|
|
198
231
|
private readonly loginTiming;
|
|
199
232
|
private readonly protocolVersion;
|
|
233
|
+
/** clearInputBox の C-u 1回ごとの反映待ち ms(herdr 側と同じ既定 150ms。テスト注入用)。 */
|
|
234
|
+
private readonly clearKeyDelayMs;
|
|
200
235
|
constructor(options?: {
|
|
201
236
|
runner?: TmuxCommandRunner;
|
|
202
237
|
store?: SessionMetadataStore;
|
|
@@ -207,6 +242,7 @@ export declare class TmuxSessionManager {
|
|
|
207
242
|
pollMs?: number;
|
|
208
243
|
settleMs?: number;
|
|
209
244
|
};
|
|
245
|
+
clearKeyDelayMs?: number;
|
|
210
246
|
});
|
|
211
247
|
/**
|
|
212
248
|
* 現存する各セッションを name/cwd/alive で列挙する(name 昇順、メタのみは alive:false)。
|
|
@@ -230,7 +266,7 @@ export declare class TmuxSessionManager {
|
|
|
230
266
|
* 本文入力と送信確定を 1 操作で行う(chat 注入・kick 用, SessionBackend 共通面)。
|
|
231
267
|
* literal 送出 → 150ms(Ink 再描画待ち)→ Enter。
|
|
232
268
|
*/
|
|
233
|
-
sendTextSubmit(name: string, text: string): Promise<void>;
|
|
269
|
+
sendTextSubmit(name: string, text: string, options?: SendTextSubmitOptions): Promise<void>;
|
|
234
270
|
/**
|
|
235
271
|
* `/login` の OAuth コードを入力欄へ渡して確定する(login_code_send)。
|
|
236
272
|
* コード入力待ちの画面でなければ何も送らず throw する(誤って通常入力欄へ
|
|
@@ -246,6 +282,14 @@ export declare class TmuxSessionManager {
|
|
|
246
282
|
* 失敗に見えてしまうので、実エラーは続く本文注入の send-keys 失敗として顕在化させる)。
|
|
247
283
|
*/
|
|
248
284
|
private exitShellMode;
|
|
285
|
+
/**
|
|
286
|
+
* 入力欄を空にする(中断で書き戻された配送済み発話の破棄用, restored-prompt-discard)。
|
|
287
|
+
* C-u(kill-line) を繰り返す(herdr 側 clearInputBox と同じ規則: 多行本文は末尾行→改行の順に
|
|
288
|
+
* 消え 2N-1 回で必ず空になる。Backspace は本文の実文字を削るため使わない)。空にできたら true。
|
|
289
|
+
* 入力欄が見えない / 上限回数で空にならない / capture 失敗は false(呼び出し側は注入を諦めて
|
|
290
|
+
* 明示再送へ倒す。残存の上へ重ね打ちして連結送信するよりよい)。
|
|
291
|
+
*/
|
|
292
|
+
clearInputBox(name: string): Promise<boolean>;
|
|
249
293
|
/**
|
|
250
294
|
* 入力欄判定用に **viewport 全体**を取る(末尾 N 行で切らない)。
|
|
251
295
|
*
|
package/dist/backend/tmux.js
CHANGED
|
@@ -92,6 +92,20 @@ export function extractClaudeInputBox(screen) {
|
|
|
92
92
|
}
|
|
93
93
|
return null;
|
|
94
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* claude TUI の入力欄(composer)が描画済みか(起動中の pane との区別, boot-gate)。
|
|
97
|
+
*
|
|
98
|
+
* claude プロセスは起動していても、TUI が入力欄を描くまでには(host 負荷次第で)数秒〜
|
|
99
|
+
* 10 秒超の窓がある。その間の画面は初期シェルのプロンプト/`exec zsh -lc …` のエコー/
|
|
100
|
+
* 起動バナー(`╭…╮` の角付き枠)だけで、入力欄の罫線(`─` の連続行)は 1 本も無い。
|
|
101
|
+
* 罫線が 1 本でも見えれば TUI は描画済み(composer は本文の罫線と同じフレームで描かれ、
|
|
102
|
+
* スクロールで上側の罫線が窓外に出ても下側は残る)。`❯` だけの画面はシェルプロンプトの
|
|
103
|
+
* 可能性があるため描画済みとみなさない(`extractClaudeInputBox` の ❯ フォールバックは
|
|
104
|
+
* 描画済み前提の判定にだけ使う)。
|
|
105
|
+
*/
|
|
106
|
+
export function claudeInputBoxRendered(screen) {
|
|
107
|
+
return screen.split("\n").some((line) => isInputBoxRuleLine(stripSgr(line).trim()));
|
|
108
|
+
}
|
|
95
109
|
/**
|
|
96
110
|
* 入力が空のとき claude TUI が入力欄へ薄字で出すプレースホルダ(実測 2.1.220)。
|
|
97
111
|
* 未送信テキストと誤認すると、シェルモード離脱(空入力の Backspace)に入れず
|
|
@@ -146,6 +160,25 @@ export function inputBoxRealText(ansiScreen) {
|
|
|
146
160
|
return null;
|
|
147
161
|
return analysis.faintOnly ? "" : analysis.text;
|
|
148
162
|
}
|
|
163
|
+
/**
|
|
164
|
+
* 入力欄の残存テキストが、transcript に記録済みの発話本文と同文か(restored-prompt-discard)。
|
|
165
|
+
*
|
|
166
|
+
* 入力欄の描画は折り返し(trim + 改行連結)・composer スクロールで先頭行が窓外に出る・シェルモード
|
|
167
|
+
* 記号 `!` の吸い上げがあるため、生の等値比較は使えない。空白類を両辺から除去し、先頭の `!` を
|
|
168
|
+
* 落としたうえで「同一」または「残存が記録本文の末尾(可視領域は常に末尾側)」なら同文とみなす。
|
|
169
|
+
* 末尾一致は短い断片の偶然一致(Mac 側で打ちかけた下書きが記録本文の語尾と重なる等)を避けるため
|
|
170
|
+
* 24 字以上に限る(typedTextProbe と同じ長さ)。
|
|
171
|
+
*/
|
|
172
|
+
export function inputBoxTextMatchesRecordedPrompt(boxText, recordedPrompt) {
|
|
173
|
+
const normalize = (value) => value.replace(/\s+/g, "").replace(/^!/, "");
|
|
174
|
+
const pending = normalize(boxText);
|
|
175
|
+
const recorded = normalize(recordedPrompt);
|
|
176
|
+
if (pending.length === 0 || recorded.length === 0)
|
|
177
|
+
return false;
|
|
178
|
+
if (pending === recorded)
|
|
179
|
+
return true;
|
|
180
|
+
return pending.length >= 24 && recorded.endsWith(pending);
|
|
181
|
+
}
|
|
149
182
|
/**
|
|
150
183
|
* claude TUI のプロンプト提案文を取り出す(提案チップ表示用)。
|
|
151
184
|
* 入力欄本文が薄字(faint)のみ かつ 既知プレースホルダーでない非空テキストのときだけ、その
|
|
@@ -555,11 +588,14 @@ export class TmuxSessionManager {
|
|
|
555
588
|
/** login-code 送出の待ち時間(テスト注入用)。 */
|
|
556
589
|
loginTiming;
|
|
557
590
|
protocolVersion;
|
|
591
|
+
/** clearInputBox の C-u 1回ごとの反映待ち ms(herdr 側と同じ既定 150ms。テスト注入用)。 */
|
|
592
|
+
clearKeyDelayMs;
|
|
558
593
|
constructor(options = {}) {
|
|
559
594
|
this.runner = options.runner ?? processTmuxCommandRunner();
|
|
560
595
|
this.store = options.store ?? new SessionMetadataStore();
|
|
561
596
|
this.captureLines = options.captureLines ?? 50;
|
|
562
597
|
this.protocolVersion = options.protocolVersion ?? PROTOCOL_V1;
|
|
598
|
+
this.clearKeyDelayMs = options.clearKeyDelayMs ?? 150;
|
|
563
599
|
this.loginTiming = {
|
|
564
600
|
delayMs: options.loginTiming?.delayMs ?? 150,
|
|
565
601
|
pollMs: options.loginTiming?.pollMs ?? 250,
|
|
@@ -574,8 +610,14 @@ export class TmuxSessionManager {
|
|
|
574
610
|
*/
|
|
575
611
|
async list() {
|
|
576
612
|
const alive = await this.liveSessionNames();
|
|
613
|
+
const allMetas = this.store.all();
|
|
577
614
|
// herdr backend のメタは HerdrSessionManager が列挙する(Composite で和を取る)。
|
|
578
|
-
const metas =
|
|
615
|
+
const metas = allMetas.filter((meta) => meta.backend !== "herdr");
|
|
616
|
+
// herdr 担当の名前は tmux の生存集合からも外す。backend 切替前の同名 tmux セッションが
|
|
617
|
+
// 生き残っている間(reaper の idle 回収まで)、ここが backend:"tmux" を確定申告すると
|
|
618
|
+
// Composite の tmux 優先マージで正しい herdr 行(メタ = ルーティング権威)が消え、
|
|
619
|
+
// iOS の観測が tmux に固定される(cwd/会話 id も欠けて稼働中ピルの join からも落ちる)。
|
|
620
|
+
const herdrNames = new Set(allMetas.filter((meta) => meta.backend === "herdr").map((meta) => meta.name));
|
|
579
621
|
const cwdByName = new Map();
|
|
580
622
|
const claudeSessionIdByName = new Map();
|
|
581
623
|
const providerSessionIdByName = new Map();
|
|
@@ -591,13 +633,16 @@ export class TmuxSessionManager {
|
|
|
591
633
|
if (providerSessionId !== undefined)
|
|
592
634
|
providerSessionIdByName.set(meta.name, providerSessionId);
|
|
593
635
|
}
|
|
594
|
-
const names = new Set(alive);
|
|
636
|
+
const names = new Set([...alive].filter((name) => !herdrNames.has(name)));
|
|
595
637
|
for (const meta of metas)
|
|
596
638
|
names.add(meta.name);
|
|
639
|
+
// backend は tmux も常に明示する。iOS は欄なしを「host 未申告」として既知の観測値を
|
|
640
|
+
// 保持するため、欄の省略を tmux の意味に使わない(session-backend)。
|
|
597
641
|
const infos = [...names].map((name) => ({
|
|
598
642
|
name,
|
|
599
643
|
cwd: cwdByName.get(name) ?? "",
|
|
600
644
|
alive: alive.has(name),
|
|
645
|
+
backend: "tmux",
|
|
601
646
|
...(claudeSessionIdByName.has(name) ? { claudeSessionId: claudeSessionIdByName.get(name) } : {}),
|
|
602
647
|
...(agentByName.has(name) ? { agent: agentByName.get(name) } : {}),
|
|
603
648
|
...(providerSessionIdByName.has(name)
|
|
@@ -638,7 +683,7 @@ export class TmuxSessionManager {
|
|
|
638
683
|
}
|
|
639
684
|
const cwd = this.store.get(name)?.cwd ?? "";
|
|
640
685
|
const recent = await this.capturePane(name);
|
|
641
|
-
return { kind: "attached", info: { name, cwd, alive: true }, recentOutput: recent };
|
|
686
|
+
return { kind: "attached", info: { name, cwd, alive: true, backend: "tmux" }, recentOutput: recent };
|
|
642
687
|
}
|
|
643
688
|
/** pane 内のエージェント生存判定。tmux エラーや空出力は二重起動を避けて true に倒す。 */
|
|
644
689
|
async agentProcessAlive(name) {
|
|
@@ -675,7 +720,7 @@ export class TmuxSessionManager {
|
|
|
675
720
|
* 本文入力と送信確定を 1 操作で行う(chat 注入・kick 用, SessionBackend 共通面)。
|
|
676
721
|
* literal 送出 → 150ms(Ink 再描画待ち)→ Enter。
|
|
677
722
|
*/
|
|
678
|
-
async sendTextSubmit(name, text) {
|
|
723
|
+
async sendTextSubmit(name, text, options = {}) {
|
|
679
724
|
// 1 回の capture で「/login フロー中か」と「残存テキスト」を判定する(chat 毎の capture を増やさない)。
|
|
680
725
|
const screen = await this.captureVisibleScreenOrNull(name);
|
|
681
726
|
// `/login` フロー中(方式選択 / コード入力待ち / retry)は通常の入力欄が無く、注入した本文が
|
|
@@ -684,16 +729,28 @@ export class TmuxSessionManager {
|
|
|
684
729
|
if (screen !== null && screenInLoginFlow(screen)) {
|
|
685
730
|
throw new LoginCodeError(CHAT_BLOCKED_BY_LOGIN_PROMPT);
|
|
686
731
|
}
|
|
687
|
-
//
|
|
688
|
-
//
|
|
689
|
-
//
|
|
690
|
-
// Enter
|
|
732
|
+
// 中断(停止)直後の入力欄に残存テキストがあるまま注入すると、今回の本文がその後ろへ連結され
|
|
733
|
+
// 1 メッセージになる(実機FB 2026-07-29)。残存の身元で扱いを分ける(herdr 側と同じ規則):
|
|
734
|
+
// - transcript の直近の発話と同文 = 出力前の中断で claude が書き戻した「配送済みの発話」
|
|
735
|
+
// → 破棄(C-u)。Enter で送り直すと同じ発話が二重に届く(実機 2026-09-08)。
|
|
736
|
+
// - それ以外(旧版の queued 書き戻し / Mac 側の下書き)→ 従来どおり Enter で独立送信し切る。
|
|
691
737
|
// 判定は ANSI で行い、薄字(faint)のプロンプト提案/プレースホルダーを実テキストと
|
|
692
738
|
// 数えない(実障害 2026-09-03: 提案を残留と誤認し Enter で勝手に送信していた)。
|
|
693
739
|
const ansiScreen = await this.captureVisibleScreenAnsiOrNull(name);
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
740
|
+
const pending = ansiScreen !== null && inputBoxHasRealPendingText(ansiScreen)
|
|
741
|
+
? (inputBoxRealText(ansiScreen) ?? "")
|
|
742
|
+
: "";
|
|
743
|
+
if (pending.length > 0) {
|
|
744
|
+
const recorded = options.recordedPromptText?.() ?? null;
|
|
745
|
+
if (recorded !== null && inputBoxTextMatchesRecordedPrompt(pending, recorded)) {
|
|
746
|
+
if (!(await this.clearInputBox(name))) {
|
|
747
|
+
throw new TmuxFailedError(["send-keys", "-t", this.paneTarget(name), "C-u"], 1, "restored prompt could not be cleared from the input box (中断で書き戻された発話が残存)");
|
|
748
|
+
}
|
|
749
|
+
}
|
|
750
|
+
else {
|
|
751
|
+
await this.sendKeys(name, ["Enter"]);
|
|
752
|
+
await new Promise((resolve) => setTimeout(resolve, 300));
|
|
753
|
+
}
|
|
697
754
|
}
|
|
698
755
|
// 入力欄がシェルモード(プロンプト `!`)のまま残っていると、注入した通常メッセージが
|
|
699
756
|
// そのままシェルコマンドとして実行される。空入力の Backspace(tmux キー名は BSpace)で
|
|
@@ -748,6 +805,33 @@ export class TmuxSessionManager {
|
|
|
748
805
|
// no-op(fail-open)
|
|
749
806
|
}
|
|
750
807
|
}
|
|
808
|
+
/**
|
|
809
|
+
* 入力欄を空にする(中断で書き戻された配送済み発話の破棄用, restored-prompt-discard)。
|
|
810
|
+
* C-u(kill-line) を繰り返す(herdr 側 clearInputBox と同じ規則: 多行本文は末尾行→改行の順に
|
|
811
|
+
* 消え 2N-1 回で必ず空になる。Backspace は本文の実文字を削るため使わない)。空にできたら true。
|
|
812
|
+
* 入力欄が見えない / 上限回数で空にならない / capture 失敗は false(呼び出し側は注入を諦めて
|
|
813
|
+
* 明示再送へ倒す。残存の上へ重ね打ちして連結送信するよりよい)。
|
|
814
|
+
*/
|
|
815
|
+
async clearInputBox(name) {
|
|
816
|
+
try {
|
|
817
|
+
for (let attempt = 0; attempt < 15; attempt += 1) {
|
|
818
|
+
const ansiScreen = await this.captureVisibleScreenAnsiOrNull(name);
|
|
819
|
+
const realText = ansiScreen === null ? null : inputBoxRealText(ansiScreen);
|
|
820
|
+
if (realText === null)
|
|
821
|
+
return false;
|
|
822
|
+
if (realText.replace(/\s+/g, "").length === 0)
|
|
823
|
+
return true;
|
|
824
|
+
await this.sendKeys(name, ["C-u"]);
|
|
825
|
+
await new Promise((resolve) => setTimeout(resolve, this.clearKeyDelayMs));
|
|
826
|
+
}
|
|
827
|
+
const ansiScreen = await this.captureVisibleScreenAnsiOrNull(name);
|
|
828
|
+
const realText = ansiScreen === null ? null : inputBoxRealText(ansiScreen);
|
|
829
|
+
return realText !== null && realText.replace(/\s+/g, "").length === 0;
|
|
830
|
+
}
|
|
831
|
+
catch {
|
|
832
|
+
return false;
|
|
833
|
+
}
|
|
834
|
+
}
|
|
751
835
|
/**
|
|
752
836
|
* 入力欄判定用に **viewport 全体**を取る(末尾 N 行で切らない)。
|
|
753
837
|
*
|
package/dist/backend/tmux.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tmux.js","sourceRoot":"","sources":["../../src/backend/tmux.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tmux.js","sourceRoot":"","sources":["../../src/backend/tmux.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,mFAAmF;AACnF,wCAAwC;AACxC,0EAA0E;AAE1E,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAyC,MAAM,gBAAgB,CAAC;AACpF,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAYhG,yCAAyC;AACzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AAE1D,8DAA8D;AAC9D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;AAErG,kEAAkE;AAClE,MAAM,UAAU,yBAAyB,CAAC,OAAe;IACvD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAChD,OAAO,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AACpE,CAAC;AASD;;;;;;GAMG;AACH,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU,CAAC;AAUrD,+BAA+B;AAC/B,MAAM,UAAU,mBAAmB,CAAC,GAA0B;IAC5D,OAAO,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC;AAC7B,CAAC;AAED,kDAAkD;AAClD,SAAS,kBAAkB,CAAC,IAAY;IACtC,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IAC1B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC,CAAC;;YACtC,MAAM;IACb,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAC5C,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9B,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QACxC,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG;YAAE,QAAQ,IAAI,CAAC,CAAC;;YACvC,MAAM;IACb,CAAC;IACD,OAAO,QAAQ,IAAI,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAc;IAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC;IAChB,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1D,IAAI,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC3C,MAAM,GAAG,KAAK,CAAC;YACf,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;IACb,KAAK,IAAI,KAAK,GAAG,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpD,IAAI,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC3C,GAAG,GAAG,KAAK,CAAC;YACZ,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,GAAG,IAAI,CAAC,IAAI,MAAM,GAAG,GAAG;QAAE,OAAO,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACpF,4CAA4C;IAC5C,mCAAmC;IACnC,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,gBAAgB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAc;IACnD,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;AACtF,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,kBAAkB,CAAC,IAAY;IACtC,IAAI,IAAI,KAAK,kCAAkC;QAAE,OAAO,IAAI,CAAC;IAC7D,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAChE,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC5D,CAAC;AAED,2CAA2C;AAC3C,SAAS,QAAQ,CAAC,IAAY;IAC5B,4CAA4C;IAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,0BAA0B,CAAC,UAAkB;IAC3D,MAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAC7C,OAAO,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;AAC9E,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAkB;IACjD,MAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACnC,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;AACjD,CAAC;AAcD;;;;;;;;GAQG;AACH,MAAM,UAAU,iCAAiC,CAAC,OAAe,EAAE,cAAsB;IACvF,MAAM,SAAS,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;IAC3C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAChE,IAAI,OAAO,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACtC,OAAO,OAAO,CAAC,MAAM,IAAI,EAAE,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,UAAkB;IAC1D,MAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACjE,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AACnD,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,UAAkB;IACzC,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/E,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAE/D,4DAA4D;IAC5D,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC;IAChB,KAAK,IAAI,KAAK,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC7D,IAAI,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC9C,MAAM,GAAG,KAAK,CAAC;YACf,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;IACb,KAAK,IAAI,KAAK,GAAG,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpD,IAAI,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC9C,GAAG,GAAG,KAAK,CAAC;YACZ,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,OAAiB,CAAC;IACtB,IAAI,GAAG,IAAI,CAAC,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;QAC7B,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,8DAA8D;QAC9D,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC;QACpB,KAAK,IAAI,KAAK,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC7D,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5C,UAAU,GAAG,KAAK,CAAC;gBACnB,MAAM;YACR,CAAC;QACH,CAAC;QACD,IAAI,UAAU,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QAChC,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,yDAAyD;IACzD,MAAM,GAAG,GAAG,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC9B,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;AACjE,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,OAAiB;IACxC,MAAM,GAAG,GAAG,QAAQ,CAAC;IACrB,MAAM,IAAI,GAAG,GAAG,CAAC;IACjB,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,OAAO,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACnD,4CAA4C;gBAC5C,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC5D,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC9B,MAAM,KAAK,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;oBAClF,gDAAgD;oBAChD,qDAAqD;oBACrD,mDAAmD;oBACnD,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;wBACxD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;wBAC3B,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;4BAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;4BAC/B,MAAM,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC9C,SAAS;wBACX,CAAC;wBACD,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,EAAE;4BAAE,KAAK,GAAG,KAAK,CAAC;6BACxC,IAAI,IAAI,KAAK,CAAC;4BAAE,KAAK,GAAG,IAAI,CAAC;oBACpC,CAAC;oBACD,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBACzB,SAAS;gBACX,CAAC;YACH,CAAC;YACD,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC7B,oDAAoD;YACpD,IACE,EAAE,KAAK,GAAG;gBACV,EAAE,KAAK,IAAI;gBACX,EAAE,KAAK,IAAI;gBACX,EAAE,KAAK,GAAG;gBACV,EAAE,KAAK,GAAG;gBACV,EAAE,KAAK,GAAG,EACV,CAAC;gBACD,YAAY,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,KAAK;oBAAE,QAAQ,GAAG,KAAK,CAAC;YAC/B,CAAC;YACD,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IACD,OAAO,YAAY,IAAI,QAAQ,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,6BAA6B,CAAC;AAEtE;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAEzD,wFAAwF;AACxF,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC;AAEnD,yDAAyD;AACzD,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAE7B;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,KAAe,EAAE,MAAc,EAAE,WAAmB;IAC/E,IAAI,WAAW,GAAG,CAAC,CAAC,CAAC;IACrB,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,WAAW,GAAG,KAAK,CAAC;YACpB,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,WAAW,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACjC,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,SAAS;QAC9D,IAAI,WAAW,GAAG,KAAK,GAAG,iBAAiB;YAAE,OAAO,IAAI,CAAC;QACzD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC;QAC5D,KAAK,IAAI,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,GAAG,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;gBAAE,OAAO,KAAK,CAAC;QAC1F,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,wBAAwB,CAAC,MAAc;IACrD,OAAO,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,wBAAwB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;AACvF,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc;IACzC,OAAO,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;AACjF,CAAC;AAED,SAAS,0BAA0B,CAAC,MAAc;IAChD,yCAAyC;IACzC,OAAO,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;AAClF,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,sBAAsB,CAAC,MAAc;IACnD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,WAAW,GAAG,CAAC,CAAC,CAAC;IACrB,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,WAAW,GAAG,KAAK,CAAC;YACpB,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,WAAW,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAClC,KAAK,IAAI,KAAK,GAAG,WAAW,EAAE,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,iBAAiB,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAChG,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACvD,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAAE,OAAO,IAAI,CAAC;QAC3F,IAAI,IAAI,CAAC,UAAU,CAAC,yBAAyB,CAAC;YAAE,OAAO,IAAI,CAAC;IAC9D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC9C,OAAO,wBAAwB,CAAC,MAAM,CAAC,IAAI,mBAAmB,CAAC,MAAM,CAAC;WACjE,0BAA0B,CAAC,MAAM,CAAC,IAAI,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC5E,CAAC;AAaD,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,IAAI,wBAAwB,CAAC,MAAM,CAAC;QAAE,OAAO,QAAQ,CAAC;IACtD,IAAI,mBAAmB,CAAC,MAAM,CAAC;QAAE,OAAO,OAAO,CAAC;IAChD,IAAI,0BAA0B,CAAC,MAAM,CAAC;QAAE,OAAO,QAAQ,CAAC;IACxD,IAAI,sBAAsB,CAAC,MAAM,CAAC;QAAE,OAAO,UAAU,CAAC;IACtD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5E,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,UAAU,CAAC;IAClC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc;IAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;IACjD,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;YAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAED,8CAA8C;AAC9C,MAAM,CAAC,MAAM,6BAA6B,GACxC,oDAAoD,CAAC;AAEvD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,wBAAwB,GACnC,6CAA6C,CAAC;AAEhD,+DAA+D;AAC/D,MAAM,CAAC,MAAM,4BAA4B,GACvC,qDAAqD,CAAC;AAExD,iDAAiD;AACjD,MAAM,CAAC,MAAM,uBAAuB,GAClC,oDAAoD,CAAC;AAEvD,qDAAqD;AACrD,MAAM,CAAC,MAAM,qBAAqB,GAChC,iCAAiC,CAAC;AAEpC,4BAA4B;AAC5B,MAAM,CAAC,MAAM,oBAAoB,GAC/B,uCAAuC,CAAC;AAE1C,4DAA4D;AAC5D,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAClD,IAAI,KAAK,YAAY,cAAc;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC;IAC1D,MAAM,IAAI,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;IAC3D,OAAO,iBAAiB,IAAI,GAAG,CAAC;AAClC,CAAC;AAiBD,wDAAwD;AACxD,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,IAAY;IAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC;IACtE,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY,EAAE,GAAuB;IACzE,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IACtF,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;IACpC,MAAM,YAAY,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAClF,IAAI,YAAY,KAAK,OAAO;QAAE,MAAM,IAAI,cAAc,CAAC,wBAAwB,CAAC,CAAC;IACjF,IAAI,YAAY,KAAK,QAAQ;QAAE,MAAM,IAAI,cAAc,CAAC,6BAA6B,CAAC,CAAC;IAEvF,MAAM,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC5B,MAAM,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;QAC3D,IAAI,OAAO,GAAG,CAAC;YAAE,MAAM,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,GAAG,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,cAAc,CAAC,qBAAqB,CAAC,CAAC;IAE7D,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC;IACpB,MAAM,eAAe,GAAG,KAAK,GAAG,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC;IACjD,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,KAAK,GAAyB,QAAQ,CAAC;IAC3C,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;YACvB,IAAI,UAAU,IAAI,CAAC;gBAAE,MAAM,IAAI,cAAc,CAAC,uBAAuB,CAAC,CAAC;YACvE,MAAM,GAAG,CAAC,SAAS,EAAE,CAAC;YACtB,UAAU,IAAI,CAAC,CAAC;QAClB,CAAC;aAAM,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;YAChC,sDAAsD;YACtD,wCAAwC;YACxC,IAAI,cAAc,IAAI,CAAC;gBAAE,OAAO;YAChC,MAAM,GAAG,CAAC,SAAS,EAAE,CAAC;YACtB,cAAc,IAAI,CAAC,CAAC;QACtB,CAAC;QACD,MAAM,eAAe,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC7C,SAAS,CAAC;YACR,MAAM,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACxB,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;YACnC,KAAK,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YACnE,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;gBACnE,MAAM,IAAI,cAAc,CACtB,cAAc,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,kBAAkB,CACrE,CAAC;YACJ,CAAC;YACD,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACvB,MAAM,IAAI,cAAc,CAAC,wCAAwC,CAAC,CAAC;YACrE,CAAC;YACD,IAAI,KAAK,KAAK,UAAU;gBAAE,OAAO;YACjC,IAAI,KAAK,KAAK,UAAU;gBAAE,MAAM;YAChC,IAAI,KAAK,KAAK,QAAQ,IAAI,GAAG,EAAE,IAAI,eAAe;gBAAE,MAAM;YAC1D,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG,EAAE,IAAI,eAAe,EAAE,CAAC;gBACpD,0CAA0C;gBAC1C,IAAI,cAAc,GAAG,CAAC;oBAAE,OAAO;gBAC/B,MAAM,IAAI,cAAc,CAAC,oBAAoB,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,gCAAgC;AAChC,SAAS,gBAAgB,CAAC,SAAmB;IAC3C,MAAM,IAAI,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5B,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,IAAI,KAAK,KAAK,SAAS;QAAE,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;IACpC,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,EAAE,EAAE,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC7E,CAAC;AAED;;;;;GAKG;AACH,MAAM,eAAe,GAAG,MAAM,CAAC;AAE/B,8DAA8D;AAC9D,MAAM,UAAU,wBAAwB,CACtC,QAAQ,GAAW,iBAAiB,EACpC,SAAS,GAAW,eAAe;IAEnC,OAAO,CAAC,IAAI,EAAE,EAAE,CACd,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC9B,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE;YACvB,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,OAAO,EAAE,SAAS;SAChD,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YAC3B,IAAI,KAAK,IAAI,OAAQ,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACvE,iDAAiD;gBACjD,MAAM,CAAC,KAAK,CAAC,CAAC;gBACd,OAAO;YACT,CAAC;YACD,MAAM,QAAQ,GAAG,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtF,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAED,qCAAqC;AACrC,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAEtB,IAAI;IACJ,QAAQ;IACR,MAAM;IAHxB,YACkB,IAAc,EACd,QAAgB,EAChB,MAAc;QAE9B,KAAK,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,QAAQ,MAAM,MAAM,EAAE,CAAC,CAAC;oBAJrD,IAAI;wBACJ,QAAQ;sBACR,MAAM;QAGtB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAOD,mDAAmD;AACnD,MAAM,OAAO,kBAAkB;IACZ,MAAM,CAAoB;IAClC,KAAK,CAAuB;IACpB,YAAY,CAAS;IACtC,kCAAkC;IACjB,WAAW,CAAwD;IACnE,eAAe,CAAS;IACzC,mEAAmE;IAClD,eAAe,CAAS;IAEzC,YAAY,OAAO,GAOf,EAAE;QACJ,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,wBAAwB,EAAE,CAAC;QAC3D,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,oBAAoB,EAAE,CAAC;QACzD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,WAAW,CAAC;QAC9D,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,GAAG,CAAC;QACtD,IAAI,CAAC,WAAW,GAAG;YACjB,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,IAAI,GAAG;YAC5C,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,IAAI,GAAG;YAC1C,QAAQ,EAAE,OAAO,CAAC,WAAW,EAAE,QAAQ,IAAI,KAAK;SACjD,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAClC,iEAAiE;QACjE,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;QAClE,0DAA0D;QAC1D,2DAA2D;QAC3D,wDAAwD;QACxD,0DAA0D;QAC1D,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAC7E,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC5C,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACxD,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC1D,MAAM,WAAW,GAAG,IAAI,GAAG,EAA8B,CAAC;QAC1D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS;gBAAE,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YACnG,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC;YACrC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;gBAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACrE,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC5G,IAAI,iBAAiB,KAAK,SAAS;gBAAE,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;QACjG,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClF,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/C,uDAAuD;QACvD,+CAA+C;QAC/C,MAAM,KAAK,GAAkB,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACrD,IAAI;YACJ,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;YAC9B,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YACtB,OAAO,EAAE,MAAe;YACxB,GAAG,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC;gBACnC,CAAC,CAAC,EAAE,iBAAiB,EAAE,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAE,EAAE;gBAC3D,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC,CAAC;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,qEAAqE;IACrE,KAAK,CAAC,QAAQ,CAAC,IAAY;QACzB,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,OAAO;gBACL,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,CAAC,EAAE,IAAI,CAAC,eAAe;oBACvB,IAAI,EAAE,mBAAmB;oBACzB,OAAO,EAAE,UAAU,IAAI,sBAAsB;iBAC9C;aACF,CAAC;QACJ,CAAC;QACD,gDAAgD;QAChD,kEAAkE;QAClE,qEAAqE;QACrE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,QAAQ,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACpG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO;gBACL,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,CAAC,EAAE,IAAI,CAAC,eAAe;oBACvB,IAAI,EAAE,mBAAmB;oBACzB,OAAO,EAAE,UAAU,IAAI,mBAAmB;iBAC3C;aACF,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5C,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;IACvG,CAAC;IAED,wDAAwD;IACxD,KAAK,CAAC,iBAAiB,CAAC,IAAY;QAClC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;gBAC/B,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,yBAAyB;aAChF,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YACvC,OAAO,yBAAyB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,eAAe,CAAC,IAAY,EAAE,MAAqB;QACvD,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,mDAAmD;IACnD,KAAK,CAAC,IAAI,CAAC,IAAY;QACrB,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,cAAc,CAAC,IAAY,EAAE,IAAY,EAAE,OAAO,GAA0B,EAAE;QAClF,sEAAsE;QACtE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;QAC3D,0DAA0D;QAC1D,8DAA8D;QAC9D,gCAAgC;QAChC,IAAI,MAAM,KAAK,IAAI,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,cAAc,CAAC,4BAA4B,CAAC,CAAC;QACzD,CAAC;QACD,gDAAgD;QAChD,0DAA0D;QAC1D,0DAA0D;QAC1D,qDAAqD;QACrD,6DAA6D;QAC7D,iDAAiD;QACjD,oDAAoD;QACpD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,UAAU,KAAK,IAAI,IAAI,0BAA0B,CAAC,UAAU,CAAC;YAC3E,CAAC,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACtC,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,OAAO,CAAC,kBAAkB,EAAE,EAAE,IAAI,IAAI,CAAC;YACxD,IAAI,QAAQ,KAAK,IAAI,IAAI,iCAAiC,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC;gBAC9E,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;oBACtC,MAAM,IAAI,eAAe,CACvB,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,EACjD,CAAC,EACD,0EAA0E,CAC3E,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;gBACrC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QACD,8CAA8C;QAC9C,wDAAwD;QACxD,+CAA+C;QAC/C,qDAAqD;QACrD,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QACxC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACvC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CAAC,IAAY,EAAE,IAAY;QAC5C,MAAM,eAAe,CAAC,IAAI,EAAE;YAC1B,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC;YACpD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;YACxD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC;YAC/C,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,OAAO;YACjC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM;YAC/B,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ;SACpC,CAAC,CAAC;IACL,CAAC;IAED,sCAAsC;IAC9B,KAAK,CAAC,0BAA0B,CAAC,IAAY;QACnD,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,aAAa,CAAC,IAAY;QACtC,IAAI,CAAC;YACH,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;gBAChD,MAAM,GAAG,GAAG,qBAAqB,CAAC,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;gBACzE,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;oBAAE,OAAO;gBACrE,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACtC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,mBAAmB;QACrB,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,aAAa,CAAC,IAAY;QAC9B,IAAI,CAAC;YACH,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,EAAE,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;gBACjD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;gBACnE,MAAM,QAAQ,GAAG,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;gBAC3E,IAAI,QAAQ,KAAK,IAAI;oBAAE,OAAO,KAAK,CAAC;gBACpC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,IAAI,CAAC;gBAC3D,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;gBACnC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;YAC5E,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;YACnE,MAAM,QAAQ,GAAG,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAC3E,OAAO,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;QACxE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAGD;;;;;;;;OAQG;IACK,KAAK,CAAC,oBAAoB,CAAC,IAAY;QAC7C,MAAM,IAAI,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACzE,KAAK,CAAC,GAAG,EAAE,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,8BAA8B,CAAC,IAAY;QACvD,4DAA4D;QAC5D,2EAA2E;QAC3E,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YACvE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YACvC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACxC,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACzE,KAAK,CAAC,GAAG,EAAE,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,KAAK,CAAC,kBAAkB,CAAC,IAAY;QACnC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACzE,KAAK,CAAC,GAAG,EAAE,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,0DAA0D;IAC1D,KAAK,CAAC,QAAQ,CAAC,IAAY,EAAE,IAAc,EAAE,OAAO,GAAG,KAAK;QAC1D,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC9B,MAAM,IAAI,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QACxD,mEAAmE;QACnE,0CAA0C;QAC1C,IAAI,OAAO;YAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,KAAK,CAAC,WAAW,CAAC,IAAY,EAAE,OAAO,GAAuB,EAAE;QAC9D,MAAM,IAAI,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QACpC,IAAI,OAAO,CAAC,gBAAgB,IAAI,KAAK;YAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QACvF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACzE,KAAK,CAAC,GAAG,EAAE,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,sDAAsD;IAC9C,UAAU,CAAC,IAAY;QAC7B,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,IAAI,IAAI,CAAC;IAClD,CAAC;IAED,+CAA+C;IACvC,KAAK,CAAC,gBAAgB;QAC5B,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;YAC/D,IAAI,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC/E,OAAO,IAAI,GAAG,EAAE,CAAC;YACnB,CAAC;YACD,MAAM,IAAI,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;QAC9B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;gBAAE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { LineWriter } from "../shared/lineWriter.js";
|
|
2
|
-
import type
|
|
2
|
+
import { type ImageService } from "./imageService.js";
|
|
3
3
|
import { TranscriptTailer, type ClaudeTurnLifecycleEvent } from "./transcriptTailer.js";
|
|
4
4
|
import { SubagentTailer } from "./subagentTailer.js";
|
|
5
5
|
import { type SubagentTranscriptResult } from "./subagentTranscript.js";
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
import * as fs from "node:fs";
|
|
8
8
|
import * as os from "node:os";
|
|
9
9
|
import * as path from "node:path";
|
|
10
|
+
import { attachmentImagePaths } from "./imageService.js";
|
|
10
11
|
import { TranscriptTailer } from "./transcriptTailer.js";
|
|
11
12
|
import { SubagentTailer } from "./subagentTailer.js";
|
|
12
13
|
import { readBackgroundOutput, readCodexSubagentTranscript, readSubagentTranscript, } from "./subagentTranscript.js";
|
|
@@ -142,13 +143,11 @@ export class ChatTailController {
|
|
|
142
143
|
// サムネ(image_available)を後続で発行し、
|
|
143
144
|
// iOS にインライン表示させる(chat-attachments)。id は決定的(att-<streamId>-<n>)。
|
|
144
145
|
if (imageService !== null && message.type === "chat_output" && message.role === "user") {
|
|
145
|
-
const
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
writer.write(available);
|
|
151
|
-
}
|
|
146
|
+
for (const available of await imageService.makeAttachmentsAvailable(message.text, message.streamId)) {
|
|
147
|
+
if (ac.signal.aborted)
|
|
148
|
+
break;
|
|
149
|
+
attachedImagePaths.add(available.path);
|
|
150
|
+
writer.write(available);
|
|
152
151
|
}
|
|
153
152
|
}
|
|
154
153
|
// Read ツールで画像ファイルを読んだら、そのサムネ(image_available)を後続で発行し
|
|
@@ -217,7 +216,7 @@ export class ChatTailController {
|
|
|
217
216
|
this.currentNewerThanMs = newerThanMs;
|
|
218
217
|
this.currentResolvedPath = resolvedNow;
|
|
219
218
|
this.currentSubagentPump = null;
|
|
220
|
-
const { writer, codexTailer } = this;
|
|
219
|
+
const { writer, codexTailer, imageService } = this;
|
|
221
220
|
ChatTailController.diag(`openCodex cwd=${cwd} preferred=${preferredSessionId ?? "nil"} newerThan=${newerThanMs === null ? "nil" : String(newerThanMs)} resolved=${resolvedNow ?? "nil"}`);
|
|
222
221
|
this.currentPump = (async () => {
|
|
223
222
|
let count = 0;
|
|
@@ -230,6 +229,14 @@ export class ChatTailController {
|
|
|
230
229
|
ChatTailController.diag(`emit codex chat_output #${count}`);
|
|
231
230
|
try {
|
|
232
231
|
writer.write(message);
|
|
232
|
+
// Codex の履歴/rollout fallback も元の user 発話に紐づく添付サムネを送る。
|
|
233
|
+
if (imageService !== null && message.type === "chat_output" && message.role === "user") {
|
|
234
|
+
for (const available of await imageService.makeAttachmentsAvailable(message.text, message.streamId)) {
|
|
235
|
+
if (ac.signal.aborted)
|
|
236
|
+
break;
|
|
237
|
+
writer.write(available);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
233
240
|
}
|
|
234
241
|
catch (error) {
|
|
235
242
|
ChatTailController.diag(`codex write failed at #${count}: ${String(error)}`);
|
|
@@ -253,31 +260,7 @@ export class ChatTailController {
|
|
|
253
260
|
* 裸パスは Tailii 管理配下に限定し、通常本文の任意の画像パスを添付と誤認しない。
|
|
254
261
|
*/
|
|
255
262
|
static attachmentImagePaths(text) {
|
|
256
|
-
|
|
257
|
-
for (const match of text.matchAll(/@"(\/[^"]+)"/g)) {
|
|
258
|
-
if (match[1] !== undefined)
|
|
259
|
-
paths.push(match[1]);
|
|
260
|
-
}
|
|
261
|
-
for (const match of text.matchAll(/@(\/[^\s"]+)/g)) {
|
|
262
|
-
if (match[1] !== undefined)
|
|
263
|
-
paths.push(match[1]);
|
|
264
|
-
}
|
|
265
|
-
// MessageInputBar.composeOutgoing は upload 済みパスを @ なしで本文先頭へ置く。
|
|
266
|
-
// ファイル名は iOS 側で安全な文字へ正規化済みなので、空白/引用符を境界に抽出できる。
|
|
267
|
-
for (const match of text.matchAll(/(?:^|[\s"])(\/(?:[^\s"]*\/)?\.tailii\/uploads\/[^\s"]+)/g)) {
|
|
268
|
-
if (match[1] !== undefined)
|
|
269
|
-
paths.push(match[1]);
|
|
270
|
-
}
|
|
271
|
-
const seen = new Set();
|
|
272
|
-
return paths.filter((p) => {
|
|
273
|
-
const ext = path.extname(p).slice(1).toLowerCase();
|
|
274
|
-
if (!ChatTailController.IMAGE_EXTENSIONS.has(ext))
|
|
275
|
-
return false;
|
|
276
|
-
if (seen.has(p))
|
|
277
|
-
return false;
|
|
278
|
-
seen.add(p);
|
|
279
|
-
return true;
|
|
280
|
-
});
|
|
263
|
+
return attachmentImagePaths(text);
|
|
281
264
|
}
|
|
282
265
|
/**
|
|
283
266
|
* Read ツールの tool_activity が「画像ファイル」を対象にしているとき、その絶対パスを返す
|