Files
ArtPlayer/scripts/site-vendor/console/runtime/errors.ts
T

18 lines
567 B
TypeScript

export function errorArgument(value: unknown): unknown {
try {
if (Object.prototype.toString.call(value) !== '[object Error]')
return value
const error = value as Error
const stack = error.stack
const message = error.message
if (typeof stack !== 'string' || !message)
return value
const header = error.name ? `${error.name}: ${message}` : message
return stack.startsWith(header) ? value : `${header}\n${stack}`
}
catch {
// Keep the legacy parser's behavior for unusual throwing Error getters.
return value
}
}