code.tsx 656 B

1234567891011121314151617181920
  1. import * as React from 'react';
  2. import { PropsWithChildren } from 'react';
  3. import CodeHighlight from "../../codeHighlight";
  4. import { nth } from 'lodash';
  5. import { cssClasses } from "@douyinfe/semi-foundation/markdownRender/constants";
  6. const pre = (props: PropsWithChildren<{ className: string }>) => {
  7. const language = nth(props.className?.split("-"), -1);
  8. if (language) {
  9. return <CodeHighlight code={props.children as string}
  10. language={language} lineNumber={true}/>;
  11. } else {
  12. return <span className={`${cssClasses.PREFIX}-simple-code`}>
  13. {props.children}
  14. </span>;
  15. }
  16. };
  17. export default pre;