diff --git a/frontend/src/pages/Login.tsx b/frontend/src/pages/Login.tsx
index 9db888a..d1eb4d6 100644
--- a/frontend/src/pages/Login.tsx
+++ b/frontend/src/pages/Login.tsx
@@ -7,17 +7,22 @@ export const Login: React.FC = () => {
const [sessionId, setSessionId] = useState('');
const [error, setError] = useState('');
const [isLoading, setIsLoading] = useState(false);
- const [showInstructions, setShowInstructions] = useState(true);
+ const [step, setStep] = useState<1 | 2>(1);
const navigate = useNavigate();
- const handleLogin = async () => {
+ const openTikTokLogin = () => {
+ // Open TikTok login in new tab
+ window.open('https://www.tiktok.com/login', '_blank');
+ setStep(2);
+ };
+
+ const handleConnect = async () => {
if (!sessionId.trim()) return;
setError('');
setIsLoading(true);
try {
- // Send sessionid as credentials
const res = await axios.post(`${API_BASE_URL}/auth/credentials`, {
credentials: {
http: {
@@ -29,10 +34,10 @@ export const Login: React.FC = () => {
if (res.data.status === 'success') {
navigate('/');
} else {
- setError(res.data.message || 'Login failed.');
+ setError(res.data.message || 'Connection failed.');
}
} catch (err: any) {
- setError(err.response?.data?.detail || 'Invalid session. Please try again.');
+ setError(err.response?.data?.detail || 'Invalid session ID. Please try again.');
} finally {
setIsLoading(false);
}
@@ -41,7 +46,7 @@ export const Login: React.FC = () => {
return (
{/* Header */}
-
+
@@ -54,7 +59,7 @@ export const Login: React.FC = () => {
Ad-free TikTok viewing
- {/* Scrollable Content */}
+ {/* Content */}
{error && (
@@ -63,92 +68,84 @@ export const Login: React.FC = () => {
)}
- {/* Instructions Toggle */}
-