aboutsummaryrefslogtreecommitdiff
path: root/frontend/src/components/renderers
diff options
context:
space:
mode:
authorJacky Zhao <[email protected]>2020-05-28 19:07:21 -0700
committerGitHub <[email protected]>2020-05-28 19:07:21 -0700
commit4b1df09664793d70857b489119915be70f531da0 (patch)
tree7eebdd82b4a58c5c0d96455e257757da1e1c73da /frontend/src/components/renderers
parentMerge pull request #42 from jackyzha0/analytics (diff)
parenty helper function when no helper function do (diff)
downloadctrl-v-4b1df09664793d70857b489119915be70f531da0.tar.xz
ctrl-v-4b1df09664793d70857b489119915be70f531da0.zip
Merge pull request #43 from jackyzha0/markdown
Markdown
Diffstat (limited to 'frontend/src/components/renderers')
-rw-r--r--frontend/src/components/renderers/Markdown.js19
-rw-r--r--frontend/src/components/renderers/RenderDispatch.js15
2 files changed, 29 insertions, 5 deletions
diff --git a/frontend/src/components/renderers/Markdown.js b/frontend/src/components/renderers/Markdown.js
new file mode 100644
index 0000000..b1d7905
--- /dev/null
+++ b/frontend/src/components/renderers/Markdown.js
@@ -0,0 +1,19 @@
+import React from 'react';
+import marked from 'marked';
+import styled from 'styled-components'
+
+const Content = styled.div`
+ max-width: 100%;
+ overflow-wrap: anywhere;
+ img {
+ max-width: 100%;
+ }
+`
+const Markdown = (props) => {
+ const dangerousHtml = {
+ __html: marked(props.content)
+ }
+ return <Content dangerouslySetInnerHTML={dangerousHtml} />;
+}
+
+export default Markdown \ No newline at end of file
diff --git a/frontend/src/components/renderers/RenderDispatch.js b/frontend/src/components/renderers/RenderDispatch.js
index 892c649..35fdc54 100644
--- a/frontend/src/components/renderers/RenderDispatch.js
+++ b/frontend/src/components/renderers/RenderDispatch.js
@@ -1,9 +1,10 @@
import React from 'react';
import styled from 'styled-components'
import Latex from './Latex'
+import Markdown from './Markdown'
import CodeRenderer from './Code'
-const LatexWrapper = styled.div`
+const RenderWrapper = styled.div`
padding: 2em;
`
@@ -11,10 +12,14 @@ const RenderDispatch = React.forwardRef((props, ref) => {
switch (props.language) {
case 'latex':
return (
- <LatexWrapper ref={ref}>
- <Latex
- content={props.content} />
- </LatexWrapper>)
+ <RenderWrapper ref={ref}>
+ <Latex content={props.content} />
+ </RenderWrapper>)
+ case 'markdown':
+ return (
+ <RenderWrapper>
+ <Markdown content={props.content} />
+ </RenderWrapper>)
default:
return (
<CodeRenderer