eve
Version:
Filesystem-first framework for durable backend AI agents that run anywhere.
1 lines • 878 B
JavaScript
import{VERCEL_PROTECTION_BYPASS_HEADER}from"./request-headers.js";function createDevelopmentCredentialGate(t){let n=new URL(t).origin,r={kind:`anonymous`},i;return{authorize:e=>{if(e.target.origin!==n)throw Error(`Verified Vercel origin ${e.target.origin} does not match client origin ${n}.`);let t=r,a=i,o={kind:`vercel`,resolveToken:e.resolveToken};return r=o,i=void 0,()=>{r===o&&(r=t,i=a)}},lastTokenFailure:()=>i,resolveBypassHeaders:async()=>{if(r.kind===`anonymous`)return{};let t=process.env.VERCEL_AUTOMATION_BYPASS_SECRET?.trim();return t?{[VERCEL_PROTECTION_BYPASS_HEADER]:t}:{}},resolveToken:async()=>{let e=r;if(e.kind===`anonymous`)return``;let t=await e.resolveToken(),n=typeof t==`string`||t.kind===`resolved`?void 0:t;return r===e&&(i=n),typeof t==`string`?t.trim():t.kind===`resolved`?t.token.trim():``},serverOrigin:n}}export{createDevelopmentCredentialGate};