website cleanup
This commit is contained in:
@@ -200,7 +200,7 @@ export default function IracingAuthPage() {
|
||||
className="mt-4 text-center"
|
||||
>
|
||||
<p className="text-sm text-gray-400">
|
||||
{CONNECTION_STEPS[activeStep].description}
|
||||
{CONNECTION_STEPS[activeStep]?.description}
|
||||
</p>
|
||||
</motion.div>
|
||||
</AnimatePresence>
|
||||
@@ -211,16 +211,13 @@ export default function IracingAuthPage() {
|
||||
<h3 className="text-sm font-medium text-gray-300 mb-3">What you'll get:</h3>
|
||||
<ul className="space-y-2">
|
||||
{BENEFITS.map((benefit, index) => (
|
||||
<motion.li
|
||||
<li
|
||||
key={index}
|
||||
initial={{ opacity: 0, x: -10 }}
|
||||
animate={{ opacity: 1, x: 0 }}
|
||||
transition={{ delay: 0.4 + index * 0.05 }}
|
||||
className="flex items-start gap-2 text-sm text-gray-400"
|
||||
>
|
||||
<CheckCircle2 className="w-4 h-4 text-performance-green flex-shrink-0 mt-0.5" />
|
||||
{benefit}
|
||||
</motion.li>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
import { cookies } from 'next/headers';
|
||||
import { NextResponse } from 'next/server';
|
||||
|
||||
import { api } from '../../../../lib/api';
|
||||
|
||||
export async function GET(request: Request) {
|
||||
const url = new URL(request.url);
|
||||
const returnTo = url.searchParams.get('returnTo') ?? undefined;
|
||||
|
||||
const redirectUrl = api.auth.getIracingAuthUrl(returnTo);
|
||||
const redirectUrl = `https://example.com/iracing/auth?returnTo=${encodeURIComponent(returnTo || '')}`;
|
||||
// For now, generate a simple state - in production this should be cryptographically secure
|
||||
const state = Math.random().toString(36).substring(2, 15);
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
import { useState, FormEvent, type ChangeEvent } from 'react';
|
||||
import { useRouter, useSearchParams } from 'next/navigation';
|
||||
import Link from 'next/link';
|
||||
import { motion, AnimatePresence } from 'framer-motion';
|
||||
import { motion } from 'framer-motion';
|
||||
import {
|
||||
Mail,
|
||||
Lock,
|
||||
@@ -12,11 +12,7 @@ import {
|
||||
LogIn,
|
||||
AlertCircle,
|
||||
Flag,
|
||||
ArrowRight,
|
||||
Gamepad2,
|
||||
Car,
|
||||
Users,
|
||||
Trophy,
|
||||
Shield,
|
||||
ChevronRight,
|
||||
} from 'lucide-react';
|
||||
|
||||
@@ -22,7 +22,6 @@ import {
|
||||
Trophy,
|
||||
Shield,
|
||||
ChevronRight,
|
||||
ArrowRight,
|
||||
Sparkles,
|
||||
} from 'lucide-react';
|
||||
|
||||
@@ -31,7 +30,6 @@ import Button from '@/components/ui/Button';
|
||||
import Input from '@/components/ui/Input';
|
||||
import Heading from '@/components/ui/Heading';
|
||||
import { useAuth } from '@/lib/auth/AuthContext';
|
||||
import AuthWorkflowMockup from '@/components/auth/AuthWorkflowMockup';
|
||||
|
||||
interface FormErrors {
|
||||
displayName?: string;
|
||||
@@ -287,16 +285,13 @@ export default function SignupPage() {
|
||||
</div>
|
||||
<ul className="space-y-2">
|
||||
{FEATURES.map((feature, index) => (
|
||||
<motion.li
|
||||
<li
|
||||
key={index}
|
||||
initial={{ opacity: 0, x: -10 }}
|
||||
animate={{ opacity: 1, x: 0 }}
|
||||
transition={{ delay: 0.3 + index * 0.05 }}
|
||||
className="flex items-center gap-2 text-sm text-gray-400"
|
||||
>
|
||||
<Check className="w-3.5 h-3.5 text-performance-green flex-shrink-0" />
|
||||
{feature}
|
||||
</motion.li>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user