From b3b963e02b4b1cefa57034ece78c44df590f01cd Mon Sep 17 00:00:00 2001 From: lizmlzhou Date: Mon, 16 Sep 2019 01:08:29 +0800 Subject: [PATCH] feat: todo-app --- todo-app/App.vue | 49 +++++++ todo-app/README.md | 29 ++++ todo-app/assets/face.jpeg | Bin 0 -> 56906 bytes todo-app/assets/logo.png | Bin 0 -> 6849 bytes todo-app/components/AppBar.vue | 49 +++++++ todo-app/components/Avatar.vue | 85 ++++++++++++ todo-app/components/FloatingButton.vue | 82 +++++++++++ todo-app/components/Gradient.vue | 34 +++++ todo-app/components/GradientColor.vue | 40 ++++++ todo-app/components/Task.vue | 104 ++++++++++++++ todo-app/components/Todo.vue | 184 +++++++++++++++++++++++++ todo-app/components/TodoDetail.vue | 153 ++++++++++++++++++++ todo-app/components/TodoEditing.vue | 94 +++++++++++++ todo-app/components/TodoList.vue | 79 +++++++++++ todo-app/main.js | 12 ++ todo-app/router.js | 17 +++ todo-app/shared.js | 17 +++ todo-app/store.js | 151 ++++++++++++++++++++ todo-app/views/Home.vue | 41 ++++++ 19 files changed, 1220 insertions(+) create mode 100644 todo-app/App.vue create mode 100644 todo-app/README.md create mode 100644 todo-app/assets/face.jpeg create mode 100644 todo-app/assets/logo.png create mode 100644 todo-app/components/AppBar.vue create mode 100644 todo-app/components/Avatar.vue create mode 100644 todo-app/components/FloatingButton.vue create mode 100644 todo-app/components/Gradient.vue create mode 100644 todo-app/components/GradientColor.vue create mode 100644 todo-app/components/Task.vue create mode 100644 todo-app/components/Todo.vue create mode 100644 todo-app/components/TodoDetail.vue create mode 100644 todo-app/components/TodoEditing.vue create mode 100644 todo-app/components/TodoList.vue create mode 100644 todo-app/main.js create mode 100644 todo-app/router.js create mode 100644 todo-app/shared.js create mode 100644 todo-app/store.js create mode 100644 todo-app/views/Home.vue diff --git a/todo-app/App.vue b/todo-app/App.vue new file mode 100644 index 0000000..157de19 --- /dev/null +++ b/todo-app/App.vue @@ -0,0 +1,49 @@ + + + diff --git a/todo-app/README.md b/todo-app/README.md new file mode 100644 index 0000000..1a1037f --- /dev/null +++ b/todo-app/README.md @@ -0,0 +1,29 @@ +# todo-app + +## Project setup +``` +npm install +``` + +### Compiles and hot-reloads for development +``` +npm run serve +``` + +### Compiles and minifies for production +``` +npm run build +``` + +### Run your tests +``` +npm run test +``` + +### Lints and fixes files +``` +npm run lint +``` + +### Customize configuration +See [Configuration Reference](https://cli.vuejs.org/config/). diff --git a/todo-app/assets/face.jpeg b/todo-app/assets/face.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..653fe29100e39cdc9b606ce4c3f0fe6ff4b6b2ef GIT binary patch literal 56906 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 literal 0 HcmV?d00001 diff --git a/todo-app/assets/logo.png b/todo-app/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f3d2503fc2a44b5053b0837ebea6e87a2d339a43 GIT binary patch literal 6849 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 +
+ + + +

{{ title }}

+ + + +
+ + + + + diff --git a/todo-app/components/Avatar.vue b/todo-app/components/Avatar.vue new file mode 100644 index 0000000..1056c26 --- /dev/null +++ b/todo-app/components/Avatar.vue @@ -0,0 +1,85 @@ + + + + + diff --git a/todo-app/components/FloatingButton.vue b/todo-app/components/FloatingButton.vue new file mode 100644 index 0000000..d99136c --- /dev/null +++ b/todo-app/components/FloatingButton.vue @@ -0,0 +1,82 @@ + + + + + diff --git a/todo-app/components/Gradient.vue b/todo-app/components/Gradient.vue new file mode 100644 index 0000000..28f53fc --- /dev/null +++ b/todo-app/components/Gradient.vue @@ -0,0 +1,34 @@ + + + + + diff --git a/todo-app/components/GradientColor.vue b/todo-app/components/GradientColor.vue new file mode 100644 index 0000000..6468325 --- /dev/null +++ b/todo-app/components/GradientColor.vue @@ -0,0 +1,40 @@ + + + + + diff --git a/todo-app/components/Task.vue b/todo-app/components/Task.vue new file mode 100644 index 0000000..b310b25 --- /dev/null +++ b/todo-app/components/Task.vue @@ -0,0 +1,104 @@ + + + + + diff --git a/todo-app/components/Todo.vue b/todo-app/components/Todo.vue new file mode 100644 index 0000000..162de42 --- /dev/null +++ b/todo-app/components/Todo.vue @@ -0,0 +1,184 @@ + + + + + diff --git a/todo-app/components/TodoDetail.vue b/todo-app/components/TodoDetail.vue new file mode 100644 index 0000000..5d6c819 --- /dev/null +++ b/todo-app/components/TodoDetail.vue @@ -0,0 +1,153 @@ + + + + + diff --git a/todo-app/components/TodoEditing.vue b/todo-app/components/TodoEditing.vue new file mode 100644 index 0000000..eec8554 --- /dev/null +++ b/todo-app/components/TodoEditing.vue @@ -0,0 +1,94 @@ + + + + + diff --git a/todo-app/components/TodoList.vue b/todo-app/components/TodoList.vue new file mode 100644 index 0000000..44829f6 --- /dev/null +++ b/todo-app/components/TodoList.vue @@ -0,0 +1,79 @@ + + + + + diff --git a/todo-app/main.js b/todo-app/main.js new file mode 100644 index 0000000..f253456 --- /dev/null +++ b/todo-app/main.js @@ -0,0 +1,12 @@ +import Vue from 'vue' +import App from './App.vue' +import router from './router' +import store from './store' + +Vue.config.productionTip = false + +new Vue({ + router, + store, + render: h => h(App) +}).$mount('#app') diff --git a/todo-app/router.js b/todo-app/router.js new file mode 100644 index 0000000..539416e --- /dev/null +++ b/todo-app/router.js @@ -0,0 +1,17 @@ +import Vue from 'vue' +import Router from 'vue-router' +import Home from './views/Home.vue' + +Vue.use(Router) + +export default new Router({ + mode: 'history', + base: process.env.BASE_URL, + routes: [ + { + path: '/', + name: 'home', + component: Home + } + ] +}) diff --git a/todo-app/shared.js b/todo-app/shared.js new file mode 100644 index 0000000..2eb9d09 --- /dev/null +++ b/todo-app/shared.js @@ -0,0 +1,17 @@ +export const now = new Date() +export const today = new Date( + now.getFullYear(), + now.getMonth(), + now.getDate(), + 0, + 0, + 0 +) +export const tomorrow = new Date( + now.getFullYear(), + now.getMonth(), + now.getDate() + 1, + 0, + 0, + 0 +) diff --git a/todo-app/store.js b/todo-app/store.js new file mode 100644 index 0000000..f2442ce --- /dev/null +++ b/todo-app/store.js @@ -0,0 +1,151 @@ +import Vue from 'vue' +import Vuex from 'vuex' +import { tomorrow } from './shared' + +Vue.use(Vuex) + +export default new Vuex.Store({ + state: { + currentIndex: 0, + todos: [ + { + icon: 'user', + name: 'Personal', + tasks: [ + { + id: 1, + title: 'Dating', + date: new Date(), + done: false, + deleted: false + } + ], + colors: ['#ff6262', '#ffa947'] + }, + { + icon: 'suitcase', + name: 'Work', + tasks: [ + { + id: 3, + title: 'Design Sprint', + date: new Date(), + done: true, + deleted: false + }, + { + id: 4, + title: 'Icon Set Design for Mobile App', + date: new Date(), + done: false, + deleted: false + }, + { + id: 5, + title: 'HTML/CSS Study', + date: new Date(), + done: false, + deleted: false + }, + { + id: 6, + title: 'Weekly Report', + date: new Date(), + done: false, + deleted: false + }, + { + id: 7, + title: 'Design Meeting', + date: new Date(), + done: false, + deleted: false + }, + { + title: 'Quick Prototyping', + date: new Date('2019-09-16'), + done: false, + deleted: false + }, + { + id: 8, + title: 'UX Conference', + date: new Date('2019-09-16'), + done: false, + deleted: false + } + ], + colors: ['#5b9df9', '#47bfff'] + }, + { + icon: 'home', + name: 'Home', + tasks: [ + { + id: 2, + title: 'House Keeping', + date: new Date(), + done: true, + deleted: false + } + ], + colors: ['#2c7d59', '#3ba776'] + } + ], + + selected: null, + unselect: null, + editing: null + }, + getters: { + currentTodo (state) { + return state.todos[state.currentIndex] + }, + todayTasks (state) { + const tasks = [] + state.todos.forEach(todo => { + todo.tasks.forEach(task => { + if (task.date <= tomorrow && !task.done && !task.deleted) { + tasks.push(task) + } + }) + }) + return tasks + } + }, + mutations: { + selectTodo (state, selected) { + state.unselect = null + state.selected = selected + }, + unselectTodo (state) { + state.unselect = state.selected + state.selected = null + }, + nextTodo (state) { + if (state.currentIndex < state.todos.length - 1) { + state.currentIndex++ + } + }, + prevTodo (state) { + if (state.currentIndex > 0) { + state.currentIndex-- + } + }, + deleteTask (_, { task }) { + task.deleted = true + }, + toggleEditing (state) { + if (state.editing && state.editing.text) { + state.selected.todo.tasks.unshift({ + title: state.editing.text, + date: new Date(), + done: false, + deleted: false + }) + } + state.editing = state.editing ? null : { text: '' } + } + }, + actions: {} +}) diff --git a/todo-app/views/Home.vue b/todo-app/views/Home.vue new file mode 100644 index 0000000..bcc20b2 --- /dev/null +++ b/todo-app/views/Home.vue @@ -0,0 +1,41 @@ + + + + +