Spaces:
Running on CPU Upgrade
Running on CPU Upgrade
Fix dev mode: skip OAuth login when auth is disabled (dev user)
Browse files
frontend/src/components/WelcomeScreen/WelcomeScreen.tsx
CHANGED
|
@@ -10,23 +10,26 @@ import { useSessionStore } from '@/store/sessionStore';
|
|
| 10 |
import { useAgentStore } from '@/store/agentStore';
|
| 11 |
import { apiFetch } from '@/utils/api';
|
| 12 |
import { getStoredToken, triggerLogin } from '@/hooks/useAuth';
|
|
|
|
| 13 |
|
| 14 |
/** HF brand orange */
|
| 15 |
const HF_ORANGE = '#FF9D00';
|
| 16 |
|
| 17 |
export default function WelcomeScreen() {
|
| 18 |
const { createSession } = useSessionStore();
|
| 19 |
-
const { setPlan, setPanelContent } = useAgentStore();
|
| 20 |
const [isCreating, setIsCreating] = useState(false);
|
| 21 |
const [error, setError] = useState<string | null>(null);
|
| 22 |
|
| 23 |
const handleStart = useCallback(async () => {
|
| 24 |
if (isCreating) return;
|
| 25 |
|
| 26 |
-
//
|
| 27 |
-
|
|
|
|
|
|
|
|
|
|
| 28 |
await triggerLogin();
|
| 29 |
-
// If we're still here (popup opened, or redirect happening), just return
|
| 30 |
return;
|
| 31 |
}
|
| 32 |
|
|
@@ -54,11 +57,11 @@ export default function WelcomeScreen() {
|
|
| 54 |
setPlan([]);
|
| 55 |
setPanelContent(null);
|
| 56 |
} catch {
|
| 57 |
-
// triggerLogin
|
| 58 |
} finally {
|
| 59 |
setIsCreating(false);
|
| 60 |
}
|
| 61 |
-
}, [isCreating, createSession, setPlan, setPanelContent]);
|
| 62 |
|
| 63 |
return (
|
| 64 |
<Box
|
|
|
|
| 10 |
import { useAgentStore } from '@/store/agentStore';
|
| 11 |
import { apiFetch } from '@/utils/api';
|
| 12 |
import { getStoredToken, triggerLogin } from '@/hooks/useAuth';
|
| 13 |
+
import { logger } from '@/utils/logger';
|
| 14 |
|
| 15 |
/** HF brand orange */
|
| 16 |
const HF_ORANGE = '#FF9D00';
|
| 17 |
|
| 18 |
export default function WelcomeScreen() {
|
| 19 |
const { createSession } = useSessionStore();
|
| 20 |
+
const { setPlan, setPanelContent, user } = useAgentStore();
|
| 21 |
const [isCreating, setIsCreating] = useState(false);
|
| 22 |
const [error, setError] = useState<string | null>(null);
|
| 23 |
|
| 24 |
const handleStart = useCallback(async () => {
|
| 25 |
if (isCreating) return;
|
| 26 |
|
| 27 |
+
// In production (OAuth enabled): check for stored token, trigger login if missing
|
| 28 |
+
// In dev mode (user already set by useAuth): skip login, go straight to session
|
| 29 |
+
const isDevUser = user?.username === 'dev';
|
| 30 |
+
if (!isDevUser && !getStoredToken()) {
|
| 31 |
+
logger.log('No token — triggering OAuth login');
|
| 32 |
await triggerLogin();
|
|
|
|
| 33 |
return;
|
| 34 |
}
|
| 35 |
|
|
|
|
| 57 |
setPlan([]);
|
| 58 |
setPanelContent(null);
|
| 59 |
} catch {
|
| 60 |
+
// triggerLogin may redirect — don't show error
|
| 61 |
} finally {
|
| 62 |
setIsCreating(false);
|
| 63 |
}
|
| 64 |
+
}, [isCreating, createSession, setPlan, setPanelContent, user]);
|
| 65 |
|
| 66 |
return (
|
| 67 |
<Box
|