2023-01-13 05:40:33 +01:00
|
|
|
import { db } from "@/db/postgre.js";
|
|
|
|
import { UserGroupInvitation } from "@/models/entities/user-group-invitation.js";
|
|
|
|
import { UserGroups } from "../index.js";
|
2020-02-12 18:17:54 +01:00
|
|
|
|
2023-01-13 05:40:33 +01:00
|
|
|
export const UserGroupInvitationRepository = db
|
|
|
|
.getRepository(UserGroupInvitation)
|
|
|
|
.extend({
|
|
|
|
async pack(src: UserGroupInvitation["id"] | UserGroupInvitation) {
|
|
|
|
const invitation =
|
|
|
|
typeof src === "object" ? src : await this.findOneByOrFail({ id: src });
|
2020-02-12 18:17:54 +01:00
|
|
|
|
2023-01-13 05:40:33 +01:00
|
|
|
return {
|
|
|
|
id: invitation.id,
|
|
|
|
group: await UserGroups.pack(
|
|
|
|
invitation.userGroup || invitation.userGroupId,
|
|
|
|
),
|
|
|
|
};
|
|
|
|
},
|
2020-02-12 18:17:54 +01:00
|
|
|
|
2023-01-13 05:40:33 +01:00
|
|
|
packMany(invitations: any[]) {
|
|
|
|
return Promise.all(invitations.map((x) => this.pack(x)));
|
|
|
|
},
|
|
|
|
});
|