iceshrimp-legacy/packages/backend/src/models/repositories/auth-session.ts
ThatOneCalculator 6b00abf05c
refactor: 🎨 rome
2023-01-12 20:40:33 -08:00

22 lines
643 B
TypeScript

import { db } from "@/db/postgre.js";
import { Apps } from "../index.js";
import { AuthSession } from "@/models/entities/auth-session.js";
import { awaitAll } from "@/prelude/await-all.js";
import type { User } from "@/models/entities/user.js";
export const AuthSessionRepository = db.getRepository(AuthSession).extend({
async pack(
src: AuthSession["id"] | AuthSession,
me?: { id: User["id"] } | null | undefined,
) {
const session =
typeof src === "object" ? src : await this.findOneByOrFail({ id: src });
return await awaitAll({
id: session.id,
app: Apps.pack(session.appId, me),
token: session.token,
});
},
});