mirror of
https://github.com/Stremio/stremio-web.git
synced 2026-04-21 11:42:05 +00:00
forward ref to modal
This commit is contained in:
parent
11b69be420
commit
8d8dbc6a34
1 changed files with 5 additions and 3 deletions
|
|
@ -5,15 +5,17 @@ const classnames = require('classnames');
|
||||||
const FocusLock = require('react-focus-lock').default;
|
const FocusLock = require('react-focus-lock').default;
|
||||||
const { useModalsContainer } = require('../ModalsContainerContext');
|
const { useModalsContainer } = require('../ModalsContainerContext');
|
||||||
|
|
||||||
const Modal = ({ className, autoFocus, disabled, children, ...props }) => {
|
const Modal = React.forwardRef(({ className, autoFocus, disabled, children, ...props }, ref) => {
|
||||||
const modalsContainer = useModalsContainer();
|
const modalsContainer = useModalsContainer();
|
||||||
return ReactDOM.createPortal(
|
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}
|
{children}
|
||||||
</FocusLock>,
|
</FocusLock>,
|
||||||
modalsContainer
|
modalsContainer
|
||||||
);
|
);
|
||||||
};
|
});
|
||||||
|
|
||||||
|
Modal.displayName = 'Modal';
|
||||||
|
|
||||||
Modal.propTypes = {
|
Modal.propTypes = {
|
||||||
className: PropTypes.string,
|
className: PropTypes.string,
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue