UNPKG

typeorm-transactional-async-callbacks

Version:

A Transactional Method Decorator for typeorm that uses cls-hooked to handle and propagate transactions between different repositories and service methods. Inpired by Spring Trasnactional Annotation and Sequelize CLS

20 lines (14 loc) 510 B
import { DataSource, Repository } from 'typeorm'; import { User } from '../entities/User.entity'; export class UserRepository extends Repository<User> { constructor(private readonly dataSource: DataSource) { super(User, dataSource.manager); } async createUser(name: string, money: number = 0): Promise<User> { const user = new User(name, money); return this.save(user); } async findUserByName(name: string): Promise<User | null> { return this.findOne({ where: { name } }); } }