feat: set font to pretendard (#562)

* feat: apply font to pretendard

* feat: set word break to keep all

* chore: change font weight

* chore: add truncate to owner

* chore: change pretendard to pretendard variable

* feat: change markdown font to pretendard
This commit is contained in:
SKINMAKER 2023-05-27 22:43:50 +09:00 committed by GitHub
parent 3c4812554f
commit 2b3fe7da80
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 35 additions and 34 deletions

View File

@ -10,6 +10,8 @@ html {
}
body {
font-family: Pretendard Variable;
word-break: keep-all;
min-height: 100vh;
width: 100%;
}

View File

@ -61,7 +61,7 @@ const BotCard: React.FC<BotCardProps> = ({ manage = false, bot }) => {
</h2>
<h1 className='mb-3 text-left text-xl sm:text-2xl font-bold truncate'>{bot.name}</h1>
</div>
<p className='mb-10 px-4 h-6 text-left text-gray-400 text-sm font-medium'>
<p className='mb-10 px-4 h-6 text-left text-gray-400 text-sm'>
{bot.intro}
</p>
<div>

View File

@ -9,7 +9,7 @@ const Owner: React.FC<OwnerProps> = ({ id, username, tag, crown=false }) => {
<DiscordAvatar userID={id} className='z-negative absolute inset-0 w-full h-full' />
</div>
<div className='flex-1 w-0 leading-snug'>
<h4 className='whitespace-nowrap'>{ crown && <i className='fas fa-crown text-yellow-300 text-xs' /> }{username}</h4>
<h4 className='whitespace-nowrap truncate'>{ crown && <i className='fas fa-crown text-yellow-300 text-xs' /> }{username}</h4>
<span className='text-gray-600 text-sm'>#{tag}</span>
</div>

View File

@ -63,7 +63,7 @@ const ServerCard: React.FC<BotCardProps> = ({ type, server }) => {
</div>
</div>
<p className='mb-10 px-4 h-6 text-left text-gray-400 text-sm font-medium'>
<p className='mb-10 px-4 h-6 text-left text-gray-400 text-sm font'>
{type === 'add' ?
server.data ? '지금 바로 서버를 등록할 수 있습니다.' : '봇을 초대해야 서버를 등록할 수 있습니다.'
: server.intro

View File

@ -75,8 +75,6 @@
-webkit-text-size-adjust: 100%;
line-height: 1.5;
color: #24292e;
font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif,
Apple Color Emoji, Segoe UI Emoji;
font-size: 16px;
line-height: 1.5;
word-wrap: break-word;

View File

@ -21,7 +21,8 @@ class MyDocument extends Document {
<link rel='icon' type='image/png' sizes='32x32' href='/favicon-32x32.png' />
<link rel='icon' type='image/png' sizes='96x96' href='/favicon-96x96.png' />
<link rel='icon' type='image/png' sizes='16x16' href='/favicon-16x16.png' />
<link rel='stylesheet' as='style' crossOrigin='anonymous' href='https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.6/dist/web/variable/pretendardvariable-dynamic-subset.css' />
{/* iOS */}
<link rel='apple-touch-icon' sizes='57x57' href='/static/apple-icon-57x57.png' />
<link rel='apple-touch-icon' sizes='60x60' href='/static/apple-icon-60x60.png' />

View File

@ -86,10 +86,10 @@ const AddBot:NextPage<AddBotProps> = ({ logged, user, csrfToken, theme }) => {
</div>
{
data ? data.code == 200 && data.data ? <Message type='success'>
<h2 className='text-lg font-black'> !</h2>
<h2 className='text-lg font-extrabold'> !</h2>
<p> ! . {redirectTo(router, `/pendingBots/${data.data.id}/${data.data.date}`)}</p>
</Message> : <Message type='error'>
<h2 className='text-lg font-black'>{data.message || '오류가 발생했습니다.'}</h2>
<h2 className='text-lg font-extrabold'>{data.message || '오류가 발생했습니다.'}</h2>
<ul className='list-disc list-inside'>
{data.errors?.map((el, n) => <li key={n}>{el}</li>)}
</ul>
@ -103,7 +103,7 @@ const AddBot:NextPage<AddBotProps> = ({ logged, user, csrfToken, theme }) => {
<Form>
<div className='py-3'>
<Message type='warning'>
<h2 className='text-lg font-black'> !</h2>
<h2 className='text-lg font-extrabold'> !</h2>
<ul className='list-disc list-inside'>
<li><Link href='/discord'><a rel='noreferrer' target='_blank' className='text-blue-500 hover:text-blue-600'> </a></Link> ?</li>
<li> <Link href='/guidelines'><a rel='noreferrer' target='_blank' className='text-blue-500 hover:text-blue-600'></a></Link> ?</li>

View File

@ -86,10 +86,10 @@ const AddServer:NextPage<AddServerProps> = ({ logged, user, csrfToken, server, s
</div>
{
data ? data.code == 200 && data.data ? <Message type='success'>
<h2 className='text-lg font-black'> !</h2>
<h2 className='text-lg font-extrabold'> !</h2>
<p> ! ! {redirectTo(router, `/servers/${router.query.id}`)}</p>
</Message> : <Message type='error'>
<h2 className='text-lg font-black'>{data.message || '오류가 발생했습니다.'}</h2>
<h2 className='text-lg font-extrabold'>{data.message || '오류가 발생했습니다.'}</h2>
<ul className='list-disc list-inside'>
{data.errors?.map((el, n) => <li key={n}>{el}</li>)}
</ul>
@ -98,10 +98,10 @@ const AddServer:NextPage<AddServerProps> = ({ logged, user, csrfToken, server, s
}
{
server ? <Message type='warning'>
<h2 className='text-lg font-black'> .</h2>
<h2 className='text-lg font-extrabold'> .</h2>
</Message> :
!serverData ? <Message type='info'>
<h2 className='text-lg font-black'> .</h2>
<h2 className='text-lg font-extrabold'> .</h2>
<p> .</p>
<p> 1 .</p>
</Message>
@ -112,7 +112,7 @@ const AddServer:NextPage<AddServerProps> = ({ logged, user, csrfToken, server, s
<Form>
<div className='py-3'>
<Message type='warning'>
<h2 className='text-lg font-black'> !</h2>
<h2 className='text-lg font-extrabold'> !</h2>
<ul className='list-disc list-inside'>
<li><Link href='/discord'><a rel='noreferrer' target='_blank' className='text-blue-500 hover:text-blue-600'> </a></Link> .</li>
<li> <Link href='/guidelines'><a rel='noreferrer' target='_blank' className='text-blue-500 hover:text-blue-600'></a></Link> ?</li>

View File

@ -92,14 +92,14 @@ const ManageBotPage:NextPage<ManageBotProps> = ({ bot, user, csrfToken, theme })
data ? data.code === 200 ? <div className='mt-4'>
<Redirect to={makeBotURL(bot)}>
<Message type='success'>
<h2 className='text-lg font-black'> .</h2>
<h2 className='text-lg font-extrabold'> .</h2>
<p> !</p>
</Message>
</Redirect>
</div> : <div className='mt-4'>
<Message type='error'>
<h2 className='text-lg font-black'>{data.message || '오류가 발생했습니다.'}</h2>
<h2 className='text-lg font-extrabold'>{data.message || '오류가 발생했습니다.'}</h2>
<ul className='list-disc list-inside'>
{data.errors?.map((el, n) => <li key={n}>{el}</li>)}
</ul>

View File

@ -68,7 +68,7 @@ const Bots: NextPage<BotsProps> = ({ data, desc, date, user, theme, csrfToken })
{
data.state === 'blocked' ? <div className='pb-40'>
<Message type='error'>
<h2 className='text-lg font-black'> .</h2>
<h2 className='text-lg font-extrabold'> .</h2>
</Message>
</div>
: data.category.includes('NSFW') && !nsfw ? <NSFW onClick={() => setNSFW(true)} onDisableClick={() => localStorage.nsfw = true} />
@ -76,12 +76,12 @@ const Bots: NextPage<BotsProps> = ({ data, desc, date, user, theme, csrfToken })
<div className='w-full pb-2'>
{
data.state === 'private' ? <Message type='info'>
<h2 className='text-lg font-black'> .</h2>
<h2 className='text-lg font-extrabold'> .</h2>
<p> . .</p>
</Message> :
data.state === 'reported' ?
<Message type='error'>
<h2 className='text-lg font-black'> , .</h2>
<h2 className='text-lg font-extrabold'> , .</h2>
<p> .</p>
<p> <Link href='/guidelines'><a className='text-blue-500 hover:text-blue-400'></a></Link> <Link href='/discord'><a className='text-blue-500 hover:text-blue-400'> </a></Link> .</p>
</Message> : ''

View File

@ -62,7 +62,7 @@ const VoteBot: NextPage<VoteBotProps> = ({ data, user, theme, csrfToken }) => {
{
data.state === 'blocked' ? <div className='pb-40'>
<Message type='error'>
<h2 className='text-lg font-black'> .</h2>
<h2 className='text-lg font-extrabold'> .</h2>
</Message>
</div> : <>
<Advertisement />

View File

@ -75,10 +75,10 @@ const BotApplication: NextPage<BotApplicationProps> = ({ user, spec, bot, theme,
{
!data ? '' : data.code === 200 ?
<Message type='success'>
<h2 className='text-lg font-black'> !</h2>
<h2 className='text-lg font-extrabold'> !</h2>
<p> .</p>
</Message> : <Message type='error'>
<h2 className='text-lg font-black'>{data.message}</h2>
<h2 className='text-lg font-extrabold'>{data.message}</h2>
<ul className='list-disc list-inside'>
{
data.errors?.map((el, i)=> <li key={i}>{el}</li>)

View File

@ -76,10 +76,10 @@ const ServerApplication: NextPage<ServerApplicationProps> = ({ user, spec, serve
{
!data ? '' : data.code === 200 ?
<Message type='success'>
<h2 className='text-lg font-black'> !</h2>
<h2 className='text-lg font-extrabold'> !</h2>
<p> .</p>
</Message> : <Message type='error'>
<h2 className='text-lg font-black'>{data.message}</h2>
<h2 className='text-lg font-extrabold'>{data.message}</h2>
<ul className='list-disc list-inside'>
{
data.errors?.map((el, i)=> <li key={i}>{el}</li>)
@ -140,7 +140,7 @@ const ServerApplication: NextPage<ServerApplicationProps> = ({ user, spec, serve
</div>
</> : <div className='mt-5'>
<Message type='error'>
<h2 className='text-lg font-black'> .</h2>
<h2 className='text-lg font-extrabold'> .</h2>
<p> , .</p>
</Message>
</div>

View File

@ -35,16 +35,16 @@ const PendingBot: NextPage<PendingBotProps> = ({ data }) => {
<div className='w-full lg:w-3/4 lg:pr-5 py-8 text-center lg:text-left'>
{
data.state === 0 ? <Message type='info'>
<h2 className='text-lg font-black'> </h2>
<h2 className='text-lg font-extrabold'> </h2>
<p> .</p>
</Message>
: data.state === 1 ? <Message type='success'>
<h2 className='text-lg font-black'></h2>
<h2 className='text-lg font-extrabold'></h2>
<p> !</p>
<p><Link href={`/bots/${data.id}`}><a className='text-blue-500 hover:text-blue-400'> </a></Link></p>
</Message> : <Message type='error'>
<h2 className='text-lg font-black'></h2>
<h2 className='text-lg font-extrabold'></h2>
<p> .</p>
{
data.reason && <>

View File

@ -74,13 +74,13 @@ const ManageServerPage:NextPage<ManageServerProps> = ({ server, user, owners, cs
data ? data.code === 200 ? <div className='mt-4'>
<Redirect to={makeServerURL(server)}>
<Message type='success'>
<h2 className='text-lg font-black'> .</h2>
<h2 className='text-lg font-extrabold'> .</h2>
<p> !</p>
</Message>
</Redirect>
</div> : <div className='mt-4'>
<Message type='error'>
<h2 className='text-lg font-black'>{data.message || '오류가 발생했습니다.'}</h2>
<h2 className='text-lg font-extrabold'>{data.message || '오류가 발생했습니다.'}</h2>
<ul className='list-disc list-inside'>
{data.errors?.map((el, n) => <li key={n}>{el}</li>)}
</ul>

View File

@ -66,14 +66,14 @@ const Servers: NextPage<ServersProps> = ({ data, desc, date, user, theme }) => {
{
data.state === 'blocked' ? <div className='pb-40'>
<Message type='error'>
<h2 className='text-lg font-black'> .</h2>
<h2 className='text-lg font-extrabold'> .</h2>
</Message>
</div>
: <>
<div className='w-full pb-2'>
{
data.state === 'unreachable' ? <Message type='error'>
<h2 className='text-lg font-black'> .</h2>
<h2 className='text-lg font-extrabold'> .</h2>
<p> , .</p>
{
owners?.find(el => el.id === user?.id) && <>
@ -84,7 +84,7 @@ const Servers: NextPage<ServersProps> = ({ data, desc, date, user, theme }) => {
</Message> :
data.state === 'reported' ?
<Message type='error'>
<h2 className='text-lg font-black'> , .</h2>
<h2 className='text-lg font-extrabold'> , .</h2>
<p> .</p>
<p> <Link href='/guidelines'><a className='text-blue-500 hover:text-blue-400'></a></Link> <Link href='/discord'><a className='text-blue-500 hover:text-blue-400'> </a></Link> .</p>
</Message> : ''

View File

@ -62,7 +62,7 @@ const VoteServer: NextPage<VoteServerProps> = ({ data, user, theme, csrfToken })
{
data.state === 'blocked' ? <div className='pb-40'>
<Message type='error'>
<h2 className='text-lg font-black'> .</h2>
<h2 className='text-lg font-extrabold'> .</h2>
</Message>
</div> : <>
<Advertisement />