eve
Version:
Filesystem-first framework for durable backend AI agents that run anywhere.
1 lines • 1.08 kB
JavaScript
const EVE_SHARED_SERVER_FUNCTION_PATH=`eve/__server.func`,EVE_VERCEL_FUNCTION_PREFIXES=[`eve/`,`.well-known/workflow/`];function isRecord(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function isEveVercelFunctionPath(e){return EVE_VERCEL_FUNCTION_PREFIXES.some(t=>e.startsWith(t))}function normalizeEveVercelRoutes(e,t){return e.filter(isEveVercelRoute).map(normalizeEveVercelRoute)}function isEveVercelRoute(e){if(!isRecord(e)||`handle`in e)return!0;let t=typeof e.src==`string`?e.src:``,n=typeof e.dest==`string`?e.dest:``;return isEveVercelRoutePath(t)||isEveVercelRoutePath(n)}function isEveVercelRoutePath(e){return e.includes(`/eve/v1`)||e.includes(`/.well-known/workflow/`)}function isEveProtocolRoutePath(e){return e.includes(`/eve/v1`)}function normalizeEveVercelRoute(e){if(!isRecord(e)||`handle`in e||typeof e.src!=`string`)return e;let t=isEveProtocolRoutePath(e.src)||typeof e.dest==`string`&&isEveProtocolRoutePath(e.dest),n={...e};return t&&(n.dest=`/eve/__server`),n}export{EVE_SHARED_SERVER_FUNCTION_PATH,isEveVercelFunctionPath,normalizeEveVercelRoutes};