Jelajahi Sumber

add mdast-util-frontmatter

reiji-h 2 tahun lalu
induk
melakukan
1105f16711

+ 1 - 0
apps/app/package.json

@@ -127,6 +127,7 @@
     "lucene-query-parser": "^1.2.0",
     "markdown-table": "^1.1.1",
     "md5": "^2.2.1",
+    "mdast-util-frontmatter": "^1.0.1",
     "mdast-util-to-markdown": "^1.5.0",
     "mermaid": "^10.1.0",
     "method-override": "^3.0.0",

+ 9 - 7
packages/presentation/src/services/renderer/remark-slides.ts

@@ -1,7 +1,7 @@
 import type { Schema as SanitizeOption } from 'hast-util-sanitize';
 import type { Root } from 'mdast';
+import { frontmatterToMarkdown } from 'mdast-util-frontmatter';
 import { toMarkdown } from 'mdast-util-to-markdown';
-import { handleClientScriptLoad } from 'next/script';
 import type { Plugin } from 'unified';
 import type { Node } from 'unist';
 import { visit } from 'unist-util-visit';
@@ -32,11 +32,9 @@ const rewriteNode = (tree: Node, node: Node) => {
     data.hProperties = {
       hasMarpFlag: true,
       children: toMarkdown(tree as Root, {
-        handlers: {
-          yaml: (node: string, parent: Node, state: State: info: Info ) => {
-
-          }
-        },
+        extensions: [
+          frontmatterToMarkdown(['yaml']),
+        ],
       }),
     };
   }
@@ -44,7 +42,11 @@ const rewriteNode = (tree: Node, node: Node) => {
     data.dName = 'slide';
     data.hProperties = {
       hasMarpFlag: false,
-      children: toMarkdown(tree as Root),
+      children: toMarkdown(tree as Root, {
+        extensions: [
+          frontmatterToMarkdown(['yaml']),
+        ],
+      }),
     };
   }
 };

+ 1 - 1
yarn.lock

@@ -11625,7 +11625,7 @@ mdast-util-from-markdown@^1.0.0:
     unist-util-stringify-position "^3.0.0"
     uvu "^0.5.0"
 
-mdast-util-frontmatter@^1.0.0:
+mdast-util-frontmatter@^1.0.0, mdast-util-frontmatter@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/mdast-util-frontmatter/-/mdast-util-frontmatter-1.0.1.tgz#79c46d7414eb9d3acabe801ee4a70a70b75e5af1"
   integrity sha512-JjA2OjxRqAa8wEG8hloD0uTU0kdn8kbtOWpPP94NBkfAlbxn4S8gCGf/9DwFtEeGPXrDcNXdiDjVaRdUFqYokw==