'use client'; import { useContext } from 'react'; import { setRef } from '../../../lib/utils'; import type { ModalOverlayProps } from '../../ModalOverlay/ModalOverlay'; import { ModalRootOverlayContext } from '../ModalRootContext'; import styles from './VisuallyHiddenModalOverlay.module.css'; export type VisuallyHiddenModalOverlayProps = ModalOverlayProps; /** * `ModalRoot` выставляет общий `ModalOverlay` для всех потомков, и чтобы не нарушить логику * в `ModalPage` и `ModalCard`, в них прокидывается данный компонент, который визуально не виден, * но при этом на нём сохраняется возможность взаимодействия. * * В `getRooRef` отдаёт ссылку на DOM общего `ModalOverlay`. * * @private */ export const VisuallyHiddenModalOverlay = ({ visible: visibleExcluded, position: positionExcluded, getRootRef, disableOpenAnimation, disableCloseAnimation, ...restProps }: VisuallyHiddenModalOverlayProps) => { const ref = useContext(ModalRootOverlayContext); return (
); };