14 lines
465 B
TypeScript
14 lines
465 B
TypeScript
import { eq } from "drizzle-orm";
|
|
import type { Database } from "../client.js";
|
|
import { bans } from "../schema/bans.js";
|
|
import { isBanActive } from "../bans/is-ban-active.js";
|
|
|
|
export function makeBansRepo(db: Database) {
|
|
return {
|
|
activeForUser: async (userId: number, nowUnixSeconds: number) => {
|
|
const rows = await db.select().from(bans).where(eq(bans.userId, userId));
|
|
return rows.filter((b) => isBanActive(b, nowUnixSeconds));
|
|
},
|
|
};
|
|
}
|