UNPKG

@pantheon-systems/design-toolkit-react

Version:
41 lines (37 loc) 1.22 kB
import Prism from 'prismjs/components/prism-core'; import 'prismjs/components/prism-bash'; import 'prismjs/components/prism-markup'; import 'prismjs/components/prism-css'; import 'prismjs/components/prism-clike'; import 'prismjs/components/prism-javascript'; import 'prismjs/themes/prism-okaidia.css'; import PropTypes from 'prop-types'; import { useRef, useEffect } from 'react'; import { jsx } from 'react/jsx-runtime'; var CodeInline = function CodeInline(_ref) { var code = _ref.code, language = _ref.language; var codeRef = useRef(); useEffect(function () { if (codeRef && codeRef.current) { Prism.highlightElement(codeRef.current); } }, [codeRef]); return /*#__PURE__*/jsx("code", { className: "language-".concat(language), ref: codeRef, children: code.trim() }); }; CodeInline.defaultProps = { language: 'js' }; // language types: if more are added, you must also adjust the babel config // https://prismjs.com/#supported-languages CodeInline.propTypes = { code: PropTypes.string.isRequired, language: PropTypes.oneOf(['bash', 'css', 'html', 'js']) }; var CodeInline$1 = CodeInline; export { CodeInline$1 as default }; //# sourceMappingURL=CodeInline.js.map