mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2026-04-17 14:59:16 +02:00
51 lines
1.3 KiB
TypeScript
51 lines
1.3 KiB
TypeScript
import React from "react";
|
|
import ReactMarkdown from "react-markdown";
|
|
import { TableHead } from "@mui/material";
|
|
import remarkGfm from "remark-gfm";
|
|
import { h1, h2, h3, h4, h5, h6, li, Td, Th, table, tr, Blockquote, p } from "./components";
|
|
import { code, Pre } from "./code";
|
|
import { A } from "./a";
|
|
import remarkMath from "remark-math";
|
|
import rehypeMathjax from "rehype-mathjax/svg";
|
|
import rehypeRaw from "rehype-raw";
|
|
import { FilePath } from "../../Paths/FilePath";
|
|
import { getPage } from "../../Documentation/root";
|
|
import { DocImages } from "../../Documentation/pages";
|
|
|
|
export function MD({ pageFilePath }: { pageFilePath: FilePath }): React.ReactElement {
|
|
const pageContent = getPage(pageFilePath);
|
|
|
|
return (
|
|
<ReactMarkdown
|
|
components={{
|
|
h1: h1,
|
|
h2: h2,
|
|
h3: h3,
|
|
h4: h4,
|
|
h5: h5,
|
|
h6: h6,
|
|
pre: Pre,
|
|
p: p,
|
|
code: code,
|
|
li: li,
|
|
|
|
th: Th,
|
|
td: Td,
|
|
table: table,
|
|
thead: TableHead,
|
|
tr: tr,
|
|
blockquote: Blockquote,
|
|
a: A,
|
|
}}
|
|
remarkPlugins={[remarkGfm, remarkMath]}
|
|
// Use rehypeRaw to support HTML content in NS API docs.
|
|
rehypePlugins={[rehypeMathjax, rehypeRaw]}
|
|
transformImageUri={(__src, alt) => {
|
|
return DocImages[alt];
|
|
}}
|
|
>
|
|
{pageContent}
|
|
</ReactMarkdown>
|
|
);
|
|
}
|