UNPKG

pg-tx

Version:

Transaction wrapper for node-postgres

32 lines 1.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.releaseClient = exports.getClient = exports.ClientMode = void 0; // eslint-disable-next-line @typescript-eslint/no-explicit-any function isPoolClient(p) { return typeof p['release'] === 'function'; } /** Whether we got a ready client, or connected it ourselves */ var ClientMode; (function (ClientMode) { ClientMode[ClientMode["Provided"] = 0] = "Provided"; ClientMode[ClientMode["Connected"] = 1] = "Connected"; })(ClientMode = exports.ClientMode || (exports.ClientMode = {})); async function getClient(pg) { if (isPoolClient(pg)) { return { client: pg, clientMode: ClientMode.Provided }; } else { return { client: await pg.connect(), clientMode: ClientMode.Connected }; } } exports.getClient = getClient; function releaseClient({ client, clientMode }) { if (clientMode === ClientMode.Connected) { client.release(); } } exports.releaseClient = releaseClient; //# sourceMappingURL=client.js.map