From a74f437f8a8a9ebe2f4f04dfcc06fd19962d803b Mon Sep 17 00:00:00 2001 From: looskie <50378828+Looskie@users.noreply.github.com> Date: Sat, 26 Jun 2021 12:01:39 -0400 Subject: [PATCH 1/7] Chore: Unused import --- pages/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/index.tsx b/pages/index.tsx index 52ee44a..b2cce01 100644 --- a/pages/index.tsx +++ b/pages/index.tsx @@ -1,5 +1,5 @@ import Head from "next/head"; -import styled, { createGlobalStyle, GlobalStyleComponent } from "styled-components"; +import styled, { createGlobalStyle } from "styled-components"; import { useState } from "react"; export default function Home() { From 6874530572024ff755fc0a3690bd76ebaa368b1e Mon Sep 17 00:00:00 2001 From: looskie <50378828+Looskie@users.noreply.github.com> Date: Sat, 26 Jun 2021 12:21:47 -0400 Subject: [PATCH 2/7] Refactoring: Remove documentJS --- pages/_document.js | 29 ----------------------------- 1 file changed, 29 deletions(-) delete mode 100644 pages/_document.js diff --git a/pages/_document.js b/pages/_document.js deleted file mode 100644 index f967ac0..0000000 --- a/pages/_document.js +++ /dev/null @@ -1,29 +0,0 @@ -import Document from "next/document"; -import { ServerStyleSheet } from "styled-components"; - -export default class MyDocument extends Document { - static async getInitialProps(ctx) { - const sheet = new ServerStyleSheet(), - originalRenderPage = ctx.renderPage; - - try { - ctx.renderPage = () => - originalRenderPage({ - enhanceApp: App => props => sheet.collectStyles(), - }); - - const initialProps = await Document.getInitialProps(ctx); - return { - ...initialProps, - styles: ( - <> - {initialProps.styles} - {sheet.getStyleElement()} - - ), - }; - } finally { - sheet.seal(); - } - } -} From e4bad90eb20b10433203709b85c805c9d72df588 Mon Sep 17 00:00:00 2001 From: looskie <50378828+Looskie@users.noreply.github.com> Date: Sat, 26 Jun 2021 12:21:59 -0400 Subject: [PATCH 3/7] Refactoring: _document is not a ts file --- pages/_document.tsx | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 pages/_document.tsx diff --git a/pages/_document.tsx b/pages/_document.tsx new file mode 100644 index 0000000..e71cc5c --- /dev/null +++ b/pages/_document.tsx @@ -0,0 +1,29 @@ +import Document from "next/document"; +import { ServerStyleSheet } from "styled-components"; + +export default class MyDocument extends Document { + static async getInitialProps(ctx: any) { + const sheet = new ServerStyleSheet(), + originalRenderPage = ctx.renderPage; + + try { + ctx.renderPage = () => + originalRenderPage({ + enhanceApp: (App: any) => (props: any) => sheet.collectStyles(), + }); + + const initialProps = await Document.getInitialProps(ctx); + return { + ...initialProps, + styles: ( + <> + {initialProps.styles} + {sheet.getStyleElement()} + + ), + }; + } finally { + sheet.seal(); + } + } +} From 21eb0888de98198c96513767b58e3e826d934688 Mon Sep 17 00:00:00 2001 From: looskie <50378828+Looskie@users.noreply.github.com> Date: Sat, 26 Jun 2021 12:22:15 -0400 Subject: [PATCH 4/7] Refactoring: Name update --- tsconfig.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tsconfig.json b/tsconfig.json index fd21301..fefbdbf 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -22,7 +22,7 @@ "next-env.d.ts", "**/*.ts", "**/*.tsx", - "pages/_document.js" + "pages/_document.tsx" ], "exclude": [ "node_modules" From 1e88600daffa08b60c93ff35fc082c2425ab5077 Mon Sep 17 00:00:00 2001 From: looskie <50378828+Looskie@users.noreply.github.com> Date: Sat, 26 Jun 2021 12:36:13 -0400 Subject: [PATCH 5/7] Refactoring: Camal case --- pages/api/[...id].ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pages/api/[...id].ts b/pages/api/[...id].ts index 502e403..7ada28a 100644 --- a/pages/api/[...id].ts +++ b/pages/api/[...id].ts @@ -20,15 +20,15 @@ type Parameters = { export default async function handler(req: NextApiRequest, res: NextApiResponse) { let axiosRes; const params: Parameters = req.query, - userid = req.query.id[0]; + userId = req.query.id[0]; - if (!isSnowflake(userid)) + if (!isSnowflake(userId)) return res.send({ error: `Specify a valid Discord user ID! If everything looks correct and this still occurs, please contact @cnraddd on Twitter.`, }); try { - axiosRes = await axios.get(`https://api.lanyard.rest/v1/users/${userid}`); + axiosRes = await axios.get(`https://api.lanyard.rest/v1/users/${userId}`); } catch (err) { console.log(err); From c92b60dd87de7b1bd2936360181d152bf62fc1cb Mon Sep 17 00:00:00 2001 From: looskie <50378828+Looskie@users.noreply.github.com> Date: Sat, 26 Jun 2021 12:52:20 -0400 Subject: [PATCH 6/7] Refactoring: Logical names + cleaner code + better status codes --- pages/api/[...id].ts | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pages/api/[...id].ts b/pages/api/[...id].ts index 7ada28a..ed33cd8 100644 --- a/pages/api/[...id].ts +++ b/pages/api/[...id].ts @@ -18,7 +18,7 @@ type Parameters = { }; export default async function handler(req: NextApiRequest, res: NextApiResponse) { - let axiosRes; + let getUser; const params: Parameters = req.query, userId = req.query.id[0]; @@ -28,13 +28,13 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse< }); try { - axiosRes = await axios.get(`https://api.lanyard.rest/v1/users/${userId}`); - } catch (err) { - console.log(err); + getUser = await axios(`https://api.lanyard.rest/v1/users/${userId}`); + } catch (error) { + if (error.response.status === 404) return res.status(404).send({ error: "Invalid user!" }); - if (err.response.status === 404) return res.send({ error: "Invalid user!" }); + console.log(error); // Only console log the error if its not a 404 - return res.send({ + return res.status(400).send({ error: `Something went wrong! If everything looks correct and this still occurs, please contact @cnraddd on Twitter.`, }); } @@ -42,6 +42,6 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse< res.setHeader("Content-Type", "image/svg+xml; charset=utf-8"); res.setHeader("content-security-policy", "default-src 'none'; img-src * data:; style-src 'unsafe-inline'"); - let svg = await renderCard(axiosRes.data, params); + const svg = await renderCard(getUser.data, params); res.status(200).send(svg as any); } From b1c0da1ac0dcacfdc412c9323cf55303c141abe3 Mon Sep 17 00:00:00 2001 From: looskie <50378828+Looskie@users.noreply.github.com> Date: Sat, 26 Jun 2021 13:06:46 -0400 Subject: [PATCH 7/7] Refactoring: More specific error --- pages/api/[...id].ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/api/[...id].ts b/pages/api/[...id].ts index ed33cd8..ecb8c0c 100644 --- a/pages/api/[...id].ts +++ b/pages/api/[...id].ts @@ -24,7 +24,7 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse< if (!isSnowflake(userId)) return res.send({ - error: `Specify a valid Discord user ID! If everything looks correct and this still occurs, please contact @cnraddd on Twitter.`, + error: `That is not a valid snowflake ID!`, }); try {