fix marked

This commit is contained in:
Philipinho
2026-03-28 21:52:28 +00:00
parent b9d58081b8
commit 59c5f25502
@@ -5,18 +5,23 @@ import { mathInlineExtension } from "./math-inline.marked";
marked.use({ marked.use({
renderer: { renderer: {
// @ts-ignore list({ ordered, start, items }) {
list(body: string, isOrdered: boolean, start: number) { let body = "";
if (isOrdered) { for (const item of items) {
const startAttr = start !== 1 ? ` start="${start}"` : ""; body += this.listitem(item);
return `<ol ${startAttr}>\n${body}</ol>\n`;
} }
const dataType = body.includes(`<input`) ? ' data-type="taskList"' : ""; if (ordered) {
const startAttr = start !== 1 ? ` start="${start}"` : "";
return `<ol${startAttr}>\n${body}</ol>\n`;
}
const isTaskList = items.some((item) => item.task);
const dataType = isTaskList ? ' data-type="taskList"' : "";
return `<ul${dataType}>\n${body}</ul>\n`; return `<ul${dataType}>\n${body}</ul>\n`;
}, },
// @ts-ignore listitem({ tokens, task: isTask, checked: isChecked }) {
listitem({ text, raw, task: isTask, checked: isChecked }): string { const text = this.parser.parse(tokens);
if (!isTask) { if (!isTask) {
return `<li>${text}</li>\n`; return `<li>${text}</li>\n`;
} }