@datacamp/waffles-markdown
Version:
> A component to render markdown as HTML - without using innerHTML
37 lines (35 loc) • 1.16 kB
JavaScript
import _pt from "prop-types";
import { alternateComponents, Emphasis, List, Paragraph, Strong } from '@datacamp/waffles-text';
import React from 'react';
import ReactMarkdown from 'react-markdown';
import { jsx as ___EmotionJSX } from "@emotion/react";
var AlternateCode = alternateComponents.AlternateCode,
AlternateCodeBlock = alternateComponents.AlternateCodeBlock,
AlternateHeading = alternateComponents.AlternateHeading,
AlternateListItem = alternateComponents.AlternateListItem,
PlainString = alternateComponents.PlainString;
var renderers = {
code: AlternateCodeBlock,
emphasis: Emphasis,
heading: AlternateHeading,
inlineCode: AlternateCode,
list: List,
listItem: AlternateListItem,
paragraph: Paragraph,
strong: Strong,
text: PlainString
};
var Markdown = function Markdown(props) {
var className = props.className,
source = props.source;
return ___EmotionJSX(ReactMarkdown, {
className: className,
renderers: renderers,
source: source
});
};
Markdown.propTypes = process.env.NODE_ENV !== "production" ? {
className: _pt.string,
source: _pt.string.isRequired
} : {};
export default Markdown;