fix(checkout-returnto): checkout login: return user to checkout after sign in

This commit is contained in:
Deploy
2026-08-26 20:32:20 +02:00
parent 66290a08ae
commit aaa802378b
11 changed files with 138 additions and 43 deletions

View File

@@ -1,12 +1,14 @@
'use client';
import { useState } from 'react';
import { useRouter } from 'next/navigation';
import { Suspense, useState } from 'react';
import { useRouter, useSearchParams } from 'next/navigation';
import Link from 'next/link';
import { useAuth } from '@/contexts/AuthContext';
export default function LoginPage() {
function LoginForm() {
const { login } = useAuth();
const router = useRouter();
const searchParams = useSearchParams();
const returnTo = searchParams.get('returnTo') ?? '/';
const [email, setEmail] = useState('');
const [password, setPassword] = useState('');
const [error, setError] = useState('');
@@ -19,7 +21,7 @@ export default function LoginPage() {
const result = await login(email, password);
setLoading(false);
if (result.ok) {
router.push('/');
router.push(returnTo);
} else {
setError(result.error || 'Credenciales inválidas');
}
@@ -82,3 +84,11 @@ export default function LoginPage() {
</div>
);
}
export default function LoginPage() {
return (
<Suspense>
<LoginForm />
</Suspense>
);
}