"use client" /** * Where the pick-a-role flow lands a student. * * Deliberately thin. Exxat has no student product yet, so the honest thing to * show is the shape of one (identity, what is assigned, what is due) with real * empty states rather than invented rows. Every card here is the empty case on * purpose: a student with nothing assigned is the first state a real student * portal has to survive, and it is the one prototypes usually skip. * * It wears its own header rather than the workspace utility bar. A student holds * no product, so the switcher would name an app that is not theirs, search and * Ask Leo would reach records they cannot see, and the workspace promo strip * would sell them a licence their school already owns. `App.tsx` treats this * route as chromeless for that reason, which leaves the header here to carry the * only two things a student needs from the shell: who they are, and the way out. */ import { AuthBrandLockup } from "@/components/auth/auth-shell" import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar" import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card" import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu" import { SignInFlowMenuItem } from "@/components/sign-in-flow-menu-item" import { NAV_USER } from "@/lib/mock/navigation" import { useDocumentTitle } from "@/hooks/use-document-title" import { useLogOut } from "@/hooks/use-log-out" const STUDENT_SECTIONS = [ { title: "Placements", icon: "fa-light fa-hospital-user", empty: "No placements assigned yet. Your program will add them when scheduling opens.", }, { title: "Requirements", icon: "fa-light fa-clipboard-check", empty: "Nothing to submit right now.", }, { title: "Hours", icon: "fa-light fa-clock", empty: "No hours logged. Logging opens with your first placement.", }, ] as const function StudentHeader() { const logOut = useLogOut() const user = NAV_USER return (
{user.name} {user.email} {/* The way back to the other flows. Null outside a builder workspace, which is also the only place this page exists to be demonstrated. */}