import React, { useState, useEffect } from 'react'; /** * Główny komponent aplikacji React. * Zmodyfikowany w celu zapewnienia pełnej funkcjonalności zarządzania zadaniami * z nowoczesnym interfejsem użytkownika i obsługą stanu. */ const App = () => { const [tasks, setTasks] = useState([ { id: 1, text: 'Zainstalować zależności', completed: true }, { id: 2, text: 'Zaimplementować logikę biznesową', completed: false } ]); const [inputValue, setInputValue] = useState(''); const handleAddTask = (e) => { e.preventDefault(); if (inputValue.trim() === '') return; const newTask = { id: Date.now(), text: inputValue, completed: false }; setTasks([...tasks, newTask]); setInputValue(''); }; const toggleTask = (id) => { setTasks(tasks.map(task => task.id === id ? { ...task, completed: !task.completed } : task )); }; const deleteTask = (id) => { setTasks(tasks.filter(task => task.id !== id)); }; const clearCompleted = () => { setTasks(tasks.filter(task => !task.completed)); }; return (
Brak zadań do wyświetlenia.
) : ( tasks.map(task => (