+
+
+
+ {tempTodo}
+
+
+ {/* Remove button appears only on hover */}
+
+
+ {/* overlay will cover the todo while it is being deleted or updated */}
+
+
+ );
+};
diff --git a/src/components/TodoItem.tsx b/src/components/TodoItem.tsx
new file mode 100644
index 000000000..cf972db3f
--- /dev/null
+++ b/src/components/TodoItem.tsx
@@ -0,0 +1,100 @@
+/* eslint-disable jsx-a11y/label-has-associated-control */
+import classNames from 'classnames';
+import { Todo } from '../types/Todo';
+import { FormEditingTitle } from './FormEditingTitle';
+
+type Props = {
+ todo: Todo;
+ changeTodo: (todo: Todo) => void;
+ updatingAndDeletingCompletedTodos: Todo[] | [];
+ setUpdatingAndDeletingCompletedTodos: (
+ deletingCompletedTodos: Todo[] | [],
+ ) => void;
+ editingTitle: number;
+ setEditingTitle: (editingTitle: number) => void;
+ titleEdit: string;
+ setTitleEdit: (titleEdit: string) => void;
+ handleChangeSubmit: (todo: Todo) => void;
+ deleteTodo: (todo: Todo) => void;
+};
+
+export const TodoItem: React.FC