@vandrei977/react-native-render-html
Version:
The hackable, full-featured Open Source HTML rendering solution for React Native.
53 lines (52 loc) • 1.89 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = RenderHTML;
var _react = _interopRequireDefault(require("react"));
var _RenderHTMLDebug = _interopRequireDefault(require("./RenderHTMLDebug"));
var _TRenderEngineProvider = _interopRequireDefault(require("./TRenderEngineProvider"));
var _RenderHTMLConfigProvider = _interopRequireDefault(require("./RenderHTMLConfigProvider"));
var _RenderHTMLSource = _interopRequireDefault(require("./RenderHTMLSource"));
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
/**
* Render HTML text in native views!
*
* @remarks If your application uses many instances of this component, you
* should share the render engine across those instances via the
* {@link TRenderEngineProvider} and {@link RenderHTMLConfigProvider}
* components, and render the HTML with {@link RenderHTMLSource} instead. That
* should significantly increase performance.
*
* @warning It should never be a child of a React Native `Text` element, as the
* layout will break.
*
* @public
*/function RenderHTML(props) {
const {
source,
onHTMLLoaded,
onTTreeChange,
onDocumentMetadataLoaded,
contentWidth,
...otherProps
} = props;
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_RenderHTMLDebug.default, {
...props,
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TRenderEngineProvider.default, {
...otherProps,
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_RenderHTMLConfigProvider.default, {
...otherProps,
children: /*#__PURE__*/_react.default.createElement(_RenderHTMLSource.default, {
source,
onHTMLLoaded,
onTTreeChange,
onDocumentMetadataLoaded,
contentWidth
})
})
})
});
}
//# sourceMappingURL=RenderHTML.js.map