'use client'; import { useEffect, useState } from 'react'; import { Button } from '@nextui-org/react'; import { Plus } from 'lucide-react'; import RunsTable from './RunsTable'; import { fetchRuns, createRun, deleteRun } from './runsControl'; import { RunsMessages } from '@/types/run'; type Props = { projectId: string; locale: string; messages: RunsMessages; }; export default function RunsPage({ projectId, locale, messages }: Props) { const [runs, setRuns] = useState([]); useEffect(() => { async function fetchDataEffect() { try { const data = await fetchRuns(projectId); setRuns(data); } catch (error: any) { console.error('Error in effect:', error.message); } } fetchDataEffect(); }, []); const onCreateClick = async () => { try { const newRun = await createRun(projectId); const updateRuns = [...runs]; updateRuns.push(newRun); setRuns(updateRuns); } catch (error: any) { console.error('Error deleting run:', error); } }; const onDeleteClick = async (runId: number) => { try { await deleteRun(runId); const data = await fetchRuns(projectId); setRuns(data); } catch (error: any) { console.error('Error deleting run:', error); } }; return (