import { DataSource } from 'typeorm'; import { ServerEntity } from '../../../entities'; import { UpsertServerCommand } from '../../types'; export async function handleUpsertServer(command: UpsertServerCommand, dataSource: DataSource): Promise { const repo = dataSource.getRepository(ServerEntity); const { server } = command.payload; const entity = repo.create({ id: server.id, name: server.name, description: server.description ?? null, ownerId: server.ownerId, ownerPublicKey: server.ownerPublicKey, passwordHash: server.passwordHash ?? null, isPrivate: server.isPrivate ? 1 : 0, maxUsers: server.maxUsers, currentUsers: server.currentUsers, tags: JSON.stringify(server.tags), createdAt: server.createdAt, lastSeen: server.lastSeen }); await repo.save(entity); }