mirror of
https://github.com/mermaid-js/mermaid.git
synced 2025-09-18 06:49:47 +02:00
Extract tag parsing in separate function
This commit is contained in:
@@ -158,30 +158,8 @@ const compileData = function (prevTask, dataStr) {
|
|||||||
const task = {}
|
const task = {}
|
||||||
|
|
||||||
// Get tags like active, done, crit and milestone
|
// Get tags like active, done, crit and milestone
|
||||||
let matchFound = true
|
getTaskTags(data, task)
|
||||||
while (matchFound) {
|
|
||||||
matchFound = false
|
|
||||||
if (data[0].match(/^\s*active\s*$/)) {
|
|
||||||
task.active = true
|
|
||||||
data.shift(1)
|
|
||||||
matchFound = true
|
|
||||||
}
|
|
||||||
if (data[0].match(/^\s*done\s*$/)) {
|
|
||||||
task.done = true
|
|
||||||
data.shift(1)
|
|
||||||
matchFound = true
|
|
||||||
}
|
|
||||||
if (data[0].match(/^\s*crit\s*$/)) {
|
|
||||||
task.crit = true
|
|
||||||
data.shift(1)
|
|
||||||
matchFound = true
|
|
||||||
}
|
|
||||||
if (data[0].match(/^\s*milestone\s*$/)) {
|
|
||||||
task.milestone = true
|
|
||||||
data.shift(1)
|
|
||||||
matchFound = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
for (let i = 0; i < data.length; i++) {
|
for (let i = 0; i < data.length; i++) {
|
||||||
data[i] = data[i].trim()
|
data[i] = data[i].trim()
|
||||||
}
|
}
|
||||||
@@ -221,30 +199,8 @@ const parseData = function (prevTaskId, dataStr) {
|
|||||||
const task = {}
|
const task = {}
|
||||||
|
|
||||||
// Get tags like active, done, crit and milestone
|
// Get tags like active, done, crit and milestone
|
||||||
let matchFound = true
|
getTaskTags(data, task)
|
||||||
while (matchFound) {
|
|
||||||
matchFound = false
|
|
||||||
if (data[0].match(/^\s*active\s*$/)) {
|
|
||||||
task.active = true
|
|
||||||
data.shift(1)
|
|
||||||
matchFound = true
|
|
||||||
}
|
|
||||||
if (data[0].match(/^\s*done\s*$/)) {
|
|
||||||
task.done = true
|
|
||||||
data.shift(1)
|
|
||||||
matchFound = true
|
|
||||||
}
|
|
||||||
if (data[0].match(/^\s*crit\s*$/)) {
|
|
||||||
task.crit = true
|
|
||||||
data.shift(1)
|
|
||||||
matchFound = true
|
|
||||||
}
|
|
||||||
if (data[0].match(/^\s*milestone\s*$/)) {
|
|
||||||
task.milestone = true
|
|
||||||
data.shift(1)
|
|
||||||
matchFound = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
for (let i = 0; i < data.length; i++) {
|
for (let i = 0; i < data.length; i++) {
|
||||||
data[i] = data[i].trim()
|
data[i] = data[i].trim()
|
||||||
}
|
}
|
||||||
@@ -373,3 +329,30 @@ export default {
|
|||||||
findTaskById,
|
findTaskById,
|
||||||
addTaskOrg
|
addTaskOrg
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getTaskTags (data, task) {
|
||||||
|
let matchFound = true
|
||||||
|
while (matchFound) {
|
||||||
|
matchFound = false
|
||||||
|
if (data[0].match(/^\s*active\s*$/)) {
|
||||||
|
task.active = true
|
||||||
|
data.shift(1)
|
||||||
|
matchFound = true
|
||||||
|
}
|
||||||
|
if (data[0].match(/^\s*done\s*$/)) {
|
||||||
|
task.done = true
|
||||||
|
data.shift(1)
|
||||||
|
matchFound = true
|
||||||
|
}
|
||||||
|
if (data[0].match(/^\s*crit\s*$/)) {
|
||||||
|
task.crit = true
|
||||||
|
data.shift(1)
|
||||||
|
matchFound = true
|
||||||
|
}
|
||||||
|
if (data[0].match(/^\s*milestone\s*$/)) {
|
||||||
|
task.milestone = true
|
||||||
|
data.shift(1)
|
||||||
|
matchFound = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user