37 lines
992 B
TypeScript
37 lines
992 B
TypeScript
import { LeagueRole } from '@/lib/types/LeagueRole';
|
|
|
|
export interface LeagueRoleDisplayData {
|
|
text: string;
|
|
badgeClasses: string;
|
|
}
|
|
|
|
export class LeagueRoleDisplay {
|
|
/**
|
|
* Centralized display configuration for league membership roles.
|
|
*/
|
|
static getLeagueRoleDisplay(role: LeagueRole): LeagueRoleDisplayData {
|
|
switch (role) {
|
|
case 'owner':
|
|
return {
|
|
text: 'Owner',
|
|
badgeClasses: 'bg-yellow-500/10 text-yellow-500 border-yellow-500/30',
|
|
};
|
|
case 'admin':
|
|
return {
|
|
text: 'Admin',
|
|
badgeClasses: 'bg-purple-500/10 text-purple-400 border-purple-500/30',
|
|
};
|
|
case 'steward':
|
|
return {
|
|
text: 'Steward',
|
|
badgeClasses: 'bg-blue-500/10 text-blue-400 border-blue-500/30',
|
|
};
|
|
case 'member':
|
|
default:
|
|
return {
|
|
text: 'Member',
|
|
badgeClasses: 'bg-primary-blue/10 text-primary-blue border-primary-blue/30',
|
|
};
|
|
}
|
|
}
|
|
} |