@chatcode/chatcode-cli 3.0.4-rc.5 → 3.0.4-rc.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.
- package/README.i18n.yaml +4 -4
- package/README.md +4 -2
- package/README.zh.md +4 -2
- package/lib/bin.js +3 -3
- package/lib/{command-errors-BJ_ZWzUU.js → command-errors-Ca64Lgba.js} +12 -12
- package/lib/{command-trees-C9b7-bci.js → command-trees-CVc4Xu_z.js} +2 -2
- package/lib/{component-identity-Jb1DYjke.js → component-identity-6aEut5Yt.js} +3 -3
- package/lib/dump-config-CDixiJNt.js +2 -0
- package/lib/{dump-config-BcH-VYuv.js → dump-config-ZzrfvtnX.js} +10 -6
- package/lib/{dump-config-schema-DM0fb6Ns.js → dump-config-schema-BlO-eZ-J.js} +2 -2
- package/lib/{extension-events-DKX4LXOd.js → extension-events-C7MUpqVE.js} +20 -20
- package/lib/headless-compat.js +31 -31
- package/lib/{host-access-CMg6rsWt.js → host-access-CLbyAGT5.js} +1 -1
- package/lib/{keymap-CrC4pSNH.js → keymap-82JwLLHe.js} +2 -2
- package/lib/{plugin-eJjD6r12.js → plugin-BZdazFXS.js} +1 -1
- package/lib/{plugin-CmyMCGfb.js → plugin-BlQlWIR5.js} +425 -451
- package/lib/{profile-boot-BNQry1NM.js → profile-boot-B0aEEQIR.js} +40 -11
- package/lib/profile-boot.js +2 -2
- package/lib/{scenes-Cil9RnwU.js → scenes-BNS0ZFyQ.js} +3 -3
- package/lib/{settings-sections-jVCqXwdH.js → settings-sections-CXH24cu5.js} +3 -3
- package/lib/{statusBarSettings-DNoBH3Cq.js → statusBarSettings-BAMzn8fX.js} +6 -6
- package/lib/{themes-BdgeY3It.js → themes-DXUIvP7m.js} +12 -12
- package/lib/tui-compat-command-trees.js +1 -1
- package/lib/tui-compat-extensions.js +3 -3
- package/lib/tui-compat-plugin-host.js +5 -5
- package/lib/tui-compat-scenes.js +1 -1
- package/lib/tui-compat-settings-sections.js +1 -1
- package/lib/tui-compat-working-activity.js +17 -17
- package/lib/tui-compat-workspaces.js +1 -1
- package/lib/tui-compat.js +39 -39
- package/lib/types/dump-config.d.ts +3 -3
- package/lib/types/profile-boot.d.ts +13 -3
- package/lib/{workspaces-DOatJRYr.js → workspaces-CUJXNU5W.js} +2 -2
- package/package.json +28 -28
- package/runtime/manifest.json +1 -1
- package/runtime/node_modules/@deepseek-ai/cordis-plugin-loader/lib/index.js +1 -1
- package/runtime/node_modules/@deepseek-ai/cordis-plugin-loader/src/config/entry.ts +1 -1
- package/runtime/node_modules/@deepseek-ai/dsh-app-boot/lib/index.js +5 -1
- package/runtime/node_modules/@deepseek-ai/dsh-app-boot/lib/types/profile-context.d.ts +2 -0
- package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-account/lib/client.js +2 -2
- package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-general/lib/client.js +1 -1
- package/runtime/node_modules/@deepseek-ai/dsh-client-ui-sidebar/lib/client.js +3 -1
- package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/client.js +17 -159
- package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/types/client/ArchivedSessions.d.ts +1 -2
- package/runtime/node_modules/@deepseek-ai/dsh-config-editor/lib/index.js +5 -1
- package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/{index-Dz_cDcce.js → index-D-8yUukj.js} +24 -24
- package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/{index-Dz_cDcce.js.map → index-D-8yUukj.js.map} +1 -1
- package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/index.html +1 -1
- package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/preview.html +1 -1
- package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/index.js +32 -29
- package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/types/index.d.ts +0 -2
- package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/types/index.js +39 -30
- package/lib/dump-config-CyopmD85.js +0 -2
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { i as __toESM, n as __exportAll, r as __require, t as __commonJSMin } from "./rolldown-runtime-2rV9d50f.js";
|
|
2
|
-
import { _ as settingsValue, a as formatContextUsage, c as normalizePageMargin, d as normalizeToolBackground, f as parsePageMarginSpec, h as displaySettingsScope, i as applyPageMargin, l as normalizeScrollGutter, m as subscribePageMargin, n as createStatusBarSchema, o as getPageMarginSetting, p as resolvePageMargin, s as isPageMarginMode, t as STATUS_BAR_FIELDS, u as normalizeStatusBar } from "./statusBarSettings-
|
|
3
|
-
import { a as draftComboConflict, d as setKeymapOverrides, f as isMod, h as modLabel, l as parseComboDraft, m as isPlainReturnInput, n as actionMatches, o as effectiveComboString, p as isPlainReturn, t as SHORTCUT_ACTIONS } from "./keymap-
|
|
4
|
-
import { c as withHostRootCapability } from "./host-access-
|
|
5
|
-
import { i as getHostWorkspaceRuntime, r as createLocalWorkspaceRuntime } from "./workspaces-
|
|
6
|
-
import { n as getHostCommandTrees } from "./command-trees-
|
|
7
|
-
import { a as isReservedCredentialRef, n as getHostSettingsSections, r as getLocalSettingsSectionsHost } from "./settings-sections-
|
|
8
|
-
import { n as getHostSceneRuntime } from "./scenes-
|
|
9
|
-
import { A as tuiEnvName, C as LEGACY_DATA_DIR, D as homeDir, E as detectLegacyEnv, J as parseManifest, M as loadSpecData, O as readTuiEnv, S as DATA_DIR, T as RENAMED_ENV, Y as projectManifest, _ as stripAnsi$1, a as normalizeCancelDecision, b as isWide, c as installDecisionGuard, d as capCells, f as cleanRenderText, g as getGraphemeSegmenter, h as stringWidth$1, i as dispatchTuiNotification, k as resolveChatCodeCliHome, m as flattenInline, p as cleanScalarText, r as dispatchTuiDecision, v as eastAsianWidth, w as PRE_DSH_TUI_DATA_DIR, x as readGrantStore, y as isFullWidth } from "./extension-events-
|
|
10
|
-
import { A as validatePlugin, D as buildHostDescriptor, O as negotiate, _ as getHostMessageObserver, a as commandOwner, k as createContractIndex, n as hasCommandErrorCode, r as mapCommandError, w as EFFECT_LEDGER_FILE } from "./command-errors-
|
|
11
|
-
import { D as getHostStatusStore, E as TuiStatusStore, M as getHostDialogStore, S as getHostShortcuts, a as listCustomThemes, b as getHostRenderers, c as THEME_NAMES, d as getTheme, f as isLightThemeActive, g as setAutoThemeBase, h as setActiveThemeName, i as isSafeThemeName, j as TuiDialogStore, l as getActiveTheme, m as registerCustomThemeResolver, n as getHostThemes, o as resolveCustomTheme, p as isThemeAvailable, r as buildTheme, s as AUTO_THEME_NAME, u as getAutoThemeBase, v as getHostToastStore } from "./themes-
|
|
2
|
+
import { _ as settingsValue, a as formatContextUsage, c as normalizePageMargin, d as normalizeToolBackground, f as parsePageMarginSpec, h as displaySettingsScope, i as applyPageMargin, l as normalizeScrollGutter, m as subscribePageMargin, n as createStatusBarSchema, o as getPageMarginSetting, p as resolvePageMargin, s as isPageMarginMode, t as STATUS_BAR_FIELDS, u as normalizeStatusBar } from "./statusBarSettings-BAMzn8fX.js";
|
|
3
|
+
import { a as draftComboConflict, d as setKeymapOverrides, f as isMod, h as modLabel, l as parseComboDraft, m as isPlainReturnInput, n as actionMatches, o as effectiveComboString, p as isPlainReturn, t as SHORTCUT_ACTIONS } from "./keymap-82JwLLHe.js";
|
|
4
|
+
import { c as withHostRootCapability } from "./host-access-CLbyAGT5.js";
|
|
5
|
+
import { i as getHostWorkspaceRuntime, r as createLocalWorkspaceRuntime } from "./workspaces-CUJXNU5W.js";
|
|
6
|
+
import { n as getHostCommandTrees } from "./command-trees-CVc4Xu_z.js";
|
|
7
|
+
import { a as isReservedCredentialRef, n as getHostSettingsSections, r as getLocalSettingsSectionsHost } from "./settings-sections-CXH24cu5.js";
|
|
8
|
+
import { n as getHostSceneRuntime } from "./scenes-BNS0ZFyQ.js";
|
|
9
|
+
import { A as tuiEnvName, C as LEGACY_DATA_DIR, D as homeDir, E as detectLegacyEnv, J as parseManifest, M as loadSpecData, O as readTuiEnv, S as DATA_DIR, T as RENAMED_ENV, Y as projectManifest, _ as stripAnsi$1, a as normalizeCancelDecision, b as isWide, c as installDecisionGuard, d as capCells, f as cleanRenderText, g as getGraphemeSegmenter, h as stringWidth$1, i as dispatchTuiNotification, k as resolveChatCodeCliHome, m as flattenInline, p as cleanScalarText, r as dispatchTuiDecision, v as eastAsianWidth, w as PRE_DSH_TUI_DATA_DIR, x as readGrantStore, y as isFullWidth } from "./extension-events-C7MUpqVE.js";
|
|
10
|
+
import { A as validatePlugin, D as buildHostDescriptor, O as negotiate, _ as getHostMessageObserver, a as commandOwner, k as createContractIndex, n as hasCommandErrorCode, r as mapCommandError, w as EFFECT_LEDGER_FILE } from "./command-errors-Ca64Lgba.js";
|
|
11
|
+
import { D as getHostStatusStore, E as TuiStatusStore, M as getHostDialogStore, S as getHostShortcuts, a as listCustomThemes, b as getHostRenderers, c as THEME_NAMES, d as getTheme, f as isLightThemeActive, g as setAutoThemeBase, h as setActiveThemeName, i as isSafeThemeName, j as TuiDialogStore, l as getActiveTheme, m as registerCustomThemeResolver, n as getHostThemes, o as resolveCustomTheme, p as isThemeAvailable, r as buildTheme, s as AUTO_THEME_NAME, u as getAutoThemeBase, v as getHostToastStore } from "./themes-DXUIvP7m.js";
|
|
12
12
|
import { a as resolvePreset, i as isPresetName, n as FRAME_PRESETS, o as ActivityTracker, r as PRESET_NAMES, t as DEFAULT_PRESET } from "./frames-B89znn_0.js";
|
|
13
13
|
import { n as require_has_flag, t as require_supports_color } from "./supports-color-CcW-FGjr.js";
|
|
14
14
|
import { createRequire, findPackageJSON } from "node:module";
|
|
@@ -18,9 +18,9 @@ import os, { homedir, tmpdir } from "node:os";
|
|
|
18
18
|
import { basename, delimiter, dirname, extname, isAbsolute, join, resolve, sep, win32 } from "node:path";
|
|
19
19
|
import { createHash, randomUUID } from "node:crypto";
|
|
20
20
|
import { chmod, mkdir, mkdtemp, open, readFile, rename, rm, stat, unlink, writeFile } from "node:fs/promises";
|
|
21
|
+
import Schema from "@deepseek-ai/schemastery";
|
|
21
22
|
import { createServer } from "node:net";
|
|
22
23
|
import { writeFileAtomic } from "@deepseek-ai/dsh-atomic-write";
|
|
23
|
-
import z from "@deepseek-ai/schemastery";
|
|
24
24
|
import { assembleContextFor, installModelSelection } from "@deepseek-ai/dsh-agent";
|
|
25
25
|
import { BlockAssembler, MessageId, ReasoningEffortId, createUserMessage, isAgentLoopRequest } from "@deepseek-ai/dsh-llm";
|
|
26
26
|
import * as dshSession from "@deepseek-ai/dsh-session";
|
|
@@ -1198,7 +1198,7 @@ var require_react = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1198
1198
|
else module.exports = require_react_development();
|
|
1199
1199
|
}));
|
|
1200
1200
|
//#endregion
|
|
1201
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
1201
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/sideQuestion.js
|
|
1202
1202
|
var import_react = /* @__PURE__ */ __toESM(require_react(), 1);
|
|
1203
1203
|
/**
|
|
1204
1204
|
* Side Question (`/btw`) — CC's btw.tsx/sideQuestion.ts semantics on the
|
|
@@ -1268,7 +1268,7 @@ async function runSideQuestion(params) {
|
|
|
1268
1268
|
return { answer };
|
|
1269
1269
|
}
|
|
1270
1270
|
//#endregion
|
|
1271
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
1271
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/recap.js
|
|
1272
1272
|
/**
|
|
1273
1273
|
* Session recap (`/recap`, pi-recap semantics): a single TOOL-LESS LLM
|
|
1274
1274
|
* call that summarizes the session's RECENT activity into one line and
|
|
@@ -1381,7 +1381,7 @@ function parseRecapResponse(raw) {
|
|
|
1381
1381
|
return { summary: raw.trim() };
|
|
1382
1382
|
}
|
|
1383
1383
|
//#endregion
|
|
1384
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
1384
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/log.js
|
|
1385
1385
|
/**
|
|
1386
1386
|
* Error logger for the ported Ink core. Always writes to stderr (an Ink
|
|
1387
1387
|
* renderer failure must never pass silently).
|
|
@@ -1392,7 +1392,7 @@ function logError(error) {
|
|
|
1392
1392
|
process.stderr.write(`[ChatCode CLI TUI] ${text}\n`);
|
|
1393
1393
|
}
|
|
1394
1394
|
//#endregion
|
|
1395
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
1395
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/update-overflow-guard.js
|
|
1396
1396
|
/**
|
|
1397
1397
|
* Self-healing guard for React's nested-update overflow — Minified React
|
|
1398
1398
|
* error #185 ("Maximum update depth exceeded").
|
|
@@ -1535,7 +1535,7 @@ function installNestedUpdateOverflowProcessGuard() {
|
|
|
1535
1535
|
});
|
|
1536
1536
|
}
|
|
1537
1537
|
//#endregion
|
|
1538
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
1538
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/cc/sessionColors.js
|
|
1539
1539
|
/**
|
|
1540
1540
|
* Session accent colors for `/color` (CC's /color semantics): a small
|
|
1541
1541
|
* named palette that overrides the prompt-input border (and its session
|
|
@@ -1576,7 +1576,7 @@ function sessionColorHex(name) {
|
|
|
1576
1576
|
return isValidSessionColor(name) ? SESSION_COLORS[name] : void 0;
|
|
1577
1577
|
}
|
|
1578
1578
|
//#endregion
|
|
1579
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
1579
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/deepseekPricing.js
|
|
1580
1580
|
/**
|
|
1581
1581
|
* 是否处于高峰计费时段:北京时间周一至周五 9:00-12:00、14:00-18:00。
|
|
1582
1582
|
* 北京时间为 UTC+8 固定偏移(无夏令时),用 UTC 时刻加偏移换算。
|
|
@@ -1595,7 +1595,7 @@ Object.freeze({
|
|
|
1595
1595
|
cacheWrite: 0
|
|
1596
1596
|
});
|
|
1597
1597
|
//#endregion
|
|
1598
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
1598
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/i18n.js
|
|
1599
1599
|
/**
|
|
1600
1600
|
* dsh-tui localization — UI strings for Chinese (`zh`, the default) and
|
|
1601
1601
|
* English (`en`).
|
|
@@ -3667,14 +3667,6 @@ const dict = {
|
|
|
3667
3667
|
zh: "已恢复会话",
|
|
3668
3668
|
en: "Session resumed"
|
|
3669
3669
|
},
|
|
3670
|
-
"resume-delete-confirm": {
|
|
3671
|
-
zh: "永久删除 {{n}} 条记录(含子代理):「{{name}}」?无法撤销。",
|
|
3672
|
-
en: "Permanently delete {{n}} records: \"{{name}}\"? Cannot undo."
|
|
3673
|
-
},
|
|
3674
|
-
"resume-deleted": {
|
|
3675
|
-
zh: "已删除会话「{{name}}」",
|
|
3676
|
-
en: "Deleted session {{name}}"
|
|
3677
|
-
},
|
|
3678
3670
|
"resume-archived": {
|
|
3679
3671
|
zh: "已归档会话「{{name}}」",
|
|
3680
3672
|
en: "Archived session {{name}}"
|
|
@@ -3687,10 +3679,6 @@ const dict = {
|
|
|
3687
3679
|
zh: "无法归档会话「{{name}}」",
|
|
3688
3680
|
en: "Could not archive session {{name}}"
|
|
3689
3681
|
},
|
|
3690
|
-
"resume-delete-failed": {
|
|
3691
|
-
zh: "无法删除会话「{{name}}」",
|
|
3692
|
-
en: "Could not delete session {{name}}"
|
|
3693
|
-
},
|
|
3694
3682
|
"resume-rename-placeholder": {
|
|
3695
3683
|
zh: "新的会话名称…",
|
|
3696
3684
|
en: "New session name…"
|
|
@@ -3716,21 +3704,13 @@ const dict = {
|
|
|
3716
3704
|
en: "Restore"
|
|
3717
3705
|
},
|
|
3718
3706
|
"resume-hint-archived-list": {
|
|
3719
|
-
zh: "**Enter** 恢复 · {{mod}}+
|
|
3720
|
-
en: "**Enter** restore · {{mod}}+
|
|
3721
|
-
},
|
|
3722
|
-
"resume-hint-permanent-delete": {
|
|
3723
|
-
zh: "**Tab / ← →** 选择 · **Enter** 确认 · Esc 取消",
|
|
3724
|
-
en: "**Tab / ← →** choose · **Enter** confirm · Esc cancel"
|
|
3707
|
+
zh: "**Enter** 恢复 · {{mod}}+E 返回",
|
|
3708
|
+
en: "**Enter** restore · {{mod}}+E back"
|
|
3725
3709
|
},
|
|
3726
3710
|
"resume-hint-archive": {
|
|
3727
3711
|
zh: "**Enter** 归档 · Esc 取消",
|
|
3728
3712
|
en: "**Enter** archive · Esc cancel"
|
|
3729
3713
|
},
|
|
3730
|
-
"resume-delete-unavailable": {
|
|
3731
|
-
zh: "共享会话删除服务不可用,请更新主程序",
|
|
3732
|
-
en: "Shared session deletion is unavailable; update the Host"
|
|
3733
|
-
},
|
|
3734
3714
|
"resume-restored": {
|
|
3735
3715
|
zh: "已恢复会话「{{name}}」",
|
|
3736
3716
|
en: "Restored session {{name}}"
|
|
@@ -6528,7 +6508,7 @@ function resolveStartupLang(dir = PREFS_DIR$6, env = process.env) {
|
|
|
6528
6508
|
return readLangPref(dir) ?? "zh";
|
|
6529
6509
|
}
|
|
6530
6510
|
//#endregion
|
|
6531
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
6511
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/commands.js
|
|
6532
6512
|
/**
|
|
6533
6513
|
* Local slash commands for the dsh-tui TUI. Claude Code's command system is
|
|
6534
6514
|
* deeply wired into its engine; dsh-tui ships a small built-in set with the
|
|
@@ -6992,7 +6972,7 @@ function matchingCompletionToken(candidate, prefix) {
|
|
|
6992
6972
|
return candidate.aliases?.find((alias) => alias.toLowerCase().startsWith(prefix));
|
|
6993
6973
|
}
|
|
6994
6974
|
//#endregion
|
|
6995
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
6975
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/sessionHistory.js
|
|
6996
6976
|
/**
|
|
6997
6977
|
* Launcher contract for `dsh-tui --resume`: the TUI writes the chosen session
|
|
6998
6978
|
* id to `<CHATCODE_CLI_HOME>/tui/resume.txt`, and the launcher feeds it back as
|
|
@@ -7159,7 +7139,7 @@ function forgetAgentViewSession(sessionId) {
|
|
|
7159
7139
|
} catch {}
|
|
7160
7140
|
}
|
|
7161
7141
|
//#endregion
|
|
7162
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
7142
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/sessionTags.js
|
|
7163
7143
|
/**
|
|
7164
7144
|
* One searchable local tag per persisted session.
|
|
7165
7145
|
*
|
|
@@ -7309,7 +7289,7 @@ function forgetSessionTag(sessionId, dir = DATA_DIR) {
|
|
|
7309
7289
|
return setSessionTag(sessionId, void 0, dir).ok;
|
|
7310
7290
|
}
|
|
7311
7291
|
//#endregion
|
|
7312
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
7292
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/compat/liveSession.js
|
|
7313
7293
|
/**
|
|
7314
7294
|
* Live Session compatibility facade.
|
|
7315
7295
|
*
|
|
@@ -7471,7 +7451,7 @@ function liveSessionCreateOptions(request) {
|
|
|
7471
7451
|
};
|
|
7472
7452
|
}
|
|
7473
7453
|
//#endregion
|
|
7474
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
7454
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/compat/sessionLog.js
|
|
7475
7455
|
/**
|
|
7476
7456
|
* Legacy third-party session-event types the TUI vouches for as ephemeral
|
|
7477
7457
|
* UI frames — safe for the strict read path to accept and skip. Exported
|
|
@@ -8163,7 +8143,7 @@ function appendSessionTitle(sessionId, title) {
|
|
|
8163
8143
|
}
|
|
8164
8144
|
}
|
|
8165
8145
|
//#endregion
|
|
8166
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
8146
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/compat/sessionEvent.js
|
|
8167
8147
|
/** Narrow an unknown/session event to the retired durable chunk envelope. */
|
|
8168
8148
|
function legacyAssistantChunkOf(event) {
|
|
8169
8149
|
if (event === null || typeof event !== "object") return void 0;
|
|
@@ -8177,7 +8157,7 @@ function legacyAssistantChunkOf(event) {
|
|
|
8177
8157
|
return event;
|
|
8178
8158
|
}
|
|
8179
8159
|
//#endregion
|
|
8180
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
8160
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/compaction.js
|
|
8181
8161
|
/**
|
|
8182
8162
|
* Recognize both the current checkpoint source and the legacy plugin marker.
|
|
8183
8163
|
* Harness session format v4 migrated `plugin/compact` to the dedicated
|
|
@@ -8188,7 +8168,7 @@ function isCompactionCheckpointSource(source) {
|
|
|
8188
8168
|
return source.kind === "compact-checkpoint" || source.kind === "plugin" && source.plugin === "compact";
|
|
8189
8169
|
}
|
|
8190
8170
|
//#endregion
|
|
8191
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
8171
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/sessionTree.js
|
|
8192
8172
|
const TREE_FILTERS = [
|
|
8193
8173
|
"default",
|
|
8194
8174
|
"no-tools",
|
|
@@ -10344,7 +10324,7 @@ var require_subset = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
10344
10324
|
module.exports = subset;
|
|
10345
10325
|
}));
|
|
10346
10326
|
//#endregion
|
|
10347
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
10327
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/shellQuote.js
|
|
10348
10328
|
var import_semver = (/* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
10349
10329
|
const internalRe = require_re();
|
|
10350
10330
|
const constants = require_constants$1();
|
|
@@ -10437,7 +10417,7 @@ function cmdEscapeArgument(arg, doubleEscapeMetaChars = false) {
|
|
|
10437
10417
|
return out;
|
|
10438
10418
|
}
|
|
10439
10419
|
//#endregion
|
|
10440
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
10420
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/update.js
|
|
10441
10421
|
const PACKAGE_NAME = "@chatcode/cco-tui";
|
|
10442
10422
|
const DEFAULT_REGISTRY = "https://registry.npmjs.org";
|
|
10443
10423
|
const GITHUB_REPO = "ccch1mneyyy/dsh-TUI";
|
|
@@ -11788,7 +11768,7 @@ async function restartTui(sessionId, options = {}) {
|
|
|
11788
11768
|
});
|
|
11789
11769
|
}
|
|
11790
11770
|
//#endregion
|
|
11791
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
11771
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/sessions/header.js
|
|
11792
11772
|
/** A finite number, or undefined for anything else (NaN and ±Infinity included). */
|
|
11793
11773
|
function finiteNumber(value) {
|
|
11794
11774
|
return typeof value === "number" && Number.isFinite(value) ? value : void 0;
|
|
@@ -11862,7 +11842,7 @@ function classify(header) {
|
|
|
11862
11842
|
return { kind: "root" };
|
|
11863
11843
|
}
|
|
11864
11844
|
//#endregion
|
|
11865
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
11845
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/sessions/frames.js
|
|
11866
11846
|
/**
|
|
11867
11847
|
* Bounded reads over the JSONL backend's concatenated-Zstandard session logs.
|
|
11868
11848
|
*
|
|
@@ -12108,7 +12088,7 @@ function decodeTail(window) {
|
|
|
12108
12088
|
return decodeFrames(window.buffer, window.whole ? walkFrames(window.buffer) : resyncFrames(window.buffer));
|
|
12109
12089
|
}
|
|
12110
12090
|
//#endregion
|
|
12111
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
12091
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/sessions/digest.js
|
|
12112
12092
|
/**
|
|
12113
12093
|
* What a bounded read can learn about a session log.
|
|
12114
12094
|
*
|
|
@@ -12591,7 +12571,7 @@ function previewSession(path, limit) {
|
|
|
12591
12571
|
return entries.slice(-limit);
|
|
12592
12572
|
}
|
|
12593
12573
|
//#endregion
|
|
12594
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
12574
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/sessions/artifact.js
|
|
12595
12575
|
/** Read-only artifact lookup for session summaries and previews. */
|
|
12596
12576
|
/** Highest published compressed generation; temporary migration files are ignored. */
|
|
12597
12577
|
function inDirectory(directory) {
|
|
@@ -12644,7 +12624,7 @@ function findSessionArtifact(sessionId, target) {
|
|
|
12644
12624
|
}
|
|
12645
12625
|
}
|
|
12646
12626
|
//#endregion
|
|
12647
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
12627
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/sessions/store.js
|
|
12648
12628
|
/**
|
|
12649
12629
|
* The session index — a local cache keyed by the backend's own change token.
|
|
12650
12630
|
*
|
|
@@ -12808,7 +12788,7 @@ function noteBranch(sessionId, branch) {
|
|
|
12808
12788
|
writeIndex(index);
|
|
12809
12789
|
}
|
|
12810
12790
|
//#endregion
|
|
12811
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
12791
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/sessions/list.js
|
|
12812
12792
|
/**
|
|
12813
12793
|
* Building the session list.
|
|
12814
12794
|
*
|
|
@@ -13089,7 +13069,7 @@ async function locateSession(source, sessionId, signal) {
|
|
|
13089
13069
|
return match === void 0 ? void 0 : locate$1(source, match.raw, sessionId);
|
|
13090
13070
|
}
|
|
13091
13071
|
//#endregion
|
|
13092
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
13072
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/agent-view.js
|
|
13093
13073
|
/**
|
|
13094
13074
|
* Agent view (CC `claude agents`) derivation helpers — pure functions over
|
|
13095
13075
|
* session events that the channel folds into {@link AgentViewRow}s. Kept in
|
|
@@ -13319,7 +13299,7 @@ function featureOn(config, name) {
|
|
|
13319
13299
|
return config.mode !== "minimal";
|
|
13320
13300
|
}
|
|
13321
13301
|
//#endregion
|
|
13322
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
13302
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/activityPrefs.js
|
|
13323
13303
|
/**
|
|
13324
13304
|
* Persisted working-activity indicator preference, mirroring the pi
|
|
13325
13305
|
* working-activity extension's `~/.pi/agent/working-activity.json`
|
|
@@ -13388,7 +13368,7 @@ function writeActivityFrames(name, dir = PREFS_DIR$5) {
|
|
|
13388
13368
|
}
|
|
13389
13369
|
}
|
|
13390
13370
|
//#endregion
|
|
13391
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
13371
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/fileSuggestions.js
|
|
13392
13372
|
const pathSeparators = /[\\/]/;
|
|
13393
13373
|
function isPathLikeQuery(query) {
|
|
13394
13374
|
return query.startsWith(".") || query.startsWith("~") || query.startsWith("/") || /^[A-Za-z]:[\\/]/.test(query) || pathSeparators.test(query);
|
|
@@ -13411,7 +13391,7 @@ function rankFileCandidates(candidates, query, topK) {
|
|
|
13411
13391
|
return topK === void 0 ? ranked : ranked.slice(0, Math.max(0, topK));
|
|
13412
13392
|
}
|
|
13413
13393
|
//#endregion
|
|
13414
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
13394
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/effortPrefs.js
|
|
13415
13395
|
/**
|
|
13416
13396
|
* Persisted reasoning-effort preference (`~/.chatcode-cli/tui/effort.json`). Set via
|
|
13417
13397
|
* `/effort` (slider or `/effort <id>`; `/effort status` reports the current
|
|
@@ -13453,7 +13433,7 @@ function writeEffortPref(effort, dir = PREFS_DIR$4) {
|
|
|
13453
13433
|
}
|
|
13454
13434
|
}
|
|
13455
13435
|
//#endregion
|
|
13456
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
13436
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/modelPrefs.js
|
|
13457
13437
|
/**
|
|
13458
13438
|
* Persisted model-route preference (`/model` picker choice), kept at
|
|
13459
13439
|
* `~/.chatcode-cli/model.json` (`provider` + `model` keys) so CLI and Web share it
|
|
@@ -13536,7 +13516,7 @@ function writeModelPref(provider, model, dir = PREFS_DIR$3) {
|
|
|
13536
13516
|
}
|
|
13537
13517
|
}
|
|
13538
13518
|
//#endregion
|
|
13539
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
13519
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/modelRoute.js
|
|
13540
13520
|
/**
|
|
13541
13521
|
* Model route resolution (issue #67). The `(provider, model)` pair is a
|
|
13542
13522
|
* single value: every source either supplies the WHOLE route or is skipped,
|
|
@@ -13771,7 +13751,7 @@ function orderModelProviders(providers) {
|
|
|
13771
13751
|
return [...providers].sort((left, right) => rank(left.id) - rank(right.id));
|
|
13772
13752
|
}
|
|
13773
13753
|
//#endregion
|
|
13774
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
13754
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/customModelSettings.js
|
|
13775
13755
|
/** Custom-model forms over the same settings and credential services used by Web. */
|
|
13776
13756
|
function record(value) {
|
|
13777
13757
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
@@ -13973,7 +13953,7 @@ function createCustomModelSettingsStore(path, host) {
|
|
|
13973
13953
|
};
|
|
13974
13954
|
}
|
|
13975
13955
|
//#endregion
|
|
13976
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
13956
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/customModelTest.js
|
|
13977
13957
|
/** Direct, one-shot generation used by `/model-config` before a model is registered. */
|
|
13978
13958
|
function requestEndpoint(baseURL, api) {
|
|
13979
13959
|
const url = new URL(baseURL);
|
|
@@ -14062,7 +14042,7 @@ async function testCustomModelConnection(request, fetchImpl = fetch) {
|
|
|
14062
14042
|
}
|
|
14063
14043
|
}
|
|
14064
14044
|
//#endregion
|
|
14065
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14045
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/catalogDefaults.js
|
|
14066
14046
|
/** Read display defaults from the host adapter's own installed pi-ai catalog. */
|
|
14067
14047
|
const catalogs = /* @__PURE__ */ new Map();
|
|
14068
14048
|
async function installedCatalog(anchor) {
|
|
@@ -14109,7 +14089,7 @@ async function catalogProviderDefaults(provider, model, anchor = import.meta.url
|
|
|
14109
14089
|
};
|
|
14110
14090
|
}
|
|
14111
14091
|
//#endregion
|
|
14112
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14092
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/presetPrefs.js
|
|
14113
14093
|
/**
|
|
14114
14094
|
* Persisted agent-preset preference (`/preset` picker choice), kept at
|
|
14115
14095
|
* `~/.chatcode-cli/tui/agent-preset.json` (`preset` key) so the choice survives
|
|
@@ -14168,7 +14148,7 @@ function migratePresetPref(requested, resolved, dir = PREFS_DIR$2) {
|
|
|
14168
14148
|
return requested === void 0 || resolved === void 0 || requested === resolved ? true : writePresetPref(resolved, dir);
|
|
14169
14149
|
}
|
|
14170
14150
|
//#endregion
|
|
14171
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14151
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/compat/persistedSession.js
|
|
14172
14152
|
/** Undefined means the service exposes neither supported read API. */
|
|
14173
14153
|
async function readPersistedSession(persistence, id) {
|
|
14174
14154
|
if (persistence === null || typeof persistence !== "object") return void 0;
|
|
@@ -14188,7 +14168,7 @@ async function readPersistedSession(persistence, id) {
|
|
|
14188
14168
|
if (typeof reader.load === "function") return reader.load(id);
|
|
14189
14169
|
}
|
|
14190
14170
|
//#endregion
|
|
14191
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14171
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/preset-resolution.js
|
|
14192
14172
|
/**
|
|
14193
14173
|
* Agent-preset resolution across upstream prerelease lines.
|
|
14194
14174
|
*
|
|
@@ -14226,7 +14206,7 @@ async function resolveCompatiblePreset(presets, requested) {
|
|
|
14226
14206
|
return presets.resolve(requested);
|
|
14227
14207
|
}
|
|
14228
14208
|
//#endregion
|
|
14229
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14209
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/presets.js
|
|
14230
14210
|
/**
|
|
14231
14211
|
* Agent-presets roster integration (issue #8): compose each session's
|
|
14232
14212
|
* model-facing world (tools, prompt sections, projections) from one preset
|
|
@@ -14376,7 +14356,7 @@ function serviceForAgent(ctx, agent, key) {
|
|
|
14376
14356
|
return ctx.get(key);
|
|
14377
14357
|
}
|
|
14378
14358
|
//#endregion
|
|
14379
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14359
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/preset-management.js
|
|
14380
14360
|
const failureReason = (error) => error instanceof Error ? error.message : String(error);
|
|
14381
14361
|
/** Read a roster-resolved composition without bypassing preset ownership. */
|
|
14382
14362
|
async function readPresetComposition(presets, presetId) {
|
|
@@ -14433,7 +14413,7 @@ async function removePresetComposition(presets, presetId) {
|
|
|
14433
14413
|
}
|
|
14434
14414
|
}
|
|
14435
14415
|
//#endregion
|
|
14436
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14416
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/session-organization.js
|
|
14437
14417
|
/** Adapter-only readers for optional Harness session-organization services. */
|
|
14438
14418
|
const STAT_KEYS = [
|
|
14439
14419
|
"turns",
|
|
@@ -14494,7 +14474,7 @@ function presetCompositionRows(content, limit = 80) {
|
|
|
14494
14474
|
};
|
|
14495
14475
|
}
|
|
14496
14476
|
//#endregion
|
|
14497
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14477
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/debug.js
|
|
14498
14478
|
/**
|
|
14499
14479
|
* Debug logger for the ported Ink core. Writes to stderr only when
|
|
14500
14480
|
* `CHATCODE_CLI_TUI_DEBUG` (or its legacy alias) is set, so normal runs stay quiet.
|
|
@@ -14524,7 +14504,7 @@ function logMouseDebug(message, fields) {
|
|
|
14524
14504
|
} catch {}
|
|
14525
14505
|
}
|
|
14526
14506
|
//#endregion
|
|
14527
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14507
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/mentions.js
|
|
14528
14508
|
/**
|
|
14529
14509
|
* `@` file-mention parsing (issue #15).
|
|
14530
14510
|
*
|
|
@@ -14670,7 +14650,7 @@ function mentionAtCaret(value, cursor) {
|
|
|
14670
14650
|
};
|
|
14671
14651
|
}
|
|
14672
14652
|
//#endregion
|
|
14673
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14653
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/commonUtilityCommands.js
|
|
14674
14654
|
/** Format only the files in the authoritative loaded-context projection. */
|
|
14675
14655
|
function loadedFileLines(files, copy) {
|
|
14676
14656
|
if (files === void 0) return [copy.unavailable];
|
|
@@ -14785,7 +14765,7 @@ function codeRatioLines(report, copy, maxAuthors = 20) {
|
|
|
14785
14765
|
return lines;
|
|
14786
14766
|
}
|
|
14787
14767
|
//#endregion
|
|
14788
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14768
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/themeCatalog.js
|
|
14789
14769
|
/**
|
|
14790
14770
|
* Cordis-free theme catalog shared by future pickers, commands and hosts.
|
|
14791
14771
|
*
|
|
@@ -14866,7 +14846,7 @@ function listThemeCatalog(host) {
|
|
|
14866
14846
|
return Object.freeze(entries);
|
|
14867
14847
|
}
|
|
14868
14848
|
//#endregion
|
|
14869
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14849
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/sessionModes.js
|
|
14870
14850
|
/**
|
|
14871
14851
|
* Configurable Shift+Tab session modes (the `modes` dsh-tui plugin config):
|
|
14872
14852
|
* each mode is a named bundle of optional DSH plane switches — plan mode
|
|
@@ -14930,7 +14910,7 @@ function modeDisplayName(spec) {
|
|
|
14930
14910
|
return spec.id;
|
|
14931
14911
|
}
|
|
14932
14912
|
//#endregion
|
|
14933
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
14913
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/subagents.js
|
|
14934
14914
|
/** Unified subagent activity domain model used by the adapter and every view. */
|
|
14935
14915
|
const MAX_OUTPUT_EVENTS = 160;
|
|
14936
14916
|
const MAX_OUTPUT_LINES = 160;
|
|
@@ -15308,7 +15288,7 @@ function formatJobDuration(job, now = Date.now()) {
|
|
|
15308
15288
|
return `${Math.floor(minutes / 60)}h${String(minutes % 60).padStart(2, "0")}m`;
|
|
15309
15289
|
}
|
|
15310
15290
|
//#endregion
|
|
15311
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
15291
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/minimalMode.js
|
|
15312
15292
|
/**
|
|
15313
15293
|
* Minimal mode: one process-wide flag gating decorative UI (header splash,
|
|
15314
15294
|
* emoji status glyphs and non-tool text colors). Footer field choices remain
|
|
@@ -15328,7 +15308,7 @@ function setMinimalMode(enabled) {
|
|
|
15328
15308
|
minimal = enabled;
|
|
15329
15309
|
}
|
|
15330
15310
|
//#endregion
|
|
15331
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
15311
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/workspace.js
|
|
15332
15312
|
function registryOf(ctx) {
|
|
15333
15313
|
const registry = ctx.get("workspaceRegistry");
|
|
15334
15314
|
if (registry === void 0 || typeof registry.pinSession !== "function" || typeof registry.unpinSession !== "function") return void 0;
|
|
@@ -15403,7 +15383,7 @@ async function unarchiveWorkspaceSession(ctx, id) {
|
|
|
15403
15383
|
return true;
|
|
15404
15384
|
}
|
|
15405
15385
|
//#endregion
|
|
15406
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
15386
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/contract.js
|
|
15407
15387
|
/**
|
|
15408
15388
|
* Upstream compatibility contract.
|
|
15409
15389
|
*
|
|
@@ -15832,7 +15812,7 @@ function pluginsInfoLines(args, deps) {
|
|
|
15832
15812
|
return lines;
|
|
15833
15813
|
}
|
|
15834
15814
|
//#endregion
|
|
15835
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
15815
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/mcp-status.js
|
|
15836
15816
|
/** Loader and tool-registry projection used by the TUI's `/mcp` report. */
|
|
15837
15817
|
const MCP_CLIENT_PACKAGE = "@deepseek-ai/dsh-mcp-client";
|
|
15838
15818
|
const FIBER_ACTIVE = 2;
|
|
@@ -15885,7 +15865,7 @@ function collectMcpServerStatus(schemas, entries) {
|
|
|
15885
15865
|
}));
|
|
15886
15866
|
}
|
|
15887
15867
|
//#endregion
|
|
15888
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
15868
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/cc/format.js
|
|
15889
15869
|
/**
|
|
15890
15870
|
* Number, token-count, and duration formatters shared by the status line
|
|
15891
15871
|
* and message rows.
|
|
@@ -15948,7 +15928,7 @@ function formatDuration$4(durationMs, options = {}) {
|
|
|
15948
15928
|
return parts.join(" ");
|
|
15949
15929
|
}
|
|
15950
15930
|
//#endregion
|
|
15951
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
15931
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/contextUsage.js
|
|
15952
15932
|
/**
|
|
15953
15933
|
* Return the current context occupancy. The latest request is authoritative:
|
|
15954
15934
|
* its uncached input and cache read/write tokens are all part of that request's
|
|
@@ -16332,7 +16312,7 @@ function prepareMemoryTargetFile(requested, candidates, cwd, dshHome) {
|
|
|
16332
16312
|
}
|
|
16333
16313
|
}
|
|
16334
16314
|
//#endregion
|
|
16335
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
16315
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/channel.js
|
|
16336
16316
|
/** Return the step left open by a tree fork cut within one turn. */
|
|
16337
16317
|
function openStepAtForkCut(events, turn) {
|
|
16338
16318
|
for (let i = events.length - 1; i >= 0; i--) {
|
|
@@ -16922,10 +16902,6 @@ function createChannel(ctx, initialAgent, options) {
|
|
|
16922
16902
|
}, 300);
|
|
16923
16903
|
};
|
|
16924
16904
|
let persistedRowsCache = [];
|
|
16925
|
-
listSessionsSnapshot(ctx).then((rows) => {
|
|
16926
|
-
persistedRowsCache = rows;
|
|
16927
|
-
notifyAgentView();
|
|
16928
|
-
});
|
|
16929
16905
|
const agentViewFolds = /* @__PURE__ */ new Map();
|
|
16930
16906
|
const foldOf = (liveAgent) => {
|
|
16931
16907
|
const events = snapshotLiveSessionEvents(liveAgent.session);
|
|
@@ -23027,7 +23003,7 @@ async function expandMentions(fs, cwd, text, attachments, stagedImages) {
|
|
|
23027
23003
|
};
|
|
23028
23004
|
}
|
|
23029
23005
|
//#endregion
|
|
23030
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
23006
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/childStderr.js
|
|
23031
23007
|
/**
|
|
23032
23008
|
* Child-process stderr guard (issue #17).
|
|
23033
23009
|
*
|
|
@@ -23196,7 +23172,26 @@ function createChildStderrReporter(notify, options = {}) {
|
|
|
23196
23172
|
};
|
|
23197
23173
|
}
|
|
23198
23174
|
//#endregion
|
|
23199
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
23175
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/startupTrace.js
|
|
23176
|
+
/** Opt-in startup timings; labels never contain paths, Session identities, or credentials. */
|
|
23177
|
+
/**
|
|
23178
|
+
* Measure one initialization operation without changing its result or failure.
|
|
23179
|
+
* @param phase - fixed source-owned phase label, never user-supplied data.
|
|
23180
|
+
* @param operation - synchronous or asynchronous initialization work.
|
|
23181
|
+
* @returns the operation's original result; failures propagate unchanged.
|
|
23182
|
+
*/
|
|
23183
|
+
async function traceTuiStartup(phase, operation) {
|
|
23184
|
+
if (process.env.CHATCODE_CLI_STARTUP_TRACE !== "1") return await operation();
|
|
23185
|
+
const started = performance.now();
|
|
23186
|
+
process.stderr.write(`[cco-startup] tui/${phase}: begin\n`);
|
|
23187
|
+
try {
|
|
23188
|
+
return await operation();
|
|
23189
|
+
} finally {
|
|
23190
|
+
process.stderr.write(`[cco-startup] tui/${phase}: ${(performance.now() - started).toFixed(1)} ms\n`);
|
|
23191
|
+
}
|
|
23192
|
+
}
|
|
23193
|
+
//#endregion
|
|
23194
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/questions.js
|
|
23200
23195
|
/**
|
|
23201
23196
|
* Ask-user-question store — the UI-side half of the DSH user-interaction
|
|
23202
23197
|
* seam (`ctx.userQuestions`). The harness's model-facing
|
|
@@ -23436,7 +23431,7 @@ var QuestionStore = class {
|
|
|
23436
23431
|
}
|
|
23437
23432
|
};
|
|
23438
23433
|
//#endregion
|
|
23439
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
23434
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/providerGuard.js
|
|
23440
23435
|
/**
|
|
23441
23436
|
* Question-provider seat guard (issue #98 security follow-up).
|
|
23442
23437
|
*
|
|
@@ -23548,7 +23543,7 @@ function incumbentQuestionProviderId(service) {
|
|
|
23548
23543
|
} catch {}
|
|
23549
23544
|
}
|
|
23550
23545
|
//#endregion
|
|
23551
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
23546
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/questions-answerer.js
|
|
23552
23547
|
/**
|
|
23553
23548
|
* User-question answerer compatibility.
|
|
23554
23549
|
*
|
|
@@ -23607,7 +23602,7 @@ function prepareQuestionAnswerer(ctx, service, answerer) {
|
|
|
23607
23602
|
}
|
|
23608
23603
|
}
|
|
23609
23604
|
//#endregion
|
|
23610
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
23605
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/approvals.js
|
|
23611
23606
|
/**
|
|
23612
23607
|
* Approval store — the UI-side answerer half of the DSH approval seam
|
|
23613
23608
|
* (`ctx.approval`). The harness's permission layer asks
|
|
@@ -24001,7 +23996,7 @@ var ApprovalStore = class {
|
|
|
24001
23996
|
}
|
|
24002
23997
|
};
|
|
24003
23998
|
//#endregion
|
|
24004
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
23999
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/promptDebug.js
|
|
24005
24000
|
/**
|
|
24006
24001
|
* On-demand capture of every final AgentLoop request context observed for a
|
|
24007
24002
|
* live session.
|
|
@@ -24147,7 +24142,7 @@ function registerPromptDebug(ctx) {
|
|
|
24147
24142
|
}));
|
|
24148
24143
|
}
|
|
24149
24144
|
//#endregion
|
|
24150
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
24145
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/migrationPrefs.js
|
|
24151
24146
|
/**
|
|
24152
24147
|
* One-time local migrations (`~/.chatcode-cli/tui/migrations.json`), keyed by stable
|
|
24153
24148
|
* migration id → ISO timestamp. Named keys (not a bare flag) so later
|
|
@@ -24238,7 +24233,7 @@ async function commitFullscreenFactoryMigration(plan, options) {
|
|
|
24238
24233
|
} catch {}
|
|
24239
24234
|
}
|
|
24240
24235
|
//#endregion
|
|
24241
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
24236
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/retired-packaged-presets.js
|
|
24242
24237
|
const OWNER = "@chatcode/cco-tui";
|
|
24243
24238
|
const MARKER = ".dsh-tui-managed.json";
|
|
24244
24239
|
const RETIRED_PACKAGED_PRESETS = ["liangshen"];
|
|
@@ -24280,7 +24275,7 @@ function cleanupRetiredPackagedPresets(options = {}) {
|
|
|
24280
24275
|
return results;
|
|
24281
24276
|
}
|
|
24282
24277
|
//#endregion
|
|
24283
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
24278
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/sessions/view.js
|
|
24284
24279
|
/** The browser's default view: this project, conversations only. */
|
|
24285
24280
|
const DEFAULT_FILTERS = {
|
|
24286
24281
|
query: "",
|
|
@@ -24614,7 +24609,7 @@ function windowEnd(rows, top, budget) {
|
|
|
24614
24609
|
return at;
|
|
24615
24610
|
}
|
|
24616
24611
|
//#endregion
|
|
24617
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
24612
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/sessions/resume.js
|
|
24618
24613
|
/** Resolve launch-time resume flags against persisted conversations. */
|
|
24619
24614
|
/**
|
|
24620
24615
|
* Select the latest conversation in the exact launch directory for bare flags.
|
|
@@ -24634,7 +24629,7 @@ async function resolveStartupSessionId(source, argv, cwd) {
|
|
|
24634
24629
|
return latest.id;
|
|
24635
24630
|
}
|
|
24636
24631
|
//#endregion
|
|
24637
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
24632
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/workspaceRoot.js
|
|
24638
24633
|
/** Resolve a fresh session's working directory without widening it to a Git ancestor. */
|
|
24639
24634
|
/**
|
|
24640
24635
|
* Explicit configuration wins; otherwise keep the invoking directory, even
|
|
@@ -24647,7 +24642,7 @@ function resolveSessionCwd(configured, start = process.cwd()) {
|
|
|
24647
24642
|
return resolve(start, configured ?? "");
|
|
24648
24643
|
}
|
|
24649
24644
|
//#endregion
|
|
24650
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
24645
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/openExternal.js
|
|
24651
24646
|
/**
|
|
24652
24647
|
* Open URLs, files and folders with the platform's default handler, fully
|
|
24653
24648
|
* detached from the TUI process (fire-and-forget: no stdio pipes, no wait,
|
|
@@ -24808,7 +24803,7 @@ function revealInFileManager(filePath) {
|
|
|
24808
24803
|
if (existsSync(dir)) openExternal(dir);
|
|
24809
24804
|
}
|
|
24810
24805
|
//#endregion
|
|
24811
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
24806
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/chatCodeApi.js
|
|
24812
24807
|
/** ChatCode API request capability. Credentials stay in the host adapter. */
|
|
24813
24808
|
const CHATCODE_API_BASE_URL = "https://chatcode.chinaunicom.cn";
|
|
24814
24809
|
/** CVP(天梯)平台基础 URL,承载 modules/notification 等公开/独立鉴权模块接口。 */
|
|
@@ -24816,7 +24811,7 @@ const CVP_CHATCODE_API_URL = `${CHATCODE_API_BASE_URL}/cvp`;
|
|
|
24816
24811
|
/** Each mounted TUI receives its own host-authorized request function. */
|
|
24817
24812
|
const ChatCodeApiContext = (0, import_react.createContext)(void 0);
|
|
24818
24813
|
//#endregion
|
|
24819
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
24814
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/releaseNotes.js
|
|
24820
24815
|
const RELEASE_NOTE_PATH = join(DATA_DIR, "release-notes.json");
|
|
24821
24816
|
const RELEASE_NOTE_ENDPOINT = `${CHATCODE_API_BASE_URL}/chatcode/api/v1/cli/version/release-note`;
|
|
24822
24817
|
function acknowledgedVersion() {
|
|
@@ -24912,7 +24907,7 @@ var ReleaseNotesStore = class {
|
|
|
24912
24907
|
}
|
|
24913
24908
|
};
|
|
24914
24909
|
//#endregion
|
|
24915
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
24910
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/version.js
|
|
24916
24911
|
const MAIN_CLI_PACKAGES = new Set(["@chatcode/chatcode-cli", "@chatcode/chatcode-cli-test"]);
|
|
24917
24912
|
const VERSION_PATTERN = /^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/u;
|
|
24918
24913
|
const PRODUCT_VERSION_ENV = "CHATCODE_CLI_PRODUCT_VERSION";
|
|
@@ -24952,7 +24947,7 @@ function resolveProductVersion(options = {}) {
|
|
|
24952
24947
|
/** Product version shown by the TUI, shared with `cco --version` and Web. */
|
|
24953
24948
|
const PRODUCT_VERSION = resolveProductVersion();
|
|
24954
24949
|
//#endregion
|
|
24955
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
24950
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/execFileNoThrow.js
|
|
24956
24951
|
const MAX_CAPTURE_BYTES = 64 * 1024;
|
|
24957
24952
|
function appendBounded(chunks, chunk, total) {
|
|
24958
24953
|
if (total.value >= MAX_CAPTURE_BYTES) return;
|
|
@@ -25022,7 +25017,7 @@ function execFileNoThrow(file, args = [], options) {
|
|
|
25022
25017
|
});
|
|
25023
25018
|
}
|
|
25024
25019
|
//#endregion
|
|
25025
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
25020
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/herdr.js
|
|
25026
25021
|
const REPORT_TIMEOUT_MS = 2e3;
|
|
25027
25022
|
const RELEASE_TIMEOUT_MS = 500;
|
|
25028
25023
|
const RETRY_DELAYS_MS = [
|
|
@@ -25410,7 +25405,7 @@ var require_react_jsx_runtime_development = /* @__PURE__ */ __commonJSMin(((expo
|
|
|
25410
25405
|
})();
|
|
25411
25406
|
}));
|
|
25412
25407
|
//#endregion
|
|
25413
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
25408
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/themePrefs.js
|
|
25414
25409
|
var import_jsx_runtime = (/* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
25415
25410
|
if (process.env.NODE_ENV === "production") module.exports = require_react_jsx_runtime_production();
|
|
25416
25411
|
else module.exports = require_react_jsx_runtime_development();
|
|
@@ -25467,7 +25462,7 @@ function writeThemePref(name, dir = PREFS_DIR) {
|
|
|
25467
25462
|
}
|
|
25468
25463
|
}
|
|
25469
25464
|
//#endregion
|
|
25470
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
25465
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/hooks/useRuntimeThemeSnapshot.js
|
|
25471
25466
|
const EMPTY_THEME_SNAPSHOT = Object.freeze([]);
|
|
25472
25467
|
const subscribeNoThemes = (_listener) => () => {};
|
|
25473
25468
|
/**
|
|
@@ -25495,7 +25490,7 @@ function useRuntimeThemeSnapshot(themeHost) {
|
|
|
25495
25490
|
return import_react.useSyncExternalStore(subscribeThemes, getThemeSnapshot, getThemeSnapshot);
|
|
25496
25491
|
}
|
|
25497
25492
|
//#endregion
|
|
25498
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
25493
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/event.js
|
|
25499
25494
|
/**
|
|
25500
25495
|
* Base class for events with immediate-propagation control.
|
|
25501
25496
|
*
|
|
@@ -25519,7 +25514,7 @@ var Event = class {
|
|
|
25519
25514
|
}
|
|
25520
25515
|
};
|
|
25521
25516
|
//#endregion
|
|
25522
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
25517
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/emitter.js
|
|
25523
25518
|
/**
|
|
25524
25519
|
* Node-compatible event emitter that is aware of the `Event` class, so
|
|
25525
25520
|
* `emit` respects `stopImmediatePropagation()` on dispatched events.
|
|
@@ -25552,7 +25547,7 @@ var EventEmitter$1 = class extends EventEmitter {
|
|
|
25552
25547
|
}
|
|
25553
25548
|
};
|
|
25554
25549
|
//#endregion
|
|
25555
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
25550
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/StdinContext.js
|
|
25556
25551
|
/**
|
|
25557
25552
|
* `StdinContext` is a React context, which exposes input stream.
|
|
25558
25553
|
*/
|
|
@@ -25566,14 +25561,14 @@ const StdinContext = (0, import_react.createContext)({
|
|
|
25566
25561
|
});
|
|
25567
25562
|
StdinContext.displayName = "InternalStdinContext";
|
|
25568
25563
|
//#endregion
|
|
25569
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
25564
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-stdin.js
|
|
25570
25565
|
/**
|
|
25571
25566
|
* React hook exposing the stdin stream and raw-mode helpers from `StdinContext`.
|
|
25572
25567
|
* @returns the `StdinContext` value.
|
|
25573
25568
|
*/
|
|
25574
25569
|
const useStdin = () => (0, import_react.useContext)(StdinContext);
|
|
25575
25570
|
//#endregion
|
|
25576
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
25571
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/termio/ansi.js
|
|
25577
25572
|
/**
|
|
25578
25573
|
* ANSI Control Characters and Escape Sequence Introducers
|
|
25579
25574
|
*
|
|
@@ -25647,7 +25642,7 @@ function isEscFinal(byte) {
|
|
|
25647
25642
|
return byte >= 48 && byte <= 126;
|
|
25648
25643
|
}
|
|
25649
25644
|
//#endregion
|
|
25650
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
25645
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/termio/csi.js
|
|
25651
25646
|
/**
|
|
25652
25647
|
* CSI (Control Sequence Introducer) Types
|
|
25653
25648
|
*
|
|
@@ -25970,7 +25965,7 @@ const ENABLE_WIN32_INPUT_MODE = csi("?9001h");
|
|
|
25970
25965
|
*/
|
|
25971
25966
|
const DISABLE_WIN32_INPUT_MODE = csi("?9001l");
|
|
25972
25967
|
//#endregion
|
|
25973
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
25968
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/env.js
|
|
25974
25969
|
/**
|
|
25975
25970
|
* Minimal terminal-environment shim for the ported Ink core. The original
|
|
25976
25971
|
* module computed a richer `env` object from the Claude Code app context; the
|
|
@@ -25979,7 +25974,7 @@ const DISABLE_WIN32_INPUT_MODE = csi("?9001l");
|
|
|
25979
25974
|
*/
|
|
25980
25975
|
const env$1 = { terminal: (process.env.TERM_PROGRAM ?? process.env.TERM ?? "unknown").toLowerCase() };
|
|
25981
25976
|
//#endregion
|
|
25982
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
25977
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/termio/osc.js
|
|
25983
25978
|
/**
|
|
25984
25979
|
* OSC (Operating System Command) Types and Parser
|
|
25985
25980
|
*/
|
|
@@ -26375,7 +26370,7 @@ function supportsTabStatus() {
|
|
|
26375
26370
|
return process.env.USER_TYPE === "ant";
|
|
26376
26371
|
}
|
|
26377
26372
|
//#endregion
|
|
26378
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
26373
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/terminal-querier.js
|
|
26379
26374
|
/**
|
|
26380
26375
|
* Query the terminal and await responses without timeouts.
|
|
26381
26376
|
*
|
|
@@ -26561,7 +26556,7 @@ var TerminalQuerier = class {
|
|
|
26561
26556
|
}
|
|
26562
26557
|
};
|
|
26563
26558
|
//#endregion
|
|
26564
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
26559
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/design-system/ThemeProvider.js
|
|
26565
26560
|
/**
|
|
26566
26561
|
* Theme provider with terminal-background auto-detection. With no explicit
|
|
26567
26562
|
* `theme` prop, no CHATCODE_CLI_TUI_THEME override and no persisted choice
|
|
@@ -26760,7 +26755,7 @@ function useTheme() {
|
|
|
26760
26755
|
return [theme, setTheme];
|
|
26761
26756
|
}
|
|
26762
26757
|
//#endregion
|
|
26763
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
26758
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/settingsEditor.js
|
|
26764
26759
|
/**
|
|
26765
26760
|
* React-free form model behind the `/settings` screen (issue #165), mirroring
|
|
26766
26761
|
* the web front door's card-form.ts semantics: a section stages what the user
|
|
@@ -27010,7 +27005,7 @@ var SettingsForm = class {
|
|
|
27010
27005
|
}
|
|
27011
27006
|
};
|
|
27012
27007
|
//#endregion
|
|
27013
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
27008
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/reload.js
|
|
27014
27009
|
/**
|
|
27015
27010
|
* `/reload` planning — the pi-style soft reload: re-read the TUI's persisted
|
|
27016
27011
|
* preference files (`~/.chatcode-cli/tui/{theme,lang,agent-preset,model,
|
|
@@ -27859,7 +27854,7 @@ var SignalExit = class extends SignalExitBase {
|
|
|
27859
27854
|
const process$2 = globalThis.process;
|
|
27860
27855
|
const { onExit, load, unload } = signalExitWrap(processOk(process$2) ? new SignalExit(process$2) : new SignalExitFallback());
|
|
27861
27856
|
//#endregion
|
|
27862
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
27857
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/native-ts/yoga-layout/enums.js
|
|
27863
27858
|
/**
|
|
27864
27859
|
* Yoga enums — ported from yoga-layout/src/generated/YGEnums.ts
|
|
27865
27860
|
* Kept as `const` objects (not TS enums) per repo convention.
|
|
@@ -27991,7 +27986,7 @@ const Wrap = {
|
|
|
27991
27986
|
WrapReverse: 2
|
|
27992
27987
|
};
|
|
27993
27988
|
//#endregion
|
|
27994
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
27989
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/native-ts/yoga-layout/index.js
|
|
27995
27990
|
/**
|
|
27996
27991
|
* Pure-TypeScript port of yoga-layout (Meta's flexbox engine).
|
|
27997
27992
|
*
|
|
@@ -30442,7 +30437,7 @@ Object.defineProperties(createChalk.prototype, {
|
|
|
30442
30437
|
const chalk = createChalk();
|
|
30443
30438
|
createChalk({ level: stderrColor ? stderrColor.level : 0 });
|
|
30444
30439
|
//#endregion
|
|
30445
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
30440
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/colorize.js
|
|
30446
30441
|
/**
|
|
30447
30442
|
* xterm.js (VS Code, Cursor, code-server, Coder) has supported truecolor
|
|
30448
30443
|
* since 2017, but code-server/Coder containers often don't set
|
|
@@ -30573,7 +30568,7 @@ function applyColor(text, color) {
|
|
|
30573
30568
|
return colorize(text, color, "foreground");
|
|
30574
30569
|
}
|
|
30575
30570
|
//#endregion
|
|
30576
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
30571
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/envUtils.js
|
|
30577
30572
|
/**
|
|
30578
30573
|
* Environment truthiness check for the ported Ink core. Accepts the common
|
|
30579
30574
|
* shell truthy spellings (`1`, `true`, `yes`, `on`).
|
|
@@ -30591,7 +30586,7 @@ function isEnvTruthy(value) {
|
|
|
30591
30586
|
].includes(value.toLowerCase());
|
|
30592
30587
|
}
|
|
30593
30588
|
//#endregion
|
|
30594
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
30589
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/fullscreen.js
|
|
30595
30590
|
/**
|
|
30596
30591
|
* Whether mouse click handling is disabled for the ported Ink core. dsh-tui
|
|
30597
30592
|
* reads its own env flag (`CHATCODE_CLI_TUI_DISABLE_MOUSE`); the original module
|
|
@@ -30602,7 +30597,7 @@ function isMouseClicksDisabled() {
|
|
|
30602
30597
|
return isEnvTruthy(readTuiEnv("DISABLE_MOUSE"));
|
|
30603
30598
|
}
|
|
30604
30599
|
//#endregion
|
|
30605
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
30600
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/input-suppression.js
|
|
30606
30601
|
/**
|
|
30607
30602
|
* Input suppression window for terminal handoffs (issue #123): when stdin is
|
|
30608
30603
|
* handed to an external TUI (full-screen editor) and back, the tty can
|
|
@@ -30629,7 +30624,7 @@ function isInputSuppressed() {
|
|
|
30629
30624
|
return Date.now() < suppressedUntil;
|
|
30630
30625
|
}
|
|
30631
30626
|
//#endregion
|
|
30632
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
30627
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/termio/tokenize.js
|
|
30633
30628
|
/**
|
|
30634
30629
|
* Input Tokenizer - Escape sequence boundary detection
|
|
30635
30630
|
*
|
|
@@ -30827,7 +30822,7 @@ function tokenize$2(input, initialState, initialBuffer, flush, x10Mouse, splitIn
|
|
|
30827
30822
|
};
|
|
30828
30823
|
}
|
|
30829
30824
|
//#endregion
|
|
30830
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
30825
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/parse-keypress.js
|
|
30831
30826
|
/**
|
|
30832
30827
|
* Keyboard input parser - converts terminal input to key events
|
|
30833
30828
|
*
|
|
@@ -31902,7 +31897,7 @@ function createWheelKey(s, name, col, row, button) {
|
|
|
31902
31897
|
};
|
|
31903
31898
|
}
|
|
31904
31899
|
//#endregion
|
|
31905
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
31900
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/input-event.js
|
|
31906
31901
|
function parseKey(keypress) {
|
|
31907
31902
|
const key = {
|
|
31908
31903
|
upArrow: keypress.name === "up",
|
|
@@ -31987,7 +31982,7 @@ var InputEvent = class extends Event {
|
|
|
31987
31982
|
}
|
|
31988
31983
|
};
|
|
31989
31984
|
//#endregion
|
|
31990
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
31985
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/terminal-focus-event.js
|
|
31991
31986
|
/**
|
|
31992
31987
|
* Event fired when the terminal window gains or loses focus.
|
|
31993
31988
|
*
|
|
@@ -32006,7 +32001,7 @@ var TerminalFocusEvent = class extends Event {
|
|
|
32006
32001
|
}
|
|
32007
32002
|
};
|
|
32008
32003
|
//#endregion
|
|
32009
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
32004
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/node-cache.js
|
|
32010
32005
|
/** Layout bounds cached per rendered node, used for blitting and clearing. */
|
|
32011
32006
|
const nodeCache = /* @__PURE__ */ new WeakMap();
|
|
32012
32007
|
/** Rects of removed children that need clearing on next render */
|
|
@@ -32044,7 +32039,7 @@ function consumeAbsoluteRemovedFlag() {
|
|
|
32044
32039
|
return had;
|
|
32045
32040
|
}
|
|
32046
32041
|
//#endregion
|
|
32047
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
32042
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/terminal-event.js
|
|
32048
32043
|
/**
|
|
32049
32044
|
* Base class for all terminal events with DOM-style propagation.
|
|
32050
32045
|
*
|
|
@@ -32173,7 +32168,7 @@ var TerminalEvent = class extends Event {
|
|
|
32173
32168
|
_prepareForTarget(_target) {}
|
|
32174
32169
|
};
|
|
32175
32170
|
//#endregion
|
|
32176
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
32171
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/pointer-event.js
|
|
32177
32172
|
/**
|
|
32178
32173
|
* Base class for pointer-derived terminal events (click, wheel, hover).
|
|
32179
32174
|
*
|
|
@@ -32234,7 +32229,7 @@ var PointerEvent = class extends TerminalEvent {
|
|
|
32234
32229
|
}
|
|
32235
32230
|
};
|
|
32236
32231
|
//#endregion
|
|
32237
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
32232
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/drag-event.js
|
|
32238
32233
|
/**
|
|
32239
32234
|
* Component-level drag event (DOM HTML5 drag semantics subset).
|
|
32240
32235
|
*
|
|
@@ -48342,7 +48337,7 @@ var require_react_reconciler_development = /* @__PURE__ */ __commonJSMin(((expor
|
|
|
48342
48337
|
}, module.exports.default = module.exports, Object.defineProperty(module.exports, "__esModule", { value: !0 }));
|
|
48343
48338
|
}));
|
|
48344
48339
|
//#endregion
|
|
48345
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
48340
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/layout/node.js
|
|
48346
48341
|
var import_react_reconciler = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
48347
48342
|
if (process.env.NODE_ENV === "production") module.exports = require_react_reconciler_production();
|
|
48348
48343
|
else module.exports = require_react_reconciler_development();
|
|
@@ -48418,7 +48413,7 @@ const LayoutMeasureMode = {
|
|
|
48418
48413
|
AtMost: "at-most"
|
|
48419
48414
|
};
|
|
48420
48415
|
//#endregion
|
|
48421
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
48416
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/layout/yoga.js
|
|
48422
48417
|
const EDGE_MAP = {
|
|
48423
48418
|
all: Edge.All,
|
|
48424
48419
|
horizontal: Edge.Horizontal,
|
|
@@ -48645,7 +48640,7 @@ function createYogaLayoutNode() {
|
|
|
48645
48640
|
return new YogaLayoutNode(YOGA_INSTANCE.Node.create());
|
|
48646
48641
|
}
|
|
48647
48642
|
//#endregion
|
|
48648
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
48643
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/layout/engine.js
|
|
48649
48644
|
/**
|
|
48650
48645
|
* Create a new layout node backed by the Yoga adapter.
|
|
48651
48646
|
* @returns an empty layout node with no children, styles, or measure function.
|
|
@@ -48654,7 +48649,7 @@ function createLayoutNode() {
|
|
|
48654
48649
|
return createYogaLayoutNode();
|
|
48655
48650
|
}
|
|
48656
48651
|
//#endregion
|
|
48657
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
48652
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/line-width-cache.js
|
|
48658
48653
|
const cache = /* @__PURE__ */ new Map();
|
|
48659
48654
|
const MAX_CACHE_SIZE = 4096;
|
|
48660
48655
|
const MAX_CACHE_CHARS = 1e5;
|
|
@@ -48690,7 +48685,7 @@ function lineWidth(line) {
|
|
|
48690
48685
|
return width;
|
|
48691
48686
|
}
|
|
48692
48687
|
//#endregion
|
|
48693
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
48688
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/measure-text.js
|
|
48694
48689
|
/**
|
|
48695
48690
|
* Measure wrapped text dimensions in a single pass.
|
|
48696
48691
|
* @param text - the text to measure.
|
|
@@ -48721,7 +48716,7 @@ function measureText(text, maxWidth) {
|
|
|
48721
48716
|
};
|
|
48722
48717
|
}
|
|
48723
48718
|
//#endregion
|
|
48724
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
48719
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/squash-text-nodes.js
|
|
48725
48720
|
/**
|
|
48726
48721
|
* Squash text nodes into styled segments, propagating styles down through the tree.
|
|
48727
48722
|
* This allows structured styling without relying on ANSI string transforms.
|
|
@@ -48769,7 +48764,7 @@ function squashTextNodes(node) {
|
|
|
48769
48764
|
return text;
|
|
48770
48765
|
}
|
|
48771
48766
|
//#endregion
|
|
48772
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
48767
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/tabstops.js
|
|
48773
48768
|
const DEFAULT_TAB_INTERVAL = 8;
|
|
48774
48769
|
/**
|
|
48775
48770
|
* Expand tab characters to spaces at fixed column intervals, preserving
|
|
@@ -49219,7 +49214,7 @@ function tokenize$1(str, endChar = Number.POSITIVE_INFINITY) {
|
|
|
49219
49214
|
return ret;
|
|
49220
49215
|
}
|
|
49221
49216
|
//#endregion
|
|
49222
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
49217
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/sliceAnsi.js
|
|
49223
49218
|
function isEndCode(code) {
|
|
49224
49219
|
return code.code === code.endCode;
|
|
49225
49220
|
}
|
|
@@ -49836,7 +49831,7 @@ function wrapAnsi$1(string, columns, options) {
|
|
|
49836
49831
|
return normalizeText(String(string)).replaceAll("\r\n", "\n").split("\n").map((line) => exec(expandTabs$1(line), columns, options)).join("\n");
|
|
49837
49832
|
}
|
|
49838
49833
|
//#endregion
|
|
49839
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
49834
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/wrapAnsi.js
|
|
49840
49835
|
const wrapAnsiBun = typeof Bun !== "undefined" && typeof Bun.wrapAnsi === "function" ? Bun.wrapAnsi : null;
|
|
49841
49836
|
const SLOT_MIN_LENGTH = 2048;
|
|
49842
49837
|
let slot = null;
|
|
@@ -49883,7 +49878,7 @@ function wrapAnsiNpmIncremental(input, columns, options) {
|
|
|
49883
49878
|
*/
|
|
49884
49879
|
const wrapAnsi = wrapAnsiBun ?? wrapAnsiNpmIncremental;
|
|
49885
49880
|
//#endregion
|
|
49886
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
49881
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/wrap-text.js
|
|
49887
49882
|
const ELLIPSIS = "…";
|
|
49888
49883
|
const WRAP_CACHE_MAX_ENTRIES = 2048;
|
|
49889
49884
|
const WRAP_CACHE_MAX_CHARS = 2e6;
|
|
@@ -49947,7 +49942,7 @@ function wrapText$1(text, maxWidth, wrapType) {
|
|
|
49947
49942
|
return text;
|
|
49948
49943
|
}
|
|
49949
49944
|
//#endregion
|
|
49950
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
49945
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/dom.js
|
|
49951
49946
|
/**
|
|
49952
49947
|
* Create an element node of the given kind, allocating its yoga layout node
|
|
49953
49948
|
* unless the kind renders without layout (`ink-virtual-text`, `ink-link`,
|
|
@@ -50267,7 +50262,7 @@ function findOwnerChainAtRow(root, y) {
|
|
|
50267
50262
|
}
|
|
50268
50263
|
}
|
|
50269
50264
|
//#endregion
|
|
50270
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
50265
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/event-handlers.js
|
|
50271
50266
|
/**
|
|
50272
50267
|
* Reverse lookup: event type string → handler prop names.
|
|
50273
50268
|
* Used by the dispatcher for O(1) handler lookup per node.
|
|
@@ -50321,7 +50316,7 @@ const EVENT_HANDLER_PROPS = new Set([
|
|
|
50321
50316
|
"onWheel"
|
|
50322
50317
|
]);
|
|
50323
50318
|
//#endregion
|
|
50324
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
50319
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/dispatcher.js
|
|
50325
50320
|
function getHandler(node, eventType, capture) {
|
|
50326
50321
|
const handlers = node._eventHandlers;
|
|
50327
50322
|
if (!handlers) return void 0;
|
|
@@ -50489,7 +50484,7 @@ var Dispatcher = class {
|
|
|
50489
50484
|
}
|
|
50490
50485
|
};
|
|
50491
50486
|
//#endregion
|
|
50492
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
50487
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/focus-event.js
|
|
50493
50488
|
/**
|
|
50494
50489
|
* Focus event for component focus changes.
|
|
50495
50490
|
*
|
|
@@ -50514,7 +50509,7 @@ var FocusEvent = class extends TerminalEvent {
|
|
|
50514
50509
|
}
|
|
50515
50510
|
};
|
|
50516
50511
|
//#endregion
|
|
50517
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
50512
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/focus.js
|
|
50518
50513
|
const MAX_FOCUS_STACK = 32;
|
|
50519
50514
|
/**
|
|
50520
50515
|
* DOM-like focus manager for the Ink terminal UI.
|
|
@@ -50670,7 +50665,7 @@ function getFocusManager(node) {
|
|
|
50670
50665
|
return getRootNode(node).focusManager;
|
|
50671
50666
|
}
|
|
50672
50667
|
//#endregion
|
|
50673
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
50668
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/styles.js
|
|
50674
50669
|
const applyPositionStyles = (node, style) => {
|
|
50675
50670
|
if ("position" in style) node.setPositionType(style.position === "absolute" ? LayoutPositionType.Absolute : LayoutPositionType.Relative);
|
|
50676
50671
|
if ("top" in style) applyPositionEdge(node, "top", style.top);
|
|
@@ -50805,7 +50800,7 @@ const styles = (node, style = {}, resolvedStyle) => {
|
|
|
50805
50800
|
applyGapStyles(node, style);
|
|
50806
50801
|
};
|
|
50807
50802
|
//#endregion
|
|
50808
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
50803
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/reconciler.js
|
|
50809
50804
|
if (process.env.NODE_ENV === "development") try {
|
|
50810
50805
|
import("./devtools-la_KkjCS.js");
|
|
50811
50806
|
} catch (error) {
|
|
@@ -51125,7 +51120,7 @@ const reconciler = (0, import_react_reconciler.default)({
|
|
|
51125
51120
|
});
|
|
51126
51121
|
dispatcher.discreteUpdates = reconciler.discreteUpdates.bind(reconciler);
|
|
51127
51122
|
//#endregion
|
|
51128
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
51123
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/layout/geometry.js
|
|
51129
51124
|
/**
|
|
51130
51125
|
* Compute the smallest rectangle containing both input rectangles.
|
|
51131
51126
|
* @param a - the first rectangle.
|
|
@@ -51157,7 +51152,7 @@ function clamp(value, min, max) {
|
|
|
51157
51152
|
return value;
|
|
51158
51153
|
}
|
|
51159
51154
|
//#endregion
|
|
51160
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
51155
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/warn.js
|
|
51161
51156
|
/**
|
|
51162
51157
|
* Log a warning when a value is present but not an integer.
|
|
51163
51158
|
* @param value - the value to check; undefined is skipped silently.
|
|
@@ -51169,7 +51164,7 @@ function ifNotInteger(value, name) {
|
|
|
51169
51164
|
logForDebugging(`${name} should be an integer, got ${value}`, { level: "warn" });
|
|
51170
51165
|
}
|
|
51171
51166
|
//#endregion
|
|
51172
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
51167
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/screen.js
|
|
51173
51168
|
/**
|
|
51174
51169
|
* Pool of character strings shared across all screens.
|
|
51175
51170
|
* With a shared pool, interned char IDs are valid across screens, so
|
|
@@ -52238,7 +52233,7 @@ function markNoSelectRegion(screen, x, y, width, height) {
|
|
|
52238
52233
|
}
|
|
52239
52234
|
}
|
|
52240
52235
|
//#endregion
|
|
52241
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
52236
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/selection.js
|
|
52242
52237
|
/**
|
|
52243
52238
|
* Text selection state for fullscreen mode.
|
|
52244
52239
|
*
|
|
@@ -53204,7 +53199,7 @@ function applySelectionOverlay(screen, selection, stylePool) {
|
|
|
53204
53199
|
}
|
|
53205
53200
|
}
|
|
53206
53201
|
//#endregion
|
|
53207
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
53202
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/termio/dec.js
|
|
53208
53203
|
/**
|
|
53209
53204
|
* DEC (Digital Equipment Corporation) Private Mode Sequences
|
|
53210
53205
|
*
|
|
@@ -53270,7 +53265,7 @@ const ENABLE_MOUSE_TRACKING = decset(DEC.MOUSE_NORMAL) + decset(DEC.MOUSE_BUTTON
|
|
|
53270
53265
|
/** Disable all mouse tracking modes enabled by ENABLE_MOUSE_TRACKING. */
|
|
53271
53266
|
const DISABLE_MOUSE_TRACKING = decreset(DEC.MOUSE_SGR) + decreset(DEC.MOUSE_ANY) + decreset(DEC.MOUSE_BUTTON) + decreset(DEC.MOUSE_NORMAL);
|
|
53272
53267
|
//#endregion
|
|
53273
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
53268
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/terminal.js
|
|
53274
53269
|
/**
|
|
53275
53270
|
* True when running inside a JetBrains IDE terminal (JediTerm). The IDE
|
|
53276
53271
|
* injects `TERMINAL_EMULATOR=JetBrains-JediTerm` into the pty environment of
|
|
@@ -53512,7 +53507,7 @@ function writeDiffToTerminal(terminal, diff, skipSyncMarkers = false) {
|
|
|
53512
53507
|
terminal.stdout.write(buffer);
|
|
53513
53508
|
}
|
|
53514
53509
|
//#endregion
|
|
53515
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
53510
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/terminal-focus-state.js
|
|
53516
53511
|
let focusState = "unknown";
|
|
53517
53512
|
const resolvers = /* @__PURE__ */ new Set();
|
|
53518
53513
|
const subscribers = /* @__PURE__ */ new Set();
|
|
@@ -53556,7 +53551,7 @@ function subscribeTerminalFocus(cb) {
|
|
|
53556
53551
|
};
|
|
53557
53552
|
}
|
|
53558
53553
|
//#endregion
|
|
53559
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
53554
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/AppContext.js
|
|
53560
53555
|
/**
|
|
53561
53556
|
* `AppContext` is a React context, which exposes a method to manually exit the app (unmount).
|
|
53562
53557
|
*/
|
|
@@ -53601,13 +53596,13 @@ var require_react_compiler_runtime_development = /* @__PURE__ */ __commonJSMin((
|
|
|
53601
53596
|
})();
|
|
53602
53597
|
}));
|
|
53603
53598
|
//#endregion
|
|
53604
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
53599
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/constants.js
|
|
53605
53600
|
var import_compiler_runtime = (/* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
53606
53601
|
if (process.env.NODE_ENV === "production") module.exports = require_react_compiler_runtime_production();
|
|
53607
53602
|
else module.exports = require_react_compiler_runtime_development();
|
|
53608
53603
|
})))();
|
|
53609
53604
|
//#endregion
|
|
53610
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
53605
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/geometry-trace.js
|
|
53611
53606
|
/**
|
|
53612
53607
|
* Geometry forensics — per-frame scroll-geometry trace (issues #421/#433).
|
|
53613
53608
|
*
|
|
@@ -53687,7 +53682,7 @@ function endGeometryFrame(durationMs) {
|
|
|
53687
53682
|
};
|
|
53688
53683
|
}
|
|
53689
53684
|
//#endregion
|
|
53690
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
53685
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/TerminalFocusContext.js
|
|
53691
53686
|
const TerminalFocusContext = (0, import_react.createContext)({
|
|
53692
53687
|
isTerminalFocused: true,
|
|
53693
53688
|
terminalFocusState: "unknown"
|
|
@@ -53722,7 +53717,7 @@ function TerminalFocusProvider(t0) {
|
|
|
53722
53717
|
return t2;
|
|
53723
53718
|
}
|
|
53724
53719
|
//#endregion
|
|
53725
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
53720
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-terminal-focus.js
|
|
53726
53721
|
/**
|
|
53727
53722
|
* Hook to check if the terminal has focus.
|
|
53728
53723
|
*
|
|
@@ -53737,7 +53732,7 @@ function useTerminalFocus() {
|
|
|
53737
53732
|
return isTerminalFocused;
|
|
53738
53733
|
}
|
|
53739
53734
|
//#endregion
|
|
53740
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
53735
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/ClockContext.js
|
|
53741
53736
|
function createClock(tickIntervalMs) {
|
|
53742
53737
|
const subscribers = /* @__PURE__ */ new Map();
|
|
53743
53738
|
let interval = null;
|
|
@@ -53834,7 +53829,7 @@ function _temp() {
|
|
|
53834
53829
|
return createClock(16);
|
|
53835
53830
|
}
|
|
53836
53831
|
//#endregion
|
|
53837
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
53832
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/CursorDeclarationContext.js
|
|
53838
53833
|
/**
|
|
53839
53834
|
* React context that provides the cursor-declaration setter to descendants.
|
|
53840
53835
|
*/
|
|
@@ -53874,7 +53869,7 @@ var require_escape_string_regexp = /* @__PURE__ */ __commonJSMin(((exports, modu
|
|
|
53874
53869
|
};
|
|
53875
53870
|
}));
|
|
53876
53871
|
//#endregion
|
|
53877
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
53872
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/Box.js
|
|
53878
53873
|
var import_stack_utils = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
53879
53874
|
const escapeStringRegexp = require_escape_string_regexp();
|
|
53880
53875
|
const cwd = typeof process === "object" && process && typeof process.cwd === "function" ? process.cwd() : ".";
|
|
@@ -54242,7 +54237,7 @@ function Box(t0) {
|
|
|
54242
54237
|
return t4;
|
|
54243
54238
|
}
|
|
54244
54239
|
//#endregion
|
|
54245
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
54240
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/Text.js
|
|
54246
54241
|
const memoizedStylesForWrap = {
|
|
54247
54242
|
wrap: {
|
|
54248
54243
|
flexGrow: 0,
|
|
@@ -54394,7 +54389,7 @@ function Text(t0) {
|
|
|
54394
54389
|
return t16;
|
|
54395
54390
|
}
|
|
54396
54391
|
//#endregion
|
|
54397
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
54392
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/ErrorOverview.js
|
|
54398
54393
|
const cleanupPath = (path) => {
|
|
54399
54394
|
return path?.replace(`file://${process.cwd()}/`, "");
|
|
54400
54395
|
};
|
|
@@ -54499,10 +54494,10 @@ function ErrorOverview({ error }) {
|
|
|
54499
54494
|
});
|
|
54500
54495
|
}
|
|
54501
54496
|
//#endregion
|
|
54502
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
54497
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/TerminalSizeContext.js
|
|
54503
54498
|
const TerminalSizeContext = (0, import_react.createContext)(null);
|
|
54504
54499
|
//#endregion
|
|
54505
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
54500
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/useTerminalNotification.js
|
|
54506
54501
|
/**
|
|
54507
54502
|
* React context providing a raw terminal write function. Null until a
|
|
54508
54503
|
* TerminalWriteProvider is mounted.
|
|
@@ -54513,7 +54508,7 @@ const TerminalWriteContext = (0, import_react.createContext)(null);
|
|
|
54513
54508
|
*/
|
|
54514
54509
|
const TerminalWriteProvider = TerminalWriteContext.Provider;
|
|
54515
54510
|
//#endregion
|
|
54516
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
54511
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/App.js
|
|
54517
54512
|
const SUPPORTS_SUSPEND = process.platform !== "win32";
|
|
54518
54513
|
const STDIN_RESUME_GAP_MS = 5e3;
|
|
54519
54514
|
const MULTI_CLICK_TIMEOUT_MS = 500;
|
|
@@ -55039,7 +55034,7 @@ function handleMouseEvent(app, m) {
|
|
|
55039
55034
|
}
|
|
55040
55035
|
}
|
|
55041
55036
|
//#endregion
|
|
55042
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
55037
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/keyboard-event.js
|
|
55043
55038
|
/**
|
|
55044
55039
|
* Keyboard event dispatched through the DOM tree via capture/bubble.
|
|
55045
55040
|
*
|
|
@@ -55099,7 +55094,7 @@ function keyFromParsed(parsed) {
|
|
|
55099
55094
|
return name || seq;
|
|
55100
55095
|
}
|
|
55101
55096
|
//#endregion
|
|
55102
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
55097
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/frame.js
|
|
55103
55098
|
/**
|
|
55104
55099
|
* Create an empty frame with a zero-size screen, the given viewport, and a
|
|
55105
55100
|
* visible cursor at the origin.
|
|
@@ -55125,7 +55120,7 @@ function emptyFrame(rows, columns, stylePool, charPool, hyperlinkPool) {
|
|
|
55125
55120
|
};
|
|
55126
55121
|
}
|
|
55127
55122
|
//#endregion
|
|
55128
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
55123
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/click-event.js
|
|
55129
55124
|
/**
|
|
55130
55125
|
* Mouse click event. Fired on left-button release without drag, only when
|
|
55131
55126
|
* mouse tracking is enabled (i.e. inside <AlternateScreen>).
|
|
@@ -55156,7 +55151,7 @@ var ClickEvent = class extends PointerEvent {
|
|
|
55156
55151
|
}
|
|
55157
55152
|
};
|
|
55158
55153
|
//#endregion
|
|
55159
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
55154
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/context-menu-event.js
|
|
55160
55155
|
/**
|
|
55161
55156
|
* Mouse context-menu event. Fired on right-button press (SGR button 2,
|
|
55162
55157
|
* low bits of the raw button byte), mirroring the DOM `contextmenu` event
|
|
@@ -55180,7 +55175,7 @@ var ContextMenuEvent = class extends PointerEvent {
|
|
|
55180
55175
|
}
|
|
55181
55176
|
};
|
|
55182
55177
|
//#endregion
|
|
55183
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
55178
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/events/wheel-event.js
|
|
55184
55179
|
/**
|
|
55185
55180
|
* Mouse wheel event dispatched to the ScrollBox under the pointer.
|
|
55186
55181
|
*
|
|
@@ -55216,7 +55211,7 @@ function indentString(string, count = 1, options = {}) {
|
|
|
55216
55211
|
return string.replace(regex, indent.repeat(count));
|
|
55217
55212
|
}
|
|
55218
55213
|
//#endregion
|
|
55219
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
55214
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/get-max-width.js
|
|
55220
55215
|
/**
|
|
55221
55216
|
* Returns the yoga node's content width (computed width minus padding and
|
|
55222
55217
|
* border).
|
|
@@ -55321,7 +55316,7 @@ var cli_boxes_default = {
|
|
|
55321
55316
|
}
|
|
55322
55317
|
};
|
|
55323
55318
|
//#endregion
|
|
55324
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
55319
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/render-border.js
|
|
55325
55320
|
/** Built-in border styles beyond those provided by cli-boxes. */
|
|
55326
55321
|
const CUSTOM_BORDER_STYLES = { dashed: {
|
|
55327
55322
|
top: "╌",
|
|
@@ -55411,7 +55406,7 @@ const renderBorder = (x, y, node, output) => {
|
|
|
55411
55406
|
}
|
|
55412
55407
|
};
|
|
55413
55408
|
//#endregion
|
|
55414
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
55409
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/widest-line.js
|
|
55415
55410
|
/**
|
|
55416
55411
|
* Get the display width of the widest line in a string.
|
|
55417
55412
|
* @param string - the text to measure, possibly containing newlines.
|
|
@@ -55430,7 +55425,7 @@ function widestLine(string) {
|
|
|
55430
55425
|
return maxWidth;
|
|
55431
55426
|
}
|
|
55432
55427
|
//#endregion
|
|
55433
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
55428
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/render-node-to-output.js
|
|
55434
55429
|
function isXtermJsHost() {
|
|
55435
55430
|
return process.env.TERM_PROGRAM === "vscode" || isXtermJs();
|
|
55436
55431
|
}
|
|
@@ -56246,7 +56241,7 @@ function dropSubtreeCache(node) {
|
|
|
56246
56241
|
for (const child of node.childNodes) if (child.nodeName !== "#text") dropSubtreeCache(child);
|
|
56247
56242
|
}
|
|
56248
56243
|
//#endregion
|
|
56249
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
56244
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hit-test.js
|
|
56250
56245
|
/**
|
|
56251
56246
|
* Find the deepest DOM element whose rendered rect contains (col, row).
|
|
56252
56247
|
*
|
|
@@ -56636,7 +56631,7 @@ function dispatchHover(root, col, row, hovered) {
|
|
|
56636
56631
|
}
|
|
56637
56632
|
}
|
|
56638
56633
|
//#endregion
|
|
56639
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
56634
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/flush-tick.js
|
|
56640
56635
|
/**
|
|
56641
56636
|
* Monotonic terminal-flush counter for the ported Ink core.
|
|
56642
56637
|
*
|
|
@@ -56669,7 +56664,7 @@ function getTerminalFlushTick() {
|
|
|
56669
56664
|
return flushTick;
|
|
56670
56665
|
}
|
|
56671
56666
|
//#endregion
|
|
56672
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
56667
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/instances.js
|
|
56673
56668
|
/**
|
|
56674
56669
|
* Live Ink instances keyed by their output stream, so consecutive render()
|
|
56675
56670
|
* calls reuse the instance for a stream instead of creating a new one.
|
|
@@ -56678,7 +56673,7 @@ function getTerminalFlushTick() {
|
|
|
56678
56673
|
*/
|
|
56679
56674
|
const instances = /* @__PURE__ */ new Map();
|
|
56680
56675
|
//#endregion
|
|
56681
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
56676
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/log-update.js
|
|
56682
56677
|
const CARRIAGE_RETURN = { type: "carriageReturn" };
|
|
56683
56678
|
const NEWLINE = {
|
|
56684
56679
|
type: "stdout",
|
|
@@ -57315,7 +57310,7 @@ var VirtualScreen = class {
|
|
|
57315
57310
|
}
|
|
57316
57311
|
};
|
|
57317
57312
|
//#endregion
|
|
57318
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
57313
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/optimizer.js
|
|
57319
57314
|
/**
|
|
57320
57315
|
* Optimize a diff by applying all optimization rules in a single pass.
|
|
57321
57316
|
* This reduces the number of patches that need to be written to the terminal.
|
|
@@ -57380,7 +57375,7 @@ function optimize(diff) {
|
|
|
57380
57375
|
return result;
|
|
57381
57376
|
}
|
|
57382
57377
|
//#endregion
|
|
57383
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
57378
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/bidi.js
|
|
57384
57379
|
var import_bidi = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
57385
57380
|
(function(global, factory) {
|
|
57386
57381
|
typeof exports === "object" && typeof module !== "undefined" ? module.exports = factory() : typeof define === "function" && define.amd ? define(factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, global.bidi_js = factory());
|
|
@@ -58156,7 +58151,7 @@ function hasRTLCharacters(text) {
|
|
|
58156
58151
|
return /[\u0590-\u05FF\uFB1D-\uFB4F\u0600-\u06FF\u0750-\u077F\u08A0-\u08FF\uFB50-\uFDFF\uFE70-\uFEFF\u0780-\u07BF\u0700-\u074F]/u.test(text);
|
|
58157
58152
|
}
|
|
58158
58153
|
//#endregion
|
|
58159
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
58154
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/output.js
|
|
58160
58155
|
/**
|
|
58161
58156
|
* charCache bounds. The entry-count cap alone was not enough: a streaming
|
|
58162
58157
|
* line produces a NEW cache key on every frame, and each entry's cost is
|
|
@@ -58826,7 +58821,7 @@ function writeLineToScreen(screen, line, x, y, screenWidth, stylePool, charCache
|
|
|
58826
58821
|
return offsetX;
|
|
58827
58822
|
}
|
|
58828
58823
|
//#endregion
|
|
58829
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
58824
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/render-to-screen.js
|
|
58830
58825
|
const timing = {
|
|
58831
58826
|
reconcile: 0,
|
|
58832
58827
|
yoga: 0,
|
|
@@ -58920,7 +58915,7 @@ function applyPositionedHighlight(screen, stylePool, positions, rowOffset, curre
|
|
|
58920
58915
|
return true;
|
|
58921
58916
|
}
|
|
58922
58917
|
//#endregion
|
|
58923
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
58918
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/renderer.js
|
|
58924
58919
|
/**
|
|
58925
58920
|
* Create the renderer function for a root DOM node. The returned renderer
|
|
58926
58921
|
* reuses an Output across frames so its character cache persists.
|
|
@@ -58995,7 +58990,7 @@ function createRenderer(node, stylePool) {
|
|
|
58995
58990
|
};
|
|
58996
58991
|
}
|
|
58997
58992
|
//#endregion
|
|
58998
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
58993
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/searchHighlight.js
|
|
58999
58994
|
/**
|
|
59000
58995
|
* Highlight all visible occurrences of `query` in the screen buffer by
|
|
59001
58996
|
* inverting cell styles (SGR 7). Post-render, same damage-tracking machinery
|
|
@@ -59057,7 +59052,7 @@ function applySearchHighlight(screen, query, stylePool) {
|
|
|
59057
59052
|
return applied;
|
|
59058
59053
|
}
|
|
59059
59054
|
//#endregion
|
|
59060
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
59055
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/ink.js
|
|
59061
59056
|
const ALT_SCREEN_ANCHOR_CURSOR = Object.freeze({
|
|
59062
59057
|
x: 0,
|
|
59063
59058
|
y: 0,
|
|
@@ -60610,7 +60605,7 @@ const CONSOLE_STDERR_METHODS = [
|
|
|
60610
60605
|
"trace"
|
|
60611
60606
|
];
|
|
60612
60607
|
//#endregion
|
|
60613
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
60608
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/root.js
|
|
60614
60609
|
/**
|
|
60615
60610
|
* Mount a component and render the output.
|
|
60616
60611
|
* @param node - the React element to render.
|
|
@@ -60693,7 +60688,7 @@ const getInstance = (stdout, createInstance) => {
|
|
|
60693
60688
|
return instance;
|
|
60694
60689
|
};
|
|
60695
60690
|
//#endregion
|
|
60696
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
60691
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/design-system/ThemedBox.js
|
|
60697
60692
|
/** Resolves a color value that may be a theme key to a raw Color. */
|
|
60698
60693
|
function resolveColor$1(color, theme) {
|
|
60699
60694
|
if (!color) return void 0;
|
|
@@ -60718,7 +60713,7 @@ function ThemedBox({ borderColor, borderTopColor, borderBottomColor, borderLeftC
|
|
|
60718
60713
|
});
|
|
60719
60714
|
}
|
|
60720
60715
|
//#endregion
|
|
60721
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
60716
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/design-system/ThemedText.js
|
|
60722
60717
|
/**
|
|
60723
60718
|
* Colors uncolored ThemedText in the subtree. Precedence: explicit `color` >
|
|
60724
60719
|
* this > dimColor (in the Claude Code visual language, where message rows
|
|
@@ -60754,7 +60749,7 @@ function ThemedText({ color, backgroundColor, dimColor = false, bold = false, it
|
|
|
60754
60749
|
});
|
|
60755
60750
|
}
|
|
60756
60751
|
//#endregion
|
|
60757
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
60752
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/Spacer.js
|
|
60758
60753
|
/**
|
|
60759
60754
|
* A flexible space that expands along the major axis of its containing layout.
|
|
60760
60755
|
* It's useful as a shortcut for filling all the available spaces between elements.
|
|
@@ -60769,7 +60764,7 @@ function Spacer() {
|
|
|
60769
60764
|
return t0;
|
|
60770
60765
|
}
|
|
60771
60766
|
//#endregion
|
|
60772
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
60767
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/Newline.js
|
|
60773
60768
|
/**
|
|
60774
60769
|
* Adds one or more newline (\n) characters. Must be used within <Text> components.
|
|
60775
60770
|
*/
|
|
@@ -60792,7 +60787,7 @@ function Newline(t0) {
|
|
|
60792
60787
|
return t3;
|
|
60793
60788
|
}
|
|
60794
60789
|
//#endregion
|
|
60795
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
60790
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/NoSelect.js
|
|
60796
60791
|
/**
|
|
60797
60792
|
* Marks its contents as non-selectable in fullscreen text selection.
|
|
60798
60793
|
* Cells inside this box are skipped by both the selection highlight and
|
|
@@ -60843,7 +60838,7 @@ function NoSelect(t0) {
|
|
|
60843
60838
|
return t2;
|
|
60844
60839
|
}
|
|
60845
60840
|
//#endregion
|
|
60846
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
60841
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/AlternateScreen.js
|
|
60847
60842
|
/**
|
|
60848
60843
|
* Run children in the terminal's alternate screen buffer, constrained to
|
|
60849
60844
|
* the viewport height. While mounted:
|
|
@@ -60918,7 +60913,7 @@ function AlternateScreen(t0) {
|
|
|
60918
60913
|
return t5;
|
|
60919
60914
|
}
|
|
60920
60915
|
//#endregion
|
|
60921
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
60916
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/ScrollBox.js
|
|
60922
60917
|
/**
|
|
60923
60918
|
* A Box with `overflow: scroll` and an imperative scroll API.
|
|
60924
60919
|
*
|
|
@@ -61096,7 +61091,7 @@ function ScrollBox({ children, ref, stickyScroll, ...style }) {
|
|
|
61096
61091
|
});
|
|
61097
61092
|
}
|
|
61098
61093
|
//#endregion
|
|
61099
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61094
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-input.js
|
|
61100
61095
|
/**
|
|
61101
61096
|
* Keep an event listener stable while always dispatching to the latest render's
|
|
61102
61097
|
* callback. Keeping this hook local is important for packaged installs: a
|
|
@@ -61162,7 +61157,7 @@ const useInput = (inputHandler, options = {}) => {
|
|
|
61162
61157
|
}, [internal_eventEmitter, handleData]);
|
|
61163
61158
|
};
|
|
61164
61159
|
//#endregion
|
|
61165
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61160
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-selection.js
|
|
61166
61161
|
/**
|
|
61167
61162
|
* Access to text selection operations on the Ink instance (fullscreen only).
|
|
61168
61163
|
* Returns no-op functions when fullscreen mode is disabled.
|
|
@@ -61202,7 +61197,7 @@ function useSelection() {
|
|
|
61202
61197
|
}, [ink]);
|
|
61203
61198
|
}
|
|
61204
61199
|
//#endregion
|
|
61205
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61200
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-copy-on-select.js
|
|
61206
61201
|
/**
|
|
61207
61202
|
* Copy-on-select: when a drag finishes (or a double/triple click, or a
|
|
61208
61203
|
* shift+arrow extension, lands a selection), copy the selected text to the
|
|
@@ -61242,14 +61237,14 @@ function useCopyOnSelect(onCopied) {
|
|
|
61242
61237
|
]);
|
|
61243
61238
|
}
|
|
61244
61239
|
//#endregion
|
|
61245
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61240
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-app.js
|
|
61246
61241
|
/**
|
|
61247
61242
|
* React hook exposing the manual app-exit function from `AppContext`.
|
|
61248
61243
|
* @returns the `AppContext` value, whose `exit` function unmounts the app.
|
|
61249
61244
|
*/
|
|
61250
61245
|
const useApp = () => (0, import_react.useContext)(AppContext);
|
|
61251
61246
|
//#endregion
|
|
61252
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61247
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-terminal-viewport.js
|
|
61253
61248
|
/**
|
|
61254
61249
|
* Hook to detect if a component is within the terminal viewport.
|
|
61255
61250
|
*
|
|
@@ -61303,7 +61298,7 @@ function useTerminalViewport() {
|
|
|
61303
61298
|
return [setElement, entryRef.current];
|
|
61304
61299
|
}
|
|
61305
61300
|
//#endregion
|
|
61306
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61301
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-animation-frame.js
|
|
61307
61302
|
/**
|
|
61308
61303
|
* Hook for synchronized animations that pause when offscreen.
|
|
61309
61304
|
*
|
|
@@ -61352,7 +61347,7 @@ function useAnimationFrame(intervalMs = 16) {
|
|
|
61352
61347
|
return [viewportRef, time];
|
|
61353
61348
|
}
|
|
61354
61349
|
//#endregion
|
|
61355
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61350
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-terminal-size.js
|
|
61356
61351
|
/** Terminal dimensions from the Ink app shell (from Claude Code).
|
|
61357
61352
|
* @returns the current terminal dimensions.
|
|
61358
61353
|
*/
|
|
@@ -61362,7 +61357,7 @@ function useTerminalSize() {
|
|
|
61362
61357
|
return size;
|
|
61363
61358
|
}
|
|
61364
61359
|
//#endregion
|
|
61365
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61360
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/hooks/useBlink.js
|
|
61366
61361
|
const BLINK_INTERVAL_MS = 600;
|
|
61367
61362
|
/**
|
|
61368
61363
|
* Hook for synchronized blinking animations that pause when offscreen
|
|
@@ -61379,7 +61374,7 @@ function useBlink(enabled, intervalMs = BLINK_INTERVAL_MS) {
|
|
|
61379
61374
|
return [ref, Math.floor(time / intervalMs) % 2 === 0];
|
|
61380
61375
|
}
|
|
61381
61376
|
//#endregion
|
|
61382
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61377
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/supports-hyperlinks.js
|
|
61383
61378
|
var import_supports_hyperlinks = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
61384
61379
|
const supportsColor = require_supports_color();
|
|
61385
61380
|
const hasFlag = require_has_flag();
|
|
@@ -61476,7 +61471,7 @@ function supportsHyperlinks(options) {
|
|
|
61476
61471
|
return false;
|
|
61477
61472
|
}
|
|
61478
61473
|
//#endregion
|
|
61479
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61474
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/components/Link.js
|
|
61480
61475
|
function Link(t0) {
|
|
61481
61476
|
const $ = (0, import_compiler_runtime.c)(5);
|
|
61482
61477
|
const { children, url, fallback } = t0;
|
|
@@ -61504,7 +61499,7 @@ function Link(t0) {
|
|
|
61504
61499
|
return t2;
|
|
61505
61500
|
}
|
|
61506
61501
|
//#endregion
|
|
61507
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61502
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/termio/esc.js
|
|
61508
61503
|
/**
|
|
61509
61504
|
* ESC Sequence Parser
|
|
61510
61505
|
*
|
|
@@ -61560,7 +61555,7 @@ function parseEsc(chars) {
|
|
|
61560
61555
|
};
|
|
61561
61556
|
}
|
|
61562
61557
|
//#endregion
|
|
61563
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61558
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/termio/types.js
|
|
61564
61559
|
/**
|
|
61565
61560
|
* ANSI Parser - Semantic Types
|
|
61566
61561
|
*
|
|
@@ -61588,7 +61583,7 @@ function defaultStyle() {
|
|
|
61588
61583
|
};
|
|
61589
61584
|
}
|
|
61590
61585
|
//#endregion
|
|
61591
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61586
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/termio/sgr.js
|
|
61592
61587
|
/**
|
|
61593
61588
|
* SGR (Select Graphic Rendition) Parser
|
|
61594
61589
|
*
|
|
@@ -61896,7 +61891,7 @@ function applySGR(paramStr, style) {
|
|
|
61896
61891
|
return s;
|
|
61897
61892
|
}
|
|
61898
61893
|
//#endregion
|
|
61899
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
61894
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/termio/parser.js
|
|
61900
61895
|
/**
|
|
61901
61896
|
* ANSI Parser - Semantic Action Generator
|
|
61902
61897
|
*
|
|
@@ -62273,7 +62268,7 @@ var Parser = class {
|
|
|
62273
62268
|
}
|
|
62274
62269
|
};
|
|
62275
62270
|
//#endregion
|
|
62276
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
62271
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/Ansi.js
|
|
62277
62272
|
/**
|
|
62278
62273
|
* Component that parses ANSI escape codes and renders them using Text components.
|
|
62279
62274
|
*
|
|
@@ -62524,7 +62519,7 @@ function StyledText(t0) {
|
|
|
62524
62519
|
return t1;
|
|
62525
62520
|
}
|
|
62526
62521
|
//#endregion
|
|
62527
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
62522
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ui.js
|
|
62528
62523
|
var ui_exports = /* @__PURE__ */ __exportAll({
|
|
62529
62524
|
AlternateScreen: () => AlternateScreen,
|
|
62530
62525
|
Ansi: () => Ansi,
|
|
@@ -62548,7 +62543,7 @@ var ui_exports = /* @__PURE__ */ __exportAll({
|
|
|
62548
62543
|
useTheme: () => useTheme
|
|
62549
62544
|
});
|
|
62550
62545
|
//#endregion
|
|
62551
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
62546
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/PageMargin.js
|
|
62552
62547
|
/** 嵌套安全的 inset(若未来出现嵌套 PageMargin 会累加)。 */
|
|
62553
62548
|
const PageInsetContext = import_react.createContext({
|
|
62554
62549
|
x: 0,
|
|
@@ -62602,7 +62597,7 @@ function PageMargin({ children }) {
|
|
|
62602
62597
|
});
|
|
62603
62598
|
}
|
|
62604
62599
|
//#endregion
|
|
62605
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
62600
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/cc/figures.js
|
|
62606
62601
|
/**
|
|
62607
62602
|
* UI glyph constants used across the TUI: prompt markers, status badges,
|
|
62608
62603
|
* direction arrows, media controls, reasoning-effort indicators, and
|
|
@@ -62629,7 +62624,7 @@ const THINKING_SPINNER_FRAMES = [
|
|
|
62629
62624
|
"⠏"
|
|
62630
62625
|
];
|
|
62631
62626
|
//#endregion
|
|
62632
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
62627
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/providerWizard.js
|
|
62633
62628
|
/**
|
|
62634
62629
|
* `/provider` wizard — interactively adds, edits, or deletes an LLM
|
|
62635
62630
|
* provider route at runtime.
|
|
@@ -63355,7 +63350,7 @@ function buildProfile(input) {
|
|
|
63355
63350
|
return profile;
|
|
63356
63351
|
}
|
|
63357
63352
|
//#endregion
|
|
63358
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
63353
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/modelConfigWizard.js
|
|
63359
63354
|
/** `/model-config`: platform catalogs and shared provider configuration. */
|
|
63360
63355
|
const CUSTOM_MODEL_PROTOCOLS = [
|
|
63361
63356
|
"openai-completions",
|
|
@@ -64237,7 +64232,7 @@ function parseCapacity(value) {
|
|
|
64237
64232
|
return Number.isSafeInteger(parsed) && parsed > 0 ? parsed : void 0;
|
|
64238
64233
|
}
|
|
64239
64234
|
//#endregion
|
|
64240
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
64235
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-declared-cursor.js
|
|
64241
64236
|
/**
|
|
64242
64237
|
* Declares where the terminal cursor should be parked after each frame.
|
|
64243
64238
|
*
|
|
@@ -64286,7 +64281,7 @@ function useDeclaredCursor(options) {
|
|
|
64286
64281
|
return setNode;
|
|
64287
64282
|
}
|
|
64288
64283
|
//#endregion
|
|
64289
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
64284
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/measure-element.js
|
|
64290
64285
|
/**
|
|
64291
64286
|
* Measure the rendered dimensions of a Box element.
|
|
64292
64287
|
* @param node - the DOM element to measure.
|
|
@@ -64297,7 +64292,7 @@ const measureElement = (node) => ({
|
|
|
64297
64292
|
height: node.yogaNode?.getComputedHeight() ?? 0
|
|
64298
64293
|
});
|
|
64299
64294
|
//#endregion
|
|
64300
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
64295
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/design-system/Divider.js
|
|
64301
64296
|
const MAX_APPLIED_MEASUREMENTS = 8;
|
|
64302
64297
|
/**
|
|
64303
64298
|
* A horizontal divider line, optionally with a title in the middle
|
|
@@ -65589,7 +65584,7 @@ ${e}</tr>
|
|
|
65589
65584
|
return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text : w(e.text);
|
|
65590
65585
|
}
|
|
65591
65586
|
};
|
|
65592
|
-
var z
|
|
65587
|
+
var z = class {
|
|
65593
65588
|
strong({ text: e }) {
|
|
65594
65589
|
return e;
|
|
65595
65590
|
}
|
|
@@ -65626,7 +65621,7 @@ var O = class a {
|
|
|
65626
65621
|
renderer;
|
|
65627
65622
|
textRenderer;
|
|
65628
65623
|
constructor(e) {
|
|
65629
|
-
this.options = e || y, this.options.renderer = this.options.renderer || new $(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new z
|
|
65624
|
+
this.options = e || y, this.options.renderer = this.options.renderer || new $(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new z();
|
|
65630
65625
|
}
|
|
65631
65626
|
static parse(e, t) {
|
|
65632
65627
|
return new a(t).parse(e);
|
|
@@ -65822,7 +65817,7 @@ var U = class {
|
|
|
65822
65817
|
parseInline = this.parseMarkdown(!1);
|
|
65823
65818
|
Parser = O;
|
|
65824
65819
|
Renderer = $;
|
|
65825
|
-
TextRenderer = z
|
|
65820
|
+
TextRenderer = z;
|
|
65826
65821
|
Lexer = T;
|
|
65827
65822
|
Tokenizer = _;
|
|
65828
65823
|
Hooks = L;
|
|
@@ -66012,7 +66007,7 @@ f.parseInline = I.parseInline;
|
|
|
66012
66007
|
f.Parser = O;
|
|
66013
66008
|
f.parser = O.parse;
|
|
66014
66009
|
f.Renderer = $;
|
|
66015
|
-
f.TextRenderer = z
|
|
66010
|
+
f.TextRenderer = z;
|
|
66016
66011
|
f.Lexer = T;
|
|
66017
66012
|
f.lexer = T.lex;
|
|
66018
66013
|
f.Tokenizer = _;
|
|
@@ -66025,7 +66020,7 @@ f.parseInline;
|
|
|
66025
66020
|
O.parse;
|
|
66026
66021
|
T.lex;
|
|
66027
66022
|
//#endregion
|
|
66028
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
66023
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/cc/syntaxTheme.js
|
|
66029
66024
|
/** highlight.js token classes -> theme syntax tokens. `default` catches
|
|
66030
66025
|
* every unmapped class so cli-highlight's own yellow never leaks through
|
|
66031
66026
|
* (issue #250, P2-6). */
|
|
@@ -66091,7 +66086,7 @@ function buildSyntaxTheme(theme) {
|
|
|
66091
66086
|
return out;
|
|
66092
66087
|
}
|
|
66093
66088
|
//#endregion
|
|
66094
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
66089
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/cc/hyperlink.js
|
|
66095
66090
|
/** OSC 8 hyperlink start sequence: `ESC ] 8 ; ;`, followed by the URL. */
|
|
66096
66091
|
const OSC8_START = "\x1B]8;;";
|
|
66097
66092
|
/** Schemes a rendered hyperlink may point at. Anything else degrades to
|
|
@@ -66133,7 +66128,7 @@ function createHyperlink(url, content, options) {
|
|
|
66133
66128
|
return `${OSC8_START}${safeUrl}${(options?.style ?? ((text) => chalk.blue(text)))(displayText)}${OSC8_START}`;
|
|
66134
66129
|
}
|
|
66135
66130
|
//#endregion
|
|
66136
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
66131
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/fileTarget.js
|
|
66137
66132
|
/**
|
|
66138
66133
|
* Clickable file targets: turning path-like text in AI output into
|
|
66139
66134
|
* clickable targets, and resolving those targets back to absolute paths at
|
|
@@ -66275,7 +66270,7 @@ function linkifyFilePaths(text, wrap) {
|
|
|
66275
66270
|
});
|
|
66276
66271
|
}
|
|
66277
66272
|
//#endregion
|
|
66278
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
66273
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/cc/markdown.js
|
|
66279
66274
|
/**
|
|
66280
66275
|
* Markdown-to-ANSI renderer over marked's token stream.
|
|
66281
66276
|
*
|
|
@@ -66590,7 +66585,7 @@ function padAligned(content, displayWidth, targetWidth, align) {
|
|
|
66590
66585
|
return content + " ".repeat(extra);
|
|
66591
66586
|
}
|
|
66592
66587
|
//#endregion
|
|
66593
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
66588
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/cc/cliHighlight.js
|
|
66594
66589
|
let cliHighlightPromise;
|
|
66595
66590
|
async function loadCliHighlight() {
|
|
66596
66591
|
try {
|
|
@@ -66613,7 +66608,7 @@ function getCliHighlightPromise() {
|
|
|
66613
66608
|
return cliHighlightPromise;
|
|
66614
66609
|
}
|
|
66615
66610
|
//#endregion
|
|
66616
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
66611
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/MarkdownTable.js
|
|
66617
66612
|
/** Accounts for parent indentation and terminal resize races (from Claude Code). */
|
|
66618
66613
|
const SAFETY_MARGIN = 4;
|
|
66619
66614
|
/** Minimum column width to prevent degenerate layouts */
|
|
@@ -66800,7 +66795,7 @@ function MarkdownTable({ token, highlight, forceWidth }) {
|
|
|
66800
66795
|
return (0, import_jsx_runtime.jsx)(Text, { children: tableLines.join("\n") });
|
|
66801
66796
|
}
|
|
66802
66797
|
//#endregion
|
|
66803
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
66798
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/Markdown.js
|
|
66804
66799
|
const TOKEN_CACHE_CAPACITY = 200;
|
|
66805
66800
|
const TOKEN_CACHE_CHAR_BUDGET = 2e5;
|
|
66806
66801
|
const TOKEN_CACHE_MAX_SOURCE_LENGTH = 2e4;
|
|
@@ -66909,7 +66904,7 @@ function MarkdownImpl({ children, dimColor = false, cacheTokens = true }) {
|
|
|
66909
66904
|
*/
|
|
66910
66905
|
const Markdown = import_react.memo(MarkdownImpl, (prev, next) => prev.children === next.children && prev.dimColor === next.dimColor && prev.cacheTokens === next.cacheTokens);
|
|
66911
66906
|
//#endregion
|
|
66912
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
66907
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/questions/PlanReviewPanel.js
|
|
66913
66908
|
/**
|
|
66914
66909
|
* The plan-review panel — Claude Code style exit-plan-mode decision card
|
|
66915
66910
|
* for the DSH user-interaction seam. plan-mode's `exit_plan_mode` tool asks
|
|
@@ -67231,7 +67226,7 @@ function PlanReviewPanel({ question, onAnswer, onCancel }) {
|
|
|
67231
67226
|
});
|
|
67232
67227
|
}
|
|
67233
67228
|
//#endregion
|
|
67234
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
67229
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/listWindow.js
|
|
67235
67230
|
/**
|
|
67236
67231
|
* 焦点居中的列表窗口:长列表只渲染焦点附近的一段,保证焦点行始终可见。
|
|
67237
67232
|
* 瞬态面板走 OverlayAbove 零高度浮层后,超高部分会被 overflow 裁掉且焦点
|
|
@@ -67283,7 +67278,7 @@ function listWindow(heights, focusIndex, maxRows, gap = 0) {
|
|
|
67283
67278
|
}
|
|
67284
67279
|
}
|
|
67285
67280
|
//#endregion
|
|
67286
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
67281
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/questions/AskUserQuestionPanel.js
|
|
67287
67282
|
/**
|
|
67288
67283
|
* The questionnaire panel — Claude Code style ask-user-question UI for the
|
|
67289
67284
|
* DSH user-interaction seam. One question per panel (progress header, header
|
|
@@ -67877,7 +67872,7 @@ function AskUserQuestionPanel({ question, position, total, answered, initialDraf
|
|
|
67877
67872
|
});
|
|
67878
67873
|
}
|
|
67879
67874
|
//#endregion
|
|
67880
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
67875
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/approvals/ApprovalPanel.js
|
|
67881
67876
|
/**
|
|
67882
67877
|
* The approval panel — Claude Code style permission prompt for the DSH
|
|
67883
67878
|
* approval seam (`ctx.approval`). One ask per panel: a permission-colored
|
|
@@ -68002,7 +67997,7 @@ function ApprovalPanel({ approval, background = false, onDecide }) {
|
|
|
68002
67997
|
});
|
|
68003
67998
|
}
|
|
68004
67999
|
//#endregion
|
|
68005
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
68000
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/design-system/Pane.js
|
|
68006
68001
|
/**
|
|
68007
68002
|
* A pane — a region below the prompt bounded by a colored top line with a
|
|
68008
68003
|
* one-row gap above and horizontal padding, mirroring Claude Code's
|
|
@@ -68024,7 +68019,7 @@ function Pane({ children, color }) {
|
|
|
68024
68019
|
});
|
|
68025
68020
|
}
|
|
68026
68021
|
//#endregion
|
|
68027
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
68022
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/design-system/ListItem.js
|
|
68028
68023
|
/**
|
|
68029
68024
|
* A list item for selection UIs, mirroring Claude Code's
|
|
68030
68025
|
* design-system/ListItem.tsx: `❯` pointer for the focused row, `✓`
|
|
@@ -68121,7 +68116,7 @@ function flattenDeep(node) {
|
|
|
68121
68116
|
return node;
|
|
68122
68117
|
}
|
|
68123
68118
|
//#endregion
|
|
68124
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
68119
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/design-system/HintLine.js
|
|
68125
68120
|
/**
|
|
68126
68121
|
* Localized shortcut-hint line: renders a `t('hint-*')` string, with the
|
|
68127
68122
|
* `**primary shortcut**` segment (the main action's key, wrapped in `**` in
|
|
@@ -68138,7 +68133,7 @@ function HintLine({ text }) {
|
|
|
68138
68133
|
}, index) : part) });
|
|
68139
68134
|
}
|
|
68140
68135
|
//#endregion
|
|
68141
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
68136
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ExtensionDialog.js
|
|
68142
68137
|
/**
|
|
68143
68138
|
* The managed plugin dialog (`ctx.tuiDialogs`) — one panel rendering the
|
|
68144
68139
|
* store's current snapshot in the chat chrome (the slot approval/question
|
|
@@ -68398,7 +68393,7 @@ function InputDialog({ dialog, onDecide, onCancel }) {
|
|
|
68398
68393
|
});
|
|
68399
68394
|
}
|
|
68400
68395
|
//#endregion
|
|
68401
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
68396
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-search-highlight.js
|
|
68402
68397
|
/**
|
|
68403
68398
|
* Set the search highlight query on the Ink instance. Non-empty → all
|
|
68404
68399
|
* visible occurrences are inverted on the next frame (SGR 7, screen-buffer
|
|
@@ -68430,7 +68425,7 @@ function useSearchHighlight() {
|
|
|
68430
68425
|
}, [ink]);
|
|
68431
68426
|
}
|
|
68432
68427
|
//#endregion
|
|
68433
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
68428
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/hooks/use-terminal-title.js
|
|
68434
68429
|
/**
|
|
68435
68430
|
* Declaratively set the terminal tab/window title.
|
|
68436
68431
|
*
|
|
@@ -68453,7 +68448,7 @@ function useTerminalTitle(title) {
|
|
|
68453
68448
|
}, [title, writeRaw]);
|
|
68454
68449
|
}
|
|
68455
68450
|
//#endregion
|
|
68456
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
68451
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/sessions/format.js
|
|
68457
68452
|
/**
|
|
68458
68453
|
* Session browser formatting.
|
|
68459
68454
|
*
|
|
@@ -68702,7 +68697,7 @@ function projectName(cwd) {
|
|
|
68702
68697
|
return normalized.split("/").filter(Boolean).at(-1) ?? normalized;
|
|
68703
68698
|
}
|
|
68704
68699
|
//#endregion
|
|
68705
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
68700
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/Tooltip.js
|
|
68706
68701
|
/**
|
|
68707
68702
|
* Tooltip hover system — the terminal equivalent of the HTML `title`
|
|
68708
68703
|
* attribute. Attach {@link useTooltip} props to any Box whose visible text
|
|
@@ -68910,7 +68905,7 @@ function wrapTooltipContent(text, width) {
|
|
|
68910
68905
|
return rows;
|
|
68911
68906
|
}
|
|
68912
68907
|
//#endregion
|
|
68913
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
68908
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/messages/UserPromptMessage.js
|
|
68914
68909
|
/** User prompt row in the legacy CLI treatment: a full-width gray strip. */
|
|
68915
68910
|
function UserPromptMessage({ text, addMargin, isSelected = false, onClick }) {
|
|
68916
68911
|
const { columns } = useTerminalSize();
|
|
@@ -68939,7 +68934,7 @@ function UserPromptMessage({ text, addMargin, isSelected = false, onClick }) {
|
|
|
68939
68934
|
});
|
|
68940
68935
|
}
|
|
68941
68936
|
//#endregion
|
|
68942
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
68937
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/messages/AssistantTextMessage.js
|
|
68943
68938
|
/**
|
|
68944
68939
|
* Assistant text message: bullet + markdown body (mirroring Claude Code's default branch).
|
|
68945
68940
|
*
|
|
@@ -68972,7 +68967,7 @@ function AssistantTextMessage({ text, addMargin, isSelected = false, isExpanded
|
|
|
68972
68967
|
});
|
|
68973
68968
|
}
|
|
68974
68969
|
//#endregion
|
|
68975
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
68970
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/StreamingMarkdown.js
|
|
68976
68971
|
/**
|
|
68977
68972
|
* Renders markdown during streaming by splitting at the last top-level block
|
|
68978
68973
|
* boundary: everything before is stable (memoized, never re-parsed), only the
|
|
@@ -69162,7 +69157,7 @@ function StreamingMarkdown({ children, dimColor = false }) {
|
|
|
69162
69157
|
});
|
|
69163
69158
|
}
|
|
69164
69159
|
//#endregion
|
|
69165
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
69160
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/Spinner/spinnerUtils.js
|
|
69166
69161
|
/**
|
|
69167
69162
|
* Spinner 动画的通用工具集:平台相关的帧字符选择、RGB 颜色插值、
|
|
69168
69163
|
* HSL 色相转 RGB,以及 `rgb(...)` 颜色字符串的解析与记忆化。
|
|
@@ -69242,7 +69237,7 @@ function parseRGB(colorStr) {
|
|
|
69242
69237
|
return parsed;
|
|
69243
69238
|
}
|
|
69244
69239
|
//#endregion
|
|
69245
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
69240
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/shimmer.js
|
|
69246
69241
|
/** Header blue-white ladder: brand → ice → pale → soft ice flash.
|
|
69247
69242
|
* FLASH stays visibly blue (never pure white) — the highlight reads as a
|
|
69248
69243
|
* mist-brightened crest, not a white strobe. */
|
|
@@ -69258,7 +69253,7 @@ const ICE = {
|
|
|
69258
69253
|
b: 255
|
|
69259
69254
|
};
|
|
69260
69255
|
//#endregion
|
|
69261
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
69256
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/messages/AssistantThinkingMessage.js
|
|
69262
69257
|
/** Preview body rows — a FIXED row count (kimicode-style constant-height
|
|
69263
69258
|
* ticker). Ink's truncate slices the whole string across newlines as one
|
|
69264
69259
|
* logical line, so a single joined Text collapses to 1-2 rows whenever
|
|
@@ -69371,7 +69366,7 @@ function AssistantThinkingMessage({ thinking, textFull, addMargin, verbose, stre
|
|
|
69371
69366
|
});
|
|
69372
69367
|
}
|
|
69373
69368
|
//#endregion
|
|
69374
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
69369
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ToolUseLoader.js
|
|
69375
69370
|
const CATEGORY_BY_TOOL = {
|
|
69376
69371
|
bash: "exec",
|
|
69377
69372
|
powershell: "exec",
|
|
@@ -69952,7 +69947,7 @@ var ArrayDiff = class extends Diff {
|
|
|
69952
69947
|
};
|
|
69953
69948
|
new ArrayDiff();
|
|
69954
69949
|
//#endregion
|
|
69955
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
69950
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/cc/syntaxRuns.js
|
|
69956
69951
|
const ANSI16 = {
|
|
69957
69952
|
30: "rgb(0,0,0)",
|
|
69958
69953
|
31: "rgb(128,0,0)",
|
|
@@ -70037,7 +70032,7 @@ function syntaxThemeSignature(theme) {
|
|
|
70037
70032
|
return Object.values(SYNTAX_CLASS_TO_TOKEN).map((key) => palette[key] ?? "").join("|");
|
|
70038
70033
|
}
|
|
70039
70034
|
//#endregion
|
|
70040
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
70035
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/smoothReveal.js
|
|
70041
70036
|
/**
|
|
70042
70037
|
* Smooth streaming reveal — decouples "text the provider has delivered" from
|
|
70043
70038
|
* "text the screen is showing" (the oh-my-pi `display.smoothStreaming` idea,
|
|
@@ -70283,7 +70278,7 @@ function revealLinesOf(key, total, options) {
|
|
|
70283
70278
|
return Math.min(existing.revealed, total);
|
|
70284
70279
|
}
|
|
70285
70280
|
//#endregion
|
|
70286
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
70281
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/SplitDiffView.js
|
|
70287
70282
|
/** Replace tabs so width math and alignment hold (pi convention). */
|
|
70288
70283
|
const expandTabs = (text) => text.replaceAll(" ", " ");
|
|
70289
70284
|
/**
|
|
@@ -70592,7 +70587,7 @@ function SplitDiffView({ diffs, width, maxRows, verbose, toolBackground = "none"
|
|
|
70592
70587
|
});
|
|
70593
70588
|
}
|
|
70594
70589
|
//#endregion
|
|
70595
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
70590
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/SyntaxText.js
|
|
70596
70591
|
/** Async nested Text renderer. Lexes the complete payload before splitting. */
|
|
70597
70592
|
function SyntaxText({ text, language, sourceText = text, lineIndex = 0, color, dimColor }) {
|
|
70598
70593
|
const [highlighter, setHighlighter] = import_react.useState(null);
|
|
@@ -70636,7 +70631,7 @@ function SyntaxText({ text, language, sourceText = text, lineIndex = 0, color, d
|
|
|
70636
70631
|
}, index)) });
|
|
70637
70632
|
}
|
|
70638
70633
|
//#endregion
|
|
70639
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
70634
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/trajectory/format.js
|
|
70640
70635
|
/**
|
|
70641
70636
|
* Trajectory formatting — durations, clocks, badges and heat.
|
|
70642
70637
|
*
|
|
@@ -70838,7 +70833,7 @@ function ledgerLayout(columns) {
|
|
|
70838
70833
|
};
|
|
70839
70834
|
}
|
|
70840
70835
|
//#endregion
|
|
70841
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
70836
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/hooks/useRevealVersion.js
|
|
70842
70837
|
/**
|
|
70843
70838
|
* Reveal-frame wakeup as a React hook — bumps once per advancing ~30fps
|
|
70844
70839
|
* scheduler tick so consumers re-run their render-phase cursor reads
|
|
@@ -70868,7 +70863,7 @@ function useRevealVersion(enabled = true) {
|
|
|
70868
70863
|
return version;
|
|
70869
70864
|
}
|
|
70870
70865
|
//#endregion
|
|
70871
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
70866
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/messages/AssistantToolUseMessage.js
|
|
70872
70867
|
/** Tool display names: DSH emits lowercase tool ids (`bash`); Claude Code
|
|
70873
70868
|
* shows capitalized names (`Bash`). Map the common ones, fall back to the
|
|
70874
70869
|
* id with its first letter uppercased. */
|
|
@@ -71404,7 +71399,7 @@ function AssistantToolUseMessage({ tool, addMargin, verbose, isSelected = false,
|
|
|
71404
71399
|
});
|
|
71405
71400
|
}
|
|
71406
71401
|
//#endregion
|
|
71407
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
71402
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/Chat/SubagentMessage.js
|
|
71408
71403
|
/** The waterfall window is a Kimi Code style constant-height region. */
|
|
71409
71404
|
const WATERFALL_ROWS = 3;
|
|
71410
71405
|
/** Card left padding + the `│ ` gutter prefix. */
|
|
@@ -71612,7 +71607,7 @@ function SubagentMessage({ subagent, addMargin, activityFrames, onClick }) {
|
|
|
71612
71607
|
});
|
|
71613
71608
|
}
|
|
71614
71609
|
//#endregion
|
|
71615
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
71610
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/Chat/JobCard.js
|
|
71616
71611
|
/** Card left padding + the `│ ` gutter prefix. */
|
|
71617
71612
|
const WATERFALL_GUTTER = 4;
|
|
71618
71613
|
/** Static status marker — deliberately NOT the animated activity-indicator
|
|
@@ -71765,7 +71760,7 @@ function JobCard({ job, addMargin, onClick }) {
|
|
|
71765
71760
|
});
|
|
71766
71761
|
}
|
|
71767
71762
|
//#endregion
|
|
71768
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
71763
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/InterruptedByUser.js
|
|
71769
71764
|
/**
|
|
71770
71765
|
* The dim "interrupted" row shown when the user stops a turn, mirroring
|
|
71771
71766
|
* Claude Code's `InterruptedByUser.tsx`.
|
|
@@ -71780,7 +71775,7 @@ function InterruptedByUser() {
|
|
|
71780
71775
|
})] });
|
|
71781
71776
|
}
|
|
71782
71777
|
//#endregion
|
|
71783
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
71778
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/gitCommitStats.js
|
|
71784
71779
|
/**
|
|
71785
71780
|
* 当月 AI 代码生成占比统计(移植自 chatcode-cli 的同名服务)。
|
|
71786
71781
|
*
|
|
@@ -71948,7 +71943,7 @@ function computeAiRatioPercent(records) {
|
|
|
71948
71943
|
return clampPercent(aiAdoptedTotal / addedTotal * 100);
|
|
71949
71944
|
}
|
|
71950
71945
|
//#endregion
|
|
71951
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
71946
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/hooks/useAiRatio.js
|
|
71952
71947
|
/**
|
|
71953
71948
|
* 「AI代码生成占比」数据源 Hook(移植自 chatcode-cli 的同名 Hook)。
|
|
71954
71949
|
*
|
|
@@ -72012,7 +72007,7 @@ function useAiRatio(enabled = true) {
|
|
|
72012
72007
|
};
|
|
72013
72008
|
}
|
|
72014
72009
|
//#endregion
|
|
72015
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
72010
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/hooks/useNotification.js
|
|
72016
72011
|
/**
|
|
72017
72012
|
* 「通知」数据源 Hook(移植自 chatcode-cli 的 LogoV2/FooterInfo 通知行)。
|
|
72018
72013
|
*
|
|
@@ -72049,7 +72044,7 @@ function useNotification() {
|
|
|
72049
72044
|
return { message };
|
|
72050
72045
|
}
|
|
72051
72046
|
//#endregion
|
|
72052
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
72047
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/ink/truncateToWidth.js
|
|
72053
72048
|
/**
|
|
72054
72049
|
* Slice a string to at most `maxWidth` terminal cells, walking by code
|
|
72055
72050
|
* point so CJK wide characters never split mid-glyph. Assumes no ANSI in
|
|
@@ -72067,7 +72062,7 @@ function truncateToWidth(text, maxWidth) {
|
|
|
72067
72062
|
return out;
|
|
72068
72063
|
}
|
|
72069
72064
|
//#endregion
|
|
72070
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
72065
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/LogoV2.js
|
|
72071
72066
|
/** Main ChatCode CLI package version shown in the startup information panel. */
|
|
72072
72067
|
const VERSION = PRODUCT_VERSION;
|
|
72073
72068
|
const PRODUCT_LABEL = "chatcode-cli";
|
|
@@ -72338,7 +72333,7 @@ function LogoV2({ model, effort, cwd, whale = true, aiRatio, drift }) {
|
|
|
72338
72333
|
});
|
|
72339
72334
|
}
|
|
72340
72335
|
//#endregion
|
|
72341
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
72336
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/messages/MessageMetadata.js
|
|
72342
72337
|
/**
|
|
72343
72338
|
* Transcript-mode metadata row: `HH:MM · model`, right-aligned above the
|
|
72344
72339
|
* assistant text, mirroring Claude Code's MessageTimestamp + MessageModel,
|
|
@@ -72360,7 +72355,7 @@ function MessageMetadata({ timestamp, model }) {
|
|
|
72360
72355
|
});
|
|
72361
72356
|
}
|
|
72362
72357
|
//#endregion
|
|
72363
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
72358
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/narration.js
|
|
72364
72359
|
/**
|
|
72365
72360
|
* Strip the `⏵` self-narration line from assistant text. The
|
|
72366
72361
|
* dsh-working-activity narrate contract puts exactly one `⏵` line at the
|
|
@@ -72476,7 +72471,7 @@ function ellipsize(line, maxWidth) {
|
|
|
72476
72471
|
return `${out}…`;
|
|
72477
72472
|
}
|
|
72478
72473
|
//#endregion
|
|
72479
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
72474
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/MessageList.js
|
|
72480
72475
|
/**
|
|
72481
72476
|
* Transcript rows rendered in the Claude Code visual language: user prompts
|
|
72482
72477
|
* on a grey bubble with a `❯` pointer, assistant text with a `●` bullet and
|
|
@@ -73289,7 +73284,7 @@ function LogoHeader({ model, effort, cwd, whale = true, skipIntro = false }) {
|
|
|
73289
73284
|
});
|
|
73290
73285
|
}
|
|
73291
73286
|
//#endregion
|
|
73292
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
73287
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/TimelineRail.js
|
|
73293
73288
|
/** ▴ / ▾ (U+25B4 / U+25BE — the small triangles; CP437-safe on ConHost too). */
|
|
73294
73289
|
const CHEVRON_UP = " ▴";
|
|
73295
73290
|
const CHEVRON_DOWN = " ▾";
|
|
@@ -73483,7 +73478,7 @@ function TimelineRail({ handle, turns, activeId, upId, downId, terminalWidth, ho
|
|
|
73483
73478
|
}) });
|
|
73484
73479
|
}
|
|
73485
73480
|
//#endregion
|
|
73486
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
73481
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ScrollbarGutter.js
|
|
73487
73482
|
/** Thumb glyph across the 2-col gutter: solid, clearly positional —
|
|
73488
73483
|
* deliberately distinct from the timeline's ━━ active tick. */
|
|
73489
73484
|
const THUMB = "██";
|
|
@@ -73599,7 +73594,7 @@ function ScrollbarGutter({ handle, terminalWidth }) {
|
|
|
73599
73594
|
}) });
|
|
73600
73595
|
}
|
|
73601
73596
|
//#endregion
|
|
73602
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
73597
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/OverlayAbove.js
|
|
73603
73598
|
/**
|
|
73604
73599
|
* 瞬态面板的浮层容器:absolute 定位 + bottom:'100%' 把面板底边钉在锚点
|
|
73605
73600
|
* (父元素)顶边,向上覆盖转录尾部行,自身**不占布局高度**。
|
|
@@ -73632,7 +73627,7 @@ function OverlayAbove({ children, maxHeight }) {
|
|
|
73632
73627
|
});
|
|
73633
73628
|
}
|
|
73634
73629
|
//#endregion
|
|
73635
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
73630
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/trajectory/motion.js
|
|
73636
73631
|
/**
|
|
73637
73632
|
* Trajectory motion — five verbs, one shared clock, one hard rule.
|
|
73638
73633
|
*
|
|
@@ -73757,7 +73752,7 @@ function alert(tick, startTick) {
|
|
|
73757
73752
|
return Math.floor(age / 2) % 2 === 0 ? 1 : 0;
|
|
73758
73753
|
}
|
|
73759
73754
|
//#endregion
|
|
73760
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
73755
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/trajectory/effortIgnition.js
|
|
73761
73756
|
/** 三幕时间轴(ms):扫光全长、字样启动(波至中段)、字样渐亮、渐隐起止。边框扫光与输入行字样徽标共用。 */
|
|
73762
73757
|
const IGNITION_TIMELINE = {
|
|
73763
73758
|
sweepMs: 1e3,
|
|
@@ -73905,7 +73900,7 @@ function ignitionLineColors(options) {
|
|
|
73905
73900
|
return colors;
|
|
73906
73901
|
}
|
|
73907
73902
|
//#endregion
|
|
73908
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
73903
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/EffortChargeGlyph.js
|
|
73909
73904
|
/**
|
|
73910
73905
|
* EffortChargeGlyph — 输入提示前缀 `❯ ` 的最高档强调与充能。
|
|
73911
73906
|
*
|
|
@@ -73961,7 +73956,7 @@ function EffortChargeGlyph({ effort, levels, working }) {
|
|
|
73961
73956
|
});
|
|
73962
73957
|
}
|
|
73963
73958
|
//#endregion
|
|
73964
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
73959
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/EffortInputBorder.js
|
|
73965
73960
|
/**
|
|
73966
73961
|
* EffortInputBorder — 输入框层上的三幕点焰叠加(对齐 Codex 的完整
|
|
73967
73962
|
* 语义:光扫过、档位字样浮现、整体渐隐)。
|
|
@@ -74096,7 +74091,7 @@ function EffortInputBorder({ effort, levels, columns, onLight, idleColor, topRig
|
|
|
74096
74091
|
});
|
|
74097
74092
|
}
|
|
74098
74093
|
//#endregion
|
|
74099
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
74094
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/EffortTierBadge.js
|
|
74100
74095
|
/**
|
|
74101
74096
|
* EffortTierBadge — 输入行尾的档位字样徽标:三幕点焰的第二幕载体
|
|
74102
74097
|
* (与 EffortInputBorder 的双框扫光同一时间轴、同一触发),切到最高
|
|
@@ -74179,7 +74174,7 @@ function EffortTierBadge({ effort, levels, onLight, columns, leadingColumns }) {
|
|
|
74179
74174
|
});
|
|
74180
74175
|
}
|
|
74181
74176
|
//#endregion
|
|
74182
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
74177
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/clipboard.js
|
|
74183
74178
|
/**
|
|
74184
74179
|
* Cross-platform clipboard access for Ctrl+V paste. The TUI runs in raw
|
|
74185
74180
|
* mode, so the terminal never performs its own paste for Ctrl+V — the key
|
|
@@ -74693,7 +74688,7 @@ function formatClipboardInsert(content) {
|
|
|
74693
74688
|
return content.text.replace(/\r\n/g, "\n").replace(/\r/g, "\n");
|
|
74694
74689
|
}
|
|
74695
74690
|
//#endregion
|
|
74696
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
74691
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/externalEditor.js
|
|
74697
74692
|
/**
|
|
74698
74693
|
* External editor round-trip for the prompt input (issue #123): Ctrl+G dumps
|
|
74699
74694
|
* the current draft into a temp file, hands the terminal to `$VISUAL` /
|
|
@@ -74971,7 +74966,7 @@ async function editInExternalEditor(draft) {
|
|
|
74971
74966
|
}
|
|
74972
74967
|
}
|
|
74973
74968
|
//#endregion
|
|
74974
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
74969
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/PromptEditor.js
|
|
74975
74970
|
let editorNode = null;
|
|
74976
74971
|
const listeners = /* @__PURE__ */ new Set();
|
|
74977
74972
|
/** Publish (or withdraw, with null) the fullscreen editor subtree. */
|
|
@@ -75047,7 +75042,7 @@ function EditorButton({ label, hint, onClick, primary, accent }) {
|
|
|
75047
75042
|
});
|
|
75048
75043
|
}
|
|
75049
75044
|
//#endregion
|
|
75050
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
75045
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/history.js
|
|
75051
75046
|
const HISTORY_DIR = DATA_DIR;
|
|
75052
75047
|
const HISTORY_FILE = join(HISTORY_DIR, "history.jsonl");
|
|
75053
75048
|
const HISTORY_LOCK = `${HISTORY_FILE}.lock`;
|
|
@@ -75181,7 +75176,7 @@ function historyEntryId(entry, index = 0) {
|
|
|
75181
75176
|
return createHash("sha1").update(`${entry.text}\0${entry.ts}\0${index}`).digest("hex").slice(0, 12);
|
|
75182
75177
|
}
|
|
75183
75178
|
//#endregion
|
|
75184
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
75179
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/SuggestionCard.js
|
|
75185
75180
|
/**
|
|
75186
75181
|
* `/` 命令菜单与 `@` 文件菜单共用的圆角卡片外壳(与输入框 EffortInputBorder
|
|
75187
75182
|
* 同款 ╭╮╰╯ 视觉语言):
|
|
@@ -75313,7 +75308,7 @@ function splitQueryMatch(name, query) {
|
|
|
75313
75308
|
return startsWith(0) ?? (lastSpace >= 0 ? startsWith(lastSpace + 1) : null) ?? startsWith(name.lastIndexOf("/") + 1);
|
|
75314
75309
|
}
|
|
75315
75310
|
//#endregion
|
|
75316
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
75311
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/CommandSuggestions.js
|
|
75317
75312
|
/**
|
|
75318
75313
|
* The slash-command suggestion overlay, mirroring Claude Code's
|
|
75319
75314
|
* `PromptInputFooterSuggestions.tsx` (command layout only) wrapped in the
|
|
@@ -75393,7 +75388,7 @@ function CommandSuggestions({ commands, selectedIndex, columns, query = "", acce
|
|
|
75393
75388
|
});
|
|
75394
75389
|
}
|
|
75395
75390
|
//#endregion
|
|
75396
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
75391
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/FileSuggestions.js
|
|
75397
75392
|
/**
|
|
75398
75393
|
* The `@` file-completion overlay in CC's suggestion style, wrapped in the
|
|
75399
75394
|
* shared rounded `SuggestionCard` (与 `/` 命令菜单同一视觉语言):
|
|
@@ -75490,7 +75485,7 @@ function FileSuggestions({ files, selectedIndex, columns, query = "", loading, a
|
|
|
75490
75485
|
});
|
|
75491
75486
|
}
|
|
75492
75487
|
//#endregion
|
|
75493
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
75488
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/HelpMenu.js
|
|
75494
75489
|
/**
|
|
75495
75490
|
* The `?` help menu, mirroring Claude Code's `PromptInputHelpMenu.tsx`
|
|
75496
75491
|
* (three-column shortcut layout, trimmed to the keys dsh-tui actually binds).
|
|
@@ -75681,7 +75676,7 @@ function HelpCommandRow({ command, onPick }) {
|
|
|
75681
75676
|
});
|
|
75682
75677
|
}
|
|
75683
75678
|
//#endregion
|
|
75684
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
75679
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/PromptInput.js
|
|
75685
75680
|
const HISTORY_LIMIT = 50;
|
|
75686
75681
|
/**
|
|
75687
75682
|
* Paste fold (CC-style collapse with a visible preview, no black box):
|
|
@@ -78028,7 +78023,7 @@ function wordSelectionAt(text, offset, lo, hi) {
|
|
|
78028
78023
|
};
|
|
78029
78024
|
}
|
|
78030
78025
|
//#endregion
|
|
78031
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
78026
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/GoalTodoPanel.js
|
|
78032
78027
|
/** Maximum todo rows shown before the overflow line. */
|
|
78033
78028
|
const MAX_TODOS = 8;
|
|
78034
78029
|
const PHASE_LABEL = {
|
|
@@ -78274,7 +78269,7 @@ function GoalTodoPanel({ channel, collapsed = false, onToggle }) {
|
|
|
78274
78269
|
});
|
|
78275
78270
|
}
|
|
78276
78271
|
//#endregion
|
|
78277
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
78272
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/AutoRecapRow.js
|
|
78278
78273
|
/**
|
|
78279
78274
|
* Auto-recap row (`dsh-tui.recapOnOpen` setting): a quiet, dim recap shown
|
|
78280
78275
|
* at the bottom of the transcript after an automatic summary on session
|
|
@@ -78354,7 +78349,7 @@ function summarizeLoadedContext(context) {
|
|
|
78354
78349
|
return parts.join(" · ");
|
|
78355
78350
|
}
|
|
78356
78351
|
//#endregion
|
|
78357
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
78352
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/LoadedContextPanel.js
|
|
78358
78353
|
/** One named entry (section or dynamic context) with its full text. */
|
|
78359
78354
|
function Entry({ entry }) {
|
|
78360
78355
|
return (0, import_jsx_runtime.jsxs)(ThemedBox, {
|
|
@@ -78491,7 +78486,7 @@ function LoadedContextPanel({ context, open, onToggle }) {
|
|
|
78491
78486
|
});
|
|
78492
78487
|
}
|
|
78493
78488
|
//#endregion
|
|
78494
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
78489
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/MoonPhaseSpinner.js
|
|
78495
78490
|
/**
|
|
78496
78491
|
* Terminal-safe construction cycle derived from the supplied China Unicom
|
|
78497
78492
|
* knot mark. Every frame is one display cell, unlike emoji on mixed terminals.
|
|
@@ -78523,7 +78518,7 @@ function UnicomKnotSpinner({ time }) {
|
|
|
78523
78518
|
});
|
|
78524
78519
|
}
|
|
78525
78520
|
//#endregion
|
|
78526
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
78521
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ActivityLine.js
|
|
78527
78522
|
/**
|
|
78528
78523
|
* Context-pressure percentage (0–100) from the last usage snapshot, or
|
|
78529
78524
|
* undefined when unknown — shared by the spinner-line and status-line
|
|
@@ -78595,7 +78590,7 @@ function ActivityLine({ activity, activityFrames, warnPct, warnDanger, suffix })
|
|
|
78595
78590
|
});
|
|
78596
78591
|
}
|
|
78597
78592
|
//#endregion
|
|
78598
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
78593
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/trajectory/guards.js
|
|
78599
78594
|
/**
|
|
78600
78595
|
* Structural guards for the session events the trajectory projection reads.
|
|
78601
78596
|
*
|
|
@@ -78819,7 +78814,7 @@ function readTodos(data) {
|
|
|
78819
78814
|
};
|
|
78820
78815
|
}
|
|
78821
78816
|
//#endregion
|
|
78822
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
78817
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/trajectory/types.js
|
|
78823
78818
|
/**
|
|
78824
78819
|
* Trajectory projection — the data contract shared by the adapter-side fold
|
|
78825
78820
|
* and the UI-side scene (issue #80 evolution).
|
|
@@ -78886,7 +78881,7 @@ function previewText(raw, limit) {
|
|
|
78886
78881
|
return `${flat.slice(0, limit)}…`;
|
|
78887
78882
|
}
|
|
78888
78883
|
//#endregion
|
|
78889
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
78884
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/trajectory/projection.js
|
|
78890
78885
|
/**
|
|
78891
78886
|
* Trajectory projection — folding the session event log into ledger nodes.
|
|
78892
78887
|
*
|
|
@@ -79465,7 +79460,7 @@ function extendTrajectory(previous, events) {
|
|
|
79465
79460
|
};
|
|
79466
79461
|
}
|
|
79467
79462
|
//#endregion
|
|
79468
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
79463
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/trajectory/aggregate.js
|
|
79469
79464
|
/**
|
|
79470
79465
|
* Trajectory aggregate — the hotspot view's data and the session totals.
|
|
79471
79466
|
*
|
|
@@ -79686,7 +79681,7 @@ function modelTiming(timing) {
|
|
|
79686
79681
|
};
|
|
79687
79682
|
}
|
|
79688
79683
|
//#endregion
|
|
79689
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
79684
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/trajectory/inspect.js
|
|
79690
79685
|
/**
|
|
79691
79686
|
* Inspector detail — full content, resolved on demand.
|
|
79692
79687
|
*
|
|
@@ -79846,7 +79841,7 @@ function inspectNode(node, events) {
|
|
|
79846
79841
|
};
|
|
79847
79842
|
}
|
|
79848
79843
|
//#endregion
|
|
79849
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
79844
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/trajectory/wave.js
|
|
79850
79845
|
/**
|
|
79851
79846
|
* Wave band projection — the whole session compressed onto one row of glyphs.
|
|
79852
79847
|
*
|
|
@@ -80019,7 +80014,7 @@ function columnOfIndex(band, ledgerIndex) {
|
|
|
80019
80014
|
return 0;
|
|
80020
80015
|
}
|
|
80021
80016
|
//#endregion
|
|
80022
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
80017
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/trajectory/MiniWake.js
|
|
80023
80018
|
/**
|
|
80024
80019
|
* The mini wake — the whole session as a dozen glyphs in the status line.
|
|
80025
80020
|
*
|
|
@@ -80122,7 +80117,7 @@ function toHex$1(colour) {
|
|
|
80122
80117
|
return `#${hex(parsed.r)}${hex(parsed.g)}${hex(parsed.b)}`;
|
|
80123
80118
|
}
|
|
80124
80119
|
//#endregion
|
|
80125
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
80120
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/screens/StatusMetrics.js
|
|
80126
80121
|
/**
|
|
80127
80122
|
* Status-line metric renderers, ported from two pi extensions:
|
|
80128
80123
|
* - `pi-nano-context`: segmented context progress bar (morandi pastel
|
|
@@ -80398,7 +80393,7 @@ function tpsStats(samples, nowMs) {
|
|
|
80398
80393
|
};
|
|
80399
80394
|
}
|
|
80400
80395
|
//#endregion
|
|
80401
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
80396
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ContextBarView.js
|
|
80402
80397
|
/** Free-segment colors, mirroring StatusMetrics' dark-theme defaults. */
|
|
80403
80398
|
const FREE_FILL = "#E8E8E8";
|
|
80404
80399
|
const FREE_TEXT = "#4A4A4A";
|
|
@@ -80465,7 +80460,7 @@ function ContextBarView({ segments, usedTokens, contextWindow, width, colors, on
|
|
|
80465
80460
|
});
|
|
80466
80461
|
}
|
|
80467
80462
|
//#endregion
|
|
80468
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
80463
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/chatCodeTokenTrend.js
|
|
80469
80464
|
/**
|
|
80470
80465
|
* ChatCode 今日总 Token 消耗量查询(移植自 chatcode-cli 的 chatCodeTokenTrend)。
|
|
80471
80466
|
*
|
|
@@ -80540,7 +80535,7 @@ async function fetchTodayTotalTokens(post, signal) {
|
|
|
80540
80535
|
}
|
|
80541
80536
|
}
|
|
80542
80537
|
//#endregion
|
|
80543
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
80538
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/hooks/useTodayTotalTokens.js
|
|
80544
80539
|
/**
|
|
80545
80540
|
* 「今日总Token消耗」数据源 Hook(移植自 chatcode-cli 的 useTokenDashboard)。
|
|
80546
80541
|
*
|
|
@@ -80572,7 +80567,7 @@ function useTodayTotalTokens(enabled = true) {
|
|
|
80572
80567
|
return { totalTokens };
|
|
80573
80568
|
}
|
|
80574
80569
|
//#endregion
|
|
80575
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
80570
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/TokenDashboard.js
|
|
80576
80571
|
const BAR_WIDTH = 14;
|
|
80577
80572
|
/** Yuanjing-compatible percentage label centered inside a fixed-width bar. */
|
|
80578
80573
|
function LabeledBar({ ratio, percent }) {
|
|
@@ -80656,7 +80651,7 @@ function TokenDashboard({ todayTokens, usedTokens, contextWindow, compact = fals
|
|
|
80656
80651
|
});
|
|
80657
80652
|
}
|
|
80658
80653
|
//#endregion
|
|
80659
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
80654
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/screens/StatusLine.js
|
|
80660
80655
|
/** Stable fallback for stubbed channels: verify/repro harnesses render the
|
|
80661
80656
|
* real Chat with partial channel literals that predate the jobs field. */
|
|
80662
80657
|
const NO_BACKGROUND_JOBS = [];
|
|
@@ -81514,7 +81509,7 @@ const fallbackSymbols = {
|
|
|
81514
81509
|
const figures = isUnicodeSupported() ? mainSymbols : fallbackSymbols;
|
|
81515
81510
|
Object.entries(specialMainSymbols);
|
|
81516
81511
|
//#endregion
|
|
81517
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
81512
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/design-system/Byline.js
|
|
81518
81513
|
/**
|
|
81519
81514
|
* Joins children with a middot separator (" · ") for inline metadata display
|
|
81520
81515
|
* (in the Claude Code visual language). Automatically filters out
|
|
@@ -81530,7 +81525,7 @@ function Byline({ children }) {
|
|
|
81530
81525
|
}), child] }, (0, import_react.isValidElement)(child) ? child.key ?? index : index)) });
|
|
81531
81526
|
}
|
|
81532
81527
|
//#endregion
|
|
81533
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
81528
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/Spinner/GlimmerMessage.js
|
|
81534
81529
|
const ERROR_RED$1 = {
|
|
81535
81530
|
r: 171,
|
|
81536
81531
|
g: 43,
|
|
@@ -81620,7 +81615,7 @@ function GlimmerMessage({ message, mode, messageColor, glimmerIndex, flashOpacit
|
|
|
81620
81615
|
})] });
|
|
81621
81616
|
}
|
|
81622
81617
|
//#endregion
|
|
81623
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
81618
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/Spinner/SpinnerGlyph.js
|
|
81624
81619
|
const DEFAULT_CHARACTERS = getDefaultCharacters();
|
|
81625
81620
|
const SPINNER_FRAMES$1 = [...DEFAULT_CHARACTERS, ...[...DEFAULT_CHARACTERS].reverse()];
|
|
81626
81621
|
const REDUCED_MOTION_DOT = "●";
|
|
@@ -81681,7 +81676,7 @@ function SpinnerGlyph({ frame, messageColor, stalledIntensity = 0, reducedMotion
|
|
|
81681
81676
|
});
|
|
81682
81677
|
}
|
|
81683
81678
|
//#endregion
|
|
81684
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
81679
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/Spinner/useStalledAnimation.js
|
|
81685
81680
|
/**
|
|
81686
81681
|
* Tracks the transition to red when tokens stop flowing (mirroring Claude Code's `Spinner/useStalledAnimation.ts`). Driven by the parent's animation
|
|
81687
81682
|
* clock time instead of independent intervals, so it slows down when the
|
|
@@ -81738,7 +81733,7 @@ function useStalledAnimation(time, currentResponseLength, hasActiveTools = false
|
|
|
81738
81733
|
};
|
|
81739
81734
|
}
|
|
81740
81735
|
//#endregion
|
|
81741
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
81736
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/Spinner/SpinnerAnimationRow.js
|
|
81742
81737
|
const SEP_WIDTH = stringWidth$1(" · ");
|
|
81743
81738
|
const THINKING_BARE_WIDTH = stringWidth$1("thinking");
|
|
81744
81739
|
const SHOW_TOKENS_AFTER_MS = 3e4;
|
|
@@ -81905,7 +81900,7 @@ function SpinnerModeGlyph({ mode }) {
|
|
|
81905
81900
|
}
|
|
81906
81901
|
}
|
|
81907
81902
|
//#endregion
|
|
81908
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
81903
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/WorkingSpinner.js
|
|
81909
81904
|
/**
|
|
81910
81905
|
* The working spinner block shown between the transcript and the prompt
|
|
81911
81906
|
* input while a turn is in flight. Mirrors Claude Code's `Spinner.tsx`
|
|
@@ -81975,7 +81970,7 @@ function useThinkingStatus(isThinking) {
|
|
|
81975
81970
|
return thinkingStatus;
|
|
81976
81971
|
}
|
|
81977
81972
|
//#endregion
|
|
81978
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
81973
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ModelPicker.js
|
|
81979
81974
|
/**
|
|
81980
81975
|
* Model picker in the CC ModelPicker style: a permission-colored Pane with
|
|
81981
81976
|
* the rows as Select entries (❯ focus pointer, ✓ on the active row,
|
|
@@ -82035,7 +82030,7 @@ function ModelPicker(props) {
|
|
|
82035
82030
|
});
|
|
82036
82031
|
}
|
|
82037
82032
|
//#endregion
|
|
82038
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
82033
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/PluginSceneBoundary.js
|
|
82039
82034
|
/**
|
|
82040
82035
|
* Error boundary for plugin scenes (dsh-tui-scenes). A scene component is
|
|
82041
82036
|
* third-party code rendered inside Chat's tree: without a boundary a render
|
|
@@ -82061,7 +82056,7 @@ var PluginSceneBoundary = class extends import_react.Component {
|
|
|
82061
82056
|
}
|
|
82062
82057
|
};
|
|
82063
82058
|
//#endregion
|
|
82064
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
82059
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/design-system/LoadingState.js
|
|
82065
82060
|
const SPINNER_FRAMES = [...getDefaultCharacters(), ...[...getDefaultCharacters()].reverse()];
|
|
82066
82061
|
/**
|
|
82067
82062
|
* A spinner with a loading message for async operations, mirroring Claude Code's design-system/LoadingState.tsx (using the small animated glyph).
|
|
@@ -82092,7 +82087,7 @@ function LoadingState({ message, bold = false, dimColor = false, subtitle }) {
|
|
|
82092
82087
|
});
|
|
82093
82088
|
}
|
|
82094
82089
|
//#endregion
|
|
82095
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
82090
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/SkillsPicker.js
|
|
82096
82091
|
/** 来源桶 → 本地化标签(未知桶原样显示,SkillSource 对自定义桶开放)。 */
|
|
82097
82092
|
function sourceLabel(source) {
|
|
82098
82093
|
switch (source) {
|
|
@@ -82170,7 +82165,7 @@ function SkillsPickerLoading() {
|
|
|
82170
82165
|
});
|
|
82171
82166
|
}
|
|
82172
82167
|
//#endregion
|
|
82173
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
82168
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/SearchBox.js
|
|
82174
82169
|
/**
|
|
82175
82170
|
* Window a single-line query around the caret so the visible slice fits
|
|
82176
82171
|
* `avail` display cells (CJK display width, code-point safe — `[...s]`
|
|
@@ -82308,7 +82303,7 @@ function SearchBox({ query, placeholder = "Search…", isFocused, isTerminalFocu
|
|
|
82308
82303
|
});
|
|
82309
82304
|
}
|
|
82310
82305
|
//#endregion
|
|
82311
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
82306
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/sessions/SessionListRow.js
|
|
82312
82307
|
/**
|
|
82313
82308
|
* One session in the browser's list: a title line and a metadata line.
|
|
82314
82309
|
*
|
|
@@ -82389,7 +82384,7 @@ function SessionListRow({ session, width, depth, focused, pinned, now, onClick,
|
|
|
82389
82384
|
});
|
|
82390
82385
|
}
|
|
82391
82386
|
//#endregion
|
|
82392
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
82387
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/sessions/SessionPreview.js
|
|
82393
82388
|
/** Role marker and colour for a preview entry. */
|
|
82394
82389
|
const ROLE = {
|
|
82395
82390
|
user: {
|
|
@@ -82480,7 +82475,7 @@ function SessionPreview({ session, entries, loading, width, height, home, now })
|
|
|
82480
82475
|
});
|
|
82481
82476
|
}
|
|
82482
82477
|
//#endregion
|
|
82483
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
82478
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/sessions/WorkspaceListRow.js
|
|
82484
82479
|
/** One two-line working-directory choice in the /resume browser. */
|
|
82485
82480
|
function WorkspaceListRow({ workspace, all, totalProjects, totalSessions, width, focused, selected, home, now, onClick }) {
|
|
82486
82481
|
const [hovered, setHovered] = (0, import_react.useState)(false);
|
|
@@ -82525,7 +82520,7 @@ function WorkspaceListRow({ workspace, all, totalProjects, totalSessions, width,
|
|
|
82525
82520
|
});
|
|
82526
82521
|
}
|
|
82527
82522
|
//#endregion
|
|
82528
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
82523
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/sessionPins.js
|
|
82529
82524
|
/**
|
|
82530
82525
|
* Pinned sessions for the `/resume` browser, kept at
|
|
82531
82526
|
* `~/.chatcode-cli/tui/session-pins.json` (a JSON array of session ids) so the pins
|
|
@@ -82674,7 +82669,7 @@ function setSessionPinned(id, pinned, dir = DATA_DIR) {
|
|
|
82674
82669
|
}
|
|
82675
82670
|
}
|
|
82676
82671
|
//#endregion
|
|
82677
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
82672
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/screens/SessionBrowser.js
|
|
82678
82673
|
/**
|
|
82679
82674
|
* Rows the layout cannot do without: the header, the four-row scope/search
|
|
82680
82675
|
* card, the notice slot, and the hints. Everything else yields before these.
|
|
@@ -82786,10 +82781,8 @@ function SessionBrowser({ channel, home, sameProject, onClose }) {
|
|
|
82786
82781
|
const topRef = import_react.useRef(0);
|
|
82787
82782
|
const workspaceTopRef = import_react.useRef(0);
|
|
82788
82783
|
const [mode, setMode] = import_react.useState("list");
|
|
82789
|
-
const [deleteScope, setDeleteScope] = import_react.useState([]);
|
|
82790
|
-
const [deleteArmed, setDeleteArmed] = import_react.useState(false);
|
|
82791
82784
|
const archivedOnly = filters.archivedOnly === true;
|
|
82792
|
-
const menuActions = archivedOnly ? ["open"
|
|
82785
|
+
const menuActions = archivedOnly ? ["open"] : MENU_ACTIONS;
|
|
82793
82786
|
const [renameText, setRenameText] = import_react.useState("");
|
|
82794
82787
|
/** Hover state for the confirm rows (only one is ever mounted). */
|
|
82795
82788
|
const [confirmHovered, setConfirmHovered] = import_react.useState(false);
|
|
@@ -83120,7 +83113,7 @@ function SessionBrowser({ channel, home, sameProject, onClose }) {
|
|
|
83120
83113
|
const soloPreview = previewOpen && canPreview && sessionAreaVisible && !splitPreview;
|
|
83121
83114
|
const previewWidth = splitPreview ? Math.min(56, Math.floor(sessionAreaWidth * .42)) : sessionAreaWidth;
|
|
83122
83115
|
const listWidth = Math.max(20, sessionAreaWidth - (splitPreview ? previewWidth : 0));
|
|
83123
|
-
const extraLines = mode === "list" ? 0 :
|
|
83116
|
+
const extraLines = mode === "list" ? 0 : 1;
|
|
83124
83117
|
const ruleBudget = Math.max(0, Math.min(RULE_PRIORITY$1.length, rows - mandatoryLines - extraLines - WORKSPACE_ROW_HEIGHT));
|
|
83125
83118
|
const rules = new Set(RULE_PRIORITY$1.slice(0, ruleBudget));
|
|
83126
83119
|
const listHeight = Math.max(0, rows - mandatoryLines - extraLines - rules.size);
|
|
@@ -83206,22 +83199,12 @@ function SessionBrowser({ channel, home, sameProject, onClose }) {
|
|
|
83206
83199
|
if (workspaceState === void 0) apply();
|
|
83207
83200
|
else runAction(apply);
|
|
83208
83201
|
};
|
|
83209
|
-
const runDelete = (target) =>
|
|
83210
|
-
|
|
83211
|
-
|
|
83212
|
-
|
|
83213
|
-
|
|
83214
|
-
|
|
83215
|
-
runAction(async () => {
|
|
83216
|
-
try {
|
|
83217
|
-
if (channel.sessionDeletionScope === void 0) throw new Error(t("resume-delete-unavailable"));
|
|
83218
|
-
setDeleteScope(await channel.sessionDeletionScope(target.id));
|
|
83219
|
-
setDeleteArmed(false);
|
|
83220
|
-
setMode("confirm-delete");
|
|
83221
|
-
} catch (error) {
|
|
83222
|
-
report(message$2(error), "error");
|
|
83223
|
-
}
|
|
83224
|
-
});
|
|
83202
|
+
const runDelete = (target) => {
|
|
83203
|
+
if (archivedOnly) return;
|
|
83204
|
+
mutate(() => channel.archiveSession(target.id), t("resume-archived", { name: target.title.text }), t("resume-archive-failed", { name: target.title.text }));
|
|
83205
|
+
};
|
|
83206
|
+
const requestDelete = (_target) => {
|
|
83207
|
+
if (!archivedOnly) setMode("confirm-delete");
|
|
83225
83208
|
};
|
|
83226
83209
|
const restoreSession = (target) => mutate(() => channel.unarchiveSession?.(target.id) ?? Promise.resolve(false), t("resume-restored", { name: target.title.text }), t("resume-restore-failed", { name: target.title.text }));
|
|
83227
83210
|
const openOrRestore = (target) => {
|
|
@@ -83269,9 +83252,8 @@ function SessionBrowser({ channel, home, sameProject, onClose }) {
|
|
|
83269
83252
|
if (mode === "confirm-delete") {
|
|
83270
83253
|
if (isPlainReturn(key)) {
|
|
83271
83254
|
setMode("list");
|
|
83272
|
-
if (focused !== void 0
|
|
83273
|
-
} else if (
|
|
83274
|
-
else if (key.escape) setMode("list");
|
|
83255
|
+
if (focused !== void 0) runDelete(focused);
|
|
83256
|
+
} else if (key.escape) setMode("list");
|
|
83275
83257
|
return;
|
|
83276
83258
|
}
|
|
83277
83259
|
if (mode === "confirm-clean") {
|
|
@@ -83351,7 +83333,7 @@ function SessionBrowser({ channel, home, sameProject, onClose }) {
|
|
|
83351
83333
|
} else if (isMod(key) && input === "p" && !archivedOnly) {
|
|
83352
83334
|
const target = sessionAt(view.rows, focusRef.current);
|
|
83353
83335
|
if (target !== void 0) togglePin(target);
|
|
83354
|
-
} else if (isMod(key) && input === "d" && focused !== void 0) requestDelete(focused);
|
|
83336
|
+
} else if (isMod(key) && input === "d" && !archivedOnly && focused !== void 0) requestDelete(focused);
|
|
83355
83337
|
else if (isMod(key) && input === "x" && !archivedOnly && view.emptyCount > 0) setMode("confirm-clean");
|
|
83356
83338
|
else if (key.backspace || key.delete) applyFilters((current) => ({ query: current.query.slice(0, -1) }));
|
|
83357
83339
|
else if (!isMod(key) && !key.meta && !key.super && input && !key.return) {
|
|
@@ -83374,7 +83356,7 @@ function SessionBrowser({ channel, home, sameProject, onClose }) {
|
|
|
83374
83356
|
const scopeRow = spreadRow(archivedOnly ? t("resume-archived-title") : level === "workspaces" ? `▣ ${t("session-workspace-select-title")}` : `▣ ${t("session-workspace-scope")} ${scope}`, archivedOnly ? t("resume-hint-archived-list", { mod: modLabel }) : level === "workspaces" ? t("session-workspace-project-count", { n: workspaceGroups.length }) : t("session-workspace-switch"), inputBudget);
|
|
83375
83357
|
const activeQuery = level === "workspaces" ? workspaceQuery : filters.query;
|
|
83376
83358
|
const searchPlaceholder = level === "workspaces" ? t("session-workspace-search-placeholder") : t("session-search-placeholder", { scope });
|
|
83377
|
-
const hint = mode === "confirm-delete" || mode === "confirm-clean" ? fitHint$2([t(
|
|
83359
|
+
const hint = mode === "confirm-delete" || mode === "confirm-clean" ? fitHint$2([t("resume-hint-archive")], inputBudget) : mode === "rename" ? fitHint$2([t("resume-hint-rename")], inputBudget) : level === "workspaces" ? fitHint$2([t("session-hint-workspaces", { mod: modLabel }), t("session-hint-workspaces-short")], inputBudget) : fitHint$2([
|
|
83378
83360
|
t(archivedOnly ? "resume-hint-archived-list" : "session-hint-list-archive", {
|
|
83379
83361
|
mod: modLabel,
|
|
83380
83362
|
projects: filters.allProjects ? t("session-toggle-on") : t("session-toggle-off"),
|
|
@@ -83568,9 +83550,9 @@ function SessionBrowser({ channel, home, sameProject, onClose }) {
|
|
|
83568
83550
|
children: notice === void 0 ? " " : ` ${notice.tone === "error" ? "✗" : "✓"} ${truncateWidth$1(notice.text, Math.max(0, columns - 4))}`
|
|
83569
83551
|
})
|
|
83570
83552
|
}),
|
|
83571
|
-
mode === "confirm-delete" && focused !== void 0 && (0, import_jsx_runtime.
|
|
83553
|
+
mode === "confirm-delete" && focused !== void 0 && (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: (0, import_jsx_runtime.jsx)(ThemedBox, {
|
|
83572
83554
|
flexShrink: 0,
|
|
83573
|
-
onClick:
|
|
83555
|
+
onClick: () => {
|
|
83574
83556
|
setMode("list");
|
|
83575
83557
|
runDelete(focused);
|
|
83576
83558
|
},
|
|
@@ -83579,30 +83561,9 @@ function SessionBrowser({ channel, home, sameProject, onClose }) {
|
|
|
83579
83561
|
backgroundColor: confirmHovered ? "userMessageBackgroundHover" : void 0,
|
|
83580
83562
|
children: (0, import_jsx_runtime.jsx)(ThemedText, {
|
|
83581
83563
|
color: "error",
|
|
83582
|
-
children: ` ${truncateWidth$1(t(
|
|
83583
|
-
name: focused.title.text,
|
|
83584
|
-
n: deleteScope.length
|
|
83585
|
-
}), inputBudget)}`
|
|
83564
|
+
children: ` ${truncateWidth$1(t("resume-archive-confirm", { name: focused.title.text }), inputBudget)}`
|
|
83586
83565
|
})
|
|
83587
|
-
})
|
|
83588
|
-
flexShrink: 0,
|
|
83589
|
-
children: [(0, import_jsx_runtime.jsx)(ThemedBox, {
|
|
83590
|
-
onClick: () => setMode("list"),
|
|
83591
|
-
children: (0, import_jsx_runtime.jsx)(ThemedText, {
|
|
83592
|
-
color: !deleteArmed ? "remember" : void 0,
|
|
83593
|
-
children: ` ${!deleteArmed ? "❯ " : ""}${t("tree-menu-cancel")} `
|
|
83594
|
-
})
|
|
83595
|
-
}), (0, import_jsx_runtime.jsx)(ThemedBox, {
|
|
83596
|
-
onClick: () => {
|
|
83597
|
-
setMode("list");
|
|
83598
|
-
runDelete(focused);
|
|
83599
|
-
},
|
|
83600
|
-
children: (0, import_jsx_runtime.jsx)(ThemedText, {
|
|
83601
|
-
color: "error",
|
|
83602
|
-
children: ` ${deleteArmed ? "❯ " : ""}${t("resume-menu-delete")} `
|
|
83603
|
-
})
|
|
83604
|
-
})]
|
|
83605
|
-
})] }),
|
|
83566
|
+
}) }),
|
|
83606
83567
|
mode === "confirm-clean" && (0, import_jsx_runtime.jsx)(ThemedBox, {
|
|
83607
83568
|
flexShrink: 0,
|
|
83608
83569
|
onClick: () => {
|
|
@@ -83666,7 +83627,7 @@ function SessionBrowser({ channel, home, sameProject, onClose }) {
|
|
|
83666
83627
|
},
|
|
83667
83628
|
children: (0, import_jsx_runtime.jsx)(ThemedText, {
|
|
83668
83629
|
color: action === "delete" ? "error" : void 0,
|
|
83669
|
-
children: ` ${index === menu.item ? "❯" : " "} ${t(action === "delete" ?
|
|
83630
|
+
children: ` ${index === menu.item ? "❯" : " "} ${t(action === "delete" ? "resume-menu-archive" : action === "open" && archivedOnly ? "resume-menu-restore" : menuLabelKey(action, effectivePins.has(menuTarget.id)))}`
|
|
83670
83631
|
})
|
|
83671
83632
|
}, action))
|
|
83672
83633
|
})
|
|
@@ -83674,7 +83635,7 @@ function SessionBrowser({ channel, home, sameProject, onClose }) {
|
|
|
83674
83635
|
});
|
|
83675
83636
|
}
|
|
83676
83637
|
//#endregion
|
|
83677
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
83638
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/screens/SessionTree.js
|
|
83678
83639
|
/** Local HH:MM (or MM/DD HH:MM when older than this year). */
|
|
83679
83640
|
function formatTime(at, now) {
|
|
83680
83641
|
const date = new Date(at);
|
|
@@ -84430,7 +84391,7 @@ function PreviewPane({ entry, meta, width, height, liveSessionId, now, compact }
|
|
|
84430
84391
|
});
|
|
84431
84392
|
}
|
|
84432
84393
|
//#endregion
|
|
84433
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
84394
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/screens/Settings.js
|
|
84434
84395
|
/** Pick the provider-owned translation for the active language. */
|
|
84435
84396
|
function pick(text, descriptions) {
|
|
84436
84397
|
return descriptions?.[getLang()] ?? text;
|
|
@@ -85255,7 +85216,7 @@ function Settings({ channel, onClose, initialGroup }) {
|
|
|
85255
85216
|
});
|
|
85256
85217
|
}
|
|
85257
85218
|
//#endregion
|
|
85258
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85219
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/WorkspacePicker.js
|
|
85259
85220
|
const WINDOW$1 = 8;
|
|
85260
85221
|
/** `/workspace` target picker contributed by local and optional providers. */
|
|
85261
85222
|
function WorkspacePicker({ targets, focusIndex, currentCwd, onPick }) {
|
|
@@ -85293,7 +85254,7 @@ function WorkspacePicker({ targets, focusIndex, currentCwd, onPick }) {
|
|
|
85293
85254
|
});
|
|
85294
85255
|
}
|
|
85295
85256
|
//#endregion
|
|
85296
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85257
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/Select.js
|
|
85297
85258
|
/**
|
|
85298
85259
|
* A single-choice select list in the CC CustomSelect style (ported visual:
|
|
85299
85260
|
* ListItem rows with ❯ focus pointer, ✓ selected checkmark, descriptions,
|
|
@@ -85320,7 +85281,7 @@ function Select({ options, focusIndex, selectedValue, visibleOptionCount = 5, on
|
|
|
85320
85281
|
});
|
|
85321
85282
|
}
|
|
85322
85283
|
//#endregion
|
|
85323
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85284
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/WorkspaceMenuPicker.js
|
|
85324
85285
|
/**
|
|
85325
85286
|
* Bare `/workspace` action menu: the built-in subcommands (resume / rename /
|
|
85326
85287
|
* open) plus any dynamically registered workspace extensions. Enter runs the
|
|
@@ -85361,7 +85322,7 @@ function WorkspaceMenuPicker({ options, focusIndex, onPick }) {
|
|
|
85361
85322
|
});
|
|
85362
85323
|
}
|
|
85363
85324
|
//#endregion
|
|
85364
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85325
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/WorkspaceFlowPicker.js
|
|
85365
85326
|
const WINDOW = 8;
|
|
85366
85327
|
/** Generic nested choice surface returned by a workspace provider command. */
|
|
85367
85328
|
function WorkspaceFlowPicker({ title, choices, focusIndex, busy = false, input = null, onPick }) {
|
|
@@ -85419,7 +85380,7 @@ function WorkspaceFlowPicker({ title, choices, focusIndex, busy = false, input =
|
|
|
85419
85380
|
});
|
|
85420
85381
|
}
|
|
85421
85382
|
//#endregion
|
|
85422
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85383
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ActivityPicker.js
|
|
85423
85384
|
/**
|
|
85424
85385
|
* Working-activity indicator picker in the CC ModelPicker style (ported
|
|
85425
85386
|
* from the pi extension's `/activity` interactive select): a
|
|
@@ -85461,7 +85422,7 @@ function ActivityPicker({ focusIndex, currentPreset, onPick }) {
|
|
|
85461
85422
|
});
|
|
85462
85423
|
}
|
|
85463
85424
|
//#endregion
|
|
85464
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85425
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ColorPicker.js
|
|
85465
85426
|
/**
|
|
85466
85427
|
* Session accent color picker (bare `/color`): a permission-colored Pane
|
|
85467
85428
|
* listing the whole palette with a colored swatch per row, `❯` focus
|
|
@@ -85505,7 +85466,7 @@ function ColorPicker({ focusIndex, currentColor, onPick }) {
|
|
|
85505
85466
|
});
|
|
85506
85467
|
}
|
|
85507
85468
|
//#endregion
|
|
85508
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85469
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/EffortSlider.js
|
|
85509
85470
|
/**
|
|
85510
85471
|
* Reasoning-effort slider (`/effort`): a rheostat row of the live route's
|
|
85511
85472
|
* adapter-owned levels in adapter order, ←/→ moving focus (each move applies
|
|
@@ -85564,7 +85525,7 @@ function EffortSlider({ options, focusIndex, currentId, onPick }) {
|
|
|
85564
85525
|
});
|
|
85565
85526
|
}
|
|
85566
85527
|
//#endregion
|
|
85567
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85528
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/PresetPicker.js
|
|
85568
85529
|
/**
|
|
85569
85530
|
* Agent-preset picker (issue #8) in the CC ModelPicker style — same chrome
|
|
85570
85531
|
* as the ActivityPicker: a permission-colored Pane listing every roster
|
|
@@ -85608,7 +85569,7 @@ function PresetPicker({ presets, focusIndex, currentPreset, onPick }) {
|
|
|
85608
85569
|
});
|
|
85609
85570
|
}
|
|
85610
85571
|
//#endregion
|
|
85611
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85572
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/PermissionsPicker.js
|
|
85612
85573
|
/**
|
|
85613
85574
|
* `/permission` sandbox-preset picker. The command itself is registered by
|
|
85614
85575
|
* the harness side (dsh-sandbox-policy / dsh-base permission-presets row);
|
|
@@ -85655,7 +85616,7 @@ function PermissionsPicker({ options, focusIndex, currentValue, cwd, onPick }) {
|
|
|
85655
85616
|
});
|
|
85656
85617
|
}
|
|
85657
85618
|
//#endregion
|
|
85658
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85619
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/PlanPicker.js
|
|
85659
85620
|
/**
|
|
85660
85621
|
* `/plan` on/off picker. The command itself is registered by dsh-plan-mode
|
|
85661
85622
|
* on the harness side; bare `/plan` opens this picker (with the current
|
|
@@ -85700,7 +85661,7 @@ function PlanPicker({ focusIndex, currentOn, onPick }) {
|
|
|
85700
85661
|
});
|
|
85701
85662
|
}
|
|
85702
85663
|
//#endregion
|
|
85703
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85664
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/LangPicker.js
|
|
85704
85665
|
/**
|
|
85705
85666
|
* `/lang` en/zh picker: bare `/lang` opens this picker (the current language
|
|
85706
85667
|
* marked) and Enter applies the choice through the same path as `/lang <id>`.
|
|
@@ -85739,7 +85700,7 @@ function LangPicker({ focusIndex, currentLang, onPick }) {
|
|
|
85739
85700
|
});
|
|
85740
85701
|
}
|
|
85741
85702
|
//#endregion
|
|
85742
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85703
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ThemePicker.js
|
|
85743
85704
|
/** One double-block swatch character per preview key, in a row. */
|
|
85744
85705
|
const SWATCH = "██";
|
|
85745
85706
|
/** Theme keys previewed in the picker, chosen for visual contrast. */
|
|
@@ -85825,7 +85786,7 @@ function ThemePicker({ focusIndex, currentTheme, themeHost, onPick }) {
|
|
|
85825
85786
|
});
|
|
85826
85787
|
}
|
|
85827
85788
|
//#endregion
|
|
85828
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85789
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ThinkingToggle.js
|
|
85829
85790
|
/**
|
|
85830
85791
|
* The `/thinking` display dialog: a permission-colored Pane with a bold
|
|
85831
85792
|
* title, the Shown/Hidden select, and the Enter/Esc hint line.
|
|
@@ -85874,7 +85835,7 @@ function ThinkingToggle({ currentValue, focusIndex, onPick }) {
|
|
|
85874
85835
|
});
|
|
85875
85836
|
}
|
|
85876
85837
|
//#endregion
|
|
85877
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85838
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/HistorySearchDialog.js
|
|
85878
85839
|
/**
|
|
85879
85840
|
* The ctrl+r history search dialog, in the shape of Claude Code's
|
|
85880
85841
|
* HistorySearchDialog/FuzzyPicker: a permission-colored Pane with a bold
|
|
@@ -85937,7 +85898,7 @@ function formatRelativeAge(ts) {
|
|
|
85937
85898
|
return t("time-days-ago", { n: Math.floor(elapsed / 864e5) });
|
|
85938
85899
|
}
|
|
85939
85900
|
//#endregion
|
|
85940
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
85901
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/RewindPicker.js
|
|
85941
85902
|
/**
|
|
85942
85903
|
* Double-Esc rewind picker (CC's "Double-tap esc to rewind the code and/or
|
|
85943
85904
|
* conversation to a previous point in time"): lists the user's past messages
|
|
@@ -86074,7 +86035,7 @@ function preview(text) {
|
|
|
86074
86035
|
return flat.length <= 80 ? flat : `${flat.slice(0, 80)}…`;
|
|
86075
86036
|
}
|
|
86076
86037
|
//#endregion
|
|
86077
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
86038
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/BtwPanel.js
|
|
86078
86039
|
/**
|
|
86079
86040
|
* /btw side-question panel (CC's btw.tsx, inline-pane form like the local
|
|
86080
86041
|
* pickers): title line with the question, a scrollable answer body (error /
|
|
@@ -86158,7 +86119,7 @@ function BtwPanel({ question, answer, error, streaming, onClose, onCopy }) {
|
|
|
86158
86119
|
});
|
|
86159
86120
|
}
|
|
86160
86121
|
//#endregion
|
|
86161
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
86122
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ReleaseNotesPanel.js
|
|
86162
86123
|
function ReleaseNotesPanel({ release, onClose }) {
|
|
86163
86124
|
const scrollRef = import_react.useRef(null);
|
|
86164
86125
|
const { rows } = useTerminalSize();
|
|
@@ -86203,7 +86164,7 @@ function ReleaseNotesPanel({ release, onClose }) {
|
|
|
86203
86164
|
});
|
|
86204
86165
|
}
|
|
86205
86166
|
//#endregion
|
|
86206
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
86167
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/RecapPanel.js
|
|
86207
86168
|
/**
|
|
86208
86169
|
* `/recap` panel (pi-recap semantics), in the picker/dialog visual
|
|
86209
86170
|
* language: a permission-colored Pane with a title bar (会话回顾), a
|
|
@@ -86324,7 +86285,7 @@ function RecapPanel({ summary, title, error, streaming, titleApplied, onClose, o
|
|
|
86324
86285
|
});
|
|
86325
86286
|
}
|
|
86326
86287
|
//#endregion
|
|
86327
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
86288
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/tips.js
|
|
86328
86289
|
/**
|
|
86329
86290
|
* 精简 Tips 池 —— 启动首屏轮换(LogoV2)与 `/tips` 命令面板共用。
|
|
86330
86291
|
*
|
|
@@ -87038,7 +86999,7 @@ const TIPS = [
|
|
|
87038
86999
|
}
|
|
87039
87000
|
];
|
|
87040
87001
|
//#endregion
|
|
87041
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
87002
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/TipsPanel.js
|
|
87042
87003
|
const GROUP_ORDER = [
|
|
87043
87004
|
"keys",
|
|
87044
87005
|
"commands",
|
|
@@ -87117,7 +87078,7 @@ function TipsPanel({ onClose }) {
|
|
|
87117
87078
|
});
|
|
87118
87079
|
}
|
|
87119
87080
|
//#endregion
|
|
87120
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
87081
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/SubagentCard.js
|
|
87121
87082
|
function formatDuration$1(ms) {
|
|
87122
87083
|
const seconds = Math.floor(ms / 1e3);
|
|
87123
87084
|
return seconds < 60 ? `${seconds}s` : `${Math.floor(seconds / 60)}m${seconds % 60}s`;
|
|
@@ -87172,7 +87133,7 @@ function SubagentCard({ subagent, focused, onClick }) {
|
|
|
87172
87133
|
});
|
|
87173
87134
|
}
|
|
87174
87135
|
//#endregion
|
|
87175
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
87136
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/SubagentDashboard.js
|
|
87176
87137
|
/** 可点击 ✕ 退出按钮:整屏/浮层场景的鼠标退出通道(Esc 等价)。 */
|
|
87177
87138
|
function ExitButton({ onClick }) {
|
|
87178
87139
|
const [hovered, setHovered] = import_react.useState(false);
|
|
@@ -87320,7 +87281,7 @@ function SubagentDashboard({ subagents, onClose, onSelect }) {
|
|
|
87320
87281
|
});
|
|
87321
87282
|
}
|
|
87322
87283
|
//#endregion
|
|
87323
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
87284
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/JobsPanel.js
|
|
87324
87285
|
function statusInfo(status) {
|
|
87325
87286
|
const minimal = isMinimalMode();
|
|
87326
87287
|
switch (status) {
|
|
@@ -87608,7 +87569,7 @@ function JobsPanel({ jobs, onClose, onKill }) {
|
|
|
87608
87569
|
});
|
|
87609
87570
|
}
|
|
87610
87571
|
//#endregion
|
|
87611
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
87572
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/SubagentDetailScene.js
|
|
87612
87573
|
function formatDuration(ms) {
|
|
87613
87574
|
if (ms < 1e3) return `${ms}ms`;
|
|
87614
87575
|
if (ms < 6e4) return `${(ms / 1e3).toFixed(1)}s`;
|
|
@@ -88066,7 +88027,7 @@ function FileActionsPanel({ path, isDir, focusIndex, onPick }) {
|
|
|
88066
88027
|
});
|
|
88067
88028
|
}
|
|
88068
88029
|
//#endregion
|
|
88069
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
88030
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/ProductivityPickers.js
|
|
88070
88031
|
function oneLine(text, max = 70) {
|
|
88071
88032
|
const compact = text.replace(/\s+/gu, " ").trim();
|
|
88072
88033
|
return compact.length > max ? `${compact.slice(0, max - 1)}…` : compact;
|
|
@@ -88158,7 +88119,7 @@ function DiffLoading() {
|
|
|
88158
88119
|
});
|
|
88159
88120
|
}
|
|
88160
88121
|
//#endregion
|
|
88161
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
88122
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/productivityCommands.js
|
|
88162
88123
|
/** `/copy` argument is a one-based reply age; omission selects the latest. */
|
|
88163
88124
|
function parseCopyIndex(raw, count) {
|
|
88164
88125
|
const value = raw.trim();
|
|
@@ -88211,7 +88172,7 @@ function gitDiffLines(report, labels) {
|
|
|
88211
88172
|
];
|
|
88212
88173
|
}
|
|
88213
88174
|
//#endregion
|
|
88214
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
88175
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/sessionOrganizationCommands.js
|
|
88215
88176
|
/** Compact duration suitable for a terminal report row. */
|
|
88216
88177
|
function formatStatsDuration(ms) {
|
|
88217
88178
|
if (ms < 1e3) return `${Math.round(ms)} ms`;
|
|
@@ -88257,7 +88218,7 @@ function parsePresetManagement(input) {
|
|
|
88257
88218
|
return { kind: "invalid" };
|
|
88258
88219
|
}
|
|
88259
88220
|
//#endregion
|
|
88260
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
88221
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/workflowCommands.js
|
|
88261
88222
|
const ALIASES = {
|
|
88262
88223
|
map: "inspect",
|
|
88263
88224
|
fixit: "repair",
|
|
@@ -88312,7 +88273,7 @@ function buildWorkflowCommand(name, rawInput = "") {
|
|
|
88312
88273
|
};
|
|
88313
88274
|
}
|
|
88314
88275
|
//#endregion
|
|
88315
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
88276
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/utils/urlGuard.js
|
|
88316
88277
|
const EXTERNAL_SCHEME = /^https?:\/\//i;
|
|
88317
88278
|
/**
|
|
88318
88279
|
* Classify a clicked link target. Mirrors the previous handleOpenTarget
|
|
@@ -88337,7 +88298,7 @@ function classifyOpenTarget(url) {
|
|
|
88337
88298
|
return { kind: "rejected" };
|
|
88338
88299
|
}
|
|
88339
88300
|
//#endregion
|
|
88340
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
88301
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/hooks/useExternalVersion.js
|
|
88341
88302
|
/**
|
|
88342
88303
|
* Subscribe to an external store's version counter at DEFAULT lane.
|
|
88343
88304
|
*
|
|
@@ -88386,7 +88347,7 @@ function useExternalVersion(subscribe, getVersion, enabled = true) {
|
|
|
88386
88347
|
return version;
|
|
88387
88348
|
}
|
|
88388
88349
|
//#endregion
|
|
88389
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
88350
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/trajectory/WaveBand.js
|
|
88390
88351
|
/**
|
|
88391
88352
|
* The wake — the whole session drawn as one row of glyphs.
|
|
88392
88353
|
*
|
|
@@ -88523,7 +88484,7 @@ function toHex(colour) {
|
|
|
88523
88484
|
return `#${hex(parsed.r)}${hex(parsed.g)}${hex(parsed.b)}`;
|
|
88524
88485
|
}
|
|
88525
88486
|
//#endregion
|
|
88526
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
88487
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/trajectory/Ledger.js
|
|
88527
88488
|
/**
|
|
88528
88489
|
* The ledger — one line per event, columns aligned across every row.
|
|
88529
88490
|
*
|
|
@@ -88769,7 +88730,7 @@ function Ledger({ rows, start, height, cursor, width, tick, arrivalTick, arrival
|
|
|
88769
88730
|
});
|
|
88770
88731
|
}
|
|
88771
88732
|
//#endregion
|
|
88772
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
88733
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/trajectory/Inspector.js
|
|
88773
88734
|
/**
|
|
88774
88735
|
* The inspector — full detail for the focused row, in a fixed-height slot.
|
|
88775
88736
|
*
|
|
@@ -88875,7 +88836,7 @@ function Inspector({ node, detail, height, width, expanded, scroll }) {
|
|
|
88875
88836
|
});
|
|
88876
88837
|
}
|
|
88877
88838
|
//#endregion
|
|
88878
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
88839
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/components/trajectory/HotspotView.js
|
|
88879
88840
|
/**
|
|
88880
88841
|
* The hotspot view — the session ranked by cost instead of ordered by time.
|
|
88881
88842
|
*
|
|
@@ -89038,7 +88999,7 @@ function HotspotView({ agg, sort, width, height, cursor, tick, switchTick, onRow
|
|
|
89038
88999
|
});
|
|
89039
89000
|
}
|
|
89040
89001
|
//#endregion
|
|
89041
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
89002
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/trajectory/query.js
|
|
89042
89003
|
/**
|
|
89043
89004
|
* Trajectory query — whole-session structured filtering.
|
|
89044
89005
|
*
|
|
@@ -89234,7 +89195,7 @@ function applyQuery(nodes, query) {
|
|
|
89234
89195
|
};
|
|
89235
89196
|
}
|
|
89236
89197
|
//#endregion
|
|
89237
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
89198
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/screens/TrajectoryScene.js
|
|
89238
89199
|
/**
|
|
89239
89200
|
* The trajectory scene — the session's own screen.
|
|
89240
89201
|
*
|
|
@@ -89722,7 +89683,7 @@ function TrajectoryScene({ channel, build, onClose }) {
|
|
|
89722
89683
|
});
|
|
89723
89684
|
}
|
|
89724
89685
|
//#endregion
|
|
89725
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
89686
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/screens/LoadedContextScene.js
|
|
89726
89687
|
/** Build the non-empty pages shown by the loaded-context inspector. */
|
|
89727
89688
|
function contextPages(context) {
|
|
89728
89689
|
const pages = [];
|
|
@@ -89906,7 +89867,7 @@ function LoadedContextScene({ context, onClose }) {
|
|
|
89906
89867
|
});
|
|
89907
89868
|
}
|
|
89908
89869
|
//#endregion
|
|
89909
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
89870
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/screens/AgentView.js
|
|
89910
89871
|
/** Rows the layout cannot do without: header, model/cwd line, dispatch
|
|
89911
89872
|
* input, hints. */
|
|
89912
89873
|
const MANDATORY_LINES = 4;
|
|
@@ -90051,6 +90012,11 @@ function AgentView({ channel, home, approval, onApprove, returnSessionId, onClos
|
|
|
90051
90012
|
const getRows = import_react.useCallback(() => channel.agentViewRows(), [channel]);
|
|
90052
90013
|
const subscribe = import_react.useCallback((listener) => channel.subscribeAgentView(listener), [channel]);
|
|
90053
90014
|
const agentRows = import_react.useSyncExternalStore(subscribe, getRows);
|
|
90015
|
+
import_react.useEffect(() => {
|
|
90016
|
+
channel.listSessions().catch((error) => {
|
|
90017
|
+
logForDebugging(`agent view: history load failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
90018
|
+
});
|
|
90019
|
+
}, [channel]);
|
|
90054
90020
|
const [focusId, setFocusId] = import_react.useState(void 0);
|
|
90055
90021
|
const [mode, setMode] = import_react.useState("list");
|
|
90056
90022
|
const [renameText, setRenameText] = import_react.useState("");
|
|
@@ -90510,7 +90476,7 @@ function AgentView({ channel, home, approval, onApprove, returnSessionId, onClos
|
|
|
90510
90476
|
});
|
|
90511
90477
|
}
|
|
90512
90478
|
//#endregion
|
|
90513
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
90479
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/trajectoryPrefs.js
|
|
90514
90480
|
/**
|
|
90515
90481
|
* Persisted "the user has seen the trajectory" flag, at
|
|
90516
90482
|
* `~/.chatcode-cli/tui/trajectory.json`.
|
|
@@ -90570,7 +90536,7 @@ function writeTrajectorySeen(dir = DATA_DIR) {
|
|
|
90570
90536
|
}
|
|
90571
90537
|
}
|
|
90572
90538
|
//#endregion
|
|
90573
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
90539
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/screens/chatOverlay.js
|
|
90574
90540
|
const NO_OVERLAY = { kind: "none" };
|
|
90575
90541
|
/**
|
|
90576
90542
|
* One-step wrap-around cursor move — the single source of the wrapping rule
|
|
@@ -90680,7 +90646,7 @@ function dialogOverlayVisible(overlay, gates) {
|
|
|
90680
90646
|
}
|
|
90681
90647
|
}
|
|
90682
90648
|
//#endregion
|
|
90683
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
90649
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/screens/Chat.js
|
|
90684
90650
|
const LOGOUT_EXIT_DELAY_MS = 200;
|
|
90685
90651
|
/** Shared empty snapshot for hosts whose channel has no event log. */
|
|
90686
90652
|
const NO_EVENTS = [];
|
|
@@ -94491,7 +94457,7 @@ function ModelPickerLoading() {
|
|
|
94491
94457
|
});
|
|
94492
94458
|
}
|
|
94493
94459
|
//#endregion
|
|
94494
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
94460
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/webLauncher.js
|
|
94495
94461
|
const MAIN_CLI_PACKAGE = "@chatcode/chatcode-cli";
|
|
94496
94462
|
function asError(value) {
|
|
94497
94463
|
return value instanceof Error ? value : new Error(String(value));
|
|
@@ -94647,7 +94613,7 @@ function launchWebFrontend(cwd, options = {}) {
|
|
|
94647
94613
|
}
|
|
94648
94614
|
}
|
|
94649
94615
|
//#endregion
|
|
94650
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
94616
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/inject-channel.js
|
|
94651
94617
|
/**
|
|
94652
94618
|
* External injection channel — lets an out-of-process editor integration
|
|
94653
94619
|
* (e.g. the `dsh.nvim` Neovim plugin) push text into the running TUI's
|
|
@@ -94842,7 +94808,7 @@ function openInjectChannel(sessionId, cwd, handlers, onError) {
|
|
|
94842
94808
|
};
|
|
94843
94809
|
}
|
|
94844
94810
|
//#endregion
|
|
94845
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
94811
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/chatcode-auth.js
|
|
94846
94812
|
const CHATCODE_CLI_OAUTH_TOKEN = "CHATCODE_CLI_OAUTH_TOKEN";
|
|
94847
94813
|
const DEFAULT_SERVICE_WAIT_MS = 75e3;
|
|
94848
94814
|
function authService(ctx) {
|
|
@@ -95016,7 +94982,7 @@ async function requireChatCodeStartupLogin(ctx, options) {
|
|
|
95016
94982
|
return "ready";
|
|
95017
94983
|
}
|
|
95018
94984
|
//#endregion
|
|
95019
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
94985
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/chatcode-api.js
|
|
95020
94986
|
/** Bind authenticated statistics requests to one TUI lifetime. */
|
|
95021
94987
|
function createChatCodeAuthorizedPost(ctx) {
|
|
95022
94988
|
const lifetime = new AbortController();
|
|
@@ -95055,7 +95021,7 @@ function createChatCodeAuthorizedPost(ctx) {
|
|
|
95055
95021
|
};
|
|
95056
95022
|
}
|
|
95057
95023
|
//#endregion
|
|
95058
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
95024
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.21_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/plugin.js
|
|
95059
95025
|
/**
|
|
95060
95026
|
* Interactive TUI front door for ChatCode CLI agents.
|
|
95061
95027
|
*
|
|
@@ -95262,13 +95228,18 @@ async function apply(ctx, config) {
|
|
|
95262
95228
|
const llmCatalog = resolveLlmCatalog();
|
|
95263
95229
|
const expectsChatCode = chatCodeAuthExpected(ctx);
|
|
95264
95230
|
const tokenBackedChatCode = chatCodeEnvironmentTokenActive(ctx);
|
|
95265
|
-
const tokenCodingPlanRoute
|
|
95266
|
-
|
|
95231
|
+
const { tokenCodingPlanRoute, advertisedFallback } = await traceTuiStartup("model-catalog", async () => {
|
|
95232
|
+
const tokenCodingPlanRoute = tokenBackedChatCode ? await waitForModelRouteForProvider(resolveLlmCatalog, CHATCODE_CODING_PLAN_PROVIDER) : void 0;
|
|
95233
|
+
return {
|
|
95234
|
+
tokenCodingPlanRoute,
|
|
95235
|
+
advertisedFallback: tokenBackedChatCode ? tokenCodingPlanRoute : expectsChatCode ? await waitForFirstAvailableModelRoute(resolveLlmCatalog) : await firstAvailableModelRoute(llmCatalog)
|
|
95236
|
+
};
|
|
95237
|
+
});
|
|
95267
95238
|
const noStartupModel = advertisedFallback === void 0 && (expectsChatCode || tokenBackedChatCode);
|
|
95268
95239
|
const availableFallback = noStartupModel ? UNCONFIGURED_MODEL_ROUTE : advertisedFallback;
|
|
95269
95240
|
const sharedModels = ctx.get("agentDefaultModel");
|
|
95270
95241
|
const processModelSelection = sharedModels?.usesSharedPreference?.() === true;
|
|
95271
|
-
const startupRoute = processModelSelection && sharedModels?.resolveSelection !== void 0 ?
|
|
95242
|
+
const startupRoute = await traceTuiStartup("model-selection", () => processModelSelection && sharedModels?.resolveSelection !== void 0 ? sharedModels.resolveSelection() : resolveStartupModelRoute(configuredRoute, readModelPref(), noStartupModel ? UNCONFIGURED_MODEL_ROUTE : harnessDefault ?? availableFallback, tokenCodingPlanRoute));
|
|
95272
95243
|
const requestedWorkspace = config.workspace ?? readTuiEnv("WORKSPACE_TARGET");
|
|
95273
95244
|
const mountedWorkspaceService = getHostWorkspaceRuntime(ctx.get("tuiWorkspaces"));
|
|
95274
95245
|
if (mountedWorkspaceService === void 0 && resolveDshProfileName() !== void 0) ctx.logger.warn("ChatCode CLI TUI: tuiWorkspaces service is not mounted; /workspace runs with the local-only fallback. The bundle patch is older than the installed TUI package — update the globally installed ChatCode CLI package to match the profile (issue #183).");
|
|
@@ -95277,21 +95248,22 @@ async function apply(ctx, config) {
|
|
|
95277
95248
|
const themeHost = getHostThemes(ctx.get("tuiThemes"));
|
|
95278
95249
|
if ((ctx.get("tuiDialogs") === void 0 || themeHost === void 0) && resolveDshProfileName() !== void 0) ctx.logger.warn("ChatCode CLI TUI: tuiDialogs/tuiStatus/tuiShortcuts/tuiRenderers/tuiThemes services are not mounted; plugin dialogs, status contributions, shortcuts, custom-entry renderers and runtime themes are off. Static ~/.chatcode-cli/tui/themes JSON remains available. The bundle patch is older than the installed TUI package — update the globally installed ChatCode CLI package to match the profile (issue #183).");
|
|
95279
95250
|
if (ctx.get("tuiPluginHost") === void 0 && resolveDshProfileName() !== void 0) ctx.logger.warn("ChatCode CLI TUI: tuiPluginHost service is not mounted; plugin grant store, runtime generation and Host Descriptor are unavailable. The bundle patch is older than the installed TUI package — update the globally installed ChatCode CLI package to match the profile (issue #183).");
|
|
95280
|
-
const initialWorkspace = requestedWorkspace === void 0 ? void 0 : await workspaceService.resolve(requestedWorkspace);
|
|
95251
|
+
const initialWorkspace = await traceTuiStartup("workspace-resolution", async () => requestedWorkspace === void 0 ? void 0 : await workspaceService.resolve(requestedWorkspace));
|
|
95281
95252
|
if (requestedWorkspace !== void 0 && initialWorkspace === void 0) throw new Error(`ChatCode CLI TUI: unsupported or unavailable workspace target: ${requestedWorkspace}`);
|
|
95282
95253
|
const sessionCwd = initialWorkspace?.cwd ?? resolveSessionCwd(config.cwd);
|
|
95283
95254
|
const meta = { cwd: sessionCwd };
|
|
95284
95255
|
const cmdline = ctx.cmdlineArgs;
|
|
95285
95256
|
const cmdlineArgs = cmdline?.get?.() ?? cmdline?.args;
|
|
95286
|
-
const
|
|
95257
|
+
const launchSessionId = config.sessionId ?? await traceTuiStartup("resume-selection", () => resolveStartupSessionId(ctx.get("sessionPersistence"), cmdlineArgs ?? process.argv.slice(2), sessionCwd));
|
|
95258
|
+
const { agent, handle, agentPreset, route: createdRoute } = await traceTuiStartup("agent-resolution", () => resolveAgent(ctx, launchSessionId, processModelSelection ? startupRoute : configuredRoute, startupRoute, processModelSelection ? UNCONFIGURED_MODEL_ROUTE : availableFallback, meta, config.preset, processModelSelection));
|
|
95287
95259
|
try {
|
|
95288
|
-
if (!await attachSessionToWorkspace(ctx, agent.session.header.cwd ?? meta.cwd, agent.session.id)) ctx.logger.warn(`ChatCode CLI TUI: session "${agent.session.id}" has no workspace ownership because workspaceRegistry is not mounted`);
|
|
95260
|
+
if (!await traceTuiStartup("workspace-attach", () => attachSessionToWorkspace(ctx, agent.session.header.cwd ?? meta.cwd, agent.session.id))) ctx.logger.warn(`ChatCode CLI TUI: session "${agent.session.id}" has no workspace ownership because workspaceRegistry is not mounted`);
|
|
95289
95261
|
} catch (error) {
|
|
95290
95262
|
ctx.logger.warn(`ChatCode CLI TUI: session "${agent.session.id}" workspace attachment failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
95291
95263
|
}
|
|
95292
95264
|
const displayRoute = createdRoute ?? startupRoute;
|
|
95293
|
-
const displayModelName = explicitModelRoute(displayRoute) === void 0 ? void 0 :
|
|
95294
|
-
const channel = createChannel(ctx, agent, {
|
|
95265
|
+
const displayModelName = await traceTuiStartup("model-display", () => explicitModelRoute(displayRoute) === void 0 ? void 0 : resolveLlmCatalog()?.listModels(displayRoute.provider).then((list) => list.find((model) => model.id === displayRoute.model)?.name).catch(() => void 0));
|
|
95266
|
+
const channel = await traceTuiStartup("channel", () => createChannel(ctx, agent, {
|
|
95295
95267
|
model: displayRoute.model,
|
|
95296
95268
|
modelName: displayModelName,
|
|
95297
95269
|
cwd: agent.session.header.cwd ?? sessionCwd,
|
|
@@ -95318,7 +95290,7 @@ async function apply(ctx, config) {
|
|
|
95318
95290
|
smoothStreaming: config.smoothStreaming,
|
|
95319
95291
|
statusBar: config.statusBar,
|
|
95320
95292
|
handle
|
|
95321
|
-
});
|
|
95293
|
+
}));
|
|
95322
95294
|
applyPageMargin(config.pageMargin);
|
|
95323
95295
|
getHostToastStore(ctx.get("tuiToast"))?.setSink((delivery) => {
|
|
95324
95296
|
channel.notify(delivery.text, {
|
|
@@ -95336,35 +95308,35 @@ async function apply(ctx, config) {
|
|
|
95336
95308
|
});
|
|
95337
95309
|
ctx.inject(["settings"], (settingsCtx) => {
|
|
95338
95310
|
const tuiSettingsNs = "dsh-tui";
|
|
95339
|
-
const scope = displaySettingsScope(ctx, settingsCtx, tuiSettingsNs,
|
|
95340
|
-
diffLayout:
|
|
95311
|
+
const scope = displaySettingsScope(ctx, settingsCtx, tuiSettingsNs, Schema.object({
|
|
95312
|
+
diffLayout: Schema.union([
|
|
95341
95313
|
"auto",
|
|
95342
95314
|
"split",
|
|
95343
95315
|
"unified"
|
|
95344
95316
|
]).default("auto"),
|
|
95345
|
-
thinkingFold:
|
|
95346
|
-
toolBackground:
|
|
95317
|
+
thinkingFold: Schema.union(["preview", "full"]).default("preview"),
|
|
95318
|
+
toolBackground: Schema.union([
|
|
95347
95319
|
"none",
|
|
95348
95320
|
"subtle",
|
|
95349
95321
|
"strong"
|
|
95350
95322
|
]).default("none"),
|
|
95351
|
-
scrollGutter:
|
|
95323
|
+
scrollGutter: Schema.union([
|
|
95352
95324
|
"timeline",
|
|
95353
95325
|
"scrollbar",
|
|
95354
95326
|
"hidden"
|
|
95355
95327
|
]).default("timeline"),
|
|
95356
|
-
pageMargin:
|
|
95357
|
-
foldTerminalCommand:
|
|
95358
|
-
promptSessionLabel:
|
|
95359
|
-
expandEditor:
|
|
95360
|
-
smoothStreaming:
|
|
95328
|
+
pageMargin: Schema.transform(Schema.string().default("normal"), (value) => normalizePageMargin(value)),
|
|
95329
|
+
foldTerminalCommand: Schema.boolean(),
|
|
95330
|
+
promptSessionLabel: Schema.boolean().default(false),
|
|
95331
|
+
expandEditor: Schema.boolean(),
|
|
95332
|
+
smoothStreaming: Schema.boolean(),
|
|
95361
95333
|
statusBar: createStatusBarSchema(),
|
|
95362
|
-
whale:
|
|
95363
|
-
recapOnOpen:
|
|
95364
|
-
minimal:
|
|
95365
|
-
lang:
|
|
95366
|
-
fullscreen:
|
|
95367
|
-
shortcuts:
|
|
95334
|
+
whale: Schema.boolean().default(true),
|
|
95335
|
+
recapOnOpen: Schema.boolean().default(true),
|
|
95336
|
+
minimal: Schema.boolean().default(false),
|
|
95337
|
+
lang: Schema.union(["zh", "en"]),
|
|
95338
|
+
fullscreen: Schema.boolean(),
|
|
95339
|
+
shortcuts: Schema.object(Object.fromEntries(SHORTCUT_ACTIONS.map((action) => [action.id, Schema.string().required(false)]))).required(false)
|
|
95368
95340
|
}), config);
|
|
95369
95341
|
const applyLayout = (value) => {
|
|
95370
95342
|
channel.setDiffLayout(value.diffLayout ?? config.diffLayout ?? "auto");
|
|
@@ -95882,7 +95854,7 @@ async function apply(ctx, config) {
|
|
|
95882
95854
|
webLaunches.clear();
|
|
95883
95855
|
});
|
|
95884
95856
|
const injectControllerRef = import_react.createRef();
|
|
95885
|
-
await settingsReady;
|
|
95857
|
+
await traceTuiStartup("settings", () => settingsReady);
|
|
95886
95858
|
const chat = import_react.createElement(Chat, {
|
|
95887
95859
|
channel,
|
|
95888
95860
|
questionStore,
|
|
@@ -95968,10 +95940,11 @@ async function apply(ctx, config) {
|
|
|
95968
95940
|
if (bootedFullscreen === false && lastBootedFullscreen === true) bootedFullscreen = true;
|
|
95969
95941
|
fullscreenFrozen = true;
|
|
95970
95942
|
const marginChildren = bootedFullscreen ? import_react.createElement(AlternateScreen, null, import_react.createElement(PageMargin, null, chat)) : import_react.createElement(PageMargin, null, chat);
|
|
95971
|
-
|
|
95943
|
+
const tree = import_react.createElement(ThemeProvider, {
|
|
95972
95944
|
themeHost,
|
|
95973
95945
|
children: import_react.createElement(ChatCodeApiContext.Provider, { value: createChatCodeAuthorizedPost(ctx) }, marginChildren)
|
|
95974
|
-
})
|
|
95946
|
+
});
|
|
95947
|
+
instance = await traceTuiStartup("render", () => wrappedRender(tree, { exitOnCtrlC: false }));
|
|
95975
95948
|
if (noStartupModel) channel.notify(t("model-startup-none"), {
|
|
95976
95949
|
color: "warning",
|
|
95977
95950
|
timeoutMs: 8e3
|
|
@@ -96067,11 +96040,12 @@ async function resolveAgent(ctx, requestedSessionId, configuredRoute, startupRou
|
|
|
96067
96040
|
}
|
|
96068
96041
|
const sessionId = SessionId(randomUUID());
|
|
96069
96042
|
const presetPref = configuredPreset === void 0 ? readPresetPref() : void 0;
|
|
96070
|
-
const composed = await composePreset(ctx, configuredPreset ?? presetPref);
|
|
96043
|
+
const composed = await traceTuiStartup("preset-resolution", () => composePreset(ctx, configuredPreset ?? presetPref));
|
|
96071
96044
|
if (!migratePresetPref(presetPref, composed.agentPreset)) ctx.logger.warn(`ChatCode CLI TUI: resolved preset preference "${presetPref}" as "${composed.agentPreset}" but could not persist the migrated id`);
|
|
96072
|
-
const
|
|
96045
|
+
const llm = ctx.get("llm");
|
|
96046
|
+
const { route, rejected } = await traceTuiStartup("model-validation", () => validateModelRoute(llm, startupRoute, availableFallback));
|
|
96073
96047
|
if (rejected !== void 0) ctx.logger.warn(`ChatCode CLI TUI: model route ${rejected.provider}/${rejected.model} is not advertised by provider "${rejected.provider}"; falling back to ${route.provider}/${route.model}`);
|
|
96074
|
-
const created = await ctx.agents.create({
|
|
96048
|
+
const created = await traceTuiStartup("agent-create", () => ctx.agents.create({
|
|
96075
96049
|
sessionId,
|
|
96076
96050
|
meta: {
|
|
96077
96051
|
...meta,
|
|
@@ -96079,7 +96053,7 @@ async function resolveAgent(ctx, requestedSessionId, configuredRoute, startupRou
|
|
|
96079
96053
|
},
|
|
96080
96054
|
agentOptions: route,
|
|
96081
96055
|
...composed.setup === void 0 ? {} : { setup: composed.setup }
|
|
96082
|
-
}).catch((error) => {
|
|
96056
|
+
})).catch((error) => {
|
|
96083
96057
|
const message = error instanceof Error ? error.message : String(error);
|
|
96084
96058
|
throw new Error(`ChatCode CLI TUI: failed to create agent (provider=${route.provider}, model=${route.model}): ${message}`);
|
|
96085
96059
|
});
|