Some checks failed
Backend Tests / Static Checks (push) Has been cancelled
Backend Tests / Tests (other) (push) Has been cancelled
Backend Tests / Tests (plugin) (push) Has been cancelled
Backend Tests / Tests (server) (push) Has been cancelled
Backend Tests / Tests (store) (push) Has been cancelled
Build Canary Image / build-frontend (push) Has been cancelled
Build Canary Image / build-push (linux/amd64) (push) Has been cancelled
Build Canary Image / build-push (linux/arm64) (push) Has been cancelled
Build Canary Image / merge (push) Has been cancelled
Frontend Tests / Lint (push) Has been cancelled
Frontend Tests / Build (push) Has been cancelled
Proto Linter / Lint Protos (push) Has been cancelled
27 lines
942 B
TypeScript
27 lines
942 B
TypeScript
import { useInstance } from "@/contexts/InstanceContext";
|
|
import { cn } from "@/lib/utils";
|
|
import UserAvatar from "./UserAvatar";
|
|
|
|
interface Props {
|
|
className?: string;
|
|
collapsed?: boolean;
|
|
}
|
|
|
|
function MemosLogo(props: Props) {
|
|
const { collapsed } = props;
|
|
const { generalSetting: instanceGeneralSetting } = useInstance();
|
|
const title = instanceGeneralSetting.customProfile?.title || "Memos";
|
|
const avatarUrl = instanceGeneralSetting.customProfile?.logoUrl || "/full-logo.webp";
|
|
|
|
return (
|
|
<div className={cn("relative w-full h-auto shrink-0", props.className)}>
|
|
<div className={cn("w-auto flex flex-row justify-start items-center text-foreground", collapsed ? "px-1" : "px-3")}>
|
|
<UserAvatar className="shrink-0" avatarUrl={avatarUrl} />
|
|
{!collapsed && <span className="ml-2 text-lg font-medium text-foreground shrink truncate">{title}</span>}
|
|
</div>
|
|
</div>
|
|
);
|
|
}
|
|
|
|
export default MemosLogo;
|