17 lines
571 B
TypeScript
17 lines
571 B
TypeScript
import { DataSource } from 'typeorm';
|
|
import { UserEntity, MetaEntity } from '../../../entities';
|
|
import { rowToUser } from '../../mappers';
|
|
|
|
export async function handleGetCurrentUser(dataSource: DataSource) {
|
|
const metaRepo = dataSource.getRepository(MetaEntity);
|
|
const metaRow = await metaRepo.findOne({ where: { key: 'currentUserId' } });
|
|
|
|
if (!metaRow?.value)
|
|
return null;
|
|
|
|
const userRepo = dataSource.getRepository(UserEntity);
|
|
const userRow = await userRepo.findOne({ where: { id: metaRow.value } });
|
|
|
|
return userRow ? rowToUser(userRow) : null;
|
|
}
|