import React from 'react'; import DOMPurify from 'dompurify'; interface ReceivedProps { html: string; tag?: string; key?: any; className?: string; } // Needed because of https://github.com/microsoft/tslint-microsoft-contrib/issues/339 type Props = ReceivedProps; export const SessionHtmlRenderer: React.SFC = ({ tag = 'div', key, html, className }) => { const clean = DOMPurify.sanitize(html, { USE_PROFILES: { html: true }, FORBID_ATTR: ['script'], }); return React.createElement(tag, { key, className, dangerouslySetInnerHTML: { __html: clean }, }); };