'use client' import { Dialog, DialogContent, DialogHeader, DialogTitle, } from '@/components/ui/dialog' import { useRouter } from 'next/navigation' import { ReactNode, useEffect, useState } from 'react' import { Drawer } from 'vaul' type Props = { children: ReactNode title: ReactNode } export function ExpenseModal(props: Props) { const size = useTailwindBreakpoint() if (size === 'xs') { return } else { return } } export function ExpenseDialog({ children, title }: Props) { const router = useRouter() return ( router.back()}> {title} {children} ) } export function ExpenseVaul({ children, title }: Props) { const router = useRouter() return ( router.back()}> {title} router.back()} />
{title}
{children}
) } export function useTailwindBreakpoint() { const [size, setSize] = useState<'xs' | 'sm' | 'md' | 'lg'>('xs') useEffect(() => { const handleBreakpointChange = () => { if (window.innerWidth >= 1200) { setSize('lg') } else if (window.innerWidth >= 768) { setSize('md') } else if (window.innerWidth >= 640) { setSize('sm') } else { setSize('xs') } } window.addEventListener('resize', handleBreakpointChange) handleBreakpointChange() return () => { window.removeEventListener('resize', handleBreakpointChange) } }, []) return size }