pg-test-util
Version:
PostgreSQL administrative utilities such as creating and dropping tables, users etc.
25 lines • 1.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getConnectionConfig = void 0;
const pg_1 = require("pg");
const pg_connection_string_1 = require("pg-connection-string");
const verror_1 = require("verror");
function getConnectionString(connection) {
if (typeof connection === "string")
return connection;
return typeof connection === "object" && "connectionString" in connection ? connection.connectionString : undefined;
}
function getConnectionConfig(connection) {
const connectionString = getConnectionString(connection);
if (connection instanceof pg_1.Client)
return {};
if (typeof connectionString === "string") {
const config = (0, pg_connection_string_1.parse)(connectionString);
return { ...config, port: config.port ? parseInt(config.port, 10) : undefined };
}
if (typeof connection === "object")
return connection;
throw new verror_1.VError("Cannot parse connection configuration.");
}
exports.getConnectionConfig = getConnectionConfig;
//# sourceMappingURL=get-connection-config.js.map