/
dimamir
/
undb
Обзор
Документация
Войти
/
dimamir
/
undb
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
apps/backend/src/db.ts
21 строка
625 B
nichenqin
feat: delete space
08 авг 2024, 09:36
08 авг 2024, 09:36
841b518
Код
Авторство
О чём код?
import { IQueryBuilder, startTransaction } from "@undb/persistence" import { IsolationLevel } from "kysely" export const withTransaction = (qb: IQueryBuilder, level: IsolationLevel = "read committed") => <T = any>(callback: () => Promise<T>): Promise<T> => { return new Promise((resolve, reject) => { return qb .transaction() .setIsolationLevel(level) .execute(async (trx) => { startTransaction(trx) try { const result = await callback() resolve(result) } catch (error) { reject(error) } }) }) }