Skip to content

Commit 14f2d65

Browse files
committed
Fix code and naming warnings
1 parent e9a3abe commit 14f2d65

File tree

3 files changed

+30
-16
lines changed

3 files changed

+30
-16
lines changed

src/components/NewTodo.vue

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ export interface todoTask {
7373
repeatEvery: number; //task repetition number of days/weeks/months/years
7474
repeatInterval: number; //task repetition interval
7575
newId: number; //task id
76-
completed: boolean; //task completed or not
76+
isCompleted: boolean; //task completed or not
7777
timesCompleted: number; //number of times tasks has been completed
7878
streak: number; //task completion streak
7979
originalDueDate: Date; //task original due date in YYYY-MM-DD string
@@ -95,7 +95,7 @@ export default defineComponent({
9595
repeatEvery: 1, // set default task repetition number to 1
9696
repeatInterval: RepeatInterval.Once, //set default task repetition interval to one-time
9797
newId: 0, //initial task id is 0
98-
completed: false, //task not completed if a task is created
98+
isCompleted: false, //task not completed if a task is created
9999
timesCompleted: 0,
100100
streak: 0, //set default task streak to 0
101101
originalDueDate: currentLocalDate.toISOString().split("T")[0], //set a default original task due date to today
@@ -121,7 +121,7 @@ export default defineComponent({
121121
this.difficulty = Difficulty.Easy;
122122
this.repeatEvery = 1;
123123
this.repeatInterval = RepeatInterval.Once;
124-
this.completed = false;
124+
this.isCompleted = false;
125125
this.timesCompleted = 0;
126126
this.streak = 0;
127127
this.originalDueDate = currentLocalDate.toISOString().split("T")[0];

src/components/TodoList.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
></span
4646
>
4747
<!--don't show complete button if one-time task is completed--><button
48-
v-if="!todo.completed"
48+
v-if="!todo.isCompleted"
4949
@click="completeTodo(todo.newId)"
5050
>
5151
Complete
@@ -90,7 +90,7 @@ export default defineComponent({
9090
repeatEvery: Number,
9191
level: Number,
9292
xp: Number,
93-
completed: Boolean,
93+
isCompleted: Boolean,
9494
timesCompleted: Number,
9595
streak: Number,
9696
dailyStreak: Number,

src/store/index.ts

Lines changed: 25 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,24 @@
11
import { createStore } from "vuex";
22
import createPersistedState from "vuex-persistedstate";
3-
3+
interface Todo {
4+
//todos task interface
5+
newId: number;
6+
task: string;
7+
dueDate: string | Date;
8+
priority: number;
9+
difficulty: number;
10+
xp: number;
11+
isCompleted: boolean;
12+
repeatEvery: number;
13+
repeatInterval: number;
14+
timesCompleted: number;
15+
streak: number;
16+
originalDueDate: string | Date;
17+
}
418
export default createStore({
519
state: {
620
//eslint-disable-next-line
7-
todos: [] as any[],
21+
todos: [] as Todo[],
822
user: {
923
level: 1 as number, //set level to 1 as total XP is 0 when state is created
1024
xp: 0 as number,
@@ -34,9 +48,9 @@ export default createStore({
3448
* Update user XP state when a user presses Complete button to complete the task.
3549
*/
3650
updateXp: (state, payload) => {
37-
const task = state.todos.find(
51+
const task: Todo = state.todos.find(
3852
(todo: { newId: number }) => todo.newId === payload,
39-
);
53+
) as Todo;
4054
const daysToDue: number =
4155
(Number(new Date(task.dueDate + " 23:59:59.999")) -
4256
Number(new Date().setHours(23, 59, 59, 999))) /
@@ -64,7 +78,7 @@ export default createStore({
6478
let dayTasksMultiplier: number; //calculate XP and score multiplier for tasks completed in a day (today)
6579
let tasksMultiplier: number; //calculate score multiplier for total number of tasks completed
6680
const activeTasks: number = state.todos.filter(
67-
(taskList) => !taskList.completed,
81+
(taskList) => !taskList.isCompleted,
6882
).length; //calculate the number of active tasks (tasks that are not completed) using array.filter
6983
let activeTasksMultiplier: number; //calculate score multiplier for number of active tasks (tasks that are not completed)
7084
//calculate task repetition XP multiplier
@@ -435,7 +449,7 @@ export default createStore({
435449
priority: payload.priority as number,
436450
difficulty: payload.difficulty as number,
437451
xp: payload.xp as number,
438-
completed: payload.completed as boolean,
452+
isCompleted: payload.isCompleted as boolean,
439453
repeatEvery: payload.repeatEvery as number,
440454
repeatInterval: payload.repeatInterval as number,
441455
timesCompleted: payload.timesCompleted as number,
@@ -448,12 +462,12 @@ export default createStore({
448462
/**
449463
* Complete the task when user presses the Complete button.
450464
*/
451-
const item = state.todos.find(
465+
const item: Todo = state.todos.find(
452466
(todo: { newId: number }) => todo.newId === payload,
453-
);
467+
) as Todo;
454468
if (Number(item.repeatInterval) === 5) {
455469
//if the task is a one-time only
456-
item.completed = !item.completed; //complete task item (set completed task to true)
470+
item.isCompleted = !item.isCompleted; //complete task item (set completed task to true)
457471
} else {
458472
item.timesCompleted++; //increment number of times tasks has been completed by 1
459473
if (Number(item.repeatInterval) === 1) {
@@ -592,13 +606,13 @@ export default createStore({
592606
(todo: { newId: number }) => todo.newId === payload,
593607
);
594608
let deleteTask;
595-
if (!state.todos[index].completed) {
609+
if (!state.todos[index].isCompleted) {
596610
//don't ask for confirmation when one-time task is completed
597611
deleteTask = confirm(
598612
`Do you want to delete the task ${state.todos[index].task}?\nThis action cannot be undone.`,
599613
) as boolean; //ask user to confirm task deletion
600614
}
601-
if (deleteTask || state.todos[index].completed) {
615+
if (deleteTask || state.todos[index].isCompleted) {
602616
//delete task if one-time task is completed when the deleted button is clicked or when user confirms deletion alert
603617
state.todos.splice(index, 1); //delete task item
604618
}

0 commit comments

Comments
 (0)