UNPKG

eve

Version:

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

1 lines 692 B
import{toErrorMessage}from"#shared/errors.js";import{createGateway}from"ai";function isGatewayAuthRejection(e){if(typeof e!=`object`||!e)return!1;let t=e;return t.type===`authentication_error`||t.name===`GatewayAuthenticationError`||t.statusCode===401}async function validateGatewayApiKey(n,r){let i=AbortSignal.timeout(1e4),a=r===void 0?i:AbortSignal.any([r,i]);try{return await createGateway({apiKey:n,fetch:(e,t)=>globalThis.fetch(e,{...t,signal:a})}).getCredits(),{kind:`valid`}}catch(t){if(r?.aborted===!0)throw t;return isGatewayAuthRejection(t)?{kind:`invalid`,message:`The AI Gateway rejected this key.`}:{kind:`inconclusive`,message:toErrorMessage(t)}}}export{validateGatewayApiKey};