import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from '@/components/ui/dialog' import { ScrollArea } from '@/components/ui/scroll-area' import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs' import { useScreenSize } from '@/providers/ScreenSizeProvider' import { Event } from 'nostr-tools' import { Dispatch, useMemo } from 'react' import { Sheet, SheetContent, SheetDescription, SheetHeader, SheetTitle } from '../ui/sheet' import NormalPostContent from './NormalPostContent' import PicturePostContent from './PicturePostContent' import Title from './Title' import { useTranslation } from 'react-i18next' export default function PostEditor({ defaultContent = '', parentEvent, open, setOpen }: { defaultContent?: string parentEvent?: Event open: boolean setOpen: Dispatch }) { const { t } = useTranslation() const { isSmallScreen } = useScreenSize() const content = useMemo(() => { return parentEvent || defaultContent ? ( setOpen(false)} /> ) : ( {t('Normal Note')} {t('Picture Note')} setOpen(false)} /> setOpen(false)} /> ) }, [parentEvent]) if (isSmallScreen) { return (
</SheetTitle> <SheetDescription className="hidden" /> </SheetHeader> {content} </div> </ScrollArea> </SheetContent> </Sheet> ) } return ( <Dialog open={open} onOpenChange={setOpen}> <DialogContent className="p-0 max-w-2xl" withoutClose> <ScrollArea className="px-4 h-full max-h-screen"> <div className="space-y-4 px-2 py-6"> <DialogHeader> <DialogTitle> <Title parentEvent={parentEvent} /> </DialogTitle> <DialogDescription className="hidden" /> </DialogHeader> {content} </div> </ScrollArea> </DialogContent> </Dialog> ) }