First step refactoring InputPrompt (#335)

This commit is contained in:
Jacob Richman
2025-05-13 16:23:14 -07:00
committed by GitHub
parent c4fb1ad04b
commit e665d4f198
2 changed files with 26 additions and 25 deletions

View File

@@ -9,7 +9,6 @@ import { Box, Static, Text, useStdout } from 'ink';
import { StreamingState, type HistoryItem } from './types.js';
import { useGeminiStream } from './hooks/useGeminiStream.js';
import { useLoadingIndicator } from './hooks/useLoadingIndicator.js';
import { useInputHistory } from './hooks/useInputHistory.js';
import { useThemeCommand } from './hooks/useThemeCommand.js';
import { Header } from './components/Header.js';
import { LoadingIndicator } from './components/LoadingIndicator.js';
@@ -121,18 +120,6 @@ export const App = ({ config, settings, cliVersion }: AppProps) => {
slashCommands,
);
const inputHistory = useInputHistory({
userMessages,
onSubmit: (value) => {
// Adapt onSubmit to use the lifted setQuery
handleFinalSubmit(value);
onChangeAndMoveCursor('');
},
isActive: isInputActive && !completion.showSuggestions,
currentQuery: query,
onChangeAndMoveCursor,
});
// --- Render Logic ---
// Get terminal width
@@ -236,12 +223,11 @@ export const App = ({ config, settings, cliVersion }: AppProps) => {
onChange={setQuery}
onChangeAndMoveCursor={onChangeAndMoveCursor}
editorState={editorState}
onSubmit={inputHistory.handleSubmit}
onSubmit={handleFinalSubmit} // Pass handleFinalSubmit directly
showSuggestions={completion.showSuggestions}
suggestions={completion.suggestions}
activeSuggestionIndex={completion.activeSuggestionIndex}
navigateHistoryUp={inputHistory.navigateUp}
navigateHistoryDown={inputHistory.navigateDown}
userMessages={userMessages} // Pass userMessages
navigateSuggestionUp={completion.navigateUp}
navigateSuggestionDown={completion.navigateDown}
resetCompletion={completion.resetCompletionState}