aboutsummaryrefslogtreecommitdiff
path: root/src/components/CodeBlock.js
diff options
context:
space:
mode:
authorJ08nY2020-08-13 21:32:53 +0200
committerJ08nY2020-08-13 21:32:53 +0200
commit3fdc84205fd0b7659450204fb9393815e97207c7 (patch)
treecd7a9bd131622890f66a10cde60fd71cad678888 /src/components/CodeBlock.js
parente4fa4e7ef5a6fa310758821274dd6c8b59190a7e (diff)
downloadstd-curves-3fdc84205fd0b7659450204fb9393815e97207c7.tar.gz
std-curves-3fdc84205fd0b7659450204fb9393815e97207c7.tar.zst
std-curves-3fdc84205fd0b7659450204fb9393815e97207c7.zip
Add fonts and code colorscheme.
Diffstat (limited to 'src/components/CodeBlock.js')
-rw-r--r--src/components/CodeBlock.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/components/CodeBlock.js b/src/components/CodeBlock.js
new file mode 100644
index 0000000..d496779
--- /dev/null
+++ b/src/components/CodeBlock.js
@@ -0,0 +1,22 @@
+/** @jsx jsx */
+import {jsx, Styled} from "theme-ui";
+import Highlight, { defaultProps } from "prism-react-renderer";
+import theme from '../codeTheme';
+
+function CodeBlock({code, language}) {
+ return <Highlight {...defaultProps} theme={theme} code={code} language={language}>
+ {({ className, style, tokens, getLineProps, getTokenProps }) => (
+ <Styled.pre className={className} style={style}>
+ {tokens.map((line, i) => (
+ <div {...getLineProps({ line, key: i })}>
+ {line.map((token, key) => (
+ <span {...getTokenProps({ token, key })} />
+ ))}
+ </div>
+ ))}
+ </Styled.pre>
+ )}
+ </Highlight>
+}
+
+export default CodeBlock \ No newline at end of file