Don't fetch all members in guild in Member.addToGuild
This commit is contained in:
parent
ead4a48e2f
commit
5563a92d25
@ -43,11 +43,11 @@ import { Webhook } from "./Webhook";
|
|||||||
export const PublicGuildRelations = [
|
export const PublicGuildRelations = [
|
||||||
"channels",
|
"channels",
|
||||||
"emojis",
|
"emojis",
|
||||||
"members",
|
|
||||||
"roles",
|
"roles",
|
||||||
"stickers",
|
"stickers",
|
||||||
"voice_states",
|
"voice_states",
|
||||||
"members.user",
|
// "members", // TODO: These are public, but all members should not be fetched.
|
||||||
|
// "members.user",
|
||||||
];
|
];
|
||||||
|
|
||||||
@Entity("guilds")
|
@Entity("guilds")
|
||||||
|
@ -10,6 +10,7 @@ import {
|
|||||||
JoinTable,
|
JoinTable,
|
||||||
ManyToMany,
|
ManyToMany,
|
||||||
ManyToOne,
|
ManyToOne,
|
||||||
|
Not,
|
||||||
PrimaryGeneratedColumn,
|
PrimaryGeneratedColumn,
|
||||||
RelationId,
|
RelationId,
|
||||||
} from "typeorm";
|
} from "typeorm";
|
||||||
@ -287,6 +288,19 @@ export class Member extends BaseClassWithoutId {
|
|||||||
relations: [...PublicGuildRelations, "system_channel"],
|
relations: [...PublicGuildRelations, "system_channel"],
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const memberCount = await Member.count({ where: { guild_id } });
|
||||||
|
const memberPreview = await Member.find({
|
||||||
|
where: {
|
||||||
|
guild_id,
|
||||||
|
user: {
|
||||||
|
sessions: {
|
||||||
|
status: Not("invisible" as "invisible") // lol typescript?
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
take: 10,
|
||||||
|
});
|
||||||
|
|
||||||
if (
|
if (
|
||||||
await Member.count({
|
await Member.count({
|
||||||
where: { id: user.id, guild: { id: guild_id } },
|
where: { id: user.id, guild: { id: guild_id } },
|
||||||
@ -342,8 +356,8 @@ export class Member extends BaseClassWithoutId {
|
|||||||
event: "GUILD_CREATE",
|
event: "GUILD_CREATE",
|
||||||
data: {
|
data: {
|
||||||
...guild,
|
...guild,
|
||||||
members: [...guild.members, { ...member, user }],
|
members: [...memberPreview, { ...member, user }],
|
||||||
member_count: (guild.member_count || 0) + 1,
|
member_count: memberCount + 1,
|
||||||
guild_hashes: {},
|
guild_hashes: {},
|
||||||
guild_scheduled_events: [],
|
guild_scheduled_events: [],
|
||||||
joined_at: member.joined_at,
|
joined_at: member.joined_at,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user