'use client';
import React from 'react';
import { Card } from '@/ui/Card';
import { Box } from '@/ui/Box';
import { Stack } from '@/ui/Stack';
import { Text } from '@/ui/Text';
import { Heading } from '@/ui/Heading';
import { Badge } from '@/ui/Badge';
import { Grid } from '@/ui/Grid';
import { Table, TableHead, TableBody, TableRow, TableHeader, TableCell } from '@/ui/Table';
import { Surface } from '@/ui/Surface';
import type { RulebookViewData } from '@/lib/view-data/leagues/RulebookViewData';
interface RulebookTemplateProps {
viewData: RulebookViewData;
}
export function RulebookTemplate({ viewData }: RulebookTemplateProps) {
return (
{/* Header */}
Rulebook
Official rules and regulations
{viewData.scoringPresetName || 'Custom Rules'}
{/* Quick Stats */}
{/* Points Table */}
Points System
Position
Points
{viewData.positionPoints.map((point) => (
{point.position}
{point.points}
))}
{/* Bonus Points */}
{viewData.hasBonusPoints && (
Bonus Points
{viewData.bonusPoints.map((bonus, idx) => (
+
{bonus}
))}
)}
{/* Drop Policy */}
{viewData.hasActiveDropPolicy && (
Drop Policy
{viewData.dropPolicySummary}
Drop rules are applied automatically when calculating championship standings.
)}
);
}
function StatItem({ label, value }: { label: string, value: string | number }) {
return (
{label}
{value}
);
}