import React, { forwardRef } from "react"; import { Slot } from "../../utils/components/slot/Slot"; import { composeEventHandlers } from "../../utils/helpers"; import { useDialogContext } from "../root/DialogRoot.context"; interface DialogCloseTriggerProps extends React.ButtonHTMLAttributes { children: React.ReactElement; } /** * @see 🏷️ {@link DialogCloseTriggerProps} * @example * ```jsx * * * * * * * * ``` */ const DialogCloseTrigger = forwardRef< HTMLButtonElement, DialogCloseTriggerProps >(({ children, onClick, ...restProps }, forwardedRef) => { const { open, setOpen } = useDialogContext(); const handleClick = ( event: React.MouseEvent, ) => { if (open) { setOpen(false, event.nativeEvent); } }; return ( {children} ); }); export { DialogCloseTrigger }; export type { DialogCloseTriggerProps };