Migrate GuildUpdate to satisfies, part of #1577

This commit is contained in:
Rory&
2026-03-08 16:16:20 +01:00
parent e0baf02efd
commit 95fa10b3d0
2 changed files with 37 additions and 19 deletions

View File

@@ -17,10 +17,23 @@
*/
import { route } from "@spacebar/api";
import { Channel, DiscordApiErrors, Guild, GuildUpdateEvent, Member, Permissions, SpacebarApiErrors, emitEvent, getPermission, getRights, handleFile } from "@spacebar/util";
import {
Channel,
DiscordApiErrors,
Guild,
GuildUpdateEvent,
Member,
Permissions,
SpacebarApiErrors,
emitEvent,
getPermission,
getRights,
handleFile,
Config,
} from "@spacebar/util";
import { Request, Response, Router } from "express";
import { HTTPError } from "lambert-server";
import { GuildUpdateSchema } from "@spacebar/schemas";
import { GuildCreateResponse, GuildUpdateSchema } from "@spacebar/schemas";
const router = Router({ mergeParams: true });
@@ -200,9 +213,16 @@ router.patch(
guild.save(),
emitEvent({
event: "GUILD_UPDATE",
data,
data: {
...data,
// TODO: did i do this right?
afk_channel_id: data.afk_channel_id ?? undefined,
public_updates_channel_id: data.public_updates_channel_id ?? undefined,
rules_channel_id: data.rules_channel_id ?? undefined,
system_channel_id: data.system_channel_id ?? undefined,
} satisfies GuildCreateResponse, // apparently we dont have a separate schema for this
guild_id,
} as GuildUpdateEvent),
} satisfies GuildUpdateEvent),
]);
return res.json(data);

View File

@@ -22,22 +22,20 @@ import { GuildUpdateSchema } from "@spacebar/schemas";
export interface GuildCreateResponse extends Omit<GuildUpdateSchema, "name"> {
id: string;
name: string;
primary_category_id: string | undefined;
large: boolean | undefined;
max_members: number | undefined;
max_presences: number | undefined;
max_video_channel_users: number | undefined;
member_count: number | undefined;
presence_count: number | undefined;
template_id: string | undefined;
mfa_level: number | undefined;
owner_id: string | undefined;
premium_subscription_count: number | undefined;
premium_tier: number | undefined;
large?: boolean;
max_members?: number;
max_presences?: number;
max_video_channel_users?: number;
member_count?: number;
presence_count?: number;
mfa_level?: number;
owner_id?: string;
premium_subscription_count?: number;
premium_tier?: number;
welcome_screen: GuildWelcomeScreen;
widget_channel_id: string | undefined;
widget_channel_id?: string;
widget_enabled: boolean;
nsfw_level: number | undefined;
nsfw_level?: number;
nsfw: boolean;
parent: string | undefined;
parent?: string;
}