From 546c882413387dbbecfabfbd64d16c4e510156e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9B=90=EB=8D=94?= Date: Sat, 23 Jan 2021 19:14:21 +0900 Subject: [PATCH] feat: using absolute routes --- pages/404.tsx | 13 ++++++++--- pages/_app.tsx | 4 ++-- pages/_error.tsx | 7 +++--- pages/api/v1/[[...deprecated]].ts | 7 +++--- pages/bots/[id].tsx | 39 ++++++++++++++++--------------- pages/debug.tsx | 16 +++++++------ pages/guidelines.tsx | 2 +- pages/index.tsx | 20 ++++++++-------- pages/list/votes.tsx | 13 ++++++----- pages/privacy.tsx | 2 +- pages/users/[id].tsx | 22 ++++++++--------- tsconfig.json | 7 ++++++ 12 files changed, 84 insertions(+), 68 deletions(-) diff --git a/pages/404.tsx b/pages/404.tsx index 39505f7..7662b92 100644 --- a/pages/404.tsx +++ b/pages/404.tsx @@ -1,9 +1,16 @@ import { NextPage } from 'next' -import Notice from '../components/Notice' -import { ErrorText } from '../utils/Constants' +import { ErrorText } from '@utils/Constants' const NotFound: NextPage = () => { - return + return
+
+

404

+ +

+ { ErrorText[404] } +

+
+
} export default NotFound diff --git a/pages/_app.tsx b/pages/_app.tsx index 37aac1d..d462b6d 100644 --- a/pages/_app.tsx +++ b/pages/_app.tsx @@ -3,8 +3,8 @@ import type { AppProps } from 'next/app' import { ThemeProvider } from 'next-themes' import { useEffect, useState } from 'react' -import Footer from '../components/Footer' -import Navbar from '../components/Navbar' +import Footer from '@components/Footer' +import Navbar from '@components/Navbar' import Crypto from 'crypto' import secret from '../secret.json' diff --git a/pages/_error.tsx b/pages/_error.tsx index dd1abca..6f96eba 100644 --- a/pages/_error.tsx +++ b/pages/_error.tsx @@ -1,9 +1,8 @@ import { NextPage, NextPageContext } from 'next' -import Notice from '../components/Notice' -import { ErrorText } from '../utils/Constants' +import { ErrorText } from '@utils/Constants' const CustomError:NextPage = ({ statusCode, statusText }) => { - return + return
} export const getServerSideProps = ({ res, err }:NextPageContext) => { @@ -30,5 +29,5 @@ export default CustomError interface ErrorProps { statusCode: number - statusText: string + statusText?: string } \ No newline at end of file diff --git a/pages/api/v1/[[...deprecated]].ts b/pages/api/v1/[[...deprecated]].ts index d647eba..6383bcc 100644 --- a/pages/api/v1/[[...deprecated]].ts +++ b/pages/api/v1/[[...deprecated]].ts @@ -1,13 +1,12 @@ import { NextApiHandler, NextApiRequest, NextApiResponse } from 'next' -import { ResponseWrapper } from '../../../utils' +import ResponseWrapper from '@utils/ResponseWrapper' -const Deprecated: NextApiHandler = (_req: NextApiRequest, res: NextApiResponse) => { - const response = ResponseWrapper(res, { +const Deprecated: NextApiHandler = (_req: NextApiRequest, res: NextApiResponse):void => { + return ResponseWrapper(res, { code: 406, message: '해당 API 버전은 지원 종료되었습니다.', version: 1, }) - res.json(response) } export default Deprecated diff --git a/pages/bots/[id].tsx b/pages/bots/[id].tsx index 7b124ae..3451dc9 100644 --- a/pages/bots/[id].tsx +++ b/pages/bots/[id].tsx @@ -1,24 +1,25 @@ import { NextPage, NextPageContext } from 'next' -import { SnowflakeUtil } from 'discord.js' -import Day from '../../utils/Day' -import { ParsedUrlQuery } from 'querystring' -import { Bot, User } from '../../types' - -import Container from '../../components/Container' -import DiscordAvatar from '../../components/DiscordAvatar' -import Divider from '../../components/Divider' -import Tag from '../../components/Tag' -import Owner from '../../components/Owner' -import Segment from '../../components/Segment' -import NotFound from '../404' -import SEO from '../../components/SEO' -import LongButton from '../../components/LongButton' -import { git, Status } from '../../utils/Constants' -import { Query } from '../../utils' -import { formatNumber } from '../../utils/Tools' -import Advertisement from '../../components/Advertisement' import Link from 'next/link' -import Tooltip from '../../components/Tooltip' +import { SnowflakeUtil } from 'discord.js' +import { ParsedUrlQuery } from 'querystring' +import { Bot, User } from '@types' + +import { git, Status } from '@utils/Constants' +import * as Query from '@utils/Query' +import Day from '@utils/Day' +import { formatNumber } from '@utils/Tools' + +import Container from '@components/Container' +import DiscordAvatar from '@components/DiscordAvatar' +import Divider from '@components/Divider' +import Tag from '@components/Tag' +import Owner from '@components/Owner' +import Segment from '@components/Segment' +import SEO from '@components/SEO' +import LongButton from '@components/LongButton' +import Advertisement from '@components/Advertisement' +import Tooltip from '@components/Tooltip' +import NotFound from '../404' const Bots: NextPage = ({ data, date }) => { if (!data || !data.id) return diff --git a/pages/debug.tsx b/pages/debug.tsx index 031d6e4..60d7034 100644 --- a/pages/debug.tsx +++ b/pages/debug.tsx @@ -1,14 +1,16 @@ import { useTheme } from 'next-themes' import { useFormik } from 'formik' - -import Container from '../components/Container' -import Divider from '../components/Divider' -import Segment from '../components/Segment' -import Package from '../package.json' -import { anchorHeader, checkBrowser } from '../utils/Tools' import MarkdownView from 'react-showdown' import sanitizeHtml from 'sanitize-html' -import { useEffect } from 'react' + +import { anchorHeader, checkBrowser } from '@utils/Tools' + +import Container from '@components/Container' +import Divider from '@components/Divider' +import Segment from '@components/Segment' + +import Package from '../package.json' + const ClientInfo = ( ):JSX.Element => { const formik = useFormik({ diff --git a/pages/guidelines.tsx b/pages/guidelines.tsx index 5926eb6..9241fe8 100644 --- a/pages/guidelines.tsx +++ b/pages/guidelines.tsx @@ -1,5 +1,5 @@ import { NextPage } from 'next' -import Docs from '../components/Docs' +import Docs from '@components/Docs' const Privacy: NextPage = () => { return ( diff --git a/pages/index.tsx b/pages/index.tsx index cc1781a..9f230f6 100644 --- a/pages/index.tsx +++ b/pages/index.tsx @@ -1,17 +1,17 @@ import { NextPage } from 'next' import dynamic from 'next/dynamic' -import Paginator from '../components/Paginator' -import Search from '../components/Search' -import Tag from '../components/Tag' +import Paginator from '@components/Paginator' +import Search from '@components/Search' +import Tag from '@components/Tag' -import { BotList } from '../types' -import { Query } from '../utils' -import { cats } from '../utils/Constants' +import { BotList } from '@types' +import * as Query from '@utils/Query' +import { cats } from '@utils/Constants' -const Advertisement = dynamic(()=> import('../components/Advertisement')) -const Container = dynamic(()=> import('../components/Container')) -const BotCard = dynamic(()=> import('../components/BotCard')) -const Wave = dynamic(()=> import('../components/Wave')) +const Advertisement = dynamic(()=> import('@components/Advertisement')) +const Container = dynamic(()=> import('@components/Container')) +const BotCard = dynamic(()=> import('@components/BotCard')) +const Wave = dynamic(()=> import('@components/Wave')) const Index: NextPage = ({ votes, newBots, trusted }) => { return ( diff --git a/pages/list/votes.tsx b/pages/list/votes.tsx index 5e12437..7a24c27 100644 --- a/pages/list/votes.tsx +++ b/pages/list/votes.tsx @@ -1,12 +1,13 @@ import { NextPage, NextPageContext } from 'next' import { ParsedUrlQuery } from 'querystring' -import Advertisement from '../../components/Advertisement' -import BotCard from '../../components/BotCard' -import Container from '../../components/Container' -import Paginator from '../../components/Paginator' -import { BotList } from '../../types' -import { Query } from '../../utils' +import { BotList } from '@types' +import * as Query from '@utils/Query' + +import Advertisement from '@components/Advertisement' +import BotCard from '@components/BotCard' +import Container from '@components/Container' +import Paginator from '@components/Paginator' import NotFound from '../404' const Votes:NextPage = ({ data }:VotesProps) => { diff --git a/pages/privacy.tsx b/pages/privacy.tsx index 6b1474f..88c7281 100644 --- a/pages/privacy.tsx +++ b/pages/privacy.tsx @@ -1,5 +1,5 @@ import { NextPage } from 'next' -import Docs from '../components/Docs' +import Docs from '@components/Docs' const Privacy: NextPage = () => { return ( diff --git a/pages/users/[id].tsx b/pages/users/[id].tsx index 3c7879b..55555d5 100644 --- a/pages/users/[id].tsx +++ b/pages/users/[id].tsx @@ -1,20 +1,20 @@ import { NextPage, NextPageContext } from 'next' import { SnowflakeUtil } from 'discord.js' -import { Query } from '../../utils' +import * as Query from '@utils/Query' import { ParsedUrlQuery } from 'querystring' import { josa } from 'josa' -import { Bot, User } from '../../types' +import { Bot, User } from '@types' import NotFound from '../404' -import Container from '../../components/Container' -import SEO from '../../components/SEO' -import DiscordAvatar from '../../components/DiscordAvatar' -import Divider from '../../components/Divider' -import BotCard from '../../components/BotCard' -import Tag from '../../components/Tag' -import { checkPerm } from '../../utils/Tools' -import Advertisement from '../../components/Advertisement' -import Tooltip from '../../components/Tooltip' +import Container from '@components/Container' +import SEO from '@components/SEO' +import DiscordAvatar from '@components/DiscordAvatar' +import Divider from '@components/Divider' +import BotCard from '@components/BotCard' +import Tag from '@components/Tag' +import { checkPerm } from '@utils/Tools' +import Advertisement from '@components/Advertisement' +import Tooltip from '@components/Tooltip' const Users: NextPage = ({ data }) => { if (!data.id) return return ( diff --git a/tsconfig.json b/tsconfig.json index 35d51ea..3037474 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,5 +1,12 @@ { "compilerOptions": { + "baseUrl": ".", + "paths": { + "@components/*": ["components/*"], + "@utils/*": ["utils/*"], + "@types": ["types/index.ts"] + + }, "target": "es5", "lib": [ "dom",