Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | 1x 1x 1x 1x | import {forwardRef, useEffect} from 'react' import PropTypes from 'prop-types' import {BASE_CLASS} from './settings.js' const DRAWER_OVERLAY_CLASS = `${BASE_CLASS}-overlay` const DrawerOverlay = forwardRef(({isVisible, target, children, ...props}, forwardedRef) => { useEffect(() => { if (target !== undefined) { target.current.style.position = 'relative' target.current.style.overflow = 'hidden' } }, [target]) return isVisible ? ( <div ref={forwardedRef} className={DRAWER_OVERLAY_CLASS} {...props}> {children} </div> ) : null }) DrawerOverlay.propTypes = { /** element ref which overlays covers **/ target: PropTypes.object, /** inner content **/ children: PropTypes.node, /** show-hide overlay **/ isVisible: PropTypes.bool, /** click handler **/ onClick: PropTypes.func } DrawerOverlay.displayName = 'MoleculeDrawerOverlay' export default DrawerOverlay |