imdone-core
Version:
25 lines (21 loc) • 511 B
JavaScript
import { TaskParser } from './TaskParser.js'
export class MarkdownStyleTaskParser extends TaskParser {
constructor(config) {
super('MARKDOWN', config)
}
get pattern() {
return /^(.*)(\[(.+?)\]\(#([a-zA-Z-_]+?)(:)(-?[\d.]+(?:e-?\d+)?)?\))/gm
}
parse(lineContent, line, matchResult) {
const [match, beforeText, rawTask, text, list, colon, order] = matchResult
return {
beforeText,
text,
order,
list,
line,
colon,
type: this.type,
}
}
}