feat: add random color for user fallback bg

Signed-off-by: Innei <tukon479@gmail.com>
This commit is contained in:
Innei 2024-10-29 23:34:20 +08:00
parent bc1f39bf67
commit dcbae89020
No known key found for this signature in database
GPG Key ID: 0F62D33977F021F7
1 changed files with 8 additions and 1 deletions

View File

@ -1,4 +1,5 @@
import { Avatar, AvatarFallback, AvatarImage } from "@follow/components/ui/avatar/index.jsx"
import { getColorScheme, stringToHue } from "@follow/utils/color"
import { cn } from "@follow/utils/utils"
import { forwardRef } from "react"
@ -49,6 +50,7 @@ export const UserAvatar = forwardRef<
}
const renderUserData = userId ? profile.data : session?.user
const randomColor = stringToHue(renderUserData?.name || "")
return (
<div
style={style}
@ -75,7 +77,12 @@ export const UserAvatar = forwardRef<
className="duration-200 animate-in fade-in-0"
src={replaceImgUrlIfNeed(renderUserData?.image || undefined)}
/>
<AvatarFallback>{renderUserData?.name?.slice(0, 2)}</AvatarFallback>
<AvatarFallback
style={{ backgroundColor: getColorScheme(randomColor).light.accent }}
className="text-xs"
>
{renderUserData?.name?.[0]}
</AvatarFallback>
</Avatar>
{!hideName && <div>{renderUserData?.name}</div>}
</div>