aboutsummaryrefslogtreecommitdiff
path: root/src/features/todo/reducer.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/features/todo/reducer.js')
-rw-r--r--src/features/todo/reducer.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/features/todo/reducer.js b/src/features/todo/reducer.js
new file mode 100644
index 0000000..29422e9
--- /dev/null
+++ b/src/features/todo/reducer.js
@@ -0,0 +1,32 @@
+import { createSlice } from "@reduxjs/toolkit";
+
+export const todo_slice = createSlice({
+ name: "todo_list",
+ initialState: {
+ todos: [],
+ last_id: 0,
+ },
+
+ reducers: {
+ add_todo: (state, action) => {
+ state.todos = [
+ ...state.todos,
+ {
+ id: ++state.last_id,
+ text: action.payload.text,
+ due_date: action.payload.due_date,
+ done: action.payload.done,
+ priority: action.payload.priority,
+ creation_date: action.payload.creation_date,
+ },
+ ];
+ console.log(state.todos);
+ },
+ },
+});
+
+export const { add_todo } = todo_slice.actions;
+
+export const select_todos = (state) => state.todo_list.todos;
+
+export default todo_slice.reducer;