diff --git a/src/app/(panels)/suite/doctor/dashboard/layout.tsx b/src/app/(panels)/suite/doctor/dashboard/layout.tsx new file mode 100644 index 0000000..be5edea --- /dev/null +++ b/src/app/(panels)/suite/doctor/dashboard/layout.tsx @@ -0,0 +1,15 @@ +"use client" + +import * as React from "react" + +export default function RootLayout({ + children, +}: { + children: React.ReactNode +}) { + return ( +
+ {children} +
+ ) +} diff --git a/src/app/(panels)/suite/doctor/dashboard/page.tsx b/src/app/(panels)/suite/doctor/dashboard/page.tsx index c09aa26..19ffad8 100644 --- a/src/app/(panels)/suite/doctor/dashboard/page.tsx +++ b/src/app/(panels)/suite/doctor/dashboard/page.tsx @@ -1,10 +1,99 @@ -"use client" +import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card" - -export default function DoctorDashboard() { +export default function DashboardPage() { return ( -
-

Doctor Dashboard

-
- ); +
+

Dashboard Overview

+
+ + + Total Revenue + + + + + +
$45,231.89
+

+20.1% from last month

+
+
+ + + Subscriptions + + + + + + + +
+2350
+

+180.1% from last month

+
+
+ + + Sales + + + + + + +
+12,234
+

+19% from last month

+
+
+ + + Active Now + + + + + +
+573
+

+201 since last hour

+
+
+
+
+ ) } + diff --git a/src/app/(panels)/suite/doctor/layout.tsx b/src/app/(panels)/suite/doctor/layout.tsx index b6999b5..13a0ade 100644 --- a/src/app/(panels)/suite/doctor/layout.tsx +++ b/src/app/(panels)/suite/doctor/layout.tsx @@ -1,16 +1,19 @@ -"use client" +import { Sidebar } from "@/components/panel-ui/doctor/app-sidebar" +import { Navbar } from "@/components/panel-ui/doctor/app-navbar" -import { AppSidebar } from "@/components/panel-ui/app-sidebar" - -export default function RootLayout({ +export default function DashboardLayout({ children, }: { children: React.ReactNode }) { return ( -
- - {children} -
+
+ +
+ +
{children}
+
+
) } + diff --git a/src/components/panel-ui/app-sidebar.tsx b/src/components/panel-ui/app-sidebar.tsx deleted file mode 100644 index 4083830..0000000 --- a/src/components/panel-ui/app-sidebar.tsx +++ /dev/null @@ -1,70 +0,0 @@ -import { Calendar, Home, Inbox, Search, Settings } from "lucide-react" - -import { - Sidebar, - SidebarContent, - SidebarGroup, - SidebarGroupContent, - SidebarGroupLabel, - SidebarMenu, - SidebarMenuButton, - SidebarMenuItem, - SidebarProvider, -} from "@/components/ui/sidebar" - -// Menu items. -const items = [ - { - title: "Home", - url: "#", - icon: Home, - }, - { - title: "Inbox", - url: "#", - icon: Inbox, - }, - { - title: "Calendar", - url: "#", - icon: Calendar, - }, - { - title: "Search", - url: "#", - icon: Search, - }, - { - title: "Settings", - url: "#", - icon: Settings, - }, -] - -export function AppSidebar() { - return ( - - - - - Application - - - {items.map((item) => ( - - - - - {item.title} - - - - ))} - - - - - - - ) -} diff --git a/src/components/panel-ui/doctor/app-navbar.tsx b/src/components/panel-ui/doctor/app-navbar.tsx new file mode 100644 index 0000000..46dcfc6 --- /dev/null +++ b/src/components/panel-ui/doctor/app-navbar.tsx @@ -0,0 +1,48 @@ +import { Bell, User } from "lucide-react" + +import { Button } from "@/components/ui/button" +import { + DropdownMenu, + DropdownMenuContent, + DropdownMenuItem, + DropdownMenuLabel, + DropdownMenuSeparator, + DropdownMenuTrigger, +} from "@/components/ui/dropdown-menu" + +import { ModeToggle } from "@/components/theme-toggle" + +export function Navbar() { + return ( + + ) +} + diff --git a/src/components/panel-ui/doctor/app-sidebar.tsx b/src/components/panel-ui/doctor/app-sidebar.tsx new file mode 100644 index 0000000..43ca2df --- /dev/null +++ b/src/components/panel-ui/doctor/app-sidebar.tsx @@ -0,0 +1,55 @@ +"use client" + +import { Home, Settings, Users } from "lucide-react" +import Link from "next/link" + +import { + Sidebar as ShadcnSidebar, + SidebarContent, + SidebarHeader, + SidebarMenu, + SidebarMenuButton, + SidebarMenuItem, + SidebarProvider, +} from "@/components/ui/sidebar" + +export function Sidebar() { + return ( + + + +

Dashboard

+
+ + + + + + + Home + + + + + + + + Users + + + + + + + + Settings + + + + + +
+
+ ) +} + diff --git a/src/components/ui/card.tsx b/src/components/ui/card.tsx new file mode 100644 index 0000000..cabfbfc --- /dev/null +++ b/src/components/ui/card.tsx @@ -0,0 +1,76 @@ +import * as React from "react" + +import { cn } from "@/lib/utils" + +const Card = React.forwardRef< + HTMLDivElement, + React.HTMLAttributes +>(({ className, ...props }, ref) => ( +
+)) +Card.displayName = "Card" + +const CardHeader = React.forwardRef< + HTMLDivElement, + React.HTMLAttributes +>(({ className, ...props }, ref) => ( +
+)) +CardHeader.displayName = "CardHeader" + +const CardTitle = React.forwardRef< + HTMLDivElement, + React.HTMLAttributes +>(({ className, ...props }, ref) => ( +
+)) +CardTitle.displayName = "CardTitle" + +const CardDescription = React.forwardRef< + HTMLDivElement, + React.HTMLAttributes +>(({ className, ...props }, ref) => ( +
+)) +CardDescription.displayName = "CardDescription" + +const CardContent = React.forwardRef< + HTMLDivElement, + React.HTMLAttributes +>(({ className, ...props }, ref) => ( +
+)) +CardContent.displayName = "CardContent" + +const CardFooter = React.forwardRef< + HTMLDivElement, + React.HTMLAttributes +>(({ className, ...props }, ref) => ( +
+)) +CardFooter.displayName = "CardFooter" + +export { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent }