@20minutes/draft-convert

Forked version:
- with deps up to date
- CI on GitHub Actions
- new
validateHTML function parameter for convertToHTML
For the official readme, check the official project.
validateHTML (option of convertToHTML)
validateHTML take the final HTML of the current block as parameter and must return a boolean saying if every thing is ok.
We do have some custom entity/block generation and sometimes, the produced HTML might be wrong. So we validate it using ReactDomServer, like:
import ReactDOMServer from 'react-dom/server'
import { Parser as HtmlToReactParser } from 'html-to-react'
const html = convertToHTML({
validateHTML: (html) => {
try {
const htmlToReactParser = HtmlToReactParser()
ReactDOMServer.renderToString(htmlToReactParser.parse(html))
return true
} catch (e) {
return false
}
})(editorState.getCurrentContent());