mirror of
https://github.com/danny-avila/LibreChat.git
synced 2026-02-23 10:54:11 +01:00
refactor: streamline useToolToggle hook by integrating setEphemeralAgent directly into toggle logic and removing redundant setValue function
This commit is contained in:
parent
01625b1b4a
commit
cf24d66101
1 changed files with 6 additions and 12 deletions
|
|
@ -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(
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue