summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2024-11-14 13:13:12 +1100
committerGitHub <noreply@github.com>2024-11-14 13:13:12 +1100
commit762287e57b7a87ca17b07d4a4d4f867c2139231e (patch)
treef65c77db531fb6810852e31fb40cc39e4d4b90dd /src
parentMerge pull request #1214 from MathMan05/patch-2 (diff)
parentfix op 8 (diff)
downloadserver-ts-762287e57b7a87ca17b07d4a4d4f867c2139231e.tar.xz
Merge pull request #1233 from dank074/patch/fixOp8
fix opcode 8 handler: onRequestGuildMembers
Diffstat (limited to 'src')
-rw-r--r--src/gateway/opcodes/RequestGuildMembers.ts22
-rw-r--r--src/util/entities/Member.ts4
2 files changed, 14 insertions, 12 deletions
diff --git a/src/gateway/opcodes/RequestGuildMembers.ts b/src/gateway/opcodes/RequestGuildMembers.ts

index f83cf3760..e1cae95a3 100644 --- a/src/gateway/opcodes/RequestGuildMembers.ts +++ b/src/gateway/opcodes/RequestGuildMembers.ts
@@ -27,7 +27,7 @@ import { } from "@spacebar/util"; import { WebSocket, Payload, OPCODES, Send } from "@spacebar/gateway"; import { check } from "./instanceOf"; -import { FindManyOptions, In, Like } from "typeorm"; +import { FindManyOptions, ILike, In } from "typeorm"; export async function onRequestGuildMembers(this: WebSocket, { d }: Payload) { // Schema validation can only accept either string or array, so transforming it here to support both @@ -114,7 +114,7 @@ export async function onRequestGuildMembers(this: WebSocket, { d }: Payload) { if (query) { // @ts-expect-error memberFind.where is very much defined memberFind.where.user = { - username: Like(query + "%"), + username: ILike(query + "%"), }; } else if (user_ids && user_ids.length > 0) { // @ts-expect-error memberFind.where is still very much defined @@ -166,15 +166,17 @@ export async function onRequestGuildMembers(this: WebSocket, { d }: Payload) { }); } + if (chunks.length == 0) { + chunks.push({ + ...baseData, + members: [], + presences: presences ? [] : undefined, + chunk_index: 0, + chunk_count: 1, + }); + } + if (notFound.length > 0) { - if (chunks.length == 0) - chunks.push({ - ...baseData, - members: [], - presences: presences ? [] : undefined, - chunk_index: 0, - chunk_count: 1, - }); chunks[0].not_found = notFound; } diff --git a/src/util/entities/Member.ts b/src/util/entities/Member.ts
index 84d0b90c2..caa52eb38 100644 --- a/src/util/entities/Member.ts +++ b/src/util/entities/Member.ts
@@ -466,8 +466,8 @@ export class Member extends BaseClassWithoutId { member[x] = this[x]; }); - if (member.roles) member.roles = member.roles.map((x: Role) => x.id); - if (member.user) member.user = member.user.toPublicUser(); + if (this.roles) member.roles = this.roles.map((x: Role) => x.id); + if (this.user) member.user = this.user.toPublicUser(); return member as PublicMember; }