import { View, Image, Pressable, useColorScheme } from "react-native"; import { Text } from "@/components/ui/text"; import { ArrowLeft, Bell, Settings, Info } from "@/lib/icons"; import { ShadowWrapper } from "@/components/ShadowWrapper"; import { useAuthStore } from "@/lib/auth-store"; import { useSirouRouter } from "@sirou/react-native"; import { AppRoutes } from "@/lib/routes"; interface StandardHeaderProps { title?: string; showBack?: boolean; rightAction?: "notificationsSettings" | "companyInfo"; } export function StandardHeader({ title, showBack, rightAction, }: StandardHeaderProps) { const user = useAuthStore((state) => state.user); const colorScheme = useColorScheme(); const isDark = colorScheme === "dark"; const nav = useSirouRouter(); // Fallback avatar if user has no profile picture const avatarUri = user?.avatar || "https://ui-avatars.com/api/?name=" + encodeURIComponent(`${user?.firstName} ${user?.lastName}`) + "&background=ea580c&color=fff"; return ( {showBack && ( nav.back()} className="h-10 w-10 rounded-[10px] bg-card items-center justify-center border border-border" > )} {!title ? ( nav.go("profile")} className="h-[40px] w-[40px] rounded-full overflow-hidden" > Welcome back, {user?.firstName + " " + user?.lastName || "User"} ) : ( {title} )} {!title && ( nav.go("notifications/index")} > )} {title && ( {rightAction === "notificationsSettings" ? ( nav.go("notifications/settings")} > ) : rightAction === "companyInfo" ? ( nav.go("company-details")} > ) : ( )} )} ); }