26 lines
732 B
TypeScript
26 lines
732 B
TypeScript
import { has } from "lodash"
|
|
|
|
export function isCredentialFailure(error: unknown) {
|
|
return (
|
|
error instanceof Error &&
|
|
((has(error, "code") && error.code === "ELOGIN") ||
|
|
error.message.includes("Login failed for user"))
|
|
)
|
|
}
|
|
|
|
export function isSocketFailure(error: unknown) {
|
|
return error instanceof Error && has(error, "code") && error.code === "ESOCKET"
|
|
}
|
|
|
|
export function isMissingDatabaseFailure(error: unknown) {
|
|
return error instanceof Error && has(error, "code") && error.code === "3D000"
|
|
}
|
|
|
|
export function isNetworkFailure(error: unknown) {
|
|
return (
|
|
error instanceof Error &&
|
|
((has(error, "code") && error.code === "EAI_AGAIN") ||
|
|
error.message.includes("getaddrinfo EAI_AGAIN"))
|
|
)
|
|
}
|