import { getColorFromText, isLightColor } from "@app/core/utils/color"; import { Tooltip, TooltipArrow, TooltipContent, TooltipProvider, TooltipTrigger, } from "@components/UI/Tooltip.tsx"; import { cn } from "@core/utils/cn.ts"; import { LockKeyholeOpenIcon, StarIcon } from "lucide-react"; import { useTranslation } from "react-i18next"; interface AvatarProps { text: string | number; size?: "sm" | "lg"; className?: string; showError?: boolean; showFavorite?: boolean; } export const Avatar = ({ text, size = "sm", showError = false, showFavorite = false, className, }: AvatarProps) => { const { t } = useTranslation(); const sizes = { sm: "size-10 text-xs font-light", lg: "size-16 text-lg", }; const safeText = text?.toString().toUpperCase(); const bgColor = getColorFromText(safeText); const isLight = isLightColor(bgColor); const textColor = isLight ? "#000000" : "#FFFFFF"; const initials = safeText?.slice(0, 4) ?? t("unknown.shortName"); return (
{initials}