refactor: streamline useToolToggle hook by integrating setEphemeralAgent directly into toggle logic and removing redundant setValue function

This commit is contained in:
Danny Avila 2025-06-22 08:40:30 -04:00
parent 01625b1b4a
commit cf24d66101
No known key found for this signature in database
GPG key ID: BF31EEB2C5CA0956

View file

@ -64,20 +64,10 @@ export function useToolToggle({
/** Track previous value to prevent infinite loops */ /** Track previous value to prevent infinite loops */
const prevIsToolEnabled = useRef(isToolEnabled); const prevIsToolEnabled = useRef(isToolEnabled);
const setValue = useCallback(
(isChecked: boolean) => {
setEphemeralAgent((prev) => ({
...prev,
[toolKey]: isChecked,
}));
},
[setEphemeralAgent, toolKey],
);
const [toggleState, setToggleState] = useLocalStorage<boolean>( const [toggleState, setToggleState] = useLocalStorage<boolean>(
`${localStorageKey}${key}`, `${localStorageKey}${key}`,
isToolEnabled, isToolEnabled,
setValue, undefined,
storageCondition, storageCondition,
); );
@ -89,8 +79,12 @@ export function useToolToggle({
return; return;
} }
setToggleState(isChecked); setToggleState(isChecked);
setEphemeralAgent((prev) => ({
...prev,
[toolKey]: isChecked,
}));
}, },
[setToggleState, setIsDialogOpen, isAuthenticated], [setToggleState, setIsDialogOpen, isAuthenticated, setEphemeralAgent, toolKey],
); );
const debouncedChange = useMemo( const debouncedChange = useMemo(