1
0
mirror of https://github.com/BoostIo/Boostnote synced 2025-12-13 09:46:22 +00:00

add todo percentage in item list

This commit is contained in:
XGHeaven
2017-08-09 10:50:54 +08:00
parent 2324327e7e
commit 1c7cba2951
7 changed files with 103 additions and 19 deletions

View File

@@ -0,0 +1,25 @@
export function getTodoState (content) {
let splitted = content.split('\n')
let numberOfTodo = 0
let numberOfCompletedTodo = 0
splitted.forEach((line) => {
let trimmedLine = line.trim()
if (trimmedLine.match(/^[\+\-\*] \[\s|x\] ./)) {
numberOfTodo++
}
if (trimmedLine.match(/^[\+\-\*] \[x\] ./)) {
numberOfCompletedTodo++
}
})
return {
total: numberOfTodo,
completed: numberOfCompletedTodo
}
}
export function getTodoPercentageOfCompleted (content) {
const state = getTodoState(content)
return Math.floor(state.completed / state.total * 100)
}