From 6326485ed93f24d85c18737b59c352befb991301 Mon Sep 17 00:00:00 2001 From: Aki Date: Tue, 22 Sep 2026 12:54:27 +0900 Subject: [PATCH] feat: expose approximate_member_count on Server Signed-off-by: Aki --- src/classes/Server.ts | 7 +++++++ src/hydration/server.ts | 3 +++ 2 files changed, 10 insertions(+) diff --git a/src/classes/Server.ts b/src/classes/Server.ts index f732291a..ca48bb9e 100644 --- a/src/classes/Server.ts +++ b/src/classes/Server.ts @@ -198,6 +198,13 @@ export class Server { return this.#collection.getUnderlyingObject(this.id).discoverable; } + /** + * Approximate amount of members in this server + */ + get approximateMemberCount(): number { + return this.#collection.getUnderlyingObject(this.id).approximateMemberCount; + } + /** * Whether this server is marked as mature */ diff --git a/src/hydration/server.ts b/src/hydration/server.ts index 87a4475a..50c3bd90 100644 --- a/src/hydration/server.ts +++ b/src/hydration/server.ts @@ -33,6 +33,7 @@ export type HydratedServer = { analytics: boolean; discoverable: boolean; nsfw: boolean; + approximateMemberCount: number; }; export const serverHydration: Hydrate = { @@ -42,6 +43,7 @@ export const serverHydration: Hydrate = { channels: "channelIds", system_messages: "systemMessages", default_permissions: "defaultPermissions", + approximate_member_count: "approximateMemberCount", }, functions: { id: (server) => server._id, @@ -65,6 +67,7 @@ export const serverHydration: Hydrate = { analytics: (server) => server.analytics || false, discoverable: (server) => server.discoverable || false, nsfw: (server) => server.nsfw || false, + approximateMemberCount: (server) => server.approximate_member_count ?? 0, }, initialHydration: () => ({ channelIds: new ReactiveSet(),