diff --git a/pages/addbot.tsx b/pages/addbot.tsx index 9964d30..cdad9fc 100644 --- a/pages/addbot.tsx +++ b/pages/addbot.tsx @@ -6,7 +6,7 @@ import Link from 'next/link' import { Form, Formik } from 'formik' import { get } from '@utils/Query' -import { parseCookie, redirectTo } from '@utils/Tools' +import { cleanObject, parseCookie, redirectTo } from '@utils/Tools' import { AddBotSubmit, AddBotSubmitSchema } from '@utils/Yup' import { categories, library } from '@utils/Constants' import { ResponseProps, SubmittedBot, User } from '@types' @@ -36,7 +36,7 @@ const AddBot:NextPage = ({ logged, user, csrfToken }) => { } async function submitBot(value: AddBotSubmit) { - const res = await Fetch(`/bots/${value.id}`, { method: 'POST', body: JSON.stringify(value), headers: { 'content-type': 'application/json' } }) + const res = await Fetch(`/bots/${value.id}`, { method: 'POST', body: JSON.stringify(cleanObject(value)), headers: { 'content-type': 'application/json' } }) setData(res) } if(!logged) { diff --git a/utils/Tools.ts b/utils/Tools.ts index 32841b4..0fce7f8 100644 --- a/utils/Tools.ts +++ b/utils/Tools.ts @@ -1,11 +1,9 @@ import { Readable } from 'stream' -import { NextPageContext } from 'next' import cookie from 'cookie' import { BotFlags, ImageOptions, UserFlags } from '@types' import { KoreanbotsEndPoints, Oauth } from './Constants' import { NextRouter } from 'next/router' -import { IncomingMessage } from 'http' export function formatNumber(value: number):string { const suffixes = ['', '만', '억', '조','해'] @@ -105,4 +103,14 @@ export function redirectTo(router: NextRouter, to: string) { return } +// eslint-disable-next-line @typescript-eslint/no-explicit-any +export function cleanObject>(obj: T): T { + for (const propName in obj) { + if (obj[propName] !== 0 && !obj[propName]) { + delete obj[propName] + } + } + return obj +} + export { anchorHeader, twemoji, customEmoji } from './ShowdownExtensions' \ No newline at end of file