Skip to content

Commit 52cda93

Browse files
perf(web): the project file scripts hook compiles without manual memoization
Co-Authored-By: Claude Opus 5.5 <[email protected]>
1 parent a702563 commit 52cda93

1 file changed

Lines changed: 12 additions & 15 deletions

File tree

‎apps/web/src/hooks/useT3ProjectFileScripts.ts‎

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import {
55
type T3ProjectFileScript,
66
} from "@t3tools/contracts";
77
import { parseT3ProjectFile } from "@t3tools/shared/t3ProjectFile";
8-
import { useMemo } from "react";
98

109
import { useProjectFileQuery } from "~/components/files/projectFilesQueryState";
1110

@@ -24,20 +23,18 @@ export function useT3ProjectFileState(
2423
const query = useProjectFileQuery(environmentId, cwd ?? "", T3_PROJECT_FILE_NAME, cwd !== null);
2524
const contents = query.data && !query.data.truncated ? query.data.contents : null;
2625
const isPending = query.isPending;
27-
return useMemo(() => {
28-
if (contents === null) {
29-
return {
30-
status: isPending ? "loading" : "missing",
31-
file: null,
32-
scripts: NO_SCRIPTS,
33-
} as const;
34-
}
35-
const file = parseT3ProjectFile(contents);
36-
if (file === null) {
37-
return { status: "invalid", file: null, scripts: NO_SCRIPTS } as const;
38-
}
39-
return { status: "valid", file, scripts: file.scripts ?? NO_SCRIPTS } as const;
40-
}, [contents, isPending]);
26+
if (contents === null) {
27+
return {
28+
status: isPending ? "loading" : "missing",
29+
file: null,
30+
scripts: NO_SCRIPTS,
31+
} as const;
32+
}
33+
const file = parseT3ProjectFile(contents);
34+
if (file === null) {
35+
return { status: "invalid", file: null, scripts: NO_SCRIPTS } as const;
36+
}
37+
return { status: "valid", file, scripts: file.scripts ?? NO_SCRIPTS } as const;
4138
}
4239

4340
export function useT3ProjectFileScripts(

0 commit comments

Comments
 (0)