UNPKG

oberknecht-utils

Version:
28 lines (23 loc) 575 B
import { log } from "./log"; export function returnErr( e: Error | Object, logerr?: Boolean, fullstack?: Boolean ) { if (!e) return ""; // @ts-ignore let r2 = e?.error ?? e; let r = ""; let rfull = ""; if (r2.stack) { let appendStack = (e2) => { r += (r.length > 0 ? " (caused by:) " : "") + (e2?.message ?? e2); rfull += (rfull.length > 0 ? "\nCause: " : "") + (e2?.stack ?? e2); if (e2?.cause) return appendStack(e2.cause); return; }; appendStack(r2); } if (logerr) log(2, r); return fullstack ? rfull : r; }