website refactor
This commit is contained in:
@@ -1,33 +1,5 @@
|
||||
/**
|
||||
* DriverRankingsViewData - Pure ViewData for DriverRankingsTemplate
|
||||
* Contains only raw serializable data, no methods or computed properties
|
||||
*/
|
||||
|
||||
export interface DriverRankingItem {
|
||||
id: string;
|
||||
name: string;
|
||||
rating: number;
|
||||
skillLevel: string;
|
||||
nationality: string;
|
||||
racesCompleted: number;
|
||||
wins: number;
|
||||
podiums: number;
|
||||
rank: number;
|
||||
avatarUrl: string;
|
||||
winRate: string;
|
||||
medalBg: string;
|
||||
medalColor: string;
|
||||
}
|
||||
|
||||
export interface PodiumDriver {
|
||||
id: string;
|
||||
name: string;
|
||||
rating: number;
|
||||
wins: number;
|
||||
podiums: number;
|
||||
avatarUrl: string;
|
||||
position: 1 | 2 | 3;
|
||||
}
|
||||
import type { DriverRankingItem } from './DriverRankingItem';
|
||||
import type { PodiumDriver } from './PodiumDriver';
|
||||
|
||||
export interface DriverRankingsViewData {
|
||||
drivers: DriverRankingItem[];
|
||||
@@ -36,11 +8,4 @@ export interface DriverRankingsViewData {
|
||||
selectedSkill: 'all' | 'pro' | 'advanced' | 'intermediate' | 'beginner';
|
||||
sortBy: 'rank' | 'rating' | 'wins' | 'podiums' | 'winRate';
|
||||
showFilters: boolean;
|
||||
onSearchChange: (query: string) => void;
|
||||
onSkillChange: (skill: 'all' | 'pro' | 'advanced' | 'intermediate' | 'beginner') => void;
|
||||
onSortChange: (sort: 'rank' | 'rating' | 'wins' | 'podiums' | 'winRate') => void;
|
||||
onToggleFilters: () => void;
|
||||
onDriverClick: (id: string) => void;
|
||||
onBackToLeaderboards: () => void;
|
||||
onClearFilters: () => void;
|
||||
}
|
||||
Reference in New Issue
Block a user