UNPKG

@helldoc/core

Version:
27 lines (26 loc) 1.18 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; exports.__esModule = true; var markdown_1 = __importDefault(require("../markdown")); var matter_1 = require("../util/matter"); function MarkdownLoader(source) { return markdownToReact(source); } exports["default"] = MarkdownLoader; function markdownToReact(source) { var markdown = markdown_1["default"](); var frontmatter = matter_1.parseFrontmatter(source); var markdownHTML = JSON.stringify(markdown(frontmatter.content)); var importDeps = [ "import React from 'react';", "import LayoutManager from '#hell/components/LayoutManager'" ].join("\n"); var htmlToReact = function (html) { return ("\n export default function () {\n return (\n <LayoutManager renderContent={\n () => <div className='markdown-body section' dangerouslySetInnerHTML={{ __html: " + html + " }}></div>\n } />\n );\n }\n ").trim(); }; var res = [importDeps, htmlToReact(markdownHTML)].join("\n"); return res; } exports.markdownToReact = markdownToReact;