UNPKG

piral-react

Version:

Plugin for integrating React 16+ components in Piral.

28 lines 867 B
import { render } from 'react-dom'; import { createElement, Component } from 'react'; // tslint:disable-next-line:no-null-keyword export const anyPropType = () => null; export function mountReact(el, root, props, ctx = {}) { const contextTypes = {}; ['piral', ...Object.keys(ctx)].forEach((key) => { contextTypes[key] = anyPropType; }); class Provider extends Component { getChildContext() { return { piral: props.piral, ...ctx, }; } render() { return this.props.children; } } Provider.childContextTypes = contextTypes; render(createElement(Provider, {}, createElement(root, props)), el); } export function unmountReact(el) { // tslint:disable-next-line:no-null-keyword render(null, el); } //# sourceMappingURL=mount.js.map