Add global authentication protection

This commit is contained in:
Francisco Pessano
2025-06-06 21:24:59 -03:00
committed by GitHub
parent b66dd9f9cb
commit 2a0e6c7801
5 changed files with 107 additions and 73 deletions

View File

@@ -2,14 +2,14 @@
import '@/styles/globals.css'
import Layout from '../layouts/Layout.astro';
import { Dashboard } from '../components/Dashboard';
import { ProtectedRoute } from '../components/ProtectedRoute';
import { AuthGuard } from '../components/AuthGuard';
import { Navbar } from '../components/Navbar';
---
<Layout title="Dashboard - InboxNegotiator">
<Navbar client:load />
<ProtectedRoute client:load>
<AuthGuard requireAuth={true} client:load>
<Dashboard client:load />
</ProtectedRoute>
</AuthGuard>
</Layout>

View File

@@ -3,19 +3,22 @@ import '@/styles/globals.css'
import Layout from '../layouts/Layout.astro';
import { AuthForm } from '../components/AuthForm';
import { Navbar } from '../components/Navbar';
import { AuthGuard } from '../components/AuthGuard';
---
<Layout title="Sign In - InboxNegotiator">
<Navbar client:load />
<main class="min-h-screen bg-gray-50 flex items-center justify-center py-12 px-4 sm:px-6 lg:px-8">
<div class="w-full max-w-md">
<div class="text-center mb-8">
<h1 class="text-3xl font-bold text-gray-900 mb-2">Sign In</h1>
<p class="text-gray-600">Access your debt resolution dashboard</p>
<AuthGuard requireAuth={false} client:load>
<main class="min-h-screen bg-gray-50 flex items-center justify-center py-12 px-4 sm:px-6 lg:px-8">
<div class="w-full max-w-md">
<div class="text-center mb-8">
<h1 class="text-3xl font-bold text-gray-900 mb-2">Sign In</h1>
<p class="text-gray-600">Access your debt resolution dashboard</p>
</div>
<AuthForm mode="login" client:load />
</div>
<AuthForm mode="login" client:load />
</div>
</main>
</main>
</AuthGuard>
</Layout>

View File

@@ -3,19 +3,22 @@ import '@/styles/globals.css'
import Layout from '../layouts/Layout.astro';
import { AuthForm } from '../components/AuthForm';
import { Navbar } from '../components/Navbar';
import { AuthGuard } from '../components/AuthGuard';
---
<Layout title="Sign Up - InboxNegotiator">
<Navbar client:load />
<main class="min-h-screen bg-gray-50 flex items-center justify-center py-12 px-4 sm:px-6 lg:px-8">
<div class="w-full max-w-md">
<div class="text-center mb-8">
<h1 class="text-3xl font-bold text-gray-900 mb-2">Create Account</h1>
<p class="text-gray-600">Start resolving your debts with AI assistance</p>
<AuthGuard requireAuth={false} client:load>
<main class="min-h-screen bg-gray-50 flex items-center justify-center py-12 px-4 sm:px-6 lg:px-8">
<div class="w-full max-w-md">
<div class="text-center mb-8">
<h1 class="text-3xl font-bold text-gray-900 mb-2">Create Account</h1>
<p class="text-gray-600">Start resolving your debts with AI assistance</p>
</div>
<AuthForm mode="signup" client:load />
</div>
<AuthForm mode="signup" client:load />
</div>
</main>
</main>
</AuthGuard>
</Layout>