63d6272282
Split out the markdown editor logic into seperate components to provide a more orgranised heirachy with feature-specific files.
30 lines
617 B
JavaScript
30 lines
617 B
JavaScript
import MarkdownIt from "markdown-it";
|
|
import mdTasksLists from 'markdown-it-task-lists';
|
|
|
|
export class Markdown {
|
|
|
|
constructor() {
|
|
this.renderer = new MarkdownIt({html: true});
|
|
this.renderer.use(mdTasksLists, {label: true});
|
|
}
|
|
|
|
/**
|
|
* Get the front-end render used to convert markdown to HTML.
|
|
* @returns {MarkdownIt}
|
|
*/
|
|
getRenderer() {
|
|
return this.renderer;
|
|
}
|
|
|
|
/**
|
|
* Convert the given Markdown to HTML.
|
|
* @param {String} markdown
|
|
* @returns {String}
|
|
*/
|
|
render(markdown) {
|
|
return this.renderer.render(markdown);
|
|
}
|
|
}
|
|
|
|
|
|
|