Files
2025-04-03 13:07:54 +02:00

42 lines
1.3 KiB
TypeScript

import {
Dialog,
DialogContent,
DialogDescription,
DialogHeader,
DialogTitle,
DialogTrigger,
} from "@/components/ui/dialog"
import { getCurrentUser } from "@/lib/auth"
import { getCategories } from "@/models/categories"
import { getCurrencies } from "@/models/currencies"
import { getProjects } from "@/models/projects"
import { getSettings } from "@/models/settings"
import TransactionCreateForm from "./create"
export async function NewTransactionDialog({ children }: { children: React.ReactNode }) {
const user = await getCurrentUser()
const categories = await getCategories(user.id)
const currencies = await getCurrencies(user.id)
const settings = await getSettings(user.id)
const projects = await getProjects(user.id)
return (
<Dialog>
<DialogTrigger asChild>{children}</DialogTrigger>
<DialogContent className="max-w-xl">
<DialogHeader>
<DialogTitle className="text-2xl font-bold">New Transaction</DialogTitle>
<DialogDescription>Create a new transaction</DialogDescription>
</DialogHeader>
<TransactionCreateForm
categories={categories}
currencies={currencies}
settings={settings}
projects={projects}
/>
</DialogContent>
</Dialog>
)
}