diff options
author | Quentin Gliech <quentingliech@gmail.com> | 2020-02-04 22:03:21 +0100 |
---|---|---|
committer | Quentin Gliech <quentingliech@gmail.com> | 2020-02-11 20:54:37 +0100 |
commit | 022f510369688084af5bcf314a97fd332d7ee265 (patch) | |
tree | 0adf3ac82d487712f095a7692b51aaefb680be72 /webui/src/Content.tsx | |
parent | 6a502c145bd8f2e2e1a9c0b103c11f0433c60737 (diff) | |
download | git-bug-022f510369688084af5bcf314a97fd332d7ee265.tar.gz |
webui: convert more things to typescript
Diffstat (limited to 'webui/src/Content.tsx')
-rw-r--r-- | webui/src/Content.tsx | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/webui/src/Content.tsx b/webui/src/Content.tsx new file mode 100644 index 00000000..9683f478 --- /dev/null +++ b/webui/src/Content.tsx @@ -0,0 +1,25 @@ +import unified from 'unified'; +import parse from 'remark-parse'; +import html from 'remark-html'; +import remark2react from 'remark-react'; +import { ReactNode } from 'react'; +import ImageTag from './tag/ImageTag'; +import PreTag from './tag/PreTag'; + +type Props = { markdown: string }; +const Content = ({ markdown }: Props) => { + const processor = unified() + .use(parse) + .use(html) + .use(remark2react, { + remarkReactComponents: { + img: ImageTag, + pre: PreTag, + }, + }); + + const contents: ReactNode = processor.processSync(markdown).contents; + return contents; +}; + +export default Content; |