forward ref to modal

This commit is contained in:
nklhrstv 2020-02-13 18:57:47 +02:00
parent 11b69be420
commit 8d8dbc6a34

View file

@ -5,15 +5,17 @@ const classnames = require('classnames');
const FocusLock = require('react-focus-lock').default;
const { useModalsContainer } = require('../ModalsContainerContext');
const Modal = ({ className, autoFocus, disabled, children, ...props }) => {
const Modal = React.forwardRef(({ className, autoFocus, disabled, children, ...props }, ref) => {
const modalsContainer = useModalsContainer();
return ReactDOM.createPortal(
<FocusLock className={classnames(className, 'modal-container')} autoFocus={!!autoFocus} disabled={!!disabled} lockProps={props}>
<FocusLock ref={ref} className={classnames(className, 'modal-container')} autoFocus={!!autoFocus} disabled={!!disabled} lockProps={props}>
{children}
</FocusLock>,
modalsContainer
);
};
});
Modal.displayName = 'Modal';
Modal.propTypes = {
className: PropTypes.string,