react-micro-modal
Version:
React accessible micro modal component
20 lines (19 loc) • 1.27 kB
TypeScript
import React from 'react';
import { ModalPortalProps } from './Portal';
export declare type MicroModalProps = Pick<ModalPortalProps, 'parent'> & {
children: (handleClose: () => void) => React.ReactNode;
trigger?: (handleOpen: () => void) => React.ReactNode;
handleClose?: () => void;
open?: boolean;
openInitially?: boolean;
closeOnAnimationEnd?: boolean;
disableFirstElementFocus?: boolean;
closeOnOverlayClick?: boolean;
closeOnEscapePress?: boolean;
overrides?: {
Root?: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
Overlay?: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
Dialog?: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
};
};
export declare const MicroModal: ({ trigger, children, open: isOpenParam, handleClose: handleCloseParam, parent: parentSelector, openInitially, closeOnAnimationEnd, closeOnEscapePress, closeOnOverlayClick, disableFirstElementFocus, overrides: { Root: { style: rootStyleOverrides, ...rootOverrides }, Overlay: { style: overlayStyleOverrides, ...overlayOverrides }, Dialog: { style: dialogStyleOverrides, ...dialogOverrides }, }, }: MicroModalProps) => JSX.Element;