Refactor 4 with bugfixes

This commit is contained in:
2026-03-04 03:56:23 +01:00
parent be91b6dfe8
commit 0ed9ca93d3
51 changed files with 1552 additions and 996 deletions

View File

@@ -0,0 +1,23 @@
import {
Entity,
PrimaryColumn,
Column
} from 'typeorm';
@Entity('users')
export class AuthUserEntity {
@PrimaryColumn('text')
id!: string;
@Column('text', { unique: true })
username!: string;
@Column('text')
passwordHash!: string;
@Column('text')
displayName!: string;
@Column('integer')
createdAt!: number;
}

View File

@@ -0,0 +1,31 @@
import {
Entity,
PrimaryColumn,
Column,
Index
} from 'typeorm';
@Entity('join_requests')
export class JoinRequestEntity {
@PrimaryColumn('text')
id!: string;
@Index()
@Column('text')
serverId!: string;
@Column('text')
userId!: string;
@Column('text')
userPublicKey!: string;
@Column('text')
displayName!: string;
@Column('text', { default: 'pending' })
status!: string;
@Column('integer')
createdAt!: number;
}

View File

@@ -0,0 +1,41 @@
import {
Entity,
PrimaryColumn,
Column
} from 'typeorm';
@Entity('servers')
export class ServerEntity {
@PrimaryColumn('text')
id!: string;
@Column('text')
name!: string;
@Column('text', { nullable: true })
description!: string | null;
@Column('text')
ownerId!: string;
@Column('text')
ownerPublicKey!: string;
@Column('integer', { default: 0 })
isPrivate!: number;
@Column('integer', { default: 0 })
maxUsers!: number;
@Column('integer', { default: 0 })
currentUsers!: number;
@Column('text', { default: '[]' })
tags!: string;
@Column('integer')
createdAt!: number;
@Column('integer')
lastSeen!: number;
}

View File

@@ -0,0 +1,3 @@
export { AuthUserEntity } from './AuthUserEntity';
export { ServerEntity } from './ServerEntity';
export { JoinRequestEntity } from './JoinRequestEntity';