mirror of
https://github.com/vrtmrz/obsidian-livesync.git
synced 2026-07-21 03:56:01 +00:00
22 lines
674 B
TypeScript
22 lines
674 B
TypeScript
import MarkdownIt from "markdown-it";
|
|
|
|
const markdownRenderer = new MarkdownIt({
|
|
html: false,
|
|
breaks: true,
|
|
linkify: true,
|
|
});
|
|
|
|
const defaultLinkOpenRenderer =
|
|
markdownRenderer.renderer.rules.link_open ??
|
|
((tokens, idx, options, _env, self) => self.renderToken(tokens, idx, options));
|
|
|
|
markdownRenderer.renderer.rules.link_open = (tokens, idx, options, env, self) => {
|
|
tokens[idx].attrSet("target", "_blank");
|
|
tokens[idx].attrSet("rel", "noopener noreferrer");
|
|
return defaultLinkOpenRenderer(tokens, idx, options, env, self);
|
|
};
|
|
|
|
export function renderMessageMarkdown(message: string): string {
|
|
return markdownRenderer.render(message);
|
|
}
|