perf: remove unnecessary useMemo wrapping simple boolean expressions

Replace useMemo calls that wrap trivial boolean checks with plain
const expressions. The memo overhead exceeds the cost of these
simple permission checks and mode comparisons.

Fixes #1052
This commit is contained in:
Matt Van Horn 2026-04-08 01:36:24 -07:00
parent 553843ab06
commit 90ed853a26
5 changed files with 18 additions and 49 deletions

View file

@ -89,21 +89,9 @@ export function ModelConfigManager({ searchSpaceId }: ModelConfigManagerProps) {
// Permissions
const { data: access } = useAtomValue(myAccessAtom);
const canCreate = useMemo(() => {
if (!access) return false;
if (access.is_owner) return true;
return access.permissions?.includes("llm_configs:create") ?? false;
}, [access]);
const canUpdate = useMemo(() => {
if (!access) return false;
if (access.is_owner) return true;
return access.permissions?.includes("llm_configs:update") ?? false;
}, [access]);
const canDelete = useMemo(() => {
if (!access) return false;
if (access.is_owner) return true;
return access.permissions?.includes("llm_configs:delete") ?? false;
}, [access]);
const canCreate = !!access && (access.is_owner || (access.permissions?.includes("llm_configs:create") ?? false));
const canUpdate = !!access && (access.is_owner || (access.permissions?.includes("llm_configs:update") ?? false));
const canDelete = !!access && (access.is_owner || (access.permissions?.includes("llm_configs:delete") ?? false));
const isReadOnly = !canCreate && !canUpdate && !canDelete;
// Local state