@rdmind/rdmind 0.1.3-alpha.3 → 0.1.3-alpha.5
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/cli.js +361 -564
- package/locales/en.js +0 -13
- package/locales/zh.js +0 -10
- package/package.json +2 -2
package/cli.js
CHANGED
|
@@ -160739,7 +160739,7 @@ function createContentGeneratorConfig(config2, authType, generationConfig) {
|
|
|
160739
160739
|
};
|
|
160740
160740
|
}
|
|
160741
160741
|
async function createContentGenerator(config2, gcConfig, isInitialAuth) {
|
|
160742
|
-
const version3 = "0.1.3-alpha.
|
|
160742
|
+
const version3 = "0.1.3-alpha.5";
|
|
160743
160743
|
const userAgent2 = `QwenCode/${version3} (${process.platform}; ${process.arch})`;
|
|
160744
160744
|
const baseHeaders = {
|
|
160745
160745
|
"User-Agent": userAgent2
|
|
@@ -235698,8 +235698,8 @@ var init_git_commit = __esm({
|
|
|
235698
235698
|
"packages/core/src/generated/git-commit.ts"() {
|
|
235699
235699
|
"use strict";
|
|
235700
235700
|
init_esbuild_shims();
|
|
235701
|
-
GIT_COMMIT_INFO = "
|
|
235702
|
-
CLI_VERSION = "0.1.3-alpha.
|
|
235701
|
+
GIT_COMMIT_INFO = "5e9005a1";
|
|
235702
|
+
CLI_VERSION = "0.1.3-alpha.5";
|
|
235703
235703
|
}
|
|
235704
235704
|
});
|
|
235705
235705
|
|
|
@@ -260022,7 +260022,7 @@ var require_backend = __commonJS({
|
|
|
260022
260022
|
return function() {
|
|
260023
260023
|
};
|
|
260024
260024
|
}, "useCacheRefresh"),
|
|
260025
|
-
useCallback: /* @__PURE__ */ __name(function
|
|
260025
|
+
useCallback: /* @__PURE__ */ __name(function useCallback52(a) {
|
|
260026
260026
|
var b = C();
|
|
260027
260027
|
x2.push({
|
|
260028
260028
|
primitive: "Callback",
|
|
@@ -260116,7 +260116,7 @@ var require_backend = __commonJS({
|
|
|
260116
260116
|
});
|
|
260117
260117
|
return a;
|
|
260118
260118
|
}, "useRef"),
|
|
260119
|
-
useState: /* @__PURE__ */ __name(function
|
|
260119
|
+
useState: /* @__PURE__ */ __name(function useState66(a) {
|
|
260120
260120
|
var b = C();
|
|
260121
260121
|
a = null !== b ? b.memoizedState : "function" === typeof a ? a() : a;
|
|
260122
260122
|
x2.push({
|
|
@@ -306707,7 +306707,6 @@ var init_en3 = __esm({
|
|
|
306707
306707
|
"open full RDMind documentation in your browser": "open full RDMind documentation in your browser",
|
|
306708
306708
|
"Configuration not available.": "Configuration not available.",
|
|
306709
306709
|
"change the auth method": "change the auth method",
|
|
306710
|
-
"Show quit confirmation dialog": "Show quit confirmation dialog",
|
|
306711
306710
|
"Copy the last result or code snippet to clipboard": "Copy the last result or code snippet to clipboard",
|
|
306712
306711
|
// ============================================================================
|
|
306713
306712
|
// Commands - Agents
|
|
@@ -307131,14 +307130,6 @@ var init_en3 = __esm({
|
|
|
307131
307130
|
"Shell Command Execution": "Shell Command Execution",
|
|
307132
307131
|
"A custom command wants to run the following shell commands:": "A custom command wants to run the following shell commands:",
|
|
307133
307132
|
// ============================================================================
|
|
307134
|
-
// Dialogs - Quit Confirmation
|
|
307135
|
-
// ============================================================================
|
|
307136
|
-
"What would you like to do before exiting?": "What would you like to do before exiting?",
|
|
307137
|
-
"Quit immediately (/quit)": "Quit immediately (/quit)",
|
|
307138
|
-
"Generate summary and quit (/summary)": "Generate summary and quit (/summary)",
|
|
307139
|
-
"Save conversation and quit (/chat save)": "Save conversation and quit (/chat save)",
|
|
307140
|
-
"Cancel (stay in application)": "Cancel (stay in application)",
|
|
307141
|
-
// ============================================================================
|
|
307142
307133
|
// Dialogs - Pro Quota
|
|
307143
307134
|
// ============================================================================
|
|
307144
307135
|
"Pro quota limit reached for {{model}}.": "Pro quota limit reached for {{model}}.",
|
|
@@ -307566,7 +307557,6 @@ var init_zh = __esm({
|
|
|
307566
307557
|
"open full RDMind documentation in your browser": "\u5728\u6D4F\u89C8\u5668\u4E2D\u6253\u5F00\u5B8C\u6574\u7684 RDMind \u6587\u6863",
|
|
307567
307558
|
"Configuration not available.": "\u914D\u7F6E\u4E0D\u53EF\u7528",
|
|
307568
307559
|
"change the auth method": "\u66F4\u6539\u8BA4\u8BC1\u65B9\u6CD5",
|
|
307569
|
-
"Show quit confirmation dialog": "\u663E\u793A\u9000\u51FA\u786E\u8BA4\u5BF9\u8BDD\u6846",
|
|
307570
307560
|
"Copy the last result or code snippet to clipboard": "\u5C06\u6700\u540E\u7684\u7ED3\u679C\u6216\u4EE3\u7801\u7247\u6BB5\u590D\u5236\u5230\u526A\u8D34\u677F",
|
|
307571
307561
|
// ============================================================================
|
|
307572
307562
|
// Commands - Agents
|
|
@@ -307990,14 +307980,6 @@ var init_zh = __esm({
|
|
|
307990
307980
|
"Shell Command Execution": "Shell \u547D\u4EE4\u6267\u884C",
|
|
307991
307981
|
"A custom command wants to run the following shell commands:": "\u81EA\u5B9A\u4E49\u547D\u4EE4\u60F3\u8981\u8FD0\u884C\u4EE5\u4E0B shell \u547D\u4EE4\uFF1A",
|
|
307992
307982
|
// ============================================================================
|
|
307993
|
-
// Dialogs - Quit Confirmation
|
|
307994
|
-
// ============================================================================
|
|
307995
|
-
"What would you like to do before exiting?": "\u9000\u51FA\u524D\u60A8\u60F3\u8981\u505A\u4EC0\u4E48\uFF1F",
|
|
307996
|
-
"Quit immediately (/quit)": "\u7ACB\u5373\u9000\u51FA (/quit)",
|
|
307997
|
-
"Generate summary and quit (/summary)": "\u751F\u6210\u6458\u8981\u5E76\u9000\u51FA (/summary)",
|
|
307998
|
-
"Save conversation and quit (/chat save)": "\u4FDD\u5B58\u5BF9\u8BDD\u5E76\u9000\u51FA (/chat save)",
|
|
307999
|
-
"Cancel (stay in application)": "\u53D6\u6D88\uFF08\u7559\u5728\u5E94\u7528\u7A0B\u5E8F\u4E2D\uFF09",
|
|
308000
|
-
// ============================================================================
|
|
308001
307983
|
// Dialogs - Pro Quota
|
|
308002
307984
|
// ============================================================================
|
|
308003
307985
|
"Pro quota limit reached for {{model}}.": "{{model}} \u7684 Pro \u914D\u989D\u5DF2\u8FBE\u5230\u4E0A\u9650",
|
|
@@ -340230,7 +340212,7 @@ var measureElement = /* @__PURE__ */ __name((node) => ({
|
|
|
340230
340212
|
var measure_element_default = measureElement;
|
|
340231
340213
|
|
|
340232
340214
|
// packages/cli/src/gemini.tsx
|
|
340233
|
-
var
|
|
340215
|
+
var import_react136 = __toESM(require_react(), 1);
|
|
340234
340216
|
import dns from "node:dns";
|
|
340235
340217
|
import os48 from "node:os";
|
|
340236
340218
|
import { basename as basename19 } from "node:path";
|
|
@@ -346185,7 +346167,7 @@ __name(getPackageJson, "getPackageJson");
|
|
|
346185
346167
|
// packages/cli/src/utils/version.ts
|
|
346186
346168
|
async function getCliVersion() {
|
|
346187
346169
|
const pkgJson = await getPackageJson();
|
|
346188
|
-
return "0.1.3-alpha.
|
|
346170
|
+
return "0.1.3-alpha.5";
|
|
346189
346171
|
}
|
|
346190
346172
|
__name(getCliVersion, "getCliVersion");
|
|
346191
346173
|
|
|
@@ -352552,7 +352534,7 @@ var formatDuration = /* @__PURE__ */ __name((milliseconds) => {
|
|
|
352552
352534
|
|
|
352553
352535
|
// packages/cli/src/generated/git-commit.ts
|
|
352554
352536
|
init_esbuild_shims();
|
|
352555
|
-
var GIT_COMMIT_INFO2 = "
|
|
352537
|
+
var GIT_COMMIT_INFO2 = "5e9005a1";
|
|
352556
352538
|
|
|
352557
352539
|
// packages/cli/src/utils/systemInfo.ts
|
|
352558
352540
|
async function getNpmVersion() {
|
|
@@ -356431,33 +356413,6 @@ var modelCommand = {
|
|
|
356431
356413
|
|
|
356432
356414
|
// packages/cli/src/ui/commands/quitCommand.ts
|
|
356433
356415
|
init_esbuild_shims();
|
|
356434
|
-
var quitConfirmCommand = {
|
|
356435
|
-
name: "quit-confirm",
|
|
356436
|
-
get description() {
|
|
356437
|
-
return t3("Show quit confirmation dialog");
|
|
356438
|
-
},
|
|
356439
|
-
kind: "built-in" /* BUILT_IN */,
|
|
356440
|
-
action: /* @__PURE__ */ __name((context2) => {
|
|
356441
|
-
const now = Date.now();
|
|
356442
|
-
const { sessionStartTime } = context2.session.stats;
|
|
356443
|
-
const wallDuration = now - sessionStartTime.getTime();
|
|
356444
|
-
return {
|
|
356445
|
-
type: "quit_confirmation",
|
|
356446
|
-
messages: [
|
|
356447
|
-
{
|
|
356448
|
-
type: "user",
|
|
356449
|
-
text: `/quit-confirm`,
|
|
356450
|
-
id: now - 1
|
|
356451
|
-
},
|
|
356452
|
-
{
|
|
356453
|
-
type: "quit_confirmation",
|
|
356454
|
-
duration: formatDuration(wallDuration),
|
|
356455
|
-
id: now
|
|
356456
|
-
}
|
|
356457
|
-
]
|
|
356458
|
-
};
|
|
356459
|
-
}, "action")
|
|
356460
|
-
};
|
|
356461
356416
|
var quitCommand = {
|
|
356462
356417
|
name: "quit",
|
|
356463
356418
|
altNames: ["exit"],
|
|
@@ -359091,7 +359046,6 @@ var BuiltinCommandLoader = class {
|
|
|
359091
359046
|
memoryCommand,
|
|
359092
359047
|
modelCommand,
|
|
359093
359048
|
quitCommand,
|
|
359094
|
-
quitConfirmCommand,
|
|
359095
359049
|
restoreCommand(this.config),
|
|
359096
359050
|
statsCommand,
|
|
359097
359051
|
summaryCommand,
|
|
@@ -363482,7 +363436,7 @@ __name(runNonInteractiveStreamJson, "runNonInteractiveStreamJson");
|
|
|
363482
363436
|
|
|
363483
363437
|
// packages/cli/src/ui/AppContainer.tsx
|
|
363484
363438
|
init_esbuild_shims();
|
|
363485
|
-
var
|
|
363439
|
+
var import_react133 = __toESM(require_react(), 1);
|
|
363486
363440
|
|
|
363487
363441
|
// packages/cli/src/ui/App.tsx
|
|
363488
363442
|
init_esbuild_shims();
|
|
@@ -387068,7 +387022,6 @@ var HistoryItemDisplayComponent = /* @__PURE__ */ __name(({
|
|
|
387068
387022
|
itemForDisplay.type === "model_stats" && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(ModelStatsDisplay, {}),
|
|
387069
387023
|
itemForDisplay.type === "tool_stats" && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(ToolStatsDisplay, {}),
|
|
387070
387024
|
itemForDisplay.type === "quit" && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SessionSummaryDisplay, { duration: itemForDisplay.duration }),
|
|
387071
|
-
itemForDisplay.type === "quit_confirmation" && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SessionSummaryDisplay, { duration: itemForDisplay.duration }),
|
|
387072
387025
|
itemForDisplay.type === "tool_group" && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
387073
387026
|
ToolGroupMessage,
|
|
387074
387027
|
{
|
|
@@ -390843,56 +390796,8 @@ function WelcomeBackDialog({
|
|
|
390843
390796
|
}
|
|
390844
390797
|
__name(WelcomeBackDialog, "WelcomeBackDialog");
|
|
390845
390798
|
|
|
390846
|
-
// packages/cli/src/ui/components/QuitConfirmationDialog.tsx
|
|
390847
|
-
init_esbuild_shims();
|
|
390848
|
-
var import_jsx_runtime85 = __toESM(require_jsx_runtime(), 1);
|
|
390849
|
-
var QuitConfirmationDialog = /* @__PURE__ */ __name(({
|
|
390850
|
-
onSelect
|
|
390851
|
-
}) => {
|
|
390852
|
-
useKeypress(
|
|
390853
|
-
(key) => {
|
|
390854
|
-
if (key.name === "escape") {
|
|
390855
|
-
onSelect("cancel" /* CANCEL */);
|
|
390856
|
-
}
|
|
390857
|
-
},
|
|
390858
|
-
{ isActive: true }
|
|
390859
|
-
);
|
|
390860
|
-
const options2 = [
|
|
390861
|
-
{
|
|
390862
|
-
key: "quit",
|
|
390863
|
-
label: t3("Quit immediately (/quit)"),
|
|
390864
|
-
value: "quit" /* QUIT */
|
|
390865
|
-
},
|
|
390866
|
-
{
|
|
390867
|
-
key: "summary-and-quit",
|
|
390868
|
-
label: t3("Generate summary and quit (/summary)"),
|
|
390869
|
-
value: "summary_and_quit" /* SUMMARY_AND_QUIT */
|
|
390870
|
-
},
|
|
390871
|
-
{
|
|
390872
|
-
key: "cancel",
|
|
390873
|
-
label: t3("Cancel (stay in application)"),
|
|
390874
|
-
value: "cancel" /* CANCEL */
|
|
390875
|
-
}
|
|
390876
|
-
];
|
|
390877
|
-
return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(
|
|
390878
|
-
Box_default,
|
|
390879
|
-
{
|
|
390880
|
-
flexDirection: "column",
|
|
390881
|
-
borderStyle: "round",
|
|
390882
|
-
borderColor: Colors.AccentYellow,
|
|
390883
|
-
padding: 1,
|
|
390884
|
-
width: "100%",
|
|
390885
|
-
marginLeft: 1,
|
|
390886
|
-
children: [
|
|
390887
|
-
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { flexDirection: "column", marginBottom: 1, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Text3, { children: t3("What would you like to do before exiting?") }) }),
|
|
390888
|
-
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(RadioButtonSelect, { items: options2, onSelect, isFocused: true })
|
|
390889
|
-
]
|
|
390890
|
-
}
|
|
390891
|
-
);
|
|
390892
|
-
}, "QuitConfirmationDialog");
|
|
390893
|
-
|
|
390894
390799
|
// packages/cli/src/ui/components/DialogManager.tsx
|
|
390895
|
-
var
|
|
390800
|
+
var import_jsx_runtime85 = __toESM(require_jsx_runtime(), 1);
|
|
390896
390801
|
var DialogManager = /* @__PURE__ */ __name(({
|
|
390897
390802
|
addItem,
|
|
390898
390803
|
terminalWidth
|
|
@@ -390912,7 +390817,7 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
390912
390817
|
};
|
|
390913
390818
|
}, "getDefaultOpenAIConfig");
|
|
390914
390819
|
if (uiState.showWelcomeBackDialog && uiState.welcomeBackInfo?.hasHistory) {
|
|
390915
|
-
return /* @__PURE__ */ (0,
|
|
390820
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
390916
390821
|
WelcomeBackDialog,
|
|
390917
390822
|
{
|
|
390918
390823
|
welcomeBackInfo: uiState.welcomeBackInfo,
|
|
@@ -390922,10 +390827,10 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
390922
390827
|
);
|
|
390923
390828
|
}
|
|
390924
390829
|
if (uiState.showIdeRestartPrompt) {
|
|
390925
|
-
return /* @__PURE__ */ (0,
|
|
390830
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(IdeTrustChangeDialog, { reason: uiState.ideTrustRestartReason });
|
|
390926
390831
|
}
|
|
390927
390832
|
if (uiState.showWorkspaceMigrationDialog) {
|
|
390928
|
-
return /* @__PURE__ */ (0,
|
|
390833
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
390929
390834
|
WorkspaceMigrationDialog,
|
|
390930
390835
|
{
|
|
390931
390836
|
workspaceExtensions: uiState.workspaceExtensions,
|
|
@@ -390935,7 +390840,7 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
390935
390840
|
);
|
|
390936
390841
|
}
|
|
390937
390842
|
if (uiState.proQuotaRequest) {
|
|
390938
|
-
return /* @__PURE__ */ (0,
|
|
390843
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
390939
390844
|
ProQuotaDialog,
|
|
390940
390845
|
{
|
|
390941
390846
|
failedModel: uiState.proQuotaRequest.failedModel,
|
|
@@ -390945,7 +390850,7 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
390945
390850
|
);
|
|
390946
390851
|
}
|
|
390947
390852
|
if (uiState.shouldShowIdePrompt) {
|
|
390948
|
-
return /* @__PURE__ */ (0,
|
|
390853
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
390949
390854
|
IdeIntegrationNudge,
|
|
390950
390855
|
{
|
|
390951
390856
|
ide: uiState.currentIDE,
|
|
@@ -390954,7 +390859,7 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
390954
390859
|
);
|
|
390955
390860
|
}
|
|
390956
390861
|
if (uiState.isFolderTrustDialogOpen) {
|
|
390957
|
-
return /* @__PURE__ */ (0,
|
|
390862
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
390958
390863
|
FolderTrustDialog,
|
|
390959
390864
|
{
|
|
390960
390865
|
onSelect: uiActions.handleFolderTrustSelect,
|
|
@@ -390963,37 +390868,18 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
390963
390868
|
);
|
|
390964
390869
|
}
|
|
390965
390870
|
if (uiState.shellConfirmationRequest) {
|
|
390966
|
-
return /* @__PURE__ */ (0,
|
|
390871
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(ShellConfirmationDialog, { request: uiState.shellConfirmationRequest });
|
|
390967
390872
|
}
|
|
390968
390873
|
if (uiState.loopDetectionConfirmationRequest) {
|
|
390969
|
-
return /* @__PURE__ */ (0,
|
|
390874
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
390970
390875
|
LoopDetectionConfirmation,
|
|
390971
390876
|
{
|
|
390972
390877
|
onComplete: uiState.loopDetectionConfirmationRequest.onComplete
|
|
390973
390878
|
}
|
|
390974
390879
|
);
|
|
390975
390880
|
}
|
|
390976
|
-
if (uiState.quitConfirmationRequest) {
|
|
390977
|
-
return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
|
|
390978
|
-
QuitConfirmationDialog,
|
|
390979
|
-
{
|
|
390980
|
-
onSelect: (choice2) => {
|
|
390981
|
-
if (choice2 === "cancel" /* CANCEL */) {
|
|
390982
|
-
uiState.quitConfirmationRequest?.onConfirm(false, "cancel");
|
|
390983
|
-
} else if (choice2 === "quit" /* QUIT */) {
|
|
390984
|
-
uiState.quitConfirmationRequest?.onConfirm(true, "quit");
|
|
390985
|
-
} else if (choice2 === "summary_and_quit" /* SUMMARY_AND_QUIT */) {
|
|
390986
|
-
uiState.quitConfirmationRequest?.onConfirm(
|
|
390987
|
-
true,
|
|
390988
|
-
"summary_and_quit"
|
|
390989
|
-
);
|
|
390990
|
-
}
|
|
390991
|
-
}
|
|
390992
|
-
}
|
|
390993
|
-
);
|
|
390994
|
-
}
|
|
390995
390881
|
if (uiState.confirmationRequest) {
|
|
390996
|
-
return /* @__PURE__ */ (0,
|
|
390882
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
390997
390883
|
ConsentPrompt,
|
|
390998
390884
|
{
|
|
390999
390885
|
prompt: uiState.confirmationRequest.prompt,
|
|
@@ -391004,7 +390890,7 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
391004
390890
|
}
|
|
391005
390891
|
if (uiState.confirmUpdateExtensionRequests.length > 0) {
|
|
391006
390892
|
const request4 = uiState.confirmUpdateExtensionRequests[0];
|
|
391007
|
-
return /* @__PURE__ */ (0,
|
|
390893
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
391008
390894
|
ConsentPrompt,
|
|
391009
390895
|
{
|
|
391010
390896
|
prompt: request4.prompt,
|
|
@@ -391014,9 +390900,9 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
391014
390900
|
);
|
|
391015
390901
|
}
|
|
391016
390902
|
if (uiState.isThemeDialogOpen) {
|
|
391017
|
-
return /* @__PURE__ */ (0,
|
|
391018
|
-
uiState.themeError && /* @__PURE__ */ (0,
|
|
391019
|
-
/* @__PURE__ */ (0,
|
|
390903
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(Box_default, { flexDirection: "column", children: [
|
|
390904
|
+
uiState.themeError && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { marginBottom: 1, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Text3, { color: theme.status.error, children: uiState.themeError }) }),
|
|
390905
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
391020
390906
|
ThemeDialog,
|
|
391021
390907
|
{
|
|
391022
390908
|
onSelect: uiActions.handleThemeSelect,
|
|
@@ -391029,7 +390915,7 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
391029
390915
|
] });
|
|
391030
390916
|
}
|
|
391031
390917
|
if (uiState.isSettingsDialogOpen) {
|
|
391032
|
-
return /* @__PURE__ */ (0,
|
|
390918
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { flexDirection: "column", children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
391033
390919
|
SettingsDialog,
|
|
391034
390920
|
{
|
|
391035
390921
|
settings,
|
|
@@ -391042,7 +390928,7 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
391042
390928
|
}
|
|
391043
390929
|
if (uiState.isApprovalModeDialogOpen) {
|
|
391044
390930
|
const currentMode = config2.getApprovalMode();
|
|
391045
|
-
return /* @__PURE__ */ (0,
|
|
390931
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { flexDirection: "column", children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
391046
390932
|
ApprovalModeDialog,
|
|
391047
390933
|
{
|
|
391048
390934
|
settings,
|
|
@@ -391053,18 +390939,18 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
391053
390939
|
) });
|
|
391054
390940
|
}
|
|
391055
390941
|
if (uiState.isModelDialogOpen) {
|
|
391056
|
-
return /* @__PURE__ */ (0,
|
|
390942
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(ModelDialog, { onClose: uiActions.closeModelDialog });
|
|
391057
390943
|
}
|
|
391058
390944
|
if (uiState.isVisionSwitchDialogOpen) {
|
|
391059
|
-
return /* @__PURE__ */ (0,
|
|
390945
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(ModelSwitchDialog, { onSelect: uiActions.handleVisionSwitchSelect });
|
|
391060
390946
|
}
|
|
391061
390947
|
if (uiState.isAuthDialogOpen || uiState.authError) {
|
|
391062
|
-
return /* @__PURE__ */ (0,
|
|
390948
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { flexDirection: "column", children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(AuthDialog, {}) });
|
|
391063
390949
|
}
|
|
391064
390950
|
if (uiState.isAuthenticating) {
|
|
391065
390951
|
if (uiState.pendingAuthType === "openai" /* USE_OPENAI */) {
|
|
391066
390952
|
const defaults3 = getDefaultOpenAIConfig();
|
|
391067
|
-
return /* @__PURE__ */ (0,
|
|
390953
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
391068
390954
|
OpenAIKeyPrompt,
|
|
391069
390955
|
{
|
|
391070
390956
|
onSubmit: (apiKey, baseUrl, model) => {
|
|
@@ -391085,7 +390971,7 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
391085
390971
|
);
|
|
391086
390972
|
}
|
|
391087
390973
|
if (uiState.pendingAuthType === "qwen-oauth" /* QWEN_OAUTH */) {
|
|
391088
|
-
return /* @__PURE__ */ (0,
|
|
390974
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
391089
390975
|
QwenOAuthProgress,
|
|
391090
390976
|
{
|
|
391091
390977
|
deviceAuth: uiState.qwenAuthState.deviceAuth || void 0,
|
|
@@ -391105,9 +390991,9 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
391105
390991
|
}
|
|
391106
390992
|
}
|
|
391107
390993
|
if (uiState.isEditorDialogOpen) {
|
|
391108
|
-
return /* @__PURE__ */ (0,
|
|
391109
|
-
uiState.editorError && /* @__PURE__ */ (0,
|
|
391110
|
-
/* @__PURE__ */ (0,
|
|
390994
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(Box_default, { flexDirection: "column", children: [
|
|
390995
|
+
uiState.editorError && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { marginBottom: 1, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Text3, { color: theme.status.error, children: uiState.editorError }) }),
|
|
390996
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
391111
390997
|
EditorSettingsDialog,
|
|
391112
390998
|
{
|
|
391113
390999
|
onSelect: uiActions.handleEditorSelect,
|
|
@@ -391118,7 +391004,7 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
391118
391004
|
] });
|
|
391119
391005
|
}
|
|
391120
391006
|
if (uiState.isPermissionsDialogOpen) {
|
|
391121
|
-
return /* @__PURE__ */ (0,
|
|
391007
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
391122
391008
|
PermissionsModifyTrustDialog,
|
|
391123
391009
|
{
|
|
391124
391010
|
onExit: uiActions.closePermissionsDialog,
|
|
@@ -391127,7 +391013,7 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
391127
391013
|
);
|
|
391128
391014
|
}
|
|
391129
391015
|
if (uiState.isSubagentCreateDialogOpen) {
|
|
391130
|
-
return /* @__PURE__ */ (0,
|
|
391016
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
391131
391017
|
AgentCreationWizard,
|
|
391132
391018
|
{
|
|
391133
391019
|
onClose: uiActions.closeSubagentCreateDialog,
|
|
@@ -391136,7 +391022,7 @@ var DialogManager = /* @__PURE__ */ __name(({
|
|
|
391136
391022
|
);
|
|
391137
391023
|
}
|
|
391138
391024
|
if (uiState.isAgentsManagerDialogOpen) {
|
|
391139
|
-
return /* @__PURE__ */ (0,
|
|
391025
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
391140
391026
|
AgentsManagerDialog,
|
|
391141
391027
|
{
|
|
391142
391028
|
onClose: uiActions.closeAgentsManagerDialog,
|
|
@@ -391162,7 +391048,7 @@ function isNarrowWidth(width) {
|
|
|
391162
391048
|
__name(isNarrowWidth, "isNarrowWidth");
|
|
391163
391049
|
|
|
391164
391050
|
// packages/cli/src/ui/components/LoadingIndicator.tsx
|
|
391165
|
-
var
|
|
391051
|
+
var import_jsx_runtime86 = __toESM(require_jsx_runtime(), 1);
|
|
391166
391052
|
var LoadingIndicator = /* @__PURE__ */ __name(({
|
|
391167
391053
|
currentLoadingPhrase,
|
|
391168
391054
|
elapsedTime,
|
|
@@ -391179,41 +391065,41 @@ var LoadingIndicator = /* @__PURE__ */ __name(({
|
|
|
391179
391065
|
const cancelAndTimerContent = streamingState !== "waiting_for_confirmation" /* WaitingForConfirmation */ ? t3("(esc to cancel, {{time}})", {
|
|
391180
391066
|
time: elapsedTime < 60 ? `${elapsedTime}s` : formatDuration(elapsedTime * 1e3)
|
|
391181
391067
|
}) : null;
|
|
391182
|
-
return /* @__PURE__ */ (0,
|
|
391183
|
-
/* @__PURE__ */ (0,
|
|
391068
|
+
return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(Box_default, { paddingLeft: 0, flexDirection: "column", children: [
|
|
391069
|
+
/* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
|
|
391184
391070
|
Box_default,
|
|
391185
391071
|
{
|
|
391186
391072
|
width: "100%",
|
|
391187
391073
|
flexDirection: isNarrow ? "column" : "row",
|
|
391188
391074
|
alignItems: isNarrow ? "flex-start" : "center",
|
|
391189
391075
|
children: [
|
|
391190
|
-
/* @__PURE__ */ (0,
|
|
391191
|
-
/* @__PURE__ */ (0,
|
|
391076
|
+
/* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(Box_default, { children: [
|
|
391077
|
+
/* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { marginRight: 1, children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
|
|
391192
391078
|
GeminiRespondingSpinner,
|
|
391193
391079
|
{
|
|
391194
391080
|
nonRespondingDisplay: streamingState === "waiting_for_confirmation" /* WaitingForConfirmation */ ? "\u280F" : ""
|
|
391195
391081
|
}
|
|
391196
391082
|
) }),
|
|
391197
|
-
primaryText && /* @__PURE__ */ (0,
|
|
391198
|
-
!isNarrow && cancelAndTimerContent && /* @__PURE__ */ (0,
|
|
391083
|
+
primaryText && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Text3, { color: theme.text.accent, wrap: "truncate-end", children: primaryText }),
|
|
391084
|
+
!isNarrow && cancelAndTimerContent && /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(Text3, { color: theme.text.secondary, children: [
|
|
391199
391085
|
" ",
|
|
391200
391086
|
cancelAndTimerContent
|
|
391201
391087
|
] })
|
|
391202
391088
|
] }),
|
|
391203
|
-
!isNarrow && /* @__PURE__ */ (0,
|
|
391204
|
-
!isNarrow && rightContent && /* @__PURE__ */ (0,
|
|
391089
|
+
!isNarrow && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { flexGrow: 1 }),
|
|
391090
|
+
!isNarrow && rightContent && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { children: rightContent })
|
|
391205
391091
|
]
|
|
391206
391092
|
}
|
|
391207
391093
|
),
|
|
391208
|
-
isNarrow && cancelAndTimerContent && /* @__PURE__ */ (0,
|
|
391209
|
-
isNarrow && rightContent && /* @__PURE__ */ (0,
|
|
391094
|
+
isNarrow && cancelAndTimerContent && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Text3, { color: theme.text.secondary, children: cancelAndTimerContent }) }),
|
|
391095
|
+
isNarrow && rightContent && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { children: rightContent })
|
|
391210
391096
|
] });
|
|
391211
391097
|
}, "LoadingIndicator");
|
|
391212
391098
|
|
|
391213
391099
|
// packages/cli/src/ui/components/ContextSummaryDisplay.tsx
|
|
391214
391100
|
init_esbuild_shims();
|
|
391215
391101
|
init_core4();
|
|
391216
|
-
var
|
|
391102
|
+
var import_jsx_runtime87 = __toESM(require_jsx_runtime(), 1);
|
|
391217
391103
|
var ContextSummaryDisplay = /* @__PURE__ */ __name(({
|
|
391218
391104
|
geminiMdFileCount,
|
|
391219
391105
|
contextFileNames,
|
|
@@ -391228,7 +391114,7 @@ var ContextSummaryDisplay = /* @__PURE__ */ __name(({
|
|
|
391228
391114
|
const blockedMcpServerCount = blockedMcpServers?.length || 0;
|
|
391229
391115
|
const openFileCount = ideContext?.workspaceState?.openFiles?.length ?? 0;
|
|
391230
391116
|
if (geminiMdFileCount === 0 && mcpServerCount === 0 && blockedMcpServerCount === 0 && openFileCount === 0) {
|
|
391231
|
-
return /* @__PURE__ */ (0,
|
|
391117
|
+
return /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Text3, { children: " " });
|
|
391232
391118
|
}
|
|
391233
391119
|
const openFilesText = (() => {
|
|
391234
391120
|
if (openFileCount === 0) {
|
|
@@ -391286,16 +391172,16 @@ var ContextSummaryDisplay = /* @__PURE__ */ __name(({
|
|
|
391286
391172
|
})();
|
|
391287
391173
|
const summaryParts = [openFilesText, geminiMdText, mcpText].filter(Boolean);
|
|
391288
391174
|
if (isNarrow) {
|
|
391289
|
-
return /* @__PURE__ */ (0,
|
|
391290
|
-
/* @__PURE__ */ (0,
|
|
391291
|
-
summaryParts.map((part, index) => /* @__PURE__ */ (0,
|
|
391175
|
+
return /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(Box_default, { flexDirection: "column", children: [
|
|
391176
|
+
/* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Text3, { color: theme.text.secondary, children: t3("Using:") }),
|
|
391177
|
+
summaryParts.map((part, index) => /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(Text3, { color: theme.text.secondary, children: [
|
|
391292
391178
|
" ",
|
|
391293
391179
|
"- ",
|
|
391294
391180
|
part
|
|
391295
391181
|
] }, index))
|
|
391296
391182
|
] });
|
|
391297
391183
|
}
|
|
391298
|
-
return /* @__PURE__ */ (0,
|
|
391184
|
+
return /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(Text3, { color: theme.text.secondary, children: [
|
|
391299
391185
|
t3("Using:"),
|
|
391300
391186
|
" ",
|
|
391301
391187
|
summaryParts.join(" | ")
|
|
@@ -391305,7 +391191,7 @@ var ContextSummaryDisplay = /* @__PURE__ */ __name(({
|
|
|
391305
391191
|
// packages/cli/src/ui/components/AutoAcceptIndicator.tsx
|
|
391306
391192
|
init_esbuild_shims();
|
|
391307
391193
|
init_core4();
|
|
391308
|
-
var
|
|
391194
|
+
var import_jsx_runtime88 = __toESM(require_jsx_runtime(), 1);
|
|
391309
391195
|
var AutoAcceptIndicator = /* @__PURE__ */ __name(({
|
|
391310
391196
|
approvalMode
|
|
391311
391197
|
}) => {
|
|
@@ -391332,29 +391218,29 @@ var AutoAcceptIndicator = /* @__PURE__ */ __name(({
|
|
|
391332
391218
|
default:
|
|
391333
391219
|
break;
|
|
391334
391220
|
}
|
|
391335
|
-
return /* @__PURE__ */ (0,
|
|
391221
|
+
return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)(Text3, { color: textColor, children: [
|
|
391336
391222
|
textContent2,
|
|
391337
|
-
subText && /* @__PURE__ */ (0,
|
|
391223
|
+
subText && /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(Text3, { color: theme.text.secondary, children: subText })
|
|
391338
391224
|
] }) });
|
|
391339
391225
|
}, "AutoAcceptIndicator");
|
|
391340
391226
|
|
|
391341
391227
|
// packages/cli/src/ui/components/ShellModeIndicator.tsx
|
|
391342
391228
|
init_esbuild_shims();
|
|
391343
|
-
var
|
|
391344
|
-
var ShellModeIndicator = /* @__PURE__ */ __name(() => /* @__PURE__ */ (0,
|
|
391229
|
+
var import_jsx_runtime89 = __toESM(require_jsx_runtime(), 1);
|
|
391230
|
+
var ShellModeIndicator = /* @__PURE__ */ __name(() => /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(Text3, { color: theme.ui.symbol, children: [
|
|
391345
391231
|
"shell mode enabled",
|
|
391346
|
-
/* @__PURE__ */ (0,
|
|
391232
|
+
/* @__PURE__ */ (0, import_jsx_runtime89.jsx)(Text3, { color: theme.text.secondary, children: " (esc to disable)" })
|
|
391347
391233
|
] }) }), "ShellModeIndicator");
|
|
391348
391234
|
|
|
391349
391235
|
// packages/cli/src/ui/components/DetailedMessagesDisplay.tsx
|
|
391350
391236
|
init_esbuild_shims();
|
|
391351
|
-
var
|
|
391237
|
+
var import_jsx_runtime90 = __toESM(require_jsx_runtime(), 1);
|
|
391352
391238
|
var DetailedMessagesDisplay = /* @__PURE__ */ __name(({ messages, maxHeight, width }) => {
|
|
391353
391239
|
if (messages.length === 0) {
|
|
391354
391240
|
return null;
|
|
391355
391241
|
}
|
|
391356
391242
|
const borderAndPadding = 4;
|
|
391357
|
-
return /* @__PURE__ */ (0,
|
|
391243
|
+
return /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(
|
|
391358
391244
|
Box_default,
|
|
391359
391245
|
{
|
|
391360
391246
|
flexDirection: "column",
|
|
@@ -391364,12 +391250,12 @@ var DetailedMessagesDisplay = /* @__PURE__ */ __name(({ messages, maxHeight, wid
|
|
|
391364
391250
|
paddingX: 1,
|
|
391365
391251
|
width,
|
|
391366
391252
|
children: [
|
|
391367
|
-
/* @__PURE__ */ (0,
|
|
391253
|
+
/* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Box_default, { marginBottom: 1, children: /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Text3, { bold: true, color: theme.text.primary, children: [
|
|
391368
391254
|
"Debug Console",
|
|
391369
391255
|
" ",
|
|
391370
|
-
/* @__PURE__ */ (0,
|
|
391256
|
+
/* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Text3, { color: theme.text.secondary, children: "(ctrl+o to close)" })
|
|
391371
391257
|
] }) }),
|
|
391372
|
-
/* @__PURE__ */ (0,
|
|
391258
|
+
/* @__PURE__ */ (0, import_jsx_runtime90.jsx)(MaxSizedBox, { maxHeight, maxWidth: width - borderAndPadding, children: messages.map((msg, index) => {
|
|
391373
391259
|
let textColor = theme.text.primary;
|
|
391374
391260
|
let icon = "\u2139";
|
|
391375
391261
|
switch (msg.type) {
|
|
@@ -391389,14 +391275,14 @@ var DetailedMessagesDisplay = /* @__PURE__ */ __name(({ messages, maxHeight, wid
|
|
|
391389
391275
|
default:
|
|
391390
391276
|
break;
|
|
391391
391277
|
}
|
|
391392
|
-
return /* @__PURE__ */ (0,
|
|
391393
|
-
/* @__PURE__ */ (0,
|
|
391278
|
+
return /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Box_default, { flexDirection: "row", children: [
|
|
391279
|
+
/* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Text3, { color: textColor, children: [
|
|
391394
391280
|
icon,
|
|
391395
391281
|
" "
|
|
391396
391282
|
] }),
|
|
391397
|
-
/* @__PURE__ */ (0,
|
|
391283
|
+
/* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Text3, { color: textColor, wrap: "wrap", children: [
|
|
391398
391284
|
msg.content,
|
|
391399
|
-
msg.count && msg.count > 1 && /* @__PURE__ */ (0,
|
|
391285
|
+
msg.count && msg.count > 1 && /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Text3, { color: theme.text.secondary, children: [
|
|
391400
391286
|
" (x",
|
|
391401
391287
|
msg.count,
|
|
391402
391288
|
")"
|
|
@@ -391419,7 +391305,7 @@ init_esbuild_shims();
|
|
|
391419
391305
|
// packages/cli/src/ui/components/PrepareLabel.tsx
|
|
391420
391306
|
init_esbuild_shims();
|
|
391421
391307
|
var import_react85 = __toESM(require_react(), 1);
|
|
391422
|
-
var
|
|
391308
|
+
var import_jsx_runtime91 = __toESM(require_jsx_runtime(), 1);
|
|
391423
391309
|
var MAX_WIDTH = 150;
|
|
391424
391310
|
var _PrepareLabel = /* @__PURE__ */ __name(({
|
|
391425
391311
|
label,
|
|
@@ -391431,7 +391317,7 @@ var _PrepareLabel = /* @__PURE__ */ __name(({
|
|
|
391431
391317
|
const hasMatch = matchedIndex !== void 0 && matchedIndex >= 0 && matchedIndex < label.length && userInput.length > 0;
|
|
391432
391318
|
if (!hasMatch) {
|
|
391433
391319
|
const display = isExpanded ? label : label.length > MAX_WIDTH ? label.slice(0, MAX_WIDTH) + "..." : label;
|
|
391434
|
-
return /* @__PURE__ */ (0,
|
|
391320
|
+
return /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(Text3, { wrap: "wrap", color: textColor, children: display });
|
|
391435
391321
|
}
|
|
391436
391322
|
const matchLength = userInput.length;
|
|
391437
391323
|
let before = "";
|
|
@@ -391470,9 +391356,9 @@ var _PrepareLabel = /* @__PURE__ */ __name(({
|
|
|
391470
391356
|
after = after.length >= 3 ? after.slice(0, -3) + "..." : "...";
|
|
391471
391357
|
}
|
|
391472
391358
|
}
|
|
391473
|
-
return /* @__PURE__ */ (0,
|
|
391359
|
+
return /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(Text3, { color: textColor, wrap: "wrap", children: [
|
|
391474
391360
|
before,
|
|
391475
|
-
match2 ? match2.split(/(\s+)/).map((part, index) => /* @__PURE__ */ (0,
|
|
391361
|
+
match2 ? match2.split(/(\s+)/).map((part, index) => /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
|
|
391476
391362
|
Text3,
|
|
391477
391363
|
{
|
|
391478
391364
|
color: theme.background.primary,
|
|
@@ -391487,7 +391373,7 @@ var _PrepareLabel = /* @__PURE__ */ __name(({
|
|
|
391487
391373
|
var PrepareLabel = import_react85.default.memo(_PrepareLabel);
|
|
391488
391374
|
|
|
391489
391375
|
// packages/cli/src/ui/components/SuggestionsDisplay.tsx
|
|
391490
|
-
var
|
|
391376
|
+
var import_jsx_runtime92 = __toESM(require_jsx_runtime(), 1);
|
|
391491
391377
|
var MAX_SUGGESTIONS_TO_SHOW = 8;
|
|
391492
391378
|
function SuggestionsDisplay({
|
|
391493
391379
|
suggestions,
|
|
@@ -391500,7 +391386,7 @@ function SuggestionsDisplay({
|
|
|
391500
391386
|
expandedIndex
|
|
391501
391387
|
}) {
|
|
391502
391388
|
if (isLoading) {
|
|
391503
|
-
return /* @__PURE__ */ (0,
|
|
391389
|
+
return /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Box_default, { paddingX: 1, width, children: /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: "gray", children: "Loading suggestions..." }) });
|
|
391504
391390
|
}
|
|
391505
391391
|
if (suggestions.length === 0) {
|
|
391506
391392
|
return null;
|
|
@@ -391516,8 +391402,8 @@ function SuggestionsDisplay({
|
|
|
391516
391402
|
...suggestions.map((s4) => getFullLabel(s4).length)
|
|
391517
391403
|
);
|
|
391518
391404
|
const commandColumnWidth = mode === "slash" ? Math.min(maxLabelLength, Math.floor(width * 0.5)) : 0;
|
|
391519
|
-
return /* @__PURE__ */ (0,
|
|
391520
|
-
scrollOffset > 0 && /* @__PURE__ */ (0,
|
|
391405
|
+
return /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(Box_default, { flexDirection: "column", paddingX: 1, width, children: [
|
|
391406
|
+
scrollOffset > 0 && /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: theme.text.primary, children: "\u25B2" }),
|
|
391521
391407
|
visibleSuggestions.map((suggestion, index) => {
|
|
391522
391408
|
const originalIndex = startIndex + index;
|
|
391523
391409
|
const isActive = originalIndex === activeIndex;
|
|
@@ -391525,7 +391411,7 @@ function SuggestionsDisplay({
|
|
|
391525
391411
|
const textColor = isActive ? theme.text.accent : theme.text.secondary;
|
|
391526
391412
|
const displayLabel = suggestion.label ?? suggestion.value;
|
|
391527
391413
|
const isLong = displayLabel.length >= MAX_WIDTH;
|
|
391528
|
-
const labelElement = /* @__PURE__ */ (0,
|
|
391414
|
+
const labelElement = /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(
|
|
391529
391415
|
PrepareLabel,
|
|
391530
391416
|
{
|
|
391531
391417
|
label: displayLabel,
|
|
@@ -391535,23 +391421,23 @@ function SuggestionsDisplay({
|
|
|
391535
391421
|
isExpanded
|
|
391536
391422
|
}
|
|
391537
391423
|
);
|
|
391538
|
-
return /* @__PURE__ */ (0,
|
|
391539
|
-
/* @__PURE__ */ (0,
|
|
391424
|
+
return /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(Box_default, { flexDirection: "row", children: [
|
|
391425
|
+
/* @__PURE__ */ (0, import_jsx_runtime92.jsx)(
|
|
391540
391426
|
Box_default,
|
|
391541
391427
|
{
|
|
391542
391428
|
...mode === "slash" ? { width: commandColumnWidth, flexShrink: 0 } : { flexShrink: 1 },
|
|
391543
|
-
children: /* @__PURE__ */ (0,
|
|
391429
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(Box_default, { children: [
|
|
391544
391430
|
labelElement,
|
|
391545
|
-
suggestion.commandKind === "mcp-prompt" /* MCP_PROMPT */ && /* @__PURE__ */ (0,
|
|
391431
|
+
suggestion.commandKind === "mcp-prompt" /* MCP_PROMPT */ && /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: textColor, children: " [MCP]" })
|
|
391546
391432
|
] })
|
|
391547
391433
|
}
|
|
391548
391434
|
),
|
|
391549
|
-
suggestion.description && /* @__PURE__ */ (0,
|
|
391550
|
-
isActive && isLong && /* @__PURE__ */ (0,
|
|
391435
|
+
suggestion.description && /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Box_default, { flexGrow: 1, paddingLeft: 3, children: /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: textColor, wrap: "truncate", children: suggestion.description }) }),
|
|
391436
|
+
isActive && isLong && /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: Colors.Gray, children: isExpanded ? " \u2190 " : " \u2192 " }) })
|
|
391551
391437
|
] }, `${suggestion.value}-${originalIndex}`);
|
|
391552
391438
|
}),
|
|
391553
|
-
endIndex < suggestions.length && /* @__PURE__ */ (0,
|
|
391554
|
-
suggestions.length > MAX_SUGGESTIONS_TO_SHOW && /* @__PURE__ */ (0,
|
|
391439
|
+
endIndex < suggestions.length && /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: "gray", children: "\u25BC" }),
|
|
391440
|
+
suggestions.length > MAX_SUGGESTIONS_TO_SHOW && /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(Text3, { color: "gray", children: [
|
|
391555
391441
|
"(",
|
|
391556
391442
|
activeIndex + 1,
|
|
391557
391443
|
"/",
|
|
@@ -392482,7 +392368,7 @@ function formatSlashCommandLabel(command2) {
|
|
|
392482
392368
|
__name(formatSlashCommandLabel, "formatSlashCommandLabel");
|
|
392483
392369
|
|
|
392484
392370
|
// packages/cli/src/ui/hooks/useCommandCompletion.tsx
|
|
392485
|
-
function useCommandCompletion(buffer, dirs, cwd7, slashCommands, commandContext, reverseSearchActive = false, config2) {
|
|
392371
|
+
function useCommandCompletion(buffer, dirs, cwd7, slashCommands, commandContext, reverseSearchActive = false, config2, shellModeActive = false) {
|
|
392486
392372
|
const {
|
|
392487
392373
|
suggestions,
|
|
392488
392374
|
activeSuggestionIndex,
|
|
@@ -392504,7 +392390,7 @@ function useCommandCompletion(buffer, dirs, cwd7, slashCommands, commandContext,
|
|
|
392504
392390
|
const cursorCol = buffer.cursor[1];
|
|
392505
392391
|
const { completionMode, query, completionStart, completionEnd } = (0, import_react92.useMemo)(() => {
|
|
392506
392392
|
const currentLine = buffer.lines[cursorRow] || "";
|
|
392507
|
-
if (cursorRow === 0 && isSlashCommand(currentLine.trim())) {
|
|
392393
|
+
if (cursorRow === 0 && !shellModeActive && isSlashCommand(currentLine.trim())) {
|
|
392508
392394
|
return {
|
|
392509
392395
|
completionMode: "SLASH" /* SLASH */,
|
|
392510
392396
|
query: currentLine,
|
|
@@ -392553,7 +392439,7 @@ function useCommandCompletion(buffer, dirs, cwd7, slashCommands, commandContext,
|
|
|
392553
392439
|
completionStart: -1,
|
|
392554
392440
|
completionEnd: -1
|
|
392555
392441
|
};
|
|
392556
|
-
}, [cursorRow, cursorCol, buffer.lines]);
|
|
392442
|
+
}, [cursorRow, cursorCol, buffer.lines, shellModeActive]);
|
|
392557
392443
|
useAtCompletion({
|
|
392558
392444
|
enabled: completionMode === "AT" /* AT */,
|
|
392559
392445
|
pattern: query || "",
|
|
@@ -392824,7 +392710,7 @@ var ShellFocusContext = (0, import_react93.createContext)(true);
|
|
|
392824
392710
|
var useShellFocusState = /* @__PURE__ */ __name(() => (0, import_react93.useContext)(ShellFocusContext), "useShellFocusState");
|
|
392825
392711
|
|
|
392826
392712
|
// packages/cli/src/ui/components/InputPrompt.tsx
|
|
392827
|
-
var
|
|
392713
|
+
var import_jsx_runtime93 = __toESM(require_jsx_runtime(), 1);
|
|
392828
392714
|
var calculatePromptWidths = /* @__PURE__ */ __name((terminalWidth) => {
|
|
392829
392715
|
const widthFraction = 0.9;
|
|
392830
392716
|
const FRAME_PADDING_AND_BORDER = 4;
|
|
@@ -392893,7 +392779,8 @@ var InputPrompt = /* @__PURE__ */ __name(({
|
|
|
392893
392779
|
slashCommands,
|
|
392894
392780
|
commandContext,
|
|
392895
392781
|
reverseSearchActive,
|
|
392896
|
-
config2
|
|
392782
|
+
config2,
|
|
392783
|
+
shellModeActive
|
|
392897
392784
|
);
|
|
392898
392785
|
const reverseSearchCompletion = useReverseSearchCompletion(
|
|
392899
392786
|
buffer,
|
|
@@ -393333,21 +393220,21 @@ var InputPrompt = /* @__PURE__ */ __name(({
|
|
|
393333
393220
|
statusColor = theme.status.warning;
|
|
393334
393221
|
statusText = t3("Accepting edits");
|
|
393335
393222
|
}
|
|
393336
|
-
return /* @__PURE__ */ (0,
|
|
393337
|
-
/* @__PURE__ */ (0,
|
|
393223
|
+
return /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(import_jsx_runtime93.Fragment, { children: [
|
|
393224
|
+
/* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(
|
|
393338
393225
|
Box_default,
|
|
393339
393226
|
{
|
|
393340
393227
|
borderStyle: "round",
|
|
393341
393228
|
borderColor: isShellFocused && !isEmbeddedShellFocused ? statusColor ?? theme.border.focused : theme.border.default,
|
|
393342
393229
|
paddingX: 1,
|
|
393343
393230
|
children: [
|
|
393344
|
-
/* @__PURE__ */ (0,
|
|
393231
|
+
/* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(
|
|
393345
393232
|
Text3,
|
|
393346
393233
|
{
|
|
393347
393234
|
color: statusColor ?? theme.text.accent,
|
|
393348
393235
|
"aria-label": statusText || void 0,
|
|
393349
393236
|
children: [
|
|
393350
|
-
shellModeActive ? reverseSearchActive ? /* @__PURE__ */ (0,
|
|
393237
|
+
shellModeActive ? reverseSearchActive ? /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(
|
|
393351
393238
|
Text3,
|
|
393352
393239
|
{
|
|
393353
393240
|
color: theme.text.link,
|
|
@@ -393357,15 +393244,15 @@ var InputPrompt = /* @__PURE__ */ __name(({
|
|
|
393357
393244
|
" "
|
|
393358
393245
|
]
|
|
393359
393246
|
}
|
|
393360
|
-
) : "!" : commandSearchActive ? /* @__PURE__ */ (0,
|
|
393247
|
+
) : "!" : commandSearchActive ? /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: theme.text.accent, children: "(r:) " }) : showYoloStyling ? "*" : ">",
|
|
393361
393248
|
" "
|
|
393362
393249
|
]
|
|
393363
393250
|
}
|
|
393364
393251
|
),
|
|
393365
|
-
/* @__PURE__ */ (0,
|
|
393252
|
+
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Box_default, { flexGrow: 1, flexDirection: "column", children: buffer.text.length === 0 && placeholder ? showCursor ? /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(Text3, { children: [
|
|
393366
393253
|
import_chalk7.default.inverse(placeholder.slice(0, 1)),
|
|
393367
|
-
/* @__PURE__ */ (0,
|
|
393368
|
-
] }) : /* @__PURE__ */ (0,
|
|
393254
|
+
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: theme.text.secondary, children: placeholder.slice(1) })
|
|
393255
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: theme.text.secondary, children: placeholder }) : linesToRender.map((lineText, visualIdxInRenderedSet) => {
|
|
393369
393256
|
const absoluteVisualIdx = scrollVisualRow + visualIdxInRenderedSet;
|
|
393370
393257
|
const mapEntry = buffer.visualToLogicalMap[absoluteVisualIdx];
|
|
393371
393258
|
const cursorVisualRow = cursorVisualRowAbsolute - scrollVisualRow;
|
|
@@ -393412,20 +393299,20 @@ var InputPrompt = /* @__PURE__ */ __name(({
|
|
|
393412
393299
|
}
|
|
393413
393300
|
const color = seg.type === "command" || seg.type === "file" ? theme.text.accent : theme.text.primary;
|
|
393414
393301
|
renderedLine.push(
|
|
393415
|
-
/* @__PURE__ */ (0,
|
|
393302
|
+
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color, children: display }, `token-${segIdx}`)
|
|
393416
393303
|
);
|
|
393417
393304
|
});
|
|
393418
393305
|
if (isOnCursorLine && cursorVisualColAbsolute === cpLen(lineText)) {
|
|
393419
393306
|
renderedLine.push(
|
|
393420
|
-
/* @__PURE__ */ (0,
|
|
393307
|
+
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { children: showCursor ? import_chalk7.default.inverse(" ") : " " }, `cursor-end-${cursorVisualColAbsolute}`)
|
|
393421
393308
|
);
|
|
393422
393309
|
}
|
|
393423
|
-
return /* @__PURE__ */ (0,
|
|
393310
|
+
return /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Box_default, { height: 1, children: /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { children: renderedLine }) }, `line-${visualIdxInRenderedSet}`);
|
|
393424
393311
|
}) })
|
|
393425
393312
|
]
|
|
393426
393313
|
}
|
|
393427
393314
|
),
|
|
393428
|
-
shouldShowSuggestions && /* @__PURE__ */ (0,
|
|
393315
|
+
shouldShowSuggestions && /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Box_default, { paddingRight: 2, children: /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(
|
|
393429
393316
|
SuggestionsDisplay,
|
|
393430
393317
|
{
|
|
393431
393318
|
suggestions: activeCompletion.suggestions,
|
|
@@ -393447,7 +393334,7 @@ init_core4();
|
|
|
393447
393334
|
|
|
393448
393335
|
// packages/cli/src/ui/components/ConsoleSummaryDisplay.tsx
|
|
393449
393336
|
init_esbuild_shims();
|
|
393450
|
-
var
|
|
393337
|
+
var import_jsx_runtime94 = __toESM(require_jsx_runtime(), 1);
|
|
393451
393338
|
var ConsoleSummaryDisplay = /* @__PURE__ */ __name(({
|
|
393452
393339
|
errorCount
|
|
393453
393340
|
}) => {
|
|
@@ -393455,14 +393342,14 @@ var ConsoleSummaryDisplay = /* @__PURE__ */ __name(({
|
|
|
393455
393342
|
return null;
|
|
393456
393343
|
}
|
|
393457
393344
|
const errorIcon = "\u2716";
|
|
393458
|
-
return /* @__PURE__ */ (0,
|
|
393345
|
+
return /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Box_default, { children: errorCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(Text3, { color: theme.status.error, children: [
|
|
393459
393346
|
errorIcon,
|
|
393460
393347
|
" ",
|
|
393461
393348
|
errorCount,
|
|
393462
393349
|
" error",
|
|
393463
393350
|
errorCount > 1 ? "s" : "",
|
|
393464
393351
|
" ",
|
|
393465
|
-
/* @__PURE__ */ (0,
|
|
393352
|
+
/* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Text3, { color: theme.text.secondary, children: "(ctrl+o for details)" })
|
|
393466
393353
|
] }) });
|
|
393467
393354
|
}, "ConsoleSummaryDisplay");
|
|
393468
393355
|
|
|
@@ -393473,7 +393360,7 @@ import process35 from "node:process";
|
|
|
393473
393360
|
init_esbuild_shims();
|
|
393474
393361
|
var import_react95 = __toESM(require_react(), 1);
|
|
393475
393362
|
import process34 from "node:process";
|
|
393476
|
-
var
|
|
393363
|
+
var import_jsx_runtime95 = __toESM(require_jsx_runtime(), 1);
|
|
393477
393364
|
var MemoryUsageDisplay = /* @__PURE__ */ __name(() => {
|
|
393478
393365
|
const [memoryUsage, setMemoryUsage] = (0, import_react95.useState)("");
|
|
393479
393366
|
const [memoryUsageColor, setMemoryUsageColor] = (0, import_react95.useState)(
|
|
@@ -393491,16 +393378,16 @@ var MemoryUsageDisplay = /* @__PURE__ */ __name(() => {
|
|
|
393491
393378
|
updateMemory();
|
|
393492
393379
|
return () => clearInterval(intervalId);
|
|
393493
393380
|
}, []);
|
|
393494
|
-
return /* @__PURE__ */ (0,
|
|
393495
|
-
/* @__PURE__ */ (0,
|
|
393496
|
-
/* @__PURE__ */ (0,
|
|
393381
|
+
return /* @__PURE__ */ (0, import_jsx_runtime95.jsxs)(Box_default, { children: [
|
|
393382
|
+
/* @__PURE__ */ (0, import_jsx_runtime95.jsx)(Text3, { color: theme.text.secondary, children: " | " }),
|
|
393383
|
+
/* @__PURE__ */ (0, import_jsx_runtime95.jsx)(Text3, { color: memoryUsageColor, children: memoryUsage })
|
|
393497
393384
|
] });
|
|
393498
393385
|
}, "MemoryUsageDisplay");
|
|
393499
393386
|
|
|
393500
393387
|
// packages/cli/src/ui/components/ContextUsageDisplay.tsx
|
|
393501
393388
|
init_esbuild_shims();
|
|
393502
393389
|
init_core4();
|
|
393503
|
-
var
|
|
393390
|
+
var import_jsx_runtime96 = __toESM(require_jsx_runtime(), 1);
|
|
393504
393391
|
var ContextUsageDisplay = /* @__PURE__ */ __name(({
|
|
393505
393392
|
promptTokenCount,
|
|
393506
393393
|
model,
|
|
@@ -393509,7 +393396,7 @@ var ContextUsageDisplay = /* @__PURE__ */ __name(({
|
|
|
393509
393396
|
const percentage = promptTokenCount / tokenLimit(model);
|
|
393510
393397
|
const percentageLeft = ((1 - percentage) * 100).toFixed(0);
|
|
393511
393398
|
const label = terminalWidth < 100 ? "%" : "% context left";
|
|
393512
|
-
return /* @__PURE__ */ (0,
|
|
393399
|
+
return /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)(Text3, { color: theme.text.secondary, children: [
|
|
393513
393400
|
"(",
|
|
393514
393401
|
percentageLeft,
|
|
393515
393402
|
label,
|
|
@@ -393520,7 +393407,7 @@ var ContextUsageDisplay = /* @__PURE__ */ __name(({
|
|
|
393520
393407
|
// packages/cli/src/ui/components/DebugProfiler.tsx
|
|
393521
393408
|
init_esbuild_shims();
|
|
393522
393409
|
var import_react96 = __toESM(require_react(), 1);
|
|
393523
|
-
var
|
|
393410
|
+
var import_jsx_runtime97 = __toESM(require_jsx_runtime(), 1);
|
|
393524
393411
|
var DebugProfiler = /* @__PURE__ */ __name(() => {
|
|
393525
393412
|
const numRenders = (0, import_react96.useRef)(0);
|
|
393526
393413
|
const [showNumRenders, setShowNumRenders] = (0, import_react96.useState)(false);
|
|
@@ -393538,7 +393425,7 @@ var DebugProfiler = /* @__PURE__ */ __name(() => {
|
|
|
393538
393425
|
if (!showNumRenders) {
|
|
393539
393426
|
return null;
|
|
393540
393427
|
}
|
|
393541
|
-
return /* @__PURE__ */ (0,
|
|
393428
|
+
return /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(Text3, { color: theme.status.warning, children: [
|
|
393542
393429
|
"Renders: ",
|
|
393543
393430
|
numRenders.current,
|
|
393544
393431
|
" "
|
|
@@ -393546,7 +393433,7 @@ var DebugProfiler = /* @__PURE__ */ __name(() => {
|
|
|
393546
393433
|
}, "DebugProfiler");
|
|
393547
393434
|
|
|
393548
393435
|
// packages/cli/src/ui/components/Footer.tsx
|
|
393549
|
-
var
|
|
393436
|
+
var import_jsx_runtime98 = __toESM(require_jsx_runtime(), 1);
|
|
393550
393437
|
var Footer = /* @__PURE__ */ __name(() => {
|
|
393551
393438
|
const uiState = useUIState();
|
|
393552
393439
|
const config2 = useConfig();
|
|
@@ -393586,7 +393473,7 @@ var Footer = /* @__PURE__ */ __name(() => {
|
|
|
393586
393473
|
const displayPath = shortenPath(tildeifyPath(targetDir), pathLength);
|
|
393587
393474
|
const justifyContent = hideCWD && hideModelInfo ? "center" : "space-between";
|
|
393588
393475
|
const displayVimMode = vimEnabled ? vimMode : void 0;
|
|
393589
|
-
return /* @__PURE__ */ (0,
|
|
393476
|
+
return /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(
|
|
393590
393477
|
Box_default,
|
|
393591
393478
|
{
|
|
393592
393479
|
justifyContent,
|
|
@@ -393594,57 +393481,57 @@ var Footer = /* @__PURE__ */ __name(() => {
|
|
|
393594
393481
|
flexDirection: "row",
|
|
393595
393482
|
alignItems: "center",
|
|
393596
393483
|
children: [
|
|
393597
|
-
(debugMode || displayVimMode || !hideCWD) && /* @__PURE__ */ (0,
|
|
393598
|
-
debugMode && /* @__PURE__ */ (0,
|
|
393599
|
-
displayVimMode && /* @__PURE__ */ (0,
|
|
393484
|
+
(debugMode || displayVimMode || !hideCWD) && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Box_default, { children: [
|
|
393485
|
+
debugMode && /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(DebugProfiler, {}),
|
|
393486
|
+
displayVimMode && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.text.secondary, children: [
|
|
393600
393487
|
"[",
|
|
393601
393488
|
displayVimMode,
|
|
393602
393489
|
"] "
|
|
393603
393490
|
] }),
|
|
393604
|
-
!hideCWD && (nightly ? /* @__PURE__ */ (0,
|
|
393491
|
+
!hideCWD && (nightly ? /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(dist_default5, { colors: theme.ui.gradient, children: /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { children: [
|
|
393605
393492
|
displayPath,
|
|
393606
|
-
branchName && /* @__PURE__ */ (0,
|
|
393493
|
+
branchName && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { children: [
|
|
393607
393494
|
" (",
|
|
393608
393495
|
branchName,
|
|
393609
393496
|
"*)"
|
|
393610
393497
|
] })
|
|
393611
|
-
] }) }) : /* @__PURE__ */ (0,
|
|
393498
|
+
] }) }) : /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.text.link, children: [
|
|
393612
393499
|
displayPath,
|
|
393613
|
-
branchName && /* @__PURE__ */ (0,
|
|
393500
|
+
branchName && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.text.secondary, children: [
|
|
393614
393501
|
" (",
|
|
393615
393502
|
branchName,
|
|
393616
393503
|
"*)"
|
|
393617
393504
|
] })
|
|
393618
393505
|
] })),
|
|
393619
|
-
debugMode && /* @__PURE__ */ (0,
|
|
393506
|
+
debugMode && /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.status.error, children: " " + (debugMessage || "--debug") })
|
|
393620
393507
|
] }),
|
|
393621
|
-
!hideSandboxStatus && /* @__PURE__ */ (0,
|
|
393508
|
+
!hideSandboxStatus && /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(
|
|
393622
393509
|
Box_default,
|
|
393623
393510
|
{
|
|
393624
393511
|
flexGrow: 1,
|
|
393625
393512
|
alignItems: "center",
|
|
393626
393513
|
justifyContent: "center",
|
|
393627
393514
|
display: "flex",
|
|
393628
|
-
children: isTrustedFolder === false ? /* @__PURE__ */ (0,
|
|
393515
|
+
children: isTrustedFolder === false ? /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.status.warning, children: "untrusted" }) : process35.env["SANDBOX"] && process35.env["SANDBOX"] !== "sandbox-exec" ? /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: "green", children: process35.env["SANDBOX"].replace(/^gemini-(?:cli-)?/, "") }) : process35.env["SANDBOX"] === "sandbox-exec" ? /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.status.warning, children: [
|
|
393629
393516
|
"macOS Seatbelt",
|
|
393630
393517
|
" ",
|
|
393631
|
-
/* @__PURE__ */ (0,
|
|
393518
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.text.secondary, children: [
|
|
393632
393519
|
"(",
|
|
393633
393520
|
process35.env["SEATBELT_PROFILE"],
|
|
393634
393521
|
")"
|
|
393635
393522
|
] })
|
|
393636
|
-
] }) : /* @__PURE__ */ (0,
|
|
393523
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.status.error, children: [
|
|
393637
393524
|
"no sandbox",
|
|
393638
|
-
terminalWidth >= 100 && /* @__PURE__ */ (0,
|
|
393525
|
+
terminalWidth >= 100 && /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.text.secondary, children: " (see /docs)" })
|
|
393639
393526
|
] })
|
|
393640
393527
|
}
|
|
393641
393528
|
),
|
|
393642
|
-
!hideModelInfo && /* @__PURE__ */ (0,
|
|
393643
|
-
/* @__PURE__ */ (0,
|
|
393644
|
-
/* @__PURE__ */ (0,
|
|
393529
|
+
!hideModelInfo && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Box_default, { alignItems: "center", justifyContent: "flex-end", children: [
|
|
393530
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Box_default, { alignItems: "center", children: [
|
|
393531
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.text.accent, children: [
|
|
393645
393532
|
model,
|
|
393646
393533
|
" ",
|
|
393647
|
-
/* @__PURE__ */ (0,
|
|
393534
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsx)(
|
|
393648
393535
|
ContextUsageDisplay,
|
|
393649
393536
|
{
|
|
393650
393537
|
promptTokenCount,
|
|
@@ -393653,20 +393540,20 @@ var Footer = /* @__PURE__ */ __name(() => {
|
|
|
393653
393540
|
}
|
|
393654
393541
|
)
|
|
393655
393542
|
] }),
|
|
393656
|
-
showMemoryUsage && /* @__PURE__ */ (0,
|
|
393543
|
+
showMemoryUsage && /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(MemoryUsageDisplay, {})
|
|
393657
393544
|
] }),
|
|
393658
|
-
/* @__PURE__ */ (0,
|
|
393659
|
-
corgiMode && /* @__PURE__ */ (0,
|
|
393660
|
-
/* @__PURE__ */ (0,
|
|
393661
|
-
/* @__PURE__ */ (0,
|
|
393662
|
-
/* @__PURE__ */ (0,
|
|
393663
|
-
/* @__PURE__ */ (0,
|
|
393664
|
-
/* @__PURE__ */ (0,
|
|
393665
|
-
/* @__PURE__ */ (0,
|
|
393545
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Box_default, { alignItems: "center", paddingLeft: 2, children: [
|
|
393546
|
+
corgiMode && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { children: [
|
|
393547
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.ui.symbol, children: "| " }),
|
|
393548
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.status.error, children: "\u25BC" }),
|
|
393549
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.text.primary, children: "(\xB4" }),
|
|
393550
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.status.error, children: "\u1D25" }),
|
|
393551
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.text.primary, children: "`)" }),
|
|
393552
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.status.error, children: "\u25BC " })
|
|
393666
393553
|
] }),
|
|
393667
|
-
!showErrorDetails && errorCount > 0 && /* @__PURE__ */ (0,
|
|
393668
|
-
/* @__PURE__ */ (0,
|
|
393669
|
-
/* @__PURE__ */ (0,
|
|
393554
|
+
!showErrorDetails && errorCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Box_default, { children: [
|
|
393555
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.ui.symbol, children: "| " }),
|
|
393556
|
+
/* @__PURE__ */ (0, import_jsx_runtime98.jsx)(ConsoleSummaryDisplay, { errorCount })
|
|
393670
393557
|
] })
|
|
393671
393558
|
] })
|
|
393672
393559
|
] })
|
|
@@ -393677,7 +393564,7 @@ var Footer = /* @__PURE__ */ __name(() => {
|
|
|
393677
393564
|
|
|
393678
393565
|
// packages/cli/src/ui/components/QueuedMessageDisplay.tsx
|
|
393679
393566
|
init_esbuild_shims();
|
|
393680
|
-
var
|
|
393567
|
+
var import_jsx_runtime99 = __toESM(require_jsx_runtime(), 1);
|
|
393681
393568
|
var MAX_DISPLAYED_QUEUED_MESSAGES = 3;
|
|
393682
393569
|
var QueuedMessageDisplay = /* @__PURE__ */ __name(({
|
|
393683
393570
|
messageQueue
|
|
@@ -393685,12 +393572,12 @@ var QueuedMessageDisplay = /* @__PURE__ */ __name(({
|
|
|
393685
393572
|
if (messageQueue.length === 0) {
|
|
393686
393573
|
return null;
|
|
393687
393574
|
}
|
|
393688
|
-
return /* @__PURE__ */ (0,
|
|
393575
|
+
return /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Box_default, { flexDirection: "column", marginTop: 1, children: [
|
|
393689
393576
|
messageQueue.slice(0, MAX_DISPLAYED_QUEUED_MESSAGES).map((message, index) => {
|
|
393690
393577
|
const preview = message.replace(/\s+/g, " ");
|
|
393691
|
-
return /* @__PURE__ */ (0,
|
|
393578
|
+
return /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Box_default, { paddingLeft: 2, width: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { dimColor: true, wrap: "truncate", children: preview }) }, index);
|
|
393692
393579
|
}),
|
|
393693
|
-
messageQueue.length > MAX_DISPLAYED_QUEUED_MESSAGES && /* @__PURE__ */ (0,
|
|
393580
|
+
messageQueue.length > MAX_DISPLAYED_QUEUED_MESSAGES && /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Box_default, { paddingLeft: 2, children: /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { dimColor: true, children: [
|
|
393694
393581
|
"... (+",
|
|
393695
393582
|
messageQueue.length - MAX_DISPLAYED_QUEUED_MESSAGES,
|
|
393696
393583
|
" more)"
|
|
@@ -393705,7 +393592,7 @@ init_core4();
|
|
|
393705
393592
|
init_esbuild_shims();
|
|
393706
393593
|
var import_react97 = __toESM(require_react(), 1);
|
|
393707
393594
|
init_core4();
|
|
393708
|
-
var
|
|
393595
|
+
var import_jsx_runtime100 = __toESM(require_jsx_runtime(), 1);
|
|
393709
393596
|
var ConfigInitDisplay = /* @__PURE__ */ __name(() => {
|
|
393710
393597
|
const config2 = useConfig();
|
|
393711
393598
|
const [message, setMessage] = (0, import_react97.useState)(t3("Initializing..."));
|
|
@@ -393733,15 +393620,15 @@ var ConfigInitDisplay = /* @__PURE__ */ __name(() => {
|
|
|
393733
393620
|
appEvents.off("mcp-client-update", onChange);
|
|
393734
393621
|
};
|
|
393735
393622
|
}, [config2]);
|
|
393736
|
-
return /* @__PURE__ */ (0,
|
|
393737
|
-
/* @__PURE__ */ (0,
|
|
393623
|
+
return /* @__PURE__ */ (0, import_jsx_runtime100.jsx)(Box_default, { marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime100.jsxs)(Text3, { children: [
|
|
393624
|
+
/* @__PURE__ */ (0, import_jsx_runtime100.jsx)(GeminiSpinner, {}),
|
|
393738
393625
|
" ",
|
|
393739
|
-
/* @__PURE__ */ (0,
|
|
393626
|
+
/* @__PURE__ */ (0, import_jsx_runtime100.jsx)(Text3, { color: theme.text.primary, children: message })
|
|
393740
393627
|
] }) });
|
|
393741
393628
|
}, "ConfigInitDisplay");
|
|
393742
393629
|
|
|
393743
393630
|
// packages/cli/src/ui/components/Composer.tsx
|
|
393744
|
-
var
|
|
393631
|
+
var import_jsx_runtime101 = __toESM(require_jsx_runtime(), 1);
|
|
393745
393632
|
var Composer = /* @__PURE__ */ __name(() => {
|
|
393746
393633
|
const config2 = useConfig();
|
|
393747
393634
|
const settings = useSettings();
|
|
@@ -393757,8 +393644,8 @@ var Composer = /* @__PURE__ */ __name(() => {
|
|
|
393757
393644
|
() => calculatePromptWidths(uiState.terminalWidth),
|
|
393758
393645
|
[uiState.terminalWidth]
|
|
393759
393646
|
);
|
|
393760
|
-
return /* @__PURE__ */ (0,
|
|
393761
|
-
!uiState.embeddedShellFocused && /* @__PURE__ */ (0,
|
|
393647
|
+
return /* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(Box_default, { flexDirection: "column", children: [
|
|
393648
|
+
!uiState.embeddedShellFocused && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
|
|
393762
393649
|
LoadingIndicator,
|
|
393763
393650
|
{
|
|
393764
393651
|
thought: uiState.streamingState === "waiting_for_confirmation" /* WaitingForConfirmation */ || config2.getAccessibility()?.disableLoadingPhrases ? void 0 : uiState.thought,
|
|
@@ -393766,9 +393653,9 @@ var Composer = /* @__PURE__ */ __name(() => {
|
|
|
393766
393653
|
elapsedTime: uiState.elapsedTime
|
|
393767
393654
|
}
|
|
393768
393655
|
),
|
|
393769
|
-
!uiState.isConfigInitialized && /* @__PURE__ */ (0,
|
|
393770
|
-
/* @__PURE__ */ (0,
|
|
393771
|
-
/* @__PURE__ */ (0,
|
|
393656
|
+
!uiState.isConfigInitialized && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(ConfigInitDisplay, {}),
|
|
393657
|
+
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)(QueuedMessageDisplay, { messageQueue: uiState.messageQueue }),
|
|
393658
|
+
/* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(
|
|
393772
393659
|
Box_default,
|
|
393773
393660
|
{
|
|
393774
393661
|
marginTop: 1,
|
|
@@ -393777,9 +393664,9 @@ var Composer = /* @__PURE__ */ __name(() => {
|
|
|
393777
393664
|
flexDirection: isNarrow ? "column" : "row",
|
|
393778
393665
|
alignItems: isNarrow ? "flex-start" : "center",
|
|
393779
393666
|
children: [
|
|
393780
|
-
/* @__PURE__ */ (0,
|
|
393781
|
-
process.env["GEMINI_SYSTEM_MD"] && /* @__PURE__ */ (0,
|
|
393782
|
-
uiState.ctrlCPressedOnce ? /* @__PURE__ */ (0,
|
|
393667
|
+
/* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(Box_default, { marginRight: 1, children: [
|
|
393668
|
+
process.env["GEMINI_SYSTEM_MD"] && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Text3, { color: theme.status.error, children: "|\u2310\u25A0_\u25A0| " }),
|
|
393669
|
+
uiState.ctrlCPressedOnce ? /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Text3, { color: theme.status.warning, children: t3("Press Ctrl+C again to exit.") }) : uiState.ctrlDPressedOnce ? /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Text3, { color: theme.status.warning, children: t3("Press Ctrl+D again to exit.") }) : uiState.showEscapePrompt ? /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Text3, { color: theme.text.secondary, children: t3("Press Esc again to clear.") }) : !settings.merged.ui?.hideContextSummary && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
|
|
393783
393670
|
ContextSummaryDisplay,
|
|
393784
393671
|
{
|
|
393785
393672
|
ideContext: uiState.ideContextState,
|
|
@@ -393791,15 +393678,15 @@ var Composer = /* @__PURE__ */ __name(() => {
|
|
|
393791
393678
|
}
|
|
393792
393679
|
)
|
|
393793
393680
|
] }),
|
|
393794
|
-
/* @__PURE__ */ (0,
|
|
393795
|
-
showAutoAcceptIndicator !== "default" /* DEFAULT */ && !uiState.shellModeActive && /* @__PURE__ */ (0,
|
|
393796
|
-
uiState.shellModeActive && /* @__PURE__ */ (0,
|
|
393681
|
+
/* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(Box_default, { paddingTop: isNarrow ? 1 : 0, children: [
|
|
393682
|
+
showAutoAcceptIndicator !== "default" /* DEFAULT */ && !uiState.shellModeActive && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(AutoAcceptIndicator, { approvalMode: showAutoAcceptIndicator }),
|
|
393683
|
+
uiState.shellModeActive && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(ShellModeIndicator, {})
|
|
393797
393684
|
] })
|
|
393798
393685
|
]
|
|
393799
393686
|
}
|
|
393800
393687
|
),
|
|
393801
|
-
uiState.showErrorDetails && /* @__PURE__ */ (0,
|
|
393802
|
-
/* @__PURE__ */ (0,
|
|
393688
|
+
uiState.showErrorDetails && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(OverflowProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(Box_default, { flexDirection: "column", children: [
|
|
393689
|
+
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
|
|
393803
393690
|
DetailedMessagesDisplay,
|
|
393804
393691
|
{
|
|
393805
393692
|
messages: uiState.filteredConsoleMessages,
|
|
@@ -393807,9 +393694,9 @@ var Composer = /* @__PURE__ */ __name(() => {
|
|
|
393807
393694
|
width: containerWidth
|
|
393808
393695
|
}
|
|
393809
393696
|
),
|
|
393810
|
-
/* @__PURE__ */ (0,
|
|
393697
|
+
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)(ShowMoreLines, { constrainHeight: uiState.constrainHeight })
|
|
393811
393698
|
] }) }),
|
|
393812
|
-
uiState.isInputActive && /* @__PURE__ */ (0,
|
|
393699
|
+
uiState.isInputActive && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
|
|
393813
393700
|
InputPrompt,
|
|
393814
393701
|
{
|
|
393815
393702
|
buffer: uiState.buffer,
|
|
@@ -393831,65 +393718,65 @@ var Composer = /* @__PURE__ */ __name(() => {
|
|
|
393831
393718
|
placeholder: vimEnabled ? " " + t3("Press 'i' for INSERT mode and 'Esc' for NORMAL mode.") : " " + t3("Type your message or @path/to/file")
|
|
393832
393719
|
}
|
|
393833
393720
|
),
|
|
393834
|
-
!settings.merged.ui?.hideFooter && !isScreenReaderEnabled && /* @__PURE__ */ (0,
|
|
393721
|
+
!settings.merged.ui?.hideFooter && !isScreenReaderEnabled && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Footer, {})
|
|
393835
393722
|
] });
|
|
393836
393723
|
}, "Composer");
|
|
393837
393724
|
|
|
393838
393725
|
// packages/cli/src/ui/components/ExitWarning.tsx
|
|
393839
393726
|
init_esbuild_shims();
|
|
393840
|
-
var
|
|
393727
|
+
var import_jsx_runtime102 = __toESM(require_jsx_runtime(), 1);
|
|
393841
393728
|
var ExitWarning = /* @__PURE__ */ __name(() => {
|
|
393842
393729
|
const uiState = useUIState();
|
|
393843
|
-
return /* @__PURE__ */ (0,
|
|
393844
|
-
uiState.dialogsVisible && uiState.ctrlCPressedOnce && /* @__PURE__ */ (0,
|
|
393845
|
-
uiState.dialogsVisible && uiState.ctrlDPressedOnce && /* @__PURE__ */ (0,
|
|
393730
|
+
return /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(import_jsx_runtime102.Fragment, { children: [
|
|
393731
|
+
uiState.dialogsVisible && uiState.ctrlCPressedOnce && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Box_default, { marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Text3, { color: theme.status.warning, children: "Press Ctrl+C again to exit." }) }),
|
|
393732
|
+
uiState.dialogsVisible && uiState.ctrlDPressedOnce && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Box_default, { marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Text3, { color: theme.status.warning, children: "Press Ctrl+D again to exit." }) })
|
|
393846
393733
|
] });
|
|
393847
393734
|
}, "ExitWarning");
|
|
393848
393735
|
|
|
393849
393736
|
// packages/cli/src/ui/layouts/ScreenReaderAppLayout.tsx
|
|
393850
|
-
var
|
|
393737
|
+
var import_jsx_runtime103 = __toESM(require_jsx_runtime(), 1);
|
|
393851
393738
|
var ScreenReaderAppLayout = /* @__PURE__ */ __name(() => {
|
|
393852
393739
|
const uiState = useUIState();
|
|
393853
|
-
return /* @__PURE__ */ (0,
|
|
393854
|
-
/* @__PURE__ */ (0,
|
|
393855
|
-
/* @__PURE__ */ (0,
|
|
393856
|
-
/* @__PURE__ */ (0,
|
|
393857
|
-
uiState.dialogsVisible ? /* @__PURE__ */ (0,
|
|
393740
|
+
return /* @__PURE__ */ (0, import_jsx_runtime103.jsxs)(Box_default, { flexDirection: "column", width: "90%", height: "100%", children: [
|
|
393741
|
+
/* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Notifications, {}),
|
|
393742
|
+
/* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Footer, {}),
|
|
393743
|
+
/* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Box_default, { flexGrow: 1, overflow: "hidden", children: /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(MainContent, {}) }),
|
|
393744
|
+
uiState.dialogsVisible ? /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(
|
|
393858
393745
|
DialogManager,
|
|
393859
393746
|
{
|
|
393860
393747
|
terminalWidth: uiState.terminalWidth,
|
|
393861
393748
|
addItem: uiState.historyManager.addItem
|
|
393862
393749
|
}
|
|
393863
|
-
) : /* @__PURE__ */ (0,
|
|
393864
|
-
/* @__PURE__ */ (0,
|
|
393750
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Composer, {}),
|
|
393751
|
+
/* @__PURE__ */ (0, import_jsx_runtime103.jsx)(ExitWarning, {})
|
|
393865
393752
|
] });
|
|
393866
393753
|
}, "ScreenReaderAppLayout");
|
|
393867
393754
|
|
|
393868
393755
|
// packages/cli/src/ui/layouts/DefaultAppLayout.tsx
|
|
393869
393756
|
init_esbuild_shims();
|
|
393870
|
-
var
|
|
393757
|
+
var import_jsx_runtime104 = __toESM(require_jsx_runtime(), 1);
|
|
393871
393758
|
var DefaultAppLayout = /* @__PURE__ */ __name(({
|
|
393872
393759
|
width = "90%"
|
|
393873
393760
|
}) => {
|
|
393874
393761
|
const uiState = useUIState();
|
|
393875
|
-
return /* @__PURE__ */ (0,
|
|
393876
|
-
/* @__PURE__ */ (0,
|
|
393877
|
-
/* @__PURE__ */ (0,
|
|
393878
|
-
/* @__PURE__ */ (0,
|
|
393879
|
-
uiState.dialogsVisible ? /* @__PURE__ */ (0,
|
|
393762
|
+
return /* @__PURE__ */ (0, import_jsx_runtime104.jsxs)(Box_default, { flexDirection: "column", width, children: [
|
|
393763
|
+
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)(MainContent, {}),
|
|
393764
|
+
/* @__PURE__ */ (0, import_jsx_runtime104.jsxs)(Box_default, { flexDirection: "column", ref: uiState.mainControlsRef, children: [
|
|
393765
|
+
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)(Notifications, {}),
|
|
393766
|
+
uiState.dialogsVisible ? /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(
|
|
393880
393767
|
DialogManager,
|
|
393881
393768
|
{
|
|
393882
393769
|
terminalWidth: uiState.terminalWidth,
|
|
393883
393770
|
addItem: uiState.historyManager.addItem
|
|
393884
393771
|
}
|
|
393885
|
-
) : /* @__PURE__ */ (0,
|
|
393886
|
-
/* @__PURE__ */ (0,
|
|
393772
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(Composer, {}),
|
|
393773
|
+
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)(ExitWarning, {})
|
|
393887
393774
|
] })
|
|
393888
393775
|
] });
|
|
393889
393776
|
}, "DefaultAppLayout");
|
|
393890
393777
|
|
|
393891
393778
|
// packages/cli/src/ui/App.tsx
|
|
393892
|
-
var
|
|
393779
|
+
var import_jsx_runtime105 = __toESM(require_jsx_runtime(), 1);
|
|
393893
393780
|
var getContainerWidth = /* @__PURE__ */ __name((terminalWidth) => {
|
|
393894
393781
|
if (terminalWidth <= 80) {
|
|
393895
393782
|
return "98%";
|
|
@@ -393907,9 +393794,9 @@ var App2 = /* @__PURE__ */ __name(() => {
|
|
|
393907
393794
|
const { columns } = useTerminalSize();
|
|
393908
393795
|
const containerWidth = getContainerWidth(columns);
|
|
393909
393796
|
if (uiState.quittingMessages) {
|
|
393910
|
-
return /* @__PURE__ */ (0,
|
|
393797
|
+
return /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(QuittingDisplay, {});
|
|
393911
393798
|
}
|
|
393912
|
-
return /* @__PURE__ */ (0,
|
|
393799
|
+
return /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(StreamingContext.Provider, { value: uiState.streamingState, children: isScreenReaderEnabled ? /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(ScreenReaderAppLayout, {}) : /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(DefaultAppLayout, { width: containerWidth }) });
|
|
393913
393800
|
}, "App");
|
|
393914
393801
|
|
|
393915
393802
|
// packages/cli/src/ui/AppContainer.tsx
|
|
@@ -395597,7 +395484,6 @@ function serializeHistoryItemForRecording(item) {
|
|
|
395597
395484
|
__name(serializeHistoryItemForRecording, "serializeHistoryItemForRecording");
|
|
395598
395485
|
var SLASH_COMMANDS_SKIP_RECORDING = /* @__PURE__ */ new Set([
|
|
395599
395486
|
"quit",
|
|
395600
|
-
"quit-confirm",
|
|
395601
395487
|
"exit",
|
|
395602
395488
|
"clear",
|
|
395603
395489
|
"reset",
|
|
@@ -395612,7 +395498,6 @@ var useSlashCommandProcessor = /* @__PURE__ */ __name((config2, settings, addIte
|
|
|
395612
395498
|
}, []);
|
|
395613
395499
|
const [shellConfirmationRequest, setShellConfirmationRequest] = (0, import_react108.useState)(null);
|
|
395614
395500
|
const [confirmationRequest, setConfirmationRequest] = (0, import_react108.useState)(null);
|
|
395615
|
-
const [quitConfirmationRequest, setQuitConfirmationRequest] = (0, import_react108.useState)(null);
|
|
395616
395501
|
const [sessionShellAllowlist, setSessionShellAllowlist] = (0, import_react108.useState)(
|
|
395617
395502
|
/* @__PURE__ */ new Set()
|
|
395618
395503
|
);
|
|
@@ -395663,11 +395548,6 @@ var useSlashCommandProcessor = /* @__PURE__ */ __name((config2, settings, addIte
|
|
|
395663
395548
|
type: "quit",
|
|
395664
395549
|
duration: message.duration
|
|
395665
395550
|
};
|
|
395666
|
-
} else if (message.type === "quit_confirmation" /* QUIT_CONFIRMATION */) {
|
|
395667
|
-
historyItemContent = {
|
|
395668
|
-
type: "quit_confirmation",
|
|
395669
|
-
duration: message.duration
|
|
395670
|
-
};
|
|
395671
395551
|
} else if (message.type === "compression" /* COMPRESSION */) {
|
|
395672
395552
|
historyItemContent = {
|
|
395673
395553
|
type: "compression",
|
|
@@ -395906,52 +395786,6 @@ var useSlashCommandProcessor = /* @__PURE__ */ __name((config2, settings, addIte
|
|
|
395906
395786
|
});
|
|
395907
395787
|
return { type: "handled" };
|
|
395908
395788
|
}
|
|
395909
|
-
case "quit_confirmation":
|
|
395910
|
-
setQuitConfirmationRequest({
|
|
395911
|
-
onConfirm: /* @__PURE__ */ __name((shouldQuit, action) => {
|
|
395912
|
-
setQuitConfirmationRequest(null);
|
|
395913
|
-
if (!shouldQuit) {
|
|
395914
|
-
return;
|
|
395915
|
-
}
|
|
395916
|
-
if (shouldQuit) {
|
|
395917
|
-
if (action === "summary_and_quit") {
|
|
395918
|
-
handleSlashCommand2("/summary").then(() => {
|
|
395919
|
-
setTimeout(() => {
|
|
395920
|
-
handleSlashCommand2("/quit");
|
|
395921
|
-
}, 1200);
|
|
395922
|
-
}).catch((error2) => {
|
|
395923
|
-
addItemWithRecording(
|
|
395924
|
-
{
|
|
395925
|
-
type: "error",
|
|
395926
|
-
text: `Failed to generate summary before quit: ${error2 instanceof Error ? error2.message : String(error2)}`
|
|
395927
|
-
},
|
|
395928
|
-
Date.now()
|
|
395929
|
-
);
|
|
395930
|
-
setTimeout(() => {
|
|
395931
|
-
handleSlashCommand2("/quit");
|
|
395932
|
-
}, 1e3);
|
|
395933
|
-
});
|
|
395934
|
-
} else {
|
|
395935
|
-
const now = Date.now();
|
|
395936
|
-
const { sessionStartTime } = sessionStats;
|
|
395937
|
-
const wallDuration = now - sessionStartTime.getTime();
|
|
395938
|
-
actions.quit([
|
|
395939
|
-
{
|
|
395940
|
-
type: "user",
|
|
395941
|
-
text: `/quit`,
|
|
395942
|
-
id: now - 1
|
|
395943
|
-
},
|
|
395944
|
-
{
|
|
395945
|
-
type: "quit",
|
|
395946
|
-
duration: formatDuration(wallDuration),
|
|
395947
|
-
id: now
|
|
395948
|
-
}
|
|
395949
|
-
]);
|
|
395950
|
-
}
|
|
395951
|
-
}
|
|
395952
|
-
}, "onConfirm")
|
|
395953
|
-
});
|
|
395954
|
-
return { type: "handled" };
|
|
395955
395789
|
case "quit":
|
|
395956
395790
|
actions.quit(result.messages);
|
|
395957
395791
|
return { type: "handled" };
|
|
@@ -396121,8 +395955,7 @@ ${commandToExecute.subCommands.map((sc) => ` - ${sc.name}: ${sc.description ||
|
|
|
396121
395955
|
setShellConfirmationRequest,
|
|
396122
395956
|
setSessionShellAllowlist,
|
|
396123
395957
|
setIsProcessing,
|
|
396124
|
-
setConfirmationRequest
|
|
396125
|
-
sessionStats
|
|
395958
|
+
setConfirmationRequest
|
|
396126
395959
|
]
|
|
396127
395960
|
);
|
|
396128
395961
|
return {
|
|
@@ -396132,7 +395965,6 @@ ${commandToExecute.subCommands.map((sc) => ` - ${sc.name}: ${sc.description ||
|
|
|
396132
395965
|
commandContext,
|
|
396133
395966
|
shellConfirmationRequest,
|
|
396134
395967
|
confirmationRequest,
|
|
396135
|
-
quitConfirmationRequest,
|
|
396136
395968
|
reloadCommands
|
|
396137
395969
|
};
|
|
396138
395970
|
}, "useSlashCommandProcessor");
|
|
@@ -397219,6 +397051,9 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
397219
397051
|
const trimmedQuery = query.trim();
|
|
397220
397052
|
onDebugMessage(`User query: '${trimmedQuery}'`);
|
|
397221
397053
|
await logger6?.logMessage("user" /* USER */, trimmedQuery);
|
|
397054
|
+
if (shellModeActive && handleShellCommand(trimmedQuery, abortSignal)) {
|
|
397055
|
+
return { queryToSend: null, shouldProceed: false };
|
|
397056
|
+
}
|
|
397222
397057
|
const slashCommandResult = isSlashCommand(trimmedQuery) ? await handleSlashCommand2(trimmedQuery) : false;
|
|
397223
397058
|
if (slashCommandResult) {
|
|
397224
397059
|
switch (slashCommandResult.type) {
|
|
@@ -397252,9 +397087,6 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
|
|
|
397252
397087
|
}
|
|
397253
397088
|
}
|
|
397254
397089
|
}
|
|
397255
|
-
if (shellModeActive && handleShellCommand(trimmedQuery, abortSignal)) {
|
|
397256
|
-
return { queryToSend: null, shouldProceed: false };
|
|
397257
|
-
}
|
|
397258
397090
|
if (isAtCommand(trimmedQuery)) {
|
|
397259
397091
|
const atCommandResult = await handleAtCommand({
|
|
397260
397092
|
query: trimmedQuery,
|
|
@@ -402258,44 +402090,18 @@ var useExtensionUpdates = /* @__PURE__ */ __name((extensions, addItem, cwd7) =>
|
|
|
402258
402090
|
};
|
|
402259
402091
|
}, "useExtensionUpdates");
|
|
402260
402092
|
|
|
402261
|
-
// packages/cli/src/ui/hooks/useQuitConfirmation.ts
|
|
402262
|
-
init_esbuild_shims();
|
|
402263
|
-
var import_react127 = __toESM(require_react(), 1);
|
|
402264
|
-
var useQuitConfirmation = /* @__PURE__ */ __name(() => {
|
|
402265
|
-
const [isQuitConfirmationOpen, setIsQuitConfirmationOpen] = (0, import_react127.useState)(false);
|
|
402266
|
-
const showQuitConfirmation = (0, import_react127.useCallback)(() => {
|
|
402267
|
-
setIsQuitConfirmationOpen(true);
|
|
402268
|
-
}, []);
|
|
402269
|
-
const handleQuitConfirmationSelect = (0, import_react127.useCallback)((choice2) => {
|
|
402270
|
-
setIsQuitConfirmationOpen(false);
|
|
402271
|
-
if (choice2 === "cancel" /* CANCEL */) {
|
|
402272
|
-
return { shouldQuit: false, action: "cancel" };
|
|
402273
|
-
} else if (choice2 === "quit" /* QUIT */) {
|
|
402274
|
-
return { shouldQuit: true, action: "quit" };
|
|
402275
|
-
} else if (choice2 === "summary_and_quit" /* SUMMARY_AND_QUIT */) {
|
|
402276
|
-
return { shouldQuit: true, action: "summary_and_quit" };
|
|
402277
|
-
}
|
|
402278
|
-
return { shouldQuit: false, action: "cancel" };
|
|
402279
|
-
}, []);
|
|
402280
|
-
return {
|
|
402281
|
-
isQuitConfirmationOpen,
|
|
402282
|
-
showQuitConfirmation,
|
|
402283
|
-
handleQuitConfirmationSelect
|
|
402284
|
-
};
|
|
402285
|
-
}, "useQuitConfirmation");
|
|
402286
|
-
|
|
402287
402093
|
// packages/cli/src/ui/hooks/useWelcomeBack.ts
|
|
402288
402094
|
init_esbuild_shims();
|
|
402289
|
-
var
|
|
402095
|
+
var import_react127 = __toESM(require_react(), 1);
|
|
402290
402096
|
init_core4();
|
|
402291
402097
|
init_settingsSchema();
|
|
402292
402098
|
function useWelcomeBack(config2, submitQuery, buffer, settings) {
|
|
402293
|
-
const [welcomeBackInfo, setWelcomeBackInfo] = (0,
|
|
402294
|
-
const [showWelcomeBackDialog, setShowWelcomeBackDialog] = (0,
|
|
402295
|
-
const [welcomeBackChoice, setWelcomeBackChoice] = (0,
|
|
402296
|
-
const [shouldFillInput, setShouldFillInput] = (0,
|
|
402297
|
-
const [inputFillText, setInputFillText] = (0,
|
|
402298
|
-
const checkWelcomeBack = (0,
|
|
402099
|
+
const [welcomeBackInfo, setWelcomeBackInfo] = (0, import_react127.useState)(null);
|
|
402100
|
+
const [showWelcomeBackDialog, setShowWelcomeBackDialog] = (0, import_react127.useState)(false);
|
|
402101
|
+
const [welcomeBackChoice, setWelcomeBackChoice] = (0, import_react127.useState)(null);
|
|
402102
|
+
const [shouldFillInput, setShouldFillInput] = (0, import_react127.useState)(false);
|
|
402103
|
+
const [inputFillText, setInputFillText] = (0, import_react127.useState)(null);
|
|
402104
|
+
const checkWelcomeBack = (0, import_react127.useCallback)(async () => {
|
|
402299
402105
|
if (settings.ui?.enableWelcomeBack === false) {
|
|
402300
402106
|
return;
|
|
402301
402107
|
}
|
|
@@ -402309,7 +402115,7 @@ function useWelcomeBack(config2, submitQuery, buffer, settings) {
|
|
|
402309
402115
|
console.debug("Welcome back check failed:", error2);
|
|
402310
402116
|
}
|
|
402311
402117
|
}, [settings.ui?.enableWelcomeBack]);
|
|
402312
|
-
const handleWelcomeBackSelection = (0,
|
|
402118
|
+
const handleWelcomeBackSelection = (0, import_react127.useCallback)(
|
|
402313
402119
|
(choice2) => {
|
|
402314
402120
|
setWelcomeBackChoice(choice2);
|
|
402315
402121
|
setShowWelcomeBackDialog(false);
|
|
@@ -402321,21 +402127,21 @@ function useWelcomeBack(config2, submitQuery, buffer, settings) {
|
|
|
402321
402127
|
},
|
|
402322
402128
|
[welcomeBackInfo]
|
|
402323
402129
|
);
|
|
402324
|
-
const handleWelcomeBackClose = (0,
|
|
402130
|
+
const handleWelcomeBackClose = (0, import_react127.useCallback)(() => {
|
|
402325
402131
|
setWelcomeBackChoice("restart");
|
|
402326
402132
|
setShowWelcomeBackDialog(false);
|
|
402327
402133
|
}, []);
|
|
402328
|
-
const clearInputFill = (0,
|
|
402134
|
+
const clearInputFill = (0, import_react127.useCallback)(() => {
|
|
402329
402135
|
setShouldFillInput(false);
|
|
402330
402136
|
setInputFillText(null);
|
|
402331
402137
|
}, []);
|
|
402332
|
-
(0,
|
|
402138
|
+
(0, import_react127.useEffect)(() => {
|
|
402333
402139
|
if (shouldFillInput && inputFillText) {
|
|
402334
402140
|
buffer.setText(inputFillText);
|
|
402335
402141
|
clearInputFill();
|
|
402336
402142
|
}
|
|
402337
402143
|
}, [shouldFillInput, inputFillText, buffer, clearInputFill]);
|
|
402338
|
-
(0,
|
|
402144
|
+
(0, import_react127.useEffect)(() => {
|
|
402339
402145
|
checkWelcomeBack();
|
|
402340
402146
|
}, [checkWelcomeBack]);
|
|
402341
402147
|
return {
|
|
@@ -402356,10 +402162,10 @@ __name(useWelcomeBack, "useWelcomeBack");
|
|
|
402356
402162
|
|
|
402357
402163
|
// packages/cli/src/ui/hooks/useDialogClose.ts
|
|
402358
402164
|
init_esbuild_shims();
|
|
402359
|
-
var
|
|
402165
|
+
var import_react128 = __toESM(require_react(), 1);
|
|
402360
402166
|
init_settings();
|
|
402361
402167
|
function useDialogClose(options2) {
|
|
402362
|
-
const closeAnyOpenDialog = (0,
|
|
402168
|
+
const closeAnyOpenDialog = (0, import_react128.useCallback)(() => {
|
|
402363
402169
|
if (options2.isThemeDialogOpen) {
|
|
402364
402170
|
options2.handleThemeSelect(void 0, "User" /* User */);
|
|
402365
402171
|
return true;
|
|
@@ -402391,13 +402197,13 @@ __name(useDialogClose, "useDialogClose");
|
|
|
402391
402197
|
|
|
402392
402198
|
// packages/cli/src/ui/hooks/useSubagentCreateDialog.ts
|
|
402393
402199
|
init_esbuild_shims();
|
|
402394
|
-
var
|
|
402200
|
+
var import_react129 = __toESM(require_react(), 1);
|
|
402395
402201
|
function useSubagentCreateDialog() {
|
|
402396
|
-
const [isSubagentCreateDialogOpen, setIsSubagentCreateDialogOpen] = (0,
|
|
402397
|
-
const openSubagentCreateDialog = (0,
|
|
402202
|
+
const [isSubagentCreateDialogOpen, setIsSubagentCreateDialogOpen] = (0, import_react129.useState)(false);
|
|
402203
|
+
const openSubagentCreateDialog = (0, import_react129.useCallback)(() => {
|
|
402398
402204
|
setIsSubagentCreateDialogOpen(true);
|
|
402399
402205
|
}, []);
|
|
402400
|
-
const closeSubagentCreateDialog = (0,
|
|
402206
|
+
const closeSubagentCreateDialog = (0, import_react129.useCallback)(() => {
|
|
402401
402207
|
setIsSubagentCreateDialogOpen(false);
|
|
402402
402208
|
}, []);
|
|
402403
402209
|
return {
|
|
@@ -402410,13 +402216,13 @@ __name(useSubagentCreateDialog, "useSubagentCreateDialog");
|
|
|
402410
402216
|
|
|
402411
402217
|
// packages/cli/src/ui/hooks/useAgentsManagerDialog.ts
|
|
402412
402218
|
init_esbuild_shims();
|
|
402413
|
-
var
|
|
402219
|
+
var import_react130 = __toESM(require_react(), 1);
|
|
402414
402220
|
var useAgentsManagerDialog = /* @__PURE__ */ __name(() => {
|
|
402415
|
-
const [isAgentsManagerDialogOpen, setIsAgentsManagerDialogOpen] = (0,
|
|
402416
|
-
const openAgentsManagerDialog = (0,
|
|
402221
|
+
const [isAgentsManagerDialogOpen, setIsAgentsManagerDialogOpen] = (0, import_react130.useState)(false);
|
|
402222
|
+
const openAgentsManagerDialog = (0, import_react130.useCallback)(() => {
|
|
402417
402223
|
setIsAgentsManagerDialogOpen(true);
|
|
402418
402224
|
}, []);
|
|
402419
|
-
const closeAgentsManagerDialog = (0,
|
|
402225
|
+
const closeAgentsManagerDialog = (0, import_react130.useCallback)(() => {
|
|
402420
402226
|
setIsAgentsManagerDialogOpen(false);
|
|
402421
402227
|
}, []);
|
|
402422
402228
|
return {
|
|
@@ -402428,7 +402234,7 @@ var useAgentsManagerDialog = /* @__PURE__ */ __name(() => {
|
|
|
402428
402234
|
|
|
402429
402235
|
// packages/cli/src/ui/hooks/useAttentionNotifications.ts
|
|
402430
402236
|
init_esbuild_shims();
|
|
402431
|
-
var
|
|
402237
|
+
var import_react131 = __toESM(require_react(), 1);
|
|
402432
402238
|
|
|
402433
402239
|
// packages/cli/src/utils/attentionNotification.ts
|
|
402434
402240
|
init_esbuild_shims();
|
|
@@ -402456,9 +402262,9 @@ var useAttentionNotifications = /* @__PURE__ */ __name(({
|
|
|
402456
402262
|
streamingState,
|
|
402457
402263
|
elapsedTime
|
|
402458
402264
|
}) => {
|
|
402459
|
-
const awaitingNotificationSentRef = (0,
|
|
402460
|
-
const respondingElapsedRef = (0,
|
|
402461
|
-
(0,
|
|
402265
|
+
const awaitingNotificationSentRef = (0, import_react131.useRef)(false);
|
|
402266
|
+
const respondingElapsedRef = (0, import_react131.useRef)(0);
|
|
402267
|
+
(0, import_react131.useEffect)(() => {
|
|
402462
402268
|
if (streamingState === "waiting_for_confirmation" /* WaitingForConfirmation */ && !isFocused && !awaitingNotificationSentRef.current) {
|
|
402463
402269
|
notifyTerminalAttention("tool_approval" /* ToolApproval */);
|
|
402464
402270
|
awaitingNotificationSentRef.current = true;
|
|
@@ -402467,7 +402273,7 @@ var useAttentionNotifications = /* @__PURE__ */ __name(({
|
|
|
402467
402273
|
awaitingNotificationSentRef.current = false;
|
|
402468
402274
|
}
|
|
402469
402275
|
}, [isFocused, streamingState]);
|
|
402470
|
-
(0,
|
|
402276
|
+
(0, import_react131.useEffect)(() => {
|
|
402471
402277
|
if (streamingState === "responding" /* Responding */) {
|
|
402472
402278
|
respondingElapsedRef.current = elapsedTime;
|
|
402473
402279
|
return;
|
|
@@ -402485,7 +402291,7 @@ var useAttentionNotifications = /* @__PURE__ */ __name(({
|
|
|
402485
402291
|
|
|
402486
402292
|
// packages/cli/src/ui/hooks/useWebSocket.ts
|
|
402487
402293
|
init_esbuild_shims();
|
|
402488
|
-
var
|
|
402294
|
+
var import_react132 = __toESM(require_react(), 1);
|
|
402489
402295
|
|
|
402490
402296
|
// packages/cli/src/config/websocket.ts
|
|
402491
402297
|
init_esbuild_shims();
|
|
@@ -403088,8 +402894,8 @@ function useWebSocket({
|
|
|
403088
402894
|
debug: debug2,
|
|
403089
402895
|
sessionId
|
|
403090
402896
|
}) {
|
|
403091
|
-
const wsClientRef = (0,
|
|
403092
|
-
(0,
|
|
402897
|
+
const wsClientRef = (0, import_react132.useRef)(null);
|
|
402898
|
+
(0, import_react132.useEffect)(() => {
|
|
403093
402899
|
const wsRuntimeConfig = loadWebSocketRuntimeConfig(debug2);
|
|
403094
402900
|
if (!wsRuntimeConfig.enabled) {
|
|
403095
402901
|
if (debug2) {
|
|
@@ -403132,7 +402938,7 @@ __name(useWebSocket, "useWebSocket");
|
|
|
403132
402938
|
// packages/cli/src/ui/AppContainer.tsx
|
|
403133
402939
|
init_core4();
|
|
403134
402940
|
init_xhsSsoConfig();
|
|
403135
|
-
var
|
|
402941
|
+
var import_jsx_runtime106 = __toESM(require_jsx_runtime(), 1);
|
|
403136
402942
|
var CTRL_EXIT_PROMPT_DURATION_MS = 1e3;
|
|
403137
402943
|
function isToolExecuting(pendingHistoryItems) {
|
|
403138
402944
|
return pendingHistoryItems.some((item) => {
|
|
@@ -403151,22 +402957,22 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403151
402957
|
const { settings, config: config2, initializationResult } = props;
|
|
403152
402958
|
const historyManager = useHistory();
|
|
403153
402959
|
useMemoryMonitor(historyManager);
|
|
403154
|
-
const [corgiMode, setCorgiMode] = (0,
|
|
403155
|
-
const [debugMessage, setDebugMessage] = (0,
|
|
403156
|
-
const [quittingMessages, setQuittingMessages] = (0,
|
|
403157
|
-
const [themeError, setThemeError] = (0,
|
|
402960
|
+
const [corgiMode, setCorgiMode] = (0, import_react133.useState)(false);
|
|
402961
|
+
const [debugMessage, setDebugMessage] = (0, import_react133.useState)("");
|
|
402962
|
+
const [quittingMessages, setQuittingMessages] = (0, import_react133.useState)(null);
|
|
402963
|
+
const [themeError, setThemeError] = (0, import_react133.useState)(
|
|
403158
402964
|
initializationResult.themeError
|
|
403159
402965
|
);
|
|
403160
|
-
const [isProcessing, setIsProcessing] = (0,
|
|
403161
|
-
const [embeddedShellFocused, setEmbeddedShellFocused] = (0,
|
|
403162
|
-
const [geminiMdFileCount, setGeminiMdFileCount] = (0,
|
|
402966
|
+
const [isProcessing, setIsProcessing] = (0, import_react133.useState)(false);
|
|
402967
|
+
const [embeddedShellFocused, setEmbeddedShellFocused] = (0, import_react133.useState)(false);
|
|
402968
|
+
const [geminiMdFileCount, setGeminiMdFileCount] = (0, import_react133.useState)(
|
|
403163
402969
|
initializationResult.geminiMdFileCount
|
|
403164
402970
|
);
|
|
403165
|
-
const [shellModeActive, setShellModeActive] = (0,
|
|
403166
|
-
const [modelSwitchedFromQuotaError, setModelSwitchedFromQuotaError] = (0,
|
|
403167
|
-
const [historyRemountKey, setHistoryRemountKey] = (0,
|
|
403168
|
-
const [updateInfo, setUpdateInfo] = (0,
|
|
403169
|
-
const [isTrustedFolder, setIsTrustedFolder] = (0,
|
|
402971
|
+
const [shellModeActive, setShellModeActive] = (0, import_react133.useState)(false);
|
|
402972
|
+
const [modelSwitchedFromQuotaError, setModelSwitchedFromQuotaError] = (0, import_react133.useState)(false);
|
|
402973
|
+
const [historyRemountKey, setHistoryRemountKey] = (0, import_react133.useState)(0);
|
|
402974
|
+
const [updateInfo, setUpdateInfo] = (0, import_react133.useState)(null);
|
|
402975
|
+
const [isTrustedFolder, setIsTrustedFolder] = (0, import_react133.useState)(
|
|
403170
402976
|
config2.isTrustedFolder()
|
|
403171
402977
|
);
|
|
403172
402978
|
const extensions = config2.getExtensions();
|
|
@@ -403181,38 +402987,38 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403181
402987
|
historyManager.addItem,
|
|
403182
402988
|
config2.getWorkingDir()
|
|
403183
402989
|
);
|
|
403184
|
-
const [isPermissionsDialogOpen, setPermissionsDialogOpen] = (0,
|
|
403185
|
-
const openPermissionsDialog = (0,
|
|
402990
|
+
const [isPermissionsDialogOpen, setPermissionsDialogOpen] = (0, import_react133.useState)(false);
|
|
402991
|
+
const openPermissionsDialog = (0, import_react133.useCallback)(
|
|
403186
402992
|
() => setPermissionsDialogOpen(true),
|
|
403187
402993
|
[]
|
|
403188
402994
|
);
|
|
403189
|
-
const closePermissionsDialog = (0,
|
|
402995
|
+
const closePermissionsDialog = (0, import_react133.useCallback)(
|
|
403190
402996
|
() => setPermissionsDialogOpen(false),
|
|
403191
402997
|
[]
|
|
403192
402998
|
);
|
|
403193
|
-
const getEffectiveModel2 = (0,
|
|
402999
|
+
const getEffectiveModel2 = (0, import_react133.useCallback)(() => {
|
|
403194
403000
|
if (config2.isInFallbackMode()) {
|
|
403195
403001
|
return DEFAULT_GEMINI_FLASH_MODEL;
|
|
403196
403002
|
}
|
|
403197
403003
|
return config2.getModel();
|
|
403198
403004
|
}, [config2]);
|
|
403199
|
-
const [currentModel, setCurrentModel] = (0,
|
|
403200
|
-
const [userTier] = (0,
|
|
403201
|
-
const [isConfigInitialized, setConfigInitialized] = (0,
|
|
403202
|
-
const [userMessages, setUserMessages] = (0,
|
|
403005
|
+
const [currentModel, setCurrentModel] = (0, import_react133.useState)(getEffectiveModel2());
|
|
403006
|
+
const [userTier] = (0, import_react133.useState)(void 0);
|
|
403007
|
+
const [isConfigInitialized, setConfigInitialized] = (0, import_react133.useState)(false);
|
|
403008
|
+
const [userMessages, setUserMessages] = (0, import_react133.useState)([]);
|
|
403203
403009
|
const { columns: terminalWidth, rows: terminalHeight } = useTerminalSize();
|
|
403204
403010
|
const { stdin, setRawMode } = use_stdin_default();
|
|
403205
403011
|
const { stdout } = use_stdout_default();
|
|
403206
403012
|
const { stats: sessionStats } = useSessionStats();
|
|
403207
403013
|
const logger6 = useLogger(config2.storage, sessionStats.sessionId);
|
|
403208
403014
|
const branchName = useGitBranchName(config2.getTargetDir());
|
|
403209
|
-
const mainControlsRef = (0,
|
|
403210
|
-
const originalTitleRef = (0,
|
|
403015
|
+
const mainControlsRef = (0, import_react133.useRef)(null);
|
|
403016
|
+
const originalTitleRef = (0, import_react133.useRef)(
|
|
403211
403017
|
computeWindowTitle(basename18(config2.getTargetDir()))
|
|
403212
403018
|
);
|
|
403213
|
-
const lastTitleRef = (0,
|
|
403019
|
+
const lastTitleRef = (0, import_react133.useRef)(null);
|
|
403214
403020
|
const staticExtraHeight = 3;
|
|
403215
|
-
(0,
|
|
403021
|
+
(0, import_react133.useEffect)(() => {
|
|
403216
403022
|
(async () => {
|
|
403217
403023
|
await config2.initialize();
|
|
403218
403024
|
setConfigInitialized(true);
|
|
@@ -403230,11 +403036,11 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403230
403036
|
await ideClient.disconnect();
|
|
403231
403037
|
});
|
|
403232
403038
|
}, [config2]);
|
|
403233
|
-
(0,
|
|
403039
|
+
(0, import_react133.useEffect)(
|
|
403234
403040
|
() => setUpdateHandler(historyManager.addItem, setUpdateInfo),
|
|
403235
403041
|
[historyManager.addItem]
|
|
403236
403042
|
);
|
|
403237
|
-
(0,
|
|
403043
|
+
(0, import_react133.useEffect)(() => {
|
|
403238
403044
|
const checkModelChange = /* @__PURE__ */ __name(() => {
|
|
403239
403045
|
const effectiveModel = getEffectiveModel2();
|
|
403240
403046
|
if (effectiveModel !== currentModel) {
|
|
@@ -403250,7 +403056,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403250
403056
|
handleNewMessage,
|
|
403251
403057
|
clearConsoleMessages: clearConsoleMessagesState
|
|
403252
403058
|
} = useConsoleMessages();
|
|
403253
|
-
(0,
|
|
403059
|
+
(0, import_react133.useEffect)(() => {
|
|
403254
403060
|
const consolePatcher = new ConsolePatcher({
|
|
403255
403061
|
onNewMessage: handleNewMessage,
|
|
403256
403062
|
debugMode: config2.getDebugMode()
|
|
@@ -403258,13 +403064,13 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403258
403064
|
consolePatcher.patch();
|
|
403259
403065
|
registerCleanup(consolePatcher.cleanup);
|
|
403260
403066
|
}, [handleNewMessage, config2]);
|
|
403261
|
-
const { inputWidth, suggestionsWidth } = (0,
|
|
403067
|
+
const { inputWidth, suggestionsWidth } = (0, import_react133.useMemo)(() => {
|
|
403262
403068
|
const { inputWidth: inputWidth2, suggestionsWidth: suggestionsWidth2 } = calculatePromptWidths(terminalWidth);
|
|
403263
403069
|
return { inputWidth: inputWidth2, suggestionsWidth: suggestionsWidth2 };
|
|
403264
403070
|
}, [terminalWidth]);
|
|
403265
403071
|
const mainAreaWidth = Math.floor(terminalWidth * 0.9);
|
|
403266
403072
|
const staticAreaMaxItemHeight = Math.max(terminalHeight * 4, 100);
|
|
403267
|
-
const isValidPath = (0,
|
|
403073
|
+
const isValidPath = (0, import_react133.useCallback)((filePath) => {
|
|
403268
403074
|
try {
|
|
403269
403075
|
return fs107.existsSync(filePath) && fs107.statSync(filePath).isFile();
|
|
403270
403076
|
} catch (_e) {
|
|
@@ -403279,7 +403085,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403279
403085
|
isValidPath,
|
|
403280
403086
|
shellModeActive
|
|
403281
403087
|
});
|
|
403282
|
-
(0,
|
|
403088
|
+
(0, import_react133.useEffect)(() => {
|
|
403283
403089
|
const fetchUserMessages = /* @__PURE__ */ __name(async () => {
|
|
403284
403090
|
const pastMessagesRaw = await logger6?.getPreviousUserMessages() || [];
|
|
403285
403091
|
const currentSessionUserMessages = historyManager.history.filter(
|
|
@@ -403302,7 +403108,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403302
403108
|
}, "fetchUserMessages");
|
|
403303
403109
|
fetchUserMessages();
|
|
403304
403110
|
}, [historyManager.history, logger6]);
|
|
403305
|
-
const refreshStatic = (0,
|
|
403111
|
+
const refreshStatic = (0, import_react133.useCallback)(() => {
|
|
403306
403112
|
stdout.write(base_exports.clearTerminal);
|
|
403307
403113
|
setHistoryRemountKey((prev) => prev + 1);
|
|
403308
403114
|
}, [setHistoryRemountKey, stdout]);
|
|
@@ -403334,7 +403140,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403334
403140
|
openAuthDialog,
|
|
403335
403141
|
cancelAuthentication
|
|
403336
403142
|
} = useAuthCommand(settings, config2, historyManager.addItem);
|
|
403337
|
-
(0,
|
|
403143
|
+
(0, import_react133.useEffect)(() => {
|
|
403338
403144
|
if (!shouldTriggerAutoSSOAuth(settings)) {
|
|
403339
403145
|
return;
|
|
403340
403146
|
}
|
|
@@ -403513,17 +403319,17 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403513
403319
|
setAuthState,
|
|
403514
403320
|
setModelSwitchedFromQuotaError
|
|
403515
403321
|
});
|
|
403516
|
-
const handleQwenAuthTimeout = (0,
|
|
403322
|
+
const handleQwenAuthTimeout = (0, import_react133.useCallback)(() => {
|
|
403517
403323
|
onAuthError("Qwen OAuth authentication timed out. Please try again.");
|
|
403518
403324
|
cancelAuthentication();
|
|
403519
403325
|
setAuthState("updating" /* Updating */);
|
|
403520
403326
|
}, [onAuthError, cancelAuthentication, setAuthState]);
|
|
403521
|
-
const handleQwenAuthCancel = (0,
|
|
403327
|
+
const handleQwenAuthCancel = (0, import_react133.useCallback)(() => {
|
|
403522
403328
|
onAuthError("Qwen OAuth authentication cancelled.");
|
|
403523
403329
|
cancelAuthentication();
|
|
403524
403330
|
setAuthState("updating" /* Updating */);
|
|
403525
403331
|
}, [onAuthError, cancelAuthentication, setAuthState]);
|
|
403526
|
-
(0,
|
|
403332
|
+
(0, import_react133.useEffect)(() => {
|
|
403527
403333
|
if (settings.merged.security?.auth?.enforcedType && settings.merged.security?.auth.selectedType && settings.merged.security?.auth.enforcedType !== settings.merged.security?.auth.selectedType) {
|
|
403528
403334
|
onAuthError(
|
|
403529
403335
|
t3(
|
|
@@ -403548,7 +403354,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403548
403354
|
settings.merged.security?.auth?.useExternal,
|
|
403549
403355
|
onAuthError
|
|
403550
403356
|
]);
|
|
403551
|
-
const [editorError, setEditorError] = (0,
|
|
403357
|
+
const [editorError, setEditorError] = (0, import_react133.useState)(null);
|
|
403552
403358
|
const {
|
|
403553
403359
|
isEditorDialogOpen,
|
|
403554
403360
|
openEditorDialog,
|
|
@@ -403564,7 +403370,6 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403564
403370
|
onWorkspaceMigrationDialogClose
|
|
403565
403371
|
} = useWorkspaceMigration(settings);
|
|
403566
403372
|
const { toggleVimEnabled } = useVimMode();
|
|
403567
|
-
const { showQuitConfirmation } = useQuitConfirmation();
|
|
403568
403373
|
const {
|
|
403569
403374
|
isSubagentCreateDialogOpen,
|
|
403570
403375
|
openSubagentCreateDialog,
|
|
@@ -403575,9 +403380,9 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403575
403380
|
openAgentsManagerDialog,
|
|
403576
403381
|
closeAgentsManagerDialog
|
|
403577
403382
|
} = useAgentsManagerDialog();
|
|
403578
|
-
const [isVisionSwitchDialogOpen, setIsVisionSwitchDialogOpen] = (0,
|
|
403579
|
-
const [visionSwitchResolver, setVisionSwitchResolver] = (0,
|
|
403580
|
-
const slashCommandActions = (0,
|
|
403383
|
+
const [isVisionSwitchDialogOpen, setIsVisionSwitchDialogOpen] = (0, import_react133.useState)(false);
|
|
403384
|
+
const [visionSwitchResolver, setVisionSwitchResolver] = (0, import_react133.useState)(null);
|
|
403385
|
+
const slashCommandActions = (0, import_react133.useMemo)(
|
|
403581
403386
|
() => ({
|
|
403582
403387
|
openAuthDialog,
|
|
403583
403388
|
openThemeDialog,
|
|
@@ -403598,8 +403403,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403598
403403
|
dispatchExtensionStateUpdate,
|
|
403599
403404
|
addConfirmUpdateExtensionRequest,
|
|
403600
403405
|
openSubagentCreateDialog,
|
|
403601
|
-
openAgentsManagerDialog
|
|
403602
|
-
_showQuitConfirmation: showQuitConfirmation
|
|
403406
|
+
openAgentsManagerDialog
|
|
403603
403407
|
}),
|
|
403604
403408
|
[
|
|
403605
403409
|
openAuthDialog,
|
|
@@ -403613,7 +403417,6 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403613
403417
|
openPermissionsDialog,
|
|
403614
403418
|
openApprovalModeDialog,
|
|
403615
403419
|
addConfirmUpdateExtensionRequest,
|
|
403616
|
-
showQuitConfirmation,
|
|
403617
403420
|
openSubagentCreateDialog,
|
|
403618
403421
|
openAgentsManagerDialog
|
|
403619
403422
|
]
|
|
@@ -403625,7 +403428,6 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403625
403428
|
commandContext,
|
|
403626
403429
|
shellConfirmationRequest,
|
|
403627
403430
|
confirmationRequest,
|
|
403628
|
-
quitConfirmationRequest,
|
|
403629
403431
|
reloadCommands
|
|
403630
403432
|
} = useSlashCommandProcessor(
|
|
403631
403433
|
config2,
|
|
@@ -403647,14 +403449,14 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403647
403449
|
debug: config2.getDebugMode(),
|
|
403648
403450
|
sessionId: config2.getSessionId()
|
|
403649
403451
|
});
|
|
403650
|
-
const handleVisionSwitchRequired = (0,
|
|
403452
|
+
const handleVisionSwitchRequired = (0, import_react133.useCallback)(
|
|
403651
403453
|
async (_query) => new Promise((resolve26, reject) => {
|
|
403652
403454
|
setVisionSwitchResolver({ resolve: resolve26, reject });
|
|
403653
403455
|
setIsVisionSwitchDialogOpen(true);
|
|
403654
403456
|
}),
|
|
403655
403457
|
[]
|
|
403656
403458
|
);
|
|
403657
|
-
const handleVisionSwitchSelect = (0,
|
|
403459
|
+
const handleVisionSwitchSelect = (0, import_react133.useCallback)(
|
|
403658
403460
|
(outcome) => {
|
|
403659
403461
|
setIsVisionSwitchDialogOpen(false);
|
|
403660
403462
|
if (visionSwitchResolver) {
|
|
@@ -403665,10 +403467,10 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403665
403467
|
},
|
|
403666
403468
|
[visionSwitchResolver]
|
|
403667
403469
|
);
|
|
403668
|
-
const onDebugMessage = (0,
|
|
403470
|
+
const onDebugMessage = (0, import_react133.useCallback)((message) => {
|
|
403669
403471
|
console.debug(message);
|
|
403670
403472
|
}, []);
|
|
403671
|
-
const performMemoryRefresh = (0,
|
|
403473
|
+
const performMemoryRefresh = (0, import_react133.useCallback)(async () => {
|
|
403672
403474
|
historyManager.addItem(
|
|
403673
403475
|
{
|
|
403674
403476
|
type: "info" /* INFO */,
|
|
@@ -403719,7 +403521,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403719
403521
|
console.error("Error refreshing memory:", error2);
|
|
403720
403522
|
}
|
|
403721
403523
|
}, [config2, historyManager, settings.merged]);
|
|
403722
|
-
const cancelHandlerRef = (0,
|
|
403524
|
+
const cancelHandlerRef = (0, import_react133.useRef)(() => {
|
|
403723
403525
|
});
|
|
403724
403526
|
const {
|
|
403725
403527
|
streamingState,
|
|
@@ -403766,7 +403568,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403766
403568
|
streamingState,
|
|
403767
403569
|
submitQuery
|
|
403768
403570
|
});
|
|
403769
|
-
const handleFinalSubmit = (0,
|
|
403571
|
+
const handleFinalSubmit = (0, import_react133.useCallback)(
|
|
403770
403572
|
(submittedValue) => {
|
|
403771
403573
|
addMessage(submittedValue);
|
|
403772
403574
|
},
|
|
@@ -403779,7 +403581,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
|
|
|
403779
403581
|
handleWelcomeBackSelection,
|
|
403780
403582
|
handleWelcomeBackClose
|
|
403781
403583
|
} = useWelcomeBack(config2, handleFinalSubmit, buffer, settings.merged);
|
|
403782
|
-
cancelHandlerRef.current = (0,
|
|
403584
|
+
cancelHandlerRef.current = (0, import_react133.useCallback)(() => {
|
|
403783
403585
|
const pendingHistoryItems2 = [
|
|
403784
403586
|
...pendingSlashCommandHistoryItems,
|
|
403785
403587
|
...pendingGeminiHistoryItems
|
|
@@ -403808,7 +403610,7 @@ ${queuedText}` : queuedText;
|
|
|
403808
403610
|
pendingSlashCommandHistoryItems,
|
|
403809
403611
|
pendingGeminiHistoryItems
|
|
403810
403612
|
]);
|
|
403811
|
-
const handleClearScreen = (0,
|
|
403613
|
+
const handleClearScreen = (0, import_react133.useCallback)(() => {
|
|
403812
403614
|
historyManager.clearItems();
|
|
403813
403615
|
clearConsoleMessagesState();
|
|
403814
403616
|
console.clear();
|
|
@@ -403816,8 +403618,8 @@ ${queuedText}` : queuedText;
|
|
|
403816
403618
|
}, [historyManager, clearConsoleMessagesState, refreshStatic]);
|
|
403817
403619
|
const { handleInput: vimHandleInput } = useVim(buffer, handleFinalSubmit);
|
|
403818
403620
|
const isInputActive = !initError && !isProcessing && (streamingState === "idle" /* Idle */ || streamingState === "responding" /* Responding */) && !proQuotaRequest;
|
|
403819
|
-
const [controlsHeight, setControlsHeight] = (0,
|
|
403820
|
-
(0,
|
|
403621
|
+
const [controlsHeight, setControlsHeight] = (0, import_react133.useState)(0);
|
|
403622
|
+
(0, import_react133.useLayoutEffect)(() => {
|
|
403821
403623
|
if (mainControlsRef.current) {
|
|
403822
403624
|
const fullFooterMeasurement = measure_element_default(mainControlsRef.current);
|
|
403823
403625
|
if (fullFooterMeasurement.height > 0) {
|
|
@@ -403840,14 +403642,14 @@ ${queuedText}` : queuedText;
|
|
|
403840
403642
|
});
|
|
403841
403643
|
const isFocused = useFocus();
|
|
403842
403644
|
useBracketedPaste();
|
|
403843
|
-
const contextFileNames = (0,
|
|
403645
|
+
const contextFileNames = (0, import_react133.useMemo)(() => {
|
|
403844
403646
|
const fromSettings = settings.merged.context?.fileName;
|
|
403845
403647
|
return fromSettings ? Array.isArray(fromSettings) ? fromSettings : [fromSettings] : getAllGeminiMdFilenames();
|
|
403846
403648
|
}, [settings.merged.context?.fileName]);
|
|
403847
|
-
const initialPrompt = (0,
|
|
403848
|
-
const initialPromptSubmitted = (0,
|
|
403649
|
+
const initialPrompt = (0, import_react133.useMemo)(() => config2.getQuestion(), [config2]);
|
|
403650
|
+
const initialPromptSubmitted = (0, import_react133.useRef)(false);
|
|
403849
403651
|
const geminiClient = config2.getGeminiClient();
|
|
403850
|
-
(0,
|
|
403652
|
+
(0, import_react133.useEffect)(() => {
|
|
403851
403653
|
if (activePtyId) {
|
|
403852
403654
|
ShellExecutionService.resizePty(
|
|
403853
403655
|
activePtyId,
|
|
@@ -403856,7 +403658,7 @@ ${queuedText}` : queuedText;
|
|
|
403856
403658
|
);
|
|
403857
403659
|
}
|
|
403858
403660
|
}, [terminalWidth, availableTerminalHeight, activePtyId]);
|
|
403859
|
-
(0,
|
|
403661
|
+
(0, import_react133.useEffect)(() => {
|
|
403860
403662
|
if (initialPrompt && isConfigInitialized && !initialPromptSubmitted.current && !isAuthenticating && !isAuthDialogOpen && !isThemeDialogOpen && !isEditorDialogOpen && !showWelcomeBackDialog && !isVisionSwitchDialogOpen && welcomeBackChoice !== "restart" && geminiClient?.isInitialized?.()) {
|
|
403861
403663
|
handleFinalSubmit(initialPrompt);
|
|
403862
403664
|
initialPromptSubmitted.current = true;
|
|
@@ -403874,9 +403676,9 @@ ${queuedText}` : queuedText;
|
|
|
403874
403676
|
welcomeBackChoice,
|
|
403875
403677
|
geminiClient
|
|
403876
403678
|
]);
|
|
403877
|
-
const [idePromptAnswered, setIdePromptAnswered] = (0,
|
|
403878
|
-
const [currentIDE, setCurrentIDE] = (0,
|
|
403879
|
-
(0,
|
|
403679
|
+
const [idePromptAnswered, setIdePromptAnswered] = (0, import_react133.useState)(false);
|
|
403680
|
+
const [currentIDE, setCurrentIDE] = (0, import_react133.useState)(null);
|
|
403681
|
+
(0, import_react133.useEffect)(() => {
|
|
403880
403682
|
const getIde = /* @__PURE__ */ __name(async () => {
|
|
403881
403683
|
const ideClient = await IdeClient.getInstance();
|
|
403882
403684
|
const currentIde = ideClient.getCurrentIde();
|
|
@@ -403887,28 +403689,28 @@ ${queuedText}` : queuedText;
|
|
|
403887
403689
|
const shouldShowIdePrompt = Boolean(
|
|
403888
403690
|
currentIDE && !config2.getIdeMode() && !settings.merged.ide?.hasSeenNudge && !idePromptAnswered
|
|
403889
403691
|
);
|
|
403890
|
-
const [showErrorDetails, setShowErrorDetails] = (0,
|
|
403891
|
-
const [showToolDescriptions, setShowToolDescriptions] = (0,
|
|
403892
|
-
const [ctrlCPressedOnce, setCtrlCPressedOnce] = (0,
|
|
403893
|
-
const ctrlCTimerRef = (0,
|
|
403894
|
-
const [ctrlDPressedOnce, setCtrlDPressedOnce] = (0,
|
|
403895
|
-
const ctrlDTimerRef = (0,
|
|
403896
|
-
const [constrainHeight, setConstrainHeight] = (0,
|
|
403897
|
-
const [ideContextState, setIdeContextState] = (0,
|
|
403898
|
-
const [showEscapePrompt, setShowEscapePrompt] = (0,
|
|
403899
|
-
const [showIdeRestartPrompt, setShowIdeRestartPrompt] = (0,
|
|
403692
|
+
const [showErrorDetails, setShowErrorDetails] = (0, import_react133.useState)(false);
|
|
403693
|
+
const [showToolDescriptions, setShowToolDescriptions] = (0, import_react133.useState)(false);
|
|
403694
|
+
const [ctrlCPressedOnce, setCtrlCPressedOnce] = (0, import_react133.useState)(false);
|
|
403695
|
+
const ctrlCTimerRef = (0, import_react133.useRef)(null);
|
|
403696
|
+
const [ctrlDPressedOnce, setCtrlDPressedOnce] = (0, import_react133.useState)(false);
|
|
403697
|
+
const ctrlDTimerRef = (0, import_react133.useRef)(null);
|
|
403698
|
+
const [constrainHeight, setConstrainHeight] = (0, import_react133.useState)(true);
|
|
403699
|
+
const [ideContextState, setIdeContextState] = (0, import_react133.useState)();
|
|
403700
|
+
const [showEscapePrompt, setShowEscapePrompt] = (0, import_react133.useState)(false);
|
|
403701
|
+
const [showIdeRestartPrompt, setShowIdeRestartPrompt] = (0, import_react133.useState)(false);
|
|
403900
403702
|
const { isFolderTrustDialogOpen, handleFolderTrustSelect, isRestarting } = useFolderTrust(settings, setIsTrustedFolder);
|
|
403901
403703
|
const {
|
|
403902
403704
|
needsRestart: ideNeedsRestart,
|
|
403903
403705
|
restartReason: ideTrustRestartReason
|
|
403904
403706
|
} = useIdeTrustListener();
|
|
403905
|
-
const isInitialMount = (0,
|
|
403906
|
-
(0,
|
|
403707
|
+
const isInitialMount = (0, import_react133.useRef)(true);
|
|
403708
|
+
(0, import_react133.useEffect)(() => {
|
|
403907
403709
|
if (ideNeedsRestart) {
|
|
403908
403710
|
setShowIdeRestartPrompt(true);
|
|
403909
403711
|
}
|
|
403910
403712
|
}, [ideNeedsRestart]);
|
|
403911
|
-
(0,
|
|
403713
|
+
(0, import_react133.useEffect)(() => {
|
|
403912
403714
|
if (isInitialMount.current) {
|
|
403913
403715
|
isInitialMount.current = false;
|
|
403914
403716
|
return;
|
|
@@ -403920,12 +403722,12 @@ ${queuedText}` : queuedText;
|
|
|
403920
403722
|
clearTimeout(handler);
|
|
403921
403723
|
};
|
|
403922
403724
|
}, [terminalWidth, refreshStatic]);
|
|
403923
|
-
(0,
|
|
403725
|
+
(0, import_react133.useEffect)(() => {
|
|
403924
403726
|
const unsubscribe = ideContextStore.subscribe(setIdeContextState);
|
|
403925
403727
|
setIdeContextState(ideContextStore.get());
|
|
403926
403728
|
return unsubscribe;
|
|
403927
403729
|
}, []);
|
|
403928
|
-
(0,
|
|
403730
|
+
(0, import_react133.useEffect)(() => {
|
|
403929
403731
|
const openDebugConsole = /* @__PURE__ */ __name(() => {
|
|
403930
403732
|
setShowErrorDetails(true);
|
|
403931
403733
|
setConstrainHeight(false);
|
|
@@ -403944,10 +403746,10 @@ ${queuedText}` : queuedText;
|
|
|
403944
403746
|
appEvents.off("log-error" /* LogError */, logErrorHandler);
|
|
403945
403747
|
};
|
|
403946
403748
|
}, [handleNewMessage]);
|
|
403947
|
-
const handleEscapePromptChange = (0,
|
|
403749
|
+
const handleEscapePromptChange = (0, import_react133.useCallback)((showPrompt) => {
|
|
403948
403750
|
setShowEscapePrompt(showPrompt);
|
|
403949
403751
|
}, []);
|
|
403950
|
-
const handleIdePromptComplete = (0,
|
|
403752
|
+
const handleIdePromptComplete = (0, import_react133.useCallback)(
|
|
403951
403753
|
(result) => {
|
|
403952
403754
|
if (result.userSelection === "yes") {
|
|
403953
403755
|
handleSlashCommand2("/ide install");
|
|
@@ -403982,10 +403784,9 @@ ${queuedText}` : queuedText;
|
|
|
403982
403784
|
closeSettingsDialog,
|
|
403983
403785
|
isFolderTrustDialogOpen,
|
|
403984
403786
|
showWelcomeBackDialog,
|
|
403985
|
-
handleWelcomeBackClose
|
|
403986
|
-
quitConfirmationRequest
|
|
403787
|
+
handleWelcomeBackClose
|
|
403987
403788
|
});
|
|
403988
|
-
const handleExit = (0,
|
|
403789
|
+
const handleExit = (0, import_react133.useCallback)(
|
|
403989
403790
|
(pressedOnce, setPressedOnce, timerRef) => {
|
|
403990
403791
|
if (pressedOnce) {
|
|
403991
403792
|
if (timerRef.current) {
|
|
@@ -403994,10 +403795,6 @@ ${queuedText}` : queuedText;
|
|
|
403994
403795
|
handleSlashCommand2("/quit");
|
|
403995
403796
|
return;
|
|
403996
403797
|
}
|
|
403997
|
-
if (quitConfirmationRequest) {
|
|
403998
|
-
handleSlashCommand2("/quit");
|
|
403999
|
-
return;
|
|
404000
|
-
}
|
|
404001
403798
|
if (isAuthDialogOpen) {
|
|
404002
403799
|
setPressedOnce(true);
|
|
404003
403800
|
timerRef.current = setTimeout(() => {
|
|
@@ -404016,7 +403813,10 @@ ${queuedText}` : queuedText;
|
|
|
404016
403813
|
buffer.setText("");
|
|
404017
403814
|
return;
|
|
404018
403815
|
}
|
|
404019
|
-
|
|
403816
|
+
setPressedOnce(true);
|
|
403817
|
+
timerRef.current = setTimeout(() => {
|
|
403818
|
+
setPressedOnce(false);
|
|
403819
|
+
}, CTRL_EXIT_PROMPT_DURATION_MS);
|
|
404020
403820
|
},
|
|
404021
403821
|
[
|
|
404022
403822
|
isAuthDialogOpen,
|
|
@@ -404024,11 +403824,10 @@ ${queuedText}` : queuedText;
|
|
|
404024
403824
|
closeAnyOpenDialog,
|
|
404025
403825
|
streamingState,
|
|
404026
403826
|
cancelOngoingRequest,
|
|
404027
|
-
quitConfirmationRequest,
|
|
404028
403827
|
buffer
|
|
404029
403828
|
]
|
|
404030
403829
|
);
|
|
404031
|
-
const handleGlobalKeypress = (0,
|
|
403830
|
+
const handleGlobalKeypress = (0, import_react133.useCallback)(
|
|
404032
403831
|
(key) => {
|
|
404033
403832
|
if (settings.merged.general?.debugKeystrokeLogging) {
|
|
404034
403833
|
console.log("[DEBUG] Keystroke:", JSON.stringify(key));
|
|
@@ -404101,7 +403900,7 @@ ${queuedText}` : queuedText;
|
|
|
404101
403900
|
]
|
|
404102
403901
|
);
|
|
404103
403902
|
useKeypress(handleGlobalKeypress, { isActive: true });
|
|
404104
|
-
(0,
|
|
403903
|
+
(0, import_react133.useEffect)(() => {
|
|
404105
403904
|
if (!settings.merged.ui?.showStatusInTitle || settings.merged.ui?.hideWindowTitle)
|
|
404106
403905
|
return;
|
|
404107
403906
|
let title;
|
|
@@ -404123,23 +403922,23 @@ ${queuedText}` : queuedText;
|
|
|
404123
403922
|
settings.merged.ui?.hideWindowTitle,
|
|
404124
403923
|
stdout
|
|
404125
403924
|
]);
|
|
404126
|
-
const filteredConsoleMessages = (0,
|
|
403925
|
+
const filteredConsoleMessages = (0, import_react133.useMemo)(() => {
|
|
404127
403926
|
if (config2.getDebugMode()) {
|
|
404128
403927
|
return consoleMessages;
|
|
404129
403928
|
}
|
|
404130
403929
|
return consoleMessages.filter((msg) => msg.type !== "debug");
|
|
404131
403930
|
}, [consoleMessages, config2]);
|
|
404132
|
-
const errorCount = (0,
|
|
403931
|
+
const errorCount = (0, import_react133.useMemo)(
|
|
404133
403932
|
() => filteredConsoleMessages.filter((msg) => msg.type === "error").reduce((total, msg) => total + msg.count, 0),
|
|
404134
403933
|
[filteredConsoleMessages]
|
|
404135
403934
|
);
|
|
404136
403935
|
const nightly = props.version.includes("nightly");
|
|
404137
|
-
const dialogsVisible = showWelcomeBackDialog || showWorkspaceMigrationDialog || shouldShowIdePrompt || isFolderTrustDialogOpen || !!shellConfirmationRequest || !!confirmationRequest || confirmUpdateExtensionRequests.length > 0 || !!loopDetectionConfirmationRequest ||
|
|
404138
|
-
const pendingHistoryItems = (0,
|
|
403936
|
+
const dialogsVisible = showWelcomeBackDialog || showWorkspaceMigrationDialog || shouldShowIdePrompt || isFolderTrustDialogOpen || !!shellConfirmationRequest || !!confirmationRequest || confirmUpdateExtensionRequests.length > 0 || !!loopDetectionConfirmationRequest || isThemeDialogOpen || isSettingsDialogOpen || isModelDialogOpen || isVisionSwitchDialogOpen || isPermissionsDialogOpen || isAuthDialogOpen || isAuthenticating && isQwenAuthenticating || isEditorDialogOpen || showIdeRestartPrompt || !!proQuotaRequest || isSubagentCreateDialogOpen || isAgentsManagerDialogOpen || isApprovalModeDialogOpen;
|
|
403937
|
+
const pendingHistoryItems = (0, import_react133.useMemo)(
|
|
404139
403938
|
() => [...pendingSlashCommandHistoryItems, ...pendingGeminiHistoryItems],
|
|
404140
403939
|
[pendingSlashCommandHistoryItems, pendingGeminiHistoryItems]
|
|
404141
403940
|
);
|
|
404142
|
-
const uiState = (0,
|
|
403941
|
+
const uiState = (0, import_react133.useMemo)(
|
|
404143
403942
|
() => ({
|
|
404144
403943
|
history: historyManager.history,
|
|
404145
403944
|
historyManager,
|
|
@@ -404173,7 +403972,6 @@ ${queuedText}` : queuedText;
|
|
|
404173
403972
|
confirmationRequest,
|
|
404174
403973
|
confirmUpdateExtensionRequests,
|
|
404175
403974
|
loopDetectionConfirmationRequest,
|
|
404176
|
-
quitConfirmationRequest,
|
|
404177
403975
|
geminiMdFileCount,
|
|
404178
403976
|
streamingState,
|
|
404179
403977
|
initError,
|
|
@@ -404270,7 +404068,6 @@ ${queuedText}` : queuedText;
|
|
|
404270
404068
|
confirmationRequest,
|
|
404271
404069
|
confirmUpdateExtensionRequests,
|
|
404272
404070
|
loopDetectionConfirmationRequest,
|
|
404273
|
-
quitConfirmationRequest,
|
|
404274
404071
|
geminiMdFileCount,
|
|
404275
404072
|
streamingState,
|
|
404276
404073
|
initError,
|
|
@@ -404338,7 +404135,7 @@ ${queuedText}` : queuedText;
|
|
|
404338
404135
|
isAgentsManagerDialogOpen
|
|
404339
404136
|
]
|
|
404340
404137
|
);
|
|
404341
|
-
const uiActions = (0,
|
|
404138
|
+
const uiActions = (0, import_react133.useMemo)(
|
|
404342
404139
|
() => ({
|
|
404343
404140
|
handleThemeSelect,
|
|
404344
404141
|
handleThemeHighlight,
|
|
@@ -404413,31 +404210,31 @@ ${queuedText}` : queuedText;
|
|
|
404413
404210
|
]
|
|
404414
404211
|
);
|
|
404415
404212
|
if (pendingAuthType === "xhs-sso" /* XHS_SSO */ && isAuthenticating) {
|
|
404416
|
-
return /* @__PURE__ */ (0,
|
|
404417
|
-
/* @__PURE__ */ (0,
|
|
404418
|
-
/* @__PURE__ */ (0,
|
|
404213
|
+
return /* @__PURE__ */ (0, import_jsx_runtime106.jsxs)(Box_default, { flexDirection: "column", alignItems: "center", justifyContent: "center", children: [
|
|
404214
|
+
/* @__PURE__ */ (0, import_jsx_runtime106.jsx)(Text3, { color: "cyan", children: "\u6B63\u5728\u8FDB\u884C\u5C0F\u7EA2\u4E66 SSO \u8BA4\u8BC1..." }),
|
|
404215
|
+
/* @__PURE__ */ (0, import_jsx_runtime106.jsxs)(Text3, { color: "gray", dimColor: true, children: [
|
|
404419
404216
|
" ",
|
|
404420
404217
|
"\u8BF7\u5728\u6D4F\u89C8\u5668\u4E2D\u5B8C\u6210\u8BA4\u8BC1"
|
|
404421
404218
|
] })
|
|
404422
404219
|
] });
|
|
404423
404220
|
}
|
|
404424
|
-
return /* @__PURE__ */ (0,
|
|
404221
|
+
return /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(UIStateContext.Provider, { value: uiState, children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(UIActionsContext.Provider, { value: uiActions, children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(ConfigContext.Provider, { value: config2, children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(
|
|
404425
404222
|
AppContext2.Provider,
|
|
404426
404223
|
{
|
|
404427
404224
|
value: {
|
|
404428
404225
|
version: props.version,
|
|
404429
404226
|
startupWarnings: props.startupWarnings || []
|
|
404430
404227
|
},
|
|
404431
|
-
children: /* @__PURE__ */ (0,
|
|
404228
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(ShellFocusContext.Provider, { value: isFocused, children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(App2, {}) })
|
|
404432
404229
|
}
|
|
404433
404230
|
) }) }) });
|
|
404434
404231
|
}, "AppContainer");
|
|
404435
404232
|
|
|
404436
404233
|
// packages/cli/src/ui/hooks/useKittyKeyboardProtocol.ts
|
|
404437
404234
|
init_esbuild_shims();
|
|
404438
|
-
var
|
|
404235
|
+
var import_react134 = __toESM(require_react(), 1);
|
|
404439
404236
|
function useKittyKeyboardProtocol() {
|
|
404440
|
-
const [status] = (0,
|
|
404237
|
+
const [status] = (0, import_react134.useState)({
|
|
404441
404238
|
supported: isKittyProtocolSupported(),
|
|
404442
404239
|
enabled: isKittyProtocolEnabled(),
|
|
404443
404240
|
checking: false
|
|
@@ -405463,9 +405260,9 @@ __name(validateNonInteractiveAuth, "validateNonInteractiveAuth");
|
|
|
405463
405260
|
|
|
405464
405261
|
// packages/cli/src/ui/components/ResumeSessionPicker.tsx
|
|
405465
405262
|
init_esbuild_shims();
|
|
405466
|
-
var
|
|
405263
|
+
var import_react135 = __toESM(require_react(), 1);
|
|
405467
405264
|
init_core4();
|
|
405468
|
-
var
|
|
405265
|
+
var import_jsx_runtime107 = __toESM(require_jsx_runtime(), 1);
|
|
405469
405266
|
var PAGE_SIZE = 20;
|
|
405470
405267
|
function truncateText(text, maxWidth) {
|
|
405471
405268
|
if (text.length <= maxWidth) return text;
|
|
@@ -405480,20 +405277,20 @@ function SessionPicker({
|
|
|
405480
405277
|
onCancel
|
|
405481
405278
|
}) {
|
|
405482
405279
|
const { exit } = use_app_default();
|
|
405483
|
-
const [selectedIndex, setSelectedIndex] = (0,
|
|
405484
|
-
const [sessionState, setSessionState] = (0,
|
|
405280
|
+
const [selectedIndex, setSelectedIndex] = (0, import_react135.useState)(0);
|
|
405281
|
+
const [sessionState, setSessionState] = (0, import_react135.useState)({
|
|
405485
405282
|
sessions: [],
|
|
405486
405283
|
hasMore: true,
|
|
405487
405284
|
nextCursor: void 0
|
|
405488
405285
|
});
|
|
405489
|
-
const isLoadingMoreRef = (0,
|
|
405490
|
-
const [filterByBranch, setFilterByBranch] = (0,
|
|
405491
|
-
const [isExiting, setIsExiting] = (0,
|
|
405492
|
-
const [terminalSize, setTerminalSize] = (0,
|
|
405286
|
+
const isLoadingMoreRef = (0, import_react135.useRef)(false);
|
|
405287
|
+
const [filterByBranch, setFilterByBranch] = (0, import_react135.useState)(false);
|
|
405288
|
+
const [isExiting, setIsExiting] = (0, import_react135.useState)(false);
|
|
405289
|
+
const [terminalSize, setTerminalSize] = (0, import_react135.useState)({
|
|
405493
405290
|
width: process.stdout.columns || 80,
|
|
405494
405291
|
height: process.stdout.rows || 24
|
|
405495
405292
|
});
|
|
405496
|
-
(0,
|
|
405293
|
+
(0, import_react135.useEffect)(() => {
|
|
405497
405294
|
const handleResize = /* @__PURE__ */ __name(() => {
|
|
405498
405295
|
setTerminalSize({
|
|
405499
405296
|
width: process.stdout.columns || 80,
|
|
@@ -405509,10 +405306,10 @@ function SessionPicker({
|
|
|
405509
405306
|
(session) => session.gitBranch === currentBranch
|
|
405510
405307
|
) : sessionState.sessions;
|
|
405511
405308
|
const hasSentinel = sessionState.hasMore;
|
|
405512
|
-
(0,
|
|
405309
|
+
(0, import_react135.useEffect)(() => {
|
|
405513
405310
|
setSelectedIndex(0);
|
|
405514
405311
|
}, [filterByBranch]);
|
|
405515
|
-
const loadMoreSessions = (0,
|
|
405312
|
+
const loadMoreSessions = (0, import_react135.useCallback)(async () => {
|
|
405516
405313
|
if (!sessionState.hasMore || isLoadingMoreRef.current) return;
|
|
405517
405314
|
isLoadingMoreRef.current = true;
|
|
405518
405315
|
try {
|
|
@@ -405550,7 +405347,7 @@ function SessionPicker({
|
|
|
405550
405347
|
const showScrollUp = scrollOffset > 0;
|
|
405551
405348
|
const showScrollDown = scrollOffset + maxVisibleItems < filteredSessions.length;
|
|
405552
405349
|
const sentinelVisible = hasSentinel && scrollOffset + maxVisibleItems >= filteredSessions.length;
|
|
405553
|
-
(0,
|
|
405350
|
+
(0, import_react135.useEffect)(() => {
|
|
405554
405351
|
if (!sessionState.hasMore || isLoadingMoreRef.current) return;
|
|
405555
405352
|
const shouldLoadMore = filteredSessions.length === 0 || sentinelVisible || isLoadingMoreRef.current;
|
|
405556
405353
|
if (shouldLoadMore) {
|
|
@@ -405601,7 +405398,7 @@ function SessionPicker({
|
|
|
405601
405398
|
return;
|
|
405602
405399
|
}
|
|
405603
405400
|
});
|
|
405604
|
-
(0,
|
|
405401
|
+
(0, import_react135.useEffect)(() => {
|
|
405605
405402
|
if (selectedIndex >= filteredSessions.length && filteredSessions.length > 0) {
|
|
405606
405403
|
setSelectedIndex(filteredSessions.length - 1);
|
|
405607
405404
|
}
|
|
@@ -405609,16 +405406,16 @@ function SessionPicker({
|
|
|
405609
405406
|
const contentWidth = terminalSize.width - 4;
|
|
405610
405407
|
const promptMaxWidth = contentWidth - 4;
|
|
405611
405408
|
if (isExiting) {
|
|
405612
|
-
return /* @__PURE__ */ (0,
|
|
405409
|
+
return /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, {});
|
|
405613
405410
|
}
|
|
405614
|
-
return /* @__PURE__ */ (0,
|
|
405411
|
+
return /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
|
|
405615
405412
|
Box_default,
|
|
405616
405413
|
{
|
|
405617
405414
|
flexDirection: "column",
|
|
405618
405415
|
width: terminalSize.width,
|
|
405619
405416
|
height: terminalSize.height - 1,
|
|
405620
405417
|
overflow: "hidden",
|
|
405621
|
-
children: /* @__PURE__ */ (0,
|
|
405418
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(
|
|
405622
405419
|
Box_default,
|
|
405623
405420
|
{
|
|
405624
405421
|
flexDirection: "column",
|
|
@@ -405628,9 +405425,9 @@ function SessionPicker({
|
|
|
405628
405425
|
height: terminalSize.height - 1,
|
|
405629
405426
|
overflow: "hidden",
|
|
405630
405427
|
children: [
|
|
405631
|
-
/* @__PURE__ */ (0,
|
|
405632
|
-
/* @__PURE__ */ (0,
|
|
405633
|
-
/* @__PURE__ */ (0,
|
|
405428
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { paddingX: 1, children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Text3, { bold: true, color: theme.text.primary, children: "Resume Session" }) }),
|
|
405429
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Text3, { color: theme.border.default, children: "\u2500".repeat(terminalSize.width - 2) }) }),
|
|
405430
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { flexDirection: "column", flexGrow: 1, paddingX: 1, overflow: "hidden", children: filteredSessions.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { paddingY: 1, justifyContent: "center", children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Text3, { color: theme.text.secondary, children: filterByBranch ? `No sessions found for branch "${currentBranch}"` : "No sessions found" }) }) : visibleSessions.map((session, visibleIndex) => {
|
|
405634
405431
|
const actualIndex = scrollOffset + visibleIndex;
|
|
405635
405432
|
const isSelected = actualIndex === selectedIndex;
|
|
405636
405433
|
const isFirst = visibleIndex === 0;
|
|
@@ -405640,21 +405437,21 @@ function SessionPicker({
|
|
|
405640
405437
|
const showUpIndicator = isFirst && showScrollUp;
|
|
405641
405438
|
const showDownIndicator = isLast && showScrollDown;
|
|
405642
405439
|
const prefix = isSelected ? "\u203A " : showUpIndicator ? "\u2191 " : showDownIndicator ? "\u2193 " : " ";
|
|
405643
|
-
return /* @__PURE__ */ (0,
|
|
405440
|
+
return /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(
|
|
405644
405441
|
Box_default,
|
|
405645
405442
|
{
|
|
405646
405443
|
flexDirection: "column",
|
|
405647
405444
|
marginBottom: isLast ? 0 : 1,
|
|
405648
405445
|
children: [
|
|
405649
|
-
/* @__PURE__ */ (0,
|
|
405650
|
-
/* @__PURE__ */ (0,
|
|
405446
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(Box_default, { children: [
|
|
405447
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
|
|
405651
405448
|
Text3,
|
|
405652
405449
|
{
|
|
405653
405450
|
color: isSelected ? theme.text.accent : showUpIndicator || showDownIndicator ? theme.text.secondary : void 0,
|
|
405654
405451
|
children: prefix
|
|
405655
405452
|
}
|
|
405656
405453
|
),
|
|
405657
|
-
/* @__PURE__ */ (0,
|
|
405454
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
|
|
405658
405455
|
Text3,
|
|
405659
405456
|
{
|
|
405660
405457
|
bold: isSelected,
|
|
@@ -405666,9 +405463,9 @@ function SessionPicker({
|
|
|
405666
405463
|
}
|
|
405667
405464
|
)
|
|
405668
405465
|
] }),
|
|
405669
|
-
/* @__PURE__ */ (0,
|
|
405670
|
-
/* @__PURE__ */ (0,
|
|
405671
|
-
/* @__PURE__ */ (0,
|
|
405466
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(Box_default, { children: [
|
|
405467
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Text3, { children: " " }),
|
|
405468
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(Text3, { color: theme.text.secondary, children: [
|
|
405672
405469
|
timeAgo,
|
|
405673
405470
|
" \xB7 ",
|
|
405674
405471
|
messageText,
|
|
@@ -405680,10 +405477,10 @@ function SessionPicker({
|
|
|
405680
405477
|
session.sessionId
|
|
405681
405478
|
);
|
|
405682
405479
|
}) }),
|
|
405683
|
-
/* @__PURE__ */ (0,
|
|
405684
|
-
/* @__PURE__ */ (0,
|
|
405685
|
-
currentBranch && /* @__PURE__ */ (0,
|
|
405686
|
-
/* @__PURE__ */ (0,
|
|
405480
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Text3, { color: theme.border.default, children: "\u2500".repeat(terminalSize.width - 2) }) }),
|
|
405481
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { paddingX: 1, children: /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(Text3, { color: theme.text.secondary, children: [
|
|
405482
|
+
currentBranch && /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(import_jsx_runtime107.Fragment, { children: [
|
|
405483
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
|
|
405687
405484
|
Text3,
|
|
405688
405485
|
{
|
|
405689
405486
|
bold: filterByBranch,
|
|
@@ -405722,7 +405519,7 @@ async function showResumeSessionPicker(cwd7 = process.cwd()) {
|
|
|
405722
405519
|
return new Promise((resolve26) => {
|
|
405723
405520
|
let selectedId;
|
|
405724
405521
|
const { unmount, waitUntilExit } = render_default(
|
|
405725
|
-
/* @__PURE__ */ (0,
|
|
405522
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
|
|
405726
405523
|
SessionPicker,
|
|
405727
405524
|
{
|
|
405728
405525
|
sessionService,
|
|
@@ -407852,7 +407649,7 @@ var GeminiAgent = class {
|
|
|
407852
407649
|
name: APPROVAL_MODE_INFO[mode].name,
|
|
407853
407650
|
description: APPROVAL_MODE_INFO[mode].description
|
|
407854
407651
|
}));
|
|
407855
|
-
const version3 = "0.1.3-alpha.
|
|
407652
|
+
const version3 = "0.1.3-alpha.5";
|
|
407856
407653
|
return {
|
|
407857
407654
|
protocolVersion: PROTOCOL_VERSION,
|
|
407858
407655
|
agentInfo: {
|
|
@@ -408039,7 +407836,7 @@ var GeminiAgent = class {
|
|
|
408039
407836
|
};
|
|
408040
407837
|
|
|
408041
407838
|
// packages/cli/src/gemini.tsx
|
|
408042
|
-
var
|
|
407839
|
+
var import_jsx_runtime108 = __toESM(require_jsx_runtime(), 1);
|
|
408043
407840
|
function validateDnsResolutionOrder(order) {
|
|
408044
407841
|
const defaultValue = "ipv4first";
|
|
408045
407842
|
if (order === void 0) {
|
|
@@ -408104,14 +407901,14 @@ async function startInteractiveUI(config2, settings, startupWarnings, workspaceR
|
|
|
408104
407901
|
const AppWrapper = /* @__PURE__ */ __name(() => {
|
|
408105
407902
|
const kittyProtocolStatus = useKittyKeyboardProtocol();
|
|
408106
407903
|
const nodeMajorVersion = parseInt(process.versions.node.split(".")[0], 10);
|
|
408107
|
-
return /* @__PURE__ */ (0,
|
|
407904
|
+
return /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(SettingsContext.Provider, { value: settings, children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
|
|
408108
407905
|
KeypressProvider,
|
|
408109
407906
|
{
|
|
408110
407907
|
kittyProtocolEnabled: kittyProtocolStatus.enabled,
|
|
408111
407908
|
config: config2,
|
|
408112
407909
|
debugKeystrokeLogging: settings.merged.general?.debugKeystrokeLogging,
|
|
408113
407910
|
pasteWorkaround: process.platform === "win32" || nodeMajorVersion < 20,
|
|
408114
|
-
children: /* @__PURE__ */ (0,
|
|
407911
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(SessionStatsProvider, { sessionId: config2.getSessionId(), children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(VimModeProvider, { settings, children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
|
|
408115
407912
|
AppContainer,
|
|
408116
407913
|
{
|
|
408117
407914
|
config: config2,
|
|
@@ -408125,7 +407922,7 @@ async function startInteractiveUI(config2, settings, startupWarnings, workspaceR
|
|
|
408125
407922
|
) });
|
|
408126
407923
|
}, "AppWrapper");
|
|
408127
407924
|
const instance = render_default(
|
|
408128
|
-
process.env["DEBUG"] ? /* @__PURE__ */ (0,
|
|
407925
|
+
process.env["DEBUG"] ? /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(import_react136.default.StrictMode, { children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(AppWrapper, {}) }) : /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(AppWrapper, {}),
|
|
408129
407926
|
{
|
|
408130
407927
|
exitOnCtrlC: false,
|
|
408131
407928
|
isScreenReaderEnabled: config2.getScreenReader()
|
|
@@ -408358,7 +408155,7 @@ ${input}`;
|
|
|
408358
408155
|
}
|
|
408359
408156
|
}
|
|
408360
408157
|
const nonInteractiveConfig = await validateNonInteractiveAuth(
|
|
408361
|
-
settings.merged.security?.auth?.selectedType
|
|
408158
|
+
argv.authType || settings.merged.security?.auth?.selectedType,
|
|
408362
408159
|
settings.merged.security?.auth?.useExternal,
|
|
408363
408160
|
config2,
|
|
408364
408161
|
settings
|