knex-firebird-dialect
Version:
Firebird dialect for Knex.js
41 lines (40 loc) • 5.03 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.FirebirdConnectionErrors = void 0;
exports.isFirebirdConnectionError = isFirebirdConnectionError;
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
// Source: https://github.com/hgourvest/node-firebird/blob/master/lib/firebird.msg.json
var FirebirdConnectionErrors = exports.FirebirdConnectionErrors = {
335544324: "Invalid database handle (no active connection)",
335544365: "Request referenced an unavailable database",
335544375: "Unavailable database",
335544421: "Connection rejected by remote interface",
335544648: "Connection lost to pipe server",
335544721: "Unable to complete network request to host",
335544722: "Failed to establish a connection",
335544723: "Error while listening for an incoming connection",
335544724: "Failed to establish a secondary connection for event processing",
335544725: "Error while listening for an incoming event connection request",
335544726: "Error reading data from the connection",
335544727: "Error writing data to the connection",
335544741: "Connection lost to database",
335544856: "Connection shutdown"
};
function isFirebirdConnectionError(error) {
if (!error) {
return false;
}
if (error instanceof Error || (0, _typeof2["default"])(error) === "object") {
if (String(error === null || error === void 0 ? void 0 : error.code) in FirebirdConnectionErrors) {
return true;
}
}
var msg = String(error);
return Object.values(FirebirdConnectionErrors).some(function (err) {
return msg.includes(err);
});
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGaXJlYmlyZENvbm5lY3Rpb25FcnJvcnMiLCJleHBvcnRzIiwiaXNGaXJlYmlyZENvbm5lY3Rpb25FcnJvciIsImVycm9yIiwiRXJyb3IiLCJfdHlwZW9mMiIsIlN0cmluZyIsImNvZGUiLCJtc2ciLCJPYmplY3QiLCJ2YWx1ZXMiLCJzb21lIiwiZXJyIiwiaW5jbHVkZXMiXSwic291cmNlcyI6WyIuLi9zcmMvdXRpbHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaGdvdXJ2ZXN0L25vZGUtZmlyZWJpcmQvYmxvYi9tYXN0ZXIvbGliL2ZpcmViaXJkLm1zZy5qc29uXG5leHBvcnQgY29uc3QgRmlyZWJpcmRDb25uZWN0aW9uRXJyb3JzID0ge1xuICAzMzU1NDQzMjQ6IFwiSW52YWxpZCBkYXRhYmFzZSBoYW5kbGUgKG5vIGFjdGl2ZSBjb25uZWN0aW9uKVwiLFxuICAzMzU1NDQzNjU6IFwiUmVxdWVzdCByZWZlcmVuY2VkIGFuIHVuYXZhaWxhYmxlIGRhdGFiYXNlXCIsXG4gIDMzNTU0NDM3NTogXCJVbmF2YWlsYWJsZSBkYXRhYmFzZVwiLFxuICAzMzU1NDQ0MjE6IFwiQ29ubmVjdGlvbiByZWplY3RlZCBieSByZW1vdGUgaW50ZXJmYWNlXCIsXG4gIDMzNTU0NDY0ODogXCJDb25uZWN0aW9uIGxvc3QgdG8gcGlwZSBzZXJ2ZXJcIixcbiAgMzM1NTQ0NzIxOiBcIlVuYWJsZSB0byBjb21wbGV0ZSBuZXR3b3JrIHJlcXVlc3QgdG8gaG9zdFwiLFxuICAzMzU1NDQ3MjI6IFwiRmFpbGVkIHRvIGVzdGFibGlzaCBhIGNvbm5lY3Rpb25cIixcbiAgMzM1NTQ0NzIzOiBcIkVycm9yIHdoaWxlIGxpc3RlbmluZyBmb3IgYW4gaW5jb21pbmcgY29ubmVjdGlvblwiLFxuICAzMzU1NDQ3MjQ6IFwiRmFpbGVkIHRvIGVzdGFibGlzaCBhIHNlY29uZGFyeSBjb25uZWN0aW9uIGZvciBldmVudCBwcm9jZXNzaW5nXCIsXG4gIDMzNTU0NDcyNTogXCJFcnJvciB3aGlsZSBsaXN0ZW5pbmcgZm9yIGFuIGluY29taW5nIGV2ZW50IGNvbm5lY3Rpb24gcmVxdWVzdFwiLFxuICAzMzU1NDQ3MjY6IFwiRXJyb3IgcmVhZGluZyBkYXRhIGZyb20gdGhlIGNvbm5lY3Rpb25cIixcbiAgMzM1NTQ0NzI3OiBcIkVycm9yIHdyaXRpbmcgZGF0YSB0byB0aGUgY29ubmVjdGlvblwiLFxuICAzMzU1NDQ3NDE6IFwiQ29ubmVjdGlvbiBsb3N0IHRvIGRhdGFiYXNlXCIsXG4gIDMzNTU0NDg1NjogXCJDb25uZWN0aW9uIHNodXRkb3duXCIsXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gaXNGaXJlYmlyZENvbm5lY3Rpb25FcnJvcihlcnJvcikge1xuICBpZiAoIWVycm9yKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IgfHwgdHlwZW9mIGVycm9yID09PSBcIm9iamVjdFwiKSB7XG4gICAgaWYgKFN0cmluZyhlcnJvcj8uY29kZSkgaW4gRmlyZWJpcmRDb25uZWN0aW9uRXJyb3JzKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBtc2cgPSBTdHJpbmcoZXJyb3IpO1xuICByZXR1cm4gT2JqZWN0LnZhbHVlcyhGaXJlYmlyZENvbm5lY3Rpb25FcnJvcnMpLnNvbWUoKGVycikgPT5cbiAgICBtc2cuaW5jbHVkZXMoZXJyKVxuICApO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTtBQUNPLElBQU1BLHdCQUF3QixHQUFBQyxPQUFBLENBQUFELHdCQUFBLEdBQUc7RUFDdEMsU0FBUyxFQUFFLGdEQUFnRDtFQUMzRCxTQUFTLEVBQUUsNENBQTRDO0VBQ3ZELFNBQVMsRUFBRSxzQkFBc0I7RUFDakMsU0FBUyxFQUFFLHlDQUF5QztFQUNwRCxTQUFTLEVBQUUsZ0NBQWdDO0VBQzNDLFNBQVMsRUFBRSw0Q0FBNEM7RUFDdkQsU0FBUyxFQUFFLGtDQUFrQztFQUM3QyxTQUFTLEVBQUUsa0RBQWtEO0VBQzdELFNBQVMsRUFBRSxpRUFBaUU7RUFDNUUsU0FBUyxFQUFFLGdFQUFnRTtFQUMzRSxTQUFTLEVBQUUsd0NBQXdDO0VBQ25ELFNBQVMsRUFBRSxzQ0FBc0M7RUFDakQsU0FBUyxFQUFFLDZCQUE2QjtFQUN4QyxTQUFTLEVBQUU7QUFDYixDQUFDO0FBRU0sU0FBU0UseUJBQXlCQSxDQUFDQyxLQUFLLEVBQUU7RUFDL0MsSUFBSSxDQUFDQSxLQUFLLEVBQUU7SUFDVixPQUFPLEtBQUs7RUFDZDtFQUVBLElBQUlBLEtBQUssWUFBWUMsS0FBSyxJQUFJLElBQUFDLFFBQUEsYUFBT0YsS0FBSyxNQUFLLFFBQVEsRUFBRTtJQUN2RCxJQUFJRyxNQUFNLENBQUNILEtBQUssYUFBTEEsS0FBSyx1QkFBTEEsS0FBSyxDQUFFSSxJQUFJLENBQUMsSUFBSVAsd0JBQXdCLEVBQUU7TUFDbkQsT0FBTyxJQUFJO0lBQ2I7RUFDRjtFQUVBLElBQU1RLEdBQUcsR0FBR0YsTUFBTSxDQUFDSCxLQUFLLENBQUM7RUFDekIsT0FBT00sTUFBTSxDQUFDQyxNQUFNLENBQUNWLHdCQUF3QixDQUFDLENBQUNXLElBQUksQ0FBQyxVQUFDQyxHQUFHO0lBQUEsT0FDdERKLEdBQUcsQ0FBQ0ssUUFBUSxDQUFDRCxHQUFHLENBQUM7RUFBQSxDQUNuQixDQUFDO0FBQ0giLCJpZ25vcmVMaXN0IjpbXX0=