UNPKG

eve

Version:

Filesystem-first framework for durable backend AI agents that run anywhere.

1 lines 753 B
function normalizeSerializableError(e){return e instanceof Error?{...Object.fromEntries(Object.entries(e)),cause:e.cause===void 0?void 0:normalizeSerializableError(e.cause),message:e.message,name:e.name,stack:e.stack}:e}function rebuildSerializableError(e){if(!isRecord(e))return Error(String(e));let t=typeof e.message==`string`?e.message:String(e),n=Error(t);typeof e.name==`string`&&(n.name=e.name),typeof e.stack==`string`&&(n.stack=e.stack),`cause`in e&&(n.cause=isRecord(e.cause)?rebuildSerializableError(e.cause):e.cause);let r=n;for(let[t,n]of Object.entries(e))t===`message`||t===`name`||t===`stack`||t===`cause`||(r[t]=n);return n}function isRecord(e){return typeof e==`object`&&!!e}export{normalizeSerializableError,rebuildSerializableError};