File size: 1,117 Bytes
f8b5d42 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | import React, { memo } from "react";
import usePfp from "../../hooks/usePfp";
import UserDefaultPfp from "./user.svg";
import WorkspaceDefaultPfp from "./workspace.svg";
const UserIcon = memo(({ role }) => {
const { pfp } = usePfp();
return (
<div className="relative w-[35px] h-[35px] rounded-full flex-shrink-0 overflow-hidden">
{role === "user" && <RenderUserPfp pfp={pfp} />}
{role !== "user" && (
<img
src={WorkspaceDefaultPfp}
alt="system profile picture"
className="flex items-center justify-center rounded-full border-solid border border-white/40 light:border-theme-sidebar-border light:bg-theme-bg-chat-input"
/>
)}
</div>
);
});
function RenderUserPfp({ pfp }) {
if (!pfp)
return (
<img
src={UserDefaultPfp}
alt="User profile picture"
className="rounded-full border-none"
/>
);
return (
<img
src={pfp}
alt="User profile picture"
className="absolute top-0 left-0 w-full h-full object-cover rounded-full border-none"
/>
);
}
export default UserIcon;
|