Files
talk/src/core/client/stream/components/HTMLContent.tsx
T
Wyatt JohnsonandKiwi 6f538d3235 [next] DOM Purification (#2115)
* feat: added purify + linkify + better link detection

* fix: linting + tests

* chore: refactor RequireProperty Type
2018-12-13 00:14:29 +01:00

29 lines
626 B
TypeScript

import cn from "classnames";
import React, { StatelessComponent } from "react";
import { createPurify } from "talk-common/utils/purify";
import styles from "./HTMLContent.css";
/**
* Create a purify instance that will be used to handle HTML content.
*/
const purify = createPurify(window, false);
interface HTMLContentProps {
children: string;
className?: string;
}
const HTMLContent: StatelessComponent<HTMLContentProps> = ({
children,
className,
}) => (
<div
className={cn(styles.root, className)}
dangerouslySetInnerHTML={{ __html: purify.sanitize(children) }}
/>
);
export default HTMLContent;