import { db } from "../../db/postgre.js";
import { Users } from "../index.js";
import { ModerationLog } from "../entities/moderation-log.js";
import { awaitAll } from "../../prelude/await-all.js";
export const ModerationLogRepository = db.getRepository(ModerationLog).extend({
    async pack (src) {
        const log = typeof src === "object" ? src : await this.findOneByOrFail({
            id: src
        });
        return await awaitAll({
            id: log.id,
            createdAt: log.createdAt.toISOString(),
            type: log.type,
            info: log.info,
            userId: log.userId,
            user: Users.pack(log.user || log.userId, null, {
                detail: true
            })
        });
    },
    packMany (reports) {
        return Promise.all(reports.map((x)=>this.pack(x)));
    }
});
