From 2285bba66eced3eee2b97ece250ec6e590f76efc Mon Sep 17 00:00:00 2001 From: Brandon Keiji Date: Thu, 5 Jun 2025 21:33:24 +0000 Subject: refactor: remove unnecessary useRefs (#780) --- packages/cli/src/ui/hooks/useGeminiStream.ts | 22 ++++------------------ 1 file changed, 4 insertions(+), 18 deletions(-) (limited to 'packages/cli/src/ui/hooks/useGeminiStream.ts') diff --git a/packages/cli/src/ui/hooks/useGeminiStream.ts b/packages/cli/src/ui/hooks/useGeminiStream.ts index 0b42c161..3889fbe6 100644 --- a/packages/cli/src/ui/hooks/useGeminiStream.ts +++ b/packages/cli/src/ui/hooks/useGeminiStream.ts @@ -65,6 +65,7 @@ enum StreamProcessingStatus { * API interaction, and tool call lifecycle. */ export const useGeminiStream = ( + geminiClient: GeminiClient | null, addItem: UseHistoryManagerReturn['addItem'], setShowHelp: React.Dispatch>, config: Config, @@ -76,7 +77,6 @@ export const useGeminiStream = ( ) => { const [initError, setInitError] = useState(null); const abortControllerRef = useRef(null); - const geminiClientRef = useRef(null); const [isResponding, setIsResponding] = useState(false); const [pendingHistoryItemRef, setPendingHistoryItem] = useStateAndRef(null); @@ -142,19 +142,6 @@ export const useGeminiStream = ( return StreamingState.Idle; }, [isResponding, toolCalls]); - useEffect(() => { - setInitError(null); - if (!geminiClientRef.current) { - try { - geminiClientRef.current = config.getGeminiClient(); - } catch (error: unknown) { - const errorMsg = `Failed to initialize client: ${getErrorMessage(error) || 'Unknown error'}`; - setInitError(errorMsg); - addItem({ type: MessageType.ERROR, text: errorMsg }, Date.now()); - } - } - }, [config, addItem]); - useInput((_input, key) => { if (streamingState !== StreamingState.Idle && key.escape) { abortControllerRef.current?.abort(); @@ -450,9 +437,7 @@ export const useGeminiStream = ( return; } - const client = geminiClientRef.current; - - if (!client) { + if (!geminiClient) { const errorMsg = 'Gemini client is not available.'; setInitError(errorMsg); addItem({ type: MessageType.ERROR, text: errorMsg }, Date.now()); @@ -463,7 +448,7 @@ export const useGeminiStream = ( setInitError(null); try { - const stream = client.sendMessageStream(queryToSend, abortSignal); + const stream = geminiClient.sendMessageStream(queryToSend, abortSignal); const processingStatus = await processGeminiStreamEvents( stream, userMessageTimestamp, @@ -501,6 +486,7 @@ export const useGeminiStream = ( addItem, setPendingHistoryItem, setInitError, + geminiClient, ], ); -- cgit v1.2.3