Files
outline/shared/editor/rules/notices.ts
2022-01-19 18:43:15 -08:00

22 lines
584 B
TypeScript

import MarkdownIt from "markdown-it";
import customFence from "markdown-it-container";
import Token from "markdown-it/lib/token";
export default function notice(md: MarkdownIt): void {
return customFence(md, "notice", {
marker: ":",
validate: () => true,
render: function (tokens: Token[], idx: number) {
const { info } = tokens[idx];
if (tokens[idx].nesting === 1) {
// opening tag
return `<div class="notice notice-${md.utils.escapeHtml(info)}">\n`;
} else {
// closing tag
return "</div>\n";
}
},
});
}