import type { Route } from './+types/home' import { Box, Typography, Container } from '@mui/material' import { TaskList } from '~/components/TaskList' import type { Task } from '~/types/task' export function meta(_: Route.MetaArgs) { return [ { title: "Captain's Log - Dashboard" }, { name: 'description', content: 'Task Dashboard' }, ] } export async function loader(): Promise<{ tasks: Task[] }> { try { // Fetch tasks from the backend API during SSR const apiUrl = process.env.API_URL || 'http://localhost:3000' const response = await fetch(`${apiUrl}/api/tasks?status=todo`, { headers: { 'Content-Type': 'application/json', }, }) if (!response.ok) { console.error('Failed to fetch tasks:', response.statusText) return { tasks: [] } } const tasks = await response.json() return { tasks } } catch (error) { console.error('Error fetching tasks during SSR:', error) return { tasks: [] } } } export default function Home({ loaderData }: Route.ComponentProps) { return ( Dashboard ) }