diff --git a/src/api/routes/users/@me/settings.ts b/src/api/routes/users/@me/settings.ts
index d220b859..57ffba14 100644
--- a/src/api/routes/users/@me/settings.ts
+++ b/src/api/routes/users/@me/settings.ts
@@ -24,81 +24,81 @@ import { UserSettingsUpdateSchema } from "@spacebar/schemas";
const router = Router({ mergeParams: true });
router.get(
- "/",
- route({
- responses: {
- 200: {
- body: "UserSettings",
- },
- 404: {
- body: "APIErrorResponse",
- },
- },
- }),
- async (req: Request, res: Response) => {
- const settings = await UserSettings.getOrDefault(req.user_id);
- return res.json(settings);
- },
+ "/",
+ route({
+ responses: {
+ 200: {
+ body: "UserSettings",
+ },
+ 404: {
+ body: "APIErrorResponse",
+ },
+ },
+ }),
+ async (req: Request, res: Response) => {
+ const settings = await UserSettings.getOrDefault(req.user_id);
+ return res.json(settings);
+ },
);
router.patch(
- "/",
- route({
- requestBody: "UserSettingsUpdateSchema",
- responses: {
- 200: {
- body: "UserSettings",
- },
- 400: {
- body: "APIErrorResponse",
- },
- 404: {
- body: "APIErrorResponse",
- },
- },
- }),
- async (req: Request, res: Response) => {
- const body = req.body as UserSettingsUpdateSchema;
- if (!body) return res.status(400).json({ code: 400, message: "Invalid request body" });
- if (body.locale === "en") body.locale = "en-US"; // fix discord client crash on unknown locale
+ "/",
+ route({
+ requestBody: "UserSettingsUpdateSchema",
+ responses: {
+ 200: {
+ body: "UserSettings",
+ },
+ 400: {
+ body: "APIErrorResponse",
+ },
+ 404: {
+ body: "APIErrorResponse",
+ },
+ },
+ }),
+ async (req: Request, res: Response) => {
+ const body = req.body as UserSettingsUpdateSchema;
+ if (!body) return res.status(400).json({ code: 400, message: "Invalid request body" });
+ if (body.locale === "en") body.locale = "en-US"; // fix discord client crash on unknown locale
- const user = await User.findOneOrFail({
- where: { id: req.user_id, bot: false },
- relations: ["settings"],
- });
+ const user = await User.findOneOrFail({
+ where: { id: req.user_id, bot: false },
+ relations: ["settings"],
+ });
- if (!user.settings) user.settings = UserSettings.create<UserSettings>(body);
- else user.settings.assign(body);
+ if (!user.settings) user.settings = UserSettings.create<UserSettings>(body);
+ else user.settings.assign(body);
- if (body.guild_folders) user.settings.guild_folders = body.guild_folders;
+ if (body.guild_folders) user.settings.guild_folders = body.guild_folders;
- await user.settings.save();
- await user.save();
- if (body.status) {
- const [session] = (await Session.find({
- where: { user_id: user.id },
- })) as [Session | undefined];
- if (session) {
- session.status = body.status;
+ await user.settings.save();
+ await user.save();
+ if (body.status) {
+ const [session] = (await Session.find({
+ where: { user_id: user.id },
+ })) as [Session | undefined];
+ if (session) {
+ session.status = body.status;
- await Promise.all([
- emitEvent({
- event: "PRESENCE_UPDATE",
- user_id: user.id,
- data: {
- user: user.toPublicUser(),
- activities: session.activities,
- client_status: session?.client_status,
- status: session.getPublicStatus(),
- },
- } as PresenceUpdateEvent),
- session.save(),
- ]);
- }
- }
+ await Promise.all([
+ emitEvent({
+ event: "PRESENCE_UPDATE",
+ user_id: user.id,
+ data: {
+ user: user.toPublicUser(),
+ activities: session.activities,
+ client_status: session?.client_status,
+ status: session.getPublicStatus(),
+ },
+ } as PresenceUpdateEvent),
+ session.save(),
+ ]);
+ }
+ }
- res.json({ ...user.settings, index: undefined });
- },
+ res.json({ ...user.settings, index: undefined });
+ },
);
export default router;
|