import { NextPage, NextPageContext } from 'next' import dynamic from 'next/dynamic' import { SnowflakeUtil } from 'discord.js' import { ParsedUrlQuery } from 'querystring' import { josa } from 'josa' import { Bot, User } from '@types' import * as Query from '@utils/Query' import { checkPerm } from '@utils/Tools' import NotFound from '../404' const Container = dynamic(()=> import('@components/Container')) const SEO = dynamic(()=> import('@components/SEO')) const DiscordAvatar = dynamic(()=> import('@components/DiscordAvatar')) const Divider = dynamic(()=> import('@components/Divider')) const BotCard = dynamic(()=> import('@components/BotCard')) const Tag = dynamic(()=> import('@components/Tag')) const Advertisement = dynamic(()=> import('@components/Advertisement')) const Tooltip = dynamic(()=> import('@components/Tooltip')) const Users: NextPage = ({ data }) => { if (!data.id) return return ( el.name) .join(', ')}#{을} 제작합니다.` )} image={ data.avatar ? `https://cdn.discordapp.com/avatars/${data.id}/${data.avatar}.png?size=1024` : `https://cdn.discordapp.com/embed/avatars/${Number(data.tag) % 5}.png?size=1024` } />

{data.username}

#{data.tag}
{checkPerm(data.perm, 'staff') && (
)} {checkPerm(data.perm, 'bughunter') && (
)}

{data.github && ( {data.github} } github href={`https://github.com/${data.github}`} /> )}

제작한 봇

{(data.bots as Bot[]).map((bot: Bot) => ( ))}
) } export const getServerSideProps = async (ctx: Context) => { const data = await Query.get.user.load(ctx.query.id) return { props: { data, date: SnowflakeUtil.deconstruct(data.id ?? '0')?.date?.toJSON() } } } interface UserProps { data: User } interface Context extends NextPageContext { query: URLQuery } interface URLQuery extends ParsedUrlQuery { id: string } export default Users