website refactor

This commit is contained in:
2026-01-18 16:43:32 +01:00
parent 13567d51af
commit b263de3a35
418 changed files with 1986 additions and 2161 deletions

View File

@@ -1,11 +1,10 @@
'use client';
import React from 'react';
import { Card } from '@/ui/Card';
import { Stack } from '@/ui/Stack';
import { Heading } from '@/ui/Heading';
import { Text } from '@/ui/Text';
import { Button } from '@/ui/Button';
import { Card } from '@/ui/Card';
import { Heading } from '@/ui/Heading';
import { Stack } from '@/ui/primitives/Stack';
import { Text } from '@/ui/Text';
import { Globe, Link as LinkIcon } from 'lucide-react';
interface ConnectedAccountsPanelProps {

View File

@@ -1,10 +1,10 @@
'use client';
import React from 'react';
import { Grid } from '@/ui/Grid';
import { LiveryCard } from '@/components/drivers/LiveryCard';
import { ProfileSection } from './ProfileSection';
import { ProfileLiveryViewData } from '@/lib/view-data/ProfileLiveriesViewData';
import { Grid } from '@/ui/primitives/Grid';
import React from 'react';
import { ProfileSection } from './ProfileSection';
interface LiveryGalleryProps {
liveries: ProfileLiveryViewData[];

View File

@@ -1,10 +1,9 @@
'use client';
import React from 'react';
import { Stack } from '@/ui/Stack';
import { Card } from '@/ui/Card';
import { Text } from '@/ui/Text';
import { LeagueListItem } from '@/components/leagues/LeagueListItem';
import { Card } from '@/ui/Card';
import { Stack } from '@/ui/primitives/Stack';
import { Text } from '@/ui/Text';
import { ProfileSection } from './ProfileSection';
interface League {

View File

@@ -1,11 +1,10 @@
'use client';
import React from 'react';
import { Card } from '@/ui/Card';
import { Stack } from '@/ui/Stack';
import { Heading } from '@/ui/Heading';
import { Text } from '@/ui/Text';
import { Stack } from '@/ui/primitives/Stack';
import { Select } from '@/ui/Select';
import { Text } from '@/ui/Text';
import { Toggle } from '@/ui/Toggle';
interface PreferencesPanelProps {

View File

@@ -1,13 +1,12 @@
'use client';
import React from 'react';
import { Card } from '@/ui/Card';
import { Stack } from '@/ui/Stack';
import { Heading } from '@/ui/Heading';
import { Text } from '@/ui/Text';
import { Input } from '@/ui/Input';
import { TextArea } from '@/ui/TextArea';
import { CountryFlagDisplay } from '@/lib/display-objects/CountryFlagDisplay';
import { Card } from '@/ui/Card';
import { Heading } from '@/ui/Heading';
import { Input } from '@/ui/Input';
import { Stack } from '@/ui/primitives/Stack';
import { Text } from '@/ui/Text';
import { TextArea } from '@/ui/TextArea';
interface ProfileDetailsPanelProps {
driver: {

View File

@@ -1,13 +1,12 @@
'use client';
import React from 'react';
import { mediaConfig } from '@/lib/config/mediaConfig';
import { CountryFlagDisplay } from '@/lib/display-objects/CountryFlagDisplay';
import { Stack } from '@/ui/Stack';
import { Button } from '@/ui/Button';
import { Heading } from '@/ui/Heading';
import { Image } from '@/ui/Image';
import { Surface } from '@/ui/Surface';
import { Stack } from '@/ui/primitives/Stack';
import { Surface } from '@/ui/primitives/Surface';
import { Text } from '@/ui/Text';
import { Calendar, Globe, Star, Trophy, UserPlus } from 'lucide-react';

View File

@@ -1,7 +1,6 @@
'use client';
import React from 'react';
import { Stack } from '@/ui/Stack';
import { Stack } from '@/ui/primitives/Stack';
import { Text } from '@/ui/Text';
export type ProfileTab = 'overview' | 'history' | 'stats' | 'leagues' | 'liveries' | 'settings';

View File

@@ -1,9 +1,9 @@
'use client';
import React from 'react';
import { Stack } from '@/ui/Stack';
import { Heading } from '@/ui/Heading';
import { Stack } from '@/ui/primitives/Stack';
import { Text } from '@/ui/Text';
import React from 'react';
interface ProfileSectionProps {
title: string;

View File

@@ -1,15 +1,15 @@
'use client';
import React, { useState } from 'react';
import { Card } from '@/ui/Card';
import { Button } from '@/ui/Button';
import { Input } from '@/ui/Input';
import { Heading } from '@/ui/Heading';
import { Stack } from '@/ui/Stack';
import { Select } from '@/ui/Select';
import { Toggle } from '@/ui/Toggle';
import { TextArea } from '@/ui/TextArea';
import { Card } from '@/ui/Card';
import { Checkbox } from '@/ui/Checkbox';
import { Heading } from '@/ui/Heading';
import { Input } from '@/ui/Input';
import { Stack } from '@/ui/primitives/Stack';
import { Select } from '@/ui/Select';
import { TextArea } from '@/ui/TextArea';
import { Toggle } from '@/ui/Toggle';
import React, { useState } from 'react';
import { ProfileSection } from './ProfileSection';
interface ProfileSettingsPanelProps {

View File

@@ -1,11 +1,10 @@
'use client';
import React from 'react';
import { Table, TableHead, TableBody, TableRow, TableHeader, TableCell } from '@/ui/Table';
import { Text } from '@/ui/Text';
import { Badge } from '@/ui/Badge';
import { Stack } from '@/ui/Stack';
import { Trophy, Calendar } from 'lucide-react';
import { Stack } from '@/ui/primitives/Stack';
import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from '@/ui/Table';
import { Text } from '@/ui/Text';
import { Calendar, Trophy } from 'lucide-react';
interface SessionResult {
id: string;

View File

@@ -1,11 +1,10 @@
'use client';
import React from 'react';
import { Card , Card as Surface } from '@/ui/Card';
import { Button } from '@/ui/Button';
import { Stack } from '@/ui/Stack';
import { Text } from '@/ui/Text';
import { DateDisplay } from '@/lib/display-objects/DateDisplay';
import { Button } from '@/ui/Button';
import { Card, Card as Surface } from '@/ui/Card';
import { Stack } from '@/ui/primitives/Stack';
import { Text } from '@/ui/Text';
import { ProfileSection } from './ProfileSection';
interface Request {

View File

@@ -1,28 +1,28 @@
'use client';
import React, { useEffect, useMemo, useState } from 'react';
import { AnimatePresence, motion } from 'framer-motion';
import {
BarChart3,
ChevronDown,
CreditCard,
Handshake,
LogOut,
Megaphone,
Paintbrush,
Settings,
Shield
} from 'lucide-react';
import { useAuth } from '@/components/auth/AuthContext';
import { useEffectiveDriverId } from '@/hooks/useEffectiveDriverId';
import { DriverViewModel as DriverViewModelClass } from '@/lib/view-models/DriverViewModel';
import { useFindDriverById } from '@/hooks/driver/useFindDriverById';
import { useEffectiveDriverId } from '@/hooks/useEffectiveDriverId';
import { routes } from '@/lib/routing/RouteConfig';
import { Box } from '@/ui/Box';
import { Text } from '@/ui/Text';
import { DriverViewModel as DriverViewModelClass } from '@/lib/view-models/DriverViewModel';
import { Icon } from '@/ui/Icon';
import { Link } from '@/ui/Link';
import { Image } from '@/ui/Image';
import { Link } from '@/ui/Link';
import { Box } from '@/ui/primitives/Box';
import { Text } from '@/ui/Text';
import { AnimatePresence, motion } from 'framer-motion';
import {
BarChart3,
ChevronDown,
CreditCard,
Handshake,
LogOut,
Megaphone,
Paintbrush,
Settings,
Shield
} from 'lucide-react';
import { useEffect, useMemo, useState } from 'react';
// Hook to detect demo user mode based on session
function useDemoUserMode(): { isDemo: boolean; demoRole: string | null } {