fix markdown code block without language attribute

This commit is contained in:
Sebastian Sdorra
2019-10-25 15:06:34 +02:00
parent 3522daae21
commit 162dbc421f
5 changed files with 69 additions and 3 deletions

View File

@@ -5,14 +5,29 @@ import { LightAsync as ReactSyntaxHighlighter } from "react-syntax-highlighter";
import { arduinoLight } from "react-syntax-highlighter/dist/cjs/styles/hljs";
type Props = {
language: string;
language?: string;
value: string;
};
const defaultLanguage = "text";
class SyntaxHighlighter extends React.Component<Props> {
static defaultProps: Partial<Props> = {
language: defaultLanguage
};
getLanguage = () => {
const { language } = this.props;
if (language) {
return language;
}
return defaultLanguage;
};
render() {
const language = this.getLanguage();
return (
<ReactSyntaxHighlighter showLineNumbers={false} language={this.props.language} style={arduinoLight}>
<ReactSyntaxHighlighter showLineNumbers={false} language={language} style={arduinoLight}>
{this.props.value}
</ReactSyntaxHighlighter>
);