"use client";
import React, { useEffect } from "react";
import LazyLoadedImage from "../util/LazyLoadedImage";
import { Alert, AlertDescription, AlertTitle } from "../ui/alert";
import { OctagonXIcon } from "lucide-react";
import {
RobloxPremiumSmall,
RobloxVerifiedSmall
} from "@/components/roblox/RobloxTooltips";
import { useCurrentAccount } from "@/hooks/roblox/useCurrentAccount";
import { Skeleton } from "../ui/skeleton";
import { useFriendsPresence } from "@/hooks/roblox/usePresence";
import { useAccountSettings } from "@/hooks/roblox/useAccountSettings";
export function HomeLoggedInHeader() {
const profile = useCurrentAccount();
const accountSettings = useAccountSettings();
if (profile === false) {
return (
Failed to fetch account info
Please make sure .ROBLOSECURITY is set! Is
Roblox having an outage?
);
}
const presence = useFriendsPresence(profile ? [profile.id] : []);
const userActivity = presence.find((b) => b.userId === profile?.id);
const userPresence = userActivity?.userPresenceType;
const borderColor =
userPresence === 1
? "border-blue/25 bg-blue/25"
: userPresence === 2
? "border-green/25 bg-green/25"
: userPresence === 3
? "border-yellow/25 bg-yellow/25"
: userPresence === 0
? "border-surface2/25 bg-surface2/25"
: "border-red/25 bg-red/25";
const isLoaded = !!profile && !!accountSettings;
return (
<>
{/* */}
{!isLoaded ? (
) : (
)}
{isLoaded ? (
<>
{!!accountSettings &&
accountSettings.IsPremium === true
? `Howdy, ${profile.displayName}`
: `${profile.displayName}`}
>
) : (
<>
>
)}
{!!accountSettings &&
accountSettings.IsPremium === true ? (
) : (
<>>
)}
{isLoaded ? (
) : (
<>>
)}
{isLoaded ? (
<>
@{profile.name}
{!!userActivity && userPresence === 2 ? (
<> - {userActivity.lastLocation}>
) : (
<>>
)}
>
) : (
)}
>
);
}