fix: pendingSlashCommandHistoryItems corrected to properly memoize updates (#6282)
Co-authored-by: Bryan Morgan <bryanmorgan@google.com>
This commit is contained in:
parent
41c5195ed3
commit
a92299069d
|
@ -8,7 +8,6 @@ import { useCallback, useMemo, useEffect, useState } from 'react';
|
||||||
import { type PartListUnion } from '@google/genai';
|
import { type PartListUnion } from '@google/genai';
|
||||||
import process from 'node:process';
|
import process from 'node:process';
|
||||||
import { UseHistoryManagerReturn } from './useHistoryManager.js';
|
import { UseHistoryManagerReturn } from './useHistoryManager.js';
|
||||||
import { useStateAndRef } from './useStateAndRef.js';
|
|
||||||
import {
|
import {
|
||||||
Config,
|
Config,
|
||||||
GitService,
|
GitService,
|
||||||
|
@ -93,16 +92,16 @@ export const useSlashCommandProcessor = (
|
||||||
return l;
|
return l;
|
||||||
}, [config]);
|
}, [config]);
|
||||||
|
|
||||||
const [pendingCompressionItemRef, setPendingCompressionItem] =
|
const [pendingCompressionItem, setPendingCompressionItem] =
|
||||||
useStateAndRef<HistoryItemWithoutId | null>(null);
|
useState<HistoryItemWithoutId | null>(null);
|
||||||
|
|
||||||
const pendingHistoryItems = useMemo(() => {
|
const pendingHistoryItems = useMemo(() => {
|
||||||
const items: HistoryItemWithoutId[] = [];
|
const items: HistoryItemWithoutId[] = [];
|
||||||
if (pendingCompressionItemRef.current != null) {
|
if (pendingCompressionItem != null) {
|
||||||
items.push(pendingCompressionItemRef.current);
|
items.push(pendingCompressionItem);
|
||||||
}
|
}
|
||||||
return items;
|
return items;
|
||||||
}, [pendingCompressionItemRef]);
|
}, [pendingCompressionItem]);
|
||||||
|
|
||||||
const addMessage = useCallback(
|
const addMessage = useCallback(
|
||||||
(message: Message) => {
|
(message: Message) => {
|
||||||
|
@ -173,7 +172,7 @@ export const useSlashCommandProcessor = (
|
||||||
},
|
},
|
||||||
loadHistory,
|
loadHistory,
|
||||||
setDebugMessage: onDebugMessage,
|
setDebugMessage: onDebugMessage,
|
||||||
pendingItem: pendingCompressionItemRef.current,
|
pendingItem: pendingCompressionItem,
|
||||||
setPendingItem: setPendingCompressionItem,
|
setPendingItem: setPendingCompressionItem,
|
||||||
toggleCorgiMode,
|
toggleCorgiMode,
|
||||||
toggleVimEnabled,
|
toggleVimEnabled,
|
||||||
|
@ -196,7 +195,7 @@ export const useSlashCommandProcessor = (
|
||||||
refreshStatic,
|
refreshStatic,
|
||||||
session.stats,
|
session.stats,
|
||||||
onDebugMessage,
|
onDebugMessage,
|
||||||
pendingCompressionItemRef,
|
pendingCompressionItem,
|
||||||
setPendingCompressionItem,
|
setPendingCompressionItem,
|
||||||
toggleCorgiMode,
|
toggleCorgiMode,
|
||||||
toggleVimEnabled,
|
toggleVimEnabled,
|
||||||
|
|
Loading…
Reference in New Issue