sharyn
Version:
Combines all the other packages under one.
67 lines (50 loc) • 2.03 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
var _assign = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/assign"));
var _knex = _interopRequireDefault(require("knex"));
var _asyncExitHook = _interopRequireDefault(require("async-exit-hook"));
var _checkSetup = require("@sharyn/check-setup");
var _env = require("@sharyn/env");
var _knexConfig = _interopRequireDefault(require("./knex-config"));
// flow-disable-next-line
// flow-disable-next-line
var customConfig = {};
if ((0, _checkSetup.hasFile)('src/_db/knex-config.js')) {
// eslint-disable-next-line import/no-unresolved, global-require, import/no-dynamic-require, flow-disable-next-line
customConfig = require("".concat(_checkSetup.appRoot, "/src/_db/knex-config"));
}
var knex = (0, _knex.default)((0, _assign.default)({}, _knexConfig.default, customConfig)); // This call is useful to test the connecion. In test this async call doesn't have time to resolve.
if (!_env.IS_TEST_ENV) {
// eslint-disable-next-line no-console
knex.raw('').catch(function (err) {
return console.error(err);
});
}
(0, _asyncExitHook.default)(
/*#__PURE__*/
function () {
var _ref = (0, _asyncToGenerator2.default)(
/*#__PURE__*/
_regenerator.default.mark(function _callee(callback) {
return _regenerator.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return knex.destroy();
case 2:
callback();
case 3:
case "end":
return _context.stop();
}
}
}, _callee, this);
}));
return function (_x) {
return _ref.apply(this, arguments);
};
}());
module.exports = knex;