Fix LazyRequest throwing when no offline group exists
Wrap getRepository in try catch
This commit is contained in:
parent
8ec17b74cb
commit
fe5e22c93c
@ -18,7 +18,9 @@ async function getMembers(guild_id: string, range: [number, number]) {
|
|||||||
}
|
}
|
||||||
// TODO: wait for typeorm to implement ordering for .find queries https://github.com/typeorm/typeorm/issues/2620
|
// TODO: wait for typeorm to implement ordering for .find queries https://github.com/typeorm/typeorm/issues/2620
|
||||||
|
|
||||||
let members = await getRepository(Member)
|
let members;
|
||||||
|
try {
|
||||||
|
members = await getRepository(Member)
|
||||||
.createQueryBuilder("member")
|
.createQueryBuilder("member")
|
||||||
.where("member.guild_id = :guild_id", { guild_id })
|
.where("member.guild_id = :guild_id", { guild_id })
|
||||||
.leftJoinAndSelect("member.roles", "role")
|
.leftJoinAndSelect("member.roles", "role")
|
||||||
@ -34,6 +36,16 @@ async function getMembers(guild_id: string, range: [number, number]) {
|
|||||||
.offset(Number(range[0]) || 0)
|
.offset(Number(range[0]) || 0)
|
||||||
.limit(Number(range[1]) || 100)
|
.limit(Number(range[1]) || 100)
|
||||||
.getMany();
|
.getMany();
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
console.error(`LazyRequest`, e);
|
||||||
|
return {
|
||||||
|
items: [],
|
||||||
|
groups: [],
|
||||||
|
range: [],
|
||||||
|
members: [],
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const groups = [] as any[];
|
const groups = [] as any[];
|
||||||
const items = [];
|
const items = [];
|
||||||
@ -155,7 +167,7 @@ export async function onLazyRequest(this: WebSocket, { d }: Payload) {
|
|||||||
op: "SYNC",
|
op: "SYNC",
|
||||||
range: x.range,
|
range: x.range,
|
||||||
})),
|
})),
|
||||||
online_count: member_count - groups.find(x => x.id == "offline").count,
|
online_count: member_count - (groups.find(x => x.id == "offline")?.count ?? 0),
|
||||||
member_count,
|
member_count,
|
||||||
id: "everyone",
|
id: "everyone",
|
||||||
guild_id,
|
guild_id,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user