Created AuthProvider React component to centralize auth initialization logic and eliminate race conditions. Features: - Single source of truth for auth initialization - Checks for tokens on mount (TokenStorage.hasTokens()) - Calls refreshUser() if tokens exist - Shows loading screen while auth initializing - Always sets ready state (prevents stuck loading) - Comprehensive error handling and logging - Optional custom loading component prop Benefits: - Eliminates race condition: router no longer renders before auth ready - Centralizes auth logic (was scattered in App.tsx, interceptors) - Reusable across different app entry points - Clean separation of concerns Usage: Impact: Reduces auth-related race conditions, improves code maintainability. Fixes: P3.1 from audit AUDIT_TEMP_29_01_2026.md
7 lines
165 B
TypeScript
7 lines
165 B
TypeScript
/**
|
|
* Providers barrel export
|
|
*
|
|
* Centralized exports for all React context providers
|
|
*/
|
|
|
|
export { AuthProvider, useAuthInitialization } from './AuthProvider';
|