--- import { people, personById } from '@shared/lib/people' import CardActions from '@ui/CardActions.astro' import DefaultLayout from '@shared/layouts/DefaultLayout.astro' import Button from '@ui/Button.astro' import Icon from '@ui/Icon.astro' import Avatar from '@ui/Avatar.astro' import Badge from '@ui/Badge.astro' import Modal from '@shared/components/modals/Modal.astro' import CaptureModal from '@shared/components/CaptureModal.astro' import FormGroup from '@ui/FormGroup.astro' import tasks from '@data/tasks.json' import { requireIndex } from '@shared/lib/array' import CardTitle from '@ui/CardTitle.astro' interface Task { 'name'?: string 'assigned_to'?: number 'due_date'?: string 'due-date'?: string 'priority'?: string [key: string]: unknown } interface Column { name: string tasks: Task[] } const columns = (tasks as { columns: Column[] }).columns const peopleList = people // Assignable people for the add-task modal. const selectedPeople = [5, 6, 2, 3].map((id) => requireIndex(peopleList, id - 1)) ---
{ columns.map((section) => (
{section.name}
{section.tasks.map((task) => { const person = task.assigned_to ? peopleList[task.assigned_to - 1] : undefined return ( ) })}
Name Assigned To Due Date Priority Actions
{task.name} {task.assigned_to && person ? (
{person.full_name}
) : ( Unassigned )}
{task.due_date ? ( {task.due_date} ) : task['due-date'] ? ( {task['due-date']} ) : ( — )} {task.priority === 'High' ? : task.priority === 'Medium' ? : task.priority === 'Low' ? : }
)) }