mirror of
https://github.com/i701/sarlink-portal.git
synced 2025-02-22 22:41:59 +00:00
Some checks failed
Build and Push Docker Images / Build and Push Docker Images (push) Failing after 1m24s
- Updated `auth-actions.ts` to improve user verification notification formatting and date handling. - Modified `layout.tsx` to support dark mode styling for better user experience. - Refactored `signup/page.tsx` to enhance layout and responsiveness. - Introduced a new API route in `route.ts` for sending user verification notifications. - Improved user feedback in `user-payments-table.tsx` by updating the no payment message. - Made minor adjustments in `application-layout.tsx` for consistent padding. - Enhanced `signup-form.tsx` to display error messages for invalid user validation. These changes improve the user verification process, enhance UI consistency, and provide better feedback to users.
57 lines
1.7 KiB
TypeScript
57 lines
1.7 KiB
TypeScript
import { DeviceCartDrawer } from "@/components/device-cart";
|
|
import { Wallet } from "@/components/wallet";
|
|
|
|
import { ModeToggle } from "@/components/theme-toggle";
|
|
import { AppSidebar } from "@/components/ui/app-sidebar";
|
|
|
|
import { Separator } from "@/components/ui/separator";
|
|
import {
|
|
SidebarInset,
|
|
SidebarProvider,
|
|
SidebarTrigger,
|
|
} from "@/components/ui/sidebar";
|
|
import { auth } from "@/lib/auth";
|
|
import prisma from "@/lib/db";
|
|
import { headers } from "next/headers";
|
|
import { AccountPopover } from "./account-popver";
|
|
|
|
export async function ApplicationLayout({
|
|
children,
|
|
}: { children: React.ReactNode }) {
|
|
const session = await auth.api.getSession({
|
|
headers: await headers()
|
|
});
|
|
const billFormula = await prisma.billFormula.findFirst();
|
|
const user = await prisma.user.findFirst({
|
|
where: {
|
|
id: session?.user?.id,
|
|
},
|
|
});
|
|
return (
|
|
<SidebarProvider>
|
|
<AppSidebar role={session?.user?.role || "USER"} />
|
|
<DeviceCartDrawer billFormula={billFormula || null} />
|
|
<SidebarInset>
|
|
<header className="flex justify-between sticky top-0 bg-background h-16 shrink-0 items-center gap-2 border-b px-4 z-10">
|
|
<div className="flex items-center gap-2 ">
|
|
<SidebarTrigger className="-ml-1" />
|
|
<Separator orientation="vertical" className="mr-2 h-4" />
|
|
{session?.user.role === "ADMIN" && (
|
|
<span className="text-sm font-mono px-2 p-1 rounded-md bg-green-500/10 text-green-900 dark:text-green-400">
|
|
Welcome back {session?.user.name}
|
|
</span>
|
|
)}
|
|
</div>
|
|
|
|
<div className="flex items-center gap-2">
|
|
<Wallet walletBalance={user?.walletBalance || 0} />
|
|
<ModeToggle />
|
|
<AccountPopover />
|
|
</div>
|
|
</header>
|
|
<div className="p-4 ">{children}</div>
|
|
</SidebarInset>
|
|
</SidebarProvider>
|
|
);
|
|
}
|