Transform the account field in sessions

When serving sessions instead of passing the ServerUser directly,
convert it to the ApiAccount format.
This commit is contained in:
Hornwitser 2025-09-06 18:56:52 +02:00
parent 37edf122a1
commit adeef4f629
2 changed files with 19 additions and 2 deletions

View file

@ -3,7 +3,7 @@
SPDX-License-Identifier: AGPL-3.0-or-later
*/
import type { ServerUser } from "~/server/database"
import type { ApiTombstone, ApiUser, ApiUserDetails } from "~/shared/types/api";
import type { ApiAccount, ApiTombstone, ApiUser, ApiUserDetails } from "~/shared/types/api";
export function serverUserToApi(user: ServerUser): ApiUser | ApiTombstone {
if (user.deleted) {
@ -38,3 +38,19 @@ export function serverUserToApiDetails(user: ServerUser): ApiUserDetails | ApiTo
locale: user.locale,
}
}
export function serverUserToApiAccount(user?: ServerUser): ApiAccount | undefined {
if (!user || user.deleted) {
return undefined;
}
return {
id: user.id,
updatedAt: user.updatedAt,
type: user.type,
name: user.name,
interestedEventIds: user.interestedEventIds,
interestedEventSlotIds: user.interestedEventSlotIds,
timezone: user.timezone,
locale: user.locale,
}
}