Files
gridpilot.gg/apps/website/ui/InlinePenaltyButton.tsx
2026-01-15 17:12:24 +01:00

40 lines
710 B
TypeScript

import { IconButton } from '@/ui/IconButton';
import { AlertTriangle } from 'lucide-react';
interface DriverDTO {
id: string;
name: string;
}
interface InlinePenaltyButtonProps {
driver: DriverDTO;
onPenaltyClick?: (driver: DriverDTO) => void;
isAdmin: boolean;
}
export function InlinePenaltyButton({
driver,
onPenaltyClick,
isAdmin,
}: InlinePenaltyButtonProps) {
if (!isAdmin) return null;
const handleButtonClick = () => {
if (onPenaltyClick) {
onPenaltyClick(driver);
}
};
return (
<IconButton
variant="danger"
icon={AlertTriangle}
onClick={handleButtonClick}
title={`Issue penalty to ${driver.name}`}
size="sm"
/>
);
}