From 3a3417cded637b8f582ebd04dedefc2c117d25cd Mon Sep 17 00:00:00 2001 From: TheArcaneBrony Date: Sun, 4 Sep 2022 10:44:33 +0200 Subject: [PATCH] Prettier --- .github/ISSUE_TEMPLATE/bug_report.md | 30 ++-- .github/ISSUE_TEMPLATE/feature_request.md | 7 +- assets/index.html | 2 +- assets/schemas.json | Bin 39917 -> 23603 bytes src/Server.ts | 2 +- src/api/middlewares/TestClient.ts | 4 +- src/api/routes/applications/#id/bot/index.ts | 2 +- src/api/routes/auth/login.ts | 8 +- src/api/routes/auth/mfa/totp.ts | 2 +- .../verify/view-backup-codes-challenge.ts | 8 +- .../guilds/#guild_id/member-verification.ts | 4 +- .../skus/#sku_id/subscription-plans.ts | 150 +++++++++--------- .../users/@me/mfa/codes-verification.ts | 20 +-- src/api/routes/users/@me/mfa/totp/disable.ts | 2 +- src/api/routes/users/@me/mfa/totp/enable.ts | 2 +- src/api/util/index.ts | 2 +- src/api/util/utility/captcha.ts | 23 +-- src/util/entities/Member.ts | 15 +- .../1661885910534-guild-member-profiles.ts | 27 ++-- .../1661885830688-guild-member-profiles.ts | 27 ++-- .../1661885742207-guild-member-profiles.ts | 35 ++-- .../schemas/BackupCodesChallengeSchema.ts | 2 +- src/util/schemas/CodesVerificationSchema.ts | 2 +- src/util/schemas/index.ts | 2 +- 24 files changed, 190 insertions(+), 188 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 4684dec82..48c5d0a0e 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -1,10 +1,9 @@ --- name: Bug report about: Create a report to help us improve -title: '' -labels: '' -assignees: '' - +title: "" +labels: "" +assignees: "" --- **Describe the bug** @@ -12,6 +11,7 @@ A clear and concise description of what the bug is. **To Reproduce** Steps to reproduce the behavior: + 1. Go to '...' 2. Click on '....' 3. Scroll down to '....' @@ -24,18 +24,20 @@ A clear and concise description of what you expected to happen. If applicable, add console logs to help give more information about your problem. **System Information (please complete the following information):** - - OS: [e.g. Debian Linux, Arch Linux etc.] - - Version (If not applicable skip): [e.g Ubuntu 22.04 LTS/Windows Server 2022] - - Node Version: [e.g Node v18.7.0] - - Python 3 Version: [e.g Python 3.10.6] + +- OS: [e.g. Debian Linux, Arch Linux etc.] +- Version (If not applicable skip): [e.g Ubuntu 22.04 LTS/Windows Server 2022] +- Node Version: [e.g Node v18.7.0] +- Python 3 Version: [e.g Python 3.10.6] **Env and Software info** - - Release: [e.g. 0.1.0] - - Branch (if release is not applicable): [e.g Staging] - - Commit Hash (if release is not applicable): [e.g 401eda069a3ced17f1c43294d19765663cb8dcb7] - - Database: [e.g Postgres 14] - - Reverse Proxy: [e.g ngnix] - - Thread Count: [e.g 1] + +- Release: [e.g. 0.1.0] +- Branch (if release is not applicable): [e.g Staging] +- Commit Hash (if release is not applicable): [e.g 401eda069a3ced17f1c43294d19765663cb8dcb7] +- Database: [e.g Postgres 14] +- Reverse Proxy: [e.g ngnix] +- Thread Count: [e.g 1] **Additional context** Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md index bd1f64b6f..e553e964a 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -1,10 +1,9 @@ --- name: Feature request about: Suggest an feature for Fosscord Server -title: '' -labels: '' -assignees: '' - +title: "" +labels: "" +assignees: "" --- **Is your feature request related to a problem? Please describe.** diff --git a/assets/index.html b/assets/index.html index f73fe99f9..4513d0d23 100644 --- a/assets/index.html +++ b/assets/index.html @@ -72,7 +72,7 @@ localStorage.setItem("UserSettingsStore", JSON.stringify(settings)); } - + diff --git a/assets/schemas.json b/assets/schemas.json index f3d96959f37979df8f10c962e700773e2eb206a5..9ed4b27ec9e6f1a89041cb519a833d858d991fb3 100644 GIT binary patch literal 23603 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 diff --git a/src/Server.ts b/src/Server.ts index c28ca0f95..831204126 100644 --- a/src/Server.ts +++ b/src/Server.ts @@ -51,7 +51,7 @@ async function main() { app.use(Sentry.Handlers.requestHandler()); app.use(Sentry.Handlers.tracingHandler()); } - + server.listen(port); await Promise.all([api.start(), cdn.start(), gateway.start()]); diff --git a/src/api/middlewares/TestClient.ts b/src/api/middlewares/TestClient.ts index 2c1959944..3afd03398 100644 --- a/src/api/middlewares/TestClient.ts +++ b/src/api/middlewares/TestClient.ts @@ -45,8 +45,8 @@ export default function TestClient(app: Application) { res.set(name, value); }); } else { - if(req.params.file.endsWith(".map")) { - return res.status(404).send("Not found"); + if (req.params.file.endsWith(".map")) { + return res.status(404).send("Not found"); } console.log(`[TestClient] Downloading file not yet cached! Asset file: ${req.params.file}`); response = await fetch(`https://discord.com/assets/${req.params.file}`, { diff --git a/src/api/routes/applications/#id/bot/index.ts b/src/api/routes/applications/#id/bot/index.ts index 2ac3523bd..6d054c752 100644 --- a/src/api/routes/applications/#id/bot/index.ts +++ b/src/api/routes/applications/#id/bot/index.ts @@ -1,5 +1,5 @@ import { route } from "@fosscord/api"; -import { Application, Config, FieldErrors, generateToken, handleFile, OrmUtils, trimSpecial, User, HTTPError } from "@fosscord/util"; +import { Application, Config, FieldErrors, generateToken, handleFile, HTTPError, OrmUtils, trimSpecial, User } from "@fosscord/util"; import { Request, Response, Router } from "express"; import { verifyToken } from "node-2fa"; diff --git a/src/api/routes/auth/login.ts b/src/api/routes/auth/login.ts index 68b2656a2..045b86ebb 100644 --- a/src/api/routes/auth/login.ts +++ b/src/api/routes/auth/login.ts @@ -1,7 +1,7 @@ -import { Request, Response, Router } from "express"; -import { route, getIpAdress, verifyCaptcha } from "@fosscord/api"; -import { Config, User, generateToken, adjustEmail, FieldErrors, LoginSchema } from "@fosscord/util"; +import { getIpAdress, route, verifyCaptcha } from "@fosscord/api"; +import { adjustEmail, Config, FieldErrors, generateToken, LoginSchema, User } from "@fosscord/util"; import crypto from "crypto"; +import { Request, Response, Router } from "express"; let bcrypt: any; try { @@ -38,7 +38,7 @@ router.post("/", route({ body: "LoginSchema" }), async (req: Request, res: Respo captcha_key: verify["error-codes"], captcha_sitekey: sitekey, captcha_service: service - }) + }); } } diff --git a/src/api/routes/auth/mfa/totp.ts b/src/api/routes/auth/mfa/totp.ts index 4b080af62..65ec7f2f4 100644 --- a/src/api/routes/auth/mfa/totp.ts +++ b/src/api/routes/auth/mfa/totp.ts @@ -1,5 +1,5 @@ import { route } from "@fosscord/api"; -import { BackupCode, generateToken, TotpSchema, User, HTTPError } from "@fosscord/util"; +import { BackupCode, generateToken, HTTPError, TotpSchema, User } from "@fosscord/util"; import { Request, Response, Router } from "express"; import { verifyToken } from "node-2fa"; const router = Router(); diff --git a/src/api/routes/auth/verify/view-backup-codes-challenge.ts b/src/api/routes/auth/verify/view-backup-codes-challenge.ts index d524e0f7b..846e186b2 100644 --- a/src/api/routes/auth/verify/view-backup-codes-challenge.ts +++ b/src/api/routes/auth/verify/view-backup-codes-challenge.ts @@ -1,6 +1,6 @@ -import { Router, Request, Response } from "express"; import { route } from "@fosscord/api"; -import { FieldErrors, User, BackupCodesChallengeSchema } from "@fosscord/util"; +import { BackupCodesChallengeSchema, FieldErrors, User } from "@fosscord/util"; +import { Request, Response, Router } from "express"; let bcrypt: any; try { @@ -17,13 +17,13 @@ router.post("/", route({ body: "BackupCodesChallengeSchema" }), async (req: Requ const user = await User.findOneOrFail({ where: { id: req.user_id }, select: ["data"] }); - if (!await bcrypt.compare(password, user.data.hash || "")) { + if (!(await bcrypt.compare(password, user.data.hash || ""))) { throw FieldErrors({ password: { message: req.t("auth:login.INVALID_PASSWORD"), code: "INVALID_PASSWORD" } }); } return res.json({ nonce: "NoncePlaceholder", - regenerate_nonce: "RegenNoncePlaceholder", + regenerate_nonce: "RegenNoncePlaceholder" }); }); diff --git a/src/api/routes/guilds/#guild_id/member-verification.ts b/src/api/routes/guilds/#guild_id/member-verification.ts index 265a1b356..bb3ffb0ad 100644 --- a/src/api/routes/guilds/#guild_id/member-verification.ts +++ b/src/api/routes/guilds/#guild_id/member-verification.ts @@ -1,8 +1,8 @@ -import { Router, Request, Response } from "express"; import { route } from "@fosscord/api"; +import { Request, Response, Router } from "express"; const router = Router(); -router.get("/",route({}), async (req: Request, res: Response) => { +router.get("/", route({}), async (req: Request, res: Response) => { // TODO: member verification res.status(404).json({ diff --git a/src/api/routes/store/published-listings/skus/#sku_id/subscription-plans.ts b/src/api/routes/store/published-listings/skus/#sku_id/subscription-plans.ts index f8c78bc58..a5fe0cf2f 100644 --- a/src/api/routes/store/published-listings/skus/#sku_id/subscription-plans.ts +++ b/src/api/routes/store/published-listings/skus/#sku_id/subscription-plans.ts @@ -134,159 +134,159 @@ const skus = new Map([ price: 0, price_tier: null } - ], + ] ], [ "978380684370378762", [ [ { - "id": "978380692553465866", - "name": "Premium Tier 0 Monthly", - "interval": 1, - "interval_count": 1, - "tax_inclusive": true, - "sku_id": "978380684370378762", - "currency": "usd", - "price": 299, - "price_tier": null, - "prices": { + id: "978380692553465866", + name: "Premium Tier 0 Monthly", + interval: 1, + interval_count: 1, + tax_inclusive: true, + sku_id: "978380684370378762", + currency: "usd", + price: 299, + price_tier: null, + prices: { "0": { - "country_prices": { - "country_code": "US", - "prices": [ + country_prices: { + country_code: "US", + prices: [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ] }, - "payment_source_prices": { + payment_source_prices: { "775487223059316758": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ], "736345864146255982": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ], "683074999590060249": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ] } }, "3": { - "country_prices": { - "country_code": "US", - "prices": [ + country_prices: { + country_code: "US", + prices: [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ] }, - "payment_source_prices": { + payment_source_prices: { "775487223059316758": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ], "736345864146255982": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ], "683074999590060249": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ] } }, "4": { - "country_prices": { - "country_code": "US", - "prices": [ + country_prices: { + country_code: "US", + prices: [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ] }, - "payment_source_prices": { + payment_source_prices: { "775487223059316758": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ], "736345864146255982": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ], "683074999590060249": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ] } }, "1": { - "country_prices": { - "country_code": "US", - "prices": [ + country_prices: { + country_code: "US", + prices: [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ] }, - "payment_source_prices": { + payment_source_prices: { "775487223059316758": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ], "736345864146255982": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ], "683074999590060249": [ { - "currency": "usd", - "amount": 0, - "exponent": 2 + currency: "usd", + amount: 0, + exponent: 2 } ] } diff --git a/src/api/routes/users/@me/mfa/codes-verification.ts b/src/api/routes/users/@me/mfa/codes-verification.ts index 071c71fa8..570606e0e 100644 --- a/src/api/routes/users/@me/mfa/codes-verification.ts +++ b/src/api/routes/users/@me/mfa/codes-verification.ts @@ -1,6 +1,6 @@ -import { Router, Request, Response } from "express"; import { route } from "@fosscord/api"; -import { BackupCode, generateMfaBackupCodes, User, CodesVerificationSchema } from "@fosscord/util"; +import { BackupCode, CodesVerificationSchema, generateMfaBackupCodes, User } from "@fosscord/util"; +import { Request, Response, Router } from "express"; const router = Router(); @@ -14,27 +14,23 @@ router.post("/", route({ body: "CodesVerificationSchema" }), async (req: Request var codes: BackupCode[]; if (regenerate) { - await BackupCode.update( - { user: { id: req.user_id } }, - { expired: true } - ); + await BackupCode.update({ user: { id: req.user_id } }, { expired: true }); codes = generateMfaBackupCodes(req.user_id); - await Promise.all(codes.map(x => x.save())); - } - else { + await Promise.all(codes.map((x) => x.save())); + } else { codes = await BackupCode.find({ where: { user: { - id: req.user_id, + id: req.user_id }, - expired: false, + expired: false } }); } return res.json({ - backup_codes: codes.map(x => ({ ...x, expired: undefined })), + backup_codes: codes.map((x) => ({ ...x, expired: undefined })) }); }); diff --git a/src/api/routes/users/@me/mfa/totp/disable.ts b/src/api/routes/users/@me/mfa/totp/disable.ts index 07fdbb054..a53fa816b 100644 --- a/src/api/routes/users/@me/mfa/totp/disable.ts +++ b/src/api/routes/users/@me/mfa/totp/disable.ts @@ -1,5 +1,5 @@ import { route } from "@fosscord/api"; -import { BackupCode, generateToken, TotpDisableSchema, User, HTTPError } from "@fosscord/util"; +import { BackupCode, generateToken, HTTPError, TotpDisableSchema, User } from "@fosscord/util"; import { Request, Response, Router } from "express"; import { verifyToken } from "node-2fa"; diff --git a/src/api/routes/users/@me/mfa/totp/enable.ts b/src/api/routes/users/@me/mfa/totp/enable.ts index adf51d6e7..0bf1a188d 100644 --- a/src/api/routes/users/@me/mfa/totp/enable.ts +++ b/src/api/routes/users/@me/mfa/totp/enable.ts @@ -1,5 +1,5 @@ import { route } from "@fosscord/api"; -import { BackupCode, Config, generateMfaBackupCodes, generateToken, TotpEnableSchema, User, HTTPError } from "@fosscord/util"; +import { BackupCode, Config, generateMfaBackupCodes, generateToken, HTTPError, TotpEnableSchema, User } from "@fosscord/util"; import { Request, Response, Router } from "express"; import { verifyToken } from "node-2fa"; diff --git a/src/api/util/index.ts b/src/api/util/index.ts index 31e753251..d06860cd6 100644 --- a/src/api/util/index.ts +++ b/src/api/util/index.ts @@ -3,8 +3,8 @@ export * from "./handlers/Message"; export * from "./handlers/route"; export * from "./handlers/Voice"; export * from "./utility/Base64"; +export * from "./utility/captcha"; export * from "./utility/ipAddress"; export * from "./utility/passwordStrength"; export * from "./utility/RandomInviteID"; export * from "./utility/String"; -export * from "./utility/captcha"; \ No newline at end of file diff --git a/src/api/util/utility/captcha.ts b/src/api/util/utility/captcha.ts index 739647d2d..02983f3fb 100644 --- a/src/api/util/utility/captcha.ts +++ b/src/api/util/utility/captcha.ts @@ -7,8 +7,8 @@ export interface hcaptchaResponse { hostname: string; credit: boolean; "error-codes": string[]; - score: number; // enterprise only - score_reason: string[]; // enterprise only + score: number; // enterprise only + score_reason: string[]; // enterprise only } export interface recaptchaResponse { @@ -22,8 +22,8 @@ export interface recaptchaResponse { const verifyEndpoints = { hcaptcha: "https://hcaptcha.com/siteverify", - recaptcha: "https://www.google.com/recaptcha/api/siteverify", -} + recaptcha: "https://www.google.com/recaptcha/api/siteverify" +}; export async function verifyCaptcha(response: string, ip?: string) { const { security } = Config.get(); @@ -34,13 +34,14 @@ export async function verifyCaptcha(response: string, ip?: string) { const res = await fetch(verifyEndpoints[service], { method: "POST", headers: { - "Content-Type": "application/x-www-form-urlencoded", + "Content-Type": "application/x-www-form-urlencoded" }, - body: `response=${encodeURIComponent(response)}` - + `&secret=${encodeURIComponent(secret!)}` - + `&sitekey=${encodeURIComponent(sitekey!)}` - + (ip ? `&remoteip=${encodeURIComponent(ip!)}` : ""), + body: + `response=${encodeURIComponent(response)}` + + `&secret=${encodeURIComponent(secret!)}` + + `&sitekey=${encodeURIComponent(sitekey!)}` + + (ip ? `&remoteip=${encodeURIComponent(ip!)}` : "") }); - return await res.json() as hcaptchaResponse | recaptchaResponse; -} \ No newline at end of file + return (await res.json()) as hcaptchaResponse | recaptchaResponse; +} diff --git a/src/util/entities/Member.ts b/src/util/entities/Member.ts index 9e9131fe5..da0b240e4 100644 --- a/src/util/entities/Member.ts +++ b/src/util/entities/Member.ts @@ -1,6 +1,13 @@ import { Column, Entity, Index, JoinColumn, JoinTable, ManyToMany, ManyToOne, PrimaryGeneratedColumn, RelationId } from "typeorm"; -import { Ban, PublicGuildRelations, Message } from "."; -import { GuildCreateEvent, GuildDeleteEvent, GuildMemberAddEvent, GuildMemberRemoveEvent, GuildMemberUpdateEvent, MessageCreateEvent } from "../interfaces"; +import { Ban, Message, PublicGuildRelations } from "."; +import { + GuildCreateEvent, + GuildDeleteEvent, + GuildMemberAddEvent, + GuildMemberRemoveEvent, + GuildMemberUpdateEvent, + MessageCreateEvent +} from "../interfaces"; import { Config, emitEvent } from "../util"; import { DiscordApiErrors } from "../util/Constants"; import { HTTPError } from "../util/imports/HTTPError"; @@ -301,7 +308,7 @@ export class Member extends BaseClassWithoutId { presences: [], stage_instances: [], threads: [], - embedded_activities: [], + embedded_activities: [] }, user_id } as GuildCreateEvent) @@ -320,7 +327,7 @@ export class Member extends BaseClassWithoutId { attachments: [], embeds: [], sticker_items: [], - edited_timestamp: undefined, + edited_timestamp: undefined }); await Promise.all([ message.save(), diff --git a/src/util/migrations/mariadb/1661885910534-guild-member-profiles.ts b/src/util/migrations/mariadb/1661885910534-guild-member-profiles.ts index 6e1ac3f87..21ee20270 100644 --- a/src/util/migrations/mariadb/1661885910534-guild-member-profiles.ts +++ b/src/util/migrations/mariadb/1661885910534-guild-member-profiles.ts @@ -1,40 +1,39 @@ import { MigrationInterface, QueryRunner } from "typeorm"; export class guildMemberProfiles1661885910534 implements MigrationInterface { - name = 'guildMemberProfiles1661885910534' + name = "guildMemberProfiles1661885910534"; - public async up(queryRunner: QueryRunner): Promise { - await queryRunner.query(` + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.query(` ALTER TABLE \`members\` ADD \`avatar\` varchar(255) NULL `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE \`members\` ADD \`banner\` varchar(255) NULL `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE \`members\` ADD \`bio\` varchar(255) NOT NULL `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE \`members\` ADD \`communication_disabled_until\` datetime NULL `); - } + } - public async down(queryRunner: QueryRunner): Promise { - await queryRunner.query(` + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query(` ALTER TABLE \`members\` DROP COLUMN \`communication_disabled_until\` `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE \`members\` DROP COLUMN \`bio\` `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE \`members\` DROP COLUMN \`banner\` `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE \`members\` DROP COLUMN \`avatar\` `); - } - + } } diff --git a/src/util/migrations/postgres/1661885830688-guild-member-profiles.ts b/src/util/migrations/postgres/1661885830688-guild-member-profiles.ts index 816712506..c6b69234b 100644 --- a/src/util/migrations/postgres/1661885830688-guild-member-profiles.ts +++ b/src/util/migrations/postgres/1661885830688-guild-member-profiles.ts @@ -1,40 +1,39 @@ import { MigrationInterface, QueryRunner } from "typeorm"; export class guildMemberProfiles1661885830688 implements MigrationInterface { - name = 'guildMemberProfiles1661885830688' + name = "guildMemberProfiles1661885830688"; - public async up(queryRunner: QueryRunner): Promise { - await queryRunner.query(` + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.query(` ALTER TABLE "members" ADD "avatar" character varying `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE "members" ADD "banner" character varying `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE "members" ADD "bio" character varying NOT NULL default '' `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE "members" ADD "communication_disabled_until" TIMESTAMP `); - } + } - public async down(queryRunner: QueryRunner): Promise { - await queryRunner.query(` + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query(` ALTER TABLE "members" DROP COLUMN "communication_disabled_until" `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE "members" DROP COLUMN "bio" `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE "members" DROP COLUMN "banner" `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE "members" DROP COLUMN "avatar" `); - } - + } } diff --git a/src/util/migrations/sqlite/1661885742207-guild-member-profiles.ts b/src/util/migrations/sqlite/1661885742207-guild-member-profiles.ts index 24ec9c727..03932c3a3 100644 --- a/src/util/migrations/sqlite/1661885742207-guild-member-profiles.ts +++ b/src/util/migrations/sqlite/1661885742207-guild-member-profiles.ts @@ -1,13 +1,13 @@ import { MigrationInterface, QueryRunner } from "typeorm"; export class guildMemberProfiles1661885742207 implements MigrationInterface { - name = 'guildMemberProfiles1661885742207' + name = "guildMemberProfiles1661885742207"; - public async up(queryRunner: QueryRunner): Promise { - await queryRunner.query(` + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.query(` DROP INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" `); - await queryRunner.query(` + await queryRunner.query(` CREATE TABLE "temporary_members" ( "index" integer PRIMARY KEY AUTOINCREMENT NOT NULL, "id" varchar NOT NULL, @@ -29,7 +29,7 @@ export class guildMemberProfiles1661885742207 implements MigrationInterface { CONSTRAINT "FK_16aceddd5b89825b8ed6029ad1c" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); - await queryRunner.query(` + await queryRunner.query(` INSERT INTO "temporary_members"( "index", "id", @@ -58,27 +58,27 @@ export class guildMemberProfiles1661885742207 implements MigrationInterface { "joined_by" FROM "members" `); - await queryRunner.query(` + await queryRunner.query(` DROP TABLE "members" `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE "temporary_members" RENAME TO "members" `); - await queryRunner.query(` + await queryRunner.query(` CREATE UNIQUE INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" ON "members" ("id", "guild_id") `); - } + } - public async down(queryRunner: QueryRunner): Promise { - await queryRunner.query(` + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query(` DROP INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" `); - await queryRunner.query(` + await queryRunner.query(` ALTER TABLE "members" RENAME TO "temporary_members" `); - await queryRunner.query(` + await queryRunner.query(` CREATE TABLE "members" ( "index" integer PRIMARY KEY AUTOINCREMENT NOT NULL, "id" varchar NOT NULL, @@ -96,7 +96,7 @@ export class guildMemberProfiles1661885742207 implements MigrationInterface { CONSTRAINT "FK_16aceddd5b89825b8ed6029ad1c" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); - await queryRunner.query(` + await queryRunner.query(` INSERT INTO "members"( "index", "id", @@ -125,12 +125,11 @@ export class guildMemberProfiles1661885742207 implements MigrationInterface { "joined_by" FROM "temporary_members" `); - await queryRunner.query(` + await queryRunner.query(` DROP TABLE "temporary_members" `); - await queryRunner.query(` + await queryRunner.query(` CREATE UNIQUE INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" ON "members" ("id", "guild_id") `); - } - + } } diff --git a/src/util/schemas/BackupCodesChallengeSchema.ts b/src/util/schemas/BackupCodesChallengeSchema.ts index d6b519b79..8e2f0649f 100644 --- a/src/util/schemas/BackupCodesChallengeSchema.ts +++ b/src/util/schemas/BackupCodesChallengeSchema.ts @@ -1,3 +1,3 @@ export interface BackupCodesChallengeSchema { password: string; -} \ No newline at end of file +} diff --git a/src/util/schemas/CodesVerificationSchema.ts b/src/util/schemas/CodesVerificationSchema.ts index e8e2e7b4e..73c371eb6 100644 --- a/src/util/schemas/CodesVerificationSchema.ts +++ b/src/util/schemas/CodesVerificationSchema.ts @@ -2,4 +2,4 @@ export interface CodesVerificationSchema { key: string; nonce: string; regenerate?: boolean; -} \ No newline at end of file +} diff --git a/src/util/schemas/index.ts b/src/util/schemas/index.ts index 320593ec3..4e0acb229 100644 --- a/src/util/schemas/index.ts +++ b/src/util/schemas/index.ts @@ -44,4 +44,4 @@ export * from "./UserSettingsSchema"; export * from "./VanityUrlSchema"; export * from "./VoiceStateUpdateSchema"; export * from "./WebhookCreateSchema"; -export * from "./WidgetModifySchema"; \ No newline at end of file +export * from "./WidgetModifySchema";