UNPKG

knex-utils

Version:

Useful utilities for Knex.js

37 lines 1.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.checkHeartbeat = exports.HEARTBEAT_QUERIES = void 0; exports.HEARTBEAT_QUERIES = Object.freeze({ ORACLE: 'select 1 from DUAL', POSTGRESQL: 'SELECT 1', MYSQL: 'SELECT 1', MSSQL: 'SELECT 1', SQLITE: 'SELECT 1', DEFAULT: 'SELECT 1', }); /** * * @param {Object} knex - Knex instance * @param {string} heartbeatQuery - SQL query that will be executed to check if connection is valid * @returns Promise<{Object|undefined}> wrapped error if connection is not valid, wrapped 'isOk: true' if it is valid, undefined if connection does not yet exist */ function checkHeartbeat(knex, heartbeatQuery = exports.HEARTBEAT_QUERIES.DEFAULT) { if (!knex) { throw new Error('Knex is a mandatory parameter'); } return knex .raw(heartbeatQuery) .then(() => { return { isOk: true, }; }) .catch((err) => { return { isOk: false, error: err, }; }); } exports.checkHeartbeat = checkHeartbeat; //# sourceMappingURL=heartbeatUtils.js.map