mirror of
https://github.com/drawdb-io/drawdb.git
synced 2025-10-22 19:33:58 +00:00
Abstract tasks to a context
This commit is contained in:
18
src/context/TasksContext.jsx
Normal file
18
src/context/TasksContext.jsx
Normal file
@@ -0,0 +1,18 @@
|
||||
import { createContext, useState } from "react";
|
||||
|
||||
export const TasksContext = createContext(null);
|
||||
|
||||
export default function TasksContextProvider({ children }) {
|
||||
const [tasks, setTasks] = useState([]);
|
||||
|
||||
const updateTask = (id, values) =>
|
||||
setTasks((prev) =>
|
||||
prev.map((task, i) => (id === i ? { ...task, ...values } : task))
|
||||
);
|
||||
|
||||
return (
|
||||
<TasksContext.Provider value={{ tasks, setTasks, updateTask }}>
|
||||
{children}
|
||||
</TasksContext.Provider>
|
||||
);
|
||||
}
|
Reference in New Issue
Block a user