import * as DialogPrimitive from '@rn-primitives/dialog'; import * as React from 'react'; import { Platform, StyleSheet, View, type ViewProps } from 'react-native'; import Animated, { FadeIn, FadeOut } from 'react-native-reanimated'; import { X } from '../../lib/icons/X'; import { cn } from '../../lib/utils'; const Dialog = DialogPrimitive.Root; const DialogTrigger = DialogPrimitive.Trigger; const DialogPortal = DialogPrimitive.Portal; const DialogClose = DialogPrimitive.Close; function DialogOverlayWeb({ className, ...props }: DialogPrimitive.OverlayProps & { ref?: React.RefObject; }) { const { open } = DialogPrimitive.useRootContext(); return ( ); } function DialogOverlayNative({ className, children, ...props }: DialogPrimitive.OverlayProps & { ref?: React.RefObject; children?: React.ReactNode; }) { return ( {children} ); } const DialogOverlay = Platform.select({ web: DialogOverlayWeb, default: DialogOverlayNative, }); function DialogContent({ className, children, portalHost, ...props }: DialogPrimitive.ContentProps & { ref?: React.RefObject; className?: string; portalHost?: string; }) { const { open } = DialogPrimitive.useRootContext(); return ( {children} ); } function DialogHeader({ className, ...props }: ViewProps) { return ( ); } function DialogFooter({ className, ...props }: ViewProps) { return ( ); } function DialogTitle({ className, ...props }: DialogPrimitive.TitleProps & { ref?: React.RefObject; }) { return ( ); } function DialogDescription({ className, ...props }: DialogPrimitive.DescriptionProps & { ref?: React.RefObject; }) { return ( ); } export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, };