import {
Avatar,
Box,
Button,
Center,
CloseButton,
Container,
Drawer,
DrawerContent,
DrawerOverlay,
Flex,
HStack,
Link,
Spacer,
Text,
useDisclosure,
} from "@chakra-ui/react";
async function destroySession() {
await fetch("/api/auth/session", {
method: "DELETE",
}).catch(() => {});
location.assign("/");
}
function getAvatarUrl(userData: { [k: string]: any }): string {
const BASE = "https://cdn.discordapp.com/";
if (userData.avatar)
return BASE + `avatars/${userData.id}/${userData.avatar}`;
if (!userData.id || typeof window["BigInt"] === "undefined") return "";
return BASE + `embed/avatars/${(BigInt(userData.id) >> 22n) % 6n}.png`;
}
export default function (props: {
avatar?: string;
discriminator?: string;
email?: string;
hide?: boolean;
id?: string;
permissions?: number;
username?: string;
}) {
let data = { ...props };
const { isOpen, onClose, onOpen } = useDisclosure();
function hasMod(): boolean {
const { permissions } = props;
if (typeof permissions === "undefined") return false;
return Boolean(
[
1 << 0,
1 << 2,
1 << 4,
1 << 5,
1 << 6,
1 << 7,
1 << 8,
1 << 9,
1 << 10,
1 << 11,
].find((int) => permissions & int)
);
}
return (
<>
{data.hide ? null : data.id ? (
{data.id ? data.username : ""}
) : (
)}
About Us
Our Team
Support
Moderation
Log In
{data.id ? data.username : ""}
>
);
}