/
dimamir
/
undb
Обзор
Документация
Войти
/
dimamir
/
undb
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
packages/persistence/src/ctx.ts
20 строк
479 B
nichenqin
refactor: transaction
18 июл 2024, 12:44
18 июл 2024, 12:44
a62d9ee
Код
Авторство
О чём код?
import { AsyncLocalStorage } from "node:async_hooks" import type { AnonymousTx, Tx } from "./qb" export interface TxContext { trx: Tx | AnonymousTx } export const txContext = new AsyncLocalStorage<TxContext>() export function startTransaction(tx: any) { txContext.enterWith({ trx: tx }) } export function getCurrentTransaction() { return txContext.getStore()?.trx as Tx } export function getAnonymousTransaction() { return txContext.getStore()?.trx as AnonymousTx }