stremio-web/src/router/ModalsContainerContext/ModalsContainerProvider.js
2019-08-05 21:30:51 +03:00

23 lines
771 B
JavaScript

const React = require('react');
const PropTypes = require('prop-types');
const ModalsContainerContext = require('./ModalsContainerContext');
const ModalsContainerProvider = ({ containerClassName, children }) => {
const [container, setContainer] = React.useState(null);
return (
<ModalsContainerContext.Provider value={container}>
{container instanceof HTMLElement ? children : null}
<div ref={setContainer} className={containerClassName} />
</ModalsContainerContext.Provider>
);
};
ModalsContainerProvider.propTypes = {
containerClassName: PropTypes.string,
children: PropTypes.oneOfType([
PropTypes.arrayOf(PropTypes.node),
PropTypes.node
])
};
module.exports = ModalsContainerProvider;