dir ? | string | undefined | — | — |
hidden ? | boolean | undefined | — | — |
inert ? | boolean | undefined | — | — |
isDismissable ? | boolean | undefined | false | Whether to close the modal when the user interacts outside it. |
isEntering ? | boolean | undefined | — | Whether the modal is currently performing an entry animation. |
isExiting ? | boolean | undefined | — | Whether the modal is currently performing an exit animation. |
isKeyboardDismissDisabled ? | boolean | undefined | false | Whether pressing the escape key to close the modal should be disabled. |
lang ? | string | undefined | — | — |
onAnimationEnd ? | AnimationEventHandler<HTMLDivElement> | undefined | — | — |
onAnimationEndCapture ? | AnimationEventHandler<HTMLDivElement> | undefined | — | — |
onAnimationIteration ? | AnimationEventHandler<HTMLDivElement> | undefined | — | — |
onAnimationIterationCapture ? | AnimationEventHandler<HTMLDivElement> | undefined | — | — |
onAnimationStart ? | AnimationEventHandler<HTMLDivElement> | undefined | — | — |
onAnimationStartCapture ? | AnimationEventHandler<HTMLDivElement> | undefined | — | — |
onAuxClick ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onAuxClickCapture ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onClick ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onClickCapture ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onContextMenu ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onContextMenuCapture ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onDoubleClick ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onDoubleClickCapture ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onGotPointerCapture ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onGotPointerCaptureCapture ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onLostPointerCapture ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onLostPointerCaptureCapture ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onMouseDown ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onMouseDownCapture ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onMouseEnter ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onMouseLeave ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onMouseMove ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onMouseMoveCapture ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onMouseOut ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onMouseOutCapture ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onMouseOver ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onMouseOverCapture ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onMouseUp ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onMouseUpCapture ? | MouseEventHandler<HTMLDivElement> | undefined | — | — |
onPointerCancel ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerCancelCapture ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerDown ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerDownCapture ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerEnter ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerLeave ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerMove ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerMoveCapture ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerOut ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerOutCapture ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerOver ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerOverCapture ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerUp ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onPointerUpCapture ? | PointerEventHandler<HTMLDivElement> | undefined | — | — |
onScroll ? | UIEventHandler<HTMLDivElement> | undefined | — | — |
onScrollCapture ? | UIEventHandler<HTMLDivElement> | undefined | — | — |
onTouchCancel ? | TouchEventHandler<HTMLDivElement> | undefined | — | — |
onTouchCancelCapture ? | TouchEventHandler<HTMLDivElement> | undefined | — | — |
onTouchEnd ? | TouchEventHandler<HTMLDivElement> | undefined | — | — |
onTouchEndCapture ? | TouchEventHandler<HTMLDivElement> | undefined | — | — |
onTouchMove ? | TouchEventHandler<HTMLDivElement> | undefined | — | — |
onTouchMoveCapture ? | TouchEventHandler<HTMLDivElement> | undefined | — | — |
onTouchStart ? | TouchEventHandler<HTMLDivElement> | undefined | — | — |
onTouchStartCapture ? | TouchEventHandler<HTMLDivElement> | undefined | — | — |
onTransitionCancel ? | TransitionEventHandler<HTMLDivElement> | undefined | — | — |
onTransitionCancelCapture ? | TransitionEventHandler<HTMLDivElement> | undefined | — | — |
onTransitionEnd ? | TransitionEventHandler<HTMLDivElement> | undefined | — | — |
onTransitionEndCapture ? | TransitionEventHandler<HTMLDivElement> | undefined | — | — |
onTransitionRun ? | TransitionEventHandler<HTMLDivElement> | undefined | — | — |
onTransitionRunCapture ? | TransitionEventHandler<HTMLDivElement> | undefined | — | — |
onTransitionStart ? | TransitionEventHandler<HTMLDivElement> | undefined | — | — |
onTransitionStartCapture ? | TransitionEventHandler<HTMLDivElement> | undefined | — | — |
onWheel ? | WheelEventHandler<HTMLDivElement> | undefined | — | — |
onWheelCapture ? | WheelEventHandler<HTMLDivElement> | undefined | — | — |
render ? | DOMRenderFunction<"div", ModalRenderProps> | undefined | — | Overrides the default DOM element with a custom render function.
This allows rendering existing components with built-in styles and behaviors
such as router links, animation libraries, and pre-styled components.
Requirements:
- You must render the expected element type (e.g. if `<button>` is expected, you cannot render an
`<a>`).
- Only a single root DOM element can be rendered (no fragments).
- You must pass through props and ref to the underlying DOM element, merging with your own prop
as appropriate. |
shouldCloseOnInteractOutside ? | ((element: Element) => boolean) | undefined | — | When user interacts with the argument element outside of the overlay ref,
return true if onClose should be called. This gives you a chance to filter
out interaction with elements that should not dismiss the overlay.
By default, onClose will always be called on interaction outside the overlay ref. |
slot ? | string | null | undefined | — | A slot name for the component. Slots allow the component to receive props from a parent
component. An explicit `null` value indicates that the local props completely override all
props received from a parent. |
style ? | StyleOrFunction<ModalRenderProps> | undefined | — | The inline [style](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/style) for the
element. A function may be provided to compute the style based on component state. |
translate ? | "yes" | "no" | undefined | — | — |
UNSTABLE_portalContainer ? | Element | undefined | document.body | The container element in which the overlay portal will be placed. This may have unknown
behavior depending on where it is portalled to. |