import './Todolist.
css';
import { useState } from 'react';
function App() {
const [tasks, setTasks] = useState([]);
const [taskValue, setTaskValue] = useState('')
const [isEditing, setIsediting] = useState(false)
const [editingvalue, setEditingvalue] = useState(null);
function handleChange(event) {
setTaskValue([Link]);
}
function handleAddtask() {
if (isEditing) {
const index = [Link](editingvalue)
if (index !== -1) {
const updatedtask = [...tasks];
[Link](index, 1, taskValue)
setTasks(updatedtask)
}
}
else {
if (taskValue !== '') {
setTasks((prevtask) => [taskValue, ...prevtask]);
}
}
setTaskValue('');
setIsediting(false)
}
function handleDelete(task) {
const updatedtaskList = [Link]((currentelement) => currentelement
!== task)
[Link](updatedtaskList);
setTasks(updatedtaskList);
}
function handleEdit(task) {
setIsediting(true)
setTaskValue(task)
[Link]('.inputText').focus();
let currentlyEditingValue = [Link]((element) => element === task);
setEditingvalue(currentlyEditingValue);
}
function handlekeyPress(event) {
if ([Link] === 'Enter') {
handleAddtask()
}
}
return (
<div >
<ul className='TodoListitemsContainer'>
<div className="heading1">
<h1 >To Do App</h1>
</div>
<input type='text' value={taskValue}
onChange={handleChange} onKeyDown={handlekeyPress} className='inputText'
placeholder='Enter your Task' />
<button onClick={handleAddtask}
className='addTask'>{isEditing ? "save" : 'Add task'}</button>
{tasks && [Link]((task, index) => {
return <li key={index} >
<input type="text1" className='input'
value={task}
/>
<button onClick={() => handleEdit(task)}
className='edit'>Edit</button>
<button onClick={() =>
handleDelete(task)} className='delete'>Delete</button>
</li>
})
}
</ul >
</div>
)
}
export default App;