mirror of
https://github.com/alexmickelson/canvasManagement.git
synced 2026-03-26 07:38:33 -06:00
added catches around markdown to html, might throw exception if image error
This commit is contained in:
42
src/components/MarkdownDisplay.tsx
Normal file
42
src/components/MarkdownDisplay.tsx
Normal file
@@ -0,0 +1,42 @@
|
||||
import { useLocalCourseSettingsQuery } from "@/hooks/localCourse/localCoursesHooks";
|
||||
import { SuspenseAndErrorHandling } from "./SuspenseAndErrorHandling";
|
||||
import { markdownToHTMLSafe } from "@/services/htmlMarkdownUtils";
|
||||
import { LocalCourseSettings } from "@/models/local/localCourseSettings";
|
||||
|
||||
export default function MarkdownDisplay({
|
||||
markdown,
|
||||
className = "",
|
||||
}: {
|
||||
markdown: string;
|
||||
className?: string;
|
||||
}) {
|
||||
const [settings] = useLocalCourseSettingsQuery();
|
||||
return (
|
||||
<SuspenseAndErrorHandling>
|
||||
<DangerousInnerMarkdown
|
||||
markdown={markdown}
|
||||
settings={settings}
|
||||
className={className}
|
||||
/>
|
||||
</SuspenseAndErrorHandling>
|
||||
);
|
||||
}
|
||||
|
||||
function DangerousInnerMarkdown({
|
||||
markdown,
|
||||
settings,
|
||||
className,
|
||||
}: {
|
||||
markdown: string;
|
||||
settings: LocalCourseSettings;
|
||||
className: string;
|
||||
}) {
|
||||
return (
|
||||
<div
|
||||
className={"markdownPreview " + className}
|
||||
dangerouslySetInnerHTML={{
|
||||
__html: markdownToHTMLSafe(markdown, settings),
|
||||
}}
|
||||
></div>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user