10 lines
417 B
TypeScript
10 lines
417 B
TypeScript
import type { AppDb } from './index.js'
|
|
|
|
/**
|
|
* Выполняет fn в транзакции better-sqlite3. Вложенные вызовы превращаются
|
|
* в SAVEPOINT, поэтому безопасно вызывать из функций, уже работающих в транзакции.
|
|
*/
|
|
export function withTransaction<T>(db: AppDb, fn: () => T): T {
|
|
return db.$client.transaction(fn)()
|
|
}
|