refactor: move logger initialization outside of useCliStatus hook

- Moved the logger creation outside the hook to prevent infinite re-renders.
- Updated dependencies in the checkStatus function to remove logger from the dependency array.

These changes enhance performance and maintainability of the useCliStatus hook.
This commit is contained in:
Kacper
2026-01-06 00:58:31 +01:00
parent af394183e6
commit 2a0719e00c

View File

@@ -8,6 +8,9 @@ interface UseCliStatusOptions {
setAuthStatus: (status: any) => void; setAuthStatus: (status: any) => void;
} }
// Create logger once outside the hook to prevent infinite re-renders
const logger = createLogger('CliStatus');
export function useCliStatus({ export function useCliStatus({
cliType, cliType,
statusApi, statusApi,
@@ -15,7 +18,6 @@ export function useCliStatus({
setAuthStatus, setAuthStatus,
}: UseCliStatusOptions) { }: UseCliStatusOptions) {
const [isChecking, setIsChecking] = useState(false); const [isChecking, setIsChecking] = useState(false);
const logger = createLogger('CliStatus');
const checkStatus = useCallback(async () => { const checkStatus = useCallback(async () => {
logger.info(`Starting status check for ${cliType}...`); logger.info(`Starting status check for ${cliType}...`);
@@ -66,7 +68,7 @@ export function useCliStatus({
} finally { } finally {
setIsChecking(false); setIsChecking(false);
} }
}, [cliType, statusApi, setCliStatus, setAuthStatus, logger]); }, [cliType, statusApi, setCliStatus, setAuthStatus]);
return { isChecking, checkStatus }; return { isChecking, checkStatus };
} }