Преглед на файлове

feat(actions): add deleteAllToDo function

Helder преди 6 години
родител
ревизия
16c67f4e71
променени са 1 файла, в които са добавени 55 реда и са изтрити 2 реда
  1. 55 2
      src/app/store/actions/index.js

+ 55 - 2
src/app/store/actions/index.js

@@ -1,7 +1,60 @@
-import {updateText, pushToDo, switchCompleted} from './toDoAction'
+const uuidv1 = require('uuid/v1');
+
+//TODO_TEXT_UPDATE
+function updateText(todoText){
+    return function(dispatch) {
+      dispatch({
+          type: "TODO_TEXT_UPDATE",
+          payload:{
+              todoText
+          }
+      })
+    }
+}
+
+//TODO_PUSH_ITEM
+function pushToDo(todoText){
+    return function(dispatch) {
+      const todoItem = {
+        id:uuidv1(),
+        text:todoText,
+        completed: false
+      }
+
+      dispatch({
+          type: "TODO_PUSH_ITEM",
+          payload:{
+              todoItem
+          }
+      });
+    }
+}
+
+//TODO_UPDATE_ITEM
+function switchCompleted(index, item){
+    return function(dispatch) {
+      dispatch({
+          type: "TODO_UPDATE_ITEM",
+          payload:{
+              index,
+              todoItem: {...item, completed:!item.completed}
+          }
+      });
+    }
+}
+
+//TODO_TEXT_UPDATE
+function deleteAllToDo(){
+    return function(dispatch) {
+      dispatch({
+          type: "TODO_DELETE_ALL"
+      })
+    }
+}
 
 export {
     updateText,
     pushToDo,
-    switchCompleted
+    switchCompleted,
+    deleteAllToDo
 }