SlideRenderer.tsx 648 B

1234567891011121314151617181920212223242526
  1. import type { JSX } from 'react';
  2. import type { Options as ReactMarkdownOptions } from 'react-markdown';
  3. import { usePresentationViewOptions } from '~/stores/renderer';
  4. import { Slides } from '../Presentation/Slides';
  5. type SlideRendererProps = {
  6. markdown: string;
  7. marp?: boolean;
  8. };
  9. export const SlideRenderer = (props: SlideRendererProps): JSX.Element => {
  10. const { markdown, marp = false } = props;
  11. const { data: rendererOptions } = usePresentationViewOptions();
  12. return (
  13. <Slides
  14. hasMarpFlag={marp}
  15. options={{ rendererOptions: rendererOptions as ReactMarkdownOptions }}
  16. >
  17. {markdown}
  18. </Slides>
  19. );
  20. };