From 78a403c450425ea86fad7df5737a4a53ed4c6714 Mon Sep 17 00:00:00 2001
From: donal <donalspring@gmail.com>
Date: Mon, 16 Apr 2018 12:57:45 +0200
Subject: [PATCH] Template for TDD

---
 src/components/TodoItem.vue |   68 ++++++++++++++++++++++-----------
 1 files changed, 45 insertions(+), 23 deletions(-)

diff --git a/src/components/TodoItem.vue b/src/components/TodoItem.vue
index 6c2081e..6287bee 100644
--- a/src/components/TodoItem.vue
+++ b/src/components/TodoItem.vue
@@ -1,30 +1,37 @@
 <template>
   <div>
-    <md-list-item 
-      @click="markDone"
-    >
-      <md-checkbox :value="isActive" />
-      <span class="md-list-item-text" :class="{'strike-through': isActive}">{{ todoItem.msg }}</span>
-    </md-list-item>
+    <div class="itemCardAndFlag">
+      <md-list-item
+        @click="markCompleted()"
+        >
+        <checkbox v-model="todoItem.completed" class="checkbox-completed"/> 
+
+        <span class="md-list-item-text" :class="{'strike-through': todoItem.completed}">{{ todoItem.title }}</span>
+      </md-list-item>
+      <!-- TODO - SVG for use in Lab3 -->
+      <!-- <svg :class="{'red-flag': todoItem.important}"  height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg" ><path d="M0 0h24v24H0z" fill="none"/><path d="M14.4 6L14 4H5v17h2v-7h5.6l.4 2h7V6z"/></svg> -->
+    </div>
   </div>
 </template>
 <script>
+import Vue from "vue";
+import { Checkbox, Radio } from "vue-checkbox-radio";
+Vue.component("checkbox", Checkbox);
+Vue.component("radio", Radio);
+
 export default {
   name: "TodoItem",
   props: {
     // type any object ;)
     todoItem: {}
   },
-  data () {
-    return {
-      isActive: false
-    }
-  },
   methods: {
-    markDone () {
-      // set to greyed out / true false
-      this.isActive = !this.isActive;
-      console.info('INFO - ', this.todoItem , this.isActive)
+    markCompleted() {
+      this.$store.dispatch("updateTodo", {id :this.todoItem._id});
+      console.info("INFO - Mark todo as completed ", this.todoItem.completed);
+    },
+    markImportant() {
+      // TODO - FILL THIS OUT IN THE LAB EXERCISE
     }
   }
 };
@@ -32,17 +39,32 @@
 
 <!-- Add "scoped" attribute to limit CSS to this component only -->
 <style scoped lang="scss">
-.md-list {
-    width: 320px;
-    max-width: 100%;
-    height: 400px;
-    display: inline-block;
-    overflow: auto;
-    border: 1px solid rgba(#000, .12);
-    vertical-align: top;
+.md-list-item {
+  width: 320px;
+  max-width: 100%;
+  height: 50px;
+  display: inline-block;
+  overflow: auto;
+}
+
+.md-list-item-text {
+  padding-left: 0.5em;
+}
+
+.itemCardandFlag {
+  display: inline-block;
 }
 
 .strike-through {
   text-decoration: line-through;
+  font-style: italic;
+}
+
+.important-flag {
+  height: 50px;
+  margin: 0px;
+}
+.red-flag {
+  fill: #cc0000;
 }
 </style>

--
Gitblit v1.9.3