diff --git "a/api/src/routes/guilds/\043guild_id/bans.ts" "b/api/src/routes/guilds/\043guild_id/bans.ts" index 4d12ae4..1e09a38 100644 --- "a/api/src/routes/guilds/\043guild_id/bans.ts" +++ "b/api/src/routes/guilds/\043guild_id/bans.ts" @@ -6,9 +6,21 @@ export interface BanCreateSchema { delete_message_days?: string; reason?: string; -} +}; + +export interface BanRegistrySchema { + id: string; + user_id: string; + guild_id: string; + executor_id: string; + ip?: string; + reason?: string | undefined; +}; const router: Router = Router(); + +/* TODO: Deleting the secrets is just a temporary go-around. Views should be implemented for both safety and better handling. */ + router.get("/", route({ permission: "BAN_MEMBERS" }), async (req: Request, res: Response) => { const { guild_id } = req.params; @@ -16,7 +28,7 @@ /* Filter secret from database registry.*/ - bans.forEach((registry) => { + bans.forEach((registry: BanRegistrySchema) => { delete registry.ip; }); @@ -27,7 +39,7 @@ const { guild_id } = req.params; const user_id = req.params.ban; - let ban = await Ban.findOneOrFail({ guild_id: guild_id, user_id: user_id }); + let ban = await Ban.findOneOrFail({ guild_id: guild_id, user_id: user_id }) as BanRegistrySchema; /* Filter secret from registry. */