@google/gemini-cli 0.1.10-dev.15 → 0.1.11-nightly.250713.4442e893
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -2
- package/dist/google-gemini-cli-0.1.11.tgz +0 -0
- package/dist/package.json +7 -8
- package/dist/src/config/auth.js +6 -5
- package/dist/src/config/auth.js.map +1 -1
- package/dist/src/config/config.d.ts +23 -2
- package/dist/src/config/config.js +78 -54
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/extension.d.ts +1 -0
- package/dist/src/config/extension.js +34 -6
- package/dist/src/config/extension.js.map +1 -1
- package/dist/src/config/sandboxConfig.d.ts +1 -1
- package/dist/src/config/sandboxConfig.js +1 -1
- package/dist/src/config/sandboxConfig.js.map +1 -1
- package/dist/src/config/settings.d.ts +8 -2
- package/dist/src/config/settings.js +101 -3
- package/dist/src/config/settings.js.map +1 -1
- package/dist/src/gemini.js +53 -29
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +1 -1
- package/dist/src/generated/git-commit.js +1 -1
- package/dist/src/nonInteractiveCli.d.ts +1 -1
- package/dist/src/nonInteractiveCli.js +12 -3
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/services/CommandService.d.ts +13 -0
- package/dist/src/services/CommandService.js +32 -0
- package/dist/src/services/CommandService.js.map +1 -0
- package/dist/src/ui/App.d.ts +1 -0
- package/dist/src/ui/App.js +138 -26
- package/dist/src/ui/App.js.map +1 -1
- package/dist/src/ui/commands/clearCommand.d.ts +7 -0
- package/dist/src/ui/commands/clearCommand.js +15 -0
- package/dist/src/ui/commands/clearCommand.js.map +1 -0
- package/dist/src/ui/commands/helpCommand.d.ts +7 -0
- package/dist/src/ui/commands/helpCommand.js +18 -0
- package/dist/src/ui/commands/helpCommand.js.map +1 -0
- package/dist/src/ui/commands/memoryCommand.d.ts +7 -0
- package/dist/src/ui/commands/memoryCommand.js +81 -0
- package/dist/src/ui/commands/memoryCommand.js.map +1 -0
- package/dist/src/ui/commands/themeCommand.d.ts +7 -0
- package/dist/src/ui/commands/themeCommand.js +14 -0
- package/dist/src/ui/commands/themeCommand.js.map +1 -0
- package/dist/src/ui/commands/types.d.ts +63 -0
- package/dist/src/{gemini.test.d.ts → ui/commands/types.js} +1 -0
- package/dist/src/ui/commands/types.js.map +1 -0
- package/dist/src/ui/components/AuthDialog.js +36 -8
- package/dist/src/ui/components/AuthDialog.js.map +1 -1
- package/dist/src/ui/components/Footer.d.ts +1 -0
- package/dist/src/ui/components/Footer.js +3 -2
- package/dist/src/ui/components/Footer.js.map +1 -1
- package/dist/src/ui/components/Header.d.ts +2 -0
- package/dist/src/ui/components/Header.js +3 -3
- package/dist/src/ui/components/Header.js.map +1 -1
- package/dist/src/ui/components/Help.d.ts +1 -1
- package/dist/src/ui/components/Help.js +3 -2
- package/dist/src/ui/components/Help.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.d.ts +2 -1
- package/dist/src/ui/components/InputPrompt.js +153 -155
- package/dist/src/ui/components/InputPrompt.js.map +1 -1
- package/dist/src/ui/components/LoadingIndicator.js +2 -1
- package/dist/src/ui/components/LoadingIndicator.js.map +1 -1
- package/dist/src/ui/components/ThemeDialog.js +18 -17
- package/dist/src/ui/components/ThemeDialog.js.map +1 -1
- package/dist/src/ui/components/messages/CompressionMessage.js +1 -1
- package/dist/src/ui/components/shared/MaxSizedBox.js +1 -1
- package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -1
- package/dist/src/ui/components/shared/RadioButtonSelect.d.ts +10 -7
- package/dist/src/ui/components/shared/RadioButtonSelect.js +57 -40
- package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -1
- package/dist/src/ui/components/shared/text-buffer.d.ts +2 -1
- package/dist/src/ui/components/shared/text-buffer.js +3 -3
- package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
- package/dist/src/ui/contexts/SessionContext.d.ts +4 -1
- package/dist/src/ui/contexts/SessionContext.js +12 -2
- package/dist/src/ui/contexts/SessionContext.js.map +1 -1
- package/dist/src/ui/hooks/atCommandProcessor.js +5 -7
- package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.d.ts +6 -10
- package/dist/src/ui/hooks/slashCommandProcessor.js +221 -129
- package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/useAuthCommand.js +12 -2
- package/dist/src/ui/hooks/useAuthCommand.js.map +1 -1
- package/dist/src/ui/hooks/useCompletion.d.ts +2 -2
- package/dist/src/ui/hooks/useCompletion.js +106 -56
- package/dist/src/ui/hooks/useCompletion.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.d.ts +3 -3
- package/dist/src/ui/hooks/useGeminiStream.js +54 -28
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
- package/dist/src/ui/hooks/useKeypress.js +74 -4
- package/dist/src/ui/hooks/useKeypress.js.map +1 -1
- package/dist/src/ui/types.d.ts +10 -0
- package/dist/src/ui/utils/ConsolePatcher.d.ts +23 -0
- package/dist/src/ui/utils/ConsolePatcher.js +42 -0
- package/dist/src/ui/utils/ConsolePatcher.js.map +1 -0
- package/dist/src/ui/utils/InlineMarkdownRenderer.d.ts +16 -0
- package/dist/src/ui/utils/InlineMarkdownRenderer.js +104 -0
- package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -0
- package/dist/src/ui/utils/MarkdownDisplay.js +30 -101
- package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
- package/dist/src/ui/utils/TableRenderer.js +50 -32
- package/dist/src/ui/utils/TableRenderer.js.map +1 -1
- package/dist/src/ui/utils/clipboardUtils.d.ts +22 -0
- package/dist/src/ui/utils/clipboardUtils.js +127 -0
- package/dist/src/ui/utils/clipboardUtils.js.map +1 -0
- package/dist/src/ui/utils/errorParsing.d.ts +2 -10
- package/dist/src/ui/utils/errorParsing.js +34 -23
- package/dist/src/ui/utils/errorParsing.js.map +1 -1
- package/dist/src/utils/cleanup.d.ts +2 -0
- package/dist/src/utils/cleanup.js +15 -0
- package/dist/src/utils/cleanup.js.map +1 -1
- package/dist/src/utils/sandbox-macos-permissive-proxied.sb +1 -1
- package/dist/src/utils/sandbox-macos-restrictive-proxied.sb +1 -1
- package/dist/src/utils/userStartupWarnings.d.ts +6 -0
- package/dist/src/utils/userStartupWarnings.js +33 -0
- package/dist/src/utils/userStartupWarnings.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -9
- package/dist/src/gemini.test.js +0 -122
- package/dist/src/gemini.test.js.map +0 -1
- package/dist/src/ui/App.test.d.ts +0 -6
- package/dist/src/ui/App.test.js +0 -299
- package/dist/src/ui/App.test.js.map +0 -1
- package/dist/src/ui/components/AuthDialog.test.d.ts +0 -6
- package/dist/src/ui/components/AuthDialog.test.js +0 -69
- package/dist/src/ui/components/AuthDialog.test.js.map +0 -1
- package/dist/src/ui/components/ConsolePatcher.d.ts +0 -12
- package/dist/src/ui/components/ConsolePatcher.js +0 -40
- package/dist/src/ui/components/ConsolePatcher.js.map +0 -1
- package/dist/src/ui/components/HistoryItemDisplay.test.d.ts +0 -6
- package/dist/src/ui/components/HistoryItemDisplay.test.js +0 -81
- package/dist/src/ui/components/HistoryItemDisplay.test.js.map +0 -1
- package/dist/src/ui/components/InputPrompt.test.d.ts +0 -6
- package/dist/src/ui/components/InputPrompt.test.js +0 -154
- package/dist/src/ui/components/InputPrompt.test.js.map +0 -1
- package/dist/src/ui/components/LoadingIndicator.test.d.ts +0 -6
- package/dist/src/ui/components/LoadingIndicator.test.js +0 -141
- package/dist/src/ui/components/LoadingIndicator.test.js.map +0 -1
- package/dist/src/ui/components/ModelStatsDisplay.test.d.ts +0 -6
- package/dist/src/ui/components/ModelStatsDisplay.test.js +0 -217
- package/dist/src/ui/components/ModelStatsDisplay.test.js.map +0 -1
- package/dist/src/ui/components/SessionSummaryDisplay.test.d.ts +0 -6
- package/dist/src/ui/components/SessionSummaryDisplay.test.js +0 -60
- package/dist/src/ui/components/SessionSummaryDisplay.test.js.map +0 -1
- package/dist/src/ui/components/StatsDisplay.test.d.ts +0 -6
- package/dist/src/ui/components/StatsDisplay.test.js +0 -275
- package/dist/src/ui/components/StatsDisplay.test.js.map +0 -1
- package/dist/src/ui/components/ToolStatsDisplay.test.d.ts +0 -6
- package/dist/src/ui/components/ToolStatsDisplay.test.js +0 -160
- package/dist/src/ui/components/ToolStatsDisplay.test.js.map +0 -1
- package/dist/src/ui/components/messages/DiffRenderer.test.d.ts +0 -6
- package/dist/src/ui/components/messages/DiffRenderer.test.js +0 -239
- package/dist/src/ui/components/messages/DiffRenderer.test.js.map +0 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.d.ts +0 -6
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +0 -37
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +0 -1
- package/dist/src/ui/components/messages/ToolMessage.test.d.ts +0 -6
- package/dist/src/ui/components/messages/ToolMessage.test.js +0 -116
- package/dist/src/ui/components/messages/ToolMessage.test.js.map +0 -1
- package/dist/src/ui/components/shared/MaxSizedBox.test.d.ts +0 -6
- package/dist/src/ui/components/shared/MaxSizedBox.test.js +0 -134
- package/dist/src/ui/components/shared/MaxSizedBox.test.js.map +0 -1
- package/dist/src/ui/contexts/SessionContext.test.d.ts +0 -6
- package/dist/src/ui/contexts/SessionContext.test.js +0 -96
- package/dist/src/ui/contexts/SessionContext.test.js.map +0 -1
- package/dist/src/ui/hooks/useGeminiStream.test.d.ts +0 -6
- package/dist/src/ui/hooks/useGeminiStream.test.js +0 -775
- package/dist/src/ui/hooks/useGeminiStream.test.js.map +0 -1
- package/dist/src/ui/utils/MarkdownDisplay.test.d.ts +0 -6
- package/dist/src/ui/utils/MarkdownDisplay.test.js +0 -176
- package/dist/src/ui/utils/MarkdownDisplay.test.js.map +0 -1
|
@@ -12,14 +12,15 @@ import { useInputHistory } from '../hooks/useInputHistory.js';
|
|
|
12
12
|
import { cpSlice, cpLen } from '../utils/textUtils.js';
|
|
13
13
|
import chalk from 'chalk';
|
|
14
14
|
import stringWidth from 'string-width';
|
|
15
|
-
import process from 'node:process';
|
|
16
15
|
import { useShellHistory } from '../hooks/useShellHistory.js';
|
|
17
16
|
import { useCompletion } from '../hooks/useCompletion.js';
|
|
18
17
|
import { useKeypress } from '../hooks/useKeypress.js';
|
|
19
18
|
import { isAtCommand, isSlashCommand } from '../utils/commandUtils.js';
|
|
20
|
-
|
|
19
|
+
import { clipboardHasImage, saveClipboardImage, cleanupOldClipboardImages, } from '../utils/clipboardUtils.js';
|
|
20
|
+
import * as path from 'path';
|
|
21
|
+
export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, config, slashCommands, commandContext, placeholder = ' Type your message or @path/to/file', focus = true, inputWidth, suggestionsWidth, shellModeActive, setShellModeActive, }) => {
|
|
21
22
|
const [justNavigatedHistory, setJustNavigatedHistory] = useState(false);
|
|
22
|
-
const completion = useCompletion(buffer.text, config.getTargetDir(), isAtCommand(buffer.text) || isSlashCommand(buffer.text), slashCommands, config);
|
|
23
|
+
const completion = useCompletion(buffer.text, config.getTargetDir(), isAtCommand(buffer.text) || isSlashCommand(buffer.text), slashCommands, commandContext, config);
|
|
23
24
|
const resetCompletionState = completion.resetCompletionState;
|
|
24
25
|
const shellHistory = useShellHistory(config.getProjectRoot());
|
|
25
26
|
const handleSubmitAndClear = useCallback((submittedValue) => {
|
|
@@ -63,26 +64,40 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
|
63
64
|
const query = buffer.text;
|
|
64
65
|
const suggestion = completionSuggestions[indexToUse].value;
|
|
65
66
|
if (query.trimStart().startsWith('/')) {
|
|
66
|
-
const
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
67
|
+
const hasTrailingSpace = query.endsWith(' ');
|
|
68
|
+
const parts = query
|
|
69
|
+
.trimStart()
|
|
70
|
+
.substring(1)
|
|
71
|
+
.split(/\s+/)
|
|
72
|
+
.filter(Boolean);
|
|
73
|
+
let isParentPath = false;
|
|
74
|
+
// If there's no trailing space, we need to check if the current query
|
|
75
|
+
// is already a complete path to a parent command.
|
|
76
|
+
if (!hasTrailingSpace) {
|
|
77
|
+
let currentLevel = slashCommands;
|
|
78
|
+
for (let i = 0; i < parts.length; i++) {
|
|
79
|
+
const part = parts[i];
|
|
80
|
+
const found = currentLevel?.find((cmd) => cmd.name === part || cmd.altName === part);
|
|
81
|
+
if (found) {
|
|
82
|
+
if (i === parts.length - 1 && found.subCommands) {
|
|
83
|
+
isParentPath = true;
|
|
84
|
+
}
|
|
85
|
+
currentLevel = found.subCommands;
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
// Path is invalid, so it can't be a parent path.
|
|
89
|
+
currentLevel = undefined;
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
79
92
|
}
|
|
80
93
|
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
94
|
+
// Determine the base path of the command.
|
|
95
|
+
// - If there's a trailing space, the whole command is the base.
|
|
96
|
+
// - If it's a known parent path, the whole command is the base.
|
|
97
|
+
// - Otherwise, the base is everything EXCEPT the last partial part.
|
|
98
|
+
const basePath = hasTrailingSpace || isParentPath ? parts : parts.slice(0, -1);
|
|
99
|
+
const newValue = `/${[...basePath, suggestion].join(' ')} `;
|
|
100
|
+
buffer.setText(newValue);
|
|
86
101
|
}
|
|
87
102
|
else {
|
|
88
103
|
const atIndex = query.lastIndexOf('@');
|
|
@@ -97,22 +112,72 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
|
97
112
|
buffer.replaceRangeByOffset(autoCompleteStartIndex, buffer.text.length, suggestion);
|
|
98
113
|
}
|
|
99
114
|
resetCompletionState();
|
|
100
|
-
}, [
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
115
|
+
}, [resetCompletionState, buffer, completionSuggestions, slashCommands]);
|
|
116
|
+
// Handle clipboard image pasting with Ctrl+V
|
|
117
|
+
const handleClipboardImage = useCallback(async () => {
|
|
118
|
+
try {
|
|
119
|
+
if (await clipboardHasImage()) {
|
|
120
|
+
const imagePath = await saveClipboardImage(config.getTargetDir());
|
|
121
|
+
if (imagePath) {
|
|
122
|
+
// Clean up old images
|
|
123
|
+
cleanupOldClipboardImages(config.getTargetDir()).catch(() => {
|
|
124
|
+
// Ignore cleanup errors
|
|
125
|
+
});
|
|
126
|
+
// Get relative path from current directory
|
|
127
|
+
const relativePath = path.relative(config.getTargetDir(), imagePath);
|
|
128
|
+
// Insert @path reference at cursor position
|
|
129
|
+
const insertText = `@${relativePath}`;
|
|
130
|
+
const currentText = buffer.text;
|
|
131
|
+
const [row, col] = buffer.cursor;
|
|
132
|
+
// Calculate offset from row/col
|
|
133
|
+
let offset = 0;
|
|
134
|
+
for (let i = 0; i < row; i++) {
|
|
135
|
+
offset += buffer.lines[i].length + 1; // +1 for newline
|
|
136
|
+
}
|
|
137
|
+
offset += col;
|
|
138
|
+
// Add spaces around the path if needed
|
|
139
|
+
let textToInsert = insertText;
|
|
140
|
+
const charBefore = offset > 0 ? currentText[offset - 1] : '';
|
|
141
|
+
const charAfter = offset < currentText.length ? currentText[offset] : '';
|
|
142
|
+
if (charBefore && charBefore !== ' ' && charBefore !== '\n') {
|
|
143
|
+
textToInsert = ' ' + textToInsert;
|
|
144
|
+
}
|
|
145
|
+
if (!charAfter || (charAfter !== ' ' && charAfter !== '\n')) {
|
|
146
|
+
textToInsert = textToInsert + ' ';
|
|
147
|
+
}
|
|
148
|
+
// Insert at cursor position
|
|
149
|
+
buffer.replaceRangeByOffset(offset, offset, textToInsert);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
catch (error) {
|
|
154
|
+
console.error('Error handling clipboard image:', error);
|
|
155
|
+
}
|
|
156
|
+
}, [buffer, config]);
|
|
107
157
|
const handleInput = useCallback((key) => {
|
|
108
158
|
if (!focus) {
|
|
109
159
|
return;
|
|
110
160
|
}
|
|
111
|
-
|
|
112
|
-
|
|
161
|
+
if (key.sequence === '!' &&
|
|
162
|
+
buffer.text === '' &&
|
|
163
|
+
!completion.showSuggestions) {
|
|
113
164
|
setShellModeActive(!shellModeActive);
|
|
114
165
|
buffer.setText(''); // Clear the '!' from input
|
|
115
|
-
return
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
168
|
+
if (key.name === 'escape') {
|
|
169
|
+
if (shellModeActive) {
|
|
170
|
+
setShellModeActive(false);
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
173
|
+
if (completion.showSuggestions) {
|
|
174
|
+
completion.resetCompletionState();
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
if (key.ctrl && key.name === 'l') {
|
|
179
|
+
onClearScreen();
|
|
180
|
+
return;
|
|
116
181
|
}
|
|
117
182
|
if (completion.showSuggestions) {
|
|
118
183
|
if (key.name === 'up') {
|
|
@@ -123,10 +188,10 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
|
123
188
|
completion.navigateDown();
|
|
124
189
|
return;
|
|
125
190
|
}
|
|
126
|
-
if (key.name === 'tab') {
|
|
191
|
+
if (key.name === 'tab' || (key.name === 'return' && !key.ctrl)) {
|
|
127
192
|
if (completion.suggestions.length > 0) {
|
|
128
193
|
const targetIndex = completion.activeSuggestionIndex === -1
|
|
129
|
-
? 0
|
|
194
|
+
? 0 // Default to the first if none is active
|
|
130
195
|
: completion.activeSuggestionIndex;
|
|
131
196
|
if (targetIndex < completion.suggestions.length) {
|
|
132
197
|
handleAutocomplete(targetIndex);
|
|
@@ -134,67 +199,68 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
|
134
199
|
}
|
|
135
200
|
return;
|
|
136
201
|
}
|
|
137
|
-
if (key.name === 'return') {
|
|
138
|
-
if (completion.activeSuggestionIndex >= 0) {
|
|
139
|
-
handleAutocomplete(completion.activeSuggestionIndex);
|
|
140
|
-
}
|
|
141
|
-
else if (query.trim()) {
|
|
142
|
-
handleSubmitAndClear(query);
|
|
143
|
-
}
|
|
144
|
-
return;
|
|
145
|
-
}
|
|
146
202
|
}
|
|
147
203
|
else {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
204
|
+
if (!shellModeActive) {
|
|
205
|
+
if (key.ctrl && key.name === 'p') {
|
|
206
|
+
inputHistory.navigateUp();
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
if (key.ctrl && key.name === 'n') {
|
|
210
|
+
inputHistory.navigateDown();
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
// Handle arrow-up/down for history on single-line or at edges
|
|
214
|
+
if (key.name === 'up' &&
|
|
215
|
+
(buffer.allVisualLines.length === 1 ||
|
|
216
|
+
(buffer.visualCursor[0] === 0 && buffer.visualScrollRow === 0))) {
|
|
217
|
+
inputHistory.navigateUp();
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
if (key.name === 'down' &&
|
|
221
|
+
(buffer.allVisualLines.length === 1 ||
|
|
222
|
+
buffer.visualCursor[0] === buffer.allVisualLines.length - 1)) {
|
|
223
|
+
inputHistory.navigateDown();
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
160
226
|
}
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
227
|
+
else {
|
|
228
|
+
// Shell History Navigation
|
|
229
|
+
if (key.name === 'up') {
|
|
230
|
+
const prevCommand = shellHistory.getPreviousCommand();
|
|
231
|
+
if (prevCommand !== null)
|
|
232
|
+
buffer.setText(prevCommand);
|
|
164
233
|
return;
|
|
165
234
|
}
|
|
166
|
-
|
|
235
|
+
if (key.name === 'down') {
|
|
236
|
+
const nextCommand = shellHistory.getNextCommand();
|
|
237
|
+
if (nextCommand !== null)
|
|
238
|
+
buffer.setText(nextCommand);
|
|
239
|
+
return;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
if (key.name === 'return' && !key.ctrl && !key.meta && !key.paste) {
|
|
243
|
+
if (buffer.text.trim()) {
|
|
244
|
+
handleSubmitAndClear(buffer.text);
|
|
245
|
+
}
|
|
167
246
|
return;
|
|
168
247
|
}
|
|
169
248
|
}
|
|
170
|
-
//
|
|
249
|
+
// Newline insertion
|
|
250
|
+
if (key.name === 'return' && (key.ctrl || key.meta || key.paste)) {
|
|
251
|
+
buffer.newline();
|
|
252
|
+
return;
|
|
253
|
+
}
|
|
254
|
+
// Ctrl+A (Home) / Ctrl+E (End)
|
|
171
255
|
if (key.ctrl && key.name === 'a') {
|
|
172
256
|
buffer.move('home');
|
|
173
|
-
buffer.moveToOffset(0);
|
|
174
257
|
return;
|
|
175
258
|
}
|
|
176
|
-
// Ctrl+E (End)
|
|
177
259
|
if (key.ctrl && key.name === 'e') {
|
|
178
260
|
buffer.move('end');
|
|
179
|
-
buffer.moveToOffset(cpLen(buffer.text));
|
|
180
261
|
return;
|
|
181
262
|
}
|
|
182
|
-
//
|
|
183
|
-
if (key.ctrl && key.name === 'l') {
|
|
184
|
-
onClearScreen();
|
|
185
|
-
return;
|
|
186
|
-
}
|
|
187
|
-
// Ctrl+P (History Up)
|
|
188
|
-
if (key.ctrl && key.name === 'p' && !completion.showSuggestions) {
|
|
189
|
-
inputHistory.navigateUp();
|
|
190
|
-
return;
|
|
191
|
-
}
|
|
192
|
-
// Ctrl+N (History Down)
|
|
193
|
-
if (key.ctrl && key.name === 'n' && !completion.showSuggestions) {
|
|
194
|
-
inputHistory.navigateDown();
|
|
195
|
-
return;
|
|
196
|
-
}
|
|
197
|
-
// Core text editing from MultilineTextEditor's useInput
|
|
263
|
+
// Kill line commands
|
|
198
264
|
if (key.ctrl && key.name === 'k') {
|
|
199
265
|
buffer.killLineRight();
|
|
200
266
|
return;
|
|
@@ -203,87 +269,18 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
|
203
269
|
buffer.killLineLeft();
|
|
204
270
|
return;
|
|
205
271
|
}
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
(!key.ctrl &&
|
|
211
|
-
key.name === 'e' &&
|
|
212
|
-
key.sequence.length === 1 &&
|
|
213
|
-
key.sequence.charCodeAt(0) === 5);
|
|
214
|
-
if (isCtrlX || isCtrlEFromEditor) {
|
|
215
|
-
if (isCtrlEFromEditor && !(key.ctrl && key.name === 'e')) {
|
|
216
|
-
// Avoid double handling Ctrl+E
|
|
217
|
-
buffer.openInExternalEditor();
|
|
218
|
-
return;
|
|
219
|
-
}
|
|
220
|
-
if (isCtrlX) {
|
|
221
|
-
buffer.openInExternalEditor();
|
|
222
|
-
return;
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
if (process.env['TEXTBUFFER_DEBUG'] === '1' ||
|
|
226
|
-
process.env['TEXTBUFFER_DEBUG'] === 'true') {
|
|
227
|
-
console.log('[InputPromptCombined] event', { key });
|
|
228
|
-
}
|
|
229
|
-
// Ctrl+Enter for newline, Enter for submit
|
|
230
|
-
if (key.name === 'return') {
|
|
231
|
-
const [row, col] = buffer.cursor;
|
|
232
|
-
const line = buffer.lines[row];
|
|
233
|
-
const charBefore = col > 0 ? cpSlice(line, col - 1, col) : '';
|
|
234
|
-
if (key.ctrl || key.meta || charBefore === '\\' || key.paste) {
|
|
235
|
-
// Ctrl+Enter or escaped newline
|
|
236
|
-
if (charBefore === '\\') {
|
|
237
|
-
buffer.backspace();
|
|
238
|
-
}
|
|
239
|
-
buffer.newline();
|
|
240
|
-
}
|
|
241
|
-
else {
|
|
242
|
-
// Enter for submit
|
|
243
|
-
if (query.trim()) {
|
|
244
|
-
handleSubmitAndClear(query);
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
return;
|
|
248
|
-
}
|
|
249
|
-
// Standard arrow navigation within the buffer
|
|
250
|
-
if (key.name === 'up' && !completion.showSuggestions) {
|
|
251
|
-
if (shellModeActive) {
|
|
252
|
-
const prevCommand = shellHistory.getPreviousCommand();
|
|
253
|
-
if (prevCommand !== null) {
|
|
254
|
-
buffer.setText(prevCommand);
|
|
255
|
-
}
|
|
256
|
-
return;
|
|
257
|
-
}
|
|
258
|
-
if ((buffer.allVisualLines.length === 1 || // Always navigate for single line
|
|
259
|
-
(buffer.visualCursor[0] === 0 && buffer.visualScrollRow === 0)) &&
|
|
260
|
-
inputHistory.navigateUp) {
|
|
261
|
-
inputHistory.navigateUp();
|
|
262
|
-
}
|
|
263
|
-
else {
|
|
264
|
-
buffer.move('up');
|
|
265
|
-
}
|
|
272
|
+
// External editor
|
|
273
|
+
const isCtrlX = key.ctrl && (key.name === 'x' || key.sequence === '\x18');
|
|
274
|
+
if (isCtrlX) {
|
|
275
|
+
buffer.openInExternalEditor();
|
|
266
276
|
return;
|
|
267
277
|
}
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
if (nextCommand !== null) {
|
|
272
|
-
buffer.setText(nextCommand);
|
|
273
|
-
}
|
|
274
|
-
return;
|
|
275
|
-
}
|
|
276
|
-
if ((buffer.allVisualLines.length === 1 || // Always navigate for single line
|
|
277
|
-
buffer.visualCursor[0] === buffer.allVisualLines.length - 1) &&
|
|
278
|
-
inputHistory.navigateDown) {
|
|
279
|
-
inputHistory.navigateDown();
|
|
280
|
-
}
|
|
281
|
-
else {
|
|
282
|
-
buffer.move('down');
|
|
283
|
-
}
|
|
278
|
+
// Ctrl+V for clipboard image paste
|
|
279
|
+
if (key.ctrl && key.name === 'v') {
|
|
280
|
+
handleClipboardImage();
|
|
284
281
|
return;
|
|
285
282
|
}
|
|
286
|
-
// Fallback to buffer's default input handling
|
|
283
|
+
// Fallback to the text buffer's default input handling for all other keys
|
|
287
284
|
buffer.handleInput(key);
|
|
288
285
|
}, [
|
|
289
286
|
focus,
|
|
@@ -296,6 +293,7 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
|
296
293
|
handleAutocomplete,
|
|
297
294
|
handleSubmitAndClear,
|
|
298
295
|
shellHistory,
|
|
296
|
+
handleClipboardImage,
|
|
299
297
|
]);
|
|
300
298
|
useKeypress(handleInput, { isActive: focus });
|
|
301
299
|
const linesToRender = buffer.viewportVisualLines;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputPrompt.js","sourceRoot":"","sources":["../../../../src/ui/components/InputPrompt.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InputPrompt.js","sourceRoot":"","sources":["../../../../src/ui/components/InputPrompt.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import { Colors } from '../colors.js';
|
|
|
4
4
|
import { useStreamingContext } from '../contexts/StreamingContext.js';
|
|
5
5
|
import { StreamingState } from '../types.js';
|
|
6
6
|
import { GeminiRespondingSpinner } from './GeminiRespondingSpinner.js';
|
|
7
|
+
import { formatDuration } from '../utils/formatters.js';
|
|
7
8
|
export const LoadingIndicator = ({ currentLoadingPhrase, elapsedTime, rightContent, thought, }) => {
|
|
8
9
|
const streamingState = useStreamingContext();
|
|
9
10
|
if (streamingState === StreamingState.Idle) {
|
|
@@ -14,6 +15,6 @@ export const LoadingIndicator = ({ currentLoadingPhrase, elapsedTime, rightConte
|
|
|
14
15
|
? '⠏'
|
|
15
16
|
: '' }) }), primaryText && _jsx(Text, { color: Colors.AccentPurple, children: primaryText }), _jsx(Text, { color: Colors.Gray, children: streamingState === StreamingState.WaitingForConfirmation
|
|
16
17
|
? ''
|
|
17
|
-
: ` (esc to cancel, ${elapsedTime}s)` }), _jsx(Box, { flexGrow: 1 }), rightContent && _jsx(Box, { children: rightContent })] }) }));
|
|
18
|
+
: ` (esc to cancel, ${elapsedTime < 60 ? `${elapsedTime}s` : formatDuration(elapsedTime * 1000)})` }), _jsx(Box, { flexGrow: 1 }), rightContent && _jsx(Box, { children: rightContent })] }) }));
|
|
18
19
|
};
|
|
19
20
|
//# sourceMappingURL=LoadingIndicator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadingIndicator.js","sourceRoot":"","sources":["../../../../src/ui/components/LoadingIndicator.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"LoadingIndicator.js","sourceRoot":"","sources":["../../../../src/ui/components/LoadingIndicator.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AASxD,MAAM,CAAC,MAAM,gBAAgB,GAAoC,CAAC,EAChE,oBAAoB,EACpB,WAAW,EACX,YAAY,EACZ,OAAO,GACR,EAAE,EAAE;IACH,MAAM,cAAc,GAAG,mBAAmB,EAAE,CAAC;IAE7C,IAAI,cAAc,KAAK,cAAc,CAAC,IAAI,EAAE,CAAC;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,EAAE,OAAO,IAAI,oBAAoB,CAAC;IAE7D,OAAO,CACL,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,YAEvD,MAAC,GAAG,eACF,KAAC,GAAG,IAAC,WAAW,EAAE,CAAC,YACjB,KAAC,uBAAuB,IACtB,oBAAoB,EAClB,cAAc,KAAK,cAAc,CAAC,sBAAsB;4BACtD,CAAC,CAAC,GAAG;4BACL,CAAC,CAAC,EAAE,GAER,GACE,EACL,WAAW,IAAI,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,YAAY,YAAG,WAAW,GAAQ,EACtE,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,YACrB,cAAc,KAAK,cAAc,CAAC,sBAAsB;wBACvD,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC,oBAAoB,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,GAC/F,EACP,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,GAAsB,EACrC,YAAY,IAAI,KAAC,GAAG,cAAE,YAAY,GAAO,IACtC,GACF,CACP,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
4
4
|
* Copyright 2025 Google LLC
|
|
5
5
|
* SPDX-License-Identifier: Apache-2.0
|
|
6
6
|
*/
|
|
7
|
-
import { useState } from 'react';
|
|
7
|
+
import { useCallback, useState } from 'react';
|
|
8
8
|
import { Box, Text, useInput } from 'ink';
|
|
9
9
|
import { Colors } from '../colors.js';
|
|
10
10
|
import { themeManager, DEFAULT_THEME } from '../themes/theme-manager.js';
|
|
@@ -31,18 +31,19 @@ export function ThemeDialog({ onSelect, onHighlight, settings, availableTerminal
|
|
|
31
31
|
const scopeItems = [
|
|
32
32
|
{ label: 'User Settings', value: SettingScope.User },
|
|
33
33
|
{ label: 'Workspace Settings', value: SettingScope.Workspace },
|
|
34
|
+
{ label: 'System Settings', value: SettingScope.System },
|
|
34
35
|
];
|
|
35
|
-
const handleThemeSelect = (themeName) => {
|
|
36
|
+
const handleThemeSelect = useCallback((themeName) => {
|
|
36
37
|
onSelect(themeName, selectedScope);
|
|
37
|
-
};
|
|
38
|
-
const handleScopeHighlight = (scope) => {
|
|
38
|
+
}, [onSelect, selectedScope]);
|
|
39
|
+
const handleScopeHighlight = useCallback((scope) => {
|
|
39
40
|
setSelectedScope(scope);
|
|
40
41
|
setSelectInputKey(Date.now());
|
|
41
|
-
};
|
|
42
|
-
const handleScopeSelect = (scope) => {
|
|
42
|
+
}, []);
|
|
43
|
+
const handleScopeSelect = useCallback((scope) => {
|
|
43
44
|
handleScopeHighlight(scope);
|
|
44
45
|
setFocusedSection('theme'); // Reset focus to theme section
|
|
45
|
-
};
|
|
46
|
+
}, [handleScopeHighlight]);
|
|
46
47
|
const [focusedSection, setFocusedSection] = useState('theme');
|
|
47
48
|
useInput((input, key) => {
|
|
48
49
|
if (key.tab) {
|
|
@@ -52,15 +53,15 @@ export function ThemeDialog({ onSelect, onHighlight, settings, availableTerminal
|
|
|
52
53
|
onSelect(undefined, selectedScope);
|
|
53
54
|
}
|
|
54
55
|
});
|
|
56
|
+
const otherScopes = Object.values(SettingScope).filter((scope) => scope !== selectedScope);
|
|
57
|
+
const modifiedInOtherScopes = otherScopes.filter((scope) => settings.forScope(scope).settings.theme !== undefined);
|
|
55
58
|
let otherScopeModifiedMessage = '';
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
: SettingScope.User;
|
|
59
|
-
if (settings.forScope(otherScope).settings.theme !== undefined) {
|
|
59
|
+
if (modifiedInOtherScopes.length > 0) {
|
|
60
|
+
const modifiedScopesStr = modifiedInOtherScopes.join(', ');
|
|
60
61
|
otherScopeModifiedMessage =
|
|
61
62
|
settings.forScope(selectedScope).settings.theme !== undefined
|
|
62
|
-
? `(Also modified in ${
|
|
63
|
-
: `(Modified in ${
|
|
63
|
+
? `(Also modified in ${modifiedScopesStr})`
|
|
64
|
+
: `(Modified in ${modifiedScopesStr})`;
|
|
64
65
|
}
|
|
65
66
|
// Constants for calculating preview pane layout.
|
|
66
67
|
// These values are based on the JSX structure below.
|
|
@@ -73,7 +74,7 @@ export function ThemeDialog({ onSelect, onHighlight, settings, availableTerminal
|
|
|
73
74
|
const colorizeCodeWidth = Math.max(Math.floor((terminalWidth - TOTAL_HORIZONTAL_PADDING) *
|
|
74
75
|
PREVIEW_PANE_WIDTH_PERCENTAGE *
|
|
75
76
|
PREVIEW_PANE_WIDTH_SAFETY_MARGIN), 1);
|
|
76
|
-
const
|
|
77
|
+
const DIALOG_PADDING = 2;
|
|
77
78
|
const selectThemeHeight = themeItems.length + 1;
|
|
78
79
|
const SCOPE_SELECTION_HEIGHT = 4; // Height for the scope selection section + margin.
|
|
79
80
|
const SPACE_BETWEEN_THEME_SELECTION_AND_APPLY_TO = 1;
|
|
@@ -81,7 +82,7 @@ export function ThemeDialog({ onSelect, onHighlight, settings, availableTerminal
|
|
|
81
82
|
availableTerminalHeight = availableTerminalHeight ?? Number.MAX_SAFE_INTEGER;
|
|
82
83
|
availableTerminalHeight -= 2; // Top and bottom borders.
|
|
83
84
|
availableTerminalHeight -= TAB_TO_SELECT_HEIGHT;
|
|
84
|
-
let totalLeftHandSideHeight =
|
|
85
|
+
let totalLeftHandSideHeight = DIALOG_PADDING +
|
|
85
86
|
selectThemeHeight +
|
|
86
87
|
SCOPE_SELECTION_HEIGHT +
|
|
87
88
|
SPACE_BETWEEN_THEME_SELECTION_AND_APPLY_TO;
|
|
@@ -90,7 +91,7 @@ export function ThemeDialog({ onSelect, onHighlight, settings, availableTerminal
|
|
|
90
91
|
// Remove content from the LHS that can be omitted if it exceeds the available height.
|
|
91
92
|
if (totalLeftHandSideHeight > availableTerminalHeight) {
|
|
92
93
|
includePadding = false;
|
|
93
|
-
totalLeftHandSideHeight -=
|
|
94
|
+
totalLeftHandSideHeight -= DIALOG_PADDING;
|
|
94
95
|
}
|
|
95
96
|
if (totalLeftHandSideHeight > availableTerminalHeight) {
|
|
96
97
|
// First, try hiding the scope selection
|
|
@@ -110,7 +111,7 @@ export function ThemeDialog({ onSelect, onHighlight, settings, availableTerminal
|
|
|
110
111
|
// Give slightly more space to the code block as it is 3 lines longer.
|
|
111
112
|
const diffHeight = Math.floor(availableTerminalHeightCodeBlock / 2) - 1;
|
|
112
113
|
const codeBlockHeight = Math.ceil(availableTerminalHeightCodeBlock / 2) + 1;
|
|
113
|
-
return (_jsxs(Box, { borderStyle: "round", borderColor: Colors.Gray, flexDirection: "column", paddingTop: includePadding ? 1 : 0, paddingBottom: includePadding ? 1 : 0, paddingLeft: 1, paddingRight: 1, width: "100%", children: [_jsxs(Box, { flexDirection: "row", children: [_jsxs(Box, { flexDirection: "column", width: "45%", paddingRight: 2, children: [_jsxs(Text, { bold: currenFocusedSection === 'theme', wrap: "truncate", children: [currenFocusedSection === 'theme' ? '> ' : ' ', "Select Theme", ' ', _jsx(Text, { color: Colors.Gray, children: otherScopeModifiedMessage })] }), _jsx(RadioButtonSelect, { items: themeItems, initialIndex: initialThemeIndex, onSelect: handleThemeSelect, onHighlight: onHighlight, isFocused: currenFocusedSection === 'theme' }, selectInputKey), showScopeSelection && (_jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsxs(Text, { bold: currenFocusedSection === 'scope', wrap: "truncate", children: [currenFocusedSection === 'scope' ? '> ' : ' ', "Apply To"] }), _jsx(RadioButtonSelect, { items: scopeItems, initialIndex: 0, onSelect: handleScopeSelect, onHighlight: handleScopeHighlight, isFocused: currenFocusedSection === 'scope' })] }))] }), _jsxs(Box, { flexDirection: "column", width: "55%", paddingLeft: 2, children: [_jsx(Text, { bold: true, children: "Preview" }), _jsxs(Box, { borderStyle: "single", borderColor: Colors.Gray, paddingTop: includePadding ? 1 : 0, paddingBottom: includePadding ? 1 : 0, paddingLeft: 1, paddingRight: 1, flexDirection: "column", children: [colorizeCode(`# function
|
|
114
|
+
return (_jsxs(Box, { borderStyle: "round", borderColor: Colors.Gray, flexDirection: "column", paddingTop: includePadding ? 1 : 0, paddingBottom: includePadding ? 1 : 0, paddingLeft: 1, paddingRight: 1, width: "100%", children: [_jsxs(Box, { flexDirection: "row", children: [_jsxs(Box, { flexDirection: "column", width: "45%", paddingRight: 2, children: [_jsxs(Text, { bold: currenFocusedSection === 'theme', wrap: "truncate", children: [currenFocusedSection === 'theme' ? '> ' : ' ', "Select Theme", ' ', _jsx(Text, { color: Colors.Gray, children: otherScopeModifiedMessage })] }), _jsx(RadioButtonSelect, { items: themeItems, initialIndex: initialThemeIndex, onSelect: handleThemeSelect, onHighlight: onHighlight, isFocused: currenFocusedSection === 'theme', maxItemsToShow: 8 }, selectInputKey), showScopeSelection && (_jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsxs(Text, { bold: currenFocusedSection === 'scope', wrap: "truncate", children: [currenFocusedSection === 'scope' ? '> ' : ' ', "Apply To"] }), _jsx(RadioButtonSelect, { items: scopeItems, initialIndex: 0, onSelect: handleScopeSelect, onHighlight: handleScopeHighlight, isFocused: currenFocusedSection === 'scope', showScrollArrows: false })] }))] }), _jsxs(Box, { flexDirection: "column", width: "55%", paddingLeft: 2, children: [_jsx(Text, { bold: true, children: "Preview" }), _jsxs(Box, { borderStyle: "single", borderColor: Colors.Gray, paddingTop: includePadding ? 1 : 0, paddingBottom: includePadding ? 1 : 0, paddingLeft: 1, paddingRight: 1, flexDirection: "column", children: [colorizeCode(`# function
|
|
114
115
|
-def fibonacci(n):
|
|
115
116
|
- a, b = 0, 1
|
|
116
117
|
- for _ in range(n):
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeDialog.js","sourceRoot":"","sources":["../../../../src/ui/components/ThemeDialog.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ThemeDialog.js","sourceRoot":"","sources":["../../../../src/ui/components/ThemeDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { Box, Text } from 'ink';
|
|
|
3
3
|
import Spinner from 'ink-spinner';
|
|
4
4
|
import { Colors } from '../../colors.js';
|
|
5
5
|
/*
|
|
6
|
-
* Compression messages appear when the /compress command is
|
|
6
|
+
* Compression messages appear when the /compress command is run, and show a loading spinner
|
|
7
7
|
* while compression is in progress, followed up by some compression stats.
|
|
8
8
|
*/
|
|
9
9
|
export const CompressionMessage = ({ compression, }) => {
|
|
@@ -208,7 +208,7 @@ function visitBoxRow(element) {
|
|
|
208
208
|
row.noWrapSegments.push(segment);
|
|
209
209
|
}
|
|
210
210
|
else {
|
|
211
|
-
// put in
|
|
211
|
+
// put in the wrapped segment as the row is already stuck in wrapped mode.
|
|
212
212
|
row.segments.push(segment);
|
|
213
213
|
debugReportError('Text elements without wrapping cannot appear after elements with wrapping in the same row.', element);
|
|
214
214
|
}
|