diff options
| author | Ian Mah <[email protected]> | 2020-05-28 17:54:48 -0700 |
|---|---|---|
| committer | Ian Mah <[email protected]> | 2020-05-28 17:54:48 -0700 |
| commit | 59a3af0ac9e90396123e6a40c154962cc80ddb6a (patch) | |
| tree | 1b9f7bf94cc0e75594ed6885fbdaf94d7d8d876b /frontend/src/components | |
| parent | Merge pull request #42 from jackyzha0/analytics (diff) | |
| download | ctrl-v-59a3af0ac9e90396123e6a40c154962cc80ddb6a.tar.xz ctrl-v-59a3af0ac9e90396123e6a40c154962cc80ddb6a.zip | |
Add markdown preview
Diffstat (limited to 'frontend/src/components')
| -rw-r--r-- | frontend/src/components/NewPaste.js | 8 | ||||
| -rw-r--r-- | frontend/src/components/renderers/Markdown.js | 14 |
2 files changed, 22 insertions, 0 deletions
diff --git a/frontend/src/components/NewPaste.js b/frontend/src/components/NewPaste.js index f332be0..adb5240 100644 --- a/frontend/src/components/NewPaste.js +++ b/frontend/src/components/NewPaste.js @@ -8,6 +8,7 @@ import { LANGS } from './renderers/Code' import styled from 'styled-components' import CodeRenderer from './renderers/Code' import Latex from './renderers/Latex' +import Markdown from './renderers/Markdown' const Button = styled.button` margin-right: 0 !important; @@ -126,6 +127,13 @@ class NewPaste extends React.Component { content={this.state.content} /> </LatexWrapper> break + case 'markdown': + preview = + <LatexWrapper> + <Markdown + content={this.state.content} /> + </LatexWrapper> + break default: preview = <CodeRenderer diff --git a/frontend/src/components/renderers/Markdown.js b/frontend/src/components/renderers/Markdown.js new file mode 100644 index 0000000..cbc8dad --- /dev/null +++ b/frontend/src/components/renderers/Markdown.js @@ -0,0 +1,14 @@ +import React from 'react'; +import marked from 'marked'; + +const getHtml = (markdown) => { + const rawMarkup = marked(markdown, {sanitize: true}) + return {__html: rawMarkup} +} + +const Markdown = (props) => { + const dangerousHtml = getHtml(props.content) + return <div dangerouslySetInnerHTML={dangerousHtml} />; +} + +export default Markdown
\ No newline at end of file |