20 lines
750 B
TypeScript
20 lines
750 B
TypeScript
import { DataSource } from 'typeorm';
|
|
import {
|
|
ServerEntity,
|
|
JoinRequestEntity,
|
|
ServerMembershipEntity,
|
|
ServerInviteEntity,
|
|
ServerBanEntity
|
|
} from '../../../entities';
|
|
import { DeleteServerCommand } from '../../types';
|
|
|
|
export async function handleDeleteServer(command: DeleteServerCommand, dataSource: DataSource): Promise<void> {
|
|
const { serverId } = command.payload;
|
|
|
|
await dataSource.getRepository(JoinRequestEntity).delete({ serverId });
|
|
await dataSource.getRepository(ServerMembershipEntity).delete({ serverId });
|
|
await dataSource.getRepository(ServerInviteEntity).delete({ serverId });
|
|
await dataSource.getRepository(ServerBanEntity).delete({ serverId });
|
|
await dataSource.getRepository(ServerEntity).delete(serverId);
|
|
}
|