eve
Version:
Filesystem-first framework for durable backend AI agents that run anywhere.
43 lines • 238 kB
JavaScript
import{a as e,i as t,t as n}from"../../_chunks/workflow/rolldown-runtime-DPpTSio4.js";import{C as r,S as i,T as a,b as o,c as s,f as c,g as l,i as u,k as d,o as f,r as p,s as m,u as h,y as g}from"../../_chunks/workflow/schemas-4CmFgxN_.js";import{$ as _,A as v,B as y,D as b,E as x,F as S,I as C,J as w,L as ee,M as te,N as T,O as ne,R as re,T as ie,U as ae,V as oe,X as se,at as ce,b as le,ct as ue,et as de,f as E,ft as fe,g as pe,ht as D,j as me,k as he,mt as ge,o as _e,p as ve,r as ye,tt as be,ut as xe,v as Se,y as Ce}from"../../_chunks/workflow/dist-DjECvUyK.js";import{n as we,t as Te}from"../../_chunks/workflow/coerce-D0oqvQ_w.js";import{A as O,O as Ee,_ as De,c as Oe,d as ke,g as k,o as Ae,r as je,t as Me,v as Ne,y as Pe}from"../../_chunks/workflow/dist-xTushGCp.js";import{a as Fe,i as Ie,n as Le,o as Re,r as ze,s as Be,t as Ve}from"../../_chunks/workflow/run-id-Ct9AjQDR.js";import{$ as He,A as Ue,B as We,C as Ge,D as Ke,E as qe,F as Je,G as Ye,H as Xe,I as Ze,J as Qe,K as $e,L as et,M as tt,N as nt,O as rt,P as it,Q as at,R as ot,S as st,T as ct,V as lt,W as ut,X as dt,Y as ft,Z as pt,_ as mt,a as ht,at as gt,b as A,c as _t,d as vt,et as yt,f as j,g as bt,h as xt,i as St,it as Ct,j as wt,k as Tt,l as Et,m as Dt,n as Ot,nt as kt,o as At,p as jt,q as Mt,r as Nt,rt as Pt,s as Ft,t as It,tt as Lt,u as M,v as Rt,w as zt,x as Bt,y as Vt,z as Ht}from"../../_chunks/workflow/frames-D_Q-7A1N.js";import{i as Ut,r as Wt,t as Gt}from"../../_chunks/workflow/token-util-pP4KRRl0.js";import{randomUUID as Kt}from"crypto";import*as N from"path";import{webcrypto as qt}from"node:crypto";import{AsyncLocalStorage as Jt}from"node:async_hooks";import Yt from"node:assert/strict";import*as Xt from"fs";import Zt from"assert/strict";import*as Qt from"net";function P(e,t,n){return new O(`${e}: ${t} ${n}`,{code:`INVALID_ARGUMENT`,field:t})}const $t=`[01234567][0123456789ABCDEFGHJKMNPQRSTVWXYZ]{25}`,en=RegExp(`^wrun_${$t}$`),tn=RegExp(`^(?:step|hook|wait|attr)_${$t}$`),nn=RegExp(`^evnt_${$t}$`),rn=RegExp(`^step_${$t}$`),an=RegExp(`^hook_${$t}$`),on=RegExp(`^wait_${$t}$`);function sn(e,t,n){if(!Number.isInteger(t)||t<1||t>n)throw P(e,`pagination.limit`,`must be an integer between 1 and ${n} (received ${t})`)}function F(e,t){if(!en.test(t))throw P(e,`runId`,`must be a workflow run id ('wrun_' followed by a ULID), received ${JSON.stringify(t)}`)}function cn(e,t){if(!tn.test(t))throw P(e,`correlationId`,`must be a step, hook, wait, or attribute id, received ${JSON.stringify(t)}`)}function ln(e,t){if(!nn.test(t))throw P(e,`eventId`,`must be an event id ('evnt_' followed by a ULID), received ${JSON.stringify(t)}`)}function un(e,t){if(!rn.test(t))throw P(e,`stepId`,`must be a step id ('step_' followed by a ULID), received ${JSON.stringify(t)}`)}function dn(e,t){if(!an.test(t))throw P(e,`hookId`,`must be a hook id ('hook_' followed by a ULID), received ${JSON.stringify(t)}`)}function fn(e,t){if(!on.test(t))throw P(e,`waitId`,`must be a wait id ('wait_' followed by a ULID), received ${JSON.stringify(t)}`)}function pn(e,t){let n=Object.entries(t);if(n.length>8)throw P(e,`attributes`,`may filter by at most 8 pairs (received ${n.length})`);for(let[t,r]of n){if(!_.safeParse(t).success)throw P(e,`attributes`,`key must be 1 to 256 characters, received ${t.length} in ${JSON.stringify(t)}`);if(!de.safeParse(r).success)throw P(e,`attributes`,`value for ${JSON.stringify(t)} must be at most 256 UTF-8 bytes (received ${new TextEncoder().encode(r).length})`)}}function mn(e,t,n){if(t===void 0&&n===void 0)return;if(t===void 0||n===void 0)throw P(e,t===void 0?`startTime`:`endTime`,`is required when ${t===void 0?`endTime`:`startTime`} is provided; supply both or neither`);let r=new Date(t).getTime(),i=new Date(n).getTime();if(!Number.isFinite(r))throw P(e,`startTime`,`must be a parseable datetime, received ${JSON.stringify(t)}`);if(!Number.isFinite(i))throw P(e,`endTime`,`must be a parseable datetime, received ${JSON.stringify(n)}`);if(r>i)throw P(e,`startTime`,`must be before or equal to endTime (received startTime=${JSON.stringify(t)}, endTime=${JSON.stringify(n)})`)}function hn(e,t,n,r){n?.limit!==void 0&&(sn(e,n.limit,r),t.set(`limit`,n.limit.toString())),n?.cursor&&t.set(`cursor`,n.cursor),n?.sortOrder&&t.set(`sortOrder`,n.sortOrder)}function gn(e){let t=e.toString();return t?`?${t}`:``}function _n(e,t){let n=[...new Set(t)];if(n.length===0)throw P(e,`eventIds`,`must contain at least one id`);if(n.length>100)throw P(e,`eventIds`,`must contain at most 100 unique ids (received ${n.length})`);for(let t of n)ln(e,t);return n}function vn(e,t,n){mn(e,n.startTime,n.endTime),n.workflowName!==void 0&&t.set(`workflowName`,n.workflowName),n.startTime!==void 0&&n.endTime!==void 0&&(t.set(`startTime`,n.startTime),t.set(`endTime`,n.endTime)),hn(e,t,n.pagination,100)}function yn(e){return{runs:{get(t){return F(`analytics.runs.get`,t),j({endpoint:`/v2/analytics/runs/${encodeURIComponent(t)}`,config:e,schema:he})},list(t={}){mn(`analytics.runs.list`,t.startTime,t.endTime);let n=new URLSearchParams;return t.workflowName!==void 0&&n.set(`workflowName`,t.workflowName),t.status&&n.set(`status`,t.status),t.startTime!==void 0&&t.endTime!==void 0&&(n.set(`startTime`,t.startTime),n.set(`endTime`,t.endTime)),t.attributes&&Object.keys(t.attributes).length>0&&(pn(`analytics.runs.list`,t.attributes),n.set(`attributes`,JSON.stringify(t.attributes))),hn(`analytics.runs.list`,n,t.pagination,100),j({endpoint:`/v2/analytics/runs${gn(n)}`,config:e,schema:E(he)})}},attributes:{list(t={}){let n=new URLSearchParams;return vn(`analytics.attributes.list`,n,t),j({endpoint:`/v2/analytics/attributes${gn(n)}`,config:e,schema:E(x)})}},steps:{get(t,n){return F(`analytics.steps.get`,t),un(`analytics.steps.get`,n),j({endpoint:`/v2/analytics/runs/${encodeURIComponent(t)}/steps/${encodeURIComponent(n)}`,config:e,schema:v})},list(t){F(`analytics.steps.list`,t.runId);let n=new URLSearchParams;return hn(`analytics.steps.list`,n,t.pagination,ie),j({endpoint:`/v2/analytics/runs/${encodeURIComponent(t.runId)}/steps${gn(n)}`,config:e,schema:E(v)})}},events:{get(t,n){return F(`analytics.events.get`,t),ln(`analytics.events.get`,n),j({endpoint:`/v2/analytics/runs/${encodeURIComponent(t)}/events/${encodeURIComponent(n)}`,config:e,schema:b})},getMany(t,n){return F(`analytics.events.getMany`,t),j({endpoint:`/v2/analytics/runs/${encodeURIComponent(t)}/events/get-many`,options:{method:`POST`},data:{eventIds:_n(`analytics.events.getMany`,n)},config:e,schema:b.array()})},list(t){F(`analytics.events.list`,t.runId);let n=new URLSearchParams;return t.eventType&&n.set(`eventType`,t.eventType),t.correlationId!==void 0&&(cn(`analytics.events.list`,t.correlationId),n.set(`correlationId`,t.correlationId)),hn(`analytics.events.list`,n,t.pagination,ie),j({endpoint:`/v2/analytics/runs/${encodeURIComponent(t.runId)}/events${gn(n)}`,config:e,schema:E(b)})},listByCorrelationId(t){F(`analytics.events.listByCorrelationId`,t.runId),cn(`analytics.events.listByCorrelationId`,t.correlationId);let n=new URLSearchParams;return n.set(`correlationId`,t.correlationId),hn(`analytics.events.listByCorrelationId`,n,t.pagination,ie),j({endpoint:`/v2/analytics/runs/${encodeURIComponent(t.runId)}/events${gn(n)}`,config:e,schema:E(b)})}},hooks:{get(t,n){dn(`analytics.hooks.get`,t);let r=new URLSearchParams;return n?.runId!==void 0&&(F(`analytics.hooks.get`,n.runId),r.set(`runId`,n.runId)),j({endpoint:`/v2/analytics/hooks/${encodeURIComponent(t)}${gn(r)}`,config:e,schema:ne})},list(t){F(`analytics.hooks.list`,t.runId);let n=new URLSearchParams;return n.set(`runId`,t.runId),hn(`analytics.hooks.list`,n,t.pagination,100),j({endpoint:`/v2/analytics/hooks${gn(n)}`,config:e,schema:E(ne)})}},waits:{get(t,n){return F(`analytics.waits.get`,t),fn(`analytics.waits.get`,n),j({endpoint:`/v2/analytics/runs/${encodeURIComponent(t)}/waits/${encodeURIComponent(n)}`,config:e,schema:me})},list(t){F(`analytics.waits.list`,t.runId);let n=new URLSearchParams;return t.status&&n.set(`status`,t.status),hn(`analytics.waits.list`,n,t.pagination,ie),j({endpoint:`/v2/analytics/runs/${encodeURIComponent(t.runId)}/waits${gn(n)}`,config:e,schema:E(me)})}}}}const bn=ge(`@workflow/world-vercel//runIdFactory`,1,()=>({ulid:xe(),lastRunId:void 0}));function xn(e){let t=Be(e),n=5,r=1;for(;n>=0&&r>0;){let e=t[n]+r;t[n]=e&255,r=e>>8,n--}if(r>0)throw Error(`ULID space exhausted`);return Re(t)}function Sn(e){return typeof e!=`string`||e===``||e===`unknown`?null:Object.hasOwn(Ie,e)?e:null}function Cn(e){return Sn(e?.region)??Sn(process.env.VERCEL_REGION)??`iad1`}function wn(e){let t=Cn(e),n=Ie[t],r=Le(bn.ulid(),n);if(bn.lastRunId!==void 0)for(;r<=bn.lastRunId;)r=Le(xn(bn.lastRunId),n);return bn.lastRunId=r,r}function Tn(e){let t=e.startsWith(`wrun_`)?e.slice(5):e;try{let e=Ve(t);return e.tagged&&e.region?e.region:ze}catch{return null}}function En(e){let t=e.runId;return typeof t!=`string`||t.length===0?null:{region:Tn(t)}}var Dn=class extends Error{status;constructor(e,t){super(e),this.name=`RunKeyFetchError`,this.status=t}};async function On(e,t,n){if(e.length!==32)throw Error(`Invalid deployment key length: expected 32 bytes for AES-256, got ${e.length} bytes`);if(!t||typeof t!=`string`)throw Error(`projectId must be a non-empty string`);let r=await qt.subtle.importKey(`raw`,e,`HKDF`,!1,[`deriveBits`]),i=new TextEncoder().encode(`${t}|${n}`),a=await qt.subtle.deriveBits({name:`HKDF`,hash:`SHA-256`,salt:new Uint8Array(32),info:i},r,256);return new Uint8Array(a)}async function kn(e,t,n,r){let i=await Ge({token:r?.token});if(!i)throw Error(`Cannot fetch run key: no OIDC token or VERCEL_TOKEN available`);let s=new URLSearchParams({projectId:t,runId:n});r?.teamId&&s.set(`teamId`,r.teamId);let c=await(await A({method:`GET`,url:`https://api.vercel.com/v1/workflow/run-key/${e}?${s}`,headers:new Headers({Authorization:`Bearer ${i}`}),dispatcher:dt({dispatcher:r?.dispatcher}),peerService:`vercel-api`,timeoutMs:null,buildError:async t=>{let r;try{r=await t.text()}catch{r=`<unable to read response body>`}return new Dn(`Failed to fetch run key for ${n} (deployment ${e}): HTTP ${t.status} ${t.statusText}${r?` — ${r}`:``}`,t.status)}})).json(),l=D(o({key:a().nullable()})).safeParse(c);if(!l.success)throw Error(`Invalid response from Vercel API: expected { key: string | null }. Zod error: ${l.error.message}`);if(l.data.key!==null)return Buffer.from(l.data.key,`base64`)}function An(e,t,n,r){if(!e)return;let i=process.env.VERCEL===`1`,a;function o(){if(a)return a;let e=process.env.VERCEL_DEPLOYMENT_KEY;if(e)return a=Buffer.from(e,`base64`),a}return async function(a,s){let c=typeof a==`string`?a:a.runId,l=typeof a==`string`?s?.deploymentId:a.deploymentId;if(i&&(!l||l===process.env.VERCEL_DEPLOYMENT_ID)){let t=o();return t?On(t,e,c):void 0}if(l)return kn(l,e,c,{token:n,teamId:t,dispatcher:r})}}async function jn(){let{getDeadline:t}=await import(`../../_chunks/workflow/functions-C06vHfWP.js`).then(t=>e(t.default,1));return t()}const Mn={peerService:`workflow-server`,rpcSystem:`http`,rpcService:`workflow-server`},Nn={"world.runs.get":0,"world.runs.experimentalSetAttributes":0,"world.steps.get":0,"world.events.create":0,"world.events.get":0},Pn=new Set([`world.steps.list`,`world.events.list`,`world.hooks.list`]);function Fn(e){if(e.length>=2&&typeof e[1]==`object`&&e[1]!==null){let t=e[1];if(typeof t.eventType==`string`)return t.eventType}}function In(e,t){return typeof e[t]==`string`?e[t]:void 0}function Ln(e){if(typeof e!=`object`||!e)return;let t=e.runId;return typeof t==`string`?t:void 0}function Rn(e){if(typeof e!=`object`||!e)return;let t=e;if(typeof t.runId==`string`)return t.runId;for(let e of[`run`,`step`,`hook`,`wait`]){let n=t[e];if(typeof n==`object`&&n){let e=n.runId;if(typeof e==`string`)return e}}}function zn(e,t,n){let r=`${e}.${t}`,i={},a=Nn[r],o=a===void 0?Pn.has(r)?Ln(n[0]):void 0:In(n,a);if(o&&Object.assign(i,et(o)),r===`world.steps.get`){let e=In(n,1);e&&Object.assign(i,wt(e))}return i}function Bn(e,t){let n={};for(let r of Object.keys(t))if(typeof t[r]!=`function`)n[r]=t[r];else{let i=t[r],a=String(r);n[r]=async(...t)=>{let n=`${e}.${a}`;if(e===`world.events`&&a===`create`){let r=Fn(t);r&&(n=`${e}.${a} ${r}`)}let r;if(e===`world.events`&&a===`createBatch`){let e=t[1];if(Array.isArray(e)){let t=new Map;for(let n of e){let e=n?.event?.eventType;typeof e==`string`&&t.set(e,(t.get(e)??0)+1)}r={"workflow.batch.size":e.length,"workflow.batch.shape":[...t].sort(([e],[t])=>e<t?-1:+(e>t)).map(([e,t])=>`${e}:${t}`).join(`,`)}}}return ft(n,{kind:await $e(`CLIENT`)},async o=>{o?.setAttributes({...Ke(Mn.peerService),...Ue(Mn.rpcSystem),...Tt(Mn.rpcService),...rt(n),...zn(e,a,t),...r});let s=await i(...t),c=Rn(s);return c&&o?.setAttributes(et(c)),s})}}return n}var I=class extends Error{constructor(e){super(e),this.name=`MultipartParseError`}};function Vn(e){let t=new TextEncoder().encode(e);return(e,n=0)=>Buffer.prototype.indexOf.call(e,t,n)}function Hn(e){let t=new TextEncoder().encode(e),n={};for(let e=0;e<t.length;++e){let r=t[e];n[r]===void 0&&(n[r]=[]),n[r].push(e)}return function(e){let r=e.length-1;if(e[r]in n){let i=n[e[r]];for(let n=i.length-1;n>=0;--n)for(let a=i[n],o=r;a>=0&&e[o]===t[a];--a,--o)if(a===0)return o}return-1}}function Un(e){let t=new TextDecoder(`iso-8859-1`).decode(e).trim().split(/\r?\n/),n=[];for(let e of t){let t=e.indexOf(`:`);if(t>0){let r=e.slice(0,t).trim(),i=e.slice(t+1).trim();n.push([r,i])}}return new Headers(n)}function Wn(e){let t=e.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!t)throw new I(`No boundary found in Content-Type header`);return t[1]??t[2]}var Gn=class{queue=[];waiters=[];finished=!1;cancelled=!1;error=null;enqueue(e){this.finished||this.cancelled||(this.waiters.length>0?this.waiters.shift().resolve(e):this.queue.push(e))}finish(e){if(!this.finished)for(this.finished=!0,this.error=e||null;this.waiters.length>0;){let t=this.waiters.shift();e?t.reject(e):t.resolve(null)}}cancel(){if(!(this.cancelled||this.finished))for(this.cancelled=!0;this.waiters.length>0;)this.waiters.shift().resolve(null)}async dequeue(){if(this.queue.length>0)return this.queue.shift();if(this.finished||this.cancelled){if(this.error)throw this.error;return null}return new Promise((e,t)=>{this.waiters.push({resolve:e,reject:t})})}get isTerminal(){return this.finished||this.cancelled}};async function*Kn(e,t){if(!e.body)throw new I(`Response body is null`);let n=e.headers.get(`content-type`);if(!n)throw new I(`Missing Content-Type header`);yield*new qn(Wn(n),t).parseStream(e.body)}var qn=class{boundary;findOpeningBoundary;openingBoundaryLength;findBoundary;findPartialTailBoundary;boundaryLength;findDoubleNewline;maxHeaderSize;maxBoundaryBuffer;state=0;buffer=null;currentHeaders=new Headers;currentPayloadController=null;constructor(e,t={}){this.boundary=e,this.findOpeningBoundary=Vn(`--${e}`),this.openingBoundaryLength=2+e.length,this.findBoundary=Vn(`\r
--${e}`),this.findPartialTailBoundary=Hn(`\r
--${e}`),this.boundaryLength=4+e.length,this.findDoubleNewline=Vn(`\r
\r
`),this.maxHeaderSize=t.maxHeaderSize??65536,this.maxBoundaryBuffer=t.maxBoundaryBuffer??8192}async*parseStream(e){let t=e.getReader(),n=new Gn,r=this.startProducer(t,n);try{yield*this.consumeMessages(n)}finally{n.cancel(),this.closeCurrentPayload();try{await t.cancel()}catch{}await r}}async startProducer(e,t){try{for(;!t.isTerminal;){let n;try{n=await e.read()}catch(e){if(e instanceof Error&&(e.name===`AbortError`||e.constructor.name===`AbortError`||e.name===`TimeoutError`||e.constructor.name===`TimeoutError`))break;throw e}let{done:r,value:i}=n;if(r){if(this.buffer!==null&&this.buffer.length>0){let e=this.write(new Uint8Array);for(let n of e){if(t.isTerminal)break;t.enqueue(n)}}if(this.state!==4)throw this.state===0?new I(`Invalid multipart stream: missing initial boundary`):new I(`Unexpected end of stream`);break}if(!(i instanceof Uint8Array))throw new I(`Invalid chunk type: expected Uint8Array, got ${typeof i}`);let a=this.write(i);for(let e of a){if(t.isTerminal)break;t.enqueue(e)}}t.isTerminal||t.finish()}catch(e){this.closeCurrentPayload(e),t.isTerminal||t.finish(e)}finally{try{e.releaseLock()}catch{}}}async*consumeMessages(e){for(;;){let t=await e.dequeue();if(t===null)break;yield t}}write(e){let t=[];if(this.state===4)throw new I(`Unexpected data after end of stream`);let n=0,r=e.length;if(this.buffer!==null){let t=this.buffer.length,n=t+r;if(this.state===2){if(n>this.maxHeaderSize)throw new I(`Buffer size limit exceeded: ${n} bytes > ${this.maxHeaderSize} bytes. This may indicate malformed multipart data with oversized headers.`)}else if(t>this.maxBoundaryBuffer)throw new I(`Boundary buffer limit exceeded: ${t} bytes > ${this.maxBoundaryBuffer} bytes. This may indicate malformed multipart data with invalid boundaries.`);let i=new Uint8Array(n);i.set(this.buffer,0),i.set(e,t),e=i,r=e.length,this.buffer=null}if(r===0&&this.state===0)throw new I(`Invalid multipart stream: missing initial boundary`);for(;;){if(this.state===3){if(r-n<this.boundaryLength){let t=e.subarray(n);if(t.length>this.maxBoundaryBuffer)throw new I(`Boundary buffer limit exceeded: ${t.length} > ${this.maxBoundaryBuffer}`);this.buffer=t;break}let t=this.findBoundary(e,n);if(t===-1){let t=this.findPartialTailBoundary(e);if(t===-1)this.writeBody(n===0?e:e.subarray(n));else{this.writeBody(e.subarray(n,t));let r=e.subarray(t);if(r.length>this.maxBoundaryBuffer)throw new I(`Partial boundary too large: ${r.length} > ${this.maxBoundaryBuffer}`);this.buffer=r}break}this.writeBody(e.subarray(n,t)),this.finishMessage(),n=t+this.boundaryLength,this.state=1}if(this.state===1){if(r-n<2){let t=e.subarray(n);if(t.length>this.maxBoundaryBuffer)throw new I(`After-boundary buffer limit exceeded: ${t.length} > ${this.maxBoundaryBuffer}`);this.buffer=t;break}if(e[n]===45&&e[n+1]===45){this.state=4;break}if(e[n]===13&&e[n+1]===10)n+=2;else if(e[n]===10)n+=1;else throw new I(`Invalid character after boundary: expected CRLF or LF, got 0x${e[n].toString(16)}`);this.state=2}if(this.state===2){if(r-n<4){let t=e.subarray(n);if(t.length>this.maxHeaderSize)throw new I(`Header buffer limit exceeded: ${t.length} > ${this.maxHeaderSize}`);this.buffer=t;break}let i=this.findDoubleNewline(e,n),a=4;if(i===-1&&(i=Vn(`
`)(e,n),a=2),i===-1){let t=e.subarray(n);if(t.length>this.maxHeaderSize)throw new I(`Headers too large: ${t.length} > ${this.maxHeaderSize} bytes`);this.buffer=t;break}let o=e.subarray(n,i);this.currentHeaders=Un(o);let s=this.createStreamingMessage();t.push(s),n=i+a,this.state=3;continue}if(this.state===0){if(r<this.openingBoundaryLength){if(e.length>this.maxBoundaryBuffer)throw new I(`Initial chunk too large for boundary detection: ${e.length} > ${this.maxBoundaryBuffer}`);this.buffer=e;break}if(this.findOpeningBoundary(e)!==0)throw new I(`Invalid multipart stream: missing initial boundary`);n=this.openingBoundaryLength,this.state=1}}return t}createStreamingMessage(){let e=new Headers(this.currentHeaders),t=new ReadableStream({start:e=>{this.currentPayloadController=e}});return this.currentHeaders=new Headers,{headers:e,payload:t}}writeBody(e){this.currentPayloadController&&this.currentPayloadController.enqueue(e)}finishMessage(){this.currentPayloadController&&=(this.currentPayloadController.close(),null)}closeCurrentPayload(e){if(this.currentPayloadController){try{e?this.currentPayloadController.error(e):this.currentPayloadController.close()}catch{}this.currentPayloadController=null}}};const Jn=(e,t,n)=>{let r=e instanceof RegExp?Yn(e,n):e,i=t instanceof RegExp?Yn(t,n):t,a=r!==null&&i!=null&&Xn(r,i,n);return a&&{start:a[0],end:a[1],pre:n.slice(0,a[0]),body:n.slice(a[0]+r.length,a[1]),post:n.slice(a[1]+i.length)}},Yn=(e,t)=>{let n=t.match(e);return n?n[0]:null},Xn=(e,t,n)=>{let r,i,a,o,s,c=n.indexOf(e),l=n.indexOf(t,c+1),u=c;if(c>=0&&l>0){if(e===t)return[c,l];for(r=[],a=n.length;u>=0&&!s;){if(u===c)r.push(u),c=n.indexOf(e,u+1);else if(r.length===1){let e=r.pop();e!==void 0&&(s=[e,l])}else i=r.pop(),i!==void 0&&i<a&&(a=i,o=l),l=n.indexOf(t,u+1);u=c<l&&c>=0?c:l}r.length&&o!==void 0&&(s=[a,o])}return s},Zn=`\0SLASH`+Math.random()+`\0`,Qn=`\0OPEN`+Math.random()+`\0`,$n=`\0CLOSE`+Math.random()+`\0`,er=`\0COMMA`+Math.random()+`\0`,tr=`\0PERIOD`+Math.random()+`\0`,nr=new RegExp(Zn,`g`),rr=new RegExp(Qn,`g`),ir=new RegExp($n,`g`),ar=new RegExp(er,`g`),or=new RegExp(tr,`g`),sr=/\\\\/g,cr=/\\{/g,lr=/\\}/g,ur=/\\,/g,dr=/\\\./g;function fr(e){return isNaN(e)?e.charCodeAt(0):parseInt(e,10)}function pr(e){return e.replace(sr,Zn).replace(cr,Qn).replace(lr,$n).replace(ur,er).replace(dr,tr)}function mr(e){return e.replace(nr,`\\`).replace(rr,`{`).replace(ir,`}`).replace(ar,`,`).replace(or,`.`)}function hr(e,t){for(let n=0;n<t.length;n++)e.push(t[n])}function gr(e){let t=[],n=``;for(;;){let r=Jn(`{`,`}`,e);if(!r){let r=e.split(`,`);return r[0]=n+r[0],hr(t,r),t}let{pre:i,body:a,post:o}=r,s=i.split(`,`);if(s[0]=n+s[0],s[s.length-1]+=`{`+a+`}`,!o.length)return hr(t,s),t;n=s.pop(),hr(t,s),e=o}}function _r(e,t={}){if(!e)return[];let{max:n=1e5,maxLength:r=4e6,maxDepth:i=1e3,maxRewrites:a=1e3}=t;return e.slice(0,2)===`{}`&&(e=`\\{\\}`+e.slice(2)),wr(pr(e),n,r,i,0,a,!0).map(mr)}function vr(e){return`{`+e+`}`}function yr(e){return/^-?0\d/.test(e)}function br(e,t){return e<=t}function xr(e,t){return e>=t}function Sr(e,t,n,r,i,a){let o=[],s=0;for(let c=0;c<e.length;c++)for(let l=0;l<n.length;l++){if(o.length>=r)return o;let u=e[c]+t+n[l];if(!a||u){if(s+u.length>i)return o;o.push(u),s+=u.length}}return o}function Cr(e,t,n,r){let i=e.split(/\.\./),a=[];if(i[0]===void 0||i[1]===void 0)return a;let o=fr(i[0]),s=fr(i[1]),c=Math.max(i[0].length,i[1].length),l=i.length===3&&i[2]!==void 0?Math.max(Math.abs(fr(i[2])),1):1,u=br;s<o&&(l*=-1,u=xr);let d=i.some(yr),f=0;for(let e=o;u(e,s)&&a.length<n;e+=l){let n;if(t)n=String.fromCharCode(e),n===`\\`&&(n=``);else if(n=String(e),d){let t=c-n.length;if(t>0){let r=Array(t+1).join(`0`);n=e<0?`-`+r+n.slice(1):r+n}}if(f+n.length>r)break;a.push(n),f+=n.length}return a}function wr(e,t,n,r,i,a,o){if(i>r)return[e];let s=[``],c=0,l=!1,u=!0;for(;;){let d=Jn(`{`,`}`,e);if(!d)return Sr(s,e,[``],t,n,l);let f=d.pre;if(/\$$/.test(f)){if(s=Sr(s,f+`{`+d.body+`}`,[``],t,n,l&&!d.post.length),u=!1,!d.post.length)break;e=d.post;continue}let p=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(d.body),m=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(d.body),h=p||m,g=d.body.indexOf(`,`)>=0;if(!h&&!g){if(c<a&&d.post.match(/,(?!,).*\}/)){c++,e=d.pre+`{`+d.body+$n+d.post,o=!0;continue}return Sr(s,f+`{`+d.body+`}`+d.post,[``],t,n,l)}u&&=(l=o&&!h,!1);let _;if(h)_=Cr(d.body,m,t,n);else{let o=gr(d.body);if(o.length===1&&o[0]!==void 0&&(o=wr(o[0],t,n,r,i+1,a,!1).map(vr),o.length===1)){if(s=Sr(s,f+o[0],[``],t,n,l&&!d.post.length),!d.post.length)break;e=d.post;continue}let c=l&&!d.post.length&&!f;for(let e=0;c&&e<s.length;e++)s[e]&&(c=!1);_=[];let u=0;outer:for(let e=0;e<o.length;e++){let s=wr(o[e],t,n,r,i+1,a,!1);for(let e=0;e<s.length;e++){let r=s[e];if(!c||r){if(_.length>=t||u+r.length>n)break outer;_.push(r),u+=r.length}}}}if(s=Sr(s,f,_,t,n,l&&!d.post.length),!d.post.length)break;e=d.post}return s}const Tr=e=>{if(typeof e!=`string`)throw TypeError(`invalid pattern`);if(e.length>65536)throw TypeError(`pattern is too long`)},Er={"[:alnum:]":[`\\p{L}\\p{Nl}\\p{Nd}`,!0],"[:alpha:]":[`\\p{L}\\p{Nl}`,!0],"[:ascii:]":[`\\x00-\\x7f`,!1],"[:blank:]":[`\\p{Zs}\\t`,!0],"[:cntrl:]":[`\\p{Cc}`,!0],"[:digit:]":[`\\p{Nd}`,!0],"[:graph:]":[`\\p{Z}\\p{C}`,!0,!0],"[:lower:]":[`\\p{Ll}`,!0],"[:print:]":[`\\p{C}`,!0],"[:punct:]":[`\\p{P}`,!0],"[:space:]":[`\\p{Z}\\t\\r\\n\\v\\f`,!0],"[:upper:]":[`\\p{Lu}`,!0],"[:word:]":[`\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}`,!0],"[:xdigit:]":[`A-Fa-f0-9`,!1]},Dr=e=>e.replace(/[[\]\\-]/g,`\\$&`),Or=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),kr=e=>e.join(``),Ar=(e,t)=>{let n=t;if(e.charAt(n)!==`[`)throw Error(`not in a brace expression`);let r=[],i=[],a=n+1,o=!1,s=!1,c=!1,l=!1,u=n,d=``;WHILE:for(;a<e.length;){let t=e.charAt(a);if((t===`!`||t===`^`)&&a===n+1){l=!0,a++;continue}if(t===`]`&&o&&!c){u=a+1;break}if(o=!0,t===`\\`&&!c){c=!0,a++;continue}if(t===`[`&&!c){for(let[t,[o,c,l]]of Object.entries(Er))if(e.startsWith(t,a)){if(d)return[`$.`,!1,e.length-n,!0];a+=t.length,l?i.push(o):r.push(o),s||=c;continue WHILE}}if(c=!1,d){t>d?r.push(Dr(d)+`-`+Dr(t)):t===d&&r.push(Dr(t)),d=``,a++;continue}if(e.startsWith(`-]`,a+1)){r.push(Dr(t+`-`)),a+=2;continue}if(e.startsWith(`-`,a+1)){d=t,a+=2;continue}r.push(Dr(t)),a++}if(u<a)return[``,!1,0,!1];if(!r.length&&!i.length)return[`$.`,!1,e.length-n,!0];if(i.length===0&&r.length===1&&/^\\?.$/.test(r[0])&&!l){let e=r[0].length===2?r[0].slice(-1):r[0];return[Or(e),!1,u-n,!1]}let f=`[`+(l?`^`:``)+kr(r)+`]`,p=`[`+(l?``:`^`)+kr(i)+`]`;return[r.length&&i.length?`(`+f+`|`+p+`)`:r.length?f:p,s,u-n,!0]},jr=(e,{windowsPathsNoEscape:t=!1,magicalBraces:n=!0}={})=>n?t?e.replace(/\[([^/\\])\]/g,`$1`):e.replace(/((?!\\).|^)\[([^/\\])\]/g,`$1$2`).replace(/\\([^/])/g,`$1`):t?e.replace(/\[([^/\\{}])\]/g,`$1`):e.replace(/((?!\\).|^)\[([^/\\{}])\]/g,`$1$2`).replace(/\\([^/{}])/g,`$1`);var L;const Mr=new Set([`!`,`?`,`+`,`*`,`@`]),Nr=e=>Mr.has(e),Pr=e=>Nr(e.type),Fr=new Map([[`!`,[`@`]],[`?`,[`?`,`@`]],[`@`,[`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`]]]),Ir=new Map([[`!`,[`?`]],[`@`,[`?`]],[`+`,[`?`,`*`]]]),Lr=new Map([[`!`,[`?`,`@`]],[`?`,[`?`,`@`]],[`@`,[`?`,`@`]],[`*`,[`*`,`+`,`?`,`@`]],[`+`,[`+`,`@`,`?`,`*`]]]),Rr=new Map([[`!`,new Map([[`!`,`@`]])],[`?`,new Map([[`*`,`*`],[`+`,`*`]])],[`@`,new Map([[`!`,`!`],[`?`,`?`],[`@`,`@`],[`*`,`*`],[`+`,`+`]])],[`+`,new Map([[`?`,`*`],[`*`,`*`]])]]),zr=`(?!\\.)`,Br=new Set([`[`,`.`]),Vr=new Set([`..`,`.`]),Hr=new Set(`().*{}+?[]^$\\!`),Ur=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`),Wr=`[^/]+?`;let Gr=0;var Kr=class{type;#e;#t;#n=!1;#r=[];#i;#a;#o;#s=!1;#c;#l;#u=!1;id=++Gr;get depth(){return(this.#i?.depth??-1)+1}[Symbol.for(`nodejs.util.inspect.custom`)](){return{"@@type":`AST`,id:this.id,type:this.type,root:this.#e.id,parent:this.#i?.id,depth:this.depth,partsLength:this.#r.length,parts:this.#r}}constructor(e,t,n={}){this.type=e,e&&(this.#t=!0),this.#i=t,this.#e=this.#i?this.#i.#e:this,this.#c=this.#e===this?n:this.#e.#c,this.#o=this.#e===this?[]:this.#e.#o,e===`!`&&!this.#e.#s&&this.#o.push(this),this.#a=this.#i?this.#i.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let e of this.#r)if(typeof e!=`string`&&(e.type||e.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#l===void 0?this.#l=this.type?this.type+`(`+this.#r.map(e=>String(e)).join(`|`)+`)`:this.#r.map(e=>String(e)).join(``):this.#l}#d(){if(this!==this.#e)throw Error(`should only call on root`);if(this.#s)return this;this.toString(),this.#s=!0;let e;for(;e=this.#o.pop();){if(e.type!==`!`)continue;let t=e,n=t.#i;for(;n;){for(let r=t.#a+1;!n.type&&r<n.#r.length;r++)for(let t of e.#r){if(typeof t==`string`)throw Error(`string part in extglob AST??`);t.copyIn(n.#r[r])}t=n,n=t.#i}}return this}push(...e){for(let t of e)if(t!==``){if(typeof t!=`string`&&!(t instanceof L&&t.#i===this))throw Error(`invalid part: `+t);this.#r.push(t)}}toJSON(){let e=this.type===null?this.#r.slice().map(e=>typeof e==`string`?e:e.toJSON()):[this.type,...this.#r.map(e=>e.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#s&&this.#i?.type===`!`)&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#i?.isStart())return!1;if(this.#a===0)return!0;let e=this.#i;for(let t=0;t<this.#a;t++){let n=e.#r[t];if(!(n instanceof L&&n.type===`!`))return!1}return!0}isEnd(){if(this.#e===this||this.#i?.type===`!`)return!0;if(!this.#i?.isEnd())return!1;if(!this.type)return this.#i?.isEnd();let e=this.#i?this.#i.#r.length:0;return this.#a===e-1}copyIn(e){typeof e==`string`?this.push(e):this.push(e.clone(this))}clone(e){let t=new L(this.type,e);for(let e of this.#r)t.copyIn(e);return t}static#f(e,t,n,r,i){let a=r.maxExtglobRecursion??2,o=!1,s=!1,c=-1,l=!1;if(t.type===null){let u=n,d=``;for(;u<e.length;){let n=e.charAt(u++);if(o||n===`\\`){o=!o,d+=n;continue}if(s){u===c+1?(n===`^`||n===`!`)&&(l=!0):n===`]`&&!(u===c+2&&l)&&(s=!1),d+=n;continue}if(n===`[`){s=!0,c=u,l=!1,d+=n;continue}if(!r.noext&&Nr(n)&&e.charAt(u)===`(`&&i<=a){t.push(d),d=``;let a=new L(n,t);u=L.#f(e,a,u,r,i+1),t.push(a);continue}d+=n}return t.push(d),u}let u=n+1,d=new L(null,t),f=[],p=``;for(;u<e.length;){let n=e.charAt(u++);if(o||n===`\\`){o=!o,p+=n;continue}if(s){u===c+1?(n===`^`||n===`!`)&&(l=!0):n===`]`&&!(u===c+2&&l)&&(s=!1),p+=n;continue}if(n===`[`){s=!0,c=u,l=!1,p+=n;continue}if(!r.noext&&Nr(n)&&e.charAt(u)===`(`&&(i<=a||t&&t.#h(n))){let a=t&&t.#h(n)?0:1;d.push(p),p=``;let o=new L(n,d);d.push(o),u=L.#f(e,o,u,r,i+a);continue}if(n===`|`){d.push(p),p=``,f.push(d),d=new L(null,t);continue}if(n===`)`)return p===``&&t.#r.length===0&&(t.#u=!0),d.push(p),p=``,t.push(...f,d),u;p+=n}return t.type=null,t.#t=void 0,t.#r=[e.substring(n-1)],u}#p(e){return this.#m(e,Ir)}#m(e,t=Fr){if(!e||typeof e!=`object`||e.type!==null||e.#r.length!==1||this.type===null)return!1;let n=e.#r[0];return!n||typeof n!=`object`||n.type===null?!1:this.#h(n.type,t)}#h(e,t=Lr){return!!t.get(this.type)?.includes(e)}#g(e,t){let n=e.#r[0],r=new L(null,n,this.options);r.#r.push(``),n.push(r),this.#_(e,t)}#_(e,t){let n=e.#r[0];this.#r.splice(t,1,...n.#r);for(let e of n.#r)typeof e==`object`&&(e.#i=this);this.#l=void 0}#v(e){return!!Rr.get(this.type)?.has(e)}#y(e){if(!e||typeof e!=`object`||e.type!==null||e.#r.length!==1||this.type===null||this.#r.length!==1)return!1;let t=e.#r[0];return!t||typeof t!=`object`||t.type===null?!1:this.#v(t.type)}#b(e){let t=Rr.get(this.type),n=e.#r[0],r=t?.get(n.type);if(!r)return!1;this.#r=n.#r;for(let e of this.#r)typeof e==`object`&&(e.#i=this);this.type=r,this.#l=void 0,this.#u=!1}static fromGlob(e,t={}){let n=new L(null,void 0,t);return L.#f(e,n,0,t,0),n}toMMPattern(){if(this!==this.#e)return this.#e.toMMPattern();let e=this.toString(),[t,n,r,i]=this.toRegExpSource();if(!(r||this.#t||this.#c.nocase&&!this.#c.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return n;let a=(this.#c.nocase?`i`:``)+(i?`u`:``);return Object.assign(RegExp(`^${t}$`,a),{_src:t,_glob:e})}get options(){return this.#c}toRegExpSource(e){let t=e??!!this.#c.dot;if(this.#e===this&&(this.#x(),this.#d()),!Pr(this)){let n=this.isStart()&&this.isEnd()&&!this.#r.some(e=>typeof e!=`string`),r=this.#r.map(t=>{let[r,i,a,o]=typeof t==`string`?L.#C(t,this.#t,n):t.toRegExpSource(e);return this.#t=this.#t||a,this.#n=this.#n||o,r}).join(``),i=``;if(this.isStart()&&typeof this.#r[0]==`string`&&!(this.#r.length===1&&Vr.has(this.#r[0]))){let n=Br,a=t&&n.has(r.charAt(0))||r.startsWith(`\\.`)&&n.has(r.charAt(2))||r.startsWith(`\\.\\.`)&&n.has(r.charAt(4)),o=!t&&!e&&n.has(r.charAt(0));i=a?`(?!(?:^|/)\\.\\.?(?:$|/))`:o?zr:``}let a=``;return this.isEnd()&&this.#e.#s&&this.#i?.type===`!`&&(a=`(?:$|\\/)`),[i+r+a,jr(r),this.#t=!!this.#t,this.#n]}let n=this.type===`*`||this.type===`+`,r=this.type===`!`?`(?:(?!(?:`:`(?:`,i=this.#S(t);if(this.isStart()&&this.isEnd()&&!i&&this.type!==`!`){let e=this.toString(),t=this;return t.#r=[e],t.type=null,t.#t=void 0,[e,jr(this.toString()),!1,!1]}let a=!n||e||t?``:this.#S(!0);a===i&&(a=``),a&&(i=`(?:${i})(?:${a})*?`);let o=``;if(this.type===`!`&&this.#u)o=(this.isStart()&&!t?zr:``)+Wr;else{let n=this.type===`!`?`))`+(this.isStart()&&!t&&!e?zr:``)+`[^/]*?)`:this.type===`@`?`)`:this.type===`?`?`)?`:this.type===`+`&&a?`)`:this.type===`*`&&a?`)?`:`)${this.type}`;o=r+i+n}return[o,jr(i),this.#t=!!this.#t,this.#n]}#x(){if(Pr(this)){let e=0,t=!1;do{t=!0;for(let e=0;e<this.#r.length;e++){let n=this.#r[e];typeof n==`object`&&(n.#x(),this.#m(n)?(t=!1,this.#_(n,e)):this.#p(n)?(t=!1,this.#g(n,e)):this.#y(n)&&(t=!1,this.#b(n)))}}while(!t&&++e<10)}else for(let e of this.#r)typeof e==`object`&&e.#x();this.#l=void 0}#S(e){return this.#r.map(t=>{if(typeof t==`string`)throw Error(`string type in extglob ast??`);let[n,r,i,a]=t.toRegExpSource(e);return this.#n=this.#n||a,n}).filter(e=>!(this.isStart()&&this.isEnd())||!!e).join(`|`)}static#C(e,t,n=!1){let r=!1,i=``,a=!1,o=!1;for(let s=0;s<e.length;s++){let c=e.charAt(s);if(r){r=!1,i+=(Hr.has(c)?`\\`:``)+c;continue}if(c===`*`){if(o)continue;o=!0,i+=n&&/^[*]+$/.test(e)?Wr:`[^/]*?`,t=!0;continue}if(o=!1,c===`\\`){s===e.length-1?i+=`\\\\`:r=!0;continue}if(c===`[`){let[n,r,o,c]=Ar(e,s);if(o){i+=n,a||=r,s+=o-1,t||=c;continue}}if(c===`?`){i+=`[^/]`,t=!0;continue}i+=Ur(c)}return[i,jr(e),!!t,a]}};L=Kr;const qr=(e,{windowsPathsNoEscape:t=!1,magicalBraces:n=!1}={})=>n?t?e.replace(/[?*()[\]{}]/g,`[$&]`):e.replace(/[?*()[\]\\{}]/g,`\\$&`):t?e.replace(/[?*()[\]]/g,`[$&]`):e.replace(/[?*()[\]\\]/g,`\\$&`),R=(e,t,n={})=>(Tr(t),!n.nocomment&&t.charAt(0)===`#`?!1:new yi(t,n).match(e)),Jr=/^\*+([^+@!?*[(]*)$/,Yr=e=>t=>!t.startsWith(`.`)&&t.endsWith(e),Xr=e=>t=>t.endsWith(e),Zr=e=>(e=e.toLowerCase(),t=>!t.startsWith(`.`)&&t.toLowerCase().endsWith(e)),Qr=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),$r=/^\*+\.\*+$/,ei=e=>!e.startsWith(`.`)&&e.includes(`.`),ti=e=>e!==`.`&&e!==`..`&&e.includes(`.`),ni=/^\.\*+$/,ri=e=>e!==`.`&&e!==`..`&&e.startsWith(`.`),ii=/^\*+$/,ai=e=>e.length!==0&&!e.startsWith(`.`),oi=e=>e.length!==0&&e!==`.`&&e!==`..`,si=/^\?+([^+@!?*[(]*)?$/,ci=([e,t=``])=>{let n=fi([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},li=([e,t=``])=>{let n=pi([e]);return t?(t=t.toLowerCase(),e=>n(e)&&e.toLowerCase().endsWith(t)):n},ui=([e,t=``])=>{let n=pi([e]);return t?e=>n(e)&&e.endsWith(t):n},di=([e,t=``])=>{let n=fi([e]);return t?e=>n(e)&&e.endsWith(t):n},fi=([e])=>{let t=e.length;return e=>e.length===t&&!e.startsWith(`.`)},pi=([e])=>{let t=e.length;return e=>e.length===t&&e!==`.`&&e!==`..`},mi=typeof process==`object`&&process?typeof process.env==`object`&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:`posix`,hi={win32:{sep:`\\`},posix:{sep:`/`}};R.sep=mi===`win32`?hi.win32.sep:hi.posix.sep;const z=Symbol(`globstar **`);R.GLOBSTAR=z,R.filter=(e,t={})=>n=>R(n,e,t);const B=(e,t={})=>Object.assign({},e,t);R.defaults=e=>{if(!e||typeof e!=`object`||!Object.keys(e).length)return R;let t=R;return Object.assign((n,r,i={})=>t(n,r,B(e,i)),{Minimatch:class extends t.Minimatch{constructor(t,n={}){super(t,B(e,n))}static defaults(n){return t.defaults(B(e,n)).Minimatch}},AST:class extends t.AST{constructor(t,n,r={}){super(t,n,B(e,r))}static fromGlob(n,r={}){return t.AST.fromGlob(n,B(e,r))}},unescape:(n,r={})=>t.unescape(n,B(e,r)),escape:(n,r={})=>t.escape(n,B(e,r)),filter:(n,r={})=>t.filter(n,B(e,r)),defaults:n=>t.defaults(B(e,n)),makeRe:(n,r={})=>t.makeRe(n,B(e,r)),braceExpand:(n,r={})=>t.braceExpand(n,B(e,r)),match:(n,r,i={})=>t.match(n,r,B(e,i)),sep:t.sep,GLOBSTAR:z})};const gi=(e,t={})=>(Tr(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:_r(e,{max:t.braceExpandMax}));R.braceExpand=gi,R.makeRe=(e,t={})=>new yi(e,t).makeRe(),R.match=(e,t,n={})=>{let r=new yi(t,n);return e=e.filter(e=>r.match(e)),r.options.nonull&&!e.length&&e.push(t),e};const _i=/[?*]|[+@!]\(.*?\)|\[|\]/,vi=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`);var yi=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(e,t={}){Tr(e),t||={},this.options=t,this.maxGlobstarRecursion=t.maxGlobstarRecursion??200,this.pattern=e,this.platform=t.platform||mi,this.isWindows=this.platform===`win32`,this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,`/`)),this.preserveMultipleSlashes=!!t.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!t.nonegate,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=t.windowsNoMagicRoot===void 0?!!(this.isWindows&&this.nocase):t.windowsNoMagicRoot,this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let t of e)if(typeof t!=`string`)return!0;return!1}debug(...e){}make(){let e=this.pattern,t=this.options;if(!t.nocomment&&e.charAt(0)===`#`){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],t.debug&&(this.debug=(...e)=>console.error(...e)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(e=>this.slashSplit(e));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let r=this.globParts.map((e,t,n)=>{if(this.isWindows&&this.windowsNoMagicRoot){let t=e[0]===``&&e[1]===``&&(e[2]===`?`||!_i.test(e[2]))&&!_i.test(e[3]),n=/^[a-z]:/i.test(e[0]);if(t)return[...e.slice(0,4),...e.slice(4).map(e=>this.parse(e))];if(n)return[e[0],...e.slice(1).map(e=>this.parse(e))]}return e.map(e=>this.parse(e))});if(this.debug(this.pattern,r),this.set=r.filter(e=>e.indexOf(!1)===-1),this.isWindows)for(let e=0;e<this.set.length;e++){let t=this.set[e];t[0]===``&&t[1]===``&&this.globParts[e][2]===`?`&&typeof t[3]==`string`&&/^[a-z]:$/i.test(t[3])&&(t[2]=`?`)}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let t of e)for(let e=0;e<t.length;e++)t[e]===`**`&&(t[e]=`*`);let{optimizationLevel:t=1}=this.options;return t>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):e=t>=1?this.levelOneOptimize(e):this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(e=>{let t=-1;for(;(t=e.indexOf(`**`,t+1))!==-1;){let n=t;for(;e[n+1]===`**`;)n++;n!==t&&e.splice(t,n-t)}return e})}levelOneOptimize(e){return e.map(e=>(e=e.reduce((e,t)=>{let n=e[e.length-1];return t===`**`&&n===`**`?e:t===`..`&&n&&n!==`..`&&n!==`.`&&n!==`**`?(e.pop(),e):(e.push(t),e)},[]),e.length===0?[``]:e))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let t=!1;do{if(t=!1,!this.preserveMultipleSlashes){for(let n=1;n<e.length-1;n++){let r=e[n];(n!==1||r!==``||e[0]!==``)&&(r===`.`||r===``)&&(t=!0,e.splice(n,1),n--)}e[0]===`.`&&e.length===2&&(e[1]===`.`||e[1]===``)&&(t=!0,e.pop())}let n=0;for(;(n=e.indexOf(`..`,n+1))!==-1;){let r=e[n-1];r&&r!==`.`&&r!==`..`&&r!==`**`&&!(this.isWindows&&/^[a-z]:$/i.test(r))&&(t=!0,e.splice(n-1,2),n-=2)}}while(t);return e.length===0?[``]:e}firstPhasePreProcess(e){let t=!1;do{t=!1;for(let n of e){let r=-1;for(;(r=n.indexOf(`**`,r+1))!==-1;){let i=r;for(;n[i+1]===`**`;)i++;i>r&&n.splice(r+1,i-r);let a=n[r+1],o=n[r+2],s=n[r+3];if(a!==`..`||!o||o===`.`||o===`..`||!s||s===`.`||s===`..`)continue;t=!0,n.splice(r,1);let c=n.slice(0);c[r]=`**`,e.push(c),r--}if(!this.preserveMultipleSlashes){for(let e=1;e<n.length-1;e++){let r=n[e];(e!==1||r!==``||n[0]!==``)&&(r===`.`||r===``)&&(t=!0,n.splice(e,1),e--)}n[0]===`.`&&n.length===2&&(n[1]===`.`||n[1]===``)&&(t=!0,n.pop())}let i=0;for(;(i=n.indexOf(`..`,i+1))!==-1;){let e=n[i-1];if(e&&e!==`.`&&e!==`..`&&e!==`**`){t=!0;let e=i===1&&n[i+1]===`**`?[`.`]:[];n.splice(i-1,2,...e),n.length===0&&n.push(``),i-=2}}}}while(t);return e}secondPhasePreProcess(e){for(let t=0;t<e.length-1;t++)for(let n=t+1;n<e.length;n++){let r=this.partsMatch(e[t],e[n],!this.preserveMultipleSlashes);if(r){e[t]=[],e[n]=r;break}}return e.filter(e=>e.length)}partsMatch(e,t,n=!1){let r=0,i=0,a=[],o=``;for(;r<e.length&&i<t.length;)if(e[r]===t[i])a.push(o===`b`?t[i]:e[r]),r++,i++;else if(n&&e[r]===`**`&&t[i]===e[r+1])a.push(e[r]),r++;else if(n&&t[i]===`**`&&e[r]===t[i+1])a.push(t[i]),i++;else if(e[r]===`*`&&t[i]&&(this.options.dot||!t[i].startsWith(`.`))&&t[i]!==`**`){if(o===`b`)return!1;o=`a`,a.push(e[r]),r++,i++}else if(t[i]===`*`&&e[r]&&(this.options.dot||!e[r].startsWith(`.`))&&e[r]!==`**`){if(o===`a`)return!1;o=`b`,a.push(t[i]),r++,i++}else return!1;return e.length===t.length&&a}parseNegate(){if(this.nonegate)return;let e=this.pattern,t=!1,n=0;for(let r=0;r<e.length&&e.charAt(r)===`!`;r++)t=!t,n++;n&&(this.pattern=e.slice(n)),this.negate=t}matchOne(e,t,n=!1){let r=0,i=0;if(this.isWindows){let n=typeof e[0]==`string`&&/^[a-z]:$/i.test(e[0]),a=!n&&e[0]===``&&e[1]===``&&e[2]===`?`&&/^[a-z]:$/i.test(e[3]),o=typeof t[0]==`string`&&/^[a-z]:$/i.test(t[0]),s=!o&&t[0]===``&&t[1]===``&&t[2]===`?`&&typeof t[3]==`string`&&/^[a-z]:$/i.test(t[3]),c=a?3:n?0:void 0,l=s?3:o?0:void 0;if(typeof c==`number`&&typeof l==`number`){let[n,a]=[e[c],t[l]];n.toLowerCase()===a.toLowerCase()&&(t[l]=n,i=l,r=c)}}let{optimizationLevel:a=1}=this.options;return a>=2&&(e=this.levelTwoFileOptimize(e)),t.includes(z)?this.#e(e,t,n,r,i):this.#n(e,t,n,r,i)}#e(e,t,n,r,i){let a=t.indexOf(z,i),o=t.lastIndexOf(z),[s,c,l]=n?[t.slice(i,a),t.slice(a+1),[]]:[t.slice(i,a),t.slice(a+1,o),t.slice(o+1)];if(s.length){let t=e.slice(r,r+s.length);if(!this.#n(t,s,n,0,0))return!1;r+=s.length,i+=s.length}let u=0;if(l.length){if(l.length+r>e.length)return!1;let t=e.length-l.length;if(this.#n(e,l,n,t,0))u=l.length;else{if(e[e.length-1]!==``||r+l.length===e.length||(t--,!this.#n(e,l,n,t,0)))return!1;u=l.length+1}}if(!c.length){let t=!!u;for(let n=r;n<e.length-u;n++){let r=String(e[n]);if(t=!0,r===`.`||r===`..`||!this.options.dot&&r.startsWith(`.`))return!1}return n||t}let d=[[[],0]],f=d[0],p=0,m=[0];for(let e of c)e===z?(m.push(p),f=[[],0],d.push(f)):(f[0].push(e),p++);let h=d.length-1,g=e.length-u;for(let e of d)e[1]=g-(m[h--]+e[0].length);return!!this.#t(e,d,r,0,n,0,!!u)}#t(e,t,n,r,i,a,o){let s=t[r];if(!s){for(let t=n;t<e.length;t++){o=!0;let n=e[t];if(n===`.`||n===`..`||!this.options.dot&&n.startsWith(`.`))return!1}return o}let[c,l]=s;for(;n<=l;){if(this.#n(e.slice(0,n+c.length),c,i,n,0)&&a<this.maxGlobstarRecursion){let s=this.#t(e,t,n+c.length,r+1,i,a+1,o);if(s!==!1)return s}let s=e[n];if(s===`.`||s===`..`||!this.options.dot&&s.startsWith(`.`))return!1;n++}return i||null}#n(e,t,n,r,i){let a,o,s,c;for(a=r,o=i,c=e.length,s=t.length;a<c&&o<s;a++,o++){this.debug(`matchOne loop`);let n=t[o],r=e[a];if(this.debug(t,n,r),n===!1||n===z)return!1;let i;if(typeof n==`string`?(i=r===n,this.debug(`string match`,n,r,i)):(i=n.test(r),this.debug(`pattern match`,n,r,i)),!i)return!1}if(a===c&&o===s)return!0;if(a===c)return n;if(o===s)return a===c-1&&e[a]===``;throw Error(`wtf?`)}braceExpand(){return gi(this.pattern,this.options)}parse(e){Tr(e);let t=this.options;if(e===`**`)return z;if(e===``)return``;let n,r=null;(n=e.match(ii))?r=t.dot?oi:ai:(n=e.match(Jr))?r=(t.nocase?t.dot?Qr:Zr:t.dot?Xr:Yr)(n[1]):(n=e.match(si))?r=(t.nocase?t.dot?li:ci:t.dot?ui:di)(n):(n=e.match($r))?r=t.dot?ti:ei:(n=e.match(ni))&&(r=ri);let i=Kr.fromGlob(e,this.options).toMMPattern();return r&&typeof i==`object`&&Reflect.defineProperty(i,"test",{value:r}),i}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let t=this.options,n=t.noglobstar?`[^/]*?`:t.dot?`(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?`:`(?:(?!(?:\\/|^)\\.).)*?`,r=new Set(t.nocase?[`i`]:[]),i=e.map(e=>{let t=e.map(e=>{if(e instanceof RegExp)for(let t of e.flags.split(``))r.add(t);return typeof e==`string`?vi(e):e===z?z:e._src});t.forEach((e,r)=>{let i=t[r+1],a=t[r-1];e===z&&a!==z&&(a===void 0?i!==void 0&&i!==z?t[r+1]=`(?:\\/|`+n+`\\/)?`+i:t[r]=n:i===void 0?t[r-1]=a+`(?:\\/|\\/`+n+`)?`:i!==z&&(t[r-1]=a+`(?:\\/|\\/`+n+`\\/)`+i,t[r+1]=z))});let i=t.filter(e=>e!==z);if(this.partial&&i.length>=1){let e=[];for(let t=1;t<=i.length;t++)e.push(i.slice(0,t).join(`/`));return`(?:`+e.join(`|`)+`)`}return i.join(`/`)}).join(`|`),[a,o]=e.length>1?[`(?:`,`)`]:[``,``];i=`^`+a+i+o+`$`,this.partial&&(i=`^(?:\\/|`+a+i.slice(1,-1)+o+`)$`),this.negate&&(i=`^(?!`+i+`).+$`);try{this.regexp=new RegExp(i,[...r].join(``))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split(`/`):this.isWindows&&/^\/\/[^/]+/.test(e)?[``,...e.split(/\/+/)]:e.split(/\/+/)}match(e,t=this.partial){if(this.debug(`match`,e,this.pattern),this.comment)return!1;if(this.empty)return e===``;if(e===`/`&&t)return!0;let n=this.options;this.isWindows&&(e=e.split(`\\`).join(`/`));let r=this.slashSplit(e);this.debug(this.pattern,`split`,r);let i=this.set;this.debug(this.pattern,`set`,i);let a=r[r.length-1];if(!a)for(let e=r.length-2;!a&&e>=0;e--)a=r[e];for(let e of i){let i=r;if(n.matchBase&&e.length===1&&(i=[a]),this.matchOne(i,e,t))return n.flipNegate?!0:!this.negate}return!n.flipNegate&&this.negate}static defaults(e){return R.defaults(e).Minimatch}};R.AST=Kr,R.Minimatch=yi,R.escape=qr,R.unescape=jr;var bi=n(((e,t)=>{let n=process||{},r=n.argv||[],i=n.env||{},a=!(i.NO_COLOR||r.includes(`--no-color`))&&(!!i.FORCE_COLOR||r.includes(`--color`)||n.platform===`win32`||(n.stdout||{}).isTTY&&i.TERM!==`dumb`||!!i.CI),o=(e,t,n=e)=>r=>{let i=``+r,a=i.indexOf(t,e.length);return~a?e+s(i,t,n,a)+t:e+i+t},s=(e,t,n,r)=>{let i=``,a=0;do i+=e.substring(a,r)+n,a=r+t.length,r=e.indexOf(t,a);while(~r);return i+e.substring(a)},c=(e=a)=>{let t=e?o:()=>String;return{isColorSupported:e,reset:t(`\x1B[0m`,`\x1B[0m`),bold:t(`\x1B[1m`,`\x1B[22m`,`\x1B[22m\x1B[1m`),dim:t(`\x1B[2m`,`\x1B[22m`,`\x1B[22m\x1B[2m`),italic:t(`\x1B[3m`,`\x1B[23m`),underline:t(`\x1B[4m`,`\x1B[24m`),inverse:t(`\x1B[7m`,`\x1B[27m`),hidden:t(`\x1B[8m`,`\x1B[28m`),strikethrough:t(`\x1B[9m`,`\x1B[29m`),black:t(`\x1B[30m`,`\x1B[39m`),red:t(`\x1B[31m`,`\x1B[39m`),green:t(`\x1B[32m`,`\x1B[39m`),yellow:t(`\x1B[33m`,`\x1B[39m`),blue:t(`\x1B[34m`,`\x1B[39m`),magenta:t(`\x1B[35m`,`\x1B[39m`),cyan:t(`\x1B[36m`,`\x1B[39m`),white:t(`\x1B[37m`,`\x1B[39m`),gray:t(`\x1B[90m`,`\x1B[39m`),bgBlack:t(`\x1B[40m`,`\x1B[49m`),bgRed:t(`\x1B[41m`,`\x1B[49m`),bgGreen:t(`\x1B[42m`,`\x1B[49m`),bgYellow:t(`\x1B[43m`,`\x1B[49m`),bgBlue:t(`\x1B[44m`,`\x1B[49m`),bgMagenta:t(`\x1B[45m`,`\x1B[49m`),bgCyan:t(`\x1B[46m`,`\x1B[49m`),bgWhite:t(`\x1B[47m`,`\x1B[49m`),blackBright:t(`\x1B[90m`,`\x1B[39m`),redBright:t(`\x1B[91m`,`\x1B[39m`),greenBright:t(`\x1B[92m`,`\x1B[39m`),yellowBright:t(`\x1B[93m`,`\x1B[39m`),blueBright:t(`\x1B[94m`,`\x1B[39m`),magentaBright:t(`\x1B[95m`,`\x1B[39m`),cyanBright:t(`\x1B[96m`,`\x1B[39m`),whiteBright:t(`\x1B[97m`,`\x1B[39m`),bgBlackBright:t(`\x1B[100m`,`\x1B[49m`),bgRedBright:t(`\x1B[101m`,`\x1B[49m`),bgGreenBright:t(`\x1B[102m`,`\x1B[49m`),bgYellowBright:t(`\x1B[103m`,`\x1B[49m`),bgBlueBright:t(`\x1B[104m`,`\x1B[49m`),bgMagentaBright:t(`\x1B[105m`,`\x1B[49m`),bgCyanBright:t(`\x1B[106m`,`\x1B[49m`),bgWhiteBright:t(`\x1B[107m`,`\x1B[49m`)}};t.exports=c(),t.exports.createColors=c})),xi=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{version:()=>u}),t.exports=c(l);let u=`3.8.0`;0&&(t.exports={version:u})})),Si=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{exchangeVercelOidcToken:()=>p}),t.exports=c(l);var u=xi();let d=new class{constructor(e){this.maxEntries=e,this.entries=new Map}get(e){let t=this.entries.get(e);if(t!==void 0){if(t.expiresAt<=Date.now()){this.entries.delete(e);return}return this.entries.delete(e),this.entries.set(e,t),t.token}}set({key:e,token:t,expiresAt:n}){for(this.entries.delete(e),this.entries.set(e,{token:t,expiresAt:n});this.entries.size>this.maxEntries;){let e=this.entries.keys().next().value;if(e===void 0)break;this.entries.delete(e)}}}(1e3);async function f(e){let t=JSON.stringify([e.token,e.audience,e.jti]),n=await crypto.subtle.digest(`SHA-256`,new TextEncoder().encode(t));return Array.from(new Uint8Array(n)).map(e=>e.toString(16).padStart(2,`0`)).join(``)}async function p(e){let t=await f(e);if(!e.skipCache){let e=d.get(t);if(e!==void 0)return e}let n=await fetch(`https://oidc.vercel.com/~token`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,"User-Agent":`@vercel/oidc@${u.version}`},body:JSON.stringify({token:e.token,aud:e.audience,...e.jti?{jti:e.jti}:void 0})});if(!n.ok)throw Error(`Failed to exchange token: ${await m(n)}`);let r;try{r=await n.json()}catch{throw Error(`Failed to exchange token: response was not valid JSON`)}if(!r||typeof r!=`object`||!(`token`in r)||typeof r.token!=`string`)throw Error(`Failed to exchange token: response did not contain a token`);let{token:i}=r,a=`expiry`in r&&typeof r.expiry==`number`?r.expiry:void 0;if(a!==void 0){let e=a*1e3;e>Date.now()&&d.set({key:t,token:i,expiresAt:e})}return i}async function m(e){try{let t=await e.json();if(t&&typeof t==`object`&&`error`in t&&typeof t.error==`string`)return t.error}catch{}return e.statusText||`HTTP ${e.status}`}0&&(t.exports={exchangeVercelOidcToken:p})})),Ci=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{SYMBOL_FOR_REQ_CONTEXT:()=>u,getContext:()=>d}),t.exports=c(l);let u=Symbol.for(`@vercel/request-context`);function d(){return globalThis[u]?.get?.()??{}}0&&(t.exports={SYMBOL_FOR_REQ_CONTEXT:u,getContext:d})})),wi=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{getVercelOidcTokenSync:()=>d}),t.exports=c(l);var u=Ci();function d(){let e=(0,u.getContext)().headers?.[`x-vercel-oidc-token`]??process.env.VERCEL_OIDC_TOKEN;if(!e)throw Error(`The 'x-vercel-oidc-token' header is missing from the request.`);return e}0&&(t.exports={getVercelOidcTokenSync:d})})),Ti=n(((t,n)=>{var r=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s=(e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})},c=(e,t,n,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of a(t))!o.call(e,c)&&c!==n&&r(e,c,{get:()=>t[c],enumerable:!(s=i(t,c))||s.enumerable});return e},l=e=>c(r({},`__esModule`,{value:!0}),e),u={};s(u,{getVercelOidcToken:()=>m}),n.exports=l(u);var d=Si(),f=wi(),p=Ut();async function m(t){let n=``,r;try{n=(0,f.getVercelOidcTokenSync)()}catch(e){r=e}try{let[{getTokenPayload:r,isExpired:i},{refreshToken:a}]=await Promise.all([await import(`../../_chunks/workflow/token-util-pP4KRRl0.js`).then(t=>e(t.t())),await import(`../../_chunks/workflow/token-U5XEWlVM.js`).then(t=>e(t.default))]);(!n||i(r(n),t?.expirationBufferMs))&&(await a(t),n=(0,f.getVercelOidcTokenSync)())}catch(e){let t=r instanceof Error?r.message:``;throw e instanceof Error&&(t=`${t}
${e.message}`),t?new p.VercelOidcTokenError(t):e}return t?.audience&&(n=await(0,d.exchangeVercelOidcToken)({token:n,audience:t.audience,jti:t.jti,skipCache:t.skipCache})),n}0&&(n.exports={getVercelOidcToken:m})})),Ei=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=t(`node:crypto`);e.default=(e,t)=>(0,n.createHash)(e).update(t).digest()})),V=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decoder=e.encoder=void 0,e.concat=r,e.p2s=i,e.uint64be=o,e.uint32be=s,e.lengthAndInput=c,e.concatKdf=l;let t=Ei();e.encoder=new TextEncoder,e.decoder=new TextDecoder;let n=2**32;function r(...e){let t=e.reduce((e,{length:t})=>e+t,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function i(t,n){return r(e.encoder.encode(t),new Uint8Array([0]),n)}function a(e,t,r){if(t<0||t>=n)throw RangeError(`value must be >= 0 and <= ${n-1}. Received ${t}`);e.set([t>>>24,t>>>16,t>>>8,t&255],r)}function o(e){let t=Math.floor(e/n),r=e%n,i=new Uint8Array(8);return a(i,t,0),a(i,r,4),i}function s(e){let t=new Uint8Array(4);return a(t,e),t}function c(e){return r(s(e.length),e)}async function l(e,n,r){let i=Math.ceil((n>>3)/32),a=new Uint8Array(i*32);for(let n=0;n<i;n++){let i=new Uint8Array(4+e.length+r.length);i.set(s(n+1)),i.set(e,4),i.set(r,4+e.length),a.set(await(0,t.default)(`sha256`,i),n*32)}return a.slice(0,n>>3)}})),H=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decode=e.encode=e.encodeBase64=e.decodeBase64=void 0;let n=t(`node:buffer`),r=V();function i(e){let t=e;return t instanceof Uint8Array&&(t=r.decoder.decode(t)),t}e.encode=e=>n.Buffer.from(e).toString(`base64url`),e.decodeBase64=e=>new Uint8Array(n.Buffer.from(e,`base64`)),e.encodeBase64=e=>n.Buffer.from(e).toString(`base64`),e.decode=e=>new Uint8Array(n.Buffer.from(i(e),`base64url`))})),U=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.JWSSignatureVerificationFailed=e.JWKSTimeout=e.JWKSMultipleMatchingKeys=e.JWKSNoMatchingKey=e.JWKSInvalid=e.JWKInvalid=e.JWTInvalid=e.JWSInvalid=e.JWEInvalid=e.JWEDecryptionFailed=e.JOSENotSupported=e.JOSEAlgNotAllowed=e.JWTExpired=e.JWTClaimValidationFailed=e.JOSEError=void 0;var t=class extends Error{static code=`ERR_JOSE_GENERIC`;code=`ERR_JOSE_GENERIC`;constructor(e,t){super(e,t),this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}};e.JOSEError=t,e.JWTClaimValidationFailed=class extends t{static code=`ERR_JWT_CLAIM_VALIDATION_FAILED`;code=`ERR_JWT_CLAIM_VALIDATION_FAILED`;claim;reason;payload;constructor(e,t,n=`unspecified`,r=`unspecified`){super(e,{cause:{claim:n,reason:r,payload:t}}),this.claim=n,this.reason=r,this.payload=t}},e.JWTExpired=class extends t{static code=`ERR_JWT_EXPIRED`;code=`ERR_JWT_EXPIRED`;claim;reason;payload;constructor(e,t,n=`unspecified`,r=`unspecified`){super(e,{cause:{claim:n,reason:r,payload:t}}),this.claim=n,this.reason=r,this.payload=t}},e.JOSEAlgNotAllowed=class extends t{static code=`ERR_JOSE_ALG_NOT_ALLOWED`;code=`ERR_JOSE_ALG_NOT_ALLOWED`},e.JOSENotSupported=class extends t{static code=`ERR_JOSE_NOT_SUPPORTED`;code=`ERR_JOSE_NOT_SUPPORTED`},e.JWEDecryptionFailed=class extends t{static code=`ERR_JWE_DECRYPTION_FAILED`;code=`ERR_JWE_DECRYPTION_FAILED`;constructor(e=`decryption operation failed`,t){super(e,t)}},e.JWEInvalid=class extends t{static code=`ERR_JWE_INVALID`;code=`ERR_JWE_INVALID`},e.JWSInvalid=class extends t{static code=`ERR_JWS_INVALID`;code=`ERR_JWS_INVALID`},e.JWTInvalid=class extends t{static code=`ERR_JWT_INVALID`;code=`ERR_JWT_INVALID`},e.JWKInvalid=class extends t{static code=`ERR_JWK_INVALID`;code=`ERR_JWK_INVALID`},e.JWKSInvalid=class extends t{static code=`ERR_JWKS_INVALID`;code=`ERR_JWKS_INVALID`},e.JWKSNoMatchingKey=class extends t{static code=`ERR_JWKS_NO_MATCHING_KEY`;code=`ERR_JWKS_NO_MATCHING_KEY`;constructor(e=`no applicable key found in the JSON Web Key Set`,t){super(e,t)}},e.JWKSMultipleMatchingKeys=class extends t{[Symbol.asyncIterator];static code=`ERR_JWKS_MULTIPLE_MATCHING_KEYS`;code=`ERR_JWKS_MULTIPLE_MATCHING_KEYS`;constructor(e=`multiple matching keys found in the JSON Web Key Set`,t){super(e,t)}},e.JWKSTimeout=class extends t{static code=`ERR_JWKS_TIMEOUT`;code=`ERR_JWKS_TIMEOUT`;constructor(e=`request timed out`,t){super(e,t)}},e.JWSSignatureVerificationFailed=class extends t{static code=`ERR_JWS_SIGNATURE_VERIFICATION_FAILED`;code=`ERR_JWS_SIGNATURE_VERIFICATION_FAILED`;constructor(e=`signature verification failed`,t){super(e,t)}}})),Di=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var n=t(`node:crypto`);Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.randomFillSync}})})),Oi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.bitLength=r;let t=U(),n=Di();function r(e){switch(e){case`A128GCM`:case`A128GCMKW`:case`A192GCM`:case`A192GCMKW`:case`A256GCM`:case`A256GCMKW`:return 96;case`A128CBC-HS256`:case`A192CBC-HS384`:case`A256CBC-HS512`:return 128;default:throw new t.JOSENotSupported(`Unsupported JWE Algorithm: ${e}`)}}e.default=e=>(0,n.default)(new Uint8Array(r(e)>>3))})),ki=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=U(),n=Oi();e.default=(e,r)=>{if(r.length<<3!==(0,n.bitLength)(e))throw new t.JWEInvalid(`Invalid Initialization Vector length`)}})),W=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=t(`node:util`);e.default=e=>n.types.isKeyObject(e)})),Ai=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=U(),n=W();e.default=(e,r)=>{let i;switch(e){case`A128CBC-HS256`:case`A192CBC-HS384`:case`A256CBC-HS512`:i=parseInt(e.slice(-3),10);break;case`A128GCM`:case`A192GCM`:case`A256GCM`:i=parseInt(e.slice(1,4),10);break;default:throw new t.JOSENotSupported(`Content Encryption Algorithm ${e} is not supported either by JOSE or your javascript runtime`)}if(r instanceof Uint8Array){let e=r.byteLength<<3;if(e!==i)throw new t.JWEInvalid(`Invalid Content Encryption Key length. Expected ${i} bits, got ${e} bits`);return}if((0,n.default)(r)&&r.type===`secret`){let e=r.symmetricKeySize<<3;if(e!==i)throw new t.JWEInvalid(`Invalid Content Encryption Key length. Expected ${i} bits, got ${e} bits`);return}throw TypeError(`Invalid Content Encryption Key type`)}})),ji=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=t(`node:crypto`).timingSafeEqual})),Mi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;let n=t(`node:crypto`),r=V();function i(e,t,i,a,o,s){let c=(0,r.concat)(e,t,i,(0,r.uint64be)(e.length<<3)),l=(0,n.createHmac)(`sha${a}`,o);return l.update(c),l.digest().slice(0,s>>3)}})),G=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isCryptoKey=void 0;let n=t(`node:crypto`),r=t(`node:util`);e.default=n.webcrypto,e.isCryptoKey=e=>r.types.isCryptoKey(e)})),Ni=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.checkSigCryptoKey=o,e.checkEncCryptoKey=s;function t(e,t=`algorithm.name`){return TypeError(`CryptoKey does not support this operation, its ${t} must be ${e}`)}function n(e,t){return e.name===t}function r(e){return parseInt(e.name.slice(4),10)}function i(e){switch(e){case`ES256`:return`P-256`;case`ES384`:return`P-384`;case`ES512`:return`P-521`;default:throw Error(`unreachable`)}}function a(e,t){if(t.length&&!t.some(t=>e.usages.includes(t))){let e=`CryptoKey does not support this operation, its usages must include `;if(t.length>2){let n=t.pop();e+=`one of ${t.join(`, `)}, or ${n}.`}else t.length===2?e+=`one of ${t[0]} or ${t[1]}.`:e+=`${t[0]}.`;throw TypeError(e)}}function o(e,o,...s){switch(o){case`HS256`:case`HS384`:case`HS512`:{if(!n(e.algorithm,`HMAC`))throw t(`HMAC`);let i=parseInt(o.slice(2),10);if(r(e.algorithm.hash)!==i)throw t(`SHA-${i}`,`algorithm.hash`);break}case`RS256`:case`RS384`:case`RS512`:{if(!n(e.algorithm,`RSASSA-PKCS1-v1_5`))throw t(`RSASSA-PKCS1-v1_5`);let i=parseInt(o.slice(2),10);if(r(e.algorithm.hash)!==i)throw t(`SHA-${i}`,`algorithm.hash`);break}case`PS256`:case`PS384`:case`PS512`:{if(!n(e.algorithm,`RSA-PSS`))throw t(`RSA-PSS`);let i=parseInt(o.slice(2),10);if(r(e.algorithm.hash)!==i)throw t(`SHA-${i}`,`algorithm.hash`);break}case`EdDSA`:if(e.algorithm.name!==`Ed25519`&&e.algorithm.name!==`Ed448`)throw t(`Ed25519 or Ed448`);break;case`ES256`:case`ES384`:case`ES512`:{if(!n(e.algorithm,`ECDSA`))throw t(`ECDSA`);let r=i(o);if(e.algorithm.namedCurve!==r)throw t(r,`algorithm.namedCurve`);break}default:throw TypeError(`CryptoKey does not support this operation`)}a(e,s)}function s(e,i,...o){switch(i){case`A128GCM`:case`A192GCM`:case`A256GCM`:{if(!n(e.algorithm,`AES-GCM`))throw t(`AES-GCM`);let r=parseInt(i.slice(1,4),10);if(e.algorithm.length!==r)throw t(r,`algorithm.length`);break}case`A128KW`:case`A192KW`:case`A256KW`:{if(!n(e.algorithm,`AES-KW`))throw t(`AES-KW`);let r=parseInt(i.slice(1,4),10);if(e.algorithm.length!==r)throw t(r,`algorithm.length`);break}case`ECDH`:switch(e.algorithm.name){case`ECDH`:case`X25519`:case`X448`:break;default:throw t(`ECDH, X25519, or X448`)}break;case`PBES2-HS256+A128KW`:case`PBES2-HS384+A192KW`:case`PBES2-HS512+A256KW`:if(!n(e.algorithm,`PBKDF2`))throw t(`PBKDF2`);break;case`RSA-OAEP`:case`RSA-OAEP-256`:case`RSA-OAEP-384`:case`RSA-OAEP-512`:{if(!n(e.algorithm,`RSA-OAEP`))throw t(`RSA-OAEP`);let a=parseInt(i.slice(9),10)||1;if(r(e.algorithm.hash)!==a)throw t(`SHA-${a}`,`algorithm.hash`);break}default:throw TypeError(`CryptoKey does not support this operation`)}a(e,o)}})),K=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.withAlg=n;function t(e,t,...n){if(n=n.filter(Boolean),n.length>2){let t=n.pop();e+=`one of type ${n.join(`, `)}, or ${t}.`}else n.length===2?e+=`one of type ${n[0]} or ${n[1]}.`:e+=`of type ${n[0]}.`;return t==null?e+=` Received ${t}`:typeof t==`function`&&t.name?e+=` Received function ${t.name}`:typeof t==`object`&&t&&t.constructor?.name&&(e+=` Received an instance of ${t.constructor.name}`),e}e.default=(e,...n)=>t(`Key must be `,e,...n);function n(e,n,...r){return t(`Key for the ${e} algorithm must be `,n,...r)}})),Pi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=t(`node:crypto`),r;e.default=e=>(r||=new Set((0,n.getCiphers)()),r.has(e))})),q=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.types=void 0;let t=G(),n=W();e.default=e=>(0,n.default)(e)||(0,t.isCryptoKey)(e);let r=[`KeyObject`];e.types=r,(globalThis.CryptoKey||t.default?.CryptoKey)&&r.push(`CryptoKey`)})),Fi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=t(`node:crypto`),r=ki(),i=Ai(),a=V(),o=U(),s=ji(),c=Mi(),l=G(),u=Ni(),d=W(),f=K(),p=Pi(),m=q();function h(e,t,r,i,l,u){let f=parseInt(e.slice(1,4),10);(0,d.default)(t)&&(t=t.export());let m=t.subarray(f>>3),h=t.subarray(0,f>>3),g=parseInt(e.slice(-3),10),_=`aes-${f}-cbc`;if(!(0,p.default)(_))throw new o.JOSENotSupported(`alg ${e} is not supported by your javascript runtime`);let v=(0,c.default)(u,i,r,g,h,f),y;try{y=(0,s.default)(l,v)}catch{}if(!y)throw new o.JWEDecryptionFailed;let b;try{let e=(0,n.createDecipheriv)(_,m,i);b=(0,a.concat)(e.update(r),e.final())}catch{}if(!b)throw new o.JWEDecryptionFailed;return b}function g(e,t,r,i,a,s){let c=`aes-${parseInt(e.slice(1,4),10)}-gcm`;if(!(0,p.default)(c))throw new o.JOSENotSupported(`alg ${e} is not supported by your javascript runtime`);try{let e=(0,n.createDecipheriv)(c,t,i,{authTagLength:16});e.setAuthTag(a),s.byteLength&&e.setAAD(s,{plaintextLength:r.length});let o=e.update(r);return e.final(),o}catch{throw new o.JWEDecryptionFailed}}e.default=(e,t,a,s,c,p)=>{let _;if((0,l.isCryptoKey)(t))(0,u.checkEncCryptoKey)(t,e,`decrypt`),_=n.KeyObject.from(t);else if(t instanceof Uint8Array||(0,d.default)(t))_=t;else throw TypeError((0,f.default)(t,...m.types,`Uint8Array`));if(!s)throw new o.JWEInvalid(`JWE Initialization Vector missing`);if(!c)throw new o.JWEInvalid(`JWE Authentication Tag missing`);switch((0,i.default)(e,_),(0,r.default)(e,s),e){case`A128CBC-HS256`:case`A192CBC-HS384`:case`A256CBC-HS512`:return h(e,_,a,s,c,p);case`A128GCM`:case`A192GCM`:case`A256GCM`:return g(e,_,a,s,c,p);default:throw new o.JOSENotSupported(`Unsupported JWE Content Encryption Algorithm`)}}})),Ii=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=(...e)=>{let t=e.filter(Boolean);if(t.length===0||t.length===1)return!0;let n;for(let e of t){let t=Object.keys(e);if(!n||n.size===0){n=new Set(t);continue}for(let e of t){if(n.has(e))return!1;n.add(e)}}return!0}})),J=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;function t(e){return typeof e==`object`&&!!e}function n(e){if(!t(e)||Object.prototype.toString.call(e)!==`[object Object]`)return!1;if(Object.getPrototypeOf(e)===null)return!0;let n=e;for(;Object.getPrototypeOf(n)!==null;)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}})),Li=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.unwrap=e.wrap=void 0;let n=t(`node:buffer`),r=t(`node:crypto`),i=U(),a=V(),o=G(),s=Ni(),c=W(),l=K(),u=Pi(),d=q();function f(e,t){if(e.symmetricKeySize<<3!==parseInt(t.slice(1,4),10))throw TypeError(`Invalid key size for alg: ${t}`)}function p(e,t,n){if((0,c.default)(e))return e;if(e instanceof Uint8Array)return(0,r.createSecretKey)(e);if((0,o.isCryptoKey)(e))return(0,s.checkEncCryptoKey)(e,t,n),r.KeyObject.from(e);throw TypeError((0,l.default)(e,...d.types,`Uint8Array`))}e.wrap=(e,t,o)=>{let s=`aes${parseInt(e.slice(1,4),10)}-wrap`;if(!(0,u.default)(s))throw new i.JOSENotSupported(`alg ${e} is not supported either by JOSE or your javascript runtime`);let c=p(t,e,`wrapKey`);f(c,e);let l=(0,r.createCipheriv)(s,c,n.Buffer.alloc(8,166));return(0,a.concat)(l.update(o),l.final())},e.unwrap=(e,t,o)=>{let s=`aes${parseInt(e.slice(1,4),10)}-wrap`;if(!(0,u.default)(s))throw new i.JOSENotSupported(`alg ${e} is not supported either by JOSE or your javascript runtime`);let c=p(t,e,`unwrapKey`);f(c,e);let l=(0,r.createDecipheriv)(s,c,n.Buffer.alloc(8,166));return(0,a.concat)(l.update(o),l.final())}})),Ri=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isJWK=n,e.isPrivateJWK=r,e.isPublicJWK=i,e.isSecretJWK=a;let t=J();function n(e){return(0,t.default)(e)&&typeof e.kty==`string`}function r(e){return e.kty!==`oct`&&typeof e.d==`string`}function i(e){return e.kty!==`oct`&&e.d===void 0}function a(e){return n(e)&&e.kty===`oct`&&typeof e.k==`string`}})),zi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.weakMap=void 0;let n=t(`node:crypto`),r=U(),i=G(),a=W(),o=K(),s=q(),c=Ri();e.weakMap=new WeakMap;let l=e=>{switch(e){case`prime256v1`:return`P-256`;case`secp384r1`:return`P-384`;case`secp521r1`:return`P-521`;case`secp256k1`:return`secp256k1`;default:throw new r.JOSENotSupported(`Unsupported key curve for this operation`)}};e.default=(e,t)=>{let r;if((0,i.isCryptoKey)(e))r=n.KeyObject.from(e);else if((0,a.default)(e))r=e;else if((0,c.isJWK)(e))return e.crv;else throw TypeError((0,o.default)(e,...s.types));if(r.type===`secret`)throw TypeError(`only "private" or "public" type keys can be used for this operation`);switch(r.asymmetricKeyType){case`ed25519`:case`ed448`:return`Ed${r.asymmetricKeyType.slice(2)}`;case`x25519`:case`x448`:return`X${r.asymmetricKeyType.slice(1)}`;case`ec`:{let e=r.asymmetricKeyDetails.namedCurve;return t?e:l(e)}default:throw TypeError(`Invalid asymmetric key type for this operation`)}}})),Bi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ecdhAllowed=void 0,e.deriveKey=p,e.generateEpk=m;let n=t(`node:crypto`),r=t(`node:util`),i=zi(),a=V(),o=U(),s=G(),c=Ni(),l=W(),u=K(),d=q(),f=(0,r.promisify)(n.generateKeyPair);async function p(e,t,r,i,o=new Uint8Array,f=new Uint8Array){let p;if((0,s.isCryptoKey)(e))(0,c.checkEncCryptoKey)(e,`ECDH`),p=n.KeyObject.from(e);else if((0,l.default)(e))p=e;else throw TypeError((0,u.default)(e,...d.types));let m;if((0,s.isCryptoKey)(t))(0,c.checkEncCryptoKey)(t,`ECDH`,`deriveBits`),m=n.KeyObject.from(t);else if((0,l.default)(t))m=t;else throw TypeError((0,u.default)(t,...d.types));let h=(0,a.concat)((0,a.lengthAndInput)(a.encoder.encode(r)),(0,a.lengthAndInput)(o),(0,a.lengthAndInput)(f),(0,a.uint32be)(i)),g=(0,n.diffieHellman)({privateKey:m,publicKey:p});return(0,a.concatKdf)(g,i,h)}async function m(e){let t;if((0,s.isCryptoKey)(e))t=n.KeyObject.from(e);else if((0,l.default)(e))t=e;else throw TypeError((0,u.default)(e,...d.types));switch(t.asymmetricKeyType){case`x25519`:return f(`x25519`);case`x448`:return f(`x448`);case`ec`:{let e=(0,i.default)(t);return f(`ec`,{namedCurve:e})}default:throw new o.JOSENotSupported(`Invalid or unsupported EPK`)}}e.ecdhAllowed=e=>[`P-256`,`P-384`,`P-521`,`X25519`,`X448`].includes((0,i.default)(e))})),Vi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;let t=U();function n(e){if(!(e instanceof Uint8Array)||e.length<8)throw new t.JWEInvalid(`PBES2 Salt Input must be 8 or more octets`)}})),Hi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decrypt=e.encrypt=void 0;let n=t(`node:util`),r=t(`node:crypto`),i=Di(),a=V(),o=H(),s=Li(),c=Vi(),l=G(),u=Ni(),d=W(),f=K(),p=q(),m=(0,n.promisify)(r.pbkdf2);function h(e,t){if((0,d.default)(e))return e.export();if(e instanceof Uint8Array)return e;if((0,l.isCryptoKey)(e))return(0,u.checkEncCryptoKey)(e,t,`deriveBits`,`deriveKey`),r.KeyObject.from(e).export();throw TypeError((0,f.default)(e,...p.types,`Uint8Array`))}e.encrypt=async(e,t,n,r=2048,l=(0,i.default)(new Uint8Array(16)))=>{(0,c.default)(l);let u=(0,a.p2s)(e,l),d=parseInt(e.slice(13,16),10)>>3,f=h(t,e),p=await m(f,u,r,d,`sha${e.slice(8,11)}`);return{encryptedKey:await(0,s.wrap)(e.slice(-6),p,n),p2c:r,p2s:(0,o.encode)(l)}},e.decrypt=async(e,t,n,r,i)=>{(0,c.default)(i);let o=(0,a.p2s)(e,i),l=parseInt(e.slice(13,16),10)>>3,u=h(t,e),d=await m(u,o,r,l,`sha${e.slice(8,11)}`);return(0,s.unwrap)(e.slice(-6),d,n)}})),Ui=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=t(`node:crypto`);e.default=(e,t)=>{let r;try{r=e instanceof n.KeyObject?e.asymmetricKeyDetails?.modulusLength:Buffer.from(e.n,`base64url`).byteLength<<3}catch{}if(typeof r!=`number`||r<2048)throw TypeError(`${t} requires key modulusLength to be 2048 bits or larger`)}})),Wi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decrypt=e.encrypt=void 0;let n=t(`node:crypto`),r=t(`node:util`),i=Ui(),a=G(),o=Ni(),s=W(),c=K(),l=q(),u=(e,t)=>{if(e.asymmetricKeyType!==`rsa`)throw TypeError(`Invalid key for this operation, its asymmetricKeyType must be rsa`);(0,i.default)(e,t)},d=(0,r.deprecate)(()=>n.constants.RSA_PKCS1_PADDING,`The RSA1_5 "alg" (JWE Algorithm) is deprecated and will be removed in the next major revision.`),f=e=>{switch(e){case`RSA-OAEP`:case`RSA-OAEP-256`:case`RSA-OAEP-384`:case`RSA-OAEP-512`:return n.constants.RSA_PKCS1_OAEP_PADDING;case`RSA1_5`:return d();default:return}},p=e=>{switch(e){case`RSA-OAEP`:return`sha1`;case`RSA-OAEP-256`:return`sha256`;case`RSA-OAEP-384`:return`sha384`;case`RSA-OAEP-512`:return`sha512`;default:return}};function m(e,t,...r){if((0,s.default)(e))return e;if((0,a.isCryptoKey)(e))return(0,o.checkEncCryptoKey)(e,t,...r),n.KeyObject.from(e);throw TypeError((0,c.default)(e,...l.types))}e.encrypt=(e,t,r)=>{let i=f(e),a=p(e),o=m(t,e,`wrapKey`,`encrypt`);return u(o,e),(0,n.publicEncrypt)({key:o,oaepHash:a,padding:i},r)},e.decrypt=(e,t,r)=>{let i=f(e),a=p(e),o=m(t,e,`unwrapKey`,`decrypt`);return u(o,e),(0,n.privateDecrypt)({key:o,oaepHash:a,padding:i},r)}})),Gi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={}})),Ki=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.bitLength=r;let t=U(),n=Di();function r(e){switch(e){case`A128GCM`:return 128;case`A192GCM`:return 192;case`A256GCM`:case`A128CBC-HS256`:return 256;case`A192CBC-HS384`:return 384;case`A256CBC-HS512`:return 512;default:throw new t.JOSENotSupported(`Unsupported JWE Algorithm: ${e}`)}}e.default=e=>(0,n.default)(new Uint8Array(r(e)>>3))})),qi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.fromX509=e.fromSPKI=e.fromPKCS8=e.toPKCS8=e.toSPKI=void 0;let n=t(`node:crypto`),r=t(`node:buffer`),i=G(),a=W(),o=K(),s=q(),c=(e,t,r)=>{let c;if((0,i.isCryptoKey)(r)){if(!r.extractable)throw TypeError(`CryptoKey is not extractable`);c=n.KeyObject.from(r)}else if((0,a.default)(r))c=r;else throw TypeError((0,o.default)(r,...s.types));if(c.type!==e)throw TypeError(`key is not a ${e} key`);return c.export({format:`pem`,type:t})};e.toSPKI=e=>c(`public`,`spki`,e),e.toPKCS8=e=>c(`private`,`pkcs8`,e),e.fromPKCS8=e=>(0,n.createPrivateKey)({key:r.Buffer.from(e.replace(/(?:-----(?:BEGIN|END) PRIVATE KEY-----|\s)/g,``),`base64`),type:`pkcs8`,format:`der`}),e.fromSPKI=e=>(0,n.createPublicKey)({key:r.Buffer.from(e.replace(/(?:-----(?:BEGIN|END) PUBLIC KEY-----|\s)/g,``),`base64`),type:`spki`,format:`der`}),e.fromX509=e=>(0,n.createPublicKey)({key:e,type:`spki`,format:`pem`})})),Ji=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=t(`node:crypto`);e.default=e=>e.d?(0,n.createPrivateKey)({format:`jwk`,key:e}):(0,n.createPublicKey)({format:`jwk`,key:e})})),Yi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.importSPKI=o,e.importX509=s,e.importPKCS8=c,e.importJWK=l;let t=H(),n=qi(),r=Ji(),i=U(),a=J();async function o(e,t,r){if(typeof e!=`string`||e.indexOf(`-----BEGIN PUBLIC KEY-----`)!==0)throw TypeError(`"spki" must be SPKI formatted string`);return(0,n.fromSPKI)(e,t,r)}async function s(e,t,r){if(typeof e!=`string`||e.indexOf(`-----BEGIN CERTIFICATE-----`)!==0)throw TypeError(`"x509" must be X.509 formatted string`);return(0,n.fromX509)(e,t,r)}async function c(e,t,r){if(typeof e!=`string`||e.indexOf(`-----BEGIN PRIVATE KEY-----`)!==0)throw TypeError(`"pkcs8" must be PKCS#8 formatted string`);return(0,n.fromPKCS8)(e,t,r)}async function l(e,n){if(!(0,a.default)(e))throw TypeError(`JWK must be an object`);switch(n||=e.alg,e.kty){case`oct`:if(typeof e.k!=`string`||!e.k)throw TypeError(`missing "k" (Key Value) Parameter value`);return(0,t.decode)(e.k);case`RSA`:if(e.oth!==void 0)throw new i.JOSENotSupported(`RSA JWK "oth" (Other Primes Info) Parameter value is not supported`);case`EC`:case`OKP`:return(0,r.default)({...e,alg:n});default:throw new i.JOSENotSupported(`Unsupported "kty" (Key Type) Parameter value`)}}})),Xi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.checkKeyTypeWithJwk=void 0;let t=K(),n=q(),r=Ri(),i=e=>e?.[Symbol.toStringTag],a=(e,t,n)=>{if(t.use!==void 0&&t.use!==`sig`)throw TypeError(`Invalid key for this operation, when present its use must be sig`);if(t.key_ops!==void 0&&t.key_ops.includes?.(n)!==!0)throw TypeError(`Invalid key for this operation, when present its key_ops must include ${n}`);if(t.alg!==void 0&&t.alg!==e)throw TypeError(`Invalid key for this operation, when present its alg must be ${e}`);return!0},o=(e,o,s,c)=>{if(!(o instanceof Uint8Array)){if(c&&r.isJWK(o)){if(r.isSecretJWK(o)&&a(e,o,s))return;throw TypeError(`JSON Web Key for symmetric algorithms must have JWK "kty" (Key Type) equal to "oct" and the JWK "k" (Key Value) present`)}if(!(0,n.default)(o))throw TypeError((0,t.withAlg)(e,o,...n.types,`Uint8Array`,c?`JSON Web Key`:null));if(o.type!==`secret`)throw TypeError(`${i(o)} instances for symmetric algorithms must be of type "secret"`)}},s=(e,o,s,c)=>{if(c&&r.isJWK(o))switch(s){case`sign`:if(r.isPrivateJWK(o)&&a(e,o,s))return;throw TypeError(`JSON Web Key for this operation be a private JWK`);case`verify`:if(r.isPublicJWK(o)&&a(e,o,s))return;throw TypeError(`JSON Web Key for this operation be a public JWK`)}if(!(0,n.default)(o))throw TypeError((0,t.withAlg)(e,o,...n.types,c?`JSON Web Key`:null));if(o.type===`secret`)throw TypeError(`${i(o)} instances for asymmetric algorithms must not be of type "secret"`);if(s===`sign`&&o.type===`public`)throw TypeError(`${i(o)} instances for asymmetric algorithm signing must be of type "private"`);if(s===`decrypt`&&o.type===`public`)throw TypeError(`${i(o)} instances for asymmetric algorithm decryption must be of type "private"`);if(o.algorithm&&s===`verify`&&o.type===`private`)throw TypeError(`${i(o)} instances for asymmetric algorithm verifying must be of type "public"`);if(o.algorithm&&s===`encrypt`&&o.type===`private`)throw TypeError(`${i(o)} instances for asymmetric algorithm encryption must be of type "public"`)};function c(e,t,n,r){t.startsWith(`HS`)||t===`dir`||t.startsWith(`PBES2`)||/^A\d{3}(?:GCM)?KW$/.test(t)?o(t,n,r,e):s(t,n,r,e)}e.default=c.bind(void 0,!1),e.checkKeyTypeWithJwk=c.bind(void 0,!0)})),Zi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=t(`node:crypto`),r=ki(),i=Ai(),a=V(),o=Mi(),s=G(),c=Ni(),l=W(),u=K(),d=Oi(),f=U(),p=Pi(),m=q();function h(e,t,r,i,s){let c=parseInt(e.slice(1,4),10);(0,l.default)(r)&&(r=r.export());let u=r.subarray(c>>3),d=r.subarray(0,c>>3),m=`aes-${c}-cbc`;if(!(0,p.default)(m))throw new f.JOSENotSupported(`alg ${e} is not supported by your javascript runtime`);let h=(0,n.createCipheriv)(m,u,i),g=(0,a.concat)(h.update(t),h.final()),_=parseInt(e.slice(-3),10);return{ciphertext:g,tag:(0,o.default)(s,i,g,_,d,c),iv:i}}function g(e,t,r,i,a){let o=`aes-${parseInt(e.slice(1,4),10)}-gcm`;if(!(0,p.default)(o))throw new f.JOSENotSupported(`alg ${e} is not supported by your javascript runtime`);let s=(0,n.createCipheriv)(o,r,i,{authTagLength:16});a.byteLength&&s.setAAD(a,{plaintextLength:t.length});let c=s.update(t);return s.final(),{ciphertext:c,tag:s.getAuthTag(),iv:i}}e.default=(e,t,a,o,p)=>{let _;if((0,s.isCryptoKey)(a))(0,c.checkEncCryptoKey)(a,e,`encrypt`),_=n.KeyObject.from(a);else if(a instanceof Uint8Array||(0,l.default)(a))_=a;else throw TypeError((0,u.default)(a,...m.types,`Uint8Array`));switch((0,i.default)(e,_),o?(0,r.default)(e,o):o=(0,d.default)(e),e){case`A128CBC-HS256`:case`A192CBC-HS384`:case`A256CBC-HS512`:return h(e,t,_,o,p);case`A128GCM`:case`A192GCM`:case`A256GCM`:return g(e,t,_,o,p);default:throw new f.JOSENotSupported(`Unsupported JWE Content Encryption Algorithm`)}}})),Qi=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.wrap=i,e.unwrap=a;let t=Zi(),n=Fi(),r=H();async function i(e,n,i,a){let o=e.slice(0,7),s=await(0,t.default)(o,i,n,a,new Uint8Array);return{encryptedKey:s.ciphertext,iv:(0,r.encode)(s.iv),tag:(0,r.encode)(s.tag)}}async function a(e,t,r,i,a){let o=e.slice(0,7);return(0,n.default)(o,t,r,i,a,new Uint8Array)}})),$i=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Li(),n=Bi(),r=Hi(),i=Wi(),a=H(),o=Gi(),s=U(),c=Ki(),l=Yi(),u=Xi(),d=J(),f=Qi();async function p(e,p,m,h,g){switch((0,u.default)(e,p,`decrypt`),p=await o.default.normalizePrivateKey?.(p,e)||p,e){case`dir`:if(m!==void 0)throw new s.JWEInvalid(`Encountered unexpected JWE Encrypted Key`);return p;case`ECDH-ES`:if(m!==void 0)throw new s.JWEInvalid(`Encountered unexpected JWE Encrypted Key`);case`ECDH-ES+A128KW`:case`ECDH-ES+A192KW`:case`ECDH-ES+A256KW`:{if(!(0,d.default)(h.epk))throw new s.JWEInvalid(`JOSE Header "epk" (Ephemeral Public Key) missing or invalid`);if(!n.ecdhAllowed(p))throw new s.JOSENotSupported(`ECDH with the provided key is not allowed or not supported by your javascript runtime`);let r=await(0,l.importJWK)(h.epk,e),i,o;if(h.apu!==void 0){if(typeof h.apu!=`string`)throw new s.JWEInvalid(`JOSE Header "apu" (Agreement PartyUInfo) invalid`);try{i=(0,a.decode)(h.apu)}catch{throw new s.JWEInvalid(`Failed to base64url decode the apu`)}}if(h.apv!==void 0){if(typeof h.apv!=`string`)throw new s.JWEInvalid(`JOSE Header "apv" (Agreement PartyVInfo) invalid`);try{o=(0,a.decode)(h.apv)}catch{throw new s.JWEInvalid(`Failed to base64url decode the apv`)}}let u=await n.deriveKey(r,p,e===`ECDH-ES`?h.enc:e,e===`ECDH-ES`?(0,c.bitLength)(h.enc):parseInt(e.slice(-5,-2),10),i,o);if(e===`ECDH-ES`)return u;if(m===void 0)throw new s.JWEInvalid(`JWE Encrypted Key missing`);return(0,t.unwrap)(e.slice(-6),u,m)}case`RSA1_5`:case`RSA-OAEP`:case`RSA-OAEP-256`:case`RSA-OAEP-384`:case`RSA-OAEP-512`:if(m===void 0)throw new s.JWEInvalid(`JWE Encrypted Key missing`);return(0,i.decrypt)(e,p,m);case`PBES2-HS256+A128KW`:case`PBES2-HS384+A192KW`:case`PBES2-HS512+A256KW`:{if(m===void 0)throw new s.JWEInvalid(`JWE Encrypted Key missing`);if(typeof h.p2c!=`number`)throw new s.JWEInvalid(`JOSE Header "p2c" (PBES2 Count) missing or invalid`);let t=g?.maxPBES2Count||1e4;if(h.p2c>t)throw new s.JWEInvalid(`JOSE Header "p2c" (PBES2 Count) out is of acceptable bounds`);if(typeof h.p2s!=`string`)throw new s.JWEInvalid(`JOSE Header "p2s" (PBES2 Salt) missing or invalid`);let n;try{n=(0,a.decode)(h.p2s)}catch{throw new s.JWEInvalid(`Failed to base64url decode the p2s`)}return(0,r.decrypt)(e,p,m,h.p2c,n)}case`A128KW`:case`A192KW`:case`A256KW`:if(m===void 0)throw new s.JWEInvalid(`JWE Encrypted Key missing`);return(0,t.unwrap)(e,p,m);case`A128GCMKW`:case`A192GCMKW`:case`A256GCMKW`:{if(m===void 0)throw new s.JWEInvalid(`JWE Encrypted Key missing`);if(typeof h.iv!=`string`)throw new s.JWEInvalid(`JOSE Header "iv" (Initialization Vector) missing or invalid`);if(typeof h.tag!=`string`)throw new s.JWEInvalid(`JOSE Header "tag" (Authentication Tag) missing or invalid`);let t;try{t=(0,a.decode)(h.iv)}catch{throw new s.JWEInvalid(`Failed to base64url decode the iv`)}let n;try{n=(0,a.decode)(h.tag)}catch{throw new s.JWEInvalid(`Failed to base64url decode the tag`)}return(0,f.unwrap)(e,p,m,t,n)}default:throw new s.JOSENotSupported(`Invalid or unsupported "alg" (JWE Algorithm) header value`)}}e.default=p})),ea=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=U();function n(e,n,r,i,a){if(a.crit!==void 0&&i?.crit===void 0)throw new e(`"crit" (Critical) Header Parameter MUST be integrity protected`);if(!i||i.crit===void 0)return new Set;if(!Array.isArray(i.crit)||i.crit.length===0||i.crit.some(e=>typeof e!=`string`||e.length===0))throw new e(`"crit" (Critical) Header Parameter MUST be an array of non-empty strings when present`);let o;o=r===void 0?n:new Map([...Object.entries(r),...n.entries()]);for(let n of i.crit){if(!o.has(n))throw new t.JOSENotSupported(`Extension Header Parameter "${n}" is not recognized`);if(a[n]===void 0)throw new e(`Extension Header Parameter "${n}" is missing`);if(o.get(n)&&i[n]===void 0)throw new e(`Extension Header Parameter "${n}" MUST be integrity protected`)}return new Set(i.crit)}e.default=n})),ta=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=(e,t)=>{if(t!==void 0&&(!Array.isArray(t)||t.some(e=>typeof e!=`string`)))throw TypeError(`"${e}" option must be an array of strings`);if(t)return new Set(t)}})),na=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.flattenedDecrypt=d;let t=H(),n=Fi(),r=U(),i=Ii(),a=J(),o=$i(),s=V(),c=Ki(),l=ea(),u=ta();async function d(e,d,f){if(!(0,a.default)(e))throw new r.JWEInvalid(`Flattened JWE must be an object`);if(e.protected===void 0&&e.header===void 0&&e.unprotected===void 0)throw new r.JWEInvalid(`JOSE Header missing`);if(e.iv!==void 0&&typeof e.iv!=`string`)throw new r.JWEInvalid(`JWE Initialization Vector incorrect type`);if(typeof e.ciphertext!=`string`)throw new r.JWEInvalid(`JWE Ciphertext missing or incorrect type`);if(e.tag!==void 0&&typeof e.tag!=`string`)throw new r.JWEInvalid(`JWE Authentication Tag incorrect type`);if(e.protected!==void 0&&typeof e.protected!=`string`)throw new r.JWEInvalid(`JWE Protected Header incorrect type`);if(e.encrypted_key!==void 0&&typeof e.encrypted_key!=`string`)throw new r.JWEInvalid(`JWE Encrypted Key incorrect type`);if(e.aad!==void 0&&typeof e.aad!=`string`)throw new r.JWEInvalid(`JWE AAD incorrect type`);if(e.header!==void 0&&!(0,a.default)(e.header))throw new r.JWEInvalid(`JWE Shared Unprotected Header incorrect type`);if(e.unprotected!==void 0&&!(0,a.default)(e.unprotected))throw new r.JWEInvalid(`JWE Per-Recipient Unprotected Header incorrect type`);let p;if(e.protected)try{let n=(0,t.decode)(e.protected);p=JSON.parse(s.decoder.decode(n))}catch{throw new r.JWEInvalid(`JWE Protected Header is invalid`)}if(!(0,i.default)(p,e.header,e.unprotected))throw new r.JWEInvalid(`JWE Protected, JWE Unprotected Header, and JWE Per-Recipient Unprotected Header Parameter names must be disjoint`);let m={...p,...e.header,...e.unprotected};if((0,l.default)(r.JWEInvalid,new Map,f?.crit,p,m),m.zip!==void 0)throw new r.JOSENotSupported(`JWE "zip" (Compression Algorithm) Header Parameter is not supported.`);let{alg:h,enc:g}=m;if(typeof h!=`string`||!h)throw new r.JWEInvalid(`missing JWE Algorithm (alg) in JWE Header`);if(typeof g!=`string`||!g)throw new r.JWEInvalid(`missing JWE Encryption Algorithm (enc) in JWE Header`);let _=f&&(0,u.default)(`keyManagementAlgorithms`,f.keyManagementAlgorithms),v=f&&(0,u.default)(`contentEncryptionAlgorithms`,f.contentEncryptionAlgorithms);if(_&&!_.has(h)||!_&&h.startsWith(`PBES2`))throw new r.JOSEAlgNotAllowed(`"alg" (Algorithm) Header Parameter value not allowed`);if(v&&!v.has(g))throw new r.JOSEAlgNotAllowed(`"enc" (Encryption Algorithm) Header Parameter value not allowed`);let y;if(e.encrypted_key!==void 0)try{y=(0,t.decode)(e.encrypted_key)}catch{throw new r.JWEInvalid(`Failed to base64url decode the encrypted_key`)}let b=!1;typeof d==`function`&&(d=await d(p,e),b=!0);let x;try{x=await(0,o.default)(h,d,y,m,f)}catch(e){if(e instanceof TypeError||e instanceof r.JWEInvalid||e instanceof r.JOSENotSupported)throw e;x=(0,c.default)(g)}let S,C;if(e.iv!==void 0)try{S=(0,t.decode)(e.iv)}catch{throw new r.JWEInvalid(`Failed to base64url decode the iv`)}if(e.tag!==void 0)try{C=(0,t.decode)(e.tag)}catch{throw new r.JWEInvalid(`Failed to base64url decode the tag`)}let w=s.encoder.encode(e.protected??``),ee;ee=e.aad===void 0?w:(0,s.concat)(w,s.encoder.encode(`.`),s.encoder.encode(e.aad));let te;try{te=(0,t.decode)(e.ciphertext)}catch{throw new r.JWEInvalid(`Failed to base64url decode the ciphertext`)}let T={plaintext:await(0,n.default)(g,x,te,S,C,ee)};if(e.protected!==void 0&&(T.protectedHeader=p),e.aad!==void 0)try{T.additionalAuthenticatedData=(0,t.decode)(e.aad)}catch{throw new r.JWEInvalid(`Failed to base64url decode the aad`)}return e.unprotected!==void 0&&(T.sharedUnprotectedHeader=e.unprotected),e.header!==void 0&&(T.unprotectedHeader=e.header),b?{...T,key:d}:T}})),ra=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.compactDecrypt=i;let t=na(),n=U(),r=V();async function i(e,i,a){if(e instanceof Uint8Array&&(e=r.decoder.decode(e)),typeof e!=`string`)throw new n.JWEInvalid(`Compact JWE must be a string or Uint8Array`);let{0:o,1:s,2:c,3:l,4:u,length:d}=e.split(`.`);if(d!==5)throw new n.JWEInvalid(`Invalid Compact JWE`);let f=await(0,t.flattenedDecrypt)({ciphertext:l,iv:c||void 0,protected:o,tag:u||void 0,encrypted_key:s||void 0},i,a),p={plaintext:f.plaintext,protectedHeader:f.protectedHeader};return typeof i==`function`?{...p,key:f.key}:p}})),ia=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.generalDecrypt=i;let t=na(),n=U(),r=J();async function i(e,i,a){if(!(0,r.default)(e))throw new n.JWEInvalid(`General JWE must be an object`);if(!Array.isArray(e.recipients)||!e.recipients.every(r.default))throw new n.JWEInvalid(`JWE Recipients missing or incorrect type`);if(!e.recipients.length)throw new n.JWEInvalid(`JWE Recipients has no members`);for(let n of e.recipients)try{return await(0,t.flattenedDecrypt)({aad:e.aad,ciphertext:e.ciphertext,encrypted_key:n.encrypted_key,header:n.header,iv:e.iv,protected:e.protected,tag:e.tag,unprotected:e.unprotected},i,a)}catch{}throw new n.JWEDecryptionFailed}})),aa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.unprotected=void 0,e.unprotected=Symbol()})),oa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=t(`node:crypto`),r=H(),i=U(),a=G(),o=W(),s=K(),c=q();e.default=e=>{let t;if((0,a.isCryptoKey)(e)){if(!e.extractable)throw TypeError(`CryptoKey is not extractable`);t=n.KeyObject.from(e)}else if((0,o.default)(e))t=e;else if(e instanceof Uint8Array)return{kty:`oct`,k:(0,r.encode)(e)};else throw TypeError((0,s.default)(e,...c.types,`Uint8Array`));if(t.type!==`secret`&&![`rsa`,`ec`,`ed25519`,`x25519`,`ed448`,`x448`].includes(t.asymmetricKeyType))throw new i.JOSENotSupported(`Unsupported key asymmetricKeyType`);return t.export({format:`jwk`})}})),sa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.exportSPKI=i,e.exportPKCS8=a,e.exportJWK=o;let t=qi(),n=qi(),r=oa();async function i(e){return(0,t.toSPKI)(e)}async function a(e){return(0,n.toPKCS8)(e)}async function o(e){return(0,r.default)(e)}})),ca=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=Li(),n=Bi(),r=Hi(),i=Wi(),a=H(),o=Gi(),s=Ki(),c=U(),l=sa(),u=Xi(),d=Qi();async function f(e,f,p,m,h={}){let g,_,v;switch((0,u.default)(e,p,`encrypt`),p=await o.default.normalizePublicKey?.(p,e)||p,e){case`dir`:v=p;break;case`ECDH-ES`:case`ECDH-ES+A128KW`:case`ECDH-ES+A192KW`:case`ECDH-ES+A256KW`:{if(!n.ecdhAllowed(p))throw new c.JOSENotSupported(`ECDH with the provided key is not allowed or not supported by your javascript runtime`);let{apu:r,apv:i}=h,{epk:o}=h;o||=(await n.generateEpk(p)).privateKey;let{x:u,y:d,crv:y,kty:b}=await(0,l.exportJWK)(o),x=await n.deriveKey(p,o,e===`ECDH-ES`?f:e,e===`ECDH-ES`?(0,s.bitLength)(f):parseInt(e.slice(-5,-2),10),r,i);if(_={epk:{x:u,crv:y,kty:b}},b===`EC`&&(_.epk.y=d),r&&(_.apu=(0,a.encode)(r)),i&&(_.apv=(0,a.encode)(i)),e===`ECDH-ES`){v=x;break}v=m||(0,s.default)(f);let S=e.slice(-6);g=await(0,t.wrap)(S,x,v);break}case`RSA1_5`:case`RSA-OAEP`:case`RSA-OAEP-256`:case`RSA-OAEP-384`:case`RSA-OAEP-512`:v=m||(0,s.default)(f),g=await(0,i.encrypt)(e,p,v);break;case`PBES2-HS256+A128KW`:case`PBES2-HS384+A192KW`:case`PBES2-HS512+A256KW`:{v=m||(0,s.default)(f);let{p2c:t,p2s:n}=h;({encryptedKey:g,..._}=await(0,r.encrypt)(e,p,v,t,n));break}case`A128KW`:case`A192KW`:case`A256KW`:v=m||(0,s.default)(f),g=await(0,t.wrap)(e,p,v);break;case`A128GCMKW`:case`A192GCMKW`:case`A256GCMKW`:{v=m||(0,s.default)(f);let{iv:t}=h;({encryptedKey:g,..._}=await(0,d.wrap)(e,p,v,t));break}default:throw new c.JOSENotSupported(`Invalid or unsupported "alg" (JWE Algorithm) header value`)}return{cek:v,encryptedKey:g,parameters:_}}e.default=f})),la=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.FlattenedEncrypt=void 0;let t=H(),n=aa(),r=Zi(),i=ca(),a=U(),o=Ii(),s=V(),c=ea();e.FlattenedEncrypt=class{_plaintext;_protectedHeader;_sharedUnprotectedHeader;_unprotectedHeader;_aad;_cek;_iv;_keyManagementParameters;constructor(e){if(!(e instanceof Uint8Array))throw TypeError(`plaintext must be an instance of Uint8Array`);this._plaintext=e}setKeyManagementParameters(e){if(this._keyManagementParameters)throw TypeError(`setKeyManagementParameters can only be called once`);return this._keyManagementParameters=e,this}setProtectedHeader(e){if(this._protectedHeader)throw TypeError(`setProtectedHeader can only be called once`);return this._protectedHeader=e,this}setSharedUnprotectedHeader(e){if(this._sharedUnprotectedHeader)throw TypeError(`setSharedUnprotectedHeader can only be called once`);return this._sharedUnprotectedHeader=e,this}setUnprotectedHeader(e){if(this._unprotectedHeader)throw TypeError(`setUnprotectedHeader can only be called once`);return this._unprotectedHeader=e,this}setAdditionalAuthenticatedData(e){return this._aad=e,this}setContentEncryptionKey(e){if(this._cek)throw TypeError(`setContentEncryptionKey can only be called once`);return this._cek=e,this}setInitializationVector(e){if(this._iv)throw TypeError(`setInitializationVector can only be called once`);return this._iv=e,this}async encrypt(e,l){if(!this._protectedHeader&&!this._unprotectedHeader&&!this._sharedUnprotectedHeader)throw new a.JWEInvalid(`either setProtectedHeader, setUnprotectedHeader, or sharedUnprotectedHeader must be called before #encrypt()`);if(!(0,o.default)(this._protectedHeader,this._unprotectedHeader,this._sharedUnprotectedHeader))throw new a.JWEInvalid(`JWE Protected, JWE Shared Unprotected and JWE Per-Recipient Header Parameter names must be disjoint`);let u={...this._protectedHeader,...this._unprotectedHeader,...this._sharedUnprotectedHeader};if((0,c.default)(a.JWEInvalid,new Map,l?.crit,this._protectedHeader,u),u.zip!==void 0)throw new a.JOSENotSupported(`JWE "zip" (Compression Algorithm) Header Parameter is not supported.`);let{alg:d,enc:f}=u;if(typeof d!=`string`||!d)throw new a.JWEInvalid(`JWE "alg" (Algorithm) Header Parameter missing or invalid`);if(typeof f!=`string`||!f)throw new a.JWEInvalid(`JWE "enc" (Encryption Algorithm) Header Parameter missing or invalid`);let p;if(this._cek&&(d===`dir`||d===`ECDH-ES`))throw TypeError(`setContentEncryptionKey cannot be called with JWE "alg" (Algorithm) Header ${d}`);let m;{let t;({cek:m,encryptedKey:p,parameters:t}=await(0,i.default)(d,f,e,this._cek,this._keyManagementParameters)),t&&(l&&n.unprotected in l?this._unprotectedHeader?this._unprotectedHeader={...this._unprotectedHeader,...t}:this.setUnprotectedHeader(t):this._protectedHeader?this._protectedHeader={...this._protectedHeader,...t}:this.setProtectedHeader(t))}let h,g,_;g=this._protectedHeader?s.encoder.encode((0,t.encode)(JSON.stringify(this._protectedHeader))):s.encoder.encode(``),this._aad?(_=(0,t.encode)(this._aad),h=(0,s.concat)(g,s.encoder.encode(`.`),s.encoder.encode(_))):h=g;let{ciphertext:v,tag:y,iv:b}=await(0,r.default)(f,this._plaintext,m,this._iv,h),x={ciphertext:(0,t.encode)(v)};return b&&(x.iv=(0,t.encode)(b)),y&&(x.tag=(0,t.encode)(y)),p&&(x.encrypted_key=(0,t.encode)(p)),_&&(x.aad=_),this._protectedHeader&&(x.protected=s.decoder.decode(g)),this._sharedUnprotectedHeader&&(x.unprotected=this._sharedUnprotectedHeader),this._unprotectedHeader&&(x.header=this._unprotectedHeader),x}}})),ua=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.GeneralEncrypt=void 0;let t=la(),n=aa(),r=U(),i=Ki(),a=Ii(),o=ca(),s=H(),c=ea();var l=class{parent;unprotectedHeader;key;options;constructor(e,t,n){this.parent=e,this.key=t,this.options=n}setUnprotectedHeader(e){if(this.unprotectedHeader)throw TypeError(`setUnprotectedHeader can only be called once`);return this.unprotectedHeader=e,this}addRecipient(...e){return this.parent.addRecipient(...e)}encrypt(...e){return this.parent.encrypt(...e)}done(){return this.parent}};e.GeneralEncrypt=class{_plaintext;_recipients=[];_protectedHeader;_unprotectedHeader;_aad;constructor(e){this._plaintext=e}addRecipient(e,t){let n=new l(this,e,{crit:t?.crit});return this._recipients.push(n),n}setProtectedHeader(e){if(this._protectedHeader)throw TypeError(`setProtectedHeader can only be called once`);return this._protectedHeader=e,this}setSharedUnprotectedHeader(e){if(this._unprotectedHeader)throw TypeError(`setSharedUnprotectedHeader can only be called once`);return this._unprotectedHeader=e,this}setAdditionalAuthenticatedData(e){return this._aad=e,this}async encrypt(){if(!this._recipients.length)throw new r.JWEInvalid(`at least one recipient must be added`);if(this._recipients.length===1){let[e]=this._recipients,n=await new t.FlattenedEncrypt(this._plaintext).setAdditionalAuthenticatedData(this._aad).setProtectedHeader(this._protectedHeader).setSharedUnprotectedHeader(this._unprotectedHeader).setUnprotectedHeader(e.unprotectedHeader).encrypt(e.key,{...e.options}),r={ciphertext:n.ciphertext,iv:n.iv,recipients:[{}],tag:n.tag};return n.aad&&(r.aad=n.aad),n.protected&&(r.protected=n.protected),n.unprotected&&(r.unprotected=n.unprotected),n.encrypted_key&&(r.recipients[0].encrypted_key=n.encrypted_key),n.header&&(r.recipients[0].header=n.header),r}let e;for(let t=0;t<this._recipients.length;t++){let n=this._recipients[t];if(!(0,a.default)(this._protectedHeader,this._unprotectedHeader,n.unprotectedHeader))throw new r.JWEInvalid(`JWE Protected, JWE Shared Unprotected and JWE Per-Recipient Header Parameter names must be disjoint`);let i={...this._protectedHeader,...this._unprotectedHeader,...n.unprotectedHeader},{alg:o}=i;if(typeof o!=`string`||!o)throw new r.JWEInvalid(`JWE "alg" (Algorithm) Header Parameter missing or invalid`);if(o===`dir`||o===`ECDH-ES`)throw new r.JWEInvalid(`"dir" and "ECDH-ES" alg may only be used with a single recipient`);if(typeof i.enc!=`string`||!i.enc)throw new r.JWEInvalid(`JWE "enc" (Encryption Algorithm) Header Parameter missing or invalid`);if(!e)e=i.enc;else if(e!==i.enc)throw new r.JWEInvalid(`JWE "enc" (Encryption Algorithm) Header Parameter must be the same for all recipients`);if((0,c.default)(r.JWEInvalid,new Map,n.options.crit,this._protectedHeader,i),i.zip!==void 0)throw new r.JOSENotSupported(`JWE "zip" (Compression Algorithm) Header Parameter is not supported.`)}let l=(0,i.default)(e),u={ciphertext:``,iv:``,recipients:[],tag:``};for(let r=0;r<this._recipients.length;r++){let i=this._recipients[r],a={};u.recipients.push(a);let c={...this._protectedHeader,...this._unprotectedHeader,...i.unprotectedHeader}.alg.startsWith(`PBES2`)?2048+r:void 0;if(r===0){let e=await new t.FlattenedEncrypt(this._plaintext).setAdditionalAuthenticatedData(this._aad).setContentEncryptionKey(l).setProtectedHeader(this._protectedHeader).setSharedUnprotectedHeader(this._unprotectedHeader).setUnprotectedHeader(i.unprotectedHeader).setKeyManagementParameters({p2c:c}).encrypt(i.key,{...i.options,[n.unprotected]:!0});u.ciphertext=e.ciphertext,u.iv=e.iv,u.tag=e.tag,e.aad&&(u.aad=e.aad),e.protected&&(u.protected=e.protected),e.unprotected&&(u.unprotected=e.unprotected),a.encrypted_key=e.encrypted_key,e.header&&(a.header=e.header);continue}let{encryptedKey:d,parameters:f}=await(0,o.default)(i.unprotectedHeader?.alg||this._protectedHeader?.alg||this._unprotectedHeader?.alg,e,i.key,l,{p2c:c});a.encrypted_key=(0,s.encode)(d),(i.unprotectedHeader||f)&&(a.header={...i.unprotectedHeader,...f})}return u}}})),da=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;let t=U();function n(e){switch(e){case`PS256`:case`RS256`:case`ES256`:case`ES256K`:return`sha256`;case`PS384`:case`RS384`:case`ES384`:return`sha384`;case`PS512`:case`RS512`:case`ES512`:return`sha512`;case`EdDSA`:return;default:throw new t.JOSENotSupported(`alg ${e} is not supported either by JOSE or your javascript runtime`)}}})),fa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;let n=t(`node:crypto`),r=zi(),i=U(),a=Ui(),o=new Map([[`ES256`,`P-256`],[`ES256K`,`secp256k1`],[`ES384`,`P-384`],[`ES512`,`P-521`]]);function s(e,t){let s,c,l;if(t instanceof n.KeyObject)s=t.asymmetricKeyType,c=t.asymmetricKeyDetails;else switch(l=!0,t.kty){case`RSA`:s=`rsa`;break;case`EC`:s=`ec`;break;case`OKP`:if(t.crv===`Ed25519`){s=`ed25519`;break}if(t.crv===`Ed448`){s=`ed448`;break}throw TypeError(`Invalid key for this operation, its crv must be Ed25519 or Ed448`);default:throw TypeError(`Invalid key for this operation, its kty must be RSA, OKP, or EC`)}let u;switch(e){case`EdDSA`:if(![`ed25519`,`ed448`].includes(s))throw TypeError(`Invalid key for this operation, its asymmetricKeyType must be ed25519 or ed448`);break;case`RS256`:case`RS384`:case`RS512`:if(s!==`rsa`)throw TypeError(`Invalid key for this operation, its asymmetricKeyType must be rsa`);(0,a.default)(t,e);break;case`PS256`:case`PS384`:case`PS512`:if(s===`rsa-pss`){let{hashAlgorithm:t,mgf1HashAlgorithm:n,saltLength:r}=c,i=parseInt(e.slice(-3),10);if(t!==void 0&&(t!==`sha${i}`||n!==t))throw TypeError(`Invalid key for this operation, its RSA-PSS parameters do not meet the requirements of "alg" ${e}`);if(r!==void 0&&r>i>>3)throw TypeError(`Invalid key for this operation, its RSA-PSS parameter saltLength does not meet the requirements of "alg" ${e}`)}else if(s!==`rsa`)throw TypeError(`Invalid key for this operation, its asymmetricKeyType must be rsa or rsa-pss`);(0,a.default)(t,e),u={padding:n.constants.RSA_PKCS1_PSS_PADDING,saltLength:n.constants.RSA_PSS_SALTLEN_DIGEST};break;case`ES256`:case`ES256K`:case`ES384`:case`ES512`:{if(s!==`ec`)throw TypeError(`Invalid key for this operation, its asymmetricKeyType must be ec`);let n=(0,r.default)(t),i=o.get(e);if(n!==i)throw TypeError(`Invalid key curve for the algorithm, its curve must be ${i}, got ${n}`);u={dsaEncoding:`ieee-p1363`};break}default:throw new i.JOSENotSupported(`alg ${e} is not supported either by JOSE or your javascript runtime`)}return l?{format:`jwk`,key:t,...u}:u?{...u,key:t}:t}})),pa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;let t=U();function n(e){switch(e){case`HS256`:return`sha256`;case`HS384`:return`sha384`;case`HS512`:return`sha512`;default:throw new t.JOSENotSupported(`alg ${e} is not supported either by JOSE or your javascript runtime`)}}})),ma=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=c;let n=t(`node:crypto`),r=G(),i=Ni(),a=K(),o=q(),s=Ri();function c(e,t,c){if(t instanceof Uint8Array){if(!e.startsWith(`HS`))throw TypeError((0,a.default)(t,...o.types));return(0,n.createSecretKey)(t)}if(t instanceof n.KeyObject)return t;if((0,r.isCryptoKey)(t))return(0,i.checkSigCryptoKey)(t,e,c),n.KeyObject.from(t);if(s.isJWK(t))return e.startsWith(`HS`)?(0,n.createSecretKey)(Buffer.from(t.k,`base64url`)):t;throw TypeError((0,a.default)(t,...o.types,`Uint8Array`,`JSON Web Key`))}})),ha=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=t(`node:crypto`),r=t(`node:util`),i=da(),a=pa(),o=fa(),s=ma(),c=(0,r.promisify)(n.sign);e.default=async(e,t,r)=>{let l=(0,s.default)(e,t,`sign`);if(e.startsWith(`HS`)){let t=n.createHmac((0,a.default)(e),l);return t.update(r),t.digest()}return c((0,i.default)(e),r,(0,o.default)(e,l))}})),ga=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=t(`node:crypto`),r=t(`node:util`),i=da(),a=fa(),o=ha(),s=ma(),c=(0,r.promisify)(n.verify);e.default=async(e,t,r,l)=>{let u=(0,s.default)(e,t,`verify`);if(e.startsWith(`HS`)){let t=await(0,o.default)(e,u,l),i=r;try{return n.timingSafeEqual(i,t)}catch{return!1}}let d=(0,i.default)(e),f=(0,a.default)(e,u);try{return await c(d,l,f,r)}catch{return!1}}})),_a=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.flattenedVerify=f;let t=H(),n=ga(),r=U(),i=V(),a=Ii(),o=J(),s=Xi(),c=ea(),l=ta(),u=Ri(),d=Yi();async function f(e,f,p){if(!(0,o.default)(e))throw new r.JWSInvalid(`Flattened JWS must be an object`);if(e.protected===void 0&&e.header===void 0)throw new r.JWSInvalid(`Flattened JWS must have either of the "protected" or "header" members`);if(e.protected!==void 0&&typeof e.protected!=`string`)throw new r.JWSInvalid(`JWS Protected Header incorrect type`);if(e.payload===void 0)throw new r.JWSInvalid(`JWS Payload missing`);if(typeof e.signature!=`string`)throw new r.JWSInvalid(`JWS Signature missing or incorrect type`);if(e.header!==void 0&&!(0,o.default)(e.header))throw new r.JWSInvalid(`JWS Unprotected Header incorrect type`);let m={};if(e.protected)try{let n=(0,t.decode)(e.protected);m=JSON.parse(i.decoder.decode(n))}catch{throw new r.JWSInvalid(`JWS Protected Header is invalid`)}if(!(0,a.default)(m,e.header))throw new r.JWSInvalid(`JWS Protected and JWS Unprotected Header Parameter names must be disjoint`);let h={...m,...e.header},g=(0,c.default)(r.JWSInvalid,new Map([[`b64`,!0]]),p?.crit,m,h),_=!0;if(g.has(`b64`)&&(_=m.b64,typeof _!=`boolean`))throw new r.JWSInvalid(`The "b64" (base64url-encode payload) Header Parameter must be a boolean`);let{alg:v}=h;if(typeof v!=`string`||!v)throw new r.JWSInvalid(`JWS "alg" (Algorithm) Header Parameter missing or invalid`);let y=p&&(0,l.default)(`algorithms`,p.algorithms);if(y&&!y.has(v))throw new r.JOSEAlgNotAllowed(`"alg" (Algorithm) Header Parameter value not allowed`);if(_){if(typeof e.payload!=`string`)throw new r.JWSInvalid(`JWS Payload must be a string`)}else if(typeof e.payload!=`string`&&!(e.payload instanceof Uint8Array))throw new r.JWSInvalid(`JWS Payload must be a string or an Uint8Array instance`);let b=!1;typeof f==`function`?(f=await f(m,e),b=!0,(0,s.checkKeyTypeWithJwk)(v,f,`verify`),(0,u.isJWK)(f)&&(f=await(0,d.importJWK)(f,v))):(0,s.checkKeyTypeWithJwk)(v,f,`verify`);let x=(0,i.concat)(i.encoder.encode(e.protected??``),i.encoder.encode(`.`),typeof e.payload==`string`?i.encoder.encode(e.payload):e.payload),S;try{S=(0,t.decode)(e.signature)}catch{throw new r.JWSInvalid(`Failed to base64url decode the signature`)}if(!await(0,n.default)(v,f,S,x))throw new r.JWSSignatureVerificationFailed;let C;if(_)try{C=(0,t.decode)(e.payload)}catch{throw new r.JWSInvalid(`Failed to base64url decode the payload`)}else C=typeof e.payload==`string`?i.encoder.encode(e.payload):e.payload;let w={payload:C};return e.protected!==void 0&&(w.protectedHeader=m),e.header!==void 0&&(w.unprotectedHeader=e.header),b?{...w,key:f}:w}})),va=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.compactVerify=i;let t=_a(),n=U(),r=V();async function i(e,i,a){if(e instanceof Uint8Array&&(e=r.decoder.decode(e)),typeof e!=`string`)throw new n.JWSInvalid(`Compact JWS must be a string or Uint8Array`);let{0:o,1:s,2:c,length:l}=e.split(`.`);if(l!==3)throw new n.JWSInvalid(`Invalid Compact JWS`);let u=await(0,t.flattenedVerify)({payload:s,protected:o,signature:c},i,a),d={payload:u.payload,protectedHeader:u.protectedHeader};return typeof i==`function`?{...d,key:u.key}:d}})),ya=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.generalVerify=i;let t=_a(),n=U(),r=J();async function i(e,i,a){if(!(0,r.default)(e))throw new n.JWSInvalid(`General JWS must be an object`);if(!Array.isArray(e.signatures)||!e.signatures.every(r.default))throw new n.JWSInvalid(`JWS Signatures missing or incorrect type`);for(let n of e.signatures)try{return await(0,t.flattenedVerify)({header:n.header,payload:e.payload,protected:n.protected,signature:n.signature},i,a)}catch{}throw new n.JWSSignatureVerificationFailed}})),ba=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=e=>Math.floor(e.getTime()/1e3)})),xa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=/^(\+|\-)? ?(\d+|\d+\.\d+) ?(seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)(?: (ago|from now))?$/i;e.default=e=>{let n=t.exec(e);if(!n||n[4]&&n[1])throw TypeError(`Invalid time period format`);let r=parseFloat(n[2]),i=n[3].toLowerCase(),a;switch(i){case`sec`:case`secs`:case`second`:case`seconds`:case`s`:a=Math.round(r);break;case`minute`:case`minutes`:case`min`:case`mins`:case`m`:a=Math.round(r*60);break;case`hour`:case`hours`:case`hr`:case`hrs`:case`h`:a=Math.round(r*3600);break;case`day`:case`days`:case`d`:a=Math.round(r*86400);break;case`week`:case`weeks`:case`w`:a=Math.round(r*604800);break;default:a=Math.round(r*31557600)}return n[1]===`-`||n[4]===`ago`?-a:a}})),Sa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let t=U(),n=V(),r=ba(),i=xa(),a=J(),o=e=>e.toLowerCase().replace(/^application\//,``),s=(e,t)=>typeof e==`string`?t.includes(e):Array.isArray(e)?t.some(Set.prototype.has.bind(new Set(e))):!1;e.default=(e,c,l={})=>{let u;try{u=JSON.parse(n.decoder.decode(c))}catch{}if(!(0,a.default)(u))throw new t.JWTInvalid(`JWT Claims Set must be a top-level JSON object`);let{typ:d}=l;if(d&&(typeof e.typ!=`string`||o(e.typ)!==o(d)))throw new t.JWTClaimValidationFailed(`unexpected "typ" JWT header value`,u,`typ`,`check_failed`);let{requiredClaims:f=[],issuer:p,subject:m,audience:h,maxTokenAge:g}=l,_=[...f];g!==void 0&&_.push(`iat`),h!==void 0&&_.push(`aud`),m!==void 0&&_.push(`sub`),p!==void 0&&_.push(`iss`);for(let e of new Set(_.reverse()))if(!(e in u))throw new t.JWTClaimValidationFailed(`missing required "${e}" claim`,u,e,`missing`);if(p&&!(Array.isArray(p)?p:[p]).includes(u.iss))throw new t.JWTClaimValidationFailed(`unexpected "iss" claim value`,u,`iss`,`check_failed`);if(m&&u.sub!==m)throw new t.JWTClaimValidationFailed(`unexpected "sub" claim value`,u,`sub`,`check_failed`);if(h&&!s(u.aud,typeof h==`string`?[h]:h))throw new t.JWTClaimValidationFailed(`unexpected "aud" claim value`,u,`aud`,`check_failed`);let v;switch(typeof l.clockTolerance){case`string`:v=(0,i.default)(l.clockTolerance);break;case`number`:v=l.clockTolerance;break;case`undefined`:v=0;break;default:throw TypeError(`Invalid clockTolerance option type`)}let{currentDate:y}=l,b=(0,r.default)(y||new Date);if((u.iat!==void 0||g)&&typeof u.iat!=`number`)throw new t.JWTClaimValidationFailed(`"iat" claim must be a number`,u,`iat`,`invalid`);if(u.nbf!==void 0){if(typeof u.nbf!=`number`)throw new t.JWTClaimValidationFailed(`"nbf" claim must be a number`,u,`nbf`,`invalid`);if(u.nbf>b+v)throw new t.JWTClaimValidationFailed(`"nbf" claim timestamp check failed`,u,`nbf`,`check_failed`)}if(u.exp!==void 0){if(typeof u.exp!=`number`)throw new t.JWTClaimValidationFailed(`"exp" claim must be a number`,u,`exp`,`invalid`);if(u.exp<=b-v)throw new t.JWTExpired(`"exp" claim timestamp check failed`,u,`exp`,`check_failed`)}if(g){let e=b-u.iat,n=typeof g==`number`?g:(0,i.default)(g);if(e-v>n)throw new t.JWTExpired(`"iat" claim timestamp check failed (too far in the past)`,u,`iat`,`check_failed`);if(e<0-v)throw new t.JWTClaimValidationFailed(`"iat" claim timestamp check failed (it should be in the past)`,u,`iat`,`check_failed`)}return u}})),Ca=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.jwtVerify=i;let t=va(),n=Sa(),r=U();async function i(e,i,a){let o=await(0,t.compactVerify)(e,i,a);if(o.protectedHeader.crit?.includes(`b64`)&&o.protectedHeader.b64===!1)throw new r.JWTInvalid(`JWTs MUST NOT use unencoded payload`);let s={payload:(0,n.default)(o.protectedHeader,o.payload,a),protectedHeader:o.protectedHeader};return typeof i==`function`?{...s,key:o.key}:s}})),wa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.jwtDecrypt=i;let t=ra(),n=Sa(),r=U();async function i(e,i,a){let o=await(0,t.compactDecrypt)(e,i,a),s=(0,n.default)(o.protectedHeader,o.plaintext,a),{protectedHeader:c}=o;if(c.iss!==void 0&&c.iss!==s.iss)throw new r.JWTClaimValidationFailed(`replicated "iss" claim header parameter mismatch`,s,`iss`,`mismatch`);if(c.sub!==void 0&&c.sub!==s.sub)throw new r.JWTClaimValidationFailed(`replicated "sub" claim header parameter mismatch`,s,`sub`,`mismatch`);if(c.aud!==void 0&&JSON.stringify(c.aud)!==JSON.stringify(s.aud))throw new r.JWTClaimValidationFailed(`replicated "aud" claim header parameter mismatch`,s,`aud`,`mismatch`);let l={payload:s,protectedHeader:c};return typeof i==`function`?{...l,key:o.key}:l}})),Ta=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.CompactEncrypt=void 0;let t=la();e.CompactEncrypt=class{_flattened;constructor(e){this._flattened=new t.FlattenedEncrypt(e)}setContentEncryptionKey(e){return this._flattened.setContentEncryptionKey(e),this}setInitializationVector(e){return this._flattened.setInitializationVector(e),this}setProtectedHeader(e){return this._flattened.setProtectedHeader(e),this}setKeyManagementParameters(e){return this._flattened.setKeyManagementParameters(e),this}async encrypt(e,t){let n=await this._flattened.encrypt(e,t);return[n.protected,n.encrypted_key,n.iv,n.ciphertext,n.tag].join(`.`)}}})),Ea=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.FlattenedSign=void 0;let t=H(),n=ha(),r=Ii(),i=U(),a=V(),o=Xi(),s=ea();e.FlattenedSign=class{_payload;_protectedHeader;_unprotectedHeader;constructor(e){if(!(e instanceof Uint8Array))throw TypeError(`payload must be an instance of Uint8Array`);this._payload=e}setProtectedHeader(e){if(this._protectedHeader)throw TypeError(`setProtectedHeader can only be called once`);return this._protectedHeader=e,this}setUnprotectedHeader(e){if(this._unprotectedHeader)throw TypeError(`setUnprotectedHeader can only be called once`);return this._unprotectedHeader=e,this}async sign(e,c){if(!this._protectedHeader&&!this._unprotectedHeader)throw new i.JWSInvalid(`either setProtectedHeader or setUnprotectedHeader must be called before #sign()`);if(!(0,r.default)(this._protectedHeader,this._unprotectedHeader))throw new i.JWSInvalid(`JWS Protected and JWS Unprotected Header Parameter names must be disjoint`);let l={...this._protectedHeader,...this._unprotectedHeader},u=(0,s.default)(i.JWSInvalid,new Map([[`b64`,!0]]),c?.crit,this._protectedHeader,l),d=!0;if(u.has(`b64`)&&(d=this._protectedHeader.b64,typeof d!=`boolean`))throw new i.JWSInvalid(`The "b64" (base64url-encode payload) Header Parameter must be a boolean`);let{alg:f}=l;if(typeof f!=`string`||!f)throw new i.JWSInvalid(`JWS "alg" (Algorithm) Header Parameter missing or invalid`);(0,o.checkKeyTypeWithJwk)(f,e,`sign`);let p=this._payload;d&&(p=a.encoder.encode((0,t.encode)(p)));let m;m=this._protectedHeader?a.encoder.encode((0,t.encode)(JSON.stringify(this._protectedHeader))):a.encoder.encode(``);let h=(0,a.concat)(m,a.encoder.encode(`.`),p),g=await(0,n.default)(f,e,h),_={signature:(0,t.encode)(g),payload:``};return d&&(_.payload=a.decoder.decode(p)),this._unprotectedHeader&&(_.header=this._unprotectedHeader),this._protectedHeader&&(_.protected=a.decoder.decode(m)),_}}})),Da=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.CompactSign=void 0;let t=Ea();e.CompactSign=class{_flattened;constructor(e){this._flattened=new t.FlattenedSign(e)}setProtectedHeader(e){return this._flattened.setProtectedHeader(e),this}async sign(e,t){let n=await this._flattened.sign(e,t);if(n.payload===void 0)throw TypeError(`use the flattened module for creating JWS with b64: false`);return`${n.protected}.${n.payload}.${n.signature}`}}})),Oa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.GeneralSign=void 0;let t=Ea(),n=U();var r=class{parent;protectedHeader;unprotectedHeader;options;key;constructor(e,t,n){this.parent=e,this.key=t,this.options=n}setProtectedHeader(e){if(this.protectedHeader)throw TypeError(`setProtectedHeader can only be called once`);return this.protectedHeader=e,this}setUnprotectedHeader(e){if(this.unprotectedHeader)throw TypeError(`setUnprotectedHeader can only be called once`);return this.unprotectedHeader=e,this}addSignature(...e){return this.parent.addSignature(...e)}sign(...e){return this.parent.sign(...e)}done(){return this.parent}};e.GeneralSign=class{_payload;_signatures=[];constructor(e){this._payload=e}addSignature(e,t){let n=new r(this,e,t);return this._signatures.push(n),n}async sign(){if(!this._signatures.length)throw new n.JWSInvalid(`at least one signature must be added`);let e={signatures:[],payload:``};for(let r=0;r<this._signatures.length;r++){let i=this._signatures[r],a=new t.FlattenedSign(this._payload);a.setProtectedHeader(i.protectedHeader),a.setUnprotectedHeader(i.unprotectedHeader);let{payload:o,...s}=await a.sign(i.key,i.options);if(r===0)e.payload=o;else if(e.payload!==o)throw new n.JWSInvalid(`inconsistent use of JWS Unencoded Payload (RFC7797)`);e.signatures.push(s)}return e}}})),ka=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ProduceJWT=void 0;let t=ba(),n=J(),r=xa();function i(e,t){if(!Number.isFinite(t))throw TypeError(`Invalid ${e} input`);return t}e.ProduceJWT=class{_payload;constructor(e={}){if(!(0,n.default)(e))throw TypeError(`JWT Claims Set MUST be an object`);this._payload=e}setIssuer(e){return this._payload={...this._payload,iss:e},this}setSubject(e){return this._payload={...this._payload,sub:e},this}setAudience(e){return this._payload={...this._payload,aud:e},this}setJti(e){return this._payload={...this._payload,jti:e},this}setNotBefore(e){return this._payload=typeof e==`number`?{...this._payload,nbf:i(`setNotBefore`,e)}:e instanceof Date?{...this._payload,nbf:i(`setNotBefore`,(0,t.default)(e))}:{...this._payload,nbf:(0,t.default)(new Date)+(0,r.default)(e)},this}setExpirationTime(e){return this._payload=typeof e==`number`?{...this._payload,exp:i(`setExpirationTime`,e)}:e instanceof Date?{...this._payload,exp:i(`setExpirationTime`,(0,t.default)(e))}:{...this._payload,exp:(0,t.default)(new Date)+(0,r.default)(e)},this}setIssuedAt(e){return this._payload=e===void 0?{...this._payload,iat:(0,t.default)(new Date)}:e instanceof Date?{...this._payload,iat:i(`setIssuedAt`,(0,t.default)(e))}:typeof e==`string`?{...this._payload,iat:i(`setIssuedAt`,(0,t.default)(new Date)+(0,r.default)(e))}:{...this._payload,iat:i(`setIssuedAt`,e)},this}}})),Aa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.SignJWT=void 0;let t=Da(),n=U(),r=V(),i=ka();e.SignJWT=class extends i.ProduceJWT{_protectedHeader;setProtectedHeader(e){return this._protectedHeader=e,this}async sign(e,i){let a=new t.CompactSign(r.encoder.encode(JSON.stringify(this._payload)));if(a.setProtectedHeader(this._protectedHeader),Array.isArray(this._protectedHeader?.crit)&&this._protectedHeader.crit.includes(`b64`)&&this._protectedHeader.b64===!1)throw new n.JWTInvalid(`JWTs MUST NOT use unencoded payload`);return a.sign(e,i)}}})),ja=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.EncryptJWT=void 0;let t=Ta(),n=V(),r=ka();e.EncryptJWT=class extends r.ProduceJWT{_cek;_iv;_keyManagementParameters;_protectedHeader;_replicateIssuerAsHeader;_replicateSubjectAsHeader;_replicateAudienceAsHeader;setProtectedHeader(e){if(this._protectedHeader)throw TypeError(`setProtectedHeader can only be called once`);return this._protectedHeader=e,this}setKeyManagementParameters(e){if(this._keyManagementParameters)throw TypeError(`setKeyManagementParameters can only be called once`);return this._keyManagementParameters=e,this}setContentEncryptionKey(e){if(this._cek)throw TypeError(`setContentEncryptionKey can only be called once`);return this._cek=e,this}setInitializationVector(e){if(this._iv)throw TypeError(`setInitializationVector can only be called once`);return this._iv=e,this}replicateIssuerAsHeader(){return this._replicateIssuerAsHeader=!0,this}replicateSubjectAsHeader(){return this._replicateSubjectAsHeader=!0,this}replicateAudienceAsHeader(){return this._replicateAudienceAsHeader=!0,this}async encrypt(e,r){let i=new t.CompactEncrypt(n.encoder.encode(JSON.stringify(this._payload)));return this._replicateIssuerAsHeader&&(this._protectedHeader={...this._protectedHeader,iss:this._payload.iss}),this._replicateSubjectAsHeader&&(this._protectedHeader={...this._protectedHeader,sub:this._payload.sub}),this._replicateAudienceAsHeader&&(this._protectedHeader={...this._protectedHeader,aud:this._payload.aud}),i.setProtectedHeader(this._protectedHeader),this._iv&&i.setInitializationVector(this._iv),this._cek&&i.setContentEncryptionKey(this._cek),this._keyManagementParameters&&i.setKeyManagementParameters(this._keyManagementParameters),i.encrypt(e,r)}}})),Ma=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.calculateJwkThumbprint=s,e.calculateJwkThumbprintUri=c;let t=Ei(),n=H(),r=U(),i=V(),a=J(),o=(e,t)=>{if(typeof e!=`string`||!e)throw new r.JWKInvalid(`${t} missing or invalid`)};async function s(e,s){if(!(0,a.default)(e))throw TypeError(`JWK must be an object`);if(s??=`sha256`,s!==`sha256`&&s!==`sha384`&&s!==`sha512`)throw TypeError(`digestAlgorithm must one of "sha256", "sha384", or "sha512"`);let c;switch(e.kty){case`EC`:o(e.crv,`"crv" (Curve) Parameter`),o(e.x,`"x" (X Coordinate) Parameter`),o(e.y,`"y" (Y Coordinate) Parameter`),c={crv:e.crv,kty:e.kty,x:e.x,y:e.y};break;case`OKP`:o(e.crv,`"crv" (Subtype of Key Pair) Parameter`),o(e.x,`"x" (Public Key) Parameter`),c={crv:e.crv,kty:e.kty,x:e.x};break;case`RSA`:o(e.e,`"e" (Exponent) Parameter`),o(e.n,`"n" (Modulus) Parameter`),c={e:e.e,kty:e.kty,n:e.n};break;case`oct`:o(e.k,`"k" (Key Value) Parameter`),c={k:e.k,kty:e.kty};break;default:throw new r.JOSENotSupported(`"kty" (Key Type) Parameter missing or unsupported`)}let l=i.encoder.encode(JSON.stringify(c));return(0,n.encode)(await(0,t.default)(s,l))}async function c(e,t){t??=`sha256`;let n=await s(e,t);return`urn:ietf:params:oauth:jwk-thumbprint:sha-${t.slice(-3)}:${n}`}})),Na=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.EmbeddedJWK=i;let t=Yi(),n=J(),r=U();async function i(e,i){let a={...e,...i?.header};if(!(0,n.default)(a.jwk))throw new r.JWSInvalid(`"jwk" (JSON Web Key) Header Parameter must be a JSON object`);let o=await(0,t.importJWK)({...a.jwk,ext:!0},a.alg);if(o instanceof Uint8Array||o.type!==`public`)throw new r.JWSInvalid(`"jwk" (JSON Web Key) Header Parameter must be a public key`);return o}})),Pa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.createLocalJWKSet=u;let t=Yi(),n=U(),r=J();function i(e){switch(typeof e==`string`&&e.slice(0,2)){case`RS`:case`PS`:return`RSA`;case`ES`:return`EC`;case`Ed`:return`OKP`;default:throw new n.JOSENotSupported(`Unsupported "alg" value for a JSON Web Key Set`)}}function a(e){return e&&typeof e==`object`&&Array.isArray(e.keys)&&e.keys.every(o)}function o(e){return(0,r.default)(e)}function s(e){return typeof structuredClone==`function`?structuredClone(e):JSON.parse(JSON.stringify(e))}var c=class{_jwks;_cached=new WeakMap;constructor(e){if(!a(e))throw new n.JWKSInvalid(`JSON Web Key Set malformed`);this._jwks=s(e)}async getKey(e,t){let{alg:r,kid:a}={...e,...t?.header},o=i(r),s=this._jwks.keys.filter(e=>{let t=o===e.kty;if(t&&typeof a==`string`&&(t=a===e.kid),t&&typeof e.alg==`string`&&(t=r===e.alg),t&&typeof e.use==`string`&&(t=e.use===`sig`),t&&Array.isArray(e.key_ops)&&(t=e.key_ops.includes(`verify`)),t&&r===`EdDSA`&&(t=e.crv===`Ed25519`||e.crv===`Ed448`),t)switch(r){case`ES256`:t=e.crv===`P-256`;break;case`ES256K`:t=e.crv===`secp256k1`;break;case`ES384`:t=e.crv===`P-384`;break;case`ES512`:t=e.crv===`P-521`}return t}),{0:c,length:u}=s;if(u===0)throw new n.JWKSNoMatchingKey;if(u!==1){let e=new n.JWKSMultipleMatchingKeys,{_cached:t}=this;throw e[Symbol.asyncIterator]=async function*(){for(let e of s)try{yield await l(t,e,r)}catch{}},e}return l(this._cached,c,r)}};async function l(e,r,i){let a=e.get(r)||e.set(r,{}).get(r);if(a[i]===void 0){let e=await(0,t.importJWK)({...r,ext:!0},i);if(e instanceof Uint8Array||e.type!==`public`)throw new n.JWKSInvalid(`JSON Web Key Set members must be public keys`);a[i]=e}return a[i]}function u(e){let t=new c(e),n=async(e,n)=>t.getKey(e,n);return Object.defineProperties(n,{jwks:{value:()=>s(t._jwks),enumerable:!0,configurable:!1,writable:!1}}),n}})),Fa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0});let n=t(`node:http`),r=t(`node:https`),i=t(`node:events`),a=U(),o=V();e.default=async(e,t,s)=>{let c;switch(e.protocol){case`https:`:c=r.get;break;case`http:`:c=n.get;break;default:throw TypeError(`Unsupported URL protocol.`)}let{agent:l,headers:u}=s,d=c(e.href,{agent:l,timeout:t,headers:u}),[f]=await Promise.race([(0,i.once)(d,`response`),(0,i.once)(d,`timeout`)]);if(!f)throw d.destroy(),new a.JWKSTimeout;if(f.statusCode!==200)throw new a.JOSEError(`Expected 200 OK from the JSON Web Key Set HTTP response`);let p=[];for await(let e of f)p.push(e);try{return JSON.parse(o.decoder.decode((0,o.concat)(...p)))}catch{throw new a.JOSEError(`Failed to parse the JSON Web Key Set HTTP response as JSON`)}}})),Ia=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.experimental_jwksCache=e.jwksCache=void 0,e.createRemoteJWKSet=l;let t=Fa(),n=U(),r=Pa(),i=J();function a(){return typeof WebSocketPair<`u`||typeof navigator<`u`&&navigator.userAgent===`Cloudflare-Workers`||typeof EdgeRuntime<`u`&&EdgeRuntime===`vercel`}let o;(typeof navigator>`u`||!navigator.userAgent?.startsWith?.(`Mozilla/5.0 `))&&(o=`jose/v5.9.6`),e.jwksCache=Symbol();function s(e,t){return!(typeof e!=`object`||!e||!(`uat`in e)||typeof e.uat!=`number`||Date.now()-e.uat>=t||!(`jwks`in e)||!(0,i.default)(e.jwks)||!Array.isArray(e.jwks.keys)||!Array.prototype.every.call(e.jwks.keys,i.default))}var c=class{_url;_timeoutDuration;_cooldownDuration;_cacheMaxAge;_jwksTimestamp;_pendingFetch;_options;_local;_cache;constructor(t,n){if(!(t instanceof URL))throw TypeError(`url must be an instance of URL`);this._url=new URL(t.href),this._options={agent:n?.agent,headers:n?.headers},this._timeoutDuration=typeof n?.timeoutDuration==`number`?n?.timeoutDuration:5e3,this._cooldownDuration=typeof n?.cooldownDuration==`number`?n?.cooldownDuration:3e4,this._cacheMaxAge=typeof n?.cacheMaxAge==`number`?n?.cacheMaxAge:6e5,n?.[e.jwksCache]!==void 0&&(this._cache=n?.[e.jwksCache],s(n?.[e.jwksCache],this._cacheMaxAge)&&(this._jwksTimestamp=this._cache.uat,this._local=(0,r.createLocalJWKSet)(this._cache.jwks)))}coolingDown(){return typeof this._jwksTimestamp==`number`&&Date.now()<this._jwksTimestamp+this._cooldownDuration}fresh(){return typeof this._jwksTimestamp==`number`&&Date.now()<this._jwksTimestamp+this._cacheMaxAge}async getKey(e,t){(!this._local||!this.fresh())&&await this.reload();try{return await this._local(e,t)}catch(r){if(r instanceof n.JWKSNoMatchingKey&&this.coolingDown()===!1)return await this.reload(),this._local(e,t);throw r}}async reload(){this._pendingFetch&&a()&&(this._pendingFetch=void 0);let e=new Headers(this._options.headers);o&&!e.has(`User-Agent`)&&(e.set(`User-Agent`,o),this._options.headers=Object.fromEntries(e.entries())),this._pendingFetch||=(0,t.default)(this._url,this._timeoutDuration,this._options).then(e=>{this._local=(0,r.createLocalJWKSet)(e),this._cache&&(this._cache.uat=Date.now(),this._cache.jwks=e),this._jwksTimestamp=Date.now(),this._pendingFetch=void 0}).catch(e=>{throw this._pendingFetch=void 0,e}),await this._pendingFetch}};function l(e,t){let n=new c(e,t),r=async(e,t)=>n.getKey(e,t);return Object.defineProperties(r,{coolingDown:{get:()=>n.coolingDown(),enumerable:!0,configurable:!1},fresh:{get:()=>n.fresh(),enumerable:!0,configurable:!1},reload:{value:()=>n.reload(),enumerable:!0,configurable:!1,writable:!1},reloading:{get:()=>!!n._pendingFetch,enumerable:!0,configurable:!1},jwks:{value:()=>n._local?.jwks(),enumerable:!0,configurable:!1,writable:!1}}),r}e.experimental_jwksCache=e.jwksCache})),La=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.UnsecuredJWT=void 0;let t=H(),n=V(),r=U(),i=Sa(),a=ka();e.UnsecuredJWT=class extends a.ProduceJWT{encode(){return`${t.encode(JSON.stringify({alg:`none`}))}.${t.encode(JSON.stringify(this._payload))}.`}static decode(e,a){if(typeof e!=`string`)throw new r.JWTInvalid(`Unsecured JWT must be a string`);let{0:o,1:s,2:c,length:l}=e.split(`.`);if(l!==3||c!==``)throw new r.JWTInvalid(`Invalid Unsecured JWT`);let u;try{if(u=JSON.parse(n.decoder.decode(t.decode(o))),u.alg!==`none`)throw Error()}catch{throw new r.JWTInvalid(`Invalid Unsecured JWT`)}return{payload:(0,i.default)(u,t.decode(s),a),header:u}}}})),Ra=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decode=e.encode=void 0;let t=H();e.encode=t.encode,e.decode=t.decode})),za=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decodeProtectedHeader=i;let t=Ra(),n=V(),r=J();function i(e){let i;if(typeof e==`string`){let t=e.split(`.`);(t.length===3||t.length===5)&&([i]=t)}else if(typeof e==`object`&&e){if(`protected`in e)i=e.protected;else throw TypeError(`Token does not contain a Protected Header`)}try{if(typeof i!=`string`||!i)throw Error();let e=JSON.parse(n.decoder.decode((0,t.decode)(i)));if(!(0,r.default)(e))throw Error();return e}catch{throw TypeError(`Invalid Token or Protected Header formatting`)}}})),Ba=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decodeJwt=a;let t=Ra(),n=V(),r=J(),i=U();function a(e){if(typeof e!=`string`)throw new i.JWTInvalid(`JWTs must use Compact JWS serialization, JWT must be a string`);let{1:a,length:o}=e.split(`.`);if(o===5)throw new i.JWTInvalid(`Only JWTs using Compact JWS serialization can be decoded`);if(o!==3)throw new i.JWTInvalid(`Invalid JWT`);if(!a)throw new i.JWTInvalid(`JWTs must contain a payload`);let s;try{s=(0,t.decode)(a)}catch{throw new i.JWTInvalid(`Failed to base64url decode the payload`)}let c;try{c=JSON.parse(n.decoder.decode(s))}catch{throw new i.JWTInvalid(`Failed to parse the decoded payload as JSON`)}if(!(0,r.default)(c))throw new i.JWTInvalid(`Invalid JWT Claims Set`);return c}})),Va=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.generateSecret=s,e.generateKeyPair=c;let n=t(`node:crypto`),r=t(`node:util`),i=Di(),a=U(),o=(0,r.promisify)(n.generateKeyPair);async function s(e,t){let r;switch(e){case`HS256`:case`HS384`:case`HS512`:case`A128CBC-HS256`:case`A192CBC-HS384`:case`A256CBC-HS512`:r=parseInt(e.slice(-3),10);break;case`A128KW`:case`A192KW`:case`A256KW`:case`A128GCMKW`:case`A192GCMKW`:case`A256GCMKW`:case`A128GCM`:case`A192GCM`:case`A256GCM`:r=parseInt(e.slice(1,4),10);break;default:throw new a.JOSENotSupported(`Invalid or unsupported JWK "alg" (Algorithm) Parameter value`)}return(0,n.createSecretKey)((0,i.default)(new Uint8Array(r>>3)))}async function c(e,t){switch(e){case`RS256`:case`RS384`:case`RS512`:case`PS256`:case`PS384`:case`PS512`:case`RSA-OAEP`:case`RSA-OAEP-256`:case`RSA-OAEP-384`:case`RSA-OAEP-512`:case`RSA1_5`:{let e=t?.modulusLength??2048;if(typeof e!=`number`||e<2048)throw new a.JOSENotSupported(`Invalid or unsupported modulusLength option provided, 2048 bits or larger keys must be used`);return await o(`rsa`,{modulusLength:e,publicExponent:65537})}case`ES256`:return o(`ec`,{namedCurve:`P-256`});case`ES256K`:return o(`ec`,{namedCurve:`secp256k1`});case`ES384`:return o(`ec`,{namedCurve:`P-384`});case`ES512`:return o(`ec`,{namedCurve:`P-521`});case`EdDSA`:switch(t?.crv){case void 0:case`Ed25519`:return o(`ed25519`);case`Ed448`:return o(`ed448`);default:throw new a.JOSENotSupported(`Invalid or unsupported crv option provided, supported values are Ed25519 and Ed448`)}case`ECDH-ES`:case`ECDH-ES+A128KW`:case`ECDH-ES+A192KW`:case`ECDH-ES+A256KW`:{let e=t?.crv??`P-256`;switch(e){case void 0:case`P-256`:case`P-384`:case`P-521`:return o(`ec`,{namedCurve:e});case`X25519`:return o(`x25519`);case`X448`:return o(`x448`);default:throw new a.JOSENotSupported(`Invalid or unsupported crv option provided, supported values are P-256, P-384, P-521, X25519, and X448`)}}default:throw new a.JOSENotSupported(`Invalid or unsupported JWK "alg" (Algorithm) Parameter value`)}}})),Ha=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.generateKeyPair=n;let t=Va();async function n(e,n){return(0,t.generateKeyPair)(e,n)}})),Ua=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.generateSecret=n;let t=Va();async function n(e,n){return(0,t.generateSecret)(e,n)}})),Wa=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=`node:crypto`})),Ga=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=Wa().default})),Ka=n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.cryptoRuntime=e.base64url=e.generateSecret=e.generateKeyPair=e.errors=e.decodeJwt=e.decodeProtectedHeader=e.importJWK=e.importX509=e.importPKCS8=e.importSPKI=e.exportJWK=e.exportSPKI=e.exportPKCS8=e.UnsecuredJWT=e.experimental_jwksCache=e.jwksCache=e.createRemoteJWKSet=e.createLocalJWKSet=e.EmbeddedJWK=e.calculateJwkThumbprintUri=e.calculateJwkThumbprint=e.EncryptJWT=e.SignJWT=e.GeneralSign=e.FlattenedSign=e.CompactSign=e.FlattenedEncrypt=e.CompactEncrypt=e.jwtDecrypt=e.jwtVerify=e.generalVerify=e.flattenedVerify=e.compactVerify=e.GeneralEncrypt=e.generalDecrypt=e.flattenedDecrypt=e.compactDecrypt=void 0;var t=ra();Object.defineProperty(e,"compactDecrypt",{enumerable:!0,get:function(){return t.compactDecrypt}});var n=na();Object.defineProperty(e,"flattenedDecrypt",{enumerable:!0,get:function(){return n.flattenedDecrypt}});var r=ia();Object.defineProperty(e,"generalDecrypt",{enumerable:!0,get:function(){return r.generalDecrypt}});var i=ua();Object.defineProperty(e,"GeneralEncrypt",{enumerable:!0,get:function(){return i.GeneralEncrypt}});var a=va();Object.defineProperty(e,"compactVerify",{enumerable:!0,get:function(){return a.compactVerify}});var o=_a();Object.defineProperty(e,"flattenedVerify",{enumerable:!0,get:function(){return o.flattenedVerify}});var s=ya();Object.defineProperty(e,"generalVerify",{enumerable:!0,get:function(){return s.generalVerify}});var c=Ca();Object.defineProperty(e,"jwtVerify",{enumerable:!0,get:function(){return c.jwtVerify}});var l=wa();Object.defineProperty(e,"jwtDecrypt",{enumerable:!0,get:function(){return l.jwtDecrypt}});var u=Ta();Object.defineProperty(e,"CompactEncrypt",{enumerable:!0,get:function(){return u.CompactEncrypt}});var d=la();Object.defineProperty(e,"FlattenedEncrypt",{enumerable:!0,get:function(){return d.FlattenedEncrypt}});var f=Da();Object.defineProperty(e,"CompactSign",{enumerable:!0,get:function(){return f.CompactSign}});var p=Ea();Object.defineProperty(e,"FlattenedSign",{enumerable:!0,get:function(){return p.FlattenedSign}});var m=Oa();Object.defineProperty(e,"GeneralSign",{enumerable:!0,get:function(){return m.GeneralSign}});var h=Aa();Object.defineProperty(e,"SignJWT",{enumerable:!0,get:function(){return h.SignJWT}});var g=ja();Object.defineProperty(e,"EncryptJWT",{enumerable:!0,get:function(){return g.EncryptJWT}});var _=Ma();Object.defineProperty(e,"calculateJwkThumbprint",{enumerable:!0,get:function(){return _.calculateJwkThumbprint}}),Object.defineProperty(e,"calculateJwkThumbprintUri",{enumerable:!0,get:function(){return _.calculateJwkThumbprintUri}});var v=Na();Object.defineProperty(e,"EmbeddedJWK",{enumerable:!0,get:function(){return v.EmbeddedJWK}});var y=Pa();Object.defineProperty(e,"createLocalJWKSet",{enumerable:!0,get:function(){return y.createLocalJWKSet}});var b=Ia();Object.defineProperty(e,"createRemoteJWKSet",{enumerable:!0,get:function(){return b.createRemoteJWKSet}}),Object.defineProperty(e,"jwksCache",{enumerable:!0,get:function(){return b.jwksCache}}),Object.defineProperty(e,"experimental_jwksCache",{enumerable:!0,get:function(){return b.experimental_jwksCache}});var x=La();Object.defineProperty(e,"UnsecuredJWT",{enumerable:!0,get:function(){return x.UnsecuredJWT}});var S=sa();Object.defineProperty(e,"exportPKCS8",{enumerable:!0,get:function(){return S.exportPKCS8}}),Object.defineProperty(e,"exportSPKI",{enumerable:!0,get:function(){return S.exportSPKI}}),Object.defineProperty(e,"exportJWK",{enumerable:!0,get:function(){return S.exportJWK}});var C=Yi();Object.defineProperty(e,"importSPKI",{enumerable:!0,get:function(){return C.importSPKI}}),Object.defineProperty(e,"importPKCS8",{enumerable:!0,get:function(){return C.importPKCS8}}),Object.defineProperty(e,"importX509",{enumerable:!0,get:function(){return C.importX509}}),Object.defineProperty(e,"importJWK",{enumerable:!0,get:function(){return C.importJWK}});var w=za();Object.defineProperty(e,"decodeProtectedHeader",{enumerable:!0,get:function(){return w.decodeProtectedHeader}});var ee=Ba();Object.defineProperty(e,"decodeJwt",{enumerable:!0,get:function(){return ee.decodeJwt}}),e.errors=U();var te=Ha();Object.defineProperty(e,"generateKeyPair",{enumerable:!0,get:function(){return te.generateKeyPair}});var T=Ua();Object.defineProperty(e,"generateSecret",{enumerable:!0,get:function(){return T.generateSecret}}),e.base64url=Ra();var ne=Ga();Object.defineProperty(e,"cryptoRuntime",{enumerable:!0,get:function(){return ne.default}})})),qa=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{verifyVercelOidcToken:()=>h}),t.exports=c(l);var u=Ka();let d=`https://oidc.vercel.com`,f=new URL(`https://oidc.vercel.com/.well-known/jwks`),p=[`RS256`],m=(0,u.createRemoteJWKSet)(f);async function h(e,t){let{algorithms:n,projectId:r=process.env.VERCEL_PROJECT_ID,environment:i=process.env.VERCEL_TARGET_ENV||process.env.VERCEL_ENV,ownerId:a,...o}=t??{};if(r===`*`&&a===void 0&&!g(o.audience))throw TypeError(`Expected ownerId or audience to be provided when projectId is '*'.`);let s=await(0,u.jwtVerify)(e,m,{...o,algorithms:n??p});return _(s.payload.iss),v({actual:s.payload.project_id,claim:`project_id`,env:`VERCEL_PROJECT_ID`,expected:r,option:`projectId`}),v({actual:s.payload.environment,claim:`environment`,env:`VERCEL_TARGET_ENV or VERCEL_ENV`,expected:i,option:`environment`}),y({actual:s.payload.owner_id,claim:`owner_id`,expected:a}),s}function g(e){return Array.isArray(e)?e.length>0:e!==void 0}function _(e){if(e!==d&&(typeof e!=`string`||!e.startsWith(`${d}/`)))throw TypeError(`Expected Vercel OIDC token iss claim to be "${d}" or to start with "${d}/".`)}function v({actual:e,claim:t,env:n,expected:r,option:i}){if(r!==`*`){if(r===void 0||r.length===0)throw TypeError(`Expected ${n} to be set or ${i} to be provided. Pass ${i}: '*' to allow any ${t} claim.`);if(!(Array.isArray(r)&&typeof e==`string`&&r.includes(e))&&e!==r)throw TypeError(Array.isArray(r)?`Expected Vercel OIDC token ${t} claim to be one of: ${r.map(e=>`"${e}"`).join(`, `)}.`:`Expected Vercel OIDC token ${t} claim to be "${r}".`)}}function y({actual:e,claim:t,expected:n}){if(n!==void 0&&e!==n)throw TypeError(`Expected Vercel OIDC token ${t} claim to be "${n}".`)}0&&(t.exports={verifyVercelOidcToken:h})})),Ja=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{AccessTokenMissingError:()=>m.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>m.RefreshAccessTokenFailedError,exchangeVercelOidcToken:()=>h.exchangeVercelOidcToken,getContext:()=>f.getContext,getVercelOidcToken:()=>u.getVercelOidcToken,getVercelOidcTokenSync:()=>d.getVercelOidcTokenSync,getVercelToken:()=>g.getVercelToken,verifyVercelOidcToken:()=>p.verifyVercelOidcToken}),t.exports=c(l);var u=Ti(),d=wi(),f=Ci(),p=qa(),m=Wt(),h=Si(),g=Gt();0&&(t.exports={AccessTokenMissingError,RefreshAccessTokenFailedError,exchangeVercelOidcToken,getContext,getVercelOidcToken,getVercelOidcTokenSync,getVercelToken,verifyVercelOidcToken})})),Ya=e(bi(),1),Xa=Ja();async function Za(e){let t=0,n=e.getReader(),r=[];try{for(;;){let{done:e,value:i}=await n.read();if(e)break;r.push(i),t+=i.length}}finally{n.releaseLock()}return Buffer.concat(r,t)}var Qa=class{contentType=`application/json`;replacer;reviver;constructor(e={}){this.replacer=e.replacer,this.reviver=e.reviver}serialize(e){return Buffer.from(JSON.stringify(e,this.replacer),`utf8`)}async deserialize(e){let t=await Za(e);return JSON.parse(t.toString(`utf8`),this.reviver)}},$a=class extends Error{constructor(e){super(`Message ${e} not found`),this.name=`MessageNotFoundError`}},eo=class extends Error{constructor(e,t){super(`Message ${e} not available for processing${t?`: ${t}`:``}`),this.name=`MessageNotAvailableError`}},to=class extends Error{constructor(e,t){super(`Message ${e} is corrupted: ${t}`),this.name=`MessageCorruptedError`}},no=class extends Error{retryAfter;constructor(e=`Too many requests`,t){super(e),this.name=`TooManyRequestsError`,this.retryAfter=t}},ro=class extends Error{constructor(e=`Missing or invalid authentication token`){super(e),this.name=`UnauthorizedError`}},io=class extends Error{constructor(e=`Queue environment doesn't match token environment`){super(e),this.name=`ForbiddenError`}},ao=class extends Error{constructor(e){super(e),this.name=`BadRequestError`}},oo=class extends Error{constructor(e=`Unexpected server error`){super(e),this.name=`InternalServerError`}},so=class extends Error{constructor(e,t=1,n=10){super(`Invalid limit: ${e}. Limit must be between ${t} and ${n}.`),this.name=`InvalidLimitError`}},co=class extends Error{constructor(e){super(`Message ${e} has already been processed`),this.name=`MessageAlreadyProcessedError`}},lo=class extends Error{deploymentId;constructor(e,t){super(e),this.name=`ConsumerDiscoveryError`,this.deploymentId=t}},uo=class extends Error{constructor(e=`Consumer registry not configured`){super(e),this.name=`ConsumerRegistryNotConfiguredError`}},fo=300,po=30,mo=60,ho=10,go=3e3,_o=3,vo=250;function yo(e){return Math.min(mo,Math.max(ho,e/5))}var bo=class{client;topicName;consumerGroupName;visibilityTimeout;constructor(e,t,n,r={}){this.client=e,this.topicName=t,this.consumerGroupName=n,this.visibilityTimeout=Math.max(po,r.visibilityTimeoutSeconds??fo)}isClientError(e){return e instanceof eo||e instanceof $a||e instanceof ao||e instanceof ro||e instanceof io}isNetworkError(e){return e instanceof TypeError}async directiveCallWithRetries(e){let t;for(let n=1;n<=_o;n++)try{return await e()}catch(e){if(t=e,n===_o)throw e;if(e instanceof no){if(e.retryAfter===void 0)throw e;await new Promise(t=>setTimeout(t,e.retryAfter*1e3));continue}if(!this.isNetworkError(e))throw e;let r=vo*n,i=r/2+r/2*Math.random();await new Promise(e=>setTimeout(e,i))}throw t}startVisibilityExtension(e,t){let n=!0,r=!1,i,a=null,o=yo(this.visibilityTimeout)*1e3,s=o;if(t?.visibilityDeadline){let e=t.visibilityDeadline.getTime()-Date.now();s=e>0?yo(e/1e3)*1e3:0}let c=new Promise(e=>{i=e}),l=()=>{r||(r=!0,i())},u=async()=>{if(!n){l();return}try{await this.client.changeVisibility({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e,visibilityTimeoutSeconds:this.visibilityTimeout}),n?a=setTimeout(()=>u(),o):l()}catch(t){if(this.isClientError(t)){console.error(`Visibility extension failed with client error for receipt handle ${e} (stopping retries):`,t),l();return}console.error(`Failed to extend visibility for receipt handle ${e} (will retry in ${go/1e3}s):`,t),n?a=setTimeout(()=>u(),go):l()}};return a=setTimeout(()=>u(),s),async(e=!1)=>{n=!1,a&&=(clearTimeout(a),null),e?await c:l()}}async finalizePayload(e){let t=this.client.getTransport();if(t.finalize&&e!=null)try{await t.finalize(e)}catch(e){console.warn(`Failed to finalize message payload:`,e)}}async processMessage(e,t,n){let r=this.startVisibilityExtension(e.receiptHandle,n),i={messageId:e.messageId,deliveryCount:e.deliveryCount,createdAt:e.createdAt,expiresAt:e.expiresAt??new Date(e.createdAt.getTime()+864e5),topicName:this.topicName,consumerGroup:this.consumerGroupName,region:this.client.getRegion()};try{await t(e.payload,i),await r(),await this.client.acknowledgeMessage({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e.receiptHandle})}catch(t){if(await r(),n?.retry){let r;try{r=n.retry(t,i)}catch(e){console.warn(`retry handler threw:`,e)}if(r){if(`acknowledge`in r&&r.acknowledge){try{await this.directiveCallWithRetries(()=>this.client.acknowledgeMessage({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e.receiptHandle}))}catch(e){console.warn(`Failed to acknowledge message:`,e)}await this.finalizePayload(e.payload);return}if(`afterSeconds`in r&&typeof r.afterSeconds==`number`){try{await this.directiveCallWithRetries(()=>this.client.changeVisibility({queueName:this.topicName,consumerGroup:this.consumerGroupName,receiptHandle:e.receiptHandle,visibilityTimeoutSeconds:r.afterSeconds}))}catch(e){console.warn(`Failed to reschedule message for retry:`,e)}await this.finalizePayload(e.payload);return}}}throw await this.finalizePayload(e.payload),t}}async consumeMessage(e,t,n){await this.processMessage(t,e,n)}async consume(e,t){let n=t?.retry;if(t&&`messageId`in t){let r=await this.client.receiveMessageById({queueName:this.topicName,consumerGroup:this.consumerGroupName,messageId:t.messageId,visibilityTimeoutSeconds:this.visibilityTimeout});return await this.processMessage(r.message,e,{retry:n}),1}{let r=t&&`limit`in t?t.limit:1,i=0;for await(let t of this.client.receiveMessages({queueName:this.topicName,consumerGroup:this.consumerGroupName,visibilityTimeoutSeconds:this.visibilityTimeout,limit:r}))i++,await this.processMessage(t,e,{retry:n});return i}}get name(){return this.consumerGroupName}get topic(){return this.topicName}},xo=class{client;topicName;constructor(e,t){this.client=e,this.topicName=t}async publish(e,t){let n=await this.client.sendMessage({queueName:this.topicName,payload:e,idempotencyKey:t?.idempotencyKey,retentionSeconds:t?.retentionSeconds,delaySeconds:t?.delaySeconds,headers:t?.headers,telemetry:t?.telemetry});return n.messageId&&Z()&&bs(this.topicName,n.messageId,this.client.getRegion(),t?.delaySeconds,t?.retentionSeconds),{messageId:n.messageId}}consumerGroup(e,t){return new bo(this.client,this.topicName,e,t)}get name(){return this.topicName}},So=`com.vercel.queue.v1beta`,Co=`com.vercel.queue.v2beta`;function wo(e,t){let n=t.slice(0,-1);return e.startsWith(n)}function To(e){return typeof e==`object`&&!!e}function Eo(e,t){if(!t||!t.includes(`application/cloudevents+json`))throw Error(`Invalid content type: expected 'application/cloudevents+json'`);if(!To(e)||!e.type||!e.source||!e.id||!To(e.data))throw Error(`Invalid CloudEvent: missing required fields`);if(e.type!==`com.vercel.queue.v1beta`)throw Error(`Invalid CloudEvent type: expected '${So}', got '${String(e.type)}'`);let{data:n}=e,r=[];if(`queueName`in n||r.push(`queueName`),`consumerGroup`in n||r.push(`consumerGroup`),`messageId`in n||r.push(`messageId`),r.length>0)throw Error(`Missing required CloudEvent data fields: ${r.join(`, `)}`);return{queueName:String(n.queueName),consumerGroup:String(n.consumerGroup),messageId:String(n.messageId)}}function Y(e,t){if(e instanceof Headers)return e.get(t);let n=e[t];return Array.isArray(n)?n[0]??null:n??null}function Do(e){let t=Y(e,`ce-type`);if(t!==`com.vercel.queue.v2beta`)throw Error(`Invalid CloudEvent type: expected '${Co}', got '${t}'`);let n=Y(e,`ce-vqsqueuename`),r=Y(e,`ce-vqsconsumergroup`),i=Y(e,`ce-vqsmessageid`),a=[];if(n||a.push(`ce-vqsqueuename`),r||a.push(`ce-vqsconsumergroup`),i||a.push(`ce-vqsmessageid`),a.length>0)throw Error(`Missing required CloudEvent headers: ${a.join(`, `)}`);let o=Y(e,`ce-vqsregion`)??void 0;if(o!==void 0&&!/^[a-z]{2,5}[0-9]{1,2}$/.test(o))throw Error(`Invalid ce-vqsregion header: ${JSON.stringify(o)}. Region must match /^[a-z]{2,5}[0-9]{1,2}$/ (e.g. "iad1", "lhr1").`);let s={queueName:n,consumerGroup:r,messageId:i,region:o},c=Y(e,`ce-vqsreceipthandle`);if(!c)return s;let l={...s,receiptHandle:c},u=Y(e,`ce-vqsdeliverycount`);u&&(l.deliveryCount=parseInt(u,10));let d=Y(e,`ce-vqscreatedat`);d&&(l.createdAt=d);let f=Y(e,`ce-vqsexpiresat`);f&&(l.expiresAt=f);let p=Y(e,`content-type`);p&&(l.contentType=p);let m=Y(e,`ce-vqsvisibilitydeadline`);return m&&(l.visibilityDeadline=m),l}function Oo(e,t){if(Y(t,`ce-type`)===`com.vercel.queue.v2beta`){let n=Do(t);return`receiptHandle`in n&&(n.parsedPayload=e),n}return Eo(e,Y(t,`content-type`))}async function ko(e){if(e.headers.get(`ce-type`)===`com.vercel.queue.v2beta`){let t=Do(e.headers);return`receiptHandle`in t&&e.body&&(t.rawBody=e.body),t}let t;try{t=await e.json()}catch{throw Error(`Failed to parse CloudEvent from request body`)}let n={};return e.headers.forEach((e,t)=>{n[t]=e}),Oo(t,n)}async function Ao(e,t,n){let{queueName:r,consumerGroup:i,messageId:a}=t;if(!n?.client)throw Error(`HandleCallbackOptions.client is required`);let o=tc(n.client);t.region&&(o=o.withRegion(t.region));let s=new xo(o,r).consumerGroup(i,n?.visibilityTimeoutSeconds===void 0?void 0:{visibilityTimeoutSeconds:n.visibilityTimeoutSeconds});if(`receiptHandle`in t){let r=o.getTransport(),i;if(t.rawBody)i=await r.deserialize(t.rawBody);else if(t.parsedPayload!==void 0)i=t.parsedPayload;else throw Error(`Binary mode callback with receipt handle is missing payload`);let c={messageId:a,payload:i,deliveryCount:t.deliveryCount??1,createdAt:t.createdAt?new Date(t.createdAt):new Date,expiresAt:t.expiresAt?new Date(t.expiresAt):void 0,contentType:t.contentType??r.contentType,receiptHandle:t.receiptHandle},l=t.visibilityDeadline?new Date(t.visibilityDeadline):void 0;await s.consumeMessage(e,c,{visibilityDeadline:l,retry:n?.retry})}else await s.consume(e,{messageId:a,retry:n?.retry})}var X=Ya.default.cyan(`[queue]`),jo=Ya.default.green(`✓`),Mo=Ya.default.red(`✗`),No=Ya.default.yellow(`↻`);function Z(){return process.env.NODE_ENV===`development`&&process.env.VERCEL_DEPLOYMENT_ID===void 0}var Po=Symbol.for(`@vercel/queue.devRouteMappings`);function Fo(e){let t=``;for(let n of e)n===`_`?t+=`__`:n===`/`?t+=`_S`:n===`.`?t+=`_D`:/[A-Za-z0-9-]/.test(n)?t+=n:t+=`_`+n.charCodeAt(0).toString(16).toUpperCase().padStart(2,`0`);return t}function Io(){let e=globalThis;if(Po in e)return e[Po]??null;try{let t=N.join(process.cwd(),`vercel.json`);if(!Xt.existsSync(t))return e[Po]=null,null;let n=JSON.parse(Xt.readFileSync(t,`utf-8`));if(!n.functions)return e[Po]=null,null;let r=[];for(let[e,t]of Object.entries(n.functions))if(t.experimentalTriggers){for(let n of t.experimentalTriggers)if(n.type?.startsWith(`queue/`)&&n.topic){if(n.type!==`queue/v2beta`){console.warn(`${X} Unsupported trigger type "${n.type}" for topic "${n.topic}" in ${e}. Use "queue/v2beta" instead.`);continue}r.push({filePath:e,topic:n.topic,consumer:Fo(e),retryAfterSeconds:n.retryAfterSeconds})}}return e[Po]=r.length>0?r:null,e[Po]}catch(t){return console.warn(`${X} Failed to read vercel.json:`,t),e[Po]=null,null}}function Lo(e){let t=Io();return t?t.filter(t=>t.topic.includes(`*`)?wo(e,t.topic):t.topic===e):[]}function Ro(e,t){return Lo(e).find(e=>e.consumer===t)?.retryAfterSeconds}function zo(e){return/^src\/(app|pages|server)\//.test(e)?e.slice(4):null}function Bo(e,t){return e===t||R(e,t)}function Vo(e){let t=Io();if(!t)return[];let n=process.cwd(),r;try{r=N.relative(n,e)}catch{return[]}let i=r.replace(/\\/g,`/`),a=zo(i);return t.filter(e=>Bo(i,e.filePath)||a!==null&&Bo(a,e.filePath))}function Ho(e){let t=e.match(/\((.+?):\d+:\d+\)/);if(t||=e.match(/at\s+(.+?):\d+:\d+/),!t)return null;let n=t[1].trim();if(n===`native`||n.startsWith(`node:`)||n.startsWith(`internal`))return null;if(n.startsWith(`file://`))try{n=new URL(n).pathname}catch{return null}return/^[a-zA-Z][a-zA-Z0-9+.-]*:\/\//.test(n)?null:(n.startsWith(`./`)&&(n=n.slice(2)),n)}var Uo;function Wo(){if(Uo)return Uo;try{let e=typeof __dirname<`u`?__dirname:N.dirname(new URL(import.meta.url).pathname);Uo=N.resolve(e,`..`)}catch{Uo=``}return Uo}function Go(){let e=Error().stack;if(!e)return null;let t=e.split(`
`).slice(1),n=Wo();for(let e of t){let t=Ho(e);if(!t)continue;let r=N.isAbsolute(t)?t:N.resolve(process.cwd(),t),i;try{i=Xt.realpathSync(r)}catch{i=r}if(!(n&&i.startsWith(n)))return i}return null}var Ko=Symbol.for(`@vercel/queue.devHandlerRegistry`);function qo(){let e=globalThis;return e[Ko]||(e[Ko]=new Map),e[Ko]}function Jo(e,t,n,r){let i=Vo(N.isAbsolute(e)?e:N.resolve(process.cwd(),e));if(i.length===0)return!1;let a=qo();for(let e of i){let i=e.topic,o=a.get(i)??[],s={consumerGroup:e.consumer,handler:t,client:n,options:r},c=o.findIndex(t=>t.consumerGroup===e.consumer);c>=0?o[c]=s:o.push(s),a.set(i,o)}return!0}function Yo(e,t,n,r){let i=r??Go();if(!i){console.warn(`${X} Could not determine caller file path for handler registration.`);return}if(!Jo(i,e,t,n)){let e=Io();if(e&&e.length>0)return;let t=process.cwd(),n;try{n=N.relative(t,i).replace(/\\/g,`/`)}catch{n=i}console.warn(`${X} handleCallback() in ${n} has no matching experimentalTriggers in vercel.json. This handler won't receive messages.
Add a trigger to vercel.json:
"${n}": {
"experimentalTriggers": [{ "type": "queue/v2beta", "topic": "your-topic" }]
}`)}}function Xo(e){let t=qo(),n=[];for(let[r,i]of t)(r.includes(`*`)?wo(e,r):r===e)&&n.push(...i);return n}var Zo=50,Qo=5e3,$o=2,es=250,ts=[`PORT`,`NEXT_PORT`,`NEXTJS_PORT`,`NUXT_PORT`,`NITRO_PORT`,`SVELTEKIT_PORT`,`VITE_PORT`,`DEV_PORT`,`npm_config_port`],ns=[`__NEXT_PRIVATE_ORIGIN`,`NUXT_PUBLIC_SITE_URL`,`URL`];function rs(e){return e instanceof Error?e.message:String(e)}function is(e){return e instanceof $a||e instanceof Error&&e.name===`MessageNotFoundError`}function as(e){if(!e)return null;let t=Number.parseInt(e,10);return!Number.isFinite(t)||t<1||t>65535?null:t}function os(e){if(!e)return null;try{let t=new URL(e).port;return as(t)}catch{return null}}function ss(){let e=[],t=new Set,n=n=>{n&&!t.has(n)&&(t.add(n),e.push(n))};for(let e of ts)n(as(process.env[e]));for(let e of ns)n(os(process.env[e]));return e}function cs(e){return new Promise(t=>{let n=Qt.connect({host:`localhost`,port:e}),r=!1,i=e=>{r||(r=!0,n.destroy(),t(e))};n.once(`connect`,()=>i(!0)),n.once(`error`,()=>i(!1)),n.setTimeout(es,()=>i(!1))})}async function ls(e,t,n){let r=0,i=Zo;for(;;)try{await Ao(e,t,n);return}catch(e){if(is(e)&&r<Qo){await new Promise(e=>setTimeout(e,i)),r+=i,i=Math.min(i*$o,Qo-r);continue}throw e}}function us(e){let t=e.replace(/^src\/app\//,`/`).replace(/^src\/pages\//,`/`).replace(/^src\/server\//,`/`).replace(/^src\/routes\//,`/`).replace(/^app\//,`/`).replace(/^pages\//,`/`).replace(/^server\//,`/`).replace(/\/route\.(ts|mts|js|mjs|tsx|jsx)$/,``).replace(/\/\+server\.(ts|mts|js|mjs|tsx|jsx)$/,``).replace(/\.(ts|mts|js|mjs|tsx|jsx)$/,``);return t.startsWith(`/`)||(t=`/`+t),t}function ds(e){return import(e)}async function fs(e,t={}){let n={triedPorts:ss(),listeningPorts:[],unavailablePorts:[],importFailures:[],primeFailures:[]},r=Lo(e);if(r.length===0)return n;let i=t.refreshRegistered===!0;for(let e of n.triedPorts)await cs(e)?n.listeningPorts.push(e):n.unavailablePorts.push(e);for(let t of r){let r=ms(e,t.consumer);if(!r||i){if(!r){let r=N.resolve(process.cwd(),t.filePath);try{await ds(r)}catch(e){n.importFailures.push({filePath:t.filePath,reason:rs(e)})}if(ms(e,t.consumer))continue}for(let r of n.listeningPorts){let i=`http://localhost:${r}${us(t.filePath)}`;try{let r=await fetch(i,{method:`POST`,headers:{"x-vercel-queue-prime":`1`,"x-vercel-queue-prime-file":t.filePath}});try{await r.text()}catch{}if(ms(e,t.consumer))break;n.primeFailures.push({filePath:t.filePath,url:i,reason:`HTTP ${r.status}${r.statusText?` ${r.statusText}`:``}`.trim()})}catch(e){n.primeFailures.push({filePath:t.filePath,url:i,reason:rs(e)})}}}}return n}function ps(e,t,n){let r=t.map(e=>e.filePath),i=n.listeningPorts[0]??n.triedPorts[0],a=i?t.map(e=>`http://localhost:${i}${us(e.filePath)}`):[],o;if(n.triedPorts.length===0)o=`No local dev port detected from env. Set PORT (or NEXT_PORT/NUXT_PORT/VITE_PORT).`;else if(n.listeningPorts.length===0)o=`Detected env ports: [${n.triedPorts.join(`, `)}], but none are listening.`;else{let e=n.unavailablePorts.length>0?` Not listening: [${n.unavailablePorts.join(`, `)}].`:``;o=`Detected env ports: [${n.triedPorts.join(`, `)}]. Listening: [${n.listeningPorts.join(`, `)}].`+e}let s=n.importFailures.length>0?`
Import failures: `+n.importFailures.slice(0,2).map(e=>`${e.filePath} (${e.reason})`).join(`; `):``,c=n.primeFailures.length>0?`
Prime failures: `+n.primeFailures.slice(0,3).map(e=>`${e.url} (${e.reason})`).join(`; `):``;return`${X} No registered handler for topic "${e}". vercel.json maps this topic to [${r.join(`, `)}] but auto-loading failed.
${o}${s}${c}
Ensure your dev server is running, set PORT if needed, and confirm mapped route files call handleCallback()/handleNodeCallback() at module scope.
`+(a.length>0?`Try opening: ${a.join(` or `)}`:`Set PORT (or NEXT_PORT/NUXT_PORT/VITE_PORT) and try sending again.`)}function ms(e,t){return Xo(e).some(e=>e.consumerGroup===t)}var hs=10,gs=2,_s=10,vs=86400;function ys(e,t){let n=Math.min(Math.max(t,0),hs);console.log(`${X} ${No} Scheduling re-delivery in ${n}s: topic="${e.topicName}" consumer="${e.consumerGroup}" messageId="${e.messageId}"`),setTimeout(async()=>{let t=e.deliveryCount+1,n=new Date(e.createdAt.getTime()+e.retentionSeconds*1e3);if(Date.now()>=n.getTime()){console.log(`${X} Message expired, stopping retries: topic="${e.topicName}" messageId="${e.messageId}"`);return}if(t>_s){console.log(`${X} Max re-deliveries (${_s}) reached: topic="${e.topicName}" messageId="${e.messageId}"`);return}let r={messageId:e.messageId,deliveryCount:t,createdAt:e.createdAt,expiresAt:n,topicName:e.topicName,consumerGroup:e.consumerGroup,region:e.region};console.log(`${X} Re-delivering: topic="${e.topicName}" consumer="${e.consumerGroup}" messageId="${e.messageId}" deliveryCount=${t}`);let i=!0,a=null,o=!1;try{await e.handler(e.payload,r)}catch(t){if(i=!1,e.retry){let n;try{n=e.retry(t,r)}catch(e){console.warn(`${X} retry handler threw:`,e)}n&&`afterSeconds`in n?a=n.afterSeconds:n&&`acknowledge`in n&&(o=!0)}o||console.error(`${X} ${Mo} Handler error on re-delivery: topic="${e.topicName}" messageId="${e.messageId}"`,t)}if(i)console.log(`${X} ${jo} Message processed on re-delivery: topic="${e.topicName}" consumer="${e.consumerGroup}" messageId="${e.messageId}"`);else if(o)console.log(`${X} ${jo} Message acknowledged (will not retry): topic="${e.topicName}" consumer="${e.consumerGroup}" messageId="${e.messageId}"`);else{let n=a??e.defaultRetryDelayS;ys({...e,deliveryCount:t},n)}},n*1e3)}function bs(e,t,n,r,i){if(r&&r>0){console.log(`${X} Message sent with delay: topic="${e}" messageId="${t}" delay=${r}s`),setTimeout(()=>{bs(e,t,n,void 0,i)},r*1e3);return}console.log(`${X} Message sent: topic="${e}" messageId="${t}"`),(async()=>{let r=Xo(e),a=null;if(r.length>0?(await fs(e,{refreshRegistered:!0}),r=Xo(e)):(a=await fs(e),r=Xo(e)),r.length===0){let t=Lo(e);if(t.length>0){let n=a??{triedPorts:ss(),listeningPorts:[],unavailablePorts:[],importFailures:[],primeFailures:[]};console.warn(ps(e,t,n))}else console.warn(`${X} No registered handler for topic "${e}".
Ensure vercel.json has a matching experimentalTriggers entry and the route file calls handleCallback().`);return}let o=r.map(e=>e.consumerGroup);console.log(`${X} Invoking handlers for topic="${e}" messageId="${t}" \u2192 consumers: [${o.join(`, `)}]`);let s=i??vs;for(let i of r){let r,a=new Date,o=1,c=!0,l=null,u=!1,d=async(e,t)=>{r=e,a=t.createdAt,o=t.deliveryCount;try{await i.handler(e,t)}catch(e){throw c=!1,e}},f=i.options?.retry?(e,t)=>{let n=i.options.retry(e,t);return n&&`afterSeconds`in n?l=n.afterSeconds:n&&`acknowledge`in n&&(u=!0),n}:void 0,p={queueName:e,consumerGroup:i.consumerGroup,messageId:t,region:n},m={client:i.client,visibilityTimeoutSeconds:i.options?.visibilityTimeoutSeconds,retry:f},h=Math.min(Ro(e,i.consumerGroup)??gs,hs),g=()=>({handler:i.handler,retry:i.options?.retry,payload:r,topicName:e,consumerGroup:i.consumerGroup,messageId:t,region:n,createdAt:a,retentionSeconds:s,deliveryCount:o,defaultRetryDelayS:h});try{if(await ls(d,p,m),c)console.log(`${X} ${jo} Message processed: topic="${e}" consumer="${i.consumerGroup}" messageId="${t}"`);else if(u)console.log(`${X} ${jo} Message acknowledged (will not retry): topic="${e}" consumer="${i.consumerGroup}" messageId="${t}"`);else if(l!==null){let e=Math.min(l,hs);ys(g(),e)}}catch(n){console.error(`${X} ${Mo} Handler failed: topic="${e}" consumer="${i.consumerGroup}" messageId="${t}"`,n),c||ys(g(),h)}}})()}function xs(){let e=globalThis;delete e[Po],delete e[Ko]}(process.env.NODE_ENV===`test`||process.env.VITEST)&&(globalThis.__clearDevState=xs,globalThis.__filePathToConsumerGroup=Fo,globalThis.__filePathToUrlPath=us,globalThis.__matchesFunctionsPattern=Bo,globalThis.__stripSrcPrefix=zo);var Ss=new TextEncoder;function Cs(e){let t=`vqs-${Kt()}`,n=null,r=0,i,a;function o(t){return i??=Promise.resolve().then(async()=>{await Promise.allSettled([n?.cancel(t),...e.slice(r).map(async e=>{let n=e.body();Buffer.isBuffer(n)||await n.cancel(t)})]),await c.return(void 0)}),i}async function*s(){for(let[i,a]of e.entries()){let e=Array.from(a.headers).map(([e,t])=>`${e}: ${t}\r
`).join(``);yield Ss.encode(`--${t}\r
${e}\r
`),r=i+1;let o=a.body();if(Buffer.isBuffer(o))yield o;else{n=o.getReader();try{for(;;){let{done:e,value:t}=await n.read();if(e)break;yield t}}finally{n.releaseLock(),n=null}}yield Ss.encode(`\r
`)}yield Ss.encode(`--${t}--\r
`)}let c=s();return{contentType:`multipart/mixed; boundary=${t}`,body:new ReadableStream({start(e){a=e},async pull(e){try{let{done:t,value:n}=await c.next();t?e.close():e.enqueue(n)}catch(t){await o(t),e.error(t)}},cancel:o}),cancel:async e=>{a.error(e),await o(e)}}}function ws(e,t){let n={...e?.metadata,...t?.metadata};return{isEnabled:t?.isEnabled??e?.isEnabled??!0,tracer:e?.tracer,metadata:Object.keys(n).length>0?n:void 0}}var Ts;function Es(){return Ts||=import(`../../@opentelemetry/api/index.js`).then(e=>e,()=>null),Ts}function Ds(){let e=process.env.VERCEL_QUEUE_TRACE_PROPAGATION?.toLowerCase();return e===`off`||e===`0`||e===`false`}var Os=[`traceparent`,`tracestate`,`baggage`];async function ks(e,t){if(Ds()||t&&!t.isEnabled)return;let n=await Es();if(n)try{let t={};n.propagation.inject(n.context.active(),t);for(let n of Os){let r=t[n];r!==void 0&&e.set(n,r)}}catch{}}function As(e,t,n){try{t.setStatus({code:e.SpanStatusCode.ERROR,message:n instanceof Error?n.message:String(n)})}catch{}}function js(e){try{e.end()}catch{}}async function Ms(e,t,n){if(Ds()||n&&!n.isEnabled)return t(null);let r=await Es();if(!r)return t(null);let i=null;try{let t=n?.tracer??r.trace.getTracer(`@vercel/queue`),a={"messaging.system":`vercel-queue`,"messaging.destination.name":e};if(n?.metadata)for(let[e,t]of Object.entries(n.metadata))a[`vqs.metadata.${e}`]=t;let o=t.startSpan(`vqs.send`,{kind:r.SpanKind.PRODUCER,attributes:a});i={span:o,ctx:r.trace.setSpan(r.context.active(),o)}}catch{}if(!i)return t(null);let{span:a,ctx:o}=i;try{return await r.context.with(o,()=>t({setMessageId(e){try{a.setAttribute(`messaging.message.id`,e)}catch{}}}))}catch(e){throw As(r,a,e),e}finally{js(a)}}var Ns=`x-vercel-queue-traceparent`,Ps=`x-vercel-queue-tracestate`,Fs=`x-vercel-queue-baggage`;async function Is(e,t,n){if(Ds()||n&&!n.isEnabled)return t();let r=await Es();if(!r)return t();let i=null;try{let t=Ls(r,Rs(e)),a=n?.tracer??r.trace.getTracer(`@vercel/queue`),o={"messaging.system":`vercel-queue`,"messaging.operation":`process`};if(n?.metadata)for(let[e,t]of Object.entries(n.metadata))o[`vqs.metadata.${e}`]=t;let s=a.startSpan(`vqs.process`,{kind:r.SpanKind.CONSUMER,attributes:o,links:t});i={span:s,ctx:r.trace.setSpan(r.context.active(),s)}}catch{}if(!i)return t();let{span:a,ctx:o}=i;try{return await r.context.with(o,t)}catch(e){throw As(r,a,e),e}finally{js(a)}}function Ls(e,t){let n=t[Ns];if(!n)return[];let r={traceparent:n},i=t[Ps];i&&(r.tracestate=i);let a=t[Fs];a&&(r.baggage=a);let o=e.propagation.extract(e.ROOT_CONTEXT,r),s=e.trace.getSpanContext(o);return!s||!e.trace.isSpanContextValid(s)?[]:[{context:s}]}function Rs(e){let t={};if(e instanceof Headers)return e.forEach((e,n)=>{t[n.toLowerCase()]=e}),t;for(let[n,r]of Object.entries(e)){let e=Array.isArray(r)?r[0]:r;e!==void 0&&(t[n.toLowerCase()]=e)}return t}function zs(){return process.env.VERCEL_QUEUE_DEBUG===`1`||process.env.VERCEL_QUEUE_DEBUG===`true`}async function Bs(e){let t=e.getReader();try{for(;;){let{done:e}=await t.read();if(e)break}}finally{t.releaseLock()}}function Vs(e){if(!e)return;let t=Number(e);if(Number.isFinite(t)&&t>=0)return t;let n=Date.parse(e);if(!Number.isNaN(n))return Math.max(0,(n-Date.now())/1e3)}function Hs(e,t,n,r,i=`Invalid parameters`,a){throw e===400?new ao(n||i):e===429?new no(n||`Too many requests: ${r}`,Vs(a)):e===401?new ro(n||void 0):e===403?new io(n||void 0):e>=500?new oo(n||`Server error: ${e} ${t}`):Error(n||`Failed to ${r}: ${e} ${t}`)}function Us(e){let t=e.get(`Vqs-Message-Id`),n=e.get(`Vqs-Delivery-Count`)||`0`,r=e.get(`Vqs-Timestamp`),i=e.get(`Content-Type`)||`application/octet-stream`,a=e.get(`Vqs-Receipt-Handle`),o=e.get(`Vqs-Expires-At`);if(!t||!r||!a)return null;let s=parseInt(n,10);return Number.isNaN(s)?null:{messageId:t,deliveryCount:s,createdAt:new Date(r),expiresAt:o?new Date(o):void 0,contentType:i,receiptHandle:a}}var Ws=/^[a-z]{2,5}[0-9]{1,2}$/;function Gs(e){if(!Ws.test(e))throw Error(`Invalid region code: ${JSON.stringify(e)}. Region must match the pattern /^[a-z]{2,5}[0-9]{1,2}$/ (e.g. "iad1", "lhr1").`)}var Ks=e=>new URL(`https://${e}.vercel-queue.com`);function qs(e,t){return(t??Ks)(e)}var Js=`/api/v3/topic`,Ys=class e{baseUrl;customHeaders;providedToken;resolvedDeploymentId;pinSends;explicitlyUnpinned;transport;region;baseUrlResolver;dispatcher;telemetry;constructor(e){Gs(e.region),this.region=e.region,this.baseUrlResolver=e.resolveBaseUrl,this.baseUrl=qs(this.region,this.baseUrlResolver),this.customHeaders=e.headers||{},this.providedToken=e.token,this.transport=e.transport||new Qa,this.dispatcher=e.dispatcher,this.telemetry=e.telemetry,e.deploymentId===null?(this.pinSends=!1,this.explicitlyUnpinned=!0):(this.resolvedDeploymentId=e.deploymentId||process.env.VERCEL_DEPLOYMENT_ID,this.pinSends=!0,this.explicitlyUnpinned=!1)}withRegion(t){return new e({region:t,resolveBaseUrl:this.baseUrlResolver,token:this.providedToken,headers:{...this.customHeaders},deploymentId:this.explicitlyUnpinned?null:this.resolvedDeploymentId,transport:this.transport,dispatcher:this.dispatcher,telemetry:this.telemetry})}getRegion(){return this.region}getTransport(){return this.transport}getTelemetry(){return this.telemetry}requireDeploymentId(){if(!(Z()||this.explicitlyUnpinned||this.resolvedDeploymentId))throw Error(`No deployment ID available. VERCEL_DEPLOYMENT_ID is not set.
This usually means the code is running outside a Vercel deployment (e.g. during build or in a non-Vercel environment).
To fix this, create a client with an explicit deploymentId:
new QueueClient({ deploymentId: "dpl_xxx" })
Or explicitly opt out of deployment pinning:
new QueueClient({ deploymentId: null })`)}getSendDeploymentId(){if(!Z())return this.requireDeploymentId(),this.pinSends?this.resolvedDeploymentId:void 0}getConsumeDeploymentId(){if(!Z())return this.requireDeploymentId(),this.resolvedDeploymentId}async getToken(){if(this.providedToken)return this.providedToken;try{return await(0,Xa.getVercelOidcToken)()}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(Z()?`Failed to get OIDC token for local development.
To fix this, pull your environment variables with Vercel CLI:
\`vercel env pull\`
Cause: ${t}`:`Failed to get OIDC token. This usually means the function is running outside of a Vercel Function environment.
To fix this, either:
- Deploy to Vercel (OIDC tokens are provisioned automatically)
- Provide a token explicitly: \`new QueueClient({ token: '...' })\`
Cause: ${t}`)}}buildUrl(e,...t){let n=encodeURIComponent(e),r=t.map(e=>encodeURIComponent(e)),i=r.length>0?`/`+r.join(`/`):``,a=this.baseUrl.pathname.replace(/\/+$/,``);return`${this.baseUrl.origin}${a}${Js}/${n}${i}`}async fetch(e,t){let n=t.method||`GET`;if(zs()){let r={method:n,url:e,headers:t.headers},i=t.body;i!=null&&(i instanceof ArrayBuffer||i instanceof Uint8Array?r.bodySize=i.byteLength:typeof i==`string`?r.bodySize=i.length:r.bodyType=typeof i),console.debug(`[VQS Debug] Request:`,JSON.stringify(r,null,2))}t.headers.set(`User-Agent`,`@vercel/queue/0.5.1`),t.headers.set(`Vqs-Client-Ts`,new Date().toISOString());let r=this.dispatcher?{...t,dispatcher:this.dispatcher}:t,i=await fetch(e,r);if(zs()){let t={method:n,url:e,status:i.status,statusText:i.statusText,headers:i.headers};console.debug(`[VQS Debug] Response:`,JSON.stringify(t,null,2))}return i}async sendMessage(e){let t=this.transport,{queueName:n,payload:r,telemetry:i}=e,a=this.buildMessageHeaders(e,t.contentType);a.set(`Authorization`,`Bearer ${await this.getToken()}`);let o=this.getSendDeploymentId();o&&a.set(`Vqs-Deployment-Id`,o);let s=t.serialize(r),c=Buffer.isBuffer(s)?new Uint8Array(s):s,l=ws(this.telemetry,i);return Ms(n,async e=>{await ks(a,l);let t=await this.fetch(this.buildUrl(n),{method:`POST`,body:c,headers:a,...c instanceof ReadableStream&&{duplex:`half`}});if(!t.ok){let e=await t.text();if(t.status===502&&t.headers.get(`Vqs-Error-Code`)===`consumer_discovery_failed`)throw new lo(e||`Consumer discovery failed`,o);if(t.status===503)throw new uo(e||`Consumer registry not configured`);Hs(t.status,t.statusText,e,`send message`)}if(t.status===202)return await t.text(),{messageId:null};let r=await t.json();return e&&r.messageId&&e.setMessageId(r.messageId),r},l)}async sendBatch(e){let t=this.transport,{queueName:n,messages:r,telemetry:i}=e;if(r.length<1||r.length>100)throw RangeError(`Batch size must be between 1 and 100 messages`);let a=new Headers(this.customHeaders);a.set(`Authorization`,`Bearer ${await this.getToken()}`);let o=this.getSendDeploymentId();o&&a.set(`Vqs-Deployment-Id`,o);let s=Cs(r.map(e=>({headers:this.buildMessageHeaders(e,t.contentType),body:()=>t.serialize(e.payload)})));a.set(`Content-Type`,s.contentType);let c=ws(this.telemetry,i);return Ms(n,async()=>{try{await ks(a,c);let e=await this.fetch(this.buildUrl(n,`batch`),{method:`POST`,body:s.body,headers:a,duplex:`half`});if(!e.ok){let t=await e.text();if(e.status===503)throw new uo(t||`Consumer registry not configured`);Hs(e.status,e.statusText,t,`send message batch`)}let{results:t}=await e.json();if(t.length!==r.length)throw new oo(`Invalid batch response: expected ${r.length} results, received ${t.length}`);return t}catch(e){throw await s.cancel(e),e}},c)}buildMessageHeaders(e,t){let n=new Headers(this.customHeaders);n.delete(`Authorization`);for(let[t,r]of Object.entries(e.headers??{})){let e=t.toLowerCase();r!==void 0&&e!==`authorization`&&e!==`content-type`&&!e.startsWith(`vqs-`)&&n.set(t,r)}return n.set(`Content-Type`,t),e.idempotencyKey&&n.set(`Vqs-Idempotency-Key`,e.idempotencyKey),e.retentionSeconds!==void 0&&n.set(`Vqs-Retention-Seconds`,e.retentionSeconds.toString()),e.delaySeconds!==void 0&&n.set(`Vqs-Delay-Seconds`,e.delaySeconds.toString()),n}async*receiveMessages(e){let t=this.transport,{queueName:n,consumerGroup:r,visibilityTimeoutSeconds:i,limit:a}=e;if(a!==void 0&&(a<1||a>10))throw new so(a);let o=new Headers({Authorization:`Bearer ${await this.getToken()}`,Accept:`multipart/mixed`,...this.customHeaders});i!==void 0&&o.set(`Vqs-Visibility-Timeout-Seconds`,i.toString()),a!==void 0&&o.set(`Vqs-Max-Messages`,a.toString());let s=this.getConsumeDeploymentId();s&&o.set(`Vqs-Deployment-Id`,s);let c=await this.fetch(this.buildUrl(n,`consumer`,r),{method:`POST`,headers:o});if(c.status===204){await c.text();return}if(!c.ok){let e=await c.text();Hs(c.status,c.statusText,e,`receive messages`)}for await(let e of Kn(c))try{let n=Us(e.headers);if(!n){console.warn(`Missing required queue headers in multipart part`),await Bs(e.payload);continue}let r=await t.deserialize(e.payload);yield{...n,payload:r}}catch(t){console.warn(`Failed to process multipart message:`,t),await Bs(e.payload)}}async receiveMessageById(e){let t=this.transport,{queueName:n,consumerGroup:r,messageId:i,visibilityTimeoutSeconds:a}=e,o=new Headers({Authorization:`Bearer ${await this.getToken()}`,Accept:`multipart/mixed`,...this.customHeaders});a!==void 0&&o.set(`Vqs-Visibility-Timeout-Seconds`,a.toString());let s=this.getConsumeDeploymentId();s&&o.set(`Vqs-Deployment-Id`,s);let c=await this.fetch(this.buildUrl(n,`consumer`,r,`id`,i),{method:`POST`,headers:o});if(!c.ok){let e=await c.text();if(c.status===404)throw new $a(i);if(c.status===409){let t={};try{t=JSON.parse(e)}catch{}throw t.originalMessageId?new eo(i,`This message was a duplicate - use originalMessageId: ${t.originalMessageId}`):new eo(i)}if(c.status===410)throw new co(i);Hs(c.status,c.statusText,e,`receive message by ID`)}for await(let e of Kn(c)){let n=Us(e.headers);if(!n)throw await Bs(e.payload),new to(i,`Missing required queue headers in response`);let r=await t.deserialize(e.payload);return{message:{...n,payload:r}}}throw new $a(i)}async acknowledgeMessage(e){let{queueName:t,consumerGroup:n,receiptHandle:r}=e,i=new Headers({Authorization:`Bearer ${await this.getToken()}`,...this.customHeaders}),a=this.getConsumeDeploymentId();a&&i.set(`Vqs-Deployment-Id`,a);let o=await this.fetch(this.buildUrl(t,`consumer`,n,`lease`,r),{method:`DELETE`,headers:i});if(!o.ok){let e=await o.text();if(o.status===404)throw new $a(r);if(o.status===409)throw new eo(r,e||`Invalid receipt handle, message not in correct state, or already processed`);Hs(o.status,o.statusText,e,`acknowledge message`,`Missing or invalid receipt handle`,o.headers?.get(`Retry-After`)??null)}return await o.text(),{acknowledged:!0}}async changeVisibility(e){let{queueName:t,consumerGroup:n,receiptHandle:r,visibilityTimeoutSeconds:i}=e,a=new Headers({Authorization:`Bearer ${await this.getToken()}`,"Content-Type":`application/json`,...this.customHeaders}),o=this.getConsumeDeploymentId();o&&a.set(`Vqs-Deployment-Id`,o);let s=await this.fetch(this.buildUrl(t,`consumer`,n,`lease`,r),{method:`PATCH`,headers:a,body:JSON.stringify({visibilityTimeoutSeconds:i})});if(!s.ok){let e=await s.text();if(s.status===404)throw new $a(r);if(s.status===409)throw new eo(r,e||`Invalid receipt handle, message not in correct state, or already processed`);Hs(s.status,s.statusText,e,`change visibility`,`Missing receipt handle or invalid visibility timeout`,s.headers?.get(`Retry-After`)??null)}return await s.text(),{success:!0}}},Xs=new WeakMap,Zs=Symbol.for(`@vercel/queue.apiClient`);function Qs(e,t){Xs.set(e,t),Object.defineProperty(e,Zs,{value:t,writable:!1,enumerable:!1,configurable:!1})}function $s(e){let t=Xs.get(e);if(t)return t;let n=e[Zs];if(typeof n==`object`&&n){let t=n;return Xs.set(e,t),t}throw Error(`QueueClient not initialized. This may happen when multiple bundled copies of @vercel/queue are loaded in local dev.`)}function ec(e){return`request`in e?e.request:e}function tc(e){return $s(e)}var nc=`iad1`;function rc(e){return e||process.env.VERCEL_REGION||(Z()||console.warn(`[QueueClient] Region not detected \u2014 defaulting to "${nc}". On Vercel this is set automatically via VERCEL_REGION. To silence this warning, pass region explicitly: new QueueClient({ region: "iad1" })`),nc)}var ic=class{constructor(e={}){let t=rc(e.region);Qs(this,new Ys({...e,region:t}))}send=async(e,t,n)=>{let r=$s(this),i=await r.sendMessage({queueName:e,payload:t,idempotencyKey:n?.idempotencyKey,retentionSeconds:n?.retentionSeconds,delaySeconds:n?.delaySeconds,headers:n?.headers,telemetry:n?.telemetry});return i.messageId&&Z()&&bs(e,i.messageId,r.getRegion(),n?.delaySeconds,n?.retentionSeconds),{messageId:i.messageId}};experimental_sendBatch=async(e,t,n)=>{let r=$s(this),i=await r.sendBatch({queueName:e,messages:t,telemetry:n?.telemetry});if(!Z())return i;let a=r.getRegion();for(let[n,r]of i.entries()){if(r.status!==`sent`)continue;let i=t[n];Zt(i),bs(e,r.messageId,a,i.delaySeconds,i.retentionSeconds)}return i};handleCallback=(e,t)=>{Z()&&Yo(e,this,t);let n=ws($s(this).getTelemetry?.());return async r=>{let i=ec(r);if(Z()&&i.headers.get(`x-vercel-queue-prime`)===`1`){let n=i.headers.get(`x-vercel-queue-prime-file`);return n&&Yo(e,this,t,n),Response.json({status:`primed`})}try{let r=await ko(i);return await Is(i.headers,()=>Ao(e,r,{client:this,visibilityTimeoutSeconds:t?.visibilityTimeoutSeconds,retry:t?.retry}),n),Response.json({status:`success`})}catch(e){return console.error(`Queue callback error:`,e),e instanceof Error&&(e.message.includes(`Invalid content type`)||e.message.includes(`Invalid CloudEvent`)||e.message.includes(`Missing required CloudEvent`)||e.message.includes(`Failed to parse CloudEvent`)||e.message.includes(`Binary mode callback`))?Response.json({error:e.message},{status:400}):Response.json({error:`Failed to process queue message`},{status:500})}}};handleNodeCallback=(e,t)=>{Z()&&Yo(e,this,t);let n=ws($s(this).getTelemetry?.());return async(r,i)=>{if(r.method!==`POST`){i.status(200).end();return}let a=r.headers[`x-vercel-queue-prime`];if(Z()&&a===`1`){let n=r.headers[`x-vercel-queue-prime-file`],a=Array.isArray(n)?n[0]:n;a&&Yo(e,this,t,a),i.status(200).json({status:`primed`});return}try{let a=Oo(r.body,r.headers);await Is(r.headers,()=>Ao(e,a,{client:this,visibilityTimeoutSeconds:t?.visibilityTimeoutSeconds,retry:t?.retry}),n),i.status(200).json({status:`success`})}catch(e){if(console.error(`Queue callback error:`,e),e instanceof Error&&(e.message.includes(`Invalid content type`)||e.message.includes(`Invalid CloudEvent`)||e.message.includes(`Missing required CloudEvent`)||e.message.includes(`Failed to parse CloudEvent`)||e.message.includes(`Binary mode callback`))){i.status(400).json({error:e.message});return}i.status(500).json({error:`Failed to process queue message`})}}}};function ac(e){return`${e} requires VERCEL_DEPLOYMENT_ID, which Vercel sets in every deployment, so this process is not running inside one. The Vercel world is only selected automatically when that variable is set, so it was requested explicitly here — most often by WORKFLOW_TARGET_WORLD=vercel in a process that is not a deployment, such as a production server started locally or in CI. To use the local filesystem world instead, set WORKFLOW_TARGET_WORLD=local or unset it.`}function oc(){let e=process.env.VERCEL_QUEUE_TRACE_PROPAGATION?.toLowerCase();return e===`off`||e===`0`||e===`false`}function sc(e){return e===void 0?{messageId:null,error:`Queue batch returned no result for this message`,retryable:!0}:e.status===`failed`?{messageId:null,error:e.error,retryable:e.retryable}:{messageId:e.messageId?Se.parse(e.messageId):null}}var cc=class{contentType=`application/cbor`;serialize(e){return Buffer.from(Pt(e))}async deserialize(e){let t=[],n=e.getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;r&&t.push(r)}return Ct(Buffer.concat(t))}},lc=class{contentType=`application/json`;serialize(e){return Buffer.from(JSON.stringify(e))}async deserialize(e){let t=[],n=e.getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;r&&t.push(r)}return JSON.parse(Buffer.concat(t).toString())}},uc=class{contentType=`application/cbor`;serialize(e){return Buffer.from(Pt(e))}async deserialize(e){let t=[],n=e.getReader();for(;;){let{done:e,value:r}=await n.read();if(e)break;r&&t.push(r)}let r=Buffer.concat(t);try{return Ct(r)}catch{return JSON.parse(r.toString())}}};const dc=new Jt,fc=D(o({payload:Ce,queueName:le,deploymentId:a().optional()})),pc=Number(process.env.VERCEL_QUEUE_MAX_DELAY_SECONDS||82800);function mc(e){if(typeof e!=`object`||!e)return;let t=e.retryAfter;if(!(typeof t!=`number`||!Number.isFinite(t)||t<=0))return Math.min(Math.ceil(t),900)}function hc(e,t){let n=Math.min(Math.max(1,2**(t-1)),900),r=Math.floor(Math.random()*(Math.ceil(n*.25)+1)),i=Math.max(1,n-r);return Math.max(i,mc(e)??1)}function gc(e){if(`runId`in e&&typeof e.runId==`string`)return e.runId}const _c=(e,t)=>{let n;return{open(){e&&ht()&&(n=import(`../../_chunks/workflow/ws-transport-BpTMh40s.js`).then(({openWsChannel:n})=>n(e,t)).catch(()=>void 0))},async close(){(await n)?.()}}};function vc(e){if(!e)return;let t=e.startsWith(`wrun_`)?e.slice(5):e;try{let e=Ve(t);return!e.tagged||e.regionId===Ie.unknown?void 0:e.region??void 0}catch{return}}function yc(e,t){if(Fe(t?.region))return t.region;let n=vc(gc(e));if(n)return n;let r=process.env.VERCEL_REGION;return Fe(r)?r:`iad1`}function bc(e){let t={};return`runId`in e&&typeof e.runId==`string`&&(t[`x-vercel-workflow-run-id`]=e.runId),`stepId`in e&&typeof e.stepId==`string`&&(t[`x-vercel-workflow-step-id`]=e.stepId),Object.keys(t).length>0?t:void 0}const xc=/^__([a-z][a-z0-9]*_)?wkf_workflow_/,Sc=ge(`@workflow/world-vercel//queueLogLatches`,1,()=>({loggedSequentialReplays:!1}));function Cc(){return process.env.WORKFLOW_SEQUENTIAL_REPLAYS===`1`}function wc(e,t){return!Cc()||!xc.test(e)?e:(Sc.loggedSequentialReplays||(Sc.loggedSequentialReplays=!0,console.warn(`[workflow] WORKFLOW_SEQUENTIAL_REPLAYS=1: routing flow messages to per-run queue topics`)),`__healthCheck`in t&&typeof t.correlationId==`string`?`${e}_${t.correlationId}`:`runId`in t&&typeof t.runId==`string`?`stepId`in t&&typeof t.stepId==`string`?`${e}_${t.runId}_${t.stepId}`:`${e}_${t.runId}`:e)}function Tc(e){let{baseUrl:t,usingProxy:n}=vt(e),r=Et(e,{usingProxy:n}),i=new cc,a=new lc,o=new uc,s={dispatcher:at(e),transport:o,...n&&{resolveBaseUrl:()=>new URL(`${t}/queues-proxy`),token:e?.token},headers:Object.fromEntries(r.entries())},c=(e,t,n)=>{let r=n?.deploymentId??process.env.VERCEL_DEPLOYMENT_ID;if(!r)throw Error(`${ac(`Enqueuing a workflow message`)} Callers outside a deployment can instead pass an explicit deploymentId in options.`);return{deploymentId:r,useCbor:(n?.specVersion??7)>=3,region:yc(t,n),topic:wc(e,t).replace(/[^A-Za-z0-9-_]/g,`-`),wrapper:{payload:t,queueName:e,deploymentId:n?.deploymentId},sendOptions:{idempotencyKey:n?.idempotencyKey,delaySeconds:n?.delaySeconds,headers:{...bc(t),...n?.headers}}}},l=e=>new ic({...s,...n&&{headers:{...s.headers,"x-vercel-queue-region":e.region}},region:e.region,deploymentId:e.deploymentId,transport:e.useCbor?i:a}),u=async(e,t,n)=>{let r=c(e,t,n),{messageId:i}=await l(r).send(r.topic,r.wrapper,r.sendOptions);return{messageId:i?Se.parse(i):null}};return{queue:u,queueBatch:async(e,t)=>{let n=Array(t.length);if(t.length===0)return n;let r=oc()?{}:await Mt(),i=new Map;for(let[n,a]of t.entries()){let t=c(e,a.message,a.opts),o=`${t.region} ${t.deploymentId} ${t.useCbor} ${t.topic}`,s=i.get(o)??{route:t,entries:[]};s.entries.push({index:n,topic:t.topic,message:{payload:t.wrapper,...t.sendOptions,headers:{...t.sendOptions.headers,...r}}}),i.set(o,s)}return await Promise.all([...i.values()].map(async({route:e,entries:t})=>{let r=l(e);for(let e=0;e<t.length;e+=100){let i=t.slice(e,e+100),a=await r.experimental_sendBatch(i[0].topic,i.map(e=>e.message));for(let[e,t]of i.entries())n[t.index]=sc(a[e])}})),n},createQueueHandler:(t,n)=>{let r=new ic(s).handleCallback(async(t,r)=>{if(!t||!r)return;let i=dc.getStore(),{payload:a,queueName:o,deploymentId:s}=fc.parse(t),c=_c(gc(a),e);c.open();try{let e=await n(a,{queueName:o,messageId:Se.parse(r.messageId),attempt:r.deliveryCount,requestId:i});if(!(`invoke`in a&&a.invoke===!0)&&typeof e==`object`&&e&&`timeoutSeconds`in e&&typeof e.timeoutSeconds==`number`){let t=e.timeoutSeconds>0?Math.min(e.timeoutSeconds,pc):void 0;await u(o,a,{deploymentId:s,delaySeconds:t})}}finally{await c.close()}},{retry:(e,{messageId:t,deliveryCount:n})=>{let r=hc(e,n);return console.error(`[workflow] Queue handler failed for message "${t}" on delivery attempt ${n}; retrying in ${r}s:`,e),{afterSeconds:r}}});return async e=>{let t=e.headers.get(`x-vercel-id`)?.trim()||void 0;return dc.run(t,()=>r(e))}},getDeploymentId:async()=>{let e=process.env.VERCEL_DEPLOYMENT_ID;if(!e)throw Error(ac(`Starting a workflow run`));return e},isDeploymentUnavailableError:e=>e instanceof lo}}var Ec=gt();const Dc=D(o({id:a()}));async function Oc(e){if(e?.token)return e.token;if(process.env.VERCEL===`1`){let e=await(0,Ec.getVercelOidcToken)().catch(()=>null);if(e)return e}return Ge(e)}function kc(e){return async function(){let t=process.env.VERCEL_DEPLOYMENT_ID;if(!t)throw Error(ac(`Resolving the latest deployment for deploymentId: 'latest'`));let n=await Oc(e);if(!n)throw Error(`Cannot resolve latest deployment: no OIDC token or VERCEL_TOKEN available`);let r=e?.projectConfig?.teamId,i=r?`?${new URLSearchParams({teamId:r})}`:``,a=`https://api.vercel.com/v1/workflow/resolve-latest-deployment/${encodeURIComponent(t)}${i}`,o=await(await A({method:`GET`,url:a,headers:new Headers({Authorization:`Bearer ${n}`}),dispatcher:dt(e),peerService:`vercel-api`,timeoutMs:null,buildError:async e=>{let n;try{n=await e.text()}catch{n=`<unable to read response body>`}let r=e.status===404?". The deployment exists but was not visible to the identity this request authenticated as, which means the request resolved to a different team. Set the World's `projectConfig.teamId` to scope it explicitly.":``;return Error(`Failed to resolve latest deployment for ${t}: HTTP ${e.status} ${e.statusText}${n?` — ${n}`:``}${r}`)}})).json(),s=Dc.safeParse(o);if(!s.success)throw Error(`Invalid response from Vercel API: expected { id: string }. Zod error: ${s.error.message}`);return s.data.id}}var Ac=class extends Error{error;constructor(e){super(`Replay event observer failed`,{cause:e}),this.error=e,this.name=`ReplayEventObserverError`}};const jc={run_created:{retryable:!0,reason:`conditional create → 409 if exists`},step_created:{retryable:!0,reason:`conditional create → 409 if exists`},wait_created:{retryable:!0,reason:`conditional create → 409 if exists`},hook_created:{retryable:!0,reason:`transactional token uniqueness → 409 if exists`},run_started:{retryable:!0,reason:`early-returns if already running, no duplicate row`},run_completed:{retryable:!0,reason:`terminal-state guard → 409, no duplicate row`},run_failed:{retryable:!0,reason:`terminal-state guard → 409, no duplicate row`},run_cancelled:{retryable:!0,reason:`terminal-state guard → 409, no duplicate row`},step_completed:{retryable:!0,reason:`terminal-state guard → 409, no duplicate row`},step_failed:{retryable:!0,reason:`terminal-state guard → 409, no duplicate row`},wait_completed:{retryable:!0,reason:`waiting-state guard → 409, no duplicate row`},hook_disposed:{retryable:!0,reason:`conditional delete (exists) → 409, no duplicate row`},attr_set:{retryable:!0,reason:`correlationId constraint reuses eventId (idempotent replay)`},step_started:{retryable:!1,reason:`unconditional attempt increment → a retry double-counts attempts`},step_retrying:{retryable:!1,reason:`no duplicate guard → a retry appends a second event row`},hook_received:{retryable:!1,reason:`no server guard → a retry duplicates the row / re-delivers payload. EXCEPTION: the atomic lazy-resume shape (resumeId + digest) is deduplicated server-side by the (runId, resumeId) claim, so those writes opt in via withEventPostRetry({ idempotentHookResume })`},hook_conflict:{retryable:!1,reason:`server-originated; never POSTed by the SDK`},noop:{retryable:!1,reason:`server-originated; never POSTed by the SDK`}},Mc=new Set([`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`ENETDOWN`,`ENETUNREACH`,`EHOSTDOWN`,`EHOSTUNREACH`,`EPIPE`,`ETIMEDOUT`,`UND_ERR_SOCKET`,`UND_ERR_REQ_RETRY`,`UND_ERR_CONNECT_TIMEOUT`,`UND_ERR_HEADERS_TIMEOUT`,`UND_ERR_BODY_TIMEOUT`,`TimeoutError`,`RequestRetryError`]);function Nc(e,t=0){if(t>5||typeof e!=`object`||!e)return[];let n=[],r=e;return typeof r.code==`string`&&n.push(r.code),typeof r.name==`string`&&n.push(r.name),r.cause&&n.push(...Nc(r.cause,t+1)),n}function Pc(e){if(e instanceof Ac||je.is(e)||ke.is(e)||Pe.is(e)||Ne.is(e))return!1;if(O.is(e)||k.is(e)){if(e.code===`PARSE_ERROR`||e.code===`TRANSPORT`)return!0;if(typeof e.status==`number`)return e.status>=500&&e.status<=599;if(e.code===`STREAM_ERROR`)return!Nc(e).some(e=>[`AbortError`,`ABORT_ERR`,`UND_ERR_ABORTED`,`ERR_HTTP2_STREAM_CANCEL`].includes(e))}return Nc(e).some(e=>Mc.has(e))}const Fc=e=>new Promise(t=>setTimeout(t,e)),Ic=typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`);function Lc(e,t){if(!Ic)return;let n=Object.entries(t).map(([e,t])=>`${e}=${t}`).join(` `);console.debug(`[workflow:world-vercel:event-retry] ${e} ${n}`)}function Rc(e){return O.is(e)?e.code??(e.status==null?e.name:`status_${e.status}`):Nc(e)[0]??(e instanceof Error?e.name:`unknown`)}function zc(e){let t=0;return async n=>{let r=Math.max(1,typeof n.retryAfter==`number`?n.retryAfter:1)*1e3;if(t+r>3e4)throw Lc(`throttle retry budget exhausted; surfacing to the queue`,{eventType:e,waitedMs:t,retryAfter:n.retryAfter}),n;t+=r,console.warn(`[workflow] Throttled (429) writing ${e} event; retrying in-process in ${r/1e3}s`),await Fc(r)}}function Bc(e,t){return t?.batchIdempotent===void 0?e===`hook_received`&&t?.idempotentHookResume===!0||(jc[e]?.retryable??!1):t.batchIdempotent}async function Vc(e,t,n){let r=Bc(t,n),i=zc(t);for(let n=0;;)try{return await e()}catch(e){if(Ne.is(e)){await i(e);continue}if(!r||!Pc(e))throw e;if(n>=2)throw Lc(`exhausted in-process retries; surfacing for queue redelivery`,{eventType:t,attempts:n+1,error:Rc(e)}),e;let a=100*2**n+Math.floor(Math.random()*50);n++,Lc(`retrying event POST after transient failure`,{eventType:t,attempt:n,backoffMs:a,error:Rc(e)}),await Fc(a)}}const Hc=`gzip`,Uc=`zstd`,Wc=new TextDecoder,Gc=new Set([`devl`,`encr`,Hc,Uc]);function Kc(){try{return globalThis.process?.getBuiltinModule?.(`node:zlib`)}catch{return}}function qc(e){return!(e instanceof Uint8Array)||e.byteLength<4?null:Wc.decode(e.subarray(0,4))}function Jc(e){let t=qc(e);return t!==null&&Gc.has(t)}function Yc(e,t){let n=Kc(),r=e===Uc?n?.zstdDecompressSync:n?.gunzipSync;if(!r)throw new O(`Received ${e}-compressed workflow data, but this Node.js runtime does not support ${e} decompression. Use a compatible Node.js runtime or request unresolved data.`);return new Uint8Array(r(t))}function Xc(e){let t=qc(e);return t!==Uc&&t!==Hc?e:Yc(t,e.subarray(4))}function Zc(e){return{...e,input:Xc(e.input),output:Xc(e.output),error:Xc(e.error)}}function Qc(e){return{...e,input:Xc(e.input),output:Xc(e.output),error:Xc(e.error)}}function $c(e){return{...e,metadata:Xc(e.metadata)}}const el=D(T.omit({error:!0}).extend({error:d([w,m()]).optional(),errorRef:m().optional()})),tl=D(el.omit({input:!0,output:!0}).extend({inputRef:m().optional(),outputRef:m().optional(),input:u(Uint8Array).optional(),output:u(Uint8Array).optional()}));function nl(e){let{error:t,errorRef:n,...r}=e,i={...r},a=t??n;return a!=null&&(i.error=a),i}function rl(e,t){if(t===`none`){let{inputRef:t,outputRef:n,...r}=e;return{...Qc(nl(r)),input:void 0,output:void 0}}return Qc(nl(e))}async function il(e,t){let{runId:n,pagination:r,resolveData:i=`all`}=e,a=new URLSearchParams;r?.cursor&&a.set(`cursor`,r.cursor),r?.limit&&a.set(`limit`,r.limit.toString()),r?.sortOrder&&a.set(`sortOrder`,r.sortOrder);let o=i===`none`?`lazy`:`resolve`;a.set(`remoteRefBehavior`,o);let s=a.toString(),c=`/v2/runs/${encodeURIComponent(n)}/steps${s?`?${s}`:``}`,l=await j({endpoint:c,options:{method:`GET`},config:t,schema:E(o===`lazy`?tl:el)});return{...l,data:l.data.map(e=>rl(e,i))}}async function al(e,t,n,r){let i=n?.resolveData??`all`,a=i===`none`?`lazy`:`resolve`,o=new URLSearchParams;o.set(`remoteRefBehavior`,a);let s=o.toString(),c=`/v2/runs/${encodeURIComponent(e)}/steps/${encodeURIComponent(t)}${s?`?${s}`:``}`;return rl(await j({endpoint:c,options:{method:`GET`},config:r,schema:a===`lazy`?tl:el}),i)}async function ol(e,t,n,r,i){let a=pt(n),o=await A({method:t.method,url:e,headers:t.headers,body:t.body,dispatcher:a,attributes:i,onTransportOutcome:e=>Lt(a,e),deferTransportSuccessUntilBody:!0,timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:r,buildError:async t=>Sl(t.status,Rt(t.headers),new Uint8Array(await t.arrayBuffer()),r,e)});if(!o.body)return Lt(a),o;let s=o.body.getReader(),c=new ReadableStream({async pull(t){try{let e=await s.read();e.done?(Lt(a),t.close()):t.enqueue(e.value)}catch(n){Lt(a,n);let i=Dt(n);t.error(i?new k(`v4 ${r}: response stream transport failure (${i})`,{cause:n,url:e}):n)}},cancel(e){return Lt(a),s.cancel(e)}});return new Response(c,{status:o.status,statusText:o.statusText,headers:o.headers})}const sl=`x-wf-event-id`,cl=`x-wf-max-events`;function ll(e,t,n){return`${e}/v4/runs/${encodeURIComponent(t)}/events/${encodeURIComponent(n)}`}const ul=Symbol(`omitted event payload`),dl=D(i(e=>{if(typeof e!=`object`||!e||Array.isArray(e))return e;let t=e,n=typeof t.eventType==`string`?se(t.eventType):void 0,r=t.eventData;return!n||typeof r!=`object`||!r||Array.isArray(r)||Object.hasOwn(r,n)?e:{...t,eventData:{...r,[n]:ul}}},y).transform(e=>{let t=se(e.eventType);if(!t||!(`eventData`in e))return e;let n=e.eventData;if(typeof n!=`object`||!n||Array.isArray(n)||n[t]!==ul)return e;let r={...n};return delete r[t],{...e,eventData:r}})),fl=D(o({event:dl,run:re.optional(),step:el.transform(nl).optional(),hook:pe.optional(),wait:te.optional(),stepCreated:l(!0).optional(),maxEvents:g().int().positive().optional()})),pl=D(d([o({events:s(dl),cursor:a().nullable(),hasMore:h()}),o({events:f().optional(),cursor:f().optional(),hasMore:f().optional()})])),Q=D(fl.and(pl)),ml={run_created:D(fl.extend({run:re}).and(pl)),run_started:D(fl.extend({run:re.and(o({startedAt:Te()}))}).and(pl)),step_started:D(fl.extend({step:el.extend({startedAt:Te()}).transform(e=>({...nl(e),startedAt:e.startedAt}))}).and(pl)),run_completed:Q,run_failed:Q,run_cancelled:Q,attr_set:Q,step_created:Q,step_completed:Q,step_failed:Q,step_retrying:Q,hook_created:Q,hook_received:Q,hook_disposed:Q,hook_conflict:Q,wait_created:Q,wait_completed:Q,noop:Q},hl=D(we().int().positive()),gl=D(o({_end:l(1),next:a().optional(),hasMore:h()})),_l=D(o({_error:l(1),code:a(),message:a().optional()})),vl=new Set([`run_failed`,`step_failed`,`step_retrying`]);function yl(e){if(Jc(e))return e;try{let t=ve.safeParse(Ct(e.slice()));return t.success?t.data:e}catch{return e}}function bl({meta:e,body:t}){let n=oe.parse(e.eventType);if(t.byteLength===0)return dl.parse(e);let r=se(n);return Yt(r,`Event type ${n} cannot carry a payload body`),Yt(e.eventData&&typeof e.eventData==`object`),dl.parse({...e,eventData:{...e.eventData,[r]:vl.has(n)?yl(t):t}})}function xl(e){let t={eventType:e.eventType,specVersion:e.specVersion};return e.correlationId!==void 0&&(t.correlationId=e.correlationId),e.vercelId!==void 0&&(t.vercelId=e.vercelId),e.computeInstanceId!==void 0&&(t.computeInstanceId=e.computeInstanceId),e.occurredAt!==void 0&&(t.occurredAt=e.occurredAt),e.remoteRefBehavior!==void 0&&(t.remoteRefBehavior=e.remoteRefBehavior),e.deploymentId!==void 0&&(t.deploymentId=e.deploymentId),e.workflowName!==void 0&&(t.workflowName=e.workflowName),e.stepName!==void 0&&(t.stepName=e.stepName),e.attempt!==void 0&&(t.attempt=e.attempt),e.resumeAt!==void 0&&(t.resumeAt=e.resumeAt),e.retryAfter!==void 0&&(t.retryAfter=e.retryAfter),e.hookToken!==void 0&&(t.hookToken=e.hookToken),e.hookTokenRetentionUntil!==void 0&&(t.hookTokenRetentionUntil=e.hookTokenRetentionUntil),e.hookIsWebhook!==void 0&&(t.hookIsWebhook=e.hookIsWebhook),e.hookIsSystem!==void 0&&(t.hookIsSystem=e.hookIsSystem),e.resumeId!==void 0&&(t.resumeId=e.resumeId),e.errorCode!==void 0&&(t.errorCode=e.errorCode),e.cancelReason!==void 0&&(t.cancelReason=e.cancelReason),e.ownerMessageId!==void 0&&(t.ownerMessageId=e.ownerMessageId),e.executionContext!==void 0&&(t.executionContext=e.executionContext),e.attributes!==void 0&&(t.attributes=e.attributes),e.changes!==void 0&&(t.changes=e.changes),e.writer!==void 0&&(t.writer=e.writer),e.allowReservedAttributes!==void 0&&(t.allowReservedAttributes=e.allowReservedAttributes),e.encryptionPublicKey!==void 0&&(t.encryptionPublicKey=e.encryptionPublicKey),e.ttfs!==void 0&&(t.ttfs=e.ttfs),e.stso!==void 0&&(t.stso=e.stso),e.stepCount!==void 0&&(t.stepCount=e.stepCount),e.eventCount!==void 0&&(t.eventCount=e.eventCount),e.rsfs!==void 0&&(t.rsfs=e.rsfs),e.finalSchedulingReplay!==void 0&&(t.finalSchedulingReplay=e.finalSchedulingReplay),e.optimizations!==void 0&&(t.optimizations=e.optimizations),e.sinceCursor!==void 0&&(t.sinceCursor=e.sinceCursor),e.skipPreload&&(t.skipPreload=!0),e.maxSlot!==void 0&&(t.maxSlot=e.maxSlot),e.replayDivergenceCount!==void 0&&(t.replayDivergenceCount=e.replayDivergenceCount),e.resumePayloadDigest!==void 0&&(t.resumePayloadDigest=e.resumePayloadDigest),e.viaStepDispatch!==void 0&&(t.viaStepDispatch=e.viaStepDispatch),t}function Sl(e,t,n,r,i){let a=`v4 ${r} failed: HTTP ${e}`,o,s,{record:c,text:l}=Cl(n,Rl(t,`content-type`));c?(typeof c.message==`string`&&(a=c.message),typeof c.code==`string`&&(o=c.code),e===412&&(s=wl(c))):l&&(a+=` ${l}`);let u=Bt(Rl(t,`retry-after`));return xt(e,a,{retryAfter:u,code:o,url:i,mitigated:Rl(t,`x-vercel-mitigated`),...s===void 0?{}:{details:s}})}function Cl(e,t){if(typeof e!=`string`&&t?.includes(`application/cbor`)){try{let t=Ct(e.slice());if(typeof t==`object`&&t)return{record:t}}catch{}return{}}let n=typeof e==`string`?e:new TextDecoder().decode(e);try{let e=JSON.parse(n);if(typeof e==`object`&&e)return{record:e}}catch{}return{text:n}}function wl(e){if(!Array.isArray(e.events)||e.events.length===0)return;let t=[];for(let n of e.events){if(typeof n!=`object`||!n)return;let e=n;if(typeof e.eventId!=`string`||Tl(e))return;let r=dl.safeParse(e);if(!r.success)return;t.push(r.data)}return{events:t,...typeof e.cursor==`string`?{cursor:e.cursor}:{}}}function Tl(e){let t=e.eventType;if(typeof t!=`string`)return!1;let n=se(t);if(!n)return!1;let r=e.eventData;if(typeof r!=`object`||!r)return!1;let i=r[n];return i!==void 0&&!(i instanceof Uint8Array)}async function El(e,t,n){let{baseUrl:r,headers:i}=await M(n),a=new Headers(i);a.set(`Content-Type`,`application/octet-stream`),t===`event-stream`&&a.set(`Accept`,Ot);let o=St(xl(e),e.payload??new Uint8Array);return ol(ll(r,e.runId,e.eventType),{method:`POST`,headers:a,body:o},n,`createEvent`,{...Ze(`http`),...Je(e.eventType),...it(`@workflow/world-vercel/${kt}`),...e.eventType===`step_started`?{...ot(e.payload===void 0?e.ownerMessageId===void 0?`single_bare`:`single_owned_recovery`:`single_lazy_create_claim`),...Ht(e.ownerMessageId!==void 0)}:{},...e.stso===void 0?{}:nt(e.stso),...e.optimizations===void 0?{}:tt(e.optimizations)})}const Dl=new Set([`step_completed`]);function Ol(e){if(At()&&Dl.has(e))throw Error(`world-vercel: ${e} fell back to the HTTP events transport while the WS gate was on. WORKFLOW_INTERNAL_EVENTS_TRANSPORT_STRICT is set, so this is a failure rather than a silent demotion: no channel was resolvable for this run at write time.`)}async function kl(e,t){if(ht()){let n=await Il(e,t);if(n)return Al(n,e.eventType);Ol(e.eventType)}let n=await El(e,`materialized`,t);if(n.headers.get(`content-type`)?.startsWith(`application/vnd.workflow.v4-frames`))throw new O(`v4 createEvent: unexpected event page`,{code:`SCHEMA_VALIDATION`});return Al(n,e.eventType)}async function Al(e,t){let n;try{n=new Uint8Array(await e.arrayBuffer())}catch(e){throw k.is(e)?e:new O(`v4 createEvent: failed to read response body`,{code:`TRANSPORT`,cause:e})}if(n.byteLength===0)throw new O(`v4 createEvent: empty response body`,{code:`PARSE_ERROR`});let r=D(ml[t].refine(({event:e})=>e.eventType===t||t===`hook_created`&&e.eventType===`hook_conflict`,{path:[`event`,`eventType`]})),i;try{i=Ct(n)}catch(e){throw new O(`v4 createEvent: invalid CBOR response body`,{code:`PARSE_ERROR`,cause:e})}let a=r.safeParse(i);if(!a.success)throw new O(`v4 createEvent: invalid response body`,{code:`SCHEMA_VALIDATION`,cause:a.error});return a.data}async function jl(e,t,n){let r=await El({...e,eventType:`run_started`},`event-stream`,t),i=await Ul(r,e.runId,t,n);if(!i.cursor)throw new O(`v4 createEvent: event stream missing cursor`,{code:`SCHEMA_VALIDATION`});let a=hl.safeParse(r.headers.get(cl));if(!a.success)throw new O(`v4 createEvent: invalid max-events header`,{code:`SCHEMA_VALIDATION`,cause:a.error});return{...i,maxEvents:a.data}}const Ml=D(o({status:g().int(),error:a(),message:a()}));async function Nl(e,t){Yt(e.events.length>0,`v4 createEventBatch: empty batch`);let{baseUrl:n,headers:r}=await M(t),i=new Headers(r);i.set(`Content-Type`,`application/octet-stream`);let a=e.events.map(e=>St(xl(e),e.payload??new Uint8Array)),o=0;for(let e of a)o+=e.byteLength;let s=new Uint8Array(o),c=0;for(let e of a)s.set(e,c),c+=e.byteLength;let l=await ol(`${n}/v4/runs/${encodeURIComponent(e.runId)}/events/batch`,{method:`POST`,headers:i,body:s},t,`createEventBatch`,{...Ze(`http`),"workflow.batch.bytes":s.byteLength,...e.events.some(e=>e.eventType===`step_started`)?{...ot(e.events.some(e=>e.eventType===`step_created`)?`batch_create_claim`:`batch_bare`),...Ht(e.events.some(e=>e.ownerMessageId!==void 0))}:{}}),u=new Uint8Array(await l.arrayBuffer()),d=u.byteLength>0?Ct(u):{};if(!Array.isArray(d.results)||d.results.length!==e.events.length)throw new O(`v4 createEventBatch: response \`results\` length (${Array.isArray(d.results)?d.results.length:`non-array`}) != ${e.events.length} submitted frames`,{code:`SCHEMA_VALIDATION`});return{results:d.results.map((t,n)=>{let r=Ml.safeParse(t);if(r.success&&r.data.status!==200)return r.data;if(t?.status!==200)throw new O(`v4 createEventBatch: result at index ${n} is neither a success (status 200) nor a well-formed failure`,{code:`SCHEMA_VALIDATION`});let i=e.events[n].eventType,a=ml[i].safeParse(t);if(!a.success)throw new O(`v4 createEventBatch: invalid result body at index ${n} (${i})`,{code:`SCHEMA_VALIDATION`,cause:a.error});if(a.data.event.eventType!==i)throw new O(`v4 createEventBatch: result at index ${n} carries a ${a.data.event.eventType} event, expected ${i}`,{code:`SCHEMA_VALIDATION`});return{status:200,...a.data}})}}function Pl(e){let t={};return typeof e.eventId==`string`&&(t[sl]=e.eventId),typeof e.retryAfter==`string`&&(t[`retry-after`]=e.retryAfter),typeof e.mitigated==`string`&&(t[`x-vercel-mitigated`]=e.mitigated),t}function Fl(e,t){let{status:n}=e.meta;if(typeof n!=`number`)throw new O(`Failed to parse response body for POST ${t}: reply frame carried no numeric status (type: ${String(e.meta.type??`absent`)}). Refusing to treat an unrecognized reply as success — the write may or may not have been applied.`,{url:t,code:`PARSE_ERROR`});return n}async function Il(e,t){let{resolveWsTransport:n}=await import(`../../_chunks/workflow/ws-transport-BpTMh40s.js`),{runId:r}=e,i=n(r,t);if(!i)return;let{transport:a,wsUrl:o}=i,s=`${o}#runs/${encodeURIComponent(r)}/events`,c=ll(vt(t).baseUrl,r,e.eventType);return zt({method:`POST`,url:c,attributes:{...Ze(`ws`),...Je(e.eventType),...it(`@workflow/world-vercel/${kt}`),...e.stso===void 0?{}:nt(e.stso),...e.optimizations===void 0?{}:tt(e.optimizations),...e.eventType===`step_started`?{...ot(e.payload===void 0?e.ownerMessageId===void 0?`single_bare`:`single_owned_recovery`:`single_lazy_create_claim`),...Ht(e.ownerMessageId!==void 0)}:{},...qe(`websocket`),...Ye(o)}},async t=>{let n=Date.now(),r;try{r=await a.request(n=>(t?.setAttributes({...ut(n)}),St({reqId:n,type:`event`,event:xl(e)},e.payload??new Uint8Array)))}catch(e){let n=new O(`POST ${s} transport failure: ${e instanceof Error?e.message:String(e)}`,{url:o,code:`TRANSPORT`,cause:e});throw t?.setAttributes({...ct(`TRANSPORT`)}),t?.recordException?.(n),n}let i=Date.now()-n,c=Fl(r,s),l=Pl(r.meta),u={get:e=>l[e.toLowerCase()]??null};if(Vt(`POST`,`createEvent`,{status:c,headers:u},i),st(t,c),c<200||c>=300){let e=Sl(c,l,new TextDecoder().decode(r.body),`createEvent`,s);throw t?.recordException?.(e),e}return{headers:u,arrayBuffer:async()=>r.body.slice().buffer}})}async function Ll(e,t,n){let r=await El({...e,eventType:`hook_received`},`event-stream`,t);if(!r.headers.get(`content-type`)?.startsWith(`application/vnd.workflow.v4-frames`))return{kind:`materialized`,result:await Al(r,`hook_received`)};let i=await Ul(r,e.runId,t,n),a=hl.safeParse(r.headers.get(cl));return{kind:`stream`,...i,canonicalEventId:r.headers.get(sl)??void 0,maxEvents:a.success?a.data:void 0}}function Rl(e,t){let n=e[t];if(typeof n==`string`)return n;if(Array.isArray(n)&&n.length>0)return n[0]}async function zl(e,t,n,r){let{baseUrl:i,headers:a}=await M(r),o=await ol(`${i}/v4/runs/${encodeURIComponent(e)}/events/${encodeURIComponent(t)}?remoteRefBehavior=${n}`,{method:`GET`,headers:a},r,`getEvent`),s=o.headers.get(`content-type`);if(!s?.startsWith(`application/vnd.workflow.v4-frames`))throw Error(`v4 getEvent: expected ${Ot}, got ${s??`(none)`}`);let c=o.body;try{for await(let e of Nt(c)){if(e.meta._error===1)throw Bl(e.meta,`getEvent`);if(Object.keys(e.meta).some(e=>e.startsWith(`_`)))throw Error(`v4 getEvent: unexpected control frame`);return bl(e)}}catch(e){throw e instanceof It&&k.is(e.cause)?e.cause:e}throw Error(`v4 getEvent: empty frame stream for ${t}`)}function Bl(e,t){let n=_l.safeParse(e);if(!n.success)return new O(`v4 ${t}: malformed terminal error frame`,{code:`SCHEMA_VALIDATION`,cause:n.error});let{code:r,message:i}=n.data,a=i??`(no detail)`;return r===`payload-missing`?new Me(`the event log references a payload that no longer exists in storage: ${a}`):new O(`v4 ${t}: stream ended with terminal error "${r}": ${a}`,{code:`WORLD_CONTRACT_ERROR`})}function Vl(e,t){let n=e.at(-1)?.eventId;if(!n)throw t;return{kind:`partial`,events:e,cursor:`eid:${n}`,hasMore:!0,error:t}}async function Hl(e,t,n){let r=e.headers.get(`content-type`);if(!r?.startsWith(`application/vnd.workflow.v4-frames`))throw new O(`v4 ${t}: expected ${Ot}, got ${r??`(none)`}`,{code:`SCHEMA_VALIDATION`});if(!e.body)throw new O(`v4 ${t}: response body is missing`,{code:`TRANSPORT`});let i=[];try{for await(let r of Nt(e.body)){if(r.meta._end===1){let e=gl.parse(r.meta);return{kind:`complete`,events:i,cursor:e.next??null,hasMore:e.hasMore}}if(r.meta._error===1)throw Bl(r.meta,t);if(Object.keys(r.meta).some(e=>e.startsWith(`_`)))throw Error(`v4 ${t}: unexpected control frame`);let e=bl(r);i.push(e);try{n?.(e)}catch(e){throw new Ac(e)}}}catch(e){if(e instanceof Ac||Me.is(e)||O.is(e))throw e;if(e instanceof It&&k.is(e.cause))return Vl(i,e.cause);if(!(e instanceof It))throw new O(`v4 ${t}: invalid event frame stream`,{code:`SCHEMA_VALIDATION`,cause:e});return Vl(i,new O(`v4 ${t}: incomplete event frame stream`,{code:`TRANSPORT`,cause:e}))}return Vl(i,new O(`v4 ${t}: frame stream ended without the end-of-stream sentinel (${i.length} events read)`,{code:`TRANSPORT`}))}async function Ul(e,t,n,r){let i=await Hl(e,`createEvent`,r);if(!i.hasMore)return{events:i.events,cursor:i.cursor,hasMore:!1};if(!i.cursor)throw new O(`v4 createEvent: partial event stream missing cursor`,{code:`SCHEMA_VALIDATION`});let a=await ql(t,{cursor:i.cursor,remoteRefBehavior:`resolve`},n,r);return{events:[...i.events,...a.events],cursor:a.cursor??i.cursor,hasMore:a.hasMore}}async function Wl(e,t,n,r,i){return Hl(await ol(e,{method:`GET`,headers:t},n,r),r,i)}function Gl(e,t){t.cursor&&e.set(`cursor`,t.cursor),t.limit!==void 0&&e.set(`limit`,String(t.limit)),t.sortOrder&&e.set(`sortOrder`,t.sortOrder),t.remoteRefBehavior&&e.set(`remoteRefBehavior`,t.remoteRefBehavior)}function Kl(e){let t=new URLSearchParams;return e.limit===void 0&&t.set(`returnAll`,`true`),Gl(t,e),`?${t.toString()}`}async function ql(e,t={},n,r){let{baseUrl:i,headers:a}=await M(n),o=[],s=t.cursor??null,c=0,l;do{l=await Wl(`${i}/v4/runs/${encodeURIComponent(e)}/events`+Kl({...t,cursor:s??void 0}),a,n,`listEvents`,r);let u=!!l.cursor&&l.cursor!==s;if(l.kind===`partial`){if(t.limit!==void 0||!u||c===2)throw l.error;c++,s=l.cursor}else if(!u&&(l.events.length>0||l.hasMore))throw new O(`v4 listEvents: response did not advance cursor`,{code:`SCHEMA_VALIDATION`});for(let e of l.events)o.push(e)}while(l.kind===`partial`);return{events:o,cursor:l.cursor||(c>0?s:null),hasMore:l.hasMore}}async function Jl(e,t,n={},r){let{baseUrl:i,headers:a}=await M(r),o=new URLSearchParams;o.set(`correlationId`,e),o.set(`runId`,t),Gl(o,n);let s=await Wl(`${i}/v4/events?${o.toString()}`,a,r,`listEventsByCorrelationId`);if(s.kind===`partial`)throw s.error;return{events:s.events,cursor:s.cursor,hasMore:s.hasMore}}const Yl=D(ee.omit({error:!0,errorCode:!0}).extend({error:d([w,m()]).optional(),errorCode:a().optional(),blobStorageBytes:g().optional(),streamStorageBytes:g().optional()})),Xl=D(Yl),Zl=D(Yl.omit({input:!0,output:!0}).extend({inputRef:m().optional(),outputRef:m().optional(),input:d([u(Uint8Array),m()]).optional(),output:d([u(Uint8Array),m()]).optional()}));function Ql(e,t){if(t===`none`){let{inputRef:t,outputRef:n,...r}=e;return{...Zc(_t(r)),input:void 0,output:void 0}}return Zc(_t(e))}async function $l(e={},t){let{workflowName:n,status:r,pagination:i,resolveData:a=`all`}=e,o=new URLSearchParams;if(n&&o.set(`workflowName`,n),Array.isArray(r))throw new O(`listWorkflowRuns: status does not support an array of statuses on world-vercel yet; pass a single status`,{code:`INVALID_ARGUMENT`,field:`status`});r&&o.set(`status`,r),i?.limit&&o.set(`limit`,i.limit.toString()),i?.cursor&&o.set(`cursor`,i.cursor),i?.sortOrder&&o.set(`sortOrder`,i.sortOrder);let s=a===`none`?`lazy`:`resolve`;o.set(`remoteRefBehavior`,s);let c=o.toString(),l=`/v2/runs${c?`?${c}`:``}`,u=await j({endpoint:l,options:{method:`GET`},config:t,schema:E(s===`lazy`?Zl:Xl)});return{...u,data:u.data.map(e=>Ql(e,a))}}async function eu(e,t){let n=await j({endpoint:`/v1/runs/create`,options:{method:`POST`},data:e,config:t,schema:Xl});return _t(n)}async function tu(e,t,n){let r=t?.resolveData??`all`;try{return await nu(e,{resolveData:r},n)}catch(t){throw t instanceof O&&t.status===404?new Ee(e):t}}async function nu(e,t,n){let{resolveData:r,waitMs:i,signal:a}=t,o=r===`none`?`lazy`:`resolve`,s=new URLSearchParams;s.set(`remoteRefBehavior`,o),i!==void 0&&s.set(`waitMs`,String(i));let c=i===void 0?``:`/status`,l=s.toString(),u=`/v2/runs/${encodeURIComponent(e)}${c}${l?`?${l}`:``}`;return Ql(await j({endpoint:u,options:{method:`GET`,...a?{signal:a}:{}},config:n,retryConnectTimeout:!0,schema:o===`lazy`?Zl:Xl}),r)}const ru=ge(`@workflow/world-vercel//runStatusLongPollSupport`,1,()=>({unsupportedUntilByBaseUrl:new Map}));function iu(e){return e.status===404||e.status===405||e.status===501||e.status===504||e.status===void 0&&(e.code===`TIMEOUT`||e.code===`TRANSPORT`)}async function au(e,t,n){let r=t?.resolveData??`all`,i=Math.max(0,Math.min(t?.timeoutMs??0,bt()-1e4)),{baseUrl:a}=vt(n),o=ru.unsupportedUntilByBaseUrl.get(a)??0;if(i===0||Date.now()<o)return tu(e,{resolveData:r},n);try{return await nu(e,{resolveData:r,waitMs:i,...t?.signal?{signal:t.signal}:{}},n)}catch(i){if(t?.signal?.aborted||!(i instanceof O)||!iu(i))throw i;let o=await tu(e,{resolveData:r},n);return ru.unsupportedUntilByBaseUrl.set(a,Date.now()+3e5),o}}async function ou(e,t,n){let r=[...new Set(e)],i=await Promise.all(r.map(async e=>{try{return await tu(e,t,n)}catch(e){if(e instanceof Ee)return null;throw e}})),a=new Map(r.map((e,t)=>[e,i[t]]));return e.map(e=>a.get(e)??null)}async function su(e,t,n){let r=t?.resolveData??`all`,i=r===`none`?`lazy`:`resolve`,a=new URLSearchParams;a.set(`remoteRefBehavior`,i);let o=a.toString(),s=`/v1/runs/${encodeURIComponent(e)}/cancel${o?`?${o}`:``}`;try{return Ql(await j({endpoint:s,options:{method:`PUT`},config:n,schema:i===`lazy`?Zl:Xl}),r)}catch(t){throw t instanceof O&&t.status===404?new Ee(e):t}}async function cu(e,t){let{runIds:n,cancelReason:r}=S.parse(e),i=await j({endpoint:`/v4/runs/cancel`,options:{method:`POST`},data:r===void 0?{runIds:n}:{runIds:n,cancelReason:r},config:t,schema:C}),a=new Map(i.results.map(e=>[e.runId,e]));if(!(a.size===i.results.length&&i.results.length===n.length&&n.every(e=>a.has(e))))throw new O(`Bulk cancel response did not contain exactly one result per requested run ID (requested ${n.length}, received ${i.results.length}).`);let o=n.map(e=>a.get(e));return{summary:i.summary,results:o}}const lu=D(o({attributes:r(a(),a())}));async function uu(e,t,n,r){try{return{attributes:(await j({endpoint:`/v2/runs/${encodeURIComponent(e)}/attributes`,options:{method:`POST`},data:n?.allowReservedAttributes?{changes:t,allowReservedAttributes:!0}:{changes:t},config:r,schema:lu})).attributes}}catch(t){throw t instanceof O&&t.status===404?new Ee(e):t}}function du(e){let t=e.startsWith(`wrun_`)?e.slice(5):e;try{return ye(`wrun_${Ve(t).ulid}`,`wrun_`)}catch{return ye(e,`wrun_`)}}const fu=new Set([`run_created`,`run_started`,`step_started`]);function pu(e){if(e.eventType===`attr_set`)try{ue(e.eventData)}catch(e){throw e instanceof be?new O(e.message,{status:400}):e}let t=e.eventData??{},n=se(e.eventType),r={};if(typeof t.deploymentId==`string`&&(r.deploymentId=t.deploymentId),typeof t.workflowName==`string`&&(r.workflowName=t.workflowName),typeof t.stepName==`string`&&(r.stepName=t.stepName),typeof t.attempt==`number`&&(r.attempt=t.attempt),t.resumeAt instanceof Date)r.resumeAt=t.resumeAt;else if(typeof t.resumeAt==`string`){let e=new Date(t.resumeAt);Number.isNaN(e.getTime())||(r.resumeAt=e)}if(t.retryAfter instanceof Date)r.retryAfter=t.retryAfter;else if(typeof t.retryAfter==`string`){let e=new Date(t.retryAfter);Number.isNaN(e.getTime())||(r.retryAfter=e)}typeof t.token==`string`&&(r.hookToken=t.token),t.tokenRetentionUntil instanceof Date&&(r.hookTokenRetentionUntil=t.tokenRetentionUntil),typeof t.isWebhook==`boolean`&&(r.hookIsWebhook=t.isWebhook),typeof t.isSystem==`boolean`&&(r.hookIsSystem=t.isSystem),typeof t.errorCode==`string`&&(r.errorCode=t.errorCode),typeof t.cancelReason==`string`&&(r.cancelReason=t.cancelReason),typeof t.ownerMessageId==`string`&&(r.ownerMessageId=t.ownerMessageId),t.executionContext!==void 0&&t.executionContext!==null&&typeof t.executionContext==`object`&&(r.executionContext=t.executionContext),t.attributes!==void 0&&t.attributes!==null&&typeof t.attributes==`object`&&(r.attributes=t.attributes),Array.isArray(t.changes)&&(r.changes=t.changes),t.writer!==void 0&&t.writer!==null&&typeof t.writer==`object`&&(r.writer=t.writer),typeof t.allowReservedAttributes==`boolean`&&(r.allowReservedAttributes=t.allowReservedAttributes),typeof t.encryptionPublicKey==`string`&&(r.encryptionPublicKey=t.encryptionPublicKey),typeof t.ttfs==`number`&&(r.ttfs=t.ttfs),typeof t.stso==`number`&&(r.stso=t.stso),typeof t.stepCount==`number`&&Number.isSafeInteger(t.stepCount)&&t.stepCount>0&&(r.stepCount=t.stepCount),typeof t.eventCount==`number`&&Number.isSafeInteger(t.eventCount)&&t.eventCount>0&&(r.eventCount=t.eventCount),typeof t.rsfs==`number`&&(r.rsfs=t.rsfs),typeof t.finalSchedulingReplay==`number`&&(r.finalSchedulingReplay=t.finalSchedulingReplay),Array.isArray(t.optimizations)&&t.optimizations.every(e=>typeof e==`string`)&&(r.optimizations=t.optimizations);let i;if(n&&n in t){let r=t[n];if(r!==void 0){if(!(r instanceof Uint8Array))throw TypeError(`world-vercel v4: eventData.${n} for ${e.eventType} must be a Uint8Array (the runtime's dehydrated wire form); got ${typeof r==`object`?r===null?`null`:r.constructor?.name??typeof r:typeof r}.`);i=r}}return{payload:i,meta:r}}async function mu(e,t,n,r){return zl(e,t,n?.resolveData===`none`?`lazy`:`resolve`,r)}async function hu(e,t){let{pagination:n,resolveData:r=`all`}=e,i={...n,remoteRefBehavior:r===`none`?`lazy`:`resolve`},a=await(`correlationId`in e?Jl(e.correlationId,e.runId,i,t):ql(e.runId,i,t));return{data:`correlationId`in e?a.events.filter(t=>t.runId===e.runId):a.events,cursor:a.cursor,hasMore:a.hasMore}}async function gu(e,t,n,r){if(t.length===0)throw new O(`world-vercel: createBatch requires at least one event`,{status:400});if(t.some(({event:e})=>e.eventType===`hook_received`))throw new O(`world-vercel: hook_received cannot be batched (it has no entity condition, so a batch retry would append the delivery twice); send it through the single-event path`,{status:400});let i=t.map(({event:t,occurredAt:r,computeInstanceId:i})=>{let{payload:a,meta:o}=pu(t);return{runId:e,eventType:t.eventType,specVersion:t.specVersion??2,...t.correlationId?{correlationId:t.correlationId}:{},occurredAt:r??new Date,...i===void 0?{}:{computeInstanceId:i},remoteRefBehavior:n?.resolveData===`all`?`resolve`:`lazy`,...n?.requestId?{vercelId:n.requestId}:{},payload:a,...o}}),a=t.every(({event:e})=>e.eventType!==`step_started`&&e.eventType!==`step_retrying`);return{results:(await Vc(()=>Nl({runId:e,events:i},r),t[0].event.eventType,{batchIdempotent:a})).results.map(e=>e.error===void 0?{status:200,event:e.event,...e.run?{run:e.run}:{},...e.step?{step:e.step}:{},...e.wait?{wait:e.wait}:{}}:{status:e.status,error:e.error,message:e.message})}}async function _u(e,t,n,r){try{let i=await Vc(()=>vu(e,t,n,r),t.eventType,{idempotentHookResume:t.eventType===`hook_received`&&n?.resumeId!==void 0&&n?.resumePayloadDigest!==void 0});if(t.eventType===`run_created`&&!i.run)throw new O(`${t.eventType} response is missing the run entity`,{code:`SCHEMA_VALIDATION`});if(t.eventType===`run_started`&&!i.run?.startedAt)throw new O(`run_started response is missing run.startedAt`,{code:`SCHEMA_VALIDATION`});if(t.eventType===`step_started`&&!i.step?.startedAt)throw new O(`step_started response is missing step.startedAt`,{code:`SCHEMA_VALIDATION`});return i}catch(e){throw e instanceof Ac?e.error:ae(t.eventType)&&O.is(e)&&e.status===404&&t.correlationId?new Ae(t.correlationId):e}}async function vu(e,t,n,r){if(n?.v1Compat){if(t.eventType===`run_cancelled`&&e)return{run:await su(e,n,r)};if(t.eventType===`run_created`)return{run:await eu(t.eventData,r)};if(e===null)throw new O(`world-vercel: v1Compat=true requires a runId for ${t.eventType}`,{status:400});return{event:await j({endpoint:`/v1/runs/${encodeURIComponent(e)}/events`,options:{method:`POST`},data:t,config:r,schema:dl})}}if(e===null)throw new O(`world-vercel v4: createWorkflowRunEvent requires a client-generated runId for run_created (the runId is part of the payload storage ref key). Generate a wrun_ ULID before calling.`,{status:400});if(t.eventType===`run_created`){let t=du(e);if(t)throw new O(t,{status:400})}let i=fu.has(t.eventType)?`resolve`:`lazy`,{payload:a,meta:o}=pu(t),s={runId:e,specVersion:t.specVersion??2,...t.correlationId?{correlationId:t.correlationId}:{},...n?.requestId?{vercelId:n.requestId}:{},...n?.computeInstanceId?{computeInstanceId:n.computeInstanceId}:{},...n?.eventCount===void 0?{}:{maxSlot:n.eventCount},replayDivergenceCount:n?.replayDivergenceCount,occurredAt:n?.occurredAt??new Date,...n?.sinceCursor?{sinceCursor:n.sinceCursor}:{},...n?.resumeId?{resumeId:n.resumeId}:{},...n?.resumePayloadDigest?{resumePayloadDigest:n.resumePayloadDigest}:{},...n?.viaStepDispatch?{viaStepDispatch:!0}:{},remoteRefBehavior:i,payload:a,...o};if(t.eventType===`run_started`&&!n?.skipPreload){let e=await jl(s,r,n?.replayEventObserver),t=yu(e.events);if(!t)throw new O(`v4 createEvent: run_started stream is missing lifecycle events`,{code:`SCHEMA_VALIDATION`});return{event:t.event,run:t.run,events:e.events,cursor:e.cursor,hasMore:e.hasMore,maxEvents:e.maxEvents}}if(t.eventType===`hook_received`&&n?.preloadEvents===!0&&n.resumeId!==void 0&&n.resumePayloadDigest!==void 0){let e=await Ll({...s,remoteRefBehavior:`lazy`},r,n.replayEventObserver);if(e.kind===`materialized`)return e.result;let{canonicalEventId:t,maxEvents:i,events:a,cursor:o,hasMore:c}=e,l=a.find(e=>e.eventId===t),u=yu(a);return{...l?{event:l}:{},...u?{run:u.run}:{},events:a,cursor:o,hasMore:c,...i===void 0?{}:{maxEvents:i}}}return kl(t.eventType===`run_started`?{...s,eventType:`run_started`,skipPreload:!0}:{...s,eventType:t.eventType},r)}function yu(e){let t=e.find(e=>e.eventType===`run_created`),n=e.find(e=>e.eventType===`run_started`);if(!t||!n)return;let r=t.eventData.attributes??{},i=n.createdAt;for(let t of e)t.eventType===`attr_set`&&(r=ce(r,t.eventData.changes),i=t.createdAt);return{event:n,run:{runId:t.runId,status:`running`,deploymentId:t.eventData.deploymentId,workflowName:t.eventData.workflowName,specVersion:t.specVersion,executionContext:t.eventData.executionContext,input:t.eventData.input,attributes:r,encryptionPublicKey:t.eventData.encryptionPublicKey,startedAt:n.createdAt,createdAt:t.createdAt,updatedAt:i}}}function bu(e,t){if(t===`none`){let{metadataRef:t,...n}=e;return n}return $c(e)}const xu=D(pe.omit({metadata:!0}).extend({metadataRef:m().optional()}));async function Su(e,t){let{runId:n,pagination:r,resolveData:i=`all`}=e,a=new URLSearchParams;r?.limit&&a.set(`limit`,r.limit.toString()),r?.cursor&&a.set(`cursor`,r.cursor),r?.sortOrder&&a.set(`sortOrder`,r.sortOrder);let o=i===`none`?`lazy`:`resolve`;a.set(`remoteRefBehavior`,o),n&&a.set(`runId`,n);let s=a.toString(),c=`/v2/hooks${s?`?${s}`:``}`,l=await j({endpoint:c,options:{method:`GET`},config:t,schema:E(o===`lazy`?xu:pe)});return{...l,data:l.data.map(e=>bu(e,i))}}async function Cu(e,t,n){let r=t?.resolveData||`all`,i=`/v2/hooks/${encodeURIComponent(e)}`;return bu(await j({endpoint:i,options:{method:`GET`},config:n,schema:pe}),r)}async function wu(e,t){try{return await j({endpoint:`/v2/hooks/by-token?token=${encodeURIComponent(e)}`,options:{method:`GET`},config:t,schema:pe})}catch(t){throw O.is(t)&&t.status===404?new Ae(e):t}}function Tu(e){let t={runs:{get:((t,n)=>tu(t,n,e)),waitForTerminalStatus:((t,n)=>au(t,n,e)),getMany:((t,n)=>ou(t,n,e)),list:(t=>$l(t,e)),experimentalSetAttributes:(t,n,r)=>uu(t,n,r,e),cancelMany:t=>cu(t,e)},steps:{get:((t,n,r)=>al(t,n,r,e)),list:(t=>il(t,e))},events:{create:(t,n,r)=>_u(t,n,r,e),createBatch:(t,n,r)=>gu(t,n,r,e),get:(t,n,r)=>mu(t,n,r,e),list:t=>hu(t,e),listByCorrelationId:t=>hu(t,e)},hooks:{get:(t,n)=>Cu(t,n,e),getByToken:t=>wu(t,e),list:t=>Su(t,e)}};return{runs:Bn(`world.runs`,t.runs),steps:Bn(`world.steps`,t.steps),events:Bn(`world.events`,t.events),hooks:Bn(`world.hooks`,t.hooks)}}const Eu=1e3;function Du(e){let t=new TextEncoder;return e.map(e=>typeof e==`string`?t.encode(e):e)}function Ou(e){return ku(Du(e))}function ku(e){let t=0;for(let n of e)if(t+=4+n.length,t>4294967295)throw RangeError(`encoded stream chunks exceed the u32 body-length limit: ${t} bytes`);let n=new Uint8Array(t),r=new DataView(n.buffer),i=0;for(let t of e)r.setUint32(i,t.length,!1),i+=4,n.set(t,i),i+=t.length;return n}const Au=Eu,ju=g().int().nonnegative(),Mu=ju,Nu=a().regex(/^wrtr_[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$/),Pu=o({type:l(`write`),reqId:Mu,chunkSeq:ju,numChunks:g().int().positive().max(Au)}),Fu=o({type:l(`close`),reqId:Mu});c(`type`,[Pu,Fu]);const Iu=o({type:l(`write_ack`),reqId:Mu}),Lu=o({type:l(`close_ack`),reqId:Mu}),Ru=o({type:l(`error`),reqId:Mu.optional(),status:g().int(),message:a().optional()}),zu=o({type:l(`drain`),reason:p([`auth_expiry`,`max_duration`]),graceMs:ju}),Bu=c(`type`,[Iu,Lu,Ru,zu]);function Vu(e,t,n,r){let i=Nu.parse(r),a=new URL(e);return a.protocol=a.protocol===`https:`?`wss:`:`ws:`,a.pathname=`${a.pathname.replace(/\/$/,``)}/websockets/v1/runs/${encodeURIComponent(t)}/streams/${encodeURIComponent(n)}`,a.search=new URLSearchParams({writerId:i}).toString(),a}function Hu(e,t){let n=Pu.parse(e);if(n.numChunks!==t.length)throw Error(`stream WebSocket write declares ${n.numChunks} chunks but received ${t.length}`);let r=Du(t);for(let e of r){let t=e.byteLength;if(t>10485760)throw Error(`stream WebSocket chunk is ${t} bytes; maximum is 10485760`)}return St(n,ku(r))}function Uu(e){return St(Fu.parse(e),new Uint8Array)}function Wu(e,t){if(t.byteLength!==0)throw Error(`stream WebSocket reply body must be empty`);return Bu.parse(e)}function Gu(t,n){if(t.readyState===3)return;let r=!1,i=new Promise(e=>{let n=!1,i=()=>{n||(n=!0,clearTimeout(a),e())},a=setTimeout(()=>{r=!0,i()},250);a.unref?.(),t.once(`close`,i)}),a=ft(`workflow.stream.ws.close.cleanup`,async e=>{await i,e?.setAttribute(`workflow.stream.ws.close_cleanup_timeout`,r)});import(`../../_chunks/workflow/functions-C06vHfWP.js`).then(t=>e(t.default,1)).then(({waitUntil:e})=>e(a)).catch(()=>{}),a.catch(()=>{}),t.close(1e3,n)}function $(){return performance.now()}function Ku(e,t,n){return e?{"workflow.stream.ws.session_first_write":e.sessionFirstWrite,"workflow.stream.ws.connection_first_write":t?.firstWriteSent===!1,"workflow.stream.ws.connection_attempt":t?.attempt??0,"workflow.stream.ws.session_to_write_ms":e.startedAt-n}:{}}function qu(e,t,n){n&&(n.firstWriteSent=!0);let r=n?.openedAt,i=n?.socketStartedAt,a=n?.configFinishedAt;e?.setAttributes({"workflow.stream.ws.write_wait_for_open_ms":r?Math.max(0,r-t.startedAt):0,...i&&a?{"workflow.stream.ws.connect_setup_ms":i-a}:{},...i&&r?{"workflow.stream.ws.connect_ms":r-i}:{},...a&&n?{"workflow.stream.ws.config_token_ms":a-n.configStartedAt}:{}})}function Ju(e,t,n,r){let i=$();r.sentAt=i,e?.setAttributes({"workflow.stream.ws.write_to_send_ms":i-t.startedAt,...n?.openedAt?{"workflow.stream.ws.open_to_send_ms":Math.max(0,i-n.openedAt)}:{}})}function Yu(e,t,n){if(n?.sentAt===void 0||n.replyReceivedAt===void 0)return;let r=$();e?.setAttributes({"workflow.stream.ws.send_to_reply_ms":n.replyReceivedAt-n.sentAt,"workflow.stream.ws.reply_processing_ms":r-n.replyReceivedAt,"workflow.stream.ws.write_total_ms":r-t.startedAt})}function Xu(e){return e.get(`authorization`)}var Zu=class extends Error{constructor(e){super(e instanceof Error?e.message:String(e),{cause:e}),this.name=`StreamWsRequestNotSentError`}};async function Qu(e){let t;for await(let n of Nt((async function*(){yield e})())){if(t)throw Error(`stream WebSocket message has multiple frames`);t=n}if(!t)throw Error(`stream WebSocket message has no frame`);return t}function $u(e){return e instanceof Uint8Array?e:typeof e==`string`?new TextEncoder().encode(e):new Uint8Array(e)}var ed=class{runId;name;writerId;config;writeHttp;closeHttp;connectAfterFirstWrite;mode=`connecting`;socket;connect=Promise.resolve();transportDecision=Promise.resolve();tail=Promise.resolve();inbound=Promise.resolve();nextReqId=1;pending;poisonError;wsUrl;closeAcknowledged=!1;idleReconnects=0;drainReason;drainTimer;releaseDrainWait;lastAuthorization=null;sessionCreatedAt=$();sessionHasWrite=!1;connectionAttempt=0;connectionTiming;constructor(e,t,n,r,i,a,o){this.runId=e,this.name=t,this.writerId=n,this.config=r,this.writeHttp=i,this.closeHttp=a,this.connectAfterFirstWrite=o,o?this.mode=`deferred`:this.startInitialConnect()}write(e,t){let n={startedAt:$(),sessionFirstWrite:!this.sessionHasWrite};return this.sessionHasWrite=!0,this.enqueue(()=>this.writeInternal(e,t,n))}async writeInternal(e,t,n){if(this.assertUsable(),this.mode===`deferred`){await this.writeFirstGroup(t,n);return}if(this.mode===`waiting_to_connect`){await this.writeSecondGroupAndStartConnect(t,n);return}if(this.shouldWriteHttpWhileConnecting()){await this.writeWhileInitialConnectRuns(t,n);return}if(await this.transportDecision,this.assertUsable(),this.mode===`http`){await this.writeHttp(t);return}for(let r=0;r<t.length;r+=Au){let i=t.slice(r,r+Au),a;try{a=await this.request(t=>Hu({type:`write`,reqId:t,chunkSeq:e+r,numChunks:i.length},i),r===0?n:void 0,{chunkSeq:e+r,numChunks:i.length})}catch(e){if(!(e instanceof Zu))throw e;this.fallbackToHttpBeforeSend(),await this.writeHttp(t.slice(r));return}if(a.type!==`write_ack`)throw this.poison(Error(`stream WebSocket write received ${a.type}`))}}shouldWriteHttpWhileConnecting(){return this.mode===`connecting`&&this.connectionAttempt===1}async writeWhileInitialConnectRuns(e,t){try{await this.writeHttp(e,{"workflow.stream.ws.session_first_write":t.sessionFirstWrite,"workflow.stream.ws.connection_attempt":this.connectionAttempt,"workflow.stream.ws.connecting_at_write":!0,"workflow.stream.ws.session_to_write_ms":t.startedAt-this.sessionCreatedAt})}catch(e){throw this.failUnknown(e),this.poisonError}}async writeSecondGroupAndStartConnect(e,t){try{await this.writeHttp(e,{"workflow.stream.ws.session_first_write":t.sessionFirstWrite,"workflow.stream.ws.connection_attempt":0,"workflow.stream.ws.connecting_at_write":!1,"workflow.stream.ws.connect_after_http_group":2,"workflow.stream.ws.session_to_write_ms":t.startedAt-this.sessionCreatedAt},()=>{this.mode===`waiting_to_connect`&&this.startInitialConnect()})}catch(e){throw this.failUnknown(e),this.poisonError}}async writeFirstGroup(e,t){try{await this.writeHttp(e,{"workflow.stream.ws.session_first_write":t.sessionFirstWrite,"workflow.stream.ws.connection_attempt":0,"workflow.stream.ws.connecting_at_write":!1,"workflow.stream.ws.connect_deferred_at_write":!0,"workflow.stream.ws.http_group_ordinal":1,"workflow.stream.ws.session_to_write_ms":t.startedAt-this.sessionCreatedAt})}catch(e){throw this.failUnknown(e),this.poisonError}this.mode===`deferred`&&(this.mode=`waiting_to_connect`)}dispose(){if(this.mode===`closed`)return;this.mode=`closed`,this.finishDrainWait();let e=this.pending;this.pending=void 0,e&&(clearTimeout(e.timer),e.reject(Error(`stream writer transport disposed`))),this.socket?.close(1e3,`stream writer disposed`)}close(){return this.enqueue(async()=>{if(this.assertUsable(),this.mode===`deferred`||this.mode===`waiting_to_connect`||this.connectAfterFirstWrite&&this.mode===`connecting`&&this.connectionAttempt===1){await this.closeHttp(),this.mode=`closed`,this.socket?.close(1e3,`stream closed over HTTP`);return}if(await this.transportDecision,this.assertUsable(),this.mode===`http`){await this.closeHttp(),this.mode=`closed`;return}let e;try{e=await this.request(e=>Uu({type:`close`,reqId:e}))}catch(e){if(!(e instanceof Zu))throw e;this.fallbackToHttpBeforeSend(),await this.closeHttp(),this.mode=`closed`;return}if(e.type!==`close_ack`)throw this.poison(Error(`stream WebSocket close received ${e.type}`));this.mode=`closed`,this.socket&&Gu(this.socket,`stream closed`)})}enqueue(e){let t=this.tail.then(e);return this.tail=t.catch(()=>{}),t}assertUsable(){if(this.mode===`poisoned`)throw this.poisonError;if(this.mode===`closed`)throw Error(`stream writer is closed`)}startInitialConnect(){this.mode=`connecting`,this.connect=this.startConnect(),this.transportDecision=this.makeTransportDecision(!1)}makeTransportDecision(e){return new Promise(t=>{let n=!1,r=()=>{n||(n=!0,clearTimeout(i),t())},i=setTimeout(()=>{this.mode===`connecting`&&(this.mode=`http`,this.socket?.close(1e3,`connect budget expired`)),r()},e?250:1e4);i.unref?.(),this.connect.then(r)})}startConnect(e=!1){let t=$(),n={attempt:++this.connectionAttempt,configStartedAt:t,firstWriteSent:!1};return this.connectionTiming=n,this.connectSocket(e,n).catch(()=>{this.mode===`connecting`&&(this.mode=`http`)})}async connectSocket(e,t){if(!Ft()){this.mode=`http`;return}e&&await(0,Ec.getVercelOidcToken)({expirationBufferMs:864e5}).catch(()=>void 0);let n=M(this.config).then(e=>(t.configFinishedAt=$(),e)),[{WebSocket:r},i]=await Promise.all([import(`../../_chunks/workflow/wrapper-CKui_eTd.js`),n]);if(this.mode!==`connecting`)return;if(e&&Xu(i.headers)===this.lastAuthorization){this.mode=`http`;return}if(this.lastAuthorization=Xu(i.headers),i.usingProxy){this.mode=`http`;return}if(this.mode!==`connecting`)return;let a=Vu(i.baseUrl,this.runId,this.name,this.writerId);this.wsUrl=a.toString(),await zt({method:`GET`,url:this.wsUrl,spanName:`workflow.stream.ws.connect`,attributes:{"workflow.stream.transport":`ws`}},async()=>{if(await Qe(i.headers),this.mode!==`connecting`)return;t.socketStartedAt=$();let e=new r(a,{headers:Rt(i.headers)});this.socket=e,e.binaryType=`nodebuffer`,await new Promise(n=>{let r=!1,i=()=>{r||(this.mode===`connecting`&&(this.mode=`http`),n())};e.once(`open`,()=>{if(r=!0,t.openedAt=$(),this.mode!==`connecting`){e.close(1e3,`HTTP fallback selected`),n();return}this.mode=`ws`,n()}),e.once(`unexpected-response`,(t,n)=>{let r=n;r.resume?.(),r.destroy?.(),e.close(1e3,`upgrade declined`),i()}),e.once(`error`,e=>{if(!r){i();return}this.failUnknown(e)}),e.once(`close`,t=>{if(!r){i();return}this.inbound.then(()=>this.handleSocketClose(Number(t),e))}),e.on(`message`,e=>{let t=$();this.inbound=this.inbound.then(()=>this.handleMessage($u(e),t))})})})}async handleMessage(e,t){try{let n=await Qu(e),r=Wu(n.meta,n.body);if(r.type===`drain`){this.handleDrain(r.reason,r.graceMs);return}let i=this.pending;if(!i||r.reqId===void 0||r.reqId!==i.reqId)throw r.type===`error`?Error(`stream WebSocket connection failed (${r.status}): ${r.message??`unknown error`}`):Error(`stream WebSocket reply cannot be correlated`);this.pending=void 0,i.replyReceivedAt=t,clearTimeout(i.timer),r.type===`close_ack`&&(this.closeAcknowledged=!0),r.type===`error`?(i.reject(this.poison(Error(`stream WebSocket request failed (${r.status}): ${r.message??`unknown error`}`))),this.socket?.close(1011,`stream request failed`)):(r.type===`write_ack`&&(this.idleReconnects=0),i.resolve(r))}catch(e){this.failUnknown(e)}}handleDrain(e,t){if(this.mode===`draining`){e===`auth_expiry`&&(this.drainReason=e);return}if(this.mode!==`ws`)return;this.mode=`draining`,this.drainReason=e,this.transportDecision=new Promise(e=>{this.releaseDrainWait=e});let n=this.socket;this.drainTimer=setTimeout(()=>{if(this.drainTimer=void 0,this.mode===`draining`&&n===this.socket){if(this.pending){this.failUnknown(Error(`stream WebSocket drain expired before request reply`));return}n?.close(1001,`stream drain grace expired`),this.handleSocketClose(1001,n)}},Math.min(t,2147483647)),this.drainTimer.unref?.()}handleSocketClose(e,t=this.socket){if(t===this.socket&&(this.drainTimer&&=(clearTimeout(this.drainTimer),void 0),!(this.mode===`closed`||this.mode===`http`||this.mode===`poisoned`||this.closeAcknowledged))){if(this.pending){this.failUnknown(Error(`stream WebSocket closed before reply`));return}if(this.mode===`draining`&&e!==1001){this.drainReason=void 0,this.mode=`http`,this.socket=void 0,this.finishDrainWait();return}if(this.mode===`draining`){let e=this.drainReason===`auth_expiry`;if(this.drainReason=void 0,this.idleReconnects>=3){this.mode=`http`,this.socket=void 0,this.finishDrainWait();return}this.idleReconnects++,this.mode=`connecting`,this.socket=void 0,this.connect=this.startConnect(e);let t=this.makeTransportDecision(!0);this.transportDecision=t,t.then(()=>this.finishDrainWait());return}if(this.idleReconnects>=3){this.mode=`http`,this.socket=void 0;return}this.idleReconnects++,this.mode=`connecting`,this.socket=void 0,this.connect=this.startConnect(),this.transportDecision=this.makeTransportDecision(!0)}}async request(e,t,n){this.assertUsable();let r=this.socket;if(this.mode!==`ws`||!r||r.readyState!==1)throw new Zu(Error(`stream WebSocket is not open before send`));let i=this.nextReqId++,a;try{a=e(i)}catch(e){throw new Zu(e)}let o=this.connectionTiming,s=o?.firstWriteSent===!1,c=t&&(t.sessionFirstWrite||s)?t:void 0;return zt({method:`POST`,url:this.wsUrl??`ws://unknown`,spanName:`workflow.stream.write`,attributes:{"workflow.stream.transport":`ws`,"workflow.stream.ws.req_id":i,...n?{"workflow.stream.ws.chunk_seq":n.chunkSeq,"workflow.stream.ws.num_chunks":n.numChunks}:{},...Ku(c,o,this.sessionCreatedAt)}},async e=>{c&&qu(e,c,o);let t,n=new Promise((n,s)=>{let l=setTimeout(()=>{this.failUnknown(Error(`stream WebSocket request ${i} timed out with no reply`))},bt());l.unref?.(),t={reqId:i,resolve:n,reject:s,timer:l},this.pending=t;try{c&&Ju(e,c,o,t),r.send(a,e=>{e&&this.failUnknown(e)})}catch(e){this.failUnknown(e)}});try{return await n}finally{c&&Yu(e,c,t)}})}finishDrainWait(){this.drainTimer&&=(clearTimeout(this.drainTimer),void 0);let e=this.releaseDrainWait;this.releaseDrainWait=void 0,e?.()}fallbackToHttpBeforeSend(){this.mode=`http`,this.socket?.close(1e3,`HTTP fallback before send`),this.socket=void 0}failUnknown(e){let t=this.poison(e);this.finishDrainWait();let n=this.pending;this.pending=void 0,n&&(clearTimeout(n.timer),n.reject(t)),this.socket?.close(1011,`unknown stream write outcome`)}poison(e){return this.mode!==`poisoned`&&(this.mode=`poisoned`,this.poisonError=e),this.poisonError}};function td(e,t,n,r,i,a,o=!0){return new ed(e,t,Nu.parse(n),r,i,a,o)}const nd=()=>fe(`WORKFLOW_MAX_CHUNKS_PER_REQUEST`,1e3,{integer:!0,min:1});function rd(e,t,n){return new URL(`${n.baseUrl}/v2/runs/${encodeURIComponent(t)}/stream/${encodeURIComponent(e)}`)}function id(e,t,n){return new URL(`${n.baseUrl}/v3/runs/${encodeURIComponent(t)}/stream/${encodeURIComponent(e)}`)}function ad(e){return{...et(e.runId),...We(e.name),...lt(e.operation),...typeof e.startIndex==`number`?Xe(e.startIndex):{}}}async function od(e){let t=`Failed to fetch stream: ${e.status}`;if(e.status!==410)return new k(t,{status:e.status});try{let n=await e.json();return xt(e.status,typeof n.message==`string`?n.message:t,{code:n.error,details:n.details})}catch{return new k(t,{status:e.status})}}function sd(e,t){return O.is(t)||je.is(t)||ke.is(t)||k.is(t)||De.is(t)||Pe.is(t)||Ne.is(t)||Oe.is(t)?t:new k(e,{cause:t})}function cd(e,t,n,r){let i=[`PUT ${t.origin}${t.pathname}`,...mt(n.headers)];return new k(`Stream ${e} failed: HTTP ${n.status} (${i.join(`; `)}): ${r}`,{url:t.toString(),status:n.status})}const ld=D(o({tailIndex:g(),done:h()})),ud=D(o({data:s(o({index:g(),data:u(Uint8Array)})),cursor:a().nullable(),hasMore:h(),done:h()}));async function dd(e,t,n,r,i,a){let o=await M(r);o.headers.set(`X-Stream-Multi`,`true`);let s=Math.min(nd(),Eu);for(let c=0;c<n.length;c+=s){let l=rd(t,e,o);await(await A({method:`PUT`,url:l.toString(),body:Ou(n.slice(c,c+s)),headers:o.headers,dispatcher:yt(r),timeoutMs:null,logLabel:l.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,onRequestDispatched:c===0?a:void 0,attributes:{...ad({runId:e,name:t,operation:`write_multi`}),...c===0?i:void 0},buildError:async e=>cd(`write`,l,e,await e.text())})).text()}}async function fd(e,t,n){let r=await M(n);r.headers.set(`X-Stream-Done`,`true`);let i=rd(t,e,r);await(await A({method:`PUT`,url:i.toString(),headers:r.headers,dispatcher:He(n),timeoutMs:null,logLabel:i.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:ad({runId:e,name:t,operation:`close`}),buildError:async e=>cd(`close`,i,e,await e.text())})).text()}function pd(e){return{streams:{...Ft()?{createWriteSession(t,n,{writerId:r}){return td(t,n,r,e,(r,i,a)=>dd(t,n,r,e,i,a),()=>fd(t,n,e))}}:{},async write(t,n,r){let i=await t,a=await M(e),o=rd(n,i,a);await(await A({method:`PUT`,url:o.toString(),body:r,headers:a.headers,dispatcher:yt(e),timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:o.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:ad({runId:i,name:n,operation:`write`}),buildError:async e=>cd(`write`,o,e,await e.text())})).text()},async writeMulti(t,n,r){if(r.length===0)return;let i=await t,a=await M(e);a.headers.set(`X-Stream-Multi`,`true`);let o=nd();for(let t=0;t<r.length;t+=o){let s=Ou(r.slice(t,t+o)),c=rd(n,i,a);await(await A({method:`PUT`,url:c.toString(),body:s,headers:a.headers,dispatcher:yt(e),timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:c.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:ad({runId:i,name:n,operation:`write_multi`}),buildError:async e=>cd(`write`,c,e,await e.text())})).text()}},async close(t,n){let r=await t,i=await M(e);i.headers.set(`X-Stream-Done`,`true`);let a=rd(n,r,i);await(await A({method:`PUT`,url:a.toString(),headers:i.headers,dispatcher:He(e),timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:a.pathname,spanName:`workflow.stream.write`,durationAttribute:`workflow.stream.write.chunk_rtt`,attributes:ad({runId:r,name:n,operation:`close`}),buildError:async e=>cd(`close`,a,e,await e.text())})).text()},async get(t,n,r){let i=await M(e);i.headers.set(`Accept`,`application/json`);let a=id(n,t,i);typeof r==`number`&&a.searchParams.set(`startIndex`,String(r));let o=await A({method:`GET`,url:a.toString(),headers:i.headers,dispatcher:void 0,timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:a.pathname,spanName:`workflow.stream.read.connect`,attributes:ad({runId:t,name:n,operation:`read`,startIndex:r}),buildError:od});if(!o.body)throw new k(`No response body for stream`,{url:a.toString()});return o.body},async getChunks(t,n,r){let i=new URLSearchParams;r?.limit!=null&&i.set(`limit`,String(r.limit)),r?.cursor&&i.set(`cursor`,r.cursor);let a=i.toString(),o=`/v2/runs/${encodeURIComponent(t)}/streams/${encodeURIComponent(n)}/chunks${a?`?${a}`:``}`;try{return await j({endpoint:o,config:e,schema:ud})}catch(e){throw sd(`Failed to read stream chunks for ${n}`,e)}},async getInfo(t,n){let r=`/v2/runs/${encodeURIComponent(t)}/streams/${encodeURIComponent(n)}/info`;try{return await j({endpoint:r,config:e,schema:ld})}catch(e){throw sd(`Failed to read stream info for ${n}`,e)}},async list(t){let n=await M(e),r=new URL(`${n.baseUrl}/v2/runs/${encodeURIComponent(t)}/streams`),i=await A({method:`GET`,url:r.toString(),headers:n.headers,dispatcher:void 0,timeoutMs:null,transportErrorCode:`STREAM_ERROR`,logLabel:r.pathname,buildError:e=>new k(`Failed to list streams: ${e.status}`,{url:r.toString(),status:e.status})});try{return await i.json()}catch(e){throw sd(`Failed to parse stream list response`,e)}}}}}function md(e){let t=e?.projectConfig?.projectId||process.env.VERCEL_PROJECT_ID;return{specVersion:_e(),capabilities:{hookRetention:{active:!0},maxConcurrency:!0,deploymentAffinity:!0},getRuntimeDeadline:jn,...Tc(e),...Tu(e),analytics:process.env.WORKFLOW_DISABLE_ANALYTICS_READS===`1`?void 0:yn(e),...Bn(`world.streams`,pd(e)),createRunId:wn,describeRun:En,getEnvironment:()=>jt(e),getEncryptionKeyForRun:An(t,e?.projectConfig?.teamId,e?.token,e?.dispatcher),resolveLatestDeploymentId:kc(e)}}export{yn as createAnalytics,An as createGetEncryptionKeyForRun,Tc as createQueue,wn as createRunId,Tu as createStorage,pd as createStreamer,md as createWorld,On as deriveRunKey,En as describeRun,kn as fetchRunKey,Tn as regionForRunId};