summary refs log tree commit diff
path: root/util/src/entities/BackupCodes.ts
diff options
context:
space:
mode:
Diffstat (limited to 'util/src/entities/BackupCodes.ts')
-rw-r--r--util/src/entities/BackupCodes.ts35
1 files changed, 0 insertions, 35 deletions
diff --git a/util/src/entities/BackupCodes.ts b/util/src/entities/BackupCodes.ts
deleted file mode 100644

index d532a39a..00000000 --- a/util/src/entities/BackupCodes.ts +++ /dev/null
@@ -1,35 +0,0 @@ -import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; -import { BaseClass } from "./BaseClass"; -import { User } from "./User"; -import crypto from "crypto"; - -@Entity("backup_codes") -export class BackupCode extends BaseClass { - @JoinColumn({ name: "user_id" }) - @ManyToOne(() => User, { onDelete: "CASCADE" }) - user: User; - - @Column() - code: string; - - @Column() - consumed: boolean; - - @Column() - expired: boolean; -} - -export function generateMfaBackupCodes(user_id: string) { - let backup_codes: BackupCode[] = []; - for (let i = 0; i < 10; i++) { - const code = BackupCode.create({ - user: { id: user_id }, - code: crypto.randomBytes(4).toString("hex"), // 8 characters - consumed: false, - expired: false, - }); - backup_codes.push(code); - } - - return backup_codes; -} \ No newline at end of file