feat(markdown): support html, jsx in code blocks

This commit is contained in:
Elian Doran 2026-01-03 22:44:48 +02:00
parent 75952563e4
commit 20ae1f844b
No known key found for this signature in database
3 changed files with 14 additions and 8 deletions

View File

@ -1,6 +1,7 @@
import { describe, it, expect } from "vitest";
import markdownExportService from "./markdown.js";
import { trimIndentation } from "@triliumnext/commons";
import { describe, expect,it } from "vitest";
import markdownExportService from "./markdown.js";
describe("Markdown export", () => {
@ -10,7 +11,9 @@ describe("Markdown export", () => {
"language-text-x-diff": "diff",
"language-application-javascript-env-frontend": "javascript",
"language-application-javascript-env-backend": "javascript",
"language-text-x-asm-mips": "mips"
"language-text-x-asm-mips": "mips",
"language-text-jsx": "jsx",
"language-text-html": "html"
};
for (const [ input, output ] of Object.entries(conversionTable)) {

View File

@ -1,5 +1,6 @@
import { describe, it, expect } from "vitest";
import { trimIndentation } from "@triliumnext/commons";
import { describe, expect, it } from "vitest";
import markdownService from "./markdown.js";
describe("markdown", () => {
@ -9,7 +10,9 @@ describe("markdown", () => {
"diff": "language-text-x-diff",
"javascript": "language-application-javascript-env-backend",
"css": "language-text-css",
"mips": "language-text-x-asm-mips"
"mips": "language-text-x-asm-mips",
"jsx": "language-text-jsx",
"html": "language-text-html"
};
for (const [ input, output ] of Object.entries(conversionTable)) {
@ -53,7 +56,7 @@ describe("markdown", () => {
const result = markdownService.renderToHtml(trimIndentation`\
# ${title}
Hi there
`, title)
`, title);
expect(result).toBe(`<p>Hi there</p>`);
}
});

View File

@ -92,7 +92,7 @@ const MIME_TYPES_DICT_RAW = [
{ title: "Haskell (Literate)", mime: "text/x-literate-haskell" },
{ title: "Haskell", mime: "text/x-haskell", mdLanguageCode: "haskell", default: true },
{ title: "Haxe", mime: "text/x-haxe", mdLanguageCode: "haxe" },
{ title: "HTML", mime: "text/html", mdLanguageCode: "xml", default: true, icon: "bx bxl-html5" },
{ title: "HTML", mime: "text/html", mdLanguageCode: "html", default: true, icon: "bx bxl-html5" },
{ title: "HTTP", mime: "message/http", mdLanguageCode: "http", default: true },
{ title: "HXML", mime: "text/x-hxml" },
{ title: "IDL", mime: "text/x-idl" },
@ -103,7 +103,7 @@ const MIME_TYPES_DICT_RAW = [
{ title: "JS frontend", mime: "application/javascript;env=frontend", mdLanguageCode: "javascript", default: true, icon: "bx bxl-javascript" },
{ title: "JSON-LD", mime: "application/ld+json", mdLanguageCode: "json", icon: "bx bxs-file-json" },
{ title: "JSON", mime: "application/json", mdLanguageCode: "json", default: true, icon: "bx bxs-file-json" },
{ title: "JSX", mime: "text/jsx", mdLanguageCode: "javascript", default: true },
{ title: "JSX", mime: "text/jsx", mdLanguageCode: "jsx", default: true },
{ title: "Julia", mime: "text/x-julia", mdLanguageCode: "julia" },
{ title: "Kotlin", mime: "text/x-kotlin", mdLanguageCode: "kotlin", default: true },
{ title: "KDL", mime: "application/vnd.kdl", mdLanguageCode: "kdl" },